@colijnit/corecomponents_v12 259.1.21 → 259.1.23

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 (26) hide show
  1. package/bundles/colijnit-corecomponents_v12.umd.js +76 -17
  2. package/bundles/colijnit-corecomponents_v12.umd.js.map +1 -1
  3. package/colijnit-corecomponents_v12-259.1.23.tgz +0 -0
  4. package/colijnit-corecomponents_v12.metadata.json +1 -1
  5. package/esm2015/lib/components/base/base-input.component.js +3 -1
  6. package/esm2015/lib/components/hour-scheduling-expandable/components/hour-scheduling-expandable-template/hour-scheduling-expandable-template.component.js +36 -33
  7. package/esm2015/lib/components/hour-scheduling-expandable/components/hour-scheduling-expandable-template/hour-scheduling-expandable-template.module.js +20 -0
  8. package/esm2015/lib/components/hour-scheduling-expandable/hour-scheduling-expandable.component.js +10 -5
  9. package/esm2015/lib/components/hour-scheduling-expandable/hour-scheduling-expandable.module.js +3 -4
  10. package/esm2015/lib/components/list-of-values/list-of-values-popup.component.js +61 -32
  11. package/esm2015/lib/components/list-of-values/list-of-values.component.js +5 -2
  12. package/esm2015/lib/components/list-of-values/list-of-values.module.js +4 -2
  13. package/esm2015/lib/components/simple-grid/simple-grid.component.js +28 -28
  14. package/esm2015/public-api.js +2 -1
  15. package/fesm2015/colijnit-corecomponents_v12.js +157 -98
  16. package/fesm2015/colijnit-corecomponents_v12.js.map +1 -1
  17. package/lib/components/base/base-input.component.d.ts +1 -0
  18. package/lib/components/hour-scheduling-expandable/components/hour-scheduling-expandable-template/hour-scheduling-expandable-template.component.d.ts +1 -1
  19. package/lib/components/hour-scheduling-expandable/components/hour-scheduling-expandable-template/hour-scheduling-expandable-template.module.d.ts +2 -0
  20. package/lib/components/hour-scheduling-expandable/style/_layout.scss +1 -0
  21. package/lib/components/list-of-values/list-of-values-popup.component.d.ts +4 -0
  22. package/lib/components/list-of-values/list-of-values.component.d.ts +1 -0
  23. package/lib/components/list-of-values/style/_layout.scss +7 -0
  24. package/lib/components/simple-grid/style/_layout.scss +47 -8
  25. package/package.json +1 -1
  26. package/public-api.d.ts +1 -0
@@ -2274,6 +2274,7 @@
2274
2274
  this.keyDown = new i0.EventEmitter();
2275
2275
  this.keyUp = new i0.EventEmitter();
2276
2276
  this.modelChange = new i0.EventEmitter();
2277
+ this.selectedValueChange = new i0.EventEmitter();
2277
2278
  this.userModelChange = new i0.EventEmitter();
2278
2279
  this.hiddenChange = new i0.EventEmitter();
2279
2280
  this.cancelClicked = new i0.EventEmitter();
@@ -3186,6 +3187,7 @@
3186
3187
  keyDown: [{ type: i0.Output }],
3187
3188
  keyUp: [{ type: i0.Output }],
3188
3189
  modelChange: [{ type: i0.Output }],
3190
+ selectedValueChange: [{ type: i0.Output }],
3189
3191
  userModelChange: [{ type: i0.Output }],
3190
3192
  hiddenChange: [{ type: i0.Output }],
3191
3193
  cancelClicked: [{ type: i0.Output }],
