mis-crystal-design-system 4.0.24 → 4.0.26-test
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/bundles/mis-crystal-design-system-dynamic-form.umd.js +1 -1
- package/bundles/mis-crystal-design-system-dynamic-form.umd.js.map +1 -1
- package/bundles/mis-crystal-design-system-dynamic-form.umd.min.js +1 -1
- package/bundles/mis-crystal-design-system-dynamic-form.umd.min.js.map +1 -1
- package/bundles/mis-crystal-design-system-input-stepper.umd.js +83 -0
- package/bundles/mis-crystal-design-system-input-stepper.umd.js.map +1 -0
- package/bundles/mis-crystal-design-system-input-stepper.umd.min.js +2 -0
- package/bundles/mis-crystal-design-system-input-stepper.umd.min.js.map +1 -0
- package/bundles/mis-crystal-design-system-multi-select-dropdown.umd.js +2 -1
- package/bundles/mis-crystal-design-system-multi-select-dropdown.umd.js.map +1 -1
- package/bundles/mis-crystal-design-system-multi-select-dropdown.umd.min.js +2 -2
- package/bundles/mis-crystal-design-system-multi-select-dropdown.umd.min.js.map +1 -1
- package/bundles/mis-crystal-design-system-slider.umd.js +73 -0
- package/bundles/mis-crystal-design-system-slider.umd.js.map +1 -0
- package/bundles/mis-crystal-design-system-slider.umd.min.js +2 -0
- package/bundles/mis-crystal-design-system-slider.umd.min.js.map +1 -0
- package/bundles/mis-crystal-design-system-snackbar.umd.js +106 -0
- package/bundles/mis-crystal-design-system-snackbar.umd.js.map +1 -0
- package/bundles/mis-crystal-design-system-snackbar.umd.min.js +2 -0
- package/bundles/mis-crystal-design-system-snackbar.umd.min.js.map +1 -0
- package/dynamic-form/mis-crystal-design-system-dynamic-form.metadata.json +1 -1
- package/esm2015/dynamic-form/dynamic-form.component.js +2 -2
- package/esm2015/input-stepper/index.js +2 -0
- package/esm2015/input-stepper/input-stepper/input-stepper.component.js +47 -0
- package/esm2015/input-stepper/input-stepper.module.js +19 -0
- package/esm2015/input-stepper/mis-crystal-design-system-input-stepper.js +5 -0
- package/esm2015/input-stepper/public_api.js +3 -0
- package/esm2015/multi-select-dropdown/multi-select-dropdown.component.js +3 -2
- package/esm2015/slider/index.js +2 -0
- package/esm2015/slider/mis-crystal-design-system-slider.js +5 -0
- package/esm2015/slider/public_api.js +3 -0
- package/esm2015/slider/slider.component.js +38 -0
- package/esm2015/slider/slider.module.js +20 -0
- package/esm2015/snackbar/index.js +2 -0
- package/esm2015/snackbar/mis-crystal-design-system-snackbar.js +5 -0
- package/esm2015/snackbar/public_api.js +4 -0
- package/esm2015/snackbar/snackbar/snackbar.component.js +26 -0
- package/esm2015/snackbar/snackbar.module.js +20 -0
- package/esm2015/snackbar/snackbar.service.js +48 -0
- package/fesm2015/mis-crystal-design-system-dynamic-form.js +1 -1
- package/fesm2015/mis-crystal-design-system-dynamic-form.js.map +1 -1
- package/fesm2015/mis-crystal-design-system-input-stepper.js +71 -0
- package/fesm2015/mis-crystal-design-system-input-stepper.js.map +1 -0
- package/fesm2015/mis-crystal-design-system-multi-select-dropdown.js +2 -1
- package/fesm2015/mis-crystal-design-system-multi-select-dropdown.js.map +1 -1
- package/fesm2015/mis-crystal-design-system-slider.js +62 -0
- package/fesm2015/mis-crystal-design-system-slider.js.map +1 -0
- package/fesm2015/mis-crystal-design-system-snackbar.js +93 -0
- package/fesm2015/mis-crystal-design-system-snackbar.js.map +1 -0
- package/input-stepper/index.d.ts +1 -0
- package/input-stepper/input-stepper/input-stepper.component.d.ts +13 -0
- package/input-stepper/input-stepper.module.d.ts +2 -0
- package/input-stepper/mis-crystal-design-system-input-stepper.d.ts +4 -0
- package/input-stepper/mis-crystal-design-system-input-stepper.metadata.json +1 -0
- package/input-stepper/package.json +11 -0
- package/input-stepper/public_api.d.ts +2 -0
- package/multi-select-dropdown/mis-crystal-design-system-multi-select-dropdown.metadata.json +1 -1
- package/multi-select-dropdown/multi-select-dropdown.component.d.ts +1 -0
- package/package.json +1 -1
- package/slider/index.d.ts +1 -0
- package/slider/mis-crystal-design-system-slider.d.ts +4 -0
- package/slider/mis-crystal-design-system-slider.metadata.json +1 -0
- package/slider/package.json +11 -0
- package/slider/public_api.d.ts +2 -0
- package/slider/slider.component.d.ts +13 -0
- package/slider/slider.module.d.ts +2 -0
- package/snackbar/index.d.ts +1 -0
- package/snackbar/mis-crystal-design-system-snackbar.d.ts +4 -0
- package/snackbar/mis-crystal-design-system-snackbar.metadata.json +1 -0
- package/snackbar/package.json +11 -0
- package/snackbar/public_api.d.ts +3 -0
- package/snackbar/snackbar/snackbar.component.d.ts +8 -0
- package/snackbar/snackbar.module.d.ts +2 -0
- package/snackbar/snackbar.service.d.ts +19 -0
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
!function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports,require("@angular/core"),require("@angular/cdk/portal"),require("@angular/cdk/overlay"),require("@angular/common"),require("@angular/forms"),require("mis-crystal-design-system/checkbox"),require("mis-crystal-design-system/button")):"function"==typeof define&&define.amd?define("mis-crystal-design-system/multi-select-dropdown",["exports","@angular/core","@angular/cdk/portal","@angular/cdk/overlay","@angular/common","@angular/forms","mis-crystal-design-system/checkbox","mis-crystal-design-system/button"],t):t(((e="undefined"!=typeof globalThis?globalThis:e||self)["mis-crystal-design-system"]=e["mis-crystal-design-system"]||{},e["mis-crystal-design-system"]["multi-select-dropdown"]={}),e.ng.core,e.ng.cdk.portal,e.ng.cdk.overlay,e.ng.common,e.ng.forms,e["mis-crystal-design-system"].checkbox,e["mis-crystal-design-system"].button)}(this,(function(e,t,n,o,i,r,
|
|
1
|
+
!function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports,require("@angular/core"),require("@angular/cdk/portal"),require("@angular/cdk/overlay"),require("@angular/common"),require("@angular/forms"),require("mis-crystal-design-system/checkbox"),require("mis-crystal-design-system/button")):"function"==typeof define&&define.amd?define("mis-crystal-design-system/multi-select-dropdown",["exports","@angular/core","@angular/cdk/portal","@angular/cdk/overlay","@angular/common","@angular/forms","mis-crystal-design-system/checkbox","mis-crystal-design-system/button"],t):t(((e="undefined"!=typeof globalThis?globalThis:e||self)["mis-crystal-design-system"]=e["mis-crystal-design-system"]||{},e["mis-crystal-design-system"]["multi-select-dropdown"]={}),e.ng.core,e.ng.cdk.portal,e.ng.cdk.overlay,e.ng.common,e.ng.forms,e["mis-crystal-design-system"].checkbox,e["mis-crystal-design-system"].button)}(this,(function(e,t,n,o,i,a,r,s){"use strict";
|
|
2
2
|
/*! *****************************************************************************
|
|
3
3
|
Copyright (c) Microsoft Corporation.
|
|
4
4
|
|
|
@@ -12,5 +12,5 @@
|
|
|
12
12
|
LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR
|
|
13
13
|
OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
|
|
14
14
|
PERFORMANCE OF THIS SOFTWARE.
|
|
15
|
-
***************************************************************************** */Object.create;function c(e,t){var n="function"==typeof Symbol&&e[Symbol.iterator];if(!n)return e;var o,i,r=n.call(e),a=[];try{for(;(void 0===t||t-- >0)&&!(o=r.next()).done;)a.push(o.value)}catch(e){i={error:e}}finally{try{o&&!o.done&&(n=r.return)&&n.call(r)}finally{if(i)throw i.error}}return a}function l(){for(var e=[],t=0;t<arguments.length;t++)e=e.concat(c(arguments[t]));return e}Object.create;var p=function(){function e(e,n,o,i){this.eRef=e,this.overlay=n,this.viewContainerRef=o,this.ngZone=i,this.searchInput="",this.isOpen=!1,this.localSelectedItems=[],this.localData=[],this.searchData=[],this.isSearchInputFocused=!1,this.SELECT_ALL_ENUM="SELECT_ALL_ENABLED",this.label="Select",this.height="",this.width="",this.dropdownListHeight="",this.dropdownListWidth="",this.dropdownListPosition="Left",this.enableSelectAll=!1,this.searchEnabled=!0,this.showSelectedCount=!1,this.noDataMessage="No Data",this.options={sortLabels:!0},this.hideApplyButton=!1,this.onChange=new t.EventEmitter}return Object.defineProperty(e.prototype,"data",{set:function(e){this.localData=e.map((function(e){return Object.assign(Object.assign({},e),{checked:!1})}))},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"selectedItems",{set:function(e){this.handlerSetLocalSelectedItems(e)},enumerable:!1,configurable:!0}),e.prototype.ngOnInit=function(){},e.prototype.handlerSetLocalSelectedItems=function(e){var t=this;this.localSelectedItems=e,this.localData=this.localData.map((function(n){return n.value===t.SELECT_ALL_ENUM&&e.length===t.localData.length-1||e.some((function(e){return e.value===n.value}))?Object.assign(Object.assign({},n),{checked:!0}):n.value===t.SELECT_ALL_ENUM&&t.hideApplyButton?n:Object.assign(Object.assign({},n),{checked:!1})})),this.localData=this.formatValues(this.localData)},e.prototype.searchInputFocused=function(e){this.isSearchInputFocused=e},e.prototype.searchInputCanceled=function(e){e.stopPropagation(),this.searchInput="",this.isSearchInputFocused=!1},e.prototype.toggleDropdown=function(){var e=this;this.ngZone.run((function(){e.isOpen=!e.isOpen,e.isOpen&&(e.handlerSetLocalSelectedItems(e.localSelectedItems),e.localData=e.formatValues(e.localData)),e.isOpen?e.openDropdown(e.popupContainer,e.selectElement.nativeElement):e.onCancel()}))},e.prototype.openDropdown=function(e,t){var i=this,r=[new o.ConnectionPositionPair({originX:"start",originY:"bottom"},{overlayX:"start",overlayY:"top"},0,4),new o.ConnectionPositionPair({originX:"end",originY:"bottom"},{overlayX:"end",overlayY:"top"},0,4)],a=[new o.ConnectionPositionPair({originX:"start",originY:"top"},{overlayX:"start",overlayY:"bottom"},0,-4),new o.ConnectionPositionPair({originX:"end",originY:"top"},{overlayX:"end",overlayY:"bottom"},0,-4)],s=this.overlay.position().flexibleConnectedTo(t).withPositions(l("Right"===this.dropdownListPosition?r.reverse():r,"Right"===this.dropdownListPosition?a.reverse():a)).withPush(!0),c=new o.OverlayConfig({hasBackdrop:!0,backdropClass:"cdk-overlay-transparent-backdrop",scrollStrategy:this.overlay.scrollStrategies.reposition(),positionStrategy:s,width:t.clientWidth});this.overlayRef=this.overlay.create(c),this.dropdownListWidth&&this.overlayRef.updateSize({width:this.dropdownListWidth}),this.dropdownListHeight&&this.overlayRef.updateSize({height:this.dropdownListHeight}),this.overlayRef.attach(new n.TemplatePortal(e,this.viewContainerRef)),this.overlayRef.backdropClick().subscribe((function(e){i.onCancel()}))},e.prototype.filterByValue=function(e,t){return e.filter((function(e){return e.label.toLowerCase().includes(t.toLowerCase())}))},e.prototype.searchInputOnChange=function(e){this.searchInput=e,e?this.searchData=this.filterByValue(this.localData,e):(this.searchData=[],this.searchInput="")},e.prototype.formatValues=function(e){var t=this,n=e;this.options.sortLabels&&(n=l(e.filter((function(e){return e.checked})).sort((function(e,t){return e.label>t.label?1:t.label>e.label?-1:0})),e.filter((function(e){return!e.checked})).sort((function(e,t){return e.label>t.label?1:t.label>e.label?-1:0}))).filter((function(e){return e.value!==t.SELECT_ALL_ENUM})));return!n.some((function(e){return e.value===t.SELECT_ALL_ENUM}))&&this.enableSelectAll&&n.length>0&&n.unshift({label:"Select all",value:this.SELECT_ALL_ENUM,checked:n.every((function(e){return e.checked}))}),n},e.prototype.toggleSelectedItems=function(e,t){var n=this;if(e.stopPropagation(),this.enableSelectAll&&t.value===this.SELECT_ALL_ENUM)return this.localData=this.localData.map((function(e){return Object.assign(Object.assign({},e),{checked:!t.checked})})),void(this.hideApplyButton&&this.applyFilters());t.checked?this.localData=l(this.localData.map((function(e){return e.value===t.value||e.value===n.SELECT_ALL_ENUM?Object.assign(Object.assign({},e),{checked:!1}):e}))):(this.localData=l(this.localData.map((function(e){return e.value===t.value?Object.assign(Object.assign({},e),{checked:!0}):e}))),this.enableSelectAll&&this.localData.filter((function(e){return e.value!==n.SELECT_ALL_ENUM})).every((function(e){return e.checked}))&&(this.localData=l(this.localData.map((function(e){return e.value===n.SELECT_ALL_ENUM?Object.assign(Object.assign({},e),{checked:!0}):e}))))),this.searchEnabled&&this.searchInputOnChange(this.searchInput),this.hideApplyButton&&this.applyFilters()},e.prototype.applyFilters=function(){var e=this;this.onChange.emit(this.localData.filter((function(t){return t.checked&&t.value!==e.SELECT_ALL_ENUM})).map((function(e){e.checked;return function(e,t){var n={};for(var o in e)Object.prototype.hasOwnProperty.call(e,o)&&t.indexOf(o)<0&&(n[o]=e[o]);if(null!=e&&"function"==typeof Object.getOwnPropertySymbols){var i=0;for(o=Object.getOwnPropertySymbols(e);i<o.length;i++)t.indexOf(o[i])<0&&Object.prototype.propertyIsEnumerable.call(e,o[i])&&(n[o[i]]=e[o[i]])}return n}(e,["checked"])}))),this.hideApplyButton||this.onCancel()},e.prototype.onReset=function(){this.isSearchInputFocused=!1,this.onChange.emit([]),this.isOpen=!1,this.searchInput=""},e.prototype.onCancel=function(){var e,t=this;this.isSearchInputFocused=!1,this.localData=this.localData.map((function(e){return t.localSelectedItems.some((function(t){return t.value===e.value&&String(t.checked)!==String(e.checked)}))?e:e.value!==t.SELECT_ALL_ENUM&&t.hideApplyButton?Object.assign(Object.assign({},e),{checked:!1}):e})),this.isOpen=!1,this.searchInput="",null===(e=this.overlayRef)||void 0===e||e.detach(),this.searchInput=""},e}();p.decorators=[{type:t.Component,args:[{selector:"mis-multi-select-dropdown",template:'<div\n class="container"\n [ngStyle]="{\n height: height.length > 0 ? height : \'\',\n width: width.length > 0 ? width : \'\'\n }"\n>\n <div\n class="dropdown"\n #select\n tabindex="0"\n (keyup.enter)="toggleDropdown()"\n (click)="toggleDropdown()"\n [ngStyle]="{ background: isOpen ? \'#E6EBF7\' : \'\' }"\n >\n <div class="label">\n <p class="text">{{ label }}</p>\n <p *ngIf="showSelectedCount && localSelectedItems?.length > 0" class="count">\n {{ localSelectedItems?.length }}\n </p>\n </div>\n <svg\n class="handle"\n [ngStyle]="{ transform: isOpen ? \'rotate(180deg)\' : \'rotate(0deg)\' }"\n width="20"\n height="20"\n viewBox="0 0 20 20"\n fill="none"\n xmlns="http://www.w3.org/2000/svg"\n >\n <path\n fill-rule="evenodd"\n clip-rule="evenodd"\n d="M13.825 7.15845L10 10.9751L6.175 7.15845L5 8.33345L10 13.3334L15 8.33345L13.825 7.15845Z"\n fill="#181F33"\n />\n </svg>\n </div>\n</div>\n<ng-template #popupContainer>\n <div\n class="popup-container"\n [ngStyle]="{\n height: dropdownListHeight,\n width: dropdownListWidth\n }"\n [ngClass]="{\n \'position-left\': dropdownListPosition === \'Left\',\n \'position-right\': dropdownListPosition === \'Right\'\n }"\n >\n <div *ngIf="searchEnabled" class="search-container">\n <svg\n *ngIf="!isSearchInputFocused"\n class="search-icon"\n width="24"\n height="24"\n viewBox="0 0 24 24"\n fill="none"\n xmlns="http://www.w3.org/2000/svg"\n >\n <path\n fill-rule="evenodd"\n clip-rule="evenodd"\n d="M4.21508 11.1456C4.21508 7.3179 7.33722 4.21165 11.1926 4.21165C15.048 4.21165 18.1702 7.3179 18.1702 11.1456C18.1702 12.6931 17.6599 14.1226 16.7972 15.2767L15.3685 16.7013C14.2044 17.5668 12.759 18.0796 11.1926 18.0796C7.33722 18.0796 4.21508 14.9734 4.21508 11.1456ZM15.9421 17.7835C14.6021 18.7329 12.9627 19.2913 11.1926 19.2913C6.66977 19.2913 3 15.6461 3 11.1456C3 6.64512 6.66977 3 11.1926 3C15.7155 3 19.3852 6.64512 19.3852 11.1456C19.3852 12.9371 18.8037 14.5931 17.8184 15.9375L19.8361 17.4048C20.6705 17.912 21.7554 18.6543 20.2454 20.215C18.7353 21.7756 18.0099 20.6663 17.4991 19.8364L15.9421 17.7835Z"\n fill="#6A737D"\n />\n </svg>\n <input\n [ngModel]="searchInput"\n [ngStyle]="{\n paddingLeft: isSearchInputFocused ? \'12px\' : \'45px\',\n border: isSearchInputFocused ? \'1px solid #0937B2\' : \'1px solid #e0e0e0\',\n paddingRight: isSearchInputFocused ? \'45px\' : \'10px\'\n }"\n (ngModelChange)="searchInputOnChange($event)"\n [placeholder]="isSearchInputFocused ? \'\' : \'Search Keyword\'"\n (focus)="searchInputFocused(true)"\n class="search-input"\n />\n <svg\n *ngIf="isSearchInputFocused"\n class="cancel-icon"\n (click)="searchInputCanceled($event)"\n width="24"\n height="24"\n viewBox="0 0 24 24"\n fill="none"\n xmlns="http://www.w3.org/2000/svg"\n >\n <path\n fill-rule="evenodd"\n clip-rule="evenodd"\n d="M8.87446 7.32144C8.44588 6.89285 7.751 6.89285 7.32242 7.32144C6.89383 7.75002 6.89383 8.4449 7.32242 8.87349L10.4488 11.9999L7.32357 15.1252C6.89498 15.5538 6.89498 16.2486 7.32357 16.6772C7.75215 17.1058 8.44703 17.1058 8.87561 16.6772L12.0009 13.552L15.1261 16.6772C15.5547 17.1058 16.2496 17.1058 16.6781 16.6772C17.1067 16.2486 17.1067 15.5537 16.6781 15.1251L13.5529 11.9999L16.6793 8.87354C17.1079 8.44496 17.1079 7.75008 16.6793 7.3215C16.2507 6.89291 15.5558 6.89291 15.1273 7.3215L12.0009 10.4479L8.87446 7.32144Z"\n fill="#6A737D"\n />\n </svg>\n </div>\n <div class="items">\n <div\n class="item"\n tabindex="0"\n (keyup.enter)="toggleSelectedItems($event, item)"\n (click)="toggleSelectedItems($event, item)"\n *ngFor="let item of searchInput ? searchData : localData"\n >\n <div class="checkbox-container-wrapper">\n <div class="checkbox-container">\n <mis-checkbox [checked]="item.checked" tabindex="-1"></mis-checkbox>\n </div>\n <p class="label">\n {{ item.label }}\n </p>\n </div>\n <div class="icon-container" *ngIf="item.icon">\n <img class="icon" [src]="item.icon" alt="no img" />\n </div>\n </div>\n <div class="noData" *ngIf="(searchInput ? searchData : localData).length === 0">\n {{ searchInput === "" ? noDataMessage : "No results" }}\n </div>\n </div>\n <div *ngIf="localData.length !== 0 && !hideApplyButton" class="actions-container">\n <div style="width: calc(50% - 4px)">\n <mis-button [name]="\'Reset\'" [type]="\'Text\'" [width]="\'100%\'" (click)="onReset()"></mis-button>\n </div>\n <div style="width: calc(50% - 4px)">\n <mis-button [name]="\'Apply\'" [type]="\'Solid\'" [width]="\'100%\'" (click)="applyFilters()"></mis-button>\n </div>\n </div>\n </div>\n</ng-template>\n',styles:['.container{position:relative;display:flex;justify-content:center;align-items:center;flex-wrap:wrap;height:32px;width:256px;font-family:Lato,sans-serif!important}.container .dropdown{height:inherit;border:1px solid #e0e0e0;border-radius:6px;background-color:#fff;cursor:pointer;display:flex;justify-content:space-between;align-items:center;width:100%;padding:0 12px;overflow:hidden}.container .dropdown:focus-visible,.container .dropdown:hover{background-color:#f5f7fc;outline:none}.container .dropdown .label{display:flex;justify-content:flex-start;align-items:center;width:calc(100% - 32px)}.container .dropdown .label,.container .dropdown .label .text{font-style:normal;font-weight:400;font-size:14px;line-height:20px;letter-spacing:.2px;color:#181f33}.container .dropdown .label .text{text-overflow:ellipsis;overflow:hidden;white-space:nowrap}.container .dropdown .label .count{background-color:#e0e0e0;border-radius:50%;padding:2px 7px;margin:0 0 0 8px;font-style:normal;font-weight:400;font-size:14px;line-height:20px;text-align:center;letter-spacing:.2px;color:#181f33}.container .dropdown .handle{width:24px;height:24px;transition:.3s;position:absolute;right:12px;border-radius:50%;overflow:hidden}.popup-container{width:100%;max-height:340px;padding-bottom:0;border:1px solid #e0e0e0;border-radius:8px;background-color:#fff;box-shadow:0 12px 24px 0 rgba(0,0,0,.12);display:flex;flex-direction:column;overflow:hidden;justify-content:space-between}.popup-container::-webkit-scrollbar{width:0;height:0}.popup-container .search-container{position:relative;box-sizing:border-box;padding:8px}.popup-container .search-container .search-icon{position:absolute;width:24px;height:24px;top:50%;transform:translateY(-50%);left:18px;z-index:1}.popup-container .search-container .search-input{height:40px;width:100%;padding:12px;border:1px solid #e0e0e0;box-sizing:border-box;border-radius:8px;outline:none;caret-color:#0937b2;font-style:normal;font-weight:400;font-size:12px;line-height:18px;display:flex;align-items:center;letter-spacing:.2px;color:#181f33}.popup-container .search-container .cancel-icon{position:absolute;cursor:pointer;width:24px;height:24px;top:50%;transform:translateY(-50%);right:18px;z-index:1}.popup-container .items{padding:8px 0 8px 8px;overflow-y:scroll}.popup-container .items::-webkit-scrollbar{width:5px;height:0}.popup-container .items::-webkit-scrollbar-thumb{background:#9aa7b4;border-radius:10px}.popup-container .items .noData{display:flex;justify-content:center;align-items:center;font-style:normal;font-weight:400;font-size:14px;line-height:20px;letter-spacing:.2px;color:#181f33}.popup-container .items .item{cursor:pointer;display:flex;justify-content:flex-start;align-items:center;padding:8px 12px;border-radius:6px;height:auto}.popup-container .items .item:focus-visible,.popup-container .items .item:hover{background-color:#f5f7fc;outline:none}.popup-container .items .item .checkbox-container-wrapper{display:flex;justify-content:flex-start;align-items:center;width:90%}.popup-container .items .item .checkbox-container-wrapper .checkbox-container{display:block;position:relative;cursor:pointer;font-size:22px;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.popup-container .items .item .checkbox-container-wrapper .checkbox-container input{position:absolute;opacity:0;cursor:pointer;height:0;width:0}.popup-container .items .item .checkbox-container-wrapper .checkbox-container input:checked~.checkmark:after{display:block}.popup-container .items .item .checkbox-container-wrapper .checkbox-container .checkmark{position:absolute;top:-8px;left:0;height:15px;width:15px;border-radius:4px;background-color:#0079f1;border:1px solid #6a737d}.popup-container .items .item .checkbox-container-wrapper .checkbox-container .checkmark:after{content:"";position:absolute;display:none;left:5px;top:2px;width:3px;height:6px;border:solid #fff;border-width:0 2px 2px 0;transform:rotate(45deg)}.popup-container .items .item .checkbox-container-wrapper .label{margin:0 0 0 8px;line-height:20px;font-size:14px;font-style:normal;font-weight:400;letter-spacing:.2;text-overflow:ellipsis;overflow:hidden}.popup-container .items .item .icon-container{width:10%;display:flex;justify-content:flex-end}.popup-container .items .item .icon-container .icon{width:20px;height:20px}.popup-container .actions-container{display:flex;justify-content:space-between;bottom:0;align-items:center;position:-webkit-sticky;position:sticky;padding:16px;background-color:#fff;border-top:1px solid #e0e0e0}.popup-container .actions-container .cancel{cursor:pointer;padding:10px 32px;text-align:center;font-size:16px;line-height:24px;border-radius:8px}.popup-container .actions-container .cancel:hover{background:rgba(9,55,178,.04)}.popup-container .actions-container .apply{cursor:pointer;padding:10px 32px;text-align:center;color:#fff;font-size:16px;line-height:24px;background:#0937b2;border-radius:8px}']}]}],p.ctorParameters=function(){return[{type:t.ElementRef},{type:o.Overlay},{type:t.ViewContainerRef},{type:t.NgZone}]},p.propDecorators={data:[{type:t.Input}],label:[{type:t.Input}],height:[{type:t.Input}],width:[{type:t.Input}],dropdownListHeight:[{type:t.Input}],dropdownListWidth:[{type:t.Input}],dropdownListPosition:[{type:t.Input}],enableSelectAll:[{type:t.Input}],searchEnabled:[{type:t.Input}],showSelectedCount:[{type:t.Input}],noDataMessage:[{type:t.Input}],options:[{type:t.Input}],selectedItems:[{type:t.Input}],hideApplyButton:[{type:t.Input}],onChange:[{type:t.Output}],selectElement:[{type:t.ViewChild,args:["select",{static:!1}]}],popupContainer:[{type:t.ViewChild,args:["popupContainer",{static:!1}]}]};var d=function(){function e(){}return e.forRoot=function(){return{ngModule:e,providers:[]}},e}();d.decorators=[{type:t.NgModule,args:[{declarations:[p],imports:[i.CommonModule,r.FormsModule,o.OverlayModule,a.CheckboxModule,s.ButtonModule],exports:[p]}]}],e.MultiSelectDropdownComponent=p,e.MultiSelectDropdownModule=d,Object.defineProperty(e,"__esModule",{value:!0})}));
|
|
15
|
+
***************************************************************************** */Object.create;function c(e,t){var n="function"==typeof Symbol&&e[Symbol.iterator];if(!n)return e;var o,i,a=n.call(e),r=[];try{for(;(void 0===t||t-- >0)&&!(o=a.next()).done;)r.push(o.value)}catch(e){i={error:e}}finally{try{o&&!o.done&&(n=a.return)&&n.call(a)}finally{if(i)throw i.error}}return r}function l(){for(var e=[],t=0;t<arguments.length;t++)e=e.concat(c(arguments[t]));return e}Object.create;var p=function(){function e(e,n,o,i){this.eRef=e,this.overlay=n,this.viewContainerRef=o,this.ngZone=i,this.searchInput="",this.isOpen=!1,this.localSelectedItems=[],this.localData=[],this.searchData=[],this.isSearchInputFocused=!1,this.SELECT_ALL_ENUM="SELECT_ALL_ENABLED",this.label="Select",this.height="",this.width="",this.dropdownListHeight="",this.dropdownListWidth="",this.dropdownListPosition="Left",this.enableSelectAll=!1,this.searchEnabled=!0,this.showSelectedCount=!1,this.noDataMessage="No Data",this.options={sortLabels:!0},this.hideApplyButton=!1,this.onChange=new t.EventEmitter}return Object.defineProperty(e.prototype,"data",{set:function(e){this.localData=e.map((function(e){return Object.assign(Object.assign({},e),{checked:!1})}))},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"selectedItems",{set:function(e){this.handlerSetLocalSelectedItems(e)},enumerable:!1,configurable:!0}),e.prototype.ngOnInit=function(){},e.prototype.handlerSetLocalSelectedItems=function(e){var t=this;this.localSelectedItems=e,this.localData=this.localData.map((function(n){return n.value===t.SELECT_ALL_ENUM&&e.length===t.localData.length-1||e.some((function(e){return e.value===n.value}))?Object.assign(Object.assign({},n),{checked:!0}):n.value===t.SELECT_ALL_ENUM&&t.hideApplyButton?n:Object.assign(Object.assign({},n),{checked:!1})})),this.localData=this.formatValues(this.localData)},e.prototype.searchInputFocused=function(e){this.isSearchInputFocused=e},e.prototype.searchInputCanceled=function(e){e.stopPropagation(),this.searchInput="",this.isSearchInputFocused=!1},e.prototype.toggleDropdown=function(){var e=this;this.ngZone.run((function(){e.isOpen=!e.isOpen,e.isOpen&&(e.handlerSetLocalSelectedItems(e.localSelectedItems),e.localData=e.formatValues(e.localData)),e.isOpen?e.openDropdown(e.popupContainer,e.selectElement.nativeElement):e.onCancel()}))},e.prototype.openDropdown=function(e,t){var i=this,a=[new o.ConnectionPositionPair({originX:"start",originY:"bottom"},{overlayX:"start",overlayY:"top"},0,4),new o.ConnectionPositionPair({originX:"end",originY:"bottom"},{overlayX:"end",overlayY:"top"},0,4)],r=[new o.ConnectionPositionPair({originX:"start",originY:"top"},{overlayX:"start",overlayY:"bottom"},0,-4),new o.ConnectionPositionPair({originX:"end",originY:"top"},{overlayX:"end",overlayY:"bottom"},0,-4)],s=this.overlay.position().flexibleConnectedTo(t).withPositions(l("Right"===this.dropdownListPosition?a.reverse():a,"Right"===this.dropdownListPosition?r.reverse():r)).withPush(!0),c=new o.OverlayConfig({hasBackdrop:!0,backdropClass:"cdk-overlay-transparent-backdrop",scrollStrategy:this.overlay.scrollStrategies.reposition(),positionStrategy:s,width:t.clientWidth});this.overlayRef=this.overlay.create(c),this.dropdownListWidth&&this.overlayRef.updateSize({width:this.dropdownListWidth}),this.dropdownListHeight&&this.overlayRef.updateSize({height:this.dropdownListHeight}),this.overlayRef.attach(new n.TemplatePortal(e,this.viewContainerRef)),this.overlayRef.backdropClick().subscribe((function(e){i.onCancel()}))},e.prototype.filterByValue=function(e,t){return e.filter((function(e){return e.label.toLowerCase().includes(t.toLowerCase())}))},e.prototype.searchInputOnChange=function(e){this.searchInput=e,e?this.searchData=this.filterByValue(this.localData,e):(this.searchData=[],this.searchInput="")},e.prototype.formatValues=function(e){var t=this,n=e;this.options.sortLabels&&(n=l(e.filter((function(e){return e.checked})).sort((function(e,t){return e.label>t.label?1:t.label>e.label?-1:0})),e.filter((function(e){return!e.checked})).sort((function(e,t){return e.label>t.label?1:t.label>e.label?-1:0}))).filter((function(e){return e.value!==t.SELECT_ALL_ENUM})));return!n.some((function(e){return e.value===t.SELECT_ALL_ENUM}))&&this.enableSelectAll&&n.length>0&&n.unshift({label:"Select all",value:this.SELECT_ALL_ENUM,checked:n.every((function(e){return e.checked}))}),n},e.prototype.toggleSelectedItems=function(e,t){var n=this;if(e.stopPropagation(),this.enableSelectAll&&t.value===this.SELECT_ALL_ENUM)return this.localData=this.localData.map((function(e){return Object.assign(Object.assign({},e),{checked:!t.checked})})),void(this.hideApplyButton&&this.applyFilters());t.checked?this.localData=l(this.localData.map((function(e){return e.value===t.value||e.value===n.SELECT_ALL_ENUM?Object.assign(Object.assign({},e),{checked:!1}):e}))):(this.localData=l(this.localData.map((function(e){return e.value===t.value?Object.assign(Object.assign({},e),{checked:!0}):e}))),this.enableSelectAll&&this.localData.filter((function(e){return e.value!==n.SELECT_ALL_ENUM})).every((function(e){return e.checked}))&&(this.localData=l(this.localData.map((function(e){return e.value===n.SELECT_ALL_ENUM?Object.assign(Object.assign({},e),{checked:!0}):e}))))),this.searchEnabled&&this.searchInputOnChange(this.searchInput),this.hideApplyButton&&this.applyFilters()},e.prototype.applyFilters=function(){var e=this;this.onChange.emit(this.localData.filter((function(t){return t.checked&&t.value!==e.SELECT_ALL_ENUM})).map((function(e){e.checked;return function(e,t){var n={};for(var o in e)Object.prototype.hasOwnProperty.call(e,o)&&t.indexOf(o)<0&&(n[o]=e[o]);if(null!=e&&"function"==typeof Object.getOwnPropertySymbols){var i=0;for(o=Object.getOwnPropertySymbols(e);i<o.length;i++)t.indexOf(o[i])<0&&Object.prototype.propertyIsEnumerable.call(e,o[i])&&(n[o[i]]=e[o[i]])}return n}(e,["checked"])}))),this.hideApplyButton||this.onCancel()},e.prototype.onReset=function(){this.isSearchInputFocused=!1,this.onChange.emit([]),this.isOpen=!1,this.searchInput=""},e.prototype.onCancel=function(){var e,t=this;this.isSearchInputFocused=!1,this.localData=this.localData.map((function(e){return t.localSelectedItems.some((function(t){return t.value===e.value&&String(t.checked)!==String(e.checked)}))?e:e.value!==t.SELECT_ALL_ENUM&&t.hideApplyButton?Object.assign(Object.assign({},e),{checked:!1}):e})),this.isOpen=!1,this.searchInput="",null===(e=this.overlayRef)||void 0===e||e.detach(),this.searchInput=""},e}();p.decorators=[{type:t.Component,args:[{selector:"mis-multi-select-dropdown",template:'<div\n class="container"\n [ngStyle]="{\n height: height.length > 0 ? height : \'\',\n width: width.length > 0 ? width : \'\'\n }"\n>\n <div\n class="dropdown"\n #select\n tabindex="0"\n (keyup.enter)="toggleDropdown()"\n (click)="toggleDropdown()"\n [ngStyle]="{ background: isOpen ? \'#E6EBF7\' : \'\' }"\n >\n <div class="label">\n <ng-container *ngIf="!customLabelTemplate">\n <p class="text">{{ label }}</p>\n <p *ngIf="showSelectedCount && localSelectedItems?.length > 0" class="count">\n {{ localSelectedItems?.length }}\n </p>\n </ng-container>\n <ng-container *ngIf="customLabelTemplate">\n <ng-container *ngTemplateOutlet="customLabelTemplate">\n </ng-container>\n </ng-container>\n </div>\n <svg\n class="handle"\n [ngStyle]="{ transform: isOpen ? \'rotate(180deg)\' : \'rotate(0deg)\' }"\n width="20"\n height="20"\n viewBox="0 0 20 20"\n fill="none"\n xmlns="http://www.w3.org/2000/svg"\n >\n <path\n fill-rule="evenodd"\n clip-rule="evenodd"\n d="M13.825 7.15845L10 10.9751L6.175 7.15845L5 8.33345L10 13.3334L15 8.33345L13.825 7.15845Z"\n fill="#181F33"\n />\n </svg>\n </div>\n</div>\n<ng-template #popupContainer>\n <div\n class="popup-container"\n [ngStyle]="{\n height: dropdownListHeight,\n width: dropdownListWidth\n }"\n [ngClass]="{\n \'position-left\': dropdownListPosition === \'Left\',\n \'position-right\': dropdownListPosition === \'Right\'\n }"\n >\n <div *ngIf="searchEnabled" class="search-container">\n <svg\n *ngIf="!isSearchInputFocused"\n class="search-icon"\n width="24"\n height="24"\n viewBox="0 0 24 24"\n fill="none"\n xmlns="http://www.w3.org/2000/svg"\n >\n <path\n fill-rule="evenodd"\n clip-rule="evenodd"\n d="M4.21508 11.1456C4.21508 7.3179 7.33722 4.21165 11.1926 4.21165C15.048 4.21165 18.1702 7.3179 18.1702 11.1456C18.1702 12.6931 17.6599 14.1226 16.7972 15.2767L15.3685 16.7013C14.2044 17.5668 12.759 18.0796 11.1926 18.0796C7.33722 18.0796 4.21508 14.9734 4.21508 11.1456ZM15.9421 17.7835C14.6021 18.7329 12.9627 19.2913 11.1926 19.2913C6.66977 19.2913 3 15.6461 3 11.1456C3 6.64512 6.66977 3 11.1926 3C15.7155 3 19.3852 6.64512 19.3852 11.1456C19.3852 12.9371 18.8037 14.5931 17.8184 15.9375L19.8361 17.4048C20.6705 17.912 21.7554 18.6543 20.2454 20.215C18.7353 21.7756 18.0099 20.6663 17.4991 19.8364L15.9421 17.7835Z"\n fill="#6A737D"\n />\n </svg>\n <input\n [ngModel]="searchInput"\n [ngStyle]="{\n paddingLeft: isSearchInputFocused ? \'12px\' : \'45px\',\n border: isSearchInputFocused ? \'1px solid #0937B2\' : \'1px solid #e0e0e0\',\n paddingRight: isSearchInputFocused ? \'45px\' : \'10px\'\n }"\n (ngModelChange)="searchInputOnChange($event)"\n [placeholder]="isSearchInputFocused ? \'\' : \'Search Keyword\'"\n (focus)="searchInputFocused(true)"\n class="search-input"\n />\n <svg\n *ngIf="isSearchInputFocused"\n class="cancel-icon"\n (click)="searchInputCanceled($event)"\n width="24"\n height="24"\n viewBox="0 0 24 24"\n fill="none"\n xmlns="http://www.w3.org/2000/svg"\n >\n <path\n fill-rule="evenodd"\n clip-rule="evenodd"\n d="M8.87446 7.32144C8.44588 6.89285 7.751 6.89285 7.32242 7.32144C6.89383 7.75002 6.89383 8.4449 7.32242 8.87349L10.4488 11.9999L7.32357 15.1252C6.89498 15.5538 6.89498 16.2486 7.32357 16.6772C7.75215 17.1058 8.44703 17.1058 8.87561 16.6772L12.0009 13.552L15.1261 16.6772C15.5547 17.1058 16.2496 17.1058 16.6781 16.6772C17.1067 16.2486 17.1067 15.5537 16.6781 15.1251L13.5529 11.9999L16.6793 8.87354C17.1079 8.44496 17.1079 7.75008 16.6793 7.3215C16.2507 6.89291 15.5558 6.89291 15.1273 7.3215L12.0009 10.4479L8.87446 7.32144Z"\n fill="#6A737D"\n />\n </svg>\n </div>\n <div class="items">\n <div\n class="item"\n tabindex="0"\n (keyup.enter)="toggleSelectedItems($event, item)"\n (click)="toggleSelectedItems($event, item)"\n *ngFor="let item of searchInput ? searchData : localData"\n >\n <div class="checkbox-container-wrapper">\n <div class="checkbox-container">\n <mis-checkbox [checked]="item.checked" tabindex="-1"></mis-checkbox>\n </div>\n <p class="label">\n {{ item.label }}\n </p>\n </div>\n <div class="icon-container" *ngIf="item.icon">\n <img class="icon" [src]="item.icon" alt="no img" />\n </div>\n </div>\n <div class="noData" *ngIf="(searchInput ? searchData : localData).length === 0">\n {{ searchInput === "" ? noDataMessage : "No results" }}\n </div>\n </div>\n <div *ngIf="localData.length !== 0 && !hideApplyButton" class="actions-container">\n <div style="width: calc(50% - 4px)">\n <mis-button [name]="\'Reset\'" [type]="\'Text\'" [width]="\'100%\'" (click)="onReset()"></mis-button>\n </div>\n <div style="width: calc(50% - 4px)">\n <mis-button [name]="\'Apply\'" [type]="\'Solid\'" [width]="\'100%\'" (click)="applyFilters()"></mis-button>\n </div>\n </div>\n </div>\n</ng-template>\n',styles:['.container{position:relative;display:flex;justify-content:center;align-items:center;flex-wrap:wrap;height:32px;width:256px;font-family:Lato,sans-serif!important}.container .dropdown{height:inherit;border:1px solid #e0e0e0;border-radius:6px;background-color:#fff;cursor:pointer;display:flex;justify-content:space-between;align-items:center;width:100%;padding:0 12px;overflow:hidden}.container .dropdown:focus-visible,.container .dropdown:hover{background-color:#f5f7fc;outline:none}.container .dropdown .label{display:flex;justify-content:flex-start;align-items:center;width:calc(100% - 32px)}.container .dropdown .label,.container .dropdown .label .text{font-style:normal;font-weight:400;font-size:14px;line-height:20px;letter-spacing:.2px;color:#181f33}.container .dropdown .label .text{text-overflow:ellipsis;overflow:hidden;white-space:nowrap}.container .dropdown .label .count{background-color:#e0e0e0;border-radius:50%;padding:2px 7px;margin:0 0 0 8px;font-style:normal;font-weight:400;font-size:14px;line-height:20px;text-align:center;letter-spacing:.2px;color:#181f33}.container .dropdown .handle{width:24px;height:24px;transition:.3s;position:absolute;right:12px;border-radius:50%;overflow:hidden}.popup-container{width:100%;max-height:340px;padding-bottom:0;border:1px solid #e0e0e0;border-radius:8px;background-color:#fff;box-shadow:0 12px 24px 0 rgba(0,0,0,.12);display:flex;flex-direction:column;overflow:hidden;justify-content:space-between}.popup-container::-webkit-scrollbar{width:0;height:0}.popup-container .search-container{position:relative;box-sizing:border-box;padding:8px}.popup-container .search-container .search-icon{position:absolute;width:24px;height:24px;top:50%;transform:translateY(-50%);left:18px;z-index:1}.popup-container .search-container .search-input{height:40px;width:100%;padding:12px;border:1px solid #e0e0e0;box-sizing:border-box;border-radius:8px;outline:none;caret-color:#0937b2;font-style:normal;font-weight:400;font-size:12px;line-height:18px;display:flex;align-items:center;letter-spacing:.2px;color:#181f33}.popup-container .search-container .cancel-icon{position:absolute;cursor:pointer;width:24px;height:24px;top:50%;transform:translateY(-50%);right:18px;z-index:1}.popup-container .items{padding:8px 0 8px 8px;overflow-y:scroll}.popup-container .items::-webkit-scrollbar{width:5px;height:0}.popup-container .items::-webkit-scrollbar-thumb{background:#9aa7b4;border-radius:10px}.popup-container .items .noData{display:flex;justify-content:center;align-items:center;font-style:normal;font-weight:400;font-size:14px;line-height:20px;letter-spacing:.2px;color:#181f33}.popup-container .items .item{cursor:pointer;display:flex;justify-content:flex-start;align-items:center;padding:8px 12px;border-radius:6px;height:auto}.popup-container .items .item:focus-visible,.popup-container .items .item:hover{background-color:#f5f7fc;outline:none}.popup-container .items .item .checkbox-container-wrapper{display:flex;justify-content:flex-start;align-items:center;width:90%}.popup-container .items .item .checkbox-container-wrapper .checkbox-container{display:block;position:relative;cursor:pointer;font-size:22px;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.popup-container .items .item .checkbox-container-wrapper .checkbox-container input{position:absolute;opacity:0;cursor:pointer;height:0;width:0}.popup-container .items .item .checkbox-container-wrapper .checkbox-container input:checked~.checkmark:after{display:block}.popup-container .items .item .checkbox-container-wrapper .checkbox-container .checkmark{position:absolute;top:-8px;left:0;height:15px;width:15px;border-radius:4px;background-color:#0079f1;border:1px solid #6a737d}.popup-container .items .item .checkbox-container-wrapper .checkbox-container .checkmark:after{content:"";position:absolute;display:none;left:5px;top:2px;width:3px;height:6px;border:solid #fff;border-width:0 2px 2px 0;transform:rotate(45deg)}.popup-container .items .item .checkbox-container-wrapper .label{margin:0 0 0 8px;line-height:20px;font-size:14px;font-style:normal;font-weight:400;letter-spacing:.2;text-overflow:ellipsis;overflow:hidden}.popup-container .items .item .icon-container{width:10%;display:flex;justify-content:flex-end}.popup-container .items .item .icon-container .icon{width:20px;height:20px}.popup-container .actions-container{display:flex;justify-content:space-between;bottom:0;align-items:center;position:-webkit-sticky;position:sticky;padding:16px;background-color:#fff;border-top:1px solid #e0e0e0}.popup-container .actions-container .cancel{cursor:pointer;padding:10px 32px;text-align:center;font-size:16px;line-height:24px;border-radius:8px}.popup-container .actions-container .cancel:hover{background:rgba(9,55,178,.04)}.popup-container .actions-container .apply{cursor:pointer;padding:10px 32px;text-align:center;color:#fff;font-size:16px;line-height:24px;background:#0937b2;border-radius:8px}']}]}],p.ctorParameters=function(){return[{type:t.ElementRef},{type:o.Overlay},{type:t.ViewContainerRef},{type:t.NgZone}]},p.propDecorators={data:[{type:t.Input}],label:[{type:t.Input}],height:[{type:t.Input}],width:[{type:t.Input}],dropdownListHeight:[{type:t.Input}],dropdownListWidth:[{type:t.Input}],dropdownListPosition:[{type:t.Input}],enableSelectAll:[{type:t.Input}],searchEnabled:[{type:t.Input}],showSelectedCount:[{type:t.Input}],noDataMessage:[{type:t.Input}],options:[{type:t.Input}],selectedItems:[{type:t.Input}],hideApplyButton:[{type:t.Input}],customLabelTemplate:[{type:t.Input}],onChange:[{type:t.Output}],selectElement:[{type:t.ViewChild,args:["select",{static:!1}]}],popupContainer:[{type:t.ViewChild,args:["popupContainer",{static:!1}]}]};var d=function(){function e(){}return e.forRoot=function(){return{ngModule:e,providers:[]}},e}();d.decorators=[{type:t.NgModule,args:[{declarations:[p],imports:[i.CommonModule,a.FormsModule,o.OverlayModule,r.CheckboxModule,s.ButtonModule],exports:[p]}]}],e.MultiSelectDropdownComponent=p,e.MultiSelectDropdownModule=d,Object.defineProperty(e,"__esModule",{value:!0})}));
|
|
16
16
|
//# sourceMappingURL=mis-crystal-design-system-multi-select-dropdown.umd.min.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../node_modules/tslib/tslib.es6.js","../../../projects/mis-components/multi-select-dropdown/multi-select-dropdown.component.ts","../../../projects/mis-components/multi-select-dropdown/multi-select-dropdown.module.ts"],"names":["Object","create","__read","o","n","m","Symbol","iterator","r","e","i","call","ar","next","done","push","value","error","__spread","arguments","length","concat","MultiSelectDropdownComponent","eRef","overlay","viewContainerRef","ngZone","this","searchInput","isOpen","localSelectedItems","localData","searchData","isSearchInputFocused","SELECT_ALL_ENUM","label","height","width","dropdownListHeight","dropdownListWidth","dropdownListPosition","enableSelectAll","searchEnabled","showSelectedCount","noDataMessage","options","sortLabels","hideApplyButton","onChange","EventEmitter","defineProperty","prototype","values","map","item","assign","checked","handlerSetLocalSelectedItems","ngOnInit","_this","some","base","formatValues","searchInputFocused","isFocused","searchInputCanceled","event","stopPropagation","toggleDropdown","run","openDropdown","popupContainer","selectElement","nativeElement","onCancel","template","origin","positionsBottom","ConnectionPositionPair","originX","originY","overlayX","overlayY","positionsTop","positionStrategy","position","flexibleConnectedTo","withPositions","reverse","withPush","configs","OverlayConfig","hasBackdrop","backdropClass","scrollStrategy","scrollStrategies","reposition","clientWidth","overlayRef","updateSize","attach","TemplatePortal","backdropClick","subscribe","res","filterByValue","array","string","filter","toLowerCase","includes","searchInputOnChange","newValue","sortedArray","a","sort","b","t","option","unshift","every","y","toggleSelectedItems","applyFilters","emit","s","p","hasOwnProperty","indexOf","getOwnPropertySymbols","propertyIsEnumerable","__rest","onReset","String","_a","detach","Component","args","selector","ElementRef","Overlay","ViewContainerRef","NgZone","Input","Output","ViewChild","static","MultiSelectDropdownModule","forRoot","ngModule","providers","NgModule","declarations","imports","CommonModule","FormsModule","OverlayModule","CheckboxModule","ButtonModule","exports"],"mappings":"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","sourcesContent":["/*! *****************************************************************************\r\nCopyright (c) Microsoft Corporation.\r\n\r\nPermission to use, copy, modify, and/or distribute this software for any\r\npurpose with or without fee is hereby granted.\r\n\r\nTHE SOFTWARE IS PROVIDED \"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH\r\nREGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY\r\nAND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,\r\nINDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM\r\nLOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR\r\nOTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR\r\nPERFORMANCE OF THIS SOFTWARE.\r\n***************************************************************************** */\r\n/* global Reflect, Promise */\r\n\r\nvar extendStatics = function(d, b) {\r\n extendStatics = Object.setPrototypeOf ||\r\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\r\n function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };\r\n return extendStatics(d, b);\r\n};\r\n\r\nexport function __extends(d, b) {\r\n if (typeof b !== \"function\" && b !== null)\r\n throw new TypeError(\"Class extends value \" + String(b) + \" is not a constructor or null\");\r\n extendStatics(d, b);\r\n function __() { this.constructor = d; }\r\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\r\n}\r\n\r\nexport var __assign = function() {\r\n __assign = Object.assign || function __assign(t) {\r\n for (var s, i = 1, n = arguments.length; i < n; i++) {\r\n s = arguments[i];\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];\r\n }\r\n return t;\r\n }\r\n return __assign.apply(this, arguments);\r\n}\r\n\r\nexport function __rest(s, e) {\r\n var t = {};\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\r\n t[p] = s[p];\r\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\r\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\r\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))\r\n t[p[i]] = s[p[i]];\r\n }\r\n return t;\r\n}\r\n\r\nexport function __decorate(decorators, target, key, desc) {\r\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\r\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\r\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\r\n return c > 3 && r && Object.defineProperty(target, key, r), r;\r\n}\r\n\r\nexport function __param(paramIndex, decorator) {\r\n return function (target, key) { decorator(target, key, paramIndex); }\r\n}\r\n\r\nexport function __metadata(metadataKey, metadataValue) {\r\n if (typeof Reflect === \"object\" && typeof Reflect.metadata === \"function\") return Reflect.metadata(metadataKey, metadataValue);\r\n}\r\n\r\nexport function __awaiter(thisArg, _arguments, P, generator) {\r\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\r\n return new (P || (P = Promise))(function (resolve, reject) {\r\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\r\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\r\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\r\n step((generator = generator.apply(thisArg, _arguments || [])).next());\r\n });\r\n}\r\n\r\nexport function __generator(thisArg, body) {\r\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;\r\n return g = { next: verb(0), \"throw\": verb(1), \"return\": verb(2) }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\r\n function verb(n) { return function (v) { return step([n, v]); }; }\r\n function step(op) {\r\n if (f) throw new TypeError(\"Generator is already executing.\");\r\n while (_) try {\r\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\r\n if (y = 0, t) op = [op[0] & 2, t.value];\r\n switch (op[0]) {\r\n case 0: case 1: t = op; break;\r\n case 4: _.label++; return { value: op[1], done: false };\r\n case 5: _.label++; y = op[1]; op = [0]; continue;\r\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\r\n default:\r\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\r\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\r\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\r\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\r\n if (t[2]) _.ops.pop();\r\n _.trys.pop(); continue;\r\n }\r\n op = body.call(thisArg, _);\r\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\r\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\r\n }\r\n}\r\n\r\nexport var __createBinding = Object.create ? (function(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });\r\n}) : (function(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n o[k2] = m[k];\r\n});\r\n\r\nexport function __exportStar(m, o) {\r\n for (var p in m) if (p !== \"default\" && !Object.prototype.hasOwnProperty.call(o, p)) __createBinding(o, m, p);\r\n}\r\n\r\nexport function __values(o) {\r\n var s = typeof Symbol === \"function\" && Symbol.iterator, m = s && o[s], i = 0;\r\n if (m) return m.call(o);\r\n if (o && typeof o.length === \"number\") return {\r\n next: function () {\r\n if (o && i >= o.length) o = void 0;\r\n return { value: o && o[i++], done: !o };\r\n }\r\n };\r\n throw new TypeError(s ? \"Object is not iterable.\" : \"Symbol.iterator is not defined.\");\r\n}\r\n\r\nexport function __read(o, n) {\r\n var m = typeof Symbol === \"function\" && o[Symbol.iterator];\r\n if (!m) return o;\r\n var i = m.call(o), r, ar = [], e;\r\n try {\r\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);\r\n }\r\n catch (error) { e = { error: error }; }\r\n finally {\r\n try {\r\n if (r && !r.done && (m = i[\"return\"])) m.call(i);\r\n }\r\n finally { if (e) throw e.error; }\r\n }\r\n return ar;\r\n}\r\n\r\n/** @deprecated */\r\nexport function __spread() {\r\n for (var ar = [], i = 0; i < arguments.length; i++)\r\n ar = ar.concat(__read(arguments[i]));\r\n return ar;\r\n}\r\n\r\n/** @deprecated */\r\nexport function __spreadArrays() {\r\n for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length;\r\n for (var r = Array(s), k = 0, i = 0; i < il; i++)\r\n for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)\r\n r[k] = a[j];\r\n return r;\r\n}\r\n\r\nexport function __spreadArray(to, from, pack) {\r\n if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {\r\n if (ar || !(i in from)) {\r\n if (!ar) ar = Array.prototype.slice.call(from, 0, i);\r\n ar[i] = from[i];\r\n }\r\n }\r\n return to.concat(ar || Array.prototype.slice.call(from));\r\n}\r\n\r\nexport function __await(v) {\r\n return this instanceof __await ? (this.v = v, this) : new __await(v);\r\n}\r\n\r\nexport function __asyncGenerator(thisArg, _arguments, generator) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var g = generator.apply(thisArg, _arguments || []), i, q = [];\r\n return i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i;\r\n function verb(n) { if (g[n]) i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; }\r\n function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } }\r\n function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }\r\n function fulfill(value) { resume(\"next\", value); }\r\n function reject(value) { resume(\"throw\", value); }\r\n function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }\r\n}\r\n\r\nexport function __asyncDelegator(o) {\r\n var i, p;\r\n return i = {}, verb(\"next\"), verb(\"throw\", function (e) { throw e; }), verb(\"return\"), i[Symbol.iterator] = function () { return this; }, i;\r\n function verb(n, f) { i[n] = o[n] ? function (v) { return (p = !p) ? { value: __await(o[n](v)), done: n === \"return\" } : f ? f(v) : v; } : f; }\r\n}\r\n\r\nexport function __asyncValues(o) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var m = o[Symbol.asyncIterator], i;\r\n return m ? m.call(o) : (o = typeof __values === \"function\" ? __values(o) : o[Symbol.iterator](), i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i);\r\n function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }\r\n function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }\r\n}\r\n\r\nexport function __makeTemplateObject(cooked, raw) {\r\n if (Object.defineProperty) { Object.defineProperty(cooked, \"raw\", { value: raw }); } else { cooked.raw = raw; }\r\n return cooked;\r\n};\r\n\r\nvar __setModuleDefault = Object.create ? (function(o, v) {\r\n Object.defineProperty(o, \"default\", { enumerable: true, value: v });\r\n}) : function(o, v) {\r\n o[\"default\"] = v;\r\n};\r\n\r\nexport function __importStar(mod) {\r\n if (mod && mod.__esModule) return mod;\r\n var result = {};\r\n if (mod != null) for (var k in mod) if (k !== \"default\" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);\r\n __setModuleDefault(result, mod);\r\n return result;\r\n}\r\n\r\nexport function __importDefault(mod) {\r\n return (mod && mod.__esModule) ? mod : { default: mod };\r\n}\r\n\r\nexport function __classPrivateFieldGet(receiver, state, kind, f) {\r\n if (kind === \"a\" && !f) throw new TypeError(\"Private accessor was defined without a getter\");\r\n if (typeof state === \"function\" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError(\"Cannot read private member from an object whose class did not declare it\");\r\n return kind === \"m\" ? f : kind === \"a\" ? f.call(receiver) : f ? f.value : state.get(receiver);\r\n}\r\n\r\nexport function __classPrivateFieldSet(receiver, state, value, kind, f) {\r\n if (kind === \"m\") throw new TypeError(\"Private method is not writable\");\r\n if (kind === \"a\" && !f) throw new TypeError(\"Private accessor was defined without a setter\");\r\n if (typeof state === \"function\" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError(\"Cannot write private member to an object whose class did not declare it\");\r\n return (kind === \"a\" ? f.call(receiver, value) : f ? f.value = value : state.set(receiver, value)), value;\r\n}\r\n","import { Component, ElementRef, EventEmitter, Input, NgZone, OnInit, Output, TemplateRef, ViewChild, ViewContainerRef } from \"@angular/core\";\nimport { TemplatePortal } from \"@angular/cdk/portal\";\nimport { OverlayRef, Overlay, ConnectionPositionPair, OverlayConfig } from \"@angular/cdk/overlay\";\n@Component({\n selector: \"mis-multi-select-dropdown\",\n templateUrl: \"./multi-select-dropdown.component.html\",\n styleUrls: [\"./multi-select-dropdown.component.scss\"]\n})\nexport class MultiSelectDropdownComponent implements OnInit {\n searchInput: string = \"\";\n isOpen = false;\n localSelectedItems: MultiSelectDropdownItem[] = [];\n localData: MultiSelectDropdownItem[] = [];\n searchData: MultiSelectDropdownItem[] = [];\n isSearchInputFocused: boolean = false;\n SELECT_ALL_ENUM = \"SELECT_ALL_ENABLED\";\n @Input() set data(values: MultiSelectDropdownItem[]) {\n this.localData = values.map(item => {\n return { ...item, checked: false };\n });\n }\n @Input() label: string = \"Select\";\n @Input() height: string = \"\";\n @Input() width: string = \"\";\n @Input() dropdownListHeight: string = \"\";\n @Input() dropdownListWidth: string = \"\";\n @Input() dropdownListPosition: \"Left\" | \"Right\" = \"Left\";\n @Input() enableSelectAll: boolean = false;\n @Input() searchEnabled: boolean = true;\n @Input() showSelectedCount: boolean = false;\n @Input() noDataMessage: string = \"No Data\";\n @Input() options: OPTIONS = {\n sortLabels: true\n };\n @Input() set selectedItems(values: MultiSelectDropdownItem[]) {\n this.handlerSetLocalSelectedItems(values);\n }\n @Input() hideApplyButton: boolean = false;\n @Output() onChange: EventEmitter<any> = new EventEmitter();\n\n @ViewChild(\"select\", { static: false }) selectElement: ElementRef;\n @ViewChild(\"popupContainer\", { static: false }) popupContainer: TemplateRef<Element>;\n private overlayRef: OverlayRef;\n\n constructor(private eRef: ElementRef, private overlay: Overlay, private viewContainerRef: ViewContainerRef, private ngZone: NgZone) {}\n ngOnInit() {}\n\n handlerSetLocalSelectedItems(values) {\n this.localSelectedItems = values;\n this.localData = this.localData.map(item => {\n if (item.value === this.SELECT_ALL_ENUM && values.length === this.localData.length-1) {\n return { ...item, checked: true };\n }\n if (values.some(base => base.value === item.value)) {\n return { ...item, checked: true };\n } else {\n if(item.value !== this.SELECT_ALL_ENUM || !this.hideApplyButton){\n return { ...item, checked: false };\n }else{\n return item;\n }\n }\n });\n this.localData = this.formatValues(this.localData);\n }\n\n searchInputFocused(isFocused: boolean) {\n this.isSearchInputFocused = isFocused;\n }\n\n searchInputCanceled(event) {\n event.stopPropagation();\n this.searchInput = \"\";\n this.isSearchInputFocused = false;\n }\n\n toggleDropdown() {\n this.ngZone.run(() => {\n this.isOpen = !this.isOpen;\n if (this.isOpen) {\n this.handlerSetLocalSelectedItems(this.localSelectedItems);\n this.localData = this.formatValues(this.localData);\n }\n if (this.isOpen) this.openDropdown(this.popupContainer, this.selectElement.nativeElement);\n else this.onCancel();\n })\n }\n\n private openDropdown(template: TemplateRef<Element>, origin: HTMLElement): void {\n const positionsBottom = [\n new ConnectionPositionPair({ originX: \"start\", originY: \"bottom\" }, { overlayX: \"start\", overlayY: \"top\" }, 0, 4),\n new ConnectionPositionPair({ originX: \"end\", originY: \"bottom\" }, { overlayX: \"end\", overlayY: \"top\" }, 0, 4)\n ];\n const positionsTop = [\n new ConnectionPositionPair({ originX: \"start\", originY: \"top\" }, { overlayX: \"start\", overlayY: \"bottom\" }, 0, -4),\n new ConnectionPositionPair({ originX: \"end\", originY: \"top\" }, { overlayX: \"end\", overlayY: \"bottom\" }, 0, -4)\n ];\n const positionStrategy = this.overlay\n .position()\n .flexibleConnectedTo(origin)\n .withPositions([\n ...(this.dropdownListPosition === \"Right\" ? positionsBottom.reverse() : positionsBottom),\n ...(this.dropdownListPosition === \"Right\" ? positionsTop.reverse() : positionsTop)\n ])\n .withPush(true);\n const configs = new OverlayConfig({\n hasBackdrop: true,\n backdropClass: \"cdk-overlay-transparent-backdrop\",\n scrollStrategy: this.overlay.scrollStrategies.reposition(),\n positionStrategy,\n width: origin.clientWidth\n });\n this.overlayRef = this.overlay.create(configs);\n if (this.dropdownListWidth) this.overlayRef.updateSize({ width: this.dropdownListWidth });\n if (this.dropdownListHeight) this.overlayRef.updateSize({ height: this.dropdownListHeight });\n this.overlayRef.attach(new TemplatePortal(template, this.viewContainerRef));\n this.overlayRef.backdropClick().subscribe(res => {\n this.onCancel();\n });\n }\n\n filterByValue(array: MultiSelectDropdownItem[], string: string) {\n return array.filter(o => o.label.toLowerCase().includes(string.toLowerCase()));\n }\n\n searchInputOnChange(newValue) {\n this.searchInput = newValue;\n if (newValue) {\n this.searchData = this.filterByValue(this.localData, newValue);\n } else {\n this.searchData = [];\n this.searchInput = \"\";\n }\n }\n\n formatValues(array: MultiSelectDropdownItem[]) {\n let sortedArray = array;\n if (this.options.sortLabels) {\n const checkedValues = array\n .filter(a => a.checked)\n .sort((a: MultiSelectDropdownItem, b: MultiSelectDropdownItem) => (a.label > b.label ? 1 : b.label > a.label ? -1 : 0));\n const unCheckedValues = array\n .filter(a => !a.checked)\n .sort((a: MultiSelectDropdownItem, b: MultiSelectDropdownItem) => (a.label > b.label ? 1 : b.label > a.label ? -1 : 0));\n sortedArray = [...checkedValues, ...unCheckedValues].filter(t => t.value !== this.SELECT_ALL_ENUM);\n }\n if (!sortedArray.some(option => option.value === this.SELECT_ALL_ENUM) && this.enableSelectAll && sortedArray.length > 0) {\n sortedArray.unshift({\n label: \"Select all\",\n value: this.SELECT_ALL_ENUM,\n checked: sortedArray.every(y => y.checked)\n });\n }\n return sortedArray;\n }\n\n toggleSelectedItems(event, item: MultiSelectDropdownItem) {\n event.stopPropagation();\n if (this.enableSelectAll && item.value === this.SELECT_ALL_ENUM) {\n this.localData = this.localData.map(t => ({\n ...t,\n checked: !item.checked\n }));\n if (this.hideApplyButton) {\n this.applyFilters();\n }\n return;\n }\n if (item.checked) {\n this.localData = [\n ...this.localData.map(a => {\n if (a.value === item.value || a.value === this.SELECT_ALL_ENUM) {\n return {\n ...a,\n checked: false\n };\n }\n return a;\n })\n ];\n } else {\n this.localData = [\n ...this.localData.map(a => {\n if (a.value === item.value) {\n return {\n ...a,\n checked: true\n };\n }\n return a;\n })\n ];\n if (this.enableSelectAll && this.localData.filter(r => r.value !== this.SELECT_ALL_ENUM).every(t => t.checked)) {\n this.localData = [\n ...this.localData.map(a => {\n if (a.value === this.SELECT_ALL_ENUM) {\n return {\n ...a,\n checked: true\n };\n }\n return a;\n })\n ];\n }\n }\n if (this.searchEnabled) {\n this.searchInputOnChange(this.searchInput);\n }\n if (this.hideApplyButton) {\n this.applyFilters();\n }\n }\n\n applyFilters() {\n this.onChange.emit(\n this.localData\n .filter(a => {\n return a.checked && a.value !== this.SELECT_ALL_ENUM;\n })\n .map(item => {\n const { checked, ...data } = item;\n return data;\n })\n );\n if (!this.hideApplyButton) {\n this.onCancel();\n }\n }\n\n onReset() {\n this.isSearchInputFocused = false;\n this.onChange.emit([]);\n this.isOpen = false;\n this.searchInput = \"\";\n }\n\n onCancel() {\n this.isSearchInputFocused = false;\n this.localData = this.localData.map(a => {\n if (this.localSelectedItems.some(b => b.value === a.value && String(b.checked) !== String(a.checked))) {\n return a;\n } else {\n if(a.value !== this.SELECT_ALL_ENUM && this.hideApplyButton){\n return {\n ...a,\n checked: false\n };\n }\n return a;\n }\n });\n this.isOpen = false;\n this.searchInput = \"\";\n this.overlayRef?.detach();\n this.searchInput = \"\";\n }\n}\nexport interface MultiSelectDropdownItem {\n label: string;\n value: string;\n checked?: boolean;\n icon?: string;\n}\nexport interface OPTIONS {\n sortLabels: boolean;\n}\n","import { CommonModule } from \"@angular/common\";\nimport { FormsModule } from \"@angular/forms\";\nimport { NgModule, ModuleWithProviders } from \"@angular/core\";\nimport { MultiSelectDropdownComponent } from \"./multi-select-dropdown.component\";\nimport { CheckboxModule } from \"mis-crystal-design-system/checkbox\";\nimport { OverlayModule } from \"@angular/cdk/overlay\";\nimport { ButtonModule } from \"mis-crystal-design-system/button\";\n\n@NgModule({\n declarations: [MultiSelectDropdownComponent],\n imports: [CommonModule, FormsModule, OverlayModule, CheckboxModule, ButtonModule],\n exports: [MultiSelectDropdownComponent]\n})\nexport class MultiSelectDropdownModule {\n static forRoot(): ModuleWithProviders<MultiSelectDropdownModule> {\n return { ngModule: MultiSelectDropdownModule, providers: [] };\n }\n}\n"]}
|
|
1
|
+
{"version":3,"sources":["../../../node_modules/tslib/tslib.es6.js","../../../projects/mis-components/multi-select-dropdown/multi-select-dropdown.component.ts","../../../projects/mis-components/multi-select-dropdown/multi-select-dropdown.module.ts"],"names":["Object","create","__read","o","n","m","Symbol","iterator","r","e","i","call","ar","next","done","push","value","error","__spread","arguments","length","concat","MultiSelectDropdownComponent","eRef","overlay","viewContainerRef","ngZone","this","searchInput","isOpen","localSelectedItems","localData","searchData","isSearchInputFocused","SELECT_ALL_ENUM","label","height","width","dropdownListHeight","dropdownListWidth","dropdownListPosition","enableSelectAll","searchEnabled","showSelectedCount","noDataMessage","options","sortLabels","hideApplyButton","onChange","EventEmitter","defineProperty","prototype","values","map","item","assign","checked","handlerSetLocalSelectedItems","ngOnInit","_this","some","base","formatValues","searchInputFocused","isFocused","searchInputCanceled","event","stopPropagation","toggleDropdown","run","openDropdown","popupContainer","selectElement","nativeElement","onCancel","template","origin","positionsBottom","ConnectionPositionPair","originX","originY","overlayX","overlayY","positionsTop","positionStrategy","position","flexibleConnectedTo","withPositions","reverse","withPush","configs","OverlayConfig","hasBackdrop","backdropClass","scrollStrategy","scrollStrategies","reposition","clientWidth","overlayRef","updateSize","attach","TemplatePortal","backdropClick","subscribe","res","filterByValue","array","string","filter","toLowerCase","includes","searchInputOnChange","newValue","sortedArray","a","sort","b","t","option","unshift","every","y","toggleSelectedItems","applyFilters","emit","s","p","hasOwnProperty","indexOf","getOwnPropertySymbols","propertyIsEnumerable","__rest","onReset","String","_a","detach","Component","args","selector","ElementRef","Overlay","ViewContainerRef","NgZone","Input","Output","ViewChild","static","MultiSelectDropdownModule","forRoot","ngModule","providers","NgModule","declarations","imports","CommonModule","FormsModule","OverlayModule","CheckboxModule","ButtonModule","exports"],"mappings":"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","sourcesContent":["/*! *****************************************************************************\r\nCopyright (c) Microsoft Corporation.\r\n\r\nPermission to use, copy, modify, and/or distribute this software for any\r\npurpose with or without fee is hereby granted.\r\n\r\nTHE SOFTWARE IS PROVIDED \"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH\r\nREGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY\r\nAND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,\r\nINDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM\r\nLOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR\r\nOTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR\r\nPERFORMANCE OF THIS SOFTWARE.\r\n***************************************************************************** */\r\n/* global Reflect, Promise */\r\n\r\nvar extendStatics = function(d, b) {\r\n extendStatics = Object.setPrototypeOf ||\r\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\r\n function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };\r\n return extendStatics(d, b);\r\n};\r\n\r\nexport function __extends(d, b) {\r\n if (typeof b !== \"function\" && b !== null)\r\n throw new TypeError(\"Class extends value \" + String(b) + \" is not a constructor or null\");\r\n extendStatics(d, b);\r\n function __() { this.constructor = d; }\r\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\r\n}\r\n\r\nexport var __assign = function() {\r\n __assign = Object.assign || function __assign(t) {\r\n for (var s, i = 1, n = arguments.length; i < n; i++) {\r\n s = arguments[i];\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];\r\n }\r\n return t;\r\n }\r\n return __assign.apply(this, arguments);\r\n}\r\n\r\nexport function __rest(s, e) {\r\n var t = {};\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\r\n t[p] = s[p];\r\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\r\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\r\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))\r\n t[p[i]] = s[p[i]];\r\n }\r\n return t;\r\n}\r\n\r\nexport function __decorate(decorators, target, key, desc) {\r\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\r\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\r\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\r\n return c > 3 && r && Object.defineProperty(target, key, r), r;\r\n}\r\n\r\nexport function __param(paramIndex, decorator) {\r\n return function (target, key) { decorator(target, key, paramIndex); }\r\n}\r\n\r\nexport function __metadata(metadataKey, metadataValue) {\r\n if (typeof Reflect === \"object\" && typeof Reflect.metadata === \"function\") return Reflect.metadata(metadataKey, metadataValue);\r\n}\r\n\r\nexport function __awaiter(thisArg, _arguments, P, generator) {\r\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\r\n return new (P || (P = Promise))(function (resolve, reject) {\r\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\r\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\r\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\r\n step((generator = generator.apply(thisArg, _arguments || [])).next());\r\n });\r\n}\r\n\r\nexport function __generator(thisArg, body) {\r\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;\r\n return g = { next: verb(0), \"throw\": verb(1), \"return\": verb(2) }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\r\n function verb(n) { return function (v) { return step([n, v]); }; }\r\n function step(op) {\r\n if (f) throw new TypeError(\"Generator is already executing.\");\r\n while (_) try {\r\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\r\n if (y = 0, t) op = [op[0] & 2, t.value];\r\n switch (op[0]) {\r\n case 0: case 1: t = op; break;\r\n case 4: _.label++; return { value: op[1], done: false };\r\n case 5: _.label++; y = op[1]; op = [0]; continue;\r\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\r\n default:\r\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\r\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\r\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\r\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\r\n if (t[2]) _.ops.pop();\r\n _.trys.pop(); continue;\r\n }\r\n op = body.call(thisArg, _);\r\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\r\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\r\n }\r\n}\r\n\r\nexport var __createBinding = Object.create ? (function(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });\r\n}) : (function(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n o[k2] = m[k];\r\n});\r\n\r\nexport function __exportStar(m, o) {\r\n for (var p in m) if (p !== \"default\" && !Object.prototype.hasOwnProperty.call(o, p)) __createBinding(o, m, p);\r\n}\r\n\r\nexport function __values(o) {\r\n var s = typeof Symbol === \"function\" && Symbol.iterator, m = s && o[s], i = 0;\r\n if (m) return m.call(o);\r\n if (o && typeof o.length === \"number\") return {\r\n next: function () {\r\n if (o && i >= o.length) o = void 0;\r\n return { value: o && o[i++], done: !o };\r\n }\r\n };\r\n throw new TypeError(s ? \"Object is not iterable.\" : \"Symbol.iterator is not defined.\");\r\n}\r\n\r\nexport function __read(o, n) {\r\n var m = typeof Symbol === \"function\" && o[Symbol.iterator];\r\n if (!m) return o;\r\n var i = m.call(o), r, ar = [], e;\r\n try {\r\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);\r\n }\r\n catch (error) { e = { error: error }; }\r\n finally {\r\n try {\r\n if (r && !r.done && (m = i[\"return\"])) m.call(i);\r\n }\r\n finally { if (e) throw e.error; }\r\n }\r\n return ar;\r\n}\r\n\r\n/** @deprecated */\r\nexport function __spread() {\r\n for (var ar = [], i = 0; i < arguments.length; i++)\r\n ar = ar.concat(__read(arguments[i]));\r\n return ar;\r\n}\r\n\r\n/** @deprecated */\r\nexport function __spreadArrays() {\r\n for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length;\r\n for (var r = Array(s), k = 0, i = 0; i < il; i++)\r\n for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)\r\n r[k] = a[j];\r\n return r;\r\n}\r\n\r\nexport function __spreadArray(to, from, pack) {\r\n if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {\r\n if (ar || !(i in from)) {\r\n if (!ar) ar = Array.prototype.slice.call(from, 0, i);\r\n ar[i] = from[i];\r\n }\r\n }\r\n return to.concat(ar || Array.prototype.slice.call(from));\r\n}\r\n\r\nexport function __await(v) {\r\n return this instanceof __await ? (this.v = v, this) : new __await(v);\r\n}\r\n\r\nexport function __asyncGenerator(thisArg, _arguments, generator) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var g = generator.apply(thisArg, _arguments || []), i, q = [];\r\n return i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i;\r\n function verb(n) { if (g[n]) i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; }\r\n function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } }\r\n function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }\r\n function fulfill(value) { resume(\"next\", value); }\r\n function reject(value) { resume(\"throw\", value); }\r\n function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }\r\n}\r\n\r\nexport function __asyncDelegator(o) {\r\n var i, p;\r\n return i = {}, verb(\"next\"), verb(\"throw\", function (e) { throw e; }), verb(\"return\"), i[Symbol.iterator] = function () { return this; }, i;\r\n function verb(n, f) { i[n] = o[n] ? function (v) { return (p = !p) ? { value: __await(o[n](v)), done: n === \"return\" } : f ? f(v) : v; } : f; }\r\n}\r\n\r\nexport function __asyncValues(o) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var m = o[Symbol.asyncIterator], i;\r\n return m ? m.call(o) : (o = typeof __values === \"function\" ? __values(o) : o[Symbol.iterator](), i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i);\r\n function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }\r\n function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }\r\n}\r\n\r\nexport function __makeTemplateObject(cooked, raw) {\r\n if (Object.defineProperty) { Object.defineProperty(cooked, \"raw\", { value: raw }); } else { cooked.raw = raw; }\r\n return cooked;\r\n};\r\n\r\nvar __setModuleDefault = Object.create ? (function(o, v) {\r\n Object.defineProperty(o, \"default\", { enumerable: true, value: v });\r\n}) : function(o, v) {\r\n o[\"default\"] = v;\r\n};\r\n\r\nexport function __importStar(mod) {\r\n if (mod && mod.__esModule) return mod;\r\n var result = {};\r\n if (mod != null) for (var k in mod) if (k !== \"default\" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);\r\n __setModuleDefault(result, mod);\r\n return result;\r\n}\r\n\r\nexport function __importDefault(mod) {\r\n return (mod && mod.__esModule) ? mod : { default: mod };\r\n}\r\n\r\nexport function __classPrivateFieldGet(receiver, state, kind, f) {\r\n if (kind === \"a\" && !f) throw new TypeError(\"Private accessor was defined without a getter\");\r\n if (typeof state === \"function\" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError(\"Cannot read private member from an object whose class did not declare it\");\r\n return kind === \"m\" ? f : kind === \"a\" ? f.call(receiver) : f ? f.value : state.get(receiver);\r\n}\r\n\r\nexport function __classPrivateFieldSet(receiver, state, value, kind, f) {\r\n if (kind === \"m\") throw new TypeError(\"Private method is not writable\");\r\n if (kind === \"a\" && !f) throw new TypeError(\"Private accessor was defined without a setter\");\r\n if (typeof state === \"function\" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError(\"Cannot write private member to an object whose class did not declare it\");\r\n return (kind === \"a\" ? f.call(receiver, value) : f ? f.value = value : state.set(receiver, value)), value;\r\n}\r\n","import { Component, ElementRef, EventEmitter, Input, NgZone, OnInit, Output, TemplateRef, ViewChild, ViewContainerRef } from \"@angular/core\";\nimport { TemplatePortal } from \"@angular/cdk/portal\";\nimport { OverlayRef, Overlay, ConnectionPositionPair, OverlayConfig } from \"@angular/cdk/overlay\";\n@Component({\n selector: \"mis-multi-select-dropdown\",\n templateUrl: \"./multi-select-dropdown.component.html\",\n styleUrls: [\"./multi-select-dropdown.component.scss\"]\n})\nexport class MultiSelectDropdownComponent implements OnInit {\n searchInput: string = \"\";\n isOpen = false;\n localSelectedItems: MultiSelectDropdownItem[] = [];\n localData: MultiSelectDropdownItem[] = [];\n searchData: MultiSelectDropdownItem[] = [];\n isSearchInputFocused: boolean = false;\n SELECT_ALL_ENUM = \"SELECT_ALL_ENABLED\";\n @Input() set data(values: MultiSelectDropdownItem[]) {\n this.localData = values.map(item => {\n return { ...item, checked: false };\n });\n }\n @Input() label: string = \"Select\";\n @Input() height: string = \"\";\n @Input() width: string = \"\";\n @Input() dropdownListHeight: string = \"\";\n @Input() dropdownListWidth: string = \"\";\n @Input() dropdownListPosition: \"Left\" | \"Right\" = \"Left\";\n @Input() enableSelectAll: boolean = false;\n @Input() searchEnabled: boolean = true;\n @Input() showSelectedCount: boolean = false;\n @Input() noDataMessage: string = \"No Data\";\n @Input() options: OPTIONS = {\n sortLabels: true\n };\n @Input() set selectedItems(values: MultiSelectDropdownItem[]) {\n this.handlerSetLocalSelectedItems(values);\n }\n @Input() hideApplyButton: boolean = false;\n @Input() customLabelTemplate : TemplateRef<any>;\n @Output() onChange: EventEmitter<any> = new EventEmitter();\n\n @ViewChild(\"select\", { static: false }) selectElement: ElementRef;\n @ViewChild(\"popupContainer\", { static: false }) popupContainer: TemplateRef<Element>;\n private overlayRef: OverlayRef;\n\n constructor(private eRef: ElementRef, private overlay: Overlay, private viewContainerRef: ViewContainerRef, private ngZone: NgZone) {}\n ngOnInit() {}\n\n handlerSetLocalSelectedItems(values) {\n this.localSelectedItems = values;\n this.localData = this.localData.map(item => {\n if (item.value === this.SELECT_ALL_ENUM && values.length === this.localData.length-1) {\n return { ...item, checked: true };\n }\n if (values.some(base => base.value === item.value)) {\n return { ...item, checked: true };\n } else {\n if(item.value !== this.SELECT_ALL_ENUM || !this.hideApplyButton){\n return { ...item, checked: false };\n }else{\n return item;\n }\n }\n });\n this.localData = this.formatValues(this.localData);\n }\n\n searchInputFocused(isFocused: boolean) {\n this.isSearchInputFocused = isFocused;\n }\n\n searchInputCanceled(event) {\n event.stopPropagation();\n this.searchInput = \"\";\n this.isSearchInputFocused = false;\n }\n\n toggleDropdown() {\n this.ngZone.run(() => {\n this.isOpen = !this.isOpen;\n if (this.isOpen) {\n this.handlerSetLocalSelectedItems(this.localSelectedItems);\n this.localData = this.formatValues(this.localData);\n }\n if (this.isOpen) this.openDropdown(this.popupContainer, this.selectElement.nativeElement);\n else this.onCancel();\n })\n }\n\n private openDropdown(template: TemplateRef<Element>, origin: HTMLElement): void {\n const positionsBottom = [\n new ConnectionPositionPair({ originX: \"start\", originY: \"bottom\" }, { overlayX: \"start\", overlayY: \"top\" }, 0, 4),\n new ConnectionPositionPair({ originX: \"end\", originY: \"bottom\" }, { overlayX: \"end\", overlayY: \"top\" }, 0, 4)\n ];\n const positionsTop = [\n new ConnectionPositionPair({ originX: \"start\", originY: \"top\" }, { overlayX: \"start\", overlayY: \"bottom\" }, 0, -4),\n new ConnectionPositionPair({ originX: \"end\", originY: \"top\" }, { overlayX: \"end\", overlayY: \"bottom\" }, 0, -4)\n ];\n const positionStrategy = this.overlay\n .position()\n .flexibleConnectedTo(origin)\n .withPositions([\n ...(this.dropdownListPosition === \"Right\" ? positionsBottom.reverse() : positionsBottom),\n ...(this.dropdownListPosition === \"Right\" ? positionsTop.reverse() : positionsTop)\n ])\n .withPush(true);\n const configs = new OverlayConfig({\n hasBackdrop: true,\n backdropClass: \"cdk-overlay-transparent-backdrop\",\n scrollStrategy: this.overlay.scrollStrategies.reposition(),\n positionStrategy,\n width: origin.clientWidth\n });\n this.overlayRef = this.overlay.create(configs);\n if (this.dropdownListWidth) this.overlayRef.updateSize({ width: this.dropdownListWidth });\n if (this.dropdownListHeight) this.overlayRef.updateSize({ height: this.dropdownListHeight });\n this.overlayRef.attach(new TemplatePortal(template, this.viewContainerRef));\n this.overlayRef.backdropClick().subscribe(res => {\n this.onCancel();\n });\n }\n\n filterByValue(array: MultiSelectDropdownItem[], string: string) {\n return array.filter(o => o.label.toLowerCase().includes(string.toLowerCase()));\n }\n\n searchInputOnChange(newValue) {\n this.searchInput = newValue;\n if (newValue) {\n this.searchData = this.filterByValue(this.localData, newValue);\n } else {\n this.searchData = [];\n this.searchInput = \"\";\n }\n }\n\n formatValues(array: MultiSelectDropdownItem[]) {\n let sortedArray = array;\n if (this.options.sortLabels) {\n const checkedValues = array\n .filter(a => a.checked)\n .sort((a: MultiSelectDropdownItem, b: MultiSelectDropdownItem) => (a.label > b.label ? 1 : b.label > a.label ? -1 : 0));\n const unCheckedValues = array\n .filter(a => !a.checked)\n .sort((a: MultiSelectDropdownItem, b: MultiSelectDropdownItem) => (a.label > b.label ? 1 : b.label > a.label ? -1 : 0));\n sortedArray = [...checkedValues, ...unCheckedValues].filter(t => t.value !== this.SELECT_ALL_ENUM);\n }\n if (!sortedArray.some(option => option.value === this.SELECT_ALL_ENUM) && this.enableSelectAll && sortedArray.length > 0) {\n sortedArray.unshift({\n label: \"Select all\",\n value: this.SELECT_ALL_ENUM,\n checked: sortedArray.every(y => y.checked)\n });\n }\n return sortedArray;\n }\n\n toggleSelectedItems(event, item: MultiSelectDropdownItem) {\n event.stopPropagation();\n if (this.enableSelectAll && item.value === this.SELECT_ALL_ENUM) {\n this.localData = this.localData.map(t => ({\n ...t,\n checked: !item.checked\n }));\n if (this.hideApplyButton) {\n this.applyFilters();\n }\n return;\n }\n if (item.checked) {\n this.localData = [\n ...this.localData.map(a => {\n if (a.value === item.value || a.value === this.SELECT_ALL_ENUM) {\n return {\n ...a,\n checked: false\n };\n }\n return a;\n })\n ];\n } else {\n this.localData = [\n ...this.localData.map(a => {\n if (a.value === item.value) {\n return {\n ...a,\n checked: true\n };\n }\n return a;\n })\n ];\n if (this.enableSelectAll && this.localData.filter(r => r.value !== this.SELECT_ALL_ENUM).every(t => t.checked)) {\n this.localData = [\n ...this.localData.map(a => {\n if (a.value === this.SELECT_ALL_ENUM) {\n return {\n ...a,\n checked: true\n };\n }\n return a;\n })\n ];\n }\n }\n if (this.searchEnabled) {\n this.searchInputOnChange(this.searchInput);\n }\n if (this.hideApplyButton) {\n this.applyFilters();\n }\n }\n\n applyFilters() {\n this.onChange.emit(\n this.localData\n .filter(a => {\n return a.checked && a.value !== this.SELECT_ALL_ENUM;\n })\n .map(item => {\n const { checked, ...data } = item;\n return data;\n })\n );\n if (!this.hideApplyButton) {\n this.onCancel();\n }\n }\n\n onReset() {\n this.isSearchInputFocused = false;\n this.onChange.emit([]);\n this.isOpen = false;\n this.searchInput = \"\";\n }\n\n onCancel() {\n this.isSearchInputFocused = false;\n this.localData = this.localData.map(a => {\n if (this.localSelectedItems.some(b => b.value === a.value && String(b.checked) !== String(a.checked))) {\n return a;\n } else {\n if(a.value !== this.SELECT_ALL_ENUM && this.hideApplyButton){\n return {\n ...a,\n checked: false\n };\n }\n return a;\n }\n });\n this.isOpen = false;\n this.searchInput = \"\";\n this.overlayRef?.detach();\n this.searchInput = \"\";\n }\n}\nexport interface MultiSelectDropdownItem {\n label: string;\n value: string;\n checked?: boolean;\n icon?: string;\n}\nexport interface OPTIONS {\n sortLabels: boolean;\n}\n","import { CommonModule } from \"@angular/common\";\nimport { FormsModule } from \"@angular/forms\";\nimport { NgModule, ModuleWithProviders } from \"@angular/core\";\nimport { MultiSelectDropdownComponent } from \"./multi-select-dropdown.component\";\nimport { CheckboxModule } from \"mis-crystal-design-system/checkbox\";\nimport { OverlayModule } from \"@angular/cdk/overlay\";\nimport { ButtonModule } from \"mis-crystal-design-system/button\";\n\n@NgModule({\n declarations: [MultiSelectDropdownComponent],\n imports: [CommonModule, FormsModule, OverlayModule, CheckboxModule, ButtonModule],\n exports: [MultiSelectDropdownComponent]\n})\nexport class MultiSelectDropdownModule {\n static forRoot(): ModuleWithProviders<MultiSelectDropdownModule> {\n return { ngModule: MultiSelectDropdownModule, providers: [] };\n }\n}\n"]}
|
|
@@ -0,0 +1,73 @@
|
|
|
1
|
+
(function (global, factory) {
|
|
2
|
+
typeof exports === 'object' && typeof module !== 'undefined' ? factory(exports, require('@angular/core'), require('@angular/forms'), require('@angular/common')) :
|
|
3
|
+
typeof define === 'function' && define.amd ? define('mis-crystal-design-system/slider', ['exports', '@angular/core', '@angular/forms', '@angular/common'], factory) :
|
|
4
|
+
(global = typeof globalThis !== 'undefined' ? globalThis : global || self, factory((global['mis-crystal-design-system'] = global['mis-crystal-design-system'] || {}, global['mis-crystal-design-system'].slider = {}), global.ng.core, global.ng.forms, global.ng.common));
|
|
5
|
+
}(this, (function (exports, core, forms, common) { 'use strict';
|
|
6
|
+
|
|
7
|
+
var SliderComponent = /** @class */ (function () {
|
|
8
|
+
function SliderComponent(formBuilder) {
|
|
9
|
+
this.formBuilder = formBuilder;
|
|
10
|
+
this.min = 0;
|
|
11
|
+
this.max = 100;
|
|
12
|
+
this.value = 0;
|
|
13
|
+
this.valueChange = new core.EventEmitter();
|
|
14
|
+
}
|
|
15
|
+
SliderComponent.prototype.ngOnInit = function () {
|
|
16
|
+
this.sliderForm = this.formBuilder.group({
|
|
17
|
+
sliderFormControl: [this.value]
|
|
18
|
+
});
|
|
19
|
+
};
|
|
20
|
+
SliderComponent.prototype.onInputChange = function (value) {
|
|
21
|
+
this.value = value;
|
|
22
|
+
this.sliderForm.patchValue({ sliderFormControl: value });
|
|
23
|
+
this.valueChange.emit(this.value);
|
|
24
|
+
};
|
|
25
|
+
return SliderComponent;
|
|
26
|
+
}());
|
|
27
|
+
SliderComponent.decorators = [
|
|
28
|
+
{ type: core.Component, args: [{
|
|
29
|
+
selector: 'mis-slider',
|
|
30
|
+
template: "<form [formGroup]=\"sliderForm\">\n <div class=\"slider\">\n <input type=\"range\" [min]=\"min\" [max]=\"max\" formControlName=\"sliderFormControl\" (input)=\"onInputChange($event.target.value)\" />\n </div>\n </form>\n \n\n ",
|
|
31
|
+
styles: [".slider{width:100%;display:flex;align-items:center;input[type=range]{width:100%;-webkit-appearance:none;-moz-appearance:none;appearance:none;height:8px;background:#cbddfb;outline:none;border-radius:5px;&::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;width:22px;height:22px;background:#0937b2;cursor:pointer;border-radius:50%}&::-moz-range-thumb{width:15px;height:15px;background:#0937b2;cursor:pointer;border-radius:50%}}span{margin-left:10px}}"]
|
|
32
|
+
},] }
|
|
33
|
+
];
|
|
34
|
+
SliderComponent.ctorParameters = function () { return [
|
|
35
|
+
{ type: forms.FormBuilder }
|
|
36
|
+
]; };
|
|
37
|
+
SliderComponent.propDecorators = {
|
|
38
|
+
min: [{ type: core.Input }],
|
|
39
|
+
max: [{ type: core.Input }],
|
|
40
|
+
value: [{ type: core.Input }],
|
|
41
|
+
valueChange: [{ type: core.Output }]
|
|
42
|
+
};
|
|
43
|
+
|
|
44
|
+
var SliderModule = /** @class */ (function () {
|
|
45
|
+
function SliderModule() {
|
|
46
|
+
}
|
|
47
|
+
return SliderModule;
|
|
48
|
+
}());
|
|
49
|
+
SliderModule.decorators = [
|
|
50
|
+
{ type: core.NgModule, args: [{
|
|
51
|
+
declarations: [
|
|
52
|
+
SliderComponent
|
|
53
|
+
],
|
|
54
|
+
imports: [
|
|
55
|
+
common.CommonModule,
|
|
56
|
+
forms.FormsModule,
|
|
57
|
+
forms.ReactiveFormsModule
|
|
58
|
+
],
|
|
59
|
+
exports: [SliderComponent]
|
|
60
|
+
},] }
|
|
61
|
+
];
|
|
62
|
+
|
|
63
|
+
/**
|
|
64
|
+
* Generated bundle index. Do not edit.
|
|
65
|
+
*/
|
|
66
|
+
|
|
67
|
+
exports.SliderComponent = SliderComponent;
|
|
68
|
+
exports.SliderModule = SliderModule;
|
|
69
|
+
|
|
70
|
+
Object.defineProperty(exports, '__esModule', { value: true });
|
|
71
|
+
|
|
72
|
+
})));
|
|
73
|
+
//# sourceMappingURL=mis-crystal-design-system-slider.umd.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"mis-crystal-design-system-slider.umd.js","sources":["../../../projects/mis-components/slider/slider.component.ts","../../../projects/mis-components/slider/slider.module.ts","../../../projects/mis-components/slider/mis-crystal-design-system-slider.ts"],"sourcesContent":["import { Component, EventEmitter, Input, OnInit, Output } from '@angular/core';\nimport { FormBuilder, FormGroup } from '@angular/forms';\n\n@Component({\n selector: 'mis-slider',\n templateUrl: './slider.component.html',\n styleUrls: ['./slider.component.css']\n})\nexport class SliderComponent implements OnInit {\n\n @Input() min?:number = 0;\n @Input() max?:number = 100;\n @Input() value: number = 0;\n @Output() valueChange = new EventEmitter<number>()\n\n sliderForm: FormGroup;\n\n constructor(private formBuilder: FormBuilder) { }\n\n ngOnInit(): void {\n this.sliderForm = this.formBuilder.group({\n sliderFormControl: [this.value]\n });\n }\n\n onInputChange(value: number) {\n this.value = value;\n this.sliderForm.patchValue({sliderFormControl: value})\n this.valueChange.emit(this.value);\n }\n\n}\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { SliderComponent } from './slider.component';\nimport { FormsModule, ReactiveFormsModule } from '@angular/forms';\n\n\n\n@NgModule({\n declarations: [\n SliderComponent\n ],\n imports: [\n CommonModule,\n FormsModule,\n ReactiveFormsModule\n ],\n exports: [SliderComponent]\n})\nexport class SliderModule { }\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["EventEmitter","Component","FormBuilder","Input","Output","NgModule","CommonModule","FormsModule","ReactiveFormsModule"],"mappings":";;;;;;;QAiBE,yBAAoB,WAAwB;YAAxB,gBAAW,GAAX,WAAW,CAAa;YAPnC,QAAG,GAAW,CAAC,CAAC;YAChB,QAAG,GAAW,GAAG,CAAC;YAClB,UAAK,GAAW,CAAC,CAAC;YACjB,gBAAW,GAAG,IAAIA,iBAAY,EAAU,CAAA;SAID;QAEjD,kCAAQ,GAAR;YACE,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC;gBACvC,iBAAiB,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC;aAChC,CAAC,CAAC;SACJ;QAED,uCAAa,GAAb,UAAc,KAAa;YACzB,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;YACnB,IAAI,CAAC,UAAU,CAAC,UAAU,CAAC,EAAC,iBAAiB,EAAE,KAAK,EAAC,CAAC,CAAA;YACtD,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;SACnC;;;;gBA1BFC,cAAS,SAAC;oBACT,QAAQ,EAAE,YAAY;oBACtB,2PAAsC;;iBAEvC;;;gBANQC,iBAAW;;;sBASjBC,UAAK;sBACLA,UAAK;wBACLA,UAAK;8BACLC,WAAM;;;;QCKT;;;;;gBAXCC,aAAQ,SAAC;oBACR,YAAY,EAAE;wBACZ,eAAe;qBAChB;oBACD,OAAO,EAAE;wBACPC,mBAAY;wBACZC,iBAAW;wBACXC,yBAAmB;qBACpB;oBACD,OAAO,EAAE,CAAC,eAAe,CAAC;iBAC3B;;;ICjBD;;;;;;;;;;;;;"}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
!function(e,r){"object"==typeof exports&&"undefined"!=typeof module?r(exports,require("@angular/core"),require("@angular/forms"),require("@angular/common")):"function"==typeof define&&define.amd?define("mis-crystal-design-system/slider",["exports","@angular/core","@angular/forms","@angular/common"],r):r(((e="undefined"!=typeof globalThis?globalThis:e||self)["mis-crystal-design-system"]=e["mis-crystal-design-system"]||{},e["mis-crystal-design-system"].slider={}),e.ng.core,e.ng.forms,e.ng.common)}(this,(function(e,r,n,t){"use strict";var o=function(){function e(e){this.formBuilder=e,this.min=0,this.max=100,this.value=0,this.valueChange=new r.EventEmitter}return e.prototype.ngOnInit=function(){this.sliderForm=this.formBuilder.group({sliderFormControl:[this.value]})},e.prototype.onInputChange=function(e){this.value=e,this.sliderForm.patchValue({sliderFormControl:e}),this.valueChange.emit(this.value)},e}();o.decorators=[{type:r.Component,args:[{selector:"mis-slider",template:'<form [formGroup]="sliderForm">\n <div class="slider">\n <input type="range" [min]="min" [max]="max" formControlName="sliderFormControl" (input)="onInputChange($event.target.value)" />\n </div>\n </form>\n \n\n ',styles:[".slider{width:100%;display:flex;align-items:center;input[type=range]{width:100%;-webkit-appearance:none;-moz-appearance:none;appearance:none;height:8px;background:#cbddfb;outline:none;border-radius:5px;&::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;width:22px;height:22px;background:#0937b2;cursor:pointer;border-radius:50%}&::-moz-range-thumb{width:15px;height:15px;background:#0937b2;cursor:pointer;border-radius:50%}}span{margin-left:10px}}"]}]}],o.ctorParameters=function(){return[{type:n.FormBuilder}]},o.propDecorators={min:[{type:r.Input}],max:[{type:r.Input}],value:[{type:r.Input}],valueChange:[{type:r.Output}]};var i=function(){};i.decorators=[{type:r.NgModule,args:[{declarations:[o],imports:[t.CommonModule,n.FormsModule,n.ReactiveFormsModule],exports:[o]}]}],e.SliderComponent=o,e.SliderModule=i,Object.defineProperty(e,"__esModule",{value:!0})}));
|
|
2
|
+
//# sourceMappingURL=mis-crystal-design-system-slider.umd.min.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../projects/mis-components/slider/slider.component.ts","../../../projects/mis-components/slider/slider.module.ts"],"names":["SliderComponent","formBuilder","this","min","max","value","valueChange","EventEmitter","prototype","ngOnInit","sliderForm","group","sliderFormControl","onInputChange","patchValue","emit","Component","args","selector","template","FormBuilder","Input","Output","NgModule","declarations","imports","CommonModule","FormsModule","ReactiveFormsModule","exports"],"mappings":"2iBAiBE,SAAAA,EAAoBC,GAAAC,KAAAD,YAAAA,EAPXC,KAAAC,IAAc,EACdD,KAAAE,IAAc,IACdF,KAAAG,MAAgB,EACfH,KAAAI,YAAc,IAAIC,EAAAA,oBAM5BP,EAAAQ,UAAAC,SAAA,WACEP,KAAKQ,WAAaR,KAAKD,YAAYU,MAAM,CACvCC,kBAAmB,CAACV,KAAKG,UAI7BL,EAAAQ,UAAAK,cAAA,SAAcR,GACZH,KAAKG,MAAQA,EACbH,KAAKQ,WAAWI,WAAW,CAACF,kBAAmBP,IAC/CH,KAAKI,YAAYS,KAAKb,KAAKG,iCAzB9BW,EAAAA,UAASC,KAAA,CAAC,CACTC,SAAU,aACVC,SAAA,yuBAJOC,EAAAA,4CASNC,EAAAA,mBACAA,EAAAA,qBACAA,EAAAA,2BACAC,EAAAA,gBCKH,iCAXCC,EAAAA,SAAQN,KAAA,CAAC,CACRO,aAAc,CACZxB,GAEFyB,QAAS,CACPC,EAAAA,aACAC,EAAAA,YACAC,EAAAA,qBAEFC,QAAS,CAAC7B","sourcesContent":["import { Component, EventEmitter, Input, OnInit, Output } from '@angular/core';\nimport { FormBuilder, FormGroup } from '@angular/forms';\n\n@Component({\n selector: 'mis-slider',\n templateUrl: './slider.component.html',\n styleUrls: ['./slider.component.css']\n})\nexport class SliderComponent implements OnInit {\n\n @Input() min?:number = 0;\n @Input() max?:number = 100;\n @Input() value: number = 0;\n @Output() valueChange = new EventEmitter<number>()\n\n sliderForm: FormGroup;\n\n constructor(private formBuilder: FormBuilder) { }\n\n ngOnInit(): void {\n this.sliderForm = this.formBuilder.group({\n sliderFormControl: [this.value]\n });\n }\n\n onInputChange(value: number) {\n this.value = value;\n this.sliderForm.patchValue({sliderFormControl: value})\n this.valueChange.emit(this.value);\n }\n\n}\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { SliderComponent } from './slider.component';\nimport { FormsModule, ReactiveFormsModule } from '@angular/forms';\n\n\n\n@NgModule({\n declarations: [\n SliderComponent\n ],\n imports: [\n CommonModule,\n FormsModule,\n ReactiveFormsModule\n ],\n exports: [SliderComponent]\n})\nexport class SliderModule { }\n"]}
|
|
@@ -0,0 +1,106 @@
|
|
|
1
|
+
(function (global, factory) {
|
|
2
|
+
typeof exports === 'object' && typeof module !== 'undefined' ? factory(exports, require('@angular/cdk/overlay'), require('@angular/cdk/portal'), require('@angular/core'), require('@angular/common')) :
|
|
3
|
+
typeof define === 'function' && define.amd ? define('mis-crystal-design-system/snackbar', ['exports', '@angular/cdk/overlay', '@angular/cdk/portal', '@angular/core', '@angular/common'], factory) :
|
|
4
|
+
(global = typeof globalThis !== 'undefined' ? globalThis : global || self, factory((global['mis-crystal-design-system'] = global['mis-crystal-design-system'] || {}, global['mis-crystal-design-system'].snackbar = {}), global.ng.cdk.overlay, global.ng.cdk.portal, global.ng.core, global.ng.common));
|
|
5
|
+
}(this, (function (exports, i1, portal, i0, common) { 'use strict';
|
|
6
|
+
|
|
7
|
+
// snackbar.component.ts
|
|
8
|
+
var SnackbarComponent = /** @class */ (function () {
|
|
9
|
+
function SnackbarComponent(input) {
|
|
10
|
+
this.input = input;
|
|
11
|
+
this.triggerAction = new i0.EventEmitter();
|
|
12
|
+
}
|
|
13
|
+
SnackbarComponent.prototype.triggerActionFunction = function () {
|
|
14
|
+
this.triggerAction.emit(true);
|
|
15
|
+
};
|
|
16
|
+
return SnackbarComponent;
|
|
17
|
+
}());
|
|
18
|
+
SnackbarComponent.decorators = [
|
|
19
|
+
{ type: i0.Component, args: [{
|
|
20
|
+
selector: 'mis-snackbar',
|
|
21
|
+
template: "<div class=\"snackbar-container\">\n <div class=\"messages\" *ngIf=\"!input.config.hasComponent\">\n\n <span class=\"message\">\n <img *ngIf=\"input.config.iconUrl\" [src]=\"input.config.iconUrl\" alt=\"\">\n {{ input.config.message }}\n </span>\n <div class=\"snackbar-action\" *ngIf=\"input.config.actionString\">\n <button (click)=\"triggerActionFunction()\">{{ input.config.actionString }}</button>\n </div>\n </div>\n <div class=\"component-container\" *ngIf=\"input.config.hasComponent\">\n <ng-content></ng-content>\n </div>\n</div>\n",
|
|
22
|
+
styles: [".snackbar-container{position:fixed;bottom:20px;left:50%;transform:translateX(-50%);background-color:#181f33;color:#fff;border-radius:8px;padding:8px 12px;max-width:400px;width:90%;z-index:1000;box-shadow:0 4px 8px rgba(0,0,0,.2)}.messages{display:flex;align-items:center;justify-content:space-between}.message{flex:1;padding-right:10px;font-size:16px;font-weight:700}.snackbar-action button{background-color:#181f33;color:#fff;border:none;border-radius:4px;padding:8px 16px;cursor:pointer;font-size:16px!important;transition:background-color .3s ease}.snackbar-action button:hover{background-color:#0056b3}.component-container{margin-top:10px}@media (max-width:768px){.snackbar-container{left:10px;right:10px;transform:none;width:auto;max-width:none}}"]
|
|
23
|
+
},] }
|
|
24
|
+
];
|
|
25
|
+
SnackbarComponent.ctorParameters = function () { return [
|
|
26
|
+
{ type: SnackbarService }
|
|
27
|
+
]; };
|
|
28
|
+
SnackbarComponent.propDecorators = {
|
|
29
|
+
triggerAction: [{ type: i0.Output }]
|
|
30
|
+
};
|
|
31
|
+
|
|
32
|
+
var SnackbarService = /** @class */ (function () {
|
|
33
|
+
function SnackbarService(overlay) {
|
|
34
|
+
this.overlay = overlay;
|
|
35
|
+
}
|
|
36
|
+
SnackbarService.prototype.openSnackbar = function (config) {
|
|
37
|
+
var _this = this;
|
|
38
|
+
this.config = config;
|
|
39
|
+
var overlayConfig = new i1.OverlayConfig({
|
|
40
|
+
hasBackdrop: false,
|
|
41
|
+
positionStrategy: this.overlay.position().global().centerHorizontally().bottom("48px")
|
|
42
|
+
});
|
|
43
|
+
this.snackbarRef = this.overlay.create(overlayConfig);
|
|
44
|
+
var snackbarPortal = new portal.ComponentPortal(SnackbarComponent);
|
|
45
|
+
var componentRef = this.snackbarRef.attach(snackbarPortal);
|
|
46
|
+
// componentRef.instance.config = config;
|
|
47
|
+
config.duration = config.duration || 3000;
|
|
48
|
+
setTimeout(function () {
|
|
49
|
+
_this.closeSnackbar();
|
|
50
|
+
}, config.duration);
|
|
51
|
+
componentRef.instance.triggerAction.subscribe(function () {
|
|
52
|
+
if (config.onActionClick) {
|
|
53
|
+
config.onActionClick();
|
|
54
|
+
}
|
|
55
|
+
_this.closeSnackbar();
|
|
56
|
+
});
|
|
57
|
+
};
|
|
58
|
+
SnackbarService.prototype.closeSnackbar = function () {
|
|
59
|
+
if (this.snackbarRef) {
|
|
60
|
+
this.snackbarRef.dispose();
|
|
61
|
+
this.snackbarRef = null;
|
|
62
|
+
}
|
|
63
|
+
};
|
|
64
|
+
return SnackbarService;
|
|
65
|
+
}());
|
|
66
|
+
SnackbarService.ɵprov = i0.ɵɵdefineInjectable({ factory: function SnackbarService_Factory() { return new SnackbarService(i0.ɵɵinject(i1.Overlay)); }, token: SnackbarService, providedIn: "root" });
|
|
67
|
+
SnackbarService.decorators = [
|
|
68
|
+
{ type: i0.Injectable, args: [{
|
|
69
|
+
providedIn: "root"
|
|
70
|
+
},] }
|
|
71
|
+
];
|
|
72
|
+
SnackbarService.ctorParameters = function () { return [
|
|
73
|
+
{ type: i1.Overlay }
|
|
74
|
+
]; };
|
|
75
|
+
|
|
76
|
+
var SnackbarModule = /** @class */ (function () {
|
|
77
|
+
function SnackbarModule() {
|
|
78
|
+
}
|
|
79
|
+
return SnackbarModule;
|
|
80
|
+
}());
|
|
81
|
+
SnackbarModule.decorators = [
|
|
82
|
+
{ type: i0.NgModule, args: [{
|
|
83
|
+
declarations: [
|
|
84
|
+
SnackbarComponent
|
|
85
|
+
],
|
|
86
|
+
imports: [
|
|
87
|
+
common.CommonModule
|
|
88
|
+
],
|
|
89
|
+
exports: [SnackbarComponent],
|
|
90
|
+
entryComponents: [SnackbarComponent],
|
|
91
|
+
providers: [SnackbarService]
|
|
92
|
+
},] }
|
|
93
|
+
];
|
|
94
|
+
|
|
95
|
+
/**
|
|
96
|
+
* Generated bundle index. Do not edit.
|
|
97
|
+
*/
|
|
98
|
+
|
|
99
|
+
exports.SnackbarComponent = SnackbarComponent;
|
|
100
|
+
exports.SnackbarModule = SnackbarModule;
|
|
101
|
+
exports.SnackbarService = SnackbarService;
|
|
102
|
+
|
|
103
|
+
Object.defineProperty(exports, '__esModule', { value: true });
|
|
104
|
+
|
|
105
|
+
})));
|
|
106
|
+
//# sourceMappingURL=mis-crystal-design-system-snackbar.umd.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"mis-crystal-design-system-snackbar.umd.js","sources":["../../../projects/mis-components/snackbar/snackbar/snackbar.component.ts","../../../projects/mis-components/snackbar/snackbar.service.ts","../../../projects/mis-components/snackbar/snackbar.module.ts","../../../projects/mis-components/snackbar/mis-crystal-design-system-snackbar.ts"],"sourcesContent":["// snackbar.component.ts\nimport { Component, EventEmitter, Input, Output } from '@angular/core';\nimport { SnackbarService } from '../snackbar.service';\n\n@Component({\n selector: 'mis-snackbar',\n templateUrl: \"./snackbar.component.html\",\n styleUrls: [\"./snackbar.component.css\"],\n})\nexport class SnackbarComponent {\n @Output() triggerAction = new EventEmitter<any>();\n constructor(public input: SnackbarService){}\n triggerActionFunction(){\n this.triggerAction.emit(true)\n }\n}\n","export interface ISnackBarConfig {\n message: string;\n actionString: string;\n hasComponent: boolean;\n iconUrl?: string;\n component?: ComponentRef<any>;\n duration?: number;\n onActionClick?: () => void;\n}\nimport { Overlay, OverlayConfig, OverlayRef } from \"@angular/cdk/overlay\";\nimport { ComponentPortal } from \"@angular/cdk/portal\";\nimport { ComponentRef, Injectable } from \"@angular/core\"; // Assuming you have defined ISnackBarConfig interface\nimport { SnackbarComponent } from \"./snackbar/snackbar.component\";\n\n@Injectable({\n providedIn: \"root\"\n})\nexport class SnackbarService {\n config: ISnackBarConfig;\n private snackbarRef: OverlayRef;\n\n constructor(private overlay: Overlay) {}\n\n openSnackbar(config: ISnackBarConfig): void {\n this.config = config;\n const overlayConfig = new OverlayConfig({\n hasBackdrop: false,\n positionStrategy: this.overlay.position().global().centerHorizontally().bottom(\"48px\")\n });\n\n this.snackbarRef = this.overlay.create(overlayConfig);\n\n const snackbarPortal = new ComponentPortal(SnackbarComponent);\n const componentRef = this.snackbarRef.attach(snackbarPortal);\n\n // componentRef.instance.config = config;\n\n config.duration = config.duration || 3000;\n setTimeout(() => {\n this.closeSnackbar();\n }, config.duration);\n\n componentRef.instance.triggerAction.subscribe(() => {\n if (config.onActionClick) {\n config.onActionClick();\n }\n this.closeSnackbar();\n });\n }\n\n closeSnackbar(): void {\n if (this.snackbarRef) {\n this.snackbarRef.dispose();\n this.snackbarRef = null;\n }\n }\n}\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { SnackbarComponent } from './snackbar/snackbar.component';\nimport { SnackbarService } from './snackbar.service';\n\n\n\n@NgModule({\n declarations: [\n SnackbarComponent\n ],\n imports: [\n CommonModule\n ],\n exports: [SnackbarComponent],\n entryComponents: [SnackbarComponent],\n providers: [SnackbarService]\n})\nexport class SnackbarModule { }\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["EventEmitter","Component","Output","OverlayConfig","ComponentPortal","Injectable","Overlay","NgModule","CommonModule"],"mappings":";;;;;;IAAA;;QAWE,2BAAmB,KAAsB;YAAtB,UAAK,GAAL,KAAK,CAAiB;YAD/B,kBAAa,GAAG,IAAIA,eAAY,EAAO,CAAC;SACN;QAC5C,iDAAqB,GAArB;YACE,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;SAC9B;;;;gBAVFC,YAAS,SAAC;oBACT,QAAQ,EAAE,cAAc;oBACxB,2kBAAwC;;iBAEzC;;;gBANQ,eAAe;;;gCAQrBC,SAAM;;;;QCWP,yBAAoB,OAAgB;YAAhB,YAAO,GAAP,OAAO,CAAS;SAAI;QAExC,sCAAY,GAAZ,UAAa,MAAuB;YAApC,iBAyBC;YAxBC,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;YACrB,IAAM,aAAa,GAAG,IAAIC,gBAAa,CAAC;gBACtC,WAAW,EAAE,KAAK;gBAClB,gBAAgB,EAAE,IAAI,CAAC,OAAO,CAAC,QAAQ,EAAE,CAAC,MAAM,EAAE,CAAC,kBAAkB,EAAE,CAAC,MAAM,CAAC,MAAM,CAAC;aACvF,CAAC,CAAC;YAEH,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC;YAEtD,IAAM,cAAc,GAAG,IAAIC,sBAAe,CAAC,iBAAiB,CAAC,CAAC;YAC9D,IAAM,YAAY,GAAG,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC;;YAI7D,MAAM,CAAC,QAAQ,GAAG,MAAM,CAAC,QAAQ,IAAI,IAAI,CAAC;YAC1C,UAAU,CAAC;gBACT,KAAI,CAAC,aAAa,EAAE,CAAC;aACtB,EAAE,MAAM,CAAC,QAAQ,CAAC,CAAC;YAEpB,YAAY,CAAC,QAAQ,CAAC,aAAa,CAAC,SAAS,CAAC;gBAC5C,IAAI,MAAM,CAAC,aAAa,EAAE;oBACxB,MAAM,CAAC,aAAa,EAAE,CAAC;iBACxB;gBACD,KAAI,CAAC,aAAa,EAAE,CAAC;aACtB,CAAC,CAAC;SACJ;QAED,uCAAa,GAAb;YACE,IAAI,IAAI,CAAC,WAAW,EAAE;gBACpB,IAAI,CAAC,WAAW,CAAC,OAAO,EAAE,CAAC;gBAC3B,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC;aACzB;SACF;;;;;gBAzCFC,aAAU,SAAC;oBACV,UAAU,EAAE,MAAM;iBACnB;;;gBAPQC,UAAO;;;;QCShB;;;;;gBAXCC,WAAQ,SAAC;oBACR,YAAY,EAAE;wBACZ,iBAAiB;qBAClB;oBACD,OAAO,EAAE;wBACPC,mBAAY;qBACb;oBACD,OAAO,EAAE,CAAC,iBAAiB,CAAC;oBAC5B,eAAe,EAAE,CAAC,iBAAiB,CAAC;oBACpC,SAAS,EAAE,CAAC,eAAe,CAAC;iBAC7B;;;ICjBD;;;;;;;;;;;;;;"}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
!function(n,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports,require("@angular/cdk/overlay"),require("@angular/cdk/portal"),require("@angular/core"),require("@angular/common")):"function"==typeof define&&define.amd?define("mis-crystal-design-system/snackbar",["exports","@angular/cdk/overlay","@angular/cdk/portal","@angular/core","@angular/common"],t):t(((n="undefined"!=typeof globalThis?globalThis:n||self)["mis-crystal-design-system"]=n["mis-crystal-design-system"]||{},n["mis-crystal-design-system"].snackbar={}),n.ng.cdk.overlay,n.ng.cdk.portal,n.ng.core,n.ng.common)}(this,(function(n,t,o,e,r){"use strict";var a=function(){function n(n){this.input=n,this.triggerAction=new e.EventEmitter}return n.prototype.triggerActionFunction=function(){this.triggerAction.emit(!0)},n}();a.decorators=[{type:e.Component,args:[{selector:"mis-snackbar",template:'<div class="snackbar-container">\n <div class="messages" *ngIf="!input.config.hasComponent">\n\n <span class="message">\n <img *ngIf="input.config.iconUrl" [src]="input.config.iconUrl" alt="">\n {{ input.config.message }}\n </span>\n <div class="snackbar-action" *ngIf="input.config.actionString">\n <button (click)="triggerActionFunction()">{{ input.config.actionString }}</button>\n </div>\n </div>\n <div class="component-container" *ngIf="input.config.hasComponent">\n <ng-content></ng-content>\n </div>\n</div>\n',styles:[".snackbar-container{position:fixed;bottom:20px;left:50%;transform:translateX(-50%);background-color:#181f33;color:#fff;border-radius:8px;padding:8px 12px;max-width:400px;width:90%;z-index:1000;box-shadow:0 4px 8px rgba(0,0,0,.2)}.messages{display:flex;align-items:center;justify-content:space-between}.message{flex:1;padding-right:10px;font-size:16px;font-weight:700}.snackbar-action button{background-color:#181f33;color:#fff;border:none;border-radius:4px;padding:8px 16px;cursor:pointer;font-size:16px!important;transition:background-color .3s ease}.snackbar-action button:hover{background-color:#0056b3}.component-container{margin-top:10px}@media (max-width:768px){.snackbar-container{left:10px;right:10px;transform:none;width:auto;max-width:none}}"]}]}],a.ctorParameters=function(){return[{type:i}]},a.propDecorators={triggerAction:[{type:e.Output}]};var i=function(){function n(n){this.overlay=n}return n.prototype.openSnackbar=function(n){var e=this;this.config=n;var r=new t.OverlayConfig({hasBackdrop:!1,positionStrategy:this.overlay.position().global().centerHorizontally().bottom("48px")});this.snackbarRef=this.overlay.create(r);var i=new o.ComponentPortal(a),c=this.snackbarRef.attach(i);n.duration=n.duration||3e3,setTimeout((function(){e.closeSnackbar()}),n.duration),c.instance.triggerAction.subscribe((function(){n.onActionClick&&n.onActionClick(),e.closeSnackbar()}))},n.prototype.closeSnackbar=function(){this.snackbarRef&&(this.snackbarRef.dispose(),this.snackbarRef=null)},n}();i.ɵprov=e.ɵɵdefineInjectable({factory:function(){return new i(e.ɵɵinject(t.Overlay))},token:i,providedIn:"root"}),i.decorators=[{type:e.Injectable,args:[{providedIn:"root"}]}],i.ctorParameters=function(){return[{type:t.Overlay}]};var c=function(){};c.decorators=[{type:e.NgModule,args:[{declarations:[a],imports:[r.CommonModule],exports:[a],entryComponents:[a],providers:[i]}]}],n.SnackbarComponent=a,n.SnackbarModule=c,n.SnackbarService=i,Object.defineProperty(n,"__esModule",{value:!0})}));
|
|
2
|
+
//# sourceMappingURL=mis-crystal-design-system-snackbar.umd.min.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../projects/mis-components/snackbar/snackbar/snackbar.component.ts","../../../projects/mis-components/snackbar/snackbar.service.ts","../../../projects/mis-components/snackbar/snackbar.module.ts"],"names":["SnackbarComponent","input","this","triggerAction","EventEmitter","prototype","triggerActionFunction","emit","Component","args","selector","template","SnackbarService","Output","overlay","openSnackbar","config","_this","overlayConfig","OverlayConfig","hasBackdrop","positionStrategy","position","global","centerHorizontally","bottom","snackbarRef","create","snackbarPortal","ComponentPortal","componentRef","attach","duration","setTimeout","closeSnackbar","instance","subscribe","onActionClick","dispose","Injectable","providedIn","Overlay","NgModule","declarations","imports","CommonModule","exports","entryComponents","providers"],"mappings":"woBAWE,SAAAA,EAAmBC,GAAAC,KAAAD,MAAAA,EADTC,KAAAC,cAAgB,IAAIC,EAAAA,oBAE9BJ,EAAAK,UAAAC,sBAAA,WACEJ,KAAKC,cAAcI,MAAK,6BAT3BC,EAAAA,UAASC,KAAA,CAAC,CACTC,SAAU,eACVC,SAAA,k1CAJOC,4CAQNC,EAAAA,2BCWD,SAAAD,EAAoBE,GAAAZ,KAAAY,QAAAA,SAEpBF,EAAAP,UAAAU,aAAA,SAAaC,GAAb,IAAAC,EAAAf,KACEA,KAAKc,OAASA,EACd,IAAME,EAAgB,IAAIC,EAAAA,cAAc,CACtCC,aAAa,EACbC,iBAAkBnB,KAAKY,QAAQQ,WAAWC,SAASC,qBAAqBC,OAAO,UAGjFvB,KAAKwB,YAAcxB,KAAKY,QAAQa,OAAOT,GAEvC,IAAMU,EAAiB,IAAIC,EAAAA,gBAAgB7B,GACrC8B,EAAe5B,KAAKwB,YAAYK,OAAOH,GAI7CZ,EAAOgB,SAAWhB,EAAOgB,UAAY,IACrCC,YAAW,WACThB,EAAKiB,kBACJlB,EAAOgB,UAEVF,EAAaK,SAAShC,cAAciC,WAAU,WACxCpB,EAAOqB,eACTrB,EAAOqB,gBAETpB,EAAKiB,oBAITtB,EAAAP,UAAA6B,cAAA,WACMhC,KAAKwB,cACPxB,KAAKwB,YAAYY,UACjBpC,KAAKwB,YAAc,kJAvCxBa,EAAAA,WAAU9B,KAAA,CAAC,CACV+B,WAAY,oDANLC,EAAAA,iBCST,iCAXCC,EAAAA,SAAQjC,KAAA,CAAC,CACRkC,aAAc,CACZ3C,GAEF4C,QAAS,CACPC,EAAAA,cAEFC,QAAS,CAAC9C,GACV+C,gBAAiB,CAAC/C,GAClBgD,UAAW,CAACpC","sourcesContent":["// snackbar.component.ts\nimport { Component, EventEmitter, Input, Output } from '@angular/core';\nimport { SnackbarService } from '../snackbar.service';\n\n@Component({\n selector: 'mis-snackbar',\n templateUrl: \"./snackbar.component.html\",\n styleUrls: [\"./snackbar.component.css\"],\n})\nexport class SnackbarComponent {\n @Output() triggerAction = new EventEmitter<any>();\n constructor(public input: SnackbarService){}\n triggerActionFunction(){\n this.triggerAction.emit(true)\n }\n}\n","export interface ISnackBarConfig {\n message: string;\n actionString: string;\n hasComponent: boolean;\n iconUrl?: string;\n component?: ComponentRef<any>;\n duration?: number;\n onActionClick?: () => void;\n}\nimport { Overlay, OverlayConfig, OverlayRef } from \"@angular/cdk/overlay\";\nimport { ComponentPortal } from \"@angular/cdk/portal\";\nimport { ComponentRef, Injectable } from \"@angular/core\"; // Assuming you have defined ISnackBarConfig interface\nimport { SnackbarComponent } from \"./snackbar/snackbar.component\";\n\n@Injectable({\n providedIn: \"root\"\n})\nexport class SnackbarService {\n config: ISnackBarConfig;\n private snackbarRef: OverlayRef;\n\n constructor(private overlay: Overlay) {}\n\n openSnackbar(config: ISnackBarConfig): void {\n this.config = config;\n const overlayConfig = new OverlayConfig({\n hasBackdrop: false,\n positionStrategy: this.overlay.position().global().centerHorizontally().bottom(\"48px\")\n });\n\n this.snackbarRef = this.overlay.create(overlayConfig);\n\n const snackbarPortal = new ComponentPortal(SnackbarComponent);\n const componentRef = this.snackbarRef.attach(snackbarPortal);\n\n // componentRef.instance.config = config;\n\n config.duration = config.duration || 3000;\n setTimeout(() => {\n this.closeSnackbar();\n }, config.duration);\n\n componentRef.instance.triggerAction.subscribe(() => {\n if (config.onActionClick) {\n config.onActionClick();\n }\n this.closeSnackbar();\n });\n }\n\n closeSnackbar(): void {\n if (this.snackbarRef) {\n this.snackbarRef.dispose();\n this.snackbarRef = null;\n }\n }\n}\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { SnackbarComponent } from './snackbar/snackbar.component';\nimport { SnackbarService } from './snackbar.service';\n\n\n\n@NgModule({\n declarations: [\n SnackbarComponent\n ],\n imports: [\n CommonModule\n ],\n exports: [SnackbarComponent],\n entryComponents: [SnackbarComponent],\n providers: [SnackbarService]\n})\nexport class SnackbarModule { }\n"]}
|