From f5e511421a23da00803863451d78d91aa0b3cb37 Mon Sep 17 00:00:00 2001 From: Pradeep Terli Date: Mon, 19 Aug 2019 02:04:13 +0530 Subject: [PATCH] docs update --- docs/main-es2015.js | 2 +- docs/main-es2015.js.map | 2 +- docs/main-es5.js | 2 +- docs/main-es5.js.map | 2 +- src/app/app.router.ts | 2 +- 5 files changed, 5 insertions(+), 5 deletions(-) diff --git a/docs/main-es2015.js b/docs/main-es2015.js index 72df8b4e..f2beaeae 100644 --- a/docs/main-es2015.js +++ b/docs/main-es2015.js @@ -2951,7 +2951,7 @@ __webpack_require__.r(__webpack_exports__); -var AppModuleNgFactory = _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵcmf"](_app_module__WEBPACK_IMPORTED_MODULE_1__["AppModule"], [_app_component__WEBPACK_IMPORTED_MODULE_2__["AppComponent"]], function (_l) { return _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmod"]([_angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](512, _angular_core__WEBPACK_IMPORTED_MODULE_0__["ComponentFactoryResolver"], _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵCodegenComponentFactoryResolver"], [[8, [_node_modules_angular_router_router_ngfactory__WEBPACK_IMPORTED_MODULE_3__["ɵangular_packages_router_router_lNgFactory"], _examples_basic_ngfactory__WEBPACK_IMPORTED_MODULE_4__["BasicExampleNgFactory"], _examples_singleselection_ngfactory__WEBPACK_IMPORTED_MODULE_5__["SingleSelectionExampleNgFactory"], _examples_searchFilter_ngfactory__WEBPACK_IMPORTED_MODULE_6__["SearchFilterExampleNgFactory"], _examples_groupBy_ngfactory__WEBPACK_IMPORTED_MODULE_7__["GroupByExampleNgFactory"], _examples_templating_ngfactory__WEBPACK_IMPORTED_MODULE_8__["TemplatingExampleNgFactory"], _examples_resetdropdown_ngfactory__WEBPACK_IMPORTED_MODULE_9__["ResetDropdownExampleNgFactory"], _examples_disablemode_ngfactory__WEBPACK_IMPORTED_MODULE_10__["DisableModeExampleNgFactory"], _examples_limitselection_ngfactory__WEBPACK_IMPORTED_MODULE_11__["LimitSelectionExampleNgFactory"], _examples_limitbadges_ngfactory__WEBPACK_IMPORTED_MODULE_12__["LimitBadgesExampleNgFactory"], _examples_customplaceholder_ngfactory__WEBPACK_IMPORTED_MODULE_13__["CustomPlaceholderExampleNgFactory"], _examples_styling_ngfactory__WEBPACK_IMPORTED_MODULE_14__["StylingExampleNgFactory"], _examples_usingWithForms_ngfactory__WEBPACK_IMPORTED_MODULE_15__["UsingWithFormExampleNgFactory"], _examples_usingInReactForms_ngfactory__WEBPACK_IMPORTED_MODULE_16__["UsingWithReactiveFormExampleNgFactory"], _examples_lazyLoading_ngfactory__WEBPACK_IMPORTED_MODULE_17__["LazyLoadingExampleNgFactory"], _examples_multipleDropdowns_ngfactory__WEBPACK_IMPORTED_MODULE_18__["MultipleDropdownsExampleNgFactory"], _examples_dynamicDataSets_ngfactory__WEBPACK_IMPORTED_MODULE_19__["DynamicDataSetsExampleNgFactory"], _examples_theming_ngfactory__WEBPACK_IMPORTED_MODULE_20__["ThemingExampleNgFactory"], _examples_remoteData_ngfactory__WEBPACK_IMPORTED_MODULE_21__["RemoteDataExampleNgFactory"], _examples_customSearch_ngfactory__WEBPACK_IMPORTED_MODULE_22__["CustomSearchExampleNgFactory"], _examples_searchByOneProperty_ngfactory__WEBPACK_IMPORTED_MODULE_23__["SearchFilterByOnePropertyExampleNgFactory"], _examples_lazyLoadingRemoteData_ngfactory__WEBPACK_IMPORTED_MODULE_24__["LazyLoadingRemoteDataExampleNgFactory"], _examples_searchFilterAddNewItem_ngfactory__WEBPACK_IMPORTED_MODULE_25__["SearchFilterAddItemExampleNgFactory"], _examples_events_ngfactory__WEBPACK_IMPORTED_MODULE_26__["EventsExampleNgFactory"], _examples_usingInList_ngfactory__WEBPACK_IMPORTED_MODULE_27__["UsingInListExampleNgFactory"], _app_component_ngfactory__WEBPACK_IMPORTED_MODULE_28__["AppComponentNgFactory"]]], [3, _angular_core__WEBPACK_IMPORTED_MODULE_0__["ComponentFactoryResolver"]], _angular_core__WEBPACK_IMPORTED_MODULE_0__["NgModuleRef"]]), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](5120, _angular_core__WEBPACK_IMPORTED_MODULE_0__["LOCALE_ID"], _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵangular_packages_core_core_q"], [[3, _angular_core__WEBPACK_IMPORTED_MODULE_0__["LOCALE_ID"]]]), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](4608, _angular_common__WEBPACK_IMPORTED_MODULE_29__["NgLocalization"], _angular_common__WEBPACK_IMPORTED_MODULE_29__["NgLocaleLocalization"], [_angular_core__WEBPACK_IMPORTED_MODULE_0__["LOCALE_ID"], [2, _angular_common__WEBPACK_IMPORTED_MODULE_29__["ɵangular_packages_common_common_a"]]]), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](5120, _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵangular_packages_core_core_bb"], _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵangular_packages_core_core_s"], [_angular_core__WEBPACK_IMPORTED_MODULE_0__["NgZone"]]), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](5120, _angular_core__WEBPACK_IMPORTED_MODULE_0__["IterableDiffers"], _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵangular_packages_core_core_o"], []), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](5120, _angular_core__WEBPACK_IMPORTED_MODULE_0__["KeyValueDiffers"], _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵangular_packages_core_core_p"], []), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](4608, _angular_platform_browser__WEBPACK_IMPORTED_MODULE_30__["DomSanitizer"], _angular_platform_browser__WEBPACK_IMPORTED_MODULE_30__["ɵDomSanitizerImpl"], [_angular_common__WEBPACK_IMPORTED_MODULE_29__["DOCUMENT"]]), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](6144, _angular_core__WEBPACK_IMPORTED_MODULE_0__["Sanitizer"], null, [_angular_platform_browser__WEBPACK_IMPORTED_MODULE_30__["DomSanitizer"]]), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](4608, _angular_platform_browser__WEBPACK_IMPORTED_MODULE_30__["HAMMER_GESTURE_CONFIG"], _angular_platform_browser__WEBPACK_IMPORTED_MODULE_30__["HammerGestureConfig"], []), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](5120, _angular_platform_browser__WEBPACK_IMPORTED_MODULE_30__["EVENT_MANAGER_PLUGINS"], function (p0_0, p0_1, p0_2, p1_0, p2_0, p2_1, p2_2, p2_3) { return [new _angular_platform_browser__WEBPACK_IMPORTED_MODULE_30__["ɵDomEventsPlugin"](p0_0, p0_1, p0_2), new _angular_platform_browser__WEBPACK_IMPORTED_MODULE_30__["ɵKeyEventsPlugin"](p1_0), new _angular_platform_browser__WEBPACK_IMPORTED_MODULE_30__["ɵHammerGesturesPlugin"](p2_0, p2_1, p2_2, p2_3)]; }, [_angular_common__WEBPACK_IMPORTED_MODULE_29__["DOCUMENT"], _angular_core__WEBPACK_IMPORTED_MODULE_0__["NgZone"], _angular_core__WEBPACK_IMPORTED_MODULE_0__["PLATFORM_ID"], _angular_common__WEBPACK_IMPORTED_MODULE_29__["DOCUMENT"], _angular_common__WEBPACK_IMPORTED_MODULE_29__["DOCUMENT"], _angular_platform_browser__WEBPACK_IMPORTED_MODULE_30__["HAMMER_GESTURE_CONFIG"], _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵConsole"], [2, _angular_platform_browser__WEBPACK_IMPORTED_MODULE_30__["HAMMER_LOADER"]]]), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](4608, _angular_platform_browser__WEBPACK_IMPORTED_MODULE_30__["EventManager"], _angular_platform_browser__WEBPACK_IMPORTED_MODULE_30__["EventManager"], [_angular_platform_browser__WEBPACK_IMPORTED_MODULE_30__["EVENT_MANAGER_PLUGINS"], _angular_core__WEBPACK_IMPORTED_MODULE_0__["NgZone"]]), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](135680, _angular_platform_browser__WEBPACK_IMPORTED_MODULE_30__["ɵDomSharedStylesHost"], _angular_platform_browser__WEBPACK_IMPORTED_MODULE_30__["ɵDomSharedStylesHost"], [_angular_common__WEBPACK_IMPORTED_MODULE_29__["DOCUMENT"]]), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](4608, _angular_platform_browser__WEBPACK_IMPORTED_MODULE_30__["ɵDomRendererFactory2"], _angular_platform_browser__WEBPACK_IMPORTED_MODULE_30__["ɵDomRendererFactory2"], [_angular_platform_browser__WEBPACK_IMPORTED_MODULE_30__["EventManager"], _angular_platform_browser__WEBPACK_IMPORTED_MODULE_30__["ɵDomSharedStylesHost"], _angular_core__WEBPACK_IMPORTED_MODULE_0__["APP_ID"]]), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](6144, _angular_core__WEBPACK_IMPORTED_MODULE_0__["RendererFactory2"], null, [_angular_platform_browser__WEBPACK_IMPORTED_MODULE_30__["ɵDomRendererFactory2"]]), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](6144, _angular_platform_browser__WEBPACK_IMPORTED_MODULE_30__["ɵSharedStylesHost"], null, [_angular_platform_browser__WEBPACK_IMPORTED_MODULE_30__["ɵDomSharedStylesHost"]]), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](4608, _angular_core__WEBPACK_IMPORTED_MODULE_0__["Testability"], _angular_core__WEBPACK_IMPORTED_MODULE_0__["Testability"], [_angular_core__WEBPACK_IMPORTED_MODULE_0__["NgZone"]]), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](4608, _angular_forms__WEBPACK_IMPORTED_MODULE_31__["FormBuilder"], _angular_forms__WEBPACK_IMPORTED_MODULE_31__["FormBuilder"], []), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](4608, _angular_forms__WEBPACK_IMPORTED_MODULE_31__["ɵangular_packages_forms_forms_o"], _angular_forms__WEBPACK_IMPORTED_MODULE_31__["ɵangular_packages_forms_forms_o"], []), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](5120, _angular_router__WEBPACK_IMPORTED_MODULE_32__["ActivatedRoute"], _angular_router__WEBPACK_IMPORTED_MODULE_32__["ɵangular_packages_router_router_g"], [_angular_router__WEBPACK_IMPORTED_MODULE_32__["Router"]]), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](4608, _angular_router__WEBPACK_IMPORTED_MODULE_32__["NoPreloading"], _angular_router__WEBPACK_IMPORTED_MODULE_32__["NoPreloading"], []), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](6144, _angular_router__WEBPACK_IMPORTED_MODULE_32__["PreloadingStrategy"], null, [_angular_router__WEBPACK_IMPORTED_MODULE_32__["NoPreloading"]]), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](135680, _angular_router__WEBPACK_IMPORTED_MODULE_32__["RouterPreloader"], _angular_router__WEBPACK_IMPORTED_MODULE_32__["RouterPreloader"], [_angular_router__WEBPACK_IMPORTED_MODULE_32__["Router"], _angular_core__WEBPACK_IMPORTED_MODULE_0__["NgModuleFactoryLoader"], _angular_core__WEBPACK_IMPORTED_MODULE_0__["Compiler"], _angular_core__WEBPACK_IMPORTED_MODULE_0__["Injector"], _angular_router__WEBPACK_IMPORTED_MODULE_32__["PreloadingStrategy"]]), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](4608, _angular_router__WEBPACK_IMPORTED_MODULE_32__["PreloadAllModules"], _angular_router__WEBPACK_IMPORTED_MODULE_32__["PreloadAllModules"], []), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](5120, _angular_router__WEBPACK_IMPORTED_MODULE_32__["ɵangular_packages_router_router_o"], _angular_router__WEBPACK_IMPORTED_MODULE_32__["ɵangular_packages_router_router_c"], [_angular_router__WEBPACK_IMPORTED_MODULE_32__["Router"], _angular_common__WEBPACK_IMPORTED_MODULE_29__["ViewportScroller"], _angular_router__WEBPACK_IMPORTED_MODULE_32__["ROUTER_CONFIGURATION"]]), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](5120, _angular_router__WEBPACK_IMPORTED_MODULE_32__["ROUTER_INITIALIZER"], _angular_router__WEBPACK_IMPORTED_MODULE_32__["ɵangular_packages_router_router_j"], [_angular_router__WEBPACK_IMPORTED_MODULE_32__["ɵangular_packages_router_router_h"]]), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](5120, _angular_core__WEBPACK_IMPORTED_MODULE_0__["APP_BOOTSTRAP_LISTENER"], function (p0_0) { return [p0_0]; }, [_angular_router__WEBPACK_IMPORTED_MODULE_32__["ROUTER_INITIALIZER"]]), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](5120, "virtual-scroller-default-options", _projects_angular2_multiselect_dropdown_lib_src_lib_virtual_scroll_virtual_scroll__WEBPACK_IMPORTED_MODULE_33__["VIRTUAL_SCROLLER_DEFAULT_OPTIONS_FACTORY"], []), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](4608, _projects_angular2_multiselect_dropdown_lib_src_lib_multiselect_service__WEBPACK_IMPORTED_MODULE_34__["DataService"], _projects_angular2_multiselect_dropdown_lib_src_lib_multiselect_service__WEBPACK_IMPORTED_MODULE_34__["DataService"], []), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](4608, _angular_common_http__WEBPACK_IMPORTED_MODULE_35__["HttpXsrfTokenExtractor"], _angular_common_http__WEBPACK_IMPORTED_MODULE_35__["ɵangular_packages_common_http_http_g"], [_angular_common__WEBPACK_IMPORTED_MODULE_29__["DOCUMENT"], _angular_core__WEBPACK_IMPORTED_MODULE_0__["PLATFORM_ID"], _angular_common_http__WEBPACK_IMPORTED_MODULE_35__["ɵangular_packages_common_http_http_e"]]), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](4608, _angular_common_http__WEBPACK_IMPORTED_MODULE_35__["ɵangular_packages_common_http_http_h"], _angular_common_http__WEBPACK_IMPORTED_MODULE_35__["ɵangular_packages_common_http_http_h"], [_angular_common_http__WEBPACK_IMPORTED_MODULE_35__["HttpXsrfTokenExtractor"], _angular_common_http__WEBPACK_IMPORTED_MODULE_35__["ɵangular_packages_common_http_http_f"]]), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](5120, _angular_common_http__WEBPACK_IMPORTED_MODULE_35__["HTTP_INTERCEPTORS"], function (p0_0) { return [p0_0]; }, [_angular_common_http__WEBPACK_IMPORTED_MODULE_35__["ɵangular_packages_common_http_http_h"]]), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](4608, _angular_common_http__WEBPACK_IMPORTED_MODULE_35__["ɵangular_packages_common_http_http_d"], _angular_common_http__WEBPACK_IMPORTED_MODULE_35__["ɵangular_packages_common_http_http_d"], []), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](6144, _angular_common_http__WEBPACK_IMPORTED_MODULE_35__["XhrFactory"], null, [_angular_common_http__WEBPACK_IMPORTED_MODULE_35__["ɵangular_packages_common_http_http_d"]]), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](4608, _angular_common_http__WEBPACK_IMPORTED_MODULE_35__["HttpXhrBackend"], _angular_common_http__WEBPACK_IMPORTED_MODULE_35__["HttpXhrBackend"], [_angular_common_http__WEBPACK_IMPORTED_MODULE_35__["XhrFactory"]]), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](6144, _angular_common_http__WEBPACK_IMPORTED_MODULE_35__["HttpBackend"], null, [_angular_common_http__WEBPACK_IMPORTED_MODULE_35__["HttpXhrBackend"]]), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](4608, _angular_common_http__WEBPACK_IMPORTED_MODULE_35__["HttpHandler"], _angular_common_http__WEBPACK_IMPORTED_MODULE_35__["ɵHttpInterceptingHandler"], [_angular_common_http__WEBPACK_IMPORTED_MODULE_35__["HttpBackend"], _angular_core__WEBPACK_IMPORTED_MODULE_0__["Injector"]]), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](4608, _angular_common_http__WEBPACK_IMPORTED_MODULE_35__["HttpClient"], _angular_common_http__WEBPACK_IMPORTED_MODULE_35__["HttpClient"], [_angular_common_http__WEBPACK_IMPORTED_MODULE_35__["HttpHandler"]]), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](4608, _examples_mock_data__WEBPACK_IMPORTED_MODULE_36__["MockService"], _examples_mock_data__WEBPACK_IMPORTED_MODULE_36__["MockService"], []), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](1073742336, _angular_common__WEBPACK_IMPORTED_MODULE_29__["CommonModule"], _angular_common__WEBPACK_IMPORTED_MODULE_29__["CommonModule"], []), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](1024, _angular_core__WEBPACK_IMPORTED_MODULE_0__["ErrorHandler"], _angular_platform_browser__WEBPACK_IMPORTED_MODULE_30__["ɵangular_packages_platform_browser_platform_browser_a"], []), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](1024, _angular_core__WEBPACK_IMPORTED_MODULE_0__["NgProbeToken"], function () { return [_angular_router__WEBPACK_IMPORTED_MODULE_32__["ɵangular_packages_router_router_b"]()]; }, []), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](512, _angular_router__WEBPACK_IMPORTED_MODULE_32__["ɵangular_packages_router_router_h"], _angular_router__WEBPACK_IMPORTED_MODULE_32__["ɵangular_packages_router_router_h"], [_angular_core__WEBPACK_IMPORTED_MODULE_0__["Injector"]]), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](256, _angular_core__WEBPACK_IMPORTED_MODULE_0__["APP_ID"], "serverApp", []), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](2048, _angular_platform_browser__WEBPACK_IMPORTED_MODULE_30__["ɵTRANSITION_ID"], null, [_angular_core__WEBPACK_IMPORTED_MODULE_0__["APP_ID"]]), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](1024, _angular_core__WEBPACK_IMPORTED_MODULE_0__["APP_INITIALIZER"], function (p0_0, p1_0, p2_0, p2_1, p2_2) { return [_angular_platform_browser__WEBPACK_IMPORTED_MODULE_30__["ɵangular_packages_platform_browser_platform_browser_j"](p0_0), _angular_router__WEBPACK_IMPORTED_MODULE_32__["ɵangular_packages_router_router_i"](p1_0), _angular_platform_browser__WEBPACK_IMPORTED_MODULE_30__["ɵangular_packages_platform_browser_platform_browser_h"](p2_0, p2_1, p2_2)]; }, [[2, _angular_core__WEBPACK_IMPORTED_MODULE_0__["NgProbeToken"]], _angular_router__WEBPACK_IMPORTED_MODULE_32__["ɵangular_packages_router_router_h"], _angular_platform_browser__WEBPACK_IMPORTED_MODULE_30__["ɵTRANSITION_ID"], _angular_common__WEBPACK_IMPORTED_MODULE_29__["DOCUMENT"], _angular_core__WEBPACK_IMPORTED_MODULE_0__["Injector"]]), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](512, _angular_core__WEBPACK_IMPORTED_MODULE_0__["ApplicationInitStatus"], _angular_core__WEBPACK_IMPORTED_MODULE_0__["ApplicationInitStatus"], [[2, _angular_core__WEBPACK_IMPORTED_MODULE_0__["APP_INITIALIZER"]]]), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](131584, _angular_core__WEBPACK_IMPORTED_MODULE_0__["ApplicationRef"], _angular_core__WEBPACK_IMPORTED_MODULE_0__["ApplicationRef"], [_angular_core__WEBPACK_IMPORTED_MODULE_0__["NgZone"], _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵConsole"], _angular_core__WEBPACK_IMPORTED_MODULE_0__["Injector"], _angular_core__WEBPACK_IMPORTED_MODULE_0__["ErrorHandler"], _angular_core__WEBPACK_IMPORTED_MODULE_0__["ComponentFactoryResolver"], _angular_core__WEBPACK_IMPORTED_MODULE_0__["ApplicationInitStatus"]]), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](1073742336, _angular_core__WEBPACK_IMPORTED_MODULE_0__["ApplicationModule"], _angular_core__WEBPACK_IMPORTED_MODULE_0__["ApplicationModule"], [_angular_core__WEBPACK_IMPORTED_MODULE_0__["ApplicationRef"]]), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](1073742336, _angular_platform_browser__WEBPACK_IMPORTED_MODULE_30__["BrowserModule"], _angular_platform_browser__WEBPACK_IMPORTED_MODULE_30__["BrowserModule"], [[3, _angular_platform_browser__WEBPACK_IMPORTED_MODULE_30__["BrowserModule"]]]), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](1073742336, _angular_forms__WEBPACK_IMPORTED_MODULE_31__["ɵangular_packages_forms_forms_d"], _angular_forms__WEBPACK_IMPORTED_MODULE_31__["ɵangular_packages_forms_forms_d"], []), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](1073742336, _angular_forms__WEBPACK_IMPORTED_MODULE_31__["ReactiveFormsModule"], _angular_forms__WEBPACK_IMPORTED_MODULE_31__["ReactiveFormsModule"], []), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](1073742336, _angular_forms__WEBPACK_IMPORTED_MODULE_31__["FormsModule"], _angular_forms__WEBPACK_IMPORTED_MODULE_31__["FormsModule"], []), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](1024, _angular_router__WEBPACK_IMPORTED_MODULE_32__["ɵangular_packages_router_router_a"], _angular_router__WEBPACK_IMPORTED_MODULE_32__["ɵangular_packages_router_router_e"], [[3, _angular_router__WEBPACK_IMPORTED_MODULE_32__["Router"]]]), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](512, _angular_router__WEBPACK_IMPORTED_MODULE_32__["UrlSerializer"], _angular_router__WEBPACK_IMPORTED_MODULE_32__["DefaultUrlSerializer"], []), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](512, _angular_router__WEBPACK_IMPORTED_MODULE_32__["ChildrenOutletContexts"], _angular_router__WEBPACK_IMPORTED_MODULE_32__["ChildrenOutletContexts"], []), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](256, _angular_router__WEBPACK_IMPORTED_MODULE_32__["ROUTER_CONFIGURATION"], { useHash: false }, []), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](1024, _angular_common__WEBPACK_IMPORTED_MODULE_29__["LocationStrategy"], _angular_router__WEBPACK_IMPORTED_MODULE_32__["ɵangular_packages_router_router_d"], [_angular_common__WEBPACK_IMPORTED_MODULE_29__["PlatformLocation"], [2, _angular_common__WEBPACK_IMPORTED_MODULE_29__["APP_BASE_HREF"]], _angular_router__WEBPACK_IMPORTED_MODULE_32__["ROUTER_CONFIGURATION"]]), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](512, _angular_common__WEBPACK_IMPORTED_MODULE_29__["Location"], _angular_common__WEBPACK_IMPORTED_MODULE_29__["Location"], [_angular_common__WEBPACK_IMPORTED_MODULE_29__["LocationStrategy"], _angular_common__WEBPACK_IMPORTED_MODULE_29__["PlatformLocation"]]), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](512, _angular_core__WEBPACK_IMPORTED_MODULE_0__["Compiler"], _angular_core__WEBPACK_IMPORTED_MODULE_0__["Compiler"], []), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](512, _angular_core__WEBPACK_IMPORTED_MODULE_0__["NgModuleFactoryLoader"], _angular_core__WEBPACK_IMPORTED_MODULE_0__["SystemJsNgModuleLoader"], [_angular_core__WEBPACK_IMPORTED_MODULE_0__["Compiler"], [2, _angular_core__WEBPACK_IMPORTED_MODULE_0__["SystemJsNgModuleLoaderConfig"]]]), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](1024, _angular_router__WEBPACK_IMPORTED_MODULE_32__["ROUTES"], function () { return [[{ path: "", redirectTo: "/basic", pathMatch: "full" }, { path: "basic", component: _examples_basic__WEBPACK_IMPORTED_MODULE_37__["BasicExample"] }, { path: "singleselection", component: _examples_singleselection__WEBPACK_IMPORTED_MODULE_38__["SingleSelectionExample"] }, { path: "searchfilter", component: _examples_searchFilter__WEBPACK_IMPORTED_MODULE_39__["SearchFilterExample"] }, { path: "groupby", component: _examples_groupBy__WEBPACK_IMPORTED_MODULE_40__["GroupByExample"] }, { path: "templating", component: _examples_templating__WEBPACK_IMPORTED_MODULE_41__["TemplatingExample"] }, { path: "dropdownMethods", component: _examples_resetdropdown__WEBPACK_IMPORTED_MODULE_42__["ResetDropdownExample"] }, { path: "disablemode", component: _examples_disablemode__WEBPACK_IMPORTED_MODULE_43__["DisableModeExample"] }, { path: "limitselection", component: _examples_limitselection__WEBPACK_IMPORTED_MODULE_44__["LimitSelectionExample"] }, { path: "limitbadges", component: _examples_limitbadges__WEBPACK_IMPORTED_MODULE_45__["LimitBadgesExample"] }, { path: "customplaceholder", component: _examples_customplaceholder__WEBPACK_IMPORTED_MODULE_46__["CustomPlaceholderExample"] }, { path: "styling", component: _examples_styling__WEBPACK_IMPORTED_MODULE_47__["StylingExample"] }, { path: "usinginform", component: _examples_usingWithForms__WEBPACK_IMPORTED_MODULE_48__["UsingWithFormExample"] }, { path: "usinginreactiveform", component: _examples_usingInReactForms__WEBPACK_IMPORTED_MODULE_49__["UsingWithReactiveFormExample"] }, { path: "lazyloading", component: _examples_lazyLoading__WEBPACK_IMPORTED_MODULE_50__["LazyLoadingExample"] }, { path: "multipledropdowns", component: _examples_multipleDropdowns__WEBPACK_IMPORTED_MODULE_51__["MultipleDropdownsExample"] }, { path: "dynamicdatasets", component: _examples_dynamicDataSets__WEBPACK_IMPORTED_MODULE_52__["DynamicDataSetsExample"] }, { path: "theming", component: _examples_theming__WEBPACK_IMPORTED_MODULE_53__["ThemingExample"] }, { path: "remoteData", component: _examples_remoteData__WEBPACK_IMPORTED_MODULE_54__["RemoteDataExample"] }, { path: "customSearchAPI", component: _examples_customSearch__WEBPACK_IMPORTED_MODULE_55__["CustomSearchExample"] }, { path: "searchFilterByOneProperty", component: _examples_searchByOneProperty__WEBPACK_IMPORTED_MODULE_56__["SearchFilterByOnePropertyExample"] }, { path: "lazyloadingRemoteData", component: _examples_lazyLoadingRemoteData__WEBPACK_IMPORTED_MODULE_57__["LazyLoadingRemoteDataExample"] }, { path: "searchfilterAddNewItem", component: _examples_searchFilterAddNewItem__WEBPACK_IMPORTED_MODULE_58__["SearchFilterAddItemExample"] }, { path: "events", component: _examples_events__WEBPACK_IMPORTED_MODULE_59__["EventsExample"] }, { path: "usingInList", component: _examples_usingInList__WEBPACK_IMPORTED_MODULE_60__["UsingInListExample"] }]]; }, []), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](1024, _angular_router__WEBPACK_IMPORTED_MODULE_32__["Router"], _angular_router__WEBPACK_IMPORTED_MODULE_32__["ɵangular_packages_router_router_f"], [_angular_core__WEBPACK_IMPORTED_MODULE_0__["ApplicationRef"], _angular_router__WEBPACK_IMPORTED_MODULE_32__["UrlSerializer"], _angular_router__WEBPACK_IMPORTED_MODULE_32__["ChildrenOutletContexts"], _angular_common__WEBPACK_IMPORTED_MODULE_29__["Location"], _angular_core__WEBPACK_IMPORTED_MODULE_0__["Injector"], _angular_core__WEBPACK_IMPORTED_MODULE_0__["NgModuleFactoryLoader"], _angular_core__WEBPACK_IMPORTED_MODULE_0__["Compiler"], _angular_router__WEBPACK_IMPORTED_MODULE_32__["ROUTES"], _angular_router__WEBPACK_IMPORTED_MODULE_32__["ROUTER_CONFIGURATION"], [2, _angular_router__WEBPACK_IMPORTED_MODULE_32__["UrlHandlingStrategy"]], [2, _angular_router__WEBPACK_IMPORTED_MODULE_32__["RouteReuseStrategy"]]]), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](1073742336, _angular_router__WEBPACK_IMPORTED_MODULE_32__["RouterModule"], _angular_router__WEBPACK_IMPORTED_MODULE_32__["RouterModule"], [[2, _angular_router__WEBPACK_IMPORTED_MODULE_32__["ɵangular_packages_router_router_a"]], [2, _angular_router__WEBPACK_IMPORTED_MODULE_32__["Router"]]]), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](1073742336, _app_router__WEBPACK_IMPORTED_MODULE_61__["AppRouterModule"], _app_router__WEBPACK_IMPORTED_MODULE_61__["AppRouterModule"], []), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](1073742336, _projects_angular2_multiselect_dropdown_lib_src_lib_virtual_scroll_virtual_scroll__WEBPACK_IMPORTED_MODULE_33__["VirtualScrollerModule"], _projects_angular2_multiselect_dropdown_lib_src_lib_virtual_scroll_virtual_scroll__WEBPACK_IMPORTED_MODULE_33__["VirtualScrollerModule"], []), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](1073742336, _projects_angular2_multiselect_dropdown_lib_src_lib_multiselect_component__WEBPACK_IMPORTED_MODULE_62__["AngularMultiSelectModule"], _projects_angular2_multiselect_dropdown_lib_src_lib_multiselect_component__WEBPACK_IMPORTED_MODULE_62__["AngularMultiSelectModule"], []), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](1073742336, primeng_components_common_shared__WEBPACK_IMPORTED_MODULE_63__["SharedModule"], primeng_components_common_shared__WEBPACK_IMPORTED_MODULE_63__["SharedModule"], []), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](1073742336, primeng_components_tooltip_tooltip__WEBPACK_IMPORTED_MODULE_64__["TooltipModule"], primeng_components_tooltip_tooltip__WEBPACK_IMPORTED_MODULE_64__["TooltipModule"], []), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](1073742336, primeng_components_tabview_tabview__WEBPACK_IMPORTED_MODULE_65__["TabViewModule"], primeng_components_tabview_tabview__WEBPACK_IMPORTED_MODULE_65__["TabViewModule"], []), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](1073742336, _angular_common_http__WEBPACK_IMPORTED_MODULE_35__["HttpClientXsrfModule"], _angular_common_http__WEBPACK_IMPORTED_MODULE_35__["HttpClientXsrfModule"], []), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](1073742336, _angular_common_http__WEBPACK_IMPORTED_MODULE_35__["HttpClientModule"], _angular_common_http__WEBPACK_IMPORTED_MODULE_35__["HttpClientModule"], []), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](1073742336, ngx_highlightjs__WEBPACK_IMPORTED_MODULE_66__["HighlightModule"], ngx_highlightjs__WEBPACK_IMPORTED_MODULE_66__["HighlightModule"], []), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](1073742336, _app_module__WEBPACK_IMPORTED_MODULE_1__["AppModule"], _app_module__WEBPACK_IMPORTED_MODULE_1__["AppModule"], []), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](256, _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵAPP_ROOT"], true, []), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](256, _angular_common_http__WEBPACK_IMPORTED_MODULE_35__["ɵangular_packages_common_http_http_e"], "XSRF-TOKEN", []), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](256, _angular_common_http__WEBPACK_IMPORTED_MODULE_35__["ɵangular_packages_common_http_http_f"], "X-XSRF-TOKEN", []), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](256, ngx_highlightjs__WEBPACK_IMPORTED_MODULE_66__["HIGHLIGHT_OPTIONS"], { languages: _app_module__WEBPACK_IMPORTED_MODULE_1__["hljsLanguages"] }, [])]); }); +var AppModuleNgFactory = _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵcmf"](_app_module__WEBPACK_IMPORTED_MODULE_1__["AppModule"], [_app_component__WEBPACK_IMPORTED_MODULE_2__["AppComponent"]], function (_l) { return _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmod"]([_angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](512, _angular_core__WEBPACK_IMPORTED_MODULE_0__["ComponentFactoryResolver"], _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵCodegenComponentFactoryResolver"], [[8, [_node_modules_angular_router_router_ngfactory__WEBPACK_IMPORTED_MODULE_3__["ɵangular_packages_router_router_lNgFactory"], _examples_basic_ngfactory__WEBPACK_IMPORTED_MODULE_4__["BasicExampleNgFactory"], _examples_singleselection_ngfactory__WEBPACK_IMPORTED_MODULE_5__["SingleSelectionExampleNgFactory"], _examples_searchFilter_ngfactory__WEBPACK_IMPORTED_MODULE_6__["SearchFilterExampleNgFactory"], _examples_groupBy_ngfactory__WEBPACK_IMPORTED_MODULE_7__["GroupByExampleNgFactory"], _examples_templating_ngfactory__WEBPACK_IMPORTED_MODULE_8__["TemplatingExampleNgFactory"], _examples_resetdropdown_ngfactory__WEBPACK_IMPORTED_MODULE_9__["ResetDropdownExampleNgFactory"], _examples_disablemode_ngfactory__WEBPACK_IMPORTED_MODULE_10__["DisableModeExampleNgFactory"], _examples_limitselection_ngfactory__WEBPACK_IMPORTED_MODULE_11__["LimitSelectionExampleNgFactory"], _examples_limitbadges_ngfactory__WEBPACK_IMPORTED_MODULE_12__["LimitBadgesExampleNgFactory"], _examples_customplaceholder_ngfactory__WEBPACK_IMPORTED_MODULE_13__["CustomPlaceholderExampleNgFactory"], _examples_styling_ngfactory__WEBPACK_IMPORTED_MODULE_14__["StylingExampleNgFactory"], _examples_usingWithForms_ngfactory__WEBPACK_IMPORTED_MODULE_15__["UsingWithFormExampleNgFactory"], _examples_usingInReactForms_ngfactory__WEBPACK_IMPORTED_MODULE_16__["UsingWithReactiveFormExampleNgFactory"], _examples_lazyLoading_ngfactory__WEBPACK_IMPORTED_MODULE_17__["LazyLoadingExampleNgFactory"], _examples_multipleDropdowns_ngfactory__WEBPACK_IMPORTED_MODULE_18__["MultipleDropdownsExampleNgFactory"], _examples_dynamicDataSets_ngfactory__WEBPACK_IMPORTED_MODULE_19__["DynamicDataSetsExampleNgFactory"], _examples_theming_ngfactory__WEBPACK_IMPORTED_MODULE_20__["ThemingExampleNgFactory"], _examples_remoteData_ngfactory__WEBPACK_IMPORTED_MODULE_21__["RemoteDataExampleNgFactory"], _examples_customSearch_ngfactory__WEBPACK_IMPORTED_MODULE_22__["CustomSearchExampleNgFactory"], _examples_searchByOneProperty_ngfactory__WEBPACK_IMPORTED_MODULE_23__["SearchFilterByOnePropertyExampleNgFactory"], _examples_lazyLoadingRemoteData_ngfactory__WEBPACK_IMPORTED_MODULE_24__["LazyLoadingRemoteDataExampleNgFactory"], _examples_searchFilterAddNewItem_ngfactory__WEBPACK_IMPORTED_MODULE_25__["SearchFilterAddItemExampleNgFactory"], _examples_events_ngfactory__WEBPACK_IMPORTED_MODULE_26__["EventsExampleNgFactory"], _examples_usingInList_ngfactory__WEBPACK_IMPORTED_MODULE_27__["UsingInListExampleNgFactory"], _app_component_ngfactory__WEBPACK_IMPORTED_MODULE_28__["AppComponentNgFactory"]]], [3, _angular_core__WEBPACK_IMPORTED_MODULE_0__["ComponentFactoryResolver"]], _angular_core__WEBPACK_IMPORTED_MODULE_0__["NgModuleRef"]]), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](5120, _angular_core__WEBPACK_IMPORTED_MODULE_0__["LOCALE_ID"], _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵangular_packages_core_core_q"], [[3, _angular_core__WEBPACK_IMPORTED_MODULE_0__["LOCALE_ID"]]]), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](4608, _angular_common__WEBPACK_IMPORTED_MODULE_29__["NgLocalization"], _angular_common__WEBPACK_IMPORTED_MODULE_29__["NgLocaleLocalization"], [_angular_core__WEBPACK_IMPORTED_MODULE_0__["LOCALE_ID"], [2, _angular_common__WEBPACK_IMPORTED_MODULE_29__["ɵangular_packages_common_common_a"]]]), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](5120, _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵangular_packages_core_core_bb"], _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵangular_packages_core_core_s"], [_angular_core__WEBPACK_IMPORTED_MODULE_0__["NgZone"]]), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](5120, _angular_core__WEBPACK_IMPORTED_MODULE_0__["IterableDiffers"], _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵangular_packages_core_core_o"], []), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](5120, _angular_core__WEBPACK_IMPORTED_MODULE_0__["KeyValueDiffers"], _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵangular_packages_core_core_p"], []), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](4608, _angular_platform_browser__WEBPACK_IMPORTED_MODULE_30__["DomSanitizer"], _angular_platform_browser__WEBPACK_IMPORTED_MODULE_30__["ɵDomSanitizerImpl"], [_angular_common__WEBPACK_IMPORTED_MODULE_29__["DOCUMENT"]]), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](6144, _angular_core__WEBPACK_IMPORTED_MODULE_0__["Sanitizer"], null, [_angular_platform_browser__WEBPACK_IMPORTED_MODULE_30__["DomSanitizer"]]), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](4608, _angular_platform_browser__WEBPACK_IMPORTED_MODULE_30__["HAMMER_GESTURE_CONFIG"], _angular_platform_browser__WEBPACK_IMPORTED_MODULE_30__["HammerGestureConfig"], []), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](5120, _angular_platform_browser__WEBPACK_IMPORTED_MODULE_30__["EVENT_MANAGER_PLUGINS"], function (p0_0, p0_1, p0_2, p1_0, p2_0, p2_1, p2_2, p2_3) { return [new _angular_platform_browser__WEBPACK_IMPORTED_MODULE_30__["ɵDomEventsPlugin"](p0_0, p0_1, p0_2), new _angular_platform_browser__WEBPACK_IMPORTED_MODULE_30__["ɵKeyEventsPlugin"](p1_0), new _angular_platform_browser__WEBPACK_IMPORTED_MODULE_30__["ɵHammerGesturesPlugin"](p2_0, p2_1, p2_2, p2_3)]; }, [_angular_common__WEBPACK_IMPORTED_MODULE_29__["DOCUMENT"], _angular_core__WEBPACK_IMPORTED_MODULE_0__["NgZone"], _angular_core__WEBPACK_IMPORTED_MODULE_0__["PLATFORM_ID"], _angular_common__WEBPACK_IMPORTED_MODULE_29__["DOCUMENT"], _angular_common__WEBPACK_IMPORTED_MODULE_29__["DOCUMENT"], _angular_platform_browser__WEBPACK_IMPORTED_MODULE_30__["HAMMER_GESTURE_CONFIG"], _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵConsole"], [2, _angular_platform_browser__WEBPACK_IMPORTED_MODULE_30__["HAMMER_LOADER"]]]), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](4608, _angular_platform_browser__WEBPACK_IMPORTED_MODULE_30__["EventManager"], _angular_platform_browser__WEBPACK_IMPORTED_MODULE_30__["EventManager"], [_angular_platform_browser__WEBPACK_IMPORTED_MODULE_30__["EVENT_MANAGER_PLUGINS"], _angular_core__WEBPACK_IMPORTED_MODULE_0__["NgZone"]]), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](135680, _angular_platform_browser__WEBPACK_IMPORTED_MODULE_30__["ɵDomSharedStylesHost"], _angular_platform_browser__WEBPACK_IMPORTED_MODULE_30__["ɵDomSharedStylesHost"], [_angular_common__WEBPACK_IMPORTED_MODULE_29__["DOCUMENT"]]), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](4608, _angular_platform_browser__WEBPACK_IMPORTED_MODULE_30__["ɵDomRendererFactory2"], _angular_platform_browser__WEBPACK_IMPORTED_MODULE_30__["ɵDomRendererFactory2"], [_angular_platform_browser__WEBPACK_IMPORTED_MODULE_30__["EventManager"], _angular_platform_browser__WEBPACK_IMPORTED_MODULE_30__["ɵDomSharedStylesHost"], _angular_core__WEBPACK_IMPORTED_MODULE_0__["APP_ID"]]), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](6144, _angular_core__WEBPACK_IMPORTED_MODULE_0__["RendererFactory2"], null, [_angular_platform_browser__WEBPACK_IMPORTED_MODULE_30__["ɵDomRendererFactory2"]]), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](6144, _angular_platform_browser__WEBPACK_IMPORTED_MODULE_30__["ɵSharedStylesHost"], null, [_angular_platform_browser__WEBPACK_IMPORTED_MODULE_30__["ɵDomSharedStylesHost"]]), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](4608, _angular_core__WEBPACK_IMPORTED_MODULE_0__["Testability"], _angular_core__WEBPACK_IMPORTED_MODULE_0__["Testability"], [_angular_core__WEBPACK_IMPORTED_MODULE_0__["NgZone"]]), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](4608, _angular_forms__WEBPACK_IMPORTED_MODULE_31__["FormBuilder"], _angular_forms__WEBPACK_IMPORTED_MODULE_31__["FormBuilder"], []), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](4608, _angular_forms__WEBPACK_IMPORTED_MODULE_31__["ɵangular_packages_forms_forms_o"], _angular_forms__WEBPACK_IMPORTED_MODULE_31__["ɵangular_packages_forms_forms_o"], []), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](5120, _angular_router__WEBPACK_IMPORTED_MODULE_32__["ActivatedRoute"], _angular_router__WEBPACK_IMPORTED_MODULE_32__["ɵangular_packages_router_router_g"], [_angular_router__WEBPACK_IMPORTED_MODULE_32__["Router"]]), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](4608, _angular_router__WEBPACK_IMPORTED_MODULE_32__["NoPreloading"], _angular_router__WEBPACK_IMPORTED_MODULE_32__["NoPreloading"], []), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](6144, _angular_router__WEBPACK_IMPORTED_MODULE_32__["PreloadingStrategy"], null, [_angular_router__WEBPACK_IMPORTED_MODULE_32__["NoPreloading"]]), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](135680, _angular_router__WEBPACK_IMPORTED_MODULE_32__["RouterPreloader"], _angular_router__WEBPACK_IMPORTED_MODULE_32__["RouterPreloader"], [_angular_router__WEBPACK_IMPORTED_MODULE_32__["Router"], _angular_core__WEBPACK_IMPORTED_MODULE_0__["NgModuleFactoryLoader"], _angular_core__WEBPACK_IMPORTED_MODULE_0__["Compiler"], _angular_core__WEBPACK_IMPORTED_MODULE_0__["Injector"], _angular_router__WEBPACK_IMPORTED_MODULE_32__["PreloadingStrategy"]]), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](4608, _angular_router__WEBPACK_IMPORTED_MODULE_32__["PreloadAllModules"], _angular_router__WEBPACK_IMPORTED_MODULE_32__["PreloadAllModules"], []), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](5120, _angular_router__WEBPACK_IMPORTED_MODULE_32__["ɵangular_packages_router_router_o"], _angular_router__WEBPACK_IMPORTED_MODULE_32__["ɵangular_packages_router_router_c"], [_angular_router__WEBPACK_IMPORTED_MODULE_32__["Router"], _angular_common__WEBPACK_IMPORTED_MODULE_29__["ViewportScroller"], _angular_router__WEBPACK_IMPORTED_MODULE_32__["ROUTER_CONFIGURATION"]]), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](5120, _angular_router__WEBPACK_IMPORTED_MODULE_32__["ROUTER_INITIALIZER"], _angular_router__WEBPACK_IMPORTED_MODULE_32__["ɵangular_packages_router_router_j"], [_angular_router__WEBPACK_IMPORTED_MODULE_32__["ɵangular_packages_router_router_h"]]), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](5120, _angular_core__WEBPACK_IMPORTED_MODULE_0__["APP_BOOTSTRAP_LISTENER"], function (p0_0) { return [p0_0]; }, [_angular_router__WEBPACK_IMPORTED_MODULE_32__["ROUTER_INITIALIZER"]]), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](5120, "virtual-scroller-default-options", _projects_angular2_multiselect_dropdown_lib_src_lib_virtual_scroll_virtual_scroll__WEBPACK_IMPORTED_MODULE_33__["VIRTUAL_SCROLLER_DEFAULT_OPTIONS_FACTORY"], []), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](4608, _projects_angular2_multiselect_dropdown_lib_src_lib_multiselect_service__WEBPACK_IMPORTED_MODULE_34__["DataService"], _projects_angular2_multiselect_dropdown_lib_src_lib_multiselect_service__WEBPACK_IMPORTED_MODULE_34__["DataService"], []), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](4608, _angular_common_http__WEBPACK_IMPORTED_MODULE_35__["HttpXsrfTokenExtractor"], _angular_common_http__WEBPACK_IMPORTED_MODULE_35__["ɵangular_packages_common_http_http_g"], [_angular_common__WEBPACK_IMPORTED_MODULE_29__["DOCUMENT"], _angular_core__WEBPACK_IMPORTED_MODULE_0__["PLATFORM_ID"], _angular_common_http__WEBPACK_IMPORTED_MODULE_35__["ɵangular_packages_common_http_http_e"]]), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](4608, _angular_common_http__WEBPACK_IMPORTED_MODULE_35__["ɵangular_packages_common_http_http_h"], _angular_common_http__WEBPACK_IMPORTED_MODULE_35__["ɵangular_packages_common_http_http_h"], [_angular_common_http__WEBPACK_IMPORTED_MODULE_35__["HttpXsrfTokenExtractor"], _angular_common_http__WEBPACK_IMPORTED_MODULE_35__["ɵangular_packages_common_http_http_f"]]), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](5120, _angular_common_http__WEBPACK_IMPORTED_MODULE_35__["HTTP_INTERCEPTORS"], function (p0_0) { return [p0_0]; }, [_angular_common_http__WEBPACK_IMPORTED_MODULE_35__["ɵangular_packages_common_http_http_h"]]), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](4608, _angular_common_http__WEBPACK_IMPORTED_MODULE_35__["ɵangular_packages_common_http_http_d"], _angular_common_http__WEBPACK_IMPORTED_MODULE_35__["ɵangular_packages_common_http_http_d"], []), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](6144, _angular_common_http__WEBPACK_IMPORTED_MODULE_35__["XhrFactory"], null, [_angular_common_http__WEBPACK_IMPORTED_MODULE_35__["ɵangular_packages_common_http_http_d"]]), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](4608, _angular_common_http__WEBPACK_IMPORTED_MODULE_35__["HttpXhrBackend"], _angular_common_http__WEBPACK_IMPORTED_MODULE_35__["HttpXhrBackend"], [_angular_common_http__WEBPACK_IMPORTED_MODULE_35__["XhrFactory"]]), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](6144, _angular_common_http__WEBPACK_IMPORTED_MODULE_35__["HttpBackend"], null, [_angular_common_http__WEBPACK_IMPORTED_MODULE_35__["HttpXhrBackend"]]), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](4608, _angular_common_http__WEBPACK_IMPORTED_MODULE_35__["HttpHandler"], _angular_common_http__WEBPACK_IMPORTED_MODULE_35__["ɵHttpInterceptingHandler"], [_angular_common_http__WEBPACK_IMPORTED_MODULE_35__["HttpBackend"], _angular_core__WEBPACK_IMPORTED_MODULE_0__["Injector"]]), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](4608, _angular_common_http__WEBPACK_IMPORTED_MODULE_35__["HttpClient"], _angular_common_http__WEBPACK_IMPORTED_MODULE_35__["HttpClient"], [_angular_common_http__WEBPACK_IMPORTED_MODULE_35__["HttpHandler"]]), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](4608, _examples_mock_data__WEBPACK_IMPORTED_MODULE_36__["MockService"], _examples_mock_data__WEBPACK_IMPORTED_MODULE_36__["MockService"], []), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](1073742336, _angular_common__WEBPACK_IMPORTED_MODULE_29__["CommonModule"], _angular_common__WEBPACK_IMPORTED_MODULE_29__["CommonModule"], []), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](1024, _angular_core__WEBPACK_IMPORTED_MODULE_0__["ErrorHandler"], _angular_platform_browser__WEBPACK_IMPORTED_MODULE_30__["ɵangular_packages_platform_browser_platform_browser_a"], []), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](1024, _angular_core__WEBPACK_IMPORTED_MODULE_0__["NgProbeToken"], function () { return [_angular_router__WEBPACK_IMPORTED_MODULE_32__["ɵangular_packages_router_router_b"]()]; }, []), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](512, _angular_router__WEBPACK_IMPORTED_MODULE_32__["ɵangular_packages_router_router_h"], _angular_router__WEBPACK_IMPORTED_MODULE_32__["ɵangular_packages_router_router_h"], [_angular_core__WEBPACK_IMPORTED_MODULE_0__["Injector"]]), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](256, _angular_core__WEBPACK_IMPORTED_MODULE_0__["APP_ID"], "serverApp", []), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](2048, _angular_platform_browser__WEBPACK_IMPORTED_MODULE_30__["ɵTRANSITION_ID"], null, [_angular_core__WEBPACK_IMPORTED_MODULE_0__["APP_ID"]]), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](1024, _angular_core__WEBPACK_IMPORTED_MODULE_0__["APP_INITIALIZER"], function (p0_0, p1_0, p2_0, p2_1, p2_2) { return [_angular_platform_browser__WEBPACK_IMPORTED_MODULE_30__["ɵangular_packages_platform_browser_platform_browser_j"](p0_0), _angular_router__WEBPACK_IMPORTED_MODULE_32__["ɵangular_packages_router_router_i"](p1_0), _angular_platform_browser__WEBPACK_IMPORTED_MODULE_30__["ɵangular_packages_platform_browser_platform_browser_h"](p2_0, p2_1, p2_2)]; }, [[2, _angular_core__WEBPACK_IMPORTED_MODULE_0__["NgProbeToken"]], _angular_router__WEBPACK_IMPORTED_MODULE_32__["ɵangular_packages_router_router_h"], _angular_platform_browser__WEBPACK_IMPORTED_MODULE_30__["ɵTRANSITION_ID"], _angular_common__WEBPACK_IMPORTED_MODULE_29__["DOCUMENT"], _angular_core__WEBPACK_IMPORTED_MODULE_0__["Injector"]]), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](512, _angular_core__WEBPACK_IMPORTED_MODULE_0__["ApplicationInitStatus"], _angular_core__WEBPACK_IMPORTED_MODULE_0__["ApplicationInitStatus"], [[2, _angular_core__WEBPACK_IMPORTED_MODULE_0__["APP_INITIALIZER"]]]), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](131584, _angular_core__WEBPACK_IMPORTED_MODULE_0__["ApplicationRef"], _angular_core__WEBPACK_IMPORTED_MODULE_0__["ApplicationRef"], [_angular_core__WEBPACK_IMPORTED_MODULE_0__["NgZone"], _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵConsole"], _angular_core__WEBPACK_IMPORTED_MODULE_0__["Injector"], _angular_core__WEBPACK_IMPORTED_MODULE_0__["ErrorHandler"], _angular_core__WEBPACK_IMPORTED_MODULE_0__["ComponentFactoryResolver"], _angular_core__WEBPACK_IMPORTED_MODULE_0__["ApplicationInitStatus"]]), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](1073742336, _angular_core__WEBPACK_IMPORTED_MODULE_0__["ApplicationModule"], _angular_core__WEBPACK_IMPORTED_MODULE_0__["ApplicationModule"], [_angular_core__WEBPACK_IMPORTED_MODULE_0__["ApplicationRef"]]), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](1073742336, _angular_platform_browser__WEBPACK_IMPORTED_MODULE_30__["BrowserModule"], _angular_platform_browser__WEBPACK_IMPORTED_MODULE_30__["BrowserModule"], [[3, _angular_platform_browser__WEBPACK_IMPORTED_MODULE_30__["BrowserModule"]]]), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](1073742336, _angular_forms__WEBPACK_IMPORTED_MODULE_31__["ɵangular_packages_forms_forms_d"], _angular_forms__WEBPACK_IMPORTED_MODULE_31__["ɵangular_packages_forms_forms_d"], []), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](1073742336, _angular_forms__WEBPACK_IMPORTED_MODULE_31__["ReactiveFormsModule"], _angular_forms__WEBPACK_IMPORTED_MODULE_31__["ReactiveFormsModule"], []), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](1073742336, _angular_forms__WEBPACK_IMPORTED_MODULE_31__["FormsModule"], _angular_forms__WEBPACK_IMPORTED_MODULE_31__["FormsModule"], []), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](1024, _angular_router__WEBPACK_IMPORTED_MODULE_32__["ɵangular_packages_router_router_a"], _angular_router__WEBPACK_IMPORTED_MODULE_32__["ɵangular_packages_router_router_e"], [[3, _angular_router__WEBPACK_IMPORTED_MODULE_32__["Router"]]]), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](512, _angular_router__WEBPACK_IMPORTED_MODULE_32__["UrlSerializer"], _angular_router__WEBPACK_IMPORTED_MODULE_32__["DefaultUrlSerializer"], []), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](512, _angular_router__WEBPACK_IMPORTED_MODULE_32__["ChildrenOutletContexts"], _angular_router__WEBPACK_IMPORTED_MODULE_32__["ChildrenOutletContexts"], []), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](256, _angular_router__WEBPACK_IMPORTED_MODULE_32__["ROUTER_CONFIGURATION"], { useHash: true }, []), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](1024, _angular_common__WEBPACK_IMPORTED_MODULE_29__["LocationStrategy"], _angular_router__WEBPACK_IMPORTED_MODULE_32__["ɵangular_packages_router_router_d"], [_angular_common__WEBPACK_IMPORTED_MODULE_29__["PlatformLocation"], [2, _angular_common__WEBPACK_IMPORTED_MODULE_29__["APP_BASE_HREF"]], _angular_router__WEBPACK_IMPORTED_MODULE_32__["ROUTER_CONFIGURATION"]]), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](512, _angular_common__WEBPACK_IMPORTED_MODULE_29__["Location"], _angular_common__WEBPACK_IMPORTED_MODULE_29__["Location"], [_angular_common__WEBPACK_IMPORTED_MODULE_29__["LocationStrategy"], _angular_common__WEBPACK_IMPORTED_MODULE_29__["PlatformLocation"]]), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](512, _angular_core__WEBPACK_IMPORTED_MODULE_0__["Compiler"], _angular_core__WEBPACK_IMPORTED_MODULE_0__["Compiler"], []), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](512, _angular_core__WEBPACK_IMPORTED_MODULE_0__["NgModuleFactoryLoader"], _angular_core__WEBPACK_IMPORTED_MODULE_0__["SystemJsNgModuleLoader"], [_angular_core__WEBPACK_IMPORTED_MODULE_0__["Compiler"], [2, _angular_core__WEBPACK_IMPORTED_MODULE_0__["SystemJsNgModuleLoaderConfig"]]]), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](1024, _angular_router__WEBPACK_IMPORTED_MODULE_32__["ROUTES"], function () { return [[{ path: "", redirectTo: "/basic", pathMatch: "full" }, { path: "basic", component: _examples_basic__WEBPACK_IMPORTED_MODULE_37__["BasicExample"] }, { path: "singleselection", component: _examples_singleselection__WEBPACK_IMPORTED_MODULE_38__["SingleSelectionExample"] }, { path: "searchfilter", component: _examples_searchFilter__WEBPACK_IMPORTED_MODULE_39__["SearchFilterExample"] }, { path: "groupby", component: _examples_groupBy__WEBPACK_IMPORTED_MODULE_40__["GroupByExample"] }, { path: "templating", component: _examples_templating__WEBPACK_IMPORTED_MODULE_41__["TemplatingExample"] }, { path: "dropdownMethods", component: _examples_resetdropdown__WEBPACK_IMPORTED_MODULE_42__["ResetDropdownExample"] }, { path: "disablemode", component: _examples_disablemode__WEBPACK_IMPORTED_MODULE_43__["DisableModeExample"] }, { path: "limitselection", component: _examples_limitselection__WEBPACK_IMPORTED_MODULE_44__["LimitSelectionExample"] }, { path: "limitbadges", component: _examples_limitbadges__WEBPACK_IMPORTED_MODULE_45__["LimitBadgesExample"] }, { path: "customplaceholder", component: _examples_customplaceholder__WEBPACK_IMPORTED_MODULE_46__["CustomPlaceholderExample"] }, { path: "styling", component: _examples_styling__WEBPACK_IMPORTED_MODULE_47__["StylingExample"] }, { path: "usinginform", component: _examples_usingWithForms__WEBPACK_IMPORTED_MODULE_48__["UsingWithFormExample"] }, { path: "usinginreactiveform", component: _examples_usingInReactForms__WEBPACK_IMPORTED_MODULE_49__["UsingWithReactiveFormExample"] }, { path: "lazyloading", component: _examples_lazyLoading__WEBPACK_IMPORTED_MODULE_50__["LazyLoadingExample"] }, { path: "multipledropdowns", component: _examples_multipleDropdowns__WEBPACK_IMPORTED_MODULE_51__["MultipleDropdownsExample"] }, { path: "dynamicdatasets", component: _examples_dynamicDataSets__WEBPACK_IMPORTED_MODULE_52__["DynamicDataSetsExample"] }, { path: "theming", component: _examples_theming__WEBPACK_IMPORTED_MODULE_53__["ThemingExample"] }, { path: "remoteData", component: _examples_remoteData__WEBPACK_IMPORTED_MODULE_54__["RemoteDataExample"] }, { path: "customSearchAPI", component: _examples_customSearch__WEBPACK_IMPORTED_MODULE_55__["CustomSearchExample"] }, { path: "searchFilterByOneProperty", component: _examples_searchByOneProperty__WEBPACK_IMPORTED_MODULE_56__["SearchFilterByOnePropertyExample"] }, { path: "lazyloadingRemoteData", component: _examples_lazyLoadingRemoteData__WEBPACK_IMPORTED_MODULE_57__["LazyLoadingRemoteDataExample"] }, { path: "searchfilterAddNewItem", component: _examples_searchFilterAddNewItem__WEBPACK_IMPORTED_MODULE_58__["SearchFilterAddItemExample"] }, { path: "events", component: _examples_events__WEBPACK_IMPORTED_MODULE_59__["EventsExample"] }, { path: "usingInList", component: _examples_usingInList__WEBPACK_IMPORTED_MODULE_60__["UsingInListExample"] }]]; }, []), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](1024, _angular_router__WEBPACK_IMPORTED_MODULE_32__["Router"], _angular_router__WEBPACK_IMPORTED_MODULE_32__["ɵangular_packages_router_router_f"], [_angular_core__WEBPACK_IMPORTED_MODULE_0__["ApplicationRef"], _angular_router__WEBPACK_IMPORTED_MODULE_32__["UrlSerializer"], _angular_router__WEBPACK_IMPORTED_MODULE_32__["ChildrenOutletContexts"], _angular_common__WEBPACK_IMPORTED_MODULE_29__["Location"], _angular_core__WEBPACK_IMPORTED_MODULE_0__["Injector"], _angular_core__WEBPACK_IMPORTED_MODULE_0__["NgModuleFactoryLoader"], _angular_core__WEBPACK_IMPORTED_MODULE_0__["Compiler"], _angular_router__WEBPACK_IMPORTED_MODULE_32__["ROUTES"], _angular_router__WEBPACK_IMPORTED_MODULE_32__["ROUTER_CONFIGURATION"], [2, _angular_router__WEBPACK_IMPORTED_MODULE_32__["UrlHandlingStrategy"]], [2, _angular_router__WEBPACK_IMPORTED_MODULE_32__["RouteReuseStrategy"]]]), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](1073742336, _angular_router__WEBPACK_IMPORTED_MODULE_32__["RouterModule"], _angular_router__WEBPACK_IMPORTED_MODULE_32__["RouterModule"], [[2, _angular_router__WEBPACK_IMPORTED_MODULE_32__["ɵangular_packages_router_router_a"]], [2, _angular_router__WEBPACK_IMPORTED_MODULE_32__["Router"]]]), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](1073742336, _app_router__WEBPACK_IMPORTED_MODULE_61__["AppRouterModule"], _app_router__WEBPACK_IMPORTED_MODULE_61__["AppRouterModule"], []), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](1073742336, _projects_angular2_multiselect_dropdown_lib_src_lib_virtual_scroll_virtual_scroll__WEBPACK_IMPORTED_MODULE_33__["VirtualScrollerModule"], _projects_angular2_multiselect_dropdown_lib_src_lib_virtual_scroll_virtual_scroll__WEBPACK_IMPORTED_MODULE_33__["VirtualScrollerModule"], []), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](1073742336, _projects_angular2_multiselect_dropdown_lib_src_lib_multiselect_component__WEBPACK_IMPORTED_MODULE_62__["AngularMultiSelectModule"], _projects_angular2_multiselect_dropdown_lib_src_lib_multiselect_component__WEBPACK_IMPORTED_MODULE_62__["AngularMultiSelectModule"], []), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](1073742336, primeng_components_common_shared__WEBPACK_IMPORTED_MODULE_63__["SharedModule"], primeng_components_common_shared__WEBPACK_IMPORTED_MODULE_63__["SharedModule"], []), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](1073742336, primeng_components_tooltip_tooltip__WEBPACK_IMPORTED_MODULE_64__["TooltipModule"], primeng_components_tooltip_tooltip__WEBPACK_IMPORTED_MODULE_64__["TooltipModule"], []), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](1073742336, primeng_components_tabview_tabview__WEBPACK_IMPORTED_MODULE_65__["TabViewModule"], primeng_components_tabview_tabview__WEBPACK_IMPORTED_MODULE_65__["TabViewModule"], []), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](1073742336, _angular_common_http__WEBPACK_IMPORTED_MODULE_35__["HttpClientXsrfModule"], _angular_common_http__WEBPACK_IMPORTED_MODULE_35__["HttpClientXsrfModule"], []), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](1073742336, _angular_common_http__WEBPACK_IMPORTED_MODULE_35__["HttpClientModule"], _angular_common_http__WEBPACK_IMPORTED_MODULE_35__["HttpClientModule"], []), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](1073742336, ngx_highlightjs__WEBPACK_IMPORTED_MODULE_66__["HighlightModule"], ngx_highlightjs__WEBPACK_IMPORTED_MODULE_66__["HighlightModule"], []), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](1073742336, _app_module__WEBPACK_IMPORTED_MODULE_1__["AppModule"], _app_module__WEBPACK_IMPORTED_MODULE_1__["AppModule"], []), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](256, _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵAPP_ROOT"], true, []), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](256, _angular_common_http__WEBPACK_IMPORTED_MODULE_35__["ɵangular_packages_common_http_http_e"], "XSRF-TOKEN", []), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](256, _angular_common_http__WEBPACK_IMPORTED_MODULE_35__["ɵangular_packages_common_http_http_f"], "X-XSRF-TOKEN", []), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](256, ngx_highlightjs__WEBPACK_IMPORTED_MODULE_66__["HIGHLIGHT_OPTIONS"], { languages: _app_module__WEBPACK_IMPORTED_MODULE_1__["hljsLanguages"] }, [])]); }); diff --git a/docs/main-es2015.js.map b/docs/main-es2015.js.map index 3beb1d9b..a866b74b 100644 --- a/docs/main-es2015.js.map +++ b/docs/main-es2015.js.map @@ -1 +1 @@ -{"version":3,"sources":["webpack:///./projects/angular2-multiselect-dropdown-lib/src/lib/clickOutside.ts","webpack:///./projects/angular2-multiselect-dropdown-lib/src/lib/list-filter.ts","webpack:///./projects/angular2-multiselect-dropdown-lib/src/lib/menu-item.ts.CIcon.html","webpack:///./projects/angular2-multiselect-dropdown-lib/src/lib/menu-item.ts","webpack:///./projects/angular2-multiselect-dropdown-lib/src/lib/multiselect.component.html","webpack:///./projects/angular2-multiselect-dropdown-lib/src/lib/multiselect.component.ts","webpack:///./projects/angular2-multiselect-dropdown-lib/src/lib/multiselect.model.ts","webpack:///./projects/angular2-multiselect-dropdown-lib/src/lib/multiselect.service.ts","webpack:///./projects/angular2-multiselect-dropdown-lib/src/lib/virtual-scroll/virtual-scroll.ts.VirtualScrollerComponent.html","webpack:///./projects/angular2-multiselect-dropdown-lib/src/lib/virtual-scroll/virtual-scroll.ts","webpack:///./src/$_lazy_route_resource lazy namespace object","webpack:///./src/app/app.component.html","webpack:///./src/app/app.component.ts","webpack:///./src/app/app.module.ts","webpack:///./src/app/app.router.ts","webpack:///./src/app/examples/views/view.html","webpack:///./src/app/examples/basic.ts","webpack:///./src/app/examples/views/customSearch.html","webpack:///./src/app/examples/customSearch.ts","webpack:///./src/app/examples/customplaceholder.ts","webpack:///./src/app/examples/views/disableMode.html","webpack:///./src/app/examples/disablemode.ts","webpack:///./src/app/examples/views/dynamicData.html","webpack:///./src/app/examples/dynamicDataSets.ts","webpack:///./src/app/examples/views/events.html","webpack:///./src/app/examples/events.ts","webpack:///./src/app/examples/gist.ts.ng2Gist.html","webpack:///./src/app/examples/gist.ts","webpack:///./src/app/examples/views/groupBy.html","webpack:///./src/app/examples/groupBy.ts","webpack:///./src/app/examples/views/lazyLoading.html","webpack:///./src/app/examples/lazyLoading.ts","webpack:///./src/app/examples/views/lazyLoadingRemoteData.html","webpack:///./src/app/examples/lazyLoadingRemoteData.ts","webpack:///./src/app/examples/limitbadges.ts","webpack:///./src/app/examples/limitselection.ts","webpack:///./src/app/examples/mock-data.ts","webpack:///./src/app/examples/views/multipledropdowns.html","webpack:///./src/app/examples/multipleDropdowns.ts","webpack:///./src/app/examples/views/remoteData.html","webpack:///./src/app/examples/remoteData.ts","webpack:///./src/app/examples/views/resetDropdown.html","webpack:///./src/app/examples/resetdropdown.ts","webpack:///./src/app/examples/searchByOneProperty.ts","webpack:///./src/app/examples/searchFilter.ts","webpack:///./src/app/examples/views/searchFilter.html","webpack:///./src/app/examples/searchFilterAddNewItem.ts","webpack:///./src/app/examples/singleselection.ts","webpack:///./src/app/examples/styling.ts","webpack:///./src/app/examples/views/templating.html","webpack:///./src/app/examples/templating.ts","webpack:///./src/app/examples/views/theming.html","webpack:///./src/app/examples/theming.ts","webpack:///./src/app/examples/views/usingInList.html","webpack:///./src/app/examples/usingInList.ts","webpack:///./src/app/examples/views/using-in-react-form.html","webpack:///./src/app/examples/usingInReactForms.ts","webpack:///./src/app/examples/views/using-in-form.html","webpack:///./src/app/examples/usingWithForms.ts","webpack:///./src/environments/environment.ts","webpack:///./src/main.ts"],"names":[],"mappings":"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,EAAC,SAAS,EAAC,UAAU,EAAC,OAAO,EAAC,OAAO,EAAC,KAAK,EAAC,UAAU,EAAC,QAAQ,EAAC,OAAO,EAAC,OAAO,EAAC,UAAU,EAAC,QAAQ,EAAC,OAAO,EAAC,MAAM,EAAC,OAAO,EAAC,OAAO,EAAC,SAAS,EAAC,QAAQ,EAAC,MAAM,EAAC,OAAO,EAAC,OAAO,EAAC,OAAO,EAAC,OAAO,EAAC,QAAQ,EAAC,MAAM,EAAC,SAAS,EAAC,UAAU,EAAC,UAAU,EAAC,SAAS,EAAC,QAAQ,EAAC,UAAU,EAAC,OAAO,EAAC,QAAQ,EAAC,QAAQ,EAAC,QAAQ,EAAC,SAAS,EAAC,SAAS,EAAC,SAAS,EAAC,QAAQ,EAAC,QAAQ,EAAC,QAAQ,EAAC,QAAQ,EAAC,QAAQ,EAAC,MAAM,EAAC,QAAQ,EAAC,QAAQ,EAAC,UAAU,EAAC,QAAQ,EAAC,MAAM,EAAC,QAAQ,EAAC,MAAM,EAAC,OAAO,EAAC,OAAO,EAAC,QAAQ,EAAC,MAAM,EAAC,KAAK,EAAC,MAAM,EAAC,YAAY,EAAC,MAAM,EAAC,QAAQ,EAAC,QAAQ,EAAC,SAAS,EAAC,MAAM,EAAC,OAAO,EAAC,OAAO,EAAC,MAAM,EAAC,QAAQ,EAAC,OAAO,EAAC,OAAO,EAAC,MAAM,EAAC,QAAQ,EAAC,SAAS,EAAC,MAAM,EAAC,SAAS,EAAC,QAAQ,EAAC,UAAU,EAAC,SAAS,EAAC,OAAO,EAAC,SAAS,EAAC,WAAW,EAAC,OAAO,EAAC,QAAQ,EAAC,QAAQ,EAAC,QAAQ,EAAC,WAAW,EAAC,SAAS,EAAC,SAAS,EAAC,WAAW,EAAC,QAAQ,EAAC,UAAU,EAAC,UAAU,EAAC,QAAQ,EAAC,KAAK,EAAC,UAAU,EAAC,WAAW,EAAC,OAAO,EAAC,SAAS,EAAC,SAAS,EAAC,MAAM,EAAC,MAAM,EAAC,OAAO,EAAC,QAAQ,EAAC,QAAQ,EAAC,QAAQ,EAAC,OAAO,EAAC,SAAS,EAAC,QAAQ,EAAC,MAAM,EAAC,UAAU,EAAC,OAAO,EAAC,UAAU,EAAC,UAAU,EAAC,MAAM,EAAC,SAAS,EAAC,OAAO,EAAC,SAAS,EAAC,OAAO,EAAC,SAAS,EAAC,UAAU,EAAC,OAAO,EAAC,MAAM,EAAC,YAAY,EAAC,QAAQ,EAAC,SAAS,EAAC,OAAO,EAAC,OAAO,EAAC,SAAS,EAAC,QAAQ,EAAC,SAAS,EAAC,UAAU,EAAC,SAAS,EAAC,QAAQ,EAAC,OAAO,EAAC,MAAM,EAAC,QAAQ,EAAC,QAAQ,EAAC,QAAQ,EAAC,QAAQ,EAAC,OAAO,EAAC,OAAO,EAAC,MAAM,EAAC,QAAQ,EAAC,WAAW,EAAC,OAAO,EAAC,QAAQ,EAAC,OAAO,EAAC,OAAO,EAAC,MAAM,EAAC,OAAO,EAAC,QAAQ,EAAC,KAAK,EAAC,MAAM,EAAC,MAAM,EAAC,QAAQ,EAAC,SAAS,EAAC,OAAO,EAAC,UAAU,EAAC,SAAS,EAAC,SAAS,EAAC,QAAQ,EAAC,MAAM,EAAC,WAAW,EAAC,QAAQ,EAAC,SAAS,EAAC,UAAU,EAAC,SAAS,EAAC,OAAO,EAAC,QAAQ,EAAC,MAAM,EAAC,QAAQ,EAAC,QAAQ,EAAC,MAAM,EAAC,SAAS,EAAC,QAAQ,EAAC,SAAS,EAAC,OAAO,EAAC,QAAQ,EAAC,QAAQ,EAAC,SAAS,EAAC,MAAM,EAAC,SAAS,EAAC,YAAY,EAAC,QAAQ,EAAC,SAAS,EAAC,SAAS,EAAC,QAAQ,EAAC,QAAQ,EAAC,WAAW,EAAC,OAAO,EAAC,SAAS,EAAC,UAAU,EAAC,KAAK,EAAC,MAAM,EAAC,OAAO,EAAC,WAAW,EAAC,SAAS,EAAC,SAAS,EAAC,OAAO,EAAC,UAAU,EAAC,QAAQ,EAAC,UAAU,EAAC,SAAS,EAAC,UAAU,EAAC,OAAO,EAAC,QAAQ,EAAC,SAAS,EAAC,SAAS,EAAC,QAAQ,EAAC,SAAS,EAAC,QAAQ,EAAC,QAAQ,EAAC,QAAQ,EAAC,OAAO,EAAC,QAAQ,EAAC,UAAU,EAAC,OAAO,EAAC,QAAQ,EAAC,QAAQ,EAAC,QAAQ,EAAC,UAAU,EAAC,OAAO,EAAC,QAAQ,EAAC,MAAM,EAAC,SAAS,EAAC,QAAQ,EAAC,QAAQ,EAAC,SAAS,EAAC,QAAQ,EAAC,YAAY,EAAC,YAAY,EAAC,QAAQ,EAAC,QAAQ,EAAC,QAAQ,EAAC,MAAM,EAAC,QAAQ,EAAC,OAAO,EAAC,SAAS,EAAC,MAAM,EAAC,QAAQ,EAAC,QAAQ,EAAC,MAAM,EAAC,OAAO,EAAC,OAAO,EAAC,MAAM,EAAC,SAAS,EAAC,SAAS,EAAC,MAAM,EAAC,QAAQ,EAAC,OAAO,EAAC,QAAQ,EAAC,QAAQ,EAAC,QAAQ,EAAC,UAAU,EAAC,KAAK,EAAC,KAAK,EAAC,WAAW,EAAC,QAAQ,EAAC,QAAQ,EAAC,OAAO,EAAC,SAAS,EAAC,MAAM,EAAC,OAAO,EAAC,QAAQ,EAAC,QAAQ,EAAC,SAAS,EAAC,SAAS,EAAC,QAAQ,EAAC,MAAM,EAAC,MAAM,EAAC,SAAS,EAAC,UAAU,EAAC,SAAS,EAAC,SAAS,EAAC,QAAQ,EAAC,UAAU,EAAC,SAAS,EAAC,OAAO,EAAC,UAAU,EAAC,MAAM,EAAC,QAAQ,EAAC,MAAM,EAAC,SAAS,EAAC,WAAW,EAAC,SAAS,EAAC,UAAU,EAAC,UAAU,EAAC,SAAS,EAAC,QAAQ,EAAC,UAAU,EAAC,OAAO,EAAC,OAAO,EAAC,SAAS,EAAC,MAAM,EAAC,QAAQ,EAAC,MAAM,EAAC,SAAS,EAAC,SAAS,EAAC,SAAS,EAAC,QAAQ,EAAC,WAAW,EAAC,SAAS,EAAC,MAAM,EAAC,QAAQ,EAAC,OAAO,EAAC,UAAU,EAAC,OAAO,EAAC,UAAU,EAAC,OAAO,EAAC,QAAQ,EAAC,QAAQ,EAAC,QAAQ,EAAC,SAAS,EAAC,MAAM,EAAC,UAAU,EAAC,QAAQ,EAAC,QAAQ,EAAC,MAAM,EAAC,WAAW,EAAC,QAAQ,EAAC,OAAO,EAAC,OAAO,EAAC,MAAM,EAAC,OAAO,EAAC,QAAQ,EAAC,QAAQ,EAAC,OAAO,EAAC,MAAM,EAAC,QAAQ,EAAC,SAAS,EAAC,MAAM,EAAC,UAAU,EAAC,UAAU,EAAC,MAAM,EAAC,WAAW,EAAC,UAAU,EAAC,UAAU,EAAC,UAAU,EAAC,MAAM,EAAC,QAAQ,EAAC,QAAQ,EAAC,SAAS,EAAC,QAAQ,EAAC,OAAO,EAAC,UAAU,EAAC,SAAS,EAAC,OAAO,EAAC,MAAM,EAAC,SAAS,EAAC,SAAS,EAAC,MAAM,EAAC,QAAQ,EAAC,IAAI,EAAC,UAAU,EAAC,OAAO,EAAC,OAAO,EAAC,UAAU,EAAC,QAAQ,EAAC,OAAO,EAAC,SAAS,EAAC,QAAQ,EAAC,QAAQ,EAAC,MAAM,EAAC,UAAU,EAAC,OAAO,EAAC,QAAQ,EAAC,OAAO,EAAC,OAAO,EAAC,QAAQ,EAAC,SAAS,EAAC,OAAO,EAAC,OAAO,EAAC,SAAS,EAAC,MAAM,EAAC,YAAY,EAAC,OAAO,EAAC,YAAY,EAAC,OAAO,EAAC,SAAS,EAAC,WAAW,EAAC,OAAO,EAAC,MAAM,EAAC,UAAU,EAAC,QAAQ,EAAC,QAAQ,EAAC,MAAM,EAAC,SAAS,EAAC,QAAQ,EAAC,OAAO,EAAC,OAAO,EAAC,SAAS,EAAC,SAAS,EAAC,QAAQ,EAAC,SAAS,EAAC,OAAO,EAAC,OAAO,EAAC,aAAa,EAAC,QAAQ,EAAC,QAAQ,EAAC,SAAS,EAAC,SAAS,EAAC,QAAQ,EAAC,SAAS,EAAC,SAAS,EAAC,QAAQ,EAAC,OAAO,EAAC,SAAS,EAAC,MAAM,EAAC,OAAO,EAAC,OAAO,EAAC,QAAQ,EAAC,MAAM,EAAC,QAAQ,EAAC,QAAQ,EAAC,MAAM,EAAC,QAAQ,EAAC,OAAO,EAAC,WAAW,EAAC,OAAO,EAAC,SAAS,EAAC,QAAQ,EAAC,SAAS,EAAC,MAAM,EAAC,UAAU,EAAC,MAAM,EAAC,MAAM,EAAC,SAAS,EAAC,UAAU,EAAC,UAAU,EAAC,MAAM,EAAC,QAAQ,EAAC,QAAQ,EAAC,OAAO,EAAC,OAAO,EAAC,WAAW,EAAC,SAAS,EAAC,MAAM,EAAC,SAAS,EAAC,OAAO,EAAC,QAAQ,EAAC,YAAY,EAAC,SAAS,EAAC,SAAS,EAAC,MAAM,EAAC,QAAQ,EAAC,QAAQ,EAAC,YAAY,EAAC,OAAO,EAAC,QAAQ,EAAC,OAAO,EAAC,QAAQ,EAAC,SAAS,EAAC,QAAQ,EAAC,OAAO,EAAC,SAAS,EAAC,UAAU,EAAC,MAAM,EAAC,QAAQ,EAAC,QAAQ,EAAC,WAAW,EAAC,QAAQ,EAAC,OAAO,EAAC,OAAO,EAAC,OAAO,EAAC,QAAQ,EAAC,QAAQ,EAAC,SAAS,EAAC,MAAM,EAAC,OAAO,EAAC,QAAQ,EAAC,MAAM,EAAC,OAAO,EAAC,OAAO,EAAC,QAAQ,EAAC,SAAS,EAAC,OAAO,EAAC,SAAS,EAAC,OAAO,EAAC,OAAO,EAAC,SAAS,EAAC,MAAM,EAAC,OAAO,EAAC,MAAM,EAAC,MAAM,EAAC,OAAO,EAAC,MAAM,EAAC,OAAO,EAAC,SAAS,EAAC,UAAU,EAAC,SAAS,EAAC,OAAO,EAAC,OAAO,EAAC,SAAS,EAAC,QAAQ,EAAC,QAAQ,EAAC,MAAM,EAAC,SAAS,EAAC,SAAS,EAAC,SAAS,EAAC,UAAU,EAAC,MAAM,EAAC,SAAS,EAAC,MAAM,EAAC,IAAI,EAAC,WAAW,EAAC,OAAO,EAAC,QAAQ,EAAC,OAAO,EAAC,SAAS,EAAC,WAAW,EAAC,SAAS,EAAC,MAAM,EAAC,QAAQ,EAAC,UAAU,EAAC,SAAS,EAAC,OAAO,EAAC,QAAQ,EAAC,SAAS,EAAC,WAAW,EAAC,WAAW,EAAC,OAAO,EAAC,QAAQ,EAAC,QAAQ,EAAC,OAAO,EAAC,UAAU,EAAC,SAAS,EAAC,OAAO,EAAC,UAAU,EAAC,UAAU,EAAC,SAAS,EAAC,QAAQ,EAAC,OAAO,EAAC,SAAS,EAAC,OAAO,EAAC,UAAU,EAAC,UAAU,EAAC,OAAO,EAAC,OAAO,EAAC,QAAQ,EAAC,QAAQ,EAAC,SAAS,EAAC,MAAM,EAAC,UAAU,EAAC,MAAM,EAAC,SAAS,EAAC,WAAW,EAAC,QAAQ,EAAC,SAAS,EAAC,MAAM,EAAC,UAAU,EAAC,MAAM,EAAC,QAAQ,EAAC,QAAQ,EAAC,UAAU,EAAC,OAAO,EAAC,QAAQ,EAAC,QAAQ,EAAC,SAAS,EAAC,SAAS,EAAC,SAAS,EAAC,WAAW,EAAC,OAAO,EAAC,SAAS,EAAC,SAAS,EAAC,SAAS,EAAC,SAAS,EAAC,MAAM,EAAC,OAAO,EAAC,WAAW,EAAC,QAAQ,EAAC,UAAU,EAAC,OAAO,EAAC,QAAQ,EAAC,SAAS,EAAC,SAAS,EAAC,SAAS,EAAC,UAAU,EAAC,MAAM,EAAC,WAAW,EAAC,SAAS,EAAC,MAAM,EAAC,WAAW,EAAC,QAAQ,EAAC,SAAS,EAAC,WAAW,EAAC,MAAM,EAAC,WAAW,EAAC,MAAM,EAAC,OAAO,EAAC,OAAO,EAAC,OAAO,EAAC,OAAO,EAAC,SAAS,EAAC,SAAS,EAAC,OAAO,EAAC,UAAU,EAAC,SAAS,EAAC,YAAY,EAAC,OAAO,EAAC,QAAQ,EAAC,UAAU,EAAC,UAAU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,EAAC,OAAO,EAAC,MAAM,EAAC,WAAW,EAAC,OAAO,EAAC,MAAM,EAAC,SAAS,EAAC,SAAS,EAAC,SAAS,EAAC,OAAO,EAAC,QAAQ,EAAC,UAAU,EAAC,OAAO,EAAC,OAAO,EAAC,OAAO,EAAC,MAAM,EAAC,OAAO,EAAC,IAAI,EAAC,UAAU,EAAC,KAAK,EAAC,OAAO,EAAC,QAAQ,EAAC,QAAQ,EAAC,OAAO,EAAC,SAAS,EAAC,UAAU,EAAC,QAAQ,EAAC,SAAS,EAAC,QAAQ,EAAC,UAAU,EAAC,OAAO,EAAC,SAAS,EAAC,UAAU,EAAC,QAAQ,EAAC,OAAO,EAAC,MAAM,EAAC,WAAW,EAAC,QAAQ,EAAC,OAAO,EAAC,UAAU,EAAC,WAAW,EAAC,SAAS,EAAC,OAAO,EAAC,OAAO,EAAC,QAAQ,EAAC,QAAQ,EAAC,SAAS,EAAC,QAAQ,EAAC,UAAU,EAAC,QAAQ,EAAC,MAAM,EAAC,SAAS,EAAC,SAAS,EAAC,SAAS,EAAC,SAAS,EAAC,QAAQ,EAAC,WAAW,EAAC,SAAS,EAAC,SAAS,EAAC,QAAQ,EAAC,UAAU,EAAC,SAAS,EAAC,QAAQ,EAAC,UAAU,EAAC,WAAW,EAAC,QAAQ,EAAC,MAAM,EAAC,QAAQ,EAAC,SAAS,EAAC,QAAQ,EAAC,QAAQ,EAAC,QAAQ,EAAC,MAAM,EAAC,OAAO,EAAC,QAAQ,EAAC,QAAQ,EAAC,OAAO,EAAC,SAAS,EAAC,OAAO,EAAC,QAAQ,EAAC,SAAS,EAAC,QAAQ,EAAC,QAAQ,EAAC,QAAQ,EAAC,MAAM,EAAC,SAAS,EAAC,SAAS,EAAC,MAAM,EAAC,QAAQ,EAAC,SAAS,EAAC,OAAO,EAAC,OAAO,EAAC,QAAQ,EAAC,SAAS,EAAC,UAAU,EAAC,MAAM,EAAC,MAAM,EAAC,UAAU,EAAC,OAAO,EAAC,UAAU,EAAC,SAAS,EAAC,QAAQ,EAAC,QAAQ,EAAC,QAAQ,EAAC,QAAQ,EAAC,QAAQ,EAAC,OAAO,EAAC,MAAM,EAAC,MAAM,EAAC,OAAO,EAAC,QAAQ,EAAC,QAAQ,EAAC,OAAO,EAAC,QAAQ,EAAC,SAAS,EAAC,MAAM,EAAC,OAAO,EAAC,KAAK,EAAC,QAAQ,EAAC,OAAO,EAAC,QAAQ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O,EAAC,QAAQ,EAAC,MAAM,EAAC,KAAK,EAAC,MAAM,EAAC,YAAY,EAAC,MAAM,EAAC,QAAQ,EAAC,QAAQ,EAAC,SAAS,EAAC,MAAM,EAAC,OAAO,EAAC,OAAO,EAAC,MAAM,EAAC,QAAQ,EAAC,OAAO,EAAC,OAAO,EAAC,MAAM,EAAC,QAAQ,EAAC,SAAS,EAAC,MAAM,EAAC,SAAS,EAAC,QAAQ,EAAC,UAAU,EAAC,SAAS,EAAC,OAAO,EAAC,SAAS,EAAC,WAAW,EAAC,OAAO,EAAC,QAAQ,EAAC,QAAQ,EAAC,QAAQ,EAAC,WAAW,EAAC,SAAS,EAAC,SAAS,EAAC,WAAW,EAAC,QAAQ,EAAC,UAAU,EAAC,UAAU,EAAC,QAAQ,EAAC,KAAK,EAAC,UAAU,EAAC,WAAW,EAAC,OAAO,EAAC,SAAS,EAAC,SAAS,EAAC,MAAM,EAAC,MAAM,EAAC,OAAO,EAAC,QAAQ,EAAC,QAAQ,EAAC,QAAQ,EAAC,OAAO,EAAC,SAAS,EAAC,QAAQ,EAAC,MAAM,EAAC,UAAU,EAAC,OAAO,EAAC,UAAU,EAAC,UAAU,EAAC,MAAM,EAAC,SAAS,EAAC,OAAO,EAAC,SAAS,EAAC,OAAO,EAAC,SAAS,EAAC,UAAU,EAAC,OAAO,EAAC,MAAM,EAAC,YAAY,EAAC,QAAQ,EAAC,SAAS,EAAC,OAAO,EAAC,OAAO,EAAC,SAAS,EAAC,QAAQ,EAAC,SAAS,EAAC,UAAU,EAAC,SAAS,EAAC,QAAQ,EAAC,OAAO,EAAC,MAAM,EAAC,QAAQ,EAAC,QAAQ,EAAC,QAAQ,EAAC,QAAQ,EAAC,OAAO,EAAC,OAAO,EAAC,MAAM,EAAC,QAAQ,EAAC,WAAW,EAAC,OAAO,EAAC,QAAQ,EAAC,OAAO,EAAC,OAAO,EAAC,MAAM,EAAC,OAAO,EAAC,QAAQ,EAAC,KAAK,EAAC,MAAM,EAAC,MAAM,EAAC,QAAQ,EAAC,SAAS,EAAC,OAAO,EAAC,UAAU,EAAC,SAAS,EAAC,SAAS,EAAC,QAAQ,EAAC,MAAM,EAAC,WAAW,EAAC,QAAQ,EAAC,SAAS,EAAC,UAAU,EAAC,SAAS,EAAC,OAAO,EAAC,QAAQ,EAAC,MAAM,EAAC,QAAQ,EAAC,QAAQ,EAAC,MAAM,EAAC,SAAS,EAAC,QAAQ,EAAC,SAAS,EAAC,OAAO,EAAC,QAAQ,EAAC,QAAQ,EAAC,SAAS,EAAC,MAAM,EAAC,SAAS,EAAC,YAAY,EAAC,QAAQ,EAAC,SAAS,EAAC,SAAS,EAAC,QAAQ,EAAC,QAAQ,EAAC,WAAW,EAAC,OAAO,EAAC,SAAS,EAAC,UAAU,EAAC,KAAK,EAAC,MAAM,EAAC,OAAO,EAAC,WAAW,EAAC,SAAS,EAAC,SAAS,EAAC,OAAO,EAAC,UAAU,EAAC,QAAQ,EAAC,UAAU,EAAC,SAAS,EAAC,UAAU,EAAC,OAAO,EAAC,QAAQ,EAAC,SAAS,EAAC,SAAS,EAAC,QAAQ,EAAC,SAAS,EAAC,QAAQ,EAAC,QAAQ,EAAC,QAAQ,EAAC,OAAO,EAAC,QAAQ,EAAC,UAAU,EAAC,OAAO,EAAC,QAAQ,EAAC,QAAQ,EAAC,QAAQ,EAAC,UAAU,EAAC,OAAO,EAAC,QAAQ,EAAC,MAAM,EAAC,SAAS,EAAC,QAAQ,EAAC,QAAQ,EAAC,SAAS,EAAC,QAAQ,EAAC,YAAY,EAAC,YAAY,EAAC,QAAQ,EAAC,QAAQ,EAAC,QAAQ,EAAC,MAAM,EAAC,QAAQ,EAAC,OAAO,EAAC,SAAS,EAAC,MAAM,EAAC,QAAQ,EAAC,QAAQ,EAAC,MAAM,EAAC,OAAO,EAAC,OAAO,EAAC,MAAM,EAAC,SAAS,EAAC,SAAS,EAAC,MAAM,EAAC,QAAQ,EAAC,OAAO,EAAC,QAAQ,EAAC,QAAQ,EAAC,QAAQ,EAAC,UAAU,EAAC,KAAK,EAAC,KAAK,EAAC,WAAW,EAAC,QAAQ,EAAC,QAAQ,EAAC,OAAO,EAAC,SAAS,EAAC,MAAM,EAAC,OAAO,EAAC,QAAQ,EAAC,QAAQ,EAAC,SAAS,EAAC,SAAS,EAAC,QAAQ,EAAC,MAAM,EAAC,MAAM,EAAC,SAAS,EAAC,UAAU,EAAC,SAAS,EAAC,SAAS,EAAC,QAAQ,EAAC,UAAU,EAAC,SAAS,EAAC,OAAO,EAAC,UAAU,EAAC,MAAM,EAAC,QAAQ,EAAC,MAAM,EAAC,SAAS,EAAC,WAAW,EAAC,SAAS,EAAC,UAAU,EAAC,UAAU,EAAC,SAAS,EAAC,QAAQ,EAAC,UAAU,EAAC,OAAO,EAAC,OAAO,EAAC,SAAS,EAAC,MAAM,EAAC,QAAQ,EAAC,MAAM,EAAC,SAAS,EAAC,SAAS,EAAC,SAAS,EAAC,QAAQ,EAAC,WAAW,EAAC,SAAS,EAAC,MAAM,EAAC,QAAQ,EAAC,OAAO,EAAC,UAAU,EAAC,OAAO,EAAC,UAAU,EAAC,OAAO,EAAC,QAAQ,EAAC,QAAQ,EAAC,QAAQ,EAAC,SAAS,EAAC,MAAM,EAAC,UAAU,EAAC,QAAQ,EAAC,QAAQ,EAAC,MAAM,EAAC,WAAW,EAAC,QAAQ,EAAC,OAAO,EAAC,OAAO,EAAC,MAAM,EAAC,OAAO,EAAC,QAAQ,EAAC,QAAQ,EAAC,OAAO,EAAC,MAAM,EAAC,QAAQ,EAAC,SAAS,EAAC,MAAM,EAAC,UAAU,EAAC,UAAU,EAAC,MAAM,EAAC,WAAW,EAAC,UAAU,EAAC,UAAU,EAAC,UAAU,EAAC,MAAM,EAAC,QAAQ,EAAC,QAAQ,EAAC,SAAS,EAAC,QAAQ,EAAC,OAAO,EAAC,UAAU,EAAC,SAAS,EAAC,OAAO,EAAC,MAAM,EAAC,SAAS,EAAC,SAAS,EAAC,MAAM,EAAC,QAAQ,EAAC,IAAI,EAAC,UAAU,EAAC,OAAO,EAAC,OAAO,EAAC,UAAU,EAAC,QAAQ,EAAC,OAAO,EAAC,SAAS,EAAC,QAAQ,EAAC,QAAQ,EAAC,MAAM,EAAC,UAAU,EAAC,OAAO,EAAC,QAAQ,EAAC,OAAO,EAAC,OAAO,EAAC,QAAQ,EAAC,SAAS,EAAC,OAAO,EAAC,OAAO,EAAC,SAAS,EAAC,MAAM,EAAC,YAAY,EAAC,OAAO,EAAC,YAAY,EAAC,OAAO,EAAC,SAAS,EAAC,WAAW,EAAC,OAAO,EAAC,MAAM,EAAC,UAAU,EAAC,QAAQ,EAAC,QAAQ,EAAC,MAAM,EAAC,SAAS,EAAC,QAAQ,EAAC,OAAO,EAAC,OAAO,EAAC,SAAS,EAAC,SAAS,EAAC,QAAQ,EAAC,SAAS,EAAC,OAAO,EAAC,OAAO,EAAC,aAAa,EAAC,QAAQ,EAAC,QAAQ,EAAC,SAAS,EAAC,SAAS,EAAC,QAAQ,EAAC,SAAS,EAAC,SAAS,EAAC,QAAQ,EAAC,OAAO,EAAC,SAAS,EAAC,MAAM,EAAC,OAAO,EAAC,OAAO,EAAC,QAAQ,EAAC,MAAM,EAAC,QAAQ,EAAC,QAAQ,EAAC,MAAM,EAAC,QAAQ,EAAC,OAAO,EAAC,WAAW,EAAC,OAAO,EAAC,SAAS,EAAC,QAAQ,EAAC,SAAS,EAAC,MAAM,EAAC,UAAU,EAAC,MAAM,EAAC,MAAM,EAAC,SAAS,EAAC,UAAU,EAAC,UAAU,EAAC,MAAM,EAAC,QAAQ,EAAC,QAAQ,EAAC,OAAO,EAAC,OAAO,EAAC,WAAW,EAAC,SAAS,EAAC,MAAM,EAAC,SAAS,EAAC,OAAO,EAAC,QAAQ,EAAC,YAAY,EAAC,SAAS,EAAC,SAAS,EAAC,MAAM,EAAC,QAAQ,EAAC,QAAQ,EAAC,YAAY,EAAC,OAAO,EAAC,QAAQ,EAAC,OAAO,EAAC,QAAQ,EAAC,SAAS,EAAC,QAAQ,EAAC,OAAO,EAAC,SAAS,EAAC,UAAU,EAAC,MAAM,EAAC,QAAQ,EAAC,QAAQ,EAAC,WAAW,EAAC,QAAQ,EAAC,OAAO,EAAC,OAAO,EAAC,OAAO,EAAC,QAAQ,EAAC,QAAQ,EAAC,SAAS,EAAC,MAAM,EAAC,OAAO,EAAC,QAAQ,EAAC,MAAM,EAAC,OAAO,EAAC,OAAO,EAAC,QAAQ,EAAC,SAAS,EAAC,OAAO,EAAC,SAAS,EAAC,OAAO,EAAC,OAAO,EAAC,SAAS,EAAC,MAAM,EAAC,OAAO,EAAC,MAAM,EAAC,MAAM,EAAC,OAAO,EAAC,MAAM,EAAC,OAAO,EAAC,SAAS,EAAC,UAAU,EAAC,SAAS,EAAC,OAAO,EAAC,OAAO,EAAC,SAAS,EAAC,QAAQ,EAAC,QAAQ,EAAC,MAAM,EAAC,SAAS,EAAC,SAAS,EAAC,SAAS,EAAC,UAAU,EAAC,MAAM,EAAC,SAAS,EAAC,MAAM,EAAC,IAAI,EAAC,WAAW,EAAC,OAAO,EAAC,QAAQ,EAAC,OAAO,EAAC,SAAS,EAAC,WAAW,EAAC,SAAS,EAAC,MAAM,EAAC,QAAQ,EAAC,UAAU,EAAC,SAAS,EAAC,OAAO,EAAC,QAAQ,EAAC,SAAS,EAAC,WAAW,EAAC,WAAW,EAAC,OAAO,EAAC,QAAQ,EAAC,QAAQ,EAAC,OAAO,EAAC,UAAU,EAAC,SAAS,EAAC,OAAO,EAAC,UAAU,EAAC,UAAU,EAAC,SAAS,EAAC,QAAQ,EAAC,OAAO,EAAC,SAAS,EAAC,OAAO,EAAC,UAAU,EAAC,UAAU,EAAC,OAAO,EAAC,OAAO,EAAC,QAAQ,EAAC,QAAQ,EAAC,SAAS,EAAC,MAAM,EAAC,UAAU,EAAC,MAAM,EAAC,SAAS,EAAC,WAAW,EAAC,QAAQ,EAAC,SAAS,EAAC,MAAM,EAAC,UAAU,EAAC,MAAM,EAAC,QAAQ,EAAC,QAAQ,EAAC,UAAU,EAAC,OAAO,EAAC,QAAQ,EAAC,QAAQ,EAAC,SAAS,EAAC,SAAS,EAAC,SAAS,EAAC,WAAW,EAAC,OAAO,EAAC,SAAS,EAAC,SAAS,EAAC,SAAS,EAAC,SAAS,EAAC,MAAM,EAAC,OAAO,EAAC,WAAW,EAAC,QAAQ,EAAC,UAAU,EAAC,OAAO,EAAC,QAAQ,EAAC,SAAS,EAAC,SAAS,EAAC,SAAS,EAAC,UAAU,EAAC,MAAM,EAAC,WAAW,EAAC,SAAS,EAAC,MAAM,EAAC,WAAW,EAAC,QAAQ,EAAC,SAAS,EAAC,WAAW,EAAC,MAAM,EAAC,WAAW,EAAC,MAAM,EAAC,OAAO,EAAC,OAAO,EAAC,OAAO,EAAC,OAAO,EAAC,SAAS,EAAC,SAAS,EAAC,OAAO,EAAC,UAAU,EAAC,SAAS,EAAC,YAAY,EAAC,OAAO,EAAC,QAAQ,EAAC,UAAU,EAAC,UAAU,EAAC,SAAS,EAAC,QAAQ,EAAC,SAAS,EAAC,KAAK,EAAC,OAAO,EAAC,SAAS,EAAC,KAAK,EAAC,SAAS,EAAC,QAAQ,EAAC,OAAO,EAAC,OAAO,EAAC,UAAU,EAAC,SAAS,EAAC,QAAQ,EAAC,SAAS,EAAC,QAAQ,EAAC,QAAQ,EAAC,OAAO,EAAC,MAAM,EAAC,MAAM,EAAC,SAAS,EAAC,OAAO,EAAC,QAAQ,EAAC,SAAS,EAAC,SAAS,EAAC,OAAO,EAAC,OAAO,EAAC,OAAO,EAAC,QAAQ,EAAC,QAAQ,EAAC,QAAQ,EAAC,YAAY,EAAC,KAAK,EAAC,QAAQ,EAAC,UAAU,EAAC,OAAO,EAAC,MAAM,EAAC,UAAU,EAAC,OAAO,EAAC,MAAM,EAAC,QAAQ,EAAC,OAAO,EAAC,OAAO,EAAC,SAAS,EAAC,QAAQ,EAAC,OAAO,EAAC,QAAQ,EAAC,MAAM,EAAC,SAAS,EAAC,MAAM,EAAC,YAAY,EAAC,QAA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","file":"main-es2015.js","sourcesContent":["import { Directive, ElementRef, Output, EventEmitter, HostListener, Input, OnInit, OnChanges } from '@angular/core';\n\n@Directive({\n selector: '[clickOutside]'\n})\nexport class ClickOutsideDirective {\n constructor(private _elementRef: ElementRef) {\n }\n\n @Output()\n public clickOutside = new EventEmitter();\n\n @HostListener('document:click', ['$event', '$event.target'])\n @HostListener('document:touchstart', ['$event', '$event.target'])\n public onClick(event: MouseEvent, targetElement: HTMLElement): void {\n if (!targetElement) {\n return;\n }\n\n const clickedInside = this._elementRef.nativeElement.contains(targetElement);\n if (!clickedInside) {\n this.clickOutside.emit(event);\n }\n }\n}\n\n@Directive({\n selector: '[scroll]'\n})\nexport class ScrollDirective {\n constructor(private _elementRef: ElementRef) {\n }\n\n @Output()\n public scroll = new EventEmitter();\n\n @HostListener('scroll', ['$event'])\n public onClick(event: MouseEvent, targetElement: HTMLElement): void {\n this.scroll.emit(event);\n }\n}\n@Directive({\n selector: '[styleProp]'\n})\nexport class styleDirective {\n\n constructor(private el: ElementRef) {\n\n }\n\n @Input('styleProp') styleVal: number;\n\n ngOnInit() {\n\n this.el.nativeElement.style.top = this.styleVal;\n }\n ngOnChanges(): void {\n this.el.nativeElement.style.top = this.styleVal;\n }\n}\n\n\n@Directive({\n selector: '[setPosition]'\n})\nexport class setPosition implements OnInit, OnChanges {\n\n @Input('setPosition') height: number;\n\n constructor(public el: ElementRef) {\n\n }\n ngOnInit() {\n if (this.height) {\n this.el.nativeElement.style.bottom = parseInt(this.height + 15 + \"\") + 'px';\n }\n }\n ngOnChanges(): void {\n if (this.height) {\n this.el.nativeElement.style.bottom = parseInt(this.height + 15 + \"\") + 'px';\n }\n }\n}","import { Pipe, PipeTransform } from '@angular/core';\nimport { DataService } from './multiselect.service';\n\n\n@Pipe({\n name: 'listFilter',\n pure: true\n})\nexport class ListFilterPipe implements PipeTransform {\n\n public filteredList: any = [];\n constructor(private ds: DataService) {\n\n }\n\n transform(items: any[], filter: any, searchBy: any): any[] {\n if (!items || !filter) {\n this.ds.setData(items);\n return items;\n }\n this.filteredList = items.filter((item: any) => this.applyFilter(item, filter, searchBy));\n this.ds.setData(this.filteredList);\n return this.filteredList;\n }\n applyFilter(item: any, filter: any, searchBy: any): boolean {\n let found = false;\n if (searchBy.length > 0) {\n if (item.grpTitle) {\n found = true;\n }\n else {\n for (var t = 0; t < searchBy.length; t++) {\n if (filter && item[searchBy[t]] && item[searchBy[t]] != \"\") {\n if (item[searchBy[t]].toString().toLowerCase().indexOf(filter.toLowerCase()) >= 0) {\n found = true;\n }\n }\n }\n }\n\n } else {\n if (item.grpTitle) {\n found = true;\n }\n else {\n for (var prop in item) {\n if (filter && item[prop]) {\n if (item[prop].toString().toLowerCase().indexOf(filter.toLowerCase()) >= 0) {\n found = true;\n }\n }\n }\n }\n }\n\n return found;\n }\n}","\n \n \n \n \n \n\n\t\n\t\t\n\t\t\t\n\t\t\n\t\n\n\n\n\n\t\n\t\t\n\t\t\t\n\t\t\n\t\n\n\n\n\n\n\t\n\t\t\n\t\t\t\n\t\t\t\t\n\t\t\t\n\t\t\n\t\n\n\n\n\n\n\t\n\n","import { Component, OnInit, OnDestroy, NgModule, TemplateRef, AfterContentInit, ContentChild, EmbeddedViewRef, OnChanges, ViewContainerRef, ViewEncapsulation, Input, Output, EventEmitter, ElementRef, AfterViewInit, Pipe, PipeTransform, Directive } from '@angular/core';\nimport { SafeResourceUrl, DomSanitizer } from '@angular/platform-browser';\nimport { CommonModule } from '@angular/common';\n\n@Component({\n selector: 'c-item',\n template: ``\n})\n\nexport class Item { \n\n @ContentChild(TemplateRef, {static: true}) template: TemplateRef\n constructor() { \n }\n\n}\n\n@Component({\n selector: 'c-badge',\n template: ``\n})\n\nexport class Badge { \n\n @ContentChild(TemplateRef, {static: true}) template: TemplateRef\n constructor() { \n }\n\n}\n\n@Component({\n selector: 'c-search',\n template: ``\n})\n\nexport class Search { \n\n @ContentChild(TemplateRef, {static: true}) template: TemplateRef\n constructor() { \n }\n\n}\n@Component({\n selector: 'c-templateRenderer',\n template: ``\n})\n\nexport class TemplateRenderer implements OnInit, OnDestroy { \n\n @Input() data: any\n @Input() item: any\n view: EmbeddedViewRef;\n\n constructor(public viewContainer: ViewContainerRef) { \n }\n ngOnInit() {\n this.view = this.viewContainer.createEmbeddedView(this.data.template, {\n '\\$implicit': this.data,\n 'item':this.item\n });\n }\n\t\n ngOnDestroy() {\n\t\tthis.view.destroy();\n\t}\n\n}\n\n@Component({\n selector: 'c-icon',\n template: `\n \n \n \n \n \n\n\t\n\t\t\n\t\t\t\n\t\t\n\t\n\n\n\n\n\t\n\t\t\n\t\t\t\n\t\t\n\t\n\n\n\n\n\n\t\n\t\t\n\t\t\t\n\t\t\t\t\n\t\t\t\n\t\t\n\t\n\n\n\n\n\n\t\n\n`,\n encapsulation: ViewEncapsulation.None,\n\n})\n\nexport class CIcon { \n\n @Input() name:any;\n\n}","
\n
\n
\n\n {{settings.text}}\n \n \n {{item[settings.labelKey]}}\n \n \n 0 && settings.singleSelection && badgeTempl \">\n
\n {{item[settings.labelKey]}}\n\n \n \n \n \n \n \n
\n
\n
0 && !settings.singleSelection\">\n
settings.badgeShowLimit-1\">\n {{item[settings.labelKey]}}\n \n \n \n \n \n \n
\n
\n settings.badgeShowLimit\">+{{selectedItems?.length - settings.badgeShowLimit }}\n 0\" (click)=\"clearSelection($event);$event.stopPropagation()\">\n \n \n \n \n \n \n \n\n \n
\n
\n
\n
\n
\n
\n
0\"\n (click)=\"toggleSelectAll()\">\n \n \n
\n \n
\n \n \n \n \n \n \n \n \n \n\n \n \n \n \n \n
\n
\n
0 && filterLength > 0\" (click)=\"toggleFilterSelectAll()\">\n \n \n
\n
0 && groupedData?.length > 0\" (click)=\"toggleFilterSelectAll()\">\n 0\" [disabled]=\"settings.limitSelection == selectedItems?.length\" />\n \n
\n \n \n\n
\n \n
\n
\n
\n
0 && infiniteFilterLength > 0\" (click)=\"toggleInfiniteFilterSelectAll()\">\n \n \n
\n
\n\n
\n
    \n
  • \n \n \n
  • \n
\n
\n
\n
    \n
  • \n \n \n
  • \n
\n
\n
\n
    \n
  • \n \n \n \n
  • \n
\n
\n
\n
    \n
  • \n \n \n \n
  • \n
\n
\n
\n
    \n \n
  • \n \n \n \n
  • \n
  • \n \n \n \n
  • \n
    \n
\n
\n
\n
    \n \n
  • \n \n \n
      \n \n
    • \n \n \n \n
    • \n
      \n
    \n \n
  • \n
    \n
\n
\n
\n \n
    \n \n
  • \n \n \n
  • \n
  • \n \n \n
  • \n
    \n
\n
\n
\n
\n
    \n \n
  • \n \n \n
      \n \n
    • \n \n \n
    • \n
      \n
    \n
  • \n
    \n \n
\n
\n
{{settings.noDataLabel}}
\n
\n
\n
","import { Component, OnInit, HostListener, ChangeDetectionStrategy,OnDestroy, NgModule, SimpleChanges, OnChanges, ChangeDetectorRef, AfterViewChecked, ViewEncapsulation, ContentChild, ViewChild, forwardRef, Input, Output, EventEmitter, ElementRef, AfterViewInit, Pipe, PipeTransform } from '@angular/core';\nimport { FormsModule, NG_VALUE_ACCESSOR, ControlValueAccessor, NG_VALIDATORS, Validator, FormControl } from '@angular/forms';\nimport { CommonModule } from '@angular/common';\nimport { MyException } from './multiselect.model';\nimport { DropdownSettings } from './multiselect.interface';\nimport { ClickOutsideDirective, ScrollDirective, styleDirective, setPosition } from './clickOutside';\nimport { ListFilterPipe } from './list-filter';\nimport { Item, Badge, Search, TemplateRenderer, CIcon } from './menu-item';\nimport { DataService } from './multiselect.service';\nimport { Subscription, Subject } from 'rxjs';\nimport { VirtualScrollerModule, VirtualScrollerComponent } from './virtual-scroll/virtual-scroll';\nimport { map, debounceTime, distinctUntilChanged, switchMap, tap } from 'rxjs/operators'; \n\nexport const DROPDOWN_CONTROL_VALUE_ACCESSOR: any = {\n provide: NG_VALUE_ACCESSOR,\n useExisting: forwardRef(() => AngularMultiSelect),\n multi: true\n};\nexport const DROPDOWN_CONTROL_VALIDATION: any = {\n provide: NG_VALIDATORS,\n useExisting: forwardRef(() => AngularMultiSelect),\n multi: true,\n}\nconst noop = () => {\n};\n\n@Component({\n selector: 'angular2-multiselect',\n templateUrl: './multiselect.component.html',\n host: { '[class]': 'defaultSettings.classes' },\n styleUrls: ['./multiselect.component.scss'],\n providers: [DROPDOWN_CONTROL_VALUE_ACCESSOR, DROPDOWN_CONTROL_VALIDATION],\n encapsulation: ViewEncapsulation.None,\n})\n\nexport class AngularMultiSelect implements OnInit, ControlValueAccessor, OnChanges, Validator, AfterViewChecked, OnDestroy {\n\n @Input()\n data: Array;\n\n @Input()\n settings: DropdownSettings;\n\n @Input()\n loading: boolean;\n\n @Output('onSelect')\n onSelect: EventEmitter = new EventEmitter();\n\n @Output('onDeSelect')\n onDeSelect: EventEmitter = new EventEmitter();\n\n @Output('onSelectAll')\n onSelectAll: EventEmitter> = new EventEmitter>();\n\n @Output('onDeSelectAll')\n onDeSelectAll: EventEmitter> = new EventEmitter>();\n\n @Output('onOpen')\n onOpen: EventEmitter = new EventEmitter();\n\n @Output('onClose')\n onClose: EventEmitter = new EventEmitter();\n\n @Output('onScrollToEnd')\n onScrollToEnd: EventEmitter = new EventEmitter();\n\n @Output('onFilterSelectAll')\n onFilterSelectAll: EventEmitter> = new EventEmitter>();\n\n @Output('onFilterDeSelectAll')\n onFilterDeSelectAll: EventEmitter> = new EventEmitter>();\n\n @Output('onAddFilterNewItem')\n onAddFilterNewItem: EventEmitter = new EventEmitter();\n\n @Output('onGroupSelect')\n onGroupSelect: EventEmitter = new EventEmitter();\n\n @Output('onGroupDeSelect')\n onGroupDeSelect: EventEmitter = new EventEmitter();\n\n @ContentChild(Item, { static: true }) itemTempl: Item;\n @ContentChild(Badge, { static: true }) badgeTempl: Badge;\n @ContentChild(Search, { static: true }) searchTempl: Search;\n\n\n @ViewChild('searchInput', { static: true }) searchInput: ElementRef;\n @ViewChild('selectedList', { static: true }) selectedListElem: ElementRef;\n @ViewChild('dropdownList', { static: true }) dropdownListElem: ElementRef;\n\n @HostListener('document:keyup.escape', ['$event'])\n onEscapeDown(event: KeyboardEvent) {\n if (this.settings.escapeToClose) {\n this.closeDropdown();\n }\n }\n virtualdata: any = [];\n searchTerm$ = new Subject();\n\n filterPipe: ListFilterPipe;\n public selectedItems: Array;\n public isActive: boolean = false;\n public isSelectAll: boolean = false;\n public isFilterSelectAll: boolean = false;\n public isInfiniteFilterSelectAll: boolean = false;\n public groupedData: Array;\n filter: any;\n public chunkArray: any[];\n public scrollTop: any;\n public chunkIndex: any[] = [];\n public cachedItems: any[] = [];\n public groupCachedItems: any[] = [];\n public totalRows: any;\n public itemHeight: any = 41.6;\n public screenItemsLen: any;\n public cachedItemsLen: any;\n public totalHeight: any;\n public scroller: any;\n public maxBuffer: any;\n public lastScrolled: any;\n public lastRepaintY: any;\n public selectedListHeight: any;\n public filterLength: any = 0;\n public infiniteFilterLength: any = 0;\n public viewPortItems: any;\n public item: any;\n public dropdownListYOffset: number = 0;\n subscription: Subscription;\n defaultSettings: DropdownSettings = {\n singleSelection: false,\n text: 'Select',\n enableCheckAll: true,\n selectAllText: 'Select All',\n unSelectAllText: 'UnSelect All',\n filterSelectAllText: 'Select all filtered results',\n filterUnSelectAllText: 'UnSelect all filtered results',\n enableSearchFilter: false,\n searchBy: [],\n maxHeight: 300,\n badgeShowLimit: 999999999999,\n classes: '',\n disabled: false,\n searchPlaceholderText: 'Search',\n showCheckbox: true,\n noDataLabel: 'No Data Available',\n searchAutofocus: true,\n lazyLoading: false,\n labelKey: 'itemName',\n primaryKey: 'id',\n position: 'bottom',\n autoPosition: true,\n enableFilterSelectAll: true,\n selectGroup: false,\n addNewItemOnFilter: false,\n addNewButtonText: \"Add\",\n escapeToClose: true,\n clearAll: true\n }\n randomSize:boolean = true;\n public parseError: boolean;\n public filteredList: any = [];\n virtualScroollInit: boolean = false;\n @ViewChild(VirtualScrollerComponent, {static: false})\n private virtualScroller: VirtualScrollerComponent;\n constructor(public _elementRef: ElementRef, private cdr: ChangeDetectorRef, private ds: DataService) {\n this.searchTerm$.asObservable().pipe(\n debounceTime(1000),\n distinctUntilChanged(),\n tap(term => term)\n ).subscribe(val => {\n this.filterInfiniteList(val);\n });\n }\n ngOnInit() {\n this.settings = Object.assign(this.defaultSettings, this.settings);\n\n this.cachedItems = this.cloneArray(this.data);\n if (this.settings.position == 'top') {\n setTimeout(() => {\n this.selectedListHeight = { val: 0 };\n this.selectedListHeight.val = this.selectedListElem.nativeElement.clientHeight;\n });\n }\n this.subscription = this.ds.getData().subscribe(data => {\n if (data) {\n let len = 0;\n data.forEach((obj: any, i: any) => {\n if (!obj.hasOwnProperty('grpTitle')) {\n len++;\n }\n });\n this.filterLength = len;\n this.onFilterChange(data);\n }\n\n });\n setTimeout(() => {\n this.calculateDropdownDirection();\n });\n this.virtualScroollInit = false;\n }\n ngOnChanges(changes: SimpleChanges) {\n if (changes.data && !changes.data.firstChange) {\n if (this.settings.groupBy) {\n this.groupedData = this.transformData(this.data, this.settings.groupBy);\n if (this.data.length == 0) {\n this.selectedItems = [];\n }\n }\n this.cachedItems = this.cloneArray(this.data);\n }\n if (changes.settings && !changes.settings.firstChange) {\n this.settings = Object.assign(this.defaultSettings, this.settings);\n }\n if (changes.loading) {\n console.log(this.loading);\n }\n if(this.settings.lazyLoading && this.virtualScroollInit && changes.data){\n this.virtualdata = changes.data.currentValue;\n }\n }\n ngDoCheck() {\n if (this.selectedItems) {\n if (this.selectedItems.length == 0 || this.data.length == 0 || this.selectedItems.length < this.data.length) {\n this.isSelectAll = false;\n }\n }\n }\n ngAfterViewInit() {\n if (this.settings.lazyLoading) {\n // this._elementRef.nativeElement.getElementsByClassName(\"lazyContainer\")[0].addEventListener('scroll', this.onScroll.bind(this));\n }\n }\n ngAfterViewChecked() {\n if (this.selectedListElem.nativeElement.clientHeight && this.settings.position == 'top' && this.selectedListHeight) {\n this.selectedListHeight.val = this.selectedListElem.nativeElement.clientHeight;\n this.cdr.detectChanges();\n }\n }\n onItemClick(item: any, index: number, evt: Event) {\n if (this.settings.disabled) {\n return false;\n }\n\n let found = this.isSelected(item);\n let limit = this.selectedItems.length < this.settings.limitSelection ? true : false;\n\n if (!found) {\n if (this.settings.limitSelection) {\n if (limit) {\n this.addSelected(item);\n this.onSelect.emit(item);\n }\n }\n else {\n this.addSelected(item);\n this.onSelect.emit(item);\n }\n\n }\n else {\n this.removeSelected(item);\n this.onDeSelect.emit(item);\n }\n if (this.isSelectAll || this.data.length > this.selectedItems.length) {\n this.isSelectAll = false;\n }\n if (this.data.length == this.selectedItems.length) {\n this.isSelectAll = true;\n }\n if (this.settings.groupBy) {\n this.updateGroupInfo(item);\n }\n }\n public validate(c: FormControl): any {\n return null;\n }\n private onTouchedCallback: (_: any) => void = noop;\n private onChangeCallback: (_: any) => void = noop;\n\n writeValue(value: any) {\n if (value !== undefined && value !== null && value !== '') {\n if (this.settings.singleSelection) {\n if (this.settings.groupBy) {\n this.groupedData = this.transformData(this.data, this.settings.groupBy);\n this.groupCachedItems = this.cloneArray(this.groupedData);\n this.selectedItems = [value[0]];\n } else {\n try {\n\n if (value.length > 1) {\n this.selectedItems = [value[0]];\n throw new MyException(404, { \"msg\": \"Single Selection Mode, Selected Items cannot have more than one item.\" });\n }\n else {\n this.selectedItems = value;\n }\n }\n catch (e) {\n console.error(e.body.msg);\n }\n }\n\n }\n else {\n if (this.settings.limitSelection) {\n this.selectedItems = value.slice(0, this.settings.limitSelection);\n }\n else {\n this.selectedItems = value;\n }\n if (this.selectedItems.length === this.data.length && this.data.length > 0) {\n this.isSelectAll = true;\n }\n if (this.settings.groupBy) {\n this.groupedData = this.transformData(this.data, this.settings.groupBy);\n this.groupCachedItems = this.cloneArray(this.groupedData);\n }\n }\n } else {\n this.selectedItems = [];\n }\n }\n\n //From ControlValueAccessor interface\n registerOnChange(fn: any) {\n this.onChangeCallback = fn;\n }\n\n //From ControlValueAccessor interface\n registerOnTouched(fn: any) {\n this.onTouchedCallback = fn;\n }\n trackByFn(index: number, item: any) {\n return item[this.settings.primaryKey];\n }\n isSelected(clickedItem: any) {\n let found = false;\n this.selectedItems && this.selectedItems.forEach(item => {\n if (clickedItem[this.settings.primaryKey] === item[this.settings.primaryKey]) {\n found = true;\n }\n });\n return found;\n }\n addSelected(item: any) {\n if (this.settings.singleSelection) {\n this.selectedItems = [];\n this.selectedItems.push(item);\n this.closeDropdown();\n }\n else\n this.selectedItems.push(item);\n this.onChangeCallback(this.selectedItems);\n this.onTouchedCallback(this.selectedItems);\n }\n removeSelected(clickedItem: any) {\n this.selectedItems && this.selectedItems.forEach(item => {\n if (clickedItem[this.settings.primaryKey] === item[this.settings.primaryKey]) {\n this.selectedItems.splice(this.selectedItems.indexOf(item), 1);\n }\n });\n this.onChangeCallback(this.selectedItems);\n this.onTouchedCallback(this.selectedItems);\n }\n toggleDropdown(evt: any) {\n if (this.settings.disabled) {\n return false;\n }\n this.isActive = !this.isActive;\n if (this.isActive) {\n if (this.settings.searchAutofocus && this.searchInput && this.settings.enableSearchFilter && !this.searchTempl) {\n setTimeout(() => {\n this.searchInput.nativeElement.focus();\n }, 0);\n }\n this.onOpen.emit(true);\n }\n else {\n this.onClose.emit(false);\n }\n setTimeout(() => {\n this.calculateDropdownDirection();\n }, 0);\n if(this.settings.lazyLoading){\n this.virtualdata = this.data;\n this.virtualScroollInit = true;\n }\n evt.preventDefault();\n }\n public openDropdown() {\n if (this.settings.disabled) {\n return false;\n }\n this.isActive = true;\n if (this.settings.searchAutofocus && this.searchInput && this.settings.enableSearchFilter && !this.searchTempl) {\n setTimeout(() => {\n this.searchInput.nativeElement.focus();\n }, 0);\n }\n this.onOpen.emit(true);\n }\n public closeDropdown() {\n if (this.searchInput && this.settings.lazyLoading) {\n this.searchInput.nativeElement.value = \"\";\n }\n if (this.searchInput) {\n this.searchInput.nativeElement.value = \"\";\n }\n this.filter = \"\";\n this.isActive = false;\n this.onClose.emit(false);\n }\n public closeDropdownOnClickOut() {\n if (this.isActive) {\n if (this.searchInput && this.settings.lazyLoading) {\n this.searchInput.nativeElement.value = \"\";\n }\n if (this.searchInput) {\n this.searchInput.nativeElement.value = \"\";\n }\n this.filter = \"\";\n this.isActive = false;\n this.clearSearch();\n this.onClose.emit(false);\n }\n }\n toggleSelectAll() {\n if (!this.isSelectAll) {\n this.selectedItems = [];\n if (this.settings.groupBy) {\n this.groupedData.forEach((obj) => {\n obj.selected = true;\n })\n this.groupCachedItems.forEach((obj) => {\n obj.selected = true;\n })\n }\n this.selectedItems = this.data.slice();\n this.isSelectAll = true;\n this.onChangeCallback(this.selectedItems);\n this.onTouchedCallback(this.selectedItems);\n\n this.onSelectAll.emit(this.selectedItems);\n }\n else {\n if (this.settings.groupBy) {\n this.groupedData.forEach((obj) => {\n obj.selected = false;\n });\n this.groupCachedItems.forEach((obj) => {\n obj.selected = false;\n })\n }\n this.selectedItems = [];\n this.isSelectAll = false;\n this.onChangeCallback(this.selectedItems);\n this.onTouchedCallback(this.selectedItems);\n\n this.onDeSelectAll.emit(this.selectedItems);\n }\n }\n filterGroupedList() {\n if (this.filter == \"\" || this.filter == null) {\n this.clearSearch();\n return;\n }\n this.groupedData = this.cloneArray(this.groupCachedItems);\n this.groupedData = this.groupedData.filter(obj => {\n let arr = obj.list.filter(t => {\n return t.itemName.toLowerCase().indexOf(this.filter.toLowerCase()) > -1;\n });\n obj.list = arr;\n return arr.some(cat => {\n return cat.itemName.toLowerCase().indexOf(this.filter.toLowerCase()) > -1;\n }\n )\n });\n console.log(this.groupedData);\n }\n toggleFilterSelectAll() {\n if (!this.isFilterSelectAll) {\n let added = [];\n if (this.settings.groupBy) {\n this.groupedData.forEach((item: any) => {\n if (item.list) {\n item.list.forEach((el: any) => {\n if (!this.isSelected(el)) {\n this.addSelected(el);\n added.push(el);\n }\n });\n }\n this.updateGroupInfo(item);\n\n });\n\n }\n else {\n this.ds.getFilteredData().forEach((item: any) => {\n if (!this.isSelected(item)) {\n this.addSelected(item);\n added.push(item);\n }\n\n });\n }\n\n this.isFilterSelectAll = true;\n this.onFilterSelectAll.emit(added);\n }\n else {\n let removed = [];\n if (this.settings.groupBy) {\n this.groupedData.forEach((item: any) => {\n if (item.list) {\n item.list.forEach((el: any) => {\n if (this.isSelected(el)) {\n this.removeSelected(el);\n removed.push(el);\n }\n });\n }\n });\n }\n else {\n this.ds.getFilteredData().forEach((item: any) => {\n if (this.isSelected(item)) {\n this.removeSelected(item);\n removed.push(item);\n }\n\n });\n }\n this.isFilterSelectAll = false;\n this.onFilterDeSelectAll.emit(removed);\n }\n }\n toggleInfiniteFilterSelectAll() {\n if (!this.isInfiniteFilterSelectAll) {\n this.data.forEach((item: any) => {\n if (!this.isSelected(item)) {\n this.addSelected(item);\n }\n\n });\n this.isInfiniteFilterSelectAll = true;\n }\n else {\n this.data.forEach((item: any) => {\n if (this.isSelected(item)) {\n this.removeSelected(item);\n }\n\n });\n this.isInfiniteFilterSelectAll = false;\n }\n }\n clearSearch() {\n if (this.settings.groupBy) {\n this.groupedData = [];\n this.groupCachedItems.forEach((obj) => {\n obj.selected = false;\n })\n this.groupedData = this.cloneArray(this.groupCachedItems);\n }\n this.filter = \"\";\n this.isFilterSelectAll = false;\n\n }\n onFilterChange(data: any) {\n if (this.filter && this.filter == \"\" || data.length == 0) {\n this.isFilterSelectAll = false;\n }\n let cnt = 0;\n data.forEach((item: any) => {\n\n if (!item.hasOwnProperty('grpTitle') && this.isSelected(item)) {\n cnt++;\n }\n });\n\n if (cnt > 0 && this.filterLength == cnt) {\n this.isFilterSelectAll = true;\n }\n else if (cnt > 0 && this.filterLength != cnt) {\n this.isFilterSelectAll = false;\n }\n this.cdr.detectChanges();\n }\n cloneArray(arr: any) {\n let i, copy;\n\n if (Array.isArray(arr)) {\n return JSON.parse(JSON.stringify(arr));\n } else if (typeof arr === 'object') {\n throw 'Cannot clone array containing an object!';\n } else {\n return arr;\n }\n }\n updateGroupInfo(item: any) {\n let key = this.settings.groupBy;\n this.groupedData.forEach((obj: any) => {\n let cnt = 0;\n if (obj.grpTitle && (item[key] == obj[key])) {\n if (obj.list) {\n obj.list.forEach((el: any) => {\n if (this.isSelected(el)) {\n cnt++;\n }\n });\n }\n }\n if (obj.list && (cnt === obj.list.length) && (item[key] == obj[key])) {\n obj.selected = true;\n }\n else if (obj.list && (cnt != obj.list.length) && (item[key] == obj[key])) {\n obj.selected = false;\n }\n });\n this.groupCachedItems.forEach((obj: any) => {\n let cnt = 0;\n if (obj.grpTitle && (item[key] == obj[key])) {\n if (obj.list) {\n obj.list.forEach((el: any) => {\n if (this.isSelected(el)) {\n cnt++;\n }\n });\n }\n }\n if (obj.list && (cnt === obj.list.length) && (item[key] == obj[key])) {\n obj.selected = true;\n }\n else if (obj.list && (cnt != obj.list.length) && (item[key] == obj[key])) {\n obj.selected = false;\n }\n });\n }\n transformData(arr: Array, field: any): Array {\n const groupedObj: any = arr.reduce((prev: any, cur: any) => {\n if (!prev[cur[field]]) {\n prev[cur[field]] = [cur];\n } else {\n prev[cur[field]].push(cur);\n }\n return prev;\n }, {});\n const tempArr: any = [];\n Object.keys(groupedObj).map((x: any) => {\n let obj: any = {};\n obj[\"grpTitle\"] = true;\n obj[this.settings.labelKey] = x;\n obj[this.settings.groupBy] = x;\n obj['selected'] = false;\n obj['list'] = [];\n let cnt = 0;\n groupedObj[x].forEach((item: any) => {\n item['list'] = [];\n obj.list.push(item);\n if (this.isSelected(item)) {\n cnt++;\n }\n });\n if (cnt == obj.list.length) {\n obj.selected = true;\n }\n else {\n obj.selected = false;\n }\n tempArr.push(obj);\n // obj.list.forEach((item: any) => {\n // tempArr.push(item);\n // });\n });\n return tempArr;\n }\n public filterInfiniteList(evt: any) {\n let filteredElems: Array = [];\n if (this.settings.groupBy) {\n this.groupedData = this.groupCachedItems.slice();\n }\n else {\n this.data = this.cachedItems.slice();\n this.virtualdata = this.cachedItems.slice();\n }\n\n if ((evt != null || evt != '') && !this.settings.groupBy) {\n if (this.settings.searchBy.length > 0) {\n for (let t = 0; t < this.settings.searchBy.length; t++) {\n\n this.virtualdata.filter((el: any) => {\n if (el[this.settings.searchBy[t].toString()].toString().toLowerCase().indexOf(evt.toString().toLowerCase()) >= 0) {\n filteredElems.push(el);\n }\n });\n }\n\n }\n else {\n this.virtualdata.filter(function (el: any) {\n for (let prop in el) {\n if (el[prop].toString().toLowerCase().indexOf(evt.toString().toLowerCase()) >= 0) {\n filteredElems.push(el);\n break;\n }\n }\n });\n }\n this.virtualdata = [];\n this.virtualdata = filteredElems;\n this.infiniteFilterLength = this.virtualdata.length;\n }\n if (evt.toString() != '' && this.settings.groupBy) {\n this.groupedData.filter(function (el: any) {\n if (el.hasOwnProperty('grpTitle')) {\n filteredElems.push(el);\n }\n else {\n for (let prop in el) {\n if (el[prop].toString().toLowerCase().indexOf(evt.toString().toLowerCase()) >= 0) {\n filteredElems.push(el);\n break;\n }\n }\n }\n });\n this.groupedData = [];\n this.groupedData = filteredElems;\n this.infiniteFilterLength = this.groupedData.length;\n }\n else if (evt.toString() == '' && this.cachedItems.length > 0) {\n this.virtualdata = [];\n this.virtualdata = this.cachedItems;\n this.infiniteFilterLength = 0;\n }\n this.virtualScroller.refresh();\n }\n resetInfiniteSearch() {\n this.filter = \"\";\n this.isInfiniteFilterSelectAll = false;\n this.virtualdata = [];\n this.virtualdata = this.cachedItems;\n this.groupedData = this.groupCachedItems;\n this.infiniteFilterLength = 0;\n }\n onScrollEnd(e: any) {\n if(e.endIndex === this.data.length - 1 || e.startIndex === 0){\n \n }\n this.onScrollToEnd.emit(e);\n \n }\n ngOnDestroy() {\n if (this.subscription) {\n this.subscription.unsubscribe();\n }\n\n }\n selectGroup(item: any) {\n if (item.selected) {\n item.selected = false;\n item.list.forEach((obj: any) => {\n this.removeSelected(obj);\n });\n this.updateGroupInfo(item);\n this.onGroupSelect.emit(item);\n }\n else {\n item.selected = true;\n item.list.forEach((obj: any) => {\n if (!this.isSelected(obj)) {\n this.addSelected(obj);\n }\n\n });\n this.updateGroupInfo(item);\n this.onGroupDeSelect.emit(item);\n }\n\n\n }\n addFilterNewItem() {\n this.onAddFilterNewItem.emit(this.filter);\n this.filterPipe = new ListFilterPipe(this.ds);\n this.filterPipe.transform(this.data, this.filter, this.settings.searchBy);\n }\n calculateDropdownDirection() {\n let shouldOpenTowardsTop = this.settings.position == 'top';\n if (this.settings.autoPosition) {\n const dropdownHeight = this.dropdownListElem.nativeElement.clientHeight;\n const viewportHeight = document.documentElement.clientHeight;\n const selectedListBounds = this.selectedListElem.nativeElement.getBoundingClientRect();\n\n const spaceOnTop: number = selectedListBounds.top;\n const spaceOnBottom: number = viewportHeight - selectedListBounds.top;\n if (spaceOnBottom < spaceOnTop && dropdownHeight < spaceOnTop) {\n this.openTowardsTop(true);\n }\n else {\n this.openTowardsTop(false);\n }\n // Keep preference if there is not enough space on either the top or bottom\n /* \t\t\tif (spaceOnTop || spaceOnBottom) {\n if (shouldOpenTowardsTop) {\n shouldOpenTowardsTop = spaceOnTop;\n } else {\n shouldOpenTowardsTop = !spaceOnBottom;\n }\n } */\n }\n\n }\n openTowardsTop(value: boolean) {\n if (value && this.selectedListElem.nativeElement.clientHeight) {\n this.dropdownListYOffset = 15 + this.selectedListElem.nativeElement.clientHeight;\n } else {\n this.dropdownListYOffset = 0;\n }\n }\n clearSelection(e: any) {\n this.clearSearch();\n this.selectedItems = [];\n this.onDeSelectAll.emit(this.selectedItems);\n }\n}\n\n@NgModule({\n imports: [CommonModule, FormsModule, VirtualScrollerModule],\n declarations: [AngularMultiSelect, ClickOutsideDirective, ScrollDirective, styleDirective, ListFilterPipe, Item, TemplateRenderer, Badge, Search, setPosition, CIcon],\n exports: [AngularMultiSelect, ClickOutsideDirective, ScrollDirective, styleDirective, ListFilterPipe, Item, TemplateRenderer, Badge, Search, setPosition, CIcon],\n providers: [DataService]\n})\nexport class AngularMultiSelectModule { }\n","export class MyException {\n\tstatus : number;\n\tbody : any;\n\tconstructor(status : number, body : any) {\n\t\tthis.status = status;\n\t\tthis.body = body;\n\t}\n\t\n}","import { Injectable } from '@angular/core';\nimport { Observable, Subject } from 'rxjs';\n\n\n@Injectable()\nexport class DataService {\n\n filteredData: any = [];\n private subject = new Subject();\n\n setData(data: any) {\n\n this.filteredData = data;\n this.subject.next(data);\n }\n getData(): Observable {\n return this.subject.asObservable();\n }\n getFilteredData() {\n if (this.filteredData && this.filteredData.length > 0) {\n return this.filteredData;\n }\n else {\n return [];\n }\n }\n\n}","\n
\n
\n \n
\n ","import {\n\tComponent,\n\tContentChild,\n\tElementRef,\n\tEventEmitter,\n\tInject,\n\tOptional,\n\tInput,\n\tNgModule,\n\tNgZone,\n\tOnChanges,\n\tOnDestroy,\n\tOnInit,\n\tOutput,\n\tRenderer2,\n\tViewChild,\n\tChangeDetectorRef,\n\tInjectionToken\n} from '@angular/core';\n\nimport { PLATFORM_ID } from '@angular/core';\nimport { isPlatformServer } from '@angular/common';\n\nimport { CommonModule } from '@angular/common';\n\nimport * as tween from '@tweenjs/tween.js'\nimport { VirtualScrollerDefaultOptions } from './defaultoptions';\nimport { IPageInfo } from './ipageinfo';\nimport { IViewport } from './iviewport';\n\nimport { WrapGroupDimensions } from './wrapgroupdimensions';\nimport { WrapGroupDimension } from './wrapgroupdimension';\n\nimport { IDimensions } from './idimension';\n\n \n\n\n\nexport function VIRTUAL_SCROLLER_DEFAULT_OPTIONS_FACTORY(): VirtualScrollerDefaultOptions {\n\treturn {\n\t\tscrollThrottlingTime: 0,\n\t\tscrollDebounceTime: 0,\n\t\tscrollAnimationTime: 750,\n\t\tcheckResizeInterval: 1000,\n\t\tresizeBypassRefreshThreshold: 5,\n\t\tmodifyOverflowStyleOfParentScroll: true,\n\t\tstripedTable: false\n\t};\n}\n\n\n\n\n\n\n\n\n\n\n\n@Component({\n\tselector: 'virtual-scroller,[virtualScroller]',\n\texportAs: 'virtualScroller',\n\ttemplate: `\n
\n
\n \n
\n `,\n\thost: {\n\t\t'[class.horizontal]': \"horizontal\",\n\t\t'[class.vertical]': \"!horizontal\",\n\t\t'[class.selfScroll]': \"!parentScroll\"\n\t},\n\tstyles: [`\n :host {\n position: relative;\n\t display: block;\n -webkit-overflow-scrolling: touch;\n }\n\t\n\t:host.horizontal.selfScroll {\n overflow-y: visible;\n overflow-x: auto;\n\t}\n\t:host.vertical.selfScroll {\n overflow-y: auto;\n overflow-x: visible;\n\t}\n\t\n .scrollable-content {\n top: 0;\n left: 0;\n width: 100%;\n height: 100%;\n max-width: 100vw;\n max-height: 100vh;\n position: absolute;\n }\n\n\t.scrollable-content ::ng-deep > * {\n\t\tbox-sizing: border-box;\n\t}\n\t\n\t:host.horizontal {\n\t\twhite-space: nowrap;\n\t}\n\t\n\t:host.horizontal .scrollable-content {\n\t\tdisplay: flex;\n\t}\n\t\n\t:host.horizontal .scrollable-content ::ng-deep > * {\n\t\tflex-shrink: 0;\n\t\tflex-grow: 0;\n\t\twhite-space: initial;\n\t}\n\t\n .total-padding {\n width: 1px;\n opacity: 0;\n }\n \n :host.horizontal .total-padding {\n height: 100%;\n }\n `]\n})\nexport class VirtualScrollerComponent implements OnInit, OnChanges, OnDestroy {\n\tpublic viewPortItems: any[];\n\tpublic window = window;\n\n\tpublic get viewPortInfo(): IPageInfo {\n\t\tlet pageInfo: IViewport = this.previousViewPort || {};\n\t\treturn {\n\t\t\tstartIndex: pageInfo.startIndex || 0,\n\t\t\tendIndex: pageInfo.endIndex || 0,\n\t\t\tscrollStartPosition: pageInfo.scrollStartPosition || 0,\n\t\t\tscrollEndPosition: pageInfo.scrollEndPosition || 0,\n\t\t\tmaxScrollPosition: pageInfo.maxScrollPosition || 0,\n\t\t\tstartIndexWithBuffer: pageInfo.startIndexWithBuffer || 0,\n\t\t\tendIndexWithBuffer: pageInfo.endIndexWithBuffer || 0\n\t\t};\n\t}\n\n\t@Input()\n\tpublic executeRefreshOutsideAngularZone: boolean = false;\n\n\tprotected _enableUnequalChildrenSizes: boolean = false;\n\t@Input()\n\tpublic get enableUnequalChildrenSizes(): boolean {\n\t\treturn this._enableUnequalChildrenSizes;\n\t}\n\tpublic set enableUnequalChildrenSizes(value: boolean) {\n\t\tif (this._enableUnequalChildrenSizes === value) {\n\t\t\treturn;\n\t\t}\n\n\t\tthis._enableUnequalChildrenSizes = value;\n\t\tthis.minMeasuredChildWidth = undefined;\n\t\tthis.minMeasuredChildHeight = undefined;\n\t}\n\n\t@Input()\n\tpublic useMarginInsteadOfTranslate: boolean = false;\n\n\t@Input()\n\tpublic modifyOverflowStyleOfParentScroll: boolean;\n\n\t@Input()\n\tpublic stripedTable: boolean;\n\n\t@Input()\n\tpublic scrollbarWidth: number;\n\n\t@Input()\n\tpublic scrollbarHeight: number;\n\n\t@Input()\n\tpublic childWidth: number;\n\n\t@Input()\n\tpublic childHeight: number;\n\n\t@Input()\n\tpublic ssrChildWidth: number;\n\n\t@Input()\n\tpublic ssrChildHeight: number;\n\n\t@Input()\n\tpublic ssrViewportWidth: number = 1920;\n\n\t@Input()\n\tpublic ssrViewportHeight: number = 1080;\n\n\tprotected _bufferAmount: number = 0;\n\t@Input()\n\tpublic get bufferAmount(): number {\n\t\tif (typeof (this._bufferAmount) === 'number' && this._bufferAmount >= 0) {\n\t\t\treturn this._bufferAmount;\n\t\t} else {\n\t\t\treturn this.enableUnequalChildrenSizes ? 5 : 0;\t\n\t\t}\n\t}\n\tpublic set bufferAmount(value: number) {\n\t\tthis._bufferAmount = value;\n\t}\n\n\t@Input()\n\tpublic scrollAnimationTime: number;\n\n\t@Input()\n\tpublic resizeBypassRefreshThreshold: number;\n\n\tprotected _scrollThrottlingTime: number;\n\t@Input()\n\tpublic get scrollThrottlingTime(): number {\n\t\treturn this._scrollThrottlingTime;\n\t}\n\tpublic set scrollThrottlingTime(value: number) {\n\t\tthis._scrollThrottlingTime = value;\n\t\tthis.updateOnScrollFunction();\n\t}\n\n\tprotected _scrollDebounceTime: number;\n\t@Input()\n\tpublic get scrollDebounceTime(): number {\n\t\treturn this._scrollDebounceTime;\n\t}\n\tpublic set scrollDebounceTime(value: number) {\n\t\tthis._scrollDebounceTime = value;\n\t\tthis.updateOnScrollFunction();\n\t}\n\n\tprotected onScroll: () => void;\n\tprotected updateOnScrollFunction(): void {\n\t\tif (this.scrollDebounceTime) {\n\t\t\tthis.onScroll = this.debounce(() => {\n\t\t\t\tthis.refresh_internal(false);\n\t\t\t}, this.scrollDebounceTime);\n\t\t}\n\t\telse if (this.scrollThrottlingTime) {\n\t\t\tthis.onScroll = this.throttleTrailing(() => {\n\t\t\t\tthis.refresh_internal(false);\n\t\t\t}, this.scrollThrottlingTime);\n\t\t}\n\t\telse {\n\t\t\tthis.onScroll = () => {\n\t\t\t\tthis.refresh_internal(false);\n\t\t\t};\n\t\t}\n\t}\n\n\tprotected checkScrollElementResizedTimer: number;\n\tprotected _checkResizeInterval: number;\n\t@Input()\n\tpublic get checkResizeInterval(): number {\n\t\treturn this._checkResizeInterval;\n\t}\n\tpublic set checkResizeInterval(value: number) {\n\t\tif (this._checkResizeInterval === value) {\n\t\t\treturn;\n\t\t}\n\n\t\tthis._checkResizeInterval = value;\n\t\tthis.addScrollEventHandlers();\n\t}\n\n\tprotected _items: any[] = [];\n\t@Input()\n\tpublic get items(): any[] {\n\t\treturn this._items;\n\t}\n\tpublic set items(value: any[]) {\n\t\tif (value === this._items) {\n\t\t\treturn;\n\t\t}\n\n\t\tthis._items = value || [];\n\t\tthis.refresh_internal(true);\n\t}\n\n\t@Input()\n\tpublic compareItems: (item1: any, item2: any) => boolean = (item1: any, item2: any) => item1 === item2;\n\n\tprotected _horizontal: boolean;\n\t@Input()\n\tpublic get horizontal(): boolean {\n\t\treturn this._horizontal;\n\t}\n\tpublic set horizontal(value: boolean) {\n\t\tthis._horizontal = value;\n\t\tthis.updateDirection();\n\t}\n\n\tprotected revertParentOverscroll(): void {\n\t\tconst scrollElement = this.getScrollElement();\n\t\tif (scrollElement && this.oldParentScrollOverflow) {\n\t\t\tscrollElement.style['overflow-y'] = this.oldParentScrollOverflow.y;\n\t\t\tscrollElement.style['overflow-x'] = this.oldParentScrollOverflow.x;\n\t\t}\n\n\t\tthis.oldParentScrollOverflow = undefined;\n\t}\n\n\tprotected oldParentScrollOverflow: { x: string, y: string };\n\tprotected _parentScroll: Element | Window;\n\t@Input()\n\tpublic get parentScroll(): Element | Window {\n\t\treturn this._parentScroll;\n\t}\n\tpublic set parentScroll(value: Element | Window) {\n\t\tif (this._parentScroll === value) {\n\t\t\treturn;\n\t\t}\n\n\t\tthis.revertParentOverscroll();\n\t\tthis._parentScroll = value;\n\t\tthis.addScrollEventHandlers();\n\n\t\tconst scrollElement = this.getScrollElement();\n\t\tif (this.modifyOverflowStyleOfParentScroll && scrollElement !== this.element.nativeElement) {\n\t\t\tthis.oldParentScrollOverflow = { x: scrollElement.style['overflow-x'], y: scrollElement.style['overflow-y'] };\n\t\t\tscrollElement.style['overflow-y'] = this.horizontal ? 'visible' : 'auto';\n\t\t\tscrollElement.style['overflow-x'] = this.horizontal ? 'auto' : 'visible';\n\t\t}\n\t}\n\n\t@Output()\n\tpublic vsUpdate: EventEmitter = new EventEmitter();\n\n\t@Output()\n\tpublic vsChange: EventEmitter = new EventEmitter();\n\n\t@Output()\n\tpublic vsStart: EventEmitter = new EventEmitter();\n\n\t@Output()\n\tpublic vsEnd: EventEmitter = new EventEmitter();\n\n\t@ViewChild('content', { read: ElementRef, static: false })\n\tprotected contentElementRef: ElementRef;\n\n\t@ViewChild('invisiblePadding', { read: ElementRef, static: false })\n\tprotected invisiblePaddingElementRef: ElementRef;\n\n\t@ContentChild('header', { read: ElementRef, static: false })\n\tprotected headerElementRef: ElementRef;\n\n\t@ContentChild('container', { read: ElementRef, static: false })\n\tprotected containerElementRef: ElementRef;\n\n\tpublic ngOnInit(): void {\n\t\tthis.addScrollEventHandlers();\n\t}\n\n\tpublic ngOnDestroy(): void {\n\t\tthis.removeScrollEventHandlers();\n\t\tthis.revertParentOverscroll();\n\t}\n\n\tpublic ngOnChanges(changes: any): void {\n\t\tlet indexLengthChanged = this.cachedItemsLength !== this.items.length;\n\t\tthis.cachedItemsLength = this.items.length;\n\n\t\tconst firstRun: boolean = !changes.items || !changes.items.previousValue || changes.items.previousValue.length === 0;\n\t\tthis.refresh_internal(indexLengthChanged || firstRun);\n\t}\n\n\t\n\tpublic ngDoCheck(): void {\n\t\tif (this.cachedItemsLength !== this.items.length) {\n\t\t\tthis.cachedItemsLength = this.items.length;\n\t\t\tthis.refresh_internal(true);\n\t\t\treturn;\n\t\t}\n\t\t\n\t\tif (this.previousViewPort && this.viewPortItems && this.viewPortItems.length > 0) {\n\t\t\tlet itemsArrayChanged = false;\n\t\t\tfor (let i = 0; i < this.viewPortItems.length; ++i) {\n\t\t\t\tif (!this.compareItems(this.items[this.previousViewPort.startIndexWithBuffer + i], this.viewPortItems[i])) {\n\t\t\t\t\titemsArrayChanged = true;\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t}\n\t\t\tif (itemsArrayChanged) {\n\t\t\t\tthis.refresh_internal(true);\n\t\t\t}\n\t\t}\n\t}\n\n\tpublic refresh(): void {\n\t\tthis.refresh_internal(true);\n\t}\n\n\tpublic invalidateAllCachedMeasurements(): void {\n\t\tthis.wrapGroupDimensions = {\n\t\t\tmaxChildSizePerWrapGroup: [],\n\t\t\tnumberOfKnownWrapGroupChildSizes: 0,\n\t\t\tsumOfKnownWrapGroupChildWidths: 0,\n\t\t\tsumOfKnownWrapGroupChildHeights: 0\n\t\t};\n\n\t\tthis.minMeasuredChildWidth = undefined;\n\t\tthis.minMeasuredChildHeight = undefined;\n\n\t\tthis.refresh_internal(false);\n\t}\n\n\tpublic invalidateCachedMeasurementForItem(item: any): void {\n\t\tif (this.enableUnequalChildrenSizes) {\n\t\t\tlet index = this.items && this.items.indexOf(item);\n\t\t\tif (index >= 0) {\n\t\t\t\tthis.invalidateCachedMeasurementAtIndex(index);\n\t\t\t}\n\t\t} else {\n\t\t\tthis.minMeasuredChildWidth = undefined;\n\t\t\tthis.minMeasuredChildHeight = undefined;\n\t\t}\n\n\t\tthis.refresh_internal(false);\n\t}\n\n\tpublic invalidateCachedMeasurementAtIndex(index: number): void {\n\t\tif (this.enableUnequalChildrenSizes) {\n\t\t\tlet cachedMeasurement = this.wrapGroupDimensions.maxChildSizePerWrapGroup[index];\n\t\t\tif (cachedMeasurement) {\n\t\t\t\tthis.wrapGroupDimensions.maxChildSizePerWrapGroup[index] = undefined;\n\t\t\t\t--this.wrapGroupDimensions.numberOfKnownWrapGroupChildSizes;\n\t\t\t\tthis.wrapGroupDimensions.sumOfKnownWrapGroupChildWidths -= cachedMeasurement.childWidth || 0;\n\t\t\t\tthis.wrapGroupDimensions.sumOfKnownWrapGroupChildHeights -= cachedMeasurement.childHeight || 0;\n\t\t\t}\n\t\t} else {\n\t\t\tthis.minMeasuredChildWidth = undefined;\n\t\t\tthis.minMeasuredChildHeight = undefined;\n\t\t}\n\n\t\tthis.refresh_internal(false);\n\t}\n\n\tpublic scrollInto(item: any, alignToBeginning: boolean = true, additionalOffset: number = 0, animationMilliseconds: number = undefined, animationCompletedCallback: () => void = undefined): void {\n\t\tlet index: number = this.items.indexOf(item);\n\t\tif (index === -1) {\n\t\t\treturn;\n\t\t}\n\n\t\tthis.scrollToIndex(index, alignToBeginning, additionalOffset, animationMilliseconds, animationCompletedCallback);\n\t}\n\n\tpublic scrollToIndex(index: number, alignToBeginning: boolean = true, additionalOffset: number = 0, animationMilliseconds: number = undefined, animationCompletedCallback: () => void = undefined): void {\n\t\tlet maxRetries: number = 5;\n\n\t\tlet retryIfNeeded = () => {\n\t\t\t--maxRetries;\n\t\t\tif (maxRetries <= 0) {\n\t\t\t\tif (animationCompletedCallback) {\n\t\t\t\t\tanimationCompletedCallback();\n\t\t\t\t}\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tlet dimensions = this.calculateDimensions();\n\t\t\tlet desiredStartIndex = Math.min(Math.max(index, 0), dimensions.itemCount - 1);\n\t\t\tif (this.previousViewPort.startIndex === desiredStartIndex) {\n\t\t\t\tif (animationCompletedCallback) {\n\t\t\t\t\tanimationCompletedCallback();\n\t\t\t\t}\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tthis.scrollToIndex_internal(index, alignToBeginning, additionalOffset, 0, retryIfNeeded);\n\t\t};\n\n\t\tthis.scrollToIndex_internal(index, alignToBeginning, additionalOffset, animationMilliseconds, retryIfNeeded);\n\t}\n\n\tprotected scrollToIndex_internal(index: number, alignToBeginning: boolean = true, additionalOffset: number = 0, animationMilliseconds: number = undefined, animationCompletedCallback: () => void = undefined): void {\n\t\tanimationMilliseconds = animationMilliseconds === undefined ? this.scrollAnimationTime : animationMilliseconds;\n\n\t\tlet dimensions = this.calculateDimensions();\n\t\tlet scroll = this.calculatePadding(index, dimensions) + additionalOffset;\n\t\tif (!alignToBeginning) {\n\t\t\tscroll -= dimensions.wrapGroupsPerPage * dimensions[this._childScrollDim];\n\t\t}\n\n\t\tthis.scrollToPosition(scroll, animationMilliseconds, animationCompletedCallback);\n\t}\n\n\tpublic scrollToPosition(scrollPosition: number, animationMilliseconds: number = undefined, animationCompletedCallback: () => void = undefined): void {\n\t\tscrollPosition += this.getElementsOffset();\n\n\t\tanimationMilliseconds = animationMilliseconds === undefined ? this.scrollAnimationTime : animationMilliseconds;\n\n\t\tlet scrollElement = this.getScrollElement();\n\n\t\tlet animationRequest: number;\n\n\t\tif (this.currentTween) {\n\t\t\tthis.currentTween.stop();\n\t\t\tthis.currentTween = undefined;\n\t\t}\n\n\t\tif (!animationMilliseconds) {\n\t\t\tthis.renderer.setProperty(scrollElement, this._scrollType, scrollPosition);\n\t\t\tthis.refresh_internal(false, animationCompletedCallback);\n\t\t\treturn;\n\t\t}\n\n\t\tconst tweenConfigObj = { scrollPosition: scrollElement[this._scrollType] };\n\n\t\tlet newTween = new tween.Tween(tweenConfigObj)\n\t\t\t.to({ scrollPosition }, animationMilliseconds)\n\t\t\t.easing(tween.Easing.Quadratic.Out)\n\t\t\t.onUpdate((data) => {\n\t\t\t\tif (isNaN(data.scrollPosition)) {\n\t\t\t\t\treturn;\n\t\t\t\t}\n\t\t\t\tthis.renderer.setProperty(scrollElement, this._scrollType, data.scrollPosition);\n\t\t\t\tthis.refresh_internal(false);\n\t\t\t})\n\t\t\t.onStop(() => {\n\t\t\t\tcancelAnimationFrame(animationRequest);\n\t\t\t})\n\t\t\t.start();\n\n\t\tconst animate = (time?: number) => {\n\t\t\tif (!newTween[\"isPlaying\"]()) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tnewTween.update(time);\n\t\t\tif (tweenConfigObj.scrollPosition === scrollPosition) {\n\t\t\t\tthis.refresh_internal(false, animationCompletedCallback);\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tthis.zone.runOutsideAngular(() => {\n\t\t\t\tanimationRequest = requestAnimationFrame(animate);\n\t\t\t});\n\t\t};\n\n\t\tanimate();\n\t\tthis.currentTween = newTween;\n\t}\n\n\tprotected isAngularUniversalSSR: boolean;\n\n\tconstructor(protected readonly element: ElementRef,\n\t\tprotected readonly renderer: Renderer2,\n\t\tprotected readonly zone: NgZone,\n\t\tprotected changeDetectorRef: ChangeDetectorRef,\n\t\t@Inject(PLATFORM_ID) platformId: Object,\n\t\t@Optional() @Inject('virtual-scroller-default-options')\n\t\toptions: VirtualScrollerDefaultOptions) {\n\t\t\t\n\t\tthis.isAngularUniversalSSR = isPlatformServer(platformId);\n\n\t\tthis.scrollThrottlingTime = options.scrollThrottlingTime;\n\t\tthis.scrollDebounceTime = options.scrollDebounceTime;\n\t\tthis.scrollAnimationTime = options.scrollAnimationTime;\n\t\tthis.scrollbarWidth = options.scrollbarWidth;\n\t\tthis.scrollbarHeight = options.scrollbarHeight;\n\t\tthis.checkResizeInterval = options.checkResizeInterval;\n\t\tthis.resizeBypassRefreshThreshold = options.resizeBypassRefreshThreshold;\n\t\tthis.modifyOverflowStyleOfParentScroll = options.modifyOverflowStyleOfParentScroll;\n\t\tthis.stripedTable = options.stripedTable;\n\n\t\tthis.horizontal = false;\n\t\tthis.resetWrapGroupDimensions();\n\t}\n\t\n\tprotected getElementSize(element: HTMLElement) : ClientRect {\n\t\tlet result = element.getBoundingClientRect();\n\t\tlet styles = getComputedStyle(element);\n\t\tlet marginTop = parseInt(styles['margin-top'], 10) || 0;\n\t\tlet marginBottom = parseInt(styles['margin-bottom'], 10) || 0;\n\t\tlet marginLeft = parseInt(styles['margin-left'], 10) || 0;\n\t\tlet marginRight = parseInt(styles['margin-right'], 10) || 0;\n\t\t\n\t\treturn {\n\t\t\ttop: result.top + marginTop,\n\t\t\tbottom: result.bottom + marginBottom,\n\t\t\tleft: result.left + marginLeft,\n\t\t\tright: result.right + marginRight,\n\t\t\twidth: result.width + marginLeft + marginRight,\n\t\t\theight: result.height + marginTop + marginBottom\n\t\t};\n\t}\n\n\tprotected previousScrollBoundingRect: ClientRect;\n\tprotected checkScrollElementResized(): void {\n\t\tlet boundingRect = this.getElementSize(this.getScrollElement());\n\n\t\tlet sizeChanged: boolean;\n\t\tif (!this.previousScrollBoundingRect) {\n\t\t\tsizeChanged = true;\n\t\t} else {\n\t\t\tlet widthChange = Math.abs(boundingRect.width - this.previousScrollBoundingRect.width);\n\t\t\tlet heightChange = Math.abs(boundingRect.height - this.previousScrollBoundingRect.height);\n\t\t\tsizeChanged = widthChange > this.resizeBypassRefreshThreshold || heightChange > this.resizeBypassRefreshThreshold;\n\t\t}\n\n\t\tif (sizeChanged) {\n\t\t\tthis.previousScrollBoundingRect = boundingRect;\n\t\t\tif (boundingRect.width > 0 && boundingRect.height > 0) {\n\t\t\t\tthis.refresh_internal(false);\n\t\t\t}\n\t\t}\n\t}\n\n\tprotected _invisiblePaddingProperty;\n\tprotected _offsetType;\n\tprotected _scrollType;\n\tprotected _pageOffsetType;\n\tprotected _childScrollDim;\n\tprotected _translateDir;\n\tprotected _marginDir;\n\tprotected updateDirection(): void {\n\t\tif (this.horizontal) {\n\t\t\tthis._invisiblePaddingProperty = 'width';\n\t\t\tthis._offsetType = 'offsetLeft';\n\t\t\tthis._pageOffsetType = 'pageXOffset';\n\t\t\tthis._childScrollDim = 'childWidth';\n\t\t\tthis._marginDir = 'margin-left';\n\t\t\tthis._translateDir = 'translateX';\n\t\t\tthis._scrollType = 'scrollLeft';\n\t\t}\n\t\telse {\n\t\t\tthis._invisiblePaddingProperty = 'height';\n\t\t\tthis._offsetType = 'offsetTop';\n\t\t\tthis._pageOffsetType = 'pageYOffset';\n\t\t\tthis._childScrollDim = 'childHeight';\n\t\t\tthis._marginDir = 'margin-top';\n\t\t\tthis._translateDir = 'translateY';\n\t\t\tthis._scrollType = 'scrollTop';\n\t\t}\n\t}\n\n\tprotected debounce(func: Function, wait: number): Function {\n\t\tconst throttled = this.throttleTrailing(func, wait);\n\t\tconst result = function () {\n\t\t\tthrottled['cancel']();\n\t\t\tthrottled.apply(this, arguments);\n\t\t};\n\t\tresult['cancel'] = function () {\n\t\t\tthrottled['cancel']();\n\t\t};\n\n\t\treturn result;\n\t}\n\n\tprotected throttleTrailing(func: Function, wait: number): Function {\n\t\tlet timeout = undefined;\n\t\tlet _arguments = arguments;\n\t\tconst result = function () {\n\t\t\tconst _this = this;\n\t\t\t_arguments = arguments\n\n\t\t\tif (timeout) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tif (wait <= 0) {\n\t\t\t\tfunc.apply(_this, _arguments);\n\t\t\t} else {\n\t\t\t\ttimeout = setTimeout(function () {\n\t\t\t\t\ttimeout = undefined;\n\t\t\t\t\tfunc.apply(_this, _arguments);\n\t\t\t\t}, wait);\n\t\t\t}\n\t\t};\n\t\tresult['cancel'] = function () {\n\t\t\tif (timeout) {\n\t\t\t\tclearTimeout(timeout);\n\t\t\t\ttimeout = undefined;\n\t\t\t}\n\t\t};\n\n\t\treturn result;\n\t}\n\n\tprotected calculatedScrollbarWidth: number = 0;\n\tprotected calculatedScrollbarHeight: number = 0;\n\n\tprotected padding: number = 0;\n\tprotected previousViewPort: IViewport = {};\n\tprotected currentTween: tween.Tween;\n\tprotected cachedItemsLength: number;\n\n\tprotected disposeScrollHandler: () => void | undefined;\n\tprotected disposeResizeHandler: () => void | undefined;\n\n\tprotected refresh_internal(itemsArrayModified: boolean, refreshCompletedCallback: () => void = undefined, maxRunTimes: number = 2): void {\n\t\t//note: maxRunTimes is to force it to keep recalculating if the previous iteration caused a re-render (different sliced items in viewport or scrollPosition changed).\n\t\t//The default of 2x max will probably be accurate enough without causing too large a performance bottleneck\n\t\t//The code would typically quit out on the 2nd iteration anyways. The main time it'd think more than 2 runs would be necessary would be for vastly different sized child items or if this is the 1st time the items array was initialized.\n\t\t//Without maxRunTimes, If the user is actively scrolling this code would become an infinite loop until they stopped scrolling. This would be okay, except each scroll event would start an additional infinte loop. We want to short-circuit it to prevent this.\n\n\t\tif (itemsArrayModified && this.previousViewPort && this.previousViewPort.scrollStartPosition > 0) {\n\t\t//if items were prepended, scroll forward to keep same items visible\n\t\t\tlet oldViewPort = this.previousViewPort;\n\t\t\tlet oldViewPortItems = this.viewPortItems;\n\t\t\t\n\t\t\tlet oldRefreshCompletedCallback = refreshCompletedCallback;\n\t\t\trefreshCompletedCallback = () => {\n\t\t\t\tlet scrollLengthDelta = this.previousViewPort.scrollLength - oldViewPort.scrollLength;\n\t\t\t\tif (scrollLengthDelta > 0 && this.viewPortItems) {\n\t\t\t\t\tlet oldStartItem = oldViewPortItems[0];\n\t\t\t\t\tlet oldStartItemIndex = this.items.findIndex(x => this.compareItems(oldStartItem, x));\n\t\t\t\t\tif (oldStartItemIndex > this.previousViewPort.startIndexWithBuffer) {\n\t\t\t\t\t\tlet itemOrderChanged = false;\n\t\t\t\t\t\tfor (let i = 1; i < this.viewPortItems.length; ++i) {\n\t\t\t\t\t\t\tif (!this.compareItems(this.items[oldStartItemIndex + i], oldViewPortItems[i])) {\n\t\t\t\t\t\t\t\titemOrderChanged = true;\n\t\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\t\t\t\t\t\t\n\t\t\t\t\t\tif (!itemOrderChanged) {\n\t\t\t\t\t\t\tthis.scrollToPosition(this.previousViewPort.scrollStartPosition + scrollLengthDelta , 0, oldRefreshCompletedCallback);\n\t\t\t\t\t\t\treturn;\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\t\n\t\t\t\tif (oldRefreshCompletedCallback) {\n\t\t\t\t\toldRefreshCompletedCallback();\n\t\t\t\t}\n\t\t\t};\n\t\t}\t\t\t\n\n\t\tthis.zone.runOutsideAngular(() => {\n\t\t\trequestAnimationFrame(() => {\n\n\t\t\t\tif (itemsArrayModified) {\n\t\t\t\t\tthis.resetWrapGroupDimensions();\n\t\t\t\t}\n\t\t\t\tlet viewport = this.calculateViewport();\n\n\t\t\t\tlet startChanged = itemsArrayModified || viewport.startIndex !== this.previousViewPort.startIndex;\n\t\t\t\tlet endChanged = itemsArrayModified || viewport.endIndex !== this.previousViewPort.endIndex;\n\t\t\t\tlet scrollLengthChanged = viewport.scrollLength !== this.previousViewPort.scrollLength;\n\t\t\t\tlet paddingChanged = viewport.padding !== this.previousViewPort.padding;\n\t\t\t\tlet scrollPositionChanged = viewport.scrollStartPosition !== this.previousViewPort.scrollStartPosition || viewport.scrollEndPosition !== this.previousViewPort.scrollEndPosition || viewport.maxScrollPosition !== this.previousViewPort.maxScrollPosition;\n\n\t\t\t\tthis.previousViewPort = viewport;\n\n\t\t\t\tif (scrollLengthChanged) {\n\t\t\t\t\tthis.renderer.setStyle(this.invisiblePaddingElementRef.nativeElement, this._invisiblePaddingProperty, `${viewport.scrollLength}px`);\n\t\t\t\t}\n\n\t\t\t\tif (paddingChanged) {\n\t\t\t\t\tif (this.useMarginInsteadOfTranslate) {\n\t\t\t\t\t\tthis.renderer.setStyle(this.contentElementRef.nativeElement, this._marginDir, `${viewport.padding}px`);\n\t\t\t\t\t}\n\t\t\t\t\telse {\n\t\t\t\t\t\tthis.renderer.setStyle(this.contentElementRef.nativeElement, 'transform', `${this._translateDir}(${viewport.padding}px)`);\n\t\t\t\t\t\tthis.renderer.setStyle(this.contentElementRef.nativeElement, 'webkitTransform', `${this._translateDir}(${viewport.padding}px)`);\n\t\t\t\t\t}\n\t\t\t\t}\n\n\t\t\t\tif (this.headerElementRef) {\n\t\t\t\t\tlet scrollPosition = this.getScrollElement()[this._scrollType];\n\t\t\t\t\tlet containerOffset = this.getElementsOffset();\n\t\t\t\t\tlet offset = Math.max(scrollPosition - viewport.padding - containerOffset + this.headerElementRef.nativeElement.clientHeight, 0);\n\t\t\t\t\tthis.renderer.setStyle(this.headerElementRef.nativeElement, 'transform', `${this._translateDir}(${offset}px)`);\n\t\t\t\t\tthis.renderer.setStyle(this.headerElementRef.nativeElement, 'webkitTransform', `${this._translateDir}(${offset}px)`);\n\t\t\t\t}\n\n\t\t\t\tconst changeEventArg: IPageInfo = (startChanged || endChanged) ? {\n\t\t\t\t\tstartIndex: viewport.startIndex,\n\t\t\t\t\tendIndex: viewport.endIndex,\n\t\t\t\t\tscrollStartPosition: viewport.scrollStartPosition,\n\t\t\t\t\tscrollEndPosition: viewport.scrollEndPosition,\n\t\t\t\t\tstartIndexWithBuffer: viewport.startIndexWithBuffer,\n\t\t\t\t\tendIndexWithBuffer: viewport.endIndexWithBuffer,\n\t\t\t\t\tmaxScrollPosition: viewport.maxScrollPosition\n\t\t\t\t} : undefined;\n\n\n\t\t\t\tif (startChanged || endChanged || scrollPositionChanged) {\n\t\t\t\t\tconst handleChanged = () => {\n\t\t\t\t\t\t// update the scroll list to trigger re-render of components in viewport\n\t\t\t\t\t\tthis.viewPortItems = viewport.startIndexWithBuffer >= 0 && viewport.endIndexWithBuffer >= 0 ? this.items.slice(viewport.startIndexWithBuffer, viewport.endIndexWithBuffer + 1) : [];\n\t\t\t\t\t\tthis.vsUpdate.emit(this.viewPortItems);\n\n\t\t\t\t\t\tif (startChanged) {\n\t\t\t\t\t\t\tthis.vsStart.emit(changeEventArg);\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\tif (endChanged) {\n\t\t\t\t\t\t\tthis.vsEnd.emit(changeEventArg);\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\tif (startChanged || endChanged) {\n\t\t\t\t\t\t\tthis.changeDetectorRef.markForCheck();\n\t\t\t\t\t\t\tthis.vsChange.emit(changeEventArg);\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\tif (maxRunTimes > 0) {\n\t\t\t\t\t\t\tthis.refresh_internal(false, refreshCompletedCallback, maxRunTimes - 1);\n\t\t\t\t\t\t\treturn;\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\tif (refreshCompletedCallback) {\n\t\t\t\t\t\t\trefreshCompletedCallback();\n\t\t\t\t\t\t}\n\t\t\t\t\t};\n\n\n\t\t\t\t\tif (this.executeRefreshOutsideAngularZone) {\n\t\t\t\t\t\thandleChanged();\n\t\t\t\t\t}\n\t\t\t\t\telse {\n\t\t\t\t\t\tthis.zone.run(handleChanged);\n\t\t\t\t\t}\n\t\t\t\t} else {\n\t\t\t\t\tif (maxRunTimes > 0 && (scrollLengthChanged || paddingChanged)) {\n\t\t\t\t\t\tthis.refresh_internal(false, refreshCompletedCallback, maxRunTimes - 1);\n\t\t\t\t\t\treturn;\n\t\t\t\t\t}\n\n\t\t\t\t\tif (refreshCompletedCallback) {\n\t\t\t\t\t\trefreshCompletedCallback();\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t});\n\t\t});\n\t}\n\n\tprotected getScrollElement(): HTMLElement {\n\t\treturn this.parentScroll instanceof Window ? document.scrollingElement || document.documentElement || document.body : this.parentScroll || this.element.nativeElement;\n\t}\n\n\tprotected addScrollEventHandlers(): void {\n\t\tif (this.isAngularUniversalSSR) {\n\t\t\treturn;\n\t\t}\n\n\t\tlet scrollElement = this.getScrollElement();\n\n\t\tthis.removeScrollEventHandlers();\n\n\t\tthis.zone.runOutsideAngular(() => {\n\t\t\tif (this.parentScroll instanceof Window) {\n\t\t\t\tthis.disposeScrollHandler = this.renderer.listen('window', 'scroll', this.onScroll);\n\t\t\t\tthis.disposeResizeHandler = this.renderer.listen('window', 'resize', this.onScroll);\n\t\t\t}\n\t\t\telse {\n\t\t\t\tthis.disposeScrollHandler = this.renderer.listen(scrollElement, 'scroll', this.onScroll);\n\t\t\t\tif (this._checkResizeInterval > 0) {\n\t\t\t\t\tthis.checkScrollElementResizedTimer = setInterval(() => { this.checkScrollElementResized(); }, this._checkResizeInterval);\n\t\t\t\t}\n\t\t\t}\n\t\t});\n\t}\n\n\tprotected removeScrollEventHandlers(): void {\n\t\tif (this.checkScrollElementResizedTimer) {\n\t\t\tclearInterval(this.checkScrollElementResizedTimer);\n\t\t}\n\n\t\tif (this.disposeScrollHandler) {\n\t\t\tthis.disposeScrollHandler();\n\t\t\tthis.disposeScrollHandler = undefined;\n\t\t}\n\n\t\tif (this.disposeResizeHandler) {\n\t\t\tthis.disposeResizeHandler();\n\t\t\tthis.disposeResizeHandler = undefined;\n\t\t}\n\t}\n\n\tprotected getElementsOffset(): number {\n\t\tif (this.isAngularUniversalSSR) {\n\t\t\treturn 0;\n\t\t}\n\n\t\tlet offset = 0;\n\n\t\tif (this.containerElementRef && this.containerElementRef.nativeElement) {\n\t\t\toffset += this.containerElementRef.nativeElement[this._offsetType];\n\t\t}\n\n\t\tif (this.parentScroll) {\n\t\t\tlet scrollElement = this.getScrollElement();\n\t\t\tlet elementClientRect = this.getElementSize(this.element.nativeElement);\n\t\t\tlet scrollClientRect = this.getElementSize(scrollElement);\n\t\t\tif (this.horizontal) {\n\t\t\t\toffset += elementClientRect.left - scrollClientRect.left;\n\t\t\t}\n\t\t\telse {\n\t\t\t\toffset += elementClientRect.top - scrollClientRect.top;\n\t\t\t}\n\n\t\t\tif (!(this.parentScroll instanceof Window)) {\n\t\t\t\toffset += scrollElement[this._scrollType];\n\t\t\t}\n\t\t}\n\n\t\treturn offset;\n\t}\n\n\tprotected countItemsPerWrapGroup(): number {\n\t\tif (this.isAngularUniversalSSR) {\n\t\t\treturn Math.round(this.horizontal ? this.ssrViewportHeight / this.ssrChildHeight : this.ssrViewportWidth / this.ssrChildWidth);\n\t\t}\n\n\t\tlet propertyName = this.horizontal ? 'offsetLeft' : 'offsetTop';\n\t\tlet children = ((this.containerElementRef && this.containerElementRef.nativeElement) || this.contentElementRef.nativeElement).children;\n\n\t\tlet childrenLength = children ? children.length : 0;\n\t\tif (childrenLength === 0) {\n\t\t\treturn 1;\n\t\t}\n\n\t\tlet firstOffset = children[0][propertyName];\n\t\tlet result = 1;\n\t\twhile (result < childrenLength && firstOffset === children[result][propertyName]) {\n\t\t\t++result;\n\t\t}\n\n\t\treturn result;\n\t}\n\n\tprotected getScrollStartPosition(): number {\n\t\tlet windowScrollValue = undefined;\n\t\tif (this.parentScroll instanceof Window) {\n\t\t\twindowScrollValue = window[this._pageOffsetType];\n\t\t}\n\n\t\treturn windowScrollValue || this.getScrollElement()[this._scrollType] || 0;\n\t}\n\n\tprotected minMeasuredChildWidth: number;\n\tprotected minMeasuredChildHeight: number;\n\n\tprotected wrapGroupDimensions: WrapGroupDimensions;\n\n\tprotected resetWrapGroupDimensions(): void {\n\t\tconst oldWrapGroupDimensions = this.wrapGroupDimensions;\n\t\tthis.invalidateAllCachedMeasurements();\n\n\t\tif (!this.enableUnequalChildrenSizes || !oldWrapGroupDimensions || oldWrapGroupDimensions.numberOfKnownWrapGroupChildSizes === 0) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst itemsPerWrapGroup: number = this.countItemsPerWrapGroup();\n\t\tfor (let wrapGroupIndex = 0; wrapGroupIndex < oldWrapGroupDimensions.maxChildSizePerWrapGroup.length; ++wrapGroupIndex) {\n\t\t\tconst oldWrapGroupDimension: WrapGroupDimension = oldWrapGroupDimensions.maxChildSizePerWrapGroup[wrapGroupIndex];\n\t\t\tif (!oldWrapGroupDimension || !oldWrapGroupDimension.items || !oldWrapGroupDimension.items.length) {\n\t\t\t\tcontinue;\n\t\t\t}\n\n\t\t\tif (oldWrapGroupDimension.items.length !== itemsPerWrapGroup) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tlet itemsChanged = false;\n\t\t\tlet arrayStartIndex = itemsPerWrapGroup * wrapGroupIndex;\n\t\t\tfor (let i = 0; i < itemsPerWrapGroup; ++i) {\n\t\t\t\tif (!this.compareItems(oldWrapGroupDimension.items[i], this.items[arrayStartIndex + i])) {\n\t\t\t\t\titemsChanged = true;\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tif (!itemsChanged) {\n\t\t\t\t++this.wrapGroupDimensions.numberOfKnownWrapGroupChildSizes;\n\t\t\t\tthis.wrapGroupDimensions.sumOfKnownWrapGroupChildWidths += oldWrapGroupDimension.childWidth || 0;\n\t\t\t\tthis.wrapGroupDimensions.sumOfKnownWrapGroupChildHeights += oldWrapGroupDimension.childHeight || 0;\n\t\t\t\tthis.wrapGroupDimensions.maxChildSizePerWrapGroup[wrapGroupIndex] = oldWrapGroupDimension;\n\t\t\t}\n\t\t}\n\t}\n\n\tprotected calculateDimensions(): IDimensions {\n\t\tlet scrollElement = this.getScrollElement();\n\n\t\tconst maxCalculatedScrollBarSize: number = 25; // Note: Formula to auto-calculate doesn't work for ParentScroll, so we default to this if not set by consuming application\n\t\tthis.calculatedScrollbarHeight = Math.max(Math.min(scrollElement.offsetHeight - scrollElement.clientHeight, maxCalculatedScrollBarSize), this.calculatedScrollbarHeight);\n\t\tthis.calculatedScrollbarWidth = Math.max(Math.min(scrollElement.offsetWidth - scrollElement.clientWidth, maxCalculatedScrollBarSize), this.calculatedScrollbarWidth);\n\n\t\tlet viewportWidth = scrollElement.offsetWidth - (this.scrollbarWidth || this.calculatedScrollbarWidth || (this.horizontal ? 0 : maxCalculatedScrollBarSize));\n\t\tlet viewportHeight = scrollElement.offsetHeight - (this.scrollbarHeight || this.calculatedScrollbarHeight || (this.horizontal ? maxCalculatedScrollBarSize : 0));\n\n\t\tlet content = (this.containerElementRef && this.containerElementRef.nativeElement) || this.contentElementRef.nativeElement;\n\n\t\tlet itemsPerWrapGroup = this.countItemsPerWrapGroup();\n\t\tlet wrapGroupsPerPage;\n\n\t\tlet defaultChildWidth;\n\t\tlet defaultChildHeight;\n\n\t\tif (this.isAngularUniversalSSR) {\n\t\t\tviewportWidth = this.ssrViewportWidth;\n\t\t\tviewportHeight = this.ssrViewportHeight;\n\t\t\tdefaultChildWidth = this.ssrChildWidth;\n\t\t\tdefaultChildHeight = this.ssrChildHeight;\n\t\t\tlet itemsPerRow = Math.max(Math.ceil(viewportWidth / defaultChildWidth), 1);\n\t\t\tlet itemsPerCol = Math.max(Math.ceil(viewportHeight / defaultChildHeight), 1);\n\t\t\twrapGroupsPerPage = this.horizontal ? itemsPerRow : itemsPerCol;\n\t\t}\n\t\telse if (!this.enableUnequalChildrenSizes) {\n\t\t\tif (content.children.length > 0) {\n\t\t\t\tif (!this.childWidth || !this.childHeight) {\n\t\t\t\t\tif (!this.minMeasuredChildWidth && viewportWidth > 0) {\n\t\t\t\t\t\tthis.minMeasuredChildWidth = viewportWidth;\n\t\t\t\t\t}\n\t\t\t\t\tif (!this.minMeasuredChildHeight && viewportHeight > 0) {\n\t\t\t\t\t\tthis.minMeasuredChildHeight = viewportHeight;\n\t\t\t\t\t}\n\t\t\t\t}\n\n\t\t\t\tlet child = content.children[0];\n\t\t\t\tlet clientRect = this.getElementSize(child);\n\t\t\t\tthis.minMeasuredChildWidth = Math.min(this.minMeasuredChildWidth, clientRect.width);\n\t\t\t\tthis.minMeasuredChildHeight = Math.min(this.minMeasuredChildHeight, clientRect.height);\n\t\t\t}\n\n\t\t\tdefaultChildWidth = this.childWidth || this.minMeasuredChildWidth || viewportWidth;\n\t\t\tdefaultChildHeight = this.childHeight || this.minMeasuredChildHeight || viewportHeight;\n\t\t\tlet itemsPerRow = Math.max(Math.ceil(viewportWidth / defaultChildWidth), 1);\n\t\t\tlet itemsPerCol = Math.max(Math.ceil(viewportHeight / defaultChildHeight), 1);\n\t\t\twrapGroupsPerPage = this.horizontal ? itemsPerRow : itemsPerCol;\n\t\t} else {\n\t\t\tlet scrollOffset = scrollElement[this._scrollType] - (this.previousViewPort ? this.previousViewPort.padding : 0);\n\n\t\t\tlet arrayStartIndex = this.previousViewPort.startIndexWithBuffer || 0;\n\t\t\tlet wrapGroupIndex = Math.ceil(arrayStartIndex / itemsPerWrapGroup);\n\n\t\t\tlet maxWidthForWrapGroup = 0;\n\t\t\tlet maxHeightForWrapGroup = 0;\n\t\t\tlet sumOfVisibleMaxWidths = 0;\n\t\t\tlet sumOfVisibleMaxHeights = 0;\n\t\t\twrapGroupsPerPage = 0;\n\n\t\t\tfor (let i = 0; i < content.children.length; ++i) {\n\t\t\t\t++arrayStartIndex;\n\t\t\t\tlet child = content.children[i];\n\t\t\t\tlet clientRect = this.getElementSize(child);\n\n\t\t\t\tmaxWidthForWrapGroup = Math.max(maxWidthForWrapGroup, clientRect.width);\n\t\t\t\tmaxHeightForWrapGroup = Math.max(maxHeightForWrapGroup, clientRect.height);\n\n\t\t\t\tif (arrayStartIndex % itemsPerWrapGroup === 0) {\n\t\t\t\t\tlet oldValue = this.wrapGroupDimensions.maxChildSizePerWrapGroup[wrapGroupIndex];\n\t\t\t\t\tif (oldValue) {\n\t\t\t\t\t\t--this.wrapGroupDimensions.numberOfKnownWrapGroupChildSizes;\n\t\t\t\t\t\tthis.wrapGroupDimensions.sumOfKnownWrapGroupChildWidths -= oldValue.childWidth || 0;\n\t\t\t\t\t\tthis.wrapGroupDimensions.sumOfKnownWrapGroupChildHeights -= oldValue.childHeight || 0;\n\t\t\t\t\t}\n\n\t\t\t\t\t++this.wrapGroupDimensions.numberOfKnownWrapGroupChildSizes;\n\t\t\t\t\tconst items = this.items.slice(arrayStartIndex - itemsPerWrapGroup, arrayStartIndex);\n\t\t\t\t\tthis.wrapGroupDimensions.maxChildSizePerWrapGroup[wrapGroupIndex] = {\n\t\t\t\t\t\tchildWidth: maxWidthForWrapGroup,\n\t\t\t\t\t\tchildHeight: maxHeightForWrapGroup,\n\t\t\t\t\t\titems: items\n\t\t\t\t\t};\n\t\t\t\t\tthis.wrapGroupDimensions.sumOfKnownWrapGroupChildWidths += maxWidthForWrapGroup;\n\t\t\t\t\tthis.wrapGroupDimensions.sumOfKnownWrapGroupChildHeights += maxHeightForWrapGroup;\n\n\t\t\t\t\tif (this.horizontal) {\n\t\t\t\t\t\tlet maxVisibleWidthForWrapGroup = Math.min(maxWidthForWrapGroup, Math.max(viewportWidth - sumOfVisibleMaxWidths, 0));\n\t\t\t\t\t\tif (scrollOffset > 0) {\n\t\t\t\t\t\t\tlet scrollOffsetToRemove = Math.min(scrollOffset, maxVisibleWidthForWrapGroup);\n\t\t\t\t\t\t\tmaxVisibleWidthForWrapGroup -= scrollOffsetToRemove;\n\t\t\t\t\t\t\tscrollOffset -= scrollOffsetToRemove;\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\tsumOfVisibleMaxWidths += maxVisibleWidthForWrapGroup;\n\t\t\t\t\t\tif (maxVisibleWidthForWrapGroup > 0 && viewportWidth >= sumOfVisibleMaxWidths) {\n\t\t\t\t\t\t\t++wrapGroupsPerPage;\n\t\t\t\t\t\t}\n\t\t\t\t\t} else {\n\t\t\t\t\t\tlet maxVisibleHeightForWrapGroup = Math.min(maxHeightForWrapGroup, Math.max(viewportHeight - sumOfVisibleMaxHeights, 0));\n\t\t\t\t\t\tif (scrollOffset > 0) {\n\t\t\t\t\t\t\tlet scrollOffsetToRemove = Math.min(scrollOffset, maxVisibleHeightForWrapGroup);\n\t\t\t\t\t\t\tmaxVisibleHeightForWrapGroup -= scrollOffsetToRemove;\n\t\t\t\t\t\t\tscrollOffset -= scrollOffsetToRemove;\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\tsumOfVisibleMaxHeights += maxVisibleHeightForWrapGroup;\n\t\t\t\t\t\tif (maxVisibleHeightForWrapGroup > 0 && viewportHeight >= sumOfVisibleMaxHeights) {\n\t\t\t\t\t\t\t++wrapGroupsPerPage;\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\n\t\t\t\t\t++wrapGroupIndex;\n\n\t\t\t\t\tmaxWidthForWrapGroup = 0;\n\t\t\t\t\tmaxHeightForWrapGroup = 0;\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tlet averageChildWidth = this.wrapGroupDimensions.sumOfKnownWrapGroupChildWidths / this.wrapGroupDimensions.numberOfKnownWrapGroupChildSizes;\n\t\t\tlet averageChildHeight = this.wrapGroupDimensions.sumOfKnownWrapGroupChildHeights / this.wrapGroupDimensions.numberOfKnownWrapGroupChildSizes;\n\t\t\tdefaultChildWidth = this.childWidth || averageChildWidth || viewportWidth;\n\t\t\tdefaultChildHeight = this.childHeight || averageChildHeight || viewportHeight;\n\n\t\t\tif (this.horizontal) {\n\t\t\t\tif (viewportWidth > sumOfVisibleMaxWidths) {\n\t\t\t\t\twrapGroupsPerPage += Math.ceil((viewportWidth - sumOfVisibleMaxWidths) / defaultChildWidth);\n\t\t\t\t}\n\t\t\t} else {\n\t\t\t\tif (viewportHeight > sumOfVisibleMaxHeights) {\n\t\t\t\t\twrapGroupsPerPage += Math.ceil((viewportHeight - sumOfVisibleMaxHeights) / defaultChildHeight);\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\tlet itemCount = this.items.length;\n\t\tlet itemsPerPage = itemsPerWrapGroup * wrapGroupsPerPage;\n\t\tlet pageCount_fractional = itemCount / itemsPerPage;\n\t\tlet numberOfWrapGroups = Math.ceil(itemCount / itemsPerWrapGroup);\n\n\t\tlet scrollLength = 0;\n\n\t\tlet defaultScrollLengthPerWrapGroup = this.horizontal ? defaultChildWidth : defaultChildHeight;\n\t\tif (this.enableUnequalChildrenSizes) {\n\t\t\tlet numUnknownChildSizes = 0;\n\t\t\tfor (let i = 0; i < numberOfWrapGroups; ++i) {\n\t\t\t\tlet childSize = this.wrapGroupDimensions.maxChildSizePerWrapGroup[i] && this.wrapGroupDimensions.maxChildSizePerWrapGroup[i][this._childScrollDim];\n\t\t\t\tif (childSize) {\n\t\t\t\t\tscrollLength += childSize;\n\t\t\t\t} else {\n\t\t\t\t\t++numUnknownChildSizes;\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tscrollLength += Math.round(numUnknownChildSizes * defaultScrollLengthPerWrapGroup);\n\t\t} else {\n\t\t\tscrollLength = numberOfWrapGroups * defaultScrollLengthPerWrapGroup;\n\t\t}\n\n\t\tif (this.headerElementRef) {\n\t\t\tscrollLength += this.headerElementRef.nativeElement.clientHeight;\n\t\t}\n\n\t\tlet viewportLength = this.horizontal ? viewportWidth : viewportHeight;\n\t\tlet maxScrollPosition = Math.max(scrollLength - viewportLength, 0);\n\n\t\treturn {\n\t\t\titemCount: itemCount,\n\t\t\titemsPerWrapGroup: itemsPerWrapGroup,\n\t\t\twrapGroupsPerPage: wrapGroupsPerPage,\n\t\t\titemsPerPage: itemsPerPage,\n\t\t\tpageCount_fractional: pageCount_fractional,\n\t\t\tchildWidth: defaultChildWidth,\n\t\t\tchildHeight: defaultChildHeight,\n\t\t\tscrollLength: scrollLength,\n\t\t\tviewportLength: viewportLength,\n\t\t\tmaxScrollPosition: maxScrollPosition\n\t\t};\n\t}\n\n\tprotected cachedPageSize: number = 0;\n\tprotected previousScrollNumberElements: number = 0;\n\n\tprotected calculatePadding(arrayStartIndexWithBuffer: number, dimensions: IDimensions): number {\n\t\tif (dimensions.itemCount === 0) {\n\t\t\treturn 0;\n\t\t}\n\n\t\tlet defaultScrollLengthPerWrapGroup = dimensions[this._childScrollDim];\n\t\tlet startingWrapGroupIndex = Math.floor(arrayStartIndexWithBuffer / dimensions.itemsPerWrapGroup) || 0;\n\n\t\tif (!this.enableUnequalChildrenSizes) {\n\t\t\treturn defaultScrollLengthPerWrapGroup * startingWrapGroupIndex;\n\t\t}\n\n\t\tlet numUnknownChildSizes = 0;\n\t\tlet result = 0;\n\t\tfor (let i = 0; i < startingWrapGroupIndex; ++i) {\n\t\t\tlet childSize = this.wrapGroupDimensions.maxChildSizePerWrapGroup[i] && this.wrapGroupDimensions.maxChildSizePerWrapGroup[i][this._childScrollDim];\n\t\t\tif (childSize) {\n\t\t\t\tresult += childSize;\n\t\t\t} else {\n\t\t\t\t++numUnknownChildSizes;\n\t\t\t}\n\t\t}\n\t\tresult += Math.round(numUnknownChildSizes * defaultScrollLengthPerWrapGroup);\n\n\t\treturn result;\n\t}\n\n\tprotected calculatePageInfo(scrollPosition: number, dimensions: IDimensions): IPageInfo {\n\t\tlet scrollPercentage = 0;\n\t\tif (this.enableUnequalChildrenSizes) {\n\t\t\tconst numberOfWrapGroups = Math.ceil(dimensions.itemCount / dimensions.itemsPerWrapGroup);\n\t\t\tlet totalScrolledLength = 0;\n\t\t\tlet defaultScrollLengthPerWrapGroup = dimensions[this._childScrollDim];\n\t\t\tfor (let i = 0; i < numberOfWrapGroups; ++i) {\n\t\t\t\tlet childSize = this.wrapGroupDimensions.maxChildSizePerWrapGroup[i] && this.wrapGroupDimensions.maxChildSizePerWrapGroup[i][this._childScrollDim];\n\t\t\t\tif (childSize) {\n\t\t\t\t\ttotalScrolledLength += childSize;\n\t\t\t\t} else {\n\t\t\t\t\ttotalScrolledLength += defaultScrollLengthPerWrapGroup;\n\t\t\t\t}\n\n\t\t\t\tif (scrollPosition < totalScrolledLength) {\n\t\t\t\t\tscrollPercentage = i / numberOfWrapGroups;\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t}\n\t\t} else {\n\t\t\tscrollPercentage = scrollPosition / dimensions.scrollLength;\n\t\t}\n\n\t\tlet startingArrayIndex_fractional = Math.min(Math.max(scrollPercentage * dimensions.pageCount_fractional, 0), dimensions.pageCount_fractional) * dimensions.itemsPerPage;\n\n\t\tlet maxStart = dimensions.itemCount - dimensions.itemsPerPage - 1;\n\t\tlet arrayStartIndex = Math.min(Math.floor(startingArrayIndex_fractional), maxStart);\n\t\tarrayStartIndex -= arrayStartIndex % dimensions.itemsPerWrapGroup; // round down to start of wrapGroup\n\n\t\tif (this.stripedTable) {\n\t\t\tlet bufferBoundary = 2 * dimensions.itemsPerWrapGroup;\n\t\t\tif (arrayStartIndex % bufferBoundary !== 0) {\n\t\t\t\tarrayStartIndex = Math.max(arrayStartIndex - arrayStartIndex % bufferBoundary, 0);\n\t\t\t}\n\t\t}\n\n\t\tlet arrayEndIndex = Math.ceil(startingArrayIndex_fractional) + dimensions.itemsPerPage - 1;\n\t\tlet endIndexWithinWrapGroup = (arrayEndIndex + 1) % dimensions.itemsPerWrapGroup;\n\t\tif (endIndexWithinWrapGroup > 0) {\n\t\t\tarrayEndIndex += dimensions.itemsPerWrapGroup - endIndexWithinWrapGroup; // round up to end of wrapGroup\n\t\t}\n\n\t\tif (isNaN(arrayStartIndex)) {\n\t\t\tarrayStartIndex = 0;\n\t\t}\n\t\tif (isNaN(arrayEndIndex)) {\n\t\t\tarrayEndIndex = 0;\n\t\t}\n\n\t\tarrayStartIndex = Math.min(Math.max(arrayStartIndex, 0), dimensions.itemCount - 1);\n\t\tarrayEndIndex = Math.min(Math.max(arrayEndIndex, 0), dimensions.itemCount - 1);\n\n\t\tlet bufferSize = this.bufferAmount * dimensions.itemsPerWrapGroup;\n\t\tlet startIndexWithBuffer = Math.min(Math.max(arrayStartIndex - bufferSize, 0), dimensions.itemCount - 1);\n\t\tlet endIndexWithBuffer = Math.min(Math.max(arrayEndIndex + bufferSize, 0), dimensions.itemCount - 1);\n\n\t\treturn {\n\t\t\tstartIndex: arrayStartIndex,\n\t\t\tendIndex: arrayEndIndex,\n\t\t\tstartIndexWithBuffer: startIndexWithBuffer,\n\t\t\tendIndexWithBuffer: endIndexWithBuffer,\n\t\t\tscrollStartPosition: scrollPosition,\n\t\t\tscrollEndPosition: scrollPosition + dimensions.viewportLength,\n\t\t\tmaxScrollPosition: dimensions.maxScrollPosition\n\t\t};\n\t}\n\n\tprotected calculateViewport(): IViewport {\n\t\tlet dimensions = this.calculateDimensions();\n\t\tlet offset = this.getElementsOffset();\n\n\t\tlet scrollStartPosition = this.getScrollStartPosition();\n\t\tif (scrollStartPosition > (dimensions.scrollLength + offset) && !(this.parentScroll instanceof Window)) {\n\t\t\tscrollStartPosition = dimensions.scrollLength;\n\t\t} else {\n\t\t\tscrollStartPosition -= offset;\n\t\t}\n\t\tscrollStartPosition = Math.max(0, scrollStartPosition);\n\n\t\tlet pageInfo = this.calculatePageInfo(scrollStartPosition, dimensions);\n\t\tlet newPadding = this.calculatePadding(pageInfo.startIndexWithBuffer, dimensions);\n\t\tlet newScrollLength = dimensions.scrollLength;\n\n\t\treturn {\n\t\t\tstartIndex: pageInfo.startIndex,\n\t\t\tendIndex: pageInfo.endIndex,\n\t\t\tstartIndexWithBuffer: pageInfo.startIndexWithBuffer,\n\t\t\tendIndexWithBuffer: pageInfo.endIndexWithBuffer,\n\t\t\tpadding: Math.round(newPadding),\n\t\t\tscrollLength: Math.round(newScrollLength),\n\t\t\tscrollStartPosition: pageInfo.scrollStartPosition,\n\t\t\tscrollEndPosition: pageInfo.scrollEndPosition,\n\t\t\tmaxScrollPosition: pageInfo.maxScrollPosition\n\t\t};\n\t}\n}\n\n@NgModule({\n\texports: [VirtualScrollerComponent],\n\tdeclarations: [VirtualScrollerComponent],\n\timports: [CommonModule],\n\tproviders: [\n\t\t{\n\t\t\tprovide: 'virtual-scroller-default-options',\n\t\t\tuseFactory: VIRTUAL_SCROLLER_DEFAULT_OPTIONS_FACTORY\n\t\t}\n\t]\n})\nexport class VirtualScrollerModule { }","function webpackEmptyAsyncContext(req) {\n\t// Here Promise.resolve().then() is used instead of new Promise() to prevent\n\t// uncaught exception popping up in devtools\n\treturn Promise.resolve().then(function() {\n\t\tvar e = new Error(\"Cannot find module '\" + req + \"'\");\n\t\te.code = 'MODULE_NOT_FOUND';\n\t\tthrow e;\n\t});\n}\nwebpackEmptyAsyncContext.keys = function() { return []; };\nwebpackEmptyAsyncContext.resolve = webpackEmptyAsyncContext;\nmodule.exports = webpackEmptyAsyncContext;\nwebpackEmptyAsyncContext.id = \"./src/$$_lazy_route_resource lazy recursive\";","","import { Component, OnInit } from '@angular/core';\n\n@Component({\n selector: 'app-root',\n templateUrl: './app.component.html',\n styleUrls: ['./app.component.css']\n})\nexport class AppComponent implements OnInit {\n title = 'app works!';\n singleSelectionList = [];\n singleSelectionselectedItems = [];\n singleSelectionSettings = {};\n\n basicExampleList = [];\n basicExampleSelectedItems = [];\n basicExampleSettings = {};\n\n selectedItems3 = [];\n dropdownSettings3 = {};\n\n limitSelectionSelectedItems = [];\n limitSelectionSettings = {};\n\n disableModeSelectedItems = [];\n disableModeSettings = {};\n\n placeholderExampleList = [];\n placeholderExampleSelectedItems = [];\n placeholderExampleSettings = {};\n\n resetExampleList = [];\n resetExampleSelectedItems = [];\n resetExampleSettings = {};\n\n groupByExampleList = [];\n groupByExampleSelectedItems = [];\n groupByExampleSettings = {};\n\n templatingExampleList = [];\n templatingExampleSelectedItems = [];\n templatingExampleSettings = {};\n\n constructor(){\n \n }\n ngOnInit(){\n this.singleSelectionList = [\n {\"id\":1,\"itemName\":\"India\"},\n {\"id\":2,\"itemName\":\"Singapore\"},\n {\"id\":3,\"itemName\":\"Australia\"},\n {\"id\":4,\"itemName\":\"Canada\"},\n {\"id\":5,\"itemName\":\"South Korea\"}\n ];\n\n this.singleSelectionselectedItems = [\n {\"id\":2,\"itemName\":\"Singapore\"}];\n this.singleSelectionSettings = {singleSelection: true, text:\"Select Country\"};\n\n this.basicExampleList = [\n {\"id\":1,\"itemName\":\"India\"},\n {\"id\":2,\"itemName\":\"Singapore\"},\n {\"id\":3,\"itemName\":\"Australia\"},\n {\"id\":4,\"itemName\":\"Canada\"},\n {\"id\":5,\"itemName\":\"South Korea\"}, \n {\"id\":6,\"itemName\":\"Brazil\"} \n ];\n \n this.basicExampleSelectedItems = [\n {\"id\":1,\"itemName\":\"India\"},\n {\"id\":2,\"itemName\":\"Singapore\"},\n {\"id\":3,\"itemName\":\"Australia\"},\n {\"id\":4,\"itemName\":\"Canada\"}];\n this.basicExampleSettings = { \n text:\"Select Countries\",\n selectAllText:'Select All',\n unSelectAllText:'UnSelect All',\n enableSearchFilter: true,\n classes:\"myclass custom-class\"\n };\n\n this.selectedItems3 = [\n {\"id\":1,\"itemName\":\"India\"},\n {\"id\":2,\"itemName\":\"Singapore\"},\n {\"id\":4,\"itemName\":\"Canada\"},\n {\"id\":5,\"itemName\":\"South Korea\"}];\n\n \n this.dropdownSettings3 = { singleSelection: false, \n text:\"Select Countries\",\n selectAllText:'Select All',\n unSelectAllText:'UnSelect All',\n enableSearchFilter: true,\n badgeShowLimit: 3\n }; \n this.limitSelectionSelectedItems = [\n {\"id\":1,\"itemName\":\"India\"},\n {\"id\":2,\"itemName\":\"Singapore\"},\n {\"id\":3,\"itemName\":\"Australia\"},\n {\"id\":4,\"itemName\":\"Canada\"}];\n this.limitSelectionSettings = { \n text:\"Select Countries\",\n selectAllText:'Select All',\n unSelectAllText:'UnSelect All',\n enableSearchFilter: false,\n classes:\"myclass custom-class\",\n limitSelection: 4\n };\n this.disableModeSelectedItems = [\n {\"id\":1,\"itemName\":\"India\"},\n {\"id\":2,\"itemName\":\"Singapore\"},\n {\"id\":3,\"itemName\":\"Australia\"},\n {\"id\":4,\"itemName\":\"Canada\"}];\n this.disableModeSettings = { \n text:\"Select Countries\",\n selectAllText:'Select All',\n unSelectAllText:'UnSelect All',\n enableSearchFilter: false,\n classes:\"myclass custom-class\",\n limitSelection: 2,\n disabled: true\n };\n\n this.placeholderExampleList = [\n {\"id\":1,\"itemName\":\"India\"},\n {\"id\":2,\"itemName\":\"Singapore\"},\n {\"id\":3,\"itemName\":\"Australia\"},\n {\"id\":4,\"itemName\":\"Canada\"},\n {\"id\":5,\"itemName\":\"South Korea\"}\n ];\n \n this.placeholderExampleSelectedItems = [\n {\"id\":1,\"itemName\":\"India\"},\n {\"id\":2,\"itemName\":\"Singapore\"},\n {\"id\":3,\"itemName\":\"Australia\"},\n {\"id\":4,\"itemName\":\"Canada\"}];\n this.placeholderExampleSettings = { \n text:\"Select Countries\",\n selectAllText:'Select All',\n unSelectAllText:'UnSelect All',\n enableSearchFilter: true,\n classes:\"myclass custom-class\",\n searchPlaceholderText: \"Custom Placeholder text\"\n };\n this.resetExampleList = [\n {\"id\":1,\"itemName\":\"India\"},\n {\"id\":2,\"itemName\":\"Singapore\"},\n {\"id\":3,\"itemName\":\"Australia\"},\n {\"id\":4,\"itemName\":\"Canada\"},\n {\"id\":5,\"itemName\":\"South Korea\"}\n ];\n \n this.resetExampleSelectedItems = [\n {\"id\":1,\"itemName\":\"India\"},\n {\"id\":2,\"itemName\":\"Singapore\"},\n {\"id\":3,\"itemName\":\"Australia\"},\n {\"id\":4,\"itemName\":\"Canada\"}];\n this.resetExampleSettings = { \n text:\"Select Countries\",\n selectAllText:'Select All',\n unSelectAllText:'UnSelect All',\n enableSearchFilter: false,\n classes:\"myclass custom-class\"\n }; \n this.groupByExampleList = [\n {\"id\":1,\"itemName\":\"India\",\"category\":\"asia\"},\n {\"id\":2,\"itemName\":\"Singapore\",\"category\":\"asia pacific\"},\n {\"id\":3,\"itemName\":\"Germany\",\"category\":\"Europe\"},\n {\"id\":4,\"itemName\":\"France\",\"category\":\"Europe\"},\n {\"id\":5,\"itemName\":\"South Korea\",\"category\":\"asia\"}, \n {\"id\":6,\"itemName\":\"Sweden\",\"category\":\"Europe\"} \n ];\n \n this.groupByExampleSelectedItems = [\n {\"id\":1,\"itemName\":\"India\"},\n {\"id\":2,\"itemName\":\"Singapore\"},\n {\"id\":3,\"itemName\":\"Germany\"},\n {\"id\":4,\"itemName\":\"France\"}];\n this.groupByExampleSettings = { \n text:\"Select Countries\",\n selectAllText:'Select All',\n unSelectAllText:'UnSelect All',\n enableSearchFilter: true,\n classes:\"myclass custom-class\",\n groupBy: \"category\"\n }; \n\n this.groupByExampleSettings = {\nsingleSelection: false,\ntext:\"Select Fields\",\nselectAllText:'Select All',\nunSelectAllText:'UnSelect All',\nsearchPlaceholderText: 'Search Fields',\nenableSearchFilter: true,\nbadgeShowLimit: 5,\ngroupBy:\"category\"\n}; \n\nthis.templatingExampleList = [\n {\"id\":1,\"itemName\":\"India\",\"capital\":\"Delhi\",\"image\":\"http://www.sciencekids.co.nz/images/pictures/flags96/India.jpg\"},\n {\"id\":2,\"itemName\":\"Singapore\", \"capital\":\"Singapore\",\"image\":\"http://www.sciencekids.co.nz/images/pictures/flags96/Singapore.jpg\"},\n {\"id\":3,\"itemName\":\"United Kingdom\", \"capital\":\"London\",\"image\":\"http://www.sciencekids.co.nz/images/pictures/flags96/United_Kingdom.jpg\"},\n {\"id\":4,\"itemName\":\"Canada\",\"capital\":\"Ottawa\",\"image\":\"http://www.sciencekids.co.nz/images/pictures/flags96/Canada.jpg\"},\n {\"id\":5,\"itemName\":\"South Korea\",\"capital\":\"Seoul\",\"image\":\"http://www.sciencekids.co.nz/images/pictures/flags96/South_Korea.jpg\"}, \n {\"id\":6,\"itemName\":\"Brazil\",\"capital\":\"Brasilia\",\"image\":\"http://www.sciencekids.co.nz/images/pictures/flags96/Brazil.jpg\"} \n ];\n \n this.templatingExampleSelectedItems = [\n {\"id\":1,\"itemName\":\"India\"},\n {\"id\":2,\"itemName\":\"Singapore\"},\n {\"id\":3,\"itemName\":\"United Kingdom\"},\n {\"id\":4,\"itemName\":\"Canada\"}];\n this.templatingExampleSettings = { \n text:\"Select Countries\",\n selectAllText:'Select All',\n unSelectAllText:'UnSelect All',\n enableSearchFilter: true,\n classes:\"myclass custom-class\",\n showCheckbox: true\n };\n\n }\n onItemSelect(item:any){\n console.log(item);\n console.log(this.basicExampleSelectedItems);\n }\n OnItemDeSelect(item:any){\n console.log(item);\n console.log(this.basicExampleSelectedItems);\n }\n onSelectAll(items: any){\n console.log(items);\n }\n onDeSelectAll(items: any){\n console.log(items);\n }\n showModel(){\n console.log(this.singleSelectionselectedItems);\n }\n changeData(){\n this.resetExampleSelectedItems = [];\n }\n}\n","import { BrowserModule } from '@angular/platform-browser';\nimport { NgModule } from '@angular/core';\nimport { FormsModule, ReactiveFormsModule } from '@angular/forms';\nimport { HttpClientModule } from '@angular/common/http';\nimport { MockService } from './examples/mock-data';\n\nimport { AppComponent } from './app.component';\nimport { AngularMultiSelectModule } from '../../projects/angular2-multiselect-dropdown-lib/src/lib/multiselect.component';\nimport { AppRouterModule } from './app.router';\nimport { BasicExample } from './examples/basic';\nimport { SingleSelectionExample } from './examples/singleselection';\nimport { GroupByExample } from './examples/groupBy';\nimport { SearchFilterExample } from './examples/searchFilter';\nimport { TemplatingExample } from './examples/templating';\nimport { ResetDropdownExample } from './examples/resetdropdown';\nimport { DisableModeExample } from './examples/disablemode';\nimport {LimitSelectionExample } from './examples/limitselection';\nimport {LimitBadgesExample } from './examples/limitbadges';\nimport { CustomPlaceholderExample } from './examples/customplaceholder';\nimport { StylingExample } from './examples/styling';\nimport { ng2Gist } from './examples/gist';\nimport { TabViewModule } from 'primeng/primeng';\nimport { UsingWithFormExample } from './examples/usingWithForms';\nimport { UsingWithReactiveFormExample } from './examples/usingInReactForms';\nimport { LazyLoadingExample } from './examples/lazyLoading';\nimport { MultipleDropdownsExample } from './examples/multipleDropdowns';\nimport { DynamicDataSetsExample } from './examples/dynamicDataSets';\nimport { ThemingExample } from './examples/theming';\nimport { RemoteDataExample } from './examples/remoteData';\nimport { CustomSearchExample } from './examples/customSearch';\nimport { SearchFilterByOnePropertyExample } from './examples/searchByOneProperty';\nimport {LazyLoadingRemoteDataExample } from './examples/lazyLoadingRemoteData';\nimport {SearchFilterAddItemExample } from './examples/searchFilterAddNewItem';\nimport { EventsExample } from './examples/events';\nimport { HighlightModule } from 'ngx-highlightjs';\nimport { UsingInListExample } from './examples/usingInList';\n\nimport xml from 'highlight.js/lib/languages/xml';\nimport scss from 'highlight.js/lib/languages/scss';\nimport typescript from 'highlight.js/lib/languages/typescript';\n\nexport function hljsLanguages() {\n return [\n {name: 'typescript', func: typescript},\n {name: 'scss', func: scss},\n {name: 'xml', func: xml}\n ];\n}\n\n@NgModule({\n declarations: [\n AppComponent,\n ng2Gist,\n BasicExample,\n SingleSelectionExample,\n GroupByExample,\n SearchFilterExample,\n TemplatingExample,\n ResetDropdownExample,\n DisableModeExample,\n LimitSelectionExample,\n LimitBadgesExample,\n CustomPlaceholderExample,\n StylingExample,\n UsingWithFormExample,\n UsingWithReactiveFormExample,\n LazyLoadingExample,\n MultipleDropdownsExample,\n DynamicDataSetsExample,\n ThemingExample,\n RemoteDataExample,\n CustomSearchExample,\n SearchFilterByOnePropertyExample,\n LazyLoadingRemoteDataExample,\n SearchFilterAddItemExample,\n EventsExample,\n UsingInListExample\n ],\n imports: [\n BrowserModule.withServerTransition({ appId: 'serverApp' }),\n ReactiveFormsModule,\n FormsModule,\n AppRouterModule,\n AngularMultiSelectModule,\n TabViewModule,\n HttpClientModule,\n HighlightModule.forRoot({\n languages: hljsLanguages\n })\n ],\n providers: [MockService],\n bootstrap: [AppComponent]\n})\nexport class AppModule { }\n","import { RouterModule, Routes } from '@angular/router';\nimport { NgModule } from '@angular/core';\n\nimport { AppComponent } from './app.component';\nimport { BasicExample } from './examples/basic';\nimport { SingleSelectionExample } from './examples/singleselection';\nimport { GroupByExample } from './examples/groupBy';\nimport { SearchFilterExample } from './examples/searchFilter';\nimport { TemplatingExample } from './examples/templating';\nimport { ResetDropdownExample } from './examples/resetdropdown';\nimport { DisableModeExample } from './examples/disablemode';\nimport { LimitSelectionExample } from './examples/limitselection';\nimport { LimitBadgesExample } from './examples/limitbadges';\nimport { CustomPlaceholderExample } from './examples/customplaceholder';\nimport { StylingExample } from './examples/styling';\nimport { UsingWithFormExample } from './examples/usingWithForms';\nimport { UsingWithReactiveFormExample } from './examples/usingInReactForms';\nimport { LazyLoadingExample } from './examples/lazyLoading';\nimport { MultipleDropdownsExample } from './examples/multipleDropdowns';\nimport { DynamicDataSetsExample } from './examples/dynamicDataSets';\nimport { ThemingExample } from './examples/theming';\nimport { RemoteDataExample } from './examples/remoteData';\nimport { CustomSearchExample } from './examples/customSearch';\nimport { SearchFilterByOnePropertyExample } from './examples/searchByOneProperty';\nimport {LazyLoadingRemoteDataExample } from './examples/lazyLoadingRemoteData';\nimport {SearchFilterAddItemExample } from './examples/searchFilterAddNewItem';\nimport { EventsExample } from './examples/events';\nimport { UsingInListExample } from './examples/usingInList';\n\nconst appRoutes: Routes = [\n { path: '', redirectTo: '/basic', pathMatch: 'full' },\n { path: 'basic', component: BasicExample },\n { path: 'singleselection', component: SingleSelectionExample },\n { path: 'searchfilter', component: SearchFilterExample },\n { path: 'groupby', component: GroupByExample },\n { path: 'templating', component: TemplatingExample },\n { path: 'dropdownMethods', component: ResetDropdownExample },\n { path: 'disablemode', component: DisableModeExample },\n { path: 'limitselection', component: LimitSelectionExample },\n { path: 'limitbadges', component: LimitBadgesExample },\n { path: 'customplaceholder', component: CustomPlaceholderExample },\n { path: 'styling', component: StylingExample },\n { path: 'usinginform', component: UsingWithFormExample },\n { path: 'usinginreactiveform', component: UsingWithReactiveFormExample },\n { path: 'lazyloading', component: LazyLoadingExample },\n { path: 'multipledropdowns', component: MultipleDropdownsExample },\n { path: 'dynamicdatasets', component: DynamicDataSetsExample },\n { path: 'theming', component: ThemingExample },\n { path: 'remoteData', component: RemoteDataExample },\n { path: 'customSearchAPI', component: CustomSearchExample },\n { path: 'searchFilterByOneProperty', component: SearchFilterByOnePropertyExample },\n { path: 'lazyloadingRemoteData', component: LazyLoadingRemoteDataExample},\n { path: 'searchfilterAddNewItem', component: SearchFilterAddItemExample},\n { path: 'events', component: EventsExample},\n { path: 'usingInList', component: UsingInListExample}\n\n];\n\n\n@NgModule({\n imports: [\n RouterModule.forRoot(appRoutes, { useHash: false })\n ],\n exports: [\n RouterModule\n ]\n\n})\nexport class AppRouterModule { }\n","

{{title}}

\n
\n \n \n
\n

Code

\n\n\n \n \n \n \n \n \n \n \n \n \n \n\n","import { Component, OnInit } from '@angular/core';\nimport { Title, Meta } from '@angular/platform-browser';\n@Component({\n templateUrl: './views/view.html'\n})\nexport class BasicExample implements OnInit {\n\n itemList = [];\n selectedItems = [];\n settings = {};\n\n constructor(public seotitle: Title, public meta: Meta) { \n this.seotitle.setTitle('Basic example');\n this.meta.addTags([\n {name: 'description', content:'Basic example of angular multiselect drodown.'}\n ]);\n }\n ngOnInit() {\n\n this.itemList = [\n { \"countryId\": 1, \"itemName\": \"India\" },\n { \"countryId\": 2, \"itemName\": \"Singapore\" },\n { \"countryId\": 3, \"itemName\": \"Australia\" },\n { \"countryId\": 4, \"itemName\": \"Canada\" },\n { \"countryId\": 5, \"itemName\": \"South Korea\" },\n { \"countryId\": 6, \"itemName\": \"Brazil\" }\n ];\n\n this.selectedItems = [\n { \"countryId\": 1, \"itemName\": \"India\" },\n { \"countryId\": 2, \"itemName\": \"Singapore\" },\n { \"countryId\": 3, \"itemName\": \"Australia\" },\n { \"countryId\": 4, \"itemName\": \"Canada\" },\n { \"countryId\": 5, \"itemName\": \"South Korea\" }];\n\n this.settings = {\n text: \"Select Countries\",\n selectAllText: 'Select All',\n unSelectAllText: 'UnSelect All',\n classes: \"myclass custom-class\",\n primaryKey: \"countryId\"\n };\n }\n onItemSelect(item: any) {\n console.log(item);\n console.log(this.selectedItems);\n }\n OnItemDeSelect(item: any) {\n console.log(item);\n console.log(this.selectedItems);\n }\n onSelectAll(items: any) {\n console.log(items);\n }\n onDeSelectAll(items: any) {\n console.log(items);\n }\n cssgist: boolean = false;\n title: string = \"Basic example\";\n tsgist: string = \"CuppaLabs/ee72fbc7b21dad7e4e7664c5b1553235\";\n htmlgist: string = \"CuppaLabs/eb78d42ab7971fda6493586e329bfdb8\";\n tstitle: string = \"basic.ts\"\n htmltitle: string = \"basic.html\";\n}\n","

\n {{title}}

\n
\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
\n

Code

\n\n\n \n \n \n \n \n \n \n \n \n \n \n","import { Component, OnInit } from '@angular/core';\nimport { HttpClient } from '@angular/common/http';\n\n@Component({\n templateUrl: './views/customSearch.html'\n})\nexport class CustomSearchExample implements OnInit {\n\n itemList: any = [];\n selectedItems = [];\n settings = {};\n\n constructor(private http: HttpClient) { }\n ngOnInit() {\n\n this.settings = {\n text: \"Select Countries\",\n selectAllText: 'Select All',\n unSelectAllText: 'UnSelect All',\n classes: \"myclass custom-class\",\n primaryKey: \"alpha3Code\",\n labelKey: \"name\",\n noDataLabel: \"Search Countries...\",\n enableSearchFilter: true,\n searchBy: ['name', 'capital']\n };\n }\n onItemSelect(item: any) {\n console.log(item);\n console.log(this.selectedItems);\n }\n OnItemDeSelect(item: any) {\n console.log(item);\n console.log(this.selectedItems);\n }\n onSelectAll(items: any) {\n console.log(items);\n }\n onDeSelectAll(items: any) {\n console.log(items);\n }\n onSearch(evt: any) {\n console.log(evt.target.value);\n this.itemList = [];\n this.http.get('https://restcountries.eu/rest/v2/name/'+evt.target.value+'?fulltext=true')\n .subscribe(res => {\n console.log(res);\n this.itemList = res;\n }, error => {\n\n });\n }\n cssgist: boolean = false;\n title: string = \"Custom Search / Search from API\";\n tsgist: string = \"CuppaLabs/1bab5ecbbb22727eb0afe49848a454f0\";\n htmlgist: string = \"CuppaLabs/7f0d8ea9f9cfe9eec2cc1699affd2c14\";\n tstitle: string = \"customSearch.ts\"\n htmltitle: string = \"customSearch.html\";\n}\n","import { Component, OnInit } from '@angular/core';\n\n@Component({\n templateUrl: './views/view.html'\n})\nexport class CustomPlaceholderExample implements OnInit {\n\n itemList = [];\n selectedItems = [];\n settings = {};\n\n constructor() {\n\n }\n ngOnInit() {\n\n\n this.itemList = [\n { \"id\": 1, \"itemName\": \"India\" },\n { \"id\": 2, \"itemName\": \"Singapore\" },\n { \"id\": 3, \"itemName\": \"Australia\" },\n { \"id\": 4, \"itemName\": \"Canada\" },\n { \"id\": 5, \"itemName\": \"South Korea\" },\n { \"id\": 6, \"itemName\": \"Brazil\" }\n ];\n\n this.selectedItems = [\n { \"id\": 1, \"itemName\": \"India\" },\n { \"id\": 2, \"itemName\": \"Singapore\" },\n { \"id\": 3, \"itemName\": \"Australia\" },\n { \"id\": 4, \"itemName\": \"Canada\" }];\n this.settings = {\n text: \"Select Countries\",\n selectAllText: 'Select All',\n unSelectAllText: 'UnSelect All',\n enableSearchFilter: true,\n classes: \"myclass custom-class\",\n searchPlaceholderText: \"Custom Placeholder text\"\n };\n }\n onItemSelect(item: any) {\n console.log(item);\n console.log(this.selectedItems);\n }\n OnItemDeSelect(item: any) {\n console.log(item);\n console.log(this.selectedItems);\n }\n onSelectAll(items: any) {\n console.log(items);\n }\n onDeSelectAll(items: any) {\n console.log(items);\n }\n cssgist: boolean = false;\n title: string = \"Custom search placeholder\";\n tsgist: string = \"CuppaLabs/48c087b6c0b4381d5bae1c689cc0ee3e\";\n htmlgist: string = \"CuppaLabs/eb78d42ab7971fda6493586e329bfdb8\";\n tstitle: string = \"customPlaceholder.ts\"\n htmltitle: string = \"customPlaceholder.html\";\n}\n","

{{title}}

\n
\n \n
\n
\n
\n \n
\n
\n \n
\n
\n

Code

\n\n\n \n \n \n \n \n \n \n \n \n \n \n\n","import { Component, OnInit } from '@angular/core';\n\n@Component({\n templateUrl: './views/disableMode.html'\n})\nexport class DisableModeExample implements OnInit {\n\n itemList = [];\n selectedItems = [];\n settings: any = {};\n\n constructor() {\n\n }\n ngOnInit() {\n\n\n this.itemList = [\n { \"id\": 1, \"itemName\": \"India\" },\n { \"id\": 2, \"itemName\": \"Singapore\" },\n { \"id\": 3, \"itemName\": \"Australia\" },\n { \"id\": 4, \"itemName\": \"Canada\" },\n { \"id\": 5, \"itemName\": \"South Korea\" },\n { \"id\": 6, \"itemName\": \"Brazil\" }\n ];\n\n this.selectedItems = [\n { \"id\": 1, \"itemName\": \"India\" },\n { \"id\": 2, \"itemName\": \"Singapore\" },\n { \"id\": 3, \"itemName\": \"Australia\" },\n { \"id\": 4, \"itemName\": \"Canada\" }];\n this.settings = {\n text: \"Select Countries\",\n selectAllText: 'Select All',\n unSelectAllText: 'UnSelect All',\n enableSearchFilter: false,\n classes: \"myclass custom-class\",\n disabled: true\n };\n }\n onItemSelect(item: any) {\n console.log(item);\n console.log(this.selectedItems);\n }\n OnItemDeSelect(item: any) {\n console.log(item);\n console.log(this.selectedItems);\n }\n onSelectAll(items: any) {\n console.log(items);\n }\n onDeSelectAll(items: any) {\n console.log(items);\n }\n showModel() {\n console.log(this.selectedItems);\n }\n changeData() {\n this.selectedItems = [];\n }\n disable() {\n this.settings = {\n text: \"Select Countries\",\n selectAllText: 'Select All',\n unSelectAllText: 'UnSelect All',\n enableSearchFilter: false,\n classes: \"myclass custom-class\",\n disabled: true\n };\n }\n enable() {\n this.settings = {\n text: \"Select Countries\",\n selectAllText: 'Select All',\n unSelectAllText: 'UnSelect All',\n enableSearchFilter: false,\n classes: \"myclass custom-class\",\n disabled: false\n };\n }\n toggleDisable() {\n console.log(this.settings);\n this.settings = {\n text: \"Select Countries\",\n selectAllText: 'Select All',\n unSelectAllText: 'UnSelect All',\n enableSearchFilter: false,\n classes: \"myclass custom-class\",\n limitSelection: 2,\n disabled: false\n };\n }\n cssgist: boolean = false;\n title: string = \"Disable mode\";\n tsgist: string = \"CuppaLabs/96f799302bdfa08e11b4420c86c1d720\";\n htmlgist: string = \"CuppaLabs/eb78d42ab7971fda6493586e329bfdb8\";\n tstitle: string = \"disableMode.ts\"\n htmltitle: string = \"disableMode.html\";\n}\n","

{{title}}

\n
\n \n
\n\n\n\n

Code

\n\n\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n\n","import { Component, OnInit } from '@angular/core';\nimport { MockService } from './mock-data';\n\n@Component({\n templateUrl: './views/dynamicData.html'\n})\nexport class DynamicDataSetsExample implements OnInit {\n\n itemList = [];\n selectedItems = [];\n settings = {};\n\n constructor(private mockService: MockService) { }\n ngOnInit() {\n\n this.settings = {\n text: \"Select Countries\",\n selectAllText: 'Select All',\n unSelectAllText: 'UnSelect All',\n classes: \"myclass custom-class\"\n };\n this.loadDataSet2();\n }\n onItemSelect(item: any) {\n console.log(item);\n console.log(this.selectedItems);\n }\n OnItemDeSelect(item: any) {\n console.log(item);\n console.log(this.selectedItems);\n }\n onSelectAll(items: any) {\n console.log(items);\n }\n onDeSelectAll(items: any) {\n console.log(items);\n }\n loadDataSet1() {\n this.settings = {\n text: \"Select Fruits\",\n selectAllText: 'Select All',\n unSelectAllText: 'UnSelect All',\n classes: \"myclass custom-class\"\n };\n this.selectedItems = [];\n this.itemList = [];\n const tempArr = this.mockService.getFruits();\n for (let i = 0; i < tempArr.length; ++i) {\n this.itemList.push(tempArr[i]);\n }\n }\n loadDataSet2() {\n this.settings = {\n text: \"Select Countries\",\n selectAllText: 'Select All',\n unSelectAllText: 'UnSelect All',\n classes: \"myclass custom-class\"\n };\n this.selectedItems = [];\n this.itemList = [];\n const tempArr = this.mockService.getCountries();\n for (let i = 0; i < tempArr.length; ++i) {\n this.itemList.push(tempArr[i]);\n }\n }\n cssgist: boolean = false;\n title: string = \"Dynamic datasets loading\";\n tsgist: string = \"CuppaLabs/302d580f91bc40611b2474558d98fbf2\";\n htmlgist: string = \"CuppaLabs/eb78d42ab7971fda6493586e329bfdb8\";\n mockgist: string = \"CuppaLabs/b3e947ec83710307a3b8680a2ff89693\";\n tstitle: string = \"dynamicData.ts\"\n htmltitle: string = \"dynamicData.html\";\n mocktitle: string = \"mock-data.ts\";\n}\n","

{{title}}

\n
\n
\n
\n
\n
\n \n \n\n
\n
\n
\n
\n
\n
\n
\n
On Select
\n \n
\n
\n
On Un-select
\n \n
\n
\n
On Open
\n \n
\n
\n
On Close
\n \n
\n
\n
On Select All
\n \n
\n
\n
On Un-Select All
\n \n
\n
\n
\n\n

Code

\n\n\n \n \n \n \n \n \n","import { Component, OnInit } from '@angular/core';\n\n@Component({\n templateUrl: './views/events.html'\n})\nexport class EventsExample implements OnInit {\n\n itemList = [];\n selectedItems = [];\n settings = {};\n selectedItemString: string = '';\n unSelectedItemString: string = '';\n openString: string = '';\n closeString: string = '';\n selectAllString: string = '';\n unSelectAllString: string = '';\n\n constructor() { }\n ngOnInit() {\n\n this.itemList = [\n { \"countryId\": 1, \"itemName\": \"India\" },\n { \"countryId\": 2, \"itemName\": \"Singapore\" },\n { \"countryId\": 3, \"itemName\": \"Australia\" },\n { \"countryId\": 4, \"itemName\": \"Canada\" },\n { \"countryId\": 5, \"itemName\": \"South Korea\" },\n { \"countryId\": 6, \"itemName\": \"Brazil\" }\n ];\n\n this.selectedItems = [\n { \"countryId\": 1, \"itemName\": \"India\" },\n { \"countryId\": 2, \"itemName\": \"Singapore\" },\n { \"countryId\": 3, \"itemName\": \"Australia\" },\n { \"countryId\": 4, \"itemName\": \"Canada\" }];\n\n this.settings = {\n text: \"Select Countries\",\n selectAllText: 'Select All',\n unSelectAllText: 'UnSelect All',\n classes: \"myclass custom-class\",\n primaryKey: \"countryId\"\n };\n }\n onItemSelect(item: any) {\n console.log(item);\n this.selectedItemString = JSON.stringify(item);\n console.log(this.selectedItems);\n }\n OnItemDeSelect(item: any) {\n console.log(item);\n this.unSelectedItemString = JSON.stringify(item);\n console.log(this.selectedItems);\n }\n onOpen(evt: any){\n this.openString = \"Dropdown opened: \"+evt;\n }\n onClose(evt: any){\n this.closeString = \"Dropdown opened: \"+evt;\n }\n onSelectAll(items: any) {\n console.log(items);\n this.selectAllString = JSON.stringify(items);\n this.unSelectAllString = \"\";\n }\n onDeSelectAll(items: any) {\n console.log(items);\n this.selectAllString = '';\n this.unSelectAllString = \"all items un-selected\";\n }\n cssgist: boolean = false;\n title: string = \"Events\";\n tsgist: string = \"CuppaLabs/ee72fbc7b21dad7e4e7664c5b1553235\";\n htmlgist: string = \"CuppaLabs/eb78d42ab7971fda6493586e329bfdb8\";\n tstitle: string = \"basic.ts\"\n htmltitle: string = \"basic.html\";\n}\n","\n \n ","import {Component, Input, ViewChild, ElementRef, AfterViewInit} from '@angular/core';\n\n@Component({\n selector: 'ng2-gist',\n template:`\n \n `,\n styleUrls: []\n})\n\nexport class ng2Gist implements AfterViewInit {\n @ViewChild('iframe', {static: true}) iframe:ElementRef;\n @Input() gistId;\n\n constructor() { }\n\n ngAfterViewInit() {\n this.iframe.nativeElement.id = 'gist-' + this.gistId;\n let doc = this.iframe.nativeElement.contentDocument || this.iframe.nativeElement.contentElement.contentWindow;\n let content = `\n \n \n \n \n \n \n \n \n `;\n doc.open();\n doc.write(content);\n doc.close();\n }\n}","

{{title}}

\n
\n \n
\n\n\n\n

Code

\n\n\n \n \n \n \n \n \n \n \n \n \n \n\n","import { Component, OnInit } from '@angular/core';\n\n@Component({\n templateUrl: './views/groupBy.html'\n})\nexport class GroupByExample implements OnInit {\n\n itemList = [];\n selectedItems = [];\n settings = {};\n\n constructor() {\n\n }\n ngOnInit() {\n\n\n this.itemList = [\n { \"id\": 1, \"itemName\": \"India\", \"category\": \"asia\" },\n { \"id\": 2, \"itemName\": \"Singapore\", \"category\": \"asia pacific\" },\n { \"id\": 3, \"itemName\": \"Germany\", \"category\": \"Europe\" },\n { \"id\": 4, \"itemName\": \"France\", \"category\": \"Europe\" },\n { \"id\": 5, \"itemName\": \"South Korea\", \"category\": \"asia\" },\n { \"id\": 6, \"itemName\": \"Sweden\", \"category\": \"Europe\" }\n ];\n\n this.selectedItems = [\n { \"id\": 1, \"itemName\": \"India\", \"category\": \"asia\" },\n { \"id\": 5, \"itemName\": \"South Korea\", \"category\": \"asia\" }\n ]\n this.settings = {\n singleSelection: false,\n text: \"Select Fields\",\n selectAllText: 'Select All',\n unSelectAllText: 'UnSelect All',\n searchPlaceholderText: 'Search Fields',\n enableSearchFilter: true,\n groupBy: \"category\",\n selectGroup: true,\n searchBy: [\"itemName\"]\n };\n }\n onItemSelect(item: any) {\n console.log(item);\n console.log(this.selectedItems);\n }\n OnItemDeSelect(item: any) {\n console.log(item);\n console.log(this.selectedItems);\n }\n onSelectAll(items: any) {\n console.log(items);\n }\n onDeSelectAll(items: any) {\n console.log(items);\n }\n onGroupSelect(selectedGroupItem){\n console.log(selectedGroupItem);\n }\n onGroupDeSelect(deselectedGroupItem){\n console.log(deselectedGroupItem);\n }\n onChange(e:any){\nconsole.log(e)\n }\n loadDataSet1(){\n this.selectedItems = [];\n this.itemList = [ { \"id\": 1, \"itemName\": \"Apple\", \"category\": \"fruits\" },\n { \"id\": 2, \"itemName\": \"Banana\", \"category\": \"fruits\" },\n { \"id\": 5, \"itemName\": \"Tomatoe\", \"category\": \"vegetables\" },\n { \"id\": 6, \"itemName\": \"Potatoe\", \"category\": \"vegetables\" }];\n }\n loadDataSet2(){\n this.selectedItems = [];\n this.itemList = [\n { \"id\": 1, \"itemName\": \"India\", \"category\": \"asia\" },\n { \"id\": 2, \"itemName\": \"Singapore\", \"category\": \"asia pacific\" },\n { \"id\": 3, \"itemName\": \"Germany\", \"category\": \"Europe\" },\n { \"id\": 4, \"itemName\": \"France\", \"category\": \"Europe\" },\n { \"id\": 5, \"itemName\": \"South Korea\", \"category\": \"asia\" },\n { \"id\": 6, \"itemName\": \"Sweden\", \"category\": \"Europe\" }\n ];\n }\n cssgist: boolean = false;\n title: string = \"Group By\";\n tsgist: string = \"CuppaLabs/f6c1328ade3201042a4b4d268a30ad8c\";\n htmlgist: string = \"CuppaLabs/eb78d42ab7971fda6493586e329bfdb8\";\n tstitle: string = \"groupBy.ts\"\n htmltitle: string = \"groupBy.html\";\n}\n","

{{title}}

\n
\n
\n \n
\nTotal Records : {{itemList.length}}\n
\n
\n \n
\n
\n

Code

\n\n\n \n \n \n \n \n \n \n \n \n \n \n\n","import { Component, OnInit } from '@angular/core';\n\n@Component({\n templateUrl: './views/lazyLoading.html'\n})\nexport class LazyLoadingExample implements OnInit {\n\n itemList = [];\n selectedItems = [];\n settings = {};\n public categories: any = [\"Indian\", \"American\", \"Canadian\", \"Chinese\"];\n public namesList:any[] = [\"Smith\",\"Johnson\",\"Williams\",\"Brown\",\"Jones\",\"Miller\",\"Davis\",\"Garcia\",\"Rodriguez\",\"Wilson\",\"Martinez\",\"Anderson\",\"Taylor\",\"Thomas\",\"Hernandez\",\"Moore\",\"Martin\",\"Jackson\",\"Thompson\",\"White\",\"Lopez\",\"Lee\",\"Gonzalez\",\"Harris\",\"Clark\",\"Lewis\",\"Robinson\",\"Walker\",\"Perez\",\"Hall\",\"Young\",\"Allen\",\"Sanchez\",\"Wright\",\"King\",\"Scott\",\"Green\",\"Baker\",\"Adams\",\"Nelson\",\"Hill\",\"Ramirez\",\"Campbell\",\"Mitchell\",\"Roberts\",\"Carter\",\"Phillips\",\"Evans\",\"Turner\",\"Torres\",\"Parker\",\"Collins\",\"Edwards\",\"Stewart\",\"Flores\",\"Morris\",\"Nguyen\",\"Murphy\",\"Rivera\",\"Cook\",\"Rogers\",\"Morgan\",\"Peterson\",\"Cooper\",\"Reed\",\"Bailey\",\"Bell\",\"Gomez\",\"Kelly\",\"Howard\",\"Ward\",\"Cox\",\"Diaz\",\"Richardson\",\"Wood\",\"Watson\",\"Brooks\",\"Bennett\",\"Gray\",\"James\",\"Reyes\",\"Cruz\",\"Hughes\",\"Price\",\"Myers\",\"Long\",\"Foster\",\"Sanders\",\"Ross\",\"Morales\",\"Powell\",\"Sullivan\",\"Russell\",\"Ortiz\",\"Jenkins\",\"Gutierrez\",\"Perry\",\"Butler\",\"Barnes\",\"Fisher\",\"Henderson\",\"Coleman\",\"Simmons\",\"Patterson\",\"Jordan\",\"Reynolds\",\"Hamilton\",\"Graham\",\"Kim\",\"Gonzales\",\"Alexander\",\"Ramos\",\"Wallace\",\"Griffin\",\"West\",\"Cole\",\"Hayes\",\"Chavez\",\"Gibson\",\"Bryant\",\"Ellis\",\"Stevens\",\"Murray\",\"Ford\",\"Marshall\",\"Owens\",\"Mcdonald\",\"Harrison\",\"Ruiz\",\"Kennedy\",\"Wells\",\"Alvarez\",\"Woods\",\"Mendoza\",\"Castillo\",\"Olson\",\"Webb\",\"Washington\",\"Tucker\",\"Freeman\",\"Burns\",\"Henry\",\"Vasquez\",\"Snyder\",\"Simpson\",\"Crawford\",\"Jimenez\",\"Porter\",\"Mason\",\"Shaw\",\"Gordon\",\"Wagner\",\"Hunter\",\"Romero\",\"Hicks\",\"Dixon\",\"Hunt\",\"Palmer\",\"Robertson\",\"Black\",\"Holmes\",\"Stone\",\"Meyer\",\"Boyd\",\"Mills\",\"Warren\",\"Fox\",\"Rose\",\"Rice\",\"Moreno\",\"Schmidt\",\"Patel\",\"Ferguson\",\"Nichols\",\"Herrera\",\"Medina\",\"Ryan\",\"Fernandez\",\"Weaver\",\"Daniels\",\"Stephens\",\"Gardner\",\"Payne\",\"Kelley\",\"Dunn\",\"Pierce\",\"Arnold\",\"Tran\",\"Spencer\",\"Peters\",\"Hawkins\",\"Grant\",\"Hansen\",\"Castro\",\"Hoffman\",\"Hart\",\"Elliott\",\"Cunningham\",\"Knight\",\"Bradley\",\"Carroll\",\"Hudson\",\"Duncan\",\"Armstrong\",\"Berry\",\"Andrews\",\"Johnston\",\"Ray\",\"Lane\",\"Riley\",\"Carpenter\",\"Perkins\",\"Aguilar\",\"Silva\",\"Richards\",\"Willis\",\"Matthews\",\"Chapman\",\"Lawrence\",\"Garza\",\"Vargas\",\"Watkins\",\"Wheeler\",\"Larson\",\"Carlson\",\"Harper\",\"George\",\"Greene\",\"Burke\",\"Guzman\",\"Morrison\",\"Munoz\",\"Jacobs\",\"Obrien\",\"Lawson\",\"Franklin\",\"Lynch\",\"Bishop\",\"Carr\",\"Salazar\",\"Austin\",\"Mendez\",\"Gilbert\",\"Jensen\",\"Williamson\",\"Montgomery\",\"Harvey\",\"Oliver\",\"Howell\",\"Dean\",\"Hanson\",\"Weber\",\"Garrett\",\"Sims\",\"Burton\",\"Fuller\",\"Soto\",\"Mccoy\",\"Welch\",\"Chen\",\"Schultz\",\"Walters\",\"Reid\",\"Fields\",\"Walsh\",\"Little\",\"Fowler\",\"Bowman\",\"Davidson\",\"May\",\"Day\",\"Schneider\",\"Newman\",\"Brewer\",\"Lucas\",\"Holland\",\"Wong\",\"Banks\",\"Santos\",\"Curtis\",\"Pearson\",\"Delgado\",\"Valdez\",\"Pena\",\"Rios\",\"Douglas\",\"Sandoval\",\"Barrett\",\"Hopkins\",\"Keller\",\"Guerrero\",\"Stanley\",\"Bates\",\"Alvarado\",\"Beck\",\"Ortega\",\"Wade\",\"Estrada\",\"Contreras\",\"Barnett\",\"Caldwell\",\"Santiago\",\"Lambert\",\"Powers\",\"Chambers\",\"Nunez\",\"Craig\",\"Leonard\",\"Lowe\",\"Rhodes\",\"Byrd\",\"Gregory\",\"Shelton\",\"Frazier\",\"Becker\",\"Maldonado\",\"Fleming\",\"Vega\",\"Sutton\",\"Cohen\",\"Jennings\",\"Parks\",\"Mcdaniel\",\"Watts\",\"Barker\",\"Norris\",\"Vaughn\",\"Vazquez\",\"Holt\",\"Schwartz\",\"Steele\",\"Benson\",\"Neal\",\"Dominguez\",\"Horton\",\"Terry\",\"Wolfe\",\"Hale\",\"Lyons\",\"Graves\",\"Haynes\",\"Miles\",\"Park\",\"Warner\",\"Padilla\",\"Bush\",\"Thornton\",\"Mccarthy\",\"Mann\",\"Zimmerman\",\"Erickson\",\"Fletcher\",\"Mckinney\",\"Page\",\"Dawson\",\"Joseph\",\"Marquez\",\"Reeves\",\"Klein\",\"Espinoza\",\"Baldwin\",\"Moran\",\"Love\",\"Robbins\",\"Higgins\",\"Ball\",\"Cortez\",\"Le\",\"Griffith\",\"Bowen\",\"Sharp\",\"Cummings\",\"Ramsey\",\"Hardy\",\"Swanson\",\"Barber\",\"Acosta\",\"Luna\",\"Chandler\",\"Blair\",\"Daniel\",\"Cross\",\"Simon\",\"Dennis\",\"Oconnor\",\"Quinn\",\"Gross\",\"Navarro\",\"Moss\",\"Fitzgerald\",\"Doyle\",\"Mclaughlin\",\"Rojas\",\"Rodgers\",\"Stevenson\",\"Singh\",\"Yang\",\"Figueroa\",\"Harmon\",\"Newton\",\"Paul\",\"Manning\",\"Garner\",\"Mcgee\",\"Reese\",\"Francis\",\"Burgess\",\"Adkins\",\"Goodman\",\"Curry\",\"Brady\",\"Christensen\",\"Potter\",\"Walton\",\"Goodwin\",\"Mullins\",\"Molina\",\"Webster\",\"Fischer\",\"Campos\",\"Avila\",\"Sherman\",\"Todd\",\"Chang\",\"Blake\",\"Malone\",\"Wolf\",\"Hodges\",\"Juarez\",\"Gill\",\"Farmer\",\"Hines\",\"Gallagher\",\"Duran\",\"Hubbard\",\"Cannon\",\"Miranda\",\"Wang\",\"Saunders\",\"Tate\",\"Mack\",\"Hammond\",\"Carrillo\",\"Townsend\",\"Wise\",\"Ingram\",\"Barton\",\"Mejia\",\"Ayala\",\"Schroeder\",\"Hampton\",\"Rowe\",\"Parsons\",\"Frank\",\"Waters\",\"Strickland\",\"Osborne\",\"Maxwell\",\"Chan\",\"Deleon\",\"Norman\",\"Harrington\",\"Casey\",\"Patton\",\"Logan\",\"Bowers\",\"Mueller\",\"Glover\",\"Floyd\",\"Hartman\",\"Buchanan\",\"Cobb\",\"French\",\"Kramer\",\"Mccormick\",\"Clarke\",\"Tyler\",\"Gibbs\",\"Moody\",\"Conner\",\"Sparks\",\"Mcguire\",\"Leon\",\"Bauer\",\"Norton\",\"Pope\",\"Flynn\",\"Hogan\",\"Robles\",\"Salinas\",\"Yates\",\"Lindsey\",\"Lloyd\",\"Marsh\",\"Mcbride\",\"Owen\",\"Solis\",\"Pham\",\"Lang\",\"Pratt\",\"Lara\",\"Brock\",\"Ballard\",\"Trujillo\",\"Shaffer\",\"Drake\",\"Roman\",\"Aguirre\",\"Morton\",\"Stokes\",\"Lamb\",\"Pacheco\",\"Patrick\",\"Cochran\",\"Shepherd\",\"Cain\",\"Burnett\",\"Hess\",\"Li\",\"Cervantes\",\"Olsen\",\"Briggs\",\"Ochoa\",\"Cabrera\",\"Velasquez\",\"Montoya\",\"Roth\",\"Meyers\",\"Cardenas\",\"Fuentes\",\"Weiss\",\"Hoover\",\"Wilkins\",\"Nicholson\",\"Underwood\",\"Short\",\"Carson\",\"Morrow\",\"Colon\",\"Holloway\",\"Summers\",\"Bryan\",\"Petersen\",\"Mckenzie\",\"Serrano\",\"Wilcox\",\"Carey\",\"Clayton\",\"Poole\",\"Calderon\",\"Gallegos\",\"Greer\",\"Rivas\",\"Guerra\",\"Decker\",\"Collier\",\"Wall\",\"Whitaker\",\"Bass\",\"Flowers\",\"Davenport\",\"Conley\",\"Houston\",\"Huff\",\"Copeland\",\"Hood\",\"Monroe\",\"Massey\",\"Roberson\",\"Combs\",\"Franco\",\"Larsen\",\"Pittman\",\"Randall\",\"Skinner\",\"Wilkinson\",\"Kirby\",\"Cameron\",\"Bridges\",\"Anthony\",\"Richard\",\"Kirk\",\"Bruce\",\"Singleton\",\"Mathis\",\"Bradford\",\"Boone\",\"Abbott\",\"Charles\",\"Allison\",\"Sweeney\",\"Atkinson\",\"Horn\",\"Jefferson\",\"Rosales\",\"York\",\"Christian\",\"Phelps\",\"Farrell\",\"Castaneda\",\"Nash\",\"Dickerson\",\"Bond\",\"Wyatt\",\"Foley\",\"Chase\",\"Gates\",\"Vincent\",\"Mathews\",\"Hodge\",\"Garrison\",\"Trevino\",\"Villarreal\",\"Heath\",\"Dalton\",\"Valencia\",\"Callahan\",\"Hensley\",\"Atkins\",\"Huffman\",\"Roy\",\"Boyer\",\"Shields\",\"Lin\",\"Hancock\",\"Grimes\",\"Glenn\",\"Cline\",\"Delacruz\",\"Camacho\",\"Dillon\",\"Parrish\",\"Oneill\",\"Melton\",\"Booth\",\"Kane\",\"Berg\",\"Harrell\",\"Pitts\",\"Savage\",\"Wiggins\",\"Brennan\",\"Salas\",\"Marks\",\"Russo\",\"Sawyer\",\"Baxter\",\"Golden\",\"Hutchinson\",\"Liu\",\"Walter\",\"Mcdowell\",\"Wiley\",\"Rich\",\"Humphrey\",\"Johns\",\"Koch\",\"Suarez\",\"Hobbs\",\"Beard\",\"Gilmore\",\"Ibarra\",\"Keith\",\"Macias\",\"Khan\",\"Andrade\",\"Ware\",\"Stephenson\",\"Henson\",\"Wilkerson\",\"Dyer\",\"Mcclure\",\"Blackwell\",\"Mercado\",\"Tanner\",\"Eaton\",\"Clay\",\"Barron\",\"Beasley\",\"Oneal\",\"Preston\",\"Small\",\"Wu\",\"Zamora\",\"Macdonald\",\"Vance\",\"Snow\",\"Mcclain\",\"Stafford\",\"Orozco\",\"Barry\",\"English\",\"Shannon\",\"Kline\",\"Jacobson\",\"Woodard\",\"Huang\",\"Kemp\",\"Mosley\",\"Prince\",\"Merritt\",\"Hurst\",\"Villanueva\",\"Roach\",\"Nolan\",\"Lam\",\"Yoder\",\"Mccullough\",\"Lester\",\"Santana\",\"Valenzuela\",\"Winters\",\"Barrera\",\"Leach\",\"Orr\",\"Berger\",\"Mckee\",\"Strong\",\"Conway\",\"Stein\",\"Whitehead\",\"Bullock\",\"Escobar\",\"Knox\",\"Meadows\",\"Solomon\",\"Velez\",\"Odonnell\",\"Kerr\",\"Stout\",\"Blankenship\",\"Browning\",\"Kent\",\"Lozano\",\"Bartlett\",\"Pruitt\",\"Buck\",\"Barr\",\"Gaines\",\"Durham\",\"Gentry\",\"Mcintyre\",\"Sloan\",\"Melendez\",\"Rocha\",\"Herman\",\"Sexton\",\"Moon\",\"Hendricks\",\"Rangel\",\"Stark\",\"Lowery\",\"Hardin\",\"Hull\",\"Sellers\",\"Ellison\",\"Calhoun\",\"Gillespie\",\"Mora\",\"Knapp\",\"Mccall\",\"Morse\",\"Dorsey\",\"Weeks\",\"Nielsen\",\"Livingston\",\"Leblanc\",\"Mclean\",\"Bradshaw\",\"Glass\",\"Middleton\",\"Buckley\",\"Schaefer\",\"Frost\",\"Howe\",\"House\",\"Mcintosh\",\"Ho\",\"Pennington\",\"Reilly\",\"Hebert\",\"Mcfarland\",\"Hickman\",\"Noble\",\"Spears\",\"Conrad\",\"Arias\",\"Galvan\",\"Velazquez\",\"Huynh\",\"Frederick\",\"Randolph\",\"Cantu\",\"Fitzpatrick\",\"Mahoney\",\"Peck\",\"Villa\",\"Michael\",\"Donovan\",\"Mcconnell\",\"Walls\",\"Boyle\",\"Mayer\",\"Zuniga\",\"Giles\",\"Pineda\",\"Pace\",\"Hurley\",\"Mays\",\"Mcmillan\",\"Crosby\",\"Ayers\",\"Case\",\"Bentley\",\"Shepard\",\"Everett\",\"Pugh\",\"David\",\"Mcmahon\",\"Dunlap\",\"Bender\",\"Hahn\",\"Harding\",\"Acevedo\",\"Raymond\",\"Blackburn\",\"Duffy\",\"Landry\",\"Dougherty\",\"Bautista\",\"Shah\",\"Potts\",\"Arroyo\",\"Valentine\",\"Meza\",\"Gould\",\"Vaughan\",\"Fry\",\"Rush\",\"Avery\",\"Herring\",\"Dodson\",\"Clements\",\"Sampson\",\"Tapia\",\"Bean\",\"Lynn\",\"Crane\",\"Farley\",\"Cisneros\",\"Benton\",\"Ashley\",\"Mckay\",\"Finley\",\"Best\",\"Blevins\",\"Friedman\",\"Moses\",\"Sosa\",\"Blanchard\",\"Huber\",\"Frye\",\"Krueger\",\"Bernard\",\"Rosario\",\"Rubio\",\"Mullen\",\"Benjamin\",\"Haley\",\"Chung\",\"Moyer\",\"Choi\",\"Horne\",\"Yu\",\"Woodward\",\"Ali\",\"Nixon\",\"Hayden\",\"Rivers\",\"Estes\",\"Mccarty\",\"Richmond\",\"Stuart\",\"Maynard\",\"Brandt\",\"Oconnell\",\"Hanna\",\"Sanford\",\"Sheppard\",\"Church\",\"Burch\",\"Levy\",\"Rasmussen\",\"Coffey\",\"Ponce\",\"Faulkner\",\"Donaldson\",\"Schmitt\",\"Novak\",\"Costa\",\"Montes\",\"Booker\",\"Cordova\",\"Waller\",\"Arellano\",\"Maddox\",\"Mata\",\"Bonilla\",\"Stanton\",\"Compton\",\"Kaufman\",\"Dudley\",\"Mcpherson\",\"Beltran\",\"Dickson\",\"Mccann\",\"Villegas\",\"Proctor\",\"Hester\",\"Cantrell\",\"Daugherty\",\"Cherry\",\"Bray\",\"Davila\",\"Rowland\",\"Levine\",\"Madden\",\"Spence\",\"Good\",\"Irwin\",\"Werner\",\"Krause\",\"Petty\",\"Whitney\",\"Baird\",\"Hooper\",\"Pollard\",\"Zavala\",\"Jarvis\",\"Holden\",\"Haas\",\"Hendrix\",\"Mcgrath\",\"Bird\",\"Lucero\",\"Terrell\",\"Riggs\",\"Joyce\",\"Mercer\",\"Rollins\",\"Galloway\",\"Duke\",\"Odom\",\"Andersen\",\"Downs\",\"Hatfield\",\"Benitez\",\"Archer\",\"Huerta\",\"Travis\",\"Mcneil\",\"Hinton\",\"Zhang\",\"Hays\",\"Mayo\",\"Fritz\",\"Branch\",\"Mooney\",\"Ewing\",\"Ritter\",\"Esparza\",\"Frey\",\"Braun\",\"Gay\",\"Riddle\",\"Haney\",\"Kaiser\",\"Holder\",\"Chaney\",\"Mcknight\",\"Gamble\",\"Vang\",\"Cooley\",\"Carney\",\"Cowan\",\"Forbes\",\"Ferrell\",\"Davies\",\"Barajas\",\"Shea\",\"Osborn\",\"Bright\",\"Cuevas\",\"Bolton\",\"Murillo\",\"Lutz\",\"Duarte\",\"Kidd\",\"Key\",\"Cooke\"];\n constructor() { }\n ngOnInit() {\n\n this.itemList = [];\n for(var t=1;t<=1000;t++){\n var tempObj = {\"id\":0,\"itemName\":\"\",\"category\":\"\"};\n tempObj.id = t;\n tempObj.itemName= this.namesList[Math.floor(Math.random()*this.namesList.length)];\n tempObj.category= this.categories[Math.floor(Math.random()*this.categories.length)];\n this.itemList.push(tempObj);\n }\n\n this.selectedItems = [];\n\n this.settings = {\n text: \"Select Items\",\n selectAllText: 'Select All',\n unSelectAllText: 'UnSelect All',\n classes: \"myclass custom-class\",\n enableSearchFilter: true,\n lazyLoading: true,\n badgeShowLimit: 4\n\n };\n }\n onItemSelect(item: any) {\n console.log(item);\n console.log(this.selectedItems);\n }\n OnItemDeSelect(item: any) {\n console.log(item);\n console.log(this.selectedItems);\n }\n onSelectAll(items: any) {\n console.log(items);\n }\n onDeSelectAll(items: any) {\n console.log(items);\n }\n onScroll(e:any){\n console.log(e);\n }\n onScrollToEnd(e:any){\n console.log(e);\n }\n changeData() {\n this.selectedItems = [];\n }\n cssgist: boolean = false;\n title: string = \"Virtual scrolling - Lazy load large data sets\";\n tsgist: string = \"CuppaLabs/aab6c8b30a6901af01249c474f3f0cbd\";\n htmlgist: string = \"CuppaLabs/c77fea947ef053aa22973fcd9c7c612a\";\n tstitle: string = \"lazyLoading.ts\"\n htmltitle: string = \"lazyLoading.html\";\n}\n","

{{title}}

\n
\n\n
\n \n
\nTotal Records : {{itemList.length}}\n
\n
\n \n
\n
\n

Code

\n\n\n \n \n \n \n \n \n \n \n \n \n \n\n","import { Component, OnInit } from '@angular/core';\nimport { MockService } from './mock-data';\n\n@Component({\n templateUrl: './views/lazyLoadingRemoteData.html'\n})\nexport class LazyLoadingRemoteDataExample implements OnInit {\n\n itemList = [];\n selectedItems = [];\n settings = {};\n loading = false;\n indices: any;\n readonly bufferSize: number = 10;\n\n constructor(private appService: MockService) { }\n ngOnInit() {\n this.itemList = [];\n this.selectedItems = [];\n\n this.settings = {\n text: \"Select Items\",\n selectAllText: 'Select All',\n unSelectAllText: 'UnSelect All',\n classes: \"myclass custom-class\",\n enableSearchFilter: true,\n lazyLoading: true,\n labelKey: 'name',\n limitSelection: 3\n\n };\n }\n onItemSelect(item: any) {\n console.log(item);\n console.log(this.selectedItems);\n }\n OnItemDeSelect(item: any) {\n console.log(item);\n console.log(this.selectedItems);\n }\n onSelectAll(items: any) {\n console.log(items);\n }\n onDeSelectAll(items: any) {\n console.log(items);\n }\n onScroll(e: any) {\n console.log(e);\n }\n onOpen(e:any){\n console.log(this.itemList);\n }\n fetchMore(event: any) {\n if (event.endIndex === this.itemList.length - 1) {\n this.loading = true;\n this.appService.getChunkData(this.itemList.length, this.bufferSize).then(chunk => {\n this.itemList = this.itemList.concat(chunk);\n this.loading = false;\n }, () => this.loading = false);\n }\n }\n changeData() {\n this.selectedItems = [];\n }\n cssgist: boolean = false;\n title: string = \"Lazy loading - Remote Data API\";\n tsgist: string = \"CuppaLabs/3833720c12e23f6c8ee5fd870e38ad5b\";\n htmlgist: string = \"CuppaLabs/72ebd8cfa40a23a74ccbeda6de98a1e8\";\n tstitle: string = \"lazyLoadingRemoteData.ts\"\n htmltitle: string = \"lazyLoadingRemoteData.html\";\n}\n","import { Component, OnInit } from '@angular/core';\n\n@Component({\n templateUrl: './views/view.html'\n})\nexport class LimitBadgesExample implements OnInit {\n\n itemList = [];\n selectedItems = [];\n settings = {};\n\n constructor() {\n\n }\n ngOnInit() {\n\n\n this.itemList = [\n { \"id\": 1, \"itemName\": \"India\" },\n { \"id\": 2, \"itemName\": \"Singapore\" },\n { \"id\": 3, \"itemName\": \"Australia\" },\n { \"id\": 4, \"itemName\": \"Canada\" },\n { \"id\": 5, \"itemName\": \"South Korea\" },\n { \"id\": 6, \"itemName\": \"Brazil\" }\n ];\n\n this.selectedItems = [\n { \"id\": 1, \"itemName\": \"India\" },\n { \"id\": 2, \"itemName\": \"Singapore\" },\n { \"id\": 3, \"itemName\": \"Australia\" },\n { \"id\": 4, \"itemName\": \"Canada\" }];\n this.settings = {\n singleSelection: false,\n text: \"Select Countries\",\n selectAllText: 'Select All',\n unSelectAllText: 'UnSelect All',\n enableSearchFilter: true,\n badgeShowLimit: 3\n };\n }\n onItemSelect(item: any) {\n console.log(item);\n console.log(this.selectedItems);\n }\n OnItemDeSelect(item: any) {\n console.log(item);\n console.log(this.selectedItems);\n }\n onSelectAll(items: any) {\n console.log(items);\n }\n onDeSelectAll(items: any) {\n console.log(items);\n }\n cssgist: boolean = false;\n title: string = \"Limit badges length\";\n tsgist: string = \"CuppaLabs/00a25e7f8f70199f6571ac9fccbb94c2\";\n htmlgist: string = \"CuppaLabs/eb78d42ab7971fda6493586e329bfdb8\";\n tstitle: string = \"limitBadges.ts\"\n htmltitle: string = \"limitBadges.html\";\n}\n","import { Component, OnInit } from '@angular/core';\n\n@Component({\n templateUrl: './views/view.html'\n})\nexport class LimitSelectionExample implements OnInit {\n\n itemList = [];\n selectedItems = [];\n settings = {};\n\n constructor() {\n\n }\n ngOnInit() {\n\n\n this.itemList = [\n { \"id\": 1, \"itemName\": \"India\" },\n { \"id\": 2, \"itemName\": \"Singapore\" },\n { \"id\": 3, \"itemName\": \"Australia\" },\n { \"id\": 4, \"itemName\": \"Canada\" },\n { \"id\": 5, \"itemName\": \"South Korea\" },\n { \"id\": 6, \"itemName\": \"Brazil\" }\n ];\n\n this.selectedItems = [\n { \"id\": 1, \"itemName\": \"India\" },\n { \"id\": 2, \"itemName\": \"Singapore\" },\n { \"id\": 3, \"itemName\": \"Australia\" },\n { \"id\": 4, \"itemName\": \"Canada\" }];\n this.settings = {\n text: \"Select Countries\",\n selectAllText: 'Select All',\n unSelectAllText: 'UnSelect All',\n enableSearchFilter: false,\n classes: \"myclass custom-class\",\n limitSelection: 4\n };\n }\n onItemSelect(item: any) {\n console.log(item);\n console.log(this.selectedItems);\n }\n OnItemDeSelect(item: any) {\n console.log(item);\n console.log(this.selectedItems);\n }\n onSelectAll(items: any) {\n console.log(items);\n }\n onDeSelectAll(items: any) {\n console.log(items);\n }\n cssgist: boolean = false;\n title: string = \"Limit Selection\";\n tsgist: string = \"CuppaLabs/70667b7d4dd4270bb290685e036a379a\";\n htmlgist: string = \"CuppaLabs/eb78d42ab7971fda6493586e329bfdb8\";\n tstitle: string = \"limitSelection.ts\"\n htmltitle: string = \"limitSelection.html\";\n}\n","import { Injectable } from '@angular/core';\nimport { Observable } from \"rxjs\";\n@Injectable()\nexport class MockService {\n\n itemList = [];\n DATA = [{ \"id\": \"PBMMedAdhr\", \"name\": \"PBM Medication Adherence\" }, { \"id\": \"GapsInCare\", \"name\": \"Gaps In Care\" }, { \"id\": \"UCTest1\", \"name\": \"Use Case Test1\" }, { \"id\": \"BASICSAVE\", \"name\": \"A generic alternative or 30-90 day dispense opport\" }, { \"id\": \"ADVSAVE\", \"name\": \"An advnaced generic alternative or 30-90 day dispe\" }, { \"id\": \"AttAlert\", \"name\": \"Attachment Alert\" }, { \"id\": \"PatSave\", \"name\": \"Patient savings\" }, { \"id\": \"UCTest2\", \"name\": \"Use Case Test 2\" }, { \"id\": \"UCTest3\", \"name\": \"Use Case Test 3\" }, { \"id\": \"UCTest4\", \"name\": \"Use Case Test 4\" }, { \"id\": \"UCTest5\", \"name\": \"Use Case Test 5\" }, { \"id\": \"UCTest6\", \"name\": \"Use Case Test 6\" }, { \"id\": \"UCTest7\", \"name\": \"Use Case Test 7\" }, { \"id\": \"UCTest9\", \"name\": \"Use Case Test 9\" }, { \"id\": \"UCTest#Ten\", \"name\": \"Use Case Test 10\" }, { \"id\": \"UCTest8\", \"name\": \"Use Case Test 8\" }, { \"id\": \"UCTest11\", \"name\": \"Test Use Case 11\" }, { \"id\": \"UCTest12\", \"name\": \"Test Use Case 12\" }, { \"id\": \"UCTest13\", \"name\": \"Test Use Case 13\" }, { \"id\": \"PNLIMMUN\", \"name\": \"PNL Immunization\" }, { \"id\": \"TrustBrkr\", \"name\": \"Identity Services\" }, { \"id\": \"RTBC\", \"name\": \"real time benefit check for 90 day at retail\" }];\n public categories: any = [\"Indian\", \"American\", \"Canadian\", \"Chinese\"];\n public namesList:any[] = [\"Smith\",\"Johnson\",\"Williams\",\"Brown\",\"Jones\",\"Miller\",\"Davis\",\"Garcia\",\"Rodriguez\",\"Wilson\",\"Martinez\",\"Anderson\",\"Taylor\",\"Thomas\",\"Hernandez\",\"Moore\",\"Martin\",\"Jackson\",\"Thompson\",\"White\",\"Lopez\",\"Lee\",\"Gonzalez\",\"Harris\",\"Clark\",\"Lewis\",\"Robinson\",\"Walker\",\"Perez\",\"Hall\",\"Young\",\"Allen\",\"Sanchez\",\"Wright\",\"King\",\"Scott\",\"Green\",\"Baker\",\"Adams\",\"Nelson\",\"Hill\",\"Ramirez\",\"Campbell\",\"Mitchell\",\"Roberts\",\"Carter\",\"Phillips\",\"Evans\",\"Turner\",\"Torres\",\"Parker\",\"Collins\",\"Edwards\",\"Stewart\",\"Flores\",\"Morris\",\"Nguyen\",\"Murphy\",\"Rivera\",\"Cook\",\"Rogers\",\"Morgan\",\"Peterson\",\"Cooper\",\"Reed\",\"Bailey\",\"Bell\",\"Gomez\",\"Kelly\",\"Howard\",\"Ward\",\"Cox\",\"Diaz\",\"Richardson\",\"Wood\",\"Watson\",\"Brooks\",\"Bennett\",\"Gray\",\"James\",\"Reyes\",\"Cruz\",\"Hughes\",\"Price\",\"Myers\",\"Long\",\"Foster\",\"Sanders\",\"Ross\",\"Morales\",\"Powell\",\"Sullivan\",\"Russell\",\"Ortiz\",\"Jenkins\",\"Gutierrez\",\"Perry\",\"Butler\",\"Barnes\",\"Fisher\",\"Henderson\",\"Coleman\",\"Simmons\",\"Patterson\",\"Jordan\",\"Reynolds\",\"Hamilton\",\"Graham\",\"Kim\",\"Gonzales\",\"Alexander\",\"Ramos\",\"Wallace\",\"Griffin\",\"West\",\"Cole\",\"Hayes\",\"Chavez\",\"Gibson\",\"Bryant\",\"Ellis\",\"Stevens\",\"Murray\",\"Ford\",\"Marshall\",\"Owens\",\"Mcdonald\",\"Harrison\",\"Ruiz\",\"Kennedy\",\"Wells\",\"Alvarez\",\"Woods\",\"Mendoza\",\"Castillo\",\"Olson\",\"Webb\",\"Washington\",\"Tucker\",\"Freeman\",\"Burns\",\"Henry\",\"Vasquez\",\"Snyder\",\"Simpson\",\"Crawford\",\"Jimenez\",\"Porter\",\"Mason\",\"Shaw\",\"Gordon\",\"Wagner\",\"Hunter\",\"Romero\",\"Hicks\",\"Dixon\",\"Hunt\",\"Palmer\",\"Robertson\",\"Black\",\"Holmes\",\"Stone\",\"Meyer\",\"Boyd\",\"Mills\",\"Warren\",\"Fox\",\"Rose\",\"Rice\",\"Moreno\",\"Schmidt\",\"Patel\",\"Ferguson\",\"Nichols\",\"Herrera\",\"Medina\",\"Ryan\",\"Fernandez\",\"Weaver\",\"Daniels\",\"Stephens\",\"Gardner\",\"Payne\",\"Kelley\",\"Dunn\",\"Pierce\",\"Arnold\",\"Tran\",\"Spencer\",\"Peters\",\"Hawkins\",\"Grant\",\"Hansen\",\"Castro\",\"Hoffman\",\"Hart\",\"Elliott\",\"Cunningham\",\"Knight\",\"Bradley\",\"Carroll\",\"Hudson\",\"Duncan\",\"Armstrong\",\"Berry\",\"Andrews\",\"Johnston\",\"Ray\",\"Lane\",\"Riley\",\"Carpenter\",\"Perkins\",\"Aguilar\",\"Silva\",\"Richards\",\"Willis\",\"Matthews\",\"Chapman\",\"Lawrence\",\"Garza\",\"Vargas\",\"Watkins\",\"Wheeler\",\"Larson\",\"Carlson\",\"Harper\",\"George\",\"Greene\",\"Burke\",\"Guzman\",\"Morrison\",\"Munoz\",\"Jacobs\",\"Obrien\",\"Lawson\",\"Franklin\",\"Lynch\",\"Bishop\",\"Carr\",\"Salazar\",\"Austin\",\"Mendez\",\"Gilbert\",\"Jensen\",\"Williamson\",\"Montgomery\",\"Harvey\",\"Oliver\",\"Howell\",\"Dean\",\"Hanson\",\"Weber\",\"Garrett\",\"Sims\",\"Burton\",\"Fuller\",\"Soto\",\"Mccoy\",\"Welch\",\"Chen\",\"Schultz\",\"Walters\",\"Reid\",\"Fields\",\"Walsh\",\"Little\",\"Fowler\",\"Bowman\",\"Davidson\",\"May\",\"Day\",\"Schneider\",\"Newman\",\"Brewer\",\"Lucas\",\"Holland\",\"Wong\",\"Banks\",\"Santos\",\"Curtis\",\"Pearson\",\"Delgado\",\"Valdez\",\"Pena\",\"Rios\",\"Douglas\",\"Sandoval\",\"Barrett\",\"Hopkins\",\"Keller\",\"Guerrero\",\"Stanley\",\"Bates\",\"Alvarado\",\"Beck\",\"Ortega\",\"Wade\",\"Estrada\",\"Contreras\",\"Barnett\",\"Caldwell\",\"Santiago\",\"Lambert\",\"Powers\",\"Chambers\",\"Nunez\",\"Craig\",\"Leonard\",\"Lowe\",\"Rhodes\",\"Byrd\",\"Gregory\",\"Shelton\",\"Frazier\",\"Becker\",\"Maldonado\",\"Fleming\",\"Vega\",\"Sutton\",\"Cohen\",\"Jennings\",\"Parks\",\"Mcdaniel\",\"Watts\",\"Barker\",\"Norris\",\"Vaughn\",\"Vazquez\",\"Holt\",\"Schwartz\",\"Steele\",\"Benson\",\"Neal\",\"Dominguez\",\"Horton\",\"Terry\",\"Wolfe\",\"Hale\",\"Lyons\",\"Graves\",\"Haynes\",\"Miles\",\"Park\",\"Warner\",\"Padilla\",\"Bush\",\"Thornton\",\"Mccarthy\",\"Mann\",\"Zimmerman\",\"Erickson\",\"Fletcher\",\"Mckinney\",\"Page\",\"Dawson\",\"Joseph\",\"Marquez\",\"Reeves\",\"Klein\",\"Espinoza\",\"Baldwin\",\"Moran\",\"Love\",\"Robbins\",\"Higgins\",\"Ball\",\"Cortez\",\"Le\",\"Griffith\",\"Bowen\",\"Sharp\",\"Cummings\",\"Ramsey\",\"Hardy\",\"Swanson\",\"Barber\",\"Acosta\",\"Luna\",\"Chandler\",\"Blair\",\"Daniel\",\"Cross\",\"Simon\",\"Dennis\",\"Oconnor\",\"Quinn\",\"Gross\",\"Navarro\",\"Moss\",\"Fitzgerald\",\"Doyle\",\"Mclaughlin\",\"Rojas\",\"Rodgers\",\"Stevenson\",\"Singh\",\"Yang\",\"Figueroa\",\"Harmon\",\"Newton\",\"Paul\",\"Manning\",\"Garner\",\"Mcgee\",\"Reese\",\"Francis\",\"Burgess\",\"Adkins\",\"Goodman\",\"Curry\",\"Brady\",\"Christensen\",\"Potter\",\"Walton\",\"Goodwin\",\"Mullins\",\"Molina\",\"Webster\",\"Fischer\",\"Campos\",\"Avila\",\"Sherman\",\"Todd\",\"Chang\",\"Blake\",\"Malone\",\"Wolf\",\"Hodges\",\"Juarez\",\"Gill\",\"Farmer\",\"Hines\",\"Gallagher\",\"Duran\",\"Hubbard\",\"Cannon\",\"Miranda\",\"Wang\",\"Saunders\",\"Tate\",\"Mack\",\"Hammond\",\"Carrillo\",\"Townsend\",\"Wise\",\"Ingram\",\"Barton\",\"Mejia\",\"Ayala\",\"Schroeder\",\"Hampton\",\"Rowe\",\"Parsons\",\"Frank\",\"Waters\",\"Strickland\",\"Osborne\",\"Maxwell\",\"Chan\",\"Deleon\",\"Norman\",\"Harrington\",\"Casey\",\"Patton\",\"Logan\",\"Bowers\",\"Mueller\",\"Glover\",\"Floyd\",\"Hartman\",\"Buchanan\",\"Cobb\",\"French\",\"Kramer\",\"Mccormick\",\"Clarke\",\"Tyler\",\"Gibbs\",\"Moody\",\"Conner\",\"Sparks\",\"Mcguire\",\"Leon\",\"Bauer\",\"Norton\",\"Pope\",\"Flynn\",\"Hogan\",\"Robles\",\"Salinas\",\"Yates\",\"Lindsey\",\"Lloyd\",\"Marsh\",\"Mcbride\",\"Owen\",\"Solis\",\"Pham\",\"Lang\",\"Pratt\",\"Lara\",\"Brock\",\"Ballard\",\"Trujillo\",\"Shaffer\",\"Drake\",\"Roman\",\"Aguirre\",\"Morton\",\"Stokes\",\"Lamb\",\"Pacheco\",\"Patrick\",\"Cochran\",\"Shepherd\",\"Cain\",\"Burnett\",\"Hess\",\"Li\",\"Cervantes\",\"Olsen\",\"Briggs\",\"Ochoa\",\"Cabrera\",\"Velasquez\",\"Montoya\",\"Roth\",\"Meyers\",\"Cardenas\",\"Fuentes\",\"Weiss\",\"Hoover\",\"Wilkins\",\"Nicholson\",\"Underwood\",\"Short\",\"Carson\",\"Morrow\",\"Colon\",\"Holloway\",\"Summers\",\"Bryan\",\"Petersen\",\"Mckenzie\",\"Serrano\",\"Wilcox\",\"Carey\",\"Clayton\",\"Poole\",\"Calderon\",\"Gallegos\",\"Greer\",\"Rivas\",\"Guerra\",\"Decker\",\"Collier\",\"Wall\",\"Whitaker\",\"Bass\",\"Flowers\",\"Davenport\",\"Conley\",\"Houston\",\"Huff\",\"Copeland\",\"Hood\",\"Monroe\",\"Massey\",\"Roberson\",\"Combs\",\"Franco\",\"Larsen\",\"Pittman\",\"Randall\",\"Skinner\",\"Wilkinson\",\"Kirby\",\"Cameron\",\"Bridges\",\"Anthony\",\"Richard\",\"Kirk\",\"Bruce\",\"Singleton\",\"Mathis\",\"Bradford\",\"Boone\",\"Abbott\",\"Charles\",\"Allison\",\"Sweeney\",\"Atkinson\",\"Horn\",\"Jefferson\",\"Rosales\",\"York\",\"Christian\",\"Phelps\",\"Farrell\",\"Castaneda\",\"Nash\",\"Dickerson\",\"Bond\",\"Wyatt\",\"Foley\",\"Chase\",\"Gates\",\"Vincent\",\"Mathews\",\"Hodge\",\"Garrison\",\"Trevino\",\"Villarreal\",\"Heath\",\"Dalton\",\"Valencia\",\"Callahan\",\"Hensley\",\"Atkins\",\"Huffman\",\"Roy\",\"Boyer\",\"Shields\",\"Lin\",\"Hancock\",\"Grimes\",\"Glenn\",\"Cline\",\"Delacruz\",\"Camacho\",\"Dillon\",\"Parrish\",\"Oneill\",\"Melton\",\"Booth\",\"Kane\",\"Berg\",\"Harrell\",\"Pitts\",\"Savage\",\"Wiggins\",\"Brennan\",\"Salas\",\"Marks\",\"Russo\",\"Sawyer\",\"Baxter\",\"Golden\",\"Hutchinson\",\"Liu\",\"Walter\",\"Mcdowell\",\"Wiley\",\"Rich\",\"Humphrey\",\"Johns\",\"Koch\",\"Suarez\",\"Hobbs\",\"Beard\",\"Gilmore\",\"Ibarra\",\"Keith\",\"Macias\",\"Khan\",\"Andrade\",\"Ware\",\"Stephenson\",\"Henson\",\"Wilkerson\",\"Dyer\",\"Mcclure\",\"Blackwell\",\"Mercado\",\"Tanner\",\"Eaton\",\"Clay\",\"Barron\",\"Beasley\",\"Oneal\",\"Preston\",\"Small\",\"Wu\",\"Zamora\",\"Macdonald\",\"Vance\",\"Snow\",\"Mcclain\",\"Stafford\",\"Orozco\",\"Barry\",\"English\",\"Shannon\",\"Kline\",\"Jacobson\",\"Woodard\",\"Huang\",\"Kemp\",\"Mosley\",\"Prince\",\"Merritt\",\"Hurst\",\"Villanueva\",\"Roach\",\"Nolan\",\"Lam\",\"Yoder\",\"Mccullough\",\"Lester\",\"Santana\",\"Valenzuela\",\"Winters\",\"Barrera\",\"Leach\",\"Orr\",\"Berger\",\"Mckee\",\"Strong\",\"Conway\",\"Stein\",\"Whitehead\",\"Bullock\",\"Escobar\",\"Knox\",\"Meadows\",\"Solomon\",\"Velez\",\"Odonnell\",\"Kerr\",\"Stout\",\"Blankenship\",\"Browning\",\"Kent\",\"Lozano\",\"Bartlett\",\"Pruitt\",\"Buck\",\"Barr\",\"Gaines\",\"Durham\",\"Gentry\",\"Mcintyre\",\"Sloan\",\"Melendez\",\"Rocha\",\"Herman\",\"Sexton\",\"Moon\",\"Hendricks\",\"Rangel\",\"Stark\",\"Lowery\",\"Hardin\",\"Hull\",\"Sellers\",\"Ellison\",\"Calhoun\",\"Gillespie\",\"Mora\",\"Knapp\",\"Mccall\",\"Morse\",\"Dorsey\",\"Weeks\",\"Nielsen\",\"Livingston\",\"Leblanc\",\"Mclean\",\"Bradshaw\",\"Glass\",\"Middleton\",\"Buckley\",\"Schaefer\",\"Frost\",\"Howe\",\"House\",\"Mcintosh\",\"Ho\",\"Pennington\",\"Reilly\",\"Hebert\",\"Mcfarland\",\"Hickman\",\"Noble\",\"Spears\",\"Conrad\",\"Arias\",\"Galvan\",\"Velazquez\",\"Huynh\",\"Frederick\",\"Randolph\",\"Cantu\",\"Fitzpatrick\",\"Mahoney\",\"Peck\",\"Villa\",\"Michael\",\"Donovan\",\"Mcconnell\",\"Walls\",\"Boyle\",\"Mayer\",\"Zuniga\",\"Giles\",\"Pineda\",\"Pace\",\"Hurley\",\"Mays\",\"Mcmillan\",\"Crosby\",\"Ayers\",\"Case\",\"Bentley\",\"Shepard\",\"Everett\",\"Pugh\",\"David\",\"Mcmahon\",\"Dunlap\",\"Bender\",\"Hahn\",\"Harding\",\"Acevedo\",\"Raymond\",\"Blackburn\",\"Duffy\",\"Landry\",\"Dougherty\",\"Bautista\",\"Shah\",\"Potts\",\"Arroyo\",\"Valentine\",\"Meza\",\"Gould\",\"Vaughan\",\"Fry\",\"Rush\",\"Avery\",\"Herring\",\"Dodson\",\"Clements\",\"Sampson\",\"Tapia\",\"Bean\",\"Lynn\",\"Crane\",\"Farley\",\"Cisneros\",\"Benton\",\"Ashley\",\"Mckay\",\"Finley\",\"Best\",\"Blevins\",\"Friedman\",\"Moses\",\"Sosa\",\"Blanchard\",\"Huber\",\"Frye\",\"Krueger\",\"Bernard\",\"Rosario\",\"Rubio\",\"Mullen\",\"Benjamin\",\"Haley\",\"Chung\",\"Moyer\",\"Choi\",\"Horne\",\"Yu\",\"Woodward\",\"Ali\",\"Nixon\",\"Hayden\",\"Rivers\",\"Estes\",\"Mccarty\",\"Richmond\",\"Stuart\",\"Maynard\",\"Brandt\",\"Oconnell\",\"Hanna\",\"Sanford\",\"Sheppard\",\"Church\",\"Burch\",\"Levy\",\"Rasmussen\",\"Coffey\",\"Ponce\",\"Faulkner\",\"Donaldson\",\"Schmitt\",\"Novak\",\"Costa\",\"Montes\",\"Booker\",\"Cordova\",\"Waller\",\"Arellano\",\"Maddox\",\"Mata\",\"Bonilla\",\"Stanton\",\"Compton\",\"Kaufman\",\"Dudley\",\"Mcpherson\",\"Beltran\",\"Dickson\",\"Mccann\",\"Villegas\",\"Proctor\",\"Hester\",\"Cantrell\",\"Daugherty\",\"Cherry\",\"Bray\",\"Davila\",\"Rowland\",\"Levine\",\"Madden\",\"Spence\",\"Good\",\"Irwin\",\"Werner\",\"Krause\",\"Petty\",\"Whitney\",\"Baird\",\"Hooper\",\"Pollard\",\"Zavala\",\"Jarvis\",\"Holden\",\"Haas\",\"Hendrix\",\"Mcgrath\",\"Bird\",\"Lucero\",\"Terrell\",\"Riggs\",\"Joyce\",\"Mercer\",\"Rollins\",\"Galloway\",\"Duke\",\"Odom\",\"Andersen\",\"Downs\",\"Hatfield\",\"Benitez\",\"Archer\",\"Huerta\",\"Travis\",\"Mcneil\",\"Hinton\",\"Zhang\",\"Hays\",\"Mayo\",\"Fritz\",\"Branch\",\"Mooney\",\"Ewing\",\"Ritter\",\"Esparza\",\"Frey\",\"Braun\",\"Gay\",\"Riddle\",\"Haney\",\"Kaiser\",\"Holder\",\"Chaney\",\"Mcknight\",\"Gamble\",\"Vang\",\"Cooley\",\"Carney\",\"Cowan\",\"Forbes\",\"Ferrell\",\"Davies\",\"Barajas\",\"Shea\",\"Osborn\",\"Bright\",\"Cuevas\",\"Bolton\",\"Murillo\",\"Lutz\",\"Duarte\",\"Kidd\",\"Key\",\"Cooke\"];\n timer:any;\n constructor() {\n for(var t=1;t<=100;t++){\n var tempObj = {\"id\":0,\"name\":\"\",\"category\":\"\"};\n tempObj.id = t;\n tempObj.name= this.namesList[Math.floor(Math.random()*this.namesList.length)];\n tempObj.category= this.categories[Math.floor(Math.random()*this.categories.length)];\n this.itemList.push(tempObj);\n }\n }\n\n getDirectories(): Observable> {\n return Observable.create(\n (observer) => {\n\n return new Promise(resolve => setTimeout(() => {\n console.log(\"directoriesLoaded\");\n resolve(this.DATA);\n }, 1000)).then((response) => {\n observer.next(response);\n observer.complete();\n });\n }\n );\n }\n getChunkData(skip: number, limit: number): Promise {\n return new Promise((resolve, reject) => {\n clearTimeout(this.timer);\n this.timer = setTimeout(() => {\n if (skip < this.itemList.length) {\n return resolve(this.itemList.slice(skip, skip + limit));\n }\n reject();\n }, 1000 + Math.random() * 1000);\n });\n }\n\n getUseCases(): Observable> {\n return Observable.create(\n (observer) => {\n return new Promise(resolve => setTimeout(() => {\n console.log(\"useCasesLoaded\");\n resolve(this.DATA);\n }, 500)).then((response) => {\n observer.next(response);\n observer.complete();\n });\n }\n );\n }\n\n getData(arr) {\n if (arr.length === 0) {\n return this.DATA;\n }\n // Randomly remove and add some data\n arr.splice(Math.floor(Math.random() * arr.length), 1);\n arr.push(this.DATA[Math.floor(Math.random() * this.DATA.length)]);\n return arr;\n }\n getFruits() {\n return [{ \"id\": 1, \"itemName\": \"Apple\", \"category\": \"fruits\" },\n { \"id\": 2, \"itemName\": \"Banana\", \"category\": \"fruits\" },\n { \"id\": 5, \"itemName\": \"Tomatoe\", \"category\": \"vegetables\" },\n { \"id\": 6, \"itemName\": \"Potatoe\", \"category\": \"vegetables\" }];\n }\n getCountries() {\n return [\n { \"id\": 1, \"itemName\": \"India\", \"category\": \"asia\" },\n { \"id\": 2, \"itemName\": \"Singapore\", \"category\": \"asia pacific\" },\n { \"id\": 3, \"itemName\": \"Germany\", \"category\": \"Europe\" },\n { \"id\": 4, \"itemName\": \"France\", \"category\": \"Europe\" },\n { \"id\": 5, \"itemName\": \"South Korea\", \"category\": \"asia\" },\n { \"id\": 6, \"itemName\": \"Sweden\", \"category\": \"Europe\" }\n ];\n }\n}\n","

{{title}}

\n
\n
\n \n \n \n
\n
\n \n \n \n
\n
\n

Code

\n\n\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n","import { Component, OnInit } from '@angular/core';\nimport { MockService } from './mock-data';\nimport { tap, map } from 'rxjs/operators';\n\n@Component({\n templateUrl: './views/multipledropdowns.html'\n})\nexport class MultipleDropdownsExample implements OnInit {\n\n itemList = [];\n selectedItems = [];\n settings = {};\n directorySpecialties = [];\n useCases = [];\n dropdownSettings = {};\n dropdownSettings2 = {};\n\n providerLocation: any = {\n directorySpecialties: [{ \"id\": \"PBMMedAdhr\", \"name\": \"PBM Medication Adherence\" }, { \"id\": \"GapsInCare\", \"name\": \"Gaps In Care\" }],\n useCases: [{ \"id\": \"UCTest3\", \"name\": \"Use Case Test 3\" }, { \"id\": \"UCTest4\", \"name\": \"Use Case Test 4\" }]\n };\n\n\n constructor(public mockService: MockService) { }\n ngOnInit() {\n\n this.dropdownSettings = {\n text: \"Select\",\n enableSearchFilter: true,\n labelKey: \"name\"\n };\n this.dropdownSettings2 = {\n text: \"Select\",\n enableSearchFilter: true,\n labelKey: \"name\"\n };\n\n this.mockService.getDirectories().pipe(map((resp: Array) => {\n this.directorySpecialties = resp;\n })).subscribe();\n\n this.mockService.getUseCases().pipe(map((resp: Array) => {\n this.useCases = resp;\n })).subscribe();\n }\n onItemSelect(item: any) {\n console.log(item);\n console.log(this.selectedItems);\n }\n OnItemDeSelect(item: any) {\n console.log(item);\n console.log(this.selectedItems);\n }\n onSelectAll(items: any) {\n console.log(items);\n }\n onDeSelectAll(items: any) {\n console.log(items);\n }\n cssgist: boolean = false;\n title: string = \"Multiple Dropdowns in a page\";\n tsgist: string = \"CuppaLabs/12225540c23c8a171a81f996fc8d9ca6\";\n htmlgist: string = \"CuppaLabs/3788fb5437925b9d7d8edafec567639c\";\n mockgist: string = \"CuppaLabs/b3e947ec83710307a3b8680a2ff89693\";\n tstitle: string = \"multiple-dropdowns.ts\"\n htmltitle: string = \"multiple-dropdowns.html\";\n mocktitle: string = \"mock-data.ts\"\n}\n","

\n {{title}}

\n
\n \n \n \n \n \n \n \n \n \n
\n

Code

\n\n\n \n \n \n \n \n \n \n \n \n \n \n","import { Component, OnInit } from '@angular/core';\nimport { HttpClient } from '@angular/common/http';\n\n@Component({\n templateUrl: './views/remoteData.html'\n})\nexport class RemoteDataExample implements OnInit {\n\n itemList:any = [];\n selectedItems = [];\n settings = {};\n\n constructor(private http: HttpClient) { }\n ngOnInit() {\n this.http.get('https://restcountries.eu/rest/v2/all')\n .subscribe(res => {\n console.log(res);\n this.itemList = res;\n },error => {\n\n });\n this.settings = {\n text: \"Select Countries\",\n selectAllText: 'Select All',\n unSelectAllText: 'UnSelect All',\n classes: \"myclass custom-class\",\n primaryKey: \"alpha3Code\",\n labelKey: \"name\",\n enableSearchFilter: true,\n searchBy: ['name','capital']\n };\n }\n onItemSelect(item: any) {\n console.log(item);\n console.log(this.selectedItems);\n }\n OnItemDeSelect(item: any) {\n console.log(item);\n console.log(this.selectedItems);\n }\n onSelectAll(items: any) {\n console.log(items);\n }\n onDeSelectAll(items: any) {\n console.log(items);\n }\n onSearch(evt: any){\n console.log(evt.target.value);\n }\n cssgist: boolean = false;\n title: string = \"Data from remote API example\";\n tsgist: string = \"CuppaLabs/ffb168ae28c36a9130ad5ce74b720c5d\";\n htmlgist: string = \"CuppaLabs/eb78d42ab7971fda6493586e329bfdb8\";\n tstitle: string = \"remoteData.ts\"\n htmltitle: string = \"remoteData.html\";\n}\n","

{{title}}

\n
\n
\n
\n
\n
\n
\n
\n \n
\n
\n \n\n
\n
\n
\n\n

Code

\n\n\n \n \n \n \n \n \n","import { Component, OnInit, ViewChild, ElementRef } from '@angular/core';\nimport { AngularMultiSelect } from '../../../projects/angular2-multiselect-dropdown-lib/src/lib/multiselect.component';\n\n@Component({\n templateUrl: './views/resetDropdown.html'\n})\nexport class ResetDropdownExample implements OnInit {\n\n itemList = [];\n selectedItems = [];\n settings = {};\n @ViewChild('dropdownElem', {static: true}) dropdownElem: AngularMultiSelect;\n constructor() {\n\n }\n ngOnInit() {\n\n\n this.itemList = [\n { \"id\": 1, \"itemName\": \"India\" },\n { \"id\": 2, \"itemName\": \"Singapore\" },\n { \"id\": 3, \"itemName\": \"Australia\" },\n { \"id\": 4, \"itemName\": \"Canada\" },\n { \"id\": 5, \"itemName\": \"South Korea\" },\n { \"id\": 6, \"itemName\": \"Brazil\" }\n ];\n\n this.selectedItems = [\n { \"id\": 1, \"itemName\": \"India\" },\n { \"id\": 2, \"itemName\": \"Singapore\" },\n { \"id\": 3, \"itemName\": \"Australia\" },\n { \"id\": 4, \"itemName\": \"Canada\" }];\n this.settings = {\n text: \"Select Countries\",\n selectAllText: 'Select All',\n unSelectAllText: 'UnSelect All',\n classes: \"myclass custom-class\"\n };\n }\n onItemSelect(item: any) {\n console.log(item);\n console.log(this.selectedItems);\n }\n OnItemDeSelect(item: any) {\n console.log(item);\n console.log(this.selectedItems);\n }\n onSelectAll(items: any) {\n console.log(items);\n }\n onDeSelectAll(items: any) {\n console.log(items);\n }\n showModel() {\n console.log(this.selectedItems);\n }\n changeData() {\n this.selectedItems = [];\n }\n open(evt: any){\n this.dropdownElem.openDropdown();\n evt.stopPropagation();\n }\n close(evt: any){\n this.dropdownElem.closeDropdown();\n }\n cssgist: boolean = false;\n title: string = \"Methods - Reset, Open, Close dropdown\";\n tsgist: string = \"CuppaLabs/96d3ca7681f1a7a38b8c76b2f1552458\";\n htmlgist: string = \"CuppaLabs/bbd73b9f9864effb69f361c9fc65a6e5\";\n tstitle: string = \"resetDropdown.ts\"\n htmltitle: string = \"resetDropdown.html\";\n}\n","import { Component, OnInit } from '@angular/core';\n\n@Component({\n templateUrl: './views/view.html'\n})\nexport class SearchFilterByOnePropertyExample implements OnInit {\n\n itemList = [];\n selectedItems = [];\n settings = {};\n\n constructor() {\n\n }\n ngOnInit() {\n\n\n this.itemList = [\n {\"id\":1,\"itemName\":\"India\",\"name\":\"IN\"},\n {\"id\":2,\"itemName\":\"Singapore\",\"name\":\"SN\"},\n {\"id\":3,\"itemName\":\"Australia\",\"name\":\"AU\"},\n {\"id\":4,\"itemName\":\"Canada\",\"name\":\"CA\"},\n {\"id\":5,\"itemName\":\"South Korea\",\"name\":\"SK\"}, \n {\"id\":6,\"itemName\":\"Brazil\",\"name\":\"BR\"} \n ];\n\n this.selectedItems = [\n {\"id\":1,\"itemName\":\"India\",\"name\":\"IN\"},\n {\"id\":2,\"itemName\":\"Singapore\",\"name\":\"SN\"},\n {\"id\":3,\"itemName\":\"Australia\",\"name\":\"AU\"},\n {\"id\":4,\"itemName\":\"Canada\",\"name\":\"CA\"}];\n this.settings = {\n singleSelection: false,\n text: \"Select Countries\",\n selectAllText: 'Select All',\n unSelectAllText: 'UnSelect All',\n enableSearchFilter: true,\n badgeShowLimit: 3,\n searchBy: ['itemName'],\n searchPlaceholderText: 'Search by name' \n };\n }\n onItemSelect(item: any) {\n console.log(item);\n console.log(this.selectedItems);\n }\n OnItemDeSelect(item: any) {\n console.log(item);\n console.log(this.selectedItems);\n }\n onSelectAll(items: any) {\n console.log(items);\n }\n onDeSelectAll(items: any) {\n console.log(items);\n }\n cssgist: boolean = false;\n title: string = \"Search filter by one property / key\";\n tsgist: string = \"CuppaLabs/f6acd1eb94c95df32f689260b1f38b4c\";\n htmlgist: string = \"CuppaLabs/eb78d42ab7971fda6493586e329bfdb8\";\n tstitle: string = \"searchFilterByProperty.ts\"\n htmltitle: string = \"searchFilterByProperty.html\";\n}\n","import { Component, OnInit } from '@angular/core';\n\n@Component({\n templateUrl: './views/view.html'\n})\nexport class SearchFilterExample implements OnInit {\n\n itemList = [];\n selectedItems = [];\n settings = {};\n\n constructor() {\n\n }\n ngOnInit() {\n\n\n this.itemList = [\n {\"id\":1,\"itemName\":\"India\",\"name\":\"IN\"},\n {\"id\":2,\"itemName\":\"Singapore\",\"name\":\"SN\"},\n {\"id\":3,\"itemName\":\"Australia\",\"name\":\"AU\"},\n {\"id\":4,\"itemName\":\"Canada\",\"name\":\"CA\"},\n {\"id\":5,\"itemName\":\"South Korea\",\"name\":\"SK\"}, \n {\"id\":6,\"itemName\":\"Brazil\",\"name\":\"BR\"} \n ];\n\n this.selectedItems = [\n {\"id\":1,\"itemName\":\"India\",\"name\":\"IN\"},\n {\"id\":2,\"itemName\":\"Singapore\",\"name\":\"SN\"},\n {\"id\":3,\"itemName\":\"Australia\",\"name\":\"AU\"},\n {\"id\":4,\"itemName\":\"Canada\",\"name\":\"CA\"}];\n this.settings = {\n singleSelection: false,\n text: \"Select Countries\",\n selectAllText: 'Select All',\n unSelectAllText: 'UnSelect All',\n enableSearchFilter: true,\n badgeShowLimit: 3,\n addNewItemOnFilter: true\n };\n }\n onItemSelect(item: any) {\n console.log(item);\n console.log(this.selectedItems);\n }\n OnItemDeSelect(item: any) {\n console.log(item);\n console.log(this.selectedItems);\n }\n onSelectAll(items: any) {\n console.log(items);\n }\n onDeSelectAll(items: any) {\n console.log(items);\n }\n cssgist: boolean = false;\n title: string = \"Search filter\";\n tsgist: string = \"CuppaLabs/447bd5fce6dfc2832f5f4a8c36726a9b\";\n htmlgist: string = \"CuppaLabs/eb78d42ab7971fda6493586e329bfdb8\";\n tstitle: string = \"searchFilter.ts\"\n htmltitle: string = \"searchFilter.html\";\n}\n","

{{title}}

\n
\n \n \n
\n
\n How this example works !! \n
\n When you try to filter the list items, if no search results are available, you would see an 'Add' button. On clicking the add button, it would emit the text that you enter in the input field to your controlle in the callback method, as show in the below code.\n You can add this item to the data list. If you wish, that this item be selected, add it to selected items list.\n
\n

Code

\n\n\n \n \n \n \n \n \n \n \n \n \n \n\n","import { Component, OnInit } from '@angular/core';\n\n@Component({\n templateUrl: './views/searchFilter.html'\n})\nexport class SearchFilterAddItemExample implements OnInit {\n\n itemList = [];\n selectedItems = [];\n settings = {};\n count = 6;\n constructor() {\n\n }\n ngOnInit() {\n\n\n this.itemList = [\n {\"id\":1,\"itemName\":\"India\",\"name\":\"IN\"},\n {\"id\":2,\"itemName\":\"Singapore\",\"name\":\"SN\"},\n {\"id\":3,\"itemName\":\"Australia\",\"name\":\"AU\"},\n {\"id\":4,\"itemName\":\"Canada\",\"name\":\"CA\"},\n {\"id\":5,\"itemName\":\"South Korea\",\"name\":\"SK\"}, \n {\"id\":6,\"itemName\":\"Brazil\",\"name\":\"BR\"} \n ];\n\n this.selectedItems = [\n {\"id\":1,\"itemName\":\"India\",\"name\":\"IN\"},\n {\"id\":2,\"itemName\":\"Singapore\",\"name\":\"SN\"},\n {\"id\":3,\"itemName\":\"Australia\",\"name\":\"AU\"},\n {\"id\":4,\"itemName\":\"Canada\",\"name\":\"CA\"}];\n this.settings = {\n singleSelection: false,\n text: \"Select Countries\",\n selectAllText: 'Select All',\n unSelectAllText: 'UnSelect All',\n enableSearchFilter: true,\n addNewItemOnFilter: true\n };\n }\n onAddItem(data:string){\n this.count++;\n this.itemList.push({\"id\": this.count,\"itemName\":data,\"name\":data});\n this.selectedItems.push({\"id\": this.count,\"itemName\":data,\"name\":data});\n }\n onItemSelect(item: any) {\n console.log(item);\n console.log(this.selectedItems);\n }\n OnItemDeSelect(item: any) {\n console.log(item);\n console.log(this.selectedItems);\n }\n onSelectAll(items: any) {\n console.log(items);\n }\n onDeSelectAll(items: any) {\n console.log(items);\n }\n cssgist: boolean = false;\n title: string = \"Search and Add New Item, if not found\";\n tsgist: string = \"CuppaLabs/c1e00c870c3e3b9213e69e0a93518cc6\";\n htmlgist: string = \"CuppaLabs/0583ba4be8b7c192d14f04375f96c074\";\n tstitle: string = \"searchFilterAddNewItem.ts\"\n htmltitle: string = \"searchFilter.html\";\n}\n","import { Component, OnInit } from '@angular/core';\n\n@Component({\n templateUrl: './views/view.html' \n})\nexport class SingleSelectionExample implements OnInit {\n\n itemList = [];\n selectedItems = [];\n settings = {};\n\n constructor(){\n \n }\n ngOnInit(){\n \n\n this.itemList = [\n {\"id\":1,\"itemName\":\"India\",\"name\":\"IN\"},\n {\"id\":2,\"itemName\":\"Singapore\",\"name\":\"SN\"},\n {\"id\":3,\"itemName\":\"Australia\",\"name\":\"AU\"},\n {\"id\":4,\"itemName\":\"Canada\",\"name\":\"CA\"},\n {\"id\":5,\"itemName\":\"South Korea\",\"name\":\"SK\"}, \n {\"id\":6,\"itemName\":\"Brazil\",\"name\":\"BR\"} \n ];\n \n this.selectedItems = [\n {\"id\":1,\"itemName\":\"India\",\"name\":\"IN\"}];\n this.settings = {singleSelection: true, text:\"Select Country\",clearAll:false};\n }\n onItemSelect(item:any){\n console.log(item);\n console.log(this.selectedItems);\n }\n OnItemDeSelect(item:any){\n console.log(item);\n console.log(this.selectedItems);\n }\n onSelectAll(items: any){\n console.log(items);\n }\n onDeSelectAll(items: any){\n console.log(items);\n }\ncssgist: boolean = false;\n title: string = \"Single Selection\";\n tsgist: string = \"CuppaLabs/6ef578ce507dfd548eec39e008b4de14\";\n htmlgist: string = \"CuppaLabs/eb78d42ab7971fda6493586e329bfdb8\";\n tstitle: string = \"singleSelection.ts\"\n htmltitle: string = \"singleSelection.html\";\n}\n","import { Component, OnInit } from '@angular/core';\n\n@Component({\n templateUrl: './views/view.html'\n})\nexport class StylingExample implements OnInit {\n\n itemList = [];\n selectedItems = [];\n settings = {};\n\n constructor() {\n\n }\n ngOnInit() {\n\n\n this.itemList = [\n { \"id\": 1, \"itemName\": \"India\" },\n { \"id\": 2, \"itemName\": \"Singapore\" },\n { \"id\": 3, \"itemName\": \"Australia\" },\n { \"id\": 4, \"itemName\": \"Canada\" },\n { \"id\": 5, \"itemName\": \"South Korea\" },\n { \"id\": 6, \"itemName\": \"Brazil\" }\n ];\n\n this.selectedItems = [\n { \"id\": 1, \"itemName\": \"India\" },\n { \"id\": 2, \"itemName\": \"Singapore\" },\n { \"id\": 3, \"itemName\": \"Australia\" },\n { \"id\": 4, \"itemName\": \"Canada\" }];\n this.settings = {\n text: \"Select Countries\",\n selectAllText: 'Select All',\n unSelectAllText: 'UnSelect All',\n classes: \"myclass custom-class-example\"\n };\n }\n onItemSelect(item: any) {\n console.log(item);\n console.log(this.selectedItems);\n }\n OnItemDeSelect(item: any) {\n console.log(item);\n console.log(this.selectedItems);\n }\n onSelectAll(items: any) {\n console.log(items);\n }\n onDeSelectAll(items: any) {\n console.log(items);\n }\n title: string = \"Custom styling\";\n tsgist: string = \"CuppaLabs/67fb11cbb67a62888ca0a3adb44ee440\";\n htmlgist: string = \"CuppaLabs/eb78d42ab7971fda6493586e329bfdb8\";\n cssgist: string = \"CuppaLabs/e6efeedade8f737df03107625df165e7\";\n tstitle: string = \"customStyling.ts\";\n htmltitle: string = \"customStyling.html\";\n csstitle: string = \"app.css\";\n}\n","

{{title}}

\n
\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
\n\n

Code

\n\n\n \n \n \n \n \n \n","import { Component, OnInit } from '@angular/core';\n\n@Component({\n templateUrl: './views/templating.html'\n})\nexport class TemplatingExample implements OnInit {\n\n itemList = [];\n selectedItems = [];\n settings = {};\n\n constructor(){\n \n }\n ngOnInit(){\n \n\n this.itemList = [\n {\"category\":\"asia\",\"id\":1,\"itemName\":\"India\",\"capital\":\"Delhi\",\"image\":\"http://www.sciencekids.co.nz/images/pictures/flags96/India.jpg\"},\n {\"category\":\"asia\",\"id\":2,\"itemName\":\"Singapore\", \"capital\":\"Singapore\",\"image\":\"http://www.sciencekids.co.nz/images/pictures/flags96/Singapore.jpg\"},\n {\"category\":\"europe\",\"id\":3,\"itemName\":\"United Kingdom\", \"capital\":\"London\",\"image\":\"http://www.sciencekids.co.nz/images/pictures/flags96/United_Kingdom.jpg\"},\n {\"category\":\"northamerica\",\"id\":4,\"itemName\":\"Canada\",\"capital\":\"Ottawa\",\"image\":\"http://www.sciencekids.co.nz/images/pictures/flags96/Canada.jpg\"},\n {\"category\":\"asia\",\"id\":5,\"itemName\":\"South Korea\",\"capital\":\"Seoul\",\"image\":\"http://www.sciencekids.co.nz/images/pictures/flags96/South_Korea.jpg\"}, \n {\"category\":\"latinamerica\",\"id\":6,\"itemName\":\"Brazil\",\"capital\":\"Brasilia\",\"image\":\"http://www.sciencekids.co.nz/images/pictures/flags96/Brazil.jpg\"} \n ];\n \n this.selectedItems = [\n {\"category\":\"asia\",\"id\":1,\"itemName\":\"India\",\"capital\":\"Delhi\",\"image\":\"http://www.sciencekids.co.nz/images/pictures/flags96/India.jpg\"},\n {\"category\":\"asia\",\"id\":2,\"itemName\":\"Singapore\", \"capital\":\"Singapore\",\"image\":\"http://www.sciencekids.co.nz/images/pictures/flags96/Singapore.jpg\"},\n {\"category\":\"europe\",\"id\":3,\"itemName\":\"United Kingdom\", \"capital\":\"London\",\"image\":\"http://www.sciencekids.co.nz/images/pictures/flags96/United_Kingdom.jpg\"},\n {\"category\":\"northamerica\",\"id\":4,\"itemName\":\"Canada\",\"capital\":\"Ottawa\",\"image\":\"http://www.sciencekids.co.nz/images/pictures/flags96/Canada.jpg\"}]\n this.settings = { \n text:\"Select Countries\",\n selectAllText:'Select All',\n unSelectAllText:'UnSelect All',\n enableSearchFilter: true,\n classes:\"myclass custom-class\",\n showCheckbox: true,\n groupBy: \"category\"\n };\n\n }\n onItemSelect(item:any){\n console.log(item);\n console.log(this.selectedItems);\n }\n OnItemDeSelect(item:any){\n console.log(item);\n console.log(this.selectedItems);\n }\n onSelectAll(items: any){\n console.log(items);\n }\n onDeSelectAll(items: any){\n console.log(items);\n }\n onGroupSelect(selectedGroupItem){\n console.log(selectedGroupItem);\n }\n onGroupDeSelect(deselectedGroupItem){\n console.log(deselectedGroupItem);\n }\n cssgist: boolean = false;\n title: string = \"Templating menu option\";\n tsgist: string = \"CuppaLabs/cc0ac5976bf26b89119180ff82115fe4\";\n htmlgist: string = \"CuppaLabs/6399258d93fd5580be1736aba2539519\";\n tstitle: string = \"templating.ts\"\n htmltitle: string = \"templating.html\";\n}\n","

{{title}}

\n
\n \n
\n

Code

\n\n","import { Component, OnInit } from '@angular/core';\n\n@Component({\n templateUrl: './views/theming.html'\n})\nexport class ThemingExample implements OnInit {\n\n itemList = [];\n selectedItems = [];\n settings = {};\n\n constructor() { }\n ngOnInit() {\n\n this.itemList = [\n { \"countryId\": 1, \"itemName\": \"India\" },\n { \"countryId\": 2, \"itemName\": \"Singapore\" },\n { \"countryId\": 3, \"itemName\": \"Australia\" },\n { \"countryId\": 4, \"itemName\": \"Canada\" },\n { \"countryId\": 5, \"itemName\": \"South Korea\" },\n { \"countryId\": 6, \"itemName\": \"Brazil\" }\n ];\n\n this.selectedItems = [\n { \"countryId\": 1, \"itemName\": \"India\" },\n { \"countryId\": 2, \"itemName\": \"Singapore\" },\n { \"countryId\": 3, \"itemName\": \"Australia\" },\n { \"countryId\": 4, \"itemName\": \"Canada\" }];\n\n this.settings = {\n text: \"Select Countries\",\n selectAllText: 'Select All',\n unSelectAllText: 'UnSelect All',\n classes: \"myclass custom-class\",\n primaryKey: \"countryId\"\n };\n }\n onItemSelect(item: any) {\n console.log(item);\n console.log(this.selectedItems);\n }\n OnItemDeSelect(item: any) {\n console.log(item);\n console.log(this.selectedItems);\n }\n onSelectAll(items: any) {\n console.log(items);\n }\n onDeSelectAll(items: any) {\n console.log(items);\n }\n cssgist: boolean = false;\n title: string = \"Basic example\";\n tsgist: string = \"CuppaLabs/ee72fbc7b21dad7e4e7664c5b1553235\";\n htmlgist: string = \"CuppaLabs/eb78d42ab7971fda6493586e329bfdb8\";\n tstitle: string = \"basic.ts\"\n htmltitle: string = \"basic.html\";\n}\n","

{{title}}

\n
\n \n \n \n \n \n \n \n \n \n \n \n \n \n
\n Customer\n \n Countries\n
\n {{item.name}}\n \n \n \n
\n {{customers | json}}\n
\n

Code

\n\n\n \n \n \n \n \n \n \n \n \n \n \n","import { Component, OnInit } from '@angular/core';\n\n@Component({\n templateUrl: './views/usingInList.html'\n})\nexport class UsingInListExample implements OnInit {\n\n itemList = [];\n selectedItems = [];\n settings = {};\n customers = [];\n constructor() {\n\n }\n ngOnInit() {\n\n this.customers = [\n {\n name: \"Toshiba\", countries: [{ \"category\": \"asia\", \"id\": 1, \"itemName\": \"India\", \"capital\": \"Delhi\", \"image\": \"http://www.sciencekids.co.nz/images/pictures/flags96/India.jpg\" },\n { \"category\": \"asia\", \"id\": 2, \"itemName\": \"Singapore\", \"capital\": \"Singapore\", \"image\": \"http://www.sciencekids.co.nz/images/pictures/flags96/Singapore.jpg\" },\n ]\n },\n { name: \"Apple\", countries: [] },\n { name: \"Samsung\", countries: [] },\n {\n name: \"MI\", countries: [{ \"category\": \"asia\", \"id\": 1, \"itemName\": \"India\", \"capital\": \"Delhi\", \"image\": \"http://www.sciencekids.co.nz/images/pictures/flags96/India.jpg\" },\n { \"category\": \"asia\", \"id\": 2, \"itemName\": \"Singapore\", \"capital\": \"Singapore\", \"image\": \"http://www.sciencekids.co.nz/images/pictures/flags96/Singapore.jpg\" },\n ]\n },\n { name: \"Google\", countries: [] }\n ];\n this.itemList = [\n { \"category\": \"asia\", \"id\": 1, \"itemName\": \"India\", \"capital\": \"Delhi\", \"image\": \"http://www.sciencekids.co.nz/images/pictures/flags96/India.jpg\" },\n { \"category\": \"asia\", \"id\": 2, \"itemName\": \"Singapore\", \"capital\": \"Singapore\", \"image\": \"http://www.sciencekids.co.nz/images/pictures/flags96/Singapore.jpg\" },\n { \"category\": \"europe\", \"id\": 3, \"itemName\": \"United Kingdom\", \"capital\": \"London\", \"image\": \"http://www.sciencekids.co.nz/images/pictures/flags96/United_Kingdom.jpg\" },\n { \"category\": \"northamerica\", \"id\": 4, \"itemName\": \"Canada\", \"capital\": \"Ottawa\", \"image\": \"http://www.sciencekids.co.nz/images/pictures/flags96/Canada.jpg\" },\n { \"category\": \"asia\", \"id\": 5, \"itemName\": \"South Korea\", \"capital\": \"Seoul\", \"image\": \"http://www.sciencekids.co.nz/images/pictures/flags96/South_Korea.jpg\" },\n { \"category\": \"latinamerica\", \"id\": 6, \"itemName\": \"Brazil\", \"capital\": \"Brasilia\", \"image\": \"http://www.sciencekids.co.nz/images/pictures/flags96/Brazil.jpg\" }\n ];\n\n this.selectedItems = [\n { \"category\": \"asia\", \"id\": 1, \"itemName\": \"India\", \"capital\": \"Delhi\", \"image\": \"http://www.sciencekids.co.nz/images/pictures/flags96/India.jpg\" },\n { \"category\": \"asia\", \"id\": 2, \"itemName\": \"Singapore\", \"capital\": \"Singapore\", \"image\": \"http://www.sciencekids.co.nz/images/pictures/flags96/Singapore.jpg\" },\n { \"category\": \"europe\", \"id\": 3, \"itemName\": \"United Kingdom\", \"capital\": \"London\", \"image\": \"http://www.sciencekids.co.nz/images/pictures/flags96/United_Kingdom.jpg\" },\n { \"category\": \"northamerica\", \"id\": 4, \"itemName\": \"Canada\", \"capital\": \"Ottawa\", \"image\": \"http://www.sciencekids.co.nz/images/pictures/flags96/Canada.jpg\" }]\n this.settings = {\n text: \"Select Countries\",\n selectAllText: 'Select All',\n unSelectAllText: 'UnSelect All',\n enableSearchFilter: true,\n classes: \"myclass custom-class\",\n showCheckbox: true\n };\n\n }\n onItemSelect(item: any) {\n console.log(this.customers);\n }\n OnItemDeSelect(item: any) {\n console.log(item);\n console.log(this.selectedItems);\n }\n onSelectAll(items: any) {\n console.log(items);\n }\n onDeSelectAll(items: any) {\n console.log(items);\n }\n onGroupSelect(selectedGroupItem) {\n console.log(selectedGroupItem);\n }\n onGroupDeSelect(deselectedGroupItem) {\n console.log(deselectedGroupItem);\n }\n cssgist: boolean = false;\n title: string = \"Using in List - Inside `for loop`\";\n tsgist: string = \"CuppaLabs/0d2dc802967cca16ffc5053d0b873aba\";\n htmlgist: string = \"CuppaLabs/85fb2b925a56c2e533e321ae09de0e2f\";\n tstitle: string = \"usingInList.ts\"\n htmltitle: string = \"usingInList.html\";\n}\n","

{{title}}

\n
\n
\n
\n
\n \n * required\n \n \n
\n
\n \n \n
\n
\n \n * required\n \n
\n \n
\n\n
\n
\n \n \n \n \n \n \n \n \n \n \n \n \n \n
{{userForm.value.name}}
{{userForm.value.email}}
\n
{{obj.itemName}}
\n
\n {{userForm.value | json}}\n

Form status: {{ userForm.status | json }}

\n
\n
\n

Code

\n\n\n \n \n \n \n \n \n \n \n \n \n \n","import { Component, OnInit } from '@angular/core';\nimport { FormBuilder, FormGroup, Validators } from '@angular/forms';\n\n@Component({\n templateUrl: './views/using-in-react-form.html'\n})\nexport class UsingWithReactiveFormExample implements OnInit {\n itemList = [];\n selectedItems = [];\n settings = {};\n\n userForm: FormGroup;\n\n constructor(private fb: FormBuilder) {\n this.createForm();\n }\n createForm() {\n this.userForm = this.fb.group({\n name: 'xbvxncvx',\n email: ['absd@gmail.com', Validators.required],\n skills: [[], Validators.required]\n });\n }\n submitForm() {\n console.log(this.userForm);\n }\n ngOnInit() {\n\n this.itemList = [\n { \"id\": 1, \"itemName\": \"Angular\" },\n { \"id\": 2, \"itemName\": \"JavaScript\" },\n { \"id\": 3, \"itemName\": \"HTML\" },\n { \"id\": 4, \"itemName\": \"CSS\" },\n { \"id\": 5, \"itemName\": \"ReactJS\" },\n { \"id\": 6, \"itemName\": \"HTML5\" }\n ];\n this.selectedItems = [];\n this.settings = {\n text: \"Select Skills\",\n selectAllText: 'Select All',\n unSelectAllText: 'UnSelect All',\n classes: \"myclass custom-class\"\n };\n }\n onItemSelect(item: any) {\n console.log(item);\n console.log(this.selectedItems);\n }\n OnItemDeSelect(item: any) {\n console.log(item);\n console.log(this.selectedItems);\n }\n onSelectAll(items: any) {\n console.log(items);\n }\n onDeSelectAll(items: any) {\n console.log(items);\n }\ncssgist: boolean = false;\n title: string = \"Using with Reactive Forms\";\n tsgist: string = \"CuppaLabs/f0dfe353c6378cee7f55547395a80fc4\";\n htmlgist: string = \"CuppaLabs/0a32c3d76110468b84bac01fd64488bc\";\n tstitle: string = \"using-in-reactive-forms.ts\"\n htmltitle: string = \"using-with-reactive-forms.html\";\n}\n","

{{title}}

\n
\n
\n
\n\n
\n \n \n
\n
Name is required
\n
Only alphabetsallowed
\n\n
\n
\n
\n \n * required\n \n
\n
Email is required
\n
Email format should be joe@abc.com
\n
\n
\n
\n \n * required\n \n \n
\n
Atleast one Skill is required
\n
\n
\n \n
\n
\n
\n \n \n \n \n \n \n \n \n \n \n \n \n \n
{{formModel.name}}
{{formModel.email}}
\n
{{obj.itemName}}
\n
\n {{formModel | json}}\n

Form status: {{ loginForm.form.status | json }}

\n\n
\n
\n

Code

\n\n\n \n \n \n \n \n \n \n \n \n \n \n","import { Component, OnInit } from '@angular/core';\n\n@Component({\n templateUrl: './views/using-in-form.html'\n})\nexport class UsingWithFormExample implements OnInit {\n itemList = [];\n selectedItems = [];\n settings = {};\n formModel = {\n name: '',\n email: 'ascasc@aa.com',\n skills: [{ \"id\": 1, \"itemName\": \"Angular\" }]\n };\n submitted = false;\n onSubmit() { this.submitted = true; }\n constructor() { }\n ngOnInit() {\n\n this.itemList = [\n { \"id\": 1, \"itemName\": \"Angular\" },\n { \"id\": 2, \"itemName\": \"JavaScript\" },\n { \"id\": 3, \"itemName\": \"HTML\" },\n { \"id\": 4, \"itemName\": \"CSS\" },\n { \"id\": 5, \"itemName\": \"ReactJS\" },\n { \"id\": 6, \"itemName\": \"HTML5\" }\n ];\n\n this.settings = {\n text: \"Select Skills\",\n selectAllText: 'Select All',\n unSelectAllText: 'UnSelect All',\n classes: \"myclass custom-class\"\n };\n }\n onItemSelect(item: any) {\n console.log(item);\n console.log(this.selectedItems);\n }\n OnItemDeSelect(item: any) {\n console.log(item);\n console.log(this.selectedItems);\n }\n onSelectAll(items: any) {\n console.log(items);\n }\n onDeSelectAll(items: any) {\n console.log(items);\n }\ncssgist: boolean = false;\n title: string = \"Using with Template driven Forms\";\n tsgist: string = \"CuppaLabs/6cd9396b8f5589b792b27dd10efe9140\";\n htmlgist: string = \"CuppaLabs/8148509a46a59e3aba513808daa40ca1\";\n tstitle: string = \"using-in-forms.ts\"\n htmltitle: string = \"using-with-forms.html\";\n}\n","// This file can be replaced during build by using the `fileReplacements` array.\n// `ng build --prod` replaces `environment.ts` with `environment.prod.ts`.\n// The list of file replacements can be found in `angular.json`.\n\nexport const environment = {\n production: false\n};\n\n/*\n * For easier debugging in development mode, you can import the following file\n * to ignore zone related error stack frames such as `zone.run`, `zoneDelegate.invokeTask`.\n *\n * This import should be commented out in production mode because it will have a negative impact\n * on performance if an error is thrown.\n */\n// import 'zone.js/dist/zone-error'; // Included with Angular CLI.\n","import { enableProdMode } from '@angular/core';\nimport { platformBrowserDynamic } from '@angular/platform-browser-dynamic';\n\nimport { AppModule } from './app/app.module';\nimport { environment } from './environments/environment';\n\nif (environment.production) {\n enableProdMode();\n}\n\ndocument.addEventListener('DOMContentLoaded', () => {\n platformBrowserDynamic().bootstrapModule(AppModule)\n .catch(err => console.error(err));\n});\n\n"],"sourceRoot":""} \ No newline at end of file +{"version":3,"sources":["webpack:///./projects/angular2-multiselect-dropdown-lib/src/lib/clickOutside.ts","webpack:///./projects/angular2-multiselect-dropdown-lib/src/lib/list-filter.ts","webpack:///./projects/angular2-multiselect-dropdown-lib/src/lib/menu-item.ts.CIcon.html","webpack:///./projects/angular2-multiselect-dropdown-lib/src/lib/menu-item.ts","webpack:///./projects/angular2-multiselect-dropdown-lib/src/lib/multiselect.component.html","webpack:///./projects/angular2-multiselect-dropdown-lib/src/lib/multiselect.component.ts","webpack:///./projects/angular2-multiselect-dropdown-lib/src/lib/multiselect.model.ts","webpack:///./projects/angular2-multiselect-dropdown-lib/src/lib/multiselect.service.ts","webpack:///./projects/angular2-multiselect-dropdown-lib/src/lib/virtual-scroll/virtual-scroll.ts.VirtualScrollerComponent.html","webpack:///./projects/angular2-multiselect-dropdown-lib/src/lib/virtual-scroll/virtual-scroll.ts","webpack:///./src/$_lazy_route_resource lazy namespace object","webpack:///./src/app/app.component.html","webpack:///./src/app/app.component.ts","webpack:///./src/app/app.module.ts","webpack:///./src/app/app.router.ts","webpack:///./src/app/examples/views/view.html","webpack:///./src/app/examples/basic.ts","webpack:///./src/app/examples/views/customSearch.html","webpack:///./src/app/examples/customSearch.ts","webpack:///./src/app/examples/customplaceholder.ts","webpack:///./src/app/examples/views/disableMode.html","webpack:///./src/app/examples/disablemode.ts","webpack:///./src/app/examples/views/dynamicData.html","webpack:///./src/app/examples/dynamicDataSets.ts","webpack:///./src/app/examples/views/events.html","webpack:///./src/app/examples/events.ts","webpack:///./src/app/examples/gist.ts.ng2Gist.html","webpack:///./src/app/examples/gist.ts","webpack:///./src/app/examples/views/groupBy.html","webpack:///./src/app/examples/groupBy.ts","webpack:///./src/app/examples/views/lazyLoading.html","webpack:///./src/app/examples/lazyLoading.ts","webpack:///./src/app/examples/views/lazyLoadingRemoteData.html","webpack:///./src/app/examples/lazyLoadingRemoteData.ts","webpack:///./src/app/examples/limitbadges.ts","webpack:///./src/app/examples/limitselection.ts","webpack:///./src/app/examples/mock-data.ts","webpack:///./src/app/examples/views/multipledropdowns.html","webpack:///./src/app/examples/multipleDropdowns.ts","webpack:///./src/app/examples/views/remoteData.html","webpack:///./src/app/examples/remoteData.ts","webpack:///./src/app/examples/views/resetDropdown.html","webpack:///./src/app/examples/resetdropdown.ts","webpack:///./src/app/examples/searchByOneProperty.ts","webpack:///./src/app/examples/searchFilter.ts","webpack:///./src/app/examples/views/searchFilter.html","webpack:///./src/app/examples/searchFilterAddNewItem.ts","webpack:///./src/app/examples/singleselection.ts","webpack:///./src/app/examples/styling.ts","webpack:///./src/app/examples/views/templating.html","webpack:///./src/app/examples/templating.ts","webpack:///./src/app/examples/views/theming.html","webpack:///./src/app/examples/theming.ts","webpack:///./src/app/examples/views/usingInList.html","webpack:///./src/app/examples/usingInList.ts","webpack:///./src/app/examples/views/using-in-react-form.html","webpack:///./src/app/examples/usingInReactForms.ts","webpack:///./src/app/examples/views/using-in-form.html","webpack:///./src/app/examples/usingWithForms.ts","webpack:///./src/environments/environment.ts","webpack:///./src/main.ts"],"names":[],"mappings":"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,EAAC,SAAS,EAAC,UAAU,EAAC,OAAO,EAAC,OAAO,EAAC,KAAK,EAAC,UAAU,EAAC,QAAQ,EAAC,OAAO,EAAC,OAAO,EAAC,UAAU,EAAC,QAAQ,EAAC,OAAO,EAAC,MAAM,EAAC,OAAO,EAAC,OAAO,EAAC,SAAS,EAAC,QAAQ,EAAC,MAAM,EAAC,OAAO,EAAC,OAAO,EAAC,OAAO,EAAC,OAAO,EAAC,QAAQ,EAAC,MAAM,EAAC,SAAS,EAAC,UAAU,EAAC,UAAU,EAAC,SAAS,EAAC,QAAQ,EAAC,UAAU,EAAC,OAAO,EAAC,QAAQ,EAAC,QAAQ,EAAC,QAAQ,EAAC,SAAS,EAAC,SAAS,EAAC,SAAS,EAAC,QAAQ,EAAC,QAAQ,EAAC,QAAQ,EAAC,QAAQ,EAAC,QAAQ,EAAC,MAAM,EAAC,QAAQ,EAAC,QAAQ,EAAC,UAAU,EAAC,QAAQ,EAAC,MAAM,EAAC,QAAQ,EAAC,MAAM,EAAC,OAAO,EAAC,OAAO,EAAC,QAAQ,EAAC,MAAM,EAAC,KAAK,EAAC,MAAM,EAAC,YAAY,EAAC,MAAM,EAAC,QAAQ,EAAC,QAAQ,EAAC,SAAS,EAAC,MAAM,EAAC,OAAO,EAAC,OAAO,EAAC,MAAM,EAAC,QAAQ,EAAC,OAAO,EAAC,OAAO,EAAC,MAAM,EAAC,QAAQ,EAAC,SAAS,EAAC,MAAM,EAAC,SAAS,EAAC,QAAQ,EAAC,UAAU,EAAC,SAAS,EAAC,OAAO,EAAC,SAAS,EAAC,WAAW,EAAC,OAAO,EAAC,QAAQ,EAAC,QAAQ,EAAC,QAAQ,EAAC,WAAW,EAAC,SAAS,EAAC,SAAS,EAAC,WAAW,EAAC,QAAQ,EAAC,UAAU,EAAC,UAAU,EAAC,QAAQ,EAAC,KAAK,EAAC,UAAU,EAAC,WAAW,EAAC,OAAO,EAAC,SAAS,EAAC,SAAS,EAAC,MAAM,EAAC,MAAM,EAAC,OAAO,EAAC,QAAQ,EAAC,QAAQ,EAAC,QAAQ,EAAC,OAAO,EAAC,SAAS,EAAC,QAAQ,EAAC,MAAM,EAAC,UAAU,EAAC,OAAO,EAAC,UAAU,EAAC,UAAU,EAAC,MAAM,EAAC,SAAS,EAAC,OAAO,EAAC,SAAS,EAAC,OAAO,EAAC,SAAS,EAAC,UAAU,EAAC,OAAO,EAAC,MAAM,EAAC,YAAY,EAAC,QAAQ,EAAC,SAAS,EAAC,OAAO,EAAC,OAAO,EAAC,SAAS,EAAC,QAAQ,EAAC,SAAS,EAAC,UAAU,EAAC,SAAS,EAAC,QAAQ,EAAC,OAAO,EAAC,MAAM,EAAC,QAAQ,EAAC,QAAQ,EAAC,QAAQ,EAAC,QAAQ,EAAC,OAAO,EAAC,OAAO,EAAC,MAAM,EAAC,QAAQ,EAAC,WAAW,EAAC,OAAO,EAAC,QAAQ,EAAC,OAAO,EAAC,OAAO,EAAC,MAAM,EAAC,OAAO,EAAC,QAAQ,EAAC,KAAK,EAAC,MAAM,EAAC,MAAM,EAAC,QAAQ,EAAC,SAAS,EAAC,OAAO,EAAC,UAAU,EAAC,SAAS,EAAC,SAAS,EAAC,QAAQ,EAAC,MAAM,EAAC,WAAW,EAAC,QAAQ,EAAC,SAAS,EAAC,UAAU,EAAC,SAAS,EAAC,OAAO,EAAC,QAAQ,EAAC,MAAM,EAAC,QAAQ,EAAC,QAAQ,EAAC,MAAM,EAAC,SAAS,EAAC,QAAQ,EAAC,SAAS,EAAC,OAAO,EAAC,QAAQ,EAAC,QAAQ,EAAC,SAAS,EAAC,MAAM,EAAC,SAAS,EAAC,YAAY,EAAC,QAAQ,EAAC,SAAS,EAAC,SAAS,EAAC,QAAQ,EAAC,QAAQ,EAAC,WAAW,EAAC,OAAO,EAAC,SAAS,EAAC,UAAU,EAAC,KAAK,EAAC,MAAM,EAAC,OAAO,EAAC,WAAW,EAAC,SAAS,EAAC,SAAS,EAAC,OAAO,EAAC,UAAU,EAAC,QAAQ,EAAC,UAAU,EAAC,SAAS,EAAC,UAAU,EAAC,OAAO,EAAC,QAAQ,EAAC,SAAS,EAAC,SAAS,EAAC,QAAQ,EAAC,SAAS,EAAC,QAAQ,EAAC,QAAQ,EAAC,QAAQ,EAAC,OAAO,EAAC,QAAQ,EAAC,UAAU,EAAC,OAAO,EAAC,QAAQ,EAAC,QAAQ,EAAC,QAAQ,EAAC,UAAU,EAAC,OAAO,EAAC,QAAQ,EAAC,MAAM,EAAC,SAAS,EAAC,QAAQ,EAAC,QAAQ,EAAC,SAAS,EAAC,QAAQ,EAAC,YAAY,EAAC,YAAY,EAAC,QAAQ,EAAC,QAAQ,EAAC,QAAQ,EAAC,MAAM,EAAC,QAAQ,EAAC,OAAO,EAAC,SAAS,EAAC,MAAM,EAAC,QAAQ,EAAC,QAAQ,EAAC,MAAM,EAAC,OAAO,EAAC,OAAO,EAAC,MAAM,EAAC,SAAS,EAAC,SAAS,EAAC,MAAM,EAAC,QAAQ,EAAC,OAAO,EAAC,QAAQ,EAAC,QAAQ,EAAC,QAAQ,EAAC,UAAU,EAAC,KAAK,EAAC,KAAK,EAAC,WAAW,EAAC,QAAQ,EAAC,QAAQ,EAAC,OAAO,EAAC,SAAS,EAAC,MAAM,EAAC,OAAO,EAAC,QAAQ,EAAC,QAAQ,EAAC,SAAS,EAAC,SAAS,EAAC,QAAQ,EAAC,MAAM,EAAC,MAAM,EAAC,SAAS,EAAC,UAAU,EAAC,SAAS,EAAC,SAAS,EAAC,QAAQ,EAAC,UAAU,EAAC,SAAS,EAAC,OAAO,EAAC,UAAU,EAAC,MAAM,EAAC,QAAQ,EAAC,MAAM,EAAC,SAAS,EAAC,WAAW,EAAC,SAAS,EAAC,UAAU,EAAC,UAAU,EAAC,SAAS,EAAC,QAAQ,EAAC,UAAU,EAAC,OAAO,EAAC,OAAO,EAAC,SAAS,EAAC,MAAM,EAAC,QAAQ,EAAC,MAAM,EAAC,SAAS,EAAC,SAAS,EAAC,SAAS,EAAC,QAAQ,EAAC,WAAW,EAAC,SAAS,EAAC,MAAM,EAAC,QAAQ,EAAC,OAAO,EAAC,UAAU,EAAC,OAAO,EAAC,UAAU,EAAC,OAAO,EAAC,QAAQ,EAAC,QAAQ,EAAC,QAAQ,EAAC,SAAS,EAAC,MAAM,EAAC,UAAU,EAAC,QAAQ,EAAC,QAAQ,EAAC,MAAM,EAAC,WAAW,EAAC,QAAQ,EAAC,OAAO,EAAC,OAAO,EAAC,MAAM,EAAC,OAAO,EAAC,QAAQ,EAAC,QAAQ,EAAC,OAAO,EAAC,MAAM,EAAC,QAAQ,EAAC,SAAS,EAAC,MAAM,EAAC,UAAU,EAAC,UAAU,EAAC,MAAM,EAAC,WAAW,EAAC,UAAU,EAAC,UAAU,EAAC,UAAU,EAAC,MAAM,EAAC,QAAQ,EAAC,QAAQ,EAAC,SAAS,EAAC,QAAQ,EAAC,OAAO,EAAC,UAAU,EAAC,SAAS,EAAC,OAAO,EAAC,MAAM,EAAC,SAAS,EAAC,SAAS,EAAC,MAAM,EAAC,QAAQ,EAAC,IAAI,EAAC,UAAU,EAAC,OAAO,EAAC,OAAO,EAAC,UAAU,EAAC,QAAQ,EAAC,OAAO,EAAC,SAAS,EAAC,QAAQ,EAAC,QAAQ,EAAC,MAAM,EAAC,UAAU,EAAC,OAAO,EAAC,QAAQ,EAAC,OAAO,EAAC,OAAO,EAAC,QAAQ,EAAC,SAAS,EAAC,OAAO,EAAC,OAAO,EAAC,SAAS,EAAC,MAAM,EAAC,YAAY,EAAC,OAAO,EAAC,YAAY,EAAC,OAAO,EAAC,SAAS,EAAC,WAAW,EAAC,OAAO,EAAC,MAAM,EAAC,UAAU,EAAC,QAAQ,EAAC,QAAQ,EAAC,MAAM,EAAC,SAAS,EAAC,QAAQ,EAAC,OAAO,EAAC,OAAO,EAAC,SAAS,EAAC,SAAS,EAAC,QAAQ,EAAC,SAAS,EAAC,OAAO,EAAC,OAAO,EAAC,aAAa,EAAC,QAAQ,EAAC,QAAQ,EAAC,SAAS,EAAC,SAAS,EAAC,QAAQ,EAAC,SAAS,EAAC,SAAS,EAAC,QAAQ,EAAC,OAAO,EAAC,SAAS,EAAC,MAAM,EAAC,OAAO,EAAC,OAAO,EAAC,QAAQ,EAAC,MAAM,EAAC,QAAQ,EAAC,QAAQ,EAAC,MAAM,EAAC,QAAQ,EAAC,OAAO,EAAC,WAAW,EAAC,OAAO,EAAC,SAAS,EAAC,QAAQ,EAAC,SAAS,EAAC,MAAM,EAAC,UAAU,EAAC,MAAM,EAAC,MAAM,EAAC,SAAS,EAAC,UAAU,EAAC,UAAU,EAAC,MAAM,EAAC,QAAQ,EAAC,QAAQ,EAAC,OAAO,EAAC,OAAO,EAAC,WAAW,EAAC,SAAS,EAAC,MAAM,EAAC,SAAS,EAAC,OAAO,EAAC,QAAQ,EAAC,YAAY,EAAC,SAAS,EAAC,SAAS,EAAC,MAAM,EAAC,QAAQ,EAAC,QAAQ,EAAC,YAAY,EAAC,OAAO,EAAC,QAAQ,EAAC,OAAO,EAAC,QAAQ,EAAC,SAAS,EAAC,QAAQ,EAAC,OAAO,EAAC,SAAS,EAAC,UAAU,EAAC,MAAM,EAAC,QAAQ,EAAC,QAAQ,EAAC,WAAW,EAAC,QAAQ,EAAC,OAAO,EAAC,OAAO,EAAC,OAAO,EAAC,QAAQ,EAAC,QAAQ,EAAC,SAAS,EAAC,MAAM,EAAC,OAAO,EAAC,QAAQ,EAAC,MAAM,EAAC,OAAO,EAAC,OAAO,EAAC,QAAQ,EAAC,SAAS,EAAC,OAAO,EAAC,SAAS,EAAC,OAAO,EAAC,OAAO,EAAC,SAAS,EAAC,MAAM,EAAC,OAAO,EAAC,MAAM,EAAC,MAAM,EAAC,OAAO,EAAC,MAAM,EAAC,OAAO,EAAC,SAAS,EAAC,UAAU,EAAC,SAAS,EAAC,OAAO,EAAC,OAAO,EAAC,SAAS,EAAC,QAAQ,EAAC,QAAQ,EAAC,MAAM,EAAC,SAAS,EAAC,SAAS,EAAC,SAAS,EAAC,UAAU,EAAC,MAAM,EAAC,SAAS,EAAC,MAAM,EAAC,IAAI,EAAC,WAAW,EAAC,OAAO,EAAC,QAAQ,EAAC,OAAO,EAAC,SAAS,EAAC,WAAW,EAAC,SAAS,EAAC,MAAM,EAAC,QAAQ,EAAC,UAAU,EAAC,SAAS,EAAC,OAAO,EAAC,QAAQ,EAAC,SAAS,EAAC,WAAW,EAAC,WAAW,EAAC,OAAO,EAAC,QAAQ,EAAC,QAAQ,EAAC,OAAO,EAAC,UAAU,EAAC,SAAS,EAAC,OAAO,EAAC,UAAU,EAAC,UAAU,EAAC,SAAS,EAAC,QAAQ,EAAC,OAAO,EAAC,SAAS,EAAC,OAAO,EAAC,UAAU,EAAC,UAAU,EAAC,OAAO,EAAC,OAAO,EAAC,QAAQ,EAAC,QAAQ,EAAC,SAAS,EAAC,MAAM,EAAC,UAAU,EAAC,MAAM,EAAC,SAAS,EAAC,WAAW,EAAC,QAAQ,EAAC,SAAS,EAAC,MAAM,EAAC,UAAU,EAAC,MAAM,EAAC,QAAQ,EAAC,QAAQ,EAAC,UAAU,EAAC,OAAO,EAAC,QAAQ,EAAC,QAAQ,EAAC,SAAS,EAAC,SAAS,EAAC,SAAS,EAAC,WAAW,EAAC,OAAO,EAAC,SAAS,EAAC,SAAS,EAAC,SAAS,EAAC,SAAS,EAAC,MAAM,EAAC,OAAO,EAAC,WAAW,EAAC,QAAQ,EAAC,UAAU,EAAC,OAAO,EAAC,QAAQ,EAAC,SAAS,EAAC,SAAS,EAAC,SAAS,EAAC,UAAU,EAAC,MAAM,EAAC,WAAW,EAAC,SAAS,EAAC,MAAM,EAAC,WAAW,EAAC,QAAQ,EAAC,SAAS,EAAC,WAAW,EAAC,MAAM,EAAC,WAAW,EAAC,MAAM,EAAC,OAAO,EAAC,OAAO,EAAC,OAAO,EAAC,OAAO,EAAC,SAAS,EAAC,SAAS,EAAC,OAAO,EAAC,UAAU,EAAC,SAAS,EAAC,YAAY,EAAC,OAAO,EAAC,QAAQ,EAAC,UAAU,EAAC,UAAU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,EAAC,OAAO,EAAC,MAAM,EAAC,WAAW,EAAC,OAAO,EAAC,MAAM,EAAC,SAAS,EAAC,SAAS,EAAC,SAAS,EAAC,OAAO,EAAC,QAAQ,EAAC,UAAU,EAAC,OAAO,EAAC,OAAO,EAAC,OAAO,EAAC,MAAM,EAAC,OAAO,EAAC,IAAI,EAAC,UAAU,EAAC,KAAK,EAAC,OAAO,EAAC,QAAQ,EAAC,QAAQ,EAAC,OAAO,EAAC,SAAS,EAAC,UAAU,EAAC,QAAQ,EAAC,SAAS,EAAC,QAAQ,EAAC,UAAU,EAAC,OAAO,EAAC,SAAS,EAAC,UAAU,EAAC,QAAQ,EAAC,OAAO,EAAC,MAAM,EAAC,WAAW,EAAC,QAAQ,EAAC,OAAO,EAAC,UAAU,EAAC,WAAW,EAAC,SAAS,EAAC,OAAO,EAAC,OAAO,EAAC,QAAQ,EAAC,QAAQ,EAAC,SAAS,EAAC,QAAQ,EAAC,UAAU,EAAC,QAAQ,EAAC,MAAM,EAAC,SAAS,EAAC,SAAS,EAAC,SAAS,EAAC,SAAS,EAAC,QAAQ,EAAC,WAAW,EAAC,SAAS,EAAC,SAAS,EAAC,QAAQ,EAAC,UAAU,EAAC,SAAS,EAAC,QAAQ,EAAC,UAAU,EAAC,WAAW,EAAC,QAAQ,EAAC,MAAM,EAAC,QAAQ,EAAC,SAAS,EAAC,QAAQ,EAAC,QAAQ,EAAC,QAAQ,EAAC,MAAM,EAAC,OAAO,EAAC,QAAQ,EAAC,QAAQ,EAAC,OAAO,EAAC,SAAS,EAAC,OAAO,EAAC,QAAQ,EAAC,SAAS,EAAC,QAAQ,EAAC,QAAQ,EAAC,QAAQ,EAAC,MAAM,EAAC,SAAS,EAAC,SAAS,EAAC,MAAM,EAAC,QAAQ,EAAC,SAAS,EAAC,OAAO,EAAC,OAAO,EAAC,QAAQ,EAAC,SAAS,EAAC,UAAU,EAAC,MAAM,EAAC,MAAM,EAAC,UAAU,EAAC,OAAO,EAAC,UAAU,EAAC,SAAS,EAAC,QAAQ,EAAC,QAAQ,EAAC,QAAQ,EAAC,QAAQ,EAAC,QAAQ,EAAC,OAAO,EAAC,MAAM,EAAC,MAAM,EAAC,OAAO,EAAC,QAAQ,EAAC,QAAQ,EAAC,OAAO,EAAC,QAAQ,EAAC,SAAS,EAAC,MAAM,EAAC,OAAO,EAAC,KAAK,EAAC,QAAQ,EAAC,OAAO,EAAC,QAAQ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O,EAAC,QAAQ,EAAC,MAAM,EAAC,KAAK,EAAC,MAAM,EAAC,YAAY,EAAC,MAAM,EAAC,QAAQ,EAAC,QAAQ,EAAC,SAAS,EAAC,MAAM,EAAC,OAAO,EAAC,OAAO,EAAC,MAAM,EAAC,QAAQ,EAAC,OAAO,EAAC,OAAO,EAAC,MAAM,EAAC,QAAQ,EAAC,SAAS,EAAC,MAAM,EAAC,SAAS,EAAC,QAAQ,EAAC,UAAU,EAAC,SAAS,EAAC,OAAO,EAAC,SAAS,EAAC,WAAW,EAAC,OAAO,EAAC,QAAQ,EAAC,QAAQ,EAAC,QAAQ,EAAC,WAAW,EAAC,SAAS,EAAC,SAAS,EAAC,WAAW,EAAC,QAAQ,EAAC,UAAU,EAAC,UAAU,EAAC,QAAQ,EAAC,KAAK,EAAC,UAAU,EAAC,WAAW,EAAC,OAAO,EAAC,SAAS,EAAC,SAAS,EAAC,MAAM,EAAC,MAAM,EAAC,OAAO,EAAC,QAAQ,EAAC,QAAQ,EAAC,QAAQ,EAAC,OAAO,EAAC,SAAS,EAAC,QAAQ,EAAC,MAAM,EAAC,UAAU,EAAC,OAAO,EAAC,UAAU,EAAC,UAAU,EAAC,MAAM,EAAC,SAAS,EAAC,OAAO,EAAC,SAAS,EAAC,OAAO,EAAC,SAAS,EAAC,UAAU,EAAC,OAAO,EAAC,MAAM,EAAC,YAAY,EAAC,QAAQ,EAAC,SAAS,EAAC,OAAO,EAAC,OAAO,EAAC,SAAS,EAAC,QAAQ,EAAC,SAAS,EAAC,UAAU,EAAC,SAAS,EAAC,QAAQ,EAAC,OAAO,EAAC,MAAM,EAAC,QAAQ,EAAC,QAAQ,EAAC,QAAQ,EAAC,QAAQ,EAAC,OAAO,EAAC,OAAO,EAAC,MAAM,EAAC,QAAQ,EAAC,WAAW,EAAC,OAAO,EAAC,QAAQ,EAAC,OAAO,EAAC,OAAO,EAAC,MAAM,EAAC,OAAO,EAAC,QAAQ,EAAC,KAAK,EAAC,MAAM,EAAC,MAAM,EAAC,QAAQ,EAAC,SAAS,EAAC,OAAO,EAAC,UAAU,EAAC,SAAS,EAAC,SAAS,EAAC,QAAQ,EAAC,MAAM,EAAC,WAAW,EAAC,QAAQ,EAAC,SAAS,EAAC,UAAU,EAAC,SAAS,EAAC,OAAO,EAAC,QAAQ,EAAC,MAAM,EAAC,QAAQ,EAAC,QAAQ,EAAC,MAAM,EAAC,SAAS,EAAC,QAAQ,EAAC,SAAS,EAAC,OAAO,EAAC,QAAQ,EAAC,QAAQ,EAAC,SAAS,EAAC,MAAM,EAAC,SAAS,EAAC,YAAY,EAAC,QAAQ,EAAC,SAAS,EAAC,SAAS,EAAC,QAAQ,EAAC,QAAQ,EAAC,WAAW,EAAC,OAAO,EAAC,SAAS,EAAC,UAAU,EAAC,KAAK,EAAC,MAAM,EAAC,OAAO,EAAC,WAAW,EAAC,SAAS,EAAC,SAAS,EAAC,OAAO,EAAC,UAAU,EAAC,QAAQ,EAAC,UAAU,EAAC,SAAS,EAAC,UAAU,EAAC,OAAO,EAAC,QAAQ,EAAC,SAAS,EAAC,SAAS,EAAC,QAAQ,EAAC,SAAS,EAAC,QAAQ,EAAC,QAAQ,EAAC,QAAQ,EAAC,OAAO,EAAC,QAAQ,EAAC,UAAU,EAAC,OAAO,EAAC,QAAQ,EAAC,QAAQ,EAAC,QAAQ,EAAC,UAAU,EAAC,OAAO,EAAC,QAAQ,EAAC,MAAM,EAAC,SAAS,EAAC,QAAQ,EAAC,QAAQ,EAAC,SAAS,EAAC,QAAQ,EAAC,YAAY,EAAC,YAAY,EAAC,QAAQ,EAAC,QAAQ,EAAC,QAAQ,EAAC,MAAM,EAAC,QAAQ,EAAC,OAAO,EAAC,SAAS,EAAC,MAAM,EAAC,QAAQ,EAAC,QAAQ,EAAC,MAAM,EAAC,OAAO,EAAC,OAAO,EAAC,MAAM,EAAC,SAAS,EAAC,SAAS,EAAC,MAAM,EAAC,QAAQ,EAAC,OAAO,EAAC,QAAQ,EAAC,QAAQ,EAAC,QAAQ,EAAC,UAAU,EAAC,KAAK,EAAC,KAAK,EAAC,WAAW,EAAC,QAAQ,EAAC,QAAQ,EAAC,OAAO,EAAC,SAAS,EAAC,MAAM,EAAC,OAAO,EAAC,QAAQ,EAAC,QAAQ,EAAC,SAAS,EAAC,SAAS,EAAC,QAAQ,EAAC,MAAM,EAAC,MAAM,EAAC,SAAS,EAAC,UAAU,EAAC,SAAS,EAAC,SAAS,EAAC,QAAQ,EAAC,UAAU,EAAC,SAAS,EAAC,OAAO,EAAC,UAAU,EAAC,MAAM,EAAC,QAAQ,EAAC,MAAM,EAAC,SAAS,EAAC,WAAW,EAAC,SAAS,EAAC,UAAU,EAAC,UAAU,EAAC,SAAS,EAAC,QAAQ,EAAC,UAAU,EAAC,OAAO,EAAC,OAAO,EAAC,SAAS,EAAC,MAAM,EAAC,QAAQ,EAAC,MAAM,EAAC,SAAS,EAAC,SAAS,EAAC,SAAS,EAAC,QAAQ,EAAC,WAAW,EAAC,SAAS,EAAC,MAAM,EAAC,QAAQ,EAAC,OAAO,EAAC,UAAU,EAAC,OAAO,EAAC,UAAU,EAAC,OAAO,EAAC,QAAQ,EAAC,QAAQ,EAAC,QAAQ,EAAC,SAAS,EAAC,MAAM,EAAC,UAAU,EAAC,QAAQ,EAAC,QAAQ,EAAC,MAAM,EAAC,WAAW,EAAC,QAAQ,EAAC,OAAO,EAAC,OAAO,EAAC,MAAM,EAAC,OAAO,EAAC,QAAQ,EAAC,QAAQ,EAAC,OAAO,EAAC,MAAM,EAAC,QAAQ,EAAC,SAAS,EAAC,MAAM,EAAC,UAAU,EAAC,UAAU,EAAC,MAAM,EAAC,WAAW,EAAC,UAAU,EAAC,UAAU,EAAC,UAAU,EAAC,MAAM,EAAC,QAAQ,EAAC,QAAQ,EAAC,SAAS,EAAC,QAAQ,EAAC,OAAO,EAAC,UAAU,EAAC,SAAS,EAAC,OAAO,EAAC,MAAM,EAAC,SAAS,EAAC,SAAS,EAAC,MAAM,EAAC,QAAQ,EAAC,IAAI,EAAC,UAAU,EAAC,OAAO,EAAC,OAAO,EAAC,UAAU,EAAC,QAAQ,EAAC,OAAO,EAAC,SAAS,EAAC,QAAQ,EAAC,QAAQ,EAAC,MAAM,EAAC,UAAU,EAAC,OAAO,EAAC,QAAQ,EAAC,OAAO,EAAC,OAAO,EAAC,QAAQ,EAAC,SAAS,EAAC,OAAO,EAAC,OAAO,EAAC,SAAS,EAAC,MAAM,EAAC,YAAY,EAAC,OAAO,EAAC,YAAY,EAAC,OAAO,EAAC,SAAS,EAAC,WAAW,EAAC,OAAO,EAAC,MAAM,EAAC,UAAU,EAAC,QAAQ,EAAC,QAAQ,EAAC,MAAM,EAAC,SAAS,EAAC,QAAQ,EAAC,OAAO,EAAC,OAAO,EAAC,SAAS,EAAC,SAAS,EAAC,QAAQ,EAAC,SAAS,EAAC,OAAO,EAAC,OAAO,EAAC,aAAa,EAAC,QAAQ,EAAC,QAAQ,EAAC,SAAS,EAAC,SAAS,EAAC,QAAQ,EAAC,SAAS,EAAC,SAAS,EAAC,QAAQ,EAAC,OAAO,EAAC,SAAS,EAAC,MAAM,EAAC,OAAO,EAAC,OAAO,EAAC,QAAQ,EAAC,MAAM,EAAC,QAAQ,EAAC,QAAQ,EAAC,MAAM,EAAC,QAAQ,EAAC,OAAO,EAAC,WAAW,EAAC,OAAO,EAAC,SAAS,EAAC,QAAQ,EAAC,SAAS,EAAC,MAAM,EAAC,UAAU,EAAC,MAAM,EAAC,MAAM,EAAC,SAAS,EAAC,UAAU,EAAC,UAAU,EAAC,MAAM,EAAC,QAAQ,EAAC,QAAQ,EAAC,OAAO,EAAC,OAAO,EAAC,WAAW,EAAC,SAAS,EAAC,MAAM,EAAC,SAAS,EAAC,OAAO,EAAC,QAAQ,EAAC,YAAY,EAAC,SAAS,EAAC,SAAS,EAAC,MAAM,EAAC,QAAQ,EAAC,QAAQ,EAAC,YAAY,EAAC,OAAO,EAAC,QAAQ,EAAC,OAAO,EAAC,QAAQ,EAAC,SAAS,EAAC,QAAQ,EAAC,OAAO,EAAC,SAAS,EAAC,UAAU,EAAC,MAAM,EAAC,QAAQ,EAAC,QAAQ,EAAC,WAAW,EAAC,QAAQ,EAAC,OAAO,EAAC,OAAO,EAAC,OAAO,EAAC,QAAQ,EAAC,QAAQ,EAAC,SAAS,EAAC,MAAM,EAAC,OAAO,EAAC,QAAQ,EAAC,MAAM,EAAC,OAAO,EAAC,OAAO,EAAC,QAAQ,EAAC,SAAS,EAAC,OAAO,EAAC,SAAS,EAAC,OAAO,EAAC,OAAO,EAAC,SAAS,EAAC,MAAM,EAAC,OAAO,EAAC,MAAM,EAAC,MAAM,EAAC,OAAO,EAAC,MAAM,EAAC,OAAO,EAAC,SAAS,EAAC,UAAU,EAAC,SAAS,EAAC,OAAO,EAAC,OAAO,EAAC,SAAS,EAAC,QAAQ,EAAC,QAAQ,EAAC,MAAM,EAAC,SAAS,EAAC,SAAS,EAAC,SAAS,EAAC,UAAU,EAAC,MAAM,EAAC,SAAS,EAAC,MAAM,EAAC,IAAI,EAAC,WAAW,EAAC,OAAO,EAAC,QAAQ,EAAC,OAAO,EAAC,SAAS,EAAC,WAAW,EAAC,SAAS,EAAC,MAAM,EAAC,QAAQ,EAAC,UAAU,EAAC,SAAS,EAAC,OAAO,EAAC,QAAQ,EAAC,SAAS,EAAC,WAAW,EAAC,WAAW,EAAC,OAAO,EAAC,QAAQ,EAAC,QAAQ,EAAC,OAAO,EAAC,UAAU,EAAC,SAAS,EAAC,OAAO,EAAC,UAAU,EAAC,UAAU,EAAC,SAAS,EAAC,QAAQ,EAAC,OAAO,EAAC,SAAS,EAAC,OAAO,EAAC,UAAU,EAAC,UAAU,EAAC,OAAO,EAAC,OAAO,EAAC,QAAQ,EAAC,QAAQ,EAAC,SAAS,EAAC,MAAM,EAAC,UAAU,EAAC,MAAM,EAAC,SAAS,EAAC,WAAW,EAAC,QAAQ,EAAC,SAAS,EAAC,MAAM,EAAC,UAAU,EAAC,MAAM,EAAC,QAAQ,EAAC,QAAQ,EAAC,UAAU,EAAC,OAAO,EAAC,QAAQ,EAAC,QAAQ,EAAC,SAAS,EAAC,SAAS,EAAC,SAAS,EAAC,WAAW,EAAC,OAAO,EAAC,SAAS,EAAC,SAAS,EAAC,SAAS,EAAC,SAAS,EAAC,MAAM,EAAC,OAAO,EAAC,WAAW,EAAC,QAAQ,EAAC,UAAU,EAAC,OAAO,EAAC,QAAQ,EAAC,SAAS,EAAC,SAAS,EAAC,SAAS,EAAC,UAAU,EAAC,MAAM,EAAC,WAAW,EAAC,SAAS,EAAC,MAAM,EAAC,WAAW,EAAC,QAAQ,EAAC,SAAS,EAAC,WAAW,EAAC,MAAM,EAAC,WAAW,EAAC,MAAM,EAAC,OAAO,EAAC,OAAO,EAAC,OAAO,EAAC,OAAO,EAAC,SAAS,EAAC,SAAS,EAAC,OAAO,EAAC,UAAU,EAAC,SAAS,EAAC,YAAY,EAAC,OAAO,EAAC,QAAQ,EAAC,UAAU,EAAC,UAAU,EAAC,SAAS,EAAC,QAAQ,EAAC,SAAS,EAAC,KAAK,EAAC,OAAO,EAAC,SAAS,EAAC,KAAK,EAAC,SAAS,EAAC,QAAQ,EAAC,OAAO,EAAC,OAAO,EAAC,UAAU,EAAC,SAAS,EAAC,QAAQ,EAAC,SAAS,EAAC,QAAQ,EAAC,QAAQ,EAAC,OAAO,EAAC,MAAM,EAAC,MAAM,EAAC,SAAS,EAAC,OAAO,EAAC,QAAQ,EAAC,SAAS,EAAC,SAAS,EAAC,OAAO,EAAC,OAAO,EAAC,OAAO,EAAC,QAAQ,EAAC,QAAQ,EAAC,QAAQ,EAAC,YAAY,EAAC,KAAK,EAAC,QAAQ,EAAC,UAAU,EAAC,OAAO,EAAC,MAAM,EAAC,UAAU,EAAC,OAAO,EAAC,MAAM,EAAC,QAAQ,EAAC,OAAO,EAAC,OAAO,EAAC,SAAS,EAAC,QAAQ,EAAC,OAAO,EAAC,QAAQ,EAAC,MAAM,EAAC,SAAS,EAAC,MAAM,EAAC,YAAY,EAAC,QAA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","file":"main-es2015.js","sourcesContent":["import { Directive, ElementRef, Output, EventEmitter, HostListener, Input, OnInit, OnChanges } from '@angular/core';\n\n@Directive({\n selector: '[clickOutside]'\n})\nexport class ClickOutsideDirective {\n constructor(private _elementRef: ElementRef) {\n }\n\n @Output()\n public clickOutside = new EventEmitter();\n\n @HostListener('document:click', ['$event', '$event.target'])\n @HostListener('document:touchstart', ['$event', '$event.target'])\n public onClick(event: MouseEvent, targetElement: HTMLElement): void {\n if (!targetElement) {\n return;\n }\n\n const clickedInside = this._elementRef.nativeElement.contains(targetElement);\n if (!clickedInside) {\n this.clickOutside.emit(event);\n }\n }\n}\n\n@Directive({\n selector: '[scroll]'\n})\nexport class ScrollDirective {\n constructor(private _elementRef: ElementRef) {\n }\n\n @Output()\n public scroll = new EventEmitter();\n\n @HostListener('scroll', ['$event'])\n public onClick(event: MouseEvent, targetElement: HTMLElement): void {\n this.scroll.emit(event);\n }\n}\n@Directive({\n selector: '[styleProp]'\n})\nexport class styleDirective {\n\n constructor(private el: ElementRef) {\n\n }\n\n @Input('styleProp') styleVal: number;\n\n ngOnInit() {\n\n this.el.nativeElement.style.top = this.styleVal;\n }\n ngOnChanges(): void {\n this.el.nativeElement.style.top = this.styleVal;\n }\n}\n\n\n@Directive({\n selector: '[setPosition]'\n})\nexport class setPosition implements OnInit, OnChanges {\n\n @Input('setPosition') height: number;\n\n constructor(public el: ElementRef) {\n\n }\n ngOnInit() {\n if (this.height) {\n this.el.nativeElement.style.bottom = parseInt(this.height + 15 + \"\") + 'px';\n }\n }\n ngOnChanges(): void {\n if (this.height) {\n this.el.nativeElement.style.bottom = parseInt(this.height + 15 + \"\") + 'px';\n }\n }\n}","import { Pipe, PipeTransform } from '@angular/core';\nimport { DataService } from './multiselect.service';\n\n\n@Pipe({\n name: 'listFilter',\n pure: true\n})\nexport class ListFilterPipe implements PipeTransform {\n\n public filteredList: any = [];\n constructor(private ds: DataService) {\n\n }\n\n transform(items: any[], filter: any, searchBy: any): any[] {\n if (!items || !filter) {\n this.ds.setData(items);\n return items;\n }\n this.filteredList = items.filter((item: any) => this.applyFilter(item, filter, searchBy));\n this.ds.setData(this.filteredList);\n return this.filteredList;\n }\n applyFilter(item: any, filter: any, searchBy: any): boolean {\n let found = false;\n if (searchBy.length > 0) {\n if (item.grpTitle) {\n found = true;\n }\n else {\n for (var t = 0; t < searchBy.length; t++) {\n if (filter && item[searchBy[t]] && item[searchBy[t]] != \"\") {\n if (item[searchBy[t]].toString().toLowerCase().indexOf(filter.toLowerCase()) >= 0) {\n found = true;\n }\n }\n }\n }\n\n } else {\n if (item.grpTitle) {\n found = true;\n }\n else {\n for (var prop in item) {\n if (filter && item[prop]) {\n if (item[prop].toString().toLowerCase().indexOf(filter.toLowerCase()) >= 0) {\n found = true;\n }\n }\n }\n }\n }\n\n return found;\n }\n}","\n \n \n \n \n \n\n\t\n\t\t\n\t\t\t\n\t\t\n\t\n\n\n\n\n\t\n\t\t\n\t\t\t\n\t\t\n\t\n\n\n\n\n\n\t\n\t\t\n\t\t\t\n\t\t\t\t\n\t\t\t\n\t\t\n\t\n\n\n\n\n\n\t\n\n","import { Component, OnInit, OnDestroy, NgModule, TemplateRef, AfterContentInit, ContentChild, EmbeddedViewRef, OnChanges, ViewContainerRef, ViewEncapsulation, Input, Output, EventEmitter, ElementRef, AfterViewInit, Pipe, PipeTransform, Directive } from '@angular/core';\nimport { SafeResourceUrl, DomSanitizer } from '@angular/platform-browser';\nimport { CommonModule } from '@angular/common';\n\n@Component({\n selector: 'c-item',\n template: ``\n})\n\nexport class Item { \n\n @ContentChild(TemplateRef, {static: true}) template: TemplateRef\n constructor() { \n }\n\n}\n\n@Component({\n selector: 'c-badge',\n template: ``\n})\n\nexport class Badge { \n\n @ContentChild(TemplateRef, {static: true}) template: TemplateRef\n constructor() { \n }\n\n}\n\n@Component({\n selector: 'c-search',\n template: ``\n})\n\nexport class Search { \n\n @ContentChild(TemplateRef, {static: true}) template: TemplateRef\n constructor() { \n }\n\n}\n@Component({\n selector: 'c-templateRenderer',\n template: ``\n})\n\nexport class TemplateRenderer implements OnInit, OnDestroy { \n\n @Input() data: any\n @Input() item: any\n view: EmbeddedViewRef;\n\n constructor(public viewContainer: ViewContainerRef) { \n }\n ngOnInit() {\n this.view = this.viewContainer.createEmbeddedView(this.data.template, {\n '\\$implicit': this.data,\n 'item':this.item\n });\n }\n\t\n ngOnDestroy() {\n\t\tthis.view.destroy();\n\t}\n\n}\n\n@Component({\n selector: 'c-icon',\n template: `\n \n \n \n \n \n\n\t\n\t\t\n\t\t\t\n\t\t\n\t\n\n\n\n\n\t\n\t\t\n\t\t\t\n\t\t\n\t\n\n\n\n\n\n\t\n\t\t\n\t\t\t\n\t\t\t\t\n\t\t\t\n\t\t\n\t\n\n\n\n\n\n\t\n\n`,\n encapsulation: ViewEncapsulation.None,\n\n})\n\nexport class CIcon { \n\n @Input() name:any;\n\n}","
\n
\n
\n\n {{settings.text}}\n \n \n {{item[settings.labelKey]}}\n \n \n 0 && settings.singleSelection && badgeTempl \">\n
\n {{item[settings.labelKey]}}\n\n \n \n \n \n \n \n
\n
\n
0 && !settings.singleSelection\">\n
settings.badgeShowLimit-1\">\n {{item[settings.labelKey]}}\n \n \n \n \n \n \n
\n
\n settings.badgeShowLimit\">+{{selectedItems?.length - settings.badgeShowLimit }}\n 0\" (click)=\"clearSelection($event);$event.stopPropagation()\">\n \n \n \n \n \n \n \n\n \n
\n
\n
\n
\n
\n
\n
0\"\n (click)=\"toggleSelectAll()\">\n \n \n
\n \n
\n \n \n \n \n \n \n \n \n \n\n \n \n \n \n \n
\n
\n
0 && filterLength > 0\" (click)=\"toggleFilterSelectAll()\">\n \n \n
\n
0 && groupedData?.length > 0\" (click)=\"toggleFilterSelectAll()\">\n 0\" [disabled]=\"settings.limitSelection == selectedItems?.length\" />\n \n
\n \n \n\n
\n \n
\n
\n
\n
0 && infiniteFilterLength > 0\" (click)=\"toggleInfiniteFilterSelectAll()\">\n \n \n
\n
\n\n
\n
    \n
  • \n \n \n
  • \n
\n
\n
\n
    \n
  • \n \n \n
  • \n
\n
\n
\n
    \n
  • \n \n \n \n
  • \n
\n
\n
\n
    \n
  • \n \n \n \n
  • \n
\n
\n
\n
    \n \n
  • \n \n \n \n
  • \n
  • \n \n \n \n
  • \n
    \n
\n
\n
\n
    \n \n
  • \n \n \n
      \n \n
    • \n \n \n \n
    • \n
      \n
    \n \n
  • \n
    \n
\n
\n
\n \n
    \n \n
  • \n \n \n
  • \n
  • \n \n \n
  • \n
    \n
\n
\n
\n
\n
    \n \n
  • \n \n \n
      \n \n
    • \n \n \n
    • \n
      \n
    \n
  • \n
    \n \n
\n
\n
{{settings.noDataLabel}}
\n
\n
\n
","import { Component, OnInit, HostListener, ChangeDetectionStrategy,OnDestroy, NgModule, SimpleChanges, OnChanges, ChangeDetectorRef, AfterViewChecked, ViewEncapsulation, ContentChild, ViewChild, forwardRef, Input, Output, EventEmitter, ElementRef, AfterViewInit, Pipe, PipeTransform } from '@angular/core';\nimport { FormsModule, NG_VALUE_ACCESSOR, ControlValueAccessor, NG_VALIDATORS, Validator, FormControl } from '@angular/forms';\nimport { CommonModule } from '@angular/common';\nimport { MyException } from './multiselect.model';\nimport { DropdownSettings } from './multiselect.interface';\nimport { ClickOutsideDirective, ScrollDirective, styleDirective, setPosition } from './clickOutside';\nimport { ListFilterPipe } from './list-filter';\nimport { Item, Badge, Search, TemplateRenderer, CIcon } from './menu-item';\nimport { DataService } from './multiselect.service';\nimport { Subscription, Subject } from 'rxjs';\nimport { VirtualScrollerModule, VirtualScrollerComponent } from './virtual-scroll/virtual-scroll';\nimport { map, debounceTime, distinctUntilChanged, switchMap, tap } from 'rxjs/operators'; \n\nexport const DROPDOWN_CONTROL_VALUE_ACCESSOR: any = {\n provide: NG_VALUE_ACCESSOR,\n useExisting: forwardRef(() => AngularMultiSelect),\n multi: true\n};\nexport const DROPDOWN_CONTROL_VALIDATION: any = {\n provide: NG_VALIDATORS,\n useExisting: forwardRef(() => AngularMultiSelect),\n multi: true,\n}\nconst noop = () => {\n};\n\n@Component({\n selector: 'angular2-multiselect',\n templateUrl: './multiselect.component.html',\n host: { '[class]': 'defaultSettings.classes' },\n styleUrls: ['./multiselect.component.scss'],\n providers: [DROPDOWN_CONTROL_VALUE_ACCESSOR, DROPDOWN_CONTROL_VALIDATION],\n encapsulation: ViewEncapsulation.None,\n})\n\nexport class AngularMultiSelect implements OnInit, ControlValueAccessor, OnChanges, Validator, AfterViewChecked, OnDestroy {\n\n @Input()\n data: Array;\n\n @Input()\n settings: DropdownSettings;\n\n @Input()\n loading: boolean;\n\n @Output('onSelect')\n onSelect: EventEmitter = new EventEmitter();\n\n @Output('onDeSelect')\n onDeSelect: EventEmitter = new EventEmitter();\n\n @Output('onSelectAll')\n onSelectAll: EventEmitter> = new EventEmitter>();\n\n @Output('onDeSelectAll')\n onDeSelectAll: EventEmitter> = new EventEmitter>();\n\n @Output('onOpen')\n onOpen: EventEmitter = new EventEmitter();\n\n @Output('onClose')\n onClose: EventEmitter = new EventEmitter();\n\n @Output('onScrollToEnd')\n onScrollToEnd: EventEmitter = new EventEmitter();\n\n @Output('onFilterSelectAll')\n onFilterSelectAll: EventEmitter> = new EventEmitter>();\n\n @Output('onFilterDeSelectAll')\n onFilterDeSelectAll: EventEmitter> = new EventEmitter>();\n\n @Output('onAddFilterNewItem')\n onAddFilterNewItem: EventEmitter = new EventEmitter();\n\n @Output('onGroupSelect')\n onGroupSelect: EventEmitter = new EventEmitter();\n\n @Output('onGroupDeSelect')\n onGroupDeSelect: EventEmitter = new EventEmitter();\n\n @ContentChild(Item, { static: true }) itemTempl: Item;\n @ContentChild(Badge, { static: true }) badgeTempl: Badge;\n @ContentChild(Search, { static: true }) searchTempl: Search;\n\n\n @ViewChild('searchInput', { static: true }) searchInput: ElementRef;\n @ViewChild('selectedList', { static: true }) selectedListElem: ElementRef;\n @ViewChild('dropdownList', { static: true }) dropdownListElem: ElementRef;\n\n @HostListener('document:keyup.escape', ['$event'])\n onEscapeDown(event: KeyboardEvent) {\n if (this.settings.escapeToClose) {\n this.closeDropdown();\n }\n }\n virtualdata: any = [];\n searchTerm$ = new Subject();\n\n filterPipe: ListFilterPipe;\n public selectedItems: Array;\n public isActive: boolean = false;\n public isSelectAll: boolean = false;\n public isFilterSelectAll: boolean = false;\n public isInfiniteFilterSelectAll: boolean = false;\n public groupedData: Array;\n filter: any;\n public chunkArray: any[];\n public scrollTop: any;\n public chunkIndex: any[] = [];\n public cachedItems: any[] = [];\n public groupCachedItems: any[] = [];\n public totalRows: any;\n public itemHeight: any = 41.6;\n public screenItemsLen: any;\n public cachedItemsLen: any;\n public totalHeight: any;\n public scroller: any;\n public maxBuffer: any;\n public lastScrolled: any;\n public lastRepaintY: any;\n public selectedListHeight: any;\n public filterLength: any = 0;\n public infiniteFilterLength: any = 0;\n public viewPortItems: any;\n public item: any;\n public dropdownListYOffset: number = 0;\n subscription: Subscription;\n defaultSettings: DropdownSettings = {\n singleSelection: false,\n text: 'Select',\n enableCheckAll: true,\n selectAllText: 'Select All',\n unSelectAllText: 'UnSelect All',\n filterSelectAllText: 'Select all filtered results',\n filterUnSelectAllText: 'UnSelect all filtered results',\n enableSearchFilter: false,\n searchBy: [],\n maxHeight: 300,\n badgeShowLimit: 999999999999,\n classes: '',\n disabled: false,\n searchPlaceholderText: 'Search',\n showCheckbox: true,\n noDataLabel: 'No Data Available',\n searchAutofocus: true,\n lazyLoading: false,\n labelKey: 'itemName',\n primaryKey: 'id',\n position: 'bottom',\n autoPosition: true,\n enableFilterSelectAll: true,\n selectGroup: false,\n addNewItemOnFilter: false,\n addNewButtonText: \"Add\",\n escapeToClose: true,\n clearAll: true\n }\n randomSize:boolean = true;\n public parseError: boolean;\n public filteredList: any = [];\n virtualScroollInit: boolean = false;\n @ViewChild(VirtualScrollerComponent, {static: false})\n private virtualScroller: VirtualScrollerComponent;\n constructor(public _elementRef: ElementRef, private cdr: ChangeDetectorRef, private ds: DataService) {\n this.searchTerm$.asObservable().pipe(\n debounceTime(1000),\n distinctUntilChanged(),\n tap(term => term)\n ).subscribe(val => {\n this.filterInfiniteList(val);\n });\n }\n ngOnInit() {\n this.settings = Object.assign(this.defaultSettings, this.settings);\n\n this.cachedItems = this.cloneArray(this.data);\n if (this.settings.position == 'top') {\n setTimeout(() => {\n this.selectedListHeight = { val: 0 };\n this.selectedListHeight.val = this.selectedListElem.nativeElement.clientHeight;\n });\n }\n this.subscription = this.ds.getData().subscribe(data => {\n if (data) {\n let len = 0;\n data.forEach((obj: any, i: any) => {\n if (!obj.hasOwnProperty('grpTitle')) {\n len++;\n }\n });\n this.filterLength = len;\n this.onFilterChange(data);\n }\n\n });\n setTimeout(() => {\n this.calculateDropdownDirection();\n });\n this.virtualScroollInit = false;\n }\n ngOnChanges(changes: SimpleChanges) {\n if (changes.data && !changes.data.firstChange) {\n if (this.settings.groupBy) {\n this.groupedData = this.transformData(this.data, this.settings.groupBy);\n if (this.data.length == 0) {\n this.selectedItems = [];\n }\n }\n this.cachedItems = this.cloneArray(this.data);\n }\n if (changes.settings && !changes.settings.firstChange) {\n this.settings = Object.assign(this.defaultSettings, this.settings);\n }\n if (changes.loading) {\n console.log(this.loading);\n }\n if(this.settings.lazyLoading && this.virtualScroollInit && changes.data){\n this.virtualdata = changes.data.currentValue;\n }\n }\n ngDoCheck() {\n if (this.selectedItems) {\n if (this.selectedItems.length == 0 || this.data.length == 0 || this.selectedItems.length < this.data.length) {\n this.isSelectAll = false;\n }\n }\n }\n ngAfterViewInit() {\n if (this.settings.lazyLoading) {\n // this._elementRef.nativeElement.getElementsByClassName(\"lazyContainer\")[0].addEventListener('scroll', this.onScroll.bind(this));\n }\n }\n ngAfterViewChecked() {\n if (this.selectedListElem.nativeElement.clientHeight && this.settings.position == 'top' && this.selectedListHeight) {\n this.selectedListHeight.val = this.selectedListElem.nativeElement.clientHeight;\n this.cdr.detectChanges();\n }\n }\n onItemClick(item: any, index: number, evt: Event) {\n if (this.settings.disabled) {\n return false;\n }\n\n let found = this.isSelected(item);\n let limit = this.selectedItems.length < this.settings.limitSelection ? true : false;\n\n if (!found) {\n if (this.settings.limitSelection) {\n if (limit) {\n this.addSelected(item);\n this.onSelect.emit(item);\n }\n }\n else {\n this.addSelected(item);\n this.onSelect.emit(item);\n }\n\n }\n else {\n this.removeSelected(item);\n this.onDeSelect.emit(item);\n }\n if (this.isSelectAll || this.data.length > this.selectedItems.length) {\n this.isSelectAll = false;\n }\n if (this.data.length == this.selectedItems.length) {\n this.isSelectAll = true;\n }\n if (this.settings.groupBy) {\n this.updateGroupInfo(item);\n }\n }\n public validate(c: FormControl): any {\n return null;\n }\n private onTouchedCallback: (_: any) => void = noop;\n private onChangeCallback: (_: any) => void = noop;\n\n writeValue(value: any) {\n if (value !== undefined && value !== null && value !== '') {\n if (this.settings.singleSelection) {\n if (this.settings.groupBy) {\n this.groupedData = this.transformData(this.data, this.settings.groupBy);\n this.groupCachedItems = this.cloneArray(this.groupedData);\n this.selectedItems = [value[0]];\n } else {\n try {\n\n if (value.length > 1) {\n this.selectedItems = [value[0]];\n throw new MyException(404, { \"msg\": \"Single Selection Mode, Selected Items cannot have more than one item.\" });\n }\n else {\n this.selectedItems = value;\n }\n }\n catch (e) {\n console.error(e.body.msg);\n }\n }\n\n }\n else {\n if (this.settings.limitSelection) {\n this.selectedItems = value.slice(0, this.settings.limitSelection);\n }\n else {\n this.selectedItems = value;\n }\n if (this.selectedItems.length === this.data.length && this.data.length > 0) {\n this.isSelectAll = true;\n }\n if (this.settings.groupBy) {\n this.groupedData = this.transformData(this.data, this.settings.groupBy);\n this.groupCachedItems = this.cloneArray(this.groupedData);\n }\n }\n } else {\n this.selectedItems = [];\n }\n }\n\n //From ControlValueAccessor interface\n registerOnChange(fn: any) {\n this.onChangeCallback = fn;\n }\n\n //From ControlValueAccessor interface\n registerOnTouched(fn: any) {\n this.onTouchedCallback = fn;\n }\n trackByFn(index: number, item: any) {\n return item[this.settings.primaryKey];\n }\n isSelected(clickedItem: any) {\n let found = false;\n this.selectedItems && this.selectedItems.forEach(item => {\n if (clickedItem[this.settings.primaryKey] === item[this.settings.primaryKey]) {\n found = true;\n }\n });\n return found;\n }\n addSelected(item: any) {\n if (this.settings.singleSelection) {\n this.selectedItems = [];\n this.selectedItems.push(item);\n this.closeDropdown();\n }\n else\n this.selectedItems.push(item);\n this.onChangeCallback(this.selectedItems);\n this.onTouchedCallback(this.selectedItems);\n }\n removeSelected(clickedItem: any) {\n this.selectedItems && this.selectedItems.forEach(item => {\n if (clickedItem[this.settings.primaryKey] === item[this.settings.primaryKey]) {\n this.selectedItems.splice(this.selectedItems.indexOf(item), 1);\n }\n });\n this.onChangeCallback(this.selectedItems);\n this.onTouchedCallback(this.selectedItems);\n }\n toggleDropdown(evt: any) {\n if (this.settings.disabled) {\n return false;\n }\n this.isActive = !this.isActive;\n if (this.isActive) {\n if (this.settings.searchAutofocus && this.searchInput && this.settings.enableSearchFilter && !this.searchTempl) {\n setTimeout(() => {\n this.searchInput.nativeElement.focus();\n }, 0);\n }\n this.onOpen.emit(true);\n }\n else {\n this.onClose.emit(false);\n }\n setTimeout(() => {\n this.calculateDropdownDirection();\n }, 0);\n if(this.settings.lazyLoading){\n this.virtualdata = this.data;\n this.virtualScroollInit = true;\n }\n evt.preventDefault();\n }\n public openDropdown() {\n if (this.settings.disabled) {\n return false;\n }\n this.isActive = true;\n if (this.settings.searchAutofocus && this.searchInput && this.settings.enableSearchFilter && !this.searchTempl) {\n setTimeout(() => {\n this.searchInput.nativeElement.focus();\n }, 0);\n }\n this.onOpen.emit(true);\n }\n public closeDropdown() {\n if (this.searchInput && this.settings.lazyLoading) {\n this.searchInput.nativeElement.value = \"\";\n }\n if (this.searchInput) {\n this.searchInput.nativeElement.value = \"\";\n }\n this.filter = \"\";\n this.isActive = false;\n this.onClose.emit(false);\n }\n public closeDropdownOnClickOut() {\n if (this.isActive) {\n if (this.searchInput && this.settings.lazyLoading) {\n this.searchInput.nativeElement.value = \"\";\n }\n if (this.searchInput) {\n this.searchInput.nativeElement.value = \"\";\n }\n this.filter = \"\";\n this.isActive = false;\n this.clearSearch();\n this.onClose.emit(false);\n }\n }\n toggleSelectAll() {\n if (!this.isSelectAll) {\n this.selectedItems = [];\n if (this.settings.groupBy) {\n this.groupedData.forEach((obj) => {\n obj.selected = true;\n })\n this.groupCachedItems.forEach((obj) => {\n obj.selected = true;\n })\n }\n this.selectedItems = this.data.slice();\n this.isSelectAll = true;\n this.onChangeCallback(this.selectedItems);\n this.onTouchedCallback(this.selectedItems);\n\n this.onSelectAll.emit(this.selectedItems);\n }\n else {\n if (this.settings.groupBy) {\n this.groupedData.forEach((obj) => {\n obj.selected = false;\n });\n this.groupCachedItems.forEach((obj) => {\n obj.selected = false;\n })\n }\n this.selectedItems = [];\n this.isSelectAll = false;\n this.onChangeCallback(this.selectedItems);\n this.onTouchedCallback(this.selectedItems);\n\n this.onDeSelectAll.emit(this.selectedItems);\n }\n }\n filterGroupedList() {\n if (this.filter == \"\" || this.filter == null) {\n this.clearSearch();\n return;\n }\n this.groupedData = this.cloneArray(this.groupCachedItems);\n this.groupedData = this.groupedData.filter(obj => {\n let arr = obj.list.filter(t => {\n return t.itemName.toLowerCase().indexOf(this.filter.toLowerCase()) > -1;\n });\n obj.list = arr;\n return arr.some(cat => {\n return cat.itemName.toLowerCase().indexOf(this.filter.toLowerCase()) > -1;\n }\n )\n });\n console.log(this.groupedData);\n }\n toggleFilterSelectAll() {\n if (!this.isFilterSelectAll) {\n let added = [];\n if (this.settings.groupBy) {\n this.groupedData.forEach((item: any) => {\n if (item.list) {\n item.list.forEach((el: any) => {\n if (!this.isSelected(el)) {\n this.addSelected(el);\n added.push(el);\n }\n });\n }\n this.updateGroupInfo(item);\n\n });\n\n }\n else {\n this.ds.getFilteredData().forEach((item: any) => {\n if (!this.isSelected(item)) {\n this.addSelected(item);\n added.push(item);\n }\n\n });\n }\n\n this.isFilterSelectAll = true;\n this.onFilterSelectAll.emit(added);\n }\n else {\n let removed = [];\n if (this.settings.groupBy) {\n this.groupedData.forEach((item: any) => {\n if (item.list) {\n item.list.forEach((el: any) => {\n if (this.isSelected(el)) {\n this.removeSelected(el);\n removed.push(el);\n }\n });\n }\n });\n }\n else {\n this.ds.getFilteredData().forEach((item: any) => {\n if (this.isSelected(item)) {\n this.removeSelected(item);\n removed.push(item);\n }\n\n });\n }\n this.isFilterSelectAll = false;\n this.onFilterDeSelectAll.emit(removed);\n }\n }\n toggleInfiniteFilterSelectAll() {\n if (!this.isInfiniteFilterSelectAll) {\n this.data.forEach((item: any) => {\n if (!this.isSelected(item)) {\n this.addSelected(item);\n }\n\n });\n this.isInfiniteFilterSelectAll = true;\n }\n else {\n this.data.forEach((item: any) => {\n if (this.isSelected(item)) {\n this.removeSelected(item);\n }\n\n });\n this.isInfiniteFilterSelectAll = false;\n }\n }\n clearSearch() {\n if (this.settings.groupBy) {\n this.groupedData = [];\n this.groupCachedItems.forEach((obj) => {\n obj.selected = false;\n })\n this.groupedData = this.cloneArray(this.groupCachedItems);\n }\n this.filter = \"\";\n this.isFilterSelectAll = false;\n\n }\n onFilterChange(data: any) {\n if (this.filter && this.filter == \"\" || data.length == 0) {\n this.isFilterSelectAll = false;\n }\n let cnt = 0;\n data.forEach((item: any) => {\n\n if (!item.hasOwnProperty('grpTitle') && this.isSelected(item)) {\n cnt++;\n }\n });\n\n if (cnt > 0 && this.filterLength == cnt) {\n this.isFilterSelectAll = true;\n }\n else if (cnt > 0 && this.filterLength != cnt) {\n this.isFilterSelectAll = false;\n }\n this.cdr.detectChanges();\n }\n cloneArray(arr: any) {\n let i, copy;\n\n if (Array.isArray(arr)) {\n return JSON.parse(JSON.stringify(arr));\n } else if (typeof arr === 'object') {\n throw 'Cannot clone array containing an object!';\n } else {\n return arr;\n }\n }\n updateGroupInfo(item: any) {\n let key = this.settings.groupBy;\n this.groupedData.forEach((obj: any) => {\n let cnt = 0;\n if (obj.grpTitle && (item[key] == obj[key])) {\n if (obj.list) {\n obj.list.forEach((el: any) => {\n if (this.isSelected(el)) {\n cnt++;\n }\n });\n }\n }\n if (obj.list && (cnt === obj.list.length) && (item[key] == obj[key])) {\n obj.selected = true;\n }\n else if (obj.list && (cnt != obj.list.length) && (item[key] == obj[key])) {\n obj.selected = false;\n }\n });\n this.groupCachedItems.forEach((obj: any) => {\n let cnt = 0;\n if (obj.grpTitle && (item[key] == obj[key])) {\n if (obj.list) {\n obj.list.forEach((el: any) => {\n if (this.isSelected(el)) {\n cnt++;\n }\n });\n }\n }\n if (obj.list && (cnt === obj.list.length) && (item[key] == obj[key])) {\n obj.selected = true;\n }\n else if (obj.list && (cnt != obj.list.length) && (item[key] == obj[key])) {\n obj.selected = false;\n }\n });\n }\n transformData(arr: Array, field: any): Array {\n const groupedObj: any = arr.reduce((prev: any, cur: any) => {\n if (!prev[cur[field]]) {\n prev[cur[field]] = [cur];\n } else {\n prev[cur[field]].push(cur);\n }\n return prev;\n }, {});\n const tempArr: any = [];\n Object.keys(groupedObj).map((x: any) => {\n let obj: any = {};\n obj[\"grpTitle\"] = true;\n obj[this.settings.labelKey] = x;\n obj[this.settings.groupBy] = x;\n obj['selected'] = false;\n obj['list'] = [];\n let cnt = 0;\n groupedObj[x].forEach((item: any) => {\n item['list'] = [];\n obj.list.push(item);\n if (this.isSelected(item)) {\n cnt++;\n }\n });\n if (cnt == obj.list.length) {\n obj.selected = true;\n }\n else {\n obj.selected = false;\n }\n tempArr.push(obj);\n // obj.list.forEach((item: any) => {\n // tempArr.push(item);\n // });\n });\n return tempArr;\n }\n public filterInfiniteList(evt: any) {\n let filteredElems: Array = [];\n if (this.settings.groupBy) {\n this.groupedData = this.groupCachedItems.slice();\n }\n else {\n this.data = this.cachedItems.slice();\n this.virtualdata = this.cachedItems.slice();\n }\n\n if ((evt != null || evt != '') && !this.settings.groupBy) {\n if (this.settings.searchBy.length > 0) {\n for (let t = 0; t < this.settings.searchBy.length; t++) {\n\n this.virtualdata.filter((el: any) => {\n if (el[this.settings.searchBy[t].toString()].toString().toLowerCase().indexOf(evt.toString().toLowerCase()) >= 0) {\n filteredElems.push(el);\n }\n });\n }\n\n }\n else {\n this.virtualdata.filter(function (el: any) {\n for (let prop in el) {\n if (el[prop].toString().toLowerCase().indexOf(evt.toString().toLowerCase()) >= 0) {\n filteredElems.push(el);\n break;\n }\n }\n });\n }\n this.virtualdata = [];\n this.virtualdata = filteredElems;\n this.infiniteFilterLength = this.virtualdata.length;\n }\n if (evt.toString() != '' && this.settings.groupBy) {\n this.groupedData.filter(function (el: any) {\n if (el.hasOwnProperty('grpTitle')) {\n filteredElems.push(el);\n }\n else {\n for (let prop in el) {\n if (el[prop].toString().toLowerCase().indexOf(evt.toString().toLowerCase()) >= 0) {\n filteredElems.push(el);\n break;\n }\n }\n }\n });\n this.groupedData = [];\n this.groupedData = filteredElems;\n this.infiniteFilterLength = this.groupedData.length;\n }\n else if (evt.toString() == '' && this.cachedItems.length > 0) {\n this.virtualdata = [];\n this.virtualdata = this.cachedItems;\n this.infiniteFilterLength = 0;\n }\n this.virtualScroller.refresh();\n }\n resetInfiniteSearch() {\n this.filter = \"\";\n this.isInfiniteFilterSelectAll = false;\n this.virtualdata = [];\n this.virtualdata = this.cachedItems;\n this.groupedData = this.groupCachedItems;\n this.infiniteFilterLength = 0;\n }\n onScrollEnd(e: any) {\n if(e.endIndex === this.data.length - 1 || e.startIndex === 0){\n \n }\n this.onScrollToEnd.emit(e);\n \n }\n ngOnDestroy() {\n if (this.subscription) {\n this.subscription.unsubscribe();\n }\n\n }\n selectGroup(item: any) {\n if (item.selected) {\n item.selected = false;\n item.list.forEach((obj: any) => {\n this.removeSelected(obj);\n });\n this.updateGroupInfo(item);\n this.onGroupSelect.emit(item);\n }\n else {\n item.selected = true;\n item.list.forEach((obj: any) => {\n if (!this.isSelected(obj)) {\n this.addSelected(obj);\n }\n\n });\n this.updateGroupInfo(item);\n this.onGroupDeSelect.emit(item);\n }\n\n\n }\n addFilterNewItem() {\n this.onAddFilterNewItem.emit(this.filter);\n this.filterPipe = new ListFilterPipe(this.ds);\n this.filterPipe.transform(this.data, this.filter, this.settings.searchBy);\n }\n calculateDropdownDirection() {\n let shouldOpenTowardsTop = this.settings.position == 'top';\n if (this.settings.autoPosition) {\n const dropdownHeight = this.dropdownListElem.nativeElement.clientHeight;\n const viewportHeight = document.documentElement.clientHeight;\n const selectedListBounds = this.selectedListElem.nativeElement.getBoundingClientRect();\n\n const spaceOnTop: number = selectedListBounds.top;\n const spaceOnBottom: number = viewportHeight - selectedListBounds.top;\n if (spaceOnBottom < spaceOnTop && dropdownHeight < spaceOnTop) {\n this.openTowardsTop(true);\n }\n else {\n this.openTowardsTop(false);\n }\n // Keep preference if there is not enough space on either the top or bottom\n /* \t\t\tif (spaceOnTop || spaceOnBottom) {\n if (shouldOpenTowardsTop) {\n shouldOpenTowardsTop = spaceOnTop;\n } else {\n shouldOpenTowardsTop = !spaceOnBottom;\n }\n } */\n }\n\n }\n openTowardsTop(value: boolean) {\n if (value && this.selectedListElem.nativeElement.clientHeight) {\n this.dropdownListYOffset = 15 + this.selectedListElem.nativeElement.clientHeight;\n } else {\n this.dropdownListYOffset = 0;\n }\n }\n clearSelection(e: any) {\n this.clearSearch();\n this.selectedItems = [];\n this.onDeSelectAll.emit(this.selectedItems);\n }\n}\n\n@NgModule({\n imports: [CommonModule, FormsModule, VirtualScrollerModule],\n declarations: [AngularMultiSelect, ClickOutsideDirective, ScrollDirective, styleDirective, ListFilterPipe, Item, TemplateRenderer, Badge, Search, setPosition, CIcon],\n exports: [AngularMultiSelect, ClickOutsideDirective, ScrollDirective, styleDirective, ListFilterPipe, Item, TemplateRenderer, Badge, Search, setPosition, CIcon],\n providers: [DataService]\n})\nexport class AngularMultiSelectModule { }\n","export class MyException {\n\tstatus : number;\n\tbody : any;\n\tconstructor(status : number, body : any) {\n\t\tthis.status = status;\n\t\tthis.body = body;\n\t}\n\t\n}","import { Injectable } from '@angular/core';\nimport { Observable, Subject } from 'rxjs';\n\n\n@Injectable()\nexport class DataService {\n\n filteredData: any = [];\n private subject = new Subject();\n\n setData(data: any) {\n\n this.filteredData = data;\n this.subject.next(data);\n }\n getData(): Observable {\n return this.subject.asObservable();\n }\n getFilteredData() {\n if (this.filteredData && this.filteredData.length > 0) {\n return this.filteredData;\n }\n else {\n return [];\n }\n }\n\n}","\n
\n
\n \n
\n ","import {\n\tComponent,\n\tContentChild,\n\tElementRef,\n\tEventEmitter,\n\tInject,\n\tOptional,\n\tInput,\n\tNgModule,\n\tNgZone,\n\tOnChanges,\n\tOnDestroy,\n\tOnInit,\n\tOutput,\n\tRenderer2,\n\tViewChild,\n\tChangeDetectorRef,\n\tInjectionToken\n} from '@angular/core';\n\nimport { PLATFORM_ID } from '@angular/core';\nimport { isPlatformServer } from '@angular/common';\n\nimport { CommonModule } from '@angular/common';\n\nimport * as tween from '@tweenjs/tween.js'\nimport { VirtualScrollerDefaultOptions } from './defaultoptions';\nimport { IPageInfo } from './ipageinfo';\nimport { IViewport } from './iviewport';\n\nimport { WrapGroupDimensions } from './wrapgroupdimensions';\nimport { WrapGroupDimension } from './wrapgroupdimension';\n\nimport { IDimensions } from './idimension';\n\n \n\n\n\nexport function VIRTUAL_SCROLLER_DEFAULT_OPTIONS_FACTORY(): VirtualScrollerDefaultOptions {\n\treturn {\n\t\tscrollThrottlingTime: 0,\n\t\tscrollDebounceTime: 0,\n\t\tscrollAnimationTime: 750,\n\t\tcheckResizeInterval: 1000,\n\t\tresizeBypassRefreshThreshold: 5,\n\t\tmodifyOverflowStyleOfParentScroll: true,\n\t\tstripedTable: false\n\t};\n}\n\n\n\n\n\n\n\n\n\n\n\n@Component({\n\tselector: 'virtual-scroller,[virtualScroller]',\n\texportAs: 'virtualScroller',\n\ttemplate: `\n
\n
\n \n
\n `,\n\thost: {\n\t\t'[class.horizontal]': \"horizontal\",\n\t\t'[class.vertical]': \"!horizontal\",\n\t\t'[class.selfScroll]': \"!parentScroll\"\n\t},\n\tstyles: [`\n :host {\n position: relative;\n\t display: block;\n -webkit-overflow-scrolling: touch;\n }\n\t\n\t:host.horizontal.selfScroll {\n overflow-y: visible;\n overflow-x: auto;\n\t}\n\t:host.vertical.selfScroll {\n overflow-y: auto;\n overflow-x: visible;\n\t}\n\t\n .scrollable-content {\n top: 0;\n left: 0;\n width: 100%;\n height: 100%;\n max-width: 100vw;\n max-height: 100vh;\n position: absolute;\n }\n\n\t.scrollable-content ::ng-deep > * {\n\t\tbox-sizing: border-box;\n\t}\n\t\n\t:host.horizontal {\n\t\twhite-space: nowrap;\n\t}\n\t\n\t:host.horizontal .scrollable-content {\n\t\tdisplay: flex;\n\t}\n\t\n\t:host.horizontal .scrollable-content ::ng-deep > * {\n\t\tflex-shrink: 0;\n\t\tflex-grow: 0;\n\t\twhite-space: initial;\n\t}\n\t\n .total-padding {\n width: 1px;\n opacity: 0;\n }\n \n :host.horizontal .total-padding {\n height: 100%;\n }\n `]\n})\nexport class VirtualScrollerComponent implements OnInit, OnChanges, OnDestroy {\n\tpublic viewPortItems: any[];\n\tpublic window = window;\n\n\tpublic get viewPortInfo(): IPageInfo {\n\t\tlet pageInfo: IViewport = this.previousViewPort || {};\n\t\treturn {\n\t\t\tstartIndex: pageInfo.startIndex || 0,\n\t\t\tendIndex: pageInfo.endIndex || 0,\n\t\t\tscrollStartPosition: pageInfo.scrollStartPosition || 0,\n\t\t\tscrollEndPosition: pageInfo.scrollEndPosition || 0,\n\t\t\tmaxScrollPosition: pageInfo.maxScrollPosition || 0,\n\t\t\tstartIndexWithBuffer: pageInfo.startIndexWithBuffer || 0,\n\t\t\tendIndexWithBuffer: pageInfo.endIndexWithBuffer || 0\n\t\t};\n\t}\n\n\t@Input()\n\tpublic executeRefreshOutsideAngularZone: boolean = false;\n\n\tprotected _enableUnequalChildrenSizes: boolean = false;\n\t@Input()\n\tpublic get enableUnequalChildrenSizes(): boolean {\n\t\treturn this._enableUnequalChildrenSizes;\n\t}\n\tpublic set enableUnequalChildrenSizes(value: boolean) {\n\t\tif (this._enableUnequalChildrenSizes === value) {\n\t\t\treturn;\n\t\t}\n\n\t\tthis._enableUnequalChildrenSizes = value;\n\t\tthis.minMeasuredChildWidth = undefined;\n\t\tthis.minMeasuredChildHeight = undefined;\n\t}\n\n\t@Input()\n\tpublic useMarginInsteadOfTranslate: boolean = false;\n\n\t@Input()\n\tpublic modifyOverflowStyleOfParentScroll: boolean;\n\n\t@Input()\n\tpublic stripedTable: boolean;\n\n\t@Input()\n\tpublic scrollbarWidth: number;\n\n\t@Input()\n\tpublic scrollbarHeight: number;\n\n\t@Input()\n\tpublic childWidth: number;\n\n\t@Input()\n\tpublic childHeight: number;\n\n\t@Input()\n\tpublic ssrChildWidth: number;\n\n\t@Input()\n\tpublic ssrChildHeight: number;\n\n\t@Input()\n\tpublic ssrViewportWidth: number = 1920;\n\n\t@Input()\n\tpublic ssrViewportHeight: number = 1080;\n\n\tprotected _bufferAmount: number = 0;\n\t@Input()\n\tpublic get bufferAmount(): number {\n\t\tif (typeof (this._bufferAmount) === 'number' && this._bufferAmount >= 0) {\n\t\t\treturn this._bufferAmount;\n\t\t} else {\n\t\t\treturn this.enableUnequalChildrenSizes ? 5 : 0;\t\n\t\t}\n\t}\n\tpublic set bufferAmount(value: number) {\n\t\tthis._bufferAmount = value;\n\t}\n\n\t@Input()\n\tpublic scrollAnimationTime: number;\n\n\t@Input()\n\tpublic resizeBypassRefreshThreshold: number;\n\n\tprotected _scrollThrottlingTime: number;\n\t@Input()\n\tpublic get scrollThrottlingTime(): number {\n\t\treturn this._scrollThrottlingTime;\n\t}\n\tpublic set scrollThrottlingTime(value: number) {\n\t\tthis._scrollThrottlingTime = value;\n\t\tthis.updateOnScrollFunction();\n\t}\n\n\tprotected _scrollDebounceTime: number;\n\t@Input()\n\tpublic get scrollDebounceTime(): number {\n\t\treturn this._scrollDebounceTime;\n\t}\n\tpublic set scrollDebounceTime(value: number) {\n\t\tthis._scrollDebounceTime = value;\n\t\tthis.updateOnScrollFunction();\n\t}\n\n\tprotected onScroll: () => void;\n\tprotected updateOnScrollFunction(): void {\n\t\tif (this.scrollDebounceTime) {\n\t\t\tthis.onScroll = this.debounce(() => {\n\t\t\t\tthis.refresh_internal(false);\n\t\t\t}, this.scrollDebounceTime);\n\t\t}\n\t\telse if (this.scrollThrottlingTime) {\n\t\t\tthis.onScroll = this.throttleTrailing(() => {\n\t\t\t\tthis.refresh_internal(false);\n\t\t\t}, this.scrollThrottlingTime);\n\t\t}\n\t\telse {\n\t\t\tthis.onScroll = () => {\n\t\t\t\tthis.refresh_internal(false);\n\t\t\t};\n\t\t}\n\t}\n\n\tprotected checkScrollElementResizedTimer: number;\n\tprotected _checkResizeInterval: number;\n\t@Input()\n\tpublic get checkResizeInterval(): number {\n\t\treturn this._checkResizeInterval;\n\t}\n\tpublic set checkResizeInterval(value: number) {\n\t\tif (this._checkResizeInterval === value) {\n\t\t\treturn;\n\t\t}\n\n\t\tthis._checkResizeInterval = value;\n\t\tthis.addScrollEventHandlers();\n\t}\n\n\tprotected _items: any[] = [];\n\t@Input()\n\tpublic get items(): any[] {\n\t\treturn this._items;\n\t}\n\tpublic set items(value: any[]) {\n\t\tif (value === this._items) {\n\t\t\treturn;\n\t\t}\n\n\t\tthis._items = value || [];\n\t\tthis.refresh_internal(true);\n\t}\n\n\t@Input()\n\tpublic compareItems: (item1: any, item2: any) => boolean = (item1: any, item2: any) => item1 === item2;\n\n\tprotected _horizontal: boolean;\n\t@Input()\n\tpublic get horizontal(): boolean {\n\t\treturn this._horizontal;\n\t}\n\tpublic set horizontal(value: boolean) {\n\t\tthis._horizontal = value;\n\t\tthis.updateDirection();\n\t}\n\n\tprotected revertParentOverscroll(): void {\n\t\tconst scrollElement = this.getScrollElement();\n\t\tif (scrollElement && this.oldParentScrollOverflow) {\n\t\t\tscrollElement.style['overflow-y'] = this.oldParentScrollOverflow.y;\n\t\t\tscrollElement.style['overflow-x'] = this.oldParentScrollOverflow.x;\n\t\t}\n\n\t\tthis.oldParentScrollOverflow = undefined;\n\t}\n\n\tprotected oldParentScrollOverflow: { x: string, y: string };\n\tprotected _parentScroll: Element | Window;\n\t@Input()\n\tpublic get parentScroll(): Element | Window {\n\t\treturn this._parentScroll;\n\t}\n\tpublic set parentScroll(value: Element | Window) {\n\t\tif (this._parentScroll === value) {\n\t\t\treturn;\n\t\t}\n\n\t\tthis.revertParentOverscroll();\n\t\tthis._parentScroll = value;\n\t\tthis.addScrollEventHandlers();\n\n\t\tconst scrollElement = this.getScrollElement();\n\t\tif (this.modifyOverflowStyleOfParentScroll && scrollElement !== this.element.nativeElement) {\n\t\t\tthis.oldParentScrollOverflow = { x: scrollElement.style['overflow-x'], y: scrollElement.style['overflow-y'] };\n\t\t\tscrollElement.style['overflow-y'] = this.horizontal ? 'visible' : 'auto';\n\t\t\tscrollElement.style['overflow-x'] = this.horizontal ? 'auto' : 'visible';\n\t\t}\n\t}\n\n\t@Output()\n\tpublic vsUpdate: EventEmitter = new EventEmitter();\n\n\t@Output()\n\tpublic vsChange: EventEmitter = new EventEmitter();\n\n\t@Output()\n\tpublic vsStart: EventEmitter = new EventEmitter();\n\n\t@Output()\n\tpublic vsEnd: EventEmitter = new EventEmitter();\n\n\t@ViewChild('content', { read: ElementRef, static: false })\n\tprotected contentElementRef: ElementRef;\n\n\t@ViewChild('invisiblePadding', { read: ElementRef, static: false })\n\tprotected invisiblePaddingElementRef: ElementRef;\n\n\t@ContentChild('header', { read: ElementRef, static: false })\n\tprotected headerElementRef: ElementRef;\n\n\t@ContentChild('container', { read: ElementRef, static: false })\n\tprotected containerElementRef: ElementRef;\n\n\tpublic ngOnInit(): void {\n\t\tthis.addScrollEventHandlers();\n\t}\n\n\tpublic ngOnDestroy(): void {\n\t\tthis.removeScrollEventHandlers();\n\t\tthis.revertParentOverscroll();\n\t}\n\n\tpublic ngOnChanges(changes: any): void {\n\t\tlet indexLengthChanged = this.cachedItemsLength !== this.items.length;\n\t\tthis.cachedItemsLength = this.items.length;\n\n\t\tconst firstRun: boolean = !changes.items || !changes.items.previousValue || changes.items.previousValue.length === 0;\n\t\tthis.refresh_internal(indexLengthChanged || firstRun);\n\t}\n\n\t\n\tpublic ngDoCheck(): void {\n\t\tif (this.cachedItemsLength !== this.items.length) {\n\t\t\tthis.cachedItemsLength = this.items.length;\n\t\t\tthis.refresh_internal(true);\n\t\t\treturn;\n\t\t}\n\t\t\n\t\tif (this.previousViewPort && this.viewPortItems && this.viewPortItems.length > 0) {\n\t\t\tlet itemsArrayChanged = false;\n\t\t\tfor (let i = 0; i < this.viewPortItems.length; ++i) {\n\t\t\t\tif (!this.compareItems(this.items[this.previousViewPort.startIndexWithBuffer + i], this.viewPortItems[i])) {\n\t\t\t\t\titemsArrayChanged = true;\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t}\n\t\t\tif (itemsArrayChanged) {\n\t\t\t\tthis.refresh_internal(true);\n\t\t\t}\n\t\t}\n\t}\n\n\tpublic refresh(): void {\n\t\tthis.refresh_internal(true);\n\t}\n\n\tpublic invalidateAllCachedMeasurements(): void {\n\t\tthis.wrapGroupDimensions = {\n\t\t\tmaxChildSizePerWrapGroup: [],\n\t\t\tnumberOfKnownWrapGroupChildSizes: 0,\n\t\t\tsumOfKnownWrapGroupChildWidths: 0,\n\t\t\tsumOfKnownWrapGroupChildHeights: 0\n\t\t};\n\n\t\tthis.minMeasuredChildWidth = undefined;\n\t\tthis.minMeasuredChildHeight = undefined;\n\n\t\tthis.refresh_internal(false);\n\t}\n\n\tpublic invalidateCachedMeasurementForItem(item: any): void {\n\t\tif (this.enableUnequalChildrenSizes) {\n\t\t\tlet index = this.items && this.items.indexOf(item);\n\t\t\tif (index >= 0) {\n\t\t\t\tthis.invalidateCachedMeasurementAtIndex(index);\n\t\t\t}\n\t\t} else {\n\t\t\tthis.minMeasuredChildWidth = undefined;\n\t\t\tthis.minMeasuredChildHeight = undefined;\n\t\t}\n\n\t\tthis.refresh_internal(false);\n\t}\n\n\tpublic invalidateCachedMeasurementAtIndex(index: number): void {\n\t\tif (this.enableUnequalChildrenSizes) {\n\t\t\tlet cachedMeasurement = this.wrapGroupDimensions.maxChildSizePerWrapGroup[index];\n\t\t\tif (cachedMeasurement) {\n\t\t\t\tthis.wrapGroupDimensions.maxChildSizePerWrapGroup[index] = undefined;\n\t\t\t\t--this.wrapGroupDimensions.numberOfKnownWrapGroupChildSizes;\n\t\t\t\tthis.wrapGroupDimensions.sumOfKnownWrapGroupChildWidths -= cachedMeasurement.childWidth || 0;\n\t\t\t\tthis.wrapGroupDimensions.sumOfKnownWrapGroupChildHeights -= cachedMeasurement.childHeight || 0;\n\t\t\t}\n\t\t} else {\n\t\t\tthis.minMeasuredChildWidth = undefined;\n\t\t\tthis.minMeasuredChildHeight = undefined;\n\t\t}\n\n\t\tthis.refresh_internal(false);\n\t}\n\n\tpublic scrollInto(item: any, alignToBeginning: boolean = true, additionalOffset: number = 0, animationMilliseconds: number = undefined, animationCompletedCallback: () => void = undefined): void {\n\t\tlet index: number = this.items.indexOf(item);\n\t\tif (index === -1) {\n\t\t\treturn;\n\t\t}\n\n\t\tthis.scrollToIndex(index, alignToBeginning, additionalOffset, animationMilliseconds, animationCompletedCallback);\n\t}\n\n\tpublic scrollToIndex(index: number, alignToBeginning: boolean = true, additionalOffset: number = 0, animationMilliseconds: number = undefined, animationCompletedCallback: () => void = undefined): void {\n\t\tlet maxRetries: number = 5;\n\n\t\tlet retryIfNeeded = () => {\n\t\t\t--maxRetries;\n\t\t\tif (maxRetries <= 0) {\n\t\t\t\tif (animationCompletedCallback) {\n\t\t\t\t\tanimationCompletedCallback();\n\t\t\t\t}\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tlet dimensions = this.calculateDimensions();\n\t\t\tlet desiredStartIndex = Math.min(Math.max(index, 0), dimensions.itemCount - 1);\n\t\t\tif (this.previousViewPort.startIndex === desiredStartIndex) {\n\t\t\t\tif (animationCompletedCallback) {\n\t\t\t\t\tanimationCompletedCallback();\n\t\t\t\t}\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tthis.scrollToIndex_internal(index, alignToBeginning, additionalOffset, 0, retryIfNeeded);\n\t\t};\n\n\t\tthis.scrollToIndex_internal(index, alignToBeginning, additionalOffset, animationMilliseconds, retryIfNeeded);\n\t}\n\n\tprotected scrollToIndex_internal(index: number, alignToBeginning: boolean = true, additionalOffset: number = 0, animationMilliseconds: number = undefined, animationCompletedCallback: () => void = undefined): void {\n\t\tanimationMilliseconds = animationMilliseconds === undefined ? this.scrollAnimationTime : animationMilliseconds;\n\n\t\tlet dimensions = this.calculateDimensions();\n\t\tlet scroll = this.calculatePadding(index, dimensions) + additionalOffset;\n\t\tif (!alignToBeginning) {\n\t\t\tscroll -= dimensions.wrapGroupsPerPage * dimensions[this._childScrollDim];\n\t\t}\n\n\t\tthis.scrollToPosition(scroll, animationMilliseconds, animationCompletedCallback);\n\t}\n\n\tpublic scrollToPosition(scrollPosition: number, animationMilliseconds: number = undefined, animationCompletedCallback: () => void = undefined): void {\n\t\tscrollPosition += this.getElementsOffset();\n\n\t\tanimationMilliseconds = animationMilliseconds === undefined ? this.scrollAnimationTime : animationMilliseconds;\n\n\t\tlet scrollElement = this.getScrollElement();\n\n\t\tlet animationRequest: number;\n\n\t\tif (this.currentTween) {\n\t\t\tthis.currentTween.stop();\n\t\t\tthis.currentTween = undefined;\n\t\t}\n\n\t\tif (!animationMilliseconds) {\n\t\t\tthis.renderer.setProperty(scrollElement, this._scrollType, scrollPosition);\n\t\t\tthis.refresh_internal(false, animationCompletedCallback);\n\t\t\treturn;\n\t\t}\n\n\t\tconst tweenConfigObj = { scrollPosition: scrollElement[this._scrollType] };\n\n\t\tlet newTween = new tween.Tween(tweenConfigObj)\n\t\t\t.to({ scrollPosition }, animationMilliseconds)\n\t\t\t.easing(tween.Easing.Quadratic.Out)\n\t\t\t.onUpdate((data) => {\n\t\t\t\tif (isNaN(data.scrollPosition)) {\n\t\t\t\t\treturn;\n\t\t\t\t}\n\t\t\t\tthis.renderer.setProperty(scrollElement, this._scrollType, data.scrollPosition);\n\t\t\t\tthis.refresh_internal(false);\n\t\t\t})\n\t\t\t.onStop(() => {\n\t\t\t\tcancelAnimationFrame(animationRequest);\n\t\t\t})\n\t\t\t.start();\n\n\t\tconst animate = (time?: number) => {\n\t\t\tif (!newTween[\"isPlaying\"]()) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tnewTween.update(time);\n\t\t\tif (tweenConfigObj.scrollPosition === scrollPosition) {\n\t\t\t\tthis.refresh_internal(false, animationCompletedCallback);\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tthis.zone.runOutsideAngular(() => {\n\t\t\t\tanimationRequest = requestAnimationFrame(animate);\n\t\t\t});\n\t\t};\n\n\t\tanimate();\n\t\tthis.currentTween = newTween;\n\t}\n\n\tprotected isAngularUniversalSSR: boolean;\n\n\tconstructor(protected readonly element: ElementRef,\n\t\tprotected readonly renderer: Renderer2,\n\t\tprotected readonly zone: NgZone,\n\t\tprotected changeDetectorRef: ChangeDetectorRef,\n\t\t@Inject(PLATFORM_ID) platformId: Object,\n\t\t@Optional() @Inject('virtual-scroller-default-options')\n\t\toptions: VirtualScrollerDefaultOptions) {\n\t\t\t\n\t\tthis.isAngularUniversalSSR = isPlatformServer(platformId);\n\n\t\tthis.scrollThrottlingTime = options.scrollThrottlingTime;\n\t\tthis.scrollDebounceTime = options.scrollDebounceTime;\n\t\tthis.scrollAnimationTime = options.scrollAnimationTime;\n\t\tthis.scrollbarWidth = options.scrollbarWidth;\n\t\tthis.scrollbarHeight = options.scrollbarHeight;\n\t\tthis.checkResizeInterval = options.checkResizeInterval;\n\t\tthis.resizeBypassRefreshThreshold = options.resizeBypassRefreshThreshold;\n\t\tthis.modifyOverflowStyleOfParentScroll = options.modifyOverflowStyleOfParentScroll;\n\t\tthis.stripedTable = options.stripedTable;\n\n\t\tthis.horizontal = false;\n\t\tthis.resetWrapGroupDimensions();\n\t}\n\t\n\tprotected getElementSize(element: HTMLElement) : ClientRect {\n\t\tlet result = element.getBoundingClientRect();\n\t\tlet styles = getComputedStyle(element);\n\t\tlet marginTop = parseInt(styles['margin-top'], 10) || 0;\n\t\tlet marginBottom = parseInt(styles['margin-bottom'], 10) || 0;\n\t\tlet marginLeft = parseInt(styles['margin-left'], 10) || 0;\n\t\tlet marginRight = parseInt(styles['margin-right'], 10) || 0;\n\t\t\n\t\treturn {\n\t\t\ttop: result.top + marginTop,\n\t\t\tbottom: result.bottom + marginBottom,\n\t\t\tleft: result.left + marginLeft,\n\t\t\tright: result.right + marginRight,\n\t\t\twidth: result.width + marginLeft + marginRight,\n\t\t\theight: result.height + marginTop + marginBottom\n\t\t};\n\t}\n\n\tprotected previousScrollBoundingRect: ClientRect;\n\tprotected checkScrollElementResized(): void {\n\t\tlet boundingRect = this.getElementSize(this.getScrollElement());\n\n\t\tlet sizeChanged: boolean;\n\t\tif (!this.previousScrollBoundingRect) {\n\t\t\tsizeChanged = true;\n\t\t} else {\n\t\t\tlet widthChange = Math.abs(boundingRect.width - this.previousScrollBoundingRect.width);\n\t\t\tlet heightChange = Math.abs(boundingRect.height - this.previousScrollBoundingRect.height);\n\t\t\tsizeChanged = widthChange > this.resizeBypassRefreshThreshold || heightChange > this.resizeBypassRefreshThreshold;\n\t\t}\n\n\t\tif (sizeChanged) {\n\t\t\tthis.previousScrollBoundingRect = boundingRect;\n\t\t\tif (boundingRect.width > 0 && boundingRect.height > 0) {\n\t\t\t\tthis.refresh_internal(false);\n\t\t\t}\n\t\t}\n\t}\n\n\tprotected _invisiblePaddingProperty;\n\tprotected _offsetType;\n\tprotected _scrollType;\n\tprotected _pageOffsetType;\n\tprotected _childScrollDim;\n\tprotected _translateDir;\n\tprotected _marginDir;\n\tprotected updateDirection(): void {\n\t\tif (this.horizontal) {\n\t\t\tthis._invisiblePaddingProperty = 'width';\n\t\t\tthis._offsetType = 'offsetLeft';\n\t\t\tthis._pageOffsetType = 'pageXOffset';\n\t\t\tthis._childScrollDim = 'childWidth';\n\t\t\tthis._marginDir = 'margin-left';\n\t\t\tthis._translateDir = 'translateX';\n\t\t\tthis._scrollType = 'scrollLeft';\n\t\t}\n\t\telse {\n\t\t\tthis._invisiblePaddingProperty = 'height';\n\t\t\tthis._offsetType = 'offsetTop';\n\t\t\tthis._pageOffsetType = 'pageYOffset';\n\t\t\tthis._childScrollDim = 'childHeight';\n\t\t\tthis._marginDir = 'margin-top';\n\t\t\tthis._translateDir = 'translateY';\n\t\t\tthis._scrollType = 'scrollTop';\n\t\t}\n\t}\n\n\tprotected debounce(func: Function, wait: number): Function {\n\t\tconst throttled = this.throttleTrailing(func, wait);\n\t\tconst result = function () {\n\t\t\tthrottled['cancel']();\n\t\t\tthrottled.apply(this, arguments);\n\t\t};\n\t\tresult['cancel'] = function () {\n\t\t\tthrottled['cancel']();\n\t\t};\n\n\t\treturn result;\n\t}\n\n\tprotected throttleTrailing(func: Function, wait: number): Function {\n\t\tlet timeout = undefined;\n\t\tlet _arguments = arguments;\n\t\tconst result = function () {\n\t\t\tconst _this = this;\n\t\t\t_arguments = arguments\n\n\t\t\tif (timeout) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tif (wait <= 0) {\n\t\t\t\tfunc.apply(_this, _arguments);\n\t\t\t} else {\n\t\t\t\ttimeout = setTimeout(function () {\n\t\t\t\t\ttimeout = undefined;\n\t\t\t\t\tfunc.apply(_this, _arguments);\n\t\t\t\t}, wait);\n\t\t\t}\n\t\t};\n\t\tresult['cancel'] = function () {\n\t\t\tif (timeout) {\n\t\t\t\tclearTimeout(timeout);\n\t\t\t\ttimeout = undefined;\n\t\t\t}\n\t\t};\n\n\t\treturn result;\n\t}\n\n\tprotected calculatedScrollbarWidth: number = 0;\n\tprotected calculatedScrollbarHeight: number = 0;\n\n\tprotected padding: number = 0;\n\tprotected previousViewPort: IViewport = {};\n\tprotected currentTween: tween.Tween;\n\tprotected cachedItemsLength: number;\n\n\tprotected disposeScrollHandler: () => void | undefined;\n\tprotected disposeResizeHandler: () => void | undefined;\n\n\tprotected refresh_internal(itemsArrayModified: boolean, refreshCompletedCallback: () => void = undefined, maxRunTimes: number = 2): void {\n\t\t//note: maxRunTimes is to force it to keep recalculating if the previous iteration caused a re-render (different sliced items in viewport or scrollPosition changed).\n\t\t//The default of 2x max will probably be accurate enough without causing too large a performance bottleneck\n\t\t//The code would typically quit out on the 2nd iteration anyways. The main time it'd think more than 2 runs would be necessary would be for vastly different sized child items or if this is the 1st time the items array was initialized.\n\t\t//Without maxRunTimes, If the user is actively scrolling this code would become an infinite loop until they stopped scrolling. This would be okay, except each scroll event would start an additional infinte loop. We want to short-circuit it to prevent this.\n\n\t\tif (itemsArrayModified && this.previousViewPort && this.previousViewPort.scrollStartPosition > 0) {\n\t\t//if items were prepended, scroll forward to keep same items visible\n\t\t\tlet oldViewPort = this.previousViewPort;\n\t\t\tlet oldViewPortItems = this.viewPortItems;\n\t\t\t\n\t\t\tlet oldRefreshCompletedCallback = refreshCompletedCallback;\n\t\t\trefreshCompletedCallback = () => {\n\t\t\t\tlet scrollLengthDelta = this.previousViewPort.scrollLength - oldViewPort.scrollLength;\n\t\t\t\tif (scrollLengthDelta > 0 && this.viewPortItems) {\n\t\t\t\t\tlet oldStartItem = oldViewPortItems[0];\n\t\t\t\t\tlet oldStartItemIndex = this.items.findIndex(x => this.compareItems(oldStartItem, x));\n\t\t\t\t\tif (oldStartItemIndex > this.previousViewPort.startIndexWithBuffer) {\n\t\t\t\t\t\tlet itemOrderChanged = false;\n\t\t\t\t\t\tfor (let i = 1; i < this.viewPortItems.length; ++i) {\n\t\t\t\t\t\t\tif (!this.compareItems(this.items[oldStartItemIndex + i], oldViewPortItems[i])) {\n\t\t\t\t\t\t\t\titemOrderChanged = true;\n\t\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\t\t\t\t\t\t\n\t\t\t\t\t\tif (!itemOrderChanged) {\n\t\t\t\t\t\t\tthis.scrollToPosition(this.previousViewPort.scrollStartPosition + scrollLengthDelta , 0, oldRefreshCompletedCallback);\n\t\t\t\t\t\t\treturn;\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\t\n\t\t\t\tif (oldRefreshCompletedCallback) {\n\t\t\t\t\toldRefreshCompletedCallback();\n\t\t\t\t}\n\t\t\t};\n\t\t}\t\t\t\n\n\t\tthis.zone.runOutsideAngular(() => {\n\t\t\trequestAnimationFrame(() => {\n\n\t\t\t\tif (itemsArrayModified) {\n\t\t\t\t\tthis.resetWrapGroupDimensions();\n\t\t\t\t}\n\t\t\t\tlet viewport = this.calculateViewport();\n\n\t\t\t\tlet startChanged = itemsArrayModified || viewport.startIndex !== this.previousViewPort.startIndex;\n\t\t\t\tlet endChanged = itemsArrayModified || viewport.endIndex !== this.previousViewPort.endIndex;\n\t\t\t\tlet scrollLengthChanged = viewport.scrollLength !== this.previousViewPort.scrollLength;\n\t\t\t\tlet paddingChanged = viewport.padding !== this.previousViewPort.padding;\n\t\t\t\tlet scrollPositionChanged = viewport.scrollStartPosition !== this.previousViewPort.scrollStartPosition || viewport.scrollEndPosition !== this.previousViewPort.scrollEndPosition || viewport.maxScrollPosition !== this.previousViewPort.maxScrollPosition;\n\n\t\t\t\tthis.previousViewPort = viewport;\n\n\t\t\t\tif (scrollLengthChanged) {\n\t\t\t\t\tthis.renderer.setStyle(this.invisiblePaddingElementRef.nativeElement, this._invisiblePaddingProperty, `${viewport.scrollLength}px`);\n\t\t\t\t}\n\n\t\t\t\tif (paddingChanged) {\n\t\t\t\t\tif (this.useMarginInsteadOfTranslate) {\n\t\t\t\t\t\tthis.renderer.setStyle(this.contentElementRef.nativeElement, this._marginDir, `${viewport.padding}px`);\n\t\t\t\t\t}\n\t\t\t\t\telse {\n\t\t\t\t\t\tthis.renderer.setStyle(this.contentElementRef.nativeElement, 'transform', `${this._translateDir}(${viewport.padding}px)`);\n\t\t\t\t\t\tthis.renderer.setStyle(this.contentElementRef.nativeElement, 'webkitTransform', `${this._translateDir}(${viewport.padding}px)`);\n\t\t\t\t\t}\n\t\t\t\t}\n\n\t\t\t\tif (this.headerElementRef) {\n\t\t\t\t\tlet scrollPosition = this.getScrollElement()[this._scrollType];\n\t\t\t\t\tlet containerOffset = this.getElementsOffset();\n\t\t\t\t\tlet offset = Math.max(scrollPosition - viewport.padding - containerOffset + this.headerElementRef.nativeElement.clientHeight, 0);\n\t\t\t\t\tthis.renderer.setStyle(this.headerElementRef.nativeElement, 'transform', `${this._translateDir}(${offset}px)`);\n\t\t\t\t\tthis.renderer.setStyle(this.headerElementRef.nativeElement, 'webkitTransform', `${this._translateDir}(${offset}px)`);\n\t\t\t\t}\n\n\t\t\t\tconst changeEventArg: IPageInfo = (startChanged || endChanged) ? {\n\t\t\t\t\tstartIndex: viewport.startIndex,\n\t\t\t\t\tendIndex: viewport.endIndex,\n\t\t\t\t\tscrollStartPosition: viewport.scrollStartPosition,\n\t\t\t\t\tscrollEndPosition: viewport.scrollEndPosition,\n\t\t\t\t\tstartIndexWithBuffer: viewport.startIndexWithBuffer,\n\t\t\t\t\tendIndexWithBuffer: viewport.endIndexWithBuffer,\n\t\t\t\t\tmaxScrollPosition: viewport.maxScrollPosition\n\t\t\t\t} : undefined;\n\n\n\t\t\t\tif (startChanged || endChanged || scrollPositionChanged) {\n\t\t\t\t\tconst handleChanged = () => {\n\t\t\t\t\t\t// update the scroll list to trigger re-render of components in viewport\n\t\t\t\t\t\tthis.viewPortItems = viewport.startIndexWithBuffer >= 0 && viewport.endIndexWithBuffer >= 0 ? this.items.slice(viewport.startIndexWithBuffer, viewport.endIndexWithBuffer + 1) : [];\n\t\t\t\t\t\tthis.vsUpdate.emit(this.viewPortItems);\n\n\t\t\t\t\t\tif (startChanged) {\n\t\t\t\t\t\t\tthis.vsStart.emit(changeEventArg);\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\tif (endChanged) {\n\t\t\t\t\t\t\tthis.vsEnd.emit(changeEventArg);\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\tif (startChanged || endChanged) {\n\t\t\t\t\t\t\tthis.changeDetectorRef.markForCheck();\n\t\t\t\t\t\t\tthis.vsChange.emit(changeEventArg);\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\tif (maxRunTimes > 0) {\n\t\t\t\t\t\t\tthis.refresh_internal(false, refreshCompletedCallback, maxRunTimes - 1);\n\t\t\t\t\t\t\treturn;\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\tif (refreshCompletedCallback) {\n\t\t\t\t\t\t\trefreshCompletedCallback();\n\t\t\t\t\t\t}\n\t\t\t\t\t};\n\n\n\t\t\t\t\tif (this.executeRefreshOutsideAngularZone) {\n\t\t\t\t\t\thandleChanged();\n\t\t\t\t\t}\n\t\t\t\t\telse {\n\t\t\t\t\t\tthis.zone.run(handleChanged);\n\t\t\t\t\t}\n\t\t\t\t} else {\n\t\t\t\t\tif (maxRunTimes > 0 && (scrollLengthChanged || paddingChanged)) {\n\t\t\t\t\t\tthis.refresh_internal(false, refreshCompletedCallback, maxRunTimes - 1);\n\t\t\t\t\t\treturn;\n\t\t\t\t\t}\n\n\t\t\t\t\tif (refreshCompletedCallback) {\n\t\t\t\t\t\trefreshCompletedCallback();\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t});\n\t\t});\n\t}\n\n\tprotected getScrollElement(): HTMLElement {\n\t\treturn this.parentScroll instanceof Window ? document.scrollingElement || document.documentElement || document.body : this.parentScroll || this.element.nativeElement;\n\t}\n\n\tprotected addScrollEventHandlers(): void {\n\t\tif (this.isAngularUniversalSSR) {\n\t\t\treturn;\n\t\t}\n\n\t\tlet scrollElement = this.getScrollElement();\n\n\t\tthis.removeScrollEventHandlers();\n\n\t\tthis.zone.runOutsideAngular(() => {\n\t\t\tif (this.parentScroll instanceof Window) {\n\t\t\t\tthis.disposeScrollHandler = this.renderer.listen('window', 'scroll', this.onScroll);\n\t\t\t\tthis.disposeResizeHandler = this.renderer.listen('window', 'resize', this.onScroll);\n\t\t\t}\n\t\t\telse {\n\t\t\t\tthis.disposeScrollHandler = this.renderer.listen(scrollElement, 'scroll', this.onScroll);\n\t\t\t\tif (this._checkResizeInterval > 0) {\n\t\t\t\t\tthis.checkScrollElementResizedTimer = setInterval(() => { this.checkScrollElementResized(); }, this._checkResizeInterval);\n\t\t\t\t}\n\t\t\t}\n\t\t});\n\t}\n\n\tprotected removeScrollEventHandlers(): void {\n\t\tif (this.checkScrollElementResizedTimer) {\n\t\t\tclearInterval(this.checkScrollElementResizedTimer);\n\t\t}\n\n\t\tif (this.disposeScrollHandler) {\n\t\t\tthis.disposeScrollHandler();\n\t\t\tthis.disposeScrollHandler = undefined;\n\t\t}\n\n\t\tif (this.disposeResizeHandler) {\n\t\t\tthis.disposeResizeHandler();\n\t\t\tthis.disposeResizeHandler = undefined;\n\t\t}\n\t}\n\n\tprotected getElementsOffset(): number {\n\t\tif (this.isAngularUniversalSSR) {\n\t\t\treturn 0;\n\t\t}\n\n\t\tlet offset = 0;\n\n\t\tif (this.containerElementRef && this.containerElementRef.nativeElement) {\n\t\t\toffset += this.containerElementRef.nativeElement[this._offsetType];\n\t\t}\n\n\t\tif (this.parentScroll) {\n\t\t\tlet scrollElement = this.getScrollElement();\n\t\t\tlet elementClientRect = this.getElementSize(this.element.nativeElement);\n\t\t\tlet scrollClientRect = this.getElementSize(scrollElement);\n\t\t\tif (this.horizontal) {\n\t\t\t\toffset += elementClientRect.left - scrollClientRect.left;\n\t\t\t}\n\t\t\telse {\n\t\t\t\toffset += elementClientRect.top - scrollClientRect.top;\n\t\t\t}\n\n\t\t\tif (!(this.parentScroll instanceof Window)) {\n\t\t\t\toffset += scrollElement[this._scrollType];\n\t\t\t}\n\t\t}\n\n\t\treturn offset;\n\t}\n\n\tprotected countItemsPerWrapGroup(): number {\n\t\tif (this.isAngularUniversalSSR) {\n\t\t\treturn Math.round(this.horizontal ? this.ssrViewportHeight / this.ssrChildHeight : this.ssrViewportWidth / this.ssrChildWidth);\n\t\t}\n\n\t\tlet propertyName = this.horizontal ? 'offsetLeft' : 'offsetTop';\n\t\tlet children = ((this.containerElementRef && this.containerElementRef.nativeElement) || this.contentElementRef.nativeElement).children;\n\n\t\tlet childrenLength = children ? children.length : 0;\n\t\tif (childrenLength === 0) {\n\t\t\treturn 1;\n\t\t}\n\n\t\tlet firstOffset = children[0][propertyName];\n\t\tlet result = 1;\n\t\twhile (result < childrenLength && firstOffset === children[result][propertyName]) {\n\t\t\t++result;\n\t\t}\n\n\t\treturn result;\n\t}\n\n\tprotected getScrollStartPosition(): number {\n\t\tlet windowScrollValue = undefined;\n\t\tif (this.parentScroll instanceof Window) {\n\t\t\twindowScrollValue = window[this._pageOffsetType];\n\t\t}\n\n\t\treturn windowScrollValue || this.getScrollElement()[this._scrollType] || 0;\n\t}\n\n\tprotected minMeasuredChildWidth: number;\n\tprotected minMeasuredChildHeight: number;\n\n\tprotected wrapGroupDimensions: WrapGroupDimensions;\n\n\tprotected resetWrapGroupDimensions(): void {\n\t\tconst oldWrapGroupDimensions = this.wrapGroupDimensions;\n\t\tthis.invalidateAllCachedMeasurements();\n\n\t\tif (!this.enableUnequalChildrenSizes || !oldWrapGroupDimensions || oldWrapGroupDimensions.numberOfKnownWrapGroupChildSizes === 0) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst itemsPerWrapGroup: number = this.countItemsPerWrapGroup();\n\t\tfor (let wrapGroupIndex = 0; wrapGroupIndex < oldWrapGroupDimensions.maxChildSizePerWrapGroup.length; ++wrapGroupIndex) {\n\t\t\tconst oldWrapGroupDimension: WrapGroupDimension = oldWrapGroupDimensions.maxChildSizePerWrapGroup[wrapGroupIndex];\n\t\t\tif (!oldWrapGroupDimension || !oldWrapGroupDimension.items || !oldWrapGroupDimension.items.length) {\n\t\t\t\tcontinue;\n\t\t\t}\n\n\t\t\tif (oldWrapGroupDimension.items.length !== itemsPerWrapGroup) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tlet itemsChanged = false;\n\t\t\tlet arrayStartIndex = itemsPerWrapGroup * wrapGroupIndex;\n\t\t\tfor (let i = 0; i < itemsPerWrapGroup; ++i) {\n\t\t\t\tif (!this.compareItems(oldWrapGroupDimension.items[i], this.items[arrayStartIndex + i])) {\n\t\t\t\t\titemsChanged = true;\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tif (!itemsChanged) {\n\t\t\t\t++this.wrapGroupDimensions.numberOfKnownWrapGroupChildSizes;\n\t\t\t\tthis.wrapGroupDimensions.sumOfKnownWrapGroupChildWidths += oldWrapGroupDimension.childWidth || 0;\n\t\t\t\tthis.wrapGroupDimensions.sumOfKnownWrapGroupChildHeights += oldWrapGroupDimension.childHeight || 0;\n\t\t\t\tthis.wrapGroupDimensions.maxChildSizePerWrapGroup[wrapGroupIndex] = oldWrapGroupDimension;\n\t\t\t}\n\t\t}\n\t}\n\n\tprotected calculateDimensions(): IDimensions {\n\t\tlet scrollElement = this.getScrollElement();\n\n\t\tconst maxCalculatedScrollBarSize: number = 25; // Note: Formula to auto-calculate doesn't work for ParentScroll, so we default to this if not set by consuming application\n\t\tthis.calculatedScrollbarHeight = Math.max(Math.min(scrollElement.offsetHeight - scrollElement.clientHeight, maxCalculatedScrollBarSize), this.calculatedScrollbarHeight);\n\t\tthis.calculatedScrollbarWidth = Math.max(Math.min(scrollElement.offsetWidth - scrollElement.clientWidth, maxCalculatedScrollBarSize), this.calculatedScrollbarWidth);\n\n\t\tlet viewportWidth = scrollElement.offsetWidth - (this.scrollbarWidth || this.calculatedScrollbarWidth || (this.horizontal ? 0 : maxCalculatedScrollBarSize));\n\t\tlet viewportHeight = scrollElement.offsetHeight - (this.scrollbarHeight || this.calculatedScrollbarHeight || (this.horizontal ? maxCalculatedScrollBarSize : 0));\n\n\t\tlet content = (this.containerElementRef && this.containerElementRef.nativeElement) || this.contentElementRef.nativeElement;\n\n\t\tlet itemsPerWrapGroup = this.countItemsPerWrapGroup();\n\t\tlet wrapGroupsPerPage;\n\n\t\tlet defaultChildWidth;\n\t\tlet defaultChildHeight;\n\n\t\tif (this.isAngularUniversalSSR) {\n\t\t\tviewportWidth = this.ssrViewportWidth;\n\t\t\tviewportHeight = this.ssrViewportHeight;\n\t\t\tdefaultChildWidth = this.ssrChildWidth;\n\t\t\tdefaultChildHeight = this.ssrChildHeight;\n\t\t\tlet itemsPerRow = Math.max(Math.ceil(viewportWidth / defaultChildWidth), 1);\n\t\t\tlet itemsPerCol = Math.max(Math.ceil(viewportHeight / defaultChildHeight), 1);\n\t\t\twrapGroupsPerPage = this.horizontal ? itemsPerRow : itemsPerCol;\n\t\t}\n\t\telse if (!this.enableUnequalChildrenSizes) {\n\t\t\tif (content.children.length > 0) {\n\t\t\t\tif (!this.childWidth || !this.childHeight) {\n\t\t\t\t\tif (!this.minMeasuredChildWidth && viewportWidth > 0) {\n\t\t\t\t\t\tthis.minMeasuredChildWidth = viewportWidth;\n\t\t\t\t\t}\n\t\t\t\t\tif (!this.minMeasuredChildHeight && viewportHeight > 0) {\n\t\t\t\t\t\tthis.minMeasuredChildHeight = viewportHeight;\n\t\t\t\t\t}\n\t\t\t\t}\n\n\t\t\t\tlet child = content.children[0];\n\t\t\t\tlet clientRect = this.getElementSize(child);\n\t\t\t\tthis.minMeasuredChildWidth = Math.min(this.minMeasuredChildWidth, clientRect.width);\n\t\t\t\tthis.minMeasuredChildHeight = Math.min(this.minMeasuredChildHeight, clientRect.height);\n\t\t\t}\n\n\t\t\tdefaultChildWidth = this.childWidth || this.minMeasuredChildWidth || viewportWidth;\n\t\t\tdefaultChildHeight = this.childHeight || this.minMeasuredChildHeight || viewportHeight;\n\t\t\tlet itemsPerRow = Math.max(Math.ceil(viewportWidth / defaultChildWidth), 1);\n\t\t\tlet itemsPerCol = Math.max(Math.ceil(viewportHeight / defaultChildHeight), 1);\n\t\t\twrapGroupsPerPage = this.horizontal ? itemsPerRow : itemsPerCol;\n\t\t} else {\n\t\t\tlet scrollOffset = scrollElement[this._scrollType] - (this.previousViewPort ? this.previousViewPort.padding : 0);\n\n\t\t\tlet arrayStartIndex = this.previousViewPort.startIndexWithBuffer || 0;\n\t\t\tlet wrapGroupIndex = Math.ceil(arrayStartIndex / itemsPerWrapGroup);\n\n\t\t\tlet maxWidthForWrapGroup = 0;\n\t\t\tlet maxHeightForWrapGroup = 0;\n\t\t\tlet sumOfVisibleMaxWidths = 0;\n\t\t\tlet sumOfVisibleMaxHeights = 0;\n\t\t\twrapGroupsPerPage = 0;\n\n\t\t\tfor (let i = 0; i < content.children.length; ++i) {\n\t\t\t\t++arrayStartIndex;\n\t\t\t\tlet child = content.children[i];\n\t\t\t\tlet clientRect = this.getElementSize(child);\n\n\t\t\t\tmaxWidthForWrapGroup = Math.max(maxWidthForWrapGroup, clientRect.width);\n\t\t\t\tmaxHeightForWrapGroup = Math.max(maxHeightForWrapGroup, clientRect.height);\n\n\t\t\t\tif (arrayStartIndex % itemsPerWrapGroup === 0) {\n\t\t\t\t\tlet oldValue = this.wrapGroupDimensions.maxChildSizePerWrapGroup[wrapGroupIndex];\n\t\t\t\t\tif (oldValue) {\n\t\t\t\t\t\t--this.wrapGroupDimensions.numberOfKnownWrapGroupChildSizes;\n\t\t\t\t\t\tthis.wrapGroupDimensions.sumOfKnownWrapGroupChildWidths -= oldValue.childWidth || 0;\n\t\t\t\t\t\tthis.wrapGroupDimensions.sumOfKnownWrapGroupChildHeights -= oldValue.childHeight || 0;\n\t\t\t\t\t}\n\n\t\t\t\t\t++this.wrapGroupDimensions.numberOfKnownWrapGroupChildSizes;\n\t\t\t\t\tconst items = this.items.slice(arrayStartIndex - itemsPerWrapGroup, arrayStartIndex);\n\t\t\t\t\tthis.wrapGroupDimensions.maxChildSizePerWrapGroup[wrapGroupIndex] = {\n\t\t\t\t\t\tchildWidth: maxWidthForWrapGroup,\n\t\t\t\t\t\tchildHeight: maxHeightForWrapGroup,\n\t\t\t\t\t\titems: items\n\t\t\t\t\t};\n\t\t\t\t\tthis.wrapGroupDimensions.sumOfKnownWrapGroupChildWidths += maxWidthForWrapGroup;\n\t\t\t\t\tthis.wrapGroupDimensions.sumOfKnownWrapGroupChildHeights += maxHeightForWrapGroup;\n\n\t\t\t\t\tif (this.horizontal) {\n\t\t\t\t\t\tlet maxVisibleWidthForWrapGroup = Math.min(maxWidthForWrapGroup, Math.max(viewportWidth - sumOfVisibleMaxWidths, 0));\n\t\t\t\t\t\tif (scrollOffset > 0) {\n\t\t\t\t\t\t\tlet scrollOffsetToRemove = Math.min(scrollOffset, maxVisibleWidthForWrapGroup);\n\t\t\t\t\t\t\tmaxVisibleWidthForWrapGroup -= scrollOffsetToRemove;\n\t\t\t\t\t\t\tscrollOffset -= scrollOffsetToRemove;\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\tsumOfVisibleMaxWidths += maxVisibleWidthForWrapGroup;\n\t\t\t\t\t\tif (maxVisibleWidthForWrapGroup > 0 && viewportWidth >= sumOfVisibleMaxWidths) {\n\t\t\t\t\t\t\t++wrapGroupsPerPage;\n\t\t\t\t\t\t}\n\t\t\t\t\t} else {\n\t\t\t\t\t\tlet maxVisibleHeightForWrapGroup = Math.min(maxHeightForWrapGroup, Math.max(viewportHeight - sumOfVisibleMaxHeights, 0));\n\t\t\t\t\t\tif (scrollOffset > 0) {\n\t\t\t\t\t\t\tlet scrollOffsetToRemove = Math.min(scrollOffset, maxVisibleHeightForWrapGroup);\n\t\t\t\t\t\t\tmaxVisibleHeightForWrapGroup -= scrollOffsetToRemove;\n\t\t\t\t\t\t\tscrollOffset -= scrollOffsetToRemove;\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\tsumOfVisibleMaxHeights += maxVisibleHeightForWrapGroup;\n\t\t\t\t\t\tif (maxVisibleHeightForWrapGroup > 0 && viewportHeight >= sumOfVisibleMaxHeights) {\n\t\t\t\t\t\t\t++wrapGroupsPerPage;\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\n\t\t\t\t\t++wrapGroupIndex;\n\n\t\t\t\t\tmaxWidthForWrapGroup = 0;\n\t\t\t\t\tmaxHeightForWrapGroup = 0;\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tlet averageChildWidth = this.wrapGroupDimensions.sumOfKnownWrapGroupChildWidths / this.wrapGroupDimensions.numberOfKnownWrapGroupChildSizes;\n\t\t\tlet averageChildHeight = this.wrapGroupDimensions.sumOfKnownWrapGroupChildHeights / this.wrapGroupDimensions.numberOfKnownWrapGroupChildSizes;\n\t\t\tdefaultChildWidth = this.childWidth || averageChildWidth || viewportWidth;\n\t\t\tdefaultChildHeight = this.childHeight || averageChildHeight || viewportHeight;\n\n\t\t\tif (this.horizontal) {\n\t\t\t\tif (viewportWidth > sumOfVisibleMaxWidths) {\n\t\t\t\t\twrapGroupsPerPage += Math.ceil((viewportWidth - sumOfVisibleMaxWidths) / defaultChildWidth);\n\t\t\t\t}\n\t\t\t} else {\n\t\t\t\tif (viewportHeight > sumOfVisibleMaxHeights) {\n\t\t\t\t\twrapGroupsPerPage += Math.ceil((viewportHeight - sumOfVisibleMaxHeights) / defaultChildHeight);\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\tlet itemCount = this.items.length;\n\t\tlet itemsPerPage = itemsPerWrapGroup * wrapGroupsPerPage;\n\t\tlet pageCount_fractional = itemCount / itemsPerPage;\n\t\tlet numberOfWrapGroups = Math.ceil(itemCount / itemsPerWrapGroup);\n\n\t\tlet scrollLength = 0;\n\n\t\tlet defaultScrollLengthPerWrapGroup = this.horizontal ? defaultChildWidth : defaultChildHeight;\n\t\tif (this.enableUnequalChildrenSizes) {\n\t\t\tlet numUnknownChildSizes = 0;\n\t\t\tfor (let i = 0; i < numberOfWrapGroups; ++i) {\n\t\t\t\tlet childSize = this.wrapGroupDimensions.maxChildSizePerWrapGroup[i] && this.wrapGroupDimensions.maxChildSizePerWrapGroup[i][this._childScrollDim];\n\t\t\t\tif (childSize) {\n\t\t\t\t\tscrollLength += childSize;\n\t\t\t\t} else {\n\t\t\t\t\t++numUnknownChildSizes;\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tscrollLength += Math.round(numUnknownChildSizes * defaultScrollLengthPerWrapGroup);\n\t\t} else {\n\t\t\tscrollLength = numberOfWrapGroups * defaultScrollLengthPerWrapGroup;\n\t\t}\n\n\t\tif (this.headerElementRef) {\n\t\t\tscrollLength += this.headerElementRef.nativeElement.clientHeight;\n\t\t}\n\n\t\tlet viewportLength = this.horizontal ? viewportWidth : viewportHeight;\n\t\tlet maxScrollPosition = Math.max(scrollLength - viewportLength, 0);\n\n\t\treturn {\n\t\t\titemCount: itemCount,\n\t\t\titemsPerWrapGroup: itemsPerWrapGroup,\n\t\t\twrapGroupsPerPage: wrapGroupsPerPage,\n\t\t\titemsPerPage: itemsPerPage,\n\t\t\tpageCount_fractional: pageCount_fractional,\n\t\t\tchildWidth: defaultChildWidth,\n\t\t\tchildHeight: defaultChildHeight,\n\t\t\tscrollLength: scrollLength,\n\t\t\tviewportLength: viewportLength,\n\t\t\tmaxScrollPosition: maxScrollPosition\n\t\t};\n\t}\n\n\tprotected cachedPageSize: number = 0;\n\tprotected previousScrollNumberElements: number = 0;\n\n\tprotected calculatePadding(arrayStartIndexWithBuffer: number, dimensions: IDimensions): number {\n\t\tif (dimensions.itemCount === 0) {\n\t\t\treturn 0;\n\t\t}\n\n\t\tlet defaultScrollLengthPerWrapGroup = dimensions[this._childScrollDim];\n\t\tlet startingWrapGroupIndex = Math.floor(arrayStartIndexWithBuffer / dimensions.itemsPerWrapGroup) || 0;\n\n\t\tif (!this.enableUnequalChildrenSizes) {\n\t\t\treturn defaultScrollLengthPerWrapGroup * startingWrapGroupIndex;\n\t\t}\n\n\t\tlet numUnknownChildSizes = 0;\n\t\tlet result = 0;\n\t\tfor (let i = 0; i < startingWrapGroupIndex; ++i) {\n\t\t\tlet childSize = this.wrapGroupDimensions.maxChildSizePerWrapGroup[i] && this.wrapGroupDimensions.maxChildSizePerWrapGroup[i][this._childScrollDim];\n\t\t\tif (childSize) {\n\t\t\t\tresult += childSize;\n\t\t\t} else {\n\t\t\t\t++numUnknownChildSizes;\n\t\t\t}\n\t\t}\n\t\tresult += Math.round(numUnknownChildSizes * defaultScrollLengthPerWrapGroup);\n\n\t\treturn result;\n\t}\n\n\tprotected calculatePageInfo(scrollPosition: number, dimensions: IDimensions): IPageInfo {\n\t\tlet scrollPercentage = 0;\n\t\tif (this.enableUnequalChildrenSizes) {\n\t\t\tconst numberOfWrapGroups = Math.ceil(dimensions.itemCount / dimensions.itemsPerWrapGroup);\n\t\t\tlet totalScrolledLength = 0;\n\t\t\tlet defaultScrollLengthPerWrapGroup = dimensions[this._childScrollDim];\n\t\t\tfor (let i = 0; i < numberOfWrapGroups; ++i) {\n\t\t\t\tlet childSize = this.wrapGroupDimensions.maxChildSizePerWrapGroup[i] && this.wrapGroupDimensions.maxChildSizePerWrapGroup[i][this._childScrollDim];\n\t\t\t\tif (childSize) {\n\t\t\t\t\ttotalScrolledLength += childSize;\n\t\t\t\t} else {\n\t\t\t\t\ttotalScrolledLength += defaultScrollLengthPerWrapGroup;\n\t\t\t\t}\n\n\t\t\t\tif (scrollPosition < totalScrolledLength) {\n\t\t\t\t\tscrollPercentage = i / numberOfWrapGroups;\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t}\n\t\t} else {\n\t\t\tscrollPercentage = scrollPosition / dimensions.scrollLength;\n\t\t}\n\n\t\tlet startingArrayIndex_fractional = Math.min(Math.max(scrollPercentage * dimensions.pageCount_fractional, 0), dimensions.pageCount_fractional) * dimensions.itemsPerPage;\n\n\t\tlet maxStart = dimensions.itemCount - dimensions.itemsPerPage - 1;\n\t\tlet arrayStartIndex = Math.min(Math.floor(startingArrayIndex_fractional), maxStart);\n\t\tarrayStartIndex -= arrayStartIndex % dimensions.itemsPerWrapGroup; // round down to start of wrapGroup\n\n\t\tif (this.stripedTable) {\n\t\t\tlet bufferBoundary = 2 * dimensions.itemsPerWrapGroup;\n\t\t\tif (arrayStartIndex % bufferBoundary !== 0) {\n\t\t\t\tarrayStartIndex = Math.max(arrayStartIndex - arrayStartIndex % bufferBoundary, 0);\n\t\t\t}\n\t\t}\n\n\t\tlet arrayEndIndex = Math.ceil(startingArrayIndex_fractional) + dimensions.itemsPerPage - 1;\n\t\tlet endIndexWithinWrapGroup = (arrayEndIndex + 1) % dimensions.itemsPerWrapGroup;\n\t\tif (endIndexWithinWrapGroup > 0) {\n\t\t\tarrayEndIndex += dimensions.itemsPerWrapGroup - endIndexWithinWrapGroup; // round up to end of wrapGroup\n\t\t}\n\n\t\tif (isNaN(arrayStartIndex)) {\n\t\t\tarrayStartIndex = 0;\n\t\t}\n\t\tif (isNaN(arrayEndIndex)) {\n\t\t\tarrayEndIndex = 0;\n\t\t}\n\n\t\tarrayStartIndex = Math.min(Math.max(arrayStartIndex, 0), dimensions.itemCount - 1);\n\t\tarrayEndIndex = Math.min(Math.max(arrayEndIndex, 0), dimensions.itemCount - 1);\n\n\t\tlet bufferSize = this.bufferAmount * dimensions.itemsPerWrapGroup;\n\t\tlet startIndexWithBuffer = Math.min(Math.max(arrayStartIndex - bufferSize, 0), dimensions.itemCount - 1);\n\t\tlet endIndexWithBuffer = Math.min(Math.max(arrayEndIndex + bufferSize, 0), dimensions.itemCount - 1);\n\n\t\treturn {\n\t\t\tstartIndex: arrayStartIndex,\n\t\t\tendIndex: arrayEndIndex,\n\t\t\tstartIndexWithBuffer: startIndexWithBuffer,\n\t\t\tendIndexWithBuffer: endIndexWithBuffer,\n\t\t\tscrollStartPosition: scrollPosition,\n\t\t\tscrollEndPosition: scrollPosition + dimensions.viewportLength,\n\t\t\tmaxScrollPosition: dimensions.maxScrollPosition\n\t\t};\n\t}\n\n\tprotected calculateViewport(): IViewport {\n\t\tlet dimensions = this.calculateDimensions();\n\t\tlet offset = this.getElementsOffset();\n\n\t\tlet scrollStartPosition = this.getScrollStartPosition();\n\t\tif (scrollStartPosition > (dimensions.scrollLength + offset) && !(this.parentScroll instanceof Window)) {\n\t\t\tscrollStartPosition = dimensions.scrollLength;\n\t\t} else {\n\t\t\tscrollStartPosition -= offset;\n\t\t}\n\t\tscrollStartPosition = Math.max(0, scrollStartPosition);\n\n\t\tlet pageInfo = this.calculatePageInfo(scrollStartPosition, dimensions);\n\t\tlet newPadding = this.calculatePadding(pageInfo.startIndexWithBuffer, dimensions);\n\t\tlet newScrollLength = dimensions.scrollLength;\n\n\t\treturn {\n\t\t\tstartIndex: pageInfo.startIndex,\n\t\t\tendIndex: pageInfo.endIndex,\n\t\t\tstartIndexWithBuffer: pageInfo.startIndexWithBuffer,\n\t\t\tendIndexWithBuffer: pageInfo.endIndexWithBuffer,\n\t\t\tpadding: Math.round(newPadding),\n\t\t\tscrollLength: Math.round(newScrollLength),\n\t\t\tscrollStartPosition: pageInfo.scrollStartPosition,\n\t\t\tscrollEndPosition: pageInfo.scrollEndPosition,\n\t\t\tmaxScrollPosition: pageInfo.maxScrollPosition\n\t\t};\n\t}\n}\n\n@NgModule({\n\texports: [VirtualScrollerComponent],\n\tdeclarations: [VirtualScrollerComponent],\n\timports: [CommonModule],\n\tproviders: [\n\t\t{\n\t\t\tprovide: 'virtual-scroller-default-options',\n\t\t\tuseFactory: VIRTUAL_SCROLLER_DEFAULT_OPTIONS_FACTORY\n\t\t}\n\t]\n})\nexport class VirtualScrollerModule { }","function webpackEmptyAsyncContext(req) {\n\t// Here Promise.resolve().then() is used instead of new Promise() to prevent\n\t// uncaught exception popping up in devtools\n\treturn Promise.resolve().then(function() {\n\t\tvar e = new Error(\"Cannot find module '\" + req + \"'\");\n\t\te.code = 'MODULE_NOT_FOUND';\n\t\tthrow e;\n\t});\n}\nwebpackEmptyAsyncContext.keys = function() { return []; };\nwebpackEmptyAsyncContext.resolve = webpackEmptyAsyncContext;\nmodule.exports = webpackEmptyAsyncContext;\nwebpackEmptyAsyncContext.id = \"./src/$$_lazy_route_resource lazy recursive\";","","import { Component, OnInit } from '@angular/core';\n\n@Component({\n selector: 'app-root',\n templateUrl: './app.component.html',\n styleUrls: ['./app.component.css']\n})\nexport class AppComponent implements OnInit {\n title = 'app works!';\n singleSelectionList = [];\n singleSelectionselectedItems = [];\n singleSelectionSettings = {};\n\n basicExampleList = [];\n basicExampleSelectedItems = [];\n basicExampleSettings = {};\n\n selectedItems3 = [];\n dropdownSettings3 = {};\n\n limitSelectionSelectedItems = [];\n limitSelectionSettings = {};\n\n disableModeSelectedItems = [];\n disableModeSettings = {};\n\n placeholderExampleList = [];\n placeholderExampleSelectedItems = [];\n placeholderExampleSettings = {};\n\n resetExampleList = [];\n resetExampleSelectedItems = [];\n resetExampleSettings = {};\n\n groupByExampleList = [];\n groupByExampleSelectedItems = [];\n groupByExampleSettings = {};\n\n templatingExampleList = [];\n templatingExampleSelectedItems = [];\n templatingExampleSettings = {};\n\n constructor(){\n \n }\n ngOnInit(){\n this.singleSelectionList = [\n {\"id\":1,\"itemName\":\"India\"},\n {\"id\":2,\"itemName\":\"Singapore\"},\n {\"id\":3,\"itemName\":\"Australia\"},\n {\"id\":4,\"itemName\":\"Canada\"},\n {\"id\":5,\"itemName\":\"South Korea\"}\n ];\n\n this.singleSelectionselectedItems = [\n {\"id\":2,\"itemName\":\"Singapore\"}];\n this.singleSelectionSettings = {singleSelection: true, text:\"Select Country\"};\n\n this.basicExampleList = [\n {\"id\":1,\"itemName\":\"India\"},\n {\"id\":2,\"itemName\":\"Singapore\"},\n {\"id\":3,\"itemName\":\"Australia\"},\n {\"id\":4,\"itemName\":\"Canada\"},\n {\"id\":5,\"itemName\":\"South Korea\"}, \n {\"id\":6,\"itemName\":\"Brazil\"} \n ];\n \n this.basicExampleSelectedItems = [\n {\"id\":1,\"itemName\":\"India\"},\n {\"id\":2,\"itemName\":\"Singapore\"},\n {\"id\":3,\"itemName\":\"Australia\"},\n {\"id\":4,\"itemName\":\"Canada\"}];\n this.basicExampleSettings = { \n text:\"Select Countries\",\n selectAllText:'Select All',\n unSelectAllText:'UnSelect All',\n enableSearchFilter: true,\n classes:\"myclass custom-class\"\n };\n\n this.selectedItems3 = [\n {\"id\":1,\"itemName\":\"India\"},\n {\"id\":2,\"itemName\":\"Singapore\"},\n {\"id\":4,\"itemName\":\"Canada\"},\n {\"id\":5,\"itemName\":\"South Korea\"}];\n\n \n this.dropdownSettings3 = { singleSelection: false, \n text:\"Select Countries\",\n selectAllText:'Select All',\n unSelectAllText:'UnSelect All',\n enableSearchFilter: true,\n badgeShowLimit: 3\n }; \n this.limitSelectionSelectedItems = [\n {\"id\":1,\"itemName\":\"India\"},\n {\"id\":2,\"itemName\":\"Singapore\"},\n {\"id\":3,\"itemName\":\"Australia\"},\n {\"id\":4,\"itemName\":\"Canada\"}];\n this.limitSelectionSettings = { \n text:\"Select Countries\",\n selectAllText:'Select All',\n unSelectAllText:'UnSelect All',\n enableSearchFilter: false,\n classes:\"myclass custom-class\",\n limitSelection: 4\n };\n this.disableModeSelectedItems = [\n {\"id\":1,\"itemName\":\"India\"},\n {\"id\":2,\"itemName\":\"Singapore\"},\n {\"id\":3,\"itemName\":\"Australia\"},\n {\"id\":4,\"itemName\":\"Canada\"}];\n this.disableModeSettings = { \n text:\"Select Countries\",\n selectAllText:'Select All',\n unSelectAllText:'UnSelect All',\n enableSearchFilter: false,\n classes:\"myclass custom-class\",\n limitSelection: 2,\n disabled: true\n };\n\n this.placeholderExampleList = [\n {\"id\":1,\"itemName\":\"India\"},\n {\"id\":2,\"itemName\":\"Singapore\"},\n {\"id\":3,\"itemName\":\"Australia\"},\n {\"id\":4,\"itemName\":\"Canada\"},\n {\"id\":5,\"itemName\":\"South Korea\"}\n ];\n \n this.placeholderExampleSelectedItems = [\n {\"id\":1,\"itemName\":\"India\"},\n {\"id\":2,\"itemName\":\"Singapore\"},\n {\"id\":3,\"itemName\":\"Australia\"},\n {\"id\":4,\"itemName\":\"Canada\"}];\n this.placeholderExampleSettings = { \n text:\"Select Countries\",\n selectAllText:'Select All',\n unSelectAllText:'UnSelect All',\n enableSearchFilter: true,\n classes:\"myclass custom-class\",\n searchPlaceholderText: \"Custom Placeholder text\"\n };\n this.resetExampleList = [\n {\"id\":1,\"itemName\":\"India\"},\n {\"id\":2,\"itemName\":\"Singapore\"},\n {\"id\":3,\"itemName\":\"Australia\"},\n {\"id\":4,\"itemName\":\"Canada\"},\n {\"id\":5,\"itemName\":\"South Korea\"}\n ];\n \n this.resetExampleSelectedItems = [\n {\"id\":1,\"itemName\":\"India\"},\n {\"id\":2,\"itemName\":\"Singapore\"},\n {\"id\":3,\"itemName\":\"Australia\"},\n {\"id\":4,\"itemName\":\"Canada\"}];\n this.resetExampleSettings = { \n text:\"Select Countries\",\n selectAllText:'Select All',\n unSelectAllText:'UnSelect All',\n enableSearchFilter: false,\n classes:\"myclass custom-class\"\n }; \n this.groupByExampleList = [\n {\"id\":1,\"itemName\":\"India\",\"category\":\"asia\"},\n {\"id\":2,\"itemName\":\"Singapore\",\"category\":\"asia pacific\"},\n {\"id\":3,\"itemName\":\"Germany\",\"category\":\"Europe\"},\n {\"id\":4,\"itemName\":\"France\",\"category\":\"Europe\"},\n {\"id\":5,\"itemName\":\"South Korea\",\"category\":\"asia\"}, \n {\"id\":6,\"itemName\":\"Sweden\",\"category\":\"Europe\"} \n ];\n \n this.groupByExampleSelectedItems = [\n {\"id\":1,\"itemName\":\"India\"},\n {\"id\":2,\"itemName\":\"Singapore\"},\n {\"id\":3,\"itemName\":\"Germany\"},\n {\"id\":4,\"itemName\":\"France\"}];\n this.groupByExampleSettings = { \n text:\"Select Countries\",\n selectAllText:'Select All',\n unSelectAllText:'UnSelect All',\n enableSearchFilter: true,\n classes:\"myclass custom-class\",\n groupBy: \"category\"\n }; \n\n this.groupByExampleSettings = {\nsingleSelection: false,\ntext:\"Select Fields\",\nselectAllText:'Select All',\nunSelectAllText:'UnSelect All',\nsearchPlaceholderText: 'Search Fields',\nenableSearchFilter: true,\nbadgeShowLimit: 5,\ngroupBy:\"category\"\n}; \n\nthis.templatingExampleList = [\n {\"id\":1,\"itemName\":\"India\",\"capital\":\"Delhi\",\"image\":\"http://www.sciencekids.co.nz/images/pictures/flags96/India.jpg\"},\n {\"id\":2,\"itemName\":\"Singapore\", \"capital\":\"Singapore\",\"image\":\"http://www.sciencekids.co.nz/images/pictures/flags96/Singapore.jpg\"},\n {\"id\":3,\"itemName\":\"United Kingdom\", \"capital\":\"London\",\"image\":\"http://www.sciencekids.co.nz/images/pictures/flags96/United_Kingdom.jpg\"},\n {\"id\":4,\"itemName\":\"Canada\",\"capital\":\"Ottawa\",\"image\":\"http://www.sciencekids.co.nz/images/pictures/flags96/Canada.jpg\"},\n {\"id\":5,\"itemName\":\"South Korea\",\"capital\":\"Seoul\",\"image\":\"http://www.sciencekids.co.nz/images/pictures/flags96/South_Korea.jpg\"}, \n {\"id\":6,\"itemName\":\"Brazil\",\"capital\":\"Brasilia\",\"image\":\"http://www.sciencekids.co.nz/images/pictures/flags96/Brazil.jpg\"} \n ];\n \n this.templatingExampleSelectedItems = [\n {\"id\":1,\"itemName\":\"India\"},\n {\"id\":2,\"itemName\":\"Singapore\"},\n {\"id\":3,\"itemName\":\"United Kingdom\"},\n {\"id\":4,\"itemName\":\"Canada\"}];\n this.templatingExampleSettings = { \n text:\"Select Countries\",\n selectAllText:'Select All',\n unSelectAllText:'UnSelect All',\n enableSearchFilter: true,\n classes:\"myclass custom-class\",\n showCheckbox: true\n };\n\n }\n onItemSelect(item:any){\n console.log(item);\n console.log(this.basicExampleSelectedItems);\n }\n OnItemDeSelect(item:any){\n console.log(item);\n console.log(this.basicExampleSelectedItems);\n }\n onSelectAll(items: any){\n console.log(items);\n }\n onDeSelectAll(items: any){\n console.log(items);\n }\n showModel(){\n console.log(this.singleSelectionselectedItems);\n }\n changeData(){\n this.resetExampleSelectedItems = [];\n }\n}\n","import { BrowserModule } from '@angular/platform-browser';\nimport { NgModule } from '@angular/core';\nimport { FormsModule, ReactiveFormsModule } from '@angular/forms';\nimport { HttpClientModule } from '@angular/common/http';\nimport { MockService } from './examples/mock-data';\n\nimport { AppComponent } from './app.component';\nimport { AngularMultiSelectModule } from '../../projects/angular2-multiselect-dropdown-lib/src/lib/multiselect.component';\nimport { AppRouterModule } from './app.router';\nimport { BasicExample } from './examples/basic';\nimport { SingleSelectionExample } from './examples/singleselection';\nimport { GroupByExample } from './examples/groupBy';\nimport { SearchFilterExample } from './examples/searchFilter';\nimport { TemplatingExample } from './examples/templating';\nimport { ResetDropdownExample } from './examples/resetdropdown';\nimport { DisableModeExample } from './examples/disablemode';\nimport {LimitSelectionExample } from './examples/limitselection';\nimport {LimitBadgesExample } from './examples/limitbadges';\nimport { CustomPlaceholderExample } from './examples/customplaceholder';\nimport { StylingExample } from './examples/styling';\nimport { ng2Gist } from './examples/gist';\nimport { TabViewModule } from 'primeng/primeng';\nimport { UsingWithFormExample } from './examples/usingWithForms';\nimport { UsingWithReactiveFormExample } from './examples/usingInReactForms';\nimport { LazyLoadingExample } from './examples/lazyLoading';\nimport { MultipleDropdownsExample } from './examples/multipleDropdowns';\nimport { DynamicDataSetsExample } from './examples/dynamicDataSets';\nimport { ThemingExample } from './examples/theming';\nimport { RemoteDataExample } from './examples/remoteData';\nimport { CustomSearchExample } from './examples/customSearch';\nimport { SearchFilterByOnePropertyExample } from './examples/searchByOneProperty';\nimport {LazyLoadingRemoteDataExample } from './examples/lazyLoadingRemoteData';\nimport {SearchFilterAddItemExample } from './examples/searchFilterAddNewItem';\nimport { EventsExample } from './examples/events';\nimport { HighlightModule } from 'ngx-highlightjs';\nimport { UsingInListExample } from './examples/usingInList';\n\nimport xml from 'highlight.js/lib/languages/xml';\nimport scss from 'highlight.js/lib/languages/scss';\nimport typescript from 'highlight.js/lib/languages/typescript';\n\nexport function hljsLanguages() {\n return [\n {name: 'typescript', func: typescript},\n {name: 'scss', func: scss},\n {name: 'xml', func: xml}\n ];\n}\n\n@NgModule({\n declarations: [\n AppComponent,\n ng2Gist,\n BasicExample,\n SingleSelectionExample,\n GroupByExample,\n SearchFilterExample,\n TemplatingExample,\n ResetDropdownExample,\n DisableModeExample,\n LimitSelectionExample,\n LimitBadgesExample,\n CustomPlaceholderExample,\n StylingExample,\n UsingWithFormExample,\n UsingWithReactiveFormExample,\n LazyLoadingExample,\n MultipleDropdownsExample,\n DynamicDataSetsExample,\n ThemingExample,\n RemoteDataExample,\n CustomSearchExample,\n SearchFilterByOnePropertyExample,\n LazyLoadingRemoteDataExample,\n SearchFilterAddItemExample,\n EventsExample,\n UsingInListExample\n ],\n imports: [\n BrowserModule.withServerTransition({ appId: 'serverApp' }),\n ReactiveFormsModule,\n FormsModule,\n AppRouterModule,\n AngularMultiSelectModule,\n TabViewModule,\n HttpClientModule,\n HighlightModule.forRoot({\n languages: hljsLanguages\n })\n ],\n providers: [MockService],\n bootstrap: [AppComponent]\n})\nexport class AppModule { }\n","import { RouterModule, Routes } from '@angular/router';\nimport { NgModule } from '@angular/core';\n\nimport { AppComponent } from './app.component';\nimport { BasicExample } from './examples/basic';\nimport { SingleSelectionExample } from './examples/singleselection';\nimport { GroupByExample } from './examples/groupBy';\nimport { SearchFilterExample } from './examples/searchFilter';\nimport { TemplatingExample } from './examples/templating';\nimport { ResetDropdownExample } from './examples/resetdropdown';\nimport { DisableModeExample } from './examples/disablemode';\nimport { LimitSelectionExample } from './examples/limitselection';\nimport { LimitBadgesExample } from './examples/limitbadges';\nimport { CustomPlaceholderExample } from './examples/customplaceholder';\nimport { StylingExample } from './examples/styling';\nimport { UsingWithFormExample } from './examples/usingWithForms';\nimport { UsingWithReactiveFormExample } from './examples/usingInReactForms';\nimport { LazyLoadingExample } from './examples/lazyLoading';\nimport { MultipleDropdownsExample } from './examples/multipleDropdowns';\nimport { DynamicDataSetsExample } from './examples/dynamicDataSets';\nimport { ThemingExample } from './examples/theming';\nimport { RemoteDataExample } from './examples/remoteData';\nimport { CustomSearchExample } from './examples/customSearch';\nimport { SearchFilterByOnePropertyExample } from './examples/searchByOneProperty';\nimport {LazyLoadingRemoteDataExample } from './examples/lazyLoadingRemoteData';\nimport {SearchFilterAddItemExample } from './examples/searchFilterAddNewItem';\nimport { EventsExample } from './examples/events';\nimport { UsingInListExample } from './examples/usingInList';\n\nconst appRoutes: Routes = [\n { path: '', redirectTo: '/basic', pathMatch: 'full' },\n { path: 'basic', component: BasicExample },\n { path: 'singleselection', component: SingleSelectionExample },\n { path: 'searchfilter', component: SearchFilterExample },\n { path: 'groupby', component: GroupByExample },\n { path: 'templating', component: TemplatingExample },\n { path: 'dropdownMethods', component: ResetDropdownExample },\n { path: 'disablemode', component: DisableModeExample },\n { path: 'limitselection', component: LimitSelectionExample },\n { path: 'limitbadges', component: LimitBadgesExample },\n { path: 'customplaceholder', component: CustomPlaceholderExample },\n { path: 'styling', component: StylingExample },\n { path: 'usinginform', component: UsingWithFormExample },\n { path: 'usinginreactiveform', component: UsingWithReactiveFormExample },\n { path: 'lazyloading', component: LazyLoadingExample },\n { path: 'multipledropdowns', component: MultipleDropdownsExample },\n { path: 'dynamicdatasets', component: DynamicDataSetsExample },\n { path: 'theming', component: ThemingExample },\n { path: 'remoteData', component: RemoteDataExample },\n { path: 'customSearchAPI', component: CustomSearchExample },\n { path: 'searchFilterByOneProperty', component: SearchFilterByOnePropertyExample },\n { path: 'lazyloadingRemoteData', component: LazyLoadingRemoteDataExample},\n { path: 'searchfilterAddNewItem', component: SearchFilterAddItemExample},\n { path: 'events', component: EventsExample},\n { path: 'usingInList', component: UsingInListExample}\n\n];\n\n\n@NgModule({\n imports: [\n RouterModule.forRoot(appRoutes, { useHash: true })\n ],\n exports: [\n RouterModule\n ]\n\n})\nexport class AppRouterModule { }\n","

{{title}}

\n
\n \n \n
\n

Code

\n\n\n \n \n \n \n \n \n \n \n \n \n \n\n","import { Component, OnInit } from '@angular/core';\nimport { Title, Meta } from '@angular/platform-browser';\n@Component({\n templateUrl: './views/view.html'\n})\nexport class BasicExample implements OnInit {\n\n itemList = [];\n selectedItems = [];\n settings = {};\n\n constructor(public seotitle: Title, public meta: Meta) { \n this.seotitle.setTitle('Basic example');\n this.meta.addTags([\n {name: 'description', content:'Basic example of angular multiselect drodown.'}\n ]);\n }\n ngOnInit() {\n\n this.itemList = [\n { \"countryId\": 1, \"itemName\": \"India\" },\n { \"countryId\": 2, \"itemName\": \"Singapore\" },\n { \"countryId\": 3, \"itemName\": \"Australia\" },\n { \"countryId\": 4, \"itemName\": \"Canada\" },\n { \"countryId\": 5, \"itemName\": \"South Korea\" },\n { \"countryId\": 6, \"itemName\": \"Brazil\" }\n ];\n\n this.selectedItems = [\n { \"countryId\": 1, \"itemName\": \"India\" },\n { \"countryId\": 2, \"itemName\": \"Singapore\" },\n { \"countryId\": 3, \"itemName\": \"Australia\" },\n { \"countryId\": 4, \"itemName\": \"Canada\" },\n { \"countryId\": 5, \"itemName\": \"South Korea\" }];\n\n this.settings = {\n text: \"Select Countries\",\n selectAllText: 'Select All',\n unSelectAllText: 'UnSelect All',\n classes: \"myclass custom-class\",\n primaryKey: \"countryId\"\n };\n }\n onItemSelect(item: any) {\n console.log(item);\n console.log(this.selectedItems);\n }\n OnItemDeSelect(item: any) {\n console.log(item);\n console.log(this.selectedItems);\n }\n onSelectAll(items: any) {\n console.log(items);\n }\n onDeSelectAll(items: any) {\n console.log(items);\n }\n cssgist: boolean = false;\n title: string = \"Basic example\";\n tsgist: string = \"CuppaLabs/ee72fbc7b21dad7e4e7664c5b1553235\";\n htmlgist: string = \"CuppaLabs/eb78d42ab7971fda6493586e329bfdb8\";\n tstitle: string = \"basic.ts\"\n htmltitle: string = \"basic.html\";\n}\n","

\n {{title}}

\n
\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
\n

Code

\n\n\n \n \n \n \n \n \n \n \n \n \n \n","import { Component, OnInit } from '@angular/core';\nimport { HttpClient } from '@angular/common/http';\n\n@Component({\n templateUrl: './views/customSearch.html'\n})\nexport class CustomSearchExample implements OnInit {\n\n itemList: any = [];\n selectedItems = [];\n settings = {};\n\n constructor(private http: HttpClient) { }\n ngOnInit() {\n\n this.settings = {\n text: \"Select Countries\",\n selectAllText: 'Select All',\n unSelectAllText: 'UnSelect All',\n classes: \"myclass custom-class\",\n primaryKey: \"alpha3Code\",\n labelKey: \"name\",\n noDataLabel: \"Search Countries...\",\n enableSearchFilter: true,\n searchBy: ['name', 'capital']\n };\n }\n onItemSelect(item: any) {\n console.log(item);\n console.log(this.selectedItems);\n }\n OnItemDeSelect(item: any) {\n console.log(item);\n console.log(this.selectedItems);\n }\n onSelectAll(items: any) {\n console.log(items);\n }\n onDeSelectAll(items: any) {\n console.log(items);\n }\n onSearch(evt: any) {\n console.log(evt.target.value);\n this.itemList = [];\n this.http.get('https://restcountries.eu/rest/v2/name/'+evt.target.value+'?fulltext=true')\n .subscribe(res => {\n console.log(res);\n this.itemList = res;\n }, error => {\n\n });\n }\n cssgist: boolean = false;\n title: string = \"Custom Search / Search from API\";\n tsgist: string = \"CuppaLabs/1bab5ecbbb22727eb0afe49848a454f0\";\n htmlgist: string = \"CuppaLabs/7f0d8ea9f9cfe9eec2cc1699affd2c14\";\n tstitle: string = \"customSearch.ts\"\n htmltitle: string = \"customSearch.html\";\n}\n","import { Component, OnInit } from '@angular/core';\n\n@Component({\n templateUrl: './views/view.html'\n})\nexport class CustomPlaceholderExample implements OnInit {\n\n itemList = [];\n selectedItems = [];\n settings = {};\n\n constructor() {\n\n }\n ngOnInit() {\n\n\n this.itemList = [\n { \"id\": 1, \"itemName\": \"India\" },\n { \"id\": 2, \"itemName\": \"Singapore\" },\n { \"id\": 3, \"itemName\": \"Australia\" },\n { \"id\": 4, \"itemName\": \"Canada\" },\n { \"id\": 5, \"itemName\": \"South Korea\" },\n { \"id\": 6, \"itemName\": \"Brazil\" }\n ];\n\n this.selectedItems = [\n { \"id\": 1, \"itemName\": \"India\" },\n { \"id\": 2, \"itemName\": \"Singapore\" },\n { \"id\": 3, \"itemName\": \"Australia\" },\n { \"id\": 4, \"itemName\": \"Canada\" }];\n this.settings = {\n text: \"Select Countries\",\n selectAllText: 'Select All',\n unSelectAllText: 'UnSelect All',\n enableSearchFilter: true,\n classes: \"myclass custom-class\",\n searchPlaceholderText: \"Custom Placeholder text\"\n };\n }\n onItemSelect(item: any) {\n console.log(item);\n console.log(this.selectedItems);\n }\n OnItemDeSelect(item: any) {\n console.log(item);\n console.log(this.selectedItems);\n }\n onSelectAll(items: any) {\n console.log(items);\n }\n onDeSelectAll(items: any) {\n console.log(items);\n }\n cssgist: boolean = false;\n title: string = \"Custom search placeholder\";\n tsgist: string = \"CuppaLabs/48c087b6c0b4381d5bae1c689cc0ee3e\";\n htmlgist: string = \"CuppaLabs/eb78d42ab7971fda6493586e329bfdb8\";\n tstitle: string = \"customPlaceholder.ts\"\n htmltitle: string = \"customPlaceholder.html\";\n}\n","

{{title}}

\n
\n \n
\n
\n
\n \n
\n
\n \n
\n
\n

Code

\n\n\n \n \n \n \n \n \n \n \n \n \n \n\n","import { Component, OnInit } from '@angular/core';\n\n@Component({\n templateUrl: './views/disableMode.html'\n})\nexport class DisableModeExample implements OnInit {\n\n itemList = [];\n selectedItems = [];\n settings: any = {};\n\n constructor() {\n\n }\n ngOnInit() {\n\n\n this.itemList = [\n { \"id\": 1, \"itemName\": \"India\" },\n { \"id\": 2, \"itemName\": \"Singapore\" },\n { \"id\": 3, \"itemName\": \"Australia\" },\n { \"id\": 4, \"itemName\": \"Canada\" },\n { \"id\": 5, \"itemName\": \"South Korea\" },\n { \"id\": 6, \"itemName\": \"Brazil\" }\n ];\n\n this.selectedItems = [\n { \"id\": 1, \"itemName\": \"India\" },\n { \"id\": 2, \"itemName\": \"Singapore\" },\n { \"id\": 3, \"itemName\": \"Australia\" },\n { \"id\": 4, \"itemName\": \"Canada\" }];\n this.settings = {\n text: \"Select Countries\",\n selectAllText: 'Select All',\n unSelectAllText: 'UnSelect All',\n enableSearchFilter: false,\n classes: \"myclass custom-class\",\n disabled: true\n };\n }\n onItemSelect(item: any) {\n console.log(item);\n console.log(this.selectedItems);\n }\n OnItemDeSelect(item: any) {\n console.log(item);\n console.log(this.selectedItems);\n }\n onSelectAll(items: any) {\n console.log(items);\n }\n onDeSelectAll(items: any) {\n console.log(items);\n }\n showModel() {\n console.log(this.selectedItems);\n }\n changeData() {\n this.selectedItems = [];\n }\n disable() {\n this.settings = {\n text: \"Select Countries\",\n selectAllText: 'Select All',\n unSelectAllText: 'UnSelect All',\n enableSearchFilter: false,\n classes: \"myclass custom-class\",\n disabled: true\n };\n }\n enable() {\n this.settings = {\n text: \"Select Countries\",\n selectAllText: 'Select All',\n unSelectAllText: 'UnSelect All',\n enableSearchFilter: false,\n classes: \"myclass custom-class\",\n disabled: false\n };\n }\n toggleDisable() {\n console.log(this.settings);\n this.settings = {\n text: \"Select Countries\",\n selectAllText: 'Select All',\n unSelectAllText: 'UnSelect All',\n enableSearchFilter: false,\n classes: \"myclass custom-class\",\n limitSelection: 2,\n disabled: false\n };\n }\n cssgist: boolean = false;\n title: string = \"Disable mode\";\n tsgist: string = \"CuppaLabs/96f799302bdfa08e11b4420c86c1d720\";\n htmlgist: string = \"CuppaLabs/eb78d42ab7971fda6493586e329bfdb8\";\n tstitle: string = \"disableMode.ts\"\n htmltitle: string = \"disableMode.html\";\n}\n","

{{title}}

\n
\n \n
\n\n\n\n

Code

\n\n\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n\n","import { Component, OnInit } from '@angular/core';\nimport { MockService } from './mock-data';\n\n@Component({\n templateUrl: './views/dynamicData.html'\n})\nexport class DynamicDataSetsExample implements OnInit {\n\n itemList = [];\n selectedItems = [];\n settings = {};\n\n constructor(private mockService: MockService) { }\n ngOnInit() {\n\n this.settings = {\n text: \"Select Countries\",\n selectAllText: 'Select All',\n unSelectAllText: 'UnSelect All',\n classes: \"myclass custom-class\"\n };\n this.loadDataSet2();\n }\n onItemSelect(item: any) {\n console.log(item);\n console.log(this.selectedItems);\n }\n OnItemDeSelect(item: any) {\n console.log(item);\n console.log(this.selectedItems);\n }\n onSelectAll(items: any) {\n console.log(items);\n }\n onDeSelectAll(items: any) {\n console.log(items);\n }\n loadDataSet1() {\n this.settings = {\n text: \"Select Fruits\",\n selectAllText: 'Select All',\n unSelectAllText: 'UnSelect All',\n classes: \"myclass custom-class\"\n };\n this.selectedItems = [];\n this.itemList = [];\n const tempArr = this.mockService.getFruits();\n for (let i = 0; i < tempArr.length; ++i) {\n this.itemList.push(tempArr[i]);\n }\n }\n loadDataSet2() {\n this.settings = {\n text: \"Select Countries\",\n selectAllText: 'Select All',\n unSelectAllText: 'UnSelect All',\n classes: \"myclass custom-class\"\n };\n this.selectedItems = [];\n this.itemList = [];\n const tempArr = this.mockService.getCountries();\n for (let i = 0; i < tempArr.length; ++i) {\n this.itemList.push(tempArr[i]);\n }\n }\n cssgist: boolean = false;\n title: string = \"Dynamic datasets loading\";\n tsgist: string = \"CuppaLabs/302d580f91bc40611b2474558d98fbf2\";\n htmlgist: string = \"CuppaLabs/eb78d42ab7971fda6493586e329bfdb8\";\n mockgist: string = \"CuppaLabs/b3e947ec83710307a3b8680a2ff89693\";\n tstitle: string = \"dynamicData.ts\"\n htmltitle: string = \"dynamicData.html\";\n mocktitle: string = \"mock-data.ts\";\n}\n","

{{title}}

\n
\n
\n
\n
\n
\n \n \n\n
\n
\n
\n
\n
\n
\n
\n
On Select
\n \n
\n
\n
On Un-select
\n \n
\n
\n
On Open
\n \n
\n
\n
On Close
\n \n
\n
\n
On Select All
\n \n
\n
\n
On Un-Select All
\n \n
\n
\n
\n\n

Code

\n\n\n \n \n \n \n \n \n","import { Component, OnInit } from '@angular/core';\n\n@Component({\n templateUrl: './views/events.html'\n})\nexport class EventsExample implements OnInit {\n\n itemList = [];\n selectedItems = [];\n settings = {};\n selectedItemString: string = '';\n unSelectedItemString: string = '';\n openString: string = '';\n closeString: string = '';\n selectAllString: string = '';\n unSelectAllString: string = '';\n\n constructor() { }\n ngOnInit() {\n\n this.itemList = [\n { \"countryId\": 1, \"itemName\": \"India\" },\n { \"countryId\": 2, \"itemName\": \"Singapore\" },\n { \"countryId\": 3, \"itemName\": \"Australia\" },\n { \"countryId\": 4, \"itemName\": \"Canada\" },\n { \"countryId\": 5, \"itemName\": \"South Korea\" },\n { \"countryId\": 6, \"itemName\": \"Brazil\" }\n ];\n\n this.selectedItems = [\n { \"countryId\": 1, \"itemName\": \"India\" },\n { \"countryId\": 2, \"itemName\": \"Singapore\" },\n { \"countryId\": 3, \"itemName\": \"Australia\" },\n { \"countryId\": 4, \"itemName\": \"Canada\" }];\n\n this.settings = {\n text: \"Select Countries\",\n selectAllText: 'Select All',\n unSelectAllText: 'UnSelect All',\n classes: \"myclass custom-class\",\n primaryKey: \"countryId\"\n };\n }\n onItemSelect(item: any) {\n console.log(item);\n this.selectedItemString = JSON.stringify(item);\n console.log(this.selectedItems);\n }\n OnItemDeSelect(item: any) {\n console.log(item);\n this.unSelectedItemString = JSON.stringify(item);\n console.log(this.selectedItems);\n }\n onOpen(evt: any){\n this.openString = \"Dropdown opened: \"+evt;\n }\n onClose(evt: any){\n this.closeString = \"Dropdown opened: \"+evt;\n }\n onSelectAll(items: any) {\n console.log(items);\n this.selectAllString = JSON.stringify(items);\n this.unSelectAllString = \"\";\n }\n onDeSelectAll(items: any) {\n console.log(items);\n this.selectAllString = '';\n this.unSelectAllString = \"all items un-selected\";\n }\n cssgist: boolean = false;\n title: string = \"Events\";\n tsgist: string = \"CuppaLabs/ee72fbc7b21dad7e4e7664c5b1553235\";\n htmlgist: string = \"CuppaLabs/eb78d42ab7971fda6493586e329bfdb8\";\n tstitle: string = \"basic.ts\"\n htmltitle: string = \"basic.html\";\n}\n","\n \n ","import {Component, Input, ViewChild, ElementRef, AfterViewInit} from '@angular/core';\n\n@Component({\n selector: 'ng2-gist',\n template:`\n \n `,\n styleUrls: []\n})\n\nexport class ng2Gist implements AfterViewInit {\n @ViewChild('iframe', {static: true}) iframe:ElementRef;\n @Input() gistId;\n\n constructor() { }\n\n ngAfterViewInit() {\n this.iframe.nativeElement.id = 'gist-' + this.gistId;\n let doc = this.iframe.nativeElement.contentDocument || this.iframe.nativeElement.contentElement.contentWindow;\n let content = `\n \n \n \n \n \n \n \n \n `;\n doc.open();\n doc.write(content);\n doc.close();\n }\n}","

{{title}}

\n
\n \n
\n\n\n\n

Code

\n\n\n \n \n \n \n \n \n \n \n \n \n \n\n","import { Component, OnInit } from '@angular/core';\n\n@Component({\n templateUrl: './views/groupBy.html'\n})\nexport class GroupByExample implements OnInit {\n\n itemList = [];\n selectedItems = [];\n settings = {};\n\n constructor() {\n\n }\n ngOnInit() {\n\n\n this.itemList = [\n { \"id\": 1, \"itemName\": \"India\", \"category\": \"asia\" },\n { \"id\": 2, \"itemName\": \"Singapore\", \"category\": \"asia pacific\" },\n { \"id\": 3, \"itemName\": \"Germany\", \"category\": \"Europe\" },\n { \"id\": 4, \"itemName\": \"France\", \"category\": \"Europe\" },\n { \"id\": 5, \"itemName\": \"South Korea\", \"category\": \"asia\" },\n { \"id\": 6, \"itemName\": \"Sweden\", \"category\": \"Europe\" }\n ];\n\n this.selectedItems = [\n { \"id\": 1, \"itemName\": \"India\", \"category\": \"asia\" },\n { \"id\": 5, \"itemName\": \"South Korea\", \"category\": \"asia\" }\n ]\n this.settings = {\n singleSelection: false,\n text: \"Select Fields\",\n selectAllText: 'Select All',\n unSelectAllText: 'UnSelect All',\n searchPlaceholderText: 'Search Fields',\n enableSearchFilter: true,\n groupBy: \"category\",\n selectGroup: true,\n searchBy: [\"itemName\"]\n };\n }\n onItemSelect(item: any) {\n console.log(item);\n console.log(this.selectedItems);\n }\n OnItemDeSelect(item: any) {\n console.log(item);\n console.log(this.selectedItems);\n }\n onSelectAll(items: any) {\n console.log(items);\n }\n onDeSelectAll(items: any) {\n console.log(items);\n }\n onGroupSelect(selectedGroupItem){\n console.log(selectedGroupItem);\n }\n onGroupDeSelect(deselectedGroupItem){\n console.log(deselectedGroupItem);\n }\n onChange(e:any){\nconsole.log(e)\n }\n loadDataSet1(){\n this.selectedItems = [];\n this.itemList = [ { \"id\": 1, \"itemName\": \"Apple\", \"category\": \"fruits\" },\n { \"id\": 2, \"itemName\": \"Banana\", \"category\": \"fruits\" },\n { \"id\": 5, \"itemName\": \"Tomatoe\", \"category\": \"vegetables\" },\n { \"id\": 6, \"itemName\": \"Potatoe\", \"category\": \"vegetables\" }];\n }\n loadDataSet2(){\n this.selectedItems = [];\n this.itemList = [\n { \"id\": 1, \"itemName\": \"India\", \"category\": \"asia\" },\n { \"id\": 2, \"itemName\": \"Singapore\", \"category\": \"asia pacific\" },\n { \"id\": 3, \"itemName\": \"Germany\", \"category\": \"Europe\" },\n { \"id\": 4, \"itemName\": \"France\", \"category\": \"Europe\" },\n { \"id\": 5, \"itemName\": \"South Korea\", \"category\": \"asia\" },\n { \"id\": 6, \"itemName\": \"Sweden\", \"category\": \"Europe\" }\n ];\n }\n cssgist: boolean = false;\n title: string = \"Group By\";\n tsgist: string = \"CuppaLabs/f6c1328ade3201042a4b4d268a30ad8c\";\n htmlgist: string = \"CuppaLabs/eb78d42ab7971fda6493586e329bfdb8\";\n tstitle: string = \"groupBy.ts\"\n htmltitle: string = \"groupBy.html\";\n}\n","

{{title}}

\n
\n
\n \n
\nTotal Records : {{itemList.length}}\n
\n
\n \n
\n
\n

Code

\n\n\n \n \n \n \n \n \n \n \n \n \n \n\n","import { Component, OnInit } from '@angular/core';\n\n@Component({\n templateUrl: './views/lazyLoading.html'\n})\nexport class LazyLoadingExample implements OnInit {\n\n itemList = [];\n selectedItems = [];\n settings = {};\n public categories: any = [\"Indian\", \"American\", \"Canadian\", \"Chinese\"];\n public namesList:any[] = [\"Smith\",\"Johnson\",\"Williams\",\"Brown\",\"Jones\",\"Miller\",\"Davis\",\"Garcia\",\"Rodriguez\",\"Wilson\",\"Martinez\",\"Anderson\",\"Taylor\",\"Thomas\",\"Hernandez\",\"Moore\",\"Martin\",\"Jackson\",\"Thompson\",\"White\",\"Lopez\",\"Lee\",\"Gonzalez\",\"Harris\",\"Clark\",\"Lewis\",\"Robinson\",\"Walker\",\"Perez\",\"Hall\",\"Young\",\"Allen\",\"Sanchez\",\"Wright\",\"King\",\"Scott\",\"Green\",\"Baker\",\"Adams\",\"Nelson\",\"Hill\",\"Ramirez\",\"Campbell\",\"Mitchell\",\"Roberts\",\"Carter\",\"Phillips\",\"Evans\",\"Turner\",\"Torres\",\"Parker\",\"Collins\",\"Edwards\",\"Stewart\",\"Flores\",\"Morris\",\"Nguyen\",\"Murphy\",\"Rivera\",\"Cook\",\"Rogers\",\"Morgan\",\"Peterson\",\"Cooper\",\"Reed\",\"Bailey\",\"Bell\",\"Gomez\",\"Kelly\",\"Howard\",\"Ward\",\"Cox\",\"Diaz\",\"Richardson\",\"Wood\",\"Watson\",\"Brooks\",\"Bennett\",\"Gray\",\"James\",\"Reyes\",\"Cruz\",\"Hughes\",\"Price\",\"Myers\",\"Long\",\"Foster\",\"Sanders\",\"Ross\",\"Morales\",\"Powell\",\"Sullivan\",\"Russell\",\"Ortiz\",\"Jenkins\",\"Gutierrez\",\"Perry\",\"Butler\",\"Barnes\",\"Fisher\",\"Henderson\",\"Coleman\",\"Simmons\",\"Patterson\",\"Jordan\",\"Reynolds\",\"Hamilton\",\"Graham\",\"Kim\",\"Gonzales\",\"Alexander\",\"Ramos\",\"Wallace\",\"Griffin\",\"West\",\"Cole\",\"Hayes\",\"Chavez\",\"Gibson\",\"Bryant\",\"Ellis\",\"Stevens\",\"Murray\",\"Ford\",\"Marshall\",\"Owens\",\"Mcdonald\",\"Harrison\",\"Ruiz\",\"Kennedy\",\"Wells\",\"Alvarez\",\"Woods\",\"Mendoza\",\"Castillo\",\"Olson\",\"Webb\",\"Washington\",\"Tucker\",\"Freeman\",\"Burns\",\"Henry\",\"Vasquez\",\"Snyder\",\"Simpson\",\"Crawford\",\"Jimenez\",\"Porter\",\"Mason\",\"Shaw\",\"Gordon\",\"Wagner\",\"Hunter\",\"Romero\",\"Hicks\",\"Dixon\",\"Hunt\",\"Palmer\",\"Robertson\",\"Black\",\"Holmes\",\"Stone\",\"Meyer\",\"Boyd\",\"Mills\",\"Warren\",\"Fox\",\"Rose\",\"Rice\",\"Moreno\",\"Schmidt\",\"Patel\",\"Ferguson\",\"Nichols\",\"Herrera\",\"Medina\",\"Ryan\",\"Fernandez\",\"Weaver\",\"Daniels\",\"Stephens\",\"Gardner\",\"Payne\",\"Kelley\",\"Dunn\",\"Pierce\",\"Arnold\",\"Tran\",\"Spencer\",\"Peters\",\"Hawkins\",\"Grant\",\"Hansen\",\"Castro\",\"Hoffman\",\"Hart\",\"Elliott\",\"Cunningham\",\"Knight\",\"Bradley\",\"Carroll\",\"Hudson\",\"Duncan\",\"Armstrong\",\"Berry\",\"Andrews\",\"Johnston\",\"Ray\",\"Lane\",\"Riley\",\"Carpenter\",\"Perkins\",\"Aguilar\",\"Silva\",\"Richards\",\"Willis\",\"Matthews\",\"Chapman\",\"Lawrence\",\"Garza\",\"Vargas\",\"Watkins\",\"Wheeler\",\"Larson\",\"Carlson\",\"Harper\",\"George\",\"Greene\",\"Burke\",\"Guzman\",\"Morrison\",\"Munoz\",\"Jacobs\",\"Obrien\",\"Lawson\",\"Franklin\",\"Lynch\",\"Bishop\",\"Carr\",\"Salazar\",\"Austin\",\"Mendez\",\"Gilbert\",\"Jensen\",\"Williamson\",\"Montgomery\",\"Harvey\",\"Oliver\",\"Howell\",\"Dean\",\"Hanson\",\"Weber\",\"Garrett\",\"Sims\",\"Burton\",\"Fuller\",\"Soto\",\"Mccoy\",\"Welch\",\"Chen\",\"Schultz\",\"Walters\",\"Reid\",\"Fields\",\"Walsh\",\"Little\",\"Fowler\",\"Bowman\",\"Davidson\",\"May\",\"Day\",\"Schneider\",\"Newman\",\"Brewer\",\"Lucas\",\"Holland\",\"Wong\",\"Banks\",\"Santos\",\"Curtis\",\"Pearson\",\"Delgado\",\"Valdez\",\"Pena\",\"Rios\",\"Douglas\",\"Sandoval\",\"Barrett\",\"Hopkins\",\"Keller\",\"Guerrero\",\"Stanley\",\"Bates\",\"Alvarado\",\"Beck\",\"Ortega\",\"Wade\",\"Estrada\",\"Contreras\",\"Barnett\",\"Caldwell\",\"Santiago\",\"Lambert\",\"Powers\",\"Chambers\",\"Nunez\",\"Craig\",\"Leonard\",\"Lowe\",\"Rhodes\",\"Byrd\",\"Gregory\",\"Shelton\",\"Frazier\",\"Becker\",\"Maldonado\",\"Fleming\",\"Vega\",\"Sutton\",\"Cohen\",\"Jennings\",\"Parks\",\"Mcdaniel\",\"Watts\",\"Barker\",\"Norris\",\"Vaughn\",\"Vazquez\",\"Holt\",\"Schwartz\",\"Steele\",\"Benson\",\"Neal\",\"Dominguez\",\"Horton\",\"Terry\",\"Wolfe\",\"Hale\",\"Lyons\",\"Graves\",\"Haynes\",\"Miles\",\"Park\",\"Warner\",\"Padilla\",\"Bush\",\"Thornton\",\"Mccarthy\",\"Mann\",\"Zimmerman\",\"Erickson\",\"Fletcher\",\"Mckinney\",\"Page\",\"Dawson\",\"Joseph\",\"Marquez\",\"Reeves\",\"Klein\",\"Espinoza\",\"Baldwin\",\"Moran\",\"Love\",\"Robbins\",\"Higgins\",\"Ball\",\"Cortez\",\"Le\",\"Griffith\",\"Bowen\",\"Sharp\",\"Cummings\",\"Ramsey\",\"Hardy\",\"Swanson\",\"Barber\",\"Acosta\",\"Luna\",\"Chandler\",\"Blair\",\"Daniel\",\"Cross\",\"Simon\",\"Dennis\",\"Oconnor\",\"Quinn\",\"Gross\",\"Navarro\",\"Moss\",\"Fitzgerald\",\"Doyle\",\"Mclaughlin\",\"Rojas\",\"Rodgers\",\"Stevenson\",\"Singh\",\"Yang\",\"Figueroa\",\"Harmon\",\"Newton\",\"Paul\",\"Manning\",\"Garner\",\"Mcgee\",\"Reese\",\"Francis\",\"Burgess\",\"Adkins\",\"Goodman\",\"Curry\",\"Brady\",\"Christensen\",\"Potter\",\"Walton\",\"Goodwin\",\"Mullins\",\"Molina\",\"Webster\",\"Fischer\",\"Campos\",\"Avila\",\"Sherman\",\"Todd\",\"Chang\",\"Blake\",\"Malone\",\"Wolf\",\"Hodges\",\"Juarez\",\"Gill\",\"Farmer\",\"Hines\",\"Gallagher\",\"Duran\",\"Hubbard\",\"Cannon\",\"Miranda\",\"Wang\",\"Saunders\",\"Tate\",\"Mack\",\"Hammond\",\"Carrillo\",\"Townsend\",\"Wise\",\"Ingram\",\"Barton\",\"Mejia\",\"Ayala\",\"Schroeder\",\"Hampton\",\"Rowe\",\"Parsons\",\"Frank\",\"Waters\",\"Strickland\",\"Osborne\",\"Maxwell\",\"Chan\",\"Deleon\",\"Norman\",\"Harrington\",\"Casey\",\"Patton\",\"Logan\",\"Bowers\",\"Mueller\",\"Glover\",\"Floyd\",\"Hartman\",\"Buchanan\",\"Cobb\",\"French\",\"Kramer\",\"Mccormick\",\"Clarke\",\"Tyler\",\"Gibbs\",\"Moody\",\"Conner\",\"Sparks\",\"Mcguire\",\"Leon\",\"Bauer\",\"Norton\",\"Pope\",\"Flynn\",\"Hogan\",\"Robles\",\"Salinas\",\"Yates\",\"Lindsey\",\"Lloyd\",\"Marsh\",\"Mcbride\",\"Owen\",\"Solis\",\"Pham\",\"Lang\",\"Pratt\",\"Lara\",\"Brock\",\"Ballard\",\"Trujillo\",\"Shaffer\",\"Drake\",\"Roman\",\"Aguirre\",\"Morton\",\"Stokes\",\"Lamb\",\"Pacheco\",\"Patrick\",\"Cochran\",\"Shepherd\",\"Cain\",\"Burnett\",\"Hess\",\"Li\",\"Cervantes\",\"Olsen\",\"Briggs\",\"Ochoa\",\"Cabrera\",\"Velasquez\",\"Montoya\",\"Roth\",\"Meyers\",\"Cardenas\",\"Fuentes\",\"Weiss\",\"Hoover\",\"Wilkins\",\"Nicholson\",\"Underwood\",\"Short\",\"Carson\",\"Morrow\",\"Colon\",\"Holloway\",\"Summers\",\"Bryan\",\"Petersen\",\"Mckenzie\",\"Serrano\",\"Wilcox\",\"Carey\",\"Clayton\",\"Poole\",\"Calderon\",\"Gallegos\",\"Greer\",\"Rivas\",\"Guerra\",\"Decker\",\"Collier\",\"Wall\",\"Whitaker\",\"Bass\",\"Flowers\",\"Davenport\",\"Conley\",\"Houston\",\"Huff\",\"Copeland\",\"Hood\",\"Monroe\",\"Massey\",\"Roberson\",\"Combs\",\"Franco\",\"Larsen\",\"Pittman\",\"Randall\",\"Skinner\",\"Wilkinson\",\"Kirby\",\"Cameron\",\"Bridges\",\"Anthony\",\"Richard\",\"Kirk\",\"Bruce\",\"Singleton\",\"Mathis\",\"Bradford\",\"Boone\",\"Abbott\",\"Charles\",\"Allison\",\"Sweeney\",\"Atkinson\",\"Horn\",\"Jefferson\",\"Rosales\",\"York\",\"Christian\",\"Phelps\",\"Farrell\",\"Castaneda\",\"Nash\",\"Dickerson\",\"Bond\",\"Wyatt\",\"Foley\",\"Chase\",\"Gates\",\"Vincent\",\"Mathews\",\"Hodge\",\"Garrison\",\"Trevino\",\"Villarreal\",\"Heath\",\"Dalton\",\"Valencia\",\"Callahan\",\"Hensley\",\"Atkins\",\"Huffman\",\"Roy\",\"Boyer\",\"Shields\",\"Lin\",\"Hancock\",\"Grimes\",\"Glenn\",\"Cline\",\"Delacruz\",\"Camacho\",\"Dillon\",\"Parrish\",\"Oneill\",\"Melton\",\"Booth\",\"Kane\",\"Berg\",\"Harrell\",\"Pitts\",\"Savage\",\"Wiggins\",\"Brennan\",\"Salas\",\"Marks\",\"Russo\",\"Sawyer\",\"Baxter\",\"Golden\",\"Hutchinson\",\"Liu\",\"Walter\",\"Mcdowell\",\"Wiley\",\"Rich\",\"Humphrey\",\"Johns\",\"Koch\",\"Suarez\",\"Hobbs\",\"Beard\",\"Gilmore\",\"Ibarra\",\"Keith\",\"Macias\",\"Khan\",\"Andrade\",\"Ware\",\"Stephenson\",\"Henson\",\"Wilkerson\",\"Dyer\",\"Mcclure\",\"Blackwell\",\"Mercado\",\"Tanner\",\"Eaton\",\"Clay\",\"Barron\",\"Beasley\",\"Oneal\",\"Preston\",\"Small\",\"Wu\",\"Zamora\",\"Macdonald\",\"Vance\",\"Snow\",\"Mcclain\",\"Stafford\",\"Orozco\",\"Barry\",\"English\",\"Shannon\",\"Kline\",\"Jacobson\",\"Woodard\",\"Huang\",\"Kemp\",\"Mosley\",\"Prince\",\"Merritt\",\"Hurst\",\"Villanueva\",\"Roach\",\"Nolan\",\"Lam\",\"Yoder\",\"Mccullough\",\"Lester\",\"Santana\",\"Valenzuela\",\"Winters\",\"Barrera\",\"Leach\",\"Orr\",\"Berger\",\"Mckee\",\"Strong\",\"Conway\",\"Stein\",\"Whitehead\",\"Bullock\",\"Escobar\",\"Knox\",\"Meadows\",\"Solomon\",\"Velez\",\"Odonnell\",\"Kerr\",\"Stout\",\"Blankenship\",\"Browning\",\"Kent\",\"Lozano\",\"Bartlett\",\"Pruitt\",\"Buck\",\"Barr\",\"Gaines\",\"Durham\",\"Gentry\",\"Mcintyre\",\"Sloan\",\"Melendez\",\"Rocha\",\"Herman\",\"Sexton\",\"Moon\",\"Hendricks\",\"Rangel\",\"Stark\",\"Lowery\",\"Hardin\",\"Hull\",\"Sellers\",\"Ellison\",\"Calhoun\",\"Gillespie\",\"Mora\",\"Knapp\",\"Mccall\",\"Morse\",\"Dorsey\",\"Weeks\",\"Nielsen\",\"Livingston\",\"Leblanc\",\"Mclean\",\"Bradshaw\",\"Glass\",\"Middleton\",\"Buckley\",\"Schaefer\",\"Frost\",\"Howe\",\"House\",\"Mcintosh\",\"Ho\",\"Pennington\",\"Reilly\",\"Hebert\",\"Mcfarland\",\"Hickman\",\"Noble\",\"Spears\",\"Conrad\",\"Arias\",\"Galvan\",\"Velazquez\",\"Huynh\",\"Frederick\",\"Randolph\",\"Cantu\",\"Fitzpatrick\",\"Mahoney\",\"Peck\",\"Villa\",\"Michael\",\"Donovan\",\"Mcconnell\",\"Walls\",\"Boyle\",\"Mayer\",\"Zuniga\",\"Giles\",\"Pineda\",\"Pace\",\"Hurley\",\"Mays\",\"Mcmillan\",\"Crosby\",\"Ayers\",\"Case\",\"Bentley\",\"Shepard\",\"Everett\",\"Pugh\",\"David\",\"Mcmahon\",\"Dunlap\",\"Bender\",\"Hahn\",\"Harding\",\"Acevedo\",\"Raymond\",\"Blackburn\",\"Duffy\",\"Landry\",\"Dougherty\",\"Bautista\",\"Shah\",\"Potts\",\"Arroyo\",\"Valentine\",\"Meza\",\"Gould\",\"Vaughan\",\"Fry\",\"Rush\",\"Avery\",\"Herring\",\"Dodson\",\"Clements\",\"Sampson\",\"Tapia\",\"Bean\",\"Lynn\",\"Crane\",\"Farley\",\"Cisneros\",\"Benton\",\"Ashley\",\"Mckay\",\"Finley\",\"Best\",\"Blevins\",\"Friedman\",\"Moses\",\"Sosa\",\"Blanchard\",\"Huber\",\"Frye\",\"Krueger\",\"Bernard\",\"Rosario\",\"Rubio\",\"Mullen\",\"Benjamin\",\"Haley\",\"Chung\",\"Moyer\",\"Choi\",\"Horne\",\"Yu\",\"Woodward\",\"Ali\",\"Nixon\",\"Hayden\",\"Rivers\",\"Estes\",\"Mccarty\",\"Richmond\",\"Stuart\",\"Maynard\",\"Brandt\",\"Oconnell\",\"Hanna\",\"Sanford\",\"Sheppard\",\"Church\",\"Burch\",\"Levy\",\"Rasmussen\",\"Coffey\",\"Ponce\",\"Faulkner\",\"Donaldson\",\"Schmitt\",\"Novak\",\"Costa\",\"Montes\",\"Booker\",\"Cordova\",\"Waller\",\"Arellano\",\"Maddox\",\"Mata\",\"Bonilla\",\"Stanton\",\"Compton\",\"Kaufman\",\"Dudley\",\"Mcpherson\",\"Beltran\",\"Dickson\",\"Mccann\",\"Villegas\",\"Proctor\",\"Hester\",\"Cantrell\",\"Daugherty\",\"Cherry\",\"Bray\",\"Davila\",\"Rowland\",\"Levine\",\"Madden\",\"Spence\",\"Good\",\"Irwin\",\"Werner\",\"Krause\",\"Petty\",\"Whitney\",\"Baird\",\"Hooper\",\"Pollard\",\"Zavala\",\"Jarvis\",\"Holden\",\"Haas\",\"Hendrix\",\"Mcgrath\",\"Bird\",\"Lucero\",\"Terrell\",\"Riggs\",\"Joyce\",\"Mercer\",\"Rollins\",\"Galloway\",\"Duke\",\"Odom\",\"Andersen\",\"Downs\",\"Hatfield\",\"Benitez\",\"Archer\",\"Huerta\",\"Travis\",\"Mcneil\",\"Hinton\",\"Zhang\",\"Hays\",\"Mayo\",\"Fritz\",\"Branch\",\"Mooney\",\"Ewing\",\"Ritter\",\"Esparza\",\"Frey\",\"Braun\",\"Gay\",\"Riddle\",\"Haney\",\"Kaiser\",\"Holder\",\"Chaney\",\"Mcknight\",\"Gamble\",\"Vang\",\"Cooley\",\"Carney\",\"Cowan\",\"Forbes\",\"Ferrell\",\"Davies\",\"Barajas\",\"Shea\",\"Osborn\",\"Bright\",\"Cuevas\",\"Bolton\",\"Murillo\",\"Lutz\",\"Duarte\",\"Kidd\",\"Key\",\"Cooke\"];\n constructor() { }\n ngOnInit() {\n\n this.itemList = [];\n for(var t=1;t<=1000;t++){\n var tempObj = {\"id\":0,\"itemName\":\"\",\"category\":\"\"};\n tempObj.id = t;\n tempObj.itemName= this.namesList[Math.floor(Math.random()*this.namesList.length)];\n tempObj.category= this.categories[Math.floor(Math.random()*this.categories.length)];\n this.itemList.push(tempObj);\n }\n\n this.selectedItems = [];\n\n this.settings = {\n text: \"Select Items\",\n selectAllText: 'Select All',\n unSelectAllText: 'UnSelect All',\n classes: \"myclass custom-class\",\n enableSearchFilter: true,\n lazyLoading: true,\n badgeShowLimit: 4\n\n };\n }\n onItemSelect(item: any) {\n console.log(item);\n console.log(this.selectedItems);\n }\n OnItemDeSelect(item: any) {\n console.log(item);\n console.log(this.selectedItems);\n }\n onSelectAll(items: any) {\n console.log(items);\n }\n onDeSelectAll(items: any) {\n console.log(items);\n }\n onScroll(e:any){\n console.log(e);\n }\n onScrollToEnd(e:any){\n console.log(e);\n }\n changeData() {\n this.selectedItems = [];\n }\n cssgist: boolean = false;\n title: string = \"Virtual scrolling - Lazy load large data sets\";\n tsgist: string = \"CuppaLabs/aab6c8b30a6901af01249c474f3f0cbd\";\n htmlgist: string = \"CuppaLabs/c77fea947ef053aa22973fcd9c7c612a\";\n tstitle: string = \"lazyLoading.ts\"\n htmltitle: string = \"lazyLoading.html\";\n}\n","

{{title}}

\n
\n\n
\n \n
\nTotal Records : {{itemList.length}}\n
\n
\n \n
\n
\n

Code

\n\n\n \n \n \n \n \n \n \n \n \n \n \n\n","import { Component, OnInit } from '@angular/core';\nimport { MockService } from './mock-data';\n\n@Component({\n templateUrl: './views/lazyLoadingRemoteData.html'\n})\nexport class LazyLoadingRemoteDataExample implements OnInit {\n\n itemList = [];\n selectedItems = [];\n settings = {};\n loading = false;\n indices: any;\n readonly bufferSize: number = 10;\n\n constructor(private appService: MockService) { }\n ngOnInit() {\n this.itemList = [];\n this.selectedItems = [];\n\n this.settings = {\n text: \"Select Items\",\n selectAllText: 'Select All',\n unSelectAllText: 'UnSelect All',\n classes: \"myclass custom-class\",\n enableSearchFilter: true,\n lazyLoading: true,\n labelKey: 'name',\n limitSelection: 3\n\n };\n }\n onItemSelect(item: any) {\n console.log(item);\n console.log(this.selectedItems);\n }\n OnItemDeSelect(item: any) {\n console.log(item);\n console.log(this.selectedItems);\n }\n onSelectAll(items: any) {\n console.log(items);\n }\n onDeSelectAll(items: any) {\n console.log(items);\n }\n onScroll(e: any) {\n console.log(e);\n }\n onOpen(e:any){\n console.log(this.itemList);\n }\n fetchMore(event: any) {\n if (event.endIndex === this.itemList.length - 1) {\n this.loading = true;\n this.appService.getChunkData(this.itemList.length, this.bufferSize).then(chunk => {\n this.itemList = this.itemList.concat(chunk);\n this.loading = false;\n }, () => this.loading = false);\n }\n }\n changeData() {\n this.selectedItems = [];\n }\n cssgist: boolean = false;\n title: string = \"Lazy loading - Remote Data API\";\n tsgist: string = \"CuppaLabs/3833720c12e23f6c8ee5fd870e38ad5b\";\n htmlgist: string = \"CuppaLabs/72ebd8cfa40a23a74ccbeda6de98a1e8\";\n tstitle: string = \"lazyLoadingRemoteData.ts\"\n htmltitle: string = \"lazyLoadingRemoteData.html\";\n}\n","import { Component, OnInit } from '@angular/core';\n\n@Component({\n templateUrl: './views/view.html'\n})\nexport class LimitBadgesExample implements OnInit {\n\n itemList = [];\n selectedItems = [];\n settings = {};\n\n constructor() {\n\n }\n ngOnInit() {\n\n\n this.itemList = [\n { \"id\": 1, \"itemName\": \"India\" },\n { \"id\": 2, \"itemName\": \"Singapore\" },\n { \"id\": 3, \"itemName\": \"Australia\" },\n { \"id\": 4, \"itemName\": \"Canada\" },\n { \"id\": 5, \"itemName\": \"South Korea\" },\n { \"id\": 6, \"itemName\": \"Brazil\" }\n ];\n\n this.selectedItems = [\n { \"id\": 1, \"itemName\": \"India\" },\n { \"id\": 2, \"itemName\": \"Singapore\" },\n { \"id\": 3, \"itemName\": \"Australia\" },\n { \"id\": 4, \"itemName\": \"Canada\" }];\n this.settings = {\n singleSelection: false,\n text: \"Select Countries\",\n selectAllText: 'Select All',\n unSelectAllText: 'UnSelect All',\n enableSearchFilter: true,\n badgeShowLimit: 3\n };\n }\n onItemSelect(item: any) {\n console.log(item);\n console.log(this.selectedItems);\n }\n OnItemDeSelect(item: any) {\n console.log(item);\n console.log(this.selectedItems);\n }\n onSelectAll(items: any) {\n console.log(items);\n }\n onDeSelectAll(items: any) {\n console.log(items);\n }\n cssgist: boolean = false;\n title: string = \"Limit badges length\";\n tsgist: string = \"CuppaLabs/00a25e7f8f70199f6571ac9fccbb94c2\";\n htmlgist: string = \"CuppaLabs/eb78d42ab7971fda6493586e329bfdb8\";\n tstitle: string = \"limitBadges.ts\"\n htmltitle: string = \"limitBadges.html\";\n}\n","import { Component, OnInit } from '@angular/core';\n\n@Component({\n templateUrl: './views/view.html'\n})\nexport class LimitSelectionExample implements OnInit {\n\n itemList = [];\n selectedItems = [];\n settings = {};\n\n constructor() {\n\n }\n ngOnInit() {\n\n\n this.itemList = [\n { \"id\": 1, \"itemName\": \"India\" },\n { \"id\": 2, \"itemName\": \"Singapore\" },\n { \"id\": 3, \"itemName\": \"Australia\" },\n { \"id\": 4, \"itemName\": \"Canada\" },\n { \"id\": 5, \"itemName\": \"South Korea\" },\n { \"id\": 6, \"itemName\": \"Brazil\" }\n ];\n\n this.selectedItems = [\n { \"id\": 1, \"itemName\": \"India\" },\n { \"id\": 2, \"itemName\": \"Singapore\" },\n { \"id\": 3, \"itemName\": \"Australia\" },\n { \"id\": 4, \"itemName\": \"Canada\" }];\n this.settings = {\n text: \"Select Countries\",\n selectAllText: 'Select All',\n unSelectAllText: 'UnSelect All',\n enableSearchFilter: false,\n classes: \"myclass custom-class\",\n limitSelection: 4\n };\n }\n onItemSelect(item: any) {\n console.log(item);\n console.log(this.selectedItems);\n }\n OnItemDeSelect(item: any) {\n console.log(item);\n console.log(this.selectedItems);\n }\n onSelectAll(items: any) {\n console.log(items);\n }\n onDeSelectAll(items: any) {\n console.log(items);\n }\n cssgist: boolean = false;\n title: string = \"Limit Selection\";\n tsgist: string = \"CuppaLabs/70667b7d4dd4270bb290685e036a379a\";\n htmlgist: string = \"CuppaLabs/eb78d42ab7971fda6493586e329bfdb8\";\n tstitle: string = \"limitSelection.ts\"\n htmltitle: string = \"limitSelection.html\";\n}\n","import { Injectable } from '@angular/core';\nimport { Observable } from \"rxjs\";\n@Injectable()\nexport class MockService {\n\n itemList = [];\n DATA = [{ \"id\": \"PBMMedAdhr\", \"name\": \"PBM Medication Adherence\" }, { \"id\": \"GapsInCare\", \"name\": \"Gaps In Care\" }, { \"id\": \"UCTest1\", \"name\": \"Use Case Test1\" }, { \"id\": \"BASICSAVE\", \"name\": \"A generic alternative or 30-90 day dispense opport\" }, { \"id\": \"ADVSAVE\", \"name\": \"An advnaced generic alternative or 30-90 day dispe\" }, { \"id\": \"AttAlert\", \"name\": \"Attachment Alert\" }, { \"id\": \"PatSave\", \"name\": \"Patient savings\" }, { \"id\": \"UCTest2\", \"name\": \"Use Case Test 2\" }, { \"id\": \"UCTest3\", \"name\": \"Use Case Test 3\" }, { \"id\": \"UCTest4\", \"name\": \"Use Case Test 4\" }, { \"id\": \"UCTest5\", \"name\": \"Use Case Test 5\" }, { \"id\": \"UCTest6\", \"name\": \"Use Case Test 6\" }, { \"id\": \"UCTest7\", \"name\": \"Use Case Test 7\" }, { \"id\": \"UCTest9\", \"name\": \"Use Case Test 9\" }, { \"id\": \"UCTest#Ten\", \"name\": \"Use Case Test 10\" }, { \"id\": \"UCTest8\", \"name\": \"Use Case Test 8\" }, { \"id\": \"UCTest11\", \"name\": \"Test Use Case 11\" }, { \"id\": \"UCTest12\", \"name\": \"Test Use Case 12\" }, { \"id\": \"UCTest13\", \"name\": \"Test Use Case 13\" }, { \"id\": \"PNLIMMUN\", \"name\": \"PNL Immunization\" }, { \"id\": \"TrustBrkr\", \"name\": \"Identity Services\" }, { \"id\": \"RTBC\", \"name\": \"real time benefit check for 90 day at retail\" }];\n public categories: any = [\"Indian\", \"American\", \"Canadian\", \"Chinese\"];\n public namesList:any[] = [\"Smith\",\"Johnson\",\"Williams\",\"Brown\",\"Jones\",\"Miller\",\"Davis\",\"Garcia\",\"Rodriguez\",\"Wilson\",\"Martinez\",\"Anderson\",\"Taylor\",\"Thomas\",\"Hernandez\",\"Moore\",\"Martin\",\"Jackson\",\"Thompson\",\"White\",\"Lopez\",\"Lee\",\"Gonzalez\",\"Harris\",\"Clark\",\"Lewis\",\"Robinson\",\"Walker\",\"Perez\",\"Hall\",\"Young\",\"Allen\",\"Sanchez\",\"Wright\",\"King\",\"Scott\",\"Green\",\"Baker\",\"Adams\",\"Nelson\",\"Hill\",\"Ramirez\",\"Campbell\",\"Mitchell\",\"Roberts\",\"Carter\",\"Phillips\",\"Evans\",\"Turner\",\"Torres\",\"Parker\",\"Collins\",\"Edwards\",\"Stewart\",\"Flores\",\"Morris\",\"Nguyen\",\"Murphy\",\"Rivera\",\"Cook\",\"Rogers\",\"Morgan\",\"Peterson\",\"Cooper\",\"Reed\",\"Bailey\",\"Bell\",\"Gomez\",\"Kelly\",\"Howard\",\"Ward\",\"Cox\",\"Diaz\",\"Richardson\",\"Wood\",\"Watson\",\"Brooks\",\"Bennett\",\"Gray\",\"James\",\"Reyes\",\"Cruz\",\"Hughes\",\"Price\",\"Myers\",\"Long\",\"Foster\",\"Sanders\",\"Ross\",\"Morales\",\"Powell\",\"Sullivan\",\"Russell\",\"Ortiz\",\"Jenkins\",\"Gutierrez\",\"Perry\",\"Butler\",\"Barnes\",\"Fisher\",\"Henderson\",\"Coleman\",\"Simmons\",\"Patterson\",\"Jordan\",\"Reynolds\",\"Hamilton\",\"Graham\",\"Kim\",\"Gonzales\",\"Alexander\",\"Ramos\",\"Wallace\",\"Griffin\",\"West\",\"Cole\",\"Hayes\",\"Chavez\",\"Gibson\",\"Bryant\",\"Ellis\",\"Stevens\",\"Murray\",\"Ford\",\"Marshall\",\"Owens\",\"Mcdonald\",\"Harrison\",\"Ruiz\",\"Kennedy\",\"Wells\",\"Alvarez\",\"Woods\",\"Mendoza\",\"Castillo\",\"Olson\",\"Webb\",\"Washington\",\"Tucker\",\"Freeman\",\"Burns\",\"Henry\",\"Vasquez\",\"Snyder\",\"Simpson\",\"Crawford\",\"Jimenez\",\"Porter\",\"Mason\",\"Shaw\",\"Gordon\",\"Wagner\",\"Hunter\",\"Romero\",\"Hicks\",\"Dixon\",\"Hunt\",\"Palmer\",\"Robertson\",\"Black\",\"Holmes\",\"Stone\",\"Meyer\",\"Boyd\",\"Mills\",\"Warren\",\"Fox\",\"Rose\",\"Rice\",\"Moreno\",\"Schmidt\",\"Patel\",\"Ferguson\",\"Nichols\",\"Herrera\",\"Medina\",\"Ryan\",\"Fernandez\",\"Weaver\",\"Daniels\",\"Stephens\",\"Gardner\",\"Payne\",\"Kelley\",\"Dunn\",\"Pierce\",\"Arnold\",\"Tran\",\"Spencer\",\"Peters\",\"Hawkins\",\"Grant\",\"Hansen\",\"Castro\",\"Hoffman\",\"Hart\",\"Elliott\",\"Cunningham\",\"Knight\",\"Bradley\",\"Carroll\",\"Hudson\",\"Duncan\",\"Armstrong\",\"Berry\",\"Andrews\",\"Johnston\",\"Ray\",\"Lane\",\"Riley\",\"Carpenter\",\"Perkins\",\"Aguilar\",\"Silva\",\"Richards\",\"Willis\",\"Matthews\",\"Chapman\",\"Lawrence\",\"Garza\",\"Vargas\",\"Watkins\",\"Wheeler\",\"Larson\",\"Carlson\",\"Harper\",\"George\",\"Greene\",\"Burke\",\"Guzman\",\"Morrison\",\"Munoz\",\"Jacobs\",\"Obrien\",\"Lawson\",\"Franklin\",\"Lynch\",\"Bishop\",\"Carr\",\"Salazar\",\"Austin\",\"Mendez\",\"Gilbert\",\"Jensen\",\"Williamson\",\"Montgomery\",\"Harvey\",\"Oliver\",\"Howell\",\"Dean\",\"Hanson\",\"Weber\",\"Garrett\",\"Sims\",\"Burton\",\"Fuller\",\"Soto\",\"Mccoy\",\"Welch\",\"Chen\",\"Schultz\",\"Walters\",\"Reid\",\"Fields\",\"Walsh\",\"Little\",\"Fowler\",\"Bowman\",\"Davidson\",\"May\",\"Day\",\"Schneider\",\"Newman\",\"Brewer\",\"Lucas\",\"Holland\",\"Wong\",\"Banks\",\"Santos\",\"Curtis\",\"Pearson\",\"Delgado\",\"Valdez\",\"Pena\",\"Rios\",\"Douglas\",\"Sandoval\",\"Barrett\",\"Hopkins\",\"Keller\",\"Guerrero\",\"Stanley\",\"Bates\",\"Alvarado\",\"Beck\",\"Ortega\",\"Wade\",\"Estrada\",\"Contreras\",\"Barnett\",\"Caldwell\",\"Santiago\",\"Lambert\",\"Powers\",\"Chambers\",\"Nunez\",\"Craig\",\"Leonard\",\"Lowe\",\"Rhodes\",\"Byrd\",\"Gregory\",\"Shelton\",\"Frazier\",\"Becker\",\"Maldonado\",\"Fleming\",\"Vega\",\"Sutton\",\"Cohen\",\"Jennings\",\"Parks\",\"Mcdaniel\",\"Watts\",\"Barker\",\"Norris\",\"Vaughn\",\"Vazquez\",\"Holt\",\"Schwartz\",\"Steele\",\"Benson\",\"Neal\",\"Dominguez\",\"Horton\",\"Terry\",\"Wolfe\",\"Hale\",\"Lyons\",\"Graves\",\"Haynes\",\"Miles\",\"Park\",\"Warner\",\"Padilla\",\"Bush\",\"Thornton\",\"Mccarthy\",\"Mann\",\"Zimmerman\",\"Erickson\",\"Fletcher\",\"Mckinney\",\"Page\",\"Dawson\",\"Joseph\",\"Marquez\",\"Reeves\",\"Klein\",\"Espinoza\",\"Baldwin\",\"Moran\",\"Love\",\"Robbins\",\"Higgins\",\"Ball\",\"Cortez\",\"Le\",\"Griffith\",\"Bowen\",\"Sharp\",\"Cummings\",\"Ramsey\",\"Hardy\",\"Swanson\",\"Barber\",\"Acosta\",\"Luna\",\"Chandler\",\"Blair\",\"Daniel\",\"Cross\",\"Simon\",\"Dennis\",\"Oconnor\",\"Quinn\",\"Gross\",\"Navarro\",\"Moss\",\"Fitzgerald\",\"Doyle\",\"Mclaughlin\",\"Rojas\",\"Rodgers\",\"Stevenson\",\"Singh\",\"Yang\",\"Figueroa\",\"Harmon\",\"Newton\",\"Paul\",\"Manning\",\"Garner\",\"Mcgee\",\"Reese\",\"Francis\",\"Burgess\",\"Adkins\",\"Goodman\",\"Curry\",\"Brady\",\"Christensen\",\"Potter\",\"Walton\",\"Goodwin\",\"Mullins\",\"Molina\",\"Webster\",\"Fischer\",\"Campos\",\"Avila\",\"Sherman\",\"Todd\",\"Chang\",\"Blake\",\"Malone\",\"Wolf\",\"Hodges\",\"Juarez\",\"Gill\",\"Farmer\",\"Hines\",\"Gallagher\",\"Duran\",\"Hubbard\",\"Cannon\",\"Miranda\",\"Wang\",\"Saunders\",\"Tate\",\"Mack\",\"Hammond\",\"Carrillo\",\"Townsend\",\"Wise\",\"Ingram\",\"Barton\",\"Mejia\",\"Ayala\",\"Schroeder\",\"Hampton\",\"Rowe\",\"Parsons\",\"Frank\",\"Waters\",\"Strickland\",\"Osborne\",\"Maxwell\",\"Chan\",\"Deleon\",\"Norman\",\"Harrington\",\"Casey\",\"Patton\",\"Logan\",\"Bowers\",\"Mueller\",\"Glover\",\"Floyd\",\"Hartman\",\"Buchanan\",\"Cobb\",\"French\",\"Kramer\",\"Mccormick\",\"Clarke\",\"Tyler\",\"Gibbs\",\"Moody\",\"Conner\",\"Sparks\",\"Mcguire\",\"Leon\",\"Bauer\",\"Norton\",\"Pope\",\"Flynn\",\"Hogan\",\"Robles\",\"Salinas\",\"Yates\",\"Lindsey\",\"Lloyd\",\"Marsh\",\"Mcbride\",\"Owen\",\"Solis\",\"Pham\",\"Lang\",\"Pratt\",\"Lara\",\"Brock\",\"Ballard\",\"Trujillo\",\"Shaffer\",\"Drake\",\"Roman\",\"Aguirre\",\"Morton\",\"Stokes\",\"Lamb\",\"Pacheco\",\"Patrick\",\"Cochran\",\"Shepherd\",\"Cain\",\"Burnett\",\"Hess\",\"Li\",\"Cervantes\",\"Olsen\",\"Briggs\",\"Ochoa\",\"Cabrera\",\"Velasquez\",\"Montoya\",\"Roth\",\"Meyers\",\"Cardenas\",\"Fuentes\",\"Weiss\",\"Hoover\",\"Wilkins\",\"Nicholson\",\"Underwood\",\"Short\",\"Carson\",\"Morrow\",\"Colon\",\"Holloway\",\"Summers\",\"Bryan\",\"Petersen\",\"Mckenzie\",\"Serrano\",\"Wilcox\",\"Carey\",\"Clayton\",\"Poole\",\"Calderon\",\"Gallegos\",\"Greer\",\"Rivas\",\"Guerra\",\"Decker\",\"Collier\",\"Wall\",\"Whitaker\",\"Bass\",\"Flowers\",\"Davenport\",\"Conley\",\"Houston\",\"Huff\",\"Copeland\",\"Hood\",\"Monroe\",\"Massey\",\"Roberson\",\"Combs\",\"Franco\",\"Larsen\",\"Pittman\",\"Randall\",\"Skinner\",\"Wilkinson\",\"Kirby\",\"Cameron\",\"Bridges\",\"Anthony\",\"Richard\",\"Kirk\",\"Bruce\",\"Singleton\",\"Mathis\",\"Bradford\",\"Boone\",\"Abbott\",\"Charles\",\"Allison\",\"Sweeney\",\"Atkinson\",\"Horn\",\"Jefferson\",\"Rosales\",\"York\",\"Christian\",\"Phelps\",\"Farrell\",\"Castaneda\",\"Nash\",\"Dickerson\",\"Bond\",\"Wyatt\",\"Foley\",\"Chase\",\"Gates\",\"Vincent\",\"Mathews\",\"Hodge\",\"Garrison\",\"Trevino\",\"Villarreal\",\"Heath\",\"Dalton\",\"Valencia\",\"Callahan\",\"Hensley\",\"Atkins\",\"Huffman\",\"Roy\",\"Boyer\",\"Shields\",\"Lin\",\"Hancock\",\"Grimes\",\"Glenn\",\"Cline\",\"Delacruz\",\"Camacho\",\"Dillon\",\"Parrish\",\"Oneill\",\"Melton\",\"Booth\",\"Kane\",\"Berg\",\"Harrell\",\"Pitts\",\"Savage\",\"Wiggins\",\"Brennan\",\"Salas\",\"Marks\",\"Russo\",\"Sawyer\",\"Baxter\",\"Golden\",\"Hutchinson\",\"Liu\",\"Walter\",\"Mcdowell\",\"Wiley\",\"Rich\",\"Humphrey\",\"Johns\",\"Koch\",\"Suarez\",\"Hobbs\",\"Beard\",\"Gilmore\",\"Ibarra\",\"Keith\",\"Macias\",\"Khan\",\"Andrade\",\"Ware\",\"Stephenson\",\"Henson\",\"Wilkerson\",\"Dyer\",\"Mcclure\",\"Blackwell\",\"Mercado\",\"Tanner\",\"Eaton\",\"Clay\",\"Barron\",\"Beasley\",\"Oneal\",\"Preston\",\"Small\",\"Wu\",\"Zamora\",\"Macdonald\",\"Vance\",\"Snow\",\"Mcclain\",\"Stafford\",\"Orozco\",\"Barry\",\"English\",\"Shannon\",\"Kline\",\"Jacobson\",\"Woodard\",\"Huang\",\"Kemp\",\"Mosley\",\"Prince\",\"Merritt\",\"Hurst\",\"Villanueva\",\"Roach\",\"Nolan\",\"Lam\",\"Yoder\",\"Mccullough\",\"Lester\",\"Santana\",\"Valenzuela\",\"Winters\",\"Barrera\",\"Leach\",\"Orr\",\"Berger\",\"Mckee\",\"Strong\",\"Conway\",\"Stein\",\"Whitehead\",\"Bullock\",\"Escobar\",\"Knox\",\"Meadows\",\"Solomon\",\"Velez\",\"Odonnell\",\"Kerr\",\"Stout\",\"Blankenship\",\"Browning\",\"Kent\",\"Lozano\",\"Bartlett\",\"Pruitt\",\"Buck\",\"Barr\",\"Gaines\",\"Durham\",\"Gentry\",\"Mcintyre\",\"Sloan\",\"Melendez\",\"Rocha\",\"Herman\",\"Sexton\",\"Moon\",\"Hendricks\",\"Rangel\",\"Stark\",\"Lowery\",\"Hardin\",\"Hull\",\"Sellers\",\"Ellison\",\"Calhoun\",\"Gillespie\",\"Mora\",\"Knapp\",\"Mccall\",\"Morse\",\"Dorsey\",\"Weeks\",\"Nielsen\",\"Livingston\",\"Leblanc\",\"Mclean\",\"Bradshaw\",\"Glass\",\"Middleton\",\"Buckley\",\"Schaefer\",\"Frost\",\"Howe\",\"House\",\"Mcintosh\",\"Ho\",\"Pennington\",\"Reilly\",\"Hebert\",\"Mcfarland\",\"Hickman\",\"Noble\",\"Spears\",\"Conrad\",\"Arias\",\"Galvan\",\"Velazquez\",\"Huynh\",\"Frederick\",\"Randolph\",\"Cantu\",\"Fitzpatrick\",\"Mahoney\",\"Peck\",\"Villa\",\"Michael\",\"Donovan\",\"Mcconnell\",\"Walls\",\"Boyle\",\"Mayer\",\"Zuniga\",\"Giles\",\"Pineda\",\"Pace\",\"Hurley\",\"Mays\",\"Mcmillan\",\"Crosby\",\"Ayers\",\"Case\",\"Bentley\",\"Shepard\",\"Everett\",\"Pugh\",\"David\",\"Mcmahon\",\"Dunlap\",\"Bender\",\"Hahn\",\"Harding\",\"Acevedo\",\"Raymond\",\"Blackburn\",\"Duffy\",\"Landry\",\"Dougherty\",\"Bautista\",\"Shah\",\"Potts\",\"Arroyo\",\"Valentine\",\"Meza\",\"Gould\",\"Vaughan\",\"Fry\",\"Rush\",\"Avery\",\"Herring\",\"Dodson\",\"Clements\",\"Sampson\",\"Tapia\",\"Bean\",\"Lynn\",\"Crane\",\"Farley\",\"Cisneros\",\"Benton\",\"Ashley\",\"Mckay\",\"Finley\",\"Best\",\"Blevins\",\"Friedman\",\"Moses\",\"Sosa\",\"Blanchard\",\"Huber\",\"Frye\",\"Krueger\",\"Bernard\",\"Rosario\",\"Rubio\",\"Mullen\",\"Benjamin\",\"Haley\",\"Chung\",\"Moyer\",\"Choi\",\"Horne\",\"Yu\",\"Woodward\",\"Ali\",\"Nixon\",\"Hayden\",\"Rivers\",\"Estes\",\"Mccarty\",\"Richmond\",\"Stuart\",\"Maynard\",\"Brandt\",\"Oconnell\",\"Hanna\",\"Sanford\",\"Sheppard\",\"Church\",\"Burch\",\"Levy\",\"Rasmussen\",\"Coffey\",\"Ponce\",\"Faulkner\",\"Donaldson\",\"Schmitt\",\"Novak\",\"Costa\",\"Montes\",\"Booker\",\"Cordova\",\"Waller\",\"Arellano\",\"Maddox\",\"Mata\",\"Bonilla\",\"Stanton\",\"Compton\",\"Kaufman\",\"Dudley\",\"Mcpherson\",\"Beltran\",\"Dickson\",\"Mccann\",\"Villegas\",\"Proctor\",\"Hester\",\"Cantrell\",\"Daugherty\",\"Cherry\",\"Bray\",\"Davila\",\"Rowland\",\"Levine\",\"Madden\",\"Spence\",\"Good\",\"Irwin\",\"Werner\",\"Krause\",\"Petty\",\"Whitney\",\"Baird\",\"Hooper\",\"Pollard\",\"Zavala\",\"Jarvis\",\"Holden\",\"Haas\",\"Hendrix\",\"Mcgrath\",\"Bird\",\"Lucero\",\"Terrell\",\"Riggs\",\"Joyce\",\"Mercer\",\"Rollins\",\"Galloway\",\"Duke\",\"Odom\",\"Andersen\",\"Downs\",\"Hatfield\",\"Benitez\",\"Archer\",\"Huerta\",\"Travis\",\"Mcneil\",\"Hinton\",\"Zhang\",\"Hays\",\"Mayo\",\"Fritz\",\"Branch\",\"Mooney\",\"Ewing\",\"Ritter\",\"Esparza\",\"Frey\",\"Braun\",\"Gay\",\"Riddle\",\"Haney\",\"Kaiser\",\"Holder\",\"Chaney\",\"Mcknight\",\"Gamble\",\"Vang\",\"Cooley\",\"Carney\",\"Cowan\",\"Forbes\",\"Ferrell\",\"Davies\",\"Barajas\",\"Shea\",\"Osborn\",\"Bright\",\"Cuevas\",\"Bolton\",\"Murillo\",\"Lutz\",\"Duarte\",\"Kidd\",\"Key\",\"Cooke\"];\n timer:any;\n constructor() {\n for(var t=1;t<=100;t++){\n var tempObj = {\"id\":0,\"name\":\"\",\"category\":\"\"};\n tempObj.id = t;\n tempObj.name= this.namesList[Math.floor(Math.random()*this.namesList.length)];\n tempObj.category= this.categories[Math.floor(Math.random()*this.categories.length)];\n this.itemList.push(tempObj);\n }\n }\n\n getDirectories(): Observable> {\n return Observable.create(\n (observer) => {\n\n return new Promise(resolve => setTimeout(() => {\n console.log(\"directoriesLoaded\");\n resolve(this.DATA);\n }, 1000)).then((response) => {\n observer.next(response);\n observer.complete();\n });\n }\n );\n }\n getChunkData(skip: number, limit: number): Promise {\n return new Promise((resolve, reject) => {\n clearTimeout(this.timer);\n this.timer = setTimeout(() => {\n if (skip < this.itemList.length) {\n return resolve(this.itemList.slice(skip, skip + limit));\n }\n reject();\n }, 1000 + Math.random() * 1000);\n });\n }\n\n getUseCases(): Observable> {\n return Observable.create(\n (observer) => {\n return new Promise(resolve => setTimeout(() => {\n console.log(\"useCasesLoaded\");\n resolve(this.DATA);\n }, 500)).then((response) => {\n observer.next(response);\n observer.complete();\n });\n }\n );\n }\n\n getData(arr) {\n if (arr.length === 0) {\n return this.DATA;\n }\n // Randomly remove and add some data\n arr.splice(Math.floor(Math.random() * arr.length), 1);\n arr.push(this.DATA[Math.floor(Math.random() * this.DATA.length)]);\n return arr;\n }\n getFruits() {\n return [{ \"id\": 1, \"itemName\": \"Apple\", \"category\": \"fruits\" },\n { \"id\": 2, \"itemName\": \"Banana\", \"category\": \"fruits\" },\n { \"id\": 5, \"itemName\": \"Tomatoe\", \"category\": \"vegetables\" },\n { \"id\": 6, \"itemName\": \"Potatoe\", \"category\": \"vegetables\" }];\n }\n getCountries() {\n return [\n { \"id\": 1, \"itemName\": \"India\", \"category\": \"asia\" },\n { \"id\": 2, \"itemName\": \"Singapore\", \"category\": \"asia pacific\" },\n { \"id\": 3, \"itemName\": \"Germany\", \"category\": \"Europe\" },\n { \"id\": 4, \"itemName\": \"France\", \"category\": \"Europe\" },\n { \"id\": 5, \"itemName\": \"South Korea\", \"category\": \"asia\" },\n { \"id\": 6, \"itemName\": \"Sweden\", \"category\": \"Europe\" }\n ];\n }\n}\n","

{{title}}

\n
\n
\n \n \n \n
\n
\n \n \n \n
\n
\n

Code

\n\n\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n","import { Component, OnInit } from '@angular/core';\nimport { MockService } from './mock-data';\nimport { tap, map } from 'rxjs/operators';\n\n@Component({\n templateUrl: './views/multipledropdowns.html'\n})\nexport class MultipleDropdownsExample implements OnInit {\n\n itemList = [];\n selectedItems = [];\n settings = {};\n directorySpecialties = [];\n useCases = [];\n dropdownSettings = {};\n dropdownSettings2 = {};\n\n providerLocation: any = {\n directorySpecialties: [{ \"id\": \"PBMMedAdhr\", \"name\": \"PBM Medication Adherence\" }, { \"id\": \"GapsInCare\", \"name\": \"Gaps In Care\" }],\n useCases: [{ \"id\": \"UCTest3\", \"name\": \"Use Case Test 3\" }, { \"id\": \"UCTest4\", \"name\": \"Use Case Test 4\" }]\n };\n\n\n constructor(public mockService: MockService) { }\n ngOnInit() {\n\n this.dropdownSettings = {\n text: \"Select\",\n enableSearchFilter: true,\n labelKey: \"name\"\n };\n this.dropdownSettings2 = {\n text: \"Select\",\n enableSearchFilter: true,\n labelKey: \"name\"\n };\n\n this.mockService.getDirectories().pipe(map((resp: Array) => {\n this.directorySpecialties = resp;\n })).subscribe();\n\n this.mockService.getUseCases().pipe(map((resp: Array) => {\n this.useCases = resp;\n })).subscribe();\n }\n onItemSelect(item: any) {\n console.log(item);\n console.log(this.selectedItems);\n }\n OnItemDeSelect(item: any) {\n console.log(item);\n console.log(this.selectedItems);\n }\n onSelectAll(items: any) {\n console.log(items);\n }\n onDeSelectAll(items: any) {\n console.log(items);\n }\n cssgist: boolean = false;\n title: string = \"Multiple Dropdowns in a page\";\n tsgist: string = \"CuppaLabs/12225540c23c8a171a81f996fc8d9ca6\";\n htmlgist: string = \"CuppaLabs/3788fb5437925b9d7d8edafec567639c\";\n mockgist: string = \"CuppaLabs/b3e947ec83710307a3b8680a2ff89693\";\n tstitle: string = \"multiple-dropdowns.ts\"\n htmltitle: string = \"multiple-dropdowns.html\";\n mocktitle: string = \"mock-data.ts\"\n}\n","

\n {{title}}

\n
\n \n \n \n \n \n \n \n \n \n
\n

Code

\n\n\n \n \n \n \n \n \n \n \n \n \n \n","import { Component, OnInit } from '@angular/core';\nimport { HttpClient } from '@angular/common/http';\n\n@Component({\n templateUrl: './views/remoteData.html'\n})\nexport class RemoteDataExample implements OnInit {\n\n itemList:any = [];\n selectedItems = [];\n settings = {};\n\n constructor(private http: HttpClient) { }\n ngOnInit() {\n this.http.get('https://restcountries.eu/rest/v2/all')\n .subscribe(res => {\n console.log(res);\n this.itemList = res;\n },error => {\n\n });\n this.settings = {\n text: \"Select Countries\",\n selectAllText: 'Select All',\n unSelectAllText: 'UnSelect All',\n classes: \"myclass custom-class\",\n primaryKey: \"alpha3Code\",\n labelKey: \"name\",\n enableSearchFilter: true,\n searchBy: ['name','capital']\n };\n }\n onItemSelect(item: any) {\n console.log(item);\n console.log(this.selectedItems);\n }\n OnItemDeSelect(item: any) {\n console.log(item);\n console.log(this.selectedItems);\n }\n onSelectAll(items: any) {\n console.log(items);\n }\n onDeSelectAll(items: any) {\n console.log(items);\n }\n onSearch(evt: any){\n console.log(evt.target.value);\n }\n cssgist: boolean = false;\n title: string = \"Data from remote API example\";\n tsgist: string = \"CuppaLabs/ffb168ae28c36a9130ad5ce74b720c5d\";\n htmlgist: string = \"CuppaLabs/eb78d42ab7971fda6493586e329bfdb8\";\n tstitle: string = \"remoteData.ts\"\n htmltitle: string = \"remoteData.html\";\n}\n","

{{title}}

\n
\n
\n
\n
\n
\n
\n
\n \n
\n
\n \n\n
\n
\n
\n\n

Code

\n\n\n \n \n \n \n \n \n","import { Component, OnInit, ViewChild, ElementRef } from '@angular/core';\nimport { AngularMultiSelect } from '../../../projects/angular2-multiselect-dropdown-lib/src/lib/multiselect.component';\n\n@Component({\n templateUrl: './views/resetDropdown.html'\n})\nexport class ResetDropdownExample implements OnInit {\n\n itemList = [];\n selectedItems = [];\n settings = {};\n @ViewChild('dropdownElem', {static: true}) dropdownElem: AngularMultiSelect;\n constructor() {\n\n }\n ngOnInit() {\n\n\n this.itemList = [\n { \"id\": 1, \"itemName\": \"India\" },\n { \"id\": 2, \"itemName\": \"Singapore\" },\n { \"id\": 3, \"itemName\": \"Australia\" },\n { \"id\": 4, \"itemName\": \"Canada\" },\n { \"id\": 5, \"itemName\": \"South Korea\" },\n { \"id\": 6, \"itemName\": \"Brazil\" }\n ];\n\n this.selectedItems = [\n { \"id\": 1, \"itemName\": \"India\" },\n { \"id\": 2, \"itemName\": \"Singapore\" },\n { \"id\": 3, \"itemName\": \"Australia\" },\n { \"id\": 4, \"itemName\": \"Canada\" }];\n this.settings = {\n text: \"Select Countries\",\n selectAllText: 'Select All',\n unSelectAllText: 'UnSelect All',\n classes: \"myclass custom-class\"\n };\n }\n onItemSelect(item: any) {\n console.log(item);\n console.log(this.selectedItems);\n }\n OnItemDeSelect(item: any) {\n console.log(item);\n console.log(this.selectedItems);\n }\n onSelectAll(items: any) {\n console.log(items);\n }\n onDeSelectAll(items: any) {\n console.log(items);\n }\n showModel() {\n console.log(this.selectedItems);\n }\n changeData() {\n this.selectedItems = [];\n }\n open(evt: any){\n this.dropdownElem.openDropdown();\n evt.stopPropagation();\n }\n close(evt: any){\n this.dropdownElem.closeDropdown();\n }\n cssgist: boolean = false;\n title: string = \"Methods - Reset, Open, Close dropdown\";\n tsgist: string = \"CuppaLabs/96d3ca7681f1a7a38b8c76b2f1552458\";\n htmlgist: string = \"CuppaLabs/bbd73b9f9864effb69f361c9fc65a6e5\";\n tstitle: string = \"resetDropdown.ts\"\n htmltitle: string = \"resetDropdown.html\";\n}\n","import { Component, OnInit } from '@angular/core';\n\n@Component({\n templateUrl: './views/view.html'\n})\nexport class SearchFilterByOnePropertyExample implements OnInit {\n\n itemList = [];\n selectedItems = [];\n settings = {};\n\n constructor() {\n\n }\n ngOnInit() {\n\n\n this.itemList = [\n {\"id\":1,\"itemName\":\"India\",\"name\":\"IN\"},\n {\"id\":2,\"itemName\":\"Singapore\",\"name\":\"SN\"},\n {\"id\":3,\"itemName\":\"Australia\",\"name\":\"AU\"},\n {\"id\":4,\"itemName\":\"Canada\",\"name\":\"CA\"},\n {\"id\":5,\"itemName\":\"South Korea\",\"name\":\"SK\"}, \n {\"id\":6,\"itemName\":\"Brazil\",\"name\":\"BR\"} \n ];\n\n this.selectedItems = [\n {\"id\":1,\"itemName\":\"India\",\"name\":\"IN\"},\n {\"id\":2,\"itemName\":\"Singapore\",\"name\":\"SN\"},\n {\"id\":3,\"itemName\":\"Australia\",\"name\":\"AU\"},\n {\"id\":4,\"itemName\":\"Canada\",\"name\":\"CA\"}];\n this.settings = {\n singleSelection: false,\n text: \"Select Countries\",\n selectAllText: 'Select All',\n unSelectAllText: 'UnSelect All',\n enableSearchFilter: true,\n badgeShowLimit: 3,\n searchBy: ['itemName'],\n searchPlaceholderText: 'Search by name' \n };\n }\n onItemSelect(item: any) {\n console.log(item);\n console.log(this.selectedItems);\n }\n OnItemDeSelect(item: any) {\n console.log(item);\n console.log(this.selectedItems);\n }\n onSelectAll(items: any) {\n console.log(items);\n }\n onDeSelectAll(items: any) {\n console.log(items);\n }\n cssgist: boolean = false;\n title: string = \"Search filter by one property / key\";\n tsgist: string = \"CuppaLabs/f6acd1eb94c95df32f689260b1f38b4c\";\n htmlgist: string = \"CuppaLabs/eb78d42ab7971fda6493586e329bfdb8\";\n tstitle: string = \"searchFilterByProperty.ts\"\n htmltitle: string = \"searchFilterByProperty.html\";\n}\n","import { Component, OnInit } from '@angular/core';\n\n@Component({\n templateUrl: './views/view.html'\n})\nexport class SearchFilterExample implements OnInit {\n\n itemList = [];\n selectedItems = [];\n settings = {};\n\n constructor() {\n\n }\n ngOnInit() {\n\n\n this.itemList = [\n {\"id\":1,\"itemName\":\"India\",\"name\":\"IN\"},\n {\"id\":2,\"itemName\":\"Singapore\",\"name\":\"SN\"},\n {\"id\":3,\"itemName\":\"Australia\",\"name\":\"AU\"},\n {\"id\":4,\"itemName\":\"Canada\",\"name\":\"CA\"},\n {\"id\":5,\"itemName\":\"South Korea\",\"name\":\"SK\"}, \n {\"id\":6,\"itemName\":\"Brazil\",\"name\":\"BR\"} \n ];\n\n this.selectedItems = [\n {\"id\":1,\"itemName\":\"India\",\"name\":\"IN\"},\n {\"id\":2,\"itemName\":\"Singapore\",\"name\":\"SN\"},\n {\"id\":3,\"itemName\":\"Australia\",\"name\":\"AU\"},\n {\"id\":4,\"itemName\":\"Canada\",\"name\":\"CA\"}];\n this.settings = {\n singleSelection: false,\n text: \"Select Countries\",\n selectAllText: 'Select All',\n unSelectAllText: 'UnSelect All',\n enableSearchFilter: true,\n badgeShowLimit: 3,\n addNewItemOnFilter: true\n };\n }\n onItemSelect(item: any) {\n console.log(item);\n console.log(this.selectedItems);\n }\n OnItemDeSelect(item: any) {\n console.log(item);\n console.log(this.selectedItems);\n }\n onSelectAll(items: any) {\n console.log(items);\n }\n onDeSelectAll(items: any) {\n console.log(items);\n }\n cssgist: boolean = false;\n title: string = \"Search filter\";\n tsgist: string = \"CuppaLabs/447bd5fce6dfc2832f5f4a8c36726a9b\";\n htmlgist: string = \"CuppaLabs/eb78d42ab7971fda6493586e329bfdb8\";\n tstitle: string = \"searchFilter.ts\"\n htmltitle: string = \"searchFilter.html\";\n}\n","

{{title}}

\n
\n \n \n
\n
\n How this example works !! \n
\n When you try to filter the list items, if no search results are available, you would see an 'Add' button. On clicking the add button, it would emit the text that you enter in the input field to your controlle in the callback method, as show in the below code.\n You can add this item to the data list. If you wish, that this item be selected, add it to selected items list.\n
\n

Code

\n\n\n \n \n \n \n \n \n \n \n \n \n \n\n","import { Component, OnInit } from '@angular/core';\n\n@Component({\n templateUrl: './views/searchFilter.html'\n})\nexport class SearchFilterAddItemExample implements OnInit {\n\n itemList = [];\n selectedItems = [];\n settings = {};\n count = 6;\n constructor() {\n\n }\n ngOnInit() {\n\n\n this.itemList = [\n {\"id\":1,\"itemName\":\"India\",\"name\":\"IN\"},\n {\"id\":2,\"itemName\":\"Singapore\",\"name\":\"SN\"},\n {\"id\":3,\"itemName\":\"Australia\",\"name\":\"AU\"},\n {\"id\":4,\"itemName\":\"Canada\",\"name\":\"CA\"},\n {\"id\":5,\"itemName\":\"South Korea\",\"name\":\"SK\"}, \n {\"id\":6,\"itemName\":\"Brazil\",\"name\":\"BR\"} \n ];\n\n this.selectedItems = [\n {\"id\":1,\"itemName\":\"India\",\"name\":\"IN\"},\n {\"id\":2,\"itemName\":\"Singapore\",\"name\":\"SN\"},\n {\"id\":3,\"itemName\":\"Australia\",\"name\":\"AU\"},\n {\"id\":4,\"itemName\":\"Canada\",\"name\":\"CA\"}];\n this.settings = {\n singleSelection: false,\n text: \"Select Countries\",\n selectAllText: 'Select All',\n unSelectAllText: 'UnSelect All',\n enableSearchFilter: true,\n addNewItemOnFilter: true\n };\n }\n onAddItem(data:string){\n this.count++;\n this.itemList.push({\"id\": this.count,\"itemName\":data,\"name\":data});\n this.selectedItems.push({\"id\": this.count,\"itemName\":data,\"name\":data});\n }\n onItemSelect(item: any) {\n console.log(item);\n console.log(this.selectedItems);\n }\n OnItemDeSelect(item: any) {\n console.log(item);\n console.log(this.selectedItems);\n }\n onSelectAll(items: any) {\n console.log(items);\n }\n onDeSelectAll(items: any) {\n console.log(items);\n }\n cssgist: boolean = false;\n title: string = \"Search and Add New Item, if not found\";\n tsgist: string = \"CuppaLabs/c1e00c870c3e3b9213e69e0a93518cc6\";\n htmlgist: string = \"CuppaLabs/0583ba4be8b7c192d14f04375f96c074\";\n tstitle: string = \"searchFilterAddNewItem.ts\"\n htmltitle: string = \"searchFilter.html\";\n}\n","import { Component, OnInit } from '@angular/core';\n\n@Component({\n templateUrl: './views/view.html' \n})\nexport class SingleSelectionExample implements OnInit {\n\n itemList = [];\n selectedItems = [];\n settings = {};\n\n constructor(){\n \n }\n ngOnInit(){\n \n\n this.itemList = [\n {\"id\":1,\"itemName\":\"India\",\"name\":\"IN\"},\n {\"id\":2,\"itemName\":\"Singapore\",\"name\":\"SN\"},\n {\"id\":3,\"itemName\":\"Australia\",\"name\":\"AU\"},\n {\"id\":4,\"itemName\":\"Canada\",\"name\":\"CA\"},\n {\"id\":5,\"itemName\":\"South Korea\",\"name\":\"SK\"}, \n {\"id\":6,\"itemName\":\"Brazil\",\"name\":\"BR\"} \n ];\n \n this.selectedItems = [\n {\"id\":1,\"itemName\":\"India\",\"name\":\"IN\"}];\n this.settings = {singleSelection: true, text:\"Select Country\",clearAll:false};\n }\n onItemSelect(item:any){\n console.log(item);\n console.log(this.selectedItems);\n }\n OnItemDeSelect(item:any){\n console.log(item);\n console.log(this.selectedItems);\n }\n onSelectAll(items: any){\n console.log(items);\n }\n onDeSelectAll(items: any){\n console.log(items);\n }\ncssgist: boolean = false;\n title: string = \"Single Selection\";\n tsgist: string = \"CuppaLabs/6ef578ce507dfd548eec39e008b4de14\";\n htmlgist: string = \"CuppaLabs/eb78d42ab7971fda6493586e329bfdb8\";\n tstitle: string = \"singleSelection.ts\"\n htmltitle: string = \"singleSelection.html\";\n}\n","import { Component, OnInit } from '@angular/core';\n\n@Component({\n templateUrl: './views/view.html'\n})\nexport class StylingExample implements OnInit {\n\n itemList = [];\n selectedItems = [];\n settings = {};\n\n constructor() {\n\n }\n ngOnInit() {\n\n\n this.itemList = [\n { \"id\": 1, \"itemName\": \"India\" },\n { \"id\": 2, \"itemName\": \"Singapore\" },\n { \"id\": 3, \"itemName\": \"Australia\" },\n { \"id\": 4, \"itemName\": \"Canada\" },\n { \"id\": 5, \"itemName\": \"South Korea\" },\n { \"id\": 6, \"itemName\": \"Brazil\" }\n ];\n\n this.selectedItems = [\n { \"id\": 1, \"itemName\": \"India\" },\n { \"id\": 2, \"itemName\": \"Singapore\" },\n { \"id\": 3, \"itemName\": \"Australia\" },\n { \"id\": 4, \"itemName\": \"Canada\" }];\n this.settings = {\n text: \"Select Countries\",\n selectAllText: 'Select All',\n unSelectAllText: 'UnSelect All',\n classes: \"myclass custom-class-example\"\n };\n }\n onItemSelect(item: any) {\n console.log(item);\n console.log(this.selectedItems);\n }\n OnItemDeSelect(item: any) {\n console.log(item);\n console.log(this.selectedItems);\n }\n onSelectAll(items: any) {\n console.log(items);\n }\n onDeSelectAll(items: any) {\n console.log(items);\n }\n title: string = \"Custom styling\";\n tsgist: string = \"CuppaLabs/67fb11cbb67a62888ca0a3adb44ee440\";\n htmlgist: string = \"CuppaLabs/eb78d42ab7971fda6493586e329bfdb8\";\n cssgist: string = \"CuppaLabs/e6efeedade8f737df03107625df165e7\";\n tstitle: string = \"customStyling.ts\";\n htmltitle: string = \"customStyling.html\";\n csstitle: string = \"app.css\";\n}\n","

{{title}}

\n
\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
\n\n

Code

\n\n\n \n \n \n \n \n \n","import { Component, OnInit } from '@angular/core';\n\n@Component({\n templateUrl: './views/templating.html'\n})\nexport class TemplatingExample implements OnInit {\n\n itemList = [];\n selectedItems = [];\n settings = {};\n\n constructor(){\n \n }\n ngOnInit(){\n \n\n this.itemList = [\n {\"category\":\"asia\",\"id\":1,\"itemName\":\"India\",\"capital\":\"Delhi\",\"image\":\"http://www.sciencekids.co.nz/images/pictures/flags96/India.jpg\"},\n {\"category\":\"asia\",\"id\":2,\"itemName\":\"Singapore\", \"capital\":\"Singapore\",\"image\":\"http://www.sciencekids.co.nz/images/pictures/flags96/Singapore.jpg\"},\n {\"category\":\"europe\",\"id\":3,\"itemName\":\"United Kingdom\", \"capital\":\"London\",\"image\":\"http://www.sciencekids.co.nz/images/pictures/flags96/United_Kingdom.jpg\"},\n {\"category\":\"northamerica\",\"id\":4,\"itemName\":\"Canada\",\"capital\":\"Ottawa\",\"image\":\"http://www.sciencekids.co.nz/images/pictures/flags96/Canada.jpg\"},\n {\"category\":\"asia\",\"id\":5,\"itemName\":\"South Korea\",\"capital\":\"Seoul\",\"image\":\"http://www.sciencekids.co.nz/images/pictures/flags96/South_Korea.jpg\"}, \n {\"category\":\"latinamerica\",\"id\":6,\"itemName\":\"Brazil\",\"capital\":\"Brasilia\",\"image\":\"http://www.sciencekids.co.nz/images/pictures/flags96/Brazil.jpg\"} \n ];\n \n this.selectedItems = [\n {\"category\":\"asia\",\"id\":1,\"itemName\":\"India\",\"capital\":\"Delhi\",\"image\":\"http://www.sciencekids.co.nz/images/pictures/flags96/India.jpg\"},\n {\"category\":\"asia\",\"id\":2,\"itemName\":\"Singapore\", \"capital\":\"Singapore\",\"image\":\"http://www.sciencekids.co.nz/images/pictures/flags96/Singapore.jpg\"},\n {\"category\":\"europe\",\"id\":3,\"itemName\":\"United Kingdom\", \"capital\":\"London\",\"image\":\"http://www.sciencekids.co.nz/images/pictures/flags96/United_Kingdom.jpg\"},\n {\"category\":\"northamerica\",\"id\":4,\"itemName\":\"Canada\",\"capital\":\"Ottawa\",\"image\":\"http://www.sciencekids.co.nz/images/pictures/flags96/Canada.jpg\"}]\n this.settings = { \n text:\"Select Countries\",\n selectAllText:'Select All',\n unSelectAllText:'UnSelect All',\n enableSearchFilter: true,\n classes:\"myclass custom-class\",\n showCheckbox: true,\n groupBy: \"category\"\n };\n\n }\n onItemSelect(item:any){\n console.log(item);\n console.log(this.selectedItems);\n }\n OnItemDeSelect(item:any){\n console.log(item);\n console.log(this.selectedItems);\n }\n onSelectAll(items: any){\n console.log(items);\n }\n onDeSelectAll(items: any){\n console.log(items);\n }\n onGroupSelect(selectedGroupItem){\n console.log(selectedGroupItem);\n }\n onGroupDeSelect(deselectedGroupItem){\n console.log(deselectedGroupItem);\n }\n cssgist: boolean = false;\n title: string = \"Templating menu option\";\n tsgist: string = \"CuppaLabs/cc0ac5976bf26b89119180ff82115fe4\";\n htmlgist: string = \"CuppaLabs/6399258d93fd5580be1736aba2539519\";\n tstitle: string = \"templating.ts\"\n htmltitle: string = \"templating.html\";\n}\n","

{{title}}

\n
\n \n
\n

Code

\n\n","import { Component, OnInit } from '@angular/core';\n\n@Component({\n templateUrl: './views/theming.html'\n})\nexport class ThemingExample implements OnInit {\n\n itemList = [];\n selectedItems = [];\n settings = {};\n\n constructor() { }\n ngOnInit() {\n\n this.itemList = [\n { \"countryId\": 1, \"itemName\": \"India\" },\n { \"countryId\": 2, \"itemName\": \"Singapore\" },\n { \"countryId\": 3, \"itemName\": \"Australia\" },\n { \"countryId\": 4, \"itemName\": \"Canada\" },\n { \"countryId\": 5, \"itemName\": \"South Korea\" },\n { \"countryId\": 6, \"itemName\": \"Brazil\" }\n ];\n\n this.selectedItems = [\n { \"countryId\": 1, \"itemName\": \"India\" },\n { \"countryId\": 2, \"itemName\": \"Singapore\" },\n { \"countryId\": 3, \"itemName\": \"Australia\" },\n { \"countryId\": 4, \"itemName\": \"Canada\" }];\n\n this.settings = {\n text: \"Select Countries\",\n selectAllText: 'Select All',\n unSelectAllText: 'UnSelect All',\n classes: \"myclass custom-class\",\n primaryKey: \"countryId\"\n };\n }\n onItemSelect(item: any) {\n console.log(item);\n console.log(this.selectedItems);\n }\n OnItemDeSelect(item: any) {\n console.log(item);\n console.log(this.selectedItems);\n }\n onSelectAll(items: any) {\n console.log(items);\n }\n onDeSelectAll(items: any) {\n console.log(items);\n }\n cssgist: boolean = false;\n title: string = \"Basic example\";\n tsgist: string = \"CuppaLabs/ee72fbc7b21dad7e4e7664c5b1553235\";\n htmlgist: string = \"CuppaLabs/eb78d42ab7971fda6493586e329bfdb8\";\n tstitle: string = \"basic.ts\"\n htmltitle: string = \"basic.html\";\n}\n","

{{title}}

\n
\n \n \n \n \n \n \n \n \n \n \n \n \n \n
\n Customer\n \n Countries\n
\n {{item.name}}\n \n \n \n
\n {{customers | json}}\n
\n

Code

\n\n\n \n \n \n \n \n \n \n \n \n \n \n","import { Component, OnInit } from '@angular/core';\n\n@Component({\n templateUrl: './views/usingInList.html'\n})\nexport class UsingInListExample implements OnInit {\n\n itemList = [];\n selectedItems = [];\n settings = {};\n customers = [];\n constructor() {\n\n }\n ngOnInit() {\n\n this.customers = [\n {\n name: \"Toshiba\", countries: [{ \"category\": \"asia\", \"id\": 1, \"itemName\": \"India\", \"capital\": \"Delhi\", \"image\": \"http://www.sciencekids.co.nz/images/pictures/flags96/India.jpg\" },\n { \"category\": \"asia\", \"id\": 2, \"itemName\": \"Singapore\", \"capital\": \"Singapore\", \"image\": \"http://www.sciencekids.co.nz/images/pictures/flags96/Singapore.jpg\" },\n ]\n },\n { name: \"Apple\", countries: [] },\n { name: \"Samsung\", countries: [] },\n {\n name: \"MI\", countries: [{ \"category\": \"asia\", \"id\": 1, \"itemName\": \"India\", \"capital\": \"Delhi\", \"image\": \"http://www.sciencekids.co.nz/images/pictures/flags96/India.jpg\" },\n { \"category\": \"asia\", \"id\": 2, \"itemName\": \"Singapore\", \"capital\": \"Singapore\", \"image\": \"http://www.sciencekids.co.nz/images/pictures/flags96/Singapore.jpg\" },\n ]\n },\n { name: \"Google\", countries: [] }\n ];\n this.itemList = [\n { \"category\": \"asia\", \"id\": 1, \"itemName\": \"India\", \"capital\": \"Delhi\", \"image\": \"http://www.sciencekids.co.nz/images/pictures/flags96/India.jpg\" },\n { \"category\": \"asia\", \"id\": 2, \"itemName\": \"Singapore\", \"capital\": \"Singapore\", \"image\": \"http://www.sciencekids.co.nz/images/pictures/flags96/Singapore.jpg\" },\n { \"category\": \"europe\", \"id\": 3, \"itemName\": \"United Kingdom\", \"capital\": \"London\", \"image\": \"http://www.sciencekids.co.nz/images/pictures/flags96/United_Kingdom.jpg\" },\n { \"category\": \"northamerica\", \"id\": 4, \"itemName\": \"Canada\", \"capital\": \"Ottawa\", \"image\": \"http://www.sciencekids.co.nz/images/pictures/flags96/Canada.jpg\" },\n { \"category\": \"asia\", \"id\": 5, \"itemName\": \"South Korea\", \"capital\": \"Seoul\", \"image\": \"http://www.sciencekids.co.nz/images/pictures/flags96/South_Korea.jpg\" },\n { \"category\": \"latinamerica\", \"id\": 6, \"itemName\": \"Brazil\", \"capital\": \"Brasilia\", \"image\": \"http://www.sciencekids.co.nz/images/pictures/flags96/Brazil.jpg\" }\n ];\n\n this.selectedItems = [\n { \"category\": \"asia\", \"id\": 1, \"itemName\": \"India\", \"capital\": \"Delhi\", \"image\": \"http://www.sciencekids.co.nz/images/pictures/flags96/India.jpg\" },\n { \"category\": \"asia\", \"id\": 2, \"itemName\": \"Singapore\", \"capital\": \"Singapore\", \"image\": \"http://www.sciencekids.co.nz/images/pictures/flags96/Singapore.jpg\" },\n { \"category\": \"europe\", \"id\": 3, \"itemName\": \"United Kingdom\", \"capital\": \"London\", \"image\": \"http://www.sciencekids.co.nz/images/pictures/flags96/United_Kingdom.jpg\" },\n { \"category\": \"northamerica\", \"id\": 4, \"itemName\": \"Canada\", \"capital\": \"Ottawa\", \"image\": \"http://www.sciencekids.co.nz/images/pictures/flags96/Canada.jpg\" }]\n this.settings = {\n text: \"Select Countries\",\n selectAllText: 'Select All',\n unSelectAllText: 'UnSelect All',\n enableSearchFilter: true,\n classes: \"myclass custom-class\",\n showCheckbox: true\n };\n\n }\n onItemSelect(item: any) {\n console.log(this.customers);\n }\n OnItemDeSelect(item: any) {\n console.log(item);\n console.log(this.selectedItems);\n }\n onSelectAll(items: any) {\n console.log(items);\n }\n onDeSelectAll(items: any) {\n console.log(items);\n }\n onGroupSelect(selectedGroupItem) {\n console.log(selectedGroupItem);\n }\n onGroupDeSelect(deselectedGroupItem) {\n console.log(deselectedGroupItem);\n }\n cssgist: boolean = false;\n title: string = \"Using in List - Inside `for loop`\";\n tsgist: string = \"CuppaLabs/0d2dc802967cca16ffc5053d0b873aba\";\n htmlgist: string = \"CuppaLabs/85fb2b925a56c2e533e321ae09de0e2f\";\n tstitle: string = \"usingInList.ts\"\n htmltitle: string = \"usingInList.html\";\n}\n","

{{title}}

\n
\n
\n
\n
\n \n * required\n \n \n
\n
\n \n \n
\n
\n \n * required\n \n
\n \n
\n\n
\n
\n \n \n \n \n \n \n \n \n \n \n \n \n \n
{{userForm.value.name}}
{{userForm.value.email}}
\n
{{obj.itemName}}
\n
\n {{userForm.value | json}}\n

Form status: {{ userForm.status | json }}

\n
\n
\n

Code

\n\n\n \n \n \n \n \n \n \n \n \n \n \n","import { Component, OnInit } from '@angular/core';\nimport { FormBuilder, FormGroup, Validators } from '@angular/forms';\n\n@Component({\n templateUrl: './views/using-in-react-form.html'\n})\nexport class UsingWithReactiveFormExample implements OnInit {\n itemList = [];\n selectedItems = [];\n settings = {};\n\n userForm: FormGroup;\n\n constructor(private fb: FormBuilder) {\n this.createForm();\n }\n createForm() {\n this.userForm = this.fb.group({\n name: 'xbvxncvx',\n email: ['absd@gmail.com', Validators.required],\n skills: [[], Validators.required]\n });\n }\n submitForm() {\n console.log(this.userForm);\n }\n ngOnInit() {\n\n this.itemList = [\n { \"id\": 1, \"itemName\": \"Angular\" },\n { \"id\": 2, \"itemName\": \"JavaScript\" },\n { \"id\": 3, \"itemName\": \"HTML\" },\n { \"id\": 4, \"itemName\": \"CSS\" },\n { \"id\": 5, \"itemName\": \"ReactJS\" },\n { \"id\": 6, \"itemName\": \"HTML5\" }\n ];\n this.selectedItems = [];\n this.settings = {\n text: \"Select Skills\",\n selectAllText: 'Select All',\n unSelectAllText: 'UnSelect All',\n classes: \"myclass custom-class\"\n };\n }\n onItemSelect(item: any) {\n console.log(item);\n console.log(this.selectedItems);\n }\n OnItemDeSelect(item: any) {\n console.log(item);\n console.log(this.selectedItems);\n }\n onSelectAll(items: any) {\n console.log(items);\n }\n onDeSelectAll(items: any) {\n console.log(items);\n }\ncssgist: boolean = false;\n title: string = \"Using with Reactive Forms\";\n tsgist: string = \"CuppaLabs/f0dfe353c6378cee7f55547395a80fc4\";\n htmlgist: string = \"CuppaLabs/0a32c3d76110468b84bac01fd64488bc\";\n tstitle: string = \"using-in-reactive-forms.ts\"\n htmltitle: string = \"using-with-reactive-forms.html\";\n}\n","

{{title}}

\n
\n
\n
\n\n
\n \n \n
\n
Name is required
\n
Only alphabetsallowed
\n\n
\n
\n
\n \n * required\n \n
\n
Email is required
\n
Email format should be joe@abc.com
\n
\n
\n
\n \n * required\n \n \n
\n
Atleast one Skill is required
\n
\n
\n \n
\n
\n
\n \n \n \n \n \n \n \n \n \n \n \n \n \n
{{formModel.name}}
{{formModel.email}}
\n
{{obj.itemName}}
\n
\n {{formModel | json}}\n

Form status: {{ loginForm.form.status | json }}

\n\n
\n
\n

Code

\n\n\n \n \n \n \n \n \n \n \n \n \n \n","import { Component, OnInit } from '@angular/core';\n\n@Component({\n templateUrl: './views/using-in-form.html'\n})\nexport class UsingWithFormExample implements OnInit {\n itemList = [];\n selectedItems = [];\n settings = {};\n formModel = {\n name: '',\n email: 'ascasc@aa.com',\n skills: [{ \"id\": 1, \"itemName\": \"Angular\" }]\n };\n submitted = false;\n onSubmit() { this.submitted = true; }\n constructor() { }\n ngOnInit() {\n\n this.itemList = [\n { \"id\": 1, \"itemName\": \"Angular\" },\n { \"id\": 2, \"itemName\": \"JavaScript\" },\n { \"id\": 3, \"itemName\": \"HTML\" },\n { \"id\": 4, \"itemName\": \"CSS\" },\n { \"id\": 5, \"itemName\": \"ReactJS\" },\n { \"id\": 6, \"itemName\": \"HTML5\" }\n ];\n\n this.settings = {\n text: \"Select Skills\",\n selectAllText: 'Select All',\n unSelectAllText: 'UnSelect All',\n classes: \"myclass custom-class\"\n };\n }\n onItemSelect(item: any) {\n console.log(item);\n console.log(this.selectedItems);\n }\n OnItemDeSelect(item: any) {\n console.log(item);\n console.log(this.selectedItems);\n }\n onSelectAll(items: any) {\n console.log(items);\n }\n onDeSelectAll(items: any) {\n console.log(items);\n }\ncssgist: boolean = false;\n title: string = \"Using with Template driven Forms\";\n tsgist: string = \"CuppaLabs/6cd9396b8f5589b792b27dd10efe9140\";\n htmlgist: string = \"CuppaLabs/8148509a46a59e3aba513808daa40ca1\";\n tstitle: string = \"using-in-forms.ts\"\n htmltitle: string = \"using-with-forms.html\";\n}\n","// This file can be replaced during build by using the `fileReplacements` array.\n// `ng build --prod` replaces `environment.ts` with `environment.prod.ts`.\n// The list of file replacements can be found in `angular.json`.\n\nexport const environment = {\n production: false\n};\n\n/*\n * For easier debugging in development mode, you can import the following file\n * to ignore zone related error stack frames such as `zone.run`, `zoneDelegate.invokeTask`.\n *\n * This import should be commented out in production mode because it will have a negative impact\n * on performance if an error is thrown.\n */\n// import 'zone.js/dist/zone-error'; // Included with Angular CLI.\n","import { enableProdMode } from '@angular/core';\nimport { platformBrowserDynamic } from '@angular/platform-browser-dynamic';\n\nimport { AppModule } from './app/app.module';\nimport { environment } from './environments/environment';\n\nif (environment.production) {\n enableProdMode();\n}\n\ndocument.addEventListener('DOMContentLoaded', () => {\n platformBrowserDynamic().bootstrapModule(AppModule)\n .catch(err => console.error(err));\n});\n\n"],"sourceRoot":""} \ No newline at end of file diff --git a/docs/main-es5.js b/docs/main-es5.js index 10c17fc0..98e133ca 100644 --- a/docs/main-es5.js +++ b/docs/main-es5.js @@ -3067,7 +3067,7 @@ __webpack_require__.r(__webpack_exports__); -var AppModuleNgFactory = _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵcmf"](_app_module__WEBPACK_IMPORTED_MODULE_1__["AppModule"], [_app_component__WEBPACK_IMPORTED_MODULE_2__["AppComponent"]], function (_l) { return _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmod"]([_angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](512, _angular_core__WEBPACK_IMPORTED_MODULE_0__["ComponentFactoryResolver"], _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵCodegenComponentFactoryResolver"], [[8, [_node_modules_angular_router_router_ngfactory__WEBPACK_IMPORTED_MODULE_3__["ɵangular_packages_router_router_lNgFactory"], _examples_basic_ngfactory__WEBPACK_IMPORTED_MODULE_4__["BasicExampleNgFactory"], _examples_singleselection_ngfactory__WEBPACK_IMPORTED_MODULE_5__["SingleSelectionExampleNgFactory"], _examples_searchFilter_ngfactory__WEBPACK_IMPORTED_MODULE_6__["SearchFilterExampleNgFactory"], _examples_groupBy_ngfactory__WEBPACK_IMPORTED_MODULE_7__["GroupByExampleNgFactory"], _examples_templating_ngfactory__WEBPACK_IMPORTED_MODULE_8__["TemplatingExampleNgFactory"], _examples_resetdropdown_ngfactory__WEBPACK_IMPORTED_MODULE_9__["ResetDropdownExampleNgFactory"], _examples_disablemode_ngfactory__WEBPACK_IMPORTED_MODULE_10__["DisableModeExampleNgFactory"], _examples_limitselection_ngfactory__WEBPACK_IMPORTED_MODULE_11__["LimitSelectionExampleNgFactory"], _examples_limitbadges_ngfactory__WEBPACK_IMPORTED_MODULE_12__["LimitBadgesExampleNgFactory"], _examples_customplaceholder_ngfactory__WEBPACK_IMPORTED_MODULE_13__["CustomPlaceholderExampleNgFactory"], _examples_styling_ngfactory__WEBPACK_IMPORTED_MODULE_14__["StylingExampleNgFactory"], _examples_usingWithForms_ngfactory__WEBPACK_IMPORTED_MODULE_15__["UsingWithFormExampleNgFactory"], _examples_usingInReactForms_ngfactory__WEBPACK_IMPORTED_MODULE_16__["UsingWithReactiveFormExampleNgFactory"], _examples_lazyLoading_ngfactory__WEBPACK_IMPORTED_MODULE_17__["LazyLoadingExampleNgFactory"], _examples_multipleDropdowns_ngfactory__WEBPACK_IMPORTED_MODULE_18__["MultipleDropdownsExampleNgFactory"], _examples_dynamicDataSets_ngfactory__WEBPACK_IMPORTED_MODULE_19__["DynamicDataSetsExampleNgFactory"], _examples_theming_ngfactory__WEBPACK_IMPORTED_MODULE_20__["ThemingExampleNgFactory"], _examples_remoteData_ngfactory__WEBPACK_IMPORTED_MODULE_21__["RemoteDataExampleNgFactory"], _examples_customSearch_ngfactory__WEBPACK_IMPORTED_MODULE_22__["CustomSearchExampleNgFactory"], _examples_searchByOneProperty_ngfactory__WEBPACK_IMPORTED_MODULE_23__["SearchFilterByOnePropertyExampleNgFactory"], _examples_lazyLoadingRemoteData_ngfactory__WEBPACK_IMPORTED_MODULE_24__["LazyLoadingRemoteDataExampleNgFactory"], _examples_searchFilterAddNewItem_ngfactory__WEBPACK_IMPORTED_MODULE_25__["SearchFilterAddItemExampleNgFactory"], _examples_events_ngfactory__WEBPACK_IMPORTED_MODULE_26__["EventsExampleNgFactory"], _examples_usingInList_ngfactory__WEBPACK_IMPORTED_MODULE_27__["UsingInListExampleNgFactory"], _app_component_ngfactory__WEBPACK_IMPORTED_MODULE_28__["AppComponentNgFactory"]]], [3, _angular_core__WEBPACK_IMPORTED_MODULE_0__["ComponentFactoryResolver"]], _angular_core__WEBPACK_IMPORTED_MODULE_0__["NgModuleRef"]]), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](5120, _angular_core__WEBPACK_IMPORTED_MODULE_0__["LOCALE_ID"], _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵangular_packages_core_core_q"], [[3, _angular_core__WEBPACK_IMPORTED_MODULE_0__["LOCALE_ID"]]]), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](4608, _angular_common__WEBPACK_IMPORTED_MODULE_29__["NgLocalization"], _angular_common__WEBPACK_IMPORTED_MODULE_29__["NgLocaleLocalization"], [_angular_core__WEBPACK_IMPORTED_MODULE_0__["LOCALE_ID"], [2, _angular_common__WEBPACK_IMPORTED_MODULE_29__["ɵangular_packages_common_common_a"]]]), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](5120, _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵangular_packages_core_core_bb"], _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵangular_packages_core_core_s"], [_angular_core__WEBPACK_IMPORTED_MODULE_0__["NgZone"]]), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](5120, _angular_core__WEBPACK_IMPORTED_MODULE_0__["IterableDiffers"], _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵangular_packages_core_core_o"], []), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](5120, _angular_core__WEBPACK_IMPORTED_MODULE_0__["KeyValueDiffers"], _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵangular_packages_core_core_p"], []), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](4608, _angular_platform_browser__WEBPACK_IMPORTED_MODULE_30__["DomSanitizer"], _angular_platform_browser__WEBPACK_IMPORTED_MODULE_30__["ɵDomSanitizerImpl"], [_angular_common__WEBPACK_IMPORTED_MODULE_29__["DOCUMENT"]]), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](6144, _angular_core__WEBPACK_IMPORTED_MODULE_0__["Sanitizer"], null, [_angular_platform_browser__WEBPACK_IMPORTED_MODULE_30__["DomSanitizer"]]), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](4608, _angular_platform_browser__WEBPACK_IMPORTED_MODULE_30__["HAMMER_GESTURE_CONFIG"], _angular_platform_browser__WEBPACK_IMPORTED_MODULE_30__["HammerGestureConfig"], []), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](5120, _angular_platform_browser__WEBPACK_IMPORTED_MODULE_30__["EVENT_MANAGER_PLUGINS"], function (p0_0, p0_1, p0_2, p1_0, p2_0, p2_1, p2_2, p2_3) { return [new _angular_platform_browser__WEBPACK_IMPORTED_MODULE_30__["ɵDomEventsPlugin"](p0_0, p0_1, p0_2), new _angular_platform_browser__WEBPACK_IMPORTED_MODULE_30__["ɵKeyEventsPlugin"](p1_0), new _angular_platform_browser__WEBPACK_IMPORTED_MODULE_30__["ɵHammerGesturesPlugin"](p2_0, p2_1, p2_2, p2_3)]; }, [_angular_common__WEBPACK_IMPORTED_MODULE_29__["DOCUMENT"], _angular_core__WEBPACK_IMPORTED_MODULE_0__["NgZone"], _angular_core__WEBPACK_IMPORTED_MODULE_0__["PLATFORM_ID"], _angular_common__WEBPACK_IMPORTED_MODULE_29__["DOCUMENT"], _angular_common__WEBPACK_IMPORTED_MODULE_29__["DOCUMENT"], _angular_platform_browser__WEBPACK_IMPORTED_MODULE_30__["HAMMER_GESTURE_CONFIG"], _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵConsole"], [2, _angular_platform_browser__WEBPACK_IMPORTED_MODULE_30__["HAMMER_LOADER"]]]), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](4608, _angular_platform_browser__WEBPACK_IMPORTED_MODULE_30__["EventManager"], _angular_platform_browser__WEBPACK_IMPORTED_MODULE_30__["EventManager"], [_angular_platform_browser__WEBPACK_IMPORTED_MODULE_30__["EVENT_MANAGER_PLUGINS"], _angular_core__WEBPACK_IMPORTED_MODULE_0__["NgZone"]]), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](135680, _angular_platform_browser__WEBPACK_IMPORTED_MODULE_30__["ɵDomSharedStylesHost"], _angular_platform_browser__WEBPACK_IMPORTED_MODULE_30__["ɵDomSharedStylesHost"], [_angular_common__WEBPACK_IMPORTED_MODULE_29__["DOCUMENT"]]), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](4608, _angular_platform_browser__WEBPACK_IMPORTED_MODULE_30__["ɵDomRendererFactory2"], _angular_platform_browser__WEBPACK_IMPORTED_MODULE_30__["ɵDomRendererFactory2"], [_angular_platform_browser__WEBPACK_IMPORTED_MODULE_30__["EventManager"], _angular_platform_browser__WEBPACK_IMPORTED_MODULE_30__["ɵDomSharedStylesHost"], _angular_core__WEBPACK_IMPORTED_MODULE_0__["APP_ID"]]), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](6144, _angular_core__WEBPACK_IMPORTED_MODULE_0__["RendererFactory2"], null, [_angular_platform_browser__WEBPACK_IMPORTED_MODULE_30__["ɵDomRendererFactory2"]]), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](6144, _angular_platform_browser__WEBPACK_IMPORTED_MODULE_30__["ɵSharedStylesHost"], null, [_angular_platform_browser__WEBPACK_IMPORTED_MODULE_30__["ɵDomSharedStylesHost"]]), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](4608, _angular_core__WEBPACK_IMPORTED_MODULE_0__["Testability"], _angular_core__WEBPACK_IMPORTED_MODULE_0__["Testability"], [_angular_core__WEBPACK_IMPORTED_MODULE_0__["NgZone"]]), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](4608, _angular_forms__WEBPACK_IMPORTED_MODULE_31__["FormBuilder"], _angular_forms__WEBPACK_IMPORTED_MODULE_31__["FormBuilder"], []), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](4608, _angular_forms__WEBPACK_IMPORTED_MODULE_31__["ɵangular_packages_forms_forms_o"], _angular_forms__WEBPACK_IMPORTED_MODULE_31__["ɵangular_packages_forms_forms_o"], []), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](5120, _angular_router__WEBPACK_IMPORTED_MODULE_32__["ActivatedRoute"], _angular_router__WEBPACK_IMPORTED_MODULE_32__["ɵangular_packages_router_router_g"], [_angular_router__WEBPACK_IMPORTED_MODULE_32__["Router"]]), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](4608, _angular_router__WEBPACK_IMPORTED_MODULE_32__["NoPreloading"], _angular_router__WEBPACK_IMPORTED_MODULE_32__["NoPreloading"], []), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](6144, _angular_router__WEBPACK_IMPORTED_MODULE_32__["PreloadingStrategy"], null, [_angular_router__WEBPACK_IMPORTED_MODULE_32__["NoPreloading"]]), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](135680, _angular_router__WEBPACK_IMPORTED_MODULE_32__["RouterPreloader"], _angular_router__WEBPACK_IMPORTED_MODULE_32__["RouterPreloader"], [_angular_router__WEBPACK_IMPORTED_MODULE_32__["Router"], _angular_core__WEBPACK_IMPORTED_MODULE_0__["NgModuleFactoryLoader"], _angular_core__WEBPACK_IMPORTED_MODULE_0__["Compiler"], _angular_core__WEBPACK_IMPORTED_MODULE_0__["Injector"], _angular_router__WEBPACK_IMPORTED_MODULE_32__["PreloadingStrategy"]]), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](4608, _angular_router__WEBPACK_IMPORTED_MODULE_32__["PreloadAllModules"], _angular_router__WEBPACK_IMPORTED_MODULE_32__["PreloadAllModules"], []), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](5120, _angular_router__WEBPACK_IMPORTED_MODULE_32__["ɵangular_packages_router_router_o"], _angular_router__WEBPACK_IMPORTED_MODULE_32__["ɵangular_packages_router_router_c"], [_angular_router__WEBPACK_IMPORTED_MODULE_32__["Router"], _angular_common__WEBPACK_IMPORTED_MODULE_29__["ViewportScroller"], _angular_router__WEBPACK_IMPORTED_MODULE_32__["ROUTER_CONFIGURATION"]]), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](5120, _angular_router__WEBPACK_IMPORTED_MODULE_32__["ROUTER_INITIALIZER"], _angular_router__WEBPACK_IMPORTED_MODULE_32__["ɵangular_packages_router_router_j"], [_angular_router__WEBPACK_IMPORTED_MODULE_32__["ɵangular_packages_router_router_h"]]), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](5120, _angular_core__WEBPACK_IMPORTED_MODULE_0__["APP_BOOTSTRAP_LISTENER"], function (p0_0) { return [p0_0]; }, [_angular_router__WEBPACK_IMPORTED_MODULE_32__["ROUTER_INITIALIZER"]]), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](5120, "virtual-scroller-default-options", _projects_angular2_multiselect_dropdown_lib_src_lib_virtual_scroll_virtual_scroll__WEBPACK_IMPORTED_MODULE_33__["VIRTUAL_SCROLLER_DEFAULT_OPTIONS_FACTORY"], []), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](4608, _projects_angular2_multiselect_dropdown_lib_src_lib_multiselect_service__WEBPACK_IMPORTED_MODULE_34__["DataService"], _projects_angular2_multiselect_dropdown_lib_src_lib_multiselect_service__WEBPACK_IMPORTED_MODULE_34__["DataService"], []), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](4608, _angular_common_http__WEBPACK_IMPORTED_MODULE_35__["HttpXsrfTokenExtractor"], _angular_common_http__WEBPACK_IMPORTED_MODULE_35__["ɵangular_packages_common_http_http_g"], [_angular_common__WEBPACK_IMPORTED_MODULE_29__["DOCUMENT"], _angular_core__WEBPACK_IMPORTED_MODULE_0__["PLATFORM_ID"], _angular_common_http__WEBPACK_IMPORTED_MODULE_35__["ɵangular_packages_common_http_http_e"]]), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](4608, _angular_common_http__WEBPACK_IMPORTED_MODULE_35__["ɵangular_packages_common_http_http_h"], _angular_common_http__WEBPACK_IMPORTED_MODULE_35__["ɵangular_packages_common_http_http_h"], [_angular_common_http__WEBPACK_IMPORTED_MODULE_35__["HttpXsrfTokenExtractor"], _angular_common_http__WEBPACK_IMPORTED_MODULE_35__["ɵangular_packages_common_http_http_f"]]), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](5120, _angular_common_http__WEBPACK_IMPORTED_MODULE_35__["HTTP_INTERCEPTORS"], function (p0_0) { return [p0_0]; }, [_angular_common_http__WEBPACK_IMPORTED_MODULE_35__["ɵangular_packages_common_http_http_h"]]), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](4608, _angular_common_http__WEBPACK_IMPORTED_MODULE_35__["ɵangular_packages_common_http_http_d"], _angular_common_http__WEBPACK_IMPORTED_MODULE_35__["ɵangular_packages_common_http_http_d"], []), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](6144, _angular_common_http__WEBPACK_IMPORTED_MODULE_35__["XhrFactory"], null, [_angular_common_http__WEBPACK_IMPORTED_MODULE_35__["ɵangular_packages_common_http_http_d"]]), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](4608, _angular_common_http__WEBPACK_IMPORTED_MODULE_35__["HttpXhrBackend"], _angular_common_http__WEBPACK_IMPORTED_MODULE_35__["HttpXhrBackend"], [_angular_common_http__WEBPACK_IMPORTED_MODULE_35__["XhrFactory"]]), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](6144, _angular_common_http__WEBPACK_IMPORTED_MODULE_35__["HttpBackend"], null, [_angular_common_http__WEBPACK_IMPORTED_MODULE_35__["HttpXhrBackend"]]), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](4608, _angular_common_http__WEBPACK_IMPORTED_MODULE_35__["HttpHandler"], _angular_common_http__WEBPACK_IMPORTED_MODULE_35__["ɵHttpInterceptingHandler"], [_angular_common_http__WEBPACK_IMPORTED_MODULE_35__["HttpBackend"], _angular_core__WEBPACK_IMPORTED_MODULE_0__["Injector"]]), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](4608, _angular_common_http__WEBPACK_IMPORTED_MODULE_35__["HttpClient"], _angular_common_http__WEBPACK_IMPORTED_MODULE_35__["HttpClient"], [_angular_common_http__WEBPACK_IMPORTED_MODULE_35__["HttpHandler"]]), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](4608, _examples_mock_data__WEBPACK_IMPORTED_MODULE_36__["MockService"], _examples_mock_data__WEBPACK_IMPORTED_MODULE_36__["MockService"], []), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](1073742336, _angular_common__WEBPACK_IMPORTED_MODULE_29__["CommonModule"], _angular_common__WEBPACK_IMPORTED_MODULE_29__["CommonModule"], []), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](1024, _angular_core__WEBPACK_IMPORTED_MODULE_0__["ErrorHandler"], _angular_platform_browser__WEBPACK_IMPORTED_MODULE_30__["ɵangular_packages_platform_browser_platform_browser_a"], []), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](1024, _angular_core__WEBPACK_IMPORTED_MODULE_0__["NgProbeToken"], function () { return [_angular_router__WEBPACK_IMPORTED_MODULE_32__["ɵangular_packages_router_router_b"]()]; }, []), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](512, _angular_router__WEBPACK_IMPORTED_MODULE_32__["ɵangular_packages_router_router_h"], _angular_router__WEBPACK_IMPORTED_MODULE_32__["ɵangular_packages_router_router_h"], [_angular_core__WEBPACK_IMPORTED_MODULE_0__["Injector"]]), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](256, _angular_core__WEBPACK_IMPORTED_MODULE_0__["APP_ID"], "serverApp", []), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](2048, _angular_platform_browser__WEBPACK_IMPORTED_MODULE_30__["ɵTRANSITION_ID"], null, [_angular_core__WEBPACK_IMPORTED_MODULE_0__["APP_ID"]]), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](1024, _angular_core__WEBPACK_IMPORTED_MODULE_0__["APP_INITIALIZER"], function (p0_0, p1_0, p2_0, p2_1, p2_2) { return [_angular_platform_browser__WEBPACK_IMPORTED_MODULE_30__["ɵangular_packages_platform_browser_platform_browser_j"](p0_0), _angular_router__WEBPACK_IMPORTED_MODULE_32__["ɵangular_packages_router_router_i"](p1_0), _angular_platform_browser__WEBPACK_IMPORTED_MODULE_30__["ɵangular_packages_platform_browser_platform_browser_h"](p2_0, p2_1, p2_2)]; }, [[2, _angular_core__WEBPACK_IMPORTED_MODULE_0__["NgProbeToken"]], _angular_router__WEBPACK_IMPORTED_MODULE_32__["ɵangular_packages_router_router_h"], _angular_platform_browser__WEBPACK_IMPORTED_MODULE_30__["ɵTRANSITION_ID"], _angular_common__WEBPACK_IMPORTED_MODULE_29__["DOCUMENT"], _angular_core__WEBPACK_IMPORTED_MODULE_0__["Injector"]]), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](512, _angular_core__WEBPACK_IMPORTED_MODULE_0__["ApplicationInitStatus"], _angular_core__WEBPACK_IMPORTED_MODULE_0__["ApplicationInitStatus"], [[2, _angular_core__WEBPACK_IMPORTED_MODULE_0__["APP_INITIALIZER"]]]), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](131584, _angular_core__WEBPACK_IMPORTED_MODULE_0__["ApplicationRef"], _angular_core__WEBPACK_IMPORTED_MODULE_0__["ApplicationRef"], [_angular_core__WEBPACK_IMPORTED_MODULE_0__["NgZone"], _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵConsole"], _angular_core__WEBPACK_IMPORTED_MODULE_0__["Injector"], _angular_core__WEBPACK_IMPORTED_MODULE_0__["ErrorHandler"], _angular_core__WEBPACK_IMPORTED_MODULE_0__["ComponentFactoryResolver"], _angular_core__WEBPACK_IMPORTED_MODULE_0__["ApplicationInitStatus"]]), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](1073742336, _angular_core__WEBPACK_IMPORTED_MODULE_0__["ApplicationModule"], _angular_core__WEBPACK_IMPORTED_MODULE_0__["ApplicationModule"], [_angular_core__WEBPACK_IMPORTED_MODULE_0__["ApplicationRef"]]), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](1073742336, _angular_platform_browser__WEBPACK_IMPORTED_MODULE_30__["BrowserModule"], _angular_platform_browser__WEBPACK_IMPORTED_MODULE_30__["BrowserModule"], [[3, _angular_platform_browser__WEBPACK_IMPORTED_MODULE_30__["BrowserModule"]]]), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](1073742336, _angular_forms__WEBPACK_IMPORTED_MODULE_31__["ɵangular_packages_forms_forms_d"], _angular_forms__WEBPACK_IMPORTED_MODULE_31__["ɵangular_packages_forms_forms_d"], []), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](1073742336, _angular_forms__WEBPACK_IMPORTED_MODULE_31__["ReactiveFormsModule"], _angular_forms__WEBPACK_IMPORTED_MODULE_31__["ReactiveFormsModule"], []), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](1073742336, _angular_forms__WEBPACK_IMPORTED_MODULE_31__["FormsModule"], _angular_forms__WEBPACK_IMPORTED_MODULE_31__["FormsModule"], []), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](1024, _angular_router__WEBPACK_IMPORTED_MODULE_32__["ɵangular_packages_router_router_a"], _angular_router__WEBPACK_IMPORTED_MODULE_32__["ɵangular_packages_router_router_e"], [[3, _angular_router__WEBPACK_IMPORTED_MODULE_32__["Router"]]]), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](512, _angular_router__WEBPACK_IMPORTED_MODULE_32__["UrlSerializer"], _angular_router__WEBPACK_IMPORTED_MODULE_32__["DefaultUrlSerializer"], []), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](512, _angular_router__WEBPACK_IMPORTED_MODULE_32__["ChildrenOutletContexts"], _angular_router__WEBPACK_IMPORTED_MODULE_32__["ChildrenOutletContexts"], []), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](256, _angular_router__WEBPACK_IMPORTED_MODULE_32__["ROUTER_CONFIGURATION"], { useHash: false }, []), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](1024, _angular_common__WEBPACK_IMPORTED_MODULE_29__["LocationStrategy"], _angular_router__WEBPACK_IMPORTED_MODULE_32__["ɵangular_packages_router_router_d"], [_angular_common__WEBPACK_IMPORTED_MODULE_29__["PlatformLocation"], [2, _angular_common__WEBPACK_IMPORTED_MODULE_29__["APP_BASE_HREF"]], _angular_router__WEBPACK_IMPORTED_MODULE_32__["ROUTER_CONFIGURATION"]]), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](512, _angular_common__WEBPACK_IMPORTED_MODULE_29__["Location"], _angular_common__WEBPACK_IMPORTED_MODULE_29__["Location"], [_angular_common__WEBPACK_IMPORTED_MODULE_29__["LocationStrategy"], _angular_common__WEBPACK_IMPORTED_MODULE_29__["PlatformLocation"]]), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](512, _angular_core__WEBPACK_IMPORTED_MODULE_0__["Compiler"], _angular_core__WEBPACK_IMPORTED_MODULE_0__["Compiler"], []), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](512, _angular_core__WEBPACK_IMPORTED_MODULE_0__["NgModuleFactoryLoader"], _angular_core__WEBPACK_IMPORTED_MODULE_0__["SystemJsNgModuleLoader"], [_angular_core__WEBPACK_IMPORTED_MODULE_0__["Compiler"], [2, _angular_core__WEBPACK_IMPORTED_MODULE_0__["SystemJsNgModuleLoaderConfig"]]]), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](1024, _angular_router__WEBPACK_IMPORTED_MODULE_32__["ROUTES"], function () { return [[{ path: "", redirectTo: "/basic", pathMatch: "full" }, { path: "basic", component: _examples_basic__WEBPACK_IMPORTED_MODULE_37__["BasicExample"] }, { path: "singleselection", component: _examples_singleselection__WEBPACK_IMPORTED_MODULE_38__["SingleSelectionExample"] }, { path: "searchfilter", component: _examples_searchFilter__WEBPACK_IMPORTED_MODULE_39__["SearchFilterExample"] }, { path: "groupby", component: _examples_groupBy__WEBPACK_IMPORTED_MODULE_40__["GroupByExample"] }, { path: "templating", component: _examples_templating__WEBPACK_IMPORTED_MODULE_41__["TemplatingExample"] }, { path: "dropdownMethods", component: _examples_resetdropdown__WEBPACK_IMPORTED_MODULE_42__["ResetDropdownExample"] }, { path: "disablemode", component: _examples_disablemode__WEBPACK_IMPORTED_MODULE_43__["DisableModeExample"] }, { path: "limitselection", component: _examples_limitselection__WEBPACK_IMPORTED_MODULE_44__["LimitSelectionExample"] }, { path: "limitbadges", component: _examples_limitbadges__WEBPACK_IMPORTED_MODULE_45__["LimitBadgesExample"] }, { path: "customplaceholder", component: _examples_customplaceholder__WEBPACK_IMPORTED_MODULE_46__["CustomPlaceholderExample"] }, { path: "styling", component: _examples_styling__WEBPACK_IMPORTED_MODULE_47__["StylingExample"] }, { path: "usinginform", component: _examples_usingWithForms__WEBPACK_IMPORTED_MODULE_48__["UsingWithFormExample"] }, { path: "usinginreactiveform", component: _examples_usingInReactForms__WEBPACK_IMPORTED_MODULE_49__["UsingWithReactiveFormExample"] }, { path: "lazyloading", component: _examples_lazyLoading__WEBPACK_IMPORTED_MODULE_50__["LazyLoadingExample"] }, { path: "multipledropdowns", component: _examples_multipleDropdowns__WEBPACK_IMPORTED_MODULE_51__["MultipleDropdownsExample"] }, { path: "dynamicdatasets", component: _examples_dynamicDataSets__WEBPACK_IMPORTED_MODULE_52__["DynamicDataSetsExample"] }, { path: "theming", component: _examples_theming__WEBPACK_IMPORTED_MODULE_53__["ThemingExample"] }, { path: "remoteData", component: _examples_remoteData__WEBPACK_IMPORTED_MODULE_54__["RemoteDataExample"] }, { path: "customSearchAPI", component: _examples_customSearch__WEBPACK_IMPORTED_MODULE_55__["CustomSearchExample"] }, { path: "searchFilterByOneProperty", component: _examples_searchByOneProperty__WEBPACK_IMPORTED_MODULE_56__["SearchFilterByOnePropertyExample"] }, { path: "lazyloadingRemoteData", component: _examples_lazyLoadingRemoteData__WEBPACK_IMPORTED_MODULE_57__["LazyLoadingRemoteDataExample"] }, { path: "searchfilterAddNewItem", component: _examples_searchFilterAddNewItem__WEBPACK_IMPORTED_MODULE_58__["SearchFilterAddItemExample"] }, { path: "events", component: _examples_events__WEBPACK_IMPORTED_MODULE_59__["EventsExample"] }, { path: "usingInList", component: _examples_usingInList__WEBPACK_IMPORTED_MODULE_60__["UsingInListExample"] }]]; }, []), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](1024, _angular_router__WEBPACK_IMPORTED_MODULE_32__["Router"], _angular_router__WEBPACK_IMPORTED_MODULE_32__["ɵangular_packages_router_router_f"], [_angular_core__WEBPACK_IMPORTED_MODULE_0__["ApplicationRef"], _angular_router__WEBPACK_IMPORTED_MODULE_32__["UrlSerializer"], _angular_router__WEBPACK_IMPORTED_MODULE_32__["ChildrenOutletContexts"], _angular_common__WEBPACK_IMPORTED_MODULE_29__["Location"], _angular_core__WEBPACK_IMPORTED_MODULE_0__["Injector"], _angular_core__WEBPACK_IMPORTED_MODULE_0__["NgModuleFactoryLoader"], _angular_core__WEBPACK_IMPORTED_MODULE_0__["Compiler"], _angular_router__WEBPACK_IMPORTED_MODULE_32__["ROUTES"], _angular_router__WEBPACK_IMPORTED_MODULE_32__["ROUTER_CONFIGURATION"], [2, _angular_router__WEBPACK_IMPORTED_MODULE_32__["UrlHandlingStrategy"]], [2, _angular_router__WEBPACK_IMPORTED_MODULE_32__["RouteReuseStrategy"]]]), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](1073742336, _angular_router__WEBPACK_IMPORTED_MODULE_32__["RouterModule"], _angular_router__WEBPACK_IMPORTED_MODULE_32__["RouterModule"], [[2, _angular_router__WEBPACK_IMPORTED_MODULE_32__["ɵangular_packages_router_router_a"]], [2, _angular_router__WEBPACK_IMPORTED_MODULE_32__["Router"]]]), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](1073742336, _app_router__WEBPACK_IMPORTED_MODULE_61__["AppRouterModule"], _app_router__WEBPACK_IMPORTED_MODULE_61__["AppRouterModule"], []), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](1073742336, _projects_angular2_multiselect_dropdown_lib_src_lib_virtual_scroll_virtual_scroll__WEBPACK_IMPORTED_MODULE_33__["VirtualScrollerModule"], _projects_angular2_multiselect_dropdown_lib_src_lib_virtual_scroll_virtual_scroll__WEBPACK_IMPORTED_MODULE_33__["VirtualScrollerModule"], []), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](1073742336, _projects_angular2_multiselect_dropdown_lib_src_lib_multiselect_component__WEBPACK_IMPORTED_MODULE_62__["AngularMultiSelectModule"], _projects_angular2_multiselect_dropdown_lib_src_lib_multiselect_component__WEBPACK_IMPORTED_MODULE_62__["AngularMultiSelectModule"], []), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](1073742336, primeng_components_common_shared__WEBPACK_IMPORTED_MODULE_63__["SharedModule"], primeng_components_common_shared__WEBPACK_IMPORTED_MODULE_63__["SharedModule"], []), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](1073742336, primeng_components_tooltip_tooltip__WEBPACK_IMPORTED_MODULE_64__["TooltipModule"], primeng_components_tooltip_tooltip__WEBPACK_IMPORTED_MODULE_64__["TooltipModule"], []), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](1073742336, primeng_components_tabview_tabview__WEBPACK_IMPORTED_MODULE_65__["TabViewModule"], primeng_components_tabview_tabview__WEBPACK_IMPORTED_MODULE_65__["TabViewModule"], []), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](1073742336, _angular_common_http__WEBPACK_IMPORTED_MODULE_35__["HttpClientXsrfModule"], _angular_common_http__WEBPACK_IMPORTED_MODULE_35__["HttpClientXsrfModule"], []), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](1073742336, _angular_common_http__WEBPACK_IMPORTED_MODULE_35__["HttpClientModule"], _angular_common_http__WEBPACK_IMPORTED_MODULE_35__["HttpClientModule"], []), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](1073742336, ngx_highlightjs__WEBPACK_IMPORTED_MODULE_66__["HighlightModule"], ngx_highlightjs__WEBPACK_IMPORTED_MODULE_66__["HighlightModule"], []), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](1073742336, _app_module__WEBPACK_IMPORTED_MODULE_1__["AppModule"], _app_module__WEBPACK_IMPORTED_MODULE_1__["AppModule"], []), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](256, _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵAPP_ROOT"], true, []), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](256, _angular_common_http__WEBPACK_IMPORTED_MODULE_35__["ɵangular_packages_common_http_http_e"], "XSRF-TOKEN", []), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](256, _angular_common_http__WEBPACK_IMPORTED_MODULE_35__["ɵangular_packages_common_http_http_f"], "X-XSRF-TOKEN", []), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](256, ngx_highlightjs__WEBPACK_IMPORTED_MODULE_66__["HIGHLIGHT_OPTIONS"], { languages: _app_module__WEBPACK_IMPORTED_MODULE_1__["hljsLanguages"] }, [])]); }); +var AppModuleNgFactory = _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵcmf"](_app_module__WEBPACK_IMPORTED_MODULE_1__["AppModule"], [_app_component__WEBPACK_IMPORTED_MODULE_2__["AppComponent"]], function (_l) { return _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmod"]([_angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](512, _angular_core__WEBPACK_IMPORTED_MODULE_0__["ComponentFactoryResolver"], _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵCodegenComponentFactoryResolver"], [[8, [_node_modules_angular_router_router_ngfactory__WEBPACK_IMPORTED_MODULE_3__["ɵangular_packages_router_router_lNgFactory"], _examples_basic_ngfactory__WEBPACK_IMPORTED_MODULE_4__["BasicExampleNgFactory"], _examples_singleselection_ngfactory__WEBPACK_IMPORTED_MODULE_5__["SingleSelectionExampleNgFactory"], _examples_searchFilter_ngfactory__WEBPACK_IMPORTED_MODULE_6__["SearchFilterExampleNgFactory"], _examples_groupBy_ngfactory__WEBPACK_IMPORTED_MODULE_7__["GroupByExampleNgFactory"], _examples_templating_ngfactory__WEBPACK_IMPORTED_MODULE_8__["TemplatingExampleNgFactory"], _examples_resetdropdown_ngfactory__WEBPACK_IMPORTED_MODULE_9__["ResetDropdownExampleNgFactory"], _examples_disablemode_ngfactory__WEBPACK_IMPORTED_MODULE_10__["DisableModeExampleNgFactory"], _examples_limitselection_ngfactory__WEBPACK_IMPORTED_MODULE_11__["LimitSelectionExampleNgFactory"], _examples_limitbadges_ngfactory__WEBPACK_IMPORTED_MODULE_12__["LimitBadgesExampleNgFactory"], _examples_customplaceholder_ngfactory__WEBPACK_IMPORTED_MODULE_13__["CustomPlaceholderExampleNgFactory"], _examples_styling_ngfactory__WEBPACK_IMPORTED_MODULE_14__["StylingExampleNgFactory"], _examples_usingWithForms_ngfactory__WEBPACK_IMPORTED_MODULE_15__["UsingWithFormExampleNgFactory"], _examples_usingInReactForms_ngfactory__WEBPACK_IMPORTED_MODULE_16__["UsingWithReactiveFormExampleNgFactory"], _examples_lazyLoading_ngfactory__WEBPACK_IMPORTED_MODULE_17__["LazyLoadingExampleNgFactory"], _examples_multipleDropdowns_ngfactory__WEBPACK_IMPORTED_MODULE_18__["MultipleDropdownsExampleNgFactory"], _examples_dynamicDataSets_ngfactory__WEBPACK_IMPORTED_MODULE_19__["DynamicDataSetsExampleNgFactory"], _examples_theming_ngfactory__WEBPACK_IMPORTED_MODULE_20__["ThemingExampleNgFactory"], _examples_remoteData_ngfactory__WEBPACK_IMPORTED_MODULE_21__["RemoteDataExampleNgFactory"], _examples_customSearch_ngfactory__WEBPACK_IMPORTED_MODULE_22__["CustomSearchExampleNgFactory"], _examples_searchByOneProperty_ngfactory__WEBPACK_IMPORTED_MODULE_23__["SearchFilterByOnePropertyExampleNgFactory"], _examples_lazyLoadingRemoteData_ngfactory__WEBPACK_IMPORTED_MODULE_24__["LazyLoadingRemoteDataExampleNgFactory"], _examples_searchFilterAddNewItem_ngfactory__WEBPACK_IMPORTED_MODULE_25__["SearchFilterAddItemExampleNgFactory"], _examples_events_ngfactory__WEBPACK_IMPORTED_MODULE_26__["EventsExampleNgFactory"], _examples_usingInList_ngfactory__WEBPACK_IMPORTED_MODULE_27__["UsingInListExampleNgFactory"], _app_component_ngfactory__WEBPACK_IMPORTED_MODULE_28__["AppComponentNgFactory"]]], [3, _angular_core__WEBPACK_IMPORTED_MODULE_0__["ComponentFactoryResolver"]], _angular_core__WEBPACK_IMPORTED_MODULE_0__["NgModuleRef"]]), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](5120, _angular_core__WEBPACK_IMPORTED_MODULE_0__["LOCALE_ID"], _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵangular_packages_core_core_q"], [[3, _angular_core__WEBPACK_IMPORTED_MODULE_0__["LOCALE_ID"]]]), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](4608, _angular_common__WEBPACK_IMPORTED_MODULE_29__["NgLocalization"], _angular_common__WEBPACK_IMPORTED_MODULE_29__["NgLocaleLocalization"], [_angular_core__WEBPACK_IMPORTED_MODULE_0__["LOCALE_ID"], [2, _angular_common__WEBPACK_IMPORTED_MODULE_29__["ɵangular_packages_common_common_a"]]]), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](5120, _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵangular_packages_core_core_bb"], _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵangular_packages_core_core_s"], [_angular_core__WEBPACK_IMPORTED_MODULE_0__["NgZone"]]), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](5120, _angular_core__WEBPACK_IMPORTED_MODULE_0__["IterableDiffers"], _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵangular_packages_core_core_o"], []), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](5120, _angular_core__WEBPACK_IMPORTED_MODULE_0__["KeyValueDiffers"], _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵangular_packages_core_core_p"], []), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](4608, _angular_platform_browser__WEBPACK_IMPORTED_MODULE_30__["DomSanitizer"], _angular_platform_browser__WEBPACK_IMPORTED_MODULE_30__["ɵDomSanitizerImpl"], [_angular_common__WEBPACK_IMPORTED_MODULE_29__["DOCUMENT"]]), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](6144, _angular_core__WEBPACK_IMPORTED_MODULE_0__["Sanitizer"], null, [_angular_platform_browser__WEBPACK_IMPORTED_MODULE_30__["DomSanitizer"]]), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](4608, _angular_platform_browser__WEBPACK_IMPORTED_MODULE_30__["HAMMER_GESTURE_CONFIG"], _angular_platform_browser__WEBPACK_IMPORTED_MODULE_30__["HammerGestureConfig"], []), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](5120, _angular_platform_browser__WEBPACK_IMPORTED_MODULE_30__["EVENT_MANAGER_PLUGINS"], function (p0_0, p0_1, p0_2, p1_0, p2_0, p2_1, p2_2, p2_3) { return [new _angular_platform_browser__WEBPACK_IMPORTED_MODULE_30__["ɵDomEventsPlugin"](p0_0, p0_1, p0_2), new _angular_platform_browser__WEBPACK_IMPORTED_MODULE_30__["ɵKeyEventsPlugin"](p1_0), new _angular_platform_browser__WEBPACK_IMPORTED_MODULE_30__["ɵHammerGesturesPlugin"](p2_0, p2_1, p2_2, p2_3)]; }, [_angular_common__WEBPACK_IMPORTED_MODULE_29__["DOCUMENT"], _angular_core__WEBPACK_IMPORTED_MODULE_0__["NgZone"], _angular_core__WEBPACK_IMPORTED_MODULE_0__["PLATFORM_ID"], _angular_common__WEBPACK_IMPORTED_MODULE_29__["DOCUMENT"], _angular_common__WEBPACK_IMPORTED_MODULE_29__["DOCUMENT"], _angular_platform_browser__WEBPACK_IMPORTED_MODULE_30__["HAMMER_GESTURE_CONFIG"], _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵConsole"], [2, _angular_platform_browser__WEBPACK_IMPORTED_MODULE_30__["HAMMER_LOADER"]]]), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](4608, _angular_platform_browser__WEBPACK_IMPORTED_MODULE_30__["EventManager"], _angular_platform_browser__WEBPACK_IMPORTED_MODULE_30__["EventManager"], [_angular_platform_browser__WEBPACK_IMPORTED_MODULE_30__["EVENT_MANAGER_PLUGINS"], _angular_core__WEBPACK_IMPORTED_MODULE_0__["NgZone"]]), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](135680, _angular_platform_browser__WEBPACK_IMPORTED_MODULE_30__["ɵDomSharedStylesHost"], _angular_platform_browser__WEBPACK_IMPORTED_MODULE_30__["ɵDomSharedStylesHost"], [_angular_common__WEBPACK_IMPORTED_MODULE_29__["DOCUMENT"]]), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](4608, _angular_platform_browser__WEBPACK_IMPORTED_MODULE_30__["ɵDomRendererFactory2"], _angular_platform_browser__WEBPACK_IMPORTED_MODULE_30__["ɵDomRendererFactory2"], [_angular_platform_browser__WEBPACK_IMPORTED_MODULE_30__["EventManager"], _angular_platform_browser__WEBPACK_IMPORTED_MODULE_30__["ɵDomSharedStylesHost"], _angular_core__WEBPACK_IMPORTED_MODULE_0__["APP_ID"]]), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](6144, _angular_core__WEBPACK_IMPORTED_MODULE_0__["RendererFactory2"], null, [_angular_platform_browser__WEBPACK_IMPORTED_MODULE_30__["ɵDomRendererFactory2"]]), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](6144, _angular_platform_browser__WEBPACK_IMPORTED_MODULE_30__["ɵSharedStylesHost"], null, [_angular_platform_browser__WEBPACK_IMPORTED_MODULE_30__["ɵDomSharedStylesHost"]]), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](4608, _angular_core__WEBPACK_IMPORTED_MODULE_0__["Testability"], _angular_core__WEBPACK_IMPORTED_MODULE_0__["Testability"], [_angular_core__WEBPACK_IMPORTED_MODULE_0__["NgZone"]]), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](4608, _angular_forms__WEBPACK_IMPORTED_MODULE_31__["FormBuilder"], _angular_forms__WEBPACK_IMPORTED_MODULE_31__["FormBuilder"], []), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](4608, _angular_forms__WEBPACK_IMPORTED_MODULE_31__["ɵangular_packages_forms_forms_o"], _angular_forms__WEBPACK_IMPORTED_MODULE_31__["ɵangular_packages_forms_forms_o"], []), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](5120, _angular_router__WEBPACK_IMPORTED_MODULE_32__["ActivatedRoute"], _angular_router__WEBPACK_IMPORTED_MODULE_32__["ɵangular_packages_router_router_g"], [_angular_router__WEBPACK_IMPORTED_MODULE_32__["Router"]]), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](4608, _angular_router__WEBPACK_IMPORTED_MODULE_32__["NoPreloading"], _angular_router__WEBPACK_IMPORTED_MODULE_32__["NoPreloading"], []), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](6144, _angular_router__WEBPACK_IMPORTED_MODULE_32__["PreloadingStrategy"], null, [_angular_router__WEBPACK_IMPORTED_MODULE_32__["NoPreloading"]]), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](135680, _angular_router__WEBPACK_IMPORTED_MODULE_32__["RouterPreloader"], _angular_router__WEBPACK_IMPORTED_MODULE_32__["RouterPreloader"], [_angular_router__WEBPACK_IMPORTED_MODULE_32__["Router"], _angular_core__WEBPACK_IMPORTED_MODULE_0__["NgModuleFactoryLoader"], _angular_core__WEBPACK_IMPORTED_MODULE_0__["Compiler"], _angular_core__WEBPACK_IMPORTED_MODULE_0__["Injector"], _angular_router__WEBPACK_IMPORTED_MODULE_32__["PreloadingStrategy"]]), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](4608, _angular_router__WEBPACK_IMPORTED_MODULE_32__["PreloadAllModules"], _angular_router__WEBPACK_IMPORTED_MODULE_32__["PreloadAllModules"], []), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](5120, _angular_router__WEBPACK_IMPORTED_MODULE_32__["ɵangular_packages_router_router_o"], _angular_router__WEBPACK_IMPORTED_MODULE_32__["ɵangular_packages_router_router_c"], [_angular_router__WEBPACK_IMPORTED_MODULE_32__["Router"], _angular_common__WEBPACK_IMPORTED_MODULE_29__["ViewportScroller"], _angular_router__WEBPACK_IMPORTED_MODULE_32__["ROUTER_CONFIGURATION"]]), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](5120, _angular_router__WEBPACK_IMPORTED_MODULE_32__["ROUTER_INITIALIZER"], _angular_router__WEBPACK_IMPORTED_MODULE_32__["ɵangular_packages_router_router_j"], [_angular_router__WEBPACK_IMPORTED_MODULE_32__["ɵangular_packages_router_router_h"]]), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](5120, _angular_core__WEBPACK_IMPORTED_MODULE_0__["APP_BOOTSTRAP_LISTENER"], function (p0_0) { return [p0_0]; }, [_angular_router__WEBPACK_IMPORTED_MODULE_32__["ROUTER_INITIALIZER"]]), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](5120, "virtual-scroller-default-options", _projects_angular2_multiselect_dropdown_lib_src_lib_virtual_scroll_virtual_scroll__WEBPACK_IMPORTED_MODULE_33__["VIRTUAL_SCROLLER_DEFAULT_OPTIONS_FACTORY"], []), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](4608, _projects_angular2_multiselect_dropdown_lib_src_lib_multiselect_service__WEBPACK_IMPORTED_MODULE_34__["DataService"], _projects_angular2_multiselect_dropdown_lib_src_lib_multiselect_service__WEBPACK_IMPORTED_MODULE_34__["DataService"], []), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](4608, _angular_common_http__WEBPACK_IMPORTED_MODULE_35__["HttpXsrfTokenExtractor"], _angular_common_http__WEBPACK_IMPORTED_MODULE_35__["ɵangular_packages_common_http_http_g"], [_angular_common__WEBPACK_IMPORTED_MODULE_29__["DOCUMENT"], _angular_core__WEBPACK_IMPORTED_MODULE_0__["PLATFORM_ID"], _angular_common_http__WEBPACK_IMPORTED_MODULE_35__["ɵangular_packages_common_http_http_e"]]), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](4608, _angular_common_http__WEBPACK_IMPORTED_MODULE_35__["ɵangular_packages_common_http_http_h"], _angular_common_http__WEBPACK_IMPORTED_MODULE_35__["ɵangular_packages_common_http_http_h"], [_angular_common_http__WEBPACK_IMPORTED_MODULE_35__["HttpXsrfTokenExtractor"], _angular_common_http__WEBPACK_IMPORTED_MODULE_35__["ɵangular_packages_common_http_http_f"]]), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](5120, _angular_common_http__WEBPACK_IMPORTED_MODULE_35__["HTTP_INTERCEPTORS"], function (p0_0) { return [p0_0]; }, [_angular_common_http__WEBPACK_IMPORTED_MODULE_35__["ɵangular_packages_common_http_http_h"]]), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](4608, _angular_common_http__WEBPACK_IMPORTED_MODULE_35__["ɵangular_packages_common_http_http_d"], _angular_common_http__WEBPACK_IMPORTED_MODULE_35__["ɵangular_packages_common_http_http_d"], []), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](6144, _angular_common_http__WEBPACK_IMPORTED_MODULE_35__["XhrFactory"], null, [_angular_common_http__WEBPACK_IMPORTED_MODULE_35__["ɵangular_packages_common_http_http_d"]]), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](4608, _angular_common_http__WEBPACK_IMPORTED_MODULE_35__["HttpXhrBackend"], _angular_common_http__WEBPACK_IMPORTED_MODULE_35__["HttpXhrBackend"], [_angular_common_http__WEBPACK_IMPORTED_MODULE_35__["XhrFactory"]]), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](6144, _angular_common_http__WEBPACK_IMPORTED_MODULE_35__["HttpBackend"], null, [_angular_common_http__WEBPACK_IMPORTED_MODULE_35__["HttpXhrBackend"]]), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](4608, _angular_common_http__WEBPACK_IMPORTED_MODULE_35__["HttpHandler"], _angular_common_http__WEBPACK_IMPORTED_MODULE_35__["ɵHttpInterceptingHandler"], [_angular_common_http__WEBPACK_IMPORTED_MODULE_35__["HttpBackend"], _angular_core__WEBPACK_IMPORTED_MODULE_0__["Injector"]]), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](4608, _angular_common_http__WEBPACK_IMPORTED_MODULE_35__["HttpClient"], _angular_common_http__WEBPACK_IMPORTED_MODULE_35__["HttpClient"], [_angular_common_http__WEBPACK_IMPORTED_MODULE_35__["HttpHandler"]]), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](4608, _examples_mock_data__WEBPACK_IMPORTED_MODULE_36__["MockService"], _examples_mock_data__WEBPACK_IMPORTED_MODULE_36__["MockService"], []), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](1073742336, _angular_common__WEBPACK_IMPORTED_MODULE_29__["CommonModule"], _angular_common__WEBPACK_IMPORTED_MODULE_29__["CommonModule"], []), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](1024, _angular_core__WEBPACK_IMPORTED_MODULE_0__["ErrorHandler"], _angular_platform_browser__WEBPACK_IMPORTED_MODULE_30__["ɵangular_packages_platform_browser_platform_browser_a"], []), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](1024, _angular_core__WEBPACK_IMPORTED_MODULE_0__["NgProbeToken"], function () { return [_angular_router__WEBPACK_IMPORTED_MODULE_32__["ɵangular_packages_router_router_b"]()]; }, []), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](512, _angular_router__WEBPACK_IMPORTED_MODULE_32__["ɵangular_packages_router_router_h"], _angular_router__WEBPACK_IMPORTED_MODULE_32__["ɵangular_packages_router_router_h"], [_angular_core__WEBPACK_IMPORTED_MODULE_0__["Injector"]]), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](256, _angular_core__WEBPACK_IMPORTED_MODULE_0__["APP_ID"], "serverApp", []), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](2048, _angular_platform_browser__WEBPACK_IMPORTED_MODULE_30__["ɵTRANSITION_ID"], null, [_angular_core__WEBPACK_IMPORTED_MODULE_0__["APP_ID"]]), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](1024, _angular_core__WEBPACK_IMPORTED_MODULE_0__["APP_INITIALIZER"], function (p0_0, p1_0, p2_0, p2_1, p2_2) { return [_angular_platform_browser__WEBPACK_IMPORTED_MODULE_30__["ɵangular_packages_platform_browser_platform_browser_j"](p0_0), _angular_router__WEBPACK_IMPORTED_MODULE_32__["ɵangular_packages_router_router_i"](p1_0), _angular_platform_browser__WEBPACK_IMPORTED_MODULE_30__["ɵangular_packages_platform_browser_platform_browser_h"](p2_0, p2_1, p2_2)]; }, [[2, _angular_core__WEBPACK_IMPORTED_MODULE_0__["NgProbeToken"]], _angular_router__WEBPACK_IMPORTED_MODULE_32__["ɵangular_packages_router_router_h"], _angular_platform_browser__WEBPACK_IMPORTED_MODULE_30__["ɵTRANSITION_ID"], _angular_common__WEBPACK_IMPORTED_MODULE_29__["DOCUMENT"], _angular_core__WEBPACK_IMPORTED_MODULE_0__["Injector"]]), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](512, _angular_core__WEBPACK_IMPORTED_MODULE_0__["ApplicationInitStatus"], _angular_core__WEBPACK_IMPORTED_MODULE_0__["ApplicationInitStatus"], [[2, _angular_core__WEBPACK_IMPORTED_MODULE_0__["APP_INITIALIZER"]]]), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](131584, _angular_core__WEBPACK_IMPORTED_MODULE_0__["ApplicationRef"], _angular_core__WEBPACK_IMPORTED_MODULE_0__["ApplicationRef"], [_angular_core__WEBPACK_IMPORTED_MODULE_0__["NgZone"], _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵConsole"], _angular_core__WEBPACK_IMPORTED_MODULE_0__["Injector"], _angular_core__WEBPACK_IMPORTED_MODULE_0__["ErrorHandler"], _angular_core__WEBPACK_IMPORTED_MODULE_0__["ComponentFactoryResolver"], _angular_core__WEBPACK_IMPORTED_MODULE_0__["ApplicationInitStatus"]]), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](1073742336, _angular_core__WEBPACK_IMPORTED_MODULE_0__["ApplicationModule"], _angular_core__WEBPACK_IMPORTED_MODULE_0__["ApplicationModule"], [_angular_core__WEBPACK_IMPORTED_MODULE_0__["ApplicationRef"]]), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](1073742336, _angular_platform_browser__WEBPACK_IMPORTED_MODULE_30__["BrowserModule"], _angular_platform_browser__WEBPACK_IMPORTED_MODULE_30__["BrowserModule"], [[3, _angular_platform_browser__WEBPACK_IMPORTED_MODULE_30__["BrowserModule"]]]), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](1073742336, _angular_forms__WEBPACK_IMPORTED_MODULE_31__["ɵangular_packages_forms_forms_d"], _angular_forms__WEBPACK_IMPORTED_MODULE_31__["ɵangular_packages_forms_forms_d"], []), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](1073742336, _angular_forms__WEBPACK_IMPORTED_MODULE_31__["ReactiveFormsModule"], _angular_forms__WEBPACK_IMPORTED_MODULE_31__["ReactiveFormsModule"], []), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](1073742336, _angular_forms__WEBPACK_IMPORTED_MODULE_31__["FormsModule"], _angular_forms__WEBPACK_IMPORTED_MODULE_31__["FormsModule"], []), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](1024, _angular_router__WEBPACK_IMPORTED_MODULE_32__["ɵangular_packages_router_router_a"], _angular_router__WEBPACK_IMPORTED_MODULE_32__["ɵangular_packages_router_router_e"], [[3, _angular_router__WEBPACK_IMPORTED_MODULE_32__["Router"]]]), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](512, _angular_router__WEBPACK_IMPORTED_MODULE_32__["UrlSerializer"], _angular_router__WEBPACK_IMPORTED_MODULE_32__["DefaultUrlSerializer"], []), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](512, _angular_router__WEBPACK_IMPORTED_MODULE_32__["ChildrenOutletContexts"], _angular_router__WEBPACK_IMPORTED_MODULE_32__["ChildrenOutletContexts"], []), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](256, _angular_router__WEBPACK_IMPORTED_MODULE_32__["ROUTER_CONFIGURATION"], { useHash: true }, []), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](1024, _angular_common__WEBPACK_IMPORTED_MODULE_29__["LocationStrategy"], _angular_router__WEBPACK_IMPORTED_MODULE_32__["ɵangular_packages_router_router_d"], [_angular_common__WEBPACK_IMPORTED_MODULE_29__["PlatformLocation"], [2, _angular_common__WEBPACK_IMPORTED_MODULE_29__["APP_BASE_HREF"]], _angular_router__WEBPACK_IMPORTED_MODULE_32__["ROUTER_CONFIGURATION"]]), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](512, _angular_common__WEBPACK_IMPORTED_MODULE_29__["Location"], _angular_common__WEBPACK_IMPORTED_MODULE_29__["Location"], [_angular_common__WEBPACK_IMPORTED_MODULE_29__["LocationStrategy"], _angular_common__WEBPACK_IMPORTED_MODULE_29__["PlatformLocation"]]), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](512, _angular_core__WEBPACK_IMPORTED_MODULE_0__["Compiler"], _angular_core__WEBPACK_IMPORTED_MODULE_0__["Compiler"], []), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](512, _angular_core__WEBPACK_IMPORTED_MODULE_0__["NgModuleFactoryLoader"], _angular_core__WEBPACK_IMPORTED_MODULE_0__["SystemJsNgModuleLoader"], [_angular_core__WEBPACK_IMPORTED_MODULE_0__["Compiler"], [2, _angular_core__WEBPACK_IMPORTED_MODULE_0__["SystemJsNgModuleLoaderConfig"]]]), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](1024, _angular_router__WEBPACK_IMPORTED_MODULE_32__["ROUTES"], function () { return [[{ path: "", redirectTo: "/basic", pathMatch: "full" }, { path: "basic", component: _examples_basic__WEBPACK_IMPORTED_MODULE_37__["BasicExample"] }, { path: "singleselection", component: _examples_singleselection__WEBPACK_IMPORTED_MODULE_38__["SingleSelectionExample"] }, { path: "searchfilter", component: _examples_searchFilter__WEBPACK_IMPORTED_MODULE_39__["SearchFilterExample"] }, { path: "groupby", component: _examples_groupBy__WEBPACK_IMPORTED_MODULE_40__["GroupByExample"] }, { path: "templating", component: _examples_templating__WEBPACK_IMPORTED_MODULE_41__["TemplatingExample"] }, { path: "dropdownMethods", component: _examples_resetdropdown__WEBPACK_IMPORTED_MODULE_42__["ResetDropdownExample"] }, { path: "disablemode", component: _examples_disablemode__WEBPACK_IMPORTED_MODULE_43__["DisableModeExample"] }, { path: "limitselection", component: _examples_limitselection__WEBPACK_IMPORTED_MODULE_44__["LimitSelectionExample"] }, { path: "limitbadges", component: _examples_limitbadges__WEBPACK_IMPORTED_MODULE_45__["LimitBadgesExample"] }, { path: "customplaceholder", component: _examples_customplaceholder__WEBPACK_IMPORTED_MODULE_46__["CustomPlaceholderExample"] }, { path: "styling", component: _examples_styling__WEBPACK_IMPORTED_MODULE_47__["StylingExample"] }, { path: "usinginform", component: _examples_usingWithForms__WEBPACK_IMPORTED_MODULE_48__["UsingWithFormExample"] }, { path: "usinginreactiveform", component: _examples_usingInReactForms__WEBPACK_IMPORTED_MODULE_49__["UsingWithReactiveFormExample"] }, { path: "lazyloading", component: _examples_lazyLoading__WEBPACK_IMPORTED_MODULE_50__["LazyLoadingExample"] }, { path: "multipledropdowns", component: _examples_multipleDropdowns__WEBPACK_IMPORTED_MODULE_51__["MultipleDropdownsExample"] }, { path: "dynamicdatasets", component: _examples_dynamicDataSets__WEBPACK_IMPORTED_MODULE_52__["DynamicDataSetsExample"] }, { path: "theming", component: _examples_theming__WEBPACK_IMPORTED_MODULE_53__["ThemingExample"] }, { path: "remoteData", component: _examples_remoteData__WEBPACK_IMPORTED_MODULE_54__["RemoteDataExample"] }, { path: "customSearchAPI", component: _examples_customSearch__WEBPACK_IMPORTED_MODULE_55__["CustomSearchExample"] }, { path: "searchFilterByOneProperty", component: _examples_searchByOneProperty__WEBPACK_IMPORTED_MODULE_56__["SearchFilterByOnePropertyExample"] }, { path: "lazyloadingRemoteData", component: _examples_lazyLoadingRemoteData__WEBPACK_IMPORTED_MODULE_57__["LazyLoadingRemoteDataExample"] }, { path: "searchfilterAddNewItem", component: _examples_searchFilterAddNewItem__WEBPACK_IMPORTED_MODULE_58__["SearchFilterAddItemExample"] }, { path: "events", component: _examples_events__WEBPACK_IMPORTED_MODULE_59__["EventsExample"] }, { path: "usingInList", component: _examples_usingInList__WEBPACK_IMPORTED_MODULE_60__["UsingInListExample"] }]]; }, []), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](1024, _angular_router__WEBPACK_IMPORTED_MODULE_32__["Router"], _angular_router__WEBPACK_IMPORTED_MODULE_32__["ɵangular_packages_router_router_f"], [_angular_core__WEBPACK_IMPORTED_MODULE_0__["ApplicationRef"], _angular_router__WEBPACK_IMPORTED_MODULE_32__["UrlSerializer"], _angular_router__WEBPACK_IMPORTED_MODULE_32__["ChildrenOutletContexts"], _angular_common__WEBPACK_IMPORTED_MODULE_29__["Location"], _angular_core__WEBPACK_IMPORTED_MODULE_0__["Injector"], _angular_core__WEBPACK_IMPORTED_MODULE_0__["NgModuleFactoryLoader"], _angular_core__WEBPACK_IMPORTED_MODULE_0__["Compiler"], _angular_router__WEBPACK_IMPORTED_MODULE_32__["ROUTES"], _angular_router__WEBPACK_IMPORTED_MODULE_32__["ROUTER_CONFIGURATION"], [2, _angular_router__WEBPACK_IMPORTED_MODULE_32__["UrlHandlingStrategy"]], [2, _angular_router__WEBPACK_IMPORTED_MODULE_32__["RouteReuseStrategy"]]]), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](1073742336, _angular_router__WEBPACK_IMPORTED_MODULE_32__["RouterModule"], _angular_router__WEBPACK_IMPORTED_MODULE_32__["RouterModule"], [[2, _angular_router__WEBPACK_IMPORTED_MODULE_32__["ɵangular_packages_router_router_a"]], [2, _angular_router__WEBPACK_IMPORTED_MODULE_32__["Router"]]]), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](1073742336, _app_router__WEBPACK_IMPORTED_MODULE_61__["AppRouterModule"], _app_router__WEBPACK_IMPORTED_MODULE_61__["AppRouterModule"], []), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](1073742336, _projects_angular2_multiselect_dropdown_lib_src_lib_virtual_scroll_virtual_scroll__WEBPACK_IMPORTED_MODULE_33__["VirtualScrollerModule"], _projects_angular2_multiselect_dropdown_lib_src_lib_virtual_scroll_virtual_scroll__WEBPACK_IMPORTED_MODULE_33__["VirtualScrollerModule"], []), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](1073742336, _projects_angular2_multiselect_dropdown_lib_src_lib_multiselect_component__WEBPACK_IMPORTED_MODULE_62__["AngularMultiSelectModule"], _projects_angular2_multiselect_dropdown_lib_src_lib_multiselect_component__WEBPACK_IMPORTED_MODULE_62__["AngularMultiSelectModule"], []), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](1073742336, primeng_components_common_shared__WEBPACK_IMPORTED_MODULE_63__["SharedModule"], primeng_components_common_shared__WEBPACK_IMPORTED_MODULE_63__["SharedModule"], []), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](1073742336, primeng_components_tooltip_tooltip__WEBPACK_IMPORTED_MODULE_64__["TooltipModule"], primeng_components_tooltip_tooltip__WEBPACK_IMPORTED_MODULE_64__["TooltipModule"], []), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](1073742336, primeng_components_tabview_tabview__WEBPACK_IMPORTED_MODULE_65__["TabViewModule"], primeng_components_tabview_tabview__WEBPACK_IMPORTED_MODULE_65__["TabViewModule"], []), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](1073742336, _angular_common_http__WEBPACK_IMPORTED_MODULE_35__["HttpClientXsrfModule"], _angular_common_http__WEBPACK_IMPORTED_MODULE_35__["HttpClientXsrfModule"], []), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](1073742336, _angular_common_http__WEBPACK_IMPORTED_MODULE_35__["HttpClientModule"], _angular_common_http__WEBPACK_IMPORTED_MODULE_35__["HttpClientModule"], []), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](1073742336, ngx_highlightjs__WEBPACK_IMPORTED_MODULE_66__["HighlightModule"], ngx_highlightjs__WEBPACK_IMPORTED_MODULE_66__["HighlightModule"], []), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](1073742336, _app_module__WEBPACK_IMPORTED_MODULE_1__["AppModule"], _app_module__WEBPACK_IMPORTED_MODULE_1__["AppModule"], []), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](256, _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵAPP_ROOT"], true, []), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](256, _angular_common_http__WEBPACK_IMPORTED_MODULE_35__["ɵangular_packages_common_http_http_e"], "XSRF-TOKEN", []), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](256, _angular_common_http__WEBPACK_IMPORTED_MODULE_35__["ɵangular_packages_common_http_http_f"], "X-XSRF-TOKEN", []), _angular_core__WEBPACK_IMPORTED_MODULE_0__["ɵmpd"](256, ngx_highlightjs__WEBPACK_IMPORTED_MODULE_66__["HIGHLIGHT_OPTIONS"], { languages: _app_module__WEBPACK_IMPORTED_MODULE_1__["hljsLanguages"] }, [])]); }); diff --git a/docs/main-es5.js.map b/docs/main-es5.js.map index dc7bec26..9b7a9688 100644 --- a/docs/main-es5.js.map +++ b/docs/main-es5.js.map @@ -1 +1 @@ -{"version":3,"sources":["webpack:///./projects/angular2-multiselect-dropdown-lib/src/lib/clickOutside.ts","webpack:///./projects/angular2-multiselect-dropdown-lib/src/lib/list-filter.ts","webpack:///./projects/angular2-multiselect-dropdown-lib/src/lib/menu-item.ts.CIcon.html","webpack:///./projects/angular2-multiselect-dropdown-lib/src/lib/menu-item.ts","webpack:///./projects/angular2-multiselect-dropdown-lib/src/lib/multiselect.component.html","webpack:///./projects/angular2-multiselect-dropdown-lib/src/lib/multiselect.component.ts","webpack:///./projects/angular2-multiselect-dropdown-lib/src/lib/multiselect.model.ts","webpack:///./projects/angular2-multiselect-dropdown-lib/src/lib/multiselect.service.ts","webpack:///./projects/angular2-multiselect-dropdown-lib/src/lib/virtual-scroll/virtual-scroll.ts.VirtualScrollerComponent.html","webpack:///./projects/angular2-multiselect-dropdown-lib/src/lib/virtual-scroll/virtual-scroll.ts","webpack:///./src/$_lazy_route_resource lazy namespace object","webpack:///./src/app/app.component.html","webpack:///./src/app/app.component.ts","webpack:///./src/app/app.module.ts","webpack:///./src/app/app.router.ts","webpack:///./src/app/examples/views/view.html","webpack:///./src/app/examples/basic.ts","webpack:///./src/app/examples/views/customSearch.html","webpack:///./src/app/examples/customSearch.ts","webpack:///./src/app/examples/customplaceholder.ts","webpack:///./src/app/examples/views/disableMode.html","webpack:///./src/app/examples/disablemode.ts","webpack:///./src/app/examples/views/dynamicData.html","webpack:///./src/app/examples/dynamicDataSets.ts","webpack:///./src/app/examples/views/events.html","webpack:///./src/app/examples/events.ts","webpack:///./src/app/examples/gist.ts.ng2Gist.html","webpack:///./src/app/examples/gist.ts","webpack:///./src/app/examples/views/groupBy.html","webpack:///./src/app/examples/groupBy.ts","webpack:///./src/app/examples/views/lazyLoading.html","webpack:///./src/app/examples/lazyLoading.ts","webpack:///./src/app/examples/views/lazyLoadingRemoteData.html","webpack:///./src/app/examples/lazyLoadingRemoteData.ts","webpack:///./src/app/examples/limitbadges.ts","webpack:///./src/app/examples/limitselection.ts","webpack:///./src/app/examples/mock-data.ts","webpack:///./src/app/examples/views/multipledropdowns.html","webpack:///./src/app/examples/multipleDropdowns.ts","webpack:///./src/app/examples/views/remoteData.html","webpack:///./src/app/examples/remoteData.ts","webpack:///./src/app/examples/views/resetDropdown.html","webpack:///./src/app/examples/resetdropdown.ts","webpack:///./src/app/examples/searchByOneProperty.ts","webpack:///./src/app/examples/searchFilter.ts","webpack:///./src/app/examples/views/searchFilter.html","webpack:///./src/app/examples/searchFilterAddNewItem.ts","webpack:///./src/app/examples/singleselection.ts","webpack:///./src/app/examples/styling.ts","webpack:///./src/app/examples/views/templating.html","webpack:///./src/app/examples/templating.ts","webpack:///./src/app/examples/views/theming.html","webpack:///./src/app/examples/theming.ts","webpack:///./src/app/examples/views/usingInList.html","webpack:///./src/app/examples/usingInList.ts","webpack:///./src/app/examples/views/using-in-react-form.html","webpack:///./src/app/examples/usingInReactForms.ts","webpack:///./src/app/examples/views/using-in-form.html","webpack:///./src/app/examples/usingWithForms.ts","webpack:///./src/environments/environment.ts","webpack:///./src/main.ts"],"names":[],"mappings":"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EAAC,UAAU,EAAC,UAAU,EAAC,SAAS,EAAC,QAAQ,EAAC,UAAU,EAAC,OAAO,EAAC,QAAQ,EAAC,QAAQ,EAAC,QAAQ,EAAC,SAAS,EAAC,SAAS,EAAC,SAAS,EAAC,QAAQ,EAAC,QAAQ,EAAC,QAAQ,EAAC,QAAQ,EAAC,QAAQ,EAAC,MAAM,EAAC,QAAQ,EAAC,QAAQ,EAAC,UAAU,EAAC,QAAQ,EAAC,MAAM,EAAC,QAAQ,EAAC,MAAM,EAAC,OAAO,EAAC,OAAO,EAAC,QAAQ,EAAC,MAAM,EAAC,KAAK,EAAC,MAAM,EAAC,YAAY,EAAC,MAAM,EAAC,QAAQ,EAAC,QAAQ,EAAC,SAAS,EAAC,MAAM,EAAC,OAAO,EAAC,OAAO,EAAC,MAAM,EAAC,QAAQ,EAAC,OAAO,EAAC,OAAO,EAAC,MAAM,EAAC,QAAQ,EAAC,SAAS,EAAC,MAAM,EAAC,SAAS,EAAC,QAAQ,EAAC,UAAU,EAAC,SAAS,EAAC,OAAO,EAAC,SAAS,EAAC,WAAW,EAAC,OAAO,EAAC,QAAQ,EAAC,QAAQ,EAAC,QAAQ,EAAC,WAAW,EAAC,SAAS,EAAC,SAAS,EAAC,WAAW,EAAC,QAAQ,EAAC,UAAU,EAAC,UAAU,EAAC,QAAQ,EAAC,KAAK,EAAC,UAAU,EAAC,WAAW,EAAC,OAAO,EAAC,SAAS,EAAC,SAAS,EAAC,MAAM,EAAC,MAAM,EAAC,OAAO,EAAC,QAAQ,EAAC,QAAQ,EAAC,QAAQ,EAAC,OAAO,EAAC,SAAS,EAAC,QAAQ,EAAC,MAAM,EAAC,UAAU,EAAC,OAAO,EAAC,UAAU,EAAC,UAAU,EAAC,MAAM,EAAC,SAAS,EAAC,OAAO,EAAC,SAAS,EAAC,OAAO,EAAC,SAAS,EAAC,UAAU,EAAC,OAAO,EAAC,MAAM,EAAC,YAAY,EAAC,QAAQ,EAAC,SAAS,EAAC,OAAO,EAAC,OAAO,EAAC,SAAS,EAAC,QAAQ,EAAC,SAAS,EAAC,UAAU,EAAC,SAAS,EAAC,QAAQ,EAAC,OAAO,EAAC,MAAM,EAAC,QAAQ,EAAC,QAAQ,EAAC,QAAQ,EAAC,QAAQ,EAAC,OAAO,EAAC,OAAO,EAAC,MAAM,EAAC,QAAQ,EAAC,WAAW,EAAC,OAAO,EAAC,QAAQ,EAAC,OAAO,EAAC,OAAO,EAAC,MAAM,EAAC,OAAO,EAAC,QAAQ,EAAC,KAAK,EAAC,MAAM,EAAC,MAAM,EAAC,QAAQ,EAAC,SAAS,EAAC,OAAO,EAAC,UAAU,EAAC,SAAS,EAAC,SAAS,EAAC,QAAQ,EAAC,MAAM,EAAC,WAAW,EAAC,QAAQ,EAAC,SAAS,EAAC,UAAU,EAAC,SAAS,EAAC,OAAO,EAAC,QAAQ,EAAC,MAAM,EAAC,QAAQ,EAAC,QAAQ,EAAC,MAAM,EAAC,SAAS,EAAC,QAAQ,EAAC,SAAS,EAAC,OAAO,EAAC,QAAQ,EAAC,QAAQ,EAAC,SAAS,EAAC,MAAM,EAAC,SAAS,EAAC,YAAY,EAAC,QAAQ,EAAC,SAAS,EAAC,SAAS,EAAC,QAAQ,EAAC,QAAQ,EAAC,WAAW,EAAC,OAAO,EAAC,SAAS,EAAC,UAAU,EAAC,KAAK,EAAC,MAAM,EAAC,OAAO,EAAC,WAAW,EAAC,SAAS,EAAC,SAAS,EAAC,OAAO,EAAC,UAAU,EAAC,QAAQ,EAAC,UAAU,EAAC,SAAS,EAAC,UAAU,EAAC,OAAO,EAAC,QAAQ,EAAC,SAAS,EAAC,SAAS,EAAC,QAAQ,EAAC,SAAS,EAAC,QAAQ,EAAC,QAAQ,EAAC,QAAQ,EAAC,OAAO,EAAC,QAAQ,EAAC,UAAU,EAAC,OAAO,EAAC,QAAQ,EAAC,QAAQ,EAAC,QAAQ,EAAC,UAAU,EAAC,OAAO,EAAC,QAAQ,EAAC,MAAM,EAAC,SAAS,EAAC,QAAQ,EAAC,QAAQ,EAAC,SAAS,EAAC,QAAQ,EAAC,YAAY,EAAC,YAAY,EAAC,QAAQ,EAAC,QAAQ,EAAC,QAAQ,EAAC,MAAM,EAAC,QAAQ,EAAC,OAAO,EAAC,SAAS,EAAC,MAAM,EAAC,QAAQ,EAAC,QAAQ,EAAC,MAAM,EAAC,OAAO,EAAC,OAAO,EAAC,MAAM,EAAC,SAAS,EAAC,SAAS,EAAC,MAAM,EAAC,QAAQ,EAAC,OAAO,EAAC,QAAQ,EAAC,QAAQ,EAAC,QAAQ,EAAC,UAAU,EAAC,KAAK,EAAC,KAAK,EAAC,WAAW,EAAC,QAAQ,EAAC,QAAQ,EAAC,OAAO,EAAC,SAAS,EAAC,MAAM,EAAC,OAAO,EAAC,QAAQ,EAAC,QAAQ,EAAC,SAAS,EAAC,SAAS,EAAC,QAAQ,EAAC,MAAM,EAAC,MAAM,EAAC,SAAS,EAAC,UAAU,EAAC,SAAS,EAAC,SAAS,EAAC,QAAQ,EAAC,UAAU,EAAC,SAAS,EAAC,OAAO,EAAC,UAAU,EAAC,MAAM,EAAC,QAAQ,EAAC,MAAM,EAAC,SAAS,EAAC,WAAW,EAAC,SAAS,EAAC,UAAU,EAAC,UAAU,EAAC,SAAS,EAAC,QAAQ,EAAC,UAAU,EAAC,OAAO,EAAC,OAAO,EAAC,SAAS,EAAC,MAAM,EAAC,QAAQ,EAAC,MAAM,EAAC,SAAS,EAAC,SAAS,EAAC,SAAS,EAAC,QAAQ,EAAC,WAAW,EAAC,SAAS,EAAC,MAAM,EAAC,QAAQ,EAAC,OAAO,EAAC,UAAU,EAAC,OAAO,EAAC,UAAU,EAAC,OAAO,EAAC,QAAQ,EAAC,QAAQ,EAAC,QAAQ,EAAC,SAAS,EAAC,MAAM,EAAC,UAAU,EAAC,QAAQ,EAAC,QAAQ,EAAC,MAAM,EAAC,WAAW,EAAC,QAAQ,EAAC,OAAO,EAAC,OAAO,EAAC,MAAM,EAAC,OAAO,EAAC,QAAQ,EAAC,QAAQ,EAAC,OAAO,EAAC,MAAM,EAAC,QAAQ,EAAC,SAAS,EAAC,MAAM,EAAC,UAAU,EAAC,UAAU,EAAC,MAAM,EAAC,WAAW,EAAC,UAAU,EAAC,UAAU,EAAC,UAAU,EAAC,MAAM,EAAC,QAAQ,EAAC,QAAQ,EAAC,SAAS,EAAC,QAAQ,EAAC,OAAO,EAAC,UAAU,EAAC,SAAS,EAAC,OAAO,EAAC,MAAM,EAAC,SAAS,EAAC,SAAS,EAAC,MAAM,EAAC,QAAQ,EAAC,IAAI,EAAC,UAAU,EAAC,OAAO,EAAC,OAAO,EAAC,UAAU,EAAC,QAAQ,EAAC,OAAO,EAAC,SAAS,EAAC,QAAQ,EAAC,QAAQ,EAAC,MAAM,EAAC,UAAU,EAAC,OAAO,EAAC,QAAQ,EAAC,OAAO,EAAC,OAAO,EAAC,QAAQ,EAAC,SAAS,EAAC,OAAO,EAAC,OAAO,EAAC,SAAS,EAAC,MAAM,EAAC,YAAY,EAAC,OAAO,EAAC,YAAY,EAAC,OAAO,EAAC,SAAS,EAAC,WAAW,EAAC,OAAO,EAAC,MAAM,EAAC,UAAU,EAAC,QAAQ,EAAC,QAAQ,EAAC,MAAM,EAAC,SAAS,EAAC,QAAQ,EAAC,OAAO,EAAC,OAAO,EAAC,SAAS,EAAC,SAAS,EAAC,QAAQ,EAAC,SAAS,EAAC,OAAO,EAAC,OAAO,EAAC,aAAa,EAAC,QAAQ,EAAC,QAAQ,EAAC,SAAS,EAAC,SAAS,EAAC,QAAQ,EAAC,SAAS,EAAC,SAAS,EAAC,QAAQ,EAAC,OAAO,EAAC,SAAS,EAAC,MAAM,EAAC,OAAO,EAAC,OAAO,EAAC,QAAQ,EAAC,MAAM,EAAC,QAAQ,EAAC,QAAQ,EAAC,MAAM,EAAC,QAAQ,EAAC,OAAO,EAAC,WAAW,EAAC,OAAO,EAAC,SAAS,EAAC,QAAQ,EAAC,SAAS,EAAC,MAAM,EAAC,UAAU,EAAC,MAAM,EAAC,MAAM,EAAC,SAAS,EAAC,UAAU,EAAC,UAAU,EAAC,MAAM,EAAC,QAAQ,EAAC,QAAQ,EAAC,OAAO,EAAC,OAAO,EAAC,WAAW,EAAC,SAAS,EAAC,MAAM,EAAC,SAAS,EAAC,OAAO,EAAC,QAAQ,EAAC,YAAY,EAAC,SAAS,EAAC,SAAS,EAAC,MAAM,EAAC,QAAQ,EAAC,QAAQ,EAAC,YAAY,EAAC,OAAO,EAAC,QAAQ,EAAC,OAAO,EAAC,QAAQ,EAAC,SAAS,EAAC,QAAQ,EAAC,OAAO,EAAC,SAAS,EAAC,UAAU,EAAC,MAAM,EAAC,QAAQ,EAAC,QAAQ,EAAC,WAAW,EAAC,QAAQ,EAAC,OAAO,EAAC,OAAO,EAAC,OAAO,EAAC,QAAQ,EAAC,QAAQ,EAAC,SAAS,EAAC,MAAM,EAAC,OAAO,EAAC,QAAQ,EAAC,MAAM,EAAC,OAAO,EAAC,OAAO,EAAC,QAAQ,EAAC,SAAS,EAAC,OAAO,EAAC,SAAS,EAAC,OAAO,EAAC,OAAO,EAAC,SAAS,EAAC,MAAM,EAAC,OAAO,EAAC,MAAM,EAAC,MAAM,EAAC,OAAO,EAAC,MAAM,EAAC,OAAO,EAAC,SAAS,EAAC,UAAU,EAAC,SAAS,EAAC,OAAO,EAAC,OAAO,EAAC,SAAS,EAAC,QAAQ,EAAC,QAAQ,EAAC,MAAM,EAAC,SAAS,EAAC,SAAS,EAAC,SAAS,EAAC,UAAU,EAAC,MAAM,EAAC,SAAS,EAAC,MAAM,EAAC,IAAI,EAAC,WAAW,EAAC,OAAO,EAAC,QAAQ,EAAC,OAAO,EAAC,SAAS,EAAC,WAAW,EAAC,SAAS,EAAC,MAAM,EAAC,QAAQ,EAAC,UAAU,EAAC,SAAS,EAAC,OAAO,EAAC,QAAQ,EAAC,SAAS,EAAC,WAAW,EAAC,WAAW,EAAC,OAAO,EAAC,QAAQ,EAAC,QAAQ,EAAC,OAAO,EAAC,UAAU,EAAC,SAAS,EAAC,OAAO,EAAC,UAAU,EAAC,UAAU,EAAC,SAAS,EAAC,QAAQ,EAAC,OAAO,EAAC,SAAS,EAAC,OAAO,EAAC,UAAU,EAAC,UAAU,EAAC,OAAO,EAAC,OAAO,EAAC,QAAQ,EAAC,QAAQ,EAAC,SAAS,EAAC,MAAM,EAAC,UAAU,EAAC,MAAM,EAAC,SAAS,EAAC,WAAW,EAAC,QAAQ,EAAC,SAAS,EAAC,MAAM,EAAC,UAAU,EAAC,MAAM,EAAC,QAAQ,EAAC,QAAQ,EAAC,UAAU,EAAC,OAAO,EAAC,QAAQ,EAAC,QAAQ,EAAC,SAAS,EAAC,SAAS,EAAC,SAAS,EAAC,WAAW,EAAC,OAAO,EAAC,SAAS,EAAC,SAAS,EAAC,SAAS,EAAC,SAAS,EAAC,MAAM,EAAC,OAAO,EAAC,WAAW,EAAC,QAAQ,EAAC,UAAU,EAAC,OAAO,EAAC,QAAQ,EAAC,SAAS,EAAC,SAAS,EAAC,SAAS,EAAC,UAAU,EAAC,MAAM,EAAC,WAAW,EAAC,SAAS,EAAC,MAAM,EAAC,WAAW,EAAC,QAAQ,EAAC,SAAS,EAAC,WAAW,EAAC,MAAM,EAAC,WAAW,EAAC,MAAM,EAAC,OAAO,EAAC,OAAO,EAAC,OAAO,EAAC,OAAO,EAAC,SAAS,EAAC,SAAS,EAAC,OAAO,EAAC,UAAU,EAAC,SAAS,EAAC,YAAY,EAAC,OAAO,EAAC,QAAQ,EAAC,UAAU,EAAC,UAAU,EAAC,SAAS,EAAC,QAAQ,EAAC,SAAS,EAAC,KAAK,EAAC,OAAO,EAAC,SAAS,EAAC,KAAK,EAAC,SAAS,EAAC,QAAQ,EAAC,OAAO,EAAC,OAAO,EAAC,UAAU,EAAC,SAAS,EAAC,QAAQ,EAAC,SAAS,EAAC,QAAQ,EAAC,QAAQ,EAAC,OAAO,EAAC,MAAM,EAAC,MAAM,EAAC,SAAS,EAAC,OAAO,EAAC,QAAQ,EAAC,SAAS,EAAC,SAAS,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QAAQ,EAAC,QAAQ,EAAC,SAAS,EAAC,MAAM,EAAC,OAAO,EAAC,OAAO,EAAC,MAAM,EAAC,QAAQ,EAAC,OAAO,EAAC,OAAO,EAAC,MAAM,EAAC,QAAQ,EAAC,SAAS,EAAC,MAAM,EAAC,SAAS,EAAC,QAAQ,EAAC,UAAU,EAAC,SAAS,EAAC,OAAO,EAAC,SAAS,EAAC,WAAW,EAAC,OAAO,EAAC,QAAQ,EAAC,QAAQ,EAAC,QAAQ,EAAC,WAAW,EAAC,SAAS,EAAC,SAAS,EAAC,WAAW,EAAC,QAAQ,EAAC,UAAU,EAAC,UAAU,EAAC,QAAQ,EAAC,KAAK,EAAC,UAAU,EAAC,WAAW,EAAC,OAAO,EAAC,SAAS,EAAC,SAAS,EAAC,MAAM,EAAC,MAAM,EAAC,OAAO,EAAC,QAAQ,EAAC,QAAQ,EAAC,QAAQ,EAAC,OAAO,EAAC,SAAS,EAAC,QAAQ,EAAC,MAAM,EAAC,UAAU,EAAC,OAAO,EAAC,UAAU,EAAC,UAAU,EAAC,MAAM,EAAC,SAAS,EAAC,OAAO,EAAC,SAAS,EAAC,OAAO,EAAC,SAAS,EAAC,UAAU,EAAC,OAAO,EAAC,MAAM,EAAC,YAAY,EAAC,QAAQ,EAAC,SAAS,EAAC,OAAO,EAAC,OAAO,EAAC,SAAS,EAAC,QAAQ,EAAC,SAAS,EAAC,UAAU,EAAC,SAAS,EAAC,QAAQ,EAAC,OAAO,EAAC,MAAM,EAAC,QAAQ,EAAC,QAAQ,EAAC,QAAQ,EAAC,QAAQ,EAAC,OAAO,EAAC,OAAO,EAAC,MAAM,EAAC,QAAQ,EAAC,WAAW,EAAC,OAAO,EAAC,QAAQ,EAAC,OAAO,EAAC,OAAO,EAAC,MAAM,EAAC,OAAO,EAAC,QAAQ,EAAC,KAAK,EAAC,MAAM,EAAC,MAAM,EAAC,QAAQ,EAAC,SAAS,EAAC,OAAO,EAAC,UAAU,EAAC,SAAS,EAAC,SAAS,EAAC,QAAQ,EAAC,MAAM,EAAC,WAAW,EAAC,QAAQ,EAAC,SAAS,EAAC,UAAU,EAAC,SAAS,EAAC,OAAO,EAAC,QAAQ,EAAC,MAAM,EAAC,QAAQ,EAAC,QAAQ,EAAC,MAAM,EAAC,SAAS,EAAC,QAAQ,EAAC,SAAS,EAAC,OAAO,EAAC,QAAQ,EAAC,QAAQ,EAAC,SAAS,EAAC,MAAM,EAAC,SAAS,EAAC,YAAY,EAAC,QAAQ,EAAC,SAAS,EAAC,SAAS,EAAC,QAAQ,EAAC,QAAQ,EAAC,WAAW,EAAC,OAAO,EAAC,SAAS,EAAC,UAAU,EAAC,KAAK,EAAC,MAAM,EAAC,OAAO,EAAC,WAAW,EAAC,SAAS,EAAC,SAAS,EAAC,OAAO,EAAC,UAAU,EAAC,QAAQ,EAAC,UAAU,EAAC,SAAS,EAAC,UAAU,EAAC,OAAO,EAAC,QAAQ,EAAC,SAAS,EAAC,SAAS,EAAC,QAAQ,EAAC,SAAS,EAAC,QAAQ,EAAC,QAAQ,EAAC,QAAQ,EAAC,OAAO,EAAC,QAAQ,EAAC,UAAU,EAAC,OAAO,EAAC,QAAQ,EAAC,QAAQ,EAAC,QAAQ,EAAC,UAAU,EAAC,OAAO,EAAC,QAAQ,EAAC,MAAM,EAAC,SAAS,EAAC,QAAQ,EAAC,QAAQ,EAAC,SAAS,EAAC,QAAQ,EAAC,YAAY,EAAC,YAAY,EAAC,QAAQ,EAAC,QAAQ,EAAC,QAAQ,EAAC,MAAM,EAAC,QAAQ,EAAC,OAAO,EAAC,SAAS,EAAC,MAAM,EAAC,QAAQ,EAAC,QAAQ,EAAC,MAAM,EAAC,OAAO,EAAC,OAAO,EAAC,MAAM,EAAC,SAAS,EAAC,SAAS,EAAC,MAAM,EAAC,QAAQ,EAAC,OAAO,EAAC,QAAQ,EAAC,QAAQ,EAAC,QAAQ,EAAC,UAAU,EAAC,KAAK,EAAC,KAAK,EAAC,WAAW,EAAC,QAAQ,EAAC,QAAQ,EAAC,OAAO,EAAC,SAAS,EAAC,MAAM,EAAC,OAAO,EAAC,QAAQ,EAAC,QAAQ,EAAC,SAAS,EAAC,SAAS,EAAC,QAAQ,EAAC,MAAM,EAAC,MAAM,EAAC,SAAS,EAAC,UAAU,EAAC,SAAS,EAAC,SAAS,EAAC,QAAQ,EAAC,UAAU,EAAC,SAAS,EAAC,OAAO,EAAC,UAAU,EAAC,MAAM,EAAC,QAAQ,EAAC,MAAM,EAAC,SAAS,EAAC,WAAW,EAAC,SAAS,EAAC,UAAU,EAAC,UAAU,EAAC,SAAS,EAAC,QAAQ,EAAC,UAAU,EAAC,OAAO,EAAC,OAAO,EAAC,SAAS,EAAC,MAAM,EAAC,QAAQ,EAAC,MAAM,EAAC,SAAS,EAAC,SAAS,EAAC,SAAS,EAAC,QAAQ,EAAC,WAAW,EAAC,SAAS,EAAC,MAAM,EAAC,QAAQ,EAAC,OAAO,EAAC,UAAU,EAAC,OAAO,EAAC,UAAU,EAAC,OAAO,EAAC,QAAQ,EAAC,QAAQ,EAAC,QAAQ,EAAC,SAAS,EAAC,MAAM,EAAC,UAAU,EAAC,QAAQ,EAAC,QAAQ,EAAC,MAAM,EAAC,WAAW,EAAC,QAAQ,EAAC,OAAO,EAAC,OAAO,EAAC,MAAM,EAAC,OAAO,EAAC,QAAQ,EAAC,QAAQ,EAAC,OAAO,EAAC,MAAM,EAAC,QAAQ,EAAC,SAAS,EAAC,MAAM,EAAC,UAAU,EAAC,UAAU,EAAC,MAAM,EAAC,WAAW,EAAC,UAAU,EAAC,UAAU,EAAC,UAAU,EAAC,MAAM,EAAC,QAAQ,EAAC,QAAQ,EAAC,SAAS,EAAC,QAAQ,EAAC,OAAO,EAAC,UAAU,EAAC,SAAS,EAAC,OAAO,EAAC,MAAM,EAAC,SAAS,EAAC,SAAS,EAAC,MAAM,EAAC,QAAQ,EAAC,IAAI,EAAC,UAAU,EAAC,OAAO,EAAC,OAAO,EAAC,UAAU,EAAC,QAAQ,EAAC,OAAO,EAAC,SAAS,EAAC,QAAQ,EAAC,QAAQ,EAAC,MAAM,EAAC,UAAU,EAAC,OAAO,EAAC,QAAQ,EAAC,OAAO,EAAC,OAAO,EAAC,QAAQ,EAAC,SAAS,EAAC,OAAO,EAAC,OAAO,EAAC,SAAS,EAAC,MAAM,EAAC,YAAY,EAAC,OAAO,EAAC,YAAY,EAAC,OAAO,EAAC,SAAS,EAAC,WAAW,EAAC,OAAO,EAAC,MAAM,EAAC,UAAU,EAAC,QAAQ,EAAC,QAAQ,EAAC,MAAM,EAAC,SAAS,EAAC,QAAQ,EAAC,OAAO,EAAC,OAAO,EAAC,SAAS,EAAC,SAAS,EAAC,QAAQ,EAAC,SAAS,EAAC,OAAO,EAAC,OAAO,EAAC,aAAa,EAAC,QAAQ,EAAC,QAAQ,EAAC,SAAS,EAAC,SAAS,EAAC,QAAQ,EAAC,SAAS,EAAC,SAAS,EAAC,QAAQ,EAAC,OAAO,EAAC,SAAS,EAAC,MAAM,EAAC,OAAO,EAAC,OAAO,EAAC,QAAQ,EAAC,MAAM,EAAC,QAAQ,EAAC,QAAQ,EAAC,MAAM,EAAC,QAAQ,EAAC,OAAO,EAAC,WAAW,EAAC,OAAO,EAAC,SAAS,EAAC,QAAQ,EAAC,SAAS,EAAC,MAAM,EAAC,UAAU,EAAC,MAAM,EAAC,MAAM,EAAC,SAAS,EAAC,UAAU,EAAC,UAAU,EAAC,MAAM,EAAC,QAAQ,EAAC,QAAQ,EAAC,OAAO,EAAC,OAAO,EAAC,WAAW,EAAC,SAAS,EAAC,MAAM,EAAC,SAAS,EAAC,OAAO,EAAC,QAAQ,EAAC,YAAY,EAAC,SAAS,EAAC,SAAS,EAAC,MAAM,EAAC,QAAQ,EAAC,QAAQ,EAAC,YAAY,EAAC,OAAO,EAAC,QAAQ,EAAC,OAAO,EAAC,QAAQ,EAAC,SAAS,EAAC,QAAQ,EAAC,OAAO,EAAC,SAAS,EAAC,UAAU,EAAC,MAAM,EAAC,QAAQ,EAAC,QAAQ,EAAC,WAAW,EAAC,QAAQ,EAAC,OAAO,EAAC,OAAO,EAAC,OAAO,EAAC,QAAQ,EAAC,QAAQ,EAAC,SAAS,EAAC,MAAM,EAAC,OAAO,EAAC,QAAQ,EAAC,MAAM,EAAC,OAAO,EAAC,OAAO,EAAC,QAAQ,EAAC,SAAS,EAAC,OAAO,EAAC,SAAS,EAAC,OAAO,EAAC,OAAO,EAAC,SAAS,EAAC,MAAM,EAAC,OAAO,EAAC,MAAM,EAAC,MAAM,EAAC,OAAO,EAAC,MAAM,EAAC,OAAO,EAAC,SAAS,EAAC,UAAU,EAAC,SAAS,EAAC,OAAO,EAAC,OAAO,EAAC,SAAS,EAAC,QAAQ,EAAC,QAAQ,EAAC,MAAM,EAAC,SAAS,EAAC,SAAS,EAAC,SAAS,EAAC,UAAU,EAAC,MAAM,EAAC,SAAS,EAAC,MAAM,EAAC,IAAI,EAAC,WAAW,EAAC,OAAO,EAAC,QAAQ,EAAC,OAAO,EAAC,SAAS,EAAC,WAAW,EAAC,SAAS,EAAC,MAAM,EAAC,QAAQ,EAAC,UAAU,EAAC,SAAS,EAAC,OAAO,EAAC,QAAQ,EAAC,SAAS,EAAC,WAAW,EAAC,WAAW,EAAC,OAAO,EAAC,QAAQ,EAAC,QAAQ,EAAC,OAAO,EAAC,UAAU,EAAC,SAAS,EAAC,OAAO,EAAC,UAAU,EAAC,UAAU,EAAC,SAAS,EAAC,QAAQ,EAAC,OAAO,EAAC,SAAS,EAAC,OAAO,EAAC,UAAU,EAAC,UAAU,EAAC,OAAO,EAAC,OAAO,EAAC,QAAQ,EAAC,QAAQ,EAAC,SAAS,EAAC,MAAM,EAAC,UAAU,EAAC,MAAM,EAAC,SAAS,EAAC,WAAW,EAAC,QAAQ,EAAC,SAAS,EAAC,MAAM,EAAC,UAAU,EAAC,MAAM,EAAC,QAAQ,EAAC,QAAQ,EAAC,UAAU,EAAC,OAAO,EAAC,QAAQ,EAAC,QAAQ,EAAC,SAAS,EAAC,SAAS,EAAC,SAAS,EAAC,WAAW,EAAC,OAAO,EAAC,SAAS,EAAC,SAAS,EAAC,SAAS,EAAC,SAAS,EAAC,MAAM,EAAC,OAAO,EAAC,WAAW,EAAC,QAAQ,EAAC,UAAU,EAAC,OAAO,EAAC,QAAQ,EAAC,SAAS,EAAC,SAAS,EAAC,SAAS,EAAC,UAAU,EAAC,MAAM,EAAC,WAAW,EAAC,SAAS,EAAC,MAAM,EAAC,WAAW,EAAC,QAAQ,EAAC,SAAS,EAAC,WAAW,EAAC,MAAM,EAAC,WAAW,EAAC,MAAM,EAAC,OAAO,EAAC,OAAO,EAAC,OAAO,EAAC,OAAO,EAAC,SAAS,EAAC,SAAS,EAAC,OAAO,EAAC,UAAU,EAAC,SAAS,EAAC,YAAY,EAAC,OAAO,EAAC,QAAQ,EAAC,UAAU,EAAC,UAAU,EAAC,SAAS,EAAC,QAAQ,EAAC,SAAS,EAAC,KAAK,EAAC,OAAO,EAAC,SAAS,EAAC,KAAK,EAAC,SAAS,EAAC,QAAQ,EAAC,OAAO,EAAC,OAAO,EAAC,UAAU,EAAC,SAAS,EAAC,QAAQ,EAAC,SAAS,EAAC,QAAQ,EAAC,QAAQ,EAAC,OAAO,EAAC,MAAM,EAAC,MAAM,EAAC,SAAS,EAAC,OAAO,EAAC,QAAQ,EAAC,SAAS,EAAC,SAAS,EAAC,OAAO,EAAC,OAAO,EAAC,OAAO,EAAC,QAAQ,EAAC,QAAQ,EAAC,QAAQ,EAAC,YAAY,EAAC,KAAK,EAAC,QAAQ,EAAC,UAAU,EAAC,OAAO,EAAC,MAAM,EAAC,UAAU,EAAC,OAAO,EAAC,MAAM,EAAC,QAAQ,EAAC,OAAO,EAAC,OAAO,EAAC,SAAS,EAAC,QAAQ,EAAC,OAAO,EAAC,QAAQ,EAAC,MAAM,EAAC,SAAS,EAAC,MAAM,EAAC,YAAY,EAAC,QAAQ,EAAC,WAAW,EAAC,MAAM,EAAC,SAAS,EAAC,WAAW,EAAC,SAAS,EAAC,QAAQ,EAAC,OAAO,EAAC,MAAM,EAAC,QAAQ,EAAC,SAAS,EAAC,OAAO,EAAC,SAAS,EAAC,OAAO,EAAC,IAAI,EAAC,QAAQ,EAAC,WAAW,EAAC,OAAO,EAAC,MAAM,EAAC,SAAS,EAAC,UAAU,EAAC,QAAQ,EAAC,OAAO,EAAC,SAAS,EAAC,SAAS,EAAC,OAAO,EAAC,UAAU,EAAC,SAAS,EAAC,OAAO,EAAC,MAAM,EAAC,QAAQ,EAAC,QAAQ,EAAC,SAAS,EAAC,OAAO,EAAC,YAAY,EAAC,OAAO,EAAC,OAAO,EAAC,KAAK,EAAC,OAAO,EAAC,YAAY,EAAC,QAAQ,EAAC,SAAS,EAAC,YAAY,EAAC,SAAS,EAAC,SAAS,EAAC,OAAO,EAAC,KAAK,EAAC,QAAQ,EAAC,OAAO,EAAC,QAAQ,EAAC,QAAQ,EAAC,OAAO,EAAC,WAAW,EAAC,SAAS,EAAC,SAAS,EAAC,MAAM,EAAC,SAAS,EAAC,SAAS,EAAC,OAAO,EAAC,UAAU,EAAC,MAAM,EAAC,OAAO,EAAC,aAAa,EAAC,UAAU,EAAC,MAAM,EAAC,QAAQ,EAAC,UAAU,EAAC,QAAQ,EAAC,MAAM,EAAC,MAAM,EAAC,QAAQ,EAAC,QAAQ,EAAC,QAAQ,EAAC,UAAU,EAAC,OAAO,EAAC,UAAU,EAAC,OAAO,EAAC,QAAQ,EAAC,QAAQ,EAAC,MAAM,EAAC,WAAW,EAAC,QAAQ,EAAC,OAAO,EAAC,QAAQ,EAAC,QAAQ,EAAC,MAAM,EAAC,SAAS,EAAC,SAAS,EAAC,SAAS,EAAC,WAAW,EAAC,MAAM,EAAC,OAAO,EAAC,QAAQ,EAAC,OAAO,EAAC,QAAQ,EAAC,OAAO,EAAC,SAAS,EAAC,YAAY,EAAC,SAAS,EAAC,QAAQ,EAAC,UAAU,EAAC,OAAO,EAAC,WAAW,EAAC,SAAS,EAAC,UAAU,EAAC,OAAO,EAAC,MAAM,EAAC,OAAO,EAAC,UAAU,EAAC,IAAI,EAAC,YAAY,EAAC,QAAQ,EAAC,QAAQ,EAAC,WAAW,EAAC,SAAS,EAAC,OAAO,EAAC,QAAQ,EAAC,QAAQ,EAAC,OAAO,EAAC,QAAQ,EAAC,WAAW,EAAC,OAAO,EAAC,WAAW,EAAC,UAAU,EAAC,OAAO,EAAC,aAAa,EAAC,SAAS,EAAC,MAAM,EAAC,OAAO,EAAC,SAAS,EAAC,SAAS,EAAC,WAAW,EAAC,OAAO,EAAC,OAAO,EAAC,OAAO,EAAC,QAAQ,EAAC,OAAO,EAAC,QAAQ,EAAC,MAAM,EAAC,QAAQ,EAAC,MAAM,EAAC,UAAU,EAAC,QAAQ,EAAC,OAAO,EAAC,MAAM,EAAC,SAAS,EAAC,SAAS,EAAC,SAAS,EAAC,MAAM,EAAC,OAAO,EAAC,SAAS,EAAC,QAAQ,EAAC,QAAQ,EAAC,MAAM,EAAC,SAAS,EAAC,SAAS,EAAC,SAAS,EAAC,WAAW,EAAC,OAAO,EAAC,QAAQ,EAAC,WAAW,EAAC,UAAU,EAAC,MAAM,EAAC,OAAO,EAAC,QAAQ,EAAC,WAAW,EAAC,MAAM,EAAC,OAAO,EAAC,SAAS,EAAC,KAAK,EAAC,MAAM,EAAC,OAAO,EAAC,SAAS,EAAC,QAAQ,EAAC,UAAU,EAAC,SAAS,EAAC,OAAO,EAAC,MAAM,EAAC,MAAM,EAAC,OAAO,EAAC,QAAQ,EAAC,UAAU,EAAC,QAAQ,EAAC,QAAQ,EAAC,OAAO,EAAC,QAAQ,EAAC,MAAM,EAAC,SAAS,EAAC,UAAU,EAAC,OAAO,EAAC,MAAM,EAAC,WAAW,EAAC,OAAO,EAAC,MAAM,EAAC,SAAS,EAAC,SAAS,EAAC,SAAS,EAAC,OAAO,EAAC,QAAQ,EAAC,UAAU,EAAC,OAAO,EAAC,OAAO,EAAC,OAAO,EAAC,MAAM,EAAC,OAAO,EAAC,IAAI,EAAC,UAAU,EAAC,KAAK,EAAC,OAAO,EAAC,QAAQ,EAAC,QAAQ,EAAC,OAAO,EAAC,SAAS,EAAC,UAAU,EAAC,QAAQ,EAAC,SAAS,EAAC,QAAQ,EAAC,UAAU,EAAC,OAAO,EAAC,SAAS,EAAC,UAAU,EAAC,QAAQ,EAAC,OAAO,EAAC,MAAM,EAAC,WAAW,EAAC,QAAQ,EAAC,OAAO,EAAC,UAAU,EAAC,WAAW,EAAC,SAAS,EAAC,OAAO,EAAC,OAAO,EAAC,QAAQ,EAAC,QAAQ,EAAC,SAAS,EAAC,QAAQ,EAAC,UAAU,EAAC,QAAQ,EAAC,MAAM,EAAC,SAAS,EAAC,SAAS,EAAC,SAAS,EAAC,SAAS,EAAC,QAAQ,EAAC,WAAW,EAAC,SAAS,EAAC,SAAS,EAAC,QAAQ,EAAC,UAAU,EAAC,SAAS,EAAC,QAAQ,EAAC,UAAU,EAAC,WAAW,EAAC,QAAQ,EAAC,MAAM,EAAC,QAAQ,EAAC,SAAS,EAAC,QAAQ,EAAC,QAAQ,EAAC,QAAQ,EAAC,MAAM,EAAC,OAAO,EAAC,QAAQ,EAAC,QAAQ,EAAC,OAAO,EAAC,SAAS,EAAC,OAAO,EAAC,QAAQ,EAAC,SAAS,EAAC,QAAQ,EAAC,QAAQ,EAAC,QAAQ,EAAC,MAAM,EAAC,SAAS,EAAC,SAAS,EAAC,MAAM,EAAC,QAAQ,EAAC,SAAS,EAAC,OAAO,EAAC,OAAO,EAAC,QAAQ,EAAC,SAAS,EAAC,UAAU,EAAC,MAAM,EAAC,MAAM,EAAC,UAAU,EAAC,OAAO,EAAC,UAAU,EAAC,SAAS,EAAC,QAAQ,EAAC,QAAQ,EAAC,QAAQ,EAAC,QAAQ,EAAC,QAAQ,EAAC,OAAO,EAAC,MAAM,EAAC,MAAM,EAAC,OAAO,EAAC,QAAQ,EAAC,QAAQ,EAAC,OAAO,EAAC,QAAQ,EAAC,SAAS,EAAC,MAAM,EAAC,OAAO,EAAC,KAAK,EAAC,QAAQ,EAAC,OAAO,EAAC,QAAQ,EAAC,QAAQ,EAAC,QAAQ,EAAC,UAAU,EAAC,QAAQ,EAAC,MAAM,EAAC,QAAQ,EAAC,QAAQ,EAAC,OAAO,EAAC,QAAQ,EAAC,SAAS,EAAC,QAAQ,EAAC,SAAS,EAAC,MAAM,EAAC,QAAQ,EAAC,QAAQ,EAAC,QAAQ,EAAC,QAAQ,EAAC,SAAS,EAAC,MAAM,EAAC,QAAQ,EAAC,MAAM,EAAC,KAAK,EAAC,OAAO,CAAC,CAAC;QAGr5R,KAAI,IAAI,CAAC,GAAC,CAAC,EAAC,CAAC,IAAE,GAAG,EAAC,CAAC,EAAE,EAAC;YAClB,IAAI,OAAO,GAAG,EAAC,IAAI,EAAC,CAAC,EAAC,MAAM,EAAC,EAAE,EAAC,UAAU,EAAC,EAAE,EAAC,CAAC;YAC/C,OAAO,CAAC,EAAE,GAAG,CAAC,CAAC;YACf,OAAO,CAAC,IAAI,GAAE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,EAAE,GAAC,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC;YAC9E,OAAO,CAAC,QAAQ,GAAE,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,EAAE,GAAC,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC;YACrF,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;SAC5B;IACL,CAAC;IAEF,oCAAc,GAAd;QAAA,iBAaC;QAZC,OAAO,+CAAU,CAAC,MAAM,CACtB,UAAC,QAAQ;YAEP,OAAO,IAAI,OAAO,CAAC,iBAAO,IAAI,iBAAU,CAAC;gBACvC,OAAO,CAAC,GAAG,CAAC,mBAAmB,CAAC,CAAC;gBACjC,OAAO,CAAC,KAAI,CAAC,IAAI,CAAC,CAAC;YACrB,CAAC,EAAE,IAAI,CAAC,EAHsB,CAGtB,CAAC,CAAC,IAAI,CAAC,UAAC,QAAQ;gBACtB,QAAQ,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;gBACxB,QAAQ,CAAC,QAAQ,EAAE,CAAC;YACtB,CAAC,CAAC,CAAC;QACL,CAAC,CACF,CAAC;IACJ,CAAC;IACD,kCAAY,GAAZ,UAAa,IAAY,EAAE,KAAa;QAAxC,iBAUC;QATC,OAAO,IAAI,OAAO,CAAC,UAAC,OAAO,EAAE,MAAM;YACjC,YAAY,CAAC,KAAI,CAAC,KAAK,CAAC,CAAC;YACzB,KAAI,CAAC,KAAK,GAAG,UAAU,CAAC;gBACtB,IAAI,IAAI,GAAG,KAAI,CAAC,QAAQ,CAAC,MAAM,EAAE;oBAC/B,OAAO,OAAO,CAAC,KAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,EAAE,IAAI,GAAG,KAAK,CAAC,CAAC,CAAC;iBACzD;gBACD,MAAM,EAAE,CAAC;YACX,CAAC,EAAE,IAAI,GAAG,IAAI,CAAC,MAAM,EAAE,GAAG,IAAI,CAAC,CAAC;QAClC,CAAC,CAAC,CAAC;IACL,CAAC;IAED,iCAAW,GAAX;QAAA,iBAYC;QAXC,OAAO,+CAAU,CAAC,MAAM,CACtB,UAAC,QAAQ;YACP,OAAO,IAAI,OAAO,CAAC,iBAAO,IAAI,iBAAU,CAAC;gBACvC,OAAO,CAAC,GAAG,CAAC,gBAAgB,CAAC,CAAC;gBAC9B,OAAO,CAAC,KAAI,CAAC,IAAI,CAAC,CAAC;YACrB,CAAC,EAAE,GAAG,CAAC,EAHuB,CAGvB,CAAC,CAAC,IAAI,CAAC,UAAC,QAAQ;gBACrB,QAAQ,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;gBACxB,QAAQ,CAAC,QAAQ,EAAE,CAAC;YACtB,CAAC,CAAC,CAAC;QACL,CAAC,CACF,CAAC;IACJ,CAAC;IAED,6BAAO,GAAP,UAAQ,GAAG;QACT,IAAI,GAAG,CAAC,MAAM,KAAK,CAAC,EAAE;YACpB,OAAO,IAAI,CAAC,IAAI,CAAC;SAClB;QACD,oCAAoC;QACpC,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,EAAE,GAAG,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC;QACtD,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,EAAE,GAAG,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;QAClE,OAAO,GAAG,CAAC;IACb,CAAC;IACD,+BAAS,GAAT;QACE,OAAO,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,UAAU,EAAE,OAAO,EAAE,UAAU,EAAE,QAAQ,EAAE;YAC9D,EAAE,IAAI,EAAE,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,UAAU,EAAE,QAAQ,EAAE;YACvD,EAAE,IAAI,EAAE,CAAC,EAAE,UAAU,EAAE,SAAS,EAAE,UAAU,EAAE,YAAY,EAAE;YAC5D,EAAE,IAAI,EAAE,CAAC,EAAE,UAAU,EAAE,SAAS,EAAE,UAAU,EAAE,YAAY,EAAE,CAAC,CAAC;IAChE,CAAC;IACD,kCAAY,GAAZ;QACE,OAAO;YACL,EAAE,IAAI,EAAE,CAAC,EAAE,UAAU,EAAE,OAAO,EAAE,UAAU,EAAE,MAAM,EAAE;YACpD,EAAE,IAAI,EAAE,CAAC,EAAE,UAAU,EAAE,WAAW,EAAE,UAAU,EAAE,cAAc,EAAE;YAChE,EAAE,IAAI,EAAE,CAAC,EAAE,UAAU,EAAE,SAAS,EAAE,UAAU,EAAE,QAAQ,EAAE;YACxD,EAAE,IAAI,EAAE,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,UAAU,EAAE,QAAQ,EAAE;YACvD,EAAE,IAAI,EAAE,CAAC,EAAE,UAAU,EAAE,aAAa,EAAE,UAAU,EAAE,MAAM,EAAE;YAC1D,EAAE,IAAI,EAAE,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,UAAU,EAAE,QAAQ,EAAE;SACxD,CAAC;IACJ,CAAC;IACH,kBAAC;AAAD,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8GC9DG,wHAAsB,KAClB,sqBAAkC,MAClC,+YAA6B,iDADjB,wGAAqB,GAAjC,YAAkC,EAAtB,SAAqB,GACvB,mBAAkB,UAA5B,YAA6B,EAAnB,SAAkB;8GAGhC,wHAAuB,KACnB,sqBAAmC,MACnC,+YAA8B,iDADlB,yGAAsB,GAAlC,YAAmC,EAAvB,SAAsB,GACxB,mBAAmB,WAA7B,YAA8B,EAApB,SAAmB;8GA9BrC,gJAA0B,iFAAU,MACpC,gLAAyD,KACrD,yJAAkC,KAC9B,wJAAkC,kGAAqB,MACvD;;wBACgE;MADY;;wBAAmD;MAA/H,m2EACgE,IAGpE,0JAAkC,KAC9B,6IAAsB,sFAAS,MAC/B;;wBAA6I;MAAzF;;wBAAuC;MAA3F,o2EAA6I,IAIrJ,8JAAuC,iFAAI,MAE3C,8nBAAW,MACP,oqBAAiC,MAC7B,iZAA4B,IAEhC,oqBAAmC,MAC/B,iZAA8B,IAElC,+YAAsB,IAKtB,+YAAuB,iDAvBf,mBAA6B,uBAAC,oBAA6B,mBAD/D,YACgE,EAA5D,SAA6B,EAAC,UAA6B,GADf,uCAA2B,EAAC,oBAAmD,wCAA/H,aACgE,EADhB,UAA2B,EAAC,UAAmD,GAMnC,oBAAiB,WAAC,oBAA8B,oBAA5I,aAA6I,EAAjD,UAAiB,EAAC,UAA8B,GAAxG,2BAAe,EAAC,oBAAuC,4BAA3F,aAA6I,EAAzG,UAAe,EAAC,UAAuC,GAOnF,wGAAoB,GAAhC,aAAiC,EAArB,UAAoB,GAClB,oBAAiB,SAA3B,aAA4B,EAAlB,UAAiB,GAEnB,0GAAsB,GAAlC,aAAmC,EAAvB,UAAsB,GACpB,oBAAmB,WAA7B,aAA8B,EAApB,UAAmB,GAE3B,oBAAe,UAArB,aAAsB,EAAhB,UAAe,GAKf,oBAAgB,WAAtB,aAAuB,EAAjB,UAAgB,mDA5BA,kDAAU,GAI5B,m0BACgE,GAKhE,q1BAA6I;;;;;;;;;;;;;;;;ACVrJ;AAAA;AAAA;AAAA;AAAA;AAAkD;AACR;AACA;AAE1C;IAmBI,kCAAmB,WAAwB;QAAxB,gBAAW,GAAX,WAAW,CAAa;QAd3C,aAAQ,GAAG,EAAE,CAAC;QACd,kBAAa,GAAG,EAAE,CAAC;QACnB,aAAQ,GAAG,EAAE,CAAC;QACd,yBAAoB,GAAG,EAAE,CAAC;QAC1B,aAAQ,GAAG,EAAE,CAAC;QACd,qBAAgB,GAAG,EAAE,CAAC;QACtB,sBAAiB,GAAG,EAAE,CAAC;QAEvB,qBAAgB,GAAQ;YACpB,oBAAoB,EAAE,CAAC,EAAE,IAAI,EAAE,YAAY,EAAE,MAAM,EAAE,0BAA0B,EAAE,EAAE,EAAE,IAAI,EAAE,YAAY,EAAE,MAAM,EAAE,cAAc,EAAE,CAAC;YAClI,QAAQ,EAAE,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,MAAM,EAAE,iBAAiB,EAAE,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,MAAM,EAAE,iBAAiB,EAAE,CAAC;SAC7G,CAAC;QAuCF,YAAO,GAAY,KAAK,CAAC;QACzB,UAAK,GAAW,8BAA8B,CAAC;QAC/C,WAAM,GAAW,4CAA4C,CAAC;QAC9D,aAAQ,GAAW,4CAA4C,CAAC;QAChE,aAAQ,GAAW,4CAA4C,CAAC;QAChE,YAAO,GAAW,uBAAuB;QACzC,cAAS,GAAW,yBAAyB,CAAC;QAC9C,cAAS,GAAW,cAAc;IA3Ca,CAAC;IAChD,2CAAQ,GAAR;QAAA,iBAoBC;QAlBG,IAAI,CAAC,gBAAgB,GAAG;YACpB,IAAI,EAAE,QAAQ;YACd,kBAAkB,EAAE,IAAI;YACxB,QAAQ,EAAE,MAAM;SACnB,CAAC;QACF,IAAI,CAAC,iBAAiB,GAAG;YACrB,IAAI,EAAE,QAAQ;YACd,kBAAkB,EAAE,IAAI;YACxB,QAAQ,EAAE,MAAM;SACnB,CAAC;QAEF,IAAI,CAAC,WAAW,CAAC,cAAc,EAAE,CAAC,IAAI,CAAC,0DAAG,CAAC,UAAC,IAAgB;YACxD,KAAI,CAAC,oBAAoB,GAAG,IAAI,CAAC;QACrC,CAAC,CAAC,CAAC,CAAC,SAAS,EAAE,CAAC;QAEhB,IAAI,CAAC,WAAW,CAAC,WAAW,EAAE,CAAC,IAAI,CAAC,0DAAG,CAAC,UAAC,IAAgB;YACrD,KAAI,CAAC,QAAQ,GAAG,IAAI,CAAC;QACzB,CAAC,CAAC,CAAC,CAAC,SAAS,EAAE,CAAC;IACpB,CAAC;IACD,+CAAY,GAAZ,UAAa,IAAS;QAClB,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;QAClB,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;IACpC,CAAC;IACD,iDAAc,GAAd,UAAe,IAAS;QACpB,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;QAClB,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;IACpC,CAAC;IACD,8CAAW,GAAX,UAAY,KAAU;QAClB,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;IACvB,CAAC;IACD,gDAAa,GAAb,UAAc,KAAU;QACpB,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;IACvB,CAAC;IASL,+BAAC;AAAD,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;uGC5De,+JAAyC,gFAAa,MACtD,wMAA2F,KAC3F,yHAAO,gFAAgB,iCAFkB,6DAAa,GACjD,kBAAiB,oBAAtB,YAA2F,EAAtF,SAAiB,GACf,gEAAgB;uGAcnC,wHAAsB,KAClB,qqBAAkC,MAClC,+YAA6B,iDADjB,wGAAqB,GAAjC,YAAkC,EAAtB,SAAqB,GACvB,mBAAkB,UAA5B,YAA6B,EAAnB,SAAkB;uGAzBpC,gJAA0B,iFACb,MACb,gLAAyD,KACrD;;wBACsH;MAD9E;;wBAA2B;MAAuB;;wBAAiC;MACvH;;wBAAqC;MAAC;;wBAAmC;MAAC;;wBAAuC;MADrH,07EACsH,IAClH,gnBAAQ,MACJ,+GAA6B,KAQzC,8JAAuC,iFAAI,MAE3C,8nBAAW,MACP,oqBAAiC,MAC7B,iZAA4B,IAEhC,oqBAAmC,MAC/B,iZAA8B,IAElC,yYAAsB,iDApBA,mBAAiB,WAA6B,oBAAqB,WAAzF,YACsH,EADhG,SAAiB,EAA6B,UAAqB,GAAjD,oBAA2B,gBAAnE,aACsH,EAD9E,UAA2B,GAcvD,wGAAoB,GAAhC,aAAiC,EAArB,UAAoB,GAClB,oBAAiB,SAA3B,aAA4B,EAAlB,UAAiB,GAEnB,0GAAsB,GAAlC,aAAmC,EAAvB,UAAsB,GACpB,oBAAmB,WAA7B,aAA8B,EAApB,UAAmB,GAE3B,oBAAe,UAArB,aAAsB,EAAhB,UAAe,mDAvBC,kDACb,GAET,m0BACsH;;;;;;;;;;;;;;;;ACJ1H;AAAA;AAAA;AAAA;AAAkD;AACA;AAElD;IASI,2BAAoB,IAAgB;QAAhB,SAAI,GAAJ,IAAI,CAAY;QAJpC,aAAQ,GAAO,EAAE,CAAC;QAClB,kBAAa,GAAG,EAAE,CAAC;QACnB,aAAQ,GAAG,EAAE,CAAC;QAuCd,YAAO,GAAY,KAAK,CAAC;QACzB,UAAK,GAAW,8BAA8B,CAAC;QAC/C,WAAM,GAAW,4CAA4C,CAAC;QAC9D,aAAQ,GAAW,4CAA4C,CAAC;QAChE,YAAO,GAAW,eAAe;QACjC,cAAS,GAAW,iBAAiB,CAAC;IA1CE,CAAC;IACzC,oCAAQ,GAAR;QAAA,iBAkBC;QAjBG,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,sCAAsC,CAAC;aACpD,SAAS,CAAC,aAAG;YACV,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;YACjB,KAAI,CAAC,QAAQ,GAAG,GAAG,CAAC;QACxB,CAAC,EAAC,eAAK;QAEP,CAAC,CAAC,CAAC;QACH,IAAI,CAAC,QAAQ,GAAG;YACZ,IAAI,EAAE,kBAAkB;YACxB,aAAa,EAAE,YAAY;YAC3B,eAAe,EAAE,cAAc;YAC/B,OAAO,EAAE,sBAAsB;YAC/B,UAAU,EAAE,YAAY;YACxB,QAAQ,EAAE,MAAM;YAChB,kBAAkB,EAAE,IAAI;YACxB,QAAQ,EAAE,CAAC,MAAM,EAAC,SAAS,CAAC;SAC/B,CAAC;IACN,CAAC;IACD,wCAAY,GAAZ,UAAa,IAAS;QAClB,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;QAClB,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;IACpC,CAAC;IACD,0CAAc,GAAd,UAAe,IAAS;QACpB,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;QAClB,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;IACpC,CAAC;IACD,uCAAW,GAAX,UAAY,KAAU;QAClB,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;IACvB,CAAC;IACD,yCAAa,GAAb,UAAc,KAAU;QACpB,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;IACvB,CAAC;IACD,oCAAQ,GAAR,UAAS,GAAQ;QACb,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;IAClC,CAAC;IAOL,wBAAC;AAAD,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iMCvDD,gJAA0B,gFAAS,MACnC,iLAA0D,KACtD,wIAAiB,KACb,6IAAsB,KAClB,yMAAsD,YAA9C;;wBAAsB;MAA9B,wBAAsD,kFAAK,MAAS,sHAAI,KACxE,sHAAI,KACJ,2MAAuD,YAA/C;;wBAAsB;MAA9B,wBAAuD,iFAAI,MAAS,uHAAI,KACxE,uHAAI,KACJ,2MAAwD,YAAhD;;wBAAuB;MAA/B,wBAAwD,kFAAK,MAEjE,8IAAsB,KAC1B;;wBACsH;MADhE;;wBAA2B;MAAuB;;wBAAiC;MACrI;;wBAAqC;MAAC;;wBAAmC;MAAC;;wBAAuC;MADrH,o9EACsH,IAM1H,8JAAuC,iFAAI,MAE3C,8nBAAW,MACP,oqBAAiC,MAC7B,iZAA4B,IAEhC,oqBAAmC,MAC/B,iZAA8B,iDAdE,mBAAiB,WAA6B,oBAAqB,WAAvG,aACsH,EADlF,SAAiB,EAA6B,UAAqB,GAAjD,oBAA2B,gBAAjF,aACsH,EADhE,UAA2B,GAUrE,wGAAoB,GAAhC,aAAiC,EAArB,UAAoB,GAClB,oBAAiB,SAA3B,aAA4B,EAAlB,UAAiB,GAEnB,0GAAsB,GAAlC,aAAmC,EAAvB,UAAsB,GACpB,oBAAmB,WAA7B,aAA8B,EAApB,UAAmB,mDAzBX,kDAAS,GAW/B,q0BACsH;;;;;;;;;;;;;;;;ACZ1H;AAAA;AAAA;AAAA;AAA0E;AAC6C;AAEvH;IASE;QAJA,aAAQ,GAAG,EAAE,CAAC;QACd,kBAAa,GAAG,EAAE,CAAC;QACnB,aAAQ,GAAG,EAAE,CAAC;QAwDd,YAAO,GAAY,KAAK,CAAC;QACzB,UAAK,GAAW,uCAAuC,CAAC;QACxD,WAAM,GAAW,4CAA4C,CAAC;QAC9D,aAAQ,GAAW,4CAA4C,CAAC;QAChE,YAAO,GAAW,kBAAkB;QACpC,cAAS,GAAW,oBAAoB,CAAC;IAzDzC,CAAC;IACD,uCAAQ,GAAR;QAGE,IAAI,CAAC,QAAQ,GAAG;YACd,EAAE,IAAI,EAAE,CAAC,EAAE,UAAU,EAAE,OAAO,EAAE;YAChC,EAAE,IAAI,EAAE,CAAC,EAAE,UAAU,EAAE,WAAW,EAAE;YACpC,EAAE,IAAI,EAAE,CAAC,EAAE,UAAU,EAAE,WAAW,EAAE;YACpC,EAAE,IAAI,EAAE,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE;YACjC,EAAE,IAAI,EAAE,CAAC,EAAE,UAAU,EAAE,aAAa,EAAE;YACtC,EAAE,IAAI,EAAE,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE;SAClC,CAAC;QAEF,IAAI,CAAC,aAAa,GAAG;YACnB,EAAE,IAAI,EAAE,CAAC,EAAE,UAAU,EAAE,OAAO,EAAE;YAChC,EAAE,IAAI,EAAE,CAAC,EAAE,UAAU,EAAE,WAAW,EAAE;YACpC,EAAE,IAAI,EAAE,CAAC,EAAE,UAAU,EAAE,WAAW,EAAE;YACpC,EAAE,IAAI,EAAE,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE;SAAC,CAAC;QACrC,IAAI,CAAC,QAAQ,GAAG;YACd,IAAI,EAAE,kBAAkB;YACxB,aAAa,EAAE,YAAY;YAC3B,eAAe,EAAE,cAAc;YAC/B,OAAO,EAAE,sBAAsB;SAChC,CAAC;IACJ,CAAC;IACD,2CAAY,GAAZ,UAAa,IAAS;QACpB,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;QAClB,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;IAClC,CAAC;IACD,6CAAc,GAAd,UAAe,IAAS;QACtB,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;QAClB,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;IAClC,CAAC;IACD,0CAAW,GAAX,UAAY,KAAU;QACpB,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;IACrB,CAAC;IACD,4CAAa,GAAb,UAAc,KAAU;QACtB,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;IACrB,CAAC;IACD,wCAAS,GAAT;QACE,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;IAClC,CAAC;IACD,yCAAU,GAAV;QACE,IAAI,CAAC,aAAa,GAAG,EAAE,CAAC;IAC1B,CAAC;IACD,mCAAI,GAAJ,UAAK,GAAQ;QACX,IAAI,CAAC,YAAY,CAAC,YAAY,EAAE,CAAC;QACjC,GAAG,CAAC,eAAe,EAAE,CAAC;IACxB,CAAC;IACD,oCAAK,GAAL,UAAM,GAAQ;QACZ,IAAI,CAAC,YAAY,CAAC,aAAa,EAAE,CAAC;IACpC,CAAC;IAOH,2BAAC;AAAD,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;sH3BzDG,wHAAsB,KAClB,qqBAAkC,MAClC,+YAA6B,iDADjB,wGAAqB,GAAjC,YAAkC,EAAtB,SAAqB,GACvB,mBAAkB,UAA5B,YAA6B,EAAnB,SAAkB;sHAjBpC,gJAA0B,gFAAS,MACnC,gLAAyD,KACrD;;wBACsH;MAD9E;;wBAA2B;MAAuB;;wBAAiC;MACvH;;wBAAqC;MAAC;;wBAAmC;MAAC;;wBAAuC;MADrH,07EACsH,IAG1H,8JAAuC,iFAAI,MAE3C,8nBAAW,MACP,oqBAAiC,MAC9B,iZAA4B,IAE/B,oqBAAmC,MAC/B,iZAA8B,IAElC,uZAAsB,iDAbA,mBAAiB,WAA6B,oBAAqB,WAAzF,YACsH,EADhG,SAAiB,EAA6B,UAAqB,GAAjD,oBAA2B,gBAAnE,aACsH,EAD9E,UAA2B,GAOvD,wGAAoB,GAAhC,aAAiC,EAArB,UAAoB,GACnB,oBAAiB,SAA3B,aAA4B,EAAlB,UAAiB,GAElB,0GAAsB,GAAlC,aAAmC,EAAvB,UAAsB,GACpB,oBAAmB,WAA7B,aAA8B,EAApB,UAAmB,GAE3B,oBAAe,UAArB,aAAsB,EAAhB,UAAe,mDAfC,kDAAS,GAE/B,m0BACsH;;;;;;;;;;;;;;;;A4BH1H;AAAA;AAAA;AAAkD;AAElD;IASE;QAJA,aAAQ,GAAG,EAAE,CAAC;QACd,kBAAa,GAAG,EAAE,CAAC;QACnB,aAAQ,GAAG,EAAE,CAAC;QA+Cd,YAAO,GAAY,KAAK,CAAC;QACzB,UAAK,GAAW,qCAAqC,CAAC;QACtD,WAAM,GAAW,4CAA4C,CAAC;QAC9D,aAAQ,GAAW,4CAA4C,CAAC;QAChE,YAAO,GAAW,2BAA2B;QAC7C,cAAS,GAAW,6BAA6B,CAAC;IAhDlD,CAAC;IACD,mDAAQ,GAAR;QAGE,IAAI,CAAC,QAAQ,GAAG;YACd,EAAC,IAAI,EAAC,CAAC,EAAC,UAAU,EAAC,OAAO,EAAC,MAAM,EAAC,IAAI,EAAC;YACnB,EAAC,IAAI,EAAC,CAAC,EAAC,UAAU,EAAC,WAAW,EAAC,MAAM,EAAC,IAAI,EAAC;YAC3C,EAAC,IAAI,EAAC,CAAC,EAAC,UAAU,EAAC,WAAW,EAAC,MAAM,EAAC,IAAI,EAAC;YAC3C,EAAC,IAAI,EAAC,CAAC,EAAC,UAAU,EAAC,QAAQ,EAAC,MAAM,EAAC,IAAI,EAAC;YACxC,EAAC,IAAI,EAAC,CAAC,EAAC,UAAU,EAAC,aAAa,EAAC,MAAM,EAAC,IAAI,EAAC;YAC7C,EAAC,IAAI,EAAC,CAAC,EAAC,UAAU,EAAC,QAAQ,EAAC,MAAM,EAAC,IAAI,EAAC;SAC7D,CAAC;QAEF,IAAI,CAAC,aAAa,GAAG;YACnB,EAAC,IAAI,EAAC,CAAC,EAAC,UAAU,EAAC,OAAO,EAAC,MAAM,EAAC,IAAI,EAAC;YACnB,EAAC,IAAI,EAAC,CAAC,EAAC,UAAU,EAAC,WAAW,EAAC,MAAM,EAAC,IAAI,EAAC;YAC3C,EAAC,IAAI,EAAC,CAAC,EAAC,UAAU,EAAC,WAAW,EAAC,MAAM,EAAC,IAAI,EAAC;YAC3C,EAAC,IAAI,EAAC,CAAC,EAAC,UAAU,EAAC,QAAQ,EAAC,MAAM,EAAC,IAAI,EAAC;SAAC,CAAC;QAChE,IAAI,CAAC,QAAQ,GAAG;YACd,eAAe,EAAE,KAAK;YACtB,IAAI,EAAE,kBAAkB;YACxB,aAAa,EAAE,YAAY;YAC3B,eAAe,EAAE,cAAc;YAC/B,kBAAkB,EAAE,IAAI;YACxB,cAAc,EAAE,CAAC;YACjB,QAAQ,EAAE,CAAC,UAAU,CAAC;YACtB,qBAAqB,EAAE,gBAAgB;SACxC,CAAC;IACJ,CAAC;IACD,uDAAY,GAAZ,UAAa,IAAS;QACpB,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;QAClB,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;IAClC,CAAC;IACD,yDAAc,GAAd,UAAe,IAAS;QACtB,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;QAClB,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;IAClC,CAAC;IACD,sDAAW,GAAX,UAAY,KAAU;QACpB,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;IACrB,CAAC;IACD,wDAAa,GAAb,UAAc,KAAU;QACtB,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;IACrB,CAAC;IAOH,uCAAC;AAAD,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;yG5B/CG,wHAAsB,KAClB,qqBAAkC,MAClC,+YAA6B,iDADjB,wGAAqB,GAAjC,YAAkC,EAAtB,SAAqB,GACvB,mBAAkB,UAA5B,YAA6B,EAAnB,SAAkB;yGAjBpC,gJAA0B,gFAAS,MACnC,gLAAyD,KACrD;;wBACsH;MAD9E;;wBAA2B;MAAuB;;wBAAiC;MACvH;;wBAAqC;MAAC;;wBAAmC;MAAC;;wBAAuC;MADrH,07EACsH,IAG1H,8JAAuC,iFAAI,MAE3C,8nBAAW,MACP,oqBAAiC,MAC9B,iZAA4B,IAE/B,oqBAAmC,MAC/B,iZAA8B,IAElC,0YAAsB,iDAbA,mBAAiB,WAA6B,oBAAqB,WAAzF,YACsH,EADhG,SAAiB,EAA6B,UAAqB,GAAjD,oBAA2B,gBAAnE,aACsH,EAD9E,UAA2B,GAOvD,wGAAoB,GAAhC,aAAiC,EAArB,UAAoB,GACnB,oBAAiB,SAA3B,aAA4B,EAAlB,UAAiB,GAElB,0GAAsB,GAAlC,aAAmC,EAAvB,UAAsB,GACpB,oBAAmB,WAA7B,aAA8B,EAApB,UAAmB,GAE3B,oBAAe,UAArB,aAAsB,EAAhB,UAAe,mDAfC,kDAAS,GAE/B,m0BACsH;;;;;;;;;;;;;;;;A6BH1H;AAAA;AAAA;AAAkD;AAElD;IASE;QAJA,aAAQ,GAAG,EAAE,CAAC;QACd,kBAAa,GAAG,EAAE,CAAC;QACnB,aAAQ,GAAG,EAAE,CAAC;QA8Cd,YAAO,GAAY,KAAK,CAAC;QACzB,UAAK,GAAW,eAAe,CAAC;QAChC,WAAM,GAAW,4CAA4C,CAAC;QAC9D,aAAQ,GAAW,4CAA4C,CAAC;QAChE,YAAO,GAAW,iBAAiB;QACnC,cAAS,GAAW,mBAAmB,CAAC;IA/CxC,CAAC;IACD,sCAAQ,GAAR;QAGE,IAAI,CAAC,QAAQ,GAAG;YACd,EAAC,IAAI,EAAC,CAAC,EAAC,UAAU,EAAC,OAAO,EAAC,MAAM,EAAC,IAAI,EAAC;YACnB,EAAC,IAAI,EAAC,CAAC,EAAC,UAAU,EAAC,WAAW,EAAC,MAAM,EAAC,IAAI,EAAC;YAC3C,EAAC,IAAI,EAAC,CAAC,EAAC,UAAU,EAAC,WAAW,EAAC,MAAM,EAAC,IAAI,EAAC;YAC3C,EAAC,IAAI,EAAC,CAAC,EAAC,UAAU,EAAC,QAAQ,EAAC,MAAM,EAAC,IAAI,EAAC;YACxC,EAAC,IAAI,EAAC,CAAC,EAAC,UAAU,EAAC,aAAa,EAAC,MAAM,EAAC,IAAI,EAAC;YAC7C,EAAC,IAAI,EAAC,CAAC,EAAC,UAAU,EAAC,QAAQ,EAAC,MAAM,EAAC,IAAI,EAAC;SAC7D,CAAC;QAEF,IAAI,CAAC,aAAa,GAAG;YACnB,EAAC,IAAI,EAAC,CAAC,EAAC,UAAU,EAAC,OAAO,EAAC,MAAM,EAAC,IAAI,EAAC;YACnB,EAAC,IAAI,EAAC,CAAC,EAAC,UAAU,EAAC,WAAW,EAAC,MAAM,EAAC,IAAI,EAAC;YAC3C,EAAC,IAAI,EAAC,CAAC,EAAC,UAAU,EAAC,WAAW,EAAC,MAAM,EAAC,IAAI,EAAC;YAC3C,EAAC,IAAI,EAAC,CAAC,EAAC,UAAU,EAAC,QAAQ,EAAC,MAAM,EAAC,IAAI,EAAC;SAAC,CAAC;QAChE,IAAI,CAAC,QAAQ,GAAG;YACd,eAAe,EAAE,KAAK;YACtB,IAAI,EAAE,kBAAkB;YACxB,aAAa,EAAE,YAAY;YAC3B,eAAe,EAAE,cAAc;YAC/B,kBAAkB,EAAE,IAAI;YACxB,cAAc,EAAE,CAAC;YACjB,kBAAkB,EAAE,IAAI;SACzB,CAAC;IACJ,CAAC;IACD,0CAAY,GAAZ,UAAa,IAAS;QACpB,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;QAClB,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;IAClC,CAAC;IACD,4CAAc,GAAd,UAAe,IAAS;QACtB,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;QAClB,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;IAClC,CAAC;IACD,yCAAW,GAAX,UAAY,KAAU;QACpB,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;IACrB,CAAC;IACD,2CAAa,GAAb,UAAc,KAAU;QACtB,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;IACrB,CAAC;IAOH,0BAAC;AAAD,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;gHCvCG,wHAAsB,KAClB,qqBAAkC,MAClC,+YAA6B,iDADjB,wGAAqB,GAAjC,YAAkC,EAAtB,SAAqB,GACvB,mBAAkB,UAA5B,YAA6B,EAAnB,SAAkB;gHAxBpC,gJAA0B,gFAAS,MACnC,gLAAyD,KACrD;;wBAE6C;MAFL;;wBAA2B;MAAuB;;wBAAiC;MACvH;;wBAAqC;MAAC;;wBAAmC;MAAC;;wBAAuC;MACjH;;wBAAwC;MAF5C,o+EAE6C,IAG3C,2KAA8C,KAC5C,sHAAG,uGAA0B,MAC7B,uHAAI,kcAGE,MACd,8JAAuC,iFAAI,MAE3C,8nBAAW,MACP,oqBAAiC,MAC9B,iZAA4B,IAE/B,oqBAAmC,MAC/B,iZAA8B,IAElC,iZAAsB,iDApBA,mBAAiB,WAA6B,oBAAqB,WAAzF,YAE6C,EAFvB,SAAiB,EAA6B,UAAqB,GAAjD,oBAA2B,gBAAnE,aAE6C,EAFL,UAA2B,GAcvD,wGAAoB,GAAhC,aAAiC,EAArB,UAAoB,GACnB,oBAAiB,SAA3B,aAA4B,EAAlB,UAAiB,GAElB,0GAAsB,GAAlC,aAAmC,EAAvB,UAAsB,GACpB,oBAAmB,WAA7B,aAA8B,EAApB,UAAmB,GAE3B,oBAAe,UAArB,aAAsB,EAAhB,UAAe,mDAtBC,kDAAS,GAE/B,m0BAE6C;;;;;;;;;;;;;;;;ACJjD;AAAA;AAAA;AAAkD;AAElD;IASE;QAJA,aAAQ,GAAG,EAAE,CAAC;QACd,kBAAa,GAAG,EAAE,CAAC;QACnB,aAAQ,GAAG,EAAE,CAAC;QACd,UAAK,GAAG,CAAC,CAAC;QAiDV,YAAO,GAAY,KAAK,CAAC;QACzB,UAAK,GAAW,uCAAuC,CAAC;QACxD,WAAM,GAAW,4CAA4C,CAAC;QAC9D,aAAQ,GAAW,4CAA4C,CAAC;QAChE,YAAO,GAAW,2BAA2B;QAC7C,cAAS,GAAW,mBAAmB,CAAC;IAnDxC,CAAC;IACD,6CAAQ,GAAR;QAGE,IAAI,CAAC,QAAQ,GAAG;YACd,EAAC,IAAI,EAAC,CAAC,EAAC,UAAU,EAAC,OAAO,EAAC,MAAM,EAAC,IAAI,EAAC;YACnB,EAAC,IAAI,EAAC,CAAC,EAAC,UAAU,EAAC,WAAW,EAAC,MAAM,EAAC,IAAI,EAAC;YAC3C,EAAC,IAAI,EAAC,CAAC,EAAC,UAAU,EAAC,WAAW,EAAC,MAAM,EAAC,IAAI,EAAC;YAC3C,EAAC,IAAI,EAAC,CAAC,EAAC,UAAU,EAAC,QAAQ,EAAC,MAAM,EAAC,IAAI,EAAC;YACxC,EAAC,IAAI,EAAC,CAAC,EAAC,UAAU,EAAC,aAAa,EAAC,MAAM,EAAC,IAAI,EAAC;YAC7C,EAAC,IAAI,EAAC,CAAC,EAAC,UAAU,EAAC,QAAQ,EAAC,MAAM,EAAC,IAAI,EAAC;SAC7D,CAAC;QAEF,IAAI,CAAC,aAAa,GAAG;YACnB,EAAC,IAAI,EAAC,CAAC,EAAC,UAAU,EAAC,OAAO,EAAC,MAAM,EAAC,IAAI,EAAC;YACnB,EAAC,IAAI,EAAC,CAAC,EAAC,UAAU,EAAC,WAAW,EAAC,MAAM,EAAC,IAAI,EAAC;YAC3C,EAAC,IAAI,EAAC,CAAC,EAAC,UAAU,EAAC,WAAW,EAAC,MAAM,EAAC,IAAI,EAAC;YAC3C,EAAC,IAAI,EAAC,CAAC,EAAC,UAAU,EAAC,QAAQ,EAAC,MAAM,EAAC,IAAI,EAAC;SAAC,CAAC;QAChE,IAAI,CAAC,QAAQ,GAAG;YACd,eAAe,EAAE,KAAK;YACtB,IAAI,EAAE,kBAAkB;YACxB,aAAa,EAAE,YAAY;YAC3B,eAAe,EAAE,cAAc;YAC/B,kBAAkB,EAAE,IAAI;YACxB,kBAAkB,EAAE,IAAI;SACzB,CAAC;IACJ,CAAC;IACD,8CAAS,GAAT,UAAU,IAAW;QACnB,IAAI,CAAC,KAAK,EAAE,CAAC;QACb,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAC,IAAI,EAAE,IAAI,CAAC,KAAK,EAAC,UAAU,EAAC,IAAI,EAAC,MAAM,EAAC,IAAI,EAAC,CAAC,CAAC;QACnE,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,EAAC,IAAI,EAAE,IAAI,CAAC,KAAK,EAAC,UAAU,EAAC,IAAI,EAAC,MAAM,EAAC,IAAI,EAAC,CAAC,CAAC;IAC1E,CAAC;IACD,iDAAY,GAAZ,UAAa,IAAS;QACpB,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;QAClB,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;IAClC,CAAC;IACD,mDAAc,GAAd,UAAe,IAAS;QACtB,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;QAClB,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;IAClC,CAAC;IACD,gDAAW,GAAX,UAAY,KAAU;QACpB,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;IACrB,CAAC;IACD,kDAAa,GAAb,UAAc,KAAU;QACtB,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;IACrB,CAAC;IAOH,iCAAC;AAAD,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4G/BlDG,wHAAsB,KAClB,qqBAAkC,MAClC,+YAA6B,iDADjB,wGAAqB,GAAjC,YAAkC,EAAtB,SAAqB,GACvB,mBAAkB,UAA5B,YAA6B,EAAnB,SAAkB;4GAjBpC,gJAA0B,gFAAS,MACnC,gLAAyD,KACrD;;wBACsH;MAD9E;;wBAA2B;MAAuB;;wBAAiC;MACvH;;wBAAqC;MAAC;;wBAAmC;MAAC;;wBAAuC;MADrH,07EACsH,IAG1H,8JAAuC,iFAAI,MAE3C,8nBAAW,MACP,oqBAAiC,MAC9B,iZAA4B,IAE/B,oqBAAmC,MAC/B,iZAA8B,IAElC,6YAAsB,iDAbA,mBAAiB,WAA6B,oBAAqB,WAAzF,YACsH,EADhG,SAAiB,EAA6B,UAAqB,GAAjD,oBAA2B,gBAAnE,aACsH,EAD9E,UAA2B,GAOvD,wGAAoB,GAAhC,aAAiC,EAArB,UAAoB,GACnB,oBAAiB,SAA3B,aAA4B,EAAlB,UAAiB,GAElB,0GAAsB,GAAlC,aAAmC,EAAvB,UAAsB,GACpB,oBAAmB,WAA7B,aAA8B,EAApB,UAAmB,GAE3B,oBAAe,UAArB,aAAsB,EAAhB,UAAe,mDAfC,kDAAS,GAE/B,m0BACsH;;;;;;;;;;;;;;;;AgCH1H;AAAA;AAAA;AAAkD;AAElD;IASE;QAJA,aAAQ,GAAG,EAAE,CAAC;QACd,kBAAa,GAAG,EAAE,CAAC;QACnB,aAAQ,GAAG,EAAE,CAAC;QAmChB,YAAO,GAAY,KAAK,CAAC;QACrB,UAAK,GAAW,kBAAkB,CAAC;QACnC,WAAM,GAAW,4CAA4C,CAAC;QAC9D,aAAQ,GAAW,4CAA4C,CAAC;QAChE,YAAO,GAAW,oBAAoB;QACtC,cAAS,GAAW,sBAAsB,CAAC;IApC7C,CAAC;IACD,yCAAQ,GAAR;QAGE,IAAI,CAAC,QAAQ,GAAG;YACM,EAAC,IAAI,EAAC,CAAC,EAAC,UAAU,EAAC,OAAO,EAAC,MAAM,EAAC,IAAI,EAAC;YACvC,EAAC,IAAI,EAAC,CAAC,EAAC,UAAU,EAAC,WAAW,EAAC,MAAM,EAAC,IAAI,EAAC;YAC3C,EAAC,IAAI,EAAC,CAAC,EAAC,UAAU,EAAC,WAAW,EAAC,MAAM,EAAC,IAAI,EAAC;YAC3C,EAAC,IAAI,EAAC,CAAC,EAAC,UAAU,EAAC,QAAQ,EAAC,MAAM,EAAC,IAAI,EAAC;YACxC,EAAC,IAAI,EAAC,CAAC,EAAC,UAAU,EAAC,aAAa,EAAC,MAAM,EAAC,IAAI,EAAC;YAC7C,EAAC,IAAI,EAAC,CAAC,EAAC,UAAU,EAAC,QAAQ,EAAC,MAAM,EAAC,IAAI,EAAC;SACzC,CAAC;QAEtB,IAAI,CAAC,aAAa,GAAG;YACC,EAAC,IAAI,EAAC,CAAC,EAAC,UAAU,EAAC,OAAO,EAAC,MAAM,EAAC,IAAI,EAAC;SAAC,CAAC;QAC/D,IAAI,CAAC,QAAQ,GAAG,EAAC,eAAe,EAAE,IAAI,EAAE,IAAI,EAAC,gBAAgB,EAAC,QAAQ,EAAC,KAAK,EAAC,CAAC;IAChF,CAAC;IACD,6CAAY,GAAZ,UAAa,IAAQ;QACnB,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;QAClB,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;IAClC,CAAC;IACD,+CAAc,GAAd,UAAe,IAAQ;QACrB,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;QAClB,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;IAClC,CAAC;IACD,4CAAW,GAAX,UAAY,KAAU;QACpB,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;IACrB,CAAC;IACA,8CAAa,GAAb,UAAc,KAAU;QACvB,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;IACrB,CAAC;IAOH,6BAAC;AAAD,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;oGhCnCG,wHAAsB,KAClB,qqBAAkC,MAClC,+YAA6B,iDADjB,wGAAqB,GAAjC,YAAkC,EAAtB,SAAqB,GACvB,mBAAkB,UAA5B,YAA6B,EAAnB,SAAkB;oGAjBpC,gJAA0B,gFAAS,MACnC,gLAAyD,KACrD;;wBACsH;MAD9E;;wBAA2B;MAAuB;;wBAAiC;MACvH;;wBAAqC;MAAC;;wBAAmC;MAAC;;wBAAuC;MADrH,07EACsH,IAG1H,8JAAuC,iFAAI,MAE3C,8nBAAW,MACP,oqBAAiC,MAC9B,iZAA4B,IAE/B,oqBAAmC,MAC/B,iZAA8B,IAElC,qYAAsB,iDAbA,mBAAiB,WAA6B,oBAAqB,WAAzF,YACsH,EADhG,SAAiB,EAA6B,UAAqB,GAAjD,oBAA2B,gBAAnE,aACsH,EAD9E,UAA2B,GAOvD,wGAAoB,GAAhC,aAAiC,EAArB,UAAoB,GACnB,oBAAiB,SAA3B,aAA4B,EAAlB,UAAiB,GAElB,0GAAsB,GAAlC,aAAmC,EAAvB,UAAsB,GACpB,oBAAmB,WAA7B,aAA8B,EAApB,UAAmB,GAE3B,oBAAe,UAArB,aAAsB,EAAhB,UAAe,mDAfC,kDAAS,GAE/B,m0BACsH;;;;;;;;;;;;;;;;AiCH1H;AAAA;AAAA;AAAkD;AAElD;IASE;QAJA,aAAQ,GAAG,EAAE,CAAC;QACd,kBAAa,GAAG,EAAE,CAAC;QACnB,aAAQ,GAAG,EAAE,CAAC;QA2Cd,UAAK,GAAW,gBAAgB,CAAC;QACjC,WAAM,GAAW,4CAA4C,CAAC;QAC9D,aAAQ,GAAW,4CAA4C,CAAC;QAChE,YAAO,GAAW,4CAA4C,CAAC;QAC/D,YAAO,GAAW,kBAAkB,CAAC;QACrC,cAAS,GAAW,oBAAoB,CAAC;QACzC,aAAQ,GAAW,SAAS,CAAC;IA7C7B,CAAC;IACD,iCAAQ,GAAR;QAGE,IAAI,CAAC,QAAQ,GAAG;YACd,EAAE,IAAI,EAAE,CAAC,EAAE,UAAU,EAAE,OAAO,EAAE;YAChC,EAAE,IAAI,EAAE,CAAC,EAAE,UAAU,EAAE,WAAW,EAAE;YACpC,EAAE,IAAI,EAAE,CAAC,EAAE,UAAU,EAAE,WAAW,EAAE;YACpC,EAAE,IAAI,EAAE,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE;YACjC,EAAE,IAAI,EAAE,CAAC,EAAE,UAAU,EAAE,aAAa,EAAE;YACtC,EAAE,IAAI,EAAE,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE;SAClC,CAAC;QAEF,IAAI,CAAC,aAAa,GAAG;YACnB,EAAE,IAAI,EAAE,CAAC,EAAE,UAAU,EAAE,OAAO,EAAE;YAChC,EAAE,IAAI,EAAE,CAAC,EAAE,UAAU,EAAE,WAAW,EAAE;YACpC,EAAE,IAAI,EAAE,CAAC,EAAE,UAAU,EAAE,WAAW,EAAE;YACpC,EAAE,IAAI,EAAE,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE;SAAC,CAAC;QACrC,IAAI,CAAC,QAAQ,GAAG;YACd,IAAI,EAAE,kBAAkB;YACxB,aAAa,EAAE,YAAY;YAC3B,eAAe,EAAE,cAAc;YAC/B,OAAO,EAAE,8BAA8B;SACxC,CAAC;IACJ,CAAC;IACD,qCAAY,GAAZ,UAAa,IAAS;QACpB,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;QAClB,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;IAClC,CAAC;IACD,uCAAc,GAAd,UAAe,IAAS;QACtB,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;QAClB,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;IAClC,CAAC;IACD,oCAAW,GAAX,UAAY,KAAU;QACpB,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;IACrB,CAAC;IACD,sCAAa,GAAb,UAAc,KAAU;QACtB,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;IACrB,CAAC;IAQH,qBAAC;AAAD,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;uGCpDe,kJAA4B,gFAAiB,MAC7C,8KAAkE,gCADtC,iEAAiB,GACxC,kBAAkB,qBAAvB,YAAkE,EAA7D,SAAkB;uGAKvB,yMAA6F,KAC7F,qKAA+C,gFAAiB,MAChE,yHAAO,8HAAO,0FAA0B,iCAFnC,kBAAkB,qBAAvB,YAA6F,EAAxF,SAAkB,GACwB,iEAAiB,GAClD,gEAA0B;uGAfxD,gJAA0B,gFAAS,MACnC,gLAAyD,KACrD;;wBAEwF;MAFhD;;wBAA2B;MAAuB;;wBAAiC;MACvH;;wBAAqC;MAAC;;wBAAmC;MAAC;;wBAAuC;MACjH;;wBAAuC;MAAC;;wBAA2C;MAFvF,8/EAEwF,IACpF,mnBAAS,MACL,+GAA6B,KAKjC,+mBAAQ,MACJ,+GAA6B,KASzC,8JAAuC,iFAAI,MAE3C,8nBAAW,MACP,oqBAAiC,MAC7B,kZAA4B,IAEhC,oqBAAmC,MAC/B,kZAA8B,iDA1BZ,mBAAiB,WAA6B,oBAAqB,WAAzF,YAEwF,EAFlE,SAAiB,EAA6B,UAAqB,GAAjD,oBAA2B,gBAAnE,aAEwF,EAFhD,UAA2B,GAsBvD,wGAAoB,GAAhC,aAAiC,EAArB,UAAoB,GAClB,oBAAiB,SAA3B,aAA4B,EAAlB,UAAiB,GAEnB,0GAAsB,GAAlC,aAAmC,EAAvB,UAAsB,GACpB,oBAAmB,WAA7B,aAA8B,EAApB,UAAmB,mDA5BX,kDAAS,GAE/B,m0BAEwF;;;;;;;;;;;;;;;;ACJ5F;AAAA;AAAA;AAAkD;AAElD;IASE;QAJA,aAAQ,GAAG,EAAE,CAAC;QACd,kBAAa,GAAG,EAAE,CAAC;QACnB,aAAQ,GAAG,EAAE,CAAC;QAqDd,YAAO,GAAY,KAAK,CAAC;QACvB,UAAK,GAAW,wBAAwB,CAAC;QACzC,WAAM,GAAW,4CAA4C,CAAC;QAC9D,aAAQ,GAAW,4CAA4C,CAAC;QAChE,YAAO,GAAW,eAAe;QACjC,cAAS,GAAW,iBAAiB,CAAC;IAtDxC,CAAC;IACD,oCAAQ,GAAR;QAGE,IAAI,CAAC,QAAQ,GAAG;YACM,EAAC,UAAU,EAAC,MAAM,EAAC,IAAI,EAAC,CAAC,EAAC,UAAU,EAAC,OAAO,EAAC,SAAS,EAAC,OAAO,EAAC,OAAO,EAAC,gEAAgE,EAAC;YACxI,EAAC,UAAU,EAAC,MAAM,EAAC,IAAI,EAAC,CAAC,EAAC,UAAU,EAAC,WAAW,EAAE,SAAS,EAAC,WAAW,EAAC,OAAO,EAAC,oEAAoE,EAAC;YACrJ,EAAC,UAAU,EAAC,QAAQ,EAAC,IAAI,EAAC,CAAC,EAAC,UAAU,EAAC,gBAAgB,EAAE,SAAS,EAAC,QAAQ,EAAC,OAAO,EAAC,yEAAyE,EAAC;YAC9J,EAAC,UAAU,EAAC,cAAc,EAAC,IAAI,EAAC,CAAC,EAAC,UAAU,EAAC,QAAQ,EAAC,SAAS,EAAC,QAAQ,EAAC,OAAO,EAAC,iEAAiE,EAAC;YACnJ,EAAC,UAAU,EAAC,MAAM,EAAC,IAAI,EAAC,CAAC,EAAC,UAAU,EAAC,aAAa,EAAC,SAAS,EAAC,OAAO,EAAC,OAAO,EAAC,sEAAsE,EAAC;YACpJ,EAAC,UAAU,EAAC,cAAc,EAAC,IAAI,EAAC,CAAC,EAAC,UAAU,EAAC,QAAQ,EAAC,SAAS,EAAC,UAAU,EAAC,OAAO,EAAC,iEAAiE,EAAC;SACtJ,CAAC;QAEtB,IAAI,CAAC,aAAa,GAAG;YACC,EAAC,UAAU,EAAC,MAAM,EAAC,IAAI,EAAC,CAAC,EAAC,UAAU,EAAC,OAAO,EAAC,SAAS,EAAC,OAAO,EAAC,OAAO,EAAC,gEAAgE,EAAC;YACxI,EAAC,UAAU,EAAC,MAAM,EAAC,IAAI,EAAC,CAAC,EAAC,UAAU,EAAC,WAAW,EAAE,SAAS,EAAC,WAAW,EAAC,OAAO,EAAC,oEAAoE,EAAC;YACrJ,EAAC,UAAU,EAAC,QAAQ,EAAC,IAAI,EAAC,CAAC,EAAC,UAAU,EAAC,gBAAgB,EAAE,SAAS,EAAC,QAAQ,EAAC,OAAO,EAAC,yEAAyE,EAAC;YAC9J,EAAC,UAAU,EAAC,cAAc,EAAC,IAAI,EAAC,CAAC,EAAC,UAAU,EAAC,QAAQ,EAAC,SAAS,EAAC,QAAQ,EAAC,OAAO,EAAC,iEAAiE,EAAC;SAAC;QAC1K,IAAI,CAAC,QAAQ,GAAG;YACU,IAAI,EAAC,kBAAkB;YACvB,aAAa,EAAC,YAAY;YAC1B,eAAe,EAAC,cAAc;YAC9B,kBAAkB,EAAE,IAAI;YACxB,OAAO,EAAC,sBAAsB;YAC9B,YAAY,EAAE,IAAI;YAClB,OAAO,EAAE,UAAU;SACpB,CAAC;IAE5B,CAAC;IACD,wCAAY,GAAZ,UAAa,IAAQ;QACnB,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;QAClB,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;IAClC,CAAC;IACD,0CAAc,GAAd,UAAe,IAAQ;QACrB,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;QAClB,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;IAClC,CAAC;IACD,uCAAW,GAAX,UAAY,KAAU;QACpB,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;IACrB,CAAC;IACA,yCAAa,GAAb,UAAc,KAAU;QACvB,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;IACrB,CAAC;IACD,yCAAa,GAAb,UAAc,iBAAiB;QAC7B,OAAO,CAAC,GAAG,CAAC,iBAAiB,CAAC,CAAC;IACjC,CAAC;IACD,2CAAe,GAAf,UAAgB,mBAAmB;QACjC,OAAO,CAAC,GAAG,CAAC,mBAAmB,CAAC,CAAC;IACnC,CAAC;IAOH,wBAAC;AAAD,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;oGCpED,gJAA0B,gFAAS,MACnC,gLAAyD,KACrD;;wBACsH;MAD9E;;wBAA2B;MAAuB;;wBAAiC;MACvH;;wBAAqC;MAAC;;wBAAmC;MAAC;;wBAAuC;MADrH,07EACsH,IAE1H,8JAAuC,iFAAI,mDAHjB,mBAAiB,WAA6B,oBAAqB,WAAzF,YACsH,EADhG,SAAiB,EAA6B,UAAqB,GAAjD,oBAA2B,gBAAnE,aACsH,EAD9E,UAA2B,mDAF7C,kDAAS,GAE/B,m0BACsH;;;;;;;;;;;;;;;;ACH1H;AAAA;AAAA;AAAkD;AAElD;IASI;QAJA,aAAQ,GAAG,EAAE,CAAC;QACd,kBAAa,GAAG,EAAE,CAAC;QACnB,aAAQ,GAAG,EAAE,CAAC;QA0Cd,YAAO,GAAY,KAAK,CAAC;QACzB,UAAK,GAAW,eAAe,CAAC;QAChC,WAAM,GAAW,4CAA4C,CAAC;QAC9D,aAAQ,GAAW,4CAA4C,CAAC;QAChE,YAAO,GAAW,UAAU;QAC5B,cAAS,GAAW,YAAY,CAAC;IA7CjB,CAAC;IACjB,iCAAQ,GAAR;QAEI,IAAI,CAAC,QAAQ,GAAG;YACZ,EAAE,WAAW,EAAE,CAAC,EAAE,UAAU,EAAE,OAAO,EAAE;YACvC,EAAE,WAAW,EAAE,CAAC,EAAE,UAAU,EAAE,WAAW,EAAE;YAC3C,EAAE,WAAW,EAAE,CAAC,EAAE,UAAU,EAAE,WAAW,EAAE;YAC3C,EAAE,WAAW,EAAE,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE;YACxC,EAAE,WAAW,EAAE,CAAC,EAAE,UAAU,EAAE,aAAa,EAAE;YAC7C,EAAE,WAAW,EAAE,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE;SAC3C,CAAC;QAEF,IAAI,CAAC,aAAa,GAAG;YACjB,EAAE,WAAW,EAAE,CAAC,EAAE,UAAU,EAAE,OAAO,EAAE;YACvC,EAAE,WAAW,EAAE,CAAC,EAAE,UAAU,EAAE,WAAW,EAAE;YAC3C,EAAE,WAAW,EAAE,CAAC,EAAE,UAAU,EAAE,WAAW,EAAE;YAC3C,EAAE,WAAW,EAAE,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE;SAAC,CAAC;QAE9C,IAAI,CAAC,QAAQ,GAAG;YACZ,IAAI,EAAE,kBAAkB;YACxB,aAAa,EAAE,YAAY;YAC3B,eAAe,EAAE,cAAc;YAC/B,OAAO,EAAE,sBAAsB;YAC/B,UAAU,EAAE,WAAW;SAC1B,CAAC;IACN,CAAC;IACD,qCAAY,GAAZ,UAAa,IAAS;QAClB,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;QAClB,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;IACpC,CAAC;IACD,uCAAc,GAAd,UAAe,IAAS;QACpB,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;QAClB,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;IACpC,CAAC;IACD,oCAAW,GAAX,UAAY,KAAU;QAClB,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;IACvB,CAAC;IACD,sCAAa,GAAb,UAAc,KAAU;QACpB,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;IACvB,CAAC;IAOL,qBAAC;AAAD,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;wGC3CW,uHAAmC,KAC/B,sHAAI,kFAEJ,MACA,uHAAI,KACA;;wBAEgF;MAFxC;;wBAA4B;MAChE;;wBAAiC;MAAC;;wBAAqC;MACvE;;wBAAmC;MAAC;;wBAAuC;MAF/E,07EAEgF,iDAF1D,mBAAiB,WAA8B,oBAAqB,WAA1F,YAEgF,EAF1D,SAAiB,EAA8B,UAAqB,GAAlD,mBAA4B,8BAApE,aAEgF,EAFxC,UAA4B,2BAJpE,kEAEJ,GAEI,m0BAEgF;wGAiBhG,wHAAsB,KAClB,qqBAAkC,MAC9B,+YAA6B,iDADrB,wGAAqB,GAAjC,YAAkC,EAAtB,SAAqB,GACnB,mBAAkB,UAA5B,YAA6B,EAAnB,SAAkB;wGAxCxC,mLAAuD,gFAAS,MAChE,uMAA0E,KACtE,0JAAoC,KAChC,gJAA0B,KACtB,sHAAI,KACA,sHAAI,uFAEJ,MACA,sHAAI,wFAEJ,MAGR,0HAAO,KACH,qdAAmC,IAYnC,sMAEZ,IACA,8JAAuC,iFAAI,MAE3C,8nBAAW,MACP,oqBAAiC,MAC7B,iZAA4B,IAEhC,oqBAAmC,MAC/B,iZAA8B,IAElC,yYAAsB,iDAxBV,mBAA8B,YAAlC,aAAmC,EAA/B,SAA8B,GAkB9B,uGAAoB,GAAhC,aAAiC,EAArB,SAAoB,GAClB,mBAAiB,SAA3B,aAA4B,EAAlB,SAAiB,GAEnB,yGAAsB,GAAlC,aAAmC,EAAvB,SAAsB,GACpB,mBAAmB,WAA7B,aAA8B,EAApB,SAAmB,GAE3B,mBAAe,UAArB,aAAsB,EAAhB,SAAe,mDAtC8B,kDAAS,GA0BpD,4LAEZ;;;;;;;;;;;;;;;;AC5BA;AAAA;AAAA;AAAkD;AAElD;IASI;QAJA,aAAQ,GAAG,EAAE,CAAC;QACd,kBAAa,GAAG,EAAE,CAAC;QACnB,aAAQ,GAAG,EAAE,CAAC;QACd,cAAS,GAAG,EAAE,CAAC;QAgEf,YAAO,GAAY,KAAK,CAAC;QACzB,UAAK,GAAW,mCAAmC,CAAC;QACpD,WAAM,GAAW,4CAA4C,CAAC;QAC9D,aAAQ,GAAW,4CAA4C,CAAC;QAChE,YAAO,GAAW,gBAAgB;QAClC,cAAS,GAAW,kBAAkB,CAAC;IAlEvC,CAAC;IACD,qCAAQ,GAAR;QAEI,IAAI,CAAC,SAAS,GAAG;YACb;gBACI,IAAI,EAAE,SAAS,EAAE,SAAS,EAAE,CAAC,EAAE,UAAU,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,EAAE,UAAU,EAAE,OAAO,EAAE,SAAS,EAAE,OAAO,EAAE,OAAO,EAAE,gEAAgE,EAAE;oBAChL,EAAE,UAAU,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,EAAE,UAAU,EAAE,WAAW,EAAE,SAAS,EAAE,WAAW,EAAE,OAAO,EAAE,oEAAoE,EAAE;iBAC9J;aACJ;YACD,EAAE,IAAI,EAAE,OAAO,EAAE,SAAS,EAAE,EAAE,EAAE;YAChC,EAAE,IAAI,EAAE,SAAS,EAAE,SAAS,EAAE,EAAE,EAAE;YAClC;gBACI,IAAI,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC,EAAE,UAAU,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,EAAE,UAAU,EAAE,OAAO,EAAE,SAAS,EAAE,OAAO,EAAE,OAAO,EAAE,gEAAgE,EAAE;oBAC3K,EAAE,UAAU,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,EAAE,UAAU,EAAE,WAAW,EAAE,SAAS,EAAE,WAAW,EAAE,OAAO,EAAE,oEAAoE,EAAE;iBAC9J;aACJ;YACD,EAAE,IAAI,EAAE,QAAQ,EAAE,SAAS,EAAE,EAAE,EAAE;SACpC,CAAC;QACF,IAAI,CAAC,QAAQ,GAAG;YACZ,EAAE,UAAU,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,EAAE,UAAU,EAAE,OAAO,EAAE,SAAS,EAAE,OAAO,EAAE,OAAO,EAAE,gEAAgE,EAAE;YACnJ,EAAE,UAAU,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,EAAE,UAAU,EAAE,WAAW,EAAE,SAAS,EAAE,WAAW,EAAE,OAAO,EAAE,oEAAoE,EAAE;YAC/J,EAAE,UAAU,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,EAAE,UAAU,EAAE,gBAAgB,EAAE,SAAS,EAAE,QAAQ,EAAE,OAAO,EAAE,yEAAyE,EAAE;YACxK,EAAE,UAAU,EAAE,cAAc,EAAE,IAAI,EAAE,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,SAAS,EAAE,QAAQ,EAAE,OAAO,EAAE,iEAAiE,EAAE;YAC9J,EAAE,UAAU,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,EAAE,UAAU,EAAE,aAAa,EAAE,SAAS,EAAE,OAAO,EAAE,OAAO,EAAE,sEAAsE,EAAE;YAC/J,EAAE,UAAU,EAAE,cAAc,EAAE,IAAI,EAAE,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,SAAS,EAAE,UAAU,EAAE,OAAO,EAAE,iEAAiE,EAAE;SACnK,CAAC;QAEF,IAAI,CAAC,aAAa,GAAG;YACjB,EAAE,UAAU,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,EAAE,UAAU,EAAE,OAAO,EAAE,SAAS,EAAE,OAAO,EAAE,OAAO,EAAE,gEAAgE,EAAE;YACnJ,EAAE,UAAU,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,EAAE,UAAU,EAAE,WAAW,EAAE,SAAS,EAAE,WAAW,EAAE,OAAO,EAAE,oEAAoE,EAAE;YAC/J,EAAE,UAAU,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,EAAE,UAAU,EAAE,gBAAgB,EAAE,SAAS,EAAE,QAAQ,EAAE,OAAO,EAAE,yEAAyE,EAAE;YACxK,EAAE,UAAU,EAAE,cAAc,EAAE,IAAI,EAAE,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,SAAS,EAAE,QAAQ,EAAE,OAAO,EAAE,iEAAiE,EAAE;SAAC;QACnK,IAAI,CAAC,QAAQ,GAAG;YACZ,IAAI,EAAE,kBAAkB;YACxB,aAAa,EAAE,YAAY;YAC3B,eAAe,EAAE,cAAc;YAC/B,kBAAkB,EAAE,IAAI;YACxB,OAAO,EAAE,sBAAsB;YAC/B,YAAY,EAAE,IAAI;SACrB,CAAC;IAEN,CAAC;IACD,yCAAY,GAAZ,UAAa,IAAS;QAClB,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;IAChC,CAAC;IACD,2CAAc,GAAd,UAAe,IAAS;QACpB,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;QAClB,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;IACpC,CAAC;IACD,wCAAW,GAAX,UAAY,KAAU;QAClB,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;IACvB,CAAC;IACD,0CAAa,GAAb,UAAc,KAAU;QACpB,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;IACvB,CAAC;IACD,0CAAa,GAAb,UAAc,iBAAiB;QAC3B,OAAO,CAAC,GAAG,CAAC,iBAAiB,CAAC,CAAC;IACnC,CAAC;IACD,4CAAe,GAAf,UAAgB,mBAAmB;QAC/B,OAAO,CAAC,GAAG,CAAC,mBAAmB,CAAC,CAAC;IACrC,CAAC;IAOL,yBAAC;AAAD,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;kHCvCe,sHAA8C,uLAAgB;kHAiB1E,wHAAsB,KAClB,qqBAAkC,MAClC,+YAA6B,iDADjB,wGAAqB,GAAjC,YAAkC,EAAtB,SAAqB,GACvB,mBAAkB,UAA5B,YAA6B,EAAnB,SAAkB;kHA5DpC,gJAA0B,gFAAS,MACnC,wIAAiB,KACjB,6JAAsC,KAClC;;;;;;kzBAAuF,IACnF,+IAAwB,KACpB,yIAAkB,mFAAM,MACxB,8JAAuC,uFAAU,MAClD;;wBAKwF;MALhD;;wBAA2B;MAE5C;;wBAAiC;MACjC;;wBAAqC;MACrC;;wBAAmC;MACnC;;wBAAuC;MAL9D,8mFAKwF,IAG3F,+IAAwB,KACpB,yIAAkB,iFAAI,MACtB;;;;;;;;;;;;85CAAmD,IAEvD,gJAAwB,KACpB,yIAAkB,0FAAa,MAC/B,8JAAuC,uFAAU,MACjD;;;;;;;;;;;;85CAAoD,IAExD,qOAA8F,YAAtF;;wBAAsB;MAA9B,wBAA8F,mFAAM,MAI5G,8IAAsB,KAClB,6IAAqB,KACjB,uHAAI,KACA,uHAAI,+HAAO,iFAAI,MACf,uHAAI,iFAAuB,MAE/B,uHAAI,KACA,uHAAI,+HAAO,kFAAK,MAChB,uHAAI,iFAAwB,MAEhC,uHAAI,KACA,uHAAI,+HAAO,mFAAM,MACjB,uHAAI,KACA,+dAA8C,IAI1D,yHAAM,wMAAyB,IAC/B,sHAAG,qNAAyC,IAGhD,8JAAuC,iFAAI,MAE3C,8nBAAW,MACP,oqBAAiC,MAC9B,iZAA4B,IAE/B,oqBAAmC,MAC/B,iZAA8B,IAElC,mZAAsB,iDAvDhB,mBAAsB,WAA5B,YAAuF,EAAjF,SAAsB,GAIC,oBAAiB,WAChB,oBAAqB,WAD5C,aAKwF,EALlE,UAAiB,EAChB,UAAqB,GAImB,yBAAwB,EAL/C,oBAA2B,gBAAnE,aAKwF,EAAzB,UAAwB,EAL/C,UAA2B,GAUtC,uBAAsB,EAAlD,aAAmD,EAAvB,UAAsB,GAKtB,wBAAuB,EAAnD,aAAoD,EAAxB,UAAuB,GAmB3C,oBAAyC,wBAA7C,aAA8C,EAA1C,UAAyC,GAW7C,wGAAoB,GAAhC,aAAiC,EAArB,UAAoB,GACnB,oBAAiB,SAA3B,aAA4B,EAAlB,UAAiB,GAElB,0GAAsB,GAAlC,aAAmC,EAAvB,UAAsB,GACpB,oBAAmB,WAA7B,aAA8B,EAApB,UAAmB,GAE3B,oBAAe,UAArB,aAAsB,EAAhB,UAAe,mDA1DC,kDAAS,GAG/B,8sBAAuF,GAIhF,m1BAKwF,GAKvF,ouBAAmD,GAKnD,ouBAAoD,GAEzB,qBAA4B,iBAA3D,aAA8F,EAA/D,UAA4B,GAQnD,mEAAuB,GAIvB,oEAAwB,GAS9B,mMAAyB,GAC5B,oMAAyC;;;;;;;;;;;;;;;;AC9ChD;AAAA;AAAA;AAAA;AAAkD;AACkB;AAEpE;IAUI,sCAAoB,EAAe;QAAf,OAAE,GAAF,EAAE,CAAa;QANnC,aAAQ,GAAG,EAAE,CAAC;QACd,kBAAa,GAAG,EAAE,CAAC;QACnB,aAAQ,GAAG,EAAE,CAAC;QAiDlB,YAAO,GAAY,KAAK,CAAC;QACrB,UAAK,GAAW,2BAA2B,CAAC;QAC5C,WAAM,GAAW,4CAA4C,CAAC;QAC9D,aAAQ,GAAW,4CAA4C,CAAC;QAChE,YAAO,GAAW,4BAA4B;QAC9C,cAAS,GAAW,gCAAgC,CAAC;QAjDjD,IAAI,CAAC,UAAU,EAAE,CAAC;IACtB,CAAC;IACD,iDAAU,GAAV;QACI,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,EAAE,CAAC,KAAK,CAAC;YAC1B,IAAI,EAAE,UAAU;YAChB,KAAK,EAAE,CAAC,gBAAgB,EAAE,yDAAU,CAAC,QAAQ,CAAC;YAC9C,MAAM,EAAE,CAAC,EAAE,EAAE,yDAAU,CAAC,QAAQ,CAAC;SACpC,CAAC,CAAC;IACP,CAAC;IACD,iDAAU,GAAV;QACI,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IAC/B,CAAC;IACD,+CAAQ,GAAR;QAEI,IAAI,CAAC,QAAQ,GAAG;YACZ,EAAE,IAAI,EAAE,CAAC,EAAE,UAAU,EAAE,SAAS,EAAE;YAClC,EAAE,IAAI,EAAE,CAAC,EAAE,UAAU,EAAE,YAAY,EAAE;YACrC,EAAE,IAAI,EAAE,CAAC,EAAE,UAAU,EAAE,MAAM,EAAE;YAC/B,EAAE,IAAI,EAAE,CAAC,EAAE,UAAU,EAAE,KAAK,EAAE;YAC9B,EAAE,IAAI,EAAE,CAAC,EAAE,UAAU,EAAE,SAAS,EAAE;YAClC,EAAE,IAAI,EAAE,CAAC,EAAE,UAAU,EAAE,OAAO,EAAE;SACnC,CAAC;QACF,IAAI,CAAC,aAAa,GAAG,EAAE,CAAC;QACxB,IAAI,CAAC,QAAQ,GAAG;YACZ,IAAI,EAAE,eAAe;YACrB,aAAa,EAAE,YAAY;YAC3B,eAAe,EAAE,cAAc;YAC/B,OAAO,EAAE,sBAAsB;SAClC,CAAC;IACN,CAAC;IACD,mDAAY,GAAZ,UAAa,IAAS;QAClB,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;QAClB,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;IACpC,CAAC;IACD,qDAAc,GAAd,UAAe,IAAS;QACpB,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;QAClB,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;IACpC,CAAC;IACD,kDAAW,GAAX,UAAY,KAAU;QAClB,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;IACvB,CAAC;IACD,oDAAa,GAAb,UAAc,KAAU;QACpB,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;IACvB,CAAC;IAOL,mCAAC;AAAD,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;0GCTe,sHAAyC,uLAAgB;0GAkBrE,wHAAsB,KAClB,qqBAAkC,MAClC,+YAA6B,iDADjB,wGAAqB,GAAjC,YAAkC,EAAtB,SAAqB,GACvB,mBAAkB,UAA5B,YAA6B,EAAnB,SAAkB;0GA3EpC,gJAA0B,gFAAS,MACnC,wIAAiB,KACjB,6JAAsC,KAClC;;;;;wBAAiG;MAA3F;;wBAAuB;MAA7B,syBAAiG,IAE7F,+IAAwB,KACpB,yIAAkB,iFAAI,MACtB;;;;;;;;;;;wBACoB;MAD2D;;wBAA4B;MAA3G,szDACoB,IACpB,qKAAuE,KACnE,sIAA2C,6FAAgB,MAC3D,sIAA0C,kGAAqB,MAIvE,gJAAwB,KACpB,yIAAkB,0FAAa,MAC/B,8JAAuC,uFAAU,MACjD;;;;;;;;;;;wBACqB;MAD8C;;wBAA6B;MAAhG,wjEACqB,IACrB,qKAAyE,KACrE,sIAA4C,8FAAiB,MAC7D,sIAA2C,oGAAuB,gIAAO,2HAAG,wFAAW,MAGvF,gJAAwB,KAC5B,yIAAkB,oFAAO,MACzB,8JAAuC,uFAAU,MACjD;;wBAKuG;MAL/D;;wBAA8B;MAEhD;;wBAAiC;MACjC;;wBAAqC;MACrC;;wBAAmC;MACnC;;wBAAuC;MAL7D,qxFAKuG,IAEvG,qKAAwD,KACpD,sIAA6C,0GAA6B,MAGlF,qMAA2F,mFAAM,MAGzG,8IAAsB,KAClB,6IAAqB,KACjB,uHAAI,KACA,uHAAI,+HAAO,iFAAI,MACf,uHAAI,iFAAkB,MAE1B,uHAAI,KACA,uHAAI,+HAAO,kFAAK,MAChB,uHAAI,iFAAmB,MAE3B,uHAAI,KACA,uHAAI,+HAAO,mFAAM,MACjB,uHAAI,KACA,udAAyC,IAIrD,yHAAM,wMAAoB,IACtB,sHAAG,qNAA+C,IAI1D,8JAAuC,iFAAI,MAE3C,8nBAAW,MACP,sqBAAiC,MAC9B,mZAA4B,IAE/B,sqBAAmC,MAC/B,mZAA8B,IAElC,4YAAsB,iDAlEoC,qCAA4B,EAA9E,aACoB,EAD8B,UAA4B,GAA8B,uBAAW,EAAxC,oBAA4B,iBAA3G,aACoB,EADwF,UAAW,EAAxC,UAA4B,GAWjD,mBAAQ,EAAlE,aACqB,EADqC,UAAQ,GAA4C,wEAAuD,EAArK,aACqB,EADyF,UAAuD,GAApE,wBAAY,EAA1C,oBAA6B,kBAAhG,aACqB,EAD4E,UAAY,EAA1C,UAA6B,GAU1E,oBAAiB,WACjB,oBAAqB,WAD3C,aAKuG,EALjF,UAAiB,EACjB,UAAqB,GAImD,mBAAQ,EALtG,aAKuG,EAAT,UAAQ,GAAxC,yBAAa,EALnC,oBAA8B,mBAAtE,aAKuG,EAAzC,UAAa,EALnC,UAA8B,GA2B9D,oBAAoC,mBAAxC,aAAyC,EAArC,UAAoC,GAYxC,wGAAoB,GAAhC,cAAiC,EAArB,UAAoB,GACnB,oBAAiB,SAA3B,cAA4B,EAAlB,UAAiB,GAElB,0GAAsB,GAAlC,cAAmC,EAAvB,UAAsB,GACpB,oBAAmB,WAA7B,cAA8B,EAApB,UAAmB,GAE3B,oBAAe,UAArB,cAAsB,EAAhB,UAAe,mDAzEC,kDAAS,GAG/B,8sBAAiG,GAIzF,+4BACoB,GACf,+IAAsC,aAA3C,aAAuE,EAAlE,UAAsC,GAClC,gGAAqC,GAA1C,aAA2C,EAAtC,UAAqC,GACrC,+FAAoC,GAAzC,aAA0C,EAArC,UAAoC,GAO7C,mgCACqB,GAChB,+IAAwC,aAA7C,aAAyE,EAApE,UAAwC,GACpC,gGAAsC,GAA3C,aAA4C,EAAvC,UAAsC,GACtC,+FAAqC,GAA1C,aAA2C,EAAtC,UAAqC,GAM9C,q8BAKuG,GAElG,0EAAuB,SAA5B,aAAwD,EAAnD,UAAuB,GACnB,gGAAuC,GAA5C,aAA6C,EAAxC,UAAuC,GAGI,0EAAkC,cAA1F,aAA2F,EAAnC,UAAkC,GAOlF,8DAAkB,GAIlB,+DAAmB,GASzB,8LAAoB,GACnB,sPAA+C;;;;;;;;;;;;;;;;AC5D1D;AAAA;AAAA;AAAkD;AAElD;IAcI;QAVA,aAAQ,GAAG,EAAE,CAAC;QACd,kBAAa,GAAG,EAAE,CAAC;QACnB,aAAQ,GAAG,EAAE,CAAC;QACd,cAAS,GAAG;YACR,IAAI,EAAE,EAAE;YACR,KAAK,EAAE,eAAe;YACtB,MAAM,EAAE,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,UAAU,EAAE,SAAS,EAAE,CAAC;SAC/C,CAAC;QACF,cAAS,GAAG,KAAK,CAAC;QAmCtB,YAAO,GAAY,KAAK,CAAC;QACrB,UAAK,GAAW,kCAAkC,CAAC;QACnD,WAAM,GAAW,4CAA4C,CAAC;QAC9D,aAAQ,GAAW,4CAA4C,CAAC;QAChE,YAAO,GAAW,mBAAmB;QACrC,cAAS,GAAW,uBAAuB,CAAC;IAtC5B,CAAC;IADjB,uCAAQ,GAAR,cAAa,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,CAAC,CAAC;IAErC,uCAAQ,GAAR;QAEI,IAAI,CAAC,QAAQ,GAAG;YACZ,EAAE,IAAI,EAAE,CAAC,EAAE,UAAU,EAAE,SAAS,EAAE;YAClC,EAAE,IAAI,EAAE,CAAC,EAAE,UAAU,EAAE,YAAY,EAAE;YACrC,EAAE,IAAI,EAAE,CAAC,EAAE,UAAU,EAAE,MAAM,EAAE;YAC/B,EAAE,IAAI,EAAE,CAAC,EAAE,UAAU,EAAE,KAAK,EAAE;YAC9B,EAAE,IAAI,EAAE,CAAC,EAAE,UAAU,EAAE,SAAS,EAAE;YAClC,EAAE,IAAI,EAAE,CAAC,EAAE,UAAU,EAAE,OAAO,EAAE;SACnC,CAAC;QAEF,IAAI,CAAC,QAAQ,GAAG;YACZ,IAAI,EAAE,eAAe;YACrB,aAAa,EAAE,YAAY;YAC3B,eAAe,EAAE,cAAc;YAC/B,OAAO,EAAE,sBAAsB;SAClC,CAAC;IACN,CAAC;IACD,2CAAY,GAAZ,UAAa,IAAS;QAClB,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;QAClB,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;IACpC,CAAC;IACD,6CAAc,GAAd,UAAe,IAAS;QACpB,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;QAClB,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;IACpC,CAAC;IACD,0CAAW,GAAX,UAAY,KAAU;QAClB,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;IACvB,CAAC;IACD,4CAAa,GAAb,UAAc,KAAU;QACpB,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;IACvB,CAAC;IAOL,2BAAC;AAAD,CAAC;;;;;;;;;;;;;;ACvDD;AAAA;AAAA,gFAAgF;AAChF,0EAA0E;AAC1E,gEAAgE;AAEzD,IAAM,WAAW,GAAG;IACzB,UAAU,EAAE,KAAK;CAClB,CAAC;AAEF;;;;;;GAMG;AACH,mEAAmE;;;;;;;;;;;;;ACfnE;AAAA;AAAA;AAAA;AAAA;AAA+C;AAIU;;;AAEzD,IAAI,qEAAW,CAAC,UAAU,EAAE;IAC1B,oEAAc,EAAE,CAAC;CAClB;AAED,QAAQ,CAAC,gBAAgB,CAAC,kBAAkB,EAAE;IAC5C,2EAAwB,uBAAgB,CAAC,6EAAU;SAClD,KAAK,CAAC,aAAG,IAAI,cAAO,CAAC,KAAK,CAAC,GAAG,CAAC,EAAlB,CAAkB,CAAC,CAAC;AACpC,CAAC,CAAC,CAAC","file":"main-es5.js","sourcesContent":["import { Directive, ElementRef, Output, EventEmitter, HostListener, Input, OnInit, OnChanges } from '@angular/core';\n\n@Directive({\n selector: '[clickOutside]'\n})\nexport class ClickOutsideDirective {\n constructor(private _elementRef: ElementRef) {\n }\n\n @Output()\n public clickOutside = new EventEmitter();\n\n @HostListener('document:click', ['$event', '$event.target'])\n @HostListener('document:touchstart', ['$event', '$event.target'])\n public onClick(event: MouseEvent, targetElement: HTMLElement): void {\n if (!targetElement) {\n return;\n }\n\n const clickedInside = this._elementRef.nativeElement.contains(targetElement);\n if (!clickedInside) {\n this.clickOutside.emit(event);\n }\n }\n}\n\n@Directive({\n selector: '[scroll]'\n})\nexport class ScrollDirective {\n constructor(private _elementRef: ElementRef) {\n }\n\n @Output()\n public scroll = new EventEmitter();\n\n @HostListener('scroll', ['$event'])\n public onClick(event: MouseEvent, targetElement: HTMLElement): void {\n this.scroll.emit(event);\n }\n}\n@Directive({\n selector: '[styleProp]'\n})\nexport class styleDirective {\n\n constructor(private el: ElementRef) {\n\n }\n\n @Input('styleProp') styleVal: number;\n\n ngOnInit() {\n\n this.el.nativeElement.style.top = this.styleVal;\n }\n ngOnChanges(): void {\n this.el.nativeElement.style.top = this.styleVal;\n }\n}\n\n\n@Directive({\n selector: '[setPosition]'\n})\nexport class setPosition implements OnInit, OnChanges {\n\n @Input('setPosition') height: number;\n\n constructor(public el: ElementRef) {\n\n }\n ngOnInit() {\n if (this.height) {\n this.el.nativeElement.style.bottom = parseInt(this.height + 15 + \"\") + 'px';\n }\n }\n ngOnChanges(): void {\n if (this.height) {\n this.el.nativeElement.style.bottom = parseInt(this.height + 15 + \"\") + 'px';\n }\n }\n}","import { Pipe, PipeTransform } from '@angular/core';\nimport { DataService } from './multiselect.service';\n\n\n@Pipe({\n name: 'listFilter',\n pure: true\n})\nexport class ListFilterPipe implements PipeTransform {\n\n public filteredList: any = [];\n constructor(private ds: DataService) {\n\n }\n\n transform(items: any[], filter: any, searchBy: any): any[] {\n if (!items || !filter) {\n this.ds.setData(items);\n return items;\n }\n this.filteredList = items.filter((item: any) => this.applyFilter(item, filter, searchBy));\n this.ds.setData(this.filteredList);\n return this.filteredList;\n }\n applyFilter(item: any, filter: any, searchBy: any): boolean {\n let found = false;\n if (searchBy.length > 0) {\n if (item.grpTitle) {\n found = true;\n }\n else {\n for (var t = 0; t < searchBy.length; t++) {\n if (filter && item[searchBy[t]] && item[searchBy[t]] != \"\") {\n if (item[searchBy[t]].toString().toLowerCase().indexOf(filter.toLowerCase()) >= 0) {\n found = true;\n }\n }\n }\n }\n\n } else {\n if (item.grpTitle) {\n found = true;\n }\n else {\n for (var prop in item) {\n if (filter && item[prop]) {\n if (item[prop].toString().toLowerCase().indexOf(filter.toLowerCase()) >= 0) {\n found = true;\n }\n }\n }\n }\n }\n\n return found;\n }\n}","\n \n \n \n \n \n\n\t\n\t\t\n\t\t\t\n\t\t\n\t\n\n\n\n\n\t\n\t\t\n\t\t\t\n\t\t\n\t\n\n\n\n\n\n\t\n\t\t\n\t\t\t\n\t\t\t\t\n\t\t\t\n\t\t\n\t\n\n\n\n\n\n\t\n\n","import { Component, OnInit, OnDestroy, NgModule, TemplateRef, AfterContentInit, ContentChild, EmbeddedViewRef, OnChanges, ViewContainerRef, ViewEncapsulation, Input, Output, EventEmitter, ElementRef, AfterViewInit, Pipe, PipeTransform, Directive } from '@angular/core';\nimport { SafeResourceUrl, DomSanitizer } from '@angular/platform-browser';\nimport { CommonModule } from '@angular/common';\n\n@Component({\n selector: 'c-item',\n template: ``\n})\n\nexport class Item { \n\n @ContentChild(TemplateRef, {static: true}) template: TemplateRef\n constructor() { \n }\n\n}\n\n@Component({\n selector: 'c-badge',\n template: ``\n})\n\nexport class Badge { \n\n @ContentChild(TemplateRef, {static: true}) template: TemplateRef\n constructor() { \n }\n\n}\n\n@Component({\n selector: 'c-search',\n template: ``\n})\n\nexport class Search { \n\n @ContentChild(TemplateRef, {static: true}) template: TemplateRef\n constructor() { \n }\n\n}\n@Component({\n selector: 'c-templateRenderer',\n template: ``\n})\n\nexport class TemplateRenderer implements OnInit, OnDestroy { \n\n @Input() data: any\n @Input() item: any\n view: EmbeddedViewRef;\n\n constructor(public viewContainer: ViewContainerRef) { \n }\n ngOnInit() {\n this.view = this.viewContainer.createEmbeddedView(this.data.template, {\n '\\$implicit': this.data,\n 'item':this.item\n });\n }\n\t\n ngOnDestroy() {\n\t\tthis.view.destroy();\n\t}\n\n}\n\n@Component({\n selector: 'c-icon',\n template: `\n \n \n \n \n \n\n\t\n\t\t\n\t\t\t\n\t\t\n\t\n\n\n\n\n\t\n\t\t\n\t\t\t\n\t\t\n\t\n\n\n\n\n\n\t\n\t\t\n\t\t\t\n\t\t\t\t\n\t\t\t\n\t\t\n\t\n\n\n\n\n\n\t\n\n`,\n encapsulation: ViewEncapsulation.None,\n\n})\n\nexport class CIcon { \n\n @Input() name:any;\n\n}","
\n
\n
\n\n {{settings.text}}\n \n \n {{item[settings.labelKey]}}\n \n \n 0 && settings.singleSelection && badgeTempl \">\n
\n {{item[settings.labelKey]}}\n\n \n \n \n \n \n \n
\n
\n
0 && !settings.singleSelection\">\n
settings.badgeShowLimit-1\">\n {{item[settings.labelKey]}}\n \n \n \n \n \n \n
\n
\n settings.badgeShowLimit\">+{{selectedItems?.length - settings.badgeShowLimit }}\n 0\" (click)=\"clearSelection($event);$event.stopPropagation()\">\n \n \n \n \n \n \n \n\n \n
\n
\n
\n
\n
\n
\n
0\"\n (click)=\"toggleSelectAll()\">\n \n \n
\n \n
\n \n \n \n \n \n \n \n \n \n\n \n \n \n \n \n
\n
\n
0 && filterLength > 0\" (click)=\"toggleFilterSelectAll()\">\n \n \n
\n
0 && groupedData?.length > 0\" (click)=\"toggleFilterSelectAll()\">\n 0\" [disabled]=\"settings.limitSelection == selectedItems?.length\" />\n \n
\n \n \n\n
\n \n
\n
\n
\n
0 && infiniteFilterLength > 0\" (click)=\"toggleInfiniteFilterSelectAll()\">\n \n \n
\n
\n\n
\n
    \n
  • \n \n \n
  • \n
\n
\n
\n
    \n
  • \n \n \n
  • \n
\n
\n
\n
    \n
  • \n \n \n \n
  • \n
\n
\n
\n
    \n
  • \n \n \n \n
  • \n
\n
\n
\n
    \n \n
  • \n \n \n \n
  • \n
  • \n \n \n \n
  • \n
    \n
\n
\n
\n
    \n \n
  • \n \n \n
      \n \n
    • \n \n \n \n
    • \n
      \n
    \n \n
  • \n
    \n
\n
\n
\n \n
    \n \n
  • \n \n \n
  • \n
  • \n \n \n
  • \n
    \n
\n
\n
\n
\n
    \n \n
  • \n \n \n
      \n \n
    • \n \n \n
    • \n
      \n
    \n
  • \n
    \n \n
\n
\n
{{settings.noDataLabel}}
\n
\n
\n
","import { Component, OnInit, HostListener, ChangeDetectionStrategy,OnDestroy, NgModule, SimpleChanges, OnChanges, ChangeDetectorRef, AfterViewChecked, ViewEncapsulation, ContentChild, ViewChild, forwardRef, Input, Output, EventEmitter, ElementRef, AfterViewInit, Pipe, PipeTransform } from '@angular/core';\nimport { FormsModule, NG_VALUE_ACCESSOR, ControlValueAccessor, NG_VALIDATORS, Validator, FormControl } from '@angular/forms';\nimport { CommonModule } from '@angular/common';\nimport { MyException } from './multiselect.model';\nimport { DropdownSettings } from './multiselect.interface';\nimport { ClickOutsideDirective, ScrollDirective, styleDirective, setPosition } from './clickOutside';\nimport { ListFilterPipe } from './list-filter';\nimport { Item, Badge, Search, TemplateRenderer, CIcon } from './menu-item';\nimport { DataService } from './multiselect.service';\nimport { Subscription, Subject } from 'rxjs';\nimport { VirtualScrollerModule, VirtualScrollerComponent } from './virtual-scroll/virtual-scroll';\nimport { map, debounceTime, distinctUntilChanged, switchMap, tap } from 'rxjs/operators'; \n\nexport const DROPDOWN_CONTROL_VALUE_ACCESSOR: any = {\n provide: NG_VALUE_ACCESSOR,\n useExisting: forwardRef(() => AngularMultiSelect),\n multi: true\n};\nexport const DROPDOWN_CONTROL_VALIDATION: any = {\n provide: NG_VALIDATORS,\n useExisting: forwardRef(() => AngularMultiSelect),\n multi: true,\n}\nconst noop = () => {\n};\n\n@Component({\n selector: 'angular2-multiselect',\n templateUrl: './multiselect.component.html',\n host: { '[class]': 'defaultSettings.classes' },\n styleUrls: ['./multiselect.component.scss'],\n providers: [DROPDOWN_CONTROL_VALUE_ACCESSOR, DROPDOWN_CONTROL_VALIDATION],\n encapsulation: ViewEncapsulation.None,\n})\n\nexport class AngularMultiSelect implements OnInit, ControlValueAccessor, OnChanges, Validator, AfterViewChecked, OnDestroy {\n\n @Input()\n data: Array;\n\n @Input()\n settings: DropdownSettings;\n\n @Input()\n loading: boolean;\n\n @Output('onSelect')\n onSelect: EventEmitter = new EventEmitter();\n\n @Output('onDeSelect')\n onDeSelect: EventEmitter = new EventEmitter();\n\n @Output('onSelectAll')\n onSelectAll: EventEmitter> = new EventEmitter>();\n\n @Output('onDeSelectAll')\n onDeSelectAll: EventEmitter> = new EventEmitter>();\n\n @Output('onOpen')\n onOpen: EventEmitter = new EventEmitter();\n\n @Output('onClose')\n onClose: EventEmitter = new EventEmitter();\n\n @Output('onScrollToEnd')\n onScrollToEnd: EventEmitter = new EventEmitter();\n\n @Output('onFilterSelectAll')\n onFilterSelectAll: EventEmitter> = new EventEmitter>();\n\n @Output('onFilterDeSelectAll')\n onFilterDeSelectAll: EventEmitter> = new EventEmitter>();\n\n @Output('onAddFilterNewItem')\n onAddFilterNewItem: EventEmitter = new EventEmitter();\n\n @Output('onGroupSelect')\n onGroupSelect: EventEmitter = new EventEmitter();\n\n @Output('onGroupDeSelect')\n onGroupDeSelect: EventEmitter = new EventEmitter();\n\n @ContentChild(Item, { static: true }) itemTempl: Item;\n @ContentChild(Badge, { static: true }) badgeTempl: Badge;\n @ContentChild(Search, { static: true }) searchTempl: Search;\n\n\n @ViewChild('searchInput', { static: true }) searchInput: ElementRef;\n @ViewChild('selectedList', { static: true }) selectedListElem: ElementRef;\n @ViewChild('dropdownList', { static: true }) dropdownListElem: ElementRef;\n\n @HostListener('document:keyup.escape', ['$event'])\n onEscapeDown(event: KeyboardEvent) {\n if (this.settings.escapeToClose) {\n this.closeDropdown();\n }\n }\n virtualdata: any = [];\n searchTerm$ = new Subject();\n\n filterPipe: ListFilterPipe;\n public selectedItems: Array;\n public isActive: boolean = false;\n public isSelectAll: boolean = false;\n public isFilterSelectAll: boolean = false;\n public isInfiniteFilterSelectAll: boolean = false;\n public groupedData: Array;\n filter: any;\n public chunkArray: any[];\n public scrollTop: any;\n public chunkIndex: any[] = [];\n public cachedItems: any[] = [];\n public groupCachedItems: any[] = [];\n public totalRows: any;\n public itemHeight: any = 41.6;\n public screenItemsLen: any;\n public cachedItemsLen: any;\n public totalHeight: any;\n public scroller: any;\n public maxBuffer: any;\n public lastScrolled: any;\n public lastRepaintY: any;\n public selectedListHeight: any;\n public filterLength: any = 0;\n public infiniteFilterLength: any = 0;\n public viewPortItems: any;\n public item: any;\n public dropdownListYOffset: number = 0;\n subscription: Subscription;\n defaultSettings: DropdownSettings = {\n singleSelection: false,\n text: 'Select',\n enableCheckAll: true,\n selectAllText: 'Select All',\n unSelectAllText: 'UnSelect All',\n filterSelectAllText: 'Select all filtered results',\n filterUnSelectAllText: 'UnSelect all filtered results',\n enableSearchFilter: false,\n searchBy: [],\n maxHeight: 300,\n badgeShowLimit: 999999999999,\n classes: '',\n disabled: false,\n searchPlaceholderText: 'Search',\n showCheckbox: true,\n noDataLabel: 'No Data Available',\n searchAutofocus: true,\n lazyLoading: false,\n labelKey: 'itemName',\n primaryKey: 'id',\n position: 'bottom',\n autoPosition: true,\n enableFilterSelectAll: true,\n selectGroup: false,\n addNewItemOnFilter: false,\n addNewButtonText: \"Add\",\n escapeToClose: true,\n clearAll: true\n }\n randomSize:boolean = true;\n public parseError: boolean;\n public filteredList: any = [];\n virtualScroollInit: boolean = false;\n @ViewChild(VirtualScrollerComponent, {static: false})\n private virtualScroller: VirtualScrollerComponent;\n constructor(public _elementRef: ElementRef, private cdr: ChangeDetectorRef, private ds: DataService) {\n this.searchTerm$.asObservable().pipe(\n debounceTime(1000),\n distinctUntilChanged(),\n tap(term => term)\n ).subscribe(val => {\n this.filterInfiniteList(val);\n });\n }\n ngOnInit() {\n this.settings = Object.assign(this.defaultSettings, this.settings);\n\n this.cachedItems = this.cloneArray(this.data);\n if (this.settings.position == 'top') {\n setTimeout(() => {\n this.selectedListHeight = { val: 0 };\n this.selectedListHeight.val = this.selectedListElem.nativeElement.clientHeight;\n });\n }\n this.subscription = this.ds.getData().subscribe(data => {\n if (data) {\n let len = 0;\n data.forEach((obj: any, i: any) => {\n if (!obj.hasOwnProperty('grpTitle')) {\n len++;\n }\n });\n this.filterLength = len;\n this.onFilterChange(data);\n }\n\n });\n setTimeout(() => {\n this.calculateDropdownDirection();\n });\n this.virtualScroollInit = false;\n }\n ngOnChanges(changes: SimpleChanges) {\n if (changes.data && !changes.data.firstChange) {\n if (this.settings.groupBy) {\n this.groupedData = this.transformData(this.data, this.settings.groupBy);\n if (this.data.length == 0) {\n this.selectedItems = [];\n }\n }\n this.cachedItems = this.cloneArray(this.data);\n }\n if (changes.settings && !changes.settings.firstChange) {\n this.settings = Object.assign(this.defaultSettings, this.settings);\n }\n if (changes.loading) {\n console.log(this.loading);\n }\n if(this.settings.lazyLoading && this.virtualScroollInit && changes.data){\n this.virtualdata = changes.data.currentValue;\n }\n }\n ngDoCheck() {\n if (this.selectedItems) {\n if (this.selectedItems.length == 0 || this.data.length == 0 || this.selectedItems.length < this.data.length) {\n this.isSelectAll = false;\n }\n }\n }\n ngAfterViewInit() {\n if (this.settings.lazyLoading) {\n // this._elementRef.nativeElement.getElementsByClassName(\"lazyContainer\")[0].addEventListener('scroll', this.onScroll.bind(this));\n }\n }\n ngAfterViewChecked() {\n if (this.selectedListElem.nativeElement.clientHeight && this.settings.position == 'top' && this.selectedListHeight) {\n this.selectedListHeight.val = this.selectedListElem.nativeElement.clientHeight;\n this.cdr.detectChanges();\n }\n }\n onItemClick(item: any, index: number, evt: Event) {\n if (this.settings.disabled) {\n return false;\n }\n\n let found = this.isSelected(item);\n let limit = this.selectedItems.length < this.settings.limitSelection ? true : false;\n\n if (!found) {\n if (this.settings.limitSelection) {\n if (limit) {\n this.addSelected(item);\n this.onSelect.emit(item);\n }\n }\n else {\n this.addSelected(item);\n this.onSelect.emit(item);\n }\n\n }\n else {\n this.removeSelected(item);\n this.onDeSelect.emit(item);\n }\n if (this.isSelectAll || this.data.length > this.selectedItems.length) {\n this.isSelectAll = false;\n }\n if (this.data.length == this.selectedItems.length) {\n this.isSelectAll = true;\n }\n if (this.settings.groupBy) {\n this.updateGroupInfo(item);\n }\n }\n public validate(c: FormControl): any {\n return null;\n }\n private onTouchedCallback: (_: any) => void = noop;\n private onChangeCallback: (_: any) => void = noop;\n\n writeValue(value: any) {\n if (value !== undefined && value !== null && value !== '') {\n if (this.settings.singleSelection) {\n if (this.settings.groupBy) {\n this.groupedData = this.transformData(this.data, this.settings.groupBy);\n this.groupCachedItems = this.cloneArray(this.groupedData);\n this.selectedItems = [value[0]];\n } else {\n try {\n\n if (value.length > 1) {\n this.selectedItems = [value[0]];\n throw new MyException(404, { \"msg\": \"Single Selection Mode, Selected Items cannot have more than one item.\" });\n }\n else {\n this.selectedItems = value;\n }\n }\n catch (e) {\n console.error(e.body.msg);\n }\n }\n\n }\n else {\n if (this.settings.limitSelection) {\n this.selectedItems = value.slice(0, this.settings.limitSelection);\n }\n else {\n this.selectedItems = value;\n }\n if (this.selectedItems.length === this.data.length && this.data.length > 0) {\n this.isSelectAll = true;\n }\n if (this.settings.groupBy) {\n this.groupedData = this.transformData(this.data, this.settings.groupBy);\n this.groupCachedItems = this.cloneArray(this.groupedData);\n }\n }\n } else {\n this.selectedItems = [];\n }\n }\n\n //From ControlValueAccessor interface\n registerOnChange(fn: any) {\n this.onChangeCallback = fn;\n }\n\n //From ControlValueAccessor interface\n registerOnTouched(fn: any) {\n this.onTouchedCallback = fn;\n }\n trackByFn(index: number, item: any) {\n return item[this.settings.primaryKey];\n }\n isSelected(clickedItem: any) {\n let found = false;\n this.selectedItems && this.selectedItems.forEach(item => {\n if (clickedItem[this.settings.primaryKey] === item[this.settings.primaryKey]) {\n found = true;\n }\n });\n return found;\n }\n addSelected(item: any) {\n if (this.settings.singleSelection) {\n this.selectedItems = [];\n this.selectedItems.push(item);\n this.closeDropdown();\n }\n else\n this.selectedItems.push(item);\n this.onChangeCallback(this.selectedItems);\n this.onTouchedCallback(this.selectedItems);\n }\n removeSelected(clickedItem: any) {\n this.selectedItems && this.selectedItems.forEach(item => {\n if (clickedItem[this.settings.primaryKey] === item[this.settings.primaryKey]) {\n this.selectedItems.splice(this.selectedItems.indexOf(item), 1);\n }\n });\n this.onChangeCallback(this.selectedItems);\n this.onTouchedCallback(this.selectedItems);\n }\n toggleDropdown(evt: any) {\n if (this.settings.disabled) {\n return false;\n }\n this.isActive = !this.isActive;\n if (this.isActive) {\n if (this.settings.searchAutofocus && this.searchInput && this.settings.enableSearchFilter && !this.searchTempl) {\n setTimeout(() => {\n this.searchInput.nativeElement.focus();\n }, 0);\n }\n this.onOpen.emit(true);\n }\n else {\n this.onClose.emit(false);\n }\n setTimeout(() => {\n this.calculateDropdownDirection();\n }, 0);\n if(this.settings.lazyLoading){\n this.virtualdata = this.data;\n this.virtualScroollInit = true;\n }\n evt.preventDefault();\n }\n public openDropdown() {\n if (this.settings.disabled) {\n return false;\n }\n this.isActive = true;\n if (this.settings.searchAutofocus && this.searchInput && this.settings.enableSearchFilter && !this.searchTempl) {\n setTimeout(() => {\n this.searchInput.nativeElement.focus();\n }, 0);\n }\n this.onOpen.emit(true);\n }\n public closeDropdown() {\n if (this.searchInput && this.settings.lazyLoading) {\n this.searchInput.nativeElement.value = \"\";\n }\n if (this.searchInput) {\n this.searchInput.nativeElement.value = \"\";\n }\n this.filter = \"\";\n this.isActive = false;\n this.onClose.emit(false);\n }\n public closeDropdownOnClickOut() {\n if (this.isActive) {\n if (this.searchInput && this.settings.lazyLoading) {\n this.searchInput.nativeElement.value = \"\";\n }\n if (this.searchInput) {\n this.searchInput.nativeElement.value = \"\";\n }\n this.filter = \"\";\n this.isActive = false;\n this.clearSearch();\n this.onClose.emit(false);\n }\n }\n toggleSelectAll() {\n if (!this.isSelectAll) {\n this.selectedItems = [];\n if (this.settings.groupBy) {\n this.groupedData.forEach((obj) => {\n obj.selected = true;\n })\n this.groupCachedItems.forEach((obj) => {\n obj.selected = true;\n })\n }\n this.selectedItems = this.data.slice();\n this.isSelectAll = true;\n this.onChangeCallback(this.selectedItems);\n this.onTouchedCallback(this.selectedItems);\n\n this.onSelectAll.emit(this.selectedItems);\n }\n else {\n if (this.settings.groupBy) {\n this.groupedData.forEach((obj) => {\n obj.selected = false;\n });\n this.groupCachedItems.forEach((obj) => {\n obj.selected = false;\n })\n }\n this.selectedItems = [];\n this.isSelectAll = false;\n this.onChangeCallback(this.selectedItems);\n this.onTouchedCallback(this.selectedItems);\n\n this.onDeSelectAll.emit(this.selectedItems);\n }\n }\n filterGroupedList() {\n if (this.filter == \"\" || this.filter == null) {\n this.clearSearch();\n return;\n }\n this.groupedData = this.cloneArray(this.groupCachedItems);\n this.groupedData = this.groupedData.filter(obj => {\n let arr = obj.list.filter(t => {\n return t.itemName.toLowerCase().indexOf(this.filter.toLowerCase()) > -1;\n });\n obj.list = arr;\n return arr.some(cat => {\n return cat.itemName.toLowerCase().indexOf(this.filter.toLowerCase()) > -1;\n }\n )\n });\n console.log(this.groupedData);\n }\n toggleFilterSelectAll() {\n if (!this.isFilterSelectAll) {\n let added = [];\n if (this.settings.groupBy) {\n this.groupedData.forEach((item: any) => {\n if (item.list) {\n item.list.forEach((el: any) => {\n if (!this.isSelected(el)) {\n this.addSelected(el);\n added.push(el);\n }\n });\n }\n this.updateGroupInfo(item);\n\n });\n\n }\n else {\n this.ds.getFilteredData().forEach((item: any) => {\n if (!this.isSelected(item)) {\n this.addSelected(item);\n added.push(item);\n }\n\n });\n }\n\n this.isFilterSelectAll = true;\n this.onFilterSelectAll.emit(added);\n }\n else {\n let removed = [];\n if (this.settings.groupBy) {\n this.groupedData.forEach((item: any) => {\n if (item.list) {\n item.list.forEach((el: any) => {\n if (this.isSelected(el)) {\n this.removeSelected(el);\n removed.push(el);\n }\n });\n }\n });\n }\n else {\n this.ds.getFilteredData().forEach((item: any) => {\n if (this.isSelected(item)) {\n this.removeSelected(item);\n removed.push(item);\n }\n\n });\n }\n this.isFilterSelectAll = false;\n this.onFilterDeSelectAll.emit(removed);\n }\n }\n toggleInfiniteFilterSelectAll() {\n if (!this.isInfiniteFilterSelectAll) {\n this.data.forEach((item: any) => {\n if (!this.isSelected(item)) {\n this.addSelected(item);\n }\n\n });\n this.isInfiniteFilterSelectAll = true;\n }\n else {\n this.data.forEach((item: any) => {\n if (this.isSelected(item)) {\n this.removeSelected(item);\n }\n\n });\n this.isInfiniteFilterSelectAll = false;\n }\n }\n clearSearch() {\n if (this.settings.groupBy) {\n this.groupedData = [];\n this.groupCachedItems.forEach((obj) => {\n obj.selected = false;\n })\n this.groupedData = this.cloneArray(this.groupCachedItems);\n }\n this.filter = \"\";\n this.isFilterSelectAll = false;\n\n }\n onFilterChange(data: any) {\n if (this.filter && this.filter == \"\" || data.length == 0) {\n this.isFilterSelectAll = false;\n }\n let cnt = 0;\n data.forEach((item: any) => {\n\n if (!item.hasOwnProperty('grpTitle') && this.isSelected(item)) {\n cnt++;\n }\n });\n\n if (cnt > 0 && this.filterLength == cnt) {\n this.isFilterSelectAll = true;\n }\n else if (cnt > 0 && this.filterLength != cnt) {\n this.isFilterSelectAll = false;\n }\n this.cdr.detectChanges();\n }\n cloneArray(arr: any) {\n let i, copy;\n\n if (Array.isArray(arr)) {\n return JSON.parse(JSON.stringify(arr));\n } else if (typeof arr === 'object') {\n throw 'Cannot clone array containing an object!';\n } else {\n return arr;\n }\n }\n updateGroupInfo(item: any) {\n let key = this.settings.groupBy;\n this.groupedData.forEach((obj: any) => {\n let cnt = 0;\n if (obj.grpTitle && (item[key] == obj[key])) {\n if (obj.list) {\n obj.list.forEach((el: any) => {\n if (this.isSelected(el)) {\n cnt++;\n }\n });\n }\n }\n if (obj.list && (cnt === obj.list.length) && (item[key] == obj[key])) {\n obj.selected = true;\n }\n else if (obj.list && (cnt != obj.list.length) && (item[key] == obj[key])) {\n obj.selected = false;\n }\n });\n this.groupCachedItems.forEach((obj: any) => {\n let cnt = 0;\n if (obj.grpTitle && (item[key] == obj[key])) {\n if (obj.list) {\n obj.list.forEach((el: any) => {\n if (this.isSelected(el)) {\n cnt++;\n }\n });\n }\n }\n if (obj.list && (cnt === obj.list.length) && (item[key] == obj[key])) {\n obj.selected = true;\n }\n else if (obj.list && (cnt != obj.list.length) && (item[key] == obj[key])) {\n obj.selected = false;\n }\n });\n }\n transformData(arr: Array, field: any): Array {\n const groupedObj: any = arr.reduce((prev: any, cur: any) => {\n if (!prev[cur[field]]) {\n prev[cur[field]] = [cur];\n } else {\n prev[cur[field]].push(cur);\n }\n return prev;\n }, {});\n const tempArr: any = [];\n Object.keys(groupedObj).map((x: any) => {\n let obj: any = {};\n obj[\"grpTitle\"] = true;\n obj[this.settings.labelKey] = x;\n obj[this.settings.groupBy] = x;\n obj['selected'] = false;\n obj['list'] = [];\n let cnt = 0;\n groupedObj[x].forEach((item: any) => {\n item['list'] = [];\n obj.list.push(item);\n if (this.isSelected(item)) {\n cnt++;\n }\n });\n if (cnt == obj.list.length) {\n obj.selected = true;\n }\n else {\n obj.selected = false;\n }\n tempArr.push(obj);\n // obj.list.forEach((item: any) => {\n // tempArr.push(item);\n // });\n });\n return tempArr;\n }\n public filterInfiniteList(evt: any) {\n let filteredElems: Array = [];\n if (this.settings.groupBy) {\n this.groupedData = this.groupCachedItems.slice();\n }\n else {\n this.data = this.cachedItems.slice();\n this.virtualdata = this.cachedItems.slice();\n }\n\n if ((evt != null || evt != '') && !this.settings.groupBy) {\n if (this.settings.searchBy.length > 0) {\n for (let t = 0; t < this.settings.searchBy.length; t++) {\n\n this.virtualdata.filter((el: any) => {\n if (el[this.settings.searchBy[t].toString()].toString().toLowerCase().indexOf(evt.toString().toLowerCase()) >= 0) {\n filteredElems.push(el);\n }\n });\n }\n\n }\n else {\n this.virtualdata.filter(function (el: any) {\n for (let prop in el) {\n if (el[prop].toString().toLowerCase().indexOf(evt.toString().toLowerCase()) >= 0) {\n filteredElems.push(el);\n break;\n }\n }\n });\n }\n this.virtualdata = [];\n this.virtualdata = filteredElems;\n this.infiniteFilterLength = this.virtualdata.length;\n }\n if (evt.toString() != '' && this.settings.groupBy) {\n this.groupedData.filter(function (el: any) {\n if (el.hasOwnProperty('grpTitle')) {\n filteredElems.push(el);\n }\n else {\n for (let prop in el) {\n if (el[prop].toString().toLowerCase().indexOf(evt.toString().toLowerCase()) >= 0) {\n filteredElems.push(el);\n break;\n }\n }\n }\n });\n this.groupedData = [];\n this.groupedData = filteredElems;\n this.infiniteFilterLength = this.groupedData.length;\n }\n else if (evt.toString() == '' && this.cachedItems.length > 0) {\n this.virtualdata = [];\n this.virtualdata = this.cachedItems;\n this.infiniteFilterLength = 0;\n }\n this.virtualScroller.refresh();\n }\n resetInfiniteSearch() {\n this.filter = \"\";\n this.isInfiniteFilterSelectAll = false;\n this.virtualdata = [];\n this.virtualdata = this.cachedItems;\n this.groupedData = this.groupCachedItems;\n this.infiniteFilterLength = 0;\n }\n onScrollEnd(e: any) {\n if(e.endIndex === this.data.length - 1 || e.startIndex === 0){\n \n }\n this.onScrollToEnd.emit(e);\n \n }\n ngOnDestroy() {\n if (this.subscription) {\n this.subscription.unsubscribe();\n }\n\n }\n selectGroup(item: any) {\n if (item.selected) {\n item.selected = false;\n item.list.forEach((obj: any) => {\n this.removeSelected(obj);\n });\n this.updateGroupInfo(item);\n this.onGroupSelect.emit(item);\n }\n else {\n item.selected = true;\n item.list.forEach((obj: any) => {\n if (!this.isSelected(obj)) {\n this.addSelected(obj);\n }\n\n });\n this.updateGroupInfo(item);\n this.onGroupDeSelect.emit(item);\n }\n\n\n }\n addFilterNewItem() {\n this.onAddFilterNewItem.emit(this.filter);\n this.filterPipe = new ListFilterPipe(this.ds);\n this.filterPipe.transform(this.data, this.filter, this.settings.searchBy);\n }\n calculateDropdownDirection() {\n let shouldOpenTowardsTop = this.settings.position == 'top';\n if (this.settings.autoPosition) {\n const dropdownHeight = this.dropdownListElem.nativeElement.clientHeight;\n const viewportHeight = document.documentElement.clientHeight;\n const selectedListBounds = this.selectedListElem.nativeElement.getBoundingClientRect();\n\n const spaceOnTop: number = selectedListBounds.top;\n const spaceOnBottom: number = viewportHeight - selectedListBounds.top;\n if (spaceOnBottom < spaceOnTop && dropdownHeight < spaceOnTop) {\n this.openTowardsTop(true);\n }\n else {\n this.openTowardsTop(false);\n }\n // Keep preference if there is not enough space on either the top or bottom\n /* \t\t\tif (spaceOnTop || spaceOnBottom) {\n if (shouldOpenTowardsTop) {\n shouldOpenTowardsTop = spaceOnTop;\n } else {\n shouldOpenTowardsTop = !spaceOnBottom;\n }\n } */\n }\n\n }\n openTowardsTop(value: boolean) {\n if (value && this.selectedListElem.nativeElement.clientHeight) {\n this.dropdownListYOffset = 15 + this.selectedListElem.nativeElement.clientHeight;\n } else {\n this.dropdownListYOffset = 0;\n }\n }\n clearSelection(e: any) {\n this.clearSearch();\n this.selectedItems = [];\n this.onDeSelectAll.emit(this.selectedItems);\n }\n}\n\n@NgModule({\n imports: [CommonModule, FormsModule, VirtualScrollerModule],\n declarations: [AngularMultiSelect, ClickOutsideDirective, ScrollDirective, styleDirective, ListFilterPipe, Item, TemplateRenderer, Badge, Search, setPosition, CIcon],\n exports: [AngularMultiSelect, ClickOutsideDirective, ScrollDirective, styleDirective, ListFilterPipe, Item, TemplateRenderer, Badge, Search, setPosition, CIcon],\n providers: [DataService]\n})\nexport class AngularMultiSelectModule { }\n","export class MyException {\n\tstatus : number;\n\tbody : any;\n\tconstructor(status : number, body : any) {\n\t\tthis.status = status;\n\t\tthis.body = body;\n\t}\n\t\n}","import { Injectable } from '@angular/core';\nimport { Observable, Subject } from 'rxjs';\n\n\n@Injectable()\nexport class DataService {\n\n filteredData: any = [];\n private subject = new Subject();\n\n setData(data: any) {\n\n this.filteredData = data;\n this.subject.next(data);\n }\n getData(): Observable {\n return this.subject.asObservable();\n }\n getFilteredData() {\n if (this.filteredData && this.filteredData.length > 0) {\n return this.filteredData;\n }\n else {\n return [];\n }\n }\n\n}","\n
\n
\n \n
\n ","import {\n\tComponent,\n\tContentChild,\n\tElementRef,\n\tEventEmitter,\n\tInject,\n\tOptional,\n\tInput,\n\tNgModule,\n\tNgZone,\n\tOnChanges,\n\tOnDestroy,\n\tOnInit,\n\tOutput,\n\tRenderer2,\n\tViewChild,\n\tChangeDetectorRef,\n\tInjectionToken\n} from '@angular/core';\n\nimport { PLATFORM_ID } from '@angular/core';\nimport { isPlatformServer } from '@angular/common';\n\nimport { CommonModule } from '@angular/common';\n\nimport * as tween from '@tweenjs/tween.js'\nimport { VirtualScrollerDefaultOptions } from './defaultoptions';\nimport { IPageInfo } from './ipageinfo';\nimport { IViewport } from './iviewport';\n\nimport { WrapGroupDimensions } from './wrapgroupdimensions';\nimport { WrapGroupDimension } from './wrapgroupdimension';\n\nimport { IDimensions } from './idimension';\n\n \n\n\n\nexport function VIRTUAL_SCROLLER_DEFAULT_OPTIONS_FACTORY(): VirtualScrollerDefaultOptions {\n\treturn {\n\t\tscrollThrottlingTime: 0,\n\t\tscrollDebounceTime: 0,\n\t\tscrollAnimationTime: 750,\n\t\tcheckResizeInterval: 1000,\n\t\tresizeBypassRefreshThreshold: 5,\n\t\tmodifyOverflowStyleOfParentScroll: true,\n\t\tstripedTable: false\n\t};\n}\n\n\n\n\n\n\n\n\n\n\n\n@Component({\n\tselector: 'virtual-scroller,[virtualScroller]',\n\texportAs: 'virtualScroller',\n\ttemplate: `\n
\n
\n \n
\n `,\n\thost: {\n\t\t'[class.horizontal]': \"horizontal\",\n\t\t'[class.vertical]': \"!horizontal\",\n\t\t'[class.selfScroll]': \"!parentScroll\"\n\t},\n\tstyles: [`\n :host {\n position: relative;\n\t display: block;\n -webkit-overflow-scrolling: touch;\n }\n\t\n\t:host.horizontal.selfScroll {\n overflow-y: visible;\n overflow-x: auto;\n\t}\n\t:host.vertical.selfScroll {\n overflow-y: auto;\n overflow-x: visible;\n\t}\n\t\n .scrollable-content {\n top: 0;\n left: 0;\n width: 100%;\n height: 100%;\n max-width: 100vw;\n max-height: 100vh;\n position: absolute;\n }\n\n\t.scrollable-content ::ng-deep > * {\n\t\tbox-sizing: border-box;\n\t}\n\t\n\t:host.horizontal {\n\t\twhite-space: nowrap;\n\t}\n\t\n\t:host.horizontal .scrollable-content {\n\t\tdisplay: flex;\n\t}\n\t\n\t:host.horizontal .scrollable-content ::ng-deep > * {\n\t\tflex-shrink: 0;\n\t\tflex-grow: 0;\n\t\twhite-space: initial;\n\t}\n\t\n .total-padding {\n width: 1px;\n opacity: 0;\n }\n \n :host.horizontal .total-padding {\n height: 100%;\n }\n `]\n})\nexport class VirtualScrollerComponent implements OnInit, OnChanges, OnDestroy {\n\tpublic viewPortItems: any[];\n\tpublic window = window;\n\n\tpublic get viewPortInfo(): IPageInfo {\n\t\tlet pageInfo: IViewport = this.previousViewPort || {};\n\t\treturn {\n\t\t\tstartIndex: pageInfo.startIndex || 0,\n\t\t\tendIndex: pageInfo.endIndex || 0,\n\t\t\tscrollStartPosition: pageInfo.scrollStartPosition || 0,\n\t\t\tscrollEndPosition: pageInfo.scrollEndPosition || 0,\n\t\t\tmaxScrollPosition: pageInfo.maxScrollPosition || 0,\n\t\t\tstartIndexWithBuffer: pageInfo.startIndexWithBuffer || 0,\n\t\t\tendIndexWithBuffer: pageInfo.endIndexWithBuffer || 0\n\t\t};\n\t}\n\n\t@Input()\n\tpublic executeRefreshOutsideAngularZone: boolean = false;\n\n\tprotected _enableUnequalChildrenSizes: boolean = false;\n\t@Input()\n\tpublic get enableUnequalChildrenSizes(): boolean {\n\t\treturn this._enableUnequalChildrenSizes;\n\t}\n\tpublic set enableUnequalChildrenSizes(value: boolean) {\n\t\tif (this._enableUnequalChildrenSizes === value) {\n\t\t\treturn;\n\t\t}\n\n\t\tthis._enableUnequalChildrenSizes = value;\n\t\tthis.minMeasuredChildWidth = undefined;\n\t\tthis.minMeasuredChildHeight = undefined;\n\t}\n\n\t@Input()\n\tpublic useMarginInsteadOfTranslate: boolean = false;\n\n\t@Input()\n\tpublic modifyOverflowStyleOfParentScroll: boolean;\n\n\t@Input()\n\tpublic stripedTable: boolean;\n\n\t@Input()\n\tpublic scrollbarWidth: number;\n\n\t@Input()\n\tpublic scrollbarHeight: number;\n\n\t@Input()\n\tpublic childWidth: number;\n\n\t@Input()\n\tpublic childHeight: number;\n\n\t@Input()\n\tpublic ssrChildWidth: number;\n\n\t@Input()\n\tpublic ssrChildHeight: number;\n\n\t@Input()\n\tpublic ssrViewportWidth: number = 1920;\n\n\t@Input()\n\tpublic ssrViewportHeight: number = 1080;\n\n\tprotected _bufferAmount: number = 0;\n\t@Input()\n\tpublic get bufferAmount(): number {\n\t\tif (typeof (this._bufferAmount) === 'number' && this._bufferAmount >= 0) {\n\t\t\treturn this._bufferAmount;\n\t\t} else {\n\t\t\treturn this.enableUnequalChildrenSizes ? 5 : 0;\t\n\t\t}\n\t}\n\tpublic set bufferAmount(value: number) {\n\t\tthis._bufferAmount = value;\n\t}\n\n\t@Input()\n\tpublic scrollAnimationTime: number;\n\n\t@Input()\n\tpublic resizeBypassRefreshThreshold: number;\n\n\tprotected _scrollThrottlingTime: number;\n\t@Input()\n\tpublic get scrollThrottlingTime(): number {\n\t\treturn this._scrollThrottlingTime;\n\t}\n\tpublic set scrollThrottlingTime(value: number) {\n\t\tthis._scrollThrottlingTime = value;\n\t\tthis.updateOnScrollFunction();\n\t}\n\n\tprotected _scrollDebounceTime: number;\n\t@Input()\n\tpublic get scrollDebounceTime(): number {\n\t\treturn this._scrollDebounceTime;\n\t}\n\tpublic set scrollDebounceTime(value: number) {\n\t\tthis._scrollDebounceTime = value;\n\t\tthis.updateOnScrollFunction();\n\t}\n\n\tprotected onScroll: () => void;\n\tprotected updateOnScrollFunction(): void {\n\t\tif (this.scrollDebounceTime) {\n\t\t\tthis.onScroll = this.debounce(() => {\n\t\t\t\tthis.refresh_internal(false);\n\t\t\t}, this.scrollDebounceTime);\n\t\t}\n\t\telse if (this.scrollThrottlingTime) {\n\t\t\tthis.onScroll = this.throttleTrailing(() => {\n\t\t\t\tthis.refresh_internal(false);\n\t\t\t}, this.scrollThrottlingTime);\n\t\t}\n\t\telse {\n\t\t\tthis.onScroll = () => {\n\t\t\t\tthis.refresh_internal(false);\n\t\t\t};\n\t\t}\n\t}\n\n\tprotected checkScrollElementResizedTimer: number;\n\tprotected _checkResizeInterval: number;\n\t@Input()\n\tpublic get checkResizeInterval(): number {\n\t\treturn this._checkResizeInterval;\n\t}\n\tpublic set checkResizeInterval(value: number) {\n\t\tif (this._checkResizeInterval === value) {\n\t\t\treturn;\n\t\t}\n\n\t\tthis._checkResizeInterval = value;\n\t\tthis.addScrollEventHandlers();\n\t}\n\n\tprotected _items: any[] = [];\n\t@Input()\n\tpublic get items(): any[] {\n\t\treturn this._items;\n\t}\n\tpublic set items(value: any[]) {\n\t\tif (value === this._items) {\n\t\t\treturn;\n\t\t}\n\n\t\tthis._items = value || [];\n\t\tthis.refresh_internal(true);\n\t}\n\n\t@Input()\n\tpublic compareItems: (item1: any, item2: any) => boolean = (item1: any, item2: any) => item1 === item2;\n\n\tprotected _horizontal: boolean;\n\t@Input()\n\tpublic get horizontal(): boolean {\n\t\treturn this._horizontal;\n\t}\n\tpublic set horizontal(value: boolean) {\n\t\tthis._horizontal = value;\n\t\tthis.updateDirection();\n\t}\n\n\tprotected revertParentOverscroll(): void {\n\t\tconst scrollElement = this.getScrollElement();\n\t\tif (scrollElement && this.oldParentScrollOverflow) {\n\t\t\tscrollElement.style['overflow-y'] = this.oldParentScrollOverflow.y;\n\t\t\tscrollElement.style['overflow-x'] = this.oldParentScrollOverflow.x;\n\t\t}\n\n\t\tthis.oldParentScrollOverflow = undefined;\n\t}\n\n\tprotected oldParentScrollOverflow: { x: string, y: string };\n\tprotected _parentScroll: Element | Window;\n\t@Input()\n\tpublic get parentScroll(): Element | Window {\n\t\treturn this._parentScroll;\n\t}\n\tpublic set parentScroll(value: Element | Window) {\n\t\tif (this._parentScroll === value) {\n\t\t\treturn;\n\t\t}\n\n\t\tthis.revertParentOverscroll();\n\t\tthis._parentScroll = value;\n\t\tthis.addScrollEventHandlers();\n\n\t\tconst scrollElement = this.getScrollElement();\n\t\tif (this.modifyOverflowStyleOfParentScroll && scrollElement !== this.element.nativeElement) {\n\t\t\tthis.oldParentScrollOverflow = { x: scrollElement.style['overflow-x'], y: scrollElement.style['overflow-y'] };\n\t\t\tscrollElement.style['overflow-y'] = this.horizontal ? 'visible' : 'auto';\n\t\t\tscrollElement.style['overflow-x'] = this.horizontal ? 'auto' : 'visible';\n\t\t}\n\t}\n\n\t@Output()\n\tpublic vsUpdate: EventEmitter = new EventEmitter();\n\n\t@Output()\n\tpublic vsChange: EventEmitter = new EventEmitter();\n\n\t@Output()\n\tpublic vsStart: EventEmitter = new EventEmitter();\n\n\t@Output()\n\tpublic vsEnd: EventEmitter = new EventEmitter();\n\n\t@ViewChild('content', { read: ElementRef, static: false })\n\tprotected contentElementRef: ElementRef;\n\n\t@ViewChild('invisiblePadding', { read: ElementRef, static: false })\n\tprotected invisiblePaddingElementRef: ElementRef;\n\n\t@ContentChild('header', { read: ElementRef, static: false })\n\tprotected headerElementRef: ElementRef;\n\n\t@ContentChild('container', { read: ElementRef, static: false })\n\tprotected containerElementRef: ElementRef;\n\n\tpublic ngOnInit(): void {\n\t\tthis.addScrollEventHandlers();\n\t}\n\n\tpublic ngOnDestroy(): void {\n\t\tthis.removeScrollEventHandlers();\n\t\tthis.revertParentOverscroll();\n\t}\n\n\tpublic ngOnChanges(changes: any): void {\n\t\tlet indexLengthChanged = this.cachedItemsLength !== this.items.length;\n\t\tthis.cachedItemsLength = this.items.length;\n\n\t\tconst firstRun: boolean = !changes.items || !changes.items.previousValue || changes.items.previousValue.length === 0;\n\t\tthis.refresh_internal(indexLengthChanged || firstRun);\n\t}\n\n\t\n\tpublic ngDoCheck(): void {\n\t\tif (this.cachedItemsLength !== this.items.length) {\n\t\t\tthis.cachedItemsLength = this.items.length;\n\t\t\tthis.refresh_internal(true);\n\t\t\treturn;\n\t\t}\n\t\t\n\t\tif (this.previousViewPort && this.viewPortItems && this.viewPortItems.length > 0) {\n\t\t\tlet itemsArrayChanged = false;\n\t\t\tfor (let i = 0; i < this.viewPortItems.length; ++i) {\n\t\t\t\tif (!this.compareItems(this.items[this.previousViewPort.startIndexWithBuffer + i], this.viewPortItems[i])) {\n\t\t\t\t\titemsArrayChanged = true;\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t}\n\t\t\tif (itemsArrayChanged) {\n\t\t\t\tthis.refresh_internal(true);\n\t\t\t}\n\t\t}\n\t}\n\n\tpublic refresh(): void {\n\t\tthis.refresh_internal(true);\n\t}\n\n\tpublic invalidateAllCachedMeasurements(): void {\n\t\tthis.wrapGroupDimensions = {\n\t\t\tmaxChildSizePerWrapGroup: [],\n\t\t\tnumberOfKnownWrapGroupChildSizes: 0,\n\t\t\tsumOfKnownWrapGroupChildWidths: 0,\n\t\t\tsumOfKnownWrapGroupChildHeights: 0\n\t\t};\n\n\t\tthis.minMeasuredChildWidth = undefined;\n\t\tthis.minMeasuredChildHeight = undefined;\n\n\t\tthis.refresh_internal(false);\n\t}\n\n\tpublic invalidateCachedMeasurementForItem(item: any): void {\n\t\tif (this.enableUnequalChildrenSizes) {\n\t\t\tlet index = this.items && this.items.indexOf(item);\n\t\t\tif (index >= 0) {\n\t\t\t\tthis.invalidateCachedMeasurementAtIndex(index);\n\t\t\t}\n\t\t} else {\n\t\t\tthis.minMeasuredChildWidth = undefined;\n\t\t\tthis.minMeasuredChildHeight = undefined;\n\t\t}\n\n\t\tthis.refresh_internal(false);\n\t}\n\n\tpublic invalidateCachedMeasurementAtIndex(index: number): void {\n\t\tif (this.enableUnequalChildrenSizes) {\n\t\t\tlet cachedMeasurement = this.wrapGroupDimensions.maxChildSizePerWrapGroup[index];\n\t\t\tif (cachedMeasurement) {\n\t\t\t\tthis.wrapGroupDimensions.maxChildSizePerWrapGroup[index] = undefined;\n\t\t\t\t--this.wrapGroupDimensions.numberOfKnownWrapGroupChildSizes;\n\t\t\t\tthis.wrapGroupDimensions.sumOfKnownWrapGroupChildWidths -= cachedMeasurement.childWidth || 0;\n\t\t\t\tthis.wrapGroupDimensions.sumOfKnownWrapGroupChildHeights -= cachedMeasurement.childHeight || 0;\n\t\t\t}\n\t\t} else {\n\t\t\tthis.minMeasuredChildWidth = undefined;\n\t\t\tthis.minMeasuredChildHeight = undefined;\n\t\t}\n\n\t\tthis.refresh_internal(false);\n\t}\n\n\tpublic scrollInto(item: any, alignToBeginning: boolean = true, additionalOffset: number = 0, animationMilliseconds: number = undefined, animationCompletedCallback: () => void = undefined): void {\n\t\tlet index: number = this.items.indexOf(item);\n\t\tif (index === -1) {\n\t\t\treturn;\n\t\t}\n\n\t\tthis.scrollToIndex(index, alignToBeginning, additionalOffset, animationMilliseconds, animationCompletedCallback);\n\t}\n\n\tpublic scrollToIndex(index: number, alignToBeginning: boolean = true, additionalOffset: number = 0, animationMilliseconds: number = undefined, animationCompletedCallback: () => void = undefined): void {\n\t\tlet maxRetries: number = 5;\n\n\t\tlet retryIfNeeded = () => {\n\t\t\t--maxRetries;\n\t\t\tif (maxRetries <= 0) {\n\t\t\t\tif (animationCompletedCallback) {\n\t\t\t\t\tanimationCompletedCallback();\n\t\t\t\t}\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tlet dimensions = this.calculateDimensions();\n\t\t\tlet desiredStartIndex = Math.min(Math.max(index, 0), dimensions.itemCount - 1);\n\t\t\tif (this.previousViewPort.startIndex === desiredStartIndex) {\n\t\t\t\tif (animationCompletedCallback) {\n\t\t\t\t\tanimationCompletedCallback();\n\t\t\t\t}\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tthis.scrollToIndex_internal(index, alignToBeginning, additionalOffset, 0, retryIfNeeded);\n\t\t};\n\n\t\tthis.scrollToIndex_internal(index, alignToBeginning, additionalOffset, animationMilliseconds, retryIfNeeded);\n\t}\n\n\tprotected scrollToIndex_internal(index: number, alignToBeginning: boolean = true, additionalOffset: number = 0, animationMilliseconds: number = undefined, animationCompletedCallback: () => void = undefined): void {\n\t\tanimationMilliseconds = animationMilliseconds === undefined ? this.scrollAnimationTime : animationMilliseconds;\n\n\t\tlet dimensions = this.calculateDimensions();\n\t\tlet scroll = this.calculatePadding(index, dimensions) + additionalOffset;\n\t\tif (!alignToBeginning) {\n\t\t\tscroll -= dimensions.wrapGroupsPerPage * dimensions[this._childScrollDim];\n\t\t}\n\n\t\tthis.scrollToPosition(scroll, animationMilliseconds, animationCompletedCallback);\n\t}\n\n\tpublic scrollToPosition(scrollPosition: number, animationMilliseconds: number = undefined, animationCompletedCallback: () => void = undefined): void {\n\t\tscrollPosition += this.getElementsOffset();\n\n\t\tanimationMilliseconds = animationMilliseconds === undefined ? this.scrollAnimationTime : animationMilliseconds;\n\n\t\tlet scrollElement = this.getScrollElement();\n\n\t\tlet animationRequest: number;\n\n\t\tif (this.currentTween) {\n\t\t\tthis.currentTween.stop();\n\t\t\tthis.currentTween = undefined;\n\t\t}\n\n\t\tif (!animationMilliseconds) {\n\t\t\tthis.renderer.setProperty(scrollElement, this._scrollType, scrollPosition);\n\t\t\tthis.refresh_internal(false, animationCompletedCallback);\n\t\t\treturn;\n\t\t}\n\n\t\tconst tweenConfigObj = { scrollPosition: scrollElement[this._scrollType] };\n\n\t\tlet newTween = new tween.Tween(tweenConfigObj)\n\t\t\t.to({ scrollPosition }, animationMilliseconds)\n\t\t\t.easing(tween.Easing.Quadratic.Out)\n\t\t\t.onUpdate((data) => {\n\t\t\t\tif (isNaN(data.scrollPosition)) {\n\t\t\t\t\treturn;\n\t\t\t\t}\n\t\t\t\tthis.renderer.setProperty(scrollElement, this._scrollType, data.scrollPosition);\n\t\t\t\tthis.refresh_internal(false);\n\t\t\t})\n\t\t\t.onStop(() => {\n\t\t\t\tcancelAnimationFrame(animationRequest);\n\t\t\t})\n\t\t\t.start();\n\n\t\tconst animate = (time?: number) => {\n\t\t\tif (!newTween[\"isPlaying\"]()) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tnewTween.update(time);\n\t\t\tif (tweenConfigObj.scrollPosition === scrollPosition) {\n\t\t\t\tthis.refresh_internal(false, animationCompletedCallback);\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tthis.zone.runOutsideAngular(() => {\n\t\t\t\tanimationRequest = requestAnimationFrame(animate);\n\t\t\t});\n\t\t};\n\n\t\tanimate();\n\t\tthis.currentTween = newTween;\n\t}\n\n\tprotected isAngularUniversalSSR: boolean;\n\n\tconstructor(protected readonly element: ElementRef,\n\t\tprotected readonly renderer: Renderer2,\n\t\tprotected readonly zone: NgZone,\n\t\tprotected changeDetectorRef: ChangeDetectorRef,\n\t\t@Inject(PLATFORM_ID) platformId: Object,\n\t\t@Optional() @Inject('virtual-scroller-default-options')\n\t\toptions: VirtualScrollerDefaultOptions) {\n\t\t\t\n\t\tthis.isAngularUniversalSSR = isPlatformServer(platformId);\n\n\t\tthis.scrollThrottlingTime = options.scrollThrottlingTime;\n\t\tthis.scrollDebounceTime = options.scrollDebounceTime;\n\t\tthis.scrollAnimationTime = options.scrollAnimationTime;\n\t\tthis.scrollbarWidth = options.scrollbarWidth;\n\t\tthis.scrollbarHeight = options.scrollbarHeight;\n\t\tthis.checkResizeInterval = options.checkResizeInterval;\n\t\tthis.resizeBypassRefreshThreshold = options.resizeBypassRefreshThreshold;\n\t\tthis.modifyOverflowStyleOfParentScroll = options.modifyOverflowStyleOfParentScroll;\n\t\tthis.stripedTable = options.stripedTable;\n\n\t\tthis.horizontal = false;\n\t\tthis.resetWrapGroupDimensions();\n\t}\n\t\n\tprotected getElementSize(element: HTMLElement) : ClientRect {\n\t\tlet result = element.getBoundingClientRect();\n\t\tlet styles = getComputedStyle(element);\n\t\tlet marginTop = parseInt(styles['margin-top'], 10) || 0;\n\t\tlet marginBottom = parseInt(styles['margin-bottom'], 10) || 0;\n\t\tlet marginLeft = parseInt(styles['margin-left'], 10) || 0;\n\t\tlet marginRight = parseInt(styles['margin-right'], 10) || 0;\n\t\t\n\t\treturn {\n\t\t\ttop: result.top + marginTop,\n\t\t\tbottom: result.bottom + marginBottom,\n\t\t\tleft: result.left + marginLeft,\n\t\t\tright: result.right + marginRight,\n\t\t\twidth: result.width + marginLeft + marginRight,\n\t\t\theight: result.height + marginTop + marginBottom\n\t\t};\n\t}\n\n\tprotected previousScrollBoundingRect: ClientRect;\n\tprotected checkScrollElementResized(): void {\n\t\tlet boundingRect = this.getElementSize(this.getScrollElement());\n\n\t\tlet sizeChanged: boolean;\n\t\tif (!this.previousScrollBoundingRect) {\n\t\t\tsizeChanged = true;\n\t\t} else {\n\t\t\tlet widthChange = Math.abs(boundingRect.width - this.previousScrollBoundingRect.width);\n\t\t\tlet heightChange = Math.abs(boundingRect.height - this.previousScrollBoundingRect.height);\n\t\t\tsizeChanged = widthChange > this.resizeBypassRefreshThreshold || heightChange > this.resizeBypassRefreshThreshold;\n\t\t}\n\n\t\tif (sizeChanged) {\n\t\t\tthis.previousScrollBoundingRect = boundingRect;\n\t\t\tif (boundingRect.width > 0 && boundingRect.height > 0) {\n\t\t\t\tthis.refresh_internal(false);\n\t\t\t}\n\t\t}\n\t}\n\n\tprotected _invisiblePaddingProperty;\n\tprotected _offsetType;\n\tprotected _scrollType;\n\tprotected _pageOffsetType;\n\tprotected _childScrollDim;\n\tprotected _translateDir;\n\tprotected _marginDir;\n\tprotected updateDirection(): void {\n\t\tif (this.horizontal) {\n\t\t\tthis._invisiblePaddingProperty = 'width';\n\t\t\tthis._offsetType = 'offsetLeft';\n\t\t\tthis._pageOffsetType = 'pageXOffset';\n\t\t\tthis._childScrollDim = 'childWidth';\n\t\t\tthis._marginDir = 'margin-left';\n\t\t\tthis._translateDir = 'translateX';\n\t\t\tthis._scrollType = 'scrollLeft';\n\t\t}\n\t\telse {\n\t\t\tthis._invisiblePaddingProperty = 'height';\n\t\t\tthis._offsetType = 'offsetTop';\n\t\t\tthis._pageOffsetType = 'pageYOffset';\n\t\t\tthis._childScrollDim = 'childHeight';\n\t\t\tthis._marginDir = 'margin-top';\n\t\t\tthis._translateDir = 'translateY';\n\t\t\tthis._scrollType = 'scrollTop';\n\t\t}\n\t}\n\n\tprotected debounce(func: Function, wait: number): Function {\n\t\tconst throttled = this.throttleTrailing(func, wait);\n\t\tconst result = function () {\n\t\t\tthrottled['cancel']();\n\t\t\tthrottled.apply(this, arguments);\n\t\t};\n\t\tresult['cancel'] = function () {\n\t\t\tthrottled['cancel']();\n\t\t};\n\n\t\treturn result;\n\t}\n\n\tprotected throttleTrailing(func: Function, wait: number): Function {\n\t\tlet timeout = undefined;\n\t\tlet _arguments = arguments;\n\t\tconst result = function () {\n\t\t\tconst _this = this;\n\t\t\t_arguments = arguments\n\n\t\t\tif (timeout) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tif (wait <= 0) {\n\t\t\t\tfunc.apply(_this, _arguments);\n\t\t\t} else {\n\t\t\t\ttimeout = setTimeout(function () {\n\t\t\t\t\ttimeout = undefined;\n\t\t\t\t\tfunc.apply(_this, _arguments);\n\t\t\t\t}, wait);\n\t\t\t}\n\t\t};\n\t\tresult['cancel'] = function () {\n\t\t\tif (timeout) {\n\t\t\t\tclearTimeout(timeout);\n\t\t\t\ttimeout = undefined;\n\t\t\t}\n\t\t};\n\n\t\treturn result;\n\t}\n\n\tprotected calculatedScrollbarWidth: number = 0;\n\tprotected calculatedScrollbarHeight: number = 0;\n\n\tprotected padding: number = 0;\n\tprotected previousViewPort: IViewport = {};\n\tprotected currentTween: tween.Tween;\n\tprotected cachedItemsLength: number;\n\n\tprotected disposeScrollHandler: () => void | undefined;\n\tprotected disposeResizeHandler: () => void | undefined;\n\n\tprotected refresh_internal(itemsArrayModified: boolean, refreshCompletedCallback: () => void = undefined, maxRunTimes: number = 2): void {\n\t\t//note: maxRunTimes is to force it to keep recalculating if the previous iteration caused a re-render (different sliced items in viewport or scrollPosition changed).\n\t\t//The default of 2x max will probably be accurate enough without causing too large a performance bottleneck\n\t\t//The code would typically quit out on the 2nd iteration anyways. The main time it'd think more than 2 runs would be necessary would be for vastly different sized child items or if this is the 1st time the items array was initialized.\n\t\t//Without maxRunTimes, If the user is actively scrolling this code would become an infinite loop until they stopped scrolling. This would be okay, except each scroll event would start an additional infinte loop. We want to short-circuit it to prevent this.\n\n\t\tif (itemsArrayModified && this.previousViewPort && this.previousViewPort.scrollStartPosition > 0) {\n\t\t//if items were prepended, scroll forward to keep same items visible\n\t\t\tlet oldViewPort = this.previousViewPort;\n\t\t\tlet oldViewPortItems = this.viewPortItems;\n\t\t\t\n\t\t\tlet oldRefreshCompletedCallback = refreshCompletedCallback;\n\t\t\trefreshCompletedCallback = () => {\n\t\t\t\tlet scrollLengthDelta = this.previousViewPort.scrollLength - oldViewPort.scrollLength;\n\t\t\t\tif (scrollLengthDelta > 0 && this.viewPortItems) {\n\t\t\t\t\tlet oldStartItem = oldViewPortItems[0];\n\t\t\t\t\tlet oldStartItemIndex = this.items.findIndex(x => this.compareItems(oldStartItem, x));\n\t\t\t\t\tif (oldStartItemIndex > this.previousViewPort.startIndexWithBuffer) {\n\t\t\t\t\t\tlet itemOrderChanged = false;\n\t\t\t\t\t\tfor (let i = 1; i < this.viewPortItems.length; ++i) {\n\t\t\t\t\t\t\tif (!this.compareItems(this.items[oldStartItemIndex + i], oldViewPortItems[i])) {\n\t\t\t\t\t\t\t\titemOrderChanged = true;\n\t\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\t\t\t\t\t\t\n\t\t\t\t\t\tif (!itemOrderChanged) {\n\t\t\t\t\t\t\tthis.scrollToPosition(this.previousViewPort.scrollStartPosition + scrollLengthDelta , 0, oldRefreshCompletedCallback);\n\t\t\t\t\t\t\treturn;\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\t\n\t\t\t\tif (oldRefreshCompletedCallback) {\n\t\t\t\t\toldRefreshCompletedCallback();\n\t\t\t\t}\n\t\t\t};\n\t\t}\t\t\t\n\n\t\tthis.zone.runOutsideAngular(() => {\n\t\t\trequestAnimationFrame(() => {\n\n\t\t\t\tif (itemsArrayModified) {\n\t\t\t\t\tthis.resetWrapGroupDimensions();\n\t\t\t\t}\n\t\t\t\tlet viewport = this.calculateViewport();\n\n\t\t\t\tlet startChanged = itemsArrayModified || viewport.startIndex !== this.previousViewPort.startIndex;\n\t\t\t\tlet endChanged = itemsArrayModified || viewport.endIndex !== this.previousViewPort.endIndex;\n\t\t\t\tlet scrollLengthChanged = viewport.scrollLength !== this.previousViewPort.scrollLength;\n\t\t\t\tlet paddingChanged = viewport.padding !== this.previousViewPort.padding;\n\t\t\t\tlet scrollPositionChanged = viewport.scrollStartPosition !== this.previousViewPort.scrollStartPosition || viewport.scrollEndPosition !== this.previousViewPort.scrollEndPosition || viewport.maxScrollPosition !== this.previousViewPort.maxScrollPosition;\n\n\t\t\t\tthis.previousViewPort = viewport;\n\n\t\t\t\tif (scrollLengthChanged) {\n\t\t\t\t\tthis.renderer.setStyle(this.invisiblePaddingElementRef.nativeElement, this._invisiblePaddingProperty, `${viewport.scrollLength}px`);\n\t\t\t\t}\n\n\t\t\t\tif (paddingChanged) {\n\t\t\t\t\tif (this.useMarginInsteadOfTranslate) {\n\t\t\t\t\t\tthis.renderer.setStyle(this.contentElementRef.nativeElement, this._marginDir, `${viewport.padding}px`);\n\t\t\t\t\t}\n\t\t\t\t\telse {\n\t\t\t\t\t\tthis.renderer.setStyle(this.contentElementRef.nativeElement, 'transform', `${this._translateDir}(${viewport.padding}px)`);\n\t\t\t\t\t\tthis.renderer.setStyle(this.contentElementRef.nativeElement, 'webkitTransform', `${this._translateDir}(${viewport.padding}px)`);\n\t\t\t\t\t}\n\t\t\t\t}\n\n\t\t\t\tif (this.headerElementRef) {\n\t\t\t\t\tlet scrollPosition = this.getScrollElement()[this._scrollType];\n\t\t\t\t\tlet containerOffset = this.getElementsOffset();\n\t\t\t\t\tlet offset = Math.max(scrollPosition - viewport.padding - containerOffset + this.headerElementRef.nativeElement.clientHeight, 0);\n\t\t\t\t\tthis.renderer.setStyle(this.headerElementRef.nativeElement, 'transform', `${this._translateDir}(${offset}px)`);\n\t\t\t\t\tthis.renderer.setStyle(this.headerElementRef.nativeElement, 'webkitTransform', `${this._translateDir}(${offset}px)`);\n\t\t\t\t}\n\n\t\t\t\tconst changeEventArg: IPageInfo = (startChanged || endChanged) ? {\n\t\t\t\t\tstartIndex: viewport.startIndex,\n\t\t\t\t\tendIndex: viewport.endIndex,\n\t\t\t\t\tscrollStartPosition: viewport.scrollStartPosition,\n\t\t\t\t\tscrollEndPosition: viewport.scrollEndPosition,\n\t\t\t\t\tstartIndexWithBuffer: viewport.startIndexWithBuffer,\n\t\t\t\t\tendIndexWithBuffer: viewport.endIndexWithBuffer,\n\t\t\t\t\tmaxScrollPosition: viewport.maxScrollPosition\n\t\t\t\t} : undefined;\n\n\n\t\t\t\tif (startChanged || endChanged || scrollPositionChanged) {\n\t\t\t\t\tconst handleChanged = () => {\n\t\t\t\t\t\t// update the scroll list to trigger re-render of components in viewport\n\t\t\t\t\t\tthis.viewPortItems = viewport.startIndexWithBuffer >= 0 && viewport.endIndexWithBuffer >= 0 ? this.items.slice(viewport.startIndexWithBuffer, viewport.endIndexWithBuffer + 1) : [];\n\t\t\t\t\t\tthis.vsUpdate.emit(this.viewPortItems);\n\n\t\t\t\t\t\tif (startChanged) {\n\t\t\t\t\t\t\tthis.vsStart.emit(changeEventArg);\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\tif (endChanged) {\n\t\t\t\t\t\t\tthis.vsEnd.emit(changeEventArg);\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\tif (startChanged || endChanged) {\n\t\t\t\t\t\t\tthis.changeDetectorRef.markForCheck();\n\t\t\t\t\t\t\tthis.vsChange.emit(changeEventArg);\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\tif (maxRunTimes > 0) {\n\t\t\t\t\t\t\tthis.refresh_internal(false, refreshCompletedCallback, maxRunTimes - 1);\n\t\t\t\t\t\t\treturn;\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\tif (refreshCompletedCallback) {\n\t\t\t\t\t\t\trefreshCompletedCallback();\n\t\t\t\t\t\t}\n\t\t\t\t\t};\n\n\n\t\t\t\t\tif (this.executeRefreshOutsideAngularZone) {\n\t\t\t\t\t\thandleChanged();\n\t\t\t\t\t}\n\t\t\t\t\telse {\n\t\t\t\t\t\tthis.zone.run(handleChanged);\n\t\t\t\t\t}\n\t\t\t\t} else {\n\t\t\t\t\tif (maxRunTimes > 0 && (scrollLengthChanged || paddingChanged)) {\n\t\t\t\t\t\tthis.refresh_internal(false, refreshCompletedCallback, maxRunTimes - 1);\n\t\t\t\t\t\treturn;\n\t\t\t\t\t}\n\n\t\t\t\t\tif (refreshCompletedCallback) {\n\t\t\t\t\t\trefreshCompletedCallback();\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t});\n\t\t});\n\t}\n\n\tprotected getScrollElement(): HTMLElement {\n\t\treturn this.parentScroll instanceof Window ? document.scrollingElement || document.documentElement || document.body : this.parentScroll || this.element.nativeElement;\n\t}\n\n\tprotected addScrollEventHandlers(): void {\n\t\tif (this.isAngularUniversalSSR) {\n\t\t\treturn;\n\t\t}\n\n\t\tlet scrollElement = this.getScrollElement();\n\n\t\tthis.removeScrollEventHandlers();\n\n\t\tthis.zone.runOutsideAngular(() => {\n\t\t\tif (this.parentScroll instanceof Window) {\n\t\t\t\tthis.disposeScrollHandler = this.renderer.listen('window', 'scroll', this.onScroll);\n\t\t\t\tthis.disposeResizeHandler = this.renderer.listen('window', 'resize', this.onScroll);\n\t\t\t}\n\t\t\telse {\n\t\t\t\tthis.disposeScrollHandler = this.renderer.listen(scrollElement, 'scroll', this.onScroll);\n\t\t\t\tif (this._checkResizeInterval > 0) {\n\t\t\t\t\tthis.checkScrollElementResizedTimer = setInterval(() => { this.checkScrollElementResized(); }, this._checkResizeInterval);\n\t\t\t\t}\n\t\t\t}\n\t\t});\n\t}\n\n\tprotected removeScrollEventHandlers(): void {\n\t\tif (this.checkScrollElementResizedTimer) {\n\t\t\tclearInterval(this.checkScrollElementResizedTimer);\n\t\t}\n\n\t\tif (this.disposeScrollHandler) {\n\t\t\tthis.disposeScrollHandler();\n\t\t\tthis.disposeScrollHandler = undefined;\n\t\t}\n\n\t\tif (this.disposeResizeHandler) {\n\t\t\tthis.disposeResizeHandler();\n\t\t\tthis.disposeResizeHandler = undefined;\n\t\t}\n\t}\n\n\tprotected getElementsOffset(): number {\n\t\tif (this.isAngularUniversalSSR) {\n\t\t\treturn 0;\n\t\t}\n\n\t\tlet offset = 0;\n\n\t\tif (this.containerElementRef && this.containerElementRef.nativeElement) {\n\t\t\toffset += this.containerElementRef.nativeElement[this._offsetType];\n\t\t}\n\n\t\tif (this.parentScroll) {\n\t\t\tlet scrollElement = this.getScrollElement();\n\t\t\tlet elementClientRect = this.getElementSize(this.element.nativeElement);\n\t\t\tlet scrollClientRect = this.getElementSize(scrollElement);\n\t\t\tif (this.horizontal) {\n\t\t\t\toffset += elementClientRect.left - scrollClientRect.left;\n\t\t\t}\n\t\t\telse {\n\t\t\t\toffset += elementClientRect.top - scrollClientRect.top;\n\t\t\t}\n\n\t\t\tif (!(this.parentScroll instanceof Window)) {\n\t\t\t\toffset += scrollElement[this._scrollType];\n\t\t\t}\n\t\t}\n\n\t\treturn offset;\n\t}\n\n\tprotected countItemsPerWrapGroup(): number {\n\t\tif (this.isAngularUniversalSSR) {\n\t\t\treturn Math.round(this.horizontal ? this.ssrViewportHeight / this.ssrChildHeight : this.ssrViewportWidth / this.ssrChildWidth);\n\t\t}\n\n\t\tlet propertyName = this.horizontal ? 'offsetLeft' : 'offsetTop';\n\t\tlet children = ((this.containerElementRef && this.containerElementRef.nativeElement) || this.contentElementRef.nativeElement).children;\n\n\t\tlet childrenLength = children ? children.length : 0;\n\t\tif (childrenLength === 0) {\n\t\t\treturn 1;\n\t\t}\n\n\t\tlet firstOffset = children[0][propertyName];\n\t\tlet result = 1;\n\t\twhile (result < childrenLength && firstOffset === children[result][propertyName]) {\n\t\t\t++result;\n\t\t}\n\n\t\treturn result;\n\t}\n\n\tprotected getScrollStartPosition(): number {\n\t\tlet windowScrollValue = undefined;\n\t\tif (this.parentScroll instanceof Window) {\n\t\t\twindowScrollValue = window[this._pageOffsetType];\n\t\t}\n\n\t\treturn windowScrollValue || this.getScrollElement()[this._scrollType] || 0;\n\t}\n\n\tprotected minMeasuredChildWidth: number;\n\tprotected minMeasuredChildHeight: number;\n\n\tprotected wrapGroupDimensions: WrapGroupDimensions;\n\n\tprotected resetWrapGroupDimensions(): void {\n\t\tconst oldWrapGroupDimensions = this.wrapGroupDimensions;\n\t\tthis.invalidateAllCachedMeasurements();\n\n\t\tif (!this.enableUnequalChildrenSizes || !oldWrapGroupDimensions || oldWrapGroupDimensions.numberOfKnownWrapGroupChildSizes === 0) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst itemsPerWrapGroup: number = this.countItemsPerWrapGroup();\n\t\tfor (let wrapGroupIndex = 0; wrapGroupIndex < oldWrapGroupDimensions.maxChildSizePerWrapGroup.length; ++wrapGroupIndex) {\n\t\t\tconst oldWrapGroupDimension: WrapGroupDimension = oldWrapGroupDimensions.maxChildSizePerWrapGroup[wrapGroupIndex];\n\t\t\tif (!oldWrapGroupDimension || !oldWrapGroupDimension.items || !oldWrapGroupDimension.items.length) {\n\t\t\t\tcontinue;\n\t\t\t}\n\n\t\t\tif (oldWrapGroupDimension.items.length !== itemsPerWrapGroup) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tlet itemsChanged = false;\n\t\t\tlet arrayStartIndex = itemsPerWrapGroup * wrapGroupIndex;\n\t\t\tfor (let i = 0; i < itemsPerWrapGroup; ++i) {\n\t\t\t\tif (!this.compareItems(oldWrapGroupDimension.items[i], this.items[arrayStartIndex + i])) {\n\t\t\t\t\titemsChanged = true;\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tif (!itemsChanged) {\n\t\t\t\t++this.wrapGroupDimensions.numberOfKnownWrapGroupChildSizes;\n\t\t\t\tthis.wrapGroupDimensions.sumOfKnownWrapGroupChildWidths += oldWrapGroupDimension.childWidth || 0;\n\t\t\t\tthis.wrapGroupDimensions.sumOfKnownWrapGroupChildHeights += oldWrapGroupDimension.childHeight || 0;\n\t\t\t\tthis.wrapGroupDimensions.maxChildSizePerWrapGroup[wrapGroupIndex] = oldWrapGroupDimension;\n\t\t\t}\n\t\t}\n\t}\n\n\tprotected calculateDimensions(): IDimensions {\n\t\tlet scrollElement = this.getScrollElement();\n\n\t\tconst maxCalculatedScrollBarSize: number = 25; // Note: Formula to auto-calculate doesn't work for ParentScroll, so we default to this if not set by consuming application\n\t\tthis.calculatedScrollbarHeight = Math.max(Math.min(scrollElement.offsetHeight - scrollElement.clientHeight, maxCalculatedScrollBarSize), this.calculatedScrollbarHeight);\n\t\tthis.calculatedScrollbarWidth = Math.max(Math.min(scrollElement.offsetWidth - scrollElement.clientWidth, maxCalculatedScrollBarSize), this.calculatedScrollbarWidth);\n\n\t\tlet viewportWidth = scrollElement.offsetWidth - (this.scrollbarWidth || this.calculatedScrollbarWidth || (this.horizontal ? 0 : maxCalculatedScrollBarSize));\n\t\tlet viewportHeight = scrollElement.offsetHeight - (this.scrollbarHeight || this.calculatedScrollbarHeight || (this.horizontal ? maxCalculatedScrollBarSize : 0));\n\n\t\tlet content = (this.containerElementRef && this.containerElementRef.nativeElement) || this.contentElementRef.nativeElement;\n\n\t\tlet itemsPerWrapGroup = this.countItemsPerWrapGroup();\n\t\tlet wrapGroupsPerPage;\n\n\t\tlet defaultChildWidth;\n\t\tlet defaultChildHeight;\n\n\t\tif (this.isAngularUniversalSSR) {\n\t\t\tviewportWidth = this.ssrViewportWidth;\n\t\t\tviewportHeight = this.ssrViewportHeight;\n\t\t\tdefaultChildWidth = this.ssrChildWidth;\n\t\t\tdefaultChildHeight = this.ssrChildHeight;\n\t\t\tlet itemsPerRow = Math.max(Math.ceil(viewportWidth / defaultChildWidth), 1);\n\t\t\tlet itemsPerCol = Math.max(Math.ceil(viewportHeight / defaultChildHeight), 1);\n\t\t\twrapGroupsPerPage = this.horizontal ? itemsPerRow : itemsPerCol;\n\t\t}\n\t\telse if (!this.enableUnequalChildrenSizes) {\n\t\t\tif (content.children.length > 0) {\n\t\t\t\tif (!this.childWidth || !this.childHeight) {\n\t\t\t\t\tif (!this.minMeasuredChildWidth && viewportWidth > 0) {\n\t\t\t\t\t\tthis.minMeasuredChildWidth = viewportWidth;\n\t\t\t\t\t}\n\t\t\t\t\tif (!this.minMeasuredChildHeight && viewportHeight > 0) {\n\t\t\t\t\t\tthis.minMeasuredChildHeight = viewportHeight;\n\t\t\t\t\t}\n\t\t\t\t}\n\n\t\t\t\tlet child = content.children[0];\n\t\t\t\tlet clientRect = this.getElementSize(child);\n\t\t\t\tthis.minMeasuredChildWidth = Math.min(this.minMeasuredChildWidth, clientRect.width);\n\t\t\t\tthis.minMeasuredChildHeight = Math.min(this.minMeasuredChildHeight, clientRect.height);\n\t\t\t}\n\n\t\t\tdefaultChildWidth = this.childWidth || this.minMeasuredChildWidth || viewportWidth;\n\t\t\tdefaultChildHeight = this.childHeight || this.minMeasuredChildHeight || viewportHeight;\n\t\t\tlet itemsPerRow = Math.max(Math.ceil(viewportWidth / defaultChildWidth), 1);\n\t\t\tlet itemsPerCol = Math.max(Math.ceil(viewportHeight / defaultChildHeight), 1);\n\t\t\twrapGroupsPerPage = this.horizontal ? itemsPerRow : itemsPerCol;\n\t\t} else {\n\t\t\tlet scrollOffset = scrollElement[this._scrollType] - (this.previousViewPort ? this.previousViewPort.padding : 0);\n\n\t\t\tlet arrayStartIndex = this.previousViewPort.startIndexWithBuffer || 0;\n\t\t\tlet wrapGroupIndex = Math.ceil(arrayStartIndex / itemsPerWrapGroup);\n\n\t\t\tlet maxWidthForWrapGroup = 0;\n\t\t\tlet maxHeightForWrapGroup = 0;\n\t\t\tlet sumOfVisibleMaxWidths = 0;\n\t\t\tlet sumOfVisibleMaxHeights = 0;\n\t\t\twrapGroupsPerPage = 0;\n\n\t\t\tfor (let i = 0; i < content.children.length; ++i) {\n\t\t\t\t++arrayStartIndex;\n\t\t\t\tlet child = content.children[i];\n\t\t\t\tlet clientRect = this.getElementSize(child);\n\n\t\t\t\tmaxWidthForWrapGroup = Math.max(maxWidthForWrapGroup, clientRect.width);\n\t\t\t\tmaxHeightForWrapGroup = Math.max(maxHeightForWrapGroup, clientRect.height);\n\n\t\t\t\tif (arrayStartIndex % itemsPerWrapGroup === 0) {\n\t\t\t\t\tlet oldValue = this.wrapGroupDimensions.maxChildSizePerWrapGroup[wrapGroupIndex];\n\t\t\t\t\tif (oldValue) {\n\t\t\t\t\t\t--this.wrapGroupDimensions.numberOfKnownWrapGroupChildSizes;\n\t\t\t\t\t\tthis.wrapGroupDimensions.sumOfKnownWrapGroupChildWidths -= oldValue.childWidth || 0;\n\t\t\t\t\t\tthis.wrapGroupDimensions.sumOfKnownWrapGroupChildHeights -= oldValue.childHeight || 0;\n\t\t\t\t\t}\n\n\t\t\t\t\t++this.wrapGroupDimensions.numberOfKnownWrapGroupChildSizes;\n\t\t\t\t\tconst items = this.items.slice(arrayStartIndex - itemsPerWrapGroup, arrayStartIndex);\n\t\t\t\t\tthis.wrapGroupDimensions.maxChildSizePerWrapGroup[wrapGroupIndex] = {\n\t\t\t\t\t\tchildWidth: maxWidthForWrapGroup,\n\t\t\t\t\t\tchildHeight: maxHeightForWrapGroup,\n\t\t\t\t\t\titems: items\n\t\t\t\t\t};\n\t\t\t\t\tthis.wrapGroupDimensions.sumOfKnownWrapGroupChildWidths += maxWidthForWrapGroup;\n\t\t\t\t\tthis.wrapGroupDimensions.sumOfKnownWrapGroupChildHeights += maxHeightForWrapGroup;\n\n\t\t\t\t\tif (this.horizontal) {\n\t\t\t\t\t\tlet maxVisibleWidthForWrapGroup = Math.min(maxWidthForWrapGroup, Math.max(viewportWidth - sumOfVisibleMaxWidths, 0));\n\t\t\t\t\t\tif (scrollOffset > 0) {\n\t\t\t\t\t\t\tlet scrollOffsetToRemove = Math.min(scrollOffset, maxVisibleWidthForWrapGroup);\n\t\t\t\t\t\t\tmaxVisibleWidthForWrapGroup -= scrollOffsetToRemove;\n\t\t\t\t\t\t\tscrollOffset -= scrollOffsetToRemove;\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\tsumOfVisibleMaxWidths += maxVisibleWidthForWrapGroup;\n\t\t\t\t\t\tif (maxVisibleWidthForWrapGroup > 0 && viewportWidth >= sumOfVisibleMaxWidths) {\n\t\t\t\t\t\t\t++wrapGroupsPerPage;\n\t\t\t\t\t\t}\n\t\t\t\t\t} else {\n\t\t\t\t\t\tlet maxVisibleHeightForWrapGroup = Math.min(maxHeightForWrapGroup, Math.max(viewportHeight - sumOfVisibleMaxHeights, 0));\n\t\t\t\t\t\tif (scrollOffset > 0) {\n\t\t\t\t\t\t\tlet scrollOffsetToRemove = Math.min(scrollOffset, maxVisibleHeightForWrapGroup);\n\t\t\t\t\t\t\tmaxVisibleHeightForWrapGroup -= scrollOffsetToRemove;\n\t\t\t\t\t\t\tscrollOffset -= scrollOffsetToRemove;\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\tsumOfVisibleMaxHeights += maxVisibleHeightForWrapGroup;\n\t\t\t\t\t\tif (maxVisibleHeightForWrapGroup > 0 && viewportHeight >= sumOfVisibleMaxHeights) {\n\t\t\t\t\t\t\t++wrapGroupsPerPage;\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\n\t\t\t\t\t++wrapGroupIndex;\n\n\t\t\t\t\tmaxWidthForWrapGroup = 0;\n\t\t\t\t\tmaxHeightForWrapGroup = 0;\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tlet averageChildWidth = this.wrapGroupDimensions.sumOfKnownWrapGroupChildWidths / this.wrapGroupDimensions.numberOfKnownWrapGroupChildSizes;\n\t\t\tlet averageChildHeight = this.wrapGroupDimensions.sumOfKnownWrapGroupChildHeights / this.wrapGroupDimensions.numberOfKnownWrapGroupChildSizes;\n\t\t\tdefaultChildWidth = this.childWidth || averageChildWidth || viewportWidth;\n\t\t\tdefaultChildHeight = this.childHeight || averageChildHeight || viewportHeight;\n\n\t\t\tif (this.horizontal) {\n\t\t\t\tif (viewportWidth > sumOfVisibleMaxWidths) {\n\t\t\t\t\twrapGroupsPerPage += Math.ceil((viewportWidth - sumOfVisibleMaxWidths) / defaultChildWidth);\n\t\t\t\t}\n\t\t\t} else {\n\t\t\t\tif (viewportHeight > sumOfVisibleMaxHeights) {\n\t\t\t\t\twrapGroupsPerPage += Math.ceil((viewportHeight - sumOfVisibleMaxHeights) / defaultChildHeight);\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\tlet itemCount = this.items.length;\n\t\tlet itemsPerPage = itemsPerWrapGroup * wrapGroupsPerPage;\n\t\tlet pageCount_fractional = itemCount / itemsPerPage;\n\t\tlet numberOfWrapGroups = Math.ceil(itemCount / itemsPerWrapGroup);\n\n\t\tlet scrollLength = 0;\n\n\t\tlet defaultScrollLengthPerWrapGroup = this.horizontal ? defaultChildWidth : defaultChildHeight;\n\t\tif (this.enableUnequalChildrenSizes) {\n\t\t\tlet numUnknownChildSizes = 0;\n\t\t\tfor (let i = 0; i < numberOfWrapGroups; ++i) {\n\t\t\t\tlet childSize = this.wrapGroupDimensions.maxChildSizePerWrapGroup[i] && this.wrapGroupDimensions.maxChildSizePerWrapGroup[i][this._childScrollDim];\n\t\t\t\tif (childSize) {\n\t\t\t\t\tscrollLength += childSize;\n\t\t\t\t} else {\n\t\t\t\t\t++numUnknownChildSizes;\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tscrollLength += Math.round(numUnknownChildSizes * defaultScrollLengthPerWrapGroup);\n\t\t} else {\n\t\t\tscrollLength = numberOfWrapGroups * defaultScrollLengthPerWrapGroup;\n\t\t}\n\n\t\tif (this.headerElementRef) {\n\t\t\tscrollLength += this.headerElementRef.nativeElement.clientHeight;\n\t\t}\n\n\t\tlet viewportLength = this.horizontal ? viewportWidth : viewportHeight;\n\t\tlet maxScrollPosition = Math.max(scrollLength - viewportLength, 0);\n\n\t\treturn {\n\t\t\titemCount: itemCount,\n\t\t\titemsPerWrapGroup: itemsPerWrapGroup,\n\t\t\twrapGroupsPerPage: wrapGroupsPerPage,\n\t\t\titemsPerPage: itemsPerPage,\n\t\t\tpageCount_fractional: pageCount_fractional,\n\t\t\tchildWidth: defaultChildWidth,\n\t\t\tchildHeight: defaultChildHeight,\n\t\t\tscrollLength: scrollLength,\n\t\t\tviewportLength: viewportLength,\n\t\t\tmaxScrollPosition: maxScrollPosition\n\t\t};\n\t}\n\n\tprotected cachedPageSize: number = 0;\n\tprotected previousScrollNumberElements: number = 0;\n\n\tprotected calculatePadding(arrayStartIndexWithBuffer: number, dimensions: IDimensions): number {\n\t\tif (dimensions.itemCount === 0) {\n\t\t\treturn 0;\n\t\t}\n\n\t\tlet defaultScrollLengthPerWrapGroup = dimensions[this._childScrollDim];\n\t\tlet startingWrapGroupIndex = Math.floor(arrayStartIndexWithBuffer / dimensions.itemsPerWrapGroup) || 0;\n\n\t\tif (!this.enableUnequalChildrenSizes) {\n\t\t\treturn defaultScrollLengthPerWrapGroup * startingWrapGroupIndex;\n\t\t}\n\n\t\tlet numUnknownChildSizes = 0;\n\t\tlet result = 0;\n\t\tfor (let i = 0; i < startingWrapGroupIndex; ++i) {\n\t\t\tlet childSize = this.wrapGroupDimensions.maxChildSizePerWrapGroup[i] && this.wrapGroupDimensions.maxChildSizePerWrapGroup[i][this._childScrollDim];\n\t\t\tif (childSize) {\n\t\t\t\tresult += childSize;\n\t\t\t} else {\n\t\t\t\t++numUnknownChildSizes;\n\t\t\t}\n\t\t}\n\t\tresult += Math.round(numUnknownChildSizes * defaultScrollLengthPerWrapGroup);\n\n\t\treturn result;\n\t}\n\n\tprotected calculatePageInfo(scrollPosition: number, dimensions: IDimensions): IPageInfo {\n\t\tlet scrollPercentage = 0;\n\t\tif (this.enableUnequalChildrenSizes) {\n\t\t\tconst numberOfWrapGroups = Math.ceil(dimensions.itemCount / dimensions.itemsPerWrapGroup);\n\t\t\tlet totalScrolledLength = 0;\n\t\t\tlet defaultScrollLengthPerWrapGroup = dimensions[this._childScrollDim];\n\t\t\tfor (let i = 0; i < numberOfWrapGroups; ++i) {\n\t\t\t\tlet childSize = this.wrapGroupDimensions.maxChildSizePerWrapGroup[i] && this.wrapGroupDimensions.maxChildSizePerWrapGroup[i][this._childScrollDim];\n\t\t\t\tif (childSize) {\n\t\t\t\t\ttotalScrolledLength += childSize;\n\t\t\t\t} else {\n\t\t\t\t\ttotalScrolledLength += defaultScrollLengthPerWrapGroup;\n\t\t\t\t}\n\n\t\t\t\tif (scrollPosition < totalScrolledLength) {\n\t\t\t\t\tscrollPercentage = i / numberOfWrapGroups;\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t}\n\t\t} else {\n\t\t\tscrollPercentage = scrollPosition / dimensions.scrollLength;\n\t\t}\n\n\t\tlet startingArrayIndex_fractional = Math.min(Math.max(scrollPercentage * dimensions.pageCount_fractional, 0), dimensions.pageCount_fractional) * dimensions.itemsPerPage;\n\n\t\tlet maxStart = dimensions.itemCount - dimensions.itemsPerPage - 1;\n\t\tlet arrayStartIndex = Math.min(Math.floor(startingArrayIndex_fractional), maxStart);\n\t\tarrayStartIndex -= arrayStartIndex % dimensions.itemsPerWrapGroup; // round down to start of wrapGroup\n\n\t\tif (this.stripedTable) {\n\t\t\tlet bufferBoundary = 2 * dimensions.itemsPerWrapGroup;\n\t\t\tif (arrayStartIndex % bufferBoundary !== 0) {\n\t\t\t\tarrayStartIndex = Math.max(arrayStartIndex - arrayStartIndex % bufferBoundary, 0);\n\t\t\t}\n\t\t}\n\n\t\tlet arrayEndIndex = Math.ceil(startingArrayIndex_fractional) + dimensions.itemsPerPage - 1;\n\t\tlet endIndexWithinWrapGroup = (arrayEndIndex + 1) % dimensions.itemsPerWrapGroup;\n\t\tif (endIndexWithinWrapGroup > 0) {\n\t\t\tarrayEndIndex += dimensions.itemsPerWrapGroup - endIndexWithinWrapGroup; // round up to end of wrapGroup\n\t\t}\n\n\t\tif (isNaN(arrayStartIndex)) {\n\t\t\tarrayStartIndex = 0;\n\t\t}\n\t\tif (isNaN(arrayEndIndex)) {\n\t\t\tarrayEndIndex = 0;\n\t\t}\n\n\t\tarrayStartIndex = Math.min(Math.max(arrayStartIndex, 0), dimensions.itemCount - 1);\n\t\tarrayEndIndex = Math.min(Math.max(arrayEndIndex, 0), dimensions.itemCount - 1);\n\n\t\tlet bufferSize = this.bufferAmount * dimensions.itemsPerWrapGroup;\n\t\tlet startIndexWithBuffer = Math.min(Math.max(arrayStartIndex - bufferSize, 0), dimensions.itemCount - 1);\n\t\tlet endIndexWithBuffer = Math.min(Math.max(arrayEndIndex + bufferSize, 0), dimensions.itemCount - 1);\n\n\t\treturn {\n\t\t\tstartIndex: arrayStartIndex,\n\t\t\tendIndex: arrayEndIndex,\n\t\t\tstartIndexWithBuffer: startIndexWithBuffer,\n\t\t\tendIndexWithBuffer: endIndexWithBuffer,\n\t\t\tscrollStartPosition: scrollPosition,\n\t\t\tscrollEndPosition: scrollPosition + dimensions.viewportLength,\n\t\t\tmaxScrollPosition: dimensions.maxScrollPosition\n\t\t};\n\t}\n\n\tprotected calculateViewport(): IViewport {\n\t\tlet dimensions = this.calculateDimensions();\n\t\tlet offset = this.getElementsOffset();\n\n\t\tlet scrollStartPosition = this.getScrollStartPosition();\n\t\tif (scrollStartPosition > (dimensions.scrollLength + offset) && !(this.parentScroll instanceof Window)) {\n\t\t\tscrollStartPosition = dimensions.scrollLength;\n\t\t} else {\n\t\t\tscrollStartPosition -= offset;\n\t\t}\n\t\tscrollStartPosition = Math.max(0, scrollStartPosition);\n\n\t\tlet pageInfo = this.calculatePageInfo(scrollStartPosition, dimensions);\n\t\tlet newPadding = this.calculatePadding(pageInfo.startIndexWithBuffer, dimensions);\n\t\tlet newScrollLength = dimensions.scrollLength;\n\n\t\treturn {\n\t\t\tstartIndex: pageInfo.startIndex,\n\t\t\tendIndex: pageInfo.endIndex,\n\t\t\tstartIndexWithBuffer: pageInfo.startIndexWithBuffer,\n\t\t\tendIndexWithBuffer: pageInfo.endIndexWithBuffer,\n\t\t\tpadding: Math.round(newPadding),\n\t\t\tscrollLength: Math.round(newScrollLength),\n\t\t\tscrollStartPosition: pageInfo.scrollStartPosition,\n\t\t\tscrollEndPosition: pageInfo.scrollEndPosition,\n\t\t\tmaxScrollPosition: pageInfo.maxScrollPosition\n\t\t};\n\t}\n}\n\n@NgModule({\n\texports: [VirtualScrollerComponent],\n\tdeclarations: [VirtualScrollerComponent],\n\timports: [CommonModule],\n\tproviders: [\n\t\t{\n\t\t\tprovide: 'virtual-scroller-default-options',\n\t\t\tuseFactory: VIRTUAL_SCROLLER_DEFAULT_OPTIONS_FACTORY\n\t\t}\n\t]\n})\nexport class VirtualScrollerModule { }","function webpackEmptyAsyncContext(req) {\n\t// Here Promise.resolve().then() is used instead of new Promise() to prevent\n\t// uncaught exception popping up in devtools\n\treturn Promise.resolve().then(function() {\n\t\tvar e = new Error(\"Cannot find module '\" + req + \"'\");\n\t\te.code = 'MODULE_NOT_FOUND';\n\t\tthrow e;\n\t});\n}\nwebpackEmptyAsyncContext.keys = function() { return []; };\nwebpackEmptyAsyncContext.resolve = webpackEmptyAsyncContext;\nmodule.exports = webpackEmptyAsyncContext;\nwebpackEmptyAsyncContext.id = \"./src/$$_lazy_route_resource lazy recursive\";","","import { Component, OnInit } from '@angular/core';\n\n@Component({\n selector: 'app-root',\n templateUrl: './app.component.html',\n styleUrls: ['./app.component.css']\n})\nexport class AppComponent implements OnInit {\n title = 'app works!';\n singleSelectionList = [];\n singleSelectionselectedItems = [];\n singleSelectionSettings = {};\n\n basicExampleList = [];\n basicExampleSelectedItems = [];\n basicExampleSettings = {};\n\n selectedItems3 = [];\n dropdownSettings3 = {};\n\n limitSelectionSelectedItems = [];\n limitSelectionSettings = {};\n\n disableModeSelectedItems = [];\n disableModeSettings = {};\n\n placeholderExampleList = [];\n placeholderExampleSelectedItems = [];\n placeholderExampleSettings = {};\n\n resetExampleList = [];\n resetExampleSelectedItems = [];\n resetExampleSettings = {};\n\n groupByExampleList = [];\n groupByExampleSelectedItems = [];\n groupByExampleSettings = {};\n\n templatingExampleList = [];\n templatingExampleSelectedItems = [];\n templatingExampleSettings = {};\n\n constructor(){\n \n }\n ngOnInit(){\n this.singleSelectionList = [\n {\"id\":1,\"itemName\":\"India\"},\n {\"id\":2,\"itemName\":\"Singapore\"},\n {\"id\":3,\"itemName\":\"Australia\"},\n {\"id\":4,\"itemName\":\"Canada\"},\n {\"id\":5,\"itemName\":\"South Korea\"}\n ];\n\n this.singleSelectionselectedItems = [\n {\"id\":2,\"itemName\":\"Singapore\"}];\n this.singleSelectionSettings = {singleSelection: true, text:\"Select Country\"};\n\n this.basicExampleList = [\n {\"id\":1,\"itemName\":\"India\"},\n {\"id\":2,\"itemName\":\"Singapore\"},\n {\"id\":3,\"itemName\":\"Australia\"},\n {\"id\":4,\"itemName\":\"Canada\"},\n {\"id\":5,\"itemName\":\"South Korea\"}, \n {\"id\":6,\"itemName\":\"Brazil\"} \n ];\n \n this.basicExampleSelectedItems = [\n {\"id\":1,\"itemName\":\"India\"},\n {\"id\":2,\"itemName\":\"Singapore\"},\n {\"id\":3,\"itemName\":\"Australia\"},\n {\"id\":4,\"itemName\":\"Canada\"}];\n this.basicExampleSettings = { \n text:\"Select Countries\",\n selectAllText:'Select All',\n unSelectAllText:'UnSelect All',\n enableSearchFilter: true,\n classes:\"myclass custom-class\"\n };\n\n this.selectedItems3 = [\n {\"id\":1,\"itemName\":\"India\"},\n {\"id\":2,\"itemName\":\"Singapore\"},\n {\"id\":4,\"itemName\":\"Canada\"},\n {\"id\":5,\"itemName\":\"South Korea\"}];\n\n \n this.dropdownSettings3 = { singleSelection: false, \n text:\"Select Countries\",\n selectAllText:'Select All',\n unSelectAllText:'UnSelect All',\n enableSearchFilter: true,\n badgeShowLimit: 3\n }; \n this.limitSelectionSelectedItems = [\n {\"id\":1,\"itemName\":\"India\"},\n {\"id\":2,\"itemName\":\"Singapore\"},\n {\"id\":3,\"itemName\":\"Australia\"},\n {\"id\":4,\"itemName\":\"Canada\"}];\n this.limitSelectionSettings = { \n text:\"Select Countries\",\n selectAllText:'Select All',\n unSelectAllText:'UnSelect All',\n enableSearchFilter: false,\n classes:\"myclass custom-class\",\n limitSelection: 4\n };\n this.disableModeSelectedItems = [\n {\"id\":1,\"itemName\":\"India\"},\n {\"id\":2,\"itemName\":\"Singapore\"},\n {\"id\":3,\"itemName\":\"Australia\"},\n {\"id\":4,\"itemName\":\"Canada\"}];\n this.disableModeSettings = { \n text:\"Select Countries\",\n selectAllText:'Select All',\n unSelectAllText:'UnSelect All',\n enableSearchFilter: false,\n classes:\"myclass custom-class\",\n limitSelection: 2,\n disabled: true\n };\n\n this.placeholderExampleList = [\n {\"id\":1,\"itemName\":\"India\"},\n {\"id\":2,\"itemName\":\"Singapore\"},\n {\"id\":3,\"itemName\":\"Australia\"},\n {\"id\":4,\"itemName\":\"Canada\"},\n {\"id\":5,\"itemName\":\"South Korea\"}\n ];\n \n this.placeholderExampleSelectedItems = [\n {\"id\":1,\"itemName\":\"India\"},\n {\"id\":2,\"itemName\":\"Singapore\"},\n {\"id\":3,\"itemName\":\"Australia\"},\n {\"id\":4,\"itemName\":\"Canada\"}];\n this.placeholderExampleSettings = { \n text:\"Select Countries\",\n selectAllText:'Select All',\n unSelectAllText:'UnSelect All',\n enableSearchFilter: true,\n classes:\"myclass custom-class\",\n searchPlaceholderText: \"Custom Placeholder text\"\n };\n this.resetExampleList = [\n {\"id\":1,\"itemName\":\"India\"},\n {\"id\":2,\"itemName\":\"Singapore\"},\n {\"id\":3,\"itemName\":\"Australia\"},\n {\"id\":4,\"itemName\":\"Canada\"},\n {\"id\":5,\"itemName\":\"South Korea\"}\n ];\n \n this.resetExampleSelectedItems = [\n {\"id\":1,\"itemName\":\"India\"},\n {\"id\":2,\"itemName\":\"Singapore\"},\n {\"id\":3,\"itemName\":\"Australia\"},\n {\"id\":4,\"itemName\":\"Canada\"}];\n this.resetExampleSettings = { \n text:\"Select Countries\",\n selectAllText:'Select All',\n unSelectAllText:'UnSelect All',\n enableSearchFilter: false,\n classes:\"myclass custom-class\"\n }; \n this.groupByExampleList = [\n {\"id\":1,\"itemName\":\"India\",\"category\":\"asia\"},\n {\"id\":2,\"itemName\":\"Singapore\",\"category\":\"asia pacific\"},\n {\"id\":3,\"itemName\":\"Germany\",\"category\":\"Europe\"},\n {\"id\":4,\"itemName\":\"France\",\"category\":\"Europe\"},\n {\"id\":5,\"itemName\":\"South Korea\",\"category\":\"asia\"}, \n {\"id\":6,\"itemName\":\"Sweden\",\"category\":\"Europe\"} \n ];\n \n this.groupByExampleSelectedItems = [\n {\"id\":1,\"itemName\":\"India\"},\n {\"id\":2,\"itemName\":\"Singapore\"},\n {\"id\":3,\"itemName\":\"Germany\"},\n {\"id\":4,\"itemName\":\"France\"}];\n this.groupByExampleSettings = { \n text:\"Select Countries\",\n selectAllText:'Select All',\n unSelectAllText:'UnSelect All',\n enableSearchFilter: true,\n classes:\"myclass custom-class\",\n groupBy: \"category\"\n }; \n\n this.groupByExampleSettings = {\nsingleSelection: false,\ntext:\"Select Fields\",\nselectAllText:'Select All',\nunSelectAllText:'UnSelect All',\nsearchPlaceholderText: 'Search Fields',\nenableSearchFilter: true,\nbadgeShowLimit: 5,\ngroupBy:\"category\"\n}; \n\nthis.templatingExampleList = [\n {\"id\":1,\"itemName\":\"India\",\"capital\":\"Delhi\",\"image\":\"http://www.sciencekids.co.nz/images/pictures/flags96/India.jpg\"},\n {\"id\":2,\"itemName\":\"Singapore\", \"capital\":\"Singapore\",\"image\":\"http://www.sciencekids.co.nz/images/pictures/flags96/Singapore.jpg\"},\n {\"id\":3,\"itemName\":\"United Kingdom\", \"capital\":\"London\",\"image\":\"http://www.sciencekids.co.nz/images/pictures/flags96/United_Kingdom.jpg\"},\n {\"id\":4,\"itemName\":\"Canada\",\"capital\":\"Ottawa\",\"image\":\"http://www.sciencekids.co.nz/images/pictures/flags96/Canada.jpg\"},\n {\"id\":5,\"itemName\":\"South Korea\",\"capital\":\"Seoul\",\"image\":\"http://www.sciencekids.co.nz/images/pictures/flags96/South_Korea.jpg\"}, \n {\"id\":6,\"itemName\":\"Brazil\",\"capital\":\"Brasilia\",\"image\":\"http://www.sciencekids.co.nz/images/pictures/flags96/Brazil.jpg\"} \n ];\n \n this.templatingExampleSelectedItems = [\n {\"id\":1,\"itemName\":\"India\"},\n {\"id\":2,\"itemName\":\"Singapore\"},\n {\"id\":3,\"itemName\":\"United Kingdom\"},\n {\"id\":4,\"itemName\":\"Canada\"}];\n this.templatingExampleSettings = { \n text:\"Select Countries\",\n selectAllText:'Select All',\n unSelectAllText:'UnSelect All',\n enableSearchFilter: true,\n classes:\"myclass custom-class\",\n showCheckbox: true\n };\n\n }\n onItemSelect(item:any){\n console.log(item);\n console.log(this.basicExampleSelectedItems);\n }\n OnItemDeSelect(item:any){\n console.log(item);\n console.log(this.basicExampleSelectedItems);\n }\n onSelectAll(items: any){\n console.log(items);\n }\n onDeSelectAll(items: any){\n console.log(items);\n }\n showModel(){\n console.log(this.singleSelectionselectedItems);\n }\n changeData(){\n this.resetExampleSelectedItems = [];\n }\n}\n","import { BrowserModule } from '@angular/platform-browser';\nimport { NgModule } from '@angular/core';\nimport { FormsModule, ReactiveFormsModule } from '@angular/forms';\nimport { HttpClientModule } from '@angular/common/http';\nimport { MockService } from './examples/mock-data';\n\nimport { AppComponent } from './app.component';\nimport { AngularMultiSelectModule } from '../../projects/angular2-multiselect-dropdown-lib/src/lib/multiselect.component';\nimport { AppRouterModule } from './app.router';\nimport { BasicExample } from './examples/basic';\nimport { SingleSelectionExample } from './examples/singleselection';\nimport { GroupByExample } from './examples/groupBy';\nimport { SearchFilterExample } from './examples/searchFilter';\nimport { TemplatingExample } from './examples/templating';\nimport { ResetDropdownExample } from './examples/resetdropdown';\nimport { DisableModeExample } from './examples/disablemode';\nimport {LimitSelectionExample } from './examples/limitselection';\nimport {LimitBadgesExample } from './examples/limitbadges';\nimport { CustomPlaceholderExample } from './examples/customplaceholder';\nimport { StylingExample } from './examples/styling';\nimport { ng2Gist } from './examples/gist';\nimport { TabViewModule } from 'primeng/primeng';\nimport { UsingWithFormExample } from './examples/usingWithForms';\nimport { UsingWithReactiveFormExample } from './examples/usingInReactForms';\nimport { LazyLoadingExample } from './examples/lazyLoading';\nimport { MultipleDropdownsExample } from './examples/multipleDropdowns';\nimport { DynamicDataSetsExample } from './examples/dynamicDataSets';\nimport { ThemingExample } from './examples/theming';\nimport { RemoteDataExample } from './examples/remoteData';\nimport { CustomSearchExample } from './examples/customSearch';\nimport { SearchFilterByOnePropertyExample } from './examples/searchByOneProperty';\nimport {LazyLoadingRemoteDataExample } from './examples/lazyLoadingRemoteData';\nimport {SearchFilterAddItemExample } from './examples/searchFilterAddNewItem';\nimport { EventsExample } from './examples/events';\nimport { HighlightModule } from 'ngx-highlightjs';\nimport { UsingInListExample } from './examples/usingInList';\n\nimport xml from 'highlight.js/lib/languages/xml';\nimport scss from 'highlight.js/lib/languages/scss';\nimport typescript from 'highlight.js/lib/languages/typescript';\n\nexport function hljsLanguages() {\n return [\n {name: 'typescript', func: typescript},\n {name: 'scss', func: scss},\n {name: 'xml', func: xml}\n ];\n}\n\n@NgModule({\n declarations: [\n AppComponent,\n ng2Gist,\n BasicExample,\n SingleSelectionExample,\n GroupByExample,\n SearchFilterExample,\n TemplatingExample,\n ResetDropdownExample,\n DisableModeExample,\n LimitSelectionExample,\n LimitBadgesExample,\n CustomPlaceholderExample,\n StylingExample,\n UsingWithFormExample,\n UsingWithReactiveFormExample,\n LazyLoadingExample,\n MultipleDropdownsExample,\n DynamicDataSetsExample,\n ThemingExample,\n RemoteDataExample,\n CustomSearchExample,\n SearchFilterByOnePropertyExample,\n LazyLoadingRemoteDataExample,\n SearchFilterAddItemExample,\n EventsExample,\n UsingInListExample\n ],\n imports: [\n BrowserModule.withServerTransition({ appId: 'serverApp' }),\n ReactiveFormsModule,\n FormsModule,\n AppRouterModule,\n AngularMultiSelectModule,\n TabViewModule,\n HttpClientModule,\n HighlightModule.forRoot({\n languages: hljsLanguages\n })\n ],\n providers: [MockService],\n bootstrap: [AppComponent]\n})\nexport class AppModule { }\n","import { RouterModule, Routes } from '@angular/router';\nimport { NgModule } from '@angular/core';\n\nimport { AppComponent } from './app.component';\nimport { BasicExample } from './examples/basic';\nimport { SingleSelectionExample } from './examples/singleselection';\nimport { GroupByExample } from './examples/groupBy';\nimport { SearchFilterExample } from './examples/searchFilter';\nimport { TemplatingExample } from './examples/templating';\nimport { ResetDropdownExample } from './examples/resetdropdown';\nimport { DisableModeExample } from './examples/disablemode';\nimport { LimitSelectionExample } from './examples/limitselection';\nimport { LimitBadgesExample } from './examples/limitbadges';\nimport { CustomPlaceholderExample } from './examples/customplaceholder';\nimport { StylingExample } from './examples/styling';\nimport { UsingWithFormExample } from './examples/usingWithForms';\nimport { UsingWithReactiveFormExample } from './examples/usingInReactForms';\nimport { LazyLoadingExample } from './examples/lazyLoading';\nimport { MultipleDropdownsExample } from './examples/multipleDropdowns';\nimport { DynamicDataSetsExample } from './examples/dynamicDataSets';\nimport { ThemingExample } from './examples/theming';\nimport { RemoteDataExample } from './examples/remoteData';\nimport { CustomSearchExample } from './examples/customSearch';\nimport { SearchFilterByOnePropertyExample } from './examples/searchByOneProperty';\nimport {LazyLoadingRemoteDataExample } from './examples/lazyLoadingRemoteData';\nimport {SearchFilterAddItemExample } from './examples/searchFilterAddNewItem';\nimport { EventsExample } from './examples/events';\nimport { UsingInListExample } from './examples/usingInList';\n\nconst appRoutes: Routes = [\n { path: '', redirectTo: '/basic', pathMatch: 'full' },\n { path: 'basic', component: BasicExample },\n { path: 'singleselection', component: SingleSelectionExample },\n { path: 'searchfilter', component: SearchFilterExample },\n { path: 'groupby', component: GroupByExample },\n { path: 'templating', component: TemplatingExample },\n { path: 'dropdownMethods', component: ResetDropdownExample },\n { path: 'disablemode', component: DisableModeExample },\n { path: 'limitselection', component: LimitSelectionExample },\n { path: 'limitbadges', component: LimitBadgesExample },\n { path: 'customplaceholder', component: CustomPlaceholderExample },\n { path: 'styling', component: StylingExample },\n { path: 'usinginform', component: UsingWithFormExample },\n { path: 'usinginreactiveform', component: UsingWithReactiveFormExample },\n { path: 'lazyloading', component: LazyLoadingExample },\n { path: 'multipledropdowns', component: MultipleDropdownsExample },\n { path: 'dynamicdatasets', component: DynamicDataSetsExample },\n { path: 'theming', component: ThemingExample },\n { path: 'remoteData', component: RemoteDataExample },\n { path: 'customSearchAPI', component: CustomSearchExample },\n { path: 'searchFilterByOneProperty', component: SearchFilterByOnePropertyExample },\n { path: 'lazyloadingRemoteData', component: LazyLoadingRemoteDataExample},\n { path: 'searchfilterAddNewItem', component: SearchFilterAddItemExample},\n { path: 'events', component: EventsExample},\n { path: 'usingInList', component: UsingInListExample}\n\n];\n\n\n@NgModule({\n imports: [\n RouterModule.forRoot(appRoutes, { useHash: false })\n ],\n exports: [\n RouterModule\n ]\n\n})\nexport class AppRouterModule { }\n","

{{title}}

\n
\n \n \n
\n

Code

\n\n\n \n \n \n \n \n \n \n \n \n \n \n\n","import { Component, OnInit } from '@angular/core';\nimport { Title, Meta } from '@angular/platform-browser';\n@Component({\n templateUrl: './views/view.html'\n})\nexport class BasicExample implements OnInit {\n\n itemList = [];\n selectedItems = [];\n settings = {};\n\n constructor(public seotitle: Title, public meta: Meta) { \n this.seotitle.setTitle('Basic example');\n this.meta.addTags([\n {name: 'description', content:'Basic example of angular multiselect drodown.'}\n ]);\n }\n ngOnInit() {\n\n this.itemList = [\n { \"countryId\": 1, \"itemName\": \"India\" },\n { \"countryId\": 2, \"itemName\": \"Singapore\" },\n { \"countryId\": 3, \"itemName\": \"Australia\" },\n { \"countryId\": 4, \"itemName\": \"Canada\" },\n { \"countryId\": 5, \"itemName\": \"South Korea\" },\n { \"countryId\": 6, \"itemName\": \"Brazil\" }\n ];\n\n this.selectedItems = [\n { \"countryId\": 1, \"itemName\": \"India\" },\n { \"countryId\": 2, \"itemName\": \"Singapore\" },\n { \"countryId\": 3, \"itemName\": \"Australia\" },\n { \"countryId\": 4, \"itemName\": \"Canada\" },\n { \"countryId\": 5, \"itemName\": \"South Korea\" }];\n\n this.settings = {\n text: \"Select Countries\",\n selectAllText: 'Select All',\n unSelectAllText: 'UnSelect All',\n classes: \"myclass custom-class\",\n primaryKey: \"countryId\"\n };\n }\n onItemSelect(item: any) {\n console.log(item);\n console.log(this.selectedItems);\n }\n OnItemDeSelect(item: any) {\n console.log(item);\n console.log(this.selectedItems);\n }\n onSelectAll(items: any) {\n console.log(items);\n }\n onDeSelectAll(items: any) {\n console.log(items);\n }\n cssgist: boolean = false;\n title: string = \"Basic example\";\n tsgist: string = \"CuppaLabs/ee72fbc7b21dad7e4e7664c5b1553235\";\n htmlgist: string = \"CuppaLabs/eb78d42ab7971fda6493586e329bfdb8\";\n tstitle: string = \"basic.ts\"\n htmltitle: string = \"basic.html\";\n}\n","

\n {{title}}

\n
\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
\n

Code

\n\n\n \n \n \n \n \n \n \n \n \n \n \n","import { Component, OnInit } from '@angular/core';\nimport { HttpClient } from '@angular/common/http';\n\n@Component({\n templateUrl: './views/customSearch.html'\n})\nexport class CustomSearchExample implements OnInit {\n\n itemList: any = [];\n selectedItems = [];\n settings = {};\n\n constructor(private http: HttpClient) { }\n ngOnInit() {\n\n this.settings = {\n text: \"Select Countries\",\n selectAllText: 'Select All',\n unSelectAllText: 'UnSelect All',\n classes: \"myclass custom-class\",\n primaryKey: \"alpha3Code\",\n labelKey: \"name\",\n noDataLabel: \"Search Countries...\",\n enableSearchFilter: true,\n searchBy: ['name', 'capital']\n };\n }\n onItemSelect(item: any) {\n console.log(item);\n console.log(this.selectedItems);\n }\n OnItemDeSelect(item: any) {\n console.log(item);\n console.log(this.selectedItems);\n }\n onSelectAll(items: any) {\n console.log(items);\n }\n onDeSelectAll(items: any) {\n console.log(items);\n }\n onSearch(evt: any) {\n console.log(evt.target.value);\n this.itemList = [];\n this.http.get('https://restcountries.eu/rest/v2/name/'+evt.target.value+'?fulltext=true')\n .subscribe(res => {\n console.log(res);\n this.itemList = res;\n }, error => {\n\n });\n }\n cssgist: boolean = false;\n title: string = \"Custom Search / Search from API\";\n tsgist: string = \"CuppaLabs/1bab5ecbbb22727eb0afe49848a454f0\";\n htmlgist: string = \"CuppaLabs/7f0d8ea9f9cfe9eec2cc1699affd2c14\";\n tstitle: string = \"customSearch.ts\"\n htmltitle: string = \"customSearch.html\";\n}\n","import { Component, OnInit } from '@angular/core';\n\n@Component({\n templateUrl: './views/view.html'\n})\nexport class CustomPlaceholderExample implements OnInit {\n\n itemList = [];\n selectedItems = [];\n settings = {};\n\n constructor() {\n\n }\n ngOnInit() {\n\n\n this.itemList = [\n { \"id\": 1, \"itemName\": \"India\" },\n { \"id\": 2, \"itemName\": \"Singapore\" },\n { \"id\": 3, \"itemName\": \"Australia\" },\n { \"id\": 4, \"itemName\": \"Canada\" },\n { \"id\": 5, \"itemName\": \"South Korea\" },\n { \"id\": 6, \"itemName\": \"Brazil\" }\n ];\n\n this.selectedItems = [\n { \"id\": 1, \"itemName\": \"India\" },\n { \"id\": 2, \"itemName\": \"Singapore\" },\n { \"id\": 3, \"itemName\": \"Australia\" },\n { \"id\": 4, \"itemName\": \"Canada\" }];\n this.settings = {\n text: \"Select Countries\",\n selectAllText: 'Select All',\n unSelectAllText: 'UnSelect All',\n enableSearchFilter: true,\n classes: \"myclass custom-class\",\n searchPlaceholderText: \"Custom Placeholder text\"\n };\n }\n onItemSelect(item: any) {\n console.log(item);\n console.log(this.selectedItems);\n }\n OnItemDeSelect(item: any) {\n console.log(item);\n console.log(this.selectedItems);\n }\n onSelectAll(items: any) {\n console.log(items);\n }\n onDeSelectAll(items: any) {\n console.log(items);\n }\n cssgist: boolean = false;\n title: string = \"Custom search placeholder\";\n tsgist: string = \"CuppaLabs/48c087b6c0b4381d5bae1c689cc0ee3e\";\n htmlgist: string = \"CuppaLabs/eb78d42ab7971fda6493586e329bfdb8\";\n tstitle: string = \"customPlaceholder.ts\"\n htmltitle: string = \"customPlaceholder.html\";\n}\n","

{{title}}

\n
\n \n
\n
\n
\n \n
\n
\n \n
\n
\n

Code

\n\n\n \n \n \n \n \n \n \n \n \n \n \n\n","import { Component, OnInit } from '@angular/core';\n\n@Component({\n templateUrl: './views/disableMode.html'\n})\nexport class DisableModeExample implements OnInit {\n\n itemList = [];\n selectedItems = [];\n settings: any = {};\n\n constructor() {\n\n }\n ngOnInit() {\n\n\n this.itemList = [\n { \"id\": 1, \"itemName\": \"India\" },\n { \"id\": 2, \"itemName\": \"Singapore\" },\n { \"id\": 3, \"itemName\": \"Australia\" },\n { \"id\": 4, \"itemName\": \"Canada\" },\n { \"id\": 5, \"itemName\": \"South Korea\" },\n { \"id\": 6, \"itemName\": \"Brazil\" }\n ];\n\n this.selectedItems = [\n { \"id\": 1, \"itemName\": \"India\" },\n { \"id\": 2, \"itemName\": \"Singapore\" },\n { \"id\": 3, \"itemName\": \"Australia\" },\n { \"id\": 4, \"itemName\": \"Canada\" }];\n this.settings = {\n text: \"Select Countries\",\n selectAllText: 'Select All',\n unSelectAllText: 'UnSelect All',\n enableSearchFilter: false,\n classes: \"myclass custom-class\",\n disabled: true\n };\n }\n onItemSelect(item: any) {\n console.log(item);\n console.log(this.selectedItems);\n }\n OnItemDeSelect(item: any) {\n console.log(item);\n console.log(this.selectedItems);\n }\n onSelectAll(items: any) {\n console.log(items);\n }\n onDeSelectAll(items: any) {\n console.log(items);\n }\n showModel() {\n console.log(this.selectedItems);\n }\n changeData() {\n this.selectedItems = [];\n }\n disable() {\n this.settings = {\n text: \"Select Countries\",\n selectAllText: 'Select All',\n unSelectAllText: 'UnSelect All',\n enableSearchFilter: false,\n classes: \"myclass custom-class\",\n disabled: true\n };\n }\n enable() {\n this.settings = {\n text: \"Select Countries\",\n selectAllText: 'Select All',\n unSelectAllText: 'UnSelect All',\n enableSearchFilter: false,\n classes: \"myclass custom-class\",\n disabled: false\n };\n }\n toggleDisable() {\n console.log(this.settings);\n this.settings = {\n text: \"Select Countries\",\n selectAllText: 'Select All',\n unSelectAllText: 'UnSelect All',\n enableSearchFilter: false,\n classes: \"myclass custom-class\",\n limitSelection: 2,\n disabled: false\n };\n }\n cssgist: boolean = false;\n title: string = \"Disable mode\";\n tsgist: string = \"CuppaLabs/96f799302bdfa08e11b4420c86c1d720\";\n htmlgist: string = \"CuppaLabs/eb78d42ab7971fda6493586e329bfdb8\";\n tstitle: string = \"disableMode.ts\"\n htmltitle: string = \"disableMode.html\";\n}\n","

{{title}}

\n
\n \n
\n\n\n\n

Code

\n\n\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n\n","import { Component, OnInit } from '@angular/core';\nimport { MockService } from './mock-data';\n\n@Component({\n templateUrl: './views/dynamicData.html'\n})\nexport class DynamicDataSetsExample implements OnInit {\n\n itemList = [];\n selectedItems = [];\n settings = {};\n\n constructor(private mockService: MockService) { }\n ngOnInit() {\n\n this.settings = {\n text: \"Select Countries\",\n selectAllText: 'Select All',\n unSelectAllText: 'UnSelect All',\n classes: \"myclass custom-class\"\n };\n this.loadDataSet2();\n }\n onItemSelect(item: any) {\n console.log(item);\n console.log(this.selectedItems);\n }\n OnItemDeSelect(item: any) {\n console.log(item);\n console.log(this.selectedItems);\n }\n onSelectAll(items: any) {\n console.log(items);\n }\n onDeSelectAll(items: any) {\n console.log(items);\n }\n loadDataSet1() {\n this.settings = {\n text: \"Select Fruits\",\n selectAllText: 'Select All',\n unSelectAllText: 'UnSelect All',\n classes: \"myclass custom-class\"\n };\n this.selectedItems = [];\n this.itemList = [];\n const tempArr = this.mockService.getFruits();\n for (let i = 0; i < tempArr.length; ++i) {\n this.itemList.push(tempArr[i]);\n }\n }\n loadDataSet2() {\n this.settings = {\n text: \"Select Countries\",\n selectAllText: 'Select All',\n unSelectAllText: 'UnSelect All',\n classes: \"myclass custom-class\"\n };\n this.selectedItems = [];\n this.itemList = [];\n const tempArr = this.mockService.getCountries();\n for (let i = 0; i < tempArr.length; ++i) {\n this.itemList.push(tempArr[i]);\n }\n }\n cssgist: boolean = false;\n title: string = \"Dynamic datasets loading\";\n tsgist: string = \"CuppaLabs/302d580f91bc40611b2474558d98fbf2\";\n htmlgist: string = \"CuppaLabs/eb78d42ab7971fda6493586e329bfdb8\";\n mockgist: string = \"CuppaLabs/b3e947ec83710307a3b8680a2ff89693\";\n tstitle: string = \"dynamicData.ts\"\n htmltitle: string = \"dynamicData.html\";\n mocktitle: string = \"mock-data.ts\";\n}\n","

{{title}}

\n
\n
\n
\n
\n
\n \n \n\n
\n
\n
\n
\n
\n
\n
\n
On Select
\n \n
\n
\n
On Un-select
\n \n
\n
\n
On Open
\n \n
\n
\n
On Close
\n \n
\n
\n
On Select All
\n \n
\n
\n
On Un-Select All
\n \n
\n
\n
\n\n

Code

\n\n\n \n \n \n \n \n \n","import { Component, OnInit } from '@angular/core';\n\n@Component({\n templateUrl: './views/events.html'\n})\nexport class EventsExample implements OnInit {\n\n itemList = [];\n selectedItems = [];\n settings = {};\n selectedItemString: string = '';\n unSelectedItemString: string = '';\n openString: string = '';\n closeString: string = '';\n selectAllString: string = '';\n unSelectAllString: string = '';\n\n constructor() { }\n ngOnInit() {\n\n this.itemList = [\n { \"countryId\": 1, \"itemName\": \"India\" },\n { \"countryId\": 2, \"itemName\": \"Singapore\" },\n { \"countryId\": 3, \"itemName\": \"Australia\" },\n { \"countryId\": 4, \"itemName\": \"Canada\" },\n { \"countryId\": 5, \"itemName\": \"South Korea\" },\n { \"countryId\": 6, \"itemName\": \"Brazil\" }\n ];\n\n this.selectedItems = [\n { \"countryId\": 1, \"itemName\": \"India\" },\n { \"countryId\": 2, \"itemName\": \"Singapore\" },\n { \"countryId\": 3, \"itemName\": \"Australia\" },\n { \"countryId\": 4, \"itemName\": \"Canada\" }];\n\n this.settings = {\n text: \"Select Countries\",\n selectAllText: 'Select All',\n unSelectAllText: 'UnSelect All',\n classes: \"myclass custom-class\",\n primaryKey: \"countryId\"\n };\n }\n onItemSelect(item: any) {\n console.log(item);\n this.selectedItemString = JSON.stringify(item);\n console.log(this.selectedItems);\n }\n OnItemDeSelect(item: any) {\n console.log(item);\n this.unSelectedItemString = JSON.stringify(item);\n console.log(this.selectedItems);\n }\n onOpen(evt: any){\n this.openString = \"Dropdown opened: \"+evt;\n }\n onClose(evt: any){\n this.closeString = \"Dropdown opened: \"+evt;\n }\n onSelectAll(items: any) {\n console.log(items);\n this.selectAllString = JSON.stringify(items);\n this.unSelectAllString = \"\";\n }\n onDeSelectAll(items: any) {\n console.log(items);\n this.selectAllString = '';\n this.unSelectAllString = \"all items un-selected\";\n }\n cssgist: boolean = false;\n title: string = \"Events\";\n tsgist: string = \"CuppaLabs/ee72fbc7b21dad7e4e7664c5b1553235\";\n htmlgist: string = \"CuppaLabs/eb78d42ab7971fda6493586e329bfdb8\";\n tstitle: string = \"basic.ts\"\n htmltitle: string = \"basic.html\";\n}\n","\n \n ","import {Component, Input, ViewChild, ElementRef, AfterViewInit} from '@angular/core';\n\n@Component({\n selector: 'ng2-gist',\n template:`\n \n `,\n styleUrls: []\n})\n\nexport class ng2Gist implements AfterViewInit {\n @ViewChild('iframe', {static: true}) iframe:ElementRef;\n @Input() gistId;\n\n constructor() { }\n\n ngAfterViewInit() {\n this.iframe.nativeElement.id = 'gist-' + this.gistId;\n let doc = this.iframe.nativeElement.contentDocument || this.iframe.nativeElement.contentElement.contentWindow;\n let content = `\n \n \n \n \n \n \n \n \n `;\n doc.open();\n doc.write(content);\n doc.close();\n }\n}","

{{title}}

\n
\n \n
\n\n\n\n

Code

\n\n\n \n \n \n \n \n \n \n \n \n \n \n\n","import { Component, OnInit } from '@angular/core';\n\n@Component({\n templateUrl: './views/groupBy.html'\n})\nexport class GroupByExample implements OnInit {\n\n itemList = [];\n selectedItems = [];\n settings = {};\n\n constructor() {\n\n }\n ngOnInit() {\n\n\n this.itemList = [\n { \"id\": 1, \"itemName\": \"India\", \"category\": \"asia\" },\n { \"id\": 2, \"itemName\": \"Singapore\", \"category\": \"asia pacific\" },\n { \"id\": 3, \"itemName\": \"Germany\", \"category\": \"Europe\" },\n { \"id\": 4, \"itemName\": \"France\", \"category\": \"Europe\" },\n { \"id\": 5, \"itemName\": \"South Korea\", \"category\": \"asia\" },\n { \"id\": 6, \"itemName\": \"Sweden\", \"category\": \"Europe\" }\n ];\n\n this.selectedItems = [\n { \"id\": 1, \"itemName\": \"India\", \"category\": \"asia\" },\n { \"id\": 5, \"itemName\": \"South Korea\", \"category\": \"asia\" }\n ]\n this.settings = {\n singleSelection: false,\n text: \"Select Fields\",\n selectAllText: 'Select All',\n unSelectAllText: 'UnSelect All',\n searchPlaceholderText: 'Search Fields',\n enableSearchFilter: true,\n groupBy: \"category\",\n selectGroup: true,\n searchBy: [\"itemName\"]\n };\n }\n onItemSelect(item: any) {\n console.log(item);\n console.log(this.selectedItems);\n }\n OnItemDeSelect(item: any) {\n console.log(item);\n console.log(this.selectedItems);\n }\n onSelectAll(items: any) {\n console.log(items);\n }\n onDeSelectAll(items: any) {\n console.log(items);\n }\n onGroupSelect(selectedGroupItem){\n console.log(selectedGroupItem);\n }\n onGroupDeSelect(deselectedGroupItem){\n console.log(deselectedGroupItem);\n }\n onChange(e:any){\nconsole.log(e)\n }\n loadDataSet1(){\n this.selectedItems = [];\n this.itemList = [ { \"id\": 1, \"itemName\": \"Apple\", \"category\": \"fruits\" },\n { \"id\": 2, \"itemName\": \"Banana\", \"category\": \"fruits\" },\n { \"id\": 5, \"itemName\": \"Tomatoe\", \"category\": \"vegetables\" },\n { \"id\": 6, \"itemName\": \"Potatoe\", \"category\": \"vegetables\" }];\n }\n loadDataSet2(){\n this.selectedItems = [];\n this.itemList = [\n { \"id\": 1, \"itemName\": \"India\", \"category\": \"asia\" },\n { \"id\": 2, \"itemName\": \"Singapore\", \"category\": \"asia pacific\" },\n { \"id\": 3, \"itemName\": \"Germany\", \"category\": \"Europe\" },\n { \"id\": 4, \"itemName\": \"France\", \"category\": \"Europe\" },\n { \"id\": 5, \"itemName\": \"South Korea\", \"category\": \"asia\" },\n { \"id\": 6, \"itemName\": \"Sweden\", \"category\": \"Europe\" }\n ];\n }\n cssgist: boolean = false;\n title: string = \"Group By\";\n tsgist: string = \"CuppaLabs/f6c1328ade3201042a4b4d268a30ad8c\";\n htmlgist: string = \"CuppaLabs/eb78d42ab7971fda6493586e329bfdb8\";\n tstitle: string = \"groupBy.ts\"\n htmltitle: string = \"groupBy.html\";\n}\n","

{{title}}

\n
\n
\n \n
\nTotal Records : {{itemList.length}}\n
\n
\n \n
\n
\n

Code

\n\n\n \n \n \n \n \n \n \n \n \n \n \n\n","import { Component, OnInit } from '@angular/core';\n\n@Component({\n templateUrl: './views/lazyLoading.html'\n})\nexport class LazyLoadingExample implements OnInit {\n\n itemList = [];\n selectedItems = [];\n settings = {};\n public categories: any = [\"Indian\", \"American\", \"Canadian\", \"Chinese\"];\n public namesList:any[] = [\"Smith\",\"Johnson\",\"Williams\",\"Brown\",\"Jones\",\"Miller\",\"Davis\",\"Garcia\",\"Rodriguez\",\"Wilson\",\"Martinez\",\"Anderson\",\"Taylor\",\"Thomas\",\"Hernandez\",\"Moore\",\"Martin\",\"Jackson\",\"Thompson\",\"White\",\"Lopez\",\"Lee\",\"Gonzalez\",\"Harris\",\"Clark\",\"Lewis\",\"Robinson\",\"Walker\",\"Perez\",\"Hall\",\"Young\",\"Allen\",\"Sanchez\",\"Wright\",\"King\",\"Scott\",\"Green\",\"Baker\",\"Adams\",\"Nelson\",\"Hill\",\"Ramirez\",\"Campbell\",\"Mitchell\",\"Roberts\",\"Carter\",\"Phillips\",\"Evans\",\"Turner\",\"Torres\",\"Parker\",\"Collins\",\"Edwards\",\"Stewart\",\"Flores\",\"Morris\",\"Nguyen\",\"Murphy\",\"Rivera\",\"Cook\",\"Rogers\",\"Morgan\",\"Peterson\",\"Cooper\",\"Reed\",\"Bailey\",\"Bell\",\"Gomez\",\"Kelly\",\"Howard\",\"Ward\",\"Cox\",\"Diaz\",\"Richardson\",\"Wood\",\"Watson\",\"Brooks\",\"Bennett\",\"Gray\",\"James\",\"Reyes\",\"Cruz\",\"Hughes\",\"Price\",\"Myers\",\"Long\",\"Foster\",\"Sanders\",\"Ross\",\"Morales\",\"Powell\",\"Sullivan\",\"Russell\",\"Ortiz\",\"Jenkins\",\"Gutierrez\",\"Perry\",\"Butler\",\"Barnes\",\"Fisher\",\"Henderson\",\"Coleman\",\"Simmons\",\"Patterson\",\"Jordan\",\"Reynolds\",\"Hamilton\",\"Graham\",\"Kim\",\"Gonzales\",\"Alexander\",\"Ramos\",\"Wallace\",\"Griffin\",\"West\",\"Cole\",\"Hayes\",\"Chavez\",\"Gibson\",\"Bryant\",\"Ellis\",\"Stevens\",\"Murray\",\"Ford\",\"Marshall\",\"Owens\",\"Mcdonald\",\"Harrison\",\"Ruiz\",\"Kennedy\",\"Wells\",\"Alvarez\",\"Woods\",\"Mendoza\",\"Castillo\",\"Olson\",\"Webb\",\"Washington\",\"Tucker\",\"Freeman\",\"Burns\",\"Henry\",\"Vasquez\",\"Snyder\",\"Simpson\",\"Crawford\",\"Jimenez\",\"Porter\",\"Mason\",\"Shaw\",\"Gordon\",\"Wagner\",\"Hunter\",\"Romero\",\"Hicks\",\"Dixon\",\"Hunt\",\"Palmer\",\"Robertson\",\"Black\",\"Holmes\",\"Stone\",\"Meyer\",\"Boyd\",\"Mills\",\"Warren\",\"Fox\",\"Rose\",\"Rice\",\"Moreno\",\"Schmidt\",\"Patel\",\"Ferguson\",\"Nichols\",\"Herrera\",\"Medina\",\"Ryan\",\"Fernandez\",\"Weaver\",\"Daniels\",\"Stephens\",\"Gardner\",\"Payne\",\"Kelley\",\"Dunn\",\"Pierce\",\"Arnold\",\"Tran\",\"Spencer\",\"Peters\",\"Hawkins\",\"Grant\",\"Hansen\",\"Castro\",\"Hoffman\",\"Hart\",\"Elliott\",\"Cunningham\",\"Knight\",\"Bradley\",\"Carroll\",\"Hudson\",\"Duncan\",\"Armstrong\",\"Berry\",\"Andrews\",\"Johnston\",\"Ray\",\"Lane\",\"Riley\",\"Carpenter\",\"Perkins\",\"Aguilar\",\"Silva\",\"Richards\",\"Willis\",\"Matthews\",\"Chapman\",\"Lawrence\",\"Garza\",\"Vargas\",\"Watkins\",\"Wheeler\",\"Larson\",\"Carlson\",\"Harper\",\"George\",\"Greene\",\"Burke\",\"Guzman\",\"Morrison\",\"Munoz\",\"Jacobs\",\"Obrien\",\"Lawson\",\"Franklin\",\"Lynch\",\"Bishop\",\"Carr\",\"Salazar\",\"Austin\",\"Mendez\",\"Gilbert\",\"Jensen\",\"Williamson\",\"Montgomery\",\"Harvey\",\"Oliver\",\"Howell\",\"Dean\",\"Hanson\",\"Weber\",\"Garrett\",\"Sims\",\"Burton\",\"Fuller\",\"Soto\",\"Mccoy\",\"Welch\",\"Chen\",\"Schultz\",\"Walters\",\"Reid\",\"Fields\",\"Walsh\",\"Little\",\"Fowler\",\"Bowman\",\"Davidson\",\"May\",\"Day\",\"Schneider\",\"Newman\",\"Brewer\",\"Lucas\",\"Holland\",\"Wong\",\"Banks\",\"Santos\",\"Curtis\",\"Pearson\",\"Delgado\",\"Valdez\",\"Pena\",\"Rios\",\"Douglas\",\"Sandoval\",\"Barrett\",\"Hopkins\",\"Keller\",\"Guerrero\",\"Stanley\",\"Bates\",\"Alvarado\",\"Beck\",\"Ortega\",\"Wade\",\"Estrada\",\"Contreras\",\"Barnett\",\"Caldwell\",\"Santiago\",\"Lambert\",\"Powers\",\"Chambers\",\"Nunez\",\"Craig\",\"Leonard\",\"Lowe\",\"Rhodes\",\"Byrd\",\"Gregory\",\"Shelton\",\"Frazier\",\"Becker\",\"Maldonado\",\"Fleming\",\"Vega\",\"Sutton\",\"Cohen\",\"Jennings\",\"Parks\",\"Mcdaniel\",\"Watts\",\"Barker\",\"Norris\",\"Vaughn\",\"Vazquez\",\"Holt\",\"Schwartz\",\"Steele\",\"Benson\",\"Neal\",\"Dominguez\",\"Horton\",\"Terry\",\"Wolfe\",\"Hale\",\"Lyons\",\"Graves\",\"Haynes\",\"Miles\",\"Park\",\"Warner\",\"Padilla\",\"Bush\",\"Thornton\",\"Mccarthy\",\"Mann\",\"Zimmerman\",\"Erickson\",\"Fletcher\",\"Mckinney\",\"Page\",\"Dawson\",\"Joseph\",\"Marquez\",\"Reeves\",\"Klein\",\"Espinoza\",\"Baldwin\",\"Moran\",\"Love\",\"Robbins\",\"Higgins\",\"Ball\",\"Cortez\",\"Le\",\"Griffith\",\"Bowen\",\"Sharp\",\"Cummings\",\"Ramsey\",\"Hardy\",\"Swanson\",\"Barber\",\"Acosta\",\"Luna\",\"Chandler\",\"Blair\",\"Daniel\",\"Cross\",\"Simon\",\"Dennis\",\"Oconnor\",\"Quinn\",\"Gross\",\"Navarro\",\"Moss\",\"Fitzgerald\",\"Doyle\",\"Mclaughlin\",\"Rojas\",\"Rodgers\",\"Stevenson\",\"Singh\",\"Yang\",\"Figueroa\",\"Harmon\",\"Newton\",\"Paul\",\"Manning\",\"Garner\",\"Mcgee\",\"Reese\",\"Francis\",\"Burgess\",\"Adkins\",\"Goodman\",\"Curry\",\"Brady\",\"Christensen\",\"Potter\",\"Walton\",\"Goodwin\",\"Mullins\",\"Molina\",\"Webster\",\"Fischer\",\"Campos\",\"Avila\",\"Sherman\",\"Todd\",\"Chang\",\"Blake\",\"Malone\",\"Wolf\",\"Hodges\",\"Juarez\",\"Gill\",\"Farmer\",\"Hines\",\"Gallagher\",\"Duran\",\"Hubbard\",\"Cannon\",\"Miranda\",\"Wang\",\"Saunders\",\"Tate\",\"Mack\",\"Hammond\",\"Carrillo\",\"Townsend\",\"Wise\",\"Ingram\",\"Barton\",\"Mejia\",\"Ayala\",\"Schroeder\",\"Hampton\",\"Rowe\",\"Parsons\",\"Frank\",\"Waters\",\"Strickland\",\"Osborne\",\"Maxwell\",\"Chan\",\"Deleon\",\"Norman\",\"Harrington\",\"Casey\",\"Patton\",\"Logan\",\"Bowers\",\"Mueller\",\"Glover\",\"Floyd\",\"Hartman\",\"Buchanan\",\"Cobb\",\"French\",\"Kramer\",\"Mccormick\",\"Clarke\",\"Tyler\",\"Gibbs\",\"Moody\",\"Conner\",\"Sparks\",\"Mcguire\",\"Leon\",\"Bauer\",\"Norton\",\"Pope\",\"Flynn\",\"Hogan\",\"Robles\",\"Salinas\",\"Yates\",\"Lindsey\",\"Lloyd\",\"Marsh\",\"Mcbride\",\"Owen\",\"Solis\",\"Pham\",\"Lang\",\"Pratt\",\"Lara\",\"Brock\",\"Ballard\",\"Trujillo\",\"Shaffer\",\"Drake\",\"Roman\",\"Aguirre\",\"Morton\",\"Stokes\",\"Lamb\",\"Pacheco\",\"Patrick\",\"Cochran\",\"Shepherd\",\"Cain\",\"Burnett\",\"Hess\",\"Li\",\"Cervantes\",\"Olsen\",\"Briggs\",\"Ochoa\",\"Cabrera\",\"Velasquez\",\"Montoya\",\"Roth\",\"Meyers\",\"Cardenas\",\"Fuentes\",\"Weiss\",\"Hoover\",\"Wilkins\",\"Nicholson\",\"Underwood\",\"Short\",\"Carson\",\"Morrow\",\"Colon\",\"Holloway\",\"Summers\",\"Bryan\",\"Petersen\",\"Mckenzie\",\"Serrano\",\"Wilcox\",\"Carey\",\"Clayton\",\"Poole\",\"Calderon\",\"Gallegos\",\"Greer\",\"Rivas\",\"Guerra\",\"Decker\",\"Collier\",\"Wall\",\"Whitaker\",\"Bass\",\"Flowers\",\"Davenport\",\"Conley\",\"Houston\",\"Huff\",\"Copeland\",\"Hood\",\"Monroe\",\"Massey\",\"Roberson\",\"Combs\",\"Franco\",\"Larsen\",\"Pittman\",\"Randall\",\"Skinner\",\"Wilkinson\",\"Kirby\",\"Cameron\",\"Bridges\",\"Anthony\",\"Richard\",\"Kirk\",\"Bruce\",\"Singleton\",\"Mathis\",\"Bradford\",\"Boone\",\"Abbott\",\"Charles\",\"Allison\",\"Sweeney\",\"Atkinson\",\"Horn\",\"Jefferson\",\"Rosales\",\"York\",\"Christian\",\"Phelps\",\"Farrell\",\"Castaneda\",\"Nash\",\"Dickerson\",\"Bond\",\"Wyatt\",\"Foley\",\"Chase\",\"Gates\",\"Vincent\",\"Mathews\",\"Hodge\",\"Garrison\",\"Trevino\",\"Villarreal\",\"Heath\",\"Dalton\",\"Valencia\",\"Callahan\",\"Hensley\",\"Atkins\",\"Huffman\",\"Roy\",\"Boyer\",\"Shields\",\"Lin\",\"Hancock\",\"Grimes\",\"Glenn\",\"Cline\",\"Delacruz\",\"Camacho\",\"Dillon\",\"Parrish\",\"Oneill\",\"Melton\",\"Booth\",\"Kane\",\"Berg\",\"Harrell\",\"Pitts\",\"Savage\",\"Wiggins\",\"Brennan\",\"Salas\",\"Marks\",\"Russo\",\"Sawyer\",\"Baxter\",\"Golden\",\"Hutchinson\",\"Liu\",\"Walter\",\"Mcdowell\",\"Wiley\",\"Rich\",\"Humphrey\",\"Johns\",\"Koch\",\"Suarez\",\"Hobbs\",\"Beard\",\"Gilmore\",\"Ibarra\",\"Keith\",\"Macias\",\"Khan\",\"Andrade\",\"Ware\",\"Stephenson\",\"Henson\",\"Wilkerson\",\"Dyer\",\"Mcclure\",\"Blackwell\",\"Mercado\",\"Tanner\",\"Eaton\",\"Clay\",\"Barron\",\"Beasley\",\"Oneal\",\"Preston\",\"Small\",\"Wu\",\"Zamora\",\"Macdonald\",\"Vance\",\"Snow\",\"Mcclain\",\"Stafford\",\"Orozco\",\"Barry\",\"English\",\"Shannon\",\"Kline\",\"Jacobson\",\"Woodard\",\"Huang\",\"Kemp\",\"Mosley\",\"Prince\",\"Merritt\",\"Hurst\",\"Villanueva\",\"Roach\",\"Nolan\",\"Lam\",\"Yoder\",\"Mccullough\",\"Lester\",\"Santana\",\"Valenzuela\",\"Winters\",\"Barrera\",\"Leach\",\"Orr\",\"Berger\",\"Mckee\",\"Strong\",\"Conway\",\"Stein\",\"Whitehead\",\"Bullock\",\"Escobar\",\"Knox\",\"Meadows\",\"Solomon\",\"Velez\",\"Odonnell\",\"Kerr\",\"Stout\",\"Blankenship\",\"Browning\",\"Kent\",\"Lozano\",\"Bartlett\",\"Pruitt\",\"Buck\",\"Barr\",\"Gaines\",\"Durham\",\"Gentry\",\"Mcintyre\",\"Sloan\",\"Melendez\",\"Rocha\",\"Herman\",\"Sexton\",\"Moon\",\"Hendricks\",\"Rangel\",\"Stark\",\"Lowery\",\"Hardin\",\"Hull\",\"Sellers\",\"Ellison\",\"Calhoun\",\"Gillespie\",\"Mora\",\"Knapp\",\"Mccall\",\"Morse\",\"Dorsey\",\"Weeks\",\"Nielsen\",\"Livingston\",\"Leblanc\",\"Mclean\",\"Bradshaw\",\"Glass\",\"Middleton\",\"Buckley\",\"Schaefer\",\"Frost\",\"Howe\",\"House\",\"Mcintosh\",\"Ho\",\"Pennington\",\"Reilly\",\"Hebert\",\"Mcfarland\",\"Hickman\",\"Noble\",\"Spears\",\"Conrad\",\"Arias\",\"Galvan\",\"Velazquez\",\"Huynh\",\"Frederick\",\"Randolph\",\"Cantu\",\"Fitzpatrick\",\"Mahoney\",\"Peck\",\"Villa\",\"Michael\",\"Donovan\",\"Mcconnell\",\"Walls\",\"Boyle\",\"Mayer\",\"Zuniga\",\"Giles\",\"Pineda\",\"Pace\",\"Hurley\",\"Mays\",\"Mcmillan\",\"Crosby\",\"Ayers\",\"Case\",\"Bentley\",\"Shepard\",\"Everett\",\"Pugh\",\"David\",\"Mcmahon\",\"Dunlap\",\"Bender\",\"Hahn\",\"Harding\",\"Acevedo\",\"Raymond\",\"Blackburn\",\"Duffy\",\"Landry\",\"Dougherty\",\"Bautista\",\"Shah\",\"Potts\",\"Arroyo\",\"Valentine\",\"Meza\",\"Gould\",\"Vaughan\",\"Fry\",\"Rush\",\"Avery\",\"Herring\",\"Dodson\",\"Clements\",\"Sampson\",\"Tapia\",\"Bean\",\"Lynn\",\"Crane\",\"Farley\",\"Cisneros\",\"Benton\",\"Ashley\",\"Mckay\",\"Finley\",\"Best\",\"Blevins\",\"Friedman\",\"Moses\",\"Sosa\",\"Blanchard\",\"Huber\",\"Frye\",\"Krueger\",\"Bernard\",\"Rosario\",\"Rubio\",\"Mullen\",\"Benjamin\",\"Haley\",\"Chung\",\"Moyer\",\"Choi\",\"Horne\",\"Yu\",\"Woodward\",\"Ali\",\"Nixon\",\"Hayden\",\"Rivers\",\"Estes\",\"Mccarty\",\"Richmond\",\"Stuart\",\"Maynard\",\"Brandt\",\"Oconnell\",\"Hanna\",\"Sanford\",\"Sheppard\",\"Church\",\"Burch\",\"Levy\",\"Rasmussen\",\"Coffey\",\"Ponce\",\"Faulkner\",\"Donaldson\",\"Schmitt\",\"Novak\",\"Costa\",\"Montes\",\"Booker\",\"Cordova\",\"Waller\",\"Arellano\",\"Maddox\",\"Mata\",\"Bonilla\",\"Stanton\",\"Compton\",\"Kaufman\",\"Dudley\",\"Mcpherson\",\"Beltran\",\"Dickson\",\"Mccann\",\"Villegas\",\"Proctor\",\"Hester\",\"Cantrell\",\"Daugherty\",\"Cherry\",\"Bray\",\"Davila\",\"Rowland\",\"Levine\",\"Madden\",\"Spence\",\"Good\",\"Irwin\",\"Werner\",\"Krause\",\"Petty\",\"Whitney\",\"Baird\",\"Hooper\",\"Pollard\",\"Zavala\",\"Jarvis\",\"Holden\",\"Haas\",\"Hendrix\",\"Mcgrath\",\"Bird\",\"Lucero\",\"Terrell\",\"Riggs\",\"Joyce\",\"Mercer\",\"Rollins\",\"Galloway\",\"Duke\",\"Odom\",\"Andersen\",\"Downs\",\"Hatfield\",\"Benitez\",\"Archer\",\"Huerta\",\"Travis\",\"Mcneil\",\"Hinton\",\"Zhang\",\"Hays\",\"Mayo\",\"Fritz\",\"Branch\",\"Mooney\",\"Ewing\",\"Ritter\",\"Esparza\",\"Frey\",\"Braun\",\"Gay\",\"Riddle\",\"Haney\",\"Kaiser\",\"Holder\",\"Chaney\",\"Mcknight\",\"Gamble\",\"Vang\",\"Cooley\",\"Carney\",\"Cowan\",\"Forbes\",\"Ferrell\",\"Davies\",\"Barajas\",\"Shea\",\"Osborn\",\"Bright\",\"Cuevas\",\"Bolton\",\"Murillo\",\"Lutz\",\"Duarte\",\"Kidd\",\"Key\",\"Cooke\"];\n constructor() { }\n ngOnInit() {\n\n this.itemList = [];\n for(var t=1;t<=1000;t++){\n var tempObj = {\"id\":0,\"itemName\":\"\",\"category\":\"\"};\n tempObj.id = t;\n tempObj.itemName= this.namesList[Math.floor(Math.random()*this.namesList.length)];\n tempObj.category= this.categories[Math.floor(Math.random()*this.categories.length)];\n this.itemList.push(tempObj);\n }\n\n this.selectedItems = [];\n\n this.settings = {\n text: \"Select Items\",\n selectAllText: 'Select All',\n unSelectAllText: 'UnSelect All',\n classes: \"myclass custom-class\",\n enableSearchFilter: true,\n lazyLoading: true,\n badgeShowLimit: 4\n\n };\n }\n onItemSelect(item: any) {\n console.log(item);\n console.log(this.selectedItems);\n }\n OnItemDeSelect(item: any) {\n console.log(item);\n console.log(this.selectedItems);\n }\n onSelectAll(items: any) {\n console.log(items);\n }\n onDeSelectAll(items: any) {\n console.log(items);\n }\n onScroll(e:any){\n console.log(e);\n }\n onScrollToEnd(e:any){\n console.log(e);\n }\n changeData() {\n this.selectedItems = [];\n }\n cssgist: boolean = false;\n title: string = \"Virtual scrolling - Lazy load large data sets\";\n tsgist: string = \"CuppaLabs/aab6c8b30a6901af01249c474f3f0cbd\";\n htmlgist: string = \"CuppaLabs/c77fea947ef053aa22973fcd9c7c612a\";\n tstitle: string = \"lazyLoading.ts\"\n htmltitle: string = \"lazyLoading.html\";\n}\n","

{{title}}

\n
\n\n
\n \n
\nTotal Records : {{itemList.length}}\n
\n
\n \n
\n
\n

Code

\n\n\n \n \n \n \n \n \n \n \n \n \n \n\n","import { Component, OnInit } from '@angular/core';\nimport { MockService } from './mock-data';\n\n@Component({\n templateUrl: './views/lazyLoadingRemoteData.html'\n})\nexport class LazyLoadingRemoteDataExample implements OnInit {\n\n itemList = [];\n selectedItems = [];\n settings = {};\n loading = false;\n indices: any;\n readonly bufferSize: number = 10;\n\n constructor(private appService: MockService) { }\n ngOnInit() {\n this.itemList = [];\n this.selectedItems = [];\n\n this.settings = {\n text: \"Select Items\",\n selectAllText: 'Select All',\n unSelectAllText: 'UnSelect All',\n classes: \"myclass custom-class\",\n enableSearchFilter: true,\n lazyLoading: true,\n labelKey: 'name',\n limitSelection: 3\n\n };\n }\n onItemSelect(item: any) {\n console.log(item);\n console.log(this.selectedItems);\n }\n OnItemDeSelect(item: any) {\n console.log(item);\n console.log(this.selectedItems);\n }\n onSelectAll(items: any) {\n console.log(items);\n }\n onDeSelectAll(items: any) {\n console.log(items);\n }\n onScroll(e: any) {\n console.log(e);\n }\n onOpen(e:any){\n console.log(this.itemList);\n }\n fetchMore(event: any) {\n if (event.endIndex === this.itemList.length - 1) {\n this.loading = true;\n this.appService.getChunkData(this.itemList.length, this.bufferSize).then(chunk => {\n this.itemList = this.itemList.concat(chunk);\n this.loading = false;\n }, () => this.loading = false);\n }\n }\n changeData() {\n this.selectedItems = [];\n }\n cssgist: boolean = false;\n title: string = \"Lazy loading - Remote Data API\";\n tsgist: string = \"CuppaLabs/3833720c12e23f6c8ee5fd870e38ad5b\";\n htmlgist: string = \"CuppaLabs/72ebd8cfa40a23a74ccbeda6de98a1e8\";\n tstitle: string = \"lazyLoadingRemoteData.ts\"\n htmltitle: string = \"lazyLoadingRemoteData.html\";\n}\n","import { Component, OnInit } from '@angular/core';\n\n@Component({\n templateUrl: './views/view.html'\n})\nexport class LimitBadgesExample implements OnInit {\n\n itemList = [];\n selectedItems = [];\n settings = {};\n\n constructor() {\n\n }\n ngOnInit() {\n\n\n this.itemList = [\n { \"id\": 1, \"itemName\": \"India\" },\n { \"id\": 2, \"itemName\": \"Singapore\" },\n { \"id\": 3, \"itemName\": \"Australia\" },\n { \"id\": 4, \"itemName\": \"Canada\" },\n { \"id\": 5, \"itemName\": \"South Korea\" },\n { \"id\": 6, \"itemName\": \"Brazil\" }\n ];\n\n this.selectedItems = [\n { \"id\": 1, \"itemName\": \"India\" },\n { \"id\": 2, \"itemName\": \"Singapore\" },\n { \"id\": 3, \"itemName\": \"Australia\" },\n { \"id\": 4, \"itemName\": \"Canada\" }];\n this.settings = {\n singleSelection: false,\n text: \"Select Countries\",\n selectAllText: 'Select All',\n unSelectAllText: 'UnSelect All',\n enableSearchFilter: true,\n badgeShowLimit: 3\n };\n }\n onItemSelect(item: any) {\n console.log(item);\n console.log(this.selectedItems);\n }\n OnItemDeSelect(item: any) {\n console.log(item);\n console.log(this.selectedItems);\n }\n onSelectAll(items: any) {\n console.log(items);\n }\n onDeSelectAll(items: any) {\n console.log(items);\n }\n cssgist: boolean = false;\n title: string = \"Limit badges length\";\n tsgist: string = \"CuppaLabs/00a25e7f8f70199f6571ac9fccbb94c2\";\n htmlgist: string = \"CuppaLabs/eb78d42ab7971fda6493586e329bfdb8\";\n tstitle: string = \"limitBadges.ts\"\n htmltitle: string = \"limitBadges.html\";\n}\n","import { Component, OnInit } from '@angular/core';\n\n@Component({\n templateUrl: './views/view.html'\n})\nexport class LimitSelectionExample implements OnInit {\n\n itemList = [];\n selectedItems = [];\n settings = {};\n\n constructor() {\n\n }\n ngOnInit() {\n\n\n this.itemList = [\n { \"id\": 1, \"itemName\": \"India\" },\n { \"id\": 2, \"itemName\": \"Singapore\" },\n { \"id\": 3, \"itemName\": \"Australia\" },\n { \"id\": 4, \"itemName\": \"Canada\" },\n { \"id\": 5, \"itemName\": \"South Korea\" },\n { \"id\": 6, \"itemName\": \"Brazil\" }\n ];\n\n this.selectedItems = [\n { \"id\": 1, \"itemName\": \"India\" },\n { \"id\": 2, \"itemName\": \"Singapore\" },\n { \"id\": 3, \"itemName\": \"Australia\" },\n { \"id\": 4, \"itemName\": \"Canada\" }];\n this.settings = {\n text: \"Select Countries\",\n selectAllText: 'Select All',\n unSelectAllText: 'UnSelect All',\n enableSearchFilter: false,\n classes: \"myclass custom-class\",\n limitSelection: 4\n };\n }\n onItemSelect(item: any) {\n console.log(item);\n console.log(this.selectedItems);\n }\n OnItemDeSelect(item: any) {\n console.log(item);\n console.log(this.selectedItems);\n }\n onSelectAll(items: any) {\n console.log(items);\n }\n onDeSelectAll(items: any) {\n console.log(items);\n }\n cssgist: boolean = false;\n title: string = \"Limit Selection\";\n tsgist: string = \"CuppaLabs/70667b7d4dd4270bb290685e036a379a\";\n htmlgist: string = \"CuppaLabs/eb78d42ab7971fda6493586e329bfdb8\";\n tstitle: string = \"limitSelection.ts\"\n htmltitle: string = \"limitSelection.html\";\n}\n","import { Injectable } from '@angular/core';\nimport { Observable } from \"rxjs\";\n@Injectable()\nexport class MockService {\n\n itemList = [];\n DATA = [{ \"id\": \"PBMMedAdhr\", \"name\": \"PBM Medication Adherence\" }, { \"id\": \"GapsInCare\", \"name\": \"Gaps In Care\" }, { \"id\": \"UCTest1\", \"name\": \"Use Case Test1\" }, { \"id\": \"BASICSAVE\", \"name\": \"A generic alternative or 30-90 day dispense opport\" }, { \"id\": \"ADVSAVE\", \"name\": \"An advnaced generic alternative or 30-90 day dispe\" }, { \"id\": \"AttAlert\", \"name\": \"Attachment Alert\" }, { \"id\": \"PatSave\", \"name\": \"Patient savings\" }, { \"id\": \"UCTest2\", \"name\": \"Use Case Test 2\" }, { \"id\": \"UCTest3\", \"name\": \"Use Case Test 3\" }, { \"id\": \"UCTest4\", \"name\": \"Use Case Test 4\" }, { \"id\": \"UCTest5\", \"name\": \"Use Case Test 5\" }, { \"id\": \"UCTest6\", \"name\": \"Use Case Test 6\" }, { \"id\": \"UCTest7\", \"name\": \"Use Case Test 7\" }, { \"id\": \"UCTest9\", \"name\": \"Use Case Test 9\" }, { \"id\": \"UCTest#Ten\", \"name\": \"Use Case Test 10\" }, { \"id\": \"UCTest8\", \"name\": \"Use Case Test 8\" }, { \"id\": \"UCTest11\", \"name\": \"Test Use Case 11\" }, { \"id\": \"UCTest12\", \"name\": \"Test Use Case 12\" }, { \"id\": \"UCTest13\", \"name\": \"Test Use Case 13\" }, { \"id\": \"PNLIMMUN\", \"name\": \"PNL Immunization\" }, { \"id\": \"TrustBrkr\", \"name\": \"Identity Services\" }, { \"id\": \"RTBC\", \"name\": \"real time benefit check for 90 day at retail\" }];\n public categories: any = [\"Indian\", \"American\", \"Canadian\", \"Chinese\"];\n public namesList:any[] = [\"Smith\",\"Johnson\",\"Williams\",\"Brown\",\"Jones\",\"Miller\",\"Davis\",\"Garcia\",\"Rodriguez\",\"Wilson\",\"Martinez\",\"Anderson\",\"Taylor\",\"Thomas\",\"Hernandez\",\"Moore\",\"Martin\",\"Jackson\",\"Thompson\",\"White\",\"Lopez\",\"Lee\",\"Gonzalez\",\"Harris\",\"Clark\",\"Lewis\",\"Robinson\",\"Walker\",\"Perez\",\"Hall\",\"Young\",\"Allen\",\"Sanchez\",\"Wright\",\"King\",\"Scott\",\"Green\",\"Baker\",\"Adams\",\"Nelson\",\"Hill\",\"Ramirez\",\"Campbell\",\"Mitchell\",\"Roberts\",\"Carter\",\"Phillips\",\"Evans\",\"Turner\",\"Torres\",\"Parker\",\"Collins\",\"Edwards\",\"Stewart\",\"Flores\",\"Morris\",\"Nguyen\",\"Murphy\",\"Rivera\",\"Cook\",\"Rogers\",\"Morgan\",\"Peterson\",\"Cooper\",\"Reed\",\"Bailey\",\"Bell\",\"Gomez\",\"Kelly\",\"Howard\",\"Ward\",\"Cox\",\"Diaz\",\"Richardson\",\"Wood\",\"Watson\",\"Brooks\",\"Bennett\",\"Gray\",\"James\",\"Reyes\",\"Cruz\",\"Hughes\",\"Price\",\"Myers\",\"Long\",\"Foster\",\"Sanders\",\"Ross\",\"Morales\",\"Powell\",\"Sullivan\",\"Russell\",\"Ortiz\",\"Jenkins\",\"Gutierrez\",\"Perry\",\"Butler\",\"Barnes\",\"Fisher\",\"Henderson\",\"Coleman\",\"Simmons\",\"Patterson\",\"Jordan\",\"Reynolds\",\"Hamilton\",\"Graham\",\"Kim\",\"Gonzales\",\"Alexander\",\"Ramos\",\"Wallace\",\"Griffin\",\"West\",\"Cole\",\"Hayes\",\"Chavez\",\"Gibson\",\"Bryant\",\"Ellis\",\"Stevens\",\"Murray\",\"Ford\",\"Marshall\",\"Owens\",\"Mcdonald\",\"Harrison\",\"Ruiz\",\"Kennedy\",\"Wells\",\"Alvarez\",\"Woods\",\"Mendoza\",\"Castillo\",\"Olson\",\"Webb\",\"Washington\",\"Tucker\",\"Freeman\",\"Burns\",\"Henry\",\"Vasquez\",\"Snyder\",\"Simpson\",\"Crawford\",\"Jimenez\",\"Porter\",\"Mason\",\"Shaw\",\"Gordon\",\"Wagner\",\"Hunter\",\"Romero\",\"Hicks\",\"Dixon\",\"Hunt\",\"Palmer\",\"Robertson\",\"Black\",\"Holmes\",\"Stone\",\"Meyer\",\"Boyd\",\"Mills\",\"Warren\",\"Fox\",\"Rose\",\"Rice\",\"Moreno\",\"Schmidt\",\"Patel\",\"Ferguson\",\"Nichols\",\"Herrera\",\"Medina\",\"Ryan\",\"Fernandez\",\"Weaver\",\"Daniels\",\"Stephens\",\"Gardner\",\"Payne\",\"Kelley\",\"Dunn\",\"Pierce\",\"Arnold\",\"Tran\",\"Spencer\",\"Peters\",\"Hawkins\",\"Grant\",\"Hansen\",\"Castro\",\"Hoffman\",\"Hart\",\"Elliott\",\"Cunningham\",\"Knight\",\"Bradley\",\"Carroll\",\"Hudson\",\"Duncan\",\"Armstrong\",\"Berry\",\"Andrews\",\"Johnston\",\"Ray\",\"Lane\",\"Riley\",\"Carpenter\",\"Perkins\",\"Aguilar\",\"Silva\",\"Richards\",\"Willis\",\"Matthews\",\"Chapman\",\"Lawrence\",\"Garza\",\"Vargas\",\"Watkins\",\"Wheeler\",\"Larson\",\"Carlson\",\"Harper\",\"George\",\"Greene\",\"Burke\",\"Guzman\",\"Morrison\",\"Munoz\",\"Jacobs\",\"Obrien\",\"Lawson\",\"Franklin\",\"Lynch\",\"Bishop\",\"Carr\",\"Salazar\",\"Austin\",\"Mendez\",\"Gilbert\",\"Jensen\",\"Williamson\",\"Montgomery\",\"Harvey\",\"Oliver\",\"Howell\",\"Dean\",\"Hanson\",\"Weber\",\"Garrett\",\"Sims\",\"Burton\",\"Fuller\",\"Soto\",\"Mccoy\",\"Welch\",\"Chen\",\"Schultz\",\"Walters\",\"Reid\",\"Fields\",\"Walsh\",\"Little\",\"Fowler\",\"Bowman\",\"Davidson\",\"May\",\"Day\",\"Schneider\",\"Newman\",\"Brewer\",\"Lucas\",\"Holland\",\"Wong\",\"Banks\",\"Santos\",\"Curtis\",\"Pearson\",\"Delgado\",\"Valdez\",\"Pena\",\"Rios\",\"Douglas\",\"Sandoval\",\"Barrett\",\"Hopkins\",\"Keller\",\"Guerrero\",\"Stanley\",\"Bates\",\"Alvarado\",\"Beck\",\"Ortega\",\"Wade\",\"Estrada\",\"Contreras\",\"Barnett\",\"Caldwell\",\"Santiago\",\"Lambert\",\"Powers\",\"Chambers\",\"Nunez\",\"Craig\",\"Leonard\",\"Lowe\",\"Rhodes\",\"Byrd\",\"Gregory\",\"Shelton\",\"Frazier\",\"Becker\",\"Maldonado\",\"Fleming\",\"Vega\",\"Sutton\",\"Cohen\",\"Jennings\",\"Parks\",\"Mcdaniel\",\"Watts\",\"Barker\",\"Norris\",\"Vaughn\",\"Vazquez\",\"Holt\",\"Schwartz\",\"Steele\",\"Benson\",\"Neal\",\"Dominguez\",\"Horton\",\"Terry\",\"Wolfe\",\"Hale\",\"Lyons\",\"Graves\",\"Haynes\",\"Miles\",\"Park\",\"Warner\",\"Padilla\",\"Bush\",\"Thornton\",\"Mccarthy\",\"Mann\",\"Zimmerman\",\"Erickson\",\"Fletcher\",\"Mckinney\",\"Page\",\"Dawson\",\"Joseph\",\"Marquez\",\"Reeves\",\"Klein\",\"Espinoza\",\"Baldwin\",\"Moran\",\"Love\",\"Robbins\",\"Higgins\",\"Ball\",\"Cortez\",\"Le\",\"Griffith\",\"Bowen\",\"Sharp\",\"Cummings\",\"Ramsey\",\"Hardy\",\"Swanson\",\"Barber\",\"Acosta\",\"Luna\",\"Chandler\",\"Blair\",\"Daniel\",\"Cross\",\"Simon\",\"Dennis\",\"Oconnor\",\"Quinn\",\"Gross\",\"Navarro\",\"Moss\",\"Fitzgerald\",\"Doyle\",\"Mclaughlin\",\"Rojas\",\"Rodgers\",\"Stevenson\",\"Singh\",\"Yang\",\"Figueroa\",\"Harmon\",\"Newton\",\"Paul\",\"Manning\",\"Garner\",\"Mcgee\",\"Reese\",\"Francis\",\"Burgess\",\"Adkins\",\"Goodman\",\"Curry\",\"Brady\",\"Christensen\",\"Potter\",\"Walton\",\"Goodwin\",\"Mullins\",\"Molina\",\"Webster\",\"Fischer\",\"Campos\",\"Avila\",\"Sherman\",\"Todd\",\"Chang\",\"Blake\",\"Malone\",\"Wolf\",\"Hodges\",\"Juarez\",\"Gill\",\"Farmer\",\"Hines\",\"Gallagher\",\"Duran\",\"Hubbard\",\"Cannon\",\"Miranda\",\"Wang\",\"Saunders\",\"Tate\",\"Mack\",\"Hammond\",\"Carrillo\",\"Townsend\",\"Wise\",\"Ingram\",\"Barton\",\"Mejia\",\"Ayala\",\"Schroeder\",\"Hampton\",\"Rowe\",\"Parsons\",\"Frank\",\"Waters\",\"Strickland\",\"Osborne\",\"Maxwell\",\"Chan\",\"Deleon\",\"Norman\",\"Harrington\",\"Casey\",\"Patton\",\"Logan\",\"Bowers\",\"Mueller\",\"Glover\",\"Floyd\",\"Hartman\",\"Buchanan\",\"Cobb\",\"French\",\"Kramer\",\"Mccormick\",\"Clarke\",\"Tyler\",\"Gibbs\",\"Moody\",\"Conner\",\"Sparks\",\"Mcguire\",\"Leon\",\"Bauer\",\"Norton\",\"Pope\",\"Flynn\",\"Hogan\",\"Robles\",\"Salinas\",\"Yates\",\"Lindsey\",\"Lloyd\",\"Marsh\",\"Mcbride\",\"Owen\",\"Solis\",\"Pham\",\"Lang\",\"Pratt\",\"Lara\",\"Brock\",\"Ballard\",\"Trujillo\",\"Shaffer\",\"Drake\",\"Roman\",\"Aguirre\",\"Morton\",\"Stokes\",\"Lamb\",\"Pacheco\",\"Patrick\",\"Cochran\",\"Shepherd\",\"Cain\",\"Burnett\",\"Hess\",\"Li\",\"Cervantes\",\"Olsen\",\"Briggs\",\"Ochoa\",\"Cabrera\",\"Velasquez\",\"Montoya\",\"Roth\",\"Meyers\",\"Cardenas\",\"Fuentes\",\"Weiss\",\"Hoover\",\"Wilkins\",\"Nicholson\",\"Underwood\",\"Short\",\"Carson\",\"Morrow\",\"Colon\",\"Holloway\",\"Summers\",\"Bryan\",\"Petersen\",\"Mckenzie\",\"Serrano\",\"Wilcox\",\"Carey\",\"Clayton\",\"Poole\",\"Calderon\",\"Gallegos\",\"Greer\",\"Rivas\",\"Guerra\",\"Decker\",\"Collier\",\"Wall\",\"Whitaker\",\"Bass\",\"Flowers\",\"Davenport\",\"Conley\",\"Houston\",\"Huff\",\"Copeland\",\"Hood\",\"Monroe\",\"Massey\",\"Roberson\",\"Combs\",\"Franco\",\"Larsen\",\"Pittman\",\"Randall\",\"Skinner\",\"Wilkinson\",\"Kirby\",\"Cameron\",\"Bridges\",\"Anthony\",\"Richard\",\"Kirk\",\"Bruce\",\"Singleton\",\"Mathis\",\"Bradford\",\"Boone\",\"Abbott\",\"Charles\",\"Allison\",\"Sweeney\",\"Atkinson\",\"Horn\",\"Jefferson\",\"Rosales\",\"York\",\"Christian\",\"Phelps\",\"Farrell\",\"Castaneda\",\"Nash\",\"Dickerson\",\"Bond\",\"Wyatt\",\"Foley\",\"Chase\",\"Gates\",\"Vincent\",\"Mathews\",\"Hodge\",\"Garrison\",\"Trevino\",\"Villarreal\",\"Heath\",\"Dalton\",\"Valencia\",\"Callahan\",\"Hensley\",\"Atkins\",\"Huffman\",\"Roy\",\"Boyer\",\"Shields\",\"Lin\",\"Hancock\",\"Grimes\",\"Glenn\",\"Cline\",\"Delacruz\",\"Camacho\",\"Dillon\",\"Parrish\",\"Oneill\",\"Melton\",\"Booth\",\"Kane\",\"Berg\",\"Harrell\",\"Pitts\",\"Savage\",\"Wiggins\",\"Brennan\",\"Salas\",\"Marks\",\"Russo\",\"Sawyer\",\"Baxter\",\"Golden\",\"Hutchinson\",\"Liu\",\"Walter\",\"Mcdowell\",\"Wiley\",\"Rich\",\"Humphrey\",\"Johns\",\"Koch\",\"Suarez\",\"Hobbs\",\"Beard\",\"Gilmore\",\"Ibarra\",\"Keith\",\"Macias\",\"Khan\",\"Andrade\",\"Ware\",\"Stephenson\",\"Henson\",\"Wilkerson\",\"Dyer\",\"Mcclure\",\"Blackwell\",\"Mercado\",\"Tanner\",\"Eaton\",\"Clay\",\"Barron\",\"Beasley\",\"Oneal\",\"Preston\",\"Small\",\"Wu\",\"Zamora\",\"Macdonald\",\"Vance\",\"Snow\",\"Mcclain\",\"Stafford\",\"Orozco\",\"Barry\",\"English\",\"Shannon\",\"Kline\",\"Jacobson\",\"Woodard\",\"Huang\",\"Kemp\",\"Mosley\",\"Prince\",\"Merritt\",\"Hurst\",\"Villanueva\",\"Roach\",\"Nolan\",\"Lam\",\"Yoder\",\"Mccullough\",\"Lester\",\"Santana\",\"Valenzuela\",\"Winters\",\"Barrera\",\"Leach\",\"Orr\",\"Berger\",\"Mckee\",\"Strong\",\"Conway\",\"Stein\",\"Whitehead\",\"Bullock\",\"Escobar\",\"Knox\",\"Meadows\",\"Solomon\",\"Velez\",\"Odonnell\",\"Kerr\",\"Stout\",\"Blankenship\",\"Browning\",\"Kent\",\"Lozano\",\"Bartlett\",\"Pruitt\",\"Buck\",\"Barr\",\"Gaines\",\"Durham\",\"Gentry\",\"Mcintyre\",\"Sloan\",\"Melendez\",\"Rocha\",\"Herman\",\"Sexton\",\"Moon\",\"Hendricks\",\"Rangel\",\"Stark\",\"Lowery\",\"Hardin\",\"Hull\",\"Sellers\",\"Ellison\",\"Calhoun\",\"Gillespie\",\"Mora\",\"Knapp\",\"Mccall\",\"Morse\",\"Dorsey\",\"Weeks\",\"Nielsen\",\"Livingston\",\"Leblanc\",\"Mclean\",\"Bradshaw\",\"Glass\",\"Middleton\",\"Buckley\",\"Schaefer\",\"Frost\",\"Howe\",\"House\",\"Mcintosh\",\"Ho\",\"Pennington\",\"Reilly\",\"Hebert\",\"Mcfarland\",\"Hickman\",\"Noble\",\"Spears\",\"Conrad\",\"Arias\",\"Galvan\",\"Velazquez\",\"Huynh\",\"Frederick\",\"Randolph\",\"Cantu\",\"Fitzpatrick\",\"Mahoney\",\"Peck\",\"Villa\",\"Michael\",\"Donovan\",\"Mcconnell\",\"Walls\",\"Boyle\",\"Mayer\",\"Zuniga\",\"Giles\",\"Pineda\",\"Pace\",\"Hurley\",\"Mays\",\"Mcmillan\",\"Crosby\",\"Ayers\",\"Case\",\"Bentley\",\"Shepard\",\"Everett\",\"Pugh\",\"David\",\"Mcmahon\",\"Dunlap\",\"Bender\",\"Hahn\",\"Harding\",\"Acevedo\",\"Raymond\",\"Blackburn\",\"Duffy\",\"Landry\",\"Dougherty\",\"Bautista\",\"Shah\",\"Potts\",\"Arroyo\",\"Valentine\",\"Meza\",\"Gould\",\"Vaughan\",\"Fry\",\"Rush\",\"Avery\",\"Herring\",\"Dodson\",\"Clements\",\"Sampson\",\"Tapia\",\"Bean\",\"Lynn\",\"Crane\",\"Farley\",\"Cisneros\",\"Benton\",\"Ashley\",\"Mckay\",\"Finley\",\"Best\",\"Blevins\",\"Friedman\",\"Moses\",\"Sosa\",\"Blanchard\",\"Huber\",\"Frye\",\"Krueger\",\"Bernard\",\"Rosario\",\"Rubio\",\"Mullen\",\"Benjamin\",\"Haley\",\"Chung\",\"Moyer\",\"Choi\",\"Horne\",\"Yu\",\"Woodward\",\"Ali\",\"Nixon\",\"Hayden\",\"Rivers\",\"Estes\",\"Mccarty\",\"Richmond\",\"Stuart\",\"Maynard\",\"Brandt\",\"Oconnell\",\"Hanna\",\"Sanford\",\"Sheppard\",\"Church\",\"Burch\",\"Levy\",\"Rasmussen\",\"Coffey\",\"Ponce\",\"Faulkner\",\"Donaldson\",\"Schmitt\",\"Novak\",\"Costa\",\"Montes\",\"Booker\",\"Cordova\",\"Waller\",\"Arellano\",\"Maddox\",\"Mata\",\"Bonilla\",\"Stanton\",\"Compton\",\"Kaufman\",\"Dudley\",\"Mcpherson\",\"Beltran\",\"Dickson\",\"Mccann\",\"Villegas\",\"Proctor\",\"Hester\",\"Cantrell\",\"Daugherty\",\"Cherry\",\"Bray\",\"Davila\",\"Rowland\",\"Levine\",\"Madden\",\"Spence\",\"Good\",\"Irwin\",\"Werner\",\"Krause\",\"Petty\",\"Whitney\",\"Baird\",\"Hooper\",\"Pollard\",\"Zavala\",\"Jarvis\",\"Holden\",\"Haas\",\"Hendrix\",\"Mcgrath\",\"Bird\",\"Lucero\",\"Terrell\",\"Riggs\",\"Joyce\",\"Mercer\",\"Rollins\",\"Galloway\",\"Duke\",\"Odom\",\"Andersen\",\"Downs\",\"Hatfield\",\"Benitez\",\"Archer\",\"Huerta\",\"Travis\",\"Mcneil\",\"Hinton\",\"Zhang\",\"Hays\",\"Mayo\",\"Fritz\",\"Branch\",\"Mooney\",\"Ewing\",\"Ritter\",\"Esparza\",\"Frey\",\"Braun\",\"Gay\",\"Riddle\",\"Haney\",\"Kaiser\",\"Holder\",\"Chaney\",\"Mcknight\",\"Gamble\",\"Vang\",\"Cooley\",\"Carney\",\"Cowan\",\"Forbes\",\"Ferrell\",\"Davies\",\"Barajas\",\"Shea\",\"Osborn\",\"Bright\",\"Cuevas\",\"Bolton\",\"Murillo\",\"Lutz\",\"Duarte\",\"Kidd\",\"Key\",\"Cooke\"];\n timer:any;\n constructor() {\n for(var t=1;t<=100;t++){\n var tempObj = {\"id\":0,\"name\":\"\",\"category\":\"\"};\n tempObj.id = t;\n tempObj.name= this.namesList[Math.floor(Math.random()*this.namesList.length)];\n tempObj.category= this.categories[Math.floor(Math.random()*this.categories.length)];\n this.itemList.push(tempObj);\n }\n }\n\n getDirectories(): Observable> {\n return Observable.create(\n (observer) => {\n\n return new Promise(resolve => setTimeout(() => {\n console.log(\"directoriesLoaded\");\n resolve(this.DATA);\n }, 1000)).then((response) => {\n observer.next(response);\n observer.complete();\n });\n }\n );\n }\n getChunkData(skip: number, limit: number): Promise {\n return new Promise((resolve, reject) => {\n clearTimeout(this.timer);\n this.timer = setTimeout(() => {\n if (skip < this.itemList.length) {\n return resolve(this.itemList.slice(skip, skip + limit));\n }\n reject();\n }, 1000 + Math.random() * 1000);\n });\n }\n\n getUseCases(): Observable> {\n return Observable.create(\n (observer) => {\n return new Promise(resolve => setTimeout(() => {\n console.log(\"useCasesLoaded\");\n resolve(this.DATA);\n }, 500)).then((response) => {\n observer.next(response);\n observer.complete();\n });\n }\n );\n }\n\n getData(arr) {\n if (arr.length === 0) {\n return this.DATA;\n }\n // Randomly remove and add some data\n arr.splice(Math.floor(Math.random() * arr.length), 1);\n arr.push(this.DATA[Math.floor(Math.random() * this.DATA.length)]);\n return arr;\n }\n getFruits() {\n return [{ \"id\": 1, \"itemName\": \"Apple\", \"category\": \"fruits\" },\n { \"id\": 2, \"itemName\": \"Banana\", \"category\": \"fruits\" },\n { \"id\": 5, \"itemName\": \"Tomatoe\", \"category\": \"vegetables\" },\n { \"id\": 6, \"itemName\": \"Potatoe\", \"category\": \"vegetables\" }];\n }\n getCountries() {\n return [\n { \"id\": 1, \"itemName\": \"India\", \"category\": \"asia\" },\n { \"id\": 2, \"itemName\": \"Singapore\", \"category\": \"asia pacific\" },\n { \"id\": 3, \"itemName\": \"Germany\", \"category\": \"Europe\" },\n { \"id\": 4, \"itemName\": \"France\", \"category\": \"Europe\" },\n { \"id\": 5, \"itemName\": \"South Korea\", \"category\": \"asia\" },\n { \"id\": 6, \"itemName\": \"Sweden\", \"category\": \"Europe\" }\n ];\n }\n}\n","

{{title}}

\n
\n
\n \n \n \n
\n
\n \n \n \n
\n
\n

Code

\n\n\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n","import { Component, OnInit } from '@angular/core';\nimport { MockService } from './mock-data';\nimport { tap, map } from 'rxjs/operators';\n\n@Component({\n templateUrl: './views/multipledropdowns.html'\n})\nexport class MultipleDropdownsExample implements OnInit {\n\n itemList = [];\n selectedItems = [];\n settings = {};\n directorySpecialties = [];\n useCases = [];\n dropdownSettings = {};\n dropdownSettings2 = {};\n\n providerLocation: any = {\n directorySpecialties: [{ \"id\": \"PBMMedAdhr\", \"name\": \"PBM Medication Adherence\" }, { \"id\": \"GapsInCare\", \"name\": \"Gaps In Care\" }],\n useCases: [{ \"id\": \"UCTest3\", \"name\": \"Use Case Test 3\" }, { \"id\": \"UCTest4\", \"name\": \"Use Case Test 4\" }]\n };\n\n\n constructor(public mockService: MockService) { }\n ngOnInit() {\n\n this.dropdownSettings = {\n text: \"Select\",\n enableSearchFilter: true,\n labelKey: \"name\"\n };\n this.dropdownSettings2 = {\n text: \"Select\",\n enableSearchFilter: true,\n labelKey: \"name\"\n };\n\n this.mockService.getDirectories().pipe(map((resp: Array) => {\n this.directorySpecialties = resp;\n })).subscribe();\n\n this.mockService.getUseCases().pipe(map((resp: Array) => {\n this.useCases = resp;\n })).subscribe();\n }\n onItemSelect(item: any) {\n console.log(item);\n console.log(this.selectedItems);\n }\n OnItemDeSelect(item: any) {\n console.log(item);\n console.log(this.selectedItems);\n }\n onSelectAll(items: any) {\n console.log(items);\n }\n onDeSelectAll(items: any) {\n console.log(items);\n }\n cssgist: boolean = false;\n title: string = \"Multiple Dropdowns in a page\";\n tsgist: string = \"CuppaLabs/12225540c23c8a171a81f996fc8d9ca6\";\n htmlgist: string = \"CuppaLabs/3788fb5437925b9d7d8edafec567639c\";\n mockgist: string = \"CuppaLabs/b3e947ec83710307a3b8680a2ff89693\";\n tstitle: string = \"multiple-dropdowns.ts\"\n htmltitle: string = \"multiple-dropdowns.html\";\n mocktitle: string = \"mock-data.ts\"\n}\n","

\n {{title}}

\n
\n \n \n \n \n \n \n \n \n \n
\n

Code

\n\n\n \n \n \n \n \n \n \n \n \n \n \n","import { Component, OnInit } from '@angular/core';\nimport { HttpClient } from '@angular/common/http';\n\n@Component({\n templateUrl: './views/remoteData.html'\n})\nexport class RemoteDataExample implements OnInit {\n\n itemList:any = [];\n selectedItems = [];\n settings = {};\n\n constructor(private http: HttpClient) { }\n ngOnInit() {\n this.http.get('https://restcountries.eu/rest/v2/all')\n .subscribe(res => {\n console.log(res);\n this.itemList = res;\n },error => {\n\n });\n this.settings = {\n text: \"Select Countries\",\n selectAllText: 'Select All',\n unSelectAllText: 'UnSelect All',\n classes: \"myclass custom-class\",\n primaryKey: \"alpha3Code\",\n labelKey: \"name\",\n enableSearchFilter: true,\n searchBy: ['name','capital']\n };\n }\n onItemSelect(item: any) {\n console.log(item);\n console.log(this.selectedItems);\n }\n OnItemDeSelect(item: any) {\n console.log(item);\n console.log(this.selectedItems);\n }\n onSelectAll(items: any) {\n console.log(items);\n }\n onDeSelectAll(items: any) {\n console.log(items);\n }\n onSearch(evt: any){\n console.log(evt.target.value);\n }\n cssgist: boolean = false;\n title: string = \"Data from remote API example\";\n tsgist: string = \"CuppaLabs/ffb168ae28c36a9130ad5ce74b720c5d\";\n htmlgist: string = \"CuppaLabs/eb78d42ab7971fda6493586e329bfdb8\";\n tstitle: string = \"remoteData.ts\"\n htmltitle: string = \"remoteData.html\";\n}\n","

{{title}}

\n
\n
\n
\n
\n
\n
\n
\n \n
\n
\n \n\n
\n
\n
\n\n

Code

\n\n\n \n \n \n \n \n \n","import { Component, OnInit, ViewChild, ElementRef } from '@angular/core';\nimport { AngularMultiSelect } from '../../../projects/angular2-multiselect-dropdown-lib/src/lib/multiselect.component';\n\n@Component({\n templateUrl: './views/resetDropdown.html'\n})\nexport class ResetDropdownExample implements OnInit {\n\n itemList = [];\n selectedItems = [];\n settings = {};\n @ViewChild('dropdownElem', {static: true}) dropdownElem: AngularMultiSelect;\n constructor() {\n\n }\n ngOnInit() {\n\n\n this.itemList = [\n { \"id\": 1, \"itemName\": \"India\" },\n { \"id\": 2, \"itemName\": \"Singapore\" },\n { \"id\": 3, \"itemName\": \"Australia\" },\n { \"id\": 4, \"itemName\": \"Canada\" },\n { \"id\": 5, \"itemName\": \"South Korea\" },\n { \"id\": 6, \"itemName\": \"Brazil\" }\n ];\n\n this.selectedItems = [\n { \"id\": 1, \"itemName\": \"India\" },\n { \"id\": 2, \"itemName\": \"Singapore\" },\n { \"id\": 3, \"itemName\": \"Australia\" },\n { \"id\": 4, \"itemName\": \"Canada\" }];\n this.settings = {\n text: \"Select Countries\",\n selectAllText: 'Select All',\n unSelectAllText: 'UnSelect All',\n classes: \"myclass custom-class\"\n };\n }\n onItemSelect(item: any) {\n console.log(item);\n console.log(this.selectedItems);\n }\n OnItemDeSelect(item: any) {\n console.log(item);\n console.log(this.selectedItems);\n }\n onSelectAll(items: any) {\n console.log(items);\n }\n onDeSelectAll(items: any) {\n console.log(items);\n }\n showModel() {\n console.log(this.selectedItems);\n }\n changeData() {\n this.selectedItems = [];\n }\n open(evt: any){\n this.dropdownElem.openDropdown();\n evt.stopPropagation();\n }\n close(evt: any){\n this.dropdownElem.closeDropdown();\n }\n cssgist: boolean = false;\n title: string = \"Methods - Reset, Open, Close dropdown\";\n tsgist: string = \"CuppaLabs/96d3ca7681f1a7a38b8c76b2f1552458\";\n htmlgist: string = \"CuppaLabs/bbd73b9f9864effb69f361c9fc65a6e5\";\n tstitle: string = \"resetDropdown.ts\"\n htmltitle: string = \"resetDropdown.html\";\n}\n","import { Component, OnInit } from '@angular/core';\n\n@Component({\n templateUrl: './views/view.html'\n})\nexport class SearchFilterByOnePropertyExample implements OnInit {\n\n itemList = [];\n selectedItems = [];\n settings = {};\n\n constructor() {\n\n }\n ngOnInit() {\n\n\n this.itemList = [\n {\"id\":1,\"itemName\":\"India\",\"name\":\"IN\"},\n {\"id\":2,\"itemName\":\"Singapore\",\"name\":\"SN\"},\n {\"id\":3,\"itemName\":\"Australia\",\"name\":\"AU\"},\n {\"id\":4,\"itemName\":\"Canada\",\"name\":\"CA\"},\n {\"id\":5,\"itemName\":\"South Korea\",\"name\":\"SK\"}, \n {\"id\":6,\"itemName\":\"Brazil\",\"name\":\"BR\"} \n ];\n\n this.selectedItems = [\n {\"id\":1,\"itemName\":\"India\",\"name\":\"IN\"},\n {\"id\":2,\"itemName\":\"Singapore\",\"name\":\"SN\"},\n {\"id\":3,\"itemName\":\"Australia\",\"name\":\"AU\"},\n {\"id\":4,\"itemName\":\"Canada\",\"name\":\"CA\"}];\n this.settings = {\n singleSelection: false,\n text: \"Select Countries\",\n selectAllText: 'Select All',\n unSelectAllText: 'UnSelect All',\n enableSearchFilter: true,\n badgeShowLimit: 3,\n searchBy: ['itemName'],\n searchPlaceholderText: 'Search by name' \n };\n }\n onItemSelect(item: any) {\n console.log(item);\n console.log(this.selectedItems);\n }\n OnItemDeSelect(item: any) {\n console.log(item);\n console.log(this.selectedItems);\n }\n onSelectAll(items: any) {\n console.log(items);\n }\n onDeSelectAll(items: any) {\n console.log(items);\n }\n cssgist: boolean = false;\n title: string = \"Search filter by one property / key\";\n tsgist: string = \"CuppaLabs/f6acd1eb94c95df32f689260b1f38b4c\";\n htmlgist: string = \"CuppaLabs/eb78d42ab7971fda6493586e329bfdb8\";\n tstitle: string = \"searchFilterByProperty.ts\"\n htmltitle: string = \"searchFilterByProperty.html\";\n}\n","import { Component, OnInit } from '@angular/core';\n\n@Component({\n templateUrl: './views/view.html'\n})\nexport class SearchFilterExample implements OnInit {\n\n itemList = [];\n selectedItems = [];\n settings = {};\n\n constructor() {\n\n }\n ngOnInit() {\n\n\n this.itemList = [\n {\"id\":1,\"itemName\":\"India\",\"name\":\"IN\"},\n {\"id\":2,\"itemName\":\"Singapore\",\"name\":\"SN\"},\n {\"id\":3,\"itemName\":\"Australia\",\"name\":\"AU\"},\n {\"id\":4,\"itemName\":\"Canada\",\"name\":\"CA\"},\n {\"id\":5,\"itemName\":\"South Korea\",\"name\":\"SK\"}, \n {\"id\":6,\"itemName\":\"Brazil\",\"name\":\"BR\"} \n ];\n\n this.selectedItems = [\n {\"id\":1,\"itemName\":\"India\",\"name\":\"IN\"},\n {\"id\":2,\"itemName\":\"Singapore\",\"name\":\"SN\"},\n {\"id\":3,\"itemName\":\"Australia\",\"name\":\"AU\"},\n {\"id\":4,\"itemName\":\"Canada\",\"name\":\"CA\"}];\n this.settings = {\n singleSelection: false,\n text: \"Select Countries\",\n selectAllText: 'Select All',\n unSelectAllText: 'UnSelect All',\n enableSearchFilter: true,\n badgeShowLimit: 3,\n addNewItemOnFilter: true\n };\n }\n onItemSelect(item: any) {\n console.log(item);\n console.log(this.selectedItems);\n }\n OnItemDeSelect(item: any) {\n console.log(item);\n console.log(this.selectedItems);\n }\n onSelectAll(items: any) {\n console.log(items);\n }\n onDeSelectAll(items: any) {\n console.log(items);\n }\n cssgist: boolean = false;\n title: string = \"Search filter\";\n tsgist: string = \"CuppaLabs/447bd5fce6dfc2832f5f4a8c36726a9b\";\n htmlgist: string = \"CuppaLabs/eb78d42ab7971fda6493586e329bfdb8\";\n tstitle: string = \"searchFilter.ts\"\n htmltitle: string = \"searchFilter.html\";\n}\n","

{{title}}

\n
\n \n \n
\n
\n How this example works !! \n
\n When you try to filter the list items, if no search results are available, you would see an 'Add' button. On clicking the add button, it would emit the text that you enter in the input field to your controlle in the callback method, as show in the below code.\n You can add this item to the data list. If you wish, that this item be selected, add it to selected items list.\n
\n

Code

\n\n\n \n \n \n \n \n \n \n \n \n \n \n\n","import { Component, OnInit } from '@angular/core';\n\n@Component({\n templateUrl: './views/searchFilter.html'\n})\nexport class SearchFilterAddItemExample implements OnInit {\n\n itemList = [];\n selectedItems = [];\n settings = {};\n count = 6;\n constructor() {\n\n }\n ngOnInit() {\n\n\n this.itemList = [\n {\"id\":1,\"itemName\":\"India\",\"name\":\"IN\"},\n {\"id\":2,\"itemName\":\"Singapore\",\"name\":\"SN\"},\n {\"id\":3,\"itemName\":\"Australia\",\"name\":\"AU\"},\n {\"id\":4,\"itemName\":\"Canada\",\"name\":\"CA\"},\n {\"id\":5,\"itemName\":\"South Korea\",\"name\":\"SK\"}, \n {\"id\":6,\"itemName\":\"Brazil\",\"name\":\"BR\"} \n ];\n\n this.selectedItems = [\n {\"id\":1,\"itemName\":\"India\",\"name\":\"IN\"},\n {\"id\":2,\"itemName\":\"Singapore\",\"name\":\"SN\"},\n {\"id\":3,\"itemName\":\"Australia\",\"name\":\"AU\"},\n {\"id\":4,\"itemName\":\"Canada\",\"name\":\"CA\"}];\n this.settings = {\n singleSelection: false,\n text: \"Select Countries\",\n selectAllText: 'Select All',\n unSelectAllText: 'UnSelect All',\n enableSearchFilter: true,\n addNewItemOnFilter: true\n };\n }\n onAddItem(data:string){\n this.count++;\n this.itemList.push({\"id\": this.count,\"itemName\":data,\"name\":data});\n this.selectedItems.push({\"id\": this.count,\"itemName\":data,\"name\":data});\n }\n onItemSelect(item: any) {\n console.log(item);\n console.log(this.selectedItems);\n }\n OnItemDeSelect(item: any) {\n console.log(item);\n console.log(this.selectedItems);\n }\n onSelectAll(items: any) {\n console.log(items);\n }\n onDeSelectAll(items: any) {\n console.log(items);\n }\n cssgist: boolean = false;\n title: string = \"Search and Add New Item, if not found\";\n tsgist: string = \"CuppaLabs/c1e00c870c3e3b9213e69e0a93518cc6\";\n htmlgist: string = \"CuppaLabs/0583ba4be8b7c192d14f04375f96c074\";\n tstitle: string = \"searchFilterAddNewItem.ts\"\n htmltitle: string = \"searchFilter.html\";\n}\n","import { Component, OnInit } from '@angular/core';\n\n@Component({\n templateUrl: './views/view.html' \n})\nexport class SingleSelectionExample implements OnInit {\n\n itemList = [];\n selectedItems = [];\n settings = {};\n\n constructor(){\n \n }\n ngOnInit(){\n \n\n this.itemList = [\n {\"id\":1,\"itemName\":\"India\",\"name\":\"IN\"},\n {\"id\":2,\"itemName\":\"Singapore\",\"name\":\"SN\"},\n {\"id\":3,\"itemName\":\"Australia\",\"name\":\"AU\"},\n {\"id\":4,\"itemName\":\"Canada\",\"name\":\"CA\"},\n {\"id\":5,\"itemName\":\"South Korea\",\"name\":\"SK\"}, \n {\"id\":6,\"itemName\":\"Brazil\",\"name\":\"BR\"} \n ];\n \n this.selectedItems = [\n {\"id\":1,\"itemName\":\"India\",\"name\":\"IN\"}];\n this.settings = {singleSelection: true, text:\"Select Country\",clearAll:false};\n }\n onItemSelect(item:any){\n console.log(item);\n console.log(this.selectedItems);\n }\n OnItemDeSelect(item:any){\n console.log(item);\n console.log(this.selectedItems);\n }\n onSelectAll(items: any){\n console.log(items);\n }\n onDeSelectAll(items: any){\n console.log(items);\n }\ncssgist: boolean = false;\n title: string = \"Single Selection\";\n tsgist: string = \"CuppaLabs/6ef578ce507dfd548eec39e008b4de14\";\n htmlgist: string = \"CuppaLabs/eb78d42ab7971fda6493586e329bfdb8\";\n tstitle: string = \"singleSelection.ts\"\n htmltitle: string = \"singleSelection.html\";\n}\n","import { Component, OnInit } from '@angular/core';\n\n@Component({\n templateUrl: './views/view.html'\n})\nexport class StylingExample implements OnInit {\n\n itemList = [];\n selectedItems = [];\n settings = {};\n\n constructor() {\n\n }\n ngOnInit() {\n\n\n this.itemList = [\n { \"id\": 1, \"itemName\": \"India\" },\n { \"id\": 2, \"itemName\": \"Singapore\" },\n { \"id\": 3, \"itemName\": \"Australia\" },\n { \"id\": 4, \"itemName\": \"Canada\" },\n { \"id\": 5, \"itemName\": \"South Korea\" },\n { \"id\": 6, \"itemName\": \"Brazil\" }\n ];\n\n this.selectedItems = [\n { \"id\": 1, \"itemName\": \"India\" },\n { \"id\": 2, \"itemName\": \"Singapore\" },\n { \"id\": 3, \"itemName\": \"Australia\" },\n { \"id\": 4, \"itemName\": \"Canada\" }];\n this.settings = {\n text: \"Select Countries\",\n selectAllText: 'Select All',\n unSelectAllText: 'UnSelect All',\n classes: \"myclass custom-class-example\"\n };\n }\n onItemSelect(item: any) {\n console.log(item);\n console.log(this.selectedItems);\n }\n OnItemDeSelect(item: any) {\n console.log(item);\n console.log(this.selectedItems);\n }\n onSelectAll(items: any) {\n console.log(items);\n }\n onDeSelectAll(items: any) {\n console.log(items);\n }\n title: string = \"Custom styling\";\n tsgist: string = \"CuppaLabs/67fb11cbb67a62888ca0a3adb44ee440\";\n htmlgist: string = \"CuppaLabs/eb78d42ab7971fda6493586e329bfdb8\";\n cssgist: string = \"CuppaLabs/e6efeedade8f737df03107625df165e7\";\n tstitle: string = \"customStyling.ts\";\n htmltitle: string = \"customStyling.html\";\n csstitle: string = \"app.css\";\n}\n","

{{title}}

\n
\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
\n\n

Code

\n\n\n \n \n \n \n \n \n","import { Component, OnInit } from '@angular/core';\n\n@Component({\n templateUrl: './views/templating.html'\n})\nexport class TemplatingExample implements OnInit {\n\n itemList = [];\n selectedItems = [];\n settings = {};\n\n constructor(){\n \n }\n ngOnInit(){\n \n\n this.itemList = [\n {\"category\":\"asia\",\"id\":1,\"itemName\":\"India\",\"capital\":\"Delhi\",\"image\":\"http://www.sciencekids.co.nz/images/pictures/flags96/India.jpg\"},\n {\"category\":\"asia\",\"id\":2,\"itemName\":\"Singapore\", \"capital\":\"Singapore\",\"image\":\"http://www.sciencekids.co.nz/images/pictures/flags96/Singapore.jpg\"},\n {\"category\":\"europe\",\"id\":3,\"itemName\":\"United Kingdom\", \"capital\":\"London\",\"image\":\"http://www.sciencekids.co.nz/images/pictures/flags96/United_Kingdom.jpg\"},\n {\"category\":\"northamerica\",\"id\":4,\"itemName\":\"Canada\",\"capital\":\"Ottawa\",\"image\":\"http://www.sciencekids.co.nz/images/pictures/flags96/Canada.jpg\"},\n {\"category\":\"asia\",\"id\":5,\"itemName\":\"South Korea\",\"capital\":\"Seoul\",\"image\":\"http://www.sciencekids.co.nz/images/pictures/flags96/South_Korea.jpg\"}, \n {\"category\":\"latinamerica\",\"id\":6,\"itemName\":\"Brazil\",\"capital\":\"Brasilia\",\"image\":\"http://www.sciencekids.co.nz/images/pictures/flags96/Brazil.jpg\"} \n ];\n \n this.selectedItems = [\n {\"category\":\"asia\",\"id\":1,\"itemName\":\"India\",\"capital\":\"Delhi\",\"image\":\"http://www.sciencekids.co.nz/images/pictures/flags96/India.jpg\"},\n {\"category\":\"asia\",\"id\":2,\"itemName\":\"Singapore\", \"capital\":\"Singapore\",\"image\":\"http://www.sciencekids.co.nz/images/pictures/flags96/Singapore.jpg\"},\n {\"category\":\"europe\",\"id\":3,\"itemName\":\"United Kingdom\", \"capital\":\"London\",\"image\":\"http://www.sciencekids.co.nz/images/pictures/flags96/United_Kingdom.jpg\"},\n {\"category\":\"northamerica\",\"id\":4,\"itemName\":\"Canada\",\"capital\":\"Ottawa\",\"image\":\"http://www.sciencekids.co.nz/images/pictures/flags96/Canada.jpg\"}]\n this.settings = { \n text:\"Select Countries\",\n selectAllText:'Select All',\n unSelectAllText:'UnSelect All',\n enableSearchFilter: true,\n classes:\"myclass custom-class\",\n showCheckbox: true,\n groupBy: \"category\"\n };\n\n }\n onItemSelect(item:any){\n console.log(item);\n console.log(this.selectedItems);\n }\n OnItemDeSelect(item:any){\n console.log(item);\n console.log(this.selectedItems);\n }\n onSelectAll(items: any){\n console.log(items);\n }\n onDeSelectAll(items: any){\n console.log(items);\n }\n onGroupSelect(selectedGroupItem){\n console.log(selectedGroupItem);\n }\n onGroupDeSelect(deselectedGroupItem){\n console.log(deselectedGroupItem);\n }\n cssgist: boolean = false;\n title: string = \"Templating menu option\";\n tsgist: string = \"CuppaLabs/cc0ac5976bf26b89119180ff82115fe4\";\n htmlgist: string = \"CuppaLabs/6399258d93fd5580be1736aba2539519\";\n tstitle: string = \"templating.ts\"\n htmltitle: string = \"templating.html\";\n}\n","

{{title}}

\n
\n \n
\n

Code

\n\n","import { Component, OnInit } from '@angular/core';\n\n@Component({\n templateUrl: './views/theming.html'\n})\nexport class ThemingExample implements OnInit {\n\n itemList = [];\n selectedItems = [];\n settings = {};\n\n constructor() { }\n ngOnInit() {\n\n this.itemList = [\n { \"countryId\": 1, \"itemName\": \"India\" },\n { \"countryId\": 2, \"itemName\": \"Singapore\" },\n { \"countryId\": 3, \"itemName\": \"Australia\" },\n { \"countryId\": 4, \"itemName\": \"Canada\" },\n { \"countryId\": 5, \"itemName\": \"South Korea\" },\n { \"countryId\": 6, \"itemName\": \"Brazil\" }\n ];\n\n this.selectedItems = [\n { \"countryId\": 1, \"itemName\": \"India\" },\n { \"countryId\": 2, \"itemName\": \"Singapore\" },\n { \"countryId\": 3, \"itemName\": \"Australia\" },\n { \"countryId\": 4, \"itemName\": \"Canada\" }];\n\n this.settings = {\n text: \"Select Countries\",\n selectAllText: 'Select All',\n unSelectAllText: 'UnSelect All',\n classes: \"myclass custom-class\",\n primaryKey: \"countryId\"\n };\n }\n onItemSelect(item: any) {\n console.log(item);\n console.log(this.selectedItems);\n }\n OnItemDeSelect(item: any) {\n console.log(item);\n console.log(this.selectedItems);\n }\n onSelectAll(items: any) {\n console.log(items);\n }\n onDeSelectAll(items: any) {\n console.log(items);\n }\n cssgist: boolean = false;\n title: string = \"Basic example\";\n tsgist: string = \"CuppaLabs/ee72fbc7b21dad7e4e7664c5b1553235\";\n htmlgist: string = \"CuppaLabs/eb78d42ab7971fda6493586e329bfdb8\";\n tstitle: string = \"basic.ts\"\n htmltitle: string = \"basic.html\";\n}\n","

{{title}}

\n
\n \n \n \n \n \n \n \n \n \n \n \n \n \n
\n Customer\n \n Countries\n
\n {{item.name}}\n \n \n \n
\n {{customers | json}}\n
\n

Code

\n\n\n \n \n \n \n \n \n \n \n \n \n \n","import { Component, OnInit } from '@angular/core';\n\n@Component({\n templateUrl: './views/usingInList.html'\n})\nexport class UsingInListExample implements OnInit {\n\n itemList = [];\n selectedItems = [];\n settings = {};\n customers = [];\n constructor() {\n\n }\n ngOnInit() {\n\n this.customers = [\n {\n name: \"Toshiba\", countries: [{ \"category\": \"asia\", \"id\": 1, \"itemName\": \"India\", \"capital\": \"Delhi\", \"image\": \"http://www.sciencekids.co.nz/images/pictures/flags96/India.jpg\" },\n { \"category\": \"asia\", \"id\": 2, \"itemName\": \"Singapore\", \"capital\": \"Singapore\", \"image\": \"http://www.sciencekids.co.nz/images/pictures/flags96/Singapore.jpg\" },\n ]\n },\n { name: \"Apple\", countries: [] },\n { name: \"Samsung\", countries: [] },\n {\n name: \"MI\", countries: [{ \"category\": \"asia\", \"id\": 1, \"itemName\": \"India\", \"capital\": \"Delhi\", \"image\": \"http://www.sciencekids.co.nz/images/pictures/flags96/India.jpg\" },\n { \"category\": \"asia\", \"id\": 2, \"itemName\": \"Singapore\", \"capital\": \"Singapore\", \"image\": \"http://www.sciencekids.co.nz/images/pictures/flags96/Singapore.jpg\" },\n ]\n },\n { name: \"Google\", countries: [] }\n ];\n this.itemList = [\n { \"category\": \"asia\", \"id\": 1, \"itemName\": \"India\", \"capital\": \"Delhi\", \"image\": \"http://www.sciencekids.co.nz/images/pictures/flags96/India.jpg\" },\n { \"category\": \"asia\", \"id\": 2, \"itemName\": \"Singapore\", \"capital\": \"Singapore\", \"image\": \"http://www.sciencekids.co.nz/images/pictures/flags96/Singapore.jpg\" },\n { \"category\": \"europe\", \"id\": 3, \"itemName\": \"United Kingdom\", \"capital\": \"London\", \"image\": \"http://www.sciencekids.co.nz/images/pictures/flags96/United_Kingdom.jpg\" },\n { \"category\": \"northamerica\", \"id\": 4, \"itemName\": \"Canada\", \"capital\": \"Ottawa\", \"image\": \"http://www.sciencekids.co.nz/images/pictures/flags96/Canada.jpg\" },\n { \"category\": \"asia\", \"id\": 5, \"itemName\": \"South Korea\", \"capital\": \"Seoul\", \"image\": \"http://www.sciencekids.co.nz/images/pictures/flags96/South_Korea.jpg\" },\n { \"category\": \"latinamerica\", \"id\": 6, \"itemName\": \"Brazil\", \"capital\": \"Brasilia\", \"image\": \"http://www.sciencekids.co.nz/images/pictures/flags96/Brazil.jpg\" }\n ];\n\n this.selectedItems = [\n { \"category\": \"asia\", \"id\": 1, \"itemName\": \"India\", \"capital\": \"Delhi\", \"image\": \"http://www.sciencekids.co.nz/images/pictures/flags96/India.jpg\" },\n { \"category\": \"asia\", \"id\": 2, \"itemName\": \"Singapore\", \"capital\": \"Singapore\", \"image\": \"http://www.sciencekids.co.nz/images/pictures/flags96/Singapore.jpg\" },\n { \"category\": \"europe\", \"id\": 3, \"itemName\": \"United Kingdom\", \"capital\": \"London\", \"image\": \"http://www.sciencekids.co.nz/images/pictures/flags96/United_Kingdom.jpg\" },\n { \"category\": \"northamerica\", \"id\": 4, \"itemName\": \"Canada\", \"capital\": \"Ottawa\", \"image\": \"http://www.sciencekids.co.nz/images/pictures/flags96/Canada.jpg\" }]\n this.settings = {\n text: \"Select Countries\",\n selectAllText: 'Select All',\n unSelectAllText: 'UnSelect All',\n enableSearchFilter: true,\n classes: \"myclass custom-class\",\n showCheckbox: true\n };\n\n }\n onItemSelect(item: any) {\n console.log(this.customers);\n }\n OnItemDeSelect(item: any) {\n console.log(item);\n console.log(this.selectedItems);\n }\n onSelectAll(items: any) {\n console.log(items);\n }\n onDeSelectAll(items: any) {\n console.log(items);\n }\n onGroupSelect(selectedGroupItem) {\n console.log(selectedGroupItem);\n }\n onGroupDeSelect(deselectedGroupItem) {\n console.log(deselectedGroupItem);\n }\n cssgist: boolean = false;\n title: string = \"Using in List - Inside `for loop`\";\n tsgist: string = \"CuppaLabs/0d2dc802967cca16ffc5053d0b873aba\";\n htmlgist: string = \"CuppaLabs/85fb2b925a56c2e533e321ae09de0e2f\";\n tstitle: string = \"usingInList.ts\"\n htmltitle: string = \"usingInList.html\";\n}\n","

{{title}}

\n
\n
\n
\n
\n \n * required\n \n \n
\n
\n \n \n
\n
\n \n * required\n \n
\n \n
\n\n
\n
\n \n \n \n \n \n \n \n \n \n \n \n \n \n
{{userForm.value.name}}
{{userForm.value.email}}
\n
{{obj.itemName}}
\n
\n {{userForm.value | json}}\n

Form status: {{ userForm.status | json }}

\n
\n
\n

Code

\n\n\n \n \n \n \n \n \n \n \n \n \n \n","import { Component, OnInit } from '@angular/core';\nimport { FormBuilder, FormGroup, Validators } from '@angular/forms';\n\n@Component({\n templateUrl: './views/using-in-react-form.html'\n})\nexport class UsingWithReactiveFormExample implements OnInit {\n itemList = [];\n selectedItems = [];\n settings = {};\n\n userForm: FormGroup;\n\n constructor(private fb: FormBuilder) {\n this.createForm();\n }\n createForm() {\n this.userForm = this.fb.group({\n name: 'xbvxncvx',\n email: ['absd@gmail.com', Validators.required],\n skills: [[], Validators.required]\n });\n }\n submitForm() {\n console.log(this.userForm);\n }\n ngOnInit() {\n\n this.itemList = [\n { \"id\": 1, \"itemName\": \"Angular\" },\n { \"id\": 2, \"itemName\": \"JavaScript\" },\n { \"id\": 3, \"itemName\": \"HTML\" },\n { \"id\": 4, \"itemName\": \"CSS\" },\n { \"id\": 5, \"itemName\": \"ReactJS\" },\n { \"id\": 6, \"itemName\": \"HTML5\" }\n ];\n this.selectedItems = [];\n this.settings = {\n text: \"Select Skills\",\n selectAllText: 'Select All',\n unSelectAllText: 'UnSelect All',\n classes: \"myclass custom-class\"\n };\n }\n onItemSelect(item: any) {\n console.log(item);\n console.log(this.selectedItems);\n }\n OnItemDeSelect(item: any) {\n console.log(item);\n console.log(this.selectedItems);\n }\n onSelectAll(items: any) {\n console.log(items);\n }\n onDeSelectAll(items: any) {\n console.log(items);\n }\ncssgist: boolean = false;\n title: string = \"Using with Reactive Forms\";\n tsgist: string = \"CuppaLabs/f0dfe353c6378cee7f55547395a80fc4\";\n htmlgist: string = \"CuppaLabs/0a32c3d76110468b84bac01fd64488bc\";\n tstitle: string = \"using-in-reactive-forms.ts\"\n htmltitle: string = \"using-with-reactive-forms.html\";\n}\n","

{{title}}

\n
\n
\n
\n\n
\n \n \n
\n
Name is required
\n
Only alphabetsallowed
\n\n
\n
\n
\n \n * required\n \n
\n
Email is required
\n
Email format should be joe@abc.com
\n
\n
\n
\n \n * required\n \n \n
\n
Atleast one Skill is required
\n
\n
\n \n
\n
\n
\n \n \n \n \n \n \n \n \n \n \n \n \n \n
{{formModel.name}}
{{formModel.email}}
\n
{{obj.itemName}}
\n
\n {{formModel | json}}\n

Form status: {{ loginForm.form.status | json }}

\n\n
\n
\n

Code

\n\n\n \n \n \n \n \n \n \n \n \n \n \n","import { Component, OnInit } from '@angular/core';\n\n@Component({\n templateUrl: './views/using-in-form.html'\n})\nexport class UsingWithFormExample implements OnInit {\n itemList = [];\n selectedItems = [];\n settings = {};\n formModel = {\n name: '',\n email: 'ascasc@aa.com',\n skills: [{ \"id\": 1, \"itemName\": \"Angular\" }]\n };\n submitted = false;\n onSubmit() { this.submitted = true; }\n constructor() { }\n ngOnInit() {\n\n this.itemList = [\n { \"id\": 1, \"itemName\": \"Angular\" },\n { \"id\": 2, \"itemName\": \"JavaScript\" },\n { \"id\": 3, \"itemName\": \"HTML\" },\n { \"id\": 4, \"itemName\": \"CSS\" },\n { \"id\": 5, \"itemName\": \"ReactJS\" },\n { \"id\": 6, \"itemName\": \"HTML5\" }\n ];\n\n this.settings = {\n text: \"Select Skills\",\n selectAllText: 'Select All',\n unSelectAllText: 'UnSelect All',\n classes: \"myclass custom-class\"\n };\n }\n onItemSelect(item: any) {\n console.log(item);\n console.log(this.selectedItems);\n }\n OnItemDeSelect(item: any) {\n console.log(item);\n console.log(this.selectedItems);\n }\n onSelectAll(items: any) {\n console.log(items);\n }\n onDeSelectAll(items: any) {\n console.log(items);\n }\ncssgist: boolean = false;\n title: string = \"Using with Template driven Forms\";\n tsgist: string = \"CuppaLabs/6cd9396b8f5589b792b27dd10efe9140\";\n htmlgist: string = \"CuppaLabs/8148509a46a59e3aba513808daa40ca1\";\n tstitle: string = \"using-in-forms.ts\"\n htmltitle: string = \"using-with-forms.html\";\n}\n","// This file can be replaced during build by using the `fileReplacements` array.\n// `ng build --prod` replaces `environment.ts` with `environment.prod.ts`.\n// The list of file replacements can be found in `angular.json`.\n\nexport const environment = {\n production: false\n};\n\n/*\n * For easier debugging in development mode, you can import the following file\n * to ignore zone related error stack frames such as `zone.run`, `zoneDelegate.invokeTask`.\n *\n * This import should be commented out in production mode because it will have a negative impact\n * on performance if an error is thrown.\n */\n// import 'zone.js/dist/zone-error'; // Included with Angular CLI.\n","import { enableProdMode } from '@angular/core';\nimport { platformBrowserDynamic } from '@angular/platform-browser-dynamic';\n\nimport { AppModule } from './app/app.module';\nimport { environment } from './environments/environment';\n\nif (environment.production) {\n enableProdMode();\n}\n\ndocument.addEventListener('DOMContentLoaded', () => {\n platformBrowserDynamic().bootstrapModule(AppModule)\n .catch(err => console.error(err));\n});\n\n"],"sourceRoot":""} \ No newline at end of file +{"version":3,"sources":["webpack:///./projects/angular2-multiselect-dropdown-lib/src/lib/clickOutside.ts","webpack:///./projects/angular2-multiselect-dropdown-lib/src/lib/list-filter.ts","webpack:///./projects/angular2-multiselect-dropdown-lib/src/lib/menu-item.ts.CIcon.html","webpack:///./projects/angular2-multiselect-dropdown-lib/src/lib/menu-item.ts","webpack:///./projects/angular2-multiselect-dropdown-lib/src/lib/multiselect.component.html","webpack:///./projects/angular2-multiselect-dropdown-lib/src/lib/multiselect.component.ts","webpack:///./projects/angular2-multiselect-dropdown-lib/src/lib/multiselect.model.ts","webpack:///./projects/angular2-multiselect-dropdown-lib/src/lib/multiselect.service.ts","webpack:///./projects/angular2-multiselect-dropdown-lib/src/lib/virtual-scroll/virtual-scroll.ts.VirtualScrollerComponent.html","webpack:///./projects/angular2-multiselect-dropdown-lib/src/lib/virtual-scroll/virtual-scroll.ts","webpack:///./src/$_lazy_route_resource lazy namespace object","webpack:///./src/app/app.component.html","webpack:///./src/app/app.component.ts","webpack:///./src/app/app.module.ts","webpack:///./src/app/app.router.ts","webpack:///./src/app/examples/views/view.html","webpack:///./src/app/examples/basic.ts","webpack:///./src/app/examples/views/customSearch.html","webpack:///./src/app/examples/customSearch.ts","webpack:///./src/app/examples/customplaceholder.ts","webpack:///./src/app/examples/views/disableMode.html","webpack:///./src/app/examples/disablemode.ts","webpack:///./src/app/examples/views/dynamicData.html","webpack:///./src/app/examples/dynamicDataSets.ts","webpack:///./src/app/examples/views/events.html","webpack:///./src/app/examples/events.ts","webpack:///./src/app/examples/gist.ts.ng2Gist.html","webpack:///./src/app/examples/gist.ts","webpack:///./src/app/examples/views/groupBy.html","webpack:///./src/app/examples/groupBy.ts","webpack:///./src/app/examples/views/lazyLoading.html","webpack:///./src/app/examples/lazyLoading.ts","webpack:///./src/app/examples/views/lazyLoadingRemoteData.html","webpack:///./src/app/examples/lazyLoadingRemoteData.ts","webpack:///./src/app/examples/limitbadges.ts","webpack:///./src/app/examples/limitselection.ts","webpack:///./src/app/examples/mock-data.ts","webpack:///./src/app/examples/views/multipledropdowns.html","webpack:///./src/app/examples/multipleDropdowns.ts","webpack:///./src/app/examples/views/remoteData.html","webpack:///./src/app/examples/remoteData.ts","webpack:///./src/app/examples/views/resetDropdown.html","webpack:///./src/app/examples/resetdropdown.ts","webpack:///./src/app/examples/searchByOneProperty.ts","webpack:///./src/app/examples/searchFilter.ts","webpack:///./src/app/examples/views/searchFilter.html","webpack:///./src/app/examples/searchFilterAddNewItem.ts","webpack:///./src/app/examples/singleselection.ts","webpack:///./src/app/examples/styling.ts","webpack:///./src/app/examples/views/templating.html","webpack:///./src/app/examples/templating.ts","webpack:///./src/app/examples/views/theming.html","webpack:///./src/app/examples/theming.ts","webpack:///./src/app/examples/views/usingInList.html","webpack:///./src/app/examples/usingInList.ts","webpack:///./src/app/examples/views/using-in-react-form.html","webpack:///./src/app/examples/usingInReactForms.ts","webpack:///./src/app/examples/views/using-in-form.html","webpack:///./src/app/examples/usingWithForms.ts","webpack:///./src/environments/environment.ts","webpack:///./src/main.ts"],"names":[],"mappings":"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EAAC,UAAU,EAAC,UAAU,EAAC,SAAS,EAAC,QAAQ,EAAC,UAAU,EAAC,OAAO,EAAC,QAAQ,EAAC,QAAQ,EAAC,QAAQ,EAAC,SAAS,EAAC,SAAS,EAAC,SAAS,EAAC,QAAQ,EAAC,QAAQ,EAAC,QAAQ,EAAC,QAAQ,EAAC,QAAQ,EAAC,MAAM,EAAC,QAAQ,EAAC,QAAQ,EAAC,UAAU,EAAC,QAAQ,EAAC,MAAM,EAAC,QAAQ,EAAC,MAAM,EAAC,OAAO,EAAC,OAAO,EAAC,QAAQ,EAAC,MAAM,EAAC,KAAK,EAAC,MAAM,EAAC,YAAY,EAAC,MAAM,EAAC,QAAQ,EAAC,QAAQ,EAAC,SAAS,EAAC,MAAM,EAAC,OAAO,EAAC,OAAO,EAAC,MAAM,EAAC,QAAQ,EAAC,OAAO,EAAC,OAAO,EAAC,MAAM,EAAC,QAAQ,EAAC,SAAS,EAAC,MAAM,EAAC,SAAS,EAAC,QAAQ,EAAC,UAAU,EAAC,SAAS,EAAC,OAAO,EAAC,SAAS,EAAC,WAAW,EAAC,OAAO,EAAC,QAAQ,EAAC,QAAQ,EAAC,QAAQ,EAAC,WAAW,EAAC,SAAS,EAAC,SAAS,EAAC,WAAW,EAAC,QAAQ,EAAC,UAAU,EAAC,UAAU,EAAC,QAAQ,EAAC,KAAK,EAAC,UAAU,EAAC,WAAW,EAAC,OAAO,EAAC,SAAS,EAAC,SAAS,EAAC,MAAM,EAAC,MAAM,EAAC,OAAO,EAAC,QAAQ,EAAC,QAAQ,EAAC,QAAQ,EAAC,OAAO,EAAC,SAAS,EAAC,QAAQ,EAAC,MAAM,EAAC,UAAU,EAAC,OAAO,EAAC,UAAU,EAAC,UAAU,EAAC,MAAM,EAAC,SAAS,EAAC,OAAO,EAAC,SAAS,EAAC,OAAO,EAAC,SAAS,EAAC,UAAU,EAAC,OAAO,EAAC,MAAM,EAAC,YAAY,EAAC,QAAQ,EAAC,SAAS,EAAC,OAAO,EAAC,OAAO,EAAC,SAAS,EAAC,QAAQ,EAAC,SAAS,EAAC,UAAU,EAAC,SAAS,EAAC,QAAQ,EAAC,OAAO,EAAC,MAAM,EAAC,QAAQ,EAAC,QAAQ,EAAC,QAAQ,EAAC,QAAQ,EAAC,OAAO,EAAC,OAAO,EAAC,MAAM,EAAC,QAAQ,EAAC,WAAW,EAAC,OAAO,EAAC,QAAQ,EAAC,OAAO,EAAC,OAAO,EAAC,MAAM,EAAC,OAAO,EAAC,QAAQ,EAAC,KAAK,EAAC,MAAM,EAAC,MAAM,EAAC,QAAQ,EAAC,SAAS,EAAC,OAAO,EAAC,UAAU,EAAC,SAAS,EAAC,SAAS,EAAC,QAAQ,EAAC,MAAM,EAAC,WAAW,EAAC,QAAQ,EAAC,SAAS,EAAC,UAAU,EAAC,SAAS,EAAC,OAAO,EAAC,QAAQ,EAAC,MAAM,EAAC,QAAQ,EAAC,QAAQ,EAAC,MAAM,EAAC,SAAS,EAAC,QAAQ,EAAC,SAAS,EAAC,OAAO,EAAC,QAAQ,EAAC,QAAQ,EAAC,SAAS,EAAC,MAAM,EAAC,SAAS,EAAC,YAAY,EAAC,QAAQ,EAAC,SAAS,EAAC,SAAS,EAAC,QAAQ,EAAC,QAAQ,EAAC,WAAW,EAAC,OAAO,EAAC,SAAS,EAAC,UAAU,EAAC,KAAK,EAAC,MAAM,EAAC,OAAO,EAAC,WAAW,EAAC,SAAS,EAAC,SAAS,EAAC,OAAO,EAAC,UAAU,EAAC,QAAQ,EAAC,UAAU,EAAC,SAAS,EAAC,UAAU,EAAC,OAAO,EAAC,QAAQ,EAAC,SAAS,EAAC,SAAS,EAAC,QAAQ,EAAC,SAAS,EAAC,QAAQ,EAAC,QAAQ,EAAC,QAAQ,EAAC,OAAO,EAAC,QAAQ,EAAC,UAAU,EAAC,OAAO,EAAC,QAAQ,EAAC,QAAQ,EAAC,QAAQ,EAAC,UAAU,EAAC,OAAO,EAAC,QAAQ,EAAC,MAAM,EAAC,SAAS,EAAC,QAAQ,EAAC,QAAQ,EAAC,SAAS,EAAC,QAAQ,EAAC,YAAY,EAAC,YAAY,EAAC,QAAQ,EAAC,QAAQ,EAAC,QAAQ,EAAC,MAAM,EAAC,QAAQ,EAAC,OAAO,EAAC,SAAS,EAAC,MAAM,EAAC,QAAQ,EAAC,QAAQ,EAAC,MAAM,EAAC,OAAO,EAAC,OAAO,EAAC,MAAM,EAAC,SAAS,EAAC,SAAS,EAAC,MAAM,EAAC,QAAQ,EAAC,OAAO,EAAC,QAAQ,EAAC,QAAQ,EAAC,QAAQ,EAAC,UAAU,EAAC,KAAK,EAAC,KAAK,EAAC,WAAW,EAAC,QAAQ,EAAC,QAAQ,EAAC,OAAO,EAAC,SAAS,EAAC,MAAM,EAAC,OAAO,EAAC,QAAQ,EAAC,QAAQ,EAAC,SAAS,EAAC,SAAS,EAAC,QAAQ,EAAC,MAAM,EAAC,MAAM,EAAC,SAAS,EAAC,UAAU,EAAC,SAAS,EAAC,SAAS,EAAC,QAAQ,EAAC,UAAU,EAAC,SAAS,EAAC,OAAO,EAAC,UAAU,EAAC,MAAM,EAAC,QAAQ,EAAC,MAAM,EAAC,SAAS,EAAC,WAAW,EAAC,SAAS,EAAC,UAAU,EAAC,UAAU,EAAC,SAAS,EAAC,QAAQ,EAAC,UAAU,EAAC,OAAO,EAAC,OAAO,EAAC,SAAS,EAAC,MAAM,EAAC,QAAQ,EAAC,MAAM,EAAC,SAAS,EAAC,SAAS,EAAC,SAAS,EAAC,QAAQ,EAAC,WAAW,EAAC,SAAS,EAAC,MAAM,EAAC,QAAQ,EAAC,OAAO,EAAC,UAAU,EAAC,OAAO,EAAC,UAAU,EAAC,OAAO,EAAC,QAAQ,EAAC,QAAQ,EAAC,QAAQ,EAAC,SAAS,EAAC,MAAM,EAAC,UAAU,EAAC,QAAQ,EAAC,QAAQ,EAAC,MAAM,EAAC,WAAW,EAAC,QAAQ,EAAC,OAAO,EAAC,OAAO,EAAC,MAAM,EAAC,OAAO,EAAC,QAAQ,EAAC,QAAQ,EAAC,OAAO,EAAC,MAAM,EAAC,QAAQ,EAAC,SAAS,EAAC,MAAM,EAAC,UAAU,EAAC,UAAU,EAAC,MAAM,EAAC,WAAW,EAAC,UAAU,EAAC,UAAU,EAAC,UAAU,EAAC,MAAM,EAAC,QAAQ,EAAC,QAAQ,EAAC,SAAS,EAAC,QAAQ,EAAC,OAAO,EAAC,UAAU,EAAC,SAAS,EAAC,OAAO,EAAC,MAAM,EAAC,SAAS,EAAC,SAAS,EAAC,MAAM,EAAC,QAAQ,EAAC,IAAI,EAAC,UAAU,EAAC,OAAO,EAAC,OAAO,EAAC,UAAU,EAAC,QAAQ,EAAC,OAAO,EAAC,SAAS,EAAC,QAAQ,EAAC,QAAQ,EAAC,MAAM,EAAC,UAAU,EAAC,OAAO,EAAC,QAAQ,EAAC,OAAO,EAAC,OAAO,EAAC,QAAQ,EAAC,SAAS,EAAC,OAAO,EAAC,OAAO,EAAC,SAAS,EAAC,MAAM,EAAC,YAAY,EAAC,OAAO,EAAC,YAAY,EAAC,OAAO,EAAC,SAAS,EAAC,WAAW,EAAC,OAAO,EAAC,MAAM,EAAC,UAAU,EAAC,QAAQ,EAAC,QAAQ,EAAC,MAAM,EAAC,SAAS,EAAC,QAAQ,EAAC,OAAO,EAAC,OAAO,EAAC,SAAS,EAAC,SAAS,EAAC,QAAQ,EAAC,SAAS,EAAC,OAAO,EAAC,OAAO,EAAC,aAAa,EAAC,QAAQ,EAAC,QAAQ,EAAC,SAAS,EAAC,SAAS,EAAC,QAAQ,EAAC,SAAS,EAAC,SAAS,EAAC,QAAQ,EAAC,OAAO,EAAC,SAAS,EAAC,MAAM,EAAC,OAAO,EAAC,OAAO,EAAC,QAAQ,EAAC,MAAM,EAAC,QAAQ,EAAC,QAAQ,EAAC,MAAM,EAAC,QAAQ,EAAC,OAAO,EAAC,WAAW,EAAC,OAAO,EAAC,SAAS,EAAC,QAAQ,EAAC,SAAS,EAAC,MAAM,EAAC,UAAU,EAAC,MAAM,EAAC,MAAM,EAAC,SAAS,EAAC,UAAU,EAAC,UAAU,EAAC,MAAM,EAAC,QAAQ,EAAC,QAAQ,EAAC,OAAO,EAAC,OAAO,EAAC,WAAW,EAAC,SAAS,EAAC,MAAM,EAAC,SAAS,EAAC,OAAO,EAAC,QAAQ,EAAC,YAAY,EAAC,SAAS,EAAC,SAAS,EAAC,MAAM,EAAC,QAAQ,EAAC,QAAQ,EAAC,YAAY,EAAC,OAAO,EAAC,QAAQ,EAAC,OAAO,EAAC,QAAQ,EAAC,SAAS,EAAC,QAAQ,EAAC,OAAO,EAAC,SAAS,EAAC,UAAU,EAAC,MAAM,EAAC,QAAQ,EAAC,QAAQ,EAAC,WAAW,EAAC,QAAQ,EAAC,OAAO,EAAC,OAAO,EAAC,OAAO,EAAC,QAAQ,EAAC,QAAQ,EAAC,SAAS,EAAC,MAAM,EAAC,OAAO,EAAC,QAAQ,EAAC,MAAM,EAAC,OAAO,EAAC,OAAO,EAAC,QAAQ,EAAC,SAAS,EAAC,OAAO,EAAC,SAAS,EAAC,OAAO,EAAC,OAAO,EAAC,SAAS,EAAC,MAAM,EAAC,OAAO,EAAC,MAAM,EAAC,MAAM,EAAC,OAAO,EAAC,MAAM,EAAC,OAAO,EAAC,SAAS,EAAC,UAAU,EAAC,SAAS,EAAC,OAAO,EAAC,OAAO,EAAC,SAAS,EAAC,QAAQ,EAAC,QAAQ,EAAC,MAAM,EAAC,SAAS,EAAC,SAAS,EAAC,SAAS,EAAC,UAAU,EAAC,MAAM,EAAC,SAAS,EAAC,MAAM,EAAC,IAAI,EAAC,WAAW,EAAC,OAAO,EAAC,QAAQ,EAAC,OAAO,EAAC,SAAS,EAAC,WAAW,EAAC,SAAS,EAAC,MAAM,EAAC,QAAQ,EAAC,UAAU,EAAC,SAAS,EAAC,OAAO,EAAC,QAAQ,EAAC,SAAS,EAAC,WAAW,EAAC,WAAW,EAAC,OAAO,EAAC,QAAQ,EAAC,QAAQ,EAAC,OAAO,EAAC,UAAU,EAAC,SAAS,EAAC,OAAO,EAAC,UAAU,EAAC,UAAU,EAAC,SAAS,EAAC,QAAQ,EAAC,OAAO,EAAC,SAAS,EAAC,OAAO,EAAC,UAAU,EAAC,UAAU,EAAC,OAAO,EAAC,OAAO,EAAC,QAAQ,EAAC,QAAQ,EAAC,SAAS,EAAC,MAAM,EAAC,UAAU,EAAC,MAAM,EAAC,SAAS,EAAC,WAAW,EAAC,QAAQ,EAAC,SAAS,EAAC,MAAM,EAAC,UAAU,EAAC,MAAM,EAAC,QAAQ,EAAC,QAAQ,EAAC,UAAU,EAAC,OAAO,EAAC,QAAQ,EAAC,QAAQ,EAAC,SAAS,EAAC,SAAS,EAAC,SAAS,EAAC,WAAW,EAAC,OAAO,EAAC,SAAS,EAAC,SAAS,EAAC,SAAS,EAAC,SAAS,EAAC,MAAM,EAAC,OAAO,EAAC,WAAW,EAAC,QAAQ,EAAC,UAAU,EAAC,OAAO,EAAC,QAAQ,EAAC,SAAS,EAAC,SAAS,EAAC,SAAS,EAAC,UAAU,EAAC,MAAM,EAAC,WAAW,EAAC,SAAS,EAAC,MAAM,EAAC,WAAW,EAAC,QAAQ,EAAC,SAAS,EAAC,WAAW,EAAC,MAAM,EAAC,WAAW,EAAC,MAAM,EAAC,OAAO,EAAC,OAAO,EAAC,OAAO,EAAC,OAAO,EAAC,SAAS,EAAC,SAAS,EAAC,OAAO,EAAC,UAAU,EAAC,SAAS,EAAC,YAAY,EAAC,OAAO,EAAC,QAAQ,EAAC,UAAU,EAAC,UAAU,EAAC,SAAS,EAAC,QAAQ,EAAC,SAAS,EAAC,KAAK,EAAC,OAAO,EAAC,SAAS,EAAC,KAAK,EAAC,SAAS,EAAC,QAAQ,EAAC,OAAO,EAAC,OAAO,EAAC,UAAU,EAAC,SAAS,EAAC,QAAQ,EAAC,SAAS,EAAC,QAAQ,EAAC,QAAQ,EAAC,OAAO,EAAC,MAAM,EAAC,MAAM,EAAC,SAAS,EAAC,OAAO,EAAC,QAAQ,EAAC,SAAS,EAAC,SAAS,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QAAQ,EAAC,QAAQ,EAAC,SAAS,EAAC,MAAM,EAAC,OAAO,EAAC,OAAO,EAAC,MAAM,EAAC,QAAQ,EAAC,OAAO,EAAC,OAAO,EAAC,MAAM,EAAC,QAAQ,EAAC,SAAS,EAAC,MAAM,EAAC,SAAS,EAAC,QAAQ,EAAC,UAAU,EAAC,SAAS,EAAC,OAAO,EAAC,SAAS,EAAC,WAAW,EAAC,OAAO,EAAC,QAAQ,EAAC,QAAQ,EAAC,QAAQ,EAAC,WAAW,EAAC,SAAS,EAAC,SAAS,EAAC,WAAW,EAAC,QAAQ,EAAC,UAAU,EAAC,UAAU,EAAC,QAAQ,EAAC,KAAK,EAAC,UAAU,EAAC,WAAW,EAAC,OAAO,EAAC,SAAS,EAAC,SAAS,EAAC,MAAM,EAAC,MAAM,EAAC,OAAO,EAAC,QAAQ,EAAC,QAAQ,EAAC,QAAQ,EAAC,OAAO,EAAC,SAAS,EAAC,QAAQ,EAAC,MAAM,EAAC,UAAU,EAAC,OAAO,EAAC,UAAU,EAAC,UAAU,EAAC,MAAM,EAAC,SAAS,EAAC,OAAO,EAAC,SAAS,EAAC,OAAO,EAAC,SAAS,EAAC,UAAU,EAAC,OAAO,EAAC,MAAM,EAAC,YAAY,EAAC,QAAQ,EAAC,SAAS,EAAC,OAAO,EAAC,OAAO,EAAC,SAAS,EAAC,QAAQ,EAAC,SAAS,EAAC,UAAU,EAAC,SAAS,EAAC,QAAQ,EAAC,OAAO,EAAC,MAAM,EAAC,QAAQ,EAAC,QAAQ,EAAC,QAAQ,EAAC,QAAQ,EAAC,OAAO,EAAC,OAAO,EAAC,MAAM,EAAC,QAAQ,EAAC,WAAW,EAAC,OAAO,EAAC,QAAQ,EAAC,OAAO,EAAC,OAAO,EAAC,MAAM,EAAC,OAAO,EAAC,QAAQ,EAAC,KAAK,EAAC,MAAM,EAAC,MAAM,EAAC,QAAQ,EAAC,SAAS,EAAC,OAAO,EAAC,UAAU,EAAC,SAAS,EAAC,SAAS,EAAC,QAAQ,EAAC,MAAM,EAAC,WAAW,EAAC,QAAQ,EAAC,SAAS,EAAC,UAAU,EAAC,SAAS,EAAC,OAAO,EAAC,QAAQ,EAAC,MAAM,EAAC,QAAQ,EAAC,QAAQ,EAAC,MAAM,EAAC,SAAS,EAAC,QAAQ,EAAC,SAAS,EAAC,OAAO,EAAC,QAAQ,EAAC,QAAQ,EAAC,SAAS,EAAC,MAAM,EAAC,SAAS,EAAC,YAAY,EAAC,QAAQ,EAAC,SAAS,EAAC,SAAS,EAAC,QAAQ,EAAC,QAAQ,EAAC,WAAW,EAAC,OAAO,EAAC,SAAS,EAAC,UAAU,EAAC,KAAK,EAAC,MAAM,EAAC,OAAO,EAAC,WAAW,EAAC,SAAS,EAAC,SAAS,EAAC,OAAO,EAAC,UAAU,EAAC,QAAQ,EAAC,UAAU,EAAC,SAAS,EAAC,UAAU,EAAC,OAAO,EAAC,QAAQ,EAAC,SAAS,EAAC,SAAS,EAAC,QAAQ,EAAC,SAAS,EAAC,QAAQ,EAAC,QAAQ,EAAC,QAAQ,EAAC,OAAO,EAAC,QAAQ,EAAC,UAAU,EAAC,OAAO,EAAC,QAAQ,EAAC,QAAQ,EAAC,QAAQ,EAAC,UAAU,EAAC,OAAO,EAAC,QAAQ,EAAC,MAAM,EAAC,SAAS,EAAC,QAAQ,EAAC,QAAQ,EAAC,SAAS,EAAC,QAAQ,EAAC,YAAY,EAAC,YAAY,EAAC,QAAQ,EAAC,QAAQ,EAAC,QAAQ,EAAC,MAAM,EAAC,QAAQ,EAAC,OAAO,EAAC,SAAS,EAAC,MAAM,EAAC,QAAQ,EAAC,QAAQ,EAAC,MAAM,EAAC,OAAO,EAAC,OAAO,EAAC,MAAM,EAAC,SAAS,EAAC,SAAS,EAAC,MAAM,EAAC,QAAQ,EAAC,OAAO,EAAC,QAAQ,EAAC,QAAQ,EAAC,QAAQ,EAAC,UAAU,EAAC,KAAK,EAAC,KAAK,EAAC,WAAW,EAAC,QAAQ,EAAC,QAAQ,EAAC,OAAO,EAAC,SAAS,EAAC,MAAM,EAAC,OAAO,EAAC,QAAQ,EAAC,QAAQ,EAAC,SAAS,EAAC,SAAS,EAAC,QAAQ,EAAC,MAAM,EAAC,MAAM,EAAC,SAAS,EAAC,UAAU,EAAC,SAAS,EAAC,SAAS,EAAC,QAAQ,EAAC,UAAU,EAAC,SAAS,EAAC,OAAO,EAAC,UAAU,EAAC,MAAM,EAAC,QAAQ,EAAC,MAAM,EAAC,SAAS,EAAC,WAAW,EAAC,SAAS,EAAC,UAAU,EAAC,UAAU,EAAC,SAAS,EAAC,QAAQ,EAAC,UAAU,EAAC,OAAO,EAAC,OAAO,EAAC,SAAS,EAAC,MAAM,EAAC,QAAQ,EAAC,MAAM,EAAC,SAAS,EAAC,SAAS,EAAC,SAAS,EAAC,QAAQ,EAAC,WAAW,EAAC,SAAS,EAAC,MAAM,EAAC,QAAQ,EAAC,OAAO,EAAC,UAAU,EAAC,OAAO,EAAC,UAAU,EAAC,OAAO,EAAC,QAAQ,EAAC,QAAQ,EAAC,QAAQ,EAAC,SAAS,EAAC,MAAM,EAAC,UAAU,EAAC,QAAQ,EAAC,QAAQ,EAAC,MAAM,EAAC,WAAW,EAAC,QAAQ,EAAC,OAAO,EAAC,OAAO,EAAC,MAAM,EAAC,OAAO,EAAC,QAAQ,EAAC,QAAQ,EAAC,OAAO,EAAC,MAAM,EAAC,QAAQ,EAAC,SAAS,EAAC,MAAM,EAAC,UAAU,EAAC,UAAU,EAAC,MAAM,EAAC,WAAW,EAAC,UAAU,EAAC,UAAU,EAAC,UAAU,EAAC,MAAM,EAAC,QAAQ,EAAC,QAAQ,EAAC,SAAS,EAAC,QAAQ,EAAC,OAAO,EAAC,UAAU,EAAC,SAAS,EAAC,OAAO,EAAC,MAAM,EAAC,SAAS,EAAC,SAAS,EAAC,MAAM,EAAC,QAAQ,EAAC,IAAI,EAAC,UAAU,EAAC,OAAO,EAAC,OAAO,EAAC,UAAU,EAAC,QAAQ,EAAC,OAAO,EAAC,SAAS,EAAC,QAAQ,EAAC,QAAQ,EAAC,MAAM,EAAC,UAAU,EAAC,OAAO,EAAC,QAAQ,EAAC,OAAO,EAAC,OAAO,EAAC,QAAQ,EAAC,SAAS,EAAC,OAAO,EAAC,OAAO,EAAC,SAAS,EAAC,MAAM,EAAC,YAAY,EAAC,OAAO,EAAC,YAAY,EAAC,OAAO,EAAC,SAAS,EAAC,WAAW,EAAC,OAAO,EAAC,MAAM,EAAC,UAAU,EAAC,QAAQ,EAAC,QAAQ,EAAC,MAAM,EAAC,SAAS,EAAC,QAAQ,EAAC,OAAO,EAAC,OAAO,EAAC,SAAS,EAAC,SAAS,EAAC,QAAQ,EAAC,SAAS,EAAC,OAAO,EAAC,OAAO,EAAC,aAAa,EAAC,QAAQ,EAAC,QAAQ,EAAC,SAAS,EAAC,SAAS,EAAC,QAAQ,EAAC,SAAS,EAAC,SAAS,EAAC,QAAQ,EAAC,OAAO,EAAC,SAAS,EAAC,MAAM,EAAC,OAAO,EAAC,OAAO,EAAC,QAAQ,EAAC,MAAM,EAAC,QAAQ,EAAC,QAAQ,EAAC,MAAM,EAAC,QAAQ,EAAC,OAAO,EAAC,WAAW,EAAC,OAAO,EAAC,SAAS,EAAC,QAAQ,EAAC,SAAS,EAAC,MAAM,EAAC,UAAU,EAAC,MAAM,EAAC,MAAM,EAAC,SAAS,EAAC,UAAU,EAAC,UAAU,EAAC,MAAM,EAAC,QAAQ,EAAC,QAAQ,EAAC,OAAO,EAAC,OAAO,EAAC,WAAW,EAAC,SAAS,EAAC,MAAM,EAAC,SAAS,EAAC,OAAO,EAAC,QAAQ,EAAC,YAAY,EAAC,SAAS,EAAC,SAAS,EAAC,MAAM,EAAC,QAAQ,EAAC,QAAQ,EAAC,YAAY,EAAC,OAAO,EAAC,QAAQ,EAAC,OAAO,EAAC,QAAQ,EAAC,SAAS,EAAC,QAAQ,EAAC,OAAO,EAAC,SAAS,EAAC,UAAU,EAAC,MAAM,EAAC,QAAQ,EAAC,QAAQ,EAAC,WAAW,EAAC,QAAQ,EAAC,OAAO,EAAC,OAAO,EAAC,OAAO,EAAC,QAAQ,EAAC,QAAQ,EAAC,SAAS,EAAC,MAAM,EAAC,OAAO,EAAC,QAAQ,EAAC,MAAM,EAAC,OAAO,EAAC,OAAO,EAAC,QAAQ,EAAC,SAAS,EAAC,OAAO,EAAC,SAAS,EAAC,OAAO,EAAC,OAAO,EAAC,SAAS,EAAC,MAAM,EAAC,OAAO,EAAC,MAAM,EAAC,MAAM,EAAC,OAAO,EAAC,MAAM,EAAC,OAAO,EAAC,SAAS,EAAC,UAAU,EAAC,SAAS,EAAC,OAAO,EAAC,OAAO,EAAC,SAAS,EAAC,QAAQ,EAAC,QAAQ,EAAC,MAAM,EAAC,SAAS,EAAC,SAAS,EAAC,SAAS,EAAC,UAAU,EAAC,MAAM,EAAC,SAAS,EAAC,MAAM,EAAC,IAAI,EAAC,WAAW,EAAC,OAAO,EAAC,QAAQ,EAAC,OAAO,EAAC,SAAS,EAAC,WAAW,EAAC,SAAS,EAAC,MAAM,EAAC,QAAQ,EAAC,UAAU,EAAC,SAAS,EAAC,OAAO,EAAC,QAAQ,EAAC,SAAS,EAAC,WAAW,EAAC,WAAW,EAAC,OAAO,EAAC,QAAQ,EAAC,QAAQ,EAAC,OAAO,EAAC,UAAU,EAAC,SAAS,EAAC,OAAO,EAAC,UAAU,EAAC,UAAU,EAAC,SAAS,EAAC,QAAQ,EAAC,OAAO,EAAC,SAAS,EAAC,OAAO,EAAC,UAAU,EAAC,UAAU,EAAC,OAAO,EAAC,OAAO,EAAC,QAAQ,EAAC,QAAQ,EAAC,SAAS,EAAC,MAAM,EAAC,UAAU,EAAC,MAAM,EAAC,SAAS,EAAC,WAAW,EAAC,QAAQ,EAAC,SAAS,EAAC,MAAM,EAAC,UAAU,EAAC,MAAM,EAAC,QAAQ,EAAC,QAAQ,EAAC,UAAU,EAAC,OAAO,EAAC,QAAQ,EAAC,QAAQ,EAAC,SAAS,EAAC,SAAS,EAAC,SAAS,EAAC,WAAW,EAAC,OAAO,EAAC,SAAS,EAAC,SAAS,EAAC,SAAS,EAAC,SAAS,EAAC,MAAM,EAAC,OAAO,EAAC,WAAW,EAAC,QAAQ,EAAC,UAAU,EAAC,OAAO,EAAC,QAAQ,EAAC,SAAS,EAAC,SAAS,EAAC,SAAS,EAAC,UAAU,EAAC,MAAM,EAAC,WAAW,EAAC,SAAS,EAAC,MAAM,EAAC,WAAW,EAAC,QAAQ,EAAC,SAAS,EAAC,WAAW,EAAC,MAAM,EAAC,WAAW,EAAC,MAAM,EAAC,OAAO,EAAC,OAAO,EAAC,OAAO,EAAC,OAAO,EAAC,SAAS,EAAC,SAAS,EAAC,OAAO,EAAC,UAAU,EAAC,SAAS,EAAC,YAAY,EAAC,OAAO,EAAC,QAAQ,EAAC,UAAU,EAAC,UAAU,EAAC,SAAS,EAAC,QAAQ,EAAC,SAAS,EAAC,KAAK,EAAC,OAAO,EAAC,SAAS,EAAC,KAAK,EAAC,SAAS,EAAC,QAAQ,EAAC,OAAO,EAAC,OAAO,EAAC,UAAU,EAAC,SAAS,EAAC,QAAQ,EAAC,SAAS,EAAC,QAAQ,EAAC,QAAQ,EAAC,OAAO,EAAC,MAAM,EAAC,MAAM,EAAC,SAAS,EAAC,OAAO,EAAC,QAAQ,EAAC,SAAS,EAAC,SAAS,EAAC,OAAO,EAAC,OAAO,EAAC,OAAO,EAAC,QAAQ,EAAC,QAAQ,EAAC,QAAQ,EAAC,YAAY,EAAC,KAAK,EAAC,QAAQ,EAAC,UAAU,EAAC,OAAO,EAAC,MAAM,EAAC,UAAU,EAAC,OAAO,EAAC,MAAM,EAAC,QAAQ,EAAC,OAAO,EAAC,OAAO,EAAC,SAAS,EAAC,QAAQ,EAAC,OAAO,EAAC,QAAQ,EAAC,MAAM,EAAC,SAAS,EAAC,MAAM,EAAC,YAAY,EAAC,QAAQ,EAAC,WAAW,EAAC,MAAM,EAAC,SAAS,EAAC,WAAW,EAAC,SAAS,EAAC,QAAQ,EAAC,OAAO,EAAC,MAAM,EAAC,QAAQ,EAAC,SAAS,EAAC,OAAO,EAAC,SAAS,EAAC,OAAO,EAAC,IAAI,EAAC,QAAQ,EAAC,WAAW,EAAC,OAAO,EAAC,MAAM,EAAC,SAAS,EAAC,UAAU,EAAC,QAAQ,EAAC,OAAO,EAAC,SAAS,EAAC,SAAS,EAAC,OAAO,EAAC,UAAU,EAAC,SAAS,EAAC,OAAO,EAAC,MAAM,EAAC,QAAQ,EAAC,QAAQ,EAAC,SAAS,EAAC,OAAO,EAAC,YAAY,EAAC,OAAO,EAAC,OAAO,EAAC,KAAK,EAAC,OAAO,EAAC,YAAY,EAAC,QAAQ,EAAC,SAAS,EAAC,YAAY,EAAC,SAAS,EAAC,SAAS,EAAC,OAAO,EAAC,KAAK,EAAC,QAAQ,EAAC,OAAO,EAAC,QAAQ,EAAC,QAAQ,EAAC,OAAO,EAAC,WAAW,EAAC,SAAS,EAAC,SAAS,EAAC,MAAM,EAAC,SAAS,EAAC,SAAS,EAAC,OAAO,EAAC,UAAU,EAAC,MAAM,EAAC,OAAO,EAAC,aAAa,EAAC,UAAU,EAAC,MAAM,EAAC,QAAQ,EAAC,UAAU,EAAC,QAAQ,EAAC,MAAM,EAAC,MAAM,EAAC,QAAQ,EAAC,QAAQ,EAAC,QAAQ,EAAC,UAAU,EAAC,OAAO,EAAC,UAAU,EAAC,OAAO,EAAC,QAAQ,EAAC,QAAQ,EAAC,MAAM,EAAC,WAAW,EAAC,QAAQ,EAAC,OAAO,EAAC,QAAQ,EAAC,QAAQ,EAAC,MAAM,EAAC,SAAS,EAAC,SAAS,EAAC,SAAS,EAAC,WAAW,EAAC,MAAM,EAAC,OAAO,EAAC,QAAQ,EAAC,OAAO,EAAC,QAAQ,EAAC,OAAO,EAAC,SAAS,EAAC,YAAY,EAAC,SAAS,EAAC,QAAQ,EAAC,UAAU,EAAC,OAAO,EAAC,WAAW,EAAC,SAAS,EAAC,UAAU,EAAC,OAAO,EAAC,MAAM,EAAC,OAAO,EAAC,UAAU,EAAC,IAAI,EAAC,YAAY,EAAC,QAAQ,EAAC,QAAQ,EAAC,WAAW,EAAC,SAAS,EAAC,OAAO,EAAC,QAAQ,EAAC,QAAQ,EAAC,OAAO,EAAC,QAAQ,EAAC,WAAW,EAAC,OAAO,EAAC,WAAW,EAAC,UAAU,EAAC,OAAO,EAAC,aAAa,EAAC,SAAS,EAAC,MAAM,EAAC,OAAO,EAAC,SAAS,EAAC,SAAS,EAAC,WAAW,EAAC,OAAO,EAAC,OAAO,EAAC,OAAO,EAAC,QAAQ,EAAC,OAAO,EAAC,QAAQ,EAAC,MAAM,EAAC,QAAQ,EAAC,MAAM,EAAC,UAAU,EAAC,QAAQ,EAAC,OAAO,EAAC,MAAM,EAAC,SAAS,EAAC,SAAS,EAAC,SAAS,EAAC,MAAM,EAAC,OAAO,EAAC,SAAS,EAAC,QAAQ,EAAC,QAAQ,EAAC,MAAM,EAAC,SAAS,EAAC,SAAS,EAAC,SAAS,EAAC,WAAW,EAAC,OAAO,EAAC,QAAQ,EAAC,WAAW,EAAC,UAAU,EAAC,MAAM,EAAC,OAAO,EAAC,QAAQ,EAAC,WAAW,EAAC,MAAM,EAAC,OAAO,EAAC,SAAS,EAAC,KAAK,EAAC,MAAM,EAAC,OAAO,EAAC,SAAS,EAAC,QAAQ,EAAC,UAAU,EAAC,SAAS,EAAC,OAAO,EAAC,MAAM,EAAC,MAAM,EAAC,OAAO,EAAC,QAAQ,EAAC,UAAU,EAAC,QAAQ,EAAC,QAAQ,EAAC,OAAO,EAAC,QAAQ,EAAC,MAAM,EAAC,SAAS,EAAC,UAAU,EAAC,OAAO,EAAC,MAAM,EAAC,WAAW,EAAC,OAAO,EAAC,MAAM,EAAC,SAAS,EAAC,SAAS,EAAC,SAAS,EAAC,OAAO,EAAC,QAAQ,EAAC,UAAU,EAAC,OAAO,EAAC,OAAO,EAAC,OAAO,EAAC,MAAM,EAAC,OAAO,EAAC,IAAI,EAAC,UAAU,EAAC,KAAK,EAAC,OAAO,EAAC,QAAQ,EAAC,QAAQ,EAAC,OAAO,EAAC,SAAS,EAAC,UAAU,EAAC,QAAQ,EAAC,SAAS,EAAC,QAAQ,EAAC,UAAU,EAAC,OAAO,EAAC,SAAS,EAAC,UAAU,EAAC,QAAQ,EAAC,OAAO,EAAC,MAAM,EAAC,WAAW,EAAC,QAAQ,EAAC,OAAO,EAAC,UAAU,EAAC,WAAW,EAAC,SAAS,EAAC,OAAO,EAAC,OAAO,EAAC,QAAQ,EAAC,QAAQ,EAAC,SAAS,EAAC,QAAQ,EAAC,UAAU,EAAC,QAAQ,EAAC,MAAM,EAAC,SAAS,EAAC,SAAS,EAAC,SAAS,EAAC,SAAS,EAAC,QAAQ,EAAC,WAAW,EAAC,SAAS,EAAC,SAAS,EAAC,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","file":"main-es5.js","sourcesContent":["import { Directive, ElementRef, Output, EventEmitter, HostListener, Input, OnInit, OnChanges } from '@angular/core';\n\n@Directive({\n selector: '[clickOutside]'\n})\nexport class ClickOutsideDirective {\n constructor(private _elementRef: ElementRef) {\n }\n\n @Output()\n public clickOutside = new EventEmitter();\n\n @HostListener('document:click', ['$event', '$event.target'])\n @HostListener('document:touchstart', ['$event', '$event.target'])\n public onClick(event: MouseEvent, targetElement: HTMLElement): void {\n if (!targetElement) {\n return;\n }\n\n const clickedInside = this._elementRef.nativeElement.contains(targetElement);\n if (!clickedInside) {\n this.clickOutside.emit(event);\n }\n }\n}\n\n@Directive({\n selector: '[scroll]'\n})\nexport class ScrollDirective {\n constructor(private _elementRef: ElementRef) {\n }\n\n @Output()\n public scroll = new EventEmitter();\n\n @HostListener('scroll', ['$event'])\n public onClick(event: MouseEvent, targetElement: HTMLElement): void {\n this.scroll.emit(event);\n }\n}\n@Directive({\n selector: '[styleProp]'\n})\nexport class styleDirective {\n\n constructor(private el: ElementRef) {\n\n }\n\n @Input('styleProp') styleVal: number;\n\n ngOnInit() {\n\n this.el.nativeElement.style.top = this.styleVal;\n }\n ngOnChanges(): void {\n this.el.nativeElement.style.top = this.styleVal;\n }\n}\n\n\n@Directive({\n selector: '[setPosition]'\n})\nexport class setPosition implements OnInit, OnChanges {\n\n @Input('setPosition') height: number;\n\n constructor(public el: ElementRef) {\n\n }\n ngOnInit() {\n if (this.height) {\n this.el.nativeElement.style.bottom = parseInt(this.height + 15 + \"\") + 'px';\n }\n }\n ngOnChanges(): void {\n if (this.height) {\n this.el.nativeElement.style.bottom = parseInt(this.height + 15 + \"\") + 'px';\n }\n }\n}","import { Pipe, PipeTransform } from '@angular/core';\nimport { DataService } from './multiselect.service';\n\n\n@Pipe({\n name: 'listFilter',\n pure: true\n})\nexport class ListFilterPipe implements PipeTransform {\n\n public filteredList: any = [];\n constructor(private ds: DataService) {\n\n }\n\n transform(items: any[], filter: any, searchBy: any): any[] {\n if (!items || !filter) {\n this.ds.setData(items);\n return items;\n }\n this.filteredList = items.filter((item: any) => this.applyFilter(item, filter, searchBy));\n this.ds.setData(this.filteredList);\n return this.filteredList;\n }\n applyFilter(item: any, filter: any, searchBy: any): boolean {\n let found = false;\n if (searchBy.length > 0) {\n if (item.grpTitle) {\n found = true;\n }\n else {\n for (var t = 0; t < searchBy.length; t++) {\n if (filter && item[searchBy[t]] && item[searchBy[t]] != \"\") {\n if (item[searchBy[t]].toString().toLowerCase().indexOf(filter.toLowerCase()) >= 0) {\n found = true;\n }\n }\n }\n }\n\n } else {\n if (item.grpTitle) {\n found = true;\n }\n else {\n for (var prop in item) {\n if (filter && item[prop]) {\n if (item[prop].toString().toLowerCase().indexOf(filter.toLowerCase()) >= 0) {\n found = true;\n }\n }\n }\n }\n }\n\n return found;\n }\n}","\n \n \n \n \n \n\n\t\n\t\t\n\t\t\t\n\t\t\n\t\n\n\n\n\n\t\n\t\t\n\t\t\t\n\t\t\n\t\n\n\n\n\n\n\t\n\t\t\n\t\t\t\n\t\t\t\t\n\t\t\t\n\t\t\n\t\n\n\n\n\n\n\t\n\n","import { Component, OnInit, OnDestroy, NgModule, TemplateRef, AfterContentInit, ContentChild, EmbeddedViewRef, OnChanges, ViewContainerRef, ViewEncapsulation, Input, Output, EventEmitter, ElementRef, AfterViewInit, Pipe, PipeTransform, Directive } from '@angular/core';\nimport { SafeResourceUrl, DomSanitizer } from '@angular/platform-browser';\nimport { CommonModule } from '@angular/common';\n\n@Component({\n selector: 'c-item',\n template: ``\n})\n\nexport class Item { \n\n @ContentChild(TemplateRef, {static: true}) template: TemplateRef\n constructor() { \n }\n\n}\n\n@Component({\n selector: 'c-badge',\n template: ``\n})\n\nexport class Badge { \n\n @ContentChild(TemplateRef, {static: true}) template: TemplateRef\n constructor() { \n }\n\n}\n\n@Component({\n selector: 'c-search',\n template: ``\n})\n\nexport class Search { \n\n @ContentChild(TemplateRef, {static: true}) template: TemplateRef\n constructor() { \n }\n\n}\n@Component({\n selector: 'c-templateRenderer',\n template: ``\n})\n\nexport class TemplateRenderer implements OnInit, OnDestroy { \n\n @Input() data: any\n @Input() item: any\n view: EmbeddedViewRef;\n\n constructor(public viewContainer: ViewContainerRef) { \n }\n ngOnInit() {\n this.view = this.viewContainer.createEmbeddedView(this.data.template, {\n '\\$implicit': this.data,\n 'item':this.item\n });\n }\n\t\n ngOnDestroy() {\n\t\tthis.view.destroy();\n\t}\n\n}\n\n@Component({\n selector: 'c-icon',\n template: `\n \n \n \n \n \n\n\t\n\t\t\n\t\t\t\n\t\t\n\t\n\n\n\n\n\t\n\t\t\n\t\t\t\n\t\t\n\t\n\n\n\n\n\n\t\n\t\t\n\t\t\t\n\t\t\t\t\n\t\t\t\n\t\t\n\t\n\n\n\n\n\n\t\n\n`,\n encapsulation: ViewEncapsulation.None,\n\n})\n\nexport class CIcon { \n\n @Input() name:any;\n\n}","
\n
\n
\n\n {{settings.text}}\n \n \n {{item[settings.labelKey]}}\n \n \n 0 && settings.singleSelection && badgeTempl \">\n
\n {{item[settings.labelKey]}}\n\n \n \n \n \n \n \n
\n
\n
0 && !settings.singleSelection\">\n
settings.badgeShowLimit-1\">\n {{item[settings.labelKey]}}\n \n \n \n \n \n \n
\n
\n settings.badgeShowLimit\">+{{selectedItems?.length - settings.badgeShowLimit }}\n 0\" (click)=\"clearSelection($event);$event.stopPropagation()\">\n \n \n \n \n \n \n \n\n \n
\n
\n
\n
\n
\n
\n
0\"\n (click)=\"toggleSelectAll()\">\n \n \n
\n \n
\n \n \n \n \n \n \n \n \n \n\n \n \n \n \n \n
\n
\n
0 && filterLength > 0\" (click)=\"toggleFilterSelectAll()\">\n \n \n
\n
0 && groupedData?.length > 0\" (click)=\"toggleFilterSelectAll()\">\n 0\" [disabled]=\"settings.limitSelection == selectedItems?.length\" />\n \n
\n \n \n\n
\n \n
\n
\n
\n
0 && infiniteFilterLength > 0\" (click)=\"toggleInfiniteFilterSelectAll()\">\n \n \n
\n
\n\n
\n
    \n
  • \n \n \n
  • \n
\n
\n
\n
    \n
  • \n \n \n
  • \n
\n
\n
\n
    \n
  • \n \n \n \n
  • \n
\n
\n
\n
    \n
  • \n \n \n \n
  • \n
\n
\n
\n
    \n \n
  • \n \n \n \n
  • \n
  • \n \n \n \n
  • \n
    \n
\n
\n
\n
    \n \n
  • \n \n \n
      \n \n
    • \n \n \n \n
    • \n
      \n
    \n \n
  • \n
    \n
\n
\n
\n \n
    \n \n
  • \n \n \n
  • \n
  • \n \n \n
  • \n
    \n
\n
\n
\n
\n
    \n \n
  • \n \n \n
      \n \n
    • \n \n \n
    • \n
      \n
    \n
  • \n
    \n \n
\n
\n
{{settings.noDataLabel}}
\n
\n
\n
","import { Component, OnInit, HostListener, ChangeDetectionStrategy,OnDestroy, NgModule, SimpleChanges, OnChanges, ChangeDetectorRef, AfterViewChecked, ViewEncapsulation, ContentChild, ViewChild, forwardRef, Input, Output, EventEmitter, ElementRef, AfterViewInit, Pipe, PipeTransform } from '@angular/core';\nimport { FormsModule, NG_VALUE_ACCESSOR, ControlValueAccessor, NG_VALIDATORS, Validator, FormControl } from '@angular/forms';\nimport { CommonModule } from '@angular/common';\nimport { MyException } from './multiselect.model';\nimport { DropdownSettings } from './multiselect.interface';\nimport { ClickOutsideDirective, ScrollDirective, styleDirective, setPosition } from './clickOutside';\nimport { ListFilterPipe } from './list-filter';\nimport { Item, Badge, Search, TemplateRenderer, CIcon } from './menu-item';\nimport { DataService } from './multiselect.service';\nimport { Subscription, Subject } from 'rxjs';\nimport { VirtualScrollerModule, VirtualScrollerComponent } from './virtual-scroll/virtual-scroll';\nimport { map, debounceTime, distinctUntilChanged, switchMap, tap } from 'rxjs/operators'; \n\nexport const DROPDOWN_CONTROL_VALUE_ACCESSOR: any = {\n provide: NG_VALUE_ACCESSOR,\n useExisting: forwardRef(() => AngularMultiSelect),\n multi: true\n};\nexport const DROPDOWN_CONTROL_VALIDATION: any = {\n provide: NG_VALIDATORS,\n useExisting: forwardRef(() => AngularMultiSelect),\n multi: true,\n}\nconst noop = () => {\n};\n\n@Component({\n selector: 'angular2-multiselect',\n templateUrl: './multiselect.component.html',\n host: { '[class]': 'defaultSettings.classes' },\n styleUrls: ['./multiselect.component.scss'],\n providers: [DROPDOWN_CONTROL_VALUE_ACCESSOR, DROPDOWN_CONTROL_VALIDATION],\n encapsulation: ViewEncapsulation.None,\n})\n\nexport class AngularMultiSelect implements OnInit, ControlValueAccessor, OnChanges, Validator, AfterViewChecked, OnDestroy {\n\n @Input()\n data: Array;\n\n @Input()\n settings: DropdownSettings;\n\n @Input()\n loading: boolean;\n\n @Output('onSelect')\n onSelect: EventEmitter = new EventEmitter();\n\n @Output('onDeSelect')\n onDeSelect: EventEmitter = new EventEmitter();\n\n @Output('onSelectAll')\n onSelectAll: EventEmitter> = new EventEmitter>();\n\n @Output('onDeSelectAll')\n onDeSelectAll: EventEmitter> = new EventEmitter>();\n\n @Output('onOpen')\n onOpen: EventEmitter = new EventEmitter();\n\n @Output('onClose')\n onClose: EventEmitter = new EventEmitter();\n\n @Output('onScrollToEnd')\n onScrollToEnd: EventEmitter = new EventEmitter();\n\n @Output('onFilterSelectAll')\n onFilterSelectAll: EventEmitter> = new EventEmitter>();\n\n @Output('onFilterDeSelectAll')\n onFilterDeSelectAll: EventEmitter> = new EventEmitter>();\n\n @Output('onAddFilterNewItem')\n onAddFilterNewItem: EventEmitter = new EventEmitter();\n\n @Output('onGroupSelect')\n onGroupSelect: EventEmitter = new EventEmitter();\n\n @Output('onGroupDeSelect')\n onGroupDeSelect: EventEmitter = new EventEmitter();\n\n @ContentChild(Item, { static: true }) itemTempl: Item;\n @ContentChild(Badge, { static: true }) badgeTempl: Badge;\n @ContentChild(Search, { static: true }) searchTempl: Search;\n\n\n @ViewChild('searchInput', { static: true }) searchInput: ElementRef;\n @ViewChild('selectedList', { static: true }) selectedListElem: ElementRef;\n @ViewChild('dropdownList', { static: true }) dropdownListElem: ElementRef;\n\n @HostListener('document:keyup.escape', ['$event'])\n onEscapeDown(event: KeyboardEvent) {\n if (this.settings.escapeToClose) {\n this.closeDropdown();\n }\n }\n virtualdata: any = [];\n searchTerm$ = new Subject();\n\n filterPipe: ListFilterPipe;\n public selectedItems: Array;\n public isActive: boolean = false;\n public isSelectAll: boolean = false;\n public isFilterSelectAll: boolean = false;\n public isInfiniteFilterSelectAll: boolean = false;\n public groupedData: Array;\n filter: any;\n public chunkArray: any[];\n public scrollTop: any;\n public chunkIndex: any[] = [];\n public cachedItems: any[] = [];\n public groupCachedItems: any[] = [];\n public totalRows: any;\n public itemHeight: any = 41.6;\n public screenItemsLen: any;\n public cachedItemsLen: any;\n public totalHeight: any;\n public scroller: any;\n public maxBuffer: any;\n public lastScrolled: any;\n public lastRepaintY: any;\n public selectedListHeight: any;\n public filterLength: any = 0;\n public infiniteFilterLength: any = 0;\n public viewPortItems: any;\n public item: any;\n public dropdownListYOffset: number = 0;\n subscription: Subscription;\n defaultSettings: DropdownSettings = {\n singleSelection: false,\n text: 'Select',\n enableCheckAll: true,\n selectAllText: 'Select All',\n unSelectAllText: 'UnSelect All',\n filterSelectAllText: 'Select all filtered results',\n filterUnSelectAllText: 'UnSelect all filtered results',\n enableSearchFilter: false,\n searchBy: [],\n maxHeight: 300,\n badgeShowLimit: 999999999999,\n classes: '',\n disabled: false,\n searchPlaceholderText: 'Search',\n showCheckbox: true,\n noDataLabel: 'No Data Available',\n searchAutofocus: true,\n lazyLoading: false,\n labelKey: 'itemName',\n primaryKey: 'id',\n position: 'bottom',\n autoPosition: true,\n enableFilterSelectAll: true,\n selectGroup: false,\n addNewItemOnFilter: false,\n addNewButtonText: \"Add\",\n escapeToClose: true,\n clearAll: true\n }\n randomSize:boolean = true;\n public parseError: boolean;\n public filteredList: any = [];\n virtualScroollInit: boolean = false;\n @ViewChild(VirtualScrollerComponent, {static: false})\n private virtualScroller: VirtualScrollerComponent;\n constructor(public _elementRef: ElementRef, private cdr: ChangeDetectorRef, private ds: DataService) {\n this.searchTerm$.asObservable().pipe(\n debounceTime(1000),\n distinctUntilChanged(),\n tap(term => term)\n ).subscribe(val => {\n this.filterInfiniteList(val);\n });\n }\n ngOnInit() {\n this.settings = Object.assign(this.defaultSettings, this.settings);\n\n this.cachedItems = this.cloneArray(this.data);\n if (this.settings.position == 'top') {\n setTimeout(() => {\n this.selectedListHeight = { val: 0 };\n this.selectedListHeight.val = this.selectedListElem.nativeElement.clientHeight;\n });\n }\n this.subscription = this.ds.getData().subscribe(data => {\n if (data) {\n let len = 0;\n data.forEach((obj: any, i: any) => {\n if (!obj.hasOwnProperty('grpTitle')) {\n len++;\n }\n });\n this.filterLength = len;\n this.onFilterChange(data);\n }\n\n });\n setTimeout(() => {\n this.calculateDropdownDirection();\n });\n this.virtualScroollInit = false;\n }\n ngOnChanges(changes: SimpleChanges) {\n if (changes.data && !changes.data.firstChange) {\n if (this.settings.groupBy) {\n this.groupedData = this.transformData(this.data, this.settings.groupBy);\n if (this.data.length == 0) {\n this.selectedItems = [];\n }\n }\n this.cachedItems = this.cloneArray(this.data);\n }\n if (changes.settings && !changes.settings.firstChange) {\n this.settings = Object.assign(this.defaultSettings, this.settings);\n }\n if (changes.loading) {\n console.log(this.loading);\n }\n if(this.settings.lazyLoading && this.virtualScroollInit && changes.data){\n this.virtualdata = changes.data.currentValue;\n }\n }\n ngDoCheck() {\n if (this.selectedItems) {\n if (this.selectedItems.length == 0 || this.data.length == 0 || this.selectedItems.length < this.data.length) {\n this.isSelectAll = false;\n }\n }\n }\n ngAfterViewInit() {\n if (this.settings.lazyLoading) {\n // this._elementRef.nativeElement.getElementsByClassName(\"lazyContainer\")[0].addEventListener('scroll', this.onScroll.bind(this));\n }\n }\n ngAfterViewChecked() {\n if (this.selectedListElem.nativeElement.clientHeight && this.settings.position == 'top' && this.selectedListHeight) {\n this.selectedListHeight.val = this.selectedListElem.nativeElement.clientHeight;\n this.cdr.detectChanges();\n }\n }\n onItemClick(item: any, index: number, evt: Event) {\n if (this.settings.disabled) {\n return false;\n }\n\n let found = this.isSelected(item);\n let limit = this.selectedItems.length < this.settings.limitSelection ? true : false;\n\n if (!found) {\n if (this.settings.limitSelection) {\n if (limit) {\n this.addSelected(item);\n this.onSelect.emit(item);\n }\n }\n else {\n this.addSelected(item);\n this.onSelect.emit(item);\n }\n\n }\n else {\n this.removeSelected(item);\n this.onDeSelect.emit(item);\n }\n if (this.isSelectAll || this.data.length > this.selectedItems.length) {\n this.isSelectAll = false;\n }\n if (this.data.length == this.selectedItems.length) {\n this.isSelectAll = true;\n }\n if (this.settings.groupBy) {\n this.updateGroupInfo(item);\n }\n }\n public validate(c: FormControl): any {\n return null;\n }\n private onTouchedCallback: (_: any) => void = noop;\n private onChangeCallback: (_: any) => void = noop;\n\n writeValue(value: any) {\n if (value !== undefined && value !== null && value !== '') {\n if (this.settings.singleSelection) {\n if (this.settings.groupBy) {\n this.groupedData = this.transformData(this.data, this.settings.groupBy);\n this.groupCachedItems = this.cloneArray(this.groupedData);\n this.selectedItems = [value[0]];\n } else {\n try {\n\n if (value.length > 1) {\n this.selectedItems = [value[0]];\n throw new MyException(404, { \"msg\": \"Single Selection Mode, Selected Items cannot have more than one item.\" });\n }\n else {\n this.selectedItems = value;\n }\n }\n catch (e) {\n console.error(e.body.msg);\n }\n }\n\n }\n else {\n if (this.settings.limitSelection) {\n this.selectedItems = value.slice(0, this.settings.limitSelection);\n }\n else {\n this.selectedItems = value;\n }\n if (this.selectedItems.length === this.data.length && this.data.length > 0) {\n this.isSelectAll = true;\n }\n if (this.settings.groupBy) {\n this.groupedData = this.transformData(this.data, this.settings.groupBy);\n this.groupCachedItems = this.cloneArray(this.groupedData);\n }\n }\n } else {\n this.selectedItems = [];\n }\n }\n\n //From ControlValueAccessor interface\n registerOnChange(fn: any) {\n this.onChangeCallback = fn;\n }\n\n //From ControlValueAccessor interface\n registerOnTouched(fn: any) {\n this.onTouchedCallback = fn;\n }\n trackByFn(index: number, item: any) {\n return item[this.settings.primaryKey];\n }\n isSelected(clickedItem: any) {\n let found = false;\n this.selectedItems && this.selectedItems.forEach(item => {\n if (clickedItem[this.settings.primaryKey] === item[this.settings.primaryKey]) {\n found = true;\n }\n });\n return found;\n }\n addSelected(item: any) {\n if (this.settings.singleSelection) {\n this.selectedItems = [];\n this.selectedItems.push(item);\n this.closeDropdown();\n }\n else\n this.selectedItems.push(item);\n this.onChangeCallback(this.selectedItems);\n this.onTouchedCallback(this.selectedItems);\n }\n removeSelected(clickedItem: any) {\n this.selectedItems && this.selectedItems.forEach(item => {\n if (clickedItem[this.settings.primaryKey] === item[this.settings.primaryKey]) {\n this.selectedItems.splice(this.selectedItems.indexOf(item), 1);\n }\n });\n this.onChangeCallback(this.selectedItems);\n this.onTouchedCallback(this.selectedItems);\n }\n toggleDropdown(evt: any) {\n if (this.settings.disabled) {\n return false;\n }\n this.isActive = !this.isActive;\n if (this.isActive) {\n if (this.settings.searchAutofocus && this.searchInput && this.settings.enableSearchFilter && !this.searchTempl) {\n setTimeout(() => {\n this.searchInput.nativeElement.focus();\n }, 0);\n }\n this.onOpen.emit(true);\n }\n else {\n this.onClose.emit(false);\n }\n setTimeout(() => {\n this.calculateDropdownDirection();\n }, 0);\n if(this.settings.lazyLoading){\n this.virtualdata = this.data;\n this.virtualScroollInit = true;\n }\n evt.preventDefault();\n }\n public openDropdown() {\n if (this.settings.disabled) {\n return false;\n }\n this.isActive = true;\n if (this.settings.searchAutofocus && this.searchInput && this.settings.enableSearchFilter && !this.searchTempl) {\n setTimeout(() => {\n this.searchInput.nativeElement.focus();\n }, 0);\n }\n this.onOpen.emit(true);\n }\n public closeDropdown() {\n if (this.searchInput && this.settings.lazyLoading) {\n this.searchInput.nativeElement.value = \"\";\n }\n if (this.searchInput) {\n this.searchInput.nativeElement.value = \"\";\n }\n this.filter = \"\";\n this.isActive = false;\n this.onClose.emit(false);\n }\n public closeDropdownOnClickOut() {\n if (this.isActive) {\n if (this.searchInput && this.settings.lazyLoading) {\n this.searchInput.nativeElement.value = \"\";\n }\n if (this.searchInput) {\n this.searchInput.nativeElement.value = \"\";\n }\n this.filter = \"\";\n this.isActive = false;\n this.clearSearch();\n this.onClose.emit(false);\n }\n }\n toggleSelectAll() {\n if (!this.isSelectAll) {\n this.selectedItems = [];\n if (this.settings.groupBy) {\n this.groupedData.forEach((obj) => {\n obj.selected = true;\n })\n this.groupCachedItems.forEach((obj) => {\n obj.selected = true;\n })\n }\n this.selectedItems = this.data.slice();\n this.isSelectAll = true;\n this.onChangeCallback(this.selectedItems);\n this.onTouchedCallback(this.selectedItems);\n\n this.onSelectAll.emit(this.selectedItems);\n }\n else {\n if (this.settings.groupBy) {\n this.groupedData.forEach((obj) => {\n obj.selected = false;\n });\n this.groupCachedItems.forEach((obj) => {\n obj.selected = false;\n })\n }\n this.selectedItems = [];\n this.isSelectAll = false;\n this.onChangeCallback(this.selectedItems);\n this.onTouchedCallback(this.selectedItems);\n\n this.onDeSelectAll.emit(this.selectedItems);\n }\n }\n filterGroupedList() {\n if (this.filter == \"\" || this.filter == null) {\n this.clearSearch();\n return;\n }\n this.groupedData = this.cloneArray(this.groupCachedItems);\n this.groupedData = this.groupedData.filter(obj => {\n let arr = obj.list.filter(t => {\n return t.itemName.toLowerCase().indexOf(this.filter.toLowerCase()) > -1;\n });\n obj.list = arr;\n return arr.some(cat => {\n return cat.itemName.toLowerCase().indexOf(this.filter.toLowerCase()) > -1;\n }\n )\n });\n console.log(this.groupedData);\n }\n toggleFilterSelectAll() {\n if (!this.isFilterSelectAll) {\n let added = [];\n if (this.settings.groupBy) {\n this.groupedData.forEach((item: any) => {\n if (item.list) {\n item.list.forEach((el: any) => {\n if (!this.isSelected(el)) {\n this.addSelected(el);\n added.push(el);\n }\n });\n }\n this.updateGroupInfo(item);\n\n });\n\n }\n else {\n this.ds.getFilteredData().forEach((item: any) => {\n if (!this.isSelected(item)) {\n this.addSelected(item);\n added.push(item);\n }\n\n });\n }\n\n this.isFilterSelectAll = true;\n this.onFilterSelectAll.emit(added);\n }\n else {\n let removed = [];\n if (this.settings.groupBy) {\n this.groupedData.forEach((item: any) => {\n if (item.list) {\n item.list.forEach((el: any) => {\n if (this.isSelected(el)) {\n this.removeSelected(el);\n removed.push(el);\n }\n });\n }\n });\n }\n else {\n this.ds.getFilteredData().forEach((item: any) => {\n if (this.isSelected(item)) {\n this.removeSelected(item);\n removed.push(item);\n }\n\n });\n }\n this.isFilterSelectAll = false;\n this.onFilterDeSelectAll.emit(removed);\n }\n }\n toggleInfiniteFilterSelectAll() {\n if (!this.isInfiniteFilterSelectAll) {\n this.data.forEach((item: any) => {\n if (!this.isSelected(item)) {\n this.addSelected(item);\n }\n\n });\n this.isInfiniteFilterSelectAll = true;\n }\n else {\n this.data.forEach((item: any) => {\n if (this.isSelected(item)) {\n this.removeSelected(item);\n }\n\n });\n this.isInfiniteFilterSelectAll = false;\n }\n }\n clearSearch() {\n if (this.settings.groupBy) {\n this.groupedData = [];\n this.groupCachedItems.forEach((obj) => {\n obj.selected = false;\n })\n this.groupedData = this.cloneArray(this.groupCachedItems);\n }\n this.filter = \"\";\n this.isFilterSelectAll = false;\n\n }\n onFilterChange(data: any) {\n if (this.filter && this.filter == \"\" || data.length == 0) {\n this.isFilterSelectAll = false;\n }\n let cnt = 0;\n data.forEach((item: any) => {\n\n if (!item.hasOwnProperty('grpTitle') && this.isSelected(item)) {\n cnt++;\n }\n });\n\n if (cnt > 0 && this.filterLength == cnt) {\n this.isFilterSelectAll = true;\n }\n else if (cnt > 0 && this.filterLength != cnt) {\n this.isFilterSelectAll = false;\n }\n this.cdr.detectChanges();\n }\n cloneArray(arr: any) {\n let i, copy;\n\n if (Array.isArray(arr)) {\n return JSON.parse(JSON.stringify(arr));\n } else if (typeof arr === 'object') {\n throw 'Cannot clone array containing an object!';\n } else {\n return arr;\n }\n }\n updateGroupInfo(item: any) {\n let key = this.settings.groupBy;\n this.groupedData.forEach((obj: any) => {\n let cnt = 0;\n if (obj.grpTitle && (item[key] == obj[key])) {\n if (obj.list) {\n obj.list.forEach((el: any) => {\n if (this.isSelected(el)) {\n cnt++;\n }\n });\n }\n }\n if (obj.list && (cnt === obj.list.length) && (item[key] == obj[key])) {\n obj.selected = true;\n }\n else if (obj.list && (cnt != obj.list.length) && (item[key] == obj[key])) {\n obj.selected = false;\n }\n });\n this.groupCachedItems.forEach((obj: any) => {\n let cnt = 0;\n if (obj.grpTitle && (item[key] == obj[key])) {\n if (obj.list) {\n obj.list.forEach((el: any) => {\n if (this.isSelected(el)) {\n cnt++;\n }\n });\n }\n }\n if (obj.list && (cnt === obj.list.length) && (item[key] == obj[key])) {\n obj.selected = true;\n }\n else if (obj.list && (cnt != obj.list.length) && (item[key] == obj[key])) {\n obj.selected = false;\n }\n });\n }\n transformData(arr: Array, field: any): Array {\n const groupedObj: any = arr.reduce((prev: any, cur: any) => {\n if (!prev[cur[field]]) {\n prev[cur[field]] = [cur];\n } else {\n prev[cur[field]].push(cur);\n }\n return prev;\n }, {});\n const tempArr: any = [];\n Object.keys(groupedObj).map((x: any) => {\n let obj: any = {};\n obj[\"grpTitle\"] = true;\n obj[this.settings.labelKey] = x;\n obj[this.settings.groupBy] = x;\n obj['selected'] = false;\n obj['list'] = [];\n let cnt = 0;\n groupedObj[x].forEach((item: any) => {\n item['list'] = [];\n obj.list.push(item);\n if (this.isSelected(item)) {\n cnt++;\n }\n });\n if (cnt == obj.list.length) {\n obj.selected = true;\n }\n else {\n obj.selected = false;\n }\n tempArr.push(obj);\n // obj.list.forEach((item: any) => {\n // tempArr.push(item);\n // });\n });\n return tempArr;\n }\n public filterInfiniteList(evt: any) {\n let filteredElems: Array = [];\n if (this.settings.groupBy) {\n this.groupedData = this.groupCachedItems.slice();\n }\n else {\n this.data = this.cachedItems.slice();\n this.virtualdata = this.cachedItems.slice();\n }\n\n if ((evt != null || evt != '') && !this.settings.groupBy) {\n if (this.settings.searchBy.length > 0) {\n for (let t = 0; t < this.settings.searchBy.length; t++) {\n\n this.virtualdata.filter((el: any) => {\n if (el[this.settings.searchBy[t].toString()].toString().toLowerCase().indexOf(evt.toString().toLowerCase()) >= 0) {\n filteredElems.push(el);\n }\n });\n }\n\n }\n else {\n this.virtualdata.filter(function (el: any) {\n for (let prop in el) {\n if (el[prop].toString().toLowerCase().indexOf(evt.toString().toLowerCase()) >= 0) {\n filteredElems.push(el);\n break;\n }\n }\n });\n }\n this.virtualdata = [];\n this.virtualdata = filteredElems;\n this.infiniteFilterLength = this.virtualdata.length;\n }\n if (evt.toString() != '' && this.settings.groupBy) {\n this.groupedData.filter(function (el: any) {\n if (el.hasOwnProperty('grpTitle')) {\n filteredElems.push(el);\n }\n else {\n for (let prop in el) {\n if (el[prop].toString().toLowerCase().indexOf(evt.toString().toLowerCase()) >= 0) {\n filteredElems.push(el);\n break;\n }\n }\n }\n });\n this.groupedData = [];\n this.groupedData = filteredElems;\n this.infiniteFilterLength = this.groupedData.length;\n }\n else if (evt.toString() == '' && this.cachedItems.length > 0) {\n this.virtualdata = [];\n this.virtualdata = this.cachedItems;\n this.infiniteFilterLength = 0;\n }\n this.virtualScroller.refresh();\n }\n resetInfiniteSearch() {\n this.filter = \"\";\n this.isInfiniteFilterSelectAll = false;\n this.virtualdata = [];\n this.virtualdata = this.cachedItems;\n this.groupedData = this.groupCachedItems;\n this.infiniteFilterLength = 0;\n }\n onScrollEnd(e: any) {\n if(e.endIndex === this.data.length - 1 || e.startIndex === 0){\n \n }\n this.onScrollToEnd.emit(e);\n \n }\n ngOnDestroy() {\n if (this.subscription) {\n this.subscription.unsubscribe();\n }\n\n }\n selectGroup(item: any) {\n if (item.selected) {\n item.selected = false;\n item.list.forEach((obj: any) => {\n this.removeSelected(obj);\n });\n this.updateGroupInfo(item);\n this.onGroupSelect.emit(item);\n }\n else {\n item.selected = true;\n item.list.forEach((obj: any) => {\n if (!this.isSelected(obj)) {\n this.addSelected(obj);\n }\n\n });\n this.updateGroupInfo(item);\n this.onGroupDeSelect.emit(item);\n }\n\n\n }\n addFilterNewItem() {\n this.onAddFilterNewItem.emit(this.filter);\n this.filterPipe = new ListFilterPipe(this.ds);\n this.filterPipe.transform(this.data, this.filter, this.settings.searchBy);\n }\n calculateDropdownDirection() {\n let shouldOpenTowardsTop = this.settings.position == 'top';\n if (this.settings.autoPosition) {\n const dropdownHeight = this.dropdownListElem.nativeElement.clientHeight;\n const viewportHeight = document.documentElement.clientHeight;\n const selectedListBounds = this.selectedListElem.nativeElement.getBoundingClientRect();\n\n const spaceOnTop: number = selectedListBounds.top;\n const spaceOnBottom: number = viewportHeight - selectedListBounds.top;\n if (spaceOnBottom < spaceOnTop && dropdownHeight < spaceOnTop) {\n this.openTowardsTop(true);\n }\n else {\n this.openTowardsTop(false);\n }\n // Keep preference if there is not enough space on either the top or bottom\n /* \t\t\tif (spaceOnTop || spaceOnBottom) {\n if (shouldOpenTowardsTop) {\n shouldOpenTowardsTop = spaceOnTop;\n } else {\n shouldOpenTowardsTop = !spaceOnBottom;\n }\n } */\n }\n\n }\n openTowardsTop(value: boolean) {\n if (value && this.selectedListElem.nativeElement.clientHeight) {\n this.dropdownListYOffset = 15 + this.selectedListElem.nativeElement.clientHeight;\n } else {\n this.dropdownListYOffset = 0;\n }\n }\n clearSelection(e: any) {\n this.clearSearch();\n this.selectedItems = [];\n this.onDeSelectAll.emit(this.selectedItems);\n }\n}\n\n@NgModule({\n imports: [CommonModule, FormsModule, VirtualScrollerModule],\n declarations: [AngularMultiSelect, ClickOutsideDirective, ScrollDirective, styleDirective, ListFilterPipe, Item, TemplateRenderer, Badge, Search, setPosition, CIcon],\n exports: [AngularMultiSelect, ClickOutsideDirective, ScrollDirective, styleDirective, ListFilterPipe, Item, TemplateRenderer, Badge, Search, setPosition, CIcon],\n providers: [DataService]\n})\nexport class AngularMultiSelectModule { }\n","export class MyException {\n\tstatus : number;\n\tbody : any;\n\tconstructor(status : number, body : any) {\n\t\tthis.status = status;\n\t\tthis.body = body;\n\t}\n\t\n}","import { Injectable } from '@angular/core';\nimport { Observable, Subject } from 'rxjs';\n\n\n@Injectable()\nexport class DataService {\n\n filteredData: any = [];\n private subject = new Subject();\n\n setData(data: any) {\n\n this.filteredData = data;\n this.subject.next(data);\n }\n getData(): Observable {\n return this.subject.asObservable();\n }\n getFilteredData() {\n if (this.filteredData && this.filteredData.length > 0) {\n return this.filteredData;\n }\n else {\n return [];\n }\n }\n\n}","\n
\n
\n \n
\n ","import {\n\tComponent,\n\tContentChild,\n\tElementRef,\n\tEventEmitter,\n\tInject,\n\tOptional,\n\tInput,\n\tNgModule,\n\tNgZone,\n\tOnChanges,\n\tOnDestroy,\n\tOnInit,\n\tOutput,\n\tRenderer2,\n\tViewChild,\n\tChangeDetectorRef,\n\tInjectionToken\n} from '@angular/core';\n\nimport { PLATFORM_ID } from '@angular/core';\nimport { isPlatformServer } from '@angular/common';\n\nimport { CommonModule } from '@angular/common';\n\nimport * as tween from '@tweenjs/tween.js'\nimport { VirtualScrollerDefaultOptions } from './defaultoptions';\nimport { IPageInfo } from './ipageinfo';\nimport { IViewport } from './iviewport';\n\nimport { WrapGroupDimensions } from './wrapgroupdimensions';\nimport { WrapGroupDimension } from './wrapgroupdimension';\n\nimport { IDimensions } from './idimension';\n\n \n\n\n\nexport function VIRTUAL_SCROLLER_DEFAULT_OPTIONS_FACTORY(): VirtualScrollerDefaultOptions {\n\treturn {\n\t\tscrollThrottlingTime: 0,\n\t\tscrollDebounceTime: 0,\n\t\tscrollAnimationTime: 750,\n\t\tcheckResizeInterval: 1000,\n\t\tresizeBypassRefreshThreshold: 5,\n\t\tmodifyOverflowStyleOfParentScroll: true,\n\t\tstripedTable: false\n\t};\n}\n\n\n\n\n\n\n\n\n\n\n\n@Component({\n\tselector: 'virtual-scroller,[virtualScroller]',\n\texportAs: 'virtualScroller',\n\ttemplate: `\n
\n
\n \n
\n `,\n\thost: {\n\t\t'[class.horizontal]': \"horizontal\",\n\t\t'[class.vertical]': \"!horizontal\",\n\t\t'[class.selfScroll]': \"!parentScroll\"\n\t},\n\tstyles: [`\n :host {\n position: relative;\n\t display: block;\n -webkit-overflow-scrolling: touch;\n }\n\t\n\t:host.horizontal.selfScroll {\n overflow-y: visible;\n overflow-x: auto;\n\t}\n\t:host.vertical.selfScroll {\n overflow-y: auto;\n overflow-x: visible;\n\t}\n\t\n .scrollable-content {\n top: 0;\n left: 0;\n width: 100%;\n height: 100%;\n max-width: 100vw;\n max-height: 100vh;\n position: absolute;\n }\n\n\t.scrollable-content ::ng-deep > * {\n\t\tbox-sizing: border-box;\n\t}\n\t\n\t:host.horizontal {\n\t\twhite-space: nowrap;\n\t}\n\t\n\t:host.horizontal .scrollable-content {\n\t\tdisplay: flex;\n\t}\n\t\n\t:host.horizontal .scrollable-content ::ng-deep > * {\n\t\tflex-shrink: 0;\n\t\tflex-grow: 0;\n\t\twhite-space: initial;\n\t}\n\t\n .total-padding {\n width: 1px;\n opacity: 0;\n }\n \n :host.horizontal .total-padding {\n height: 100%;\n }\n `]\n})\nexport class VirtualScrollerComponent implements OnInit, OnChanges, OnDestroy {\n\tpublic viewPortItems: any[];\n\tpublic window = window;\n\n\tpublic get viewPortInfo(): IPageInfo {\n\t\tlet pageInfo: IViewport = this.previousViewPort || {};\n\t\treturn {\n\t\t\tstartIndex: pageInfo.startIndex || 0,\n\t\t\tendIndex: pageInfo.endIndex || 0,\n\t\t\tscrollStartPosition: pageInfo.scrollStartPosition || 0,\n\t\t\tscrollEndPosition: pageInfo.scrollEndPosition || 0,\n\t\t\tmaxScrollPosition: pageInfo.maxScrollPosition || 0,\n\t\t\tstartIndexWithBuffer: pageInfo.startIndexWithBuffer || 0,\n\t\t\tendIndexWithBuffer: pageInfo.endIndexWithBuffer || 0\n\t\t};\n\t}\n\n\t@Input()\n\tpublic executeRefreshOutsideAngularZone: boolean = false;\n\n\tprotected _enableUnequalChildrenSizes: boolean = false;\n\t@Input()\n\tpublic get enableUnequalChildrenSizes(): boolean {\n\t\treturn this._enableUnequalChildrenSizes;\n\t}\n\tpublic set enableUnequalChildrenSizes(value: boolean) {\n\t\tif (this._enableUnequalChildrenSizes === value) {\n\t\t\treturn;\n\t\t}\n\n\t\tthis._enableUnequalChildrenSizes = value;\n\t\tthis.minMeasuredChildWidth = undefined;\n\t\tthis.minMeasuredChildHeight = undefined;\n\t}\n\n\t@Input()\n\tpublic useMarginInsteadOfTranslate: boolean = false;\n\n\t@Input()\n\tpublic modifyOverflowStyleOfParentScroll: boolean;\n\n\t@Input()\n\tpublic stripedTable: boolean;\n\n\t@Input()\n\tpublic scrollbarWidth: number;\n\n\t@Input()\n\tpublic scrollbarHeight: number;\n\n\t@Input()\n\tpublic childWidth: number;\n\n\t@Input()\n\tpublic childHeight: number;\n\n\t@Input()\n\tpublic ssrChildWidth: number;\n\n\t@Input()\n\tpublic ssrChildHeight: number;\n\n\t@Input()\n\tpublic ssrViewportWidth: number = 1920;\n\n\t@Input()\n\tpublic ssrViewportHeight: number = 1080;\n\n\tprotected _bufferAmount: number = 0;\n\t@Input()\n\tpublic get bufferAmount(): number {\n\t\tif (typeof (this._bufferAmount) === 'number' && this._bufferAmount >= 0) {\n\t\t\treturn this._bufferAmount;\n\t\t} else {\n\t\t\treturn this.enableUnequalChildrenSizes ? 5 : 0;\t\n\t\t}\n\t}\n\tpublic set bufferAmount(value: number) {\n\t\tthis._bufferAmount = value;\n\t}\n\n\t@Input()\n\tpublic scrollAnimationTime: number;\n\n\t@Input()\n\tpublic resizeBypassRefreshThreshold: number;\n\n\tprotected _scrollThrottlingTime: number;\n\t@Input()\n\tpublic get scrollThrottlingTime(): number {\n\t\treturn this._scrollThrottlingTime;\n\t}\n\tpublic set scrollThrottlingTime(value: number) {\n\t\tthis._scrollThrottlingTime = value;\n\t\tthis.updateOnScrollFunction();\n\t}\n\n\tprotected _scrollDebounceTime: number;\n\t@Input()\n\tpublic get scrollDebounceTime(): number {\n\t\treturn this._scrollDebounceTime;\n\t}\n\tpublic set scrollDebounceTime(value: number) {\n\t\tthis._scrollDebounceTime = value;\n\t\tthis.updateOnScrollFunction();\n\t}\n\n\tprotected onScroll: () => void;\n\tprotected updateOnScrollFunction(): void {\n\t\tif (this.scrollDebounceTime) {\n\t\t\tthis.onScroll = this.debounce(() => {\n\t\t\t\tthis.refresh_internal(false);\n\t\t\t}, this.scrollDebounceTime);\n\t\t}\n\t\telse if (this.scrollThrottlingTime) {\n\t\t\tthis.onScroll = this.throttleTrailing(() => {\n\t\t\t\tthis.refresh_internal(false);\n\t\t\t}, this.scrollThrottlingTime);\n\t\t}\n\t\telse {\n\t\t\tthis.onScroll = () => {\n\t\t\t\tthis.refresh_internal(false);\n\t\t\t};\n\t\t}\n\t}\n\n\tprotected checkScrollElementResizedTimer: number;\n\tprotected _checkResizeInterval: number;\n\t@Input()\n\tpublic get checkResizeInterval(): number {\n\t\treturn this._checkResizeInterval;\n\t}\n\tpublic set checkResizeInterval(value: number) {\n\t\tif (this._checkResizeInterval === value) {\n\t\t\treturn;\n\t\t}\n\n\t\tthis._checkResizeInterval = value;\n\t\tthis.addScrollEventHandlers();\n\t}\n\n\tprotected _items: any[] = [];\n\t@Input()\n\tpublic get items(): any[] {\n\t\treturn this._items;\n\t}\n\tpublic set items(value: any[]) {\n\t\tif (value === this._items) {\n\t\t\treturn;\n\t\t}\n\n\t\tthis._items = value || [];\n\t\tthis.refresh_internal(true);\n\t}\n\n\t@Input()\n\tpublic compareItems: (item1: any, item2: any) => boolean = (item1: any, item2: any) => item1 === item2;\n\n\tprotected _horizontal: boolean;\n\t@Input()\n\tpublic get horizontal(): boolean {\n\t\treturn this._horizontal;\n\t}\n\tpublic set horizontal(value: boolean) {\n\t\tthis._horizontal = value;\n\t\tthis.updateDirection();\n\t}\n\n\tprotected revertParentOverscroll(): void {\n\t\tconst scrollElement = this.getScrollElement();\n\t\tif (scrollElement && this.oldParentScrollOverflow) {\n\t\t\tscrollElement.style['overflow-y'] = this.oldParentScrollOverflow.y;\n\t\t\tscrollElement.style['overflow-x'] = this.oldParentScrollOverflow.x;\n\t\t}\n\n\t\tthis.oldParentScrollOverflow = undefined;\n\t}\n\n\tprotected oldParentScrollOverflow: { x: string, y: string };\n\tprotected _parentScroll: Element | Window;\n\t@Input()\n\tpublic get parentScroll(): Element | Window {\n\t\treturn this._parentScroll;\n\t}\n\tpublic set parentScroll(value: Element | Window) {\n\t\tif (this._parentScroll === value) {\n\t\t\treturn;\n\t\t}\n\n\t\tthis.revertParentOverscroll();\n\t\tthis._parentScroll = value;\n\t\tthis.addScrollEventHandlers();\n\n\t\tconst scrollElement = this.getScrollElement();\n\t\tif (this.modifyOverflowStyleOfParentScroll && scrollElement !== this.element.nativeElement) {\n\t\t\tthis.oldParentScrollOverflow = { x: scrollElement.style['overflow-x'], y: scrollElement.style['overflow-y'] };\n\t\t\tscrollElement.style['overflow-y'] = this.horizontal ? 'visible' : 'auto';\n\t\t\tscrollElement.style['overflow-x'] = this.horizontal ? 'auto' : 'visible';\n\t\t}\n\t}\n\n\t@Output()\n\tpublic vsUpdate: EventEmitter = new EventEmitter();\n\n\t@Output()\n\tpublic vsChange: EventEmitter = new EventEmitter();\n\n\t@Output()\n\tpublic vsStart: EventEmitter = new EventEmitter();\n\n\t@Output()\n\tpublic vsEnd: EventEmitter = new EventEmitter();\n\n\t@ViewChild('content', { read: ElementRef, static: false })\n\tprotected contentElementRef: ElementRef;\n\n\t@ViewChild('invisiblePadding', { read: ElementRef, static: false })\n\tprotected invisiblePaddingElementRef: ElementRef;\n\n\t@ContentChild('header', { read: ElementRef, static: false })\n\tprotected headerElementRef: ElementRef;\n\n\t@ContentChild('container', { read: ElementRef, static: false })\n\tprotected containerElementRef: ElementRef;\n\n\tpublic ngOnInit(): void {\n\t\tthis.addScrollEventHandlers();\n\t}\n\n\tpublic ngOnDestroy(): void {\n\t\tthis.removeScrollEventHandlers();\n\t\tthis.revertParentOverscroll();\n\t}\n\n\tpublic ngOnChanges(changes: any): void {\n\t\tlet indexLengthChanged = this.cachedItemsLength !== this.items.length;\n\t\tthis.cachedItemsLength = this.items.length;\n\n\t\tconst firstRun: boolean = !changes.items || !changes.items.previousValue || changes.items.previousValue.length === 0;\n\t\tthis.refresh_internal(indexLengthChanged || firstRun);\n\t}\n\n\t\n\tpublic ngDoCheck(): void {\n\t\tif (this.cachedItemsLength !== this.items.length) {\n\t\t\tthis.cachedItemsLength = this.items.length;\n\t\t\tthis.refresh_internal(true);\n\t\t\treturn;\n\t\t}\n\t\t\n\t\tif (this.previousViewPort && this.viewPortItems && this.viewPortItems.length > 0) {\n\t\t\tlet itemsArrayChanged = false;\n\t\t\tfor (let i = 0; i < this.viewPortItems.length; ++i) {\n\t\t\t\tif (!this.compareItems(this.items[this.previousViewPort.startIndexWithBuffer + i], this.viewPortItems[i])) {\n\t\t\t\t\titemsArrayChanged = true;\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t}\n\t\t\tif (itemsArrayChanged) {\n\t\t\t\tthis.refresh_internal(true);\n\t\t\t}\n\t\t}\n\t}\n\n\tpublic refresh(): void {\n\t\tthis.refresh_internal(true);\n\t}\n\n\tpublic invalidateAllCachedMeasurements(): void {\n\t\tthis.wrapGroupDimensions = {\n\t\t\tmaxChildSizePerWrapGroup: [],\n\t\t\tnumberOfKnownWrapGroupChildSizes: 0,\n\t\t\tsumOfKnownWrapGroupChildWidths: 0,\n\t\t\tsumOfKnownWrapGroupChildHeights: 0\n\t\t};\n\n\t\tthis.minMeasuredChildWidth = undefined;\n\t\tthis.minMeasuredChildHeight = undefined;\n\n\t\tthis.refresh_internal(false);\n\t}\n\n\tpublic invalidateCachedMeasurementForItem(item: any): void {\n\t\tif (this.enableUnequalChildrenSizes) {\n\t\t\tlet index = this.items && this.items.indexOf(item);\n\t\t\tif (index >= 0) {\n\t\t\t\tthis.invalidateCachedMeasurementAtIndex(index);\n\t\t\t}\n\t\t} else {\n\t\t\tthis.minMeasuredChildWidth = undefined;\n\t\t\tthis.minMeasuredChildHeight = undefined;\n\t\t}\n\n\t\tthis.refresh_internal(false);\n\t}\n\n\tpublic invalidateCachedMeasurementAtIndex(index: number): void {\n\t\tif (this.enableUnequalChildrenSizes) {\n\t\t\tlet cachedMeasurement = this.wrapGroupDimensions.maxChildSizePerWrapGroup[index];\n\t\t\tif (cachedMeasurement) {\n\t\t\t\tthis.wrapGroupDimensions.maxChildSizePerWrapGroup[index] = undefined;\n\t\t\t\t--this.wrapGroupDimensions.numberOfKnownWrapGroupChildSizes;\n\t\t\t\tthis.wrapGroupDimensions.sumOfKnownWrapGroupChildWidths -= cachedMeasurement.childWidth || 0;\n\t\t\t\tthis.wrapGroupDimensions.sumOfKnownWrapGroupChildHeights -= cachedMeasurement.childHeight || 0;\n\t\t\t}\n\t\t} else {\n\t\t\tthis.minMeasuredChildWidth = undefined;\n\t\t\tthis.minMeasuredChildHeight = undefined;\n\t\t}\n\n\t\tthis.refresh_internal(false);\n\t}\n\n\tpublic scrollInto(item: any, alignToBeginning: boolean = true, additionalOffset: number = 0, animationMilliseconds: number = undefined, animationCompletedCallback: () => void = undefined): void {\n\t\tlet index: number = this.items.indexOf(item);\n\t\tif (index === -1) {\n\t\t\treturn;\n\t\t}\n\n\t\tthis.scrollToIndex(index, alignToBeginning, additionalOffset, animationMilliseconds, animationCompletedCallback);\n\t}\n\n\tpublic scrollToIndex(index: number, alignToBeginning: boolean = true, additionalOffset: number = 0, animationMilliseconds: number = undefined, animationCompletedCallback: () => void = undefined): void {\n\t\tlet maxRetries: number = 5;\n\n\t\tlet retryIfNeeded = () => {\n\t\t\t--maxRetries;\n\t\t\tif (maxRetries <= 0) {\n\t\t\t\tif (animationCompletedCallback) {\n\t\t\t\t\tanimationCompletedCallback();\n\t\t\t\t}\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tlet dimensions = this.calculateDimensions();\n\t\t\tlet desiredStartIndex = Math.min(Math.max(index, 0), dimensions.itemCount - 1);\n\t\t\tif (this.previousViewPort.startIndex === desiredStartIndex) {\n\t\t\t\tif (animationCompletedCallback) {\n\t\t\t\t\tanimationCompletedCallback();\n\t\t\t\t}\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tthis.scrollToIndex_internal(index, alignToBeginning, additionalOffset, 0, retryIfNeeded);\n\t\t};\n\n\t\tthis.scrollToIndex_internal(index, alignToBeginning, additionalOffset, animationMilliseconds, retryIfNeeded);\n\t}\n\n\tprotected scrollToIndex_internal(index: number, alignToBeginning: boolean = true, additionalOffset: number = 0, animationMilliseconds: number = undefined, animationCompletedCallback: () => void = undefined): void {\n\t\tanimationMilliseconds = animationMilliseconds === undefined ? this.scrollAnimationTime : animationMilliseconds;\n\n\t\tlet dimensions = this.calculateDimensions();\n\t\tlet scroll = this.calculatePadding(index, dimensions) + additionalOffset;\n\t\tif (!alignToBeginning) {\n\t\t\tscroll -= dimensions.wrapGroupsPerPage * dimensions[this._childScrollDim];\n\t\t}\n\n\t\tthis.scrollToPosition(scroll, animationMilliseconds, animationCompletedCallback);\n\t}\n\n\tpublic scrollToPosition(scrollPosition: number, animationMilliseconds: number = undefined, animationCompletedCallback: () => void = undefined): void {\n\t\tscrollPosition += this.getElementsOffset();\n\n\t\tanimationMilliseconds = animationMilliseconds === undefined ? this.scrollAnimationTime : animationMilliseconds;\n\n\t\tlet scrollElement = this.getScrollElement();\n\n\t\tlet animationRequest: number;\n\n\t\tif (this.currentTween) {\n\t\t\tthis.currentTween.stop();\n\t\t\tthis.currentTween = undefined;\n\t\t}\n\n\t\tif (!animationMilliseconds) {\n\t\t\tthis.renderer.setProperty(scrollElement, this._scrollType, scrollPosition);\n\t\t\tthis.refresh_internal(false, animationCompletedCallback);\n\t\t\treturn;\n\t\t}\n\n\t\tconst tweenConfigObj = { scrollPosition: scrollElement[this._scrollType] };\n\n\t\tlet newTween = new tween.Tween(tweenConfigObj)\n\t\t\t.to({ scrollPosition }, animationMilliseconds)\n\t\t\t.easing(tween.Easing.Quadratic.Out)\n\t\t\t.onUpdate((data) => {\n\t\t\t\tif (isNaN(data.scrollPosition)) {\n\t\t\t\t\treturn;\n\t\t\t\t}\n\t\t\t\tthis.renderer.setProperty(scrollElement, this._scrollType, data.scrollPosition);\n\t\t\t\tthis.refresh_internal(false);\n\t\t\t})\n\t\t\t.onStop(() => {\n\t\t\t\tcancelAnimationFrame(animationRequest);\n\t\t\t})\n\t\t\t.start();\n\n\t\tconst animate = (time?: number) => {\n\t\t\tif (!newTween[\"isPlaying\"]()) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tnewTween.update(time);\n\t\t\tif (tweenConfigObj.scrollPosition === scrollPosition) {\n\t\t\t\tthis.refresh_internal(false, animationCompletedCallback);\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tthis.zone.runOutsideAngular(() => {\n\t\t\t\tanimationRequest = requestAnimationFrame(animate);\n\t\t\t});\n\t\t};\n\n\t\tanimate();\n\t\tthis.currentTween = newTween;\n\t}\n\n\tprotected isAngularUniversalSSR: boolean;\n\n\tconstructor(protected readonly element: ElementRef,\n\t\tprotected readonly renderer: Renderer2,\n\t\tprotected readonly zone: NgZone,\n\t\tprotected changeDetectorRef: ChangeDetectorRef,\n\t\t@Inject(PLATFORM_ID) platformId: Object,\n\t\t@Optional() @Inject('virtual-scroller-default-options')\n\t\toptions: VirtualScrollerDefaultOptions) {\n\t\t\t\n\t\tthis.isAngularUniversalSSR = isPlatformServer(platformId);\n\n\t\tthis.scrollThrottlingTime = options.scrollThrottlingTime;\n\t\tthis.scrollDebounceTime = options.scrollDebounceTime;\n\t\tthis.scrollAnimationTime = options.scrollAnimationTime;\n\t\tthis.scrollbarWidth = options.scrollbarWidth;\n\t\tthis.scrollbarHeight = options.scrollbarHeight;\n\t\tthis.checkResizeInterval = options.checkResizeInterval;\n\t\tthis.resizeBypassRefreshThreshold = options.resizeBypassRefreshThreshold;\n\t\tthis.modifyOverflowStyleOfParentScroll = options.modifyOverflowStyleOfParentScroll;\n\t\tthis.stripedTable = options.stripedTable;\n\n\t\tthis.horizontal = false;\n\t\tthis.resetWrapGroupDimensions();\n\t}\n\t\n\tprotected getElementSize(element: HTMLElement) : ClientRect {\n\t\tlet result = element.getBoundingClientRect();\n\t\tlet styles = getComputedStyle(element);\n\t\tlet marginTop = parseInt(styles['margin-top'], 10) || 0;\n\t\tlet marginBottom = parseInt(styles['margin-bottom'], 10) || 0;\n\t\tlet marginLeft = parseInt(styles['margin-left'], 10) || 0;\n\t\tlet marginRight = parseInt(styles['margin-right'], 10) || 0;\n\t\t\n\t\treturn {\n\t\t\ttop: result.top + marginTop,\n\t\t\tbottom: result.bottom + marginBottom,\n\t\t\tleft: result.left + marginLeft,\n\t\t\tright: result.right + marginRight,\n\t\t\twidth: result.width + marginLeft + marginRight,\n\t\t\theight: result.height + marginTop + marginBottom\n\t\t};\n\t}\n\n\tprotected previousScrollBoundingRect: ClientRect;\n\tprotected checkScrollElementResized(): void {\n\t\tlet boundingRect = this.getElementSize(this.getScrollElement());\n\n\t\tlet sizeChanged: boolean;\n\t\tif (!this.previousScrollBoundingRect) {\n\t\t\tsizeChanged = true;\n\t\t} else {\n\t\t\tlet widthChange = Math.abs(boundingRect.width - this.previousScrollBoundingRect.width);\n\t\t\tlet heightChange = Math.abs(boundingRect.height - this.previousScrollBoundingRect.height);\n\t\t\tsizeChanged = widthChange > this.resizeBypassRefreshThreshold || heightChange > this.resizeBypassRefreshThreshold;\n\t\t}\n\n\t\tif (sizeChanged) {\n\t\t\tthis.previousScrollBoundingRect = boundingRect;\n\t\t\tif (boundingRect.width > 0 && boundingRect.height > 0) {\n\t\t\t\tthis.refresh_internal(false);\n\t\t\t}\n\t\t}\n\t}\n\n\tprotected _invisiblePaddingProperty;\n\tprotected _offsetType;\n\tprotected _scrollType;\n\tprotected _pageOffsetType;\n\tprotected _childScrollDim;\n\tprotected _translateDir;\n\tprotected _marginDir;\n\tprotected updateDirection(): void {\n\t\tif (this.horizontal) {\n\t\t\tthis._invisiblePaddingProperty = 'width';\n\t\t\tthis._offsetType = 'offsetLeft';\n\t\t\tthis._pageOffsetType = 'pageXOffset';\n\t\t\tthis._childScrollDim = 'childWidth';\n\t\t\tthis._marginDir = 'margin-left';\n\t\t\tthis._translateDir = 'translateX';\n\t\t\tthis._scrollType = 'scrollLeft';\n\t\t}\n\t\telse {\n\t\t\tthis._invisiblePaddingProperty = 'height';\n\t\t\tthis._offsetType = 'offsetTop';\n\t\t\tthis._pageOffsetType = 'pageYOffset';\n\t\t\tthis._childScrollDim = 'childHeight';\n\t\t\tthis._marginDir = 'margin-top';\n\t\t\tthis._translateDir = 'translateY';\n\t\t\tthis._scrollType = 'scrollTop';\n\t\t}\n\t}\n\n\tprotected debounce(func: Function, wait: number): Function {\n\t\tconst throttled = this.throttleTrailing(func, wait);\n\t\tconst result = function () {\n\t\t\tthrottled['cancel']();\n\t\t\tthrottled.apply(this, arguments);\n\t\t};\n\t\tresult['cancel'] = function () {\n\t\t\tthrottled['cancel']();\n\t\t};\n\n\t\treturn result;\n\t}\n\n\tprotected throttleTrailing(func: Function, wait: number): Function {\n\t\tlet timeout = undefined;\n\t\tlet _arguments = arguments;\n\t\tconst result = function () {\n\t\t\tconst _this = this;\n\t\t\t_arguments = arguments\n\n\t\t\tif (timeout) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tif (wait <= 0) {\n\t\t\t\tfunc.apply(_this, _arguments);\n\t\t\t} else {\n\t\t\t\ttimeout = setTimeout(function () {\n\t\t\t\t\ttimeout = undefined;\n\t\t\t\t\tfunc.apply(_this, _arguments);\n\t\t\t\t}, wait);\n\t\t\t}\n\t\t};\n\t\tresult['cancel'] = function () {\n\t\t\tif (timeout) {\n\t\t\t\tclearTimeout(timeout);\n\t\t\t\ttimeout = undefined;\n\t\t\t}\n\t\t};\n\n\t\treturn result;\n\t}\n\n\tprotected calculatedScrollbarWidth: number = 0;\n\tprotected calculatedScrollbarHeight: number = 0;\n\n\tprotected padding: number = 0;\n\tprotected previousViewPort: IViewport = {};\n\tprotected currentTween: tween.Tween;\n\tprotected cachedItemsLength: number;\n\n\tprotected disposeScrollHandler: () => void | undefined;\n\tprotected disposeResizeHandler: () => void | undefined;\n\n\tprotected refresh_internal(itemsArrayModified: boolean, refreshCompletedCallback: () => void = undefined, maxRunTimes: number = 2): void {\n\t\t//note: maxRunTimes is to force it to keep recalculating if the previous iteration caused a re-render (different sliced items in viewport or scrollPosition changed).\n\t\t//The default of 2x max will probably be accurate enough without causing too large a performance bottleneck\n\t\t//The code would typically quit out on the 2nd iteration anyways. The main time it'd think more than 2 runs would be necessary would be for vastly different sized child items or if this is the 1st time the items array was initialized.\n\t\t//Without maxRunTimes, If the user is actively scrolling this code would become an infinite loop until they stopped scrolling. This would be okay, except each scroll event would start an additional infinte loop. We want to short-circuit it to prevent this.\n\n\t\tif (itemsArrayModified && this.previousViewPort && this.previousViewPort.scrollStartPosition > 0) {\n\t\t//if items were prepended, scroll forward to keep same items visible\n\t\t\tlet oldViewPort = this.previousViewPort;\n\t\t\tlet oldViewPortItems = this.viewPortItems;\n\t\t\t\n\t\t\tlet oldRefreshCompletedCallback = refreshCompletedCallback;\n\t\t\trefreshCompletedCallback = () => {\n\t\t\t\tlet scrollLengthDelta = this.previousViewPort.scrollLength - oldViewPort.scrollLength;\n\t\t\t\tif (scrollLengthDelta > 0 && this.viewPortItems) {\n\t\t\t\t\tlet oldStartItem = oldViewPortItems[0];\n\t\t\t\t\tlet oldStartItemIndex = this.items.findIndex(x => this.compareItems(oldStartItem, x));\n\t\t\t\t\tif (oldStartItemIndex > this.previousViewPort.startIndexWithBuffer) {\n\t\t\t\t\t\tlet itemOrderChanged = false;\n\t\t\t\t\t\tfor (let i = 1; i < this.viewPortItems.length; ++i) {\n\t\t\t\t\t\t\tif (!this.compareItems(this.items[oldStartItemIndex + i], oldViewPortItems[i])) {\n\t\t\t\t\t\t\t\titemOrderChanged = true;\n\t\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\t\t\t\t\t\t\n\t\t\t\t\t\tif (!itemOrderChanged) {\n\t\t\t\t\t\t\tthis.scrollToPosition(this.previousViewPort.scrollStartPosition + scrollLengthDelta , 0, oldRefreshCompletedCallback);\n\t\t\t\t\t\t\treturn;\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\t\n\t\t\t\tif (oldRefreshCompletedCallback) {\n\t\t\t\t\toldRefreshCompletedCallback();\n\t\t\t\t}\n\t\t\t};\n\t\t}\t\t\t\n\n\t\tthis.zone.runOutsideAngular(() => {\n\t\t\trequestAnimationFrame(() => {\n\n\t\t\t\tif (itemsArrayModified) {\n\t\t\t\t\tthis.resetWrapGroupDimensions();\n\t\t\t\t}\n\t\t\t\tlet viewport = this.calculateViewport();\n\n\t\t\t\tlet startChanged = itemsArrayModified || viewport.startIndex !== this.previousViewPort.startIndex;\n\t\t\t\tlet endChanged = itemsArrayModified || viewport.endIndex !== this.previousViewPort.endIndex;\n\t\t\t\tlet scrollLengthChanged = viewport.scrollLength !== this.previousViewPort.scrollLength;\n\t\t\t\tlet paddingChanged = viewport.padding !== this.previousViewPort.padding;\n\t\t\t\tlet scrollPositionChanged = viewport.scrollStartPosition !== this.previousViewPort.scrollStartPosition || viewport.scrollEndPosition !== this.previousViewPort.scrollEndPosition || viewport.maxScrollPosition !== this.previousViewPort.maxScrollPosition;\n\n\t\t\t\tthis.previousViewPort = viewport;\n\n\t\t\t\tif (scrollLengthChanged) {\n\t\t\t\t\tthis.renderer.setStyle(this.invisiblePaddingElementRef.nativeElement, this._invisiblePaddingProperty, `${viewport.scrollLength}px`);\n\t\t\t\t}\n\n\t\t\t\tif (paddingChanged) {\n\t\t\t\t\tif (this.useMarginInsteadOfTranslate) {\n\t\t\t\t\t\tthis.renderer.setStyle(this.contentElementRef.nativeElement, this._marginDir, `${viewport.padding}px`);\n\t\t\t\t\t}\n\t\t\t\t\telse {\n\t\t\t\t\t\tthis.renderer.setStyle(this.contentElementRef.nativeElement, 'transform', `${this._translateDir}(${viewport.padding}px)`);\n\t\t\t\t\t\tthis.renderer.setStyle(this.contentElementRef.nativeElement, 'webkitTransform', `${this._translateDir}(${viewport.padding}px)`);\n\t\t\t\t\t}\n\t\t\t\t}\n\n\t\t\t\tif (this.headerElementRef) {\n\t\t\t\t\tlet scrollPosition = this.getScrollElement()[this._scrollType];\n\t\t\t\t\tlet containerOffset = this.getElementsOffset();\n\t\t\t\t\tlet offset = Math.max(scrollPosition - viewport.padding - containerOffset + this.headerElementRef.nativeElement.clientHeight, 0);\n\t\t\t\t\tthis.renderer.setStyle(this.headerElementRef.nativeElement, 'transform', `${this._translateDir}(${offset}px)`);\n\t\t\t\t\tthis.renderer.setStyle(this.headerElementRef.nativeElement, 'webkitTransform', `${this._translateDir}(${offset}px)`);\n\t\t\t\t}\n\n\t\t\t\tconst changeEventArg: IPageInfo = (startChanged || endChanged) ? {\n\t\t\t\t\tstartIndex: viewport.startIndex,\n\t\t\t\t\tendIndex: viewport.endIndex,\n\t\t\t\t\tscrollStartPosition: viewport.scrollStartPosition,\n\t\t\t\t\tscrollEndPosition: viewport.scrollEndPosition,\n\t\t\t\t\tstartIndexWithBuffer: viewport.startIndexWithBuffer,\n\t\t\t\t\tendIndexWithBuffer: viewport.endIndexWithBuffer,\n\t\t\t\t\tmaxScrollPosition: viewport.maxScrollPosition\n\t\t\t\t} : undefined;\n\n\n\t\t\t\tif (startChanged || endChanged || scrollPositionChanged) {\n\t\t\t\t\tconst handleChanged = () => {\n\t\t\t\t\t\t// update the scroll list to trigger re-render of components in viewport\n\t\t\t\t\t\tthis.viewPortItems = viewport.startIndexWithBuffer >= 0 && viewport.endIndexWithBuffer >= 0 ? this.items.slice(viewport.startIndexWithBuffer, viewport.endIndexWithBuffer + 1) : [];\n\t\t\t\t\t\tthis.vsUpdate.emit(this.viewPortItems);\n\n\t\t\t\t\t\tif (startChanged) {\n\t\t\t\t\t\t\tthis.vsStart.emit(changeEventArg);\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\tif (endChanged) {\n\t\t\t\t\t\t\tthis.vsEnd.emit(changeEventArg);\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\tif (startChanged || endChanged) {\n\t\t\t\t\t\t\tthis.changeDetectorRef.markForCheck();\n\t\t\t\t\t\t\tthis.vsChange.emit(changeEventArg);\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\tif (maxRunTimes > 0) {\n\t\t\t\t\t\t\tthis.refresh_internal(false, refreshCompletedCallback, maxRunTimes - 1);\n\t\t\t\t\t\t\treturn;\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\tif (refreshCompletedCallback) {\n\t\t\t\t\t\t\trefreshCompletedCallback();\n\t\t\t\t\t\t}\n\t\t\t\t\t};\n\n\n\t\t\t\t\tif (this.executeRefreshOutsideAngularZone) {\n\t\t\t\t\t\thandleChanged();\n\t\t\t\t\t}\n\t\t\t\t\telse {\n\t\t\t\t\t\tthis.zone.run(handleChanged);\n\t\t\t\t\t}\n\t\t\t\t} else {\n\t\t\t\t\tif (maxRunTimes > 0 && (scrollLengthChanged || paddingChanged)) {\n\t\t\t\t\t\tthis.refresh_internal(false, refreshCompletedCallback, maxRunTimes - 1);\n\t\t\t\t\t\treturn;\n\t\t\t\t\t}\n\n\t\t\t\t\tif (refreshCompletedCallback) {\n\t\t\t\t\t\trefreshCompletedCallback();\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t});\n\t\t});\n\t}\n\n\tprotected getScrollElement(): HTMLElement {\n\t\treturn this.parentScroll instanceof Window ? document.scrollingElement || document.documentElement || document.body : this.parentScroll || this.element.nativeElement;\n\t}\n\n\tprotected addScrollEventHandlers(): void {\n\t\tif (this.isAngularUniversalSSR) {\n\t\t\treturn;\n\t\t}\n\n\t\tlet scrollElement = this.getScrollElement();\n\n\t\tthis.removeScrollEventHandlers();\n\n\t\tthis.zone.runOutsideAngular(() => {\n\t\t\tif (this.parentScroll instanceof Window) {\n\t\t\t\tthis.disposeScrollHandler = this.renderer.listen('window', 'scroll', this.onScroll);\n\t\t\t\tthis.disposeResizeHandler = this.renderer.listen('window', 'resize', this.onScroll);\n\t\t\t}\n\t\t\telse {\n\t\t\t\tthis.disposeScrollHandler = this.renderer.listen(scrollElement, 'scroll', this.onScroll);\n\t\t\t\tif (this._checkResizeInterval > 0) {\n\t\t\t\t\tthis.checkScrollElementResizedTimer = setInterval(() => { this.checkScrollElementResized(); }, this._checkResizeInterval);\n\t\t\t\t}\n\t\t\t}\n\t\t});\n\t}\n\n\tprotected removeScrollEventHandlers(): void {\n\t\tif (this.checkScrollElementResizedTimer) {\n\t\t\tclearInterval(this.checkScrollElementResizedTimer);\n\t\t}\n\n\t\tif (this.disposeScrollHandler) {\n\t\t\tthis.disposeScrollHandler();\n\t\t\tthis.disposeScrollHandler = undefined;\n\t\t}\n\n\t\tif (this.disposeResizeHandler) {\n\t\t\tthis.disposeResizeHandler();\n\t\t\tthis.disposeResizeHandler = undefined;\n\t\t}\n\t}\n\n\tprotected getElementsOffset(): number {\n\t\tif (this.isAngularUniversalSSR) {\n\t\t\treturn 0;\n\t\t}\n\n\t\tlet offset = 0;\n\n\t\tif (this.containerElementRef && this.containerElementRef.nativeElement) {\n\t\t\toffset += this.containerElementRef.nativeElement[this._offsetType];\n\t\t}\n\n\t\tif (this.parentScroll) {\n\t\t\tlet scrollElement = this.getScrollElement();\n\t\t\tlet elementClientRect = this.getElementSize(this.element.nativeElement);\n\t\t\tlet scrollClientRect = this.getElementSize(scrollElement);\n\t\t\tif (this.horizontal) {\n\t\t\t\toffset += elementClientRect.left - scrollClientRect.left;\n\t\t\t}\n\t\t\telse {\n\t\t\t\toffset += elementClientRect.top - scrollClientRect.top;\n\t\t\t}\n\n\t\t\tif (!(this.parentScroll instanceof Window)) {\n\t\t\t\toffset += scrollElement[this._scrollType];\n\t\t\t}\n\t\t}\n\n\t\treturn offset;\n\t}\n\n\tprotected countItemsPerWrapGroup(): number {\n\t\tif (this.isAngularUniversalSSR) {\n\t\t\treturn Math.round(this.horizontal ? this.ssrViewportHeight / this.ssrChildHeight : this.ssrViewportWidth / this.ssrChildWidth);\n\t\t}\n\n\t\tlet propertyName = this.horizontal ? 'offsetLeft' : 'offsetTop';\n\t\tlet children = ((this.containerElementRef && this.containerElementRef.nativeElement) || this.contentElementRef.nativeElement).children;\n\n\t\tlet childrenLength = children ? children.length : 0;\n\t\tif (childrenLength === 0) {\n\t\t\treturn 1;\n\t\t}\n\n\t\tlet firstOffset = children[0][propertyName];\n\t\tlet result = 1;\n\t\twhile (result < childrenLength && firstOffset === children[result][propertyName]) {\n\t\t\t++result;\n\t\t}\n\n\t\treturn result;\n\t}\n\n\tprotected getScrollStartPosition(): number {\n\t\tlet windowScrollValue = undefined;\n\t\tif (this.parentScroll instanceof Window) {\n\t\t\twindowScrollValue = window[this._pageOffsetType];\n\t\t}\n\n\t\treturn windowScrollValue || this.getScrollElement()[this._scrollType] || 0;\n\t}\n\n\tprotected minMeasuredChildWidth: number;\n\tprotected minMeasuredChildHeight: number;\n\n\tprotected wrapGroupDimensions: WrapGroupDimensions;\n\n\tprotected resetWrapGroupDimensions(): void {\n\t\tconst oldWrapGroupDimensions = this.wrapGroupDimensions;\n\t\tthis.invalidateAllCachedMeasurements();\n\n\t\tif (!this.enableUnequalChildrenSizes || !oldWrapGroupDimensions || oldWrapGroupDimensions.numberOfKnownWrapGroupChildSizes === 0) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst itemsPerWrapGroup: number = this.countItemsPerWrapGroup();\n\t\tfor (let wrapGroupIndex = 0; wrapGroupIndex < oldWrapGroupDimensions.maxChildSizePerWrapGroup.length; ++wrapGroupIndex) {\n\t\t\tconst oldWrapGroupDimension: WrapGroupDimension = oldWrapGroupDimensions.maxChildSizePerWrapGroup[wrapGroupIndex];\n\t\t\tif (!oldWrapGroupDimension || !oldWrapGroupDimension.items || !oldWrapGroupDimension.items.length) {\n\t\t\t\tcontinue;\n\t\t\t}\n\n\t\t\tif (oldWrapGroupDimension.items.length !== itemsPerWrapGroup) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tlet itemsChanged = false;\n\t\t\tlet arrayStartIndex = itemsPerWrapGroup * wrapGroupIndex;\n\t\t\tfor (let i = 0; i < itemsPerWrapGroup; ++i) {\n\t\t\t\tif (!this.compareItems(oldWrapGroupDimension.items[i], this.items[arrayStartIndex + i])) {\n\t\t\t\t\titemsChanged = true;\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tif (!itemsChanged) {\n\t\t\t\t++this.wrapGroupDimensions.numberOfKnownWrapGroupChildSizes;\n\t\t\t\tthis.wrapGroupDimensions.sumOfKnownWrapGroupChildWidths += oldWrapGroupDimension.childWidth || 0;\n\t\t\t\tthis.wrapGroupDimensions.sumOfKnownWrapGroupChildHeights += oldWrapGroupDimension.childHeight || 0;\n\t\t\t\tthis.wrapGroupDimensions.maxChildSizePerWrapGroup[wrapGroupIndex] = oldWrapGroupDimension;\n\t\t\t}\n\t\t}\n\t}\n\n\tprotected calculateDimensions(): IDimensions {\n\t\tlet scrollElement = this.getScrollElement();\n\n\t\tconst maxCalculatedScrollBarSize: number = 25; // Note: Formula to auto-calculate doesn't work for ParentScroll, so we default to this if not set by consuming application\n\t\tthis.calculatedScrollbarHeight = Math.max(Math.min(scrollElement.offsetHeight - scrollElement.clientHeight, maxCalculatedScrollBarSize), this.calculatedScrollbarHeight);\n\t\tthis.calculatedScrollbarWidth = Math.max(Math.min(scrollElement.offsetWidth - scrollElement.clientWidth, maxCalculatedScrollBarSize), this.calculatedScrollbarWidth);\n\n\t\tlet viewportWidth = scrollElement.offsetWidth - (this.scrollbarWidth || this.calculatedScrollbarWidth || (this.horizontal ? 0 : maxCalculatedScrollBarSize));\n\t\tlet viewportHeight = scrollElement.offsetHeight - (this.scrollbarHeight || this.calculatedScrollbarHeight || (this.horizontal ? maxCalculatedScrollBarSize : 0));\n\n\t\tlet content = (this.containerElementRef && this.containerElementRef.nativeElement) || this.contentElementRef.nativeElement;\n\n\t\tlet itemsPerWrapGroup = this.countItemsPerWrapGroup();\n\t\tlet wrapGroupsPerPage;\n\n\t\tlet defaultChildWidth;\n\t\tlet defaultChildHeight;\n\n\t\tif (this.isAngularUniversalSSR) {\n\t\t\tviewportWidth = this.ssrViewportWidth;\n\t\t\tviewportHeight = this.ssrViewportHeight;\n\t\t\tdefaultChildWidth = this.ssrChildWidth;\n\t\t\tdefaultChildHeight = this.ssrChildHeight;\n\t\t\tlet itemsPerRow = Math.max(Math.ceil(viewportWidth / defaultChildWidth), 1);\n\t\t\tlet itemsPerCol = Math.max(Math.ceil(viewportHeight / defaultChildHeight), 1);\n\t\t\twrapGroupsPerPage = this.horizontal ? itemsPerRow : itemsPerCol;\n\t\t}\n\t\telse if (!this.enableUnequalChildrenSizes) {\n\t\t\tif (content.children.length > 0) {\n\t\t\t\tif (!this.childWidth || !this.childHeight) {\n\t\t\t\t\tif (!this.minMeasuredChildWidth && viewportWidth > 0) {\n\t\t\t\t\t\tthis.minMeasuredChildWidth = viewportWidth;\n\t\t\t\t\t}\n\t\t\t\t\tif (!this.minMeasuredChildHeight && viewportHeight > 0) {\n\t\t\t\t\t\tthis.minMeasuredChildHeight = viewportHeight;\n\t\t\t\t\t}\n\t\t\t\t}\n\n\t\t\t\tlet child = content.children[0];\n\t\t\t\tlet clientRect = this.getElementSize(child);\n\t\t\t\tthis.minMeasuredChildWidth = Math.min(this.minMeasuredChildWidth, clientRect.width);\n\t\t\t\tthis.minMeasuredChildHeight = Math.min(this.minMeasuredChildHeight, clientRect.height);\n\t\t\t}\n\n\t\t\tdefaultChildWidth = this.childWidth || this.minMeasuredChildWidth || viewportWidth;\n\t\t\tdefaultChildHeight = this.childHeight || this.minMeasuredChildHeight || viewportHeight;\n\t\t\tlet itemsPerRow = Math.max(Math.ceil(viewportWidth / defaultChildWidth), 1);\n\t\t\tlet itemsPerCol = Math.max(Math.ceil(viewportHeight / defaultChildHeight), 1);\n\t\t\twrapGroupsPerPage = this.horizontal ? itemsPerRow : itemsPerCol;\n\t\t} else {\n\t\t\tlet scrollOffset = scrollElement[this._scrollType] - (this.previousViewPort ? this.previousViewPort.padding : 0);\n\n\t\t\tlet arrayStartIndex = this.previousViewPort.startIndexWithBuffer || 0;\n\t\t\tlet wrapGroupIndex = Math.ceil(arrayStartIndex / itemsPerWrapGroup);\n\n\t\t\tlet maxWidthForWrapGroup = 0;\n\t\t\tlet maxHeightForWrapGroup = 0;\n\t\t\tlet sumOfVisibleMaxWidths = 0;\n\t\t\tlet sumOfVisibleMaxHeights = 0;\n\t\t\twrapGroupsPerPage = 0;\n\n\t\t\tfor (let i = 0; i < content.children.length; ++i) {\n\t\t\t\t++arrayStartIndex;\n\t\t\t\tlet child = content.children[i];\n\t\t\t\tlet clientRect = this.getElementSize(child);\n\n\t\t\t\tmaxWidthForWrapGroup = Math.max(maxWidthForWrapGroup, clientRect.width);\n\t\t\t\tmaxHeightForWrapGroup = Math.max(maxHeightForWrapGroup, clientRect.height);\n\n\t\t\t\tif (arrayStartIndex % itemsPerWrapGroup === 0) {\n\t\t\t\t\tlet oldValue = this.wrapGroupDimensions.maxChildSizePerWrapGroup[wrapGroupIndex];\n\t\t\t\t\tif (oldValue) {\n\t\t\t\t\t\t--this.wrapGroupDimensions.numberOfKnownWrapGroupChildSizes;\n\t\t\t\t\t\tthis.wrapGroupDimensions.sumOfKnownWrapGroupChildWidths -= oldValue.childWidth || 0;\n\t\t\t\t\t\tthis.wrapGroupDimensions.sumOfKnownWrapGroupChildHeights -= oldValue.childHeight || 0;\n\t\t\t\t\t}\n\n\t\t\t\t\t++this.wrapGroupDimensions.numberOfKnownWrapGroupChildSizes;\n\t\t\t\t\tconst items = this.items.slice(arrayStartIndex - itemsPerWrapGroup, arrayStartIndex);\n\t\t\t\t\tthis.wrapGroupDimensions.maxChildSizePerWrapGroup[wrapGroupIndex] = {\n\t\t\t\t\t\tchildWidth: maxWidthForWrapGroup,\n\t\t\t\t\t\tchildHeight: maxHeightForWrapGroup,\n\t\t\t\t\t\titems: items\n\t\t\t\t\t};\n\t\t\t\t\tthis.wrapGroupDimensions.sumOfKnownWrapGroupChildWidths += maxWidthForWrapGroup;\n\t\t\t\t\tthis.wrapGroupDimensions.sumOfKnownWrapGroupChildHeights += maxHeightForWrapGroup;\n\n\t\t\t\t\tif (this.horizontal) {\n\t\t\t\t\t\tlet maxVisibleWidthForWrapGroup = Math.min(maxWidthForWrapGroup, Math.max(viewportWidth - sumOfVisibleMaxWidths, 0));\n\t\t\t\t\t\tif (scrollOffset > 0) {\n\t\t\t\t\t\t\tlet scrollOffsetToRemove = Math.min(scrollOffset, maxVisibleWidthForWrapGroup);\n\t\t\t\t\t\t\tmaxVisibleWidthForWrapGroup -= scrollOffsetToRemove;\n\t\t\t\t\t\t\tscrollOffset -= scrollOffsetToRemove;\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\tsumOfVisibleMaxWidths += maxVisibleWidthForWrapGroup;\n\t\t\t\t\t\tif (maxVisibleWidthForWrapGroup > 0 && viewportWidth >= sumOfVisibleMaxWidths) {\n\t\t\t\t\t\t\t++wrapGroupsPerPage;\n\t\t\t\t\t\t}\n\t\t\t\t\t} else {\n\t\t\t\t\t\tlet maxVisibleHeightForWrapGroup = Math.min(maxHeightForWrapGroup, Math.max(viewportHeight - sumOfVisibleMaxHeights, 0));\n\t\t\t\t\t\tif (scrollOffset > 0) {\n\t\t\t\t\t\t\tlet scrollOffsetToRemove = Math.min(scrollOffset, maxVisibleHeightForWrapGroup);\n\t\t\t\t\t\t\tmaxVisibleHeightForWrapGroup -= scrollOffsetToRemove;\n\t\t\t\t\t\t\tscrollOffset -= scrollOffsetToRemove;\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\tsumOfVisibleMaxHeights += maxVisibleHeightForWrapGroup;\n\t\t\t\t\t\tif (maxVisibleHeightForWrapGroup > 0 && viewportHeight >= sumOfVisibleMaxHeights) {\n\t\t\t\t\t\t\t++wrapGroupsPerPage;\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\n\t\t\t\t\t++wrapGroupIndex;\n\n\t\t\t\t\tmaxWidthForWrapGroup = 0;\n\t\t\t\t\tmaxHeightForWrapGroup = 0;\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tlet averageChildWidth = this.wrapGroupDimensions.sumOfKnownWrapGroupChildWidths / this.wrapGroupDimensions.numberOfKnownWrapGroupChildSizes;\n\t\t\tlet averageChildHeight = this.wrapGroupDimensions.sumOfKnownWrapGroupChildHeights / this.wrapGroupDimensions.numberOfKnownWrapGroupChildSizes;\n\t\t\tdefaultChildWidth = this.childWidth || averageChildWidth || viewportWidth;\n\t\t\tdefaultChildHeight = this.childHeight || averageChildHeight || viewportHeight;\n\n\t\t\tif (this.horizontal) {\n\t\t\t\tif (viewportWidth > sumOfVisibleMaxWidths) {\n\t\t\t\t\twrapGroupsPerPage += Math.ceil((viewportWidth - sumOfVisibleMaxWidths) / defaultChildWidth);\n\t\t\t\t}\n\t\t\t} else {\n\t\t\t\tif (viewportHeight > sumOfVisibleMaxHeights) {\n\t\t\t\t\twrapGroupsPerPage += Math.ceil((viewportHeight - sumOfVisibleMaxHeights) / defaultChildHeight);\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\tlet itemCount = this.items.length;\n\t\tlet itemsPerPage = itemsPerWrapGroup * wrapGroupsPerPage;\n\t\tlet pageCount_fractional = itemCount / itemsPerPage;\n\t\tlet numberOfWrapGroups = Math.ceil(itemCount / itemsPerWrapGroup);\n\n\t\tlet scrollLength = 0;\n\n\t\tlet defaultScrollLengthPerWrapGroup = this.horizontal ? defaultChildWidth : defaultChildHeight;\n\t\tif (this.enableUnequalChildrenSizes) {\n\t\t\tlet numUnknownChildSizes = 0;\n\t\t\tfor (let i = 0; i < numberOfWrapGroups; ++i) {\n\t\t\t\tlet childSize = this.wrapGroupDimensions.maxChildSizePerWrapGroup[i] && this.wrapGroupDimensions.maxChildSizePerWrapGroup[i][this._childScrollDim];\n\t\t\t\tif (childSize) {\n\t\t\t\t\tscrollLength += childSize;\n\t\t\t\t} else {\n\t\t\t\t\t++numUnknownChildSizes;\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tscrollLength += Math.round(numUnknownChildSizes * defaultScrollLengthPerWrapGroup);\n\t\t} else {\n\t\t\tscrollLength = numberOfWrapGroups * defaultScrollLengthPerWrapGroup;\n\t\t}\n\n\t\tif (this.headerElementRef) {\n\t\t\tscrollLength += this.headerElementRef.nativeElement.clientHeight;\n\t\t}\n\n\t\tlet viewportLength = this.horizontal ? viewportWidth : viewportHeight;\n\t\tlet maxScrollPosition = Math.max(scrollLength - viewportLength, 0);\n\n\t\treturn {\n\t\t\titemCount: itemCount,\n\t\t\titemsPerWrapGroup: itemsPerWrapGroup,\n\t\t\twrapGroupsPerPage: wrapGroupsPerPage,\n\t\t\titemsPerPage: itemsPerPage,\n\t\t\tpageCount_fractional: pageCount_fractional,\n\t\t\tchildWidth: defaultChildWidth,\n\t\t\tchildHeight: defaultChildHeight,\n\t\t\tscrollLength: scrollLength,\n\t\t\tviewportLength: viewportLength,\n\t\t\tmaxScrollPosition: maxScrollPosition\n\t\t};\n\t}\n\n\tprotected cachedPageSize: number = 0;\n\tprotected previousScrollNumberElements: number = 0;\n\n\tprotected calculatePadding(arrayStartIndexWithBuffer: number, dimensions: IDimensions): number {\n\t\tif (dimensions.itemCount === 0) {\n\t\t\treturn 0;\n\t\t}\n\n\t\tlet defaultScrollLengthPerWrapGroup = dimensions[this._childScrollDim];\n\t\tlet startingWrapGroupIndex = Math.floor(arrayStartIndexWithBuffer / dimensions.itemsPerWrapGroup) || 0;\n\n\t\tif (!this.enableUnequalChildrenSizes) {\n\t\t\treturn defaultScrollLengthPerWrapGroup * startingWrapGroupIndex;\n\t\t}\n\n\t\tlet numUnknownChildSizes = 0;\n\t\tlet result = 0;\n\t\tfor (let i = 0; i < startingWrapGroupIndex; ++i) {\n\t\t\tlet childSize = this.wrapGroupDimensions.maxChildSizePerWrapGroup[i] && this.wrapGroupDimensions.maxChildSizePerWrapGroup[i][this._childScrollDim];\n\t\t\tif (childSize) {\n\t\t\t\tresult += childSize;\n\t\t\t} else {\n\t\t\t\t++numUnknownChildSizes;\n\t\t\t}\n\t\t}\n\t\tresult += Math.round(numUnknownChildSizes * defaultScrollLengthPerWrapGroup);\n\n\t\treturn result;\n\t}\n\n\tprotected calculatePageInfo(scrollPosition: number, dimensions: IDimensions): IPageInfo {\n\t\tlet scrollPercentage = 0;\n\t\tif (this.enableUnequalChildrenSizes) {\n\t\t\tconst numberOfWrapGroups = Math.ceil(dimensions.itemCount / dimensions.itemsPerWrapGroup);\n\t\t\tlet totalScrolledLength = 0;\n\t\t\tlet defaultScrollLengthPerWrapGroup = dimensions[this._childScrollDim];\n\t\t\tfor (let i = 0; i < numberOfWrapGroups; ++i) {\n\t\t\t\tlet childSize = this.wrapGroupDimensions.maxChildSizePerWrapGroup[i] && this.wrapGroupDimensions.maxChildSizePerWrapGroup[i][this._childScrollDim];\n\t\t\t\tif (childSize) {\n\t\t\t\t\ttotalScrolledLength += childSize;\n\t\t\t\t} else {\n\t\t\t\t\ttotalScrolledLength += defaultScrollLengthPerWrapGroup;\n\t\t\t\t}\n\n\t\t\t\tif (scrollPosition < totalScrolledLength) {\n\t\t\t\t\tscrollPercentage = i / numberOfWrapGroups;\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t}\n\t\t} else {\n\t\t\tscrollPercentage = scrollPosition / dimensions.scrollLength;\n\t\t}\n\n\t\tlet startingArrayIndex_fractional = Math.min(Math.max(scrollPercentage * dimensions.pageCount_fractional, 0), dimensions.pageCount_fractional) * dimensions.itemsPerPage;\n\n\t\tlet maxStart = dimensions.itemCount - dimensions.itemsPerPage - 1;\n\t\tlet arrayStartIndex = Math.min(Math.floor(startingArrayIndex_fractional), maxStart);\n\t\tarrayStartIndex -= arrayStartIndex % dimensions.itemsPerWrapGroup; // round down to start of wrapGroup\n\n\t\tif (this.stripedTable) {\n\t\t\tlet bufferBoundary = 2 * dimensions.itemsPerWrapGroup;\n\t\t\tif (arrayStartIndex % bufferBoundary !== 0) {\n\t\t\t\tarrayStartIndex = Math.max(arrayStartIndex - arrayStartIndex % bufferBoundary, 0);\n\t\t\t}\n\t\t}\n\n\t\tlet arrayEndIndex = Math.ceil(startingArrayIndex_fractional) + dimensions.itemsPerPage - 1;\n\t\tlet endIndexWithinWrapGroup = (arrayEndIndex + 1) % dimensions.itemsPerWrapGroup;\n\t\tif (endIndexWithinWrapGroup > 0) {\n\t\t\tarrayEndIndex += dimensions.itemsPerWrapGroup - endIndexWithinWrapGroup; // round up to end of wrapGroup\n\t\t}\n\n\t\tif (isNaN(arrayStartIndex)) {\n\t\t\tarrayStartIndex = 0;\n\t\t}\n\t\tif (isNaN(arrayEndIndex)) {\n\t\t\tarrayEndIndex = 0;\n\t\t}\n\n\t\tarrayStartIndex = Math.min(Math.max(arrayStartIndex, 0), dimensions.itemCount - 1);\n\t\tarrayEndIndex = Math.min(Math.max(arrayEndIndex, 0), dimensions.itemCount - 1);\n\n\t\tlet bufferSize = this.bufferAmount * dimensions.itemsPerWrapGroup;\n\t\tlet startIndexWithBuffer = Math.min(Math.max(arrayStartIndex - bufferSize, 0), dimensions.itemCount - 1);\n\t\tlet endIndexWithBuffer = Math.min(Math.max(arrayEndIndex + bufferSize, 0), dimensions.itemCount - 1);\n\n\t\treturn {\n\t\t\tstartIndex: arrayStartIndex,\n\t\t\tendIndex: arrayEndIndex,\n\t\t\tstartIndexWithBuffer: startIndexWithBuffer,\n\t\t\tendIndexWithBuffer: endIndexWithBuffer,\n\t\t\tscrollStartPosition: scrollPosition,\n\t\t\tscrollEndPosition: scrollPosition + dimensions.viewportLength,\n\t\t\tmaxScrollPosition: dimensions.maxScrollPosition\n\t\t};\n\t}\n\n\tprotected calculateViewport(): IViewport {\n\t\tlet dimensions = this.calculateDimensions();\n\t\tlet offset = this.getElementsOffset();\n\n\t\tlet scrollStartPosition = this.getScrollStartPosition();\n\t\tif (scrollStartPosition > (dimensions.scrollLength + offset) && !(this.parentScroll instanceof Window)) {\n\t\t\tscrollStartPosition = dimensions.scrollLength;\n\t\t} else {\n\t\t\tscrollStartPosition -= offset;\n\t\t}\n\t\tscrollStartPosition = Math.max(0, scrollStartPosition);\n\n\t\tlet pageInfo = this.calculatePageInfo(scrollStartPosition, dimensions);\n\t\tlet newPadding = this.calculatePadding(pageInfo.startIndexWithBuffer, dimensions);\n\t\tlet newScrollLength = dimensions.scrollLength;\n\n\t\treturn {\n\t\t\tstartIndex: pageInfo.startIndex,\n\t\t\tendIndex: pageInfo.endIndex,\n\t\t\tstartIndexWithBuffer: pageInfo.startIndexWithBuffer,\n\t\t\tendIndexWithBuffer: pageInfo.endIndexWithBuffer,\n\t\t\tpadding: Math.round(newPadding),\n\t\t\tscrollLength: Math.round(newScrollLength),\n\t\t\tscrollStartPosition: pageInfo.scrollStartPosition,\n\t\t\tscrollEndPosition: pageInfo.scrollEndPosition,\n\t\t\tmaxScrollPosition: pageInfo.maxScrollPosition\n\t\t};\n\t}\n}\n\n@NgModule({\n\texports: [VirtualScrollerComponent],\n\tdeclarations: [VirtualScrollerComponent],\n\timports: [CommonModule],\n\tproviders: [\n\t\t{\n\t\t\tprovide: 'virtual-scroller-default-options',\n\t\t\tuseFactory: VIRTUAL_SCROLLER_DEFAULT_OPTIONS_FACTORY\n\t\t}\n\t]\n})\nexport class VirtualScrollerModule { }","function webpackEmptyAsyncContext(req) {\n\t// Here Promise.resolve().then() is used instead of new Promise() to prevent\n\t// uncaught exception popping up in devtools\n\treturn Promise.resolve().then(function() {\n\t\tvar e = new Error(\"Cannot find module '\" + req + \"'\");\n\t\te.code = 'MODULE_NOT_FOUND';\n\t\tthrow e;\n\t});\n}\nwebpackEmptyAsyncContext.keys = function() { return []; };\nwebpackEmptyAsyncContext.resolve = webpackEmptyAsyncContext;\nmodule.exports = webpackEmptyAsyncContext;\nwebpackEmptyAsyncContext.id = \"./src/$$_lazy_route_resource lazy recursive\";","","import { Component, OnInit } from '@angular/core';\n\n@Component({\n selector: 'app-root',\n templateUrl: './app.component.html',\n styleUrls: ['./app.component.css']\n})\nexport class AppComponent implements OnInit {\n title = 'app works!';\n singleSelectionList = [];\n singleSelectionselectedItems = [];\n singleSelectionSettings = {};\n\n basicExampleList = [];\n basicExampleSelectedItems = [];\n basicExampleSettings = {};\n\n selectedItems3 = [];\n dropdownSettings3 = {};\n\n limitSelectionSelectedItems = [];\n limitSelectionSettings = {};\n\n disableModeSelectedItems = [];\n disableModeSettings = {};\n\n placeholderExampleList = [];\n placeholderExampleSelectedItems = [];\n placeholderExampleSettings = {};\n\n resetExampleList = [];\n resetExampleSelectedItems = [];\n resetExampleSettings = {};\n\n groupByExampleList = [];\n groupByExampleSelectedItems = [];\n groupByExampleSettings = {};\n\n templatingExampleList = [];\n templatingExampleSelectedItems = [];\n templatingExampleSettings = {};\n\n constructor(){\n \n }\n ngOnInit(){\n this.singleSelectionList = [\n {\"id\":1,\"itemName\":\"India\"},\n {\"id\":2,\"itemName\":\"Singapore\"},\n {\"id\":3,\"itemName\":\"Australia\"},\n {\"id\":4,\"itemName\":\"Canada\"},\n {\"id\":5,\"itemName\":\"South Korea\"}\n ];\n\n this.singleSelectionselectedItems = [\n {\"id\":2,\"itemName\":\"Singapore\"}];\n this.singleSelectionSettings = {singleSelection: true, text:\"Select Country\"};\n\n this.basicExampleList = [\n {\"id\":1,\"itemName\":\"India\"},\n {\"id\":2,\"itemName\":\"Singapore\"},\n {\"id\":3,\"itemName\":\"Australia\"},\n {\"id\":4,\"itemName\":\"Canada\"},\n {\"id\":5,\"itemName\":\"South Korea\"}, \n {\"id\":6,\"itemName\":\"Brazil\"} \n ];\n \n this.basicExampleSelectedItems = [\n {\"id\":1,\"itemName\":\"India\"},\n {\"id\":2,\"itemName\":\"Singapore\"},\n {\"id\":3,\"itemName\":\"Australia\"},\n {\"id\":4,\"itemName\":\"Canada\"}];\n this.basicExampleSettings = { \n text:\"Select Countries\",\n selectAllText:'Select All',\n unSelectAllText:'UnSelect All',\n enableSearchFilter: true,\n classes:\"myclass custom-class\"\n };\n\n this.selectedItems3 = [\n {\"id\":1,\"itemName\":\"India\"},\n {\"id\":2,\"itemName\":\"Singapore\"},\n {\"id\":4,\"itemName\":\"Canada\"},\n {\"id\":5,\"itemName\":\"South Korea\"}];\n\n \n this.dropdownSettings3 = { singleSelection: false, \n text:\"Select Countries\",\n selectAllText:'Select All',\n unSelectAllText:'UnSelect All',\n enableSearchFilter: true,\n badgeShowLimit: 3\n }; \n this.limitSelectionSelectedItems = [\n {\"id\":1,\"itemName\":\"India\"},\n {\"id\":2,\"itemName\":\"Singapore\"},\n {\"id\":3,\"itemName\":\"Australia\"},\n {\"id\":4,\"itemName\":\"Canada\"}];\n this.limitSelectionSettings = { \n text:\"Select Countries\",\n selectAllText:'Select All',\n unSelectAllText:'UnSelect All',\n enableSearchFilter: false,\n classes:\"myclass custom-class\",\n limitSelection: 4\n };\n this.disableModeSelectedItems = [\n {\"id\":1,\"itemName\":\"India\"},\n {\"id\":2,\"itemName\":\"Singapore\"},\n {\"id\":3,\"itemName\":\"Australia\"},\n {\"id\":4,\"itemName\":\"Canada\"}];\n this.disableModeSettings = { \n text:\"Select Countries\",\n selectAllText:'Select All',\n unSelectAllText:'UnSelect All',\n enableSearchFilter: false,\n classes:\"myclass custom-class\",\n limitSelection: 2,\n disabled: true\n };\n\n this.placeholderExampleList = [\n {\"id\":1,\"itemName\":\"India\"},\n {\"id\":2,\"itemName\":\"Singapore\"},\n {\"id\":3,\"itemName\":\"Australia\"},\n {\"id\":4,\"itemName\":\"Canada\"},\n {\"id\":5,\"itemName\":\"South Korea\"}\n ];\n \n this.placeholderExampleSelectedItems = [\n {\"id\":1,\"itemName\":\"India\"},\n {\"id\":2,\"itemName\":\"Singapore\"},\n {\"id\":3,\"itemName\":\"Australia\"},\n {\"id\":4,\"itemName\":\"Canada\"}];\n this.placeholderExampleSettings = { \n text:\"Select Countries\",\n selectAllText:'Select All',\n unSelectAllText:'UnSelect All',\n enableSearchFilter: true,\n classes:\"myclass custom-class\",\n searchPlaceholderText: \"Custom Placeholder text\"\n };\n this.resetExampleList = [\n {\"id\":1,\"itemName\":\"India\"},\n {\"id\":2,\"itemName\":\"Singapore\"},\n {\"id\":3,\"itemName\":\"Australia\"},\n {\"id\":4,\"itemName\":\"Canada\"},\n {\"id\":5,\"itemName\":\"South Korea\"}\n ];\n \n this.resetExampleSelectedItems = [\n {\"id\":1,\"itemName\":\"India\"},\n {\"id\":2,\"itemName\":\"Singapore\"},\n {\"id\":3,\"itemName\":\"Australia\"},\n {\"id\":4,\"itemName\":\"Canada\"}];\n this.resetExampleSettings = { \n text:\"Select Countries\",\n selectAllText:'Select All',\n unSelectAllText:'UnSelect All',\n enableSearchFilter: false,\n classes:\"myclass custom-class\"\n }; \n this.groupByExampleList = [\n {\"id\":1,\"itemName\":\"India\",\"category\":\"asia\"},\n {\"id\":2,\"itemName\":\"Singapore\",\"category\":\"asia pacific\"},\n {\"id\":3,\"itemName\":\"Germany\",\"category\":\"Europe\"},\n {\"id\":4,\"itemName\":\"France\",\"category\":\"Europe\"},\n {\"id\":5,\"itemName\":\"South Korea\",\"category\":\"asia\"}, \n {\"id\":6,\"itemName\":\"Sweden\",\"category\":\"Europe\"} \n ];\n \n this.groupByExampleSelectedItems = [\n {\"id\":1,\"itemName\":\"India\"},\n {\"id\":2,\"itemName\":\"Singapore\"},\n {\"id\":3,\"itemName\":\"Germany\"},\n {\"id\":4,\"itemName\":\"France\"}];\n this.groupByExampleSettings = { \n text:\"Select Countries\",\n selectAllText:'Select All',\n unSelectAllText:'UnSelect All',\n enableSearchFilter: true,\n classes:\"myclass custom-class\",\n groupBy: \"category\"\n }; \n\n this.groupByExampleSettings = {\nsingleSelection: false,\ntext:\"Select Fields\",\nselectAllText:'Select All',\nunSelectAllText:'UnSelect All',\nsearchPlaceholderText: 'Search Fields',\nenableSearchFilter: true,\nbadgeShowLimit: 5,\ngroupBy:\"category\"\n}; \n\nthis.templatingExampleList = [\n {\"id\":1,\"itemName\":\"India\",\"capital\":\"Delhi\",\"image\":\"http://www.sciencekids.co.nz/images/pictures/flags96/India.jpg\"},\n {\"id\":2,\"itemName\":\"Singapore\", \"capital\":\"Singapore\",\"image\":\"http://www.sciencekids.co.nz/images/pictures/flags96/Singapore.jpg\"},\n {\"id\":3,\"itemName\":\"United Kingdom\", \"capital\":\"London\",\"image\":\"http://www.sciencekids.co.nz/images/pictures/flags96/United_Kingdom.jpg\"},\n {\"id\":4,\"itemName\":\"Canada\",\"capital\":\"Ottawa\",\"image\":\"http://www.sciencekids.co.nz/images/pictures/flags96/Canada.jpg\"},\n {\"id\":5,\"itemName\":\"South Korea\",\"capital\":\"Seoul\",\"image\":\"http://www.sciencekids.co.nz/images/pictures/flags96/South_Korea.jpg\"}, \n {\"id\":6,\"itemName\":\"Brazil\",\"capital\":\"Brasilia\",\"image\":\"http://www.sciencekids.co.nz/images/pictures/flags96/Brazil.jpg\"} \n ];\n \n this.templatingExampleSelectedItems = [\n {\"id\":1,\"itemName\":\"India\"},\n {\"id\":2,\"itemName\":\"Singapore\"},\n {\"id\":3,\"itemName\":\"United Kingdom\"},\n {\"id\":4,\"itemName\":\"Canada\"}];\n this.templatingExampleSettings = { \n text:\"Select Countries\",\n selectAllText:'Select All',\n unSelectAllText:'UnSelect All',\n enableSearchFilter: true,\n classes:\"myclass custom-class\",\n showCheckbox: true\n };\n\n }\n onItemSelect(item:any){\n console.log(item);\n console.log(this.basicExampleSelectedItems);\n }\n OnItemDeSelect(item:any){\n console.log(item);\n console.log(this.basicExampleSelectedItems);\n }\n onSelectAll(items: any){\n console.log(items);\n }\n onDeSelectAll(items: any){\n console.log(items);\n }\n showModel(){\n console.log(this.singleSelectionselectedItems);\n }\n changeData(){\n this.resetExampleSelectedItems = [];\n }\n}\n","import { BrowserModule } from '@angular/platform-browser';\nimport { NgModule } from '@angular/core';\nimport { FormsModule, ReactiveFormsModule } from '@angular/forms';\nimport { HttpClientModule } from '@angular/common/http';\nimport { MockService } from './examples/mock-data';\n\nimport { AppComponent } from './app.component';\nimport { AngularMultiSelectModule } from '../../projects/angular2-multiselect-dropdown-lib/src/lib/multiselect.component';\nimport { AppRouterModule } from './app.router';\nimport { BasicExample } from './examples/basic';\nimport { SingleSelectionExample } from './examples/singleselection';\nimport { GroupByExample } from './examples/groupBy';\nimport { SearchFilterExample } from './examples/searchFilter';\nimport { TemplatingExample } from './examples/templating';\nimport { ResetDropdownExample } from './examples/resetdropdown';\nimport { DisableModeExample } from './examples/disablemode';\nimport {LimitSelectionExample } from './examples/limitselection';\nimport {LimitBadgesExample } from './examples/limitbadges';\nimport { CustomPlaceholderExample } from './examples/customplaceholder';\nimport { StylingExample } from './examples/styling';\nimport { ng2Gist } from './examples/gist';\nimport { TabViewModule } from 'primeng/primeng';\nimport { UsingWithFormExample } from './examples/usingWithForms';\nimport { UsingWithReactiveFormExample } from './examples/usingInReactForms';\nimport { LazyLoadingExample } from './examples/lazyLoading';\nimport { MultipleDropdownsExample } from './examples/multipleDropdowns';\nimport { DynamicDataSetsExample } from './examples/dynamicDataSets';\nimport { ThemingExample } from './examples/theming';\nimport { RemoteDataExample } from './examples/remoteData';\nimport { CustomSearchExample } from './examples/customSearch';\nimport { SearchFilterByOnePropertyExample } from './examples/searchByOneProperty';\nimport {LazyLoadingRemoteDataExample } from './examples/lazyLoadingRemoteData';\nimport {SearchFilterAddItemExample } from './examples/searchFilterAddNewItem';\nimport { EventsExample } from './examples/events';\nimport { HighlightModule } from 'ngx-highlightjs';\nimport { UsingInListExample } from './examples/usingInList';\n\nimport xml from 'highlight.js/lib/languages/xml';\nimport scss from 'highlight.js/lib/languages/scss';\nimport typescript from 'highlight.js/lib/languages/typescript';\n\nexport function hljsLanguages() {\n return [\n {name: 'typescript', func: typescript},\n {name: 'scss', func: scss},\n {name: 'xml', func: xml}\n ];\n}\n\n@NgModule({\n declarations: [\n AppComponent,\n ng2Gist,\n BasicExample,\n SingleSelectionExample,\n GroupByExample,\n SearchFilterExample,\n TemplatingExample,\n ResetDropdownExample,\n DisableModeExample,\n LimitSelectionExample,\n LimitBadgesExample,\n CustomPlaceholderExample,\n StylingExample,\n UsingWithFormExample,\n UsingWithReactiveFormExample,\n LazyLoadingExample,\n MultipleDropdownsExample,\n DynamicDataSetsExample,\n ThemingExample,\n RemoteDataExample,\n CustomSearchExample,\n SearchFilterByOnePropertyExample,\n LazyLoadingRemoteDataExample,\n SearchFilterAddItemExample,\n EventsExample,\n UsingInListExample\n ],\n imports: [\n BrowserModule.withServerTransition({ appId: 'serverApp' }),\n ReactiveFormsModule,\n FormsModule,\n AppRouterModule,\n AngularMultiSelectModule,\n TabViewModule,\n HttpClientModule,\n HighlightModule.forRoot({\n languages: hljsLanguages\n })\n ],\n providers: [MockService],\n bootstrap: [AppComponent]\n})\nexport class AppModule { }\n","import { RouterModule, Routes } from '@angular/router';\nimport { NgModule } from '@angular/core';\n\nimport { AppComponent } from './app.component';\nimport { BasicExample } from './examples/basic';\nimport { SingleSelectionExample } from './examples/singleselection';\nimport { GroupByExample } from './examples/groupBy';\nimport { SearchFilterExample } from './examples/searchFilter';\nimport { TemplatingExample } from './examples/templating';\nimport { ResetDropdownExample } from './examples/resetdropdown';\nimport { DisableModeExample } from './examples/disablemode';\nimport { LimitSelectionExample } from './examples/limitselection';\nimport { LimitBadgesExample } from './examples/limitbadges';\nimport { CustomPlaceholderExample } from './examples/customplaceholder';\nimport { StylingExample } from './examples/styling';\nimport { UsingWithFormExample } from './examples/usingWithForms';\nimport { UsingWithReactiveFormExample } from './examples/usingInReactForms';\nimport { LazyLoadingExample } from './examples/lazyLoading';\nimport { MultipleDropdownsExample } from './examples/multipleDropdowns';\nimport { DynamicDataSetsExample } from './examples/dynamicDataSets';\nimport { ThemingExample } from './examples/theming';\nimport { RemoteDataExample } from './examples/remoteData';\nimport { CustomSearchExample } from './examples/customSearch';\nimport { SearchFilterByOnePropertyExample } from './examples/searchByOneProperty';\nimport {LazyLoadingRemoteDataExample } from './examples/lazyLoadingRemoteData';\nimport {SearchFilterAddItemExample } from './examples/searchFilterAddNewItem';\nimport { EventsExample } from './examples/events';\nimport { UsingInListExample } from './examples/usingInList';\n\nconst appRoutes: Routes = [\n { path: '', redirectTo: '/basic', pathMatch: 'full' },\n { path: 'basic', component: BasicExample },\n { path: 'singleselection', component: SingleSelectionExample },\n { path: 'searchfilter', component: SearchFilterExample },\n { path: 'groupby', component: GroupByExample },\n { path: 'templating', component: TemplatingExample },\n { path: 'dropdownMethods', component: ResetDropdownExample },\n { path: 'disablemode', component: DisableModeExample },\n { path: 'limitselection', component: LimitSelectionExample },\n { path: 'limitbadges', component: LimitBadgesExample },\n { path: 'customplaceholder', component: CustomPlaceholderExample },\n { path: 'styling', component: StylingExample },\n { path: 'usinginform', component: UsingWithFormExample },\n { path: 'usinginreactiveform', component: UsingWithReactiveFormExample },\n { path: 'lazyloading', component: LazyLoadingExample },\n { path: 'multipledropdowns', component: MultipleDropdownsExample },\n { path: 'dynamicdatasets', component: DynamicDataSetsExample },\n { path: 'theming', component: ThemingExample },\n { path: 'remoteData', component: RemoteDataExample },\n { path: 'customSearchAPI', component: CustomSearchExample },\n { path: 'searchFilterByOneProperty', component: SearchFilterByOnePropertyExample },\n { path: 'lazyloadingRemoteData', component: LazyLoadingRemoteDataExample},\n { path: 'searchfilterAddNewItem', component: SearchFilterAddItemExample},\n { path: 'events', component: EventsExample},\n { path: 'usingInList', component: UsingInListExample}\n\n];\n\n\n@NgModule({\n imports: [\n RouterModule.forRoot(appRoutes, { useHash: true })\n ],\n exports: [\n RouterModule\n ]\n\n})\nexport class AppRouterModule { }\n","

{{title}}

\n
\n \n \n
\n

Code

\n\n\n \n \n \n \n \n \n \n \n \n \n \n\n","import { Component, OnInit } from '@angular/core';\nimport { Title, Meta } from '@angular/platform-browser';\n@Component({\n templateUrl: './views/view.html'\n})\nexport class BasicExample implements OnInit {\n\n itemList = [];\n selectedItems = [];\n settings = {};\n\n constructor(public seotitle: Title, public meta: Meta) { \n this.seotitle.setTitle('Basic example');\n this.meta.addTags([\n {name: 'description', content:'Basic example of angular multiselect drodown.'}\n ]);\n }\n ngOnInit() {\n\n this.itemList = [\n { \"countryId\": 1, \"itemName\": \"India\" },\n { \"countryId\": 2, \"itemName\": \"Singapore\" },\n { \"countryId\": 3, \"itemName\": \"Australia\" },\n { \"countryId\": 4, \"itemName\": \"Canada\" },\n { \"countryId\": 5, \"itemName\": \"South Korea\" },\n { \"countryId\": 6, \"itemName\": \"Brazil\" }\n ];\n\n this.selectedItems = [\n { \"countryId\": 1, \"itemName\": \"India\" },\n { \"countryId\": 2, \"itemName\": \"Singapore\" },\n { \"countryId\": 3, \"itemName\": \"Australia\" },\n { \"countryId\": 4, \"itemName\": \"Canada\" },\n { \"countryId\": 5, \"itemName\": \"South Korea\" }];\n\n this.settings = {\n text: \"Select Countries\",\n selectAllText: 'Select All',\n unSelectAllText: 'UnSelect All',\n classes: \"myclass custom-class\",\n primaryKey: \"countryId\"\n };\n }\n onItemSelect(item: any) {\n console.log(item);\n console.log(this.selectedItems);\n }\n OnItemDeSelect(item: any) {\n console.log(item);\n console.log(this.selectedItems);\n }\n onSelectAll(items: any) {\n console.log(items);\n }\n onDeSelectAll(items: any) {\n console.log(items);\n }\n cssgist: boolean = false;\n title: string = \"Basic example\";\n tsgist: string = \"CuppaLabs/ee72fbc7b21dad7e4e7664c5b1553235\";\n htmlgist: string = \"CuppaLabs/eb78d42ab7971fda6493586e329bfdb8\";\n tstitle: string = \"basic.ts\"\n htmltitle: string = \"basic.html\";\n}\n","

\n {{title}}

\n
\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
\n

Code

\n\n\n \n \n \n \n \n \n \n \n \n \n \n","import { Component, OnInit } from '@angular/core';\nimport { HttpClient } from '@angular/common/http';\n\n@Component({\n templateUrl: './views/customSearch.html'\n})\nexport class CustomSearchExample implements OnInit {\n\n itemList: any = [];\n selectedItems = [];\n settings = {};\n\n constructor(private http: HttpClient) { }\n ngOnInit() {\n\n this.settings = {\n text: \"Select Countries\",\n selectAllText: 'Select All',\n unSelectAllText: 'UnSelect All',\n classes: \"myclass custom-class\",\n primaryKey: \"alpha3Code\",\n labelKey: \"name\",\n noDataLabel: \"Search Countries...\",\n enableSearchFilter: true,\n searchBy: ['name', 'capital']\n };\n }\n onItemSelect(item: any) {\n console.log(item);\n console.log(this.selectedItems);\n }\n OnItemDeSelect(item: any) {\n console.log(item);\n console.log(this.selectedItems);\n }\n onSelectAll(items: any) {\n console.log(items);\n }\n onDeSelectAll(items: any) {\n console.log(items);\n }\n onSearch(evt: any) {\n console.log(evt.target.value);\n this.itemList = [];\n this.http.get('https://restcountries.eu/rest/v2/name/'+evt.target.value+'?fulltext=true')\n .subscribe(res => {\n console.log(res);\n this.itemList = res;\n }, error => {\n\n });\n }\n cssgist: boolean = false;\n title: string = \"Custom Search / Search from API\";\n tsgist: string = \"CuppaLabs/1bab5ecbbb22727eb0afe49848a454f0\";\n htmlgist: string = \"CuppaLabs/7f0d8ea9f9cfe9eec2cc1699affd2c14\";\n tstitle: string = \"customSearch.ts\"\n htmltitle: string = \"customSearch.html\";\n}\n","import { Component, OnInit } from '@angular/core';\n\n@Component({\n templateUrl: './views/view.html'\n})\nexport class CustomPlaceholderExample implements OnInit {\n\n itemList = [];\n selectedItems = [];\n settings = {};\n\n constructor() {\n\n }\n ngOnInit() {\n\n\n this.itemList = [\n { \"id\": 1, \"itemName\": \"India\" },\n { \"id\": 2, \"itemName\": \"Singapore\" },\n { \"id\": 3, \"itemName\": \"Australia\" },\n { \"id\": 4, \"itemName\": \"Canada\" },\n { \"id\": 5, \"itemName\": \"South Korea\" },\n { \"id\": 6, \"itemName\": \"Brazil\" }\n ];\n\n this.selectedItems = [\n { \"id\": 1, \"itemName\": \"India\" },\n { \"id\": 2, \"itemName\": \"Singapore\" },\n { \"id\": 3, \"itemName\": \"Australia\" },\n { \"id\": 4, \"itemName\": \"Canada\" }];\n this.settings = {\n text: \"Select Countries\",\n selectAllText: 'Select All',\n unSelectAllText: 'UnSelect All',\n enableSearchFilter: true,\n classes: \"myclass custom-class\",\n searchPlaceholderText: \"Custom Placeholder text\"\n };\n }\n onItemSelect(item: any) {\n console.log(item);\n console.log(this.selectedItems);\n }\n OnItemDeSelect(item: any) {\n console.log(item);\n console.log(this.selectedItems);\n }\n onSelectAll(items: any) {\n console.log(items);\n }\n onDeSelectAll(items: any) {\n console.log(items);\n }\n cssgist: boolean = false;\n title: string = \"Custom search placeholder\";\n tsgist: string = \"CuppaLabs/48c087b6c0b4381d5bae1c689cc0ee3e\";\n htmlgist: string = \"CuppaLabs/eb78d42ab7971fda6493586e329bfdb8\";\n tstitle: string = \"customPlaceholder.ts\"\n htmltitle: string = \"customPlaceholder.html\";\n}\n","

{{title}}

\n
\n \n
\n
\n
\n \n
\n
\n \n
\n
\n

Code

\n\n\n \n \n \n \n \n \n \n \n \n \n \n\n","import { Component, OnInit } from '@angular/core';\n\n@Component({\n templateUrl: './views/disableMode.html'\n})\nexport class DisableModeExample implements OnInit {\n\n itemList = [];\n selectedItems = [];\n settings: any = {};\n\n constructor() {\n\n }\n ngOnInit() {\n\n\n this.itemList = [\n { \"id\": 1, \"itemName\": \"India\" },\n { \"id\": 2, \"itemName\": \"Singapore\" },\n { \"id\": 3, \"itemName\": \"Australia\" },\n { \"id\": 4, \"itemName\": \"Canada\" },\n { \"id\": 5, \"itemName\": \"South Korea\" },\n { \"id\": 6, \"itemName\": \"Brazil\" }\n ];\n\n this.selectedItems = [\n { \"id\": 1, \"itemName\": \"India\" },\n { \"id\": 2, \"itemName\": \"Singapore\" },\n { \"id\": 3, \"itemName\": \"Australia\" },\n { \"id\": 4, \"itemName\": \"Canada\" }];\n this.settings = {\n text: \"Select Countries\",\n selectAllText: 'Select All',\n unSelectAllText: 'UnSelect All',\n enableSearchFilter: false,\n classes: \"myclass custom-class\",\n disabled: true\n };\n }\n onItemSelect(item: any) {\n console.log(item);\n console.log(this.selectedItems);\n }\n OnItemDeSelect(item: any) {\n console.log(item);\n console.log(this.selectedItems);\n }\n onSelectAll(items: any) {\n console.log(items);\n }\n onDeSelectAll(items: any) {\n console.log(items);\n }\n showModel() {\n console.log(this.selectedItems);\n }\n changeData() {\n this.selectedItems = [];\n }\n disable() {\n this.settings = {\n text: \"Select Countries\",\n selectAllText: 'Select All',\n unSelectAllText: 'UnSelect All',\n enableSearchFilter: false,\n classes: \"myclass custom-class\",\n disabled: true\n };\n }\n enable() {\n this.settings = {\n text: \"Select Countries\",\n selectAllText: 'Select All',\n unSelectAllText: 'UnSelect All',\n enableSearchFilter: false,\n classes: \"myclass custom-class\",\n disabled: false\n };\n }\n toggleDisable() {\n console.log(this.settings);\n this.settings = {\n text: \"Select Countries\",\n selectAllText: 'Select All',\n unSelectAllText: 'UnSelect All',\n enableSearchFilter: false,\n classes: \"myclass custom-class\",\n limitSelection: 2,\n disabled: false\n };\n }\n cssgist: boolean = false;\n title: string = \"Disable mode\";\n tsgist: string = \"CuppaLabs/96f799302bdfa08e11b4420c86c1d720\";\n htmlgist: string = \"CuppaLabs/eb78d42ab7971fda6493586e329bfdb8\";\n tstitle: string = \"disableMode.ts\"\n htmltitle: string = \"disableMode.html\";\n}\n","

{{title}}

\n
\n \n
\n\n\n\n

Code

\n\n\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n\n","import { Component, OnInit } from '@angular/core';\nimport { MockService } from './mock-data';\n\n@Component({\n templateUrl: './views/dynamicData.html'\n})\nexport class DynamicDataSetsExample implements OnInit {\n\n itemList = [];\n selectedItems = [];\n settings = {};\n\n constructor(private mockService: MockService) { }\n ngOnInit() {\n\n this.settings = {\n text: \"Select Countries\",\n selectAllText: 'Select All',\n unSelectAllText: 'UnSelect All',\n classes: \"myclass custom-class\"\n };\n this.loadDataSet2();\n }\n onItemSelect(item: any) {\n console.log(item);\n console.log(this.selectedItems);\n }\n OnItemDeSelect(item: any) {\n console.log(item);\n console.log(this.selectedItems);\n }\n onSelectAll(items: any) {\n console.log(items);\n }\n onDeSelectAll(items: any) {\n console.log(items);\n }\n loadDataSet1() {\n this.settings = {\n text: \"Select Fruits\",\n selectAllText: 'Select All',\n unSelectAllText: 'UnSelect All',\n classes: \"myclass custom-class\"\n };\n this.selectedItems = [];\n this.itemList = [];\n const tempArr = this.mockService.getFruits();\n for (let i = 0; i < tempArr.length; ++i) {\n this.itemList.push(tempArr[i]);\n }\n }\n loadDataSet2() {\n this.settings = {\n text: \"Select Countries\",\n selectAllText: 'Select All',\n unSelectAllText: 'UnSelect All',\n classes: \"myclass custom-class\"\n };\n this.selectedItems = [];\n this.itemList = [];\n const tempArr = this.mockService.getCountries();\n for (let i = 0; i < tempArr.length; ++i) {\n this.itemList.push(tempArr[i]);\n }\n }\n cssgist: boolean = false;\n title: string = \"Dynamic datasets loading\";\n tsgist: string = \"CuppaLabs/302d580f91bc40611b2474558d98fbf2\";\n htmlgist: string = \"CuppaLabs/eb78d42ab7971fda6493586e329bfdb8\";\n mockgist: string = \"CuppaLabs/b3e947ec83710307a3b8680a2ff89693\";\n tstitle: string = \"dynamicData.ts\"\n htmltitle: string = \"dynamicData.html\";\n mocktitle: string = \"mock-data.ts\";\n}\n","

{{title}}

\n
\n
\n
\n
\n
\n \n \n\n
\n
\n
\n
\n
\n
\n
\n
On Select
\n \n
\n
\n
On Un-select
\n \n
\n
\n
On Open
\n \n
\n
\n
On Close
\n \n
\n
\n
On Select All
\n \n
\n
\n
On Un-Select All
\n \n
\n
\n
\n\n

Code

\n\n\n \n \n \n \n \n \n","import { Component, OnInit } from '@angular/core';\n\n@Component({\n templateUrl: './views/events.html'\n})\nexport class EventsExample implements OnInit {\n\n itemList = [];\n selectedItems = [];\n settings = {};\n selectedItemString: string = '';\n unSelectedItemString: string = '';\n openString: string = '';\n closeString: string = '';\n selectAllString: string = '';\n unSelectAllString: string = '';\n\n constructor() { }\n ngOnInit() {\n\n this.itemList = [\n { \"countryId\": 1, \"itemName\": \"India\" },\n { \"countryId\": 2, \"itemName\": \"Singapore\" },\n { \"countryId\": 3, \"itemName\": \"Australia\" },\n { \"countryId\": 4, \"itemName\": \"Canada\" },\n { \"countryId\": 5, \"itemName\": \"South Korea\" },\n { \"countryId\": 6, \"itemName\": \"Brazil\" }\n ];\n\n this.selectedItems = [\n { \"countryId\": 1, \"itemName\": \"India\" },\n { \"countryId\": 2, \"itemName\": \"Singapore\" },\n { \"countryId\": 3, \"itemName\": \"Australia\" },\n { \"countryId\": 4, \"itemName\": \"Canada\" }];\n\n this.settings = {\n text: \"Select Countries\",\n selectAllText: 'Select All',\n unSelectAllText: 'UnSelect All',\n classes: \"myclass custom-class\",\n primaryKey: \"countryId\"\n };\n }\n onItemSelect(item: any) {\n console.log(item);\n this.selectedItemString = JSON.stringify(item);\n console.log(this.selectedItems);\n }\n OnItemDeSelect(item: any) {\n console.log(item);\n this.unSelectedItemString = JSON.stringify(item);\n console.log(this.selectedItems);\n }\n onOpen(evt: any){\n this.openString = \"Dropdown opened: \"+evt;\n }\n onClose(evt: any){\n this.closeString = \"Dropdown opened: \"+evt;\n }\n onSelectAll(items: any) {\n console.log(items);\n this.selectAllString = JSON.stringify(items);\n this.unSelectAllString = \"\";\n }\n onDeSelectAll(items: any) {\n console.log(items);\n this.selectAllString = '';\n this.unSelectAllString = \"all items un-selected\";\n }\n cssgist: boolean = false;\n title: string = \"Events\";\n tsgist: string = \"CuppaLabs/ee72fbc7b21dad7e4e7664c5b1553235\";\n htmlgist: string = \"CuppaLabs/eb78d42ab7971fda6493586e329bfdb8\";\n tstitle: string = \"basic.ts\"\n htmltitle: string = \"basic.html\";\n}\n","\n \n ","import {Component, Input, ViewChild, ElementRef, AfterViewInit} from '@angular/core';\n\n@Component({\n selector: 'ng2-gist',\n template:`\n \n `,\n styleUrls: []\n})\n\nexport class ng2Gist implements AfterViewInit {\n @ViewChild('iframe', {static: true}) iframe:ElementRef;\n @Input() gistId;\n\n constructor() { }\n\n ngAfterViewInit() {\n this.iframe.nativeElement.id = 'gist-' + this.gistId;\n let doc = this.iframe.nativeElement.contentDocument || this.iframe.nativeElement.contentElement.contentWindow;\n let content = `\n \n \n \n \n \n \n \n \n `;\n doc.open();\n doc.write(content);\n doc.close();\n }\n}","

{{title}}

\n
\n \n
\n\n\n\n

Code

\n\n\n \n \n \n \n \n \n \n \n \n \n \n\n","import { Component, OnInit } from '@angular/core';\n\n@Component({\n templateUrl: './views/groupBy.html'\n})\nexport class GroupByExample implements OnInit {\n\n itemList = [];\n selectedItems = [];\n settings = {};\n\n constructor() {\n\n }\n ngOnInit() {\n\n\n this.itemList = [\n { \"id\": 1, \"itemName\": \"India\", \"category\": \"asia\" },\n { \"id\": 2, \"itemName\": \"Singapore\", \"category\": \"asia pacific\" },\n { \"id\": 3, \"itemName\": \"Germany\", \"category\": \"Europe\" },\n { \"id\": 4, \"itemName\": \"France\", \"category\": \"Europe\" },\n { \"id\": 5, \"itemName\": \"South Korea\", \"category\": \"asia\" },\n { \"id\": 6, \"itemName\": \"Sweden\", \"category\": \"Europe\" }\n ];\n\n this.selectedItems = [\n { \"id\": 1, \"itemName\": \"India\", \"category\": \"asia\" },\n { \"id\": 5, \"itemName\": \"South Korea\", \"category\": \"asia\" }\n ]\n this.settings = {\n singleSelection: false,\n text: \"Select Fields\",\n selectAllText: 'Select All',\n unSelectAllText: 'UnSelect All',\n searchPlaceholderText: 'Search Fields',\n enableSearchFilter: true,\n groupBy: \"category\",\n selectGroup: true,\n searchBy: [\"itemName\"]\n };\n }\n onItemSelect(item: any) {\n console.log(item);\n console.log(this.selectedItems);\n }\n OnItemDeSelect(item: any) {\n console.log(item);\n console.log(this.selectedItems);\n }\n onSelectAll(items: any) {\n console.log(items);\n }\n onDeSelectAll(items: any) {\n console.log(items);\n }\n onGroupSelect(selectedGroupItem){\n console.log(selectedGroupItem);\n }\n onGroupDeSelect(deselectedGroupItem){\n console.log(deselectedGroupItem);\n }\n onChange(e:any){\nconsole.log(e)\n }\n loadDataSet1(){\n this.selectedItems = [];\n this.itemList = [ { \"id\": 1, \"itemName\": \"Apple\", \"category\": \"fruits\" },\n { \"id\": 2, \"itemName\": \"Banana\", \"category\": \"fruits\" },\n { \"id\": 5, \"itemName\": \"Tomatoe\", \"category\": \"vegetables\" },\n { \"id\": 6, \"itemName\": \"Potatoe\", \"category\": \"vegetables\" }];\n }\n loadDataSet2(){\n this.selectedItems = [];\n this.itemList = [\n { \"id\": 1, \"itemName\": \"India\", \"category\": \"asia\" },\n { \"id\": 2, \"itemName\": \"Singapore\", \"category\": \"asia pacific\" },\n { \"id\": 3, \"itemName\": \"Germany\", \"category\": \"Europe\" },\n { \"id\": 4, \"itemName\": \"France\", \"category\": \"Europe\" },\n { \"id\": 5, \"itemName\": \"South Korea\", \"category\": \"asia\" },\n { \"id\": 6, \"itemName\": \"Sweden\", \"category\": \"Europe\" }\n ];\n }\n cssgist: boolean = false;\n title: string = \"Group By\";\n tsgist: string = \"CuppaLabs/f6c1328ade3201042a4b4d268a30ad8c\";\n htmlgist: string = \"CuppaLabs/eb78d42ab7971fda6493586e329bfdb8\";\n tstitle: string = \"groupBy.ts\"\n htmltitle: string = \"groupBy.html\";\n}\n","

{{title}}

\n
\n
\n \n
\nTotal Records : {{itemList.length}}\n
\n
\n \n
\n
\n

Code

\n\n\n \n \n \n \n \n \n \n \n \n \n \n\n","import { Component, OnInit } from '@angular/core';\n\n@Component({\n templateUrl: './views/lazyLoading.html'\n})\nexport class LazyLoadingExample implements OnInit {\n\n itemList = [];\n selectedItems = [];\n settings = {};\n public categories: any = [\"Indian\", \"American\", \"Canadian\", \"Chinese\"];\n public namesList:any[] = [\"Smith\",\"Johnson\",\"Williams\",\"Brown\",\"Jones\",\"Miller\",\"Davis\",\"Garcia\",\"Rodriguez\",\"Wilson\",\"Martinez\",\"Anderson\",\"Taylor\",\"Thomas\",\"Hernandez\",\"Moore\",\"Martin\",\"Jackson\",\"Thompson\",\"White\",\"Lopez\",\"Lee\",\"Gonzalez\",\"Harris\",\"Clark\",\"Lewis\",\"Robinson\",\"Walker\",\"Perez\",\"Hall\",\"Young\",\"Allen\",\"Sanchez\",\"Wright\",\"King\",\"Scott\",\"Green\",\"Baker\",\"Adams\",\"Nelson\",\"Hill\",\"Ramirez\",\"Campbell\",\"Mitchell\",\"Roberts\",\"Carter\",\"Phillips\",\"Evans\",\"Turner\",\"Torres\",\"Parker\",\"Collins\",\"Edwards\",\"Stewart\",\"Flores\",\"Morris\",\"Nguyen\",\"Murphy\",\"Rivera\",\"Cook\",\"Rogers\",\"Morgan\",\"Peterson\",\"Cooper\",\"Reed\",\"Bailey\",\"Bell\",\"Gomez\",\"Kelly\",\"Howard\",\"Ward\",\"Cox\",\"Diaz\",\"Richardson\",\"Wood\",\"Watson\",\"Brooks\",\"Bennett\",\"Gray\",\"James\",\"Reyes\",\"Cruz\",\"Hughes\",\"Price\",\"Myers\",\"Long\",\"Foster\",\"Sanders\",\"Ross\",\"Morales\",\"Powell\",\"Sullivan\",\"Russell\",\"Ortiz\",\"Jenkins\",\"Gutierrez\",\"Perry\",\"Butler\",\"Barnes\",\"Fisher\",\"Henderson\",\"Coleman\",\"Simmons\",\"Patterson\",\"Jordan\",\"Reynolds\",\"Hamilton\",\"Graham\",\"Kim\",\"Gonzales\",\"Alexander\",\"Ramos\",\"Wallace\",\"Griffin\",\"West\",\"Cole\",\"Hayes\",\"Chavez\",\"Gibson\",\"Bryant\",\"Ellis\",\"Stevens\",\"Murray\",\"Ford\",\"Marshall\",\"Owens\",\"Mcdonald\",\"Harrison\",\"Ruiz\",\"Kennedy\",\"Wells\",\"Alvarez\",\"Woods\",\"Mendoza\",\"Castillo\",\"Olson\",\"Webb\",\"Washington\",\"Tucker\",\"Freeman\",\"Burns\",\"Henry\",\"Vasquez\",\"Snyder\",\"Simpson\",\"Crawford\",\"Jimenez\",\"Porter\",\"Mason\",\"Shaw\",\"Gordon\",\"Wagner\",\"Hunter\",\"Romero\",\"Hicks\",\"Dixon\",\"Hunt\",\"Palmer\",\"Robertson\",\"Black\",\"Holmes\",\"Stone\",\"Meyer\",\"Boyd\",\"Mills\",\"Warren\",\"Fox\",\"Rose\",\"Rice\",\"Moreno\",\"Schmidt\",\"Patel\",\"Ferguson\",\"Nichols\",\"Herrera\",\"Medina\",\"Ryan\",\"Fernandez\",\"Weaver\",\"Daniels\",\"Stephens\",\"Gardner\",\"Payne\",\"Kelley\",\"Dunn\",\"Pierce\",\"Arnold\",\"Tran\",\"Spencer\",\"Peters\",\"Hawkins\",\"Grant\",\"Hansen\",\"Castro\",\"Hoffman\",\"Hart\",\"Elliott\",\"Cunningham\",\"Knight\",\"Bradley\",\"Carroll\",\"Hudson\",\"Duncan\",\"Armstrong\",\"Berry\",\"Andrews\",\"Johnston\",\"Ray\",\"Lane\",\"Riley\",\"Carpenter\",\"Perkins\",\"Aguilar\",\"Silva\",\"Richards\",\"Willis\",\"Matthews\",\"Chapman\",\"Lawrence\",\"Garza\",\"Vargas\",\"Watkins\",\"Wheeler\",\"Larson\",\"Carlson\",\"Harper\",\"George\",\"Greene\",\"Burke\",\"Guzman\",\"Morrison\",\"Munoz\",\"Jacobs\",\"Obrien\",\"Lawson\",\"Franklin\",\"Lynch\",\"Bishop\",\"Carr\",\"Salazar\",\"Austin\",\"Mendez\",\"Gilbert\",\"Jensen\",\"Williamson\",\"Montgomery\",\"Harvey\",\"Oliver\",\"Howell\",\"Dean\",\"Hanson\",\"Weber\",\"Garrett\",\"Sims\",\"Burton\",\"Fuller\",\"Soto\",\"Mccoy\",\"Welch\",\"Chen\",\"Schultz\",\"Walters\",\"Reid\",\"Fields\",\"Walsh\",\"Little\",\"Fowler\",\"Bowman\",\"Davidson\",\"May\",\"Day\",\"Schneider\",\"Newman\",\"Brewer\",\"Lucas\",\"Holland\",\"Wong\",\"Banks\",\"Santos\",\"Curtis\",\"Pearson\",\"Delgado\",\"Valdez\",\"Pena\",\"Rios\",\"Douglas\",\"Sandoval\",\"Barrett\",\"Hopkins\",\"Keller\",\"Guerrero\",\"Stanley\",\"Bates\",\"Alvarado\",\"Beck\",\"Ortega\",\"Wade\",\"Estrada\",\"Contreras\",\"Barnett\",\"Caldwell\",\"Santiago\",\"Lambert\",\"Powers\",\"Chambers\",\"Nunez\",\"Craig\",\"Leonard\",\"Lowe\",\"Rhodes\",\"Byrd\",\"Gregory\",\"Shelton\",\"Frazier\",\"Becker\",\"Maldonado\",\"Fleming\",\"Vega\",\"Sutton\",\"Cohen\",\"Jennings\",\"Parks\",\"Mcdaniel\",\"Watts\",\"Barker\",\"Norris\",\"Vaughn\",\"Vazquez\",\"Holt\",\"Schwartz\",\"Steele\",\"Benson\",\"Neal\",\"Dominguez\",\"Horton\",\"Terry\",\"Wolfe\",\"Hale\",\"Lyons\",\"Graves\",\"Haynes\",\"Miles\",\"Park\",\"Warner\",\"Padilla\",\"Bush\",\"Thornton\",\"Mccarthy\",\"Mann\",\"Zimmerman\",\"Erickson\",\"Fletcher\",\"Mckinney\",\"Page\",\"Dawson\",\"Joseph\",\"Marquez\",\"Reeves\",\"Klein\",\"Espinoza\",\"Baldwin\",\"Moran\",\"Love\",\"Robbins\",\"Higgins\",\"Ball\",\"Cortez\",\"Le\",\"Griffith\",\"Bowen\",\"Sharp\",\"Cummings\",\"Ramsey\",\"Hardy\",\"Swanson\",\"Barber\",\"Acosta\",\"Luna\",\"Chandler\",\"Blair\",\"Daniel\",\"Cross\",\"Simon\",\"Dennis\",\"Oconnor\",\"Quinn\",\"Gross\",\"Navarro\",\"Moss\",\"Fitzgerald\",\"Doyle\",\"Mclaughlin\",\"Rojas\",\"Rodgers\",\"Stevenson\",\"Singh\",\"Yang\",\"Figueroa\",\"Harmon\",\"Newton\",\"Paul\",\"Manning\",\"Garner\",\"Mcgee\",\"Reese\",\"Francis\",\"Burgess\",\"Adkins\",\"Goodman\",\"Curry\",\"Brady\",\"Christensen\",\"Potter\",\"Walton\",\"Goodwin\",\"Mullins\",\"Molina\",\"Webster\",\"Fischer\",\"Campos\",\"Avila\",\"Sherman\",\"Todd\",\"Chang\",\"Blake\",\"Malone\",\"Wolf\",\"Hodges\",\"Juarez\",\"Gill\",\"Farmer\",\"Hines\",\"Gallagher\",\"Duran\",\"Hubbard\",\"Cannon\",\"Miranda\",\"Wang\",\"Saunders\",\"Tate\",\"Mack\",\"Hammond\",\"Carrillo\",\"Townsend\",\"Wise\",\"Ingram\",\"Barton\",\"Mejia\",\"Ayala\",\"Schroeder\",\"Hampton\",\"Rowe\",\"Parsons\",\"Frank\",\"Waters\",\"Strickland\",\"Osborne\",\"Maxwell\",\"Chan\",\"Deleon\",\"Norman\",\"Harrington\",\"Casey\",\"Patton\",\"Logan\",\"Bowers\",\"Mueller\",\"Glover\",\"Floyd\",\"Hartman\",\"Buchanan\",\"Cobb\",\"French\",\"Kramer\",\"Mccormick\",\"Clarke\",\"Tyler\",\"Gibbs\",\"Moody\",\"Conner\",\"Sparks\",\"Mcguire\",\"Leon\",\"Bauer\",\"Norton\",\"Pope\",\"Flynn\",\"Hogan\",\"Robles\",\"Salinas\",\"Yates\",\"Lindsey\",\"Lloyd\",\"Marsh\",\"Mcbride\",\"Owen\",\"Solis\",\"Pham\",\"Lang\",\"Pratt\",\"Lara\",\"Brock\",\"Ballard\",\"Trujillo\",\"Shaffer\",\"Drake\",\"Roman\",\"Aguirre\",\"Morton\",\"Stokes\",\"Lamb\",\"Pacheco\",\"Patrick\",\"Cochran\",\"Shepherd\",\"Cain\",\"Burnett\",\"Hess\",\"Li\",\"Cervantes\",\"Olsen\",\"Briggs\",\"Ochoa\",\"Cabrera\",\"Velasquez\",\"Montoya\",\"Roth\",\"Meyers\",\"Cardenas\",\"Fuentes\",\"Weiss\",\"Hoover\",\"Wilkins\",\"Nicholson\",\"Underwood\",\"Short\",\"Carson\",\"Morrow\",\"Colon\",\"Holloway\",\"Summers\",\"Bryan\",\"Petersen\",\"Mckenzie\",\"Serrano\",\"Wilcox\",\"Carey\",\"Clayton\",\"Poole\",\"Calderon\",\"Gallegos\",\"Greer\",\"Rivas\",\"Guerra\",\"Decker\",\"Collier\",\"Wall\",\"Whitaker\",\"Bass\",\"Flowers\",\"Davenport\",\"Conley\",\"Houston\",\"Huff\",\"Copeland\",\"Hood\",\"Monroe\",\"Massey\",\"Roberson\",\"Combs\",\"Franco\",\"Larsen\",\"Pittman\",\"Randall\",\"Skinner\",\"Wilkinson\",\"Kirby\",\"Cameron\",\"Bridges\",\"Anthony\",\"Richard\",\"Kirk\",\"Bruce\",\"Singleton\",\"Mathis\",\"Bradford\",\"Boone\",\"Abbott\",\"Charles\",\"Allison\",\"Sweeney\",\"Atkinson\",\"Horn\",\"Jefferson\",\"Rosales\",\"York\",\"Christian\",\"Phelps\",\"Farrell\",\"Castaneda\",\"Nash\",\"Dickerson\",\"Bond\",\"Wyatt\",\"Foley\",\"Chase\",\"Gates\",\"Vincent\",\"Mathews\",\"Hodge\",\"Garrison\",\"Trevino\",\"Villarreal\",\"Heath\",\"Dalton\",\"Valencia\",\"Callahan\",\"Hensley\",\"Atkins\",\"Huffman\",\"Roy\",\"Boyer\",\"Shields\",\"Lin\",\"Hancock\",\"Grimes\",\"Glenn\",\"Cline\",\"Delacruz\",\"Camacho\",\"Dillon\",\"Parrish\",\"Oneill\",\"Melton\",\"Booth\",\"Kane\",\"Berg\",\"Harrell\",\"Pitts\",\"Savage\",\"Wiggins\",\"Brennan\",\"Salas\",\"Marks\",\"Russo\",\"Sawyer\",\"Baxter\",\"Golden\",\"Hutchinson\",\"Liu\",\"Walter\",\"Mcdowell\",\"Wiley\",\"Rich\",\"Humphrey\",\"Johns\",\"Koch\",\"Suarez\",\"Hobbs\",\"Beard\",\"Gilmore\",\"Ibarra\",\"Keith\",\"Macias\",\"Khan\",\"Andrade\",\"Ware\",\"Stephenson\",\"Henson\",\"Wilkerson\",\"Dyer\",\"Mcclure\",\"Blackwell\",\"Mercado\",\"Tanner\",\"Eaton\",\"Clay\",\"Barron\",\"Beasley\",\"Oneal\",\"Preston\",\"Small\",\"Wu\",\"Zamora\",\"Macdonald\",\"Vance\",\"Snow\",\"Mcclain\",\"Stafford\",\"Orozco\",\"Barry\",\"English\",\"Shannon\",\"Kline\",\"Jacobson\",\"Woodard\",\"Huang\",\"Kemp\",\"Mosley\",\"Prince\",\"Merritt\",\"Hurst\",\"Villanueva\",\"Roach\",\"Nolan\",\"Lam\",\"Yoder\",\"Mccullough\",\"Lester\",\"Santana\",\"Valenzuela\",\"Winters\",\"Barrera\",\"Leach\",\"Orr\",\"Berger\",\"Mckee\",\"Strong\",\"Conway\",\"Stein\",\"Whitehead\",\"Bullock\",\"Escobar\",\"Knox\",\"Meadows\",\"Solomon\",\"Velez\",\"Odonnell\",\"Kerr\",\"Stout\",\"Blankenship\",\"Browning\",\"Kent\",\"Lozano\",\"Bartlett\",\"Pruitt\",\"Buck\",\"Barr\",\"Gaines\",\"Durham\",\"Gentry\",\"Mcintyre\",\"Sloan\",\"Melendez\",\"Rocha\",\"Herman\",\"Sexton\",\"Moon\",\"Hendricks\",\"Rangel\",\"Stark\",\"Lowery\",\"Hardin\",\"Hull\",\"Sellers\",\"Ellison\",\"Calhoun\",\"Gillespie\",\"Mora\",\"Knapp\",\"Mccall\",\"Morse\",\"Dorsey\",\"Weeks\",\"Nielsen\",\"Livingston\",\"Leblanc\",\"Mclean\",\"Bradshaw\",\"Glass\",\"Middleton\",\"Buckley\",\"Schaefer\",\"Frost\",\"Howe\",\"House\",\"Mcintosh\",\"Ho\",\"Pennington\",\"Reilly\",\"Hebert\",\"Mcfarland\",\"Hickman\",\"Noble\",\"Spears\",\"Conrad\",\"Arias\",\"Galvan\",\"Velazquez\",\"Huynh\",\"Frederick\",\"Randolph\",\"Cantu\",\"Fitzpatrick\",\"Mahoney\",\"Peck\",\"Villa\",\"Michael\",\"Donovan\",\"Mcconnell\",\"Walls\",\"Boyle\",\"Mayer\",\"Zuniga\",\"Giles\",\"Pineda\",\"Pace\",\"Hurley\",\"Mays\",\"Mcmillan\",\"Crosby\",\"Ayers\",\"Case\",\"Bentley\",\"Shepard\",\"Everett\",\"Pugh\",\"David\",\"Mcmahon\",\"Dunlap\",\"Bender\",\"Hahn\",\"Harding\",\"Acevedo\",\"Raymond\",\"Blackburn\",\"Duffy\",\"Landry\",\"Dougherty\",\"Bautista\",\"Shah\",\"Potts\",\"Arroyo\",\"Valentine\",\"Meza\",\"Gould\",\"Vaughan\",\"Fry\",\"Rush\",\"Avery\",\"Herring\",\"Dodson\",\"Clements\",\"Sampson\",\"Tapia\",\"Bean\",\"Lynn\",\"Crane\",\"Farley\",\"Cisneros\",\"Benton\",\"Ashley\",\"Mckay\",\"Finley\",\"Best\",\"Blevins\",\"Friedman\",\"Moses\",\"Sosa\",\"Blanchard\",\"Huber\",\"Frye\",\"Krueger\",\"Bernard\",\"Rosario\",\"Rubio\",\"Mullen\",\"Benjamin\",\"Haley\",\"Chung\",\"Moyer\",\"Choi\",\"Horne\",\"Yu\",\"Woodward\",\"Ali\",\"Nixon\",\"Hayden\",\"Rivers\",\"Estes\",\"Mccarty\",\"Richmond\",\"Stuart\",\"Maynard\",\"Brandt\",\"Oconnell\",\"Hanna\",\"Sanford\",\"Sheppard\",\"Church\",\"Burch\",\"Levy\",\"Rasmussen\",\"Coffey\",\"Ponce\",\"Faulkner\",\"Donaldson\",\"Schmitt\",\"Novak\",\"Costa\",\"Montes\",\"Booker\",\"Cordova\",\"Waller\",\"Arellano\",\"Maddox\",\"Mata\",\"Bonilla\",\"Stanton\",\"Compton\",\"Kaufman\",\"Dudley\",\"Mcpherson\",\"Beltran\",\"Dickson\",\"Mccann\",\"Villegas\",\"Proctor\",\"Hester\",\"Cantrell\",\"Daugherty\",\"Cherry\",\"Bray\",\"Davila\",\"Rowland\",\"Levine\",\"Madden\",\"Spence\",\"Good\",\"Irwin\",\"Werner\",\"Krause\",\"Petty\",\"Whitney\",\"Baird\",\"Hooper\",\"Pollard\",\"Zavala\",\"Jarvis\",\"Holden\",\"Haas\",\"Hendrix\",\"Mcgrath\",\"Bird\",\"Lucero\",\"Terrell\",\"Riggs\",\"Joyce\",\"Mercer\",\"Rollins\",\"Galloway\",\"Duke\",\"Odom\",\"Andersen\",\"Downs\",\"Hatfield\",\"Benitez\",\"Archer\",\"Huerta\",\"Travis\",\"Mcneil\",\"Hinton\",\"Zhang\",\"Hays\",\"Mayo\",\"Fritz\",\"Branch\",\"Mooney\",\"Ewing\",\"Ritter\",\"Esparza\",\"Frey\",\"Braun\",\"Gay\",\"Riddle\",\"Haney\",\"Kaiser\",\"Holder\",\"Chaney\",\"Mcknight\",\"Gamble\",\"Vang\",\"Cooley\",\"Carney\",\"Cowan\",\"Forbes\",\"Ferrell\",\"Davies\",\"Barajas\",\"Shea\",\"Osborn\",\"Bright\",\"Cuevas\",\"Bolton\",\"Murillo\",\"Lutz\",\"Duarte\",\"Kidd\",\"Key\",\"Cooke\"];\n constructor() { }\n ngOnInit() {\n\n this.itemList = [];\n for(var t=1;t<=1000;t++){\n var tempObj = {\"id\":0,\"itemName\":\"\",\"category\":\"\"};\n tempObj.id = t;\n tempObj.itemName= this.namesList[Math.floor(Math.random()*this.namesList.length)];\n tempObj.category= this.categories[Math.floor(Math.random()*this.categories.length)];\n this.itemList.push(tempObj);\n }\n\n this.selectedItems = [];\n\n this.settings = {\n text: \"Select Items\",\n selectAllText: 'Select All',\n unSelectAllText: 'UnSelect All',\n classes: \"myclass custom-class\",\n enableSearchFilter: true,\n lazyLoading: true,\n badgeShowLimit: 4\n\n };\n }\n onItemSelect(item: any) {\n console.log(item);\n console.log(this.selectedItems);\n }\n OnItemDeSelect(item: any) {\n console.log(item);\n console.log(this.selectedItems);\n }\n onSelectAll(items: any) {\n console.log(items);\n }\n onDeSelectAll(items: any) {\n console.log(items);\n }\n onScroll(e:any){\n console.log(e);\n }\n onScrollToEnd(e:any){\n console.log(e);\n }\n changeData() {\n this.selectedItems = [];\n }\n cssgist: boolean = false;\n title: string = \"Virtual scrolling - Lazy load large data sets\";\n tsgist: string = \"CuppaLabs/aab6c8b30a6901af01249c474f3f0cbd\";\n htmlgist: string = \"CuppaLabs/c77fea947ef053aa22973fcd9c7c612a\";\n tstitle: string = \"lazyLoading.ts\"\n htmltitle: string = \"lazyLoading.html\";\n}\n","

{{title}}

\n
\n\n
\n \n
\nTotal Records : {{itemList.length}}\n
\n
\n \n
\n
\n

Code

\n\n\n \n \n \n \n \n \n \n \n \n \n \n\n","import { Component, OnInit } from '@angular/core';\nimport { MockService } from './mock-data';\n\n@Component({\n templateUrl: './views/lazyLoadingRemoteData.html'\n})\nexport class LazyLoadingRemoteDataExample implements OnInit {\n\n itemList = [];\n selectedItems = [];\n settings = {};\n loading = false;\n indices: any;\n readonly bufferSize: number = 10;\n\n constructor(private appService: MockService) { }\n ngOnInit() {\n this.itemList = [];\n this.selectedItems = [];\n\n this.settings = {\n text: \"Select Items\",\n selectAllText: 'Select All',\n unSelectAllText: 'UnSelect All',\n classes: \"myclass custom-class\",\n enableSearchFilter: true,\n lazyLoading: true,\n labelKey: 'name',\n limitSelection: 3\n\n };\n }\n onItemSelect(item: any) {\n console.log(item);\n console.log(this.selectedItems);\n }\n OnItemDeSelect(item: any) {\n console.log(item);\n console.log(this.selectedItems);\n }\n onSelectAll(items: any) {\n console.log(items);\n }\n onDeSelectAll(items: any) {\n console.log(items);\n }\n onScroll(e: any) {\n console.log(e);\n }\n onOpen(e:any){\n console.log(this.itemList);\n }\n fetchMore(event: any) {\n if (event.endIndex === this.itemList.length - 1) {\n this.loading = true;\n this.appService.getChunkData(this.itemList.length, this.bufferSize).then(chunk => {\n this.itemList = this.itemList.concat(chunk);\n this.loading = false;\n }, () => this.loading = false);\n }\n }\n changeData() {\n this.selectedItems = [];\n }\n cssgist: boolean = false;\n title: string = \"Lazy loading - Remote Data API\";\n tsgist: string = \"CuppaLabs/3833720c12e23f6c8ee5fd870e38ad5b\";\n htmlgist: string = \"CuppaLabs/72ebd8cfa40a23a74ccbeda6de98a1e8\";\n tstitle: string = \"lazyLoadingRemoteData.ts\"\n htmltitle: string = \"lazyLoadingRemoteData.html\";\n}\n","import { Component, OnInit } from '@angular/core';\n\n@Component({\n templateUrl: './views/view.html'\n})\nexport class LimitBadgesExample implements OnInit {\n\n itemList = [];\n selectedItems = [];\n settings = {};\n\n constructor() {\n\n }\n ngOnInit() {\n\n\n this.itemList = [\n { \"id\": 1, \"itemName\": \"India\" },\n { \"id\": 2, \"itemName\": \"Singapore\" },\n { \"id\": 3, \"itemName\": \"Australia\" },\n { \"id\": 4, \"itemName\": \"Canada\" },\n { \"id\": 5, \"itemName\": \"South Korea\" },\n { \"id\": 6, \"itemName\": \"Brazil\" }\n ];\n\n this.selectedItems = [\n { \"id\": 1, \"itemName\": \"India\" },\n { \"id\": 2, \"itemName\": \"Singapore\" },\n { \"id\": 3, \"itemName\": \"Australia\" },\n { \"id\": 4, \"itemName\": \"Canada\" }];\n this.settings = {\n singleSelection: false,\n text: \"Select Countries\",\n selectAllText: 'Select All',\n unSelectAllText: 'UnSelect All',\n enableSearchFilter: true,\n badgeShowLimit: 3\n };\n }\n onItemSelect(item: any) {\n console.log(item);\n console.log(this.selectedItems);\n }\n OnItemDeSelect(item: any) {\n console.log(item);\n console.log(this.selectedItems);\n }\n onSelectAll(items: any) {\n console.log(items);\n }\n onDeSelectAll(items: any) {\n console.log(items);\n }\n cssgist: boolean = false;\n title: string = \"Limit badges length\";\n tsgist: string = \"CuppaLabs/00a25e7f8f70199f6571ac9fccbb94c2\";\n htmlgist: string = \"CuppaLabs/eb78d42ab7971fda6493586e329bfdb8\";\n tstitle: string = \"limitBadges.ts\"\n htmltitle: string = \"limitBadges.html\";\n}\n","import { Component, OnInit } from '@angular/core';\n\n@Component({\n templateUrl: './views/view.html'\n})\nexport class LimitSelectionExample implements OnInit {\n\n itemList = [];\n selectedItems = [];\n settings = {};\n\n constructor() {\n\n }\n ngOnInit() {\n\n\n this.itemList = [\n { \"id\": 1, \"itemName\": \"India\" },\n { \"id\": 2, \"itemName\": \"Singapore\" },\n { \"id\": 3, \"itemName\": \"Australia\" },\n { \"id\": 4, \"itemName\": \"Canada\" },\n { \"id\": 5, \"itemName\": \"South Korea\" },\n { \"id\": 6, \"itemName\": \"Brazil\" }\n ];\n\n this.selectedItems = [\n { \"id\": 1, \"itemName\": \"India\" },\n { \"id\": 2, \"itemName\": \"Singapore\" },\n { \"id\": 3, \"itemName\": \"Australia\" },\n { \"id\": 4, \"itemName\": \"Canada\" }];\n this.settings = {\n text: \"Select Countries\",\n selectAllText: 'Select All',\n unSelectAllText: 'UnSelect All',\n enableSearchFilter: false,\n classes: \"myclass custom-class\",\n limitSelection: 4\n };\n }\n onItemSelect(item: any) {\n console.log(item);\n console.log(this.selectedItems);\n }\n OnItemDeSelect(item: any) {\n console.log(item);\n console.log(this.selectedItems);\n }\n onSelectAll(items: any) {\n console.log(items);\n }\n onDeSelectAll(items: any) {\n console.log(items);\n }\n cssgist: boolean = false;\n title: string = \"Limit Selection\";\n tsgist: string = \"CuppaLabs/70667b7d4dd4270bb290685e036a379a\";\n htmlgist: string = \"CuppaLabs/eb78d42ab7971fda6493586e329bfdb8\";\n tstitle: string = \"limitSelection.ts\"\n htmltitle: string = \"limitSelection.html\";\n}\n","import { Injectable } from '@angular/core';\nimport { Observable } from \"rxjs\";\n@Injectable()\nexport class MockService {\n\n itemList = [];\n DATA = [{ \"id\": \"PBMMedAdhr\", \"name\": \"PBM Medication Adherence\" }, { \"id\": \"GapsInCare\", \"name\": \"Gaps In Care\" }, { \"id\": \"UCTest1\", \"name\": \"Use Case Test1\" }, { \"id\": \"BASICSAVE\", \"name\": \"A generic alternative or 30-90 day dispense opport\" }, { \"id\": \"ADVSAVE\", \"name\": \"An advnaced generic alternative or 30-90 day dispe\" }, { \"id\": \"AttAlert\", \"name\": \"Attachment Alert\" }, { \"id\": \"PatSave\", \"name\": \"Patient savings\" }, { \"id\": \"UCTest2\", \"name\": \"Use Case Test 2\" }, { \"id\": \"UCTest3\", \"name\": \"Use Case Test 3\" }, { \"id\": \"UCTest4\", \"name\": \"Use Case Test 4\" }, { \"id\": \"UCTest5\", \"name\": \"Use Case Test 5\" }, { \"id\": \"UCTest6\", \"name\": \"Use Case Test 6\" }, { \"id\": \"UCTest7\", \"name\": \"Use Case Test 7\" }, { \"id\": \"UCTest9\", \"name\": \"Use Case Test 9\" }, { \"id\": \"UCTest#Ten\", \"name\": \"Use Case Test 10\" }, { \"id\": \"UCTest8\", \"name\": \"Use Case Test 8\" }, { \"id\": \"UCTest11\", \"name\": \"Test Use Case 11\" }, { \"id\": \"UCTest12\", \"name\": \"Test Use Case 12\" }, { \"id\": \"UCTest13\", \"name\": \"Test Use Case 13\" }, { \"id\": \"PNLIMMUN\", \"name\": \"PNL Immunization\" }, { \"id\": \"TrustBrkr\", \"name\": \"Identity Services\" }, { \"id\": \"RTBC\", \"name\": \"real time benefit check for 90 day at retail\" }];\n public categories: any = [\"Indian\", \"American\", \"Canadian\", \"Chinese\"];\n public namesList:any[] = [\"Smith\",\"Johnson\",\"Williams\",\"Brown\",\"Jones\",\"Miller\",\"Davis\",\"Garcia\",\"Rodriguez\",\"Wilson\",\"Martinez\",\"Anderson\",\"Taylor\",\"Thomas\",\"Hernandez\",\"Moore\",\"Martin\",\"Jackson\",\"Thompson\",\"White\",\"Lopez\",\"Lee\",\"Gonzalez\",\"Harris\",\"Clark\",\"Lewis\",\"Robinson\",\"Walker\",\"Perez\",\"Hall\",\"Young\",\"Allen\",\"Sanchez\",\"Wright\",\"King\",\"Scott\",\"Green\",\"Baker\",\"Adams\",\"Nelson\",\"Hill\",\"Ramirez\",\"Campbell\",\"Mitchell\",\"Roberts\",\"Carter\",\"Phillips\",\"Evans\",\"Turner\",\"Torres\",\"Parker\",\"Collins\",\"Edwards\",\"Stewart\",\"Flores\",\"Morris\",\"Nguyen\",\"Murphy\",\"Rivera\",\"Cook\",\"Rogers\",\"Morgan\",\"Peterson\",\"Cooper\",\"Reed\",\"Bailey\",\"Bell\",\"Gomez\",\"Kelly\",\"Howard\",\"Ward\",\"Cox\",\"Diaz\",\"Richardson\",\"Wood\",\"Watson\",\"Brooks\",\"Bennett\",\"Gray\",\"James\",\"Reyes\",\"Cruz\",\"Hughes\",\"Price\",\"Myers\",\"Long\",\"Foster\",\"Sanders\",\"Ross\",\"Morales\",\"Powell\",\"Sullivan\",\"Russell\",\"Ortiz\",\"Jenkins\",\"Gutierrez\",\"Perry\",\"Butler\",\"Barnes\",\"Fisher\",\"Henderson\",\"Coleman\",\"Simmons\",\"Patterson\",\"Jordan\",\"Reynolds\",\"Hamilton\",\"Graham\",\"Kim\",\"Gonzales\",\"Alexander\",\"Ramos\",\"Wallace\",\"Griffin\",\"West\",\"Cole\",\"Hayes\",\"Chavez\",\"Gibson\",\"Bryant\",\"Ellis\",\"Stevens\",\"Murray\",\"Ford\",\"Marshall\",\"Owens\",\"Mcdonald\",\"Harrison\",\"Ruiz\",\"Kennedy\",\"Wells\",\"Alvarez\",\"Woods\",\"Mendoza\",\"Castillo\",\"Olson\",\"Webb\",\"Washington\",\"Tucker\",\"Freeman\",\"Burns\",\"Henry\",\"Vasquez\",\"Snyder\",\"Simpson\",\"Crawford\",\"Jimenez\",\"Porter\",\"Mason\",\"Shaw\",\"Gordon\",\"Wagner\",\"Hunter\",\"Romero\",\"Hicks\",\"Dixon\",\"Hunt\",\"Palmer\",\"Robertson\",\"Black\",\"Holmes\",\"Stone\",\"Meyer\",\"Boyd\",\"Mills\",\"Warren\",\"Fox\",\"Rose\",\"Rice\",\"Moreno\",\"Schmidt\",\"Patel\",\"Ferguson\",\"Nichols\",\"Herrera\",\"Medina\",\"Ryan\",\"Fernandez\",\"Weaver\",\"Daniels\",\"Stephens\",\"Gardner\",\"Payne\",\"Kelley\",\"Dunn\",\"Pierce\",\"Arnold\",\"Tran\",\"Spencer\",\"Peters\",\"Hawkins\",\"Grant\",\"Hansen\",\"Castro\",\"Hoffman\",\"Hart\",\"Elliott\",\"Cunningham\",\"Knight\",\"Bradley\",\"Carroll\",\"Hudson\",\"Duncan\",\"Armstrong\",\"Berry\",\"Andrews\",\"Johnston\",\"Ray\",\"Lane\",\"Riley\",\"Carpenter\",\"Perkins\",\"Aguilar\",\"Silva\",\"Richards\",\"Willis\",\"Matthews\",\"Chapman\",\"Lawrence\",\"Garza\",\"Vargas\",\"Watkins\",\"Wheeler\",\"Larson\",\"Carlson\",\"Harper\",\"George\",\"Greene\",\"Burke\",\"Guzman\",\"Morrison\",\"Munoz\",\"Jacobs\",\"Obrien\",\"Lawson\",\"Franklin\",\"Lynch\",\"Bishop\",\"Carr\",\"Salazar\",\"Austin\",\"Mendez\",\"Gilbert\",\"Jensen\",\"Williamson\",\"Montgomery\",\"Harvey\",\"Oliver\",\"Howell\",\"Dean\",\"Hanson\",\"Weber\",\"Garrett\",\"Sims\",\"Burton\",\"Fuller\",\"Soto\",\"Mccoy\",\"Welch\",\"Chen\",\"Schultz\",\"Walters\",\"Reid\",\"Fields\",\"Walsh\",\"Little\",\"Fowler\",\"Bowman\",\"Davidson\",\"May\",\"Day\",\"Schneider\",\"Newman\",\"Brewer\",\"Lucas\",\"Holland\",\"Wong\",\"Banks\",\"Santos\",\"Curtis\",\"Pearson\",\"Delgado\",\"Valdez\",\"Pena\",\"Rios\",\"Douglas\",\"Sandoval\",\"Barrett\",\"Hopkins\",\"Keller\",\"Guerrero\",\"Stanley\",\"Bates\",\"Alvarado\",\"Beck\",\"Ortega\",\"Wade\",\"Estrada\",\"Contreras\",\"Barnett\",\"Caldwell\",\"Santiago\",\"Lambert\",\"Powers\",\"Chambers\",\"Nunez\",\"Craig\",\"Leonard\",\"Lowe\",\"Rhodes\",\"Byrd\",\"Gregory\",\"Shelton\",\"Frazier\",\"Becker\",\"Maldonado\",\"Fleming\",\"Vega\",\"Sutton\",\"Cohen\",\"Jennings\",\"Parks\",\"Mcdaniel\",\"Watts\",\"Barker\",\"Norris\",\"Vaughn\",\"Vazquez\",\"Holt\",\"Schwartz\",\"Steele\",\"Benson\",\"Neal\",\"Dominguez\",\"Horton\",\"Terry\",\"Wolfe\",\"Hale\",\"Lyons\",\"Graves\",\"Haynes\",\"Miles\",\"Park\",\"Warner\",\"Padilla\",\"Bush\",\"Thornton\",\"Mccarthy\",\"Mann\",\"Zimmerman\",\"Erickson\",\"Fletcher\",\"Mckinney\",\"Page\",\"Dawson\",\"Joseph\",\"Marquez\",\"Reeves\",\"Klein\",\"Espinoza\",\"Baldwin\",\"Moran\",\"Love\",\"Robbins\",\"Higgins\",\"Ball\",\"Cortez\",\"Le\",\"Griffith\",\"Bowen\",\"Sharp\",\"Cummings\",\"Ramsey\",\"Hardy\",\"Swanson\",\"Barber\",\"Acosta\",\"Luna\",\"Chandler\",\"Blair\",\"Daniel\",\"Cross\",\"Simon\",\"Dennis\",\"Oconnor\",\"Quinn\",\"Gross\",\"Navarro\",\"Moss\",\"Fitzgerald\",\"Doyle\",\"Mclaughlin\",\"Rojas\",\"Rodgers\",\"Stevenson\",\"Singh\",\"Yang\",\"Figueroa\",\"Harmon\",\"Newton\",\"Paul\",\"Manning\",\"Garner\",\"Mcgee\",\"Reese\",\"Francis\",\"Burgess\",\"Adkins\",\"Goodman\",\"Curry\",\"Brady\",\"Christensen\",\"Potter\",\"Walton\",\"Goodwin\",\"Mullins\",\"Molina\",\"Webster\",\"Fischer\",\"Campos\",\"Avila\",\"Sherman\",\"Todd\",\"Chang\",\"Blake\",\"Malone\",\"Wolf\",\"Hodges\",\"Juarez\",\"Gill\",\"Farmer\",\"Hines\",\"Gallagher\",\"Duran\",\"Hubbard\",\"Cannon\",\"Miranda\",\"Wang\",\"Saunders\",\"Tate\",\"Mack\",\"Hammond\",\"Carrillo\",\"Townsend\",\"Wise\",\"Ingram\",\"Barton\",\"Mejia\",\"Ayala\",\"Schroeder\",\"Hampton\",\"Rowe\",\"Parsons\",\"Frank\",\"Waters\",\"Strickland\",\"Osborne\",\"Maxwell\",\"Chan\",\"Deleon\",\"Norman\",\"Harrington\",\"Casey\",\"Patton\",\"Logan\",\"Bowers\",\"Mueller\",\"Glover\",\"Floyd\",\"Hartman\",\"Buchanan\",\"Cobb\",\"French\",\"Kramer\",\"Mccormick\",\"Clarke\",\"Tyler\",\"Gibbs\",\"Moody\",\"Conner\",\"Sparks\",\"Mcguire\",\"Leon\",\"Bauer\",\"Norton\",\"Pope\",\"Flynn\",\"Hogan\",\"Robles\",\"Salinas\",\"Yates\",\"Lindsey\",\"Lloyd\",\"Marsh\",\"Mcbride\",\"Owen\",\"Solis\",\"Pham\",\"Lang\",\"Pratt\",\"Lara\",\"Brock\",\"Ballard\",\"Trujillo\",\"Shaffer\",\"Drake\",\"Roman\",\"Aguirre\",\"Morton\",\"Stokes\",\"Lamb\",\"Pacheco\",\"Patrick\",\"Cochran\",\"Shepherd\",\"Cain\",\"Burnett\",\"Hess\",\"Li\",\"Cervantes\",\"Olsen\",\"Briggs\",\"Ochoa\",\"Cabrera\",\"Velasquez\",\"Montoya\",\"Roth\",\"Meyers\",\"Cardenas\",\"Fuentes\",\"Weiss\",\"Hoover\",\"Wilkins\",\"Nicholson\",\"Underwood\",\"Short\",\"Carson\",\"Morrow\",\"Colon\",\"Holloway\",\"Summers\",\"Bryan\",\"Petersen\",\"Mckenzie\",\"Serrano\",\"Wilcox\",\"Carey\",\"Clayton\",\"Poole\",\"Calderon\",\"Gallegos\",\"Greer\",\"Rivas\",\"Guerra\",\"Decker\",\"Collier\",\"Wall\",\"Whitaker\",\"Bass\",\"Flowers\",\"Davenport\",\"Conley\",\"Houston\",\"Huff\",\"Copeland\",\"Hood\",\"Monroe\",\"Massey\",\"Roberson\",\"Combs\",\"Franco\",\"Larsen\",\"Pittman\",\"Randall\",\"Skinner\",\"Wilkinson\",\"Kirby\",\"Cameron\",\"Bridges\",\"Anthony\",\"Richard\",\"Kirk\",\"Bruce\",\"Singleton\",\"Mathis\",\"Bradford\",\"Boone\",\"Abbott\",\"Charles\",\"Allison\",\"Sweeney\",\"Atkinson\",\"Horn\",\"Jefferson\",\"Rosales\",\"York\",\"Christian\",\"Phelps\",\"Farrell\",\"Castaneda\",\"Nash\",\"Dickerson\",\"Bond\",\"Wyatt\",\"Foley\",\"Chase\",\"Gates\",\"Vincent\",\"Mathews\",\"Hodge\",\"Garrison\",\"Trevino\",\"Villarreal\",\"Heath\",\"Dalton\",\"Valencia\",\"Callahan\",\"Hensley\",\"Atkins\",\"Huffman\",\"Roy\",\"Boyer\",\"Shields\",\"Lin\",\"Hancock\",\"Grimes\",\"Glenn\",\"Cline\",\"Delacruz\",\"Camacho\",\"Dillon\",\"Parrish\",\"Oneill\",\"Melton\",\"Booth\",\"Kane\",\"Berg\",\"Harrell\",\"Pitts\",\"Savage\",\"Wiggins\",\"Brennan\",\"Salas\",\"Marks\",\"Russo\",\"Sawyer\",\"Baxter\",\"Golden\",\"Hutchinson\",\"Liu\",\"Walter\",\"Mcdowell\",\"Wiley\",\"Rich\",\"Humphrey\",\"Johns\",\"Koch\",\"Suarez\",\"Hobbs\",\"Beard\",\"Gilmore\",\"Ibarra\",\"Keith\",\"Macias\",\"Khan\",\"Andrade\",\"Ware\",\"Stephenson\",\"Henson\",\"Wilkerson\",\"Dyer\",\"Mcclure\",\"Blackwell\",\"Mercado\",\"Tanner\",\"Eaton\",\"Clay\",\"Barron\",\"Beasley\",\"Oneal\",\"Preston\",\"Small\",\"Wu\",\"Zamora\",\"Macdonald\",\"Vance\",\"Snow\",\"Mcclain\",\"Stafford\",\"Orozco\",\"Barry\",\"English\",\"Shannon\",\"Kline\",\"Jacobson\",\"Woodard\",\"Huang\",\"Kemp\",\"Mosley\",\"Prince\",\"Merritt\",\"Hurst\",\"Villanueva\",\"Roach\",\"Nolan\",\"Lam\",\"Yoder\",\"Mccullough\",\"Lester\",\"Santana\",\"Valenzuela\",\"Winters\",\"Barrera\",\"Leach\",\"Orr\",\"Berger\",\"Mckee\",\"Strong\",\"Conway\",\"Stein\",\"Whitehead\",\"Bullock\",\"Escobar\",\"Knox\",\"Meadows\",\"Solomon\",\"Velez\",\"Odonnell\",\"Kerr\",\"Stout\",\"Blankenship\",\"Browning\",\"Kent\",\"Lozano\",\"Bartlett\",\"Pruitt\",\"Buck\",\"Barr\",\"Gaines\",\"Durham\",\"Gentry\",\"Mcintyre\",\"Sloan\",\"Melendez\",\"Rocha\",\"Herman\",\"Sexton\",\"Moon\",\"Hendricks\",\"Rangel\",\"Stark\",\"Lowery\",\"Hardin\",\"Hull\",\"Sellers\",\"Ellison\",\"Calhoun\",\"Gillespie\",\"Mora\",\"Knapp\",\"Mccall\",\"Morse\",\"Dorsey\",\"Weeks\",\"Nielsen\",\"Livingston\",\"Leblanc\",\"Mclean\",\"Bradshaw\",\"Glass\",\"Middleton\",\"Buckley\",\"Schaefer\",\"Frost\",\"Howe\",\"House\",\"Mcintosh\",\"Ho\",\"Pennington\",\"Reilly\",\"Hebert\",\"Mcfarland\",\"Hickman\",\"Noble\",\"Spears\",\"Conrad\",\"Arias\",\"Galvan\",\"Velazquez\",\"Huynh\",\"Frederick\",\"Randolph\",\"Cantu\",\"Fitzpatrick\",\"Mahoney\",\"Peck\",\"Villa\",\"Michael\",\"Donovan\",\"Mcconnell\",\"Walls\",\"Boyle\",\"Mayer\",\"Zuniga\",\"Giles\",\"Pineda\",\"Pace\",\"Hurley\",\"Mays\",\"Mcmillan\",\"Crosby\",\"Ayers\",\"Case\",\"Bentley\",\"Shepard\",\"Everett\",\"Pugh\",\"David\",\"Mcmahon\",\"Dunlap\",\"Bender\",\"Hahn\",\"Harding\",\"Acevedo\",\"Raymond\",\"Blackburn\",\"Duffy\",\"Landry\",\"Dougherty\",\"Bautista\",\"Shah\",\"Potts\",\"Arroyo\",\"Valentine\",\"Meza\",\"Gould\",\"Vaughan\",\"Fry\",\"Rush\",\"Avery\",\"Herring\",\"Dodson\",\"Clements\",\"Sampson\",\"Tapia\",\"Bean\",\"Lynn\",\"Crane\",\"Farley\",\"Cisneros\",\"Benton\",\"Ashley\",\"Mckay\",\"Finley\",\"Best\",\"Blevins\",\"Friedman\",\"Moses\",\"Sosa\",\"Blanchard\",\"Huber\",\"Frye\",\"Krueger\",\"Bernard\",\"Rosario\",\"Rubio\",\"Mullen\",\"Benjamin\",\"Haley\",\"Chung\",\"Moyer\",\"Choi\",\"Horne\",\"Yu\",\"Woodward\",\"Ali\",\"Nixon\",\"Hayden\",\"Rivers\",\"Estes\",\"Mccarty\",\"Richmond\",\"Stuart\",\"Maynard\",\"Brandt\",\"Oconnell\",\"Hanna\",\"Sanford\",\"Sheppard\",\"Church\",\"Burch\",\"Levy\",\"Rasmussen\",\"Coffey\",\"Ponce\",\"Faulkner\",\"Donaldson\",\"Schmitt\",\"Novak\",\"Costa\",\"Montes\",\"Booker\",\"Cordova\",\"Waller\",\"Arellano\",\"Maddox\",\"Mata\",\"Bonilla\",\"Stanton\",\"Compton\",\"Kaufman\",\"Dudley\",\"Mcpherson\",\"Beltran\",\"Dickson\",\"Mccann\",\"Villegas\",\"Proctor\",\"Hester\",\"Cantrell\",\"Daugherty\",\"Cherry\",\"Bray\",\"Davila\",\"Rowland\",\"Levine\",\"Madden\",\"Spence\",\"Good\",\"Irwin\",\"Werner\",\"Krause\",\"Petty\",\"Whitney\",\"Baird\",\"Hooper\",\"Pollard\",\"Zavala\",\"Jarvis\",\"Holden\",\"Haas\",\"Hendrix\",\"Mcgrath\",\"Bird\",\"Lucero\",\"Terrell\",\"Riggs\",\"Joyce\",\"Mercer\",\"Rollins\",\"Galloway\",\"Duke\",\"Odom\",\"Andersen\",\"Downs\",\"Hatfield\",\"Benitez\",\"Archer\",\"Huerta\",\"Travis\",\"Mcneil\",\"Hinton\",\"Zhang\",\"Hays\",\"Mayo\",\"Fritz\",\"Branch\",\"Mooney\",\"Ewing\",\"Ritter\",\"Esparza\",\"Frey\",\"Braun\",\"Gay\",\"Riddle\",\"Haney\",\"Kaiser\",\"Holder\",\"Chaney\",\"Mcknight\",\"Gamble\",\"Vang\",\"Cooley\",\"Carney\",\"Cowan\",\"Forbes\",\"Ferrell\",\"Davies\",\"Barajas\",\"Shea\",\"Osborn\",\"Bright\",\"Cuevas\",\"Bolton\",\"Murillo\",\"Lutz\",\"Duarte\",\"Kidd\",\"Key\",\"Cooke\"];\n timer:any;\n constructor() {\n for(var t=1;t<=100;t++){\n var tempObj = {\"id\":0,\"name\":\"\",\"category\":\"\"};\n tempObj.id = t;\n tempObj.name= this.namesList[Math.floor(Math.random()*this.namesList.length)];\n tempObj.category= this.categories[Math.floor(Math.random()*this.categories.length)];\n this.itemList.push(tempObj);\n }\n }\n\n getDirectories(): Observable> {\n return Observable.create(\n (observer) => {\n\n return new Promise(resolve => setTimeout(() => {\n console.log(\"directoriesLoaded\");\n resolve(this.DATA);\n }, 1000)).then((response) => {\n observer.next(response);\n observer.complete();\n });\n }\n );\n }\n getChunkData(skip: number, limit: number): Promise {\n return new Promise((resolve, reject) => {\n clearTimeout(this.timer);\n this.timer = setTimeout(() => {\n if (skip < this.itemList.length) {\n return resolve(this.itemList.slice(skip, skip + limit));\n }\n reject();\n }, 1000 + Math.random() * 1000);\n });\n }\n\n getUseCases(): Observable> {\n return Observable.create(\n (observer) => {\n return new Promise(resolve => setTimeout(() => {\n console.log(\"useCasesLoaded\");\n resolve(this.DATA);\n }, 500)).then((response) => {\n observer.next(response);\n observer.complete();\n });\n }\n );\n }\n\n getData(arr) {\n if (arr.length === 0) {\n return this.DATA;\n }\n // Randomly remove and add some data\n arr.splice(Math.floor(Math.random() * arr.length), 1);\n arr.push(this.DATA[Math.floor(Math.random() * this.DATA.length)]);\n return arr;\n }\n getFruits() {\n return [{ \"id\": 1, \"itemName\": \"Apple\", \"category\": \"fruits\" },\n { \"id\": 2, \"itemName\": \"Banana\", \"category\": \"fruits\" },\n { \"id\": 5, \"itemName\": \"Tomatoe\", \"category\": \"vegetables\" },\n { \"id\": 6, \"itemName\": \"Potatoe\", \"category\": \"vegetables\" }];\n }\n getCountries() {\n return [\n { \"id\": 1, \"itemName\": \"India\", \"category\": \"asia\" },\n { \"id\": 2, \"itemName\": \"Singapore\", \"category\": \"asia pacific\" },\n { \"id\": 3, \"itemName\": \"Germany\", \"category\": \"Europe\" },\n { \"id\": 4, \"itemName\": \"France\", \"category\": \"Europe\" },\n { \"id\": 5, \"itemName\": \"South Korea\", \"category\": \"asia\" },\n { \"id\": 6, \"itemName\": \"Sweden\", \"category\": \"Europe\" }\n ];\n }\n}\n","

{{title}}

\n
\n
\n \n \n \n
\n
\n \n \n \n
\n
\n

Code

\n\n\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n","import { Component, OnInit } from '@angular/core';\nimport { MockService } from './mock-data';\nimport { tap, map } from 'rxjs/operators';\n\n@Component({\n templateUrl: './views/multipledropdowns.html'\n})\nexport class MultipleDropdownsExample implements OnInit {\n\n itemList = [];\n selectedItems = [];\n settings = {};\n directorySpecialties = [];\n useCases = [];\n dropdownSettings = {};\n dropdownSettings2 = {};\n\n providerLocation: any = {\n directorySpecialties: [{ \"id\": \"PBMMedAdhr\", \"name\": \"PBM Medication Adherence\" }, { \"id\": \"GapsInCare\", \"name\": \"Gaps In Care\" }],\n useCases: [{ \"id\": \"UCTest3\", \"name\": \"Use Case Test 3\" }, { \"id\": \"UCTest4\", \"name\": \"Use Case Test 4\" }]\n };\n\n\n constructor(public mockService: MockService) { }\n ngOnInit() {\n\n this.dropdownSettings = {\n text: \"Select\",\n enableSearchFilter: true,\n labelKey: \"name\"\n };\n this.dropdownSettings2 = {\n text: \"Select\",\n enableSearchFilter: true,\n labelKey: \"name\"\n };\n\n this.mockService.getDirectories().pipe(map((resp: Array) => {\n this.directorySpecialties = resp;\n })).subscribe();\n\n this.mockService.getUseCases().pipe(map((resp: Array) => {\n this.useCases = resp;\n })).subscribe();\n }\n onItemSelect(item: any) {\n console.log(item);\n console.log(this.selectedItems);\n }\n OnItemDeSelect(item: any) {\n console.log(item);\n console.log(this.selectedItems);\n }\n onSelectAll(items: any) {\n console.log(items);\n }\n onDeSelectAll(items: any) {\n console.log(items);\n }\n cssgist: boolean = false;\n title: string = \"Multiple Dropdowns in a page\";\n tsgist: string = \"CuppaLabs/12225540c23c8a171a81f996fc8d9ca6\";\n htmlgist: string = \"CuppaLabs/3788fb5437925b9d7d8edafec567639c\";\n mockgist: string = \"CuppaLabs/b3e947ec83710307a3b8680a2ff89693\";\n tstitle: string = \"multiple-dropdowns.ts\"\n htmltitle: string = \"multiple-dropdowns.html\";\n mocktitle: string = \"mock-data.ts\"\n}\n","

\n {{title}}

\n
\n \n \n \n \n \n \n \n \n \n
\n

Code

\n\n\n \n \n \n \n \n \n \n \n \n \n \n","import { Component, OnInit } from '@angular/core';\nimport { HttpClient } from '@angular/common/http';\n\n@Component({\n templateUrl: './views/remoteData.html'\n})\nexport class RemoteDataExample implements OnInit {\n\n itemList:any = [];\n selectedItems = [];\n settings = {};\n\n constructor(private http: HttpClient) { }\n ngOnInit() {\n this.http.get('https://restcountries.eu/rest/v2/all')\n .subscribe(res => {\n console.log(res);\n this.itemList = res;\n },error => {\n\n });\n this.settings = {\n text: \"Select Countries\",\n selectAllText: 'Select All',\n unSelectAllText: 'UnSelect All',\n classes: \"myclass custom-class\",\n primaryKey: \"alpha3Code\",\n labelKey: \"name\",\n enableSearchFilter: true,\n searchBy: ['name','capital']\n };\n }\n onItemSelect(item: any) {\n console.log(item);\n console.log(this.selectedItems);\n }\n OnItemDeSelect(item: any) {\n console.log(item);\n console.log(this.selectedItems);\n }\n onSelectAll(items: any) {\n console.log(items);\n }\n onDeSelectAll(items: any) {\n console.log(items);\n }\n onSearch(evt: any){\n console.log(evt.target.value);\n }\n cssgist: boolean = false;\n title: string = \"Data from remote API example\";\n tsgist: string = \"CuppaLabs/ffb168ae28c36a9130ad5ce74b720c5d\";\n htmlgist: string = \"CuppaLabs/eb78d42ab7971fda6493586e329bfdb8\";\n tstitle: string = \"remoteData.ts\"\n htmltitle: string = \"remoteData.html\";\n}\n","

{{title}}

\n
\n
\n
\n
\n
\n
\n
\n \n
\n
\n \n\n
\n
\n
\n\n

Code

\n\n\n \n \n \n \n \n \n","import { Component, OnInit, ViewChild, ElementRef } from '@angular/core';\nimport { AngularMultiSelect } from '../../../projects/angular2-multiselect-dropdown-lib/src/lib/multiselect.component';\n\n@Component({\n templateUrl: './views/resetDropdown.html'\n})\nexport class ResetDropdownExample implements OnInit {\n\n itemList = [];\n selectedItems = [];\n settings = {};\n @ViewChild('dropdownElem', {static: true}) dropdownElem: AngularMultiSelect;\n constructor() {\n\n }\n ngOnInit() {\n\n\n this.itemList = [\n { \"id\": 1, \"itemName\": \"India\" },\n { \"id\": 2, \"itemName\": \"Singapore\" },\n { \"id\": 3, \"itemName\": \"Australia\" },\n { \"id\": 4, \"itemName\": \"Canada\" },\n { \"id\": 5, \"itemName\": \"South Korea\" },\n { \"id\": 6, \"itemName\": \"Brazil\" }\n ];\n\n this.selectedItems = [\n { \"id\": 1, \"itemName\": \"India\" },\n { \"id\": 2, \"itemName\": \"Singapore\" },\n { \"id\": 3, \"itemName\": \"Australia\" },\n { \"id\": 4, \"itemName\": \"Canada\" }];\n this.settings = {\n text: \"Select Countries\",\n selectAllText: 'Select All',\n unSelectAllText: 'UnSelect All',\n classes: \"myclass custom-class\"\n };\n }\n onItemSelect(item: any) {\n console.log(item);\n console.log(this.selectedItems);\n }\n OnItemDeSelect(item: any) {\n console.log(item);\n console.log(this.selectedItems);\n }\n onSelectAll(items: any) {\n console.log(items);\n }\n onDeSelectAll(items: any) {\n console.log(items);\n }\n showModel() {\n console.log(this.selectedItems);\n }\n changeData() {\n this.selectedItems = [];\n }\n open(evt: any){\n this.dropdownElem.openDropdown();\n evt.stopPropagation();\n }\n close(evt: any){\n this.dropdownElem.closeDropdown();\n }\n cssgist: boolean = false;\n title: string = \"Methods - Reset, Open, Close dropdown\";\n tsgist: string = \"CuppaLabs/96d3ca7681f1a7a38b8c76b2f1552458\";\n htmlgist: string = \"CuppaLabs/bbd73b9f9864effb69f361c9fc65a6e5\";\n tstitle: string = \"resetDropdown.ts\"\n htmltitle: string = \"resetDropdown.html\";\n}\n","import { Component, OnInit } from '@angular/core';\n\n@Component({\n templateUrl: './views/view.html'\n})\nexport class SearchFilterByOnePropertyExample implements OnInit {\n\n itemList = [];\n selectedItems = [];\n settings = {};\n\n constructor() {\n\n }\n ngOnInit() {\n\n\n this.itemList = [\n {\"id\":1,\"itemName\":\"India\",\"name\":\"IN\"},\n {\"id\":2,\"itemName\":\"Singapore\",\"name\":\"SN\"},\n {\"id\":3,\"itemName\":\"Australia\",\"name\":\"AU\"},\n {\"id\":4,\"itemName\":\"Canada\",\"name\":\"CA\"},\n {\"id\":5,\"itemName\":\"South Korea\",\"name\":\"SK\"}, \n {\"id\":6,\"itemName\":\"Brazil\",\"name\":\"BR\"} \n ];\n\n this.selectedItems = [\n {\"id\":1,\"itemName\":\"India\",\"name\":\"IN\"},\n {\"id\":2,\"itemName\":\"Singapore\",\"name\":\"SN\"},\n {\"id\":3,\"itemName\":\"Australia\",\"name\":\"AU\"},\n {\"id\":4,\"itemName\":\"Canada\",\"name\":\"CA\"}];\n this.settings = {\n singleSelection: false,\n text: \"Select Countries\",\n selectAllText: 'Select All',\n unSelectAllText: 'UnSelect All',\n enableSearchFilter: true,\n badgeShowLimit: 3,\n searchBy: ['itemName'],\n searchPlaceholderText: 'Search by name' \n };\n }\n onItemSelect(item: any) {\n console.log(item);\n console.log(this.selectedItems);\n }\n OnItemDeSelect(item: any) {\n console.log(item);\n console.log(this.selectedItems);\n }\n onSelectAll(items: any) {\n console.log(items);\n }\n onDeSelectAll(items: any) {\n console.log(items);\n }\n cssgist: boolean = false;\n title: string = \"Search filter by one property / key\";\n tsgist: string = \"CuppaLabs/f6acd1eb94c95df32f689260b1f38b4c\";\n htmlgist: string = \"CuppaLabs/eb78d42ab7971fda6493586e329bfdb8\";\n tstitle: string = \"searchFilterByProperty.ts\"\n htmltitle: string = \"searchFilterByProperty.html\";\n}\n","import { Component, OnInit } from '@angular/core';\n\n@Component({\n templateUrl: './views/view.html'\n})\nexport class SearchFilterExample implements OnInit {\n\n itemList = [];\n selectedItems = [];\n settings = {};\n\n constructor() {\n\n }\n ngOnInit() {\n\n\n this.itemList = [\n {\"id\":1,\"itemName\":\"India\",\"name\":\"IN\"},\n {\"id\":2,\"itemName\":\"Singapore\",\"name\":\"SN\"},\n {\"id\":3,\"itemName\":\"Australia\",\"name\":\"AU\"},\n {\"id\":4,\"itemName\":\"Canada\",\"name\":\"CA\"},\n {\"id\":5,\"itemName\":\"South Korea\",\"name\":\"SK\"}, \n {\"id\":6,\"itemName\":\"Brazil\",\"name\":\"BR\"} \n ];\n\n this.selectedItems = [\n {\"id\":1,\"itemName\":\"India\",\"name\":\"IN\"},\n {\"id\":2,\"itemName\":\"Singapore\",\"name\":\"SN\"},\n {\"id\":3,\"itemName\":\"Australia\",\"name\":\"AU\"},\n {\"id\":4,\"itemName\":\"Canada\",\"name\":\"CA\"}];\n this.settings = {\n singleSelection: false,\n text: \"Select Countries\",\n selectAllText: 'Select All',\n unSelectAllText: 'UnSelect All',\n enableSearchFilter: true,\n badgeShowLimit: 3,\n addNewItemOnFilter: true\n };\n }\n onItemSelect(item: any) {\n console.log(item);\n console.log(this.selectedItems);\n }\n OnItemDeSelect(item: any) {\n console.log(item);\n console.log(this.selectedItems);\n }\n onSelectAll(items: any) {\n console.log(items);\n }\n onDeSelectAll(items: any) {\n console.log(items);\n }\n cssgist: boolean = false;\n title: string = \"Search filter\";\n tsgist: string = \"CuppaLabs/447bd5fce6dfc2832f5f4a8c36726a9b\";\n htmlgist: string = \"CuppaLabs/eb78d42ab7971fda6493586e329bfdb8\";\n tstitle: string = \"searchFilter.ts\"\n htmltitle: string = \"searchFilter.html\";\n}\n","

{{title}}

\n
\n \n \n
\n
\n How this example works !! \n
\n When you try to filter the list items, if no search results are available, you would see an 'Add' button. On clicking the add button, it would emit the text that you enter in the input field to your controlle in the callback method, as show in the below code.\n You can add this item to the data list. If you wish, that this item be selected, add it to selected items list.\n
\n

Code

\n\n\n \n \n \n \n \n \n \n \n \n \n \n\n","import { Component, OnInit } from '@angular/core';\n\n@Component({\n templateUrl: './views/searchFilter.html'\n})\nexport class SearchFilterAddItemExample implements OnInit {\n\n itemList = [];\n selectedItems = [];\n settings = {};\n count = 6;\n constructor() {\n\n }\n ngOnInit() {\n\n\n this.itemList = [\n {\"id\":1,\"itemName\":\"India\",\"name\":\"IN\"},\n {\"id\":2,\"itemName\":\"Singapore\",\"name\":\"SN\"},\n {\"id\":3,\"itemName\":\"Australia\",\"name\":\"AU\"},\n {\"id\":4,\"itemName\":\"Canada\",\"name\":\"CA\"},\n {\"id\":5,\"itemName\":\"South Korea\",\"name\":\"SK\"}, \n {\"id\":6,\"itemName\":\"Brazil\",\"name\":\"BR\"} \n ];\n\n this.selectedItems = [\n {\"id\":1,\"itemName\":\"India\",\"name\":\"IN\"},\n {\"id\":2,\"itemName\":\"Singapore\",\"name\":\"SN\"},\n {\"id\":3,\"itemName\":\"Australia\",\"name\":\"AU\"},\n {\"id\":4,\"itemName\":\"Canada\",\"name\":\"CA\"}];\n this.settings = {\n singleSelection: false,\n text: \"Select Countries\",\n selectAllText: 'Select All',\n unSelectAllText: 'UnSelect All',\n enableSearchFilter: true,\n addNewItemOnFilter: true\n };\n }\n onAddItem(data:string){\n this.count++;\n this.itemList.push({\"id\": this.count,\"itemName\":data,\"name\":data});\n this.selectedItems.push({\"id\": this.count,\"itemName\":data,\"name\":data});\n }\n onItemSelect(item: any) {\n console.log(item);\n console.log(this.selectedItems);\n }\n OnItemDeSelect(item: any) {\n console.log(item);\n console.log(this.selectedItems);\n }\n onSelectAll(items: any) {\n console.log(items);\n }\n onDeSelectAll(items: any) {\n console.log(items);\n }\n cssgist: boolean = false;\n title: string = \"Search and Add New Item, if not found\";\n tsgist: string = \"CuppaLabs/c1e00c870c3e3b9213e69e0a93518cc6\";\n htmlgist: string = \"CuppaLabs/0583ba4be8b7c192d14f04375f96c074\";\n tstitle: string = \"searchFilterAddNewItem.ts\"\n htmltitle: string = \"searchFilter.html\";\n}\n","import { Component, OnInit } from '@angular/core';\n\n@Component({\n templateUrl: './views/view.html' \n})\nexport class SingleSelectionExample implements OnInit {\n\n itemList = [];\n selectedItems = [];\n settings = {};\n\n constructor(){\n \n }\n ngOnInit(){\n \n\n this.itemList = [\n {\"id\":1,\"itemName\":\"India\",\"name\":\"IN\"},\n {\"id\":2,\"itemName\":\"Singapore\",\"name\":\"SN\"},\n {\"id\":3,\"itemName\":\"Australia\",\"name\":\"AU\"},\n {\"id\":4,\"itemName\":\"Canada\",\"name\":\"CA\"},\n {\"id\":5,\"itemName\":\"South Korea\",\"name\":\"SK\"}, \n {\"id\":6,\"itemName\":\"Brazil\",\"name\":\"BR\"} \n ];\n \n this.selectedItems = [\n {\"id\":1,\"itemName\":\"India\",\"name\":\"IN\"}];\n this.settings = {singleSelection: true, text:\"Select Country\",clearAll:false};\n }\n onItemSelect(item:any){\n console.log(item);\n console.log(this.selectedItems);\n }\n OnItemDeSelect(item:any){\n console.log(item);\n console.log(this.selectedItems);\n }\n onSelectAll(items: any){\n console.log(items);\n }\n onDeSelectAll(items: any){\n console.log(items);\n }\ncssgist: boolean = false;\n title: string = \"Single Selection\";\n tsgist: string = \"CuppaLabs/6ef578ce507dfd548eec39e008b4de14\";\n htmlgist: string = \"CuppaLabs/eb78d42ab7971fda6493586e329bfdb8\";\n tstitle: string = \"singleSelection.ts\"\n htmltitle: string = \"singleSelection.html\";\n}\n","import { Component, OnInit } from '@angular/core';\n\n@Component({\n templateUrl: './views/view.html'\n})\nexport class StylingExample implements OnInit {\n\n itemList = [];\n selectedItems = [];\n settings = {};\n\n constructor() {\n\n }\n ngOnInit() {\n\n\n this.itemList = [\n { \"id\": 1, \"itemName\": \"India\" },\n { \"id\": 2, \"itemName\": \"Singapore\" },\n { \"id\": 3, \"itemName\": \"Australia\" },\n { \"id\": 4, \"itemName\": \"Canada\" },\n { \"id\": 5, \"itemName\": \"South Korea\" },\n { \"id\": 6, \"itemName\": \"Brazil\" }\n ];\n\n this.selectedItems = [\n { \"id\": 1, \"itemName\": \"India\" },\n { \"id\": 2, \"itemName\": \"Singapore\" },\n { \"id\": 3, \"itemName\": \"Australia\" },\n { \"id\": 4, \"itemName\": \"Canada\" }];\n this.settings = {\n text: \"Select Countries\",\n selectAllText: 'Select All',\n unSelectAllText: 'UnSelect All',\n classes: \"myclass custom-class-example\"\n };\n }\n onItemSelect(item: any) {\n console.log(item);\n console.log(this.selectedItems);\n }\n OnItemDeSelect(item: any) {\n console.log(item);\n console.log(this.selectedItems);\n }\n onSelectAll(items: any) {\n console.log(items);\n }\n onDeSelectAll(items: any) {\n console.log(items);\n }\n title: string = \"Custom styling\";\n tsgist: string = \"CuppaLabs/67fb11cbb67a62888ca0a3adb44ee440\";\n htmlgist: string = \"CuppaLabs/eb78d42ab7971fda6493586e329bfdb8\";\n cssgist: string = \"CuppaLabs/e6efeedade8f737df03107625df165e7\";\n tstitle: string = \"customStyling.ts\";\n htmltitle: string = \"customStyling.html\";\n csstitle: string = \"app.css\";\n}\n","

{{title}}

\n
\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
\n\n

Code

\n\n\n \n \n \n \n \n \n","import { Component, OnInit } from '@angular/core';\n\n@Component({\n templateUrl: './views/templating.html'\n})\nexport class TemplatingExample implements OnInit {\n\n itemList = [];\n selectedItems = [];\n settings = {};\n\n constructor(){\n \n }\n ngOnInit(){\n \n\n this.itemList = [\n {\"category\":\"asia\",\"id\":1,\"itemName\":\"India\",\"capital\":\"Delhi\",\"image\":\"http://www.sciencekids.co.nz/images/pictures/flags96/India.jpg\"},\n {\"category\":\"asia\",\"id\":2,\"itemName\":\"Singapore\", \"capital\":\"Singapore\",\"image\":\"http://www.sciencekids.co.nz/images/pictures/flags96/Singapore.jpg\"},\n {\"category\":\"europe\",\"id\":3,\"itemName\":\"United Kingdom\", \"capital\":\"London\",\"image\":\"http://www.sciencekids.co.nz/images/pictures/flags96/United_Kingdom.jpg\"},\n {\"category\":\"northamerica\",\"id\":4,\"itemName\":\"Canada\",\"capital\":\"Ottawa\",\"image\":\"http://www.sciencekids.co.nz/images/pictures/flags96/Canada.jpg\"},\n {\"category\":\"asia\",\"id\":5,\"itemName\":\"South Korea\",\"capital\":\"Seoul\",\"image\":\"http://www.sciencekids.co.nz/images/pictures/flags96/South_Korea.jpg\"}, \n {\"category\":\"latinamerica\",\"id\":6,\"itemName\":\"Brazil\",\"capital\":\"Brasilia\",\"image\":\"http://www.sciencekids.co.nz/images/pictures/flags96/Brazil.jpg\"} \n ];\n \n this.selectedItems = [\n {\"category\":\"asia\",\"id\":1,\"itemName\":\"India\",\"capital\":\"Delhi\",\"image\":\"http://www.sciencekids.co.nz/images/pictures/flags96/India.jpg\"},\n {\"category\":\"asia\",\"id\":2,\"itemName\":\"Singapore\", \"capital\":\"Singapore\",\"image\":\"http://www.sciencekids.co.nz/images/pictures/flags96/Singapore.jpg\"},\n {\"category\":\"europe\",\"id\":3,\"itemName\":\"United Kingdom\", \"capital\":\"London\",\"image\":\"http://www.sciencekids.co.nz/images/pictures/flags96/United_Kingdom.jpg\"},\n {\"category\":\"northamerica\",\"id\":4,\"itemName\":\"Canada\",\"capital\":\"Ottawa\",\"image\":\"http://www.sciencekids.co.nz/images/pictures/flags96/Canada.jpg\"}]\n this.settings = { \n text:\"Select Countries\",\n selectAllText:'Select All',\n unSelectAllText:'UnSelect All',\n enableSearchFilter: true,\n classes:\"myclass custom-class\",\n showCheckbox: true,\n groupBy: \"category\"\n };\n\n }\n onItemSelect(item:any){\n console.log(item);\n console.log(this.selectedItems);\n }\n OnItemDeSelect(item:any){\n console.log(item);\n console.log(this.selectedItems);\n }\n onSelectAll(items: any){\n console.log(items);\n }\n onDeSelectAll(items: any){\n console.log(items);\n }\n onGroupSelect(selectedGroupItem){\n console.log(selectedGroupItem);\n }\n onGroupDeSelect(deselectedGroupItem){\n console.log(deselectedGroupItem);\n }\n cssgist: boolean = false;\n title: string = \"Templating menu option\";\n tsgist: string = \"CuppaLabs/cc0ac5976bf26b89119180ff82115fe4\";\n htmlgist: string = \"CuppaLabs/6399258d93fd5580be1736aba2539519\";\n tstitle: string = \"templating.ts\"\n htmltitle: string = \"templating.html\";\n}\n","

{{title}}

\n
\n \n
\n

Code

\n\n","import { Component, OnInit } from '@angular/core';\n\n@Component({\n templateUrl: './views/theming.html'\n})\nexport class ThemingExample implements OnInit {\n\n itemList = [];\n selectedItems = [];\n settings = {};\n\n constructor() { }\n ngOnInit() {\n\n this.itemList = [\n { \"countryId\": 1, \"itemName\": \"India\" },\n { \"countryId\": 2, \"itemName\": \"Singapore\" },\n { \"countryId\": 3, \"itemName\": \"Australia\" },\n { \"countryId\": 4, \"itemName\": \"Canada\" },\n { \"countryId\": 5, \"itemName\": \"South Korea\" },\n { \"countryId\": 6, \"itemName\": \"Brazil\" }\n ];\n\n this.selectedItems = [\n { \"countryId\": 1, \"itemName\": \"India\" },\n { \"countryId\": 2, \"itemName\": \"Singapore\" },\n { \"countryId\": 3, \"itemName\": \"Australia\" },\n { \"countryId\": 4, \"itemName\": \"Canada\" }];\n\n this.settings = {\n text: \"Select Countries\",\n selectAllText: 'Select All',\n unSelectAllText: 'UnSelect All',\n classes: \"myclass custom-class\",\n primaryKey: \"countryId\"\n };\n }\n onItemSelect(item: any) {\n console.log(item);\n console.log(this.selectedItems);\n }\n OnItemDeSelect(item: any) {\n console.log(item);\n console.log(this.selectedItems);\n }\n onSelectAll(items: any) {\n console.log(items);\n }\n onDeSelectAll(items: any) {\n console.log(items);\n }\n cssgist: boolean = false;\n title: string = \"Basic example\";\n tsgist: string = \"CuppaLabs/ee72fbc7b21dad7e4e7664c5b1553235\";\n htmlgist: string = \"CuppaLabs/eb78d42ab7971fda6493586e329bfdb8\";\n tstitle: string = \"basic.ts\"\n htmltitle: string = \"basic.html\";\n}\n","

{{title}}

\n
\n \n \n \n \n \n \n \n \n \n \n \n \n \n
\n Customer\n \n Countries\n
\n {{item.name}}\n \n \n \n
\n {{customers | json}}\n
\n

Code

\n\n\n \n \n \n \n \n \n \n \n \n \n \n","import { Component, OnInit } from '@angular/core';\n\n@Component({\n templateUrl: './views/usingInList.html'\n})\nexport class UsingInListExample implements OnInit {\n\n itemList = [];\n selectedItems = [];\n settings = {};\n customers = [];\n constructor() {\n\n }\n ngOnInit() {\n\n this.customers = [\n {\n name: \"Toshiba\", countries: [{ \"category\": \"asia\", \"id\": 1, \"itemName\": \"India\", \"capital\": \"Delhi\", \"image\": \"http://www.sciencekids.co.nz/images/pictures/flags96/India.jpg\" },\n { \"category\": \"asia\", \"id\": 2, \"itemName\": \"Singapore\", \"capital\": \"Singapore\", \"image\": \"http://www.sciencekids.co.nz/images/pictures/flags96/Singapore.jpg\" },\n ]\n },\n { name: \"Apple\", countries: [] },\n { name: \"Samsung\", countries: [] },\n {\n name: \"MI\", countries: [{ \"category\": \"asia\", \"id\": 1, \"itemName\": \"India\", \"capital\": \"Delhi\", \"image\": \"http://www.sciencekids.co.nz/images/pictures/flags96/India.jpg\" },\n { \"category\": \"asia\", \"id\": 2, \"itemName\": \"Singapore\", \"capital\": \"Singapore\", \"image\": \"http://www.sciencekids.co.nz/images/pictures/flags96/Singapore.jpg\" },\n ]\n },\n { name: \"Google\", countries: [] }\n ];\n this.itemList = [\n { \"category\": \"asia\", \"id\": 1, \"itemName\": \"India\", \"capital\": \"Delhi\", \"image\": \"http://www.sciencekids.co.nz/images/pictures/flags96/India.jpg\" },\n { \"category\": \"asia\", \"id\": 2, \"itemName\": \"Singapore\", \"capital\": \"Singapore\", \"image\": \"http://www.sciencekids.co.nz/images/pictures/flags96/Singapore.jpg\" },\n { \"category\": \"europe\", \"id\": 3, \"itemName\": \"United Kingdom\", \"capital\": \"London\", \"image\": \"http://www.sciencekids.co.nz/images/pictures/flags96/United_Kingdom.jpg\" },\n { \"category\": \"northamerica\", \"id\": 4, \"itemName\": \"Canada\", \"capital\": \"Ottawa\", \"image\": \"http://www.sciencekids.co.nz/images/pictures/flags96/Canada.jpg\" },\n { \"category\": \"asia\", \"id\": 5, \"itemName\": \"South Korea\", \"capital\": \"Seoul\", \"image\": \"http://www.sciencekids.co.nz/images/pictures/flags96/South_Korea.jpg\" },\n { \"category\": \"latinamerica\", \"id\": 6, \"itemName\": \"Brazil\", \"capital\": \"Brasilia\", \"image\": \"http://www.sciencekids.co.nz/images/pictures/flags96/Brazil.jpg\" }\n ];\n\n this.selectedItems = [\n { \"category\": \"asia\", \"id\": 1, \"itemName\": \"India\", \"capital\": \"Delhi\", \"image\": \"http://www.sciencekids.co.nz/images/pictures/flags96/India.jpg\" },\n { \"category\": \"asia\", \"id\": 2, \"itemName\": \"Singapore\", \"capital\": \"Singapore\", \"image\": \"http://www.sciencekids.co.nz/images/pictures/flags96/Singapore.jpg\" },\n { \"category\": \"europe\", \"id\": 3, \"itemName\": \"United Kingdom\", \"capital\": \"London\", \"image\": \"http://www.sciencekids.co.nz/images/pictures/flags96/United_Kingdom.jpg\" },\n { \"category\": \"northamerica\", \"id\": 4, \"itemName\": \"Canada\", \"capital\": \"Ottawa\", \"image\": \"http://www.sciencekids.co.nz/images/pictures/flags96/Canada.jpg\" }]\n this.settings = {\n text: \"Select Countries\",\n selectAllText: 'Select All',\n unSelectAllText: 'UnSelect All',\n enableSearchFilter: true,\n classes: \"myclass custom-class\",\n showCheckbox: true\n };\n\n }\n onItemSelect(item: any) {\n console.log(this.customers);\n }\n OnItemDeSelect(item: any) {\n console.log(item);\n console.log(this.selectedItems);\n }\n onSelectAll(items: any) {\n console.log(items);\n }\n onDeSelectAll(items: any) {\n console.log(items);\n }\n onGroupSelect(selectedGroupItem) {\n console.log(selectedGroupItem);\n }\n onGroupDeSelect(deselectedGroupItem) {\n console.log(deselectedGroupItem);\n }\n cssgist: boolean = false;\n title: string = \"Using in List - Inside `for loop`\";\n tsgist: string = \"CuppaLabs/0d2dc802967cca16ffc5053d0b873aba\";\n htmlgist: string = \"CuppaLabs/85fb2b925a56c2e533e321ae09de0e2f\";\n tstitle: string = \"usingInList.ts\"\n htmltitle: string = \"usingInList.html\";\n}\n","

{{title}}

\n
\n
\n
\n
\n \n * required\n \n \n
\n
\n \n \n
\n
\n \n * required\n \n
\n \n
\n\n
\n
\n \n \n \n \n \n \n \n \n \n \n \n \n \n
{{userForm.value.name}}
{{userForm.value.email}}
\n
{{obj.itemName}}
\n
\n {{userForm.value | json}}\n

Form status: {{ userForm.status | json }}

\n
\n
\n

Code

\n\n\n \n \n \n \n \n \n \n \n \n \n \n","import { Component, OnInit } from '@angular/core';\nimport { FormBuilder, FormGroup, Validators } from '@angular/forms';\n\n@Component({\n templateUrl: './views/using-in-react-form.html'\n})\nexport class UsingWithReactiveFormExample implements OnInit {\n itemList = [];\n selectedItems = [];\n settings = {};\n\n userForm: FormGroup;\n\n constructor(private fb: FormBuilder) {\n this.createForm();\n }\n createForm() {\n this.userForm = this.fb.group({\n name: 'xbvxncvx',\n email: ['absd@gmail.com', Validators.required],\n skills: [[], Validators.required]\n });\n }\n submitForm() {\n console.log(this.userForm);\n }\n ngOnInit() {\n\n this.itemList = [\n { \"id\": 1, \"itemName\": \"Angular\" },\n { \"id\": 2, \"itemName\": \"JavaScript\" },\n { \"id\": 3, \"itemName\": \"HTML\" },\n { \"id\": 4, \"itemName\": \"CSS\" },\n { \"id\": 5, \"itemName\": \"ReactJS\" },\n { \"id\": 6, \"itemName\": \"HTML5\" }\n ];\n this.selectedItems = [];\n this.settings = {\n text: \"Select Skills\",\n selectAllText: 'Select All',\n unSelectAllText: 'UnSelect All',\n classes: \"myclass custom-class\"\n };\n }\n onItemSelect(item: any) {\n console.log(item);\n console.log(this.selectedItems);\n }\n OnItemDeSelect(item: any) {\n console.log(item);\n console.log(this.selectedItems);\n }\n onSelectAll(items: any) {\n console.log(items);\n }\n onDeSelectAll(items: any) {\n console.log(items);\n }\ncssgist: boolean = false;\n title: string = \"Using with Reactive Forms\";\n tsgist: string = \"CuppaLabs/f0dfe353c6378cee7f55547395a80fc4\";\n htmlgist: string = \"CuppaLabs/0a32c3d76110468b84bac01fd64488bc\";\n tstitle: string = \"using-in-reactive-forms.ts\"\n htmltitle: string = \"using-with-reactive-forms.html\";\n}\n","

{{title}}

\n
\n
\n
\n\n
\n \n \n
\n
Name is required
\n
Only alphabetsallowed
\n\n
\n
\n
\n \n * required\n \n
\n
Email is required
\n
Email format should be joe@abc.com
\n
\n
\n
\n \n * required\n \n \n
\n
Atleast one Skill is required
\n
\n
\n \n
\n
\n
\n \n \n \n \n \n \n \n \n \n \n \n \n \n
{{formModel.name}}
{{formModel.email}}
\n
{{obj.itemName}}
\n
\n {{formModel | json}}\n

Form status: {{ loginForm.form.status | json }}

\n\n
\n
\n

Code

\n\n\n \n \n \n \n \n \n \n \n \n \n \n","import { Component, OnInit } from '@angular/core';\n\n@Component({\n templateUrl: './views/using-in-form.html'\n})\nexport class UsingWithFormExample implements OnInit {\n itemList = [];\n selectedItems = [];\n settings = {};\n formModel = {\n name: '',\n email: 'ascasc@aa.com',\n skills: [{ \"id\": 1, \"itemName\": \"Angular\" }]\n };\n submitted = false;\n onSubmit() { this.submitted = true; }\n constructor() { }\n ngOnInit() {\n\n this.itemList = [\n { \"id\": 1, \"itemName\": \"Angular\" },\n { \"id\": 2, \"itemName\": \"JavaScript\" },\n { \"id\": 3, \"itemName\": \"HTML\" },\n { \"id\": 4, \"itemName\": \"CSS\" },\n { \"id\": 5, \"itemName\": \"ReactJS\" },\n { \"id\": 6, \"itemName\": \"HTML5\" }\n ];\n\n this.settings = {\n text: \"Select Skills\",\n selectAllText: 'Select All',\n unSelectAllText: 'UnSelect All',\n classes: \"myclass custom-class\"\n };\n }\n onItemSelect(item: any) {\n console.log(item);\n console.log(this.selectedItems);\n }\n OnItemDeSelect(item: any) {\n console.log(item);\n console.log(this.selectedItems);\n }\n onSelectAll(items: any) {\n console.log(items);\n }\n onDeSelectAll(items: any) {\n console.log(items);\n }\ncssgist: boolean = false;\n title: string = \"Using with Template driven Forms\";\n tsgist: string = \"CuppaLabs/6cd9396b8f5589b792b27dd10efe9140\";\n htmlgist: string = \"CuppaLabs/8148509a46a59e3aba513808daa40ca1\";\n tstitle: string = \"using-in-forms.ts\"\n htmltitle: string = \"using-with-forms.html\";\n}\n","// This file can be replaced during build by using the `fileReplacements` array.\n// `ng build --prod` replaces `environment.ts` with `environment.prod.ts`.\n// The list of file replacements can be found in `angular.json`.\n\nexport const environment = {\n production: false\n};\n\n/*\n * For easier debugging in development mode, you can import the following file\n * to ignore zone related error stack frames such as `zone.run`, `zoneDelegate.invokeTask`.\n *\n * This import should be commented out in production mode because it will have a negative impact\n * on performance if an error is thrown.\n */\n// import 'zone.js/dist/zone-error'; // Included with Angular CLI.\n","import { enableProdMode } from '@angular/core';\nimport { platformBrowserDynamic } from '@angular/platform-browser-dynamic';\n\nimport { AppModule } from './app/app.module';\nimport { environment } from './environments/environment';\n\nif (environment.production) {\n enableProdMode();\n}\n\ndocument.addEventListener('DOMContentLoaded', () => {\n platformBrowserDynamic().bootstrapModule(AppModule)\n .catch(err => console.error(err));\n});\n\n"],"sourceRoot":""} \ No newline at end of file diff --git a/src/app/app.router.ts b/src/app/app.router.ts index 4f6940e2..4f0f5bc8 100644 --- a/src/app/app.router.ts +++ b/src/app/app.router.ts @@ -59,7 +59,7 @@ const appRoutes: Routes = [ @NgModule({ imports: [ - RouterModule.forRoot(appRoutes, { useHash: false }) + RouterModule.forRoot(appRoutes, { useHash: true }) ], exports: [ RouterModule