@@ -10839,7 +10841,7 @@
10839
10841
  SimpleGridComponent.decorators = [
10840
10842
  { type: i0.Component, args: [{
10841
10843
  selector: 'co-simple-grid',
10842
- template: "\n <co-grid-toolbar\n *ngIf=\"showToolbar\" [class.right]=\"rightToolbar\"\n [showEdit]=\"showEdit\"\n [showAdd]=\"showAdd\"\n [showDelete]=\"showDelete\"\n [deleteEnabled]=\"selectedRowIndex > -1\"\n (addClick)=\"addNewRow()\"\n (editClick)=\"editRow($event)\"\n (saveClick)=\"validateAndSave()\"\n (cancelClick)=\"cancelEditRow()\"\n (deleteClick)=\"removeRow()\">\n </co-grid-toolbar>\n\n <table\n id=\"simple-grid-table\"\n class=\"simple-grid-table\"\n [clickOutside]=\"editing\"\n (clickOutside)=\"handleClickOutsideRow()\">\n <colgroup>\n <col\n *ngFor=\"let column of headerColumnsCopy; let index = index\"\n [class.simple-grid-column-auto-fit]=\"column.autoFit\"\n [style.width.px]=\"column.width\"\n [style.min-width.px]=\"MIN_COLUMN_WIDTH\">\n </colgroup>\n <thead>\n <tr>\n <th\n scope=\"col\"\n #headerCell\n class=\"simple-grid-column-header\"\n *ngFor=\"let column of headerColumnsCopy; let index = index\">\n <div\n class=\"simple-grid-column-header-wrapper\"\n [class.resizable]=\"resizable\"\n [class.selected]=\"column.isSelected\"\n [ngClass]=\"column.textAlign ? column.textAlign : defaultTextAlign\">\n <ng-container *ngIf=\"column.headerTemplate; else noHeaderTemplate\">\n <ng-container [ngTemplateOutlet]=\"column.headerTemplate\"></ng-container>\n </ng-container>\n <ng-template #noHeaderTemplate>\n <div\n class=\"simple-grid-column-header-label\"\n [ngClass]=\"column.textAlign ? column.textAlign : defaultTextAlign\"\n [class.with-menu]=\"showGridSettings\"\n [class.with-sort]=\"showColumnSort\"\n [textContent]=\"column.headerText || '&nbsp;'\" [title]=\"column.headerText\"\n (click)=\"showColumnSort ? sortColumn(column, column.field) : toggleColumnMenu(column)\">\n </div>\n\n <div class=\"sort-column\" *ngIf=\"showColumnSort\">\n <co-button\n (click)=\"sortColumn(column, column?.field)\"\n [iconData]=\"icons.getIcon(Icons.ArrowUpArrowDown)\">\n </co-button>\n </div>\n\n <div class=\"column-menu\" *ngIf=\"column.isSelected\">\n <h3 [textContent]=\"'COLUMN_OPTIONS' | coreLocalize\"></h3>\n <ul>\n <li (click)=\"hideColumn(column)\">Hide Column</li>\n <li (click)=\"sortColumn(column, column.field)\">Sort Column</li>\n </ul>\n </div>\n </ng-template>\n <div\n *ngIf=\"resizable && column.resizable\"\n class=\"simple-grid-column-sizer\"\n (mousedown)=\"handleSizerMouseDown($event, column)\">\n </div>\n </div>\n </th>\n </tr>\n\n <div *ngIf=\"showGridSettings\" class=\"grid-settings\">\n <co-button\n [class.selected]=\"isSettingsMenuOpen\"\n [iconData]=\"icons.getIcon(Icons.CogWheels)\"\n (click)=\"toggleSettingsMenu()\">\n </co-button>\n\n <div class=\"settings-menu\" *ngIf=\"isSettingsMenuOpen\">\n <h3 [textContent]=\"'GRID_OPTIONS' | coreLocalize\"></h3>\n <ul>\n <li (click)=\"exportToExcel()\">Export to Excel</li>\n <li *ngIf=\"headerColumnsCopy.length !== headerColumns.length\" (click)=\"showAllColumns()\">\n Show All Columns\n </li>\n </ul>\n </div>\n </div>\n </thead>\n <tbody\n #dropList cdkDropList cdkDropListOrientation=\"vertical\"\n class=\"simple-grid-drag-drop-list\"\n [cdkDropListDisabled]=\"!dragDropEnabled || editing\"\n [cdkDropListData]=\"data\"\n [cdkDropListEnterPredicate]=\"handleCanDragDrop\"\n (cdkDropListDropped)=\"handleDrop($event)\">\n <co-form class=\"simple-grid-row-form\">\n <tr\n #rowElement\n class=\"simple-grid-row\"\n [class.selected]=\"rowIndex === selectedRowIndex && !editing\" observeVisibility\n [class.disabled]=\"getIsRowDisabled(rowIndex)\"\n [class.editing]=\"rowIndex === editRowIndex\"\n *ngFor=\"let row of (!!rowsPerPage ? (data | paginate: {itemsPerPage: rowsPerPage, currentPage: currentPage}) : data); last as last; let rowIndex = index\"\n cdkDrag\n (click)=\"handleClickRow($event, rowIndex)\" (dblclick)=\"handleDblClickRow($event, rowIndex, row)\"\n (visibilityChange)=\"rowVisible.next(row)\"\n (mouseenter)=\"hoveredRowIndex = rowIndex\"\n (mouseleave)=\"hoveredRowIndex = -1\"\n >\n <ng-container *ngIf=\"isSingleColumnRow(row)\">\n <td class=\"simple-grid-single-column-cell\" [attr.colspan]=\"headerColumnsCopy.length\">\n <co-simple-grid-cell\n [column]=\"columns[singleColumnIndex(row)]\"\n [row]=\"row\"\n [editMode]=\"false\">\n </co-simple-grid-cell>\n </td>\n </ng-container>\n <ng-container *ngIf=\"!isSingleColumnRow(row)\">\n <ng-container *ngFor=\"let column of headerColumnsCopy; let columnIndex = index\">\n <td class=\"simple-grid-column-cell\" *ngIf=\"columnIndex !== singleColumnIndex(row)\">\n <co-simple-grid-cell\n [column]=\"column\"\n [row]=\"row\"\n [editMode]=\"inlineEdit && editing && rowIndex === editRowIndex\"\n [fieldEditMode]=\"editCellIndex === columnIndex && rowIndex === editRowIndex\"\n (cellClick)=\"handleCellClick($event, row, rowIndex, columnIndex)\">\n </co-simple-grid-cell>\n <div *ngIf=\"column.resizable\" class=\"simple-grid-column-sizer-placeholder\"></div>\n </td>\n </ng-container>\n <ng-container *ngIf=\"inlineEdit && showRowButtons\">\n <div class=\"icons-container\" *ngIf=\"!editing\">\n <co-icon class=\"icon-item icon-edit\"\n [iconData]=\"icons.getIcon(Icons.PenToSquareSolid)\" *ngIf=\"hoveredRowIndex === rowIndex\"\n (click)=\"editRow($event, true, rowIndex); $event.stopPropagation()\"></co-icon>\n <co-icon class=\"icon-item icon-delete\"\n [iconData]=\"icons.getIcon(Icons.TrashBin)\" *ngIf=\"hoveredRowIndex === rowIndex\"\n (click)=\"selectTheRow(rowIndex); removeRow();\"></co-icon>\n </div>\n <div class=\"icons-container\">\n <co-button class=\"save-button\"\n *ngIf=\"editing && (selectedRowIndex === rowIndex || (isNewRow && rowIndex === editRowIndex))\"\n [iconData]=\"icons.getIcon(Icons.CheckDuotone)\"\n (click)=\"validateAndSave(); $event.stopPropagation()\"></co-button>\n <co-button class=\"close-button\"\n *ngIf=\"editing && (selectedRowIndex === rowIndex || (isNewRow && rowIndex === editRowIndex))\"\n [iconData]=\"icons.getIcon(Icons.CrossSkinny)\"\n (click)=\"cancelEditRow(); $event.stopPropagation() \"></co-button>\n </div>\n </ng-container>\n <ng-container *ngIf=\"!(inlineEdit && showRowButtons) && showDelete\">\n <div class=\"icons-container\">\n <co-icon class=\"icon-item icon-delete\"\n [iconData]=\"icons.getIcon(Icons.TrashBin)\" *ngIf=\"hoveredRowIndex === rowIndex\"\n (click)=\"selectTheRow(rowIndex); removeRow();\">\n </co-icon>\n </div>\n </ng-container>\n </ng-container>\n </tr>\n </co-form>\n </tbody>\n </table>\n <co-pagination-bar\n *ngIf=\"data?.length > rowsPerPage\" class=\"pagination-bar\"\n [itemsPerPage]=\"rowsPerPage\"\n [currentPage]=\"currentPage\"\n [totalItems]=\"data.length\"\n [autoHide]=\"true\"\n (previousClick)=\"goToPreviousPage()\"\n (nextClick)=\"goToNextPage()\"\n (pageClick)=\"setCurrentPage($event)\">\n </co-pagination-bar>\n ",
10844
+ template: "\n <co-grid-toolbar\n *ngIf=\"showToolbar\" [class.right]=\"rightToolbar\"\n [showEdit]=\"showEdit\"\n [showAdd]=\"showAdd\"\n [showDelete]=\"showDelete\"\n [deleteEnabled]=\"selectedRowIndex > -1\"\n (addClick)=\"addNewRow()\"\n (editClick)=\"editRow($event)\"\n (saveClick)=\"validateAndSave()\"\n (cancelClick)=\"cancelEditRow()\"\n (deleteClick)=\"removeRow()\">\n </co-grid-toolbar>\n\n <table\n id=\"simple-grid-table\"\n class=\"simple-grid-table\"\n [clickOutside]=\"editing\"\n (clickOutside)=\"handleClickOutsideRow()\">\n <colgroup>\n <col\n *ngFor=\"let column of headerColumnsCopy; let index = index\"\n [class.simple-grid-column-auto-fit]=\"column.autoFit\"\n [style.width.px]=\"column.width\"\n [style.min-width.px]=\"MIN_COLUMN_WIDTH\">\n <col\n *ngIf=\"((inlineEdit && showRowButtons) || (showDelete && !showRowButtons)) && (hoveredRowIndex >= 0 || selectedRowIndex >= 0 || isNewRow)\"\n [class.icons-col]=\"true\"\n [class.col-width-row-buttons]=\"inlineEdit && showRowButtons\"\n [class.col-width-delete]=\"!showRowButtons && showDelete\">\n </colgroup>\n <thead>\n <tr>\n <th\n scope=\"col\"\n #headerCell\n class=\"simple-grid-column-header\"\n *ngFor=\"let column of headerColumnsCopy; let index = index\">\n <div\n class=\"simple-grid-column-header-wrapper\"\n [class.resizable]=\"resizable\"\n [class.selected]=\"column.isSelected\"\n [ngClass]=\"column.textAlign ? column.textAlign : defaultTextAlign\">\n <ng-container *ngIf=\"column.headerTemplate; else noHeaderTemplate\">\n <ng-container [ngTemplateOutlet]=\"column.headerTemplate\"></ng-container>\n </ng-container>\n <ng-template #noHeaderTemplate>\n <div\n class=\"simple-grid-column-header-label\"\n [ngClass]=\"column.textAlign ? column.textAlign : defaultTextAlign\"\n [class.with-menu]=\"showGridSettings\"\n [class.with-sort]=\"showColumnSort\"\n [textContent]=\"column.headerText || '&nbsp;'\" [title]=\"column.headerText\"\n (click)=\"showColumnSort ? sortColumn(column, column.field) : toggleColumnMenu(column)\">\n </div>\n\n <div class=\"sort-column\" *ngIf=\"showColumnSort\">\n <co-button\n (click)=\"sortColumn(column, column?.field)\"\n [iconData]=\"icons.getIcon(Icons.ArrowUpArrowDown)\">\n </co-button>\n </div>\n\n <div class=\"column-menu\" *ngIf=\"column.isSelected\">\n <h3 [textContent]=\"'COLUMN_OPTIONS' | coreLocalize\"></h3>\n <ul>\n <li (click)=\"hideColumn(column)\">Hide Column</li>\n <li (click)=\"sortColumn(column, column.field)\">Sort Column</li>\n </ul>\n </div>\n </ng-template>\n <div\n *ngIf=\"resizable && column.resizable\"\n class=\"simple-grid-column-sizer\"\n (mousedown)=\"handleSizerMouseDown($event, column)\">\n </div>\n </div>\n </th>\n </tr>\n\n <div *ngIf=\"showGridSettings\" class=\"grid-settings\">\n <co-button\n [class.selected]=\"isSettingsMenuOpen\"\n [iconData]=\"icons.getIcon(Icons.CogWheels)\"\n (click)=\"toggleSettingsMenu()\">\n </co-button>\n\n <div class=\"settings-menu\" *ngIf=\"isSettingsMenuOpen\">\n <h3 [textContent]=\"'GRID_OPTIONS' | coreLocalize\"></h3>\n <ul>\n <li (click)=\"exportToExcel()\">Export to Excel</li>\n <li *ngIf=\"headerColumnsCopy.length !== headerColumns.length\" (click)=\"showAllColumns()\">\n Show All Columns\n </li>\n </ul>\n </div>\n </div>\n </thead>\n <tbody\n #dropList cdkDropList cdkDropListOrientation=\"vertical\"\n class=\"simple-grid-drag-drop-list\"\n [cdkDropListDisabled]=\"!dragDropEnabled || editing\"\n [cdkDropListData]=\"data\"\n [cdkDropListEnterPredicate]=\"handleCanDragDrop\"\n (cdkDropListDropped)=\"handleDrop($event)\">\n <co-form class=\"simple-grid-row-form\">\n <tr\n #rowElement\n class=\"simple-grid-row\"\n [class.selected]=\"rowIndex === selectedRowIndex && !editing\" observeVisibility\n [class.disabled]=\"getIsRowDisabled(rowIndex)\"\n [class.editing]=\"rowIndex === editRowIndex\"\n *ngFor=\"let row of (!!rowsPerPage ? (data | paginate: {itemsPerPage: rowsPerPage, currentPage: currentPage}) : data); last as last; let rowIndex = index\"\n cdkDrag\n (click)=\"handleClickRow($event, rowIndex)\" (dblclick)=\"handleDblClickRow($event, rowIndex, row)\"\n (visibilityChange)=\"rowVisible.next(row)\"\n (mouseenter)=\"hoveredRowIndex = rowIndex\"\n (mouseleave)=\"hoveredRowIndex = -1\"\n >\n <ng-container *ngIf=\"isSingleColumnRow(row)\">\n <td class=\"simple-grid-single-column-cell\" [attr.colspan]=\"headerColumnsCopy.length\">\n <co-simple-grid-cell\n [column]=\"columns[singleColumnIndex(row)]\"\n [row]=\"row\"\n [editMode]=\"false\">\n </co-simple-grid-cell>\n </td>\n </ng-container>\n <ng-container *ngIf=\"!isSingleColumnRow(row)\">\n <ng-container *ngFor=\"let column of headerColumnsCopy; let columnIndex = index\">\n <td class=\"simple-grid-column-cell\" *ngIf=\"columnIndex !== singleColumnIndex(row)\">\n <co-simple-grid-cell\n [column]=\"column\"\n [row]=\"row\"\n [editMode]=\"inlineEdit && editing && rowIndex === editRowIndex\"\n [fieldEditMode]=\"editCellIndex === columnIndex && rowIndex === editRowIndex\"\n (cellClick)=\"handleCellClick($event, row, rowIndex, columnIndex)\">\n </co-simple-grid-cell>\n <div *ngIf=\"column.resizable\" class=\"simple-grid-column-sizer-placeholder\"></div>\n </td>\n </ng-container>\n <ng-container *ngIf=\"(inlineEdit && showRowButtons) || (showDelete && !showRowButtons)\">\n <td class=\"icons-container\"\n *ngIf=\"(editRowIndex <= -1 && selectedRowIndex === -1 && hoveredRowIndex === rowIndex) || selectedRowIndex === rowIndex || (isNewRow && rowIndex === editRowIndex)\">\n <ng-container>\n <co-icon class=\"icon-item icon-edit\"\n *ngIf=\"!editing && (inlineEdit && showRowButtons)\"\n [iconData]=\"icons.getIcon(Icons.PenToSquareSolid)\"\n (click)=\"editRow($event, true, rowIndex); $event.stopPropagation()\"></co-icon>\n <co-icon class=\"icon-item icon-delete\"\n [iconData]=\"icons.getIcon(Icons.TrashBin)\"\n *ngIf=\"(!editing && (inlineEdit || !inlineEdit) && showRowButtons) || (!showRowButtons && showDelete)\"\n (click)=\"selectTheRow(rowIndex); removeRow();\"></co-icon>\n </ng-container>\n <ng-container *ngIf=\"editing && inlineEdit && showRowButtons && (selectedRowIndex === rowIndex || isNewRow)\">\n <co-button class=\"save-button\"\n [iconData]=\"icons.getIcon(Icons.CheckDuotone)\"\n (click)=\"validateAndSave(); $event.stopPropagation()\"></co-button>\n <co-button class=\"close-button\"\n [iconData]=\"icons.getIcon(Icons.CrossSkinny)\"\n (click)=\"cancelEditRow(); $event.stopPropagation() \"></co-button>\n </ng-container>\n </td>\n </ng-container>\n </ng-container>\n </tr>\n </co-form>\n </tbody>\n </table>\n <co-pagination-bar\n *ngIf=\"data?.length > rowsPerPage\" class=\"pagination-bar\"\n [itemsPerPage]=\"rowsPerPage\"\n [currentPage]=\"currentPage\"\n [totalItems]=\"data.length\"\n [autoHide]=\"true\"\n (previousClick)=\"goToPreviousPage()\"\n (nextClick)=\"goToNextPage()\"\n (pageClick)=\"setCurrentPage($event)\">\n </co-pagination-bar>\n ",
10843
10845
  providers: [FormMasterService],
10844
10846
  changeDetection: i0.ChangeDetectionStrategy.OnPush,
10845
10847
  encapsulation: i0.ViewEncapsulation.None
@@ -11697,6 +11699,7 @@
11697
11699
  this.iconCacheService = iconCacheService;
11698
11700
  this._elementRef = _elementRef;
11699
11701
  this.multiselect = false;
11702
+ this.showToggleAll = false;
11700
11703
  this.displayField = 'description';
11701
11704
  this.searchDisabled = false;
11702
11705
  this.modelChange = new i0.EventEmitter();
@@ -11704,6 +11707,7 @@
11704
11707
  this.keyDown = new i0.EventEmitter();
11705
11708
  this.viewModels = [];
11706
11709
  this.viewModelsMain = [];
11710
+ this.allSelected = false;
11707
11711
  this._collection = [];
11708
11712
  this._searchTerm = '';
11709
11713
  this._lovItems = [];
@@ -11784,12 +11788,13 @@
11784
11788
  case KeyboardKey.Up:
11785
11789
  this.selectNextOption(true);
11786
11790
  return false;
11787
- case KeyboardKey.SpaceBar:
11791
+ case KeyboardKey.Enter:
11788
11792
  if (this.highLightModel) {
11789
11793
  this.selectViewModel(this.highLightModel, false);
11790
11794
  }
11791
11795
  else {
11792
11796
  this.keyDown.next(event);
11797
+ return true;
11793
11798
  }
11794
11799
  return false;
11795
11800
  default:
@@ -11874,6 +11879,27 @@
11874
11879
  this._scrollIntoView();
11875
11880
  }
11876
11881
  };
11882
+ ListOfValuesPopupComponent.prototype.selectAll = function () {
11883
+ if (this.viewModels.length > 0) {
11884
+ this.viewModels.forEach(function (vm) { return vm.checked = true; });
11885
+ this.selectOptions();
11886
+ }
11887
+ };
11888
+ ListOfValuesPopupComponent.prototype.toggleAll = function () {
11889
+ if (!this.allSelected) {
11890
+ if (this.viewModels.length > 0) {
11891
+ this.viewModels.forEach(function (vm) { return vm.checked = true; });
11892
+ this.selectOptions();
11893
+ }
11894
+ }
11895
+ else {
11896
+ if (this.viewModels.length > 0) {
11897
+ this.viewModels.forEach(function (vm) { return vm.checked = false; });
11898
+ this.selectOptions();
11899
+ }
11900
+ }
11901
+ this.allSelected = !this.allSelected;
11902
+ };
11877
11903
  ListOfValuesPopupComponent.prototype._prepareViewModelsMain = function () {
11878
11904
  var _this = this;
11879
11905
  this.viewModelsMain.length = 0;
@@ -11917,7 +11943,7 @@
11917
11943
  ListOfValuesPopupComponent.decorators = [
11918
11944
  { type: i0.Component, args: [{
11919
11945
  selector: 'co-list-of-values-popup',
11920
- template: "\n <div class=\"lov-options\" [overlay]=\"parentForOverlay\" [inheritWidth]=\"true\" [ngClass]=\"customCssClass\"\n id=\"lov-popup\"\n role=\"listbox\" [tabindex]=\"-1\"\n (clickOutside)=\"closePopup.emit($event)\">\n <co-input-search *ngIf=\"multiselect\"\n tabindex=\"-1\"\n [(model)]=\"searchTerm\"\n [placeholder]=\"searchPlaceholder\"\n (keydown)=\"handleInputKeyDown($event)\"\n (modelChange)=\"filterViewModels()\"></co-input-search>\n <ul class=\"dropdown-list\" #dropDownList>\n <li\n #lovItem\n *ngFor=\"let viewModel of viewModels; let index = index\"\n [class.selected]=\"viewModel === highLightModel || viewModels.length === 1\"\n (click)=\"selectViewModel(viewModel, !multiselect)\"\n role=\"option\">\n <ng-container *ngIf=\"!multiselect\">\n <co-icon *ngIf=\"viewModel.model[optionIcon]\" class=\"input-text-left-icon\" [iconData]=\"iconCacheService.getIcon(viewModel.model[optionIcon])\">\n </co-icon>\n <span class=\"lov-options-text\" [textContent]=\"viewModel.model[displayField]\"></span>\n </ng-container>\n <ng-container *ngIf=\"multiselect\">\n <co-input-checkbox [model]=\"viewModel.checked\"\n (modelChange)=\"selectViewModel(viewModel, false)\"></co-input-checkbox>\n <span class=\"lov-options-text\" [textContent]=\"viewModel.model[displayField]\"></span>\n </ng-container>\n </li>\n </ul>\n </div>\n ",
11946
+ template: "\n <div class=\"lov-options\" [overlay]=\"parentForOverlay\" [inheritWidth]=\"true\" [ngClass]=\"customCssClass\"\n id=\"lov-popup\"\n role=\"listbox\" [tabindex]=\"-1\"\n (clickOutside)=\"closePopup.emit($event)\">\n <co-input-search *ngIf=\"multiselect\"\n tabindex=\"-1\"\n [(model)]=\"searchTerm\"\n [placeholder]=\"searchPlaceholder\"\n (keydown)=\"handleInputKeyDown($event)\"\n (modelChange)=\"filterViewModels()\"></co-input-search>\n <div class=\"row gap\" *ngIf=\"showToggleAll && multiselect\">\n <co-input-checkbox [model]=\"allSelected\" (modelChange)=\"toggleAll()\"></co-input-checkbox>\n <span [textContent]=\"'DESELECT_ALL' | coreLocalize\" (click)=\"toggleAll()\"></span>\n </div>\n <ul class=\"dropdown-list\" #dropDownList>\n <li\n #lovItem\n *ngFor=\"let viewModel of viewModels; let index = index\"\n [class.selected]=\"viewModel === highLightModel || viewModels.length === 1\"\n (click)=\"selectViewModel(viewModel, !multiselect)\"\n role=\"option\">\n <ng-container *ngIf=\"!multiselect\">\n <co-icon *ngIf=\"viewModel.model[optionIcon]\" class=\"input-text-left-icon\" [iconData]=\"iconCacheService.getIcon(viewModel.model[optionIcon])\">\n </co-icon>\n <span class=\"lov-options-text\" [textContent]=\"viewModel.model[displayField]\"></span>\n </ng-container>\n <ng-container *ngIf=\"multiselect\">\n <co-input-checkbox [model]=\"viewModel.checked\"\n (modelChange)=\"selectViewModel(viewModel, false)\"></co-input-checkbox>\n <span class=\"lov-options-text\" [textContent]=\"viewModel.model[displayField]\"></span>\n </ng-container>\n </li>\n </ul>\n </div>\n ",
11921
11947
  encapsulation: i0.ViewEncapsulation.None
11922
11948
  },] }
11923
11949
  ];
@@ -11931,6 +11957,7 @@
11931
11957
  inputSearch: [{ type: i0.ViewChild, args: [InputSearchComponent,] }],
11932
11958
  model: [{ type: i0.Input }],
11933
11959
  multiselect: [{ type: i0.Input }],
11960
+ showToggleAll: [{ type: i0.Input }],
11934
11961
  displayField: [{ type: i0.Input }],
11935
11962
  searchPlaceholder: [{ type: i0.Input }],
11936
11963
  customCssClass: [{ type: i0.Input }],
@@ -11958,6 +11985,7 @@
11958
11985
  _this.elementRef = elementRef;
11959
11986
  _this.icons = exports.CoreComponentsIcon;
11960
11987
  _this.multiselect = false;
11988
+ _this.showToggleAll = false;
11961
11989
  _this.largeCollection = false;
11962
11990
  _this.displayField = 'description';
11963
11991
  _this.searchDisabled = false;
@@ -12117,6 +12145,7 @@
12117
12145
  searchPlaceholder: this.searchPlaceholder,
12118
12146
  displayField: this.displayField,
12119
12147
  multiselect: this.multiselect,
12148
+ showToggleAll: this.showToggleAll,
12120
12149
  model: this.model,
12121
12150
  collection: this.collection,
12122
12151
  optionIcon: this.optionIcon,
@@ -12148,7 +12177,7 @@
12148
12177
  }
12149
12178
  }
12150
12179
  this.setModel(option);
12151
- this.modelChange.emit(this.model);
12180
+ this.selectedValueChange.emit(option);
12152
12181
  this.detectChanges();
12153
12182
  };
12154
12183
  ListOfValuesComponent.prototype.closePopup = function () {
@@ -12226,6 +12255,7 @@
12226
12255
  model: [{ type: i0.Input }],
12227
12256
  parentForOverlay: [{ type: i0.ViewChild, args: ['parentForOverlay', { read: i0.ElementRef },] }],
12228
12257
  multiselect: [{ type: i0.HostBinding, args: ['class.custom-height',] }, { type: i0.HostBinding, args: ['class.multi-select',] }, { type: i0.Input }],
12258
+ showToggleAll: [{ type: i0.Input }],
12229
12259
  largeCollection: [{ type: i0.Input }],
12230
12260
  displayField: [{ type: i0.Input }],
12231
12261
  optionIcon: [{ type: i0.Input }],
@@ -12354,7 +12384,8 @@
12354
12384
  OverlayModule,
12355
12385
  ClickoutsideModule,
12356
12386
  IconModule,
12357
- InputSearchModule
12387
+ InputSearchModule,
12388
+ CoreComponentsTranslationModule
12358
12389
  ],
12359
12390
  declarations: [
12360
12391
  ListOfValuesComponent,
@@ -15131,6 +15162,11 @@
15131
15162
  };
15132
15163
  HourSchedulingExpandableComponent.prototype.handleDrop = function (dragEvent, hour) {
15133
15164
  var _this = this;
15165
+ dragEvent.preventDefault();
15166
+ dragEvent.stopPropagation();
15167
+ if (!this.schedule[this.objectsProp] || !this.schedule[this.objectsProp].find(function (object) { var _a; return object[_this.idProp] === _this.currentDraggingObject && ((_a = _this.currentDraggingObject) === null || _a === void 0 ? void 0 : _a.id); })) {
15168
+ this.currentDraggingObject = undefined;
15169
+ }
15134
15170
  if (this.currentDraggingObject) {
15135
15171
  //The order was scheduled and needs to be moved
15136
15172
  var start = this.currentDraggingObject.start;
@@ -15148,17 +15184,17 @@
15148
15184
  scheduledObject.top = this.timeDifference(this.schedule[this.childProp][this.startTimeProp], scheduledObject.start);
15149
15185
  scheduledObject.height = this.timeDifference(scheduledObject.start, scheduledObject.end);
15150
15186
  this.timeChangeEvent.emit(originalObject);
15151
- this.currentDraggingObject = undefined;
15152
15187
  }
15188
+ this.currentDraggingObject = undefined;
15153
15189
  }
15154
15190
  else {
15155
15191
  var parsed = this.tryParseJSONObject(dragEvent.dataTransfer.getData("text"));
15156
15192
  if (!parsed) {
15157
15193
  this.newObjectPlanEvent.emit({ currentHour: hour, data: parsed.toString() });
15158
- return;
15159
15194
  }
15160
- //Move between calendars is still too buggy
15161
- // this.moveBetweenCalendarsEvent.emit({hour: hour, data: parsed});
15195
+ else {
15196
+ this.moveBetweenCalendarsEvent.emit({ hour: hour, data: parsed });
15197
+ }
15162
15198
  }
15163
15199
  };
15164
15200
  HourSchedulingExpandableComponent.prototype.allowDrop = function (event, hour) {
@@ -15345,8 +15381,10 @@
15345
15381
  return true;
15346
15382
  };
15347
15383
  HourSchedulingExpandableTemplateComponent.prototype.onExpandableDragStart = function (event, obj, onDragStartCustom) {
15348
- onDragStartCustom === null || onDragStartCustom === void 0 ? void 0 : onDragStartCustom.call(obj);
15349
- event.dataTransfer.setData("text", JSON.stringify({ obj: obj }));
15384
+ event.dataTransfer.setData('text', JSON.stringify({ obj: obj }));
15385
+ if (onDragStartCustom) {
15386
+ onDragStartCustom === null || onDragStartCustom === void 0 ? void 0 : onDragStartCustom.call(obj);
15387
+ }
15350
15388
  };
15351
15389
  HourSchedulingExpandableTemplateComponent.prototype.calculateLeftAndWidthOfObjects = function () {
15352
15390
  var layoutData = new Array(this._objects.length);
@@ -15358,8 +15396,9 @@
15358
15396
  var overlapGroups = [];
15359
15397
  var processed = new Set();
15360
15398
  for (var i = 0; i < this._objects.length; i++) {
15361
- if (processed.has(i))
15399
+ if (processed.has(i)) {
15362
15400
  continue;
15401
+ }
15363
15402
  var group = [i];
15364
15403
  var objA = this._objects[i];
15365
15404
  var startA = new Date(objA.start);
@@ -15393,8 +15432,8 @@
15393
15432
  }());
15394
15433
  HourSchedulingExpandableTemplateComponent.decorators = [
15395
15434
  { type: i0.Component, args: [{
15396
- selector: "co-hour-scheduling-expandable-template",
15397
- template: "\n \n <div\n *ngFor=\"let obj of objects\"\n [class]=\"'custom-scheduled-object'\"\n [class.selected]=\"obj.selected\"\n [draggable]=\"!obj.selected\"\n [style.--height]=\"obj.height + 'px'\"\n [style.--top]=\"obj.top + 'px'\"\n [style.--left]=\"layouts[objects.indexOf(obj)].leftPercent + '%'\"\n [style.--width]=\"layouts[objects.indexOf(obj)].widthPercent + '%'\"\n (click)=\"onSelectBlock(obj)\"\n (dragstart)=\"onExpandableDragStart($event, obj, onDragStartCustom(obj) )\">\n\n <div\n *ngIf=\"obj.selected\"\n class=\"top-resizer\"\n (mousedown)=\"onResizeStart($event, obj, 'top')\"></div>\n <ng-template\n [ngTemplateOutlet]=\"objectTemplate\"\n [ngTemplateOutletContext]=\"{\n object: obj\n }\"\n >\n </ng-template>\n <div *ngIf=\"obj.selected\"\n class=\"bottom-resizer\"\n (mousedown)=\"onResizeStart($event, obj, 'bottom')\"></div>\n </div>\n ",
15435
+ selector: 'co-hour-scheduling-expandable-template',
15436
+ template: "\n\n <div\n *ngFor=\"let obj of objects\"\n [class]=\"'custom-scheduled-object'\"\n [class.selected]=\"obj.selected\"\n [draggable]=\"!obj.selected\"\n [style.--height]=\"obj.height + 'px'\"\n [style.--top]=\"obj.top + 'px'\"\n [style.--left]=\"layouts[objects.indexOf(obj)].leftPercent + '%'\"\n [style.--width]=\"layouts[objects.indexOf(obj)].widthPercent + '%'\"\n (click)=\"onSelectBlock(obj)\"\n (dragstart)=\"onExpandableDragStart($event, obj, onDragStartCustom(obj) )\">\n\n <div\n *ngIf=\"obj.selected\"\n class=\"top-resizer\"\n (mousedown)=\"onResizeStart($event, obj, 'top')\"></div>\n <ng-template\n [ngTemplateOutlet]=\"objectTemplate\"\n [ngTemplateOutletContext]=\"{\n object: obj\n }\"\n >\n </ng-template>\n <div *ngIf=\"obj.selected\"\n class=\"bottom-resizer\"\n (mousedown)=\"onResizeStart($event, obj, 'bottom')\"></div>\n </div>\n ",
15398
15437
  encapsulation: i0.ViewEncapsulation.None
15399
15438
  },] }
15400
15439
  ];
@@ -15406,9 +15445,29 @@
15406
15445
  onSelectBlock: [{ type: i0.Input }],
15407
15446
  startTimeProp: [{ type: i0.Input }],
15408
15447
  endTimeProp: [{ type: i0.Input }],
15409
- showClass: [{ type: i0.HostBinding, args: ["class.co-hour-scheduling-expandable-template",] }]
15448
+ showClass: [{ type: i0.HostBinding, args: ['class.co-hour-scheduling-expandable-template',] }]
15410
15449
  };
15411
15450
 
15451
+ var HourSchedulingExpandableTemplateModule = /** @class */ (function () {
15452
+ function HourSchedulingExpandableTemplateModule() {
15453
+ }
15454
+ return HourSchedulingExpandableTemplateModule;
15455
+ }());
15456
+ HourSchedulingExpandableTemplateModule.decorators = [
15457
+ { type: i0.NgModule, args: [{
15458
+ imports: [
15459
+ common.CommonModule,
15460
+ ],
15461
+ declarations: [
15462
+ HourSchedulingExpandableTemplateComponent
15463
+ ],
15464
+ exports: [
15465
+ HourSchedulingExpandableTemplateComponent
15466
+ ],
15467
+ providers: [common.DatePipe]
15468
+ },] }
15469
+ ];
15470
+
15412
15471
  var HourSchedulingTestObjectComponent = /** @class */ (function () {
15413
15472
  function HourSchedulingTestObjectComponent() {
15414
15473
  }
@@ -15462,14 +15521,13 @@
15462
15521
  imports: [
15463
15522
  common.CommonModule,
15464
15523
  HourSchedulingComponentModule,
15524
+ HourSchedulingExpandableTemplateModule
15465
15525
  ],
15466
15526
  declarations: [
15467
15527
  HourSchedulingExpandableComponent,
15468
- HourSchedulingExpandableTemplateComponent
15469
15528
  ],
15470
15529
  exports: [
15471
15530
  HourSchedulingExpandableComponent,
15472
- HourSchedulingExpandableTemplateComponent
15473
15531
  ],
15474
15532
  providers: [common.DatePipe]
15475
15533
  },] }
@@ -15536,6 +15594,7 @@
15536
15594
  exports.HourSchedulingExpandableComponent = HourSchedulingExpandableComponent;
15537
15595
  exports.HourSchedulingExpandableComponentModule = HourSchedulingExpandableComponentModule;
15538
15596
  exports.HourSchedulingExpandableTemplateComponent = HourSchedulingExpandableTemplateComponent;
15597
+ exports.HourSchedulingExpandableTemplateModule = HourSchedulingExpandableTemplateModule;
15539
15598
  exports.IconCacheService = IconCacheService;
15540
15599
  exports.IconCollapseHandleComponent = IconCollapseHandleComponent;
15541
15600
  exports.IconCollapseHandleModule = IconCollapseHandleModule;