ngx-dropdown-list 1.2.0 → 21.0.2

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.
Files changed (35) hide show
  1. package/{fesm2020 → fesm2022}/ngx-dropdown-list.mjs +783 -721
  2. package/fesm2022/ngx-dropdown-list.mjs.map +1 -0
  3. package/ngx-dropdown-list-21.0.2.tgz +0 -0
  4. package/package.json +10 -18
  5. package/{src/ngx-dropdown-list/dropdown-list.component.d.ts → types/ngx-dropdown-list.d.ts} +109 -106
  6. package/esm2020/ngx-dropdown-list.mjs +0 -5
  7. package/esm2020/public_api.mjs +0 -2
  8. package/esm2020/src/ngx-dropdown-list/anchor/anchor.component.mjs +0 -149
  9. package/esm2020/src/ngx-dropdown-list/dropdown/dropdown.component.mjs +0 -252
  10. package/esm2020/src/ngx-dropdown-list/dropdown-list.component.mjs +0 -233
  11. package/esm2020/src/ngx-dropdown-list/dropdown-list.module.mjs +0 -38
  12. package/esm2020/src/ngx-dropdown-list/filter/input-filter.component.mjs +0 -44
  13. package/esm2020/src/ngx-dropdown-list/group-item/group-item.component.mjs +0 -25
  14. package/esm2020/src/ngx-dropdown-list/index.mjs +0 -3
  15. package/esm2020/src/ngx-dropdown-list/item/item.component.mjs +0 -77
  16. package/esm2020/src/ngx-dropdown-list/types/index.mjs +0 -3
  17. package/esm2020/src/ngx-dropdown-list/types/selection-group-items.types.mjs +0 -2
  18. package/esm2020/src/ngx-dropdown-list/types/selection-item.types.mjs +0 -2
  19. package/esm2020/src/ngx-dropdown-list/utils/util.mjs +0 -59
  20. package/fesm2015/ngx-dropdown-list.mjs +0 -854
  21. package/fesm2015/ngx-dropdown-list.mjs.map +0 -1
  22. package/fesm2020/ngx-dropdown-list.mjs.map +0 -1
  23. package/ngx-dropdown-list.d.ts +0 -5
  24. package/public_api.d.ts +0 -1
  25. package/src/ngx-dropdown-list/anchor/anchor.component.d.ts +0 -85
  26. package/src/ngx-dropdown-list/dropdown/dropdown.component.d.ts +0 -120
  27. package/src/ngx-dropdown-list/dropdown-list.module.d.ts +0 -14
  28. package/src/ngx-dropdown-list/filter/input-filter.component.d.ts +0 -26
  29. package/src/ngx-dropdown-list/group-item/group-item.component.d.ts +0 -14
  30. package/src/ngx-dropdown-list/index.d.ts +0 -2
  31. package/src/ngx-dropdown-list/item/item.component.d.ts +0 -43
  32. package/src/ngx-dropdown-list/types/index.d.ts +0 -2
  33. package/src/ngx-dropdown-list/types/selection-group-items.types.d.ts +0 -8
  34. package/src/ngx-dropdown-list/types/selection-item.types.d.ts +0 -9
  35. package/src/ngx-dropdown-list/utils/util.d.ts +0 -21
