@colijnit/corecomponents_v12 12.0.15 → 12.0.16

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 (81) hide show
  1. package/bundles/colijnit-corecomponents_v12.umd.js +367 -40
  2. package/bundles/colijnit-corecomponents_v12.umd.js.map +1 -1
  3. package/colijnit-corecomponents_v12.metadata.json +1 -1
  4. package/esm2015/lib/components/base/base-input.component.js +13 -13
  5. package/esm2015/lib/components/co-dialog/co-dialog.component.js +46 -48
  6. package/esm2015/lib/components/co-dialog/co-dialog.module.js +7 -4
  7. package/esm2015/lib/components/co-dialog-prompt/co-dialog-prompt.component.js +6 -6
  8. package/esm2015/lib/components/co-kanban/co-kanban.component.js +7 -3
  9. package/esm2015/lib/components/co-rich-text-editor/co-rich-text-editor.component.js +2 -2
  10. package/esm2015/lib/components/collapsible/collapsible.component.js +58 -0
  11. package/esm2015/lib/components/collapsible/collapsible.module.js +17 -0
  12. package/esm2015/lib/components/grid/base/base-grid.component.js +1 -1
  13. package/esm2015/lib/components/grid/base/base-selection-grid.component.js +1 -1
  14. package/esm2015/lib/components/grid/co-grid.component.js +2 -2
  15. package/esm2015/lib/components/input-listbox/input-listbox.component.js +66 -0
  16. package/esm2015/lib/components/input-listbox/input-listbox.module.js +25 -0
  17. package/esm2015/lib/components/input-number-picker/input-number-picker.component.js +48 -23
  18. package/esm2015/lib/components/input-number-picker/input-number-picker.module.js +5 -3
  19. package/esm2015/lib/components/pivot/co-pivot.component.js +2 -2
  20. package/esm2015/lib/components/simple-grid/simple-grid-column.directive.js +36 -0
  21. package/esm2015/lib/components/simple-grid/simple-grid.component.js +112 -0
  22. package/esm2015/lib/components/simple-grid/simple-grid.module.js +24 -0
  23. package/esm2015/public-api.js +8 -1
  24. package/fesm2015/colijnit-corecomponents_v12.js +421 -77
  25. package/fesm2015/colijnit-corecomponents_v12.js.map +1 -1
  26. package/lib/components/base/base-input.component.d.ts +8 -8
  27. package/lib/components/button/style/_co-ripple.scss +69 -0
  28. package/lib/components/button/style/_layout.scss +7 -3
  29. package/lib/components/button/style/_material-definition.scss +1 -0
  30. package/lib/components/button/style/_theme.scss +0 -24
  31. package/lib/components/button/style/material.scss +18 -0
  32. package/lib/components/co-dialog/co-dialog.component.d.ts +6 -13
  33. package/lib/components/co-dialog/style/_layout.scss +47 -0
  34. package/lib/components/co-dialog/style/_material-definition.scss +23 -0
  35. package/lib/components/co-dialog/style/_theme.scss +27 -0
  36. package/lib/components/co-dialog/style/material.scss +4 -0
  37. package/lib/components/co-dialog-prompt/co-dialog-prompt.component.d.ts +2 -2
  38. package/lib/components/co-kanban/co-kanban.component.d.ts +1 -0
  39. package/lib/components/co-kanban/style/_layout.scss +51 -0
  40. package/lib/components/co-kanban/style/_material-definition.scss +25 -0
  41. package/lib/components/co-kanban/style/_theme.scss +7 -0
  42. package/lib/components/co-kanban/style/material.scss +13 -0
  43. package/lib/components/co-rich-text-editor/co-rich-text-editor.component.d.ts +1 -1
  44. package/lib/components/co-toggle/co-toggle.component.scss +1 -0
  45. package/lib/components/collapsible/collapsible.component.d.ts +16 -0
  46. package/lib/components/collapsible/collapsible.module.d.ts +2 -0
  47. package/lib/components/collapsible/style/_layout.scss +53 -0
  48. package/lib/components/collapsible/style/_material-definition.scss +9 -0
  49. package/lib/components/collapsible/style/_theme.scss +9 -0
  50. package/lib/components/collapsible/style/material.scss +4 -0
  51. package/lib/components/grid/base/base-selection-grid.component.d.ts +1 -2
  52. package/lib/components/grid/co-grid.component.d.ts +1 -1
  53. package/lib/components/input-listbox/input-listbox.component.d.ts +14 -0
  54. package/lib/components/input-listbox/input-listbox.module.d.ts +2 -0
  55. package/lib/components/input-listbox/style/_layout.scss +22 -0
  56. package/lib/components/input-listbox/style/_material-definition.scss +10 -0
  57. package/lib/components/input-listbox/style/_theme.scss +14 -0
  58. package/lib/components/input-listbox/style/material.scss +4 -0
  59. package/lib/components/input-number-picker/input-number-picker.component.d.ts +5 -1
  60. package/lib/components/input-number-picker/style/_layout.scss +43 -0
  61. package/lib/components/input-number-picker/style/_material-definition.scss +17 -0
  62. package/lib/components/input-number-picker/style/_theme.scss +22 -0
  63. package/lib/components/input-number-picker/style/material.scss +4 -0
  64. package/lib/components/input-search/style/_layout.scss +42 -0
  65. package/lib/components/input-search/style/_material-definition.scss +6 -0
  66. package/lib/components/input-search/style/_theme.scss +10 -0
  67. package/lib/components/input-search/style/material.scss +4 -0
  68. package/lib/components/pivot/co-pivot.component.d.ts +2 -2
  69. package/lib/components/simple-grid/simple-grid-column.directive.d.ts +18 -0
  70. package/lib/components/simple-grid/simple-grid.component.d.ts +26 -0
  71. package/lib/components/simple-grid/simple-grid.module.d.ts +2 -0
  72. package/lib/components/simple-grid/style/_layout.scss +80 -0
  73. package/lib/components/simple-grid/style/_material-definition.scss +16 -0
  74. package/lib/components/simple-grid/style/_theme.scss +17 -0
  75. package/lib/components/simple-grid/style/material.scss +4 -0
  76. package/lib/style/material2/_core.scss +3 -3
  77. package/lib/style/material2/_material2-scss-barrel.scss +10 -10
  78. package/package.json +1 -1
  79. package/public-api.d.ts +7 -0
  80. package/lib/components/co-dialog/co-dialog.component.scss +0 -0
  81. package/lib/components/input-number-picker/input-number-picker.component.scss +0 -49
@@ -1,8 +1,8 @@
1
1
  (function (global, factory) {
2
- typeof exports === 'object' && typeof module !== 'undefined' ? factory(exports, require('@angular/core'), require('@angular/common'), require('@angular/common/http'), require('@angular/platform-browser'), require('rxjs'), require('rxjs/operators'), require('@syncfusion/ej2-angular-splitbuttons'), require('@syncfusion/ej2-angular-popups'), require('@syncfusion/ej2-angular-kanban'), require('@syncfusion/ej2-angular-schedule'), require('@syncfusion/ej2-angular-navigations'), require('@syncfusion/ej2-angular-buttons'), require('@angular/forms'), require('@syncfusion/ej2-angular-dropdowns'), require('@syncfusion/ej2-angular-grids'), require('@syncfusion/ej2-base'), require('@syncfusion/ej2-angular-calendars'), require('@syncfusion/ej2-angular-inputs'), require('@syncfusion/ej2-angular-pivotview'), require('@angular/cdk/overlay'), require('@angular/cdk/portal'), require('@syncfusion/ej2-angular-richtexteditor')) :
3
- typeof define === 'function' && define.amd ? define('@colijnit/corecomponents_v12', ['exports', '@angular/core', '@angular/common', '@angular/common/http', '@angular/platform-browser', 'rxjs', 'rxjs/operators', '@syncfusion/ej2-angular-splitbuttons', '@syncfusion/ej2-angular-popups', '@syncfusion/ej2-angular-kanban', '@syncfusion/ej2-angular-schedule', '@syncfusion/ej2-angular-navigations', '@syncfusion/ej2-angular-buttons', '@angular/forms', '@syncfusion/ej2-angular-dropdowns', '@syncfusion/ej2-angular-grids', '@syncfusion/ej2-base', '@syncfusion/ej2-angular-calendars', '@syncfusion/ej2-angular-inputs', '@syncfusion/ej2-angular-pivotview', '@angular/cdk/overlay', '@angular/cdk/portal', '@syncfusion/ej2-angular-richtexteditor'], factory) :
4
- (global = typeof globalThis !== 'undefined' ? globalThis : global || self, factory((global.colijnit = global.colijnit || {}, global.colijnit.corecomponents_v12 = {}), global.ng.core, global.ng.common, global.ng.common.http, global.ng.platformBrowser, global.rxjs, global.rxjs.operators, global.ej2AngularSplitbuttons, global.ej2AngularPopups, global.ej2AngularKanban, global.ej2AngularSchedule, global.ej2AngularNavigations, global.ej2AngularButtons, global.ng.forms, global.ej2AngularDropdowns, global.ej2AngularGrids, global.ej2Base, global.ej2AngularCalendars, global.ej2AngularInputs, global.ej2AngularPivotview, global.ng.cdk.overlay, global.ng.cdk.portal, global.ej2AngularRichtexteditor));
5
- })(this, (function (exports, core, common, http, platformBrowser, rxjs, operators, ej2AngularSplitbuttons, ej2AngularPopups, ej2AngularKanban, ej2AngularSchedule, ej2AngularNavigations, ej2AngularButtons, forms, ej2AngularDropdowns, ej2AngularGrids, ej2Base, ej2AngularCalendars, ej2AngularInputs, ej2AngularPivotview, overlay, portal, ej2AngularRichtexteditor) { 'use strict';
2
+ typeof exports === 'object' && typeof module !== 'undefined' ? factory(exports, require('@angular/core'), require('@angular/common'), require('@angular/common/http'), require('@angular/platform-browser'), require('rxjs'), require('rxjs/operators'), require('@syncfusion/ej2-angular-splitbuttons'), require('@angular/animations'), require('@angular/platform-browser/animations'), require('@syncfusion/ej2-angular-popups'), require('@syncfusion/ej2-angular-kanban'), require('@syncfusion/ej2-angular-schedule'), require('@syncfusion/ej2-angular-navigations'), require('@syncfusion/ej2-angular-buttons'), require('@angular/forms'), require('@syncfusion/ej2-angular-dropdowns'), require('@syncfusion/ej2-angular-grids'), require('@syncfusion/ej2-base'), require('@syncfusion/ej2-angular-calendars'), require('@syncfusion/ej2-angular-inputs'), require('@syncfusion/ej2-angular-pivotview'), require('@angular/cdk/overlay'), require('@angular/cdk/portal'), require('@syncfusion/ej2-angular-richtexteditor'), require('@angular/cdk/drag-drop')) :
3
+ typeof define === 'function' && define.amd ? define('@colijnit/corecomponents_v12', ['exports', '@angular/core', '@angular/common', '@angular/common/http', '@angular/platform-browser', 'rxjs', 'rxjs/operators', '@syncfusion/ej2-angular-splitbuttons', '@angular/animations', '@angular/platform-browser/animations', '@syncfusion/ej2-angular-popups', '@syncfusion/ej2-angular-kanban', '@syncfusion/ej2-angular-schedule', '@syncfusion/ej2-angular-navigations', '@syncfusion/ej2-angular-buttons', '@angular/forms', '@syncfusion/ej2-angular-dropdowns', '@syncfusion/ej2-angular-grids', '@syncfusion/ej2-base', '@syncfusion/ej2-angular-calendars', '@syncfusion/ej2-angular-inputs', '@syncfusion/ej2-angular-pivotview', '@angular/cdk/overlay', '@angular/cdk/portal', '@syncfusion/ej2-angular-richtexteditor', '@angular/cdk/drag-drop'], factory) :
4
+ (global = typeof globalThis !== 'undefined' ? globalThis : global || self, factory((global.colijnit = global.colijnit || {}, global.colijnit.corecomponents_v12 = {}), global.ng.core, global.ng.common, global.ng.common.http, global.ng.platformBrowser, global.rxjs, global.rxjs.operators, global.ej2AngularSplitbuttons, global.ng.animations, global.ng.platformBrowser.animations, global.ej2AngularPopups, global.ej2AngularKanban, global.ej2AngularSchedule, global.ej2AngularNavigations, global.ej2AngularButtons, global.ng.forms, global.ej2AngularDropdowns, global.ej2AngularGrids, global.ej2Base, global.ej2AngularCalendars, global.ej2AngularInputs, global.ej2AngularPivotview, global.ng.cdk.overlay, global.ng.cdk.portal, global.ej2AngularRichtexteditor, global.ng.cdk.dragDrop));
5
+ })(this, (function (exports, core, common, http, platformBrowser, rxjs, operators, ej2AngularSplitbuttons, animations, animations$1, ej2AngularPopups, ej2AngularKanban, ej2AngularSchedule, ej2AngularNavigations, ej2AngularButtons, forms, ej2AngularDropdowns, ej2AngularGrids, ej2Base, ej2AngularCalendars, ej2AngularInputs, ej2AngularPivotview, overlay, portal, ej2AngularRichtexteditor, dragDrop) { 'use strict';
6
6
 
7
7
  // @returns true iff given value equals null or equals undefined
8
8
  function isNill(value) {
@@ -2530,51 +2530,51 @@
2530
2530
 
2531
2531
  var CoDialogComponent = /** @class */ (function () {
2532
2532
  function CoDialogComponent() {
2533
- var _this = this;
2534
- this.targetElement = null;
2533
+ this.icons = exports.CoreComponentsIcon;
2535
2534
  this.showCloseIcon = true;
2536
- this.width = "50%";
2537
- this.visible = false;
2538
- this.position = { X: 'center', Y: 'center' };
2539
- this.modal = true;
2535
+ this.modal = false;
2536
+ this.animation = true;
2540
2537
  this.closeClick = new core.EventEmitter();
2541
2538
  this.overlayClick = new core.EventEmitter();
2542
- this.onOverlayClick = function () {
2543
- _this.coDialog.hide();
2544
- _this.overlayClick.emit();
2545
- };
2546
- this.onCloseClick = function () {
2547
- _this.coDialog.hide();
2548
- _this.closeClick.emit();
2549
- };
2550
2539
  }
2551
- CoDialogComponent.prototype.open = function () {
2552
- this.coDialog.show();
2540
+ CoDialogComponent.prototype.showClass = function () {
2541
+ return true;
2553
2542
  };
2554
- CoDialogComponent.prototype.close = function () {
2555
- this.coDialog.hide();
2543
+ CoDialogComponent.prototype.handleOverlayClick = function (event) {
2544
+ if (!this.modal) {
2545
+ this.overlayClick.next(event);
2546
+ }
2556
2547
  };
2557
2548
  return CoDialogComponent;
2558
2549
  }());
2559
2550
  CoDialogComponent.decorators = [
2560
2551
  { type: core.Component, args: [{
2561
2552
  selector: 'co-dialog',
2562
- template: "\n <ejs-dialog #template \n [showCloseIcon]='showCloseIcon'\n [target]='targetElement' \n [width]='width'\n [position]=\"position\"\n [isModal]=\"modal\"\n [visible]=\"visible\"\n (overlayClick)=\"onOverlayClick()\"\n (close)=\"onCloseClick()\"\n >\n <ng-template #footerTemplate>\n <ng-content select=\"[footer]\"></ng-content>\n </ng-template>\n <ng-template #content>\n <ng-content></ng-content>\n </ng-template>\n <ng-template #header>\n <ng-content select=\"[header]\"></ng-content>\n </ng-template>\n </ejs-dialog>\n ",
2563
- encapsulation: core.ViewEncapsulation.None,
2564
- styles: [""]
2553
+ template: "\n <div class=\"co-dialog-overlay\" (click)=\"handleOverlayClick($event)\" [@showHideOverlay]=\"animation\"></div>\n <div class=\"co-dialog-wrapper\" [@showHideDialog]=\"animation\">\n <div class=\"dialog-header\">\n <ng-content select=\"[header]\"></ng-content>\n <div class=\"dialog-close-button\" *ngIf=\"showCloseIcon\" (click)=\"closeClick.emit($event)\">\n <co-icon [icon]=\"icons.Cancel\"></co-icon>\n </div>\n </div>\n <div class=\"dialog-content\">\n <ng-content></ng-content>\n </div>\n <div class=\"dialog-footer\">\n <ng-content select=\"[footer]\"></ng-content>\n </div>\n </div>\n ",
2554
+ animations: [
2555
+ animations.trigger('showHideOverlay', [
2556
+ animations.state('*', animations.style({ opacity: 1 })),
2557
+ animations.state('void', animations.style({ opacity: 0 })),
2558
+ animations.transition('void => *', animations.animate(200)),
2559
+ animations.transition('* => void', animations.animate('200ms 200ms'))
2560
+ ]),
2561
+ animations.trigger('showHideDialog', [
2562
+ animations.state('*', animations.style({ opacity: 1 })),
2563
+ animations.state('void', animations.style({ opacity: 0 })),
2564
+ animations.transition('void => *', animations.animate('200ms 200ms')),
2565
+ animations.transition('* => void', animations.animate(200))
2566
+ ])
2567
+ ],
2568
+ encapsulation: core.ViewEncapsulation.None
2565
2569
  },] }
2566
2570
  ];
2567
- CoDialogComponent.ctorParameters = function () { return []; };
2568
2571
  CoDialogComponent.propDecorators = {
2569
- coDialog: [{ type: core.ViewChild, args: ['template',] }],
2570
- targetElement: [{ type: core.Input }],
2571
2572
  showCloseIcon: [{ type: core.Input }],
2572
- width: [{ type: core.Input }],
2573
- visible: [{ type: core.Input }],
2574
- position: [{ type: core.Input }],
2575
2573
  modal: [{ type: core.Input }],
2574
+ animation: [{ type: core.Input }],
2576
2575
  closeClick: [{ type: core.Output }],
2577
- overlayClick: [{ type: core.Output }]
2576
+ overlayClick: [{ type: core.Output }],
2577
+ showClass: [{ type: core.HostBinding, args: ["class.co-dialog",] }]
2578
2578
  };
2579
2579
 
2580
2580
  var CoDialogModule = /** @class */ (function () {
@@ -2585,10 +2585,11 @@
2585
2585
  CoDialogModule.decorators = [
2586
2586
  { type: core.NgModule, args: [{
2587
2587
  imports: [
2588
- ej2AngularPopups.DialogModule
2588
+ common.CommonModule,
2589
+ animations$1.BrowserAnimationsModule,
2590
+ IconModule
2589
2591
  ],
2590
2592
  declarations: [CoDialogComponent],
2591
- providers: [],
2592
2593
  exports: [CoDialogComponent]
2593
2594
  },] }
2594
2595
  ];
@@ -2626,7 +2627,7 @@
2626
2627
  CoDialogPromptComponent.decorators = [
2627
2628
  { type: core.Component, args: [{
2628
2629
  selector: 'co-dialog-prompt',
2629
- template: "\n <div #coDialogPromptRootContainer class='co-dialog-prompt-root-container'></div>\n <ejs-dialog #coDialogPrompt \n [buttons]=\"buttons\" \n [header]=\"header\"\n [content]=\"content\" \n [showCloseIcon]=\"showCloseIcon\" \n [target]=\"target\"\n [visible]=\"visible\"\n [width]=\"width\"\n (close)=\"onCloseClick()\"\n >\n </ejs-dialog>\n ",
2630
+ template: "\n <div #coDialogPromptRootContainer class='co-dialog-prompt-root-container'></div>\n <ejs-dialog #coDialogPrompt\n [buttons]=\"buttons\"\n [header]=\"header\"\n [content]=\"content\"\n [showCloseIcon]=\"showCloseIcon\"\n [target]=\"target\"\n [visible]=\"visible\"\n [width]=\"width\"\n (close)=\"onCloseClick()\"\n >\n </ejs-dialog>\n ",
2630
2631
  styles: [""]
2631
2632
  },] }
2632
2633
  ];
@@ -2670,6 +2671,9 @@
2670
2671
  this.dragStartEvent = new core.EventEmitter();
2671
2672
  this.dragStopEvent = new core.EventEmitter();
2672
2673
  }
2674
+ CoKanbanComponent.prototype.showClass = function () {
2675
+ return true;
2676
+ };
2673
2677
  CoKanbanComponent.prototype.ngOnInit = function () {
2674
2678
  };
2675
2679
  CoKanbanComponent.prototype.ngAfterViewInit = function () {
@@ -2721,7 +2725,8 @@
2721
2725
  cardClickEvent: [{ type: core.Output }],
2722
2726
  cardDoubleClickEvent: [{ type: core.Output }],
2723
2727
  dragStartEvent: [{ type: core.Output }],
2724
- dragStopEvent: [{ type: core.Output }]
2728
+ dragStopEvent: [{ type: core.Output }],
2729
+ showClass: [{ type: core.HostBinding, args: ["class.co-kanban",] }]
2725
2730
  };
2726
2731
  __decorate([
2727
2732
  InputBoolean()
@@ -2925,6 +2930,67 @@
2925
2930
  },] }
2926
2931
  ];
2927
2932
 
2933
+ var CollapsibleComponent = /** @class */ (function () {
2934
+ function CollapsibleComponent(_elementRef) {
2935
+ this._elementRef = _elementRef;
2936
+ this.expandButtonLast = false;
2937
+ this.expanded = false;
2938
+ this.expandedChange = new core.EventEmitter();
2939
+ }
2940
+ CollapsibleComponent.prototype.showClass = function () {
2941
+ return true;
2942
+ };
2943
+ CollapsibleComponent.prototype.onHostClick = function (event) {
2944
+ };
2945
+ CollapsibleComponent.prototype.ngOnDestroy = function () {
2946
+ this._elementRef = undefined;
2947
+ };
2948
+ CollapsibleComponent.prototype.focus = function () {
2949
+ this._elementRef.nativeElement.focus();
2950
+ };
2951
+ CollapsibleComponent.prototype.changeExpanded = function () {
2952
+ this.expanded = !this.expanded;
2953
+ this.expandedChange.next(this.expanded);
2954
+ };
2955
+ return CollapsibleComponent;
2956
+ }());
2957
+ CollapsibleComponent.decorators = [
2958
+ { type: core.Component, args: [{
2959
+ selector: "co-collapsible",
2960
+ template: "\n <div class=\"collapsible-header\" [class.end]=\"expandButtonLast\" (click)=\"changeExpanded()\">\n <div class=\"expand-icon-wrapper\" [class.expanded]=\"expanded\" *ngIf=\"!expandButtonLast\">\n <co-icon class=\"expand-icon\" [iconData]=\"iconData\"></co-icon>\n </div>\n <div class=\"collapsible-title\" [textContent]=\"headerTitle\"></div>\n <div class=\"expand-icon-wrapper\" [class.expanded]=\"expanded\" *ngIf=\"expandButtonLast\">\n <co-icon class=\"expand-icon\" [iconData]=\"iconData\"></co-icon>\n </div>\n </div>\n <div class=\"collapsible-content\" *ngIf=\"expanded\">\n <ng-content></ng-content>\n </div>\n ",
2961
+ changeDetection: core.ChangeDetectionStrategy.OnPush,
2962
+ encapsulation: core.ViewEncapsulation.None
2963
+ },] }
2964
+ ];
2965
+ CollapsibleComponent.ctorParameters = function () { return [
2966
+ { type: core.ElementRef }
2967
+ ]; };
2968
+ CollapsibleComponent.propDecorators = {
2969
+ headerTitle: [{ type: core.Input }],
2970
+ iconData: [{ type: core.Input }],
2971
+ expandButtonLast: [{ type: core.Input }],
2972
+ expanded: [{ type: core.Input }],
2973
+ expandedChange: [{ type: core.Output }],
2974
+ showClass: [{ type: core.HostBinding, args: ["class.co-collapsible",] }],
2975
+ onHostClick: [{ type: core.HostListener, args: ["click", ["$event"],] }]
2976
+ };
2977
+
2978
+ var CollapsibleModule = /** @class */ (function () {
2979
+ function CollapsibleModule() {
2980
+ }
2981
+ return CollapsibleModule;
2982
+ }());
2983
+ CollapsibleModule.decorators = [
2984
+ { type: core.NgModule, args: [{
2985
+ imports: [
2986
+ common.CommonModule,
2987
+ IconModule
2988
+ ],
2989
+ declarations: [CollapsibleComponent],
2990
+ exports: [CollapsibleComponent]
2991
+ },] }
2992
+ ];
2993
+
2928
2994
  var FormInputUserModelChangeListenerService = /** @class */ (function () {
2929
2995
  function FormInputUserModelChangeListenerService() {
2930
2996
  var _this = this;
@@ -5292,6 +5358,8 @@
5292
5358
  _this.modelChange = new core.EventEmitter();
5293
5359
  _this.myKeyDownWhiteList = NUMBER_INPUTS_KEY_DOWN_WHITE_LIST;
5294
5360
  _this.numberLogic = new BoundsConstrainedNumberValue();
5361
+ _this.minSelected = false;
5362
+ _this.plusSelected = false;
5295
5363
  _this._numberInputHasFocus = false;
5296
5364
  _this._delayBeforeStartAutoCountMs = 666;
5297
5365
  // the 'speed gears' for auto counting
@@ -5369,6 +5437,9 @@
5369
5437
  enumerable: false,
5370
5438
  configurable: true
5371
5439
  });
5440
+ InputNumberPickerComponent.prototype.showClass = function () {
5441
+ return true;
5442
+ };
5372
5443
  InputNumberPickerComponent.prototype.ngOnInit = function () {
5373
5444
  this.numberLogic.init(true);
5374
5445
  this._updateButtonsShowState();
@@ -5393,6 +5464,12 @@
5393
5464
  }, _this._msDoStep);
5394
5465
  });
5395
5466
  };
5467
+ InputNumberPickerComponent.prototype.handleKeyDown = function (event) {
5468
+ // event.preventDefault();
5469
+ if (this.myKeyDownWhiteList.find(function (k) { return k === event.keyCode; }) === undefined) {
5470
+ return false;
5471
+ }
5472
+ };
5396
5473
  // Note: recursive through setTimeout().
5397
5474
  InputNumberPickerComponent.prototype.doDecrementAuto = function () {
5398
5475
  var _this = this;
@@ -5408,6 +5485,8 @@
5408
5485
  });
5409
5486
  };
5410
5487
  InputNumberPickerComponent.prototype.stopAutoCounting = function () {
5488
+ this.minSelected = false;
5489
+ this.plusSelected = false;
5411
5490
  this._mayAutoCount = false;
5412
5491
  this._stepFactor = this._stepFactors[0];
5413
5492
  };
@@ -5426,6 +5505,11 @@
5426
5505
  };
5427
5506
  InputNumberPickerComponent.prototype.onPlusMouseDown = function (event) {
5428
5507
  var _this = this;
5508
+ if (this.readonly) {
5509
+ event.preventDefault();
5510
+ return;
5511
+ }
5512
+ this.plusSelected = true;
5429
5513
  this._markedAsUserTouched = true;
5430
5514
  // keeps focus on input text instead of button
5431
5515
  event.preventDefault();
@@ -5441,6 +5525,11 @@
5441
5525
  };
5442
5526
  InputNumberPickerComponent.prototype.onMinusMouseDown = function (event) {
5443
5527
  var _this = this;
5528
+ if (this.readonly) {
5529
+ event.preventDefault();
5530
+ return;
5531
+ }
5532
+ this.minSelected = true;
5444
5533
  this._markedAsUserTouched = true;
5445
5534
  // keeps focus on input text instead of button
5446
5535
  event.preventDefault();
@@ -5502,13 +5591,12 @@
5502
5591
  InputNumberPickerComponent.decorators = [
5503
5592
  { type: core.Component, args: [{
5504
5593
  selector: 'co-input-number-picker',
5505
- template: "\n <co-button *ngIf=\"showButtons\" class=\"plus-operator\" [iconData]=\"iconCacheService.getIcon(plusIcon)\" (mousedown)=\"onPlusMouseDown($event)\"\n (mouseup)=\"stopAutoCounting()\" (mouseleave)=\"stopAutoCounting()\"></co-button>\n <co-input-text\n [floatLabelType]=\"floatLabelType\"\n [readonly]=\"readonly\"\n [disabled]=\"disabled\"\n [required]=\"required\"\n [noValidation]=\"noValidation\"\n [model]=\"numberLogic.valueAsSting\"\n [cssClass]=\"cssClass\"\n [ngModelOptions]=\"ngModelOptions\"\n [keyDownWhiteList]=\"myKeyDownWhiteList\"\n (focus)=\"onNumberInputFocus()\"\n (blur)=\"onNumberInputBlur()\"\n ></co-input-text>\n\n <co-button *ngIf=\"showButtons\" class=\"minus-operator\" [iconData]=\"iconCacheService.getIcon(minusIcon)\" (mousedown)=\"onMinusMouseDown($event)\"\n (mouseup)=\"stopAutoCounting()\" (mouseleave)=\"stopAutoCounting()\"></co-button>\n ",
5506
- encapsulation: core.ViewEncapsulation.None,
5594
+ template: "\n <div class=\"button-wrapper\">\n <co-button *ngIf=\"showButtons\" class=\"minus-operator circle\" [class.select]=\"minSelected\"\n [disabled]=\"readonly\"\n [iconData]=\"iconCacheService.getIcon(minusIcon)\"\n (mousedown)=\"onMinusMouseDown($event)\"\n (mouseup)=\"stopAutoCounting()\" (mouseleave)=\"stopAutoCounting()\"></co-button>\n </div>\n <input type=\"text\"\n [ngModel]=\"numberLogic.valueAsSting\"\n [readonly]=\"readonly\"\n [disabled]=\"disabled\"\n [required]=\"required\"\n (keydown)=\"handleKeyDown($event)\"/>\n <div class=\"button-wrapper\">\n <co-button *ngIf=\"showButtons\" class=\"plus-operator circle\" [class.select]=\"plusSelected\"\n [disabled]=\"readonly\"\n [iconData]=\"iconCacheService.getIcon(plusIcon)\"\n (mousedown)=\"onPlusMouseDown($event)\"\n (mouseup)=\"stopAutoCounting()\" (mouseleave)=\"stopAutoCounting()\"></co-button>\n </div>\n ",
5507
5595
  providers: [{
5508
5596
  provide: COMPONENT_INTERFACE_NAME, useExisting: core.forwardRef(function () { return InputNumberPickerComponent; })
5509
5597
  }],
5510
5598
  changeDetection: core.ChangeDetectionStrategy.OnPush,
5511
- styles: ["@font-face{font-family:iOneOpenSans;font-style:normal;font-weight:400;src:url(data:application/font-woff2;charset=utf-8;base64,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) format(\"woff2\")}@font-face{font-family:iOneOpenSans;font-style:normal;font-weight:700;src:url(data:application/font-woff2;charset=utf-8;base64,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) format(\"woff2\")}:host{position:relative;display:flex;flex-direction:column;align-items:center!important;justify-content:center!important}:host.horizontal{display:flex;flex-direction:row-reverse}:host.show-buttons-on-focus-only co-button{position:relative;z-index:20;position:absolute!important;margin-left:auto}:host.show-buttons-on-focus-only co-button.plus-operator{top:-38px}:host.show-buttons-on-focus-only co-button.minus-operator{bottom:-38px}:host.has-label input-text ::ng-deep input{position:relative;bottom:2px;text-align:left}:host co-input-text{width:60px}:host co-button{font-size:22px;margin:5px;height:26px;padding:0}\n"]
5599
+ encapsulation: core.ViewEncapsulation.None
5512
5600
  },] }
5513
5601
  ];
5514
5602
  InputNumberPickerComponent.ctorParameters = function () { return [
@@ -5533,7 +5621,8 @@
5533
5621
  modelChange: [{ type: core.Output }],
5534
5622
  inputTextComp: [{ type: core.ViewChild, args: [InputTextComponent, { static: true },] }],
5535
5623
  showButtonsOnFocusOnly: [{ type: core.HostBinding, args: ["class.show-buttons-on-focus-only",] }],
5536
- hasLabel: [{ type: core.HostBinding, args: ["class.has-label",] }]
5624
+ hasLabel: [{ type: core.HostBinding, args: ["class.has-label",] }],
5625
+ showClass: [{ type: core.HostBinding, args: ['class.co-input-number-picker',] }]
5537
5626
  };
5538
5627
  __decorate([
5539
5628
  InputBoolean()
@@ -5572,6 +5661,7 @@
5572
5661
  { type: core.NgModule, args: [{
5573
5662
  imports: [
5574
5663
  common.CommonModule,
5664
+ forms.FormsModule,
5575
5665
  ButtonModule,
5576
5666
  InputTextModule
5577
5667
  ],
@@ -7194,6 +7284,236 @@
7194
7284
  },] }
7195
7285
  ];
7196
7286
 
7287
+ ej2AngularDropdowns.ListBoxComponent.Inject(ej2AngularDropdowns.CheckBoxSelection);
7288
+ var InputListboxComponent = /** @class */ (function (_super) {
7289
+ __extends(InputListboxComponent, _super);
7290
+ function InputListboxComponent() {
7291
+ var _this = _super.apply(this, __spreadArray([], __read(arguments))) || this;
7292
+ // public set model(value: string[] | number[]) {
7293
+ // this._model = value;
7294
+ // }
7295
+ _this.collection = [];
7296
+ _this.selectionSettings = { mode: 'Multiple' };
7297
+ return _this;
7298
+ }
7299
+ Object.defineProperty(InputListboxComponent.prototype, "singleSelect", {
7300
+ set: function (value) {
7301
+ if (value) {
7302
+ this.selectionSettings.mode = 'Single';
7303
+ }
7304
+ },
7305
+ enumerable: false,
7306
+ configurable: true
7307
+ });
7308
+ Object.defineProperty(InputListboxComponent.prototype, "showCheckbox", {
7309
+ set: function (value) {
7310
+ if (value) {
7311
+ this.selectionSettings.showCheckbox = true;
7312
+ }
7313
+ },
7314
+ enumerable: false,
7315
+ configurable: true
7316
+ });
7317
+ Object.defineProperty(InputListboxComponent.prototype, "showSelectAll", {
7318
+ set: function (value) {
7319
+ if (value) {
7320
+ this.selectionSettings.showSelectAll = true;
7321
+ }
7322
+ },
7323
+ enumerable: false,
7324
+ configurable: true
7325
+ });
7326
+ InputListboxComponent.prototype.showClass = function () {
7327
+ return true;
7328
+ };
7329
+ return InputListboxComponent;
7330
+ }(BaseInputComponent));
7331
+ InputListboxComponent.decorators = [
7332
+ { type: core.Component, args: [{
7333
+ selector: 'co-input-listbox',
7334
+ template: "\n <div class=\"co-input-listbox-header\" [textContent]=\"placeholder\"></div>\n <div class=\"co-input-listbox-content\">\n <ejs-listbox\n [ngModel]=\"value\"\n [dataSource]=\"collection\"\n [fields]=\"fields\"\n [selectionSettings]=\"selectionSettings\"\n (ngModelChange)=\"modelChange.emit($event)\"\n ></ejs-listbox>\n </div>\n ",
7335
+ providers: [{
7336
+ provide: COMPONENT_INTERFACE_NAME, useExisting: core.forwardRef(function () { return InputListboxComponent; })
7337
+ }],
7338
+ changeDetection: core.ChangeDetectionStrategy.OnPush,
7339
+ encapsulation: core.ViewEncapsulation.None
7340
+ },] }
7341
+ ];
7342
+ InputListboxComponent.propDecorators = {
7343
+ placeholder: [{ type: core.Input }],
7344
+ value: [{ type: core.Input }],
7345
+ collection: [{ type: core.Input }],
7346
+ fields: [{ type: core.Input }],
7347
+ singleSelect: [{ type: core.Input }],
7348
+ showCheckbox: [{ type: core.Input }],
7349
+ showSelectAll: [{ type: core.Input }],
7350
+ showClass: [{ type: core.HostBinding, args: ['class.co-input-listbox',] }]
7351
+ };
7352
+
7353
+ ej2Base.enableRipple(true);
7354
+ var InputListboxModule = /** @class */ (function () {
7355
+ function InputListboxModule() {
7356
+ }
7357
+ return InputListboxModule;
7358
+ }());
7359
+ InputListboxModule.decorators = [
7360
+ { type: core.NgModule, args: [{
7361
+ imports: [
7362
+ common.CommonModule,
7363
+ forms.FormsModule,
7364
+ ej2AngularDropdowns.ListBoxModule
7365
+ ],
7366
+ declarations: [
7367
+ InputListboxComponent
7368
+ ],
7369
+ exports: [
7370
+ InputListboxComponent
7371
+ ]
7372
+ },] }
7373
+ ];
7374
+
7375
+ exports.ColumnAlign = void 0;
7376
+ (function (ColumnAlign) {
7377
+ ColumnAlign["Left"] = "left-align";
7378
+ ColumnAlign["Center"] = "center-align";
7379
+ ColumnAlign["Right"] = "right-align";
7380
+ })(exports.ColumnAlign || (exports.ColumnAlign = {}));
7381
+ var SimpleGridColumnDirective = /** @class */ (function () {
7382
+ function SimpleGridColumnDirective() {
7383
+ this.resizable = true;
7384
+ }
7385
+ Object.defineProperty(SimpleGridColumnDirective.prototype, "template", {
7386
+ get: function () {
7387
+ return this._template;
7388
+ },
7389
+ set: function (template) {
7390
+ if (template) {
7391
+ this._template = template;
7392
+ }
7393
+ },
7394
+ enumerable: false,
7395
+ configurable: true
7396
+ });
7397
+ return SimpleGridColumnDirective;
7398
+ }());
7399
+ SimpleGridColumnDirective._MinManualResizeWidthPx = 50;
7400
+ SimpleGridColumnDirective.decorators = [
7401
+ { type: core.Directive, args: [{
7402
+ selector: "co-simple-grid-column"
7403
+ },] }
7404
+ ];
7405
+ SimpleGridColumnDirective.propDecorators = {
7406
+ template: [{ type: core.ContentChild, args: [core.TemplateRef,] }],
7407
+ headerText: [{ type: core.Input }],
7408
+ field: [{ type: core.Input }],
7409
+ textAlign: [{ type: core.Input }],
7410
+ format: [{ type: core.Input }],
7411
+ resizable: [{ type: core.Input }],
7412
+ width: [{ type: core.Input }]
7413
+ };
7414
+
7415
+ var SimpleGridComponent = /** @class */ (function () {
7416
+ function SimpleGridComponent() {
7417
+ this.defaultTextAlign = exports.ColumnAlign.Left;
7418
+ this.data = [];
7419
+ this.dragDropEnabled = false;
7420
+ /**
7421
+ * Should component emit drag and drop actions instead of handle
7422
+ * (update collection) by itself
7423
+ */
7424
+ this.emitDragDrop = false;
7425
+ this.onDrop = new core.EventEmitter();
7426
+ this.columns = [];
7427
+ }
7428
+ Object.defineProperty(SimpleGridComponent.prototype, "content", {
7429
+ set: function (columnComponents) {
7430
+ this.columns = columnComponents.toArray();
7431
+ },
7432
+ enumerable: false,
7433
+ configurable: true
7434
+ });
7435
+ SimpleGridComponent.prototype.showClass = function () {
7436
+ return true;
7437
+ };
7438
+ SimpleGridComponent.prototype.handleMouseMove = function (event) {
7439
+ if (event.buttons === 1 && this._columnForResize) {
7440
+ if (!this._columnForResize.width) {
7441
+ var rect = event.target.parentElement.getBoundingClientRect();
7442
+ this._columnForResize.width = rect.width;
7443
+ }
7444
+ this._columnForResize.width += event.movementX;
7445
+ }
7446
+ };
7447
+ SimpleGridComponent.prototype.handleMouseUp = function (event) {
7448
+ this._columnForResize = undefined;
7449
+ };
7450
+ SimpleGridComponent.prototype.handleSizerMouseDown = function (event, column) {
7451
+ this._columnForResize = column;
7452
+ };
7453
+ SimpleGridComponent.prototype.handleCanDragDrop = function (drag, drop) {
7454
+ return true;
7455
+ };
7456
+ SimpleGridComponent.prototype.handleDrop = function (event) {
7457
+ try {
7458
+ var from = event.previousIndex;
7459
+ var to = event.currentIndex;
7460
+ if (from === to) {
7461
+ return;
7462
+ }
7463
+ if (this.emitDragDrop) {
7464
+ this.onDrop.next({ from: from, to: to });
7465
+ }
7466
+ else {
7467
+ dragDrop.moveItemInArray(this.data, from, to);
7468
+ }
7469
+ }
7470
+ catch (e) {
7471
+ console.error(e);
7472
+ }
7473
+ };
7474
+ return SimpleGridComponent;
7475
+ }());
7476
+ SimpleGridComponent.decorators = [
7477
+ { type: core.Component, args: [{
7478
+ selector: "co-simple-grid",
7479
+ template: "\n <div class=\"simple-grid-column-header-wrapper\">\n <div class=\"simple-grid-column-header\" *ngFor=\"let column of columns; let index = index\"\n [style.min-width.px]=\"column.width\" [style.max-width.px]=\"column.width\">\n <div class=\"simple-grid-column-header-label\" [ngClass]=\"column.textAlign ? column.textAlign : defaultTextAlign\"\n [textContent]=\"column.headerText\"\n ></div>\n <div *ngIf=\"column.resizable\" class=\"simple-grid-column-sizer\"\n (mousedown)=\"handleSizerMouseDown($event, column)\"\n ></div>\n </div>\n </div>\n <div cdkDropListGroup class=\"drop-list-group\">\n <div #dropList cdkDropList cdkDropListOrientation=\"vertical\"\n class=\"simple-grid-drag-drop-list\"\n [cdkDropListDisabled]=\"!dragDropEnabled\"\n [cdkDropListData]=\"data\"\n [cdkDropListEnterPredicate]=\"handleCanDragDrop\"\n (cdkDropListDropped)=\"handleDrop($event)\"\n >\n <div class=\"simple-grid-row\" *ngFor=\"let row of data\" cdkDrag>\n <div class=\"simple-grid-column-cell\" *ngFor=\"let column of columns\"\n [style.min-width.px]=\"column.width\" [style.max-width.px]=\"column.width\">\n <div class=\"simple-grid-column-cell-value\" [ngClass]=\"column.textAlign ? column.textAlign : defaultTextAlign\">\n <ng-container *ngIf=\"column.template\">\n <ng-container [ngTemplateOutlet]=\"column.template\" [ngTemplateOutletContext]=\"{value: row[column.field], row: row}\"></ng-container>\n </ng-container>\n <div *ngIf=\"!column.template\" [textContent]=\"row[column.field]\"></div>\n </div>\n <div *ngIf=\"column.resizable\" class=\"simple-grid-column-sizer-placeholder\"></div>\n </div>\n </div>\n </div>\n </div>\n ",
7480
+ changeDetection: core.ChangeDetectionStrategy.OnPush,
7481
+ encapsulation: core.ViewEncapsulation.None
7482
+ },] }
7483
+ ];
7484
+ SimpleGridComponent.propDecorators = {
7485
+ content: [{ type: core.ContentChildren, args: [SimpleGridColumnDirective,] }],
7486
+ data: [{ type: core.Input }],
7487
+ dragDropEnabled: [{ type: core.Input }],
7488
+ emitDragDrop: [{ type: core.Input }],
7489
+ onDrop: [{ type: core.Output }],
7490
+ showClass: [{ type: core.HostBinding, args: ["class.co-simple-grid",] }],
7491
+ handleMouseMove: [{ type: core.HostListener, args: ['document:mousemove', ['$event'],] }],
7492
+ handleMouseUp: [{ type: core.HostListener, args: ['document:mouseup', ['$event'],] }]
7493
+ };
7494
+
7495
+ var SimpleGridModule = /** @class */ (function () {
7496
+ function SimpleGridModule() {
7497
+ }
7498
+ return SimpleGridModule;
7499
+ }());
7500
+ SimpleGridModule.decorators = [
7501
+ { type: core.NgModule, args: [{
7502
+ imports: [
7503
+ common.CommonModule,
7504
+ dragDrop.DragDropModule
7505
+ ],
7506
+ declarations: [
7507
+ SimpleGridComponent,
7508
+ SimpleGridColumnDirective
7509
+ ],
7510
+ exports: [
7511
+ SimpleGridComponent,
7512
+ SimpleGridColumnDirective
7513
+ ]
7514
+ },] }
7515
+ ];
7516
+
7197
7517
  /*
7198
7518
  * Public API Surface of corecomponents
7199
7519
  */
@@ -7227,6 +7547,8 @@
7227
7547
  exports.CoSidebarModule = CoSidebarModule;
7228
7548
  exports.CoToggleComponent = CoToggleComponent;
7229
7549
  exports.CoToggleModule = CoToggleModule;
7550
+ exports.CollapsibleComponent = CollapsibleComponent;
7551
+ exports.CollapsibleModule = CollapsibleModule;
7230
7552
  exports.DropDownListComponent = DropDownListComponent;
7231
7553
  exports.DropDownModule = DropDownModule;
7232
7554
  exports.FormComponent = FormComponent;
@@ -7244,6 +7566,8 @@
7244
7566
  exports.InputComboBoxModule = InputComboBoxModule;
7245
7567
  exports.InputDatePickerComponent = InputDatePickerComponent;
7246
7568
  exports.InputDatePickerModule = InputDatePickerModule;
7569
+ exports.InputListboxComponent = InputListboxComponent;
7570
+ exports.InputListboxModule = InputListboxModule;
7247
7571
  exports.InputNumberPickerComponent = InputNumberPickerComponent;
7248
7572
  exports.InputNumberPickerModule = InputNumberPickerModule;
7249
7573
  exports.InputRadioButtonComponent = InputRadioButtonComponent;
@@ -7259,6 +7583,9 @@
7259
7583
  exports.PopupModule = PopupModule;
7260
7584
  exports.PopupWindowShellComponent = PopupWindowShellComponent;
7261
7585
  exports.PromptService = PromptService;
7586
+ exports.SimpleGridColumnDirective = SimpleGridColumnDirective;
7587
+ exports.SimpleGridComponent = SimpleGridComponent;
7588
+ exports.SimpleGridModule = SimpleGridModule;
7262
7589
  exports.TextInputPopupComponent = TextInputPopupComponent;
7263
7590
  exports.TileComponent = TileComponent;
7264
7591
  exports.TileModule = TileModule;