@@ -1,25 +0,0 @@
1
- import { Component, Input } from '@angular/core';
2
- import * as i0 from "@angular/core";
3
- export class GroupItemComponent {
4
- /**
5
- * prevent all clicking event from happening
6
- */
7
- onItemGroupClick(event) {
8
- event.stopImmediatePropagation();
9
- event.stopPropagation();
10
- event.preventDefault();
11
- }
12
- }
13
- GroupItemComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: GroupItemComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
14
- GroupItemComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.11", type: GroupItemComponent, selector: "group-item", inputs: { item: "item" }, ngImport: i0, template: `
15
- <label class="dropdown-item dropdown-item-group" (mousedown)="onItemGroupClick($event)">{{item.group}}</label>
16
- `, isInline: true, styles: ["*,*:before,*:after{font-size:inherit;font-weight:inherit;font-family:inherit;box-sizing:inherit;background:inherit}.dropdown-item,.container-selection,.container-selection-selected,.container-checkbox{background:transparent;display:list-item;list-style:none;position:relative;width:100%;height:auto;cursor:pointer;color:#495057;padding-bottom:5px;padding-top:5px;padding-left:12px}.container-checkbox{padding-left:35px}.container-checkbox input{position:absolute;opacity:0;cursor:pointer}.container-checkbox .checkmark{position:absolute;top:5px;left:10px;height:15px;width:15px;border:1px solid rgba(0,0,0,.3);background-color:#fff;border-radius:4px}.container-checkbox .checkmark:after{content:\"\";position:absolute;display:none;left:5px;top:2px;width:4px;height:7px;border:solid white;border-width:0 2px 2px 0;transform:rotate(45deg)}.container-checkbox:hover input~.checkmark{background-color:#ccc}.container-checkbox input:checked~.checkmark{background-color:#2196f3;border:1px solid #2196F3}.container-checkbox input:checked~.checkmark:after{display:block}.container-checkbox:hover{color:#66afe9}.container-selection,.container-selection-selected{padding-left:12px}.container-selection:hover,.container-selection-selected:hover{color:#495057;background:lightcyan}.container-selection-selected{color:#fff;background:cornflowerblue}.dropdown-item-group{font-weight:700}.dropdown-item-group:hover{cursor:default}\n"] });
17
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: GroupItemComponent, decorators: [{
18
- type: Component,
19
- args: [{ selector: 'group-item', template: `
20
- <label class="dropdown-item dropdown-item-group" (mousedown)="onItemGroupClick($event)">{{item.group}}</label>
21
- `, styles: ["*,*:before,*:after{font-size:inherit;font-weight:inherit;font-family:inherit;box-sizing:inherit;background:inherit}.dropdown-item,.container-selection,.container-selection-selected,.container-checkbox{background:transparent;display:list-item;list-style:none;position:relative;width:100%;height:auto;cursor:pointer;color:#495057;padding-bottom:5px;padding-top:5px;padding-left:12px}.container-checkbox{padding-left:35px}.container-checkbox input{position:absolute;opacity:0;cursor:pointer}.container-checkbox .checkmark{position:absolute;top:5px;left:10px;height:15px;width:15px;border:1px solid rgba(0,0,0,.3);background-color:#fff;border-radius:4px}.container-checkbox .checkmark:after{content:\"\";position:absolute;display:none;left:5px;top:2px;width:4px;height:7px;border:solid white;border-width:0 2px 2px 0;transform:rotate(45deg)}.container-checkbox:hover input~.checkmark{background-color:#ccc}.container-checkbox input:checked~.checkmark{background-color:#2196f3;border:1px solid #2196F3}.container-checkbox input:checked~.checkmark:after{display:block}.container-checkbox:hover{color:#66afe9}.container-selection,.container-selection-selected{padding-left:12px}.container-selection:hover,.container-selection-selected:hover{color:#495057;background:lightcyan}.container-selection-selected{color:#fff;background:cornflowerblue}.dropdown-item-group{font-weight:700}.dropdown-item-group:hover{cursor:default}\n"] }]
22
- }], propDecorators: { item: [{
23
- type: Input
24
- }] } });
25
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ3JvdXAtaXRlbS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9zcmMvbmd4LWRyb3Bkb3duLWxpc3QvZ3JvdXAtaXRlbS9ncm91cC1pdGVtLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUMsU0FBUyxFQUFFLEtBQUssRUFBQyxNQUFNLGVBQWUsQ0FBQzs7QUFXL0MsTUFBTSxPQUFPLGtCQUFrQjtJQU03Qjs7T0FFRztJQUNILGdCQUFnQixDQUFDLEtBQUs7UUFDcEIsS0FBSyxDQUFDLHdCQUF3QixFQUFFLENBQUM7UUFDakMsS0FBSyxDQUFDLGVBQWUsRUFBRSxDQUFDO1FBQ3hCLEtBQUssQ0FBQyxjQUFjLEVBQUUsQ0FBQztJQUN6QixDQUFDOztnSEFiVSxrQkFBa0I7b0dBQWxCLGtCQUFrQiw0RUFObkI7O0dBRVQ7NEZBSVUsa0JBQWtCO2tCQVI5QixTQUFTOytCQUNFLFlBQVksWUFDWjs7R0FFVDs4QkFRUSxJQUFJO3NCQUFaLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0NvbXBvbmVudCwgSW5wdXR9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQge1NlbGVjdGlvbkdyb3VwSXRlbXN9IGZyb20gJy4uL3R5cGVzJztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAnZ3JvdXAtaXRlbScsXHJcbiAgdGVtcGxhdGU6IGBcclxuICAgIDxsYWJlbCBjbGFzcz1cImRyb3Bkb3duLWl0ZW0gZHJvcGRvd24taXRlbS1ncm91cFwiIChtb3VzZWRvd24pPVwib25JdGVtR3JvdXBDbGljaygkZXZlbnQpXCI+e3tpdGVtLmdyb3VwfX08L2xhYmVsPlxyXG4gIGAsXHJcbiAgc3R5bGVVcmxzOiBbJy4vZ3JvdXAtaXRlbS5jb21wb25lbnQuc2NzcyddXHJcbn0pXHJcblxyXG5leHBvcnQgY2xhc3MgR3JvdXBJdGVtQ29tcG9uZW50IHtcclxuICAvKipcclxuICAgKiBiaW5kIHRvIFtpdGVtXSwgdGhlIGdyb3VwIGl0ZW0gb2YgZHJvcGRvd25cclxuICAgKi9cclxuICBASW5wdXQoKSBpdGVtOiBTZWxlY3Rpb25Hcm91cEl0ZW1zO1xyXG5cclxuICAvKipcclxuICAgKiBwcmV2ZW50IGFsbCBjbGlja2luZyBldmVudCBmcm9tIGhhcHBlbmluZ1xyXG4gICAqL1xyXG4gIG9uSXRlbUdyb3VwQ2xpY2soZXZlbnQpIHtcclxuICAgIGV2ZW50LnN0b3BJbW1lZGlhdGVQcm9wYWdhdGlvbigpO1xyXG4gICAgZXZlbnQuc3RvcFByb3BhZ2F0aW9uKCk7XHJcbiAgICBldmVudC5wcmV2ZW50RGVmYXVsdCgpO1xyXG4gIH1cclxufVxyXG4iXX0=
@@ -1,3 +0,0 @@
1
- export * from './dropdown-list.component';
2
- export * from './dropdown-list.module';
3
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvbmd4LWRyb3Bkb3duLWxpc3QvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYywyQkFBMkIsQ0FBQztBQUMxQyxjQUFjLHdCQUF3QixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnLi9kcm9wZG93bi1saXN0LmNvbXBvbmVudCc7XHJcbmV4cG9ydCAqIGZyb20gJy4vZHJvcGRvd24tbGlzdC5tb2R1bGUnO1xyXG4iXX0=
@@ -1,77 +0,0 @@
1
- import { Component, EventEmitter, Input, Output } from '@angular/core';
2
- import { isNumber } from '../utils/util';
3
- import * as i0 from "@angular/core";
4
- import * as i1 from "@angular/common";
5
- export class ItemComponent {
6
- constructor() {
7
- /**
8
- * bind to [formatNumber], the flag for formatting the number
9
- */
10
- this.formatNumber = false;
11
- /**
12
- * bind to [itemClick] event, triggers when clicking the item of dropdown
13
- */
14
- this.itemClick = new EventEmitter();
15
- /**
16
- * bind to [checkStatusChange] event, triggers when check status is changed in checkbox mode.
17
- */
18
- this.checkStatusChange = new EventEmitter();
19
- }
20
- /**
21
- * check whether needs to format number for the provided text
22
- */
23
- needFormatNumber(value) {
24
- return isNumber(value) && this.formatNumber;
25
- }
26
- /**
27
- * triggered when clicking the item, emits the [itemClick] event
28
- */
29
- onItemClick(item) {
30
- this.itemClick.emit(item);
31
- }
32
- /**
33
- * triggered when checking status changed in checkbox mode, emits the [checkStatusChange] event
34
- */
35
- onCheckStatusChange(item) {
36
- this.checkStatusChange.emit(item);
37
- }
38
- }
39
- ItemComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: ItemComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
40
- ItemComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.11", type: ItemComponent, selector: "item", inputs: { checkbox: "checkbox", item: "item", formatNumber: "formatNumber", suffixText: "suffixText" }, outputs: { itemClick: "itemClick", checkStatusChange: "checkStatusChange" }, ngImport: i0, template: `
41
- <label [class.container-checkbox]="checkbox"
42
- [class.container-selection]="!checkbox && !item.selected"
43
- [class.container-selection-selected]="!checkbox && item.selected"
44
- [id]="item.id" (mousedown)="onItemClick(item)">
45
- {{needFormatNumber(item.text)? (item.text | number:'1.0-2') : item.text}}{{suffixText? suffixText : ''}}
46
- <ng-container *ngIf="checkbox">
47
- <input type='checkbox' [id]="'checkbox-'+item.text" (change)="onCheckStatusChange(item)" [checked]="item.selected">
48
- <span class="checkmark" [id]="'checkmark-'+item.text"></span>
49
- </ng-container>
50
- </label>`, isInline: true, styles: ["*,*:before,*:after{font-size:inherit;font-weight:inherit;font-family:inherit;box-sizing:inherit;background:inherit}.dropdown-item,.container-selection,.container-selection-selected,.container-checkbox{background:transparent;display:list-item;list-style:none;position:relative;width:100%;height:auto;cursor:pointer;color:#495057;padding-bottom:5px;padding-top:5px;padding-left:12px}.container-checkbox{padding-left:35px}.container-checkbox input{position:absolute;opacity:0;cursor:pointer}.container-checkbox .checkmark{position:absolute;top:5px;left:10px;height:15px;width:15px;border:1px solid rgba(0,0,0,.3);background-color:#fff;border-radius:4px}.container-checkbox .checkmark:after{content:\"\";position:absolute;display:none;left:5px;top:2px;width:4px;height:7px;border:solid white;border-width:0 2px 2px 0;transform:rotate(45deg)}.container-checkbox:hover input~.checkmark{background-color:#ccc}.container-checkbox input:checked~.checkmark{background-color:#2196f3;border:1px solid #2196F3}.container-checkbox input:checked~.checkmark:after{display:block}.container-checkbox:hover{color:#66afe9}.container-selection,.container-selection-selected{padding-left:12px}.container-selection:hover,.container-selection-selected:hover{color:#495057;background:lightcyan}.container-selection-selected{color:#fff;background:cornflowerblue}\n"], directives: [{ type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }], pipes: { "number": i1.DecimalPipe } });
51
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: ItemComponent, decorators: [{
52
- type: Component,
53
- args: [{ selector: 'item', template: `
54
- <label [class.container-checkbox]="checkbox"
55
- [class.container-selection]="!checkbox && !item.selected"
56
- [class.container-selection-selected]="!checkbox && item.selected"
57
- [id]="item.id" (mousedown)="onItemClick(item)">
58
- {{needFormatNumber(item.text)? (item.text | number:'1.0-2') : item.text}}{{suffixText? suffixText : ''}}
59
- <ng-container *ngIf="checkbox">
60
- <input type='checkbox' [id]="'checkbox-'+item.text" (change)="onCheckStatusChange(item)" [checked]="item.selected">
61
- <span class="checkmark" [id]="'checkmark-'+item.text"></span>
62
- </ng-container>
63
- </label>`, styles: ["*,*:before,*:after{font-size:inherit;font-weight:inherit;font-family:inherit;box-sizing:inherit;background:inherit}.dropdown-item,.container-selection,.container-selection-selected,.container-checkbox{background:transparent;display:list-item;list-style:none;position:relative;width:100%;height:auto;cursor:pointer;color:#495057;padding-bottom:5px;padding-top:5px;padding-left:12px}.container-checkbox{padding-left:35px}.container-checkbox input{position:absolute;opacity:0;cursor:pointer}.container-checkbox .checkmark{position:absolute;top:5px;left:10px;height:15px;width:15px;border:1px solid rgba(0,0,0,.3);background-color:#fff;border-radius:4px}.container-checkbox .checkmark:after{content:\"\";position:absolute;display:none;left:5px;top:2px;width:4px;height:7px;border:solid white;border-width:0 2px 2px 0;transform:rotate(45deg)}.container-checkbox:hover input~.checkmark{background-color:#ccc}.container-checkbox input:checked~.checkmark{background-color:#2196f3;border:1px solid #2196F3}.container-checkbox input:checked~.checkmark:after{display:block}.container-checkbox:hover{color:#66afe9}.container-selection,.container-selection-selected{padding-left:12px}.container-selection:hover,.container-selection-selected:hover{color:#495057;background:lightcyan}.container-selection-selected{color:#fff;background:cornflowerblue}\n"] }]
64
- }], propDecorators: { checkbox: [{
65
- type: Input
66
- }], item: [{
67
- type: Input
68
- }], formatNumber: [{
69
- type: Input
70
- }], suffixText: [{
71
- type: Input
72
- }], itemClick: [{
73
- type: Output
74
- }], checkStatusChange: [{
75
- type: Output
76
- }] } });
77
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaXRlbS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9zcmMvbmd4LWRyb3Bkb3duLWxpc3QvaXRlbS9pdGVtLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUMsU0FBUyxFQUFFLFlBQVksRUFBRSxLQUFLLEVBQUUsTUFBTSxFQUFDLE1BQU0sZUFBZSxDQUFDO0FBRXJFLE9BQU8sRUFBQyxRQUFRLEVBQUMsTUFBTSxlQUFlLENBQUM7OztBQWtCdkMsTUFBTSxPQUFPLGFBQWE7SUFoQjFCO1FBeUJFOztXQUVHO1FBQ00saUJBQVksR0FBRyxLQUFLLENBQUM7UUFLOUI7O1dBRUc7UUFDTyxjQUFTLEdBQUcsSUFBSSxZQUFZLEVBQVUsQ0FBQztRQUNqRDs7V0FFRztRQUNPLHNCQUFpQixHQUFHLElBQUksWUFBWSxFQUFVLENBQUM7S0FzQjFEO0lBcEJDOztPQUVHO0lBQ0gsZ0JBQWdCLENBQUMsS0FBVTtRQUN6QixPQUFPLFFBQVEsQ0FBQyxLQUFLLENBQUMsSUFBSSxJQUFJLENBQUMsWUFBWSxDQUFDO0lBQzlDLENBQUM7SUFFRDs7T0FFRztJQUNILFdBQVcsQ0FBQyxJQUFJO1FBQ2QsSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDNUIsQ0FBQztJQUVEOztPQUVHO0lBQ0gsbUJBQW1CLENBQUMsSUFBSTtRQUN0QixJQUFJLENBQUMsaUJBQWlCLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO0lBQ3BDLENBQUM7OzJHQTdDVSxhQUFhOytGQUFiLGFBQWEsaU9BZGQ7Ozs7Ozs7Ozs7YUFVQzs0RkFJQSxhQUFhO2tCQWhCekIsU0FBUzsrQkFDRSxNQUFNLFlBQ047Ozs7Ozs7Ozs7YUFVQzs4QkFRRixRQUFRO3NCQUFoQixLQUFLO2dCQUlHLElBQUk7c0JBQVosS0FBSztnQkFJRyxZQUFZO3NCQUFwQixLQUFLO2dCQUlHLFVBQVU7c0JBQWxCLEtBQUs7Z0JBSUksU0FBUztzQkFBbEIsTUFBTTtnQkFJRyxpQkFBaUI7c0JBQTFCLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0NvbXBvbmVudCwgRXZlbnRFbWl0dGVyLCBJbnB1dCwgT3V0cHV0fSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHtTZWxlY3Rpb25JdGVtfSBmcm9tICcuLi90eXBlcyc7XHJcbmltcG9ydCB7aXNOdW1iZXJ9IGZyb20gJy4uL3V0aWxzL3V0aWwnO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdpdGVtJyxcclxuICB0ZW1wbGF0ZTogYFxyXG4gICAgPGxhYmVsIFtjbGFzcy5jb250YWluZXItY2hlY2tib3hdPVwiY2hlY2tib3hcIlxyXG4gICAgICAgICAgIFtjbGFzcy5jb250YWluZXItc2VsZWN0aW9uXT1cIiFjaGVja2JveCAmJiAhaXRlbS5zZWxlY3RlZFwiXHJcbiAgICAgICAgICAgW2NsYXNzLmNvbnRhaW5lci1zZWxlY3Rpb24tc2VsZWN0ZWRdPVwiIWNoZWNrYm94ICYmIGl0ZW0uc2VsZWN0ZWRcIlxyXG4gICAgICAgICAgIFtpZF09XCJpdGVtLmlkXCIgKG1vdXNlZG93bik9XCJvbkl0ZW1DbGljayhpdGVtKVwiPlxyXG4gICAgICB7e25lZWRGb3JtYXROdW1iZXIoaXRlbS50ZXh0KT8gKGl0ZW0udGV4dCB8IG51bWJlcjonMS4wLTInKSA6IGl0ZW0udGV4dH19e3tzdWZmaXhUZXh0PyBzdWZmaXhUZXh0IDogJyd9fVxyXG4gICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiY2hlY2tib3hcIj5cclxuICAgICAgICA8aW5wdXQgdHlwZT0nY2hlY2tib3gnIFtpZF09XCInY2hlY2tib3gtJytpdGVtLnRleHRcIiAoY2hhbmdlKT1cIm9uQ2hlY2tTdGF0dXNDaGFuZ2UoaXRlbSlcIiBbY2hlY2tlZF09XCJpdGVtLnNlbGVjdGVkXCI+XHJcbiAgICAgICAgPHNwYW4gY2xhc3M9XCJjaGVja21hcmtcIiBbaWRdPVwiJ2NoZWNrbWFyay0nK2l0ZW0udGV4dFwiPjwvc3Bhbj5cclxuICAgICAgPC9uZy1jb250YWluZXI+XHJcbiAgICA8L2xhYmVsPmAsXHJcbiAgc3R5bGVVcmxzOiBbJy4vaXRlbS5jb21wb25lbnQuc2NzcyddXHJcbn0pXHJcblxyXG5leHBvcnQgY2xhc3MgSXRlbUNvbXBvbmVudCB7XHJcbiAgLyoqXHJcbiAgICogYmluZCB0byBbY2hlY2tib3hdLCB0aGUgZmxhZyBvZiBjaGVja2JveCBtb2RlXHJcbiAgICovXHJcbiAgQElucHV0KCkgY2hlY2tib3g6IGJvb2xlYW47XHJcbiAgLyoqXHJcbiAgICogYmluZCB0byBbaXRlbV0sIHRoZSBkcm9wZG93biBvcHRpb24gaXRlbVxyXG4gICAqL1xyXG4gIEBJbnB1dCgpIGl0ZW06IFNlbGVjdGlvbkl0ZW07XHJcbiAgLyoqXHJcbiAgICogYmluZCB0byBbZm9ybWF0TnVtYmVyXSwgdGhlIGZsYWcgZm9yIGZvcm1hdHRpbmcgdGhlIG51bWJlclxyXG4gICAqL1xyXG4gIEBJbnB1dCgpIGZvcm1hdE51bWJlciA9IGZhbHNlO1xyXG4gIC8qKlxyXG4gICAqIGJpbmQgdG8gW3N1ZmZpeFRleHRdLCB0aGUgc3VmZml4VGV4dCB0aGF0IHdpbGwgYmUgZGlzcGxheWVkIGluIHRoZSBkcm9wZG93blxyXG4gICAqL1xyXG4gIEBJbnB1dCgpIHN1ZmZpeFRleHQ6IHN0cmluZztcclxuICAvKipcclxuICAgKiBiaW5kIHRvIFtpdGVtQ2xpY2tdIGV2ZW50LCB0cmlnZ2VycyB3aGVuIGNsaWNraW5nIHRoZSBpdGVtIG9mIGRyb3Bkb3duXHJcbiAgICovXHJcbiAgQE91dHB1dCgpIGl0ZW1DbGljayA9IG5ldyBFdmVudEVtaXR0ZXI8c3RyaW5nPigpO1xyXG4gIC8qKlxyXG4gICAqIGJpbmQgdG8gW2NoZWNrU3RhdHVzQ2hhbmdlXSBldmVudCwgdHJpZ2dlcnMgd2hlbiBjaGVjayBzdGF0dXMgaXMgY2hhbmdlZCBpbiBjaGVja2JveCBtb2RlLlxyXG4gICAqL1xyXG4gIEBPdXRwdXQoKSBjaGVja1N0YXR1c0NoYW5nZSA9IG5ldyBFdmVudEVtaXR0ZXI8c3RyaW5nPigpO1xyXG5cclxuICAvKipcclxuICAgKiBjaGVjayB3aGV0aGVyIG5lZWRzIHRvIGZvcm1hdCBudW1iZXIgZm9yIHRoZSBwcm92aWRlZCB0ZXh0XHJcbiAgICovXHJcbiAgbmVlZEZvcm1hdE51bWJlcih2YWx1ZTogYW55KTogYm9vbGVhbiB7XHJcbiAgICByZXR1cm4gaXNOdW1iZXIodmFsdWUpICYmIHRoaXMuZm9ybWF0TnVtYmVyO1xyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogdHJpZ2dlcmVkIHdoZW4gY2xpY2tpbmcgdGhlIGl0ZW0sIGVtaXRzIHRoZSBbaXRlbUNsaWNrXSBldmVudFxyXG4gICAqL1xyXG4gIG9uSXRlbUNsaWNrKGl0ZW0pIHtcclxuICAgIHRoaXMuaXRlbUNsaWNrLmVtaXQoaXRlbSk7XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiB0cmlnZ2VyZWQgd2hlbiBjaGVja2luZyBzdGF0dXMgY2hhbmdlZCBpbiBjaGVja2JveCBtb2RlLCBlbWl0cyB0aGUgW2NoZWNrU3RhdHVzQ2hhbmdlXSBldmVudFxyXG4gICAqL1xyXG4gIG9uQ2hlY2tTdGF0dXNDaGFuZ2UoaXRlbSkge1xyXG4gICAgdGhpcy5jaGVja1N0YXR1c0NoYW5nZS5lbWl0KGl0ZW0pO1xyXG4gIH1cclxufVxyXG4iXX0=
@@ -1,3 +0,0 @@
1
- export * from './selection-item.types';
2
- export * from './selection-group-items.types';
3
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9zcmMvbmd4LWRyb3Bkb3duLWxpc3QvdHlwZXMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyx3QkFBd0IsQ0FBQztBQUN2QyxjQUFjLCtCQUErQixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnLi9zZWxlY3Rpb24taXRlbS50eXBlcyc7XHJcbmV4cG9ydCAqIGZyb20gJy4vc2VsZWN0aW9uLWdyb3VwLWl0ZW1zLnR5cGVzJztcclxuIl19
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VsZWN0aW9uLWdyb3VwLWl0ZW1zLnR5cGVzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vc3JjL25neC1kcm9wZG93bi1saXN0L3R5cGVzL3NlbGVjdGlvbi1ncm91cC1pdGVtcy50eXBlcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgU2VsZWN0aW9uSXRlbSB9IGZyb20gJy4vc2VsZWN0aW9uLWl0ZW0udHlwZXMnO1xyXG5cclxuLyoqXHJcbiAqIGRyb3Bkb3duIG9wdGlvbiBncm91cCBpdGVtXHJcbiAqL1xyXG5leHBvcnQgaW50ZXJmYWNlIFNlbGVjdGlvbkdyb3VwSXRlbXMge1xyXG4gIGdyb3VwOiBzdHJpbmc7XHJcbiAgaXRlbXM6IFNlbGVjdGlvbkl0ZW1bXTtcclxufVxyXG4iXX0=
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VsZWN0aW9uLWl0ZW0udHlwZXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9zcmMvbmd4LWRyb3Bkb3duLWxpc3QvdHlwZXMvc2VsZWN0aW9uLWl0ZW0udHlwZXMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxyXG4gKiBkcm9wZG93biBvcHRpb24gaXRlbVxyXG4gKi9cclxuZXhwb3J0IGludGVyZmFjZSBTZWxlY3Rpb25JdGVtIHtcclxuICBpZDogc3RyaW5nO1xyXG4gIHZhbHVlPzogYW55O1xyXG4gIHRleHQ6IGFueTtcclxuICBzZWxlY3RlZD86IGJvb2xlYW47XHJcbn1cclxuIl19
@@ -1,59 +0,0 @@
1
- /**
2
- * check whether the provided items contains group
3
- */
4
- export function hasGroup(items) {
5
- return items ? (items.find(item => item.group) != null) : false;
6
- }
7
- /**
8
- * clear all selections from the provide items.
9
- * @param items the dropdown items, can be group or item
10
- */
11
- export function clearAllSelection(items) {
12
- if (hasGroup(items)) {
13
- for (const groupItem of items) {
14
- if (groupItem.items) {
15
- groupItem.items.filter(item => item.selected).forEach(item => item.selected = false);
16
- }
17
- }
18
- }
19
- else {
20
- // clear the selection of previous selected item
21
- items.filter(item => item.selected).forEach(item => item.selected = false);
22
- }
23
- }
24
- /**
25
- * stop all propagation and default actions
26
- */
27
- export function stopPropagationAndDefault(event) {
28
- event.stopImmediatePropagation();
29
- event.stopPropagation();
30
- event.preventDefault();
31
- }
32
- /**
33
- * check whether the provided value is number of not
34
- */
35
- export function isNumber(value) {
36
- return !(value == null || isNaN(value) || value.length === 0);
37
- }
38
- /**
39
- * get the selected item from the items list (including item and group)
40
- */
41
- export function getFirstSelectedItem(items) {
42
- if (!items) {
43
- return undefined;
44
- }
45
- let selectedItem;
46
- if (hasGroup(items)) {
47
- for (const item of items) {
48
- selectedItem = item.items ? item.items.find(subItem => subItem.selected) : undefined;
49
- if (selectedItem) {
50
- break;
51
- }
52
- }
53
- }
54
- else {
55
- selectedItem = items ? items.find(item => item.selected) : undefined;
56
- }
57
- return selectedItem;
58
- }
59
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXRpbC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9uZ3gtZHJvcGRvd24tbGlzdC91dGlscy91dGlsLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOztHQUVHO0FBQ0gsTUFBTSxVQUFVLFFBQVEsQ0FBQyxLQUFLO0lBQzVCLE9BQU8sS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQztBQUNsRSxDQUFDO0FBRUQ7OztHQUdHO0FBQ0gsTUFBTSxVQUFVLGlCQUFpQixDQUFDLEtBQVU7SUFDMUMsSUFBSSxRQUFRLENBQUMsS0FBSyxDQUFDLEVBQUU7UUFDbkIsS0FBSyxNQUFNLFNBQVMsSUFBSSxLQUFLLEVBQUU7WUFDN0IsSUFBSSxTQUFTLENBQUMsS0FBSyxFQUFFO2dCQUNuQixTQUFTLENBQUMsS0FBSyxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxJQUFJLENBQUMsUUFBUSxHQUFHLEtBQUssQ0FBQyxDQUFDO2FBQ3RGO1NBQ0Y7S0FDRjtTQUFNO1FBQ0wsZ0RBQWdEO1FBQ2hELEtBQUssQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsSUFBSSxDQUFDLFFBQVEsR0FBRyxLQUFLLENBQUMsQ0FBQztLQUM1RTtBQUNILENBQUM7QUFFRDs7R0FFRztBQUNILE1BQU0sVUFBVSx5QkFBeUIsQ0FBQyxLQUFZO0lBQ3BELEtBQUssQ0FBQyx3QkFBd0IsRUFBRSxDQUFDO0lBQ2pDLEtBQUssQ0FBQyxlQUFlLEVBQUUsQ0FBQztJQUN4QixLQUFLLENBQUMsY0FBYyxFQUFFLENBQUM7QUFDekIsQ0FBQztBQUVEOztHQUVHO0FBQ0gsTUFBTSxVQUFVLFFBQVEsQ0FBQyxLQUFVO0lBQ2pDLE9BQU8sQ0FBQyxDQUFDLEtBQUssSUFBSSxJQUFJLElBQUksS0FBSyxDQUFDLEtBQUssQ0FBQyxJQUFJLEtBQUssQ0FBQyxNQUFNLEtBQUssQ0FBQyxDQUFDLENBQUM7QUFDaEUsQ0FBQztBQUVEOztHQUVHO0FBQ0gsTUFBTSxVQUFVLG9CQUFvQixDQUFDLEtBQVU7SUFDN0MsSUFBSSxDQUFDLEtBQUssRUFBRTtRQUNWLE9BQU8sU0FBUyxDQUFDO0tBQ2xCO0lBQ0QsSUFBSSxZQUFZLENBQUM7SUFDakIsSUFBSSxRQUFRLENBQUMsS0FBSyxDQUFDLEVBQUU7UUFDbkIsS0FBSyxNQUFNLElBQUksSUFBSSxLQUFLLEVBQUU7WUFDeEIsWUFBWSxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxFQUFFLENBQUMsT0FBTyxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUMsQ0FBQyxTQUFTLENBQUM7WUFDckYsSUFBSSxZQUFZLEVBQUU7Z0JBQ2hCLE1BQU07YUFDUDtTQUNGO0tBQ0Y7U0FBTTtRQUNMLFlBQVksR0FBRyxLQUFLLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxDQUFDLFNBQVMsQ0FBQztLQUN0RTtJQUNELE9BQU8sWUFBWSxDQUFDO0FBQ3RCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcclxuICogY2hlY2sgd2hldGhlciB0aGUgcHJvdmlkZWQgaXRlbXMgY29udGFpbnMgZ3JvdXBcclxuICovXHJcbmV4cG9ydCBmdW5jdGlvbiBoYXNHcm91cChpdGVtcyk6IGJvb2xlYW4ge1xyXG4gIHJldHVybiBpdGVtcyA/IChpdGVtcy5maW5kKGl0ZW0gPT4gaXRlbS5ncm91cCkgIT0gbnVsbCkgOiBmYWxzZTtcclxufVxyXG5cclxuLyoqXHJcbiAqIGNsZWFyIGFsbCBzZWxlY3Rpb25zIGZyb20gdGhlIHByb3ZpZGUgaXRlbXMuXHJcbiAqIEBwYXJhbSBpdGVtcyB0aGUgZHJvcGRvd24gaXRlbXMsIGNhbiBiZSBncm91cCBvciBpdGVtXHJcbiAqL1xyXG5leHBvcnQgZnVuY3Rpb24gY2xlYXJBbGxTZWxlY3Rpb24oaXRlbXM6IGFueSk6IHZvaWQge1xyXG4gIGlmIChoYXNHcm91cChpdGVtcykpIHtcclxuICAgIGZvciAoY29uc3QgZ3JvdXBJdGVtIG9mIGl0ZW1zKSB7XHJcbiAgICAgIGlmIChncm91cEl0ZW0uaXRlbXMpIHtcclxuICAgICAgICBncm91cEl0ZW0uaXRlbXMuZmlsdGVyKGl0ZW0gPT4gaXRlbS5zZWxlY3RlZCkuZm9yRWFjaChpdGVtID0+IGl0ZW0uc2VsZWN0ZWQgPSBmYWxzZSk7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9IGVsc2Uge1xyXG4gICAgLy8gY2xlYXIgdGhlIHNlbGVjdGlvbiBvZiBwcmV2aW91cyBzZWxlY3RlZCBpdGVtXHJcbiAgICBpdGVtcy5maWx0ZXIoaXRlbSA9PiBpdGVtLnNlbGVjdGVkKS5mb3JFYWNoKGl0ZW0gPT4gaXRlbS5zZWxlY3RlZCA9IGZhbHNlKTtcclxuICB9XHJcbn1cclxuXHJcbi8qKlxyXG4gKiBzdG9wIGFsbCBwcm9wYWdhdGlvbiBhbmQgZGVmYXVsdCBhY3Rpb25zXHJcbiAqL1xyXG5leHBvcnQgZnVuY3Rpb24gc3RvcFByb3BhZ2F0aW9uQW5kRGVmYXVsdChldmVudDogRXZlbnQpOiB2b2lkIHtcclxuICBldmVudC5zdG9wSW1tZWRpYXRlUHJvcGFnYXRpb24oKTtcclxuICBldmVudC5zdG9wUHJvcGFnYXRpb24oKTtcclxuICBldmVudC5wcmV2ZW50RGVmYXVsdCgpO1xyXG59XHJcblxyXG4vKipcclxuICogY2hlY2sgd2hldGhlciB0aGUgcHJvdmlkZWQgdmFsdWUgaXMgbnVtYmVyIG9mIG5vdFxyXG4gKi9cclxuZXhwb3J0IGZ1bmN0aW9uIGlzTnVtYmVyKHZhbHVlOiBhbnkpOiBib29sZWFuIHtcclxuICByZXR1cm4gISh2YWx1ZSA9PSBudWxsIHx8IGlzTmFOKHZhbHVlKSB8fCB2YWx1ZS5sZW5ndGggPT09IDApO1xyXG59XHJcblxyXG4vKipcclxuICogZ2V0IHRoZSBzZWxlY3RlZCBpdGVtIGZyb20gdGhlIGl0ZW1zIGxpc3QgKGluY2x1ZGluZyBpdGVtIGFuZCBncm91cClcclxuICovXHJcbmV4cG9ydCBmdW5jdGlvbiBnZXRGaXJzdFNlbGVjdGVkSXRlbShpdGVtczogYW55KTogYW55IHtcclxuICBpZiAoIWl0ZW1zKSB7XHJcbiAgICByZXR1cm4gdW5kZWZpbmVkO1xyXG4gIH1cclxuICBsZXQgc2VsZWN0ZWRJdGVtO1xyXG4gIGlmIChoYXNHcm91cChpdGVtcykpIHtcclxuICAgIGZvciAoY29uc3QgaXRlbSBvZiBpdGVtcykge1xyXG4gICAgICBzZWxlY3RlZEl0ZW0gPSBpdGVtLml0ZW1zID8gaXRlbS5pdGVtcy5maW5kKHN1Ykl0ZW0gPT4gc3ViSXRlbS5zZWxlY3RlZCkgOiB1bmRlZmluZWQ7XHJcbiAgICAgIGlmIChzZWxlY3RlZEl0ZW0pIHtcclxuICAgICAgICBicmVhaztcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH0gZWxzZSB7XHJcbiAgICBzZWxlY3RlZEl0ZW0gPSBpdGVtcyA/IGl0ZW1zLmZpbmQoaXRlbSA9PiBpdGVtLnNlbGVjdGVkKSA6IHVuZGVmaW5lZDtcclxuICB9XHJcbiAgcmV0dXJuIHNlbGVjdGVkSXRlbTtcclxufVxyXG4iXX0=