@smartbit4all/ng-client 3.1.59 → 3.1.61

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 (96) hide show
  1. package/esm2020/lib/smart-filter-editor/api/api/filter.service.mjs +1 -1
  2. package/esm2020/lib/smart-filter-editor/api/configuration.mjs +1 -1
  3. package/esm2020/lib/smart-filter-editor/api/encoder.mjs +1 -1
  4. package/esm2020/lib/smart-filter-editor/api/model/filterExpressionBoolOperator.mjs +1 -1
  5. package/esm2020/lib/smart-filter-editor/api/model/filterExpressionBuilderApiConfig.mjs +1 -1
  6. package/esm2020/lib/smart-filter-editor/api/model/filterExpressionBuilderField.mjs +1 -1
  7. package/esm2020/lib/smart-filter-editor/api/model/filterExpressionBuilderGroup.mjs +1 -1
  8. package/esm2020/lib/smart-filter-editor/api/model/filterExpressionBuilderModel.mjs +1 -1
  9. package/esm2020/lib/smart-filter-editor/api/model/filterExpressionBuilderUiModel.mjs +1 -1
  10. package/esm2020/lib/smart-filter-editor/api/model/filterExpressionData.mjs +1 -1
  11. package/esm2020/lib/smart-filter-editor/api/model/filterExpressionDataType.mjs +1 -1
  12. package/esm2020/lib/smart-filter-editor/api/model/filterExpressionField.mjs +1 -1
  13. package/esm2020/lib/smart-filter-editor/api/model/filterExpressionFieldEditor.mjs +1 -1
  14. package/esm2020/lib/smart-filter-editor/api/model/filterExpressionFieldList.mjs +1 -1
  15. package/esm2020/lib/smart-filter-editor/api/model/filterExpressionFieldWidgetType.mjs +1 -1
  16. package/esm2020/lib/smart-filter-editor/api/model/filterExpressionList.mjs +1 -1
  17. package/esm2020/lib/smart-filter-editor/api/model/filterExpressionOperandData.mjs +1 -1
  18. package/esm2020/lib/smart-filter-editor/api/model/filterExpressionOperation.mjs +1 -1
  19. package/esm2020/lib/smart-filter-editor/api/param.mjs +1 -1
  20. package/esm2020/lib/smart-filter-editor/api/variables.mjs +1 -1
  21. package/esm2020/lib/smart-form/api/api/api.mjs +1 -1
  22. package/esm2020/lib/smart-form/api/api/default.service.mjs +1 -1
  23. package/esm2020/lib/smart-form/api/api.module.mjs +1 -1
  24. package/esm2020/lib/smart-form/api/configuration.mjs +1 -1
  25. package/esm2020/lib/smart-form/api/encoder.mjs +1 -1
  26. package/esm2020/lib/smart-form/api/index.mjs +1 -1
  27. package/esm2020/lib/smart-form/api/model/models.mjs +1 -1
  28. package/esm2020/lib/smart-form/api/model/propertyMapping.mjs +1 -1
  29. package/esm2020/lib/smart-form/api/model/selectionDefinition.mjs +1 -1
  30. package/esm2020/lib/smart-form/api/model/smartLayoutDefinition.mjs +1 -1
  31. package/esm2020/lib/smart-form/api/model/smartMatrixModel.mjs +1 -1
  32. package/esm2020/lib/smart-form/api/model/smartWidgetDefinition.mjs +1 -1
  33. package/esm2020/lib/smart-form/api/param.mjs +1 -1
  34. package/esm2020/lib/smart-form/api/variables.mjs +1 -1
  35. package/esm2020/lib/smart-grid/api/grid-api/api/api.mjs +1 -1
  36. package/esm2020/lib/smart-grid/api/grid-api/api/grid.service.mjs +1 -1
  37. package/esm2020/lib/smart-grid/api/grid-api/api.module.mjs +1 -1
  38. package/esm2020/lib/smart-grid/api/grid-api/configuration.mjs +1 -1
  39. package/esm2020/lib/smart-grid/api/grid-api/encoder.mjs +1 -1
  40. package/esm2020/lib/smart-grid/api/grid-api/index.mjs +1 -1
  41. package/esm2020/lib/smart-grid/api/grid-api/model/gridColumnContentType.mjs +1 -1
  42. package/esm2020/lib/smart-grid/api/grid-api/model/gridColumnMeta.mjs +1 -1
  43. package/esm2020/lib/smart-grid/api/grid-api/model/gridDataAccessConfig.mjs +1 -1
  44. package/esm2020/lib/smart-grid/api/grid-api/model/gridModel.mjs +1 -1
  45. package/esm2020/lib/smart-grid/api/grid-api/model/gridPage.mjs +1 -1
  46. package/esm2020/lib/smart-grid/api/grid-api/model/gridRow.mjs +1 -1
  47. package/esm2020/lib/smart-grid/api/grid-api/model/gridSelectionMode.mjs +1 -1
  48. package/esm2020/lib/smart-grid/api/grid-api/model/gridSelectionType.mjs +1 -1
  49. package/esm2020/lib/smart-grid/api/grid-api/model/gridServerModel.mjs +1 -1
  50. package/esm2020/lib/smart-grid/api/grid-api/model/gridUpdateData.mjs +1 -1
  51. package/esm2020/lib/smart-grid/api/grid-api/model/gridView.mjs +1 -1
  52. package/esm2020/lib/smart-grid/api/grid-api/model/gridViewDescriptor.mjs +3 -2
  53. package/esm2020/lib/smart-grid/api/grid-api/model/models.mjs +1 -1
  54. package/esm2020/lib/smart-grid/api/grid-api/param.mjs +1 -1
  55. package/esm2020/lib/smart-grid/api/grid-api/variables.mjs +1 -1
  56. package/esm2020/lib/smart-grid/models/model.mjs +8 -1
  57. package/esm2020/lib/smart-grid/smart-grid.component.mjs +143 -5
  58. package/esm2020/lib/smart-grid/smart-grid.module.mjs +9 -1
  59. package/esm2020/lib/view-context/api/api/view.service.mjs +1 -1
  60. package/esm2020/lib/view-context/api/model/uploadedFile.mjs +1 -1
  61. package/esm2020/lib/view-context/api/model/viewEventHandler.mjs +1 -1
  62. package/esm2020/lib/view-context/value-api/api/api.mjs +1 -1
  63. package/esm2020/lib/view-context/value-api/api/value.service.mjs +1 -1
  64. package/esm2020/lib/view-context/value-api/api.module.mjs +1 -1
  65. package/esm2020/lib/view-context/value-api/configuration.mjs +1 -1
  66. package/esm2020/lib/view-context/value-api/encoder.mjs +1 -1
  67. package/esm2020/lib/view-context/value-api/index.mjs +1 -1
  68. package/esm2020/lib/view-context/value-api/model/genericValue.mjs +1 -1
  69. package/esm2020/lib/view-context/value-api/model/models.mjs +1 -1
  70. package/esm2020/lib/view-context/value-api/model/value.mjs +1 -1
  71. package/esm2020/lib/view-context/value-api/model/valueSetData.mjs +1 -1
  72. package/esm2020/lib/view-context/value-api/model/valueSetDefinition.mjs +1 -1
  73. package/esm2020/lib/view-context/value-api/model/valueSetDefinitionData.mjs +1 -1
  74. package/esm2020/lib/view-context/value-api/model/valueSetDefinitionIdentifier.mjs +1 -1
  75. package/esm2020/lib/view-context/value-api/model/valueSetDefinitionKind.mjs +1 -1
  76. package/esm2020/lib/view-context/value-api/model/valueSetExpression.mjs +1 -1
  77. package/esm2020/lib/view-context/value-api/model/valueSetOperand.mjs +1 -1
  78. package/esm2020/lib/view-context/value-api/model/valueSetOperation.mjs +1 -1
  79. package/esm2020/lib/view-context/value-api/param.mjs +1 -1
  80. package/esm2020/lib/view-context/value-api/variables.mjs +1 -1
  81. package/fesm2015/smartbit4all-ng-client.mjs +160 -8
  82. package/fesm2015/smartbit4all-ng-client.mjs.map +1 -1
  83. package/fesm2020/smartbit4all-ng-client.mjs +154 -7
  84. package/fesm2020/smartbit4all-ng-client.mjs.map +1 -1
  85. package/lib/smart-grid/api/grid-api/model/gridRow.d.ts +12 -0
  86. package/lib/smart-grid/api/grid-api/model/gridViewDescriptor.d.ts +5 -1
  87. package/lib/smart-grid/models/model.d.ts +2 -1
  88. package/lib/smart-grid/smart-grid.component.d.ts +24 -0
  89. package/lib/smart-grid/smart-grid.module.d.ts +7 -5
  90. package/package.json +1 -1
  91. package/smartbit4all-ng-client-3.1.61.tgz +0 -0
  92. package/src/lib/smart-filter-editor/api/README.md +226 -226
  93. package/src/lib/smart-form/api/README.md +226 -226
  94. package/src/lib/smart-grid/api/grid-api/README.md +226 -226
  95. package/src/lib/view-context/value-api/README.md +226 -226
  96. package/smartbit4all-ng-client-3.1.59.tgz +0 -0
@@ -64,9 +64,9 @@ import * as i2$5 from '@angular/material/table';
64
64
  import { MatTableModule } from '@angular/material/table';
65
65
  import { catchError, switchMap } from 'rxjs/operators';
66
66
  import * as i2$6 from '@angular/material/tree';
67
- import { MatTreeNestedDataSource, MatTreeModule } from '@angular/material/tree';
68
- import { NestedTreeControl } from '@angular/cdk/tree';
69
- import * as i7$1 from '@angular/material/paginator';
67
+ import { MatTreeNestedDataSource, MatTreeModule, MatTreeFlattener, MatTreeFlatDataSource } from '@angular/material/tree';
68
+ import { NestedTreeControl, FlatTreeControl } from '@angular/cdk/tree';
69
+ import * as i10$1 from '@angular/material/paginator';
70
70
  import { MatPaginatorModule } from '@angular/material/paginator';
71
71
  import * as i1$5 from '@angular/material/toolbar';
72
72
  import { MatToolbarModule } from '@angular/material/toolbar';
@@ -9606,6 +9606,7 @@ var SmartLayoutDef;
9606
9606
  SmartLayoutDef["TABLE"] = "TABLE";
9607
9607
  SmartLayoutDef["EXPANDABLE"] = "EXPANDABLE";
9608
9608
  SmartLayoutDef["CARD"] = "CARD";
9609
+ SmartLayoutDef["TREE"] = "TREE";
9609
9610
  })(SmartLayoutDef || (SmartLayoutDef = {}));
9610
9611
  var SmartGridButtonType;
9611
9612
  (function (SmartGridButtonType) {
@@ -9622,7 +9623,13 @@ var SmartGridType;
9622
9623
  SmartGridType["CARD1"] = "CARD1";
9623
9624
  SmartGridType["CARD2"] = "CARD2";
9624
9625
  SmartGridType["CUSTOM"] = "CUSTOM";
9625
- })(SmartGridType || (SmartGridType = {}));
9626
+ })(SmartGridType || (SmartGridType = {}));
9627
+ // export type SmartGridTreeNode = {
9628
+ // item: string;
9629
+ // level: number;
9630
+ // expandable: boolean;
9631
+ // row: SmartGrid;
9632
+ // };
9626
9633
 
9627
9634
  class SmartGridCardComponent {
9628
9635
  constructor(cfService) {
@@ -10254,7 +10261,8 @@ var GridViewDescriptor;
10254
10261
  (function (GridViewDescriptor) {
10255
10262
  GridViewDescriptor.KindEnum = {
10256
10263
  Table: 'TABLE',
10257
- Expandablecards1: 'EXPANDABLECARDS1'
10264
+ Expandablecards1: 'EXPANDABLECARDS1',
10265
+ Tree: 'TREE'
10258
10266
  };
10259
10267
  })(GridViewDescriptor || (GridViewDescriptor = {}));
10260
10268
 
@@ -10957,6 +10965,22 @@ class SmartGridComponent {
10957
10965
  this.uiActionDescriptors = new Map();
10958
10966
  this.afterViewInitExecuted = false;
10959
10967
  this.isBlocked = true;
10968
+ this.getLevel = (node) => node.level ?? 0;
10969
+ this.isExpandable = (node) => (node.children ? true : false);
10970
+ this.getChildren = (node) => {
10971
+ if (node.children) {
10972
+ let rows = this.smartGrid?.gridModel.page.rows?.filter((row) => node.children?.some((child) => child === row.id));
10973
+ if (rows) {
10974
+ return rows;
10975
+ }
10976
+ }
10977
+ return [];
10978
+ };
10979
+ this.hasChild = (_, _nodeData) => (_nodeData.children ? true : false);
10980
+ this.transformer = (row, level) => {
10981
+ row.level = level;
10982
+ return row;
10983
+ };
10960
10984
  this.service.gridModelChanged.subscribe(() => {
10961
10985
  // called after every service call (load, save, refresh, etc.)
10962
10986
  this.smartGrid.gridModel = this.service.gridModel;
@@ -11033,6 +11057,9 @@ class SmartGridComponent {
11033
11057
  else if (this.smartGrid.layoutDef === SmartLayoutDef.CARD) {
11034
11058
  this.renderCards();
11035
11059
  }
11060
+ else if (this.smartGrid.layoutDef === SmartLayoutDef.TREE) {
11061
+ this.renderTree();
11062
+ }
11036
11063
  this.isBlocked = false;
11037
11064
  }
11038
11065
  async renderTable() {
@@ -11196,6 +11223,112 @@ class SmartGridComponent {
11196
11223
  renderCards() {
11197
11224
  // TODO
11198
11225
  }
11226
+ renderTree() {
11227
+ if (!this.treeDataSource) {
11228
+ this.treeFlattener = new MatTreeFlattener(this.transformer, this.getLevel, this.isExpandable, this.getChildren);
11229
+ this.treeControl = new FlatTreeControl(this.getLevel, this.isExpandable);
11230
+ this.treeDataSource = new MatTreeFlatDataSource(this.treeControl, this.treeFlattener);
11231
+ const selectionMode = this.service.gridModel.view?.descriptor?.selectionMode;
11232
+ const isMultiple = selectionMode === GridSelectionMode.Multiple;
11233
+ this.treeChecklistSelection = new SelectionModel(isMultiple);
11234
+ }
11235
+ this.treeDataSource.data = this.smartGrid.gridModel.page.rows.filter((row) => !row.parent);
11236
+ // TODO handle and set selection..
11237
+ this.treeChecklistSelection?.clear();
11238
+ this.treeControl?.dataNodes.forEach((node) => {
11239
+ if (node.selected) {
11240
+ this.treeChecklistSelection?.select(node);
11241
+ }
11242
+ });
11243
+ }
11244
+ getTreeItem(row) {
11245
+ let columns = this.smartGrid?.gridModel.view?.orderedColumnNames;
11246
+ let data = row.data;
11247
+ if (columns && columns.length > 0) {
11248
+ return columns.map((col) => data[col]).join(' ');
11249
+ }
11250
+ return row.id;
11251
+ }
11252
+ /** Toggle the treeNode selection. Select/deselect all the descendants node */
11253
+ treeNodeSelectionToggle(node) {
11254
+ if (!this.treeChecklistSelection) {
11255
+ return;
11256
+ }
11257
+ let selectionBefore = this.treeChecklistSelection.selected.map((row) => row.id);
11258
+ this.treeChecklistSelection.toggle(node);
11259
+ const descendants = this.treeControl.getDescendants(node);
11260
+ this.treeChecklistSelection.isSelected(node)
11261
+ ? this.treeChecklistSelection.select(...descendants)
11262
+ : this.treeChecklistSelection.deselect(...descendants);
11263
+ this.checkAllParentsSelection(node);
11264
+ let selectionAfter = this.treeChecklistSelection.selected.map((row) => row.id);
11265
+ let selectedIds = selectionAfter.filter((s) => !selectionBefore.includes(s));
11266
+ let unselectedIds = selectionBefore.filter((s) => !selectionAfter.includes(s));
11267
+ this.service.gridModel.page.rows
11268
+ ?.filter((row) => selectedIds.includes(row.id))
11269
+ .forEach((row) => (row.selected = false)); // onSelect will toggle!
11270
+ this.service.gridModel.page.rows
11271
+ ?.filter((row) => unselectedIds.includes(row.id))
11272
+ .forEach((row) => (row.selected = true)); // onSelect will toggle!
11273
+ let union = selectedIds.concat(unselectedIds);
11274
+ this.onSelectList(union);
11275
+ }
11276
+ checkAllParentsSelection(node) {
11277
+ let parent = this.getParentNode(node);
11278
+ while (parent) {
11279
+ this.checkParentNodeSelection(parent);
11280
+ parent = this.getParentNode(parent);
11281
+ }
11282
+ }
11283
+ checkParentNodeSelection(node) {
11284
+ if (!this.treeChecklistSelection) {
11285
+ return;
11286
+ }
11287
+ const nodeSelected = this.treeChecklistSelection.isSelected(node);
11288
+ const descAllSelected = this.descendantsAllSelected(node);
11289
+ if (nodeSelected && !descAllSelected) {
11290
+ this.treeChecklistSelection.deselect(node);
11291
+ }
11292
+ else if (!nodeSelected && descAllSelected) {
11293
+ this.treeChecklistSelection.select(node);
11294
+ }
11295
+ }
11296
+ /* Get the parent node of a node */
11297
+ getParentNode(node) {
11298
+ const currentLevel = this.getLevel(node);
11299
+ if (currentLevel < 1) {
11300
+ return null;
11301
+ }
11302
+ const startIndex = this.treeControl.dataNodes.indexOf(node) - 1;
11303
+ for (let i = startIndex; i >= 0; i--) {
11304
+ const currentNode = this.treeControl.dataNodes[i];
11305
+ if (this.getLevel(currentNode) < currentLevel) {
11306
+ return currentNode;
11307
+ }
11308
+ }
11309
+ return null;
11310
+ }
11311
+ /** Whether all the descendants of the node are selected. */
11312
+ descendantsAllSelected(node) {
11313
+ if (!this.treeControl || !this.treeChecklistSelection) {
11314
+ return false;
11315
+ }
11316
+ const descendants = this.treeControl.getDescendants(node);
11317
+ const descAllSelected = descendants.length > 0 &&
11318
+ descendants.every((child) => {
11319
+ return this.treeChecklistSelection.isSelected(child);
11320
+ });
11321
+ return descAllSelected;
11322
+ }
11323
+ /** Whether part of the descendants are selected */
11324
+ descendantsPartiallySelected(node) {
11325
+ if (!this.treeControl || !this.treeChecklistSelection) {
11326
+ return false;
11327
+ }
11328
+ const descendants = this.treeControl.getDescendants(node);
11329
+ const result = descendants.some((child) => this.treeChecklistSelection.isSelected(child));
11330
+ return result && !this.descendantsAllSelected(node);
11331
+ }
11199
11332
  async constructHeader() {
11200
11333
  let header = [];
11201
11334
  if (this.smartGrid.gridModel.page.rows && this.smartGrid.gridModel.page.rows.length) {
@@ -11371,9 +11504,17 @@ class SmartGridComponent {
11371
11504
  }
11372
11505
  async onSelect(rowId) {
11373
11506
  this.isBlocked = true;
11507
+ this.onSelectInternal(rowId);
11508
+ this.refresh();
11509
+ }
11510
+ async onSelectInternal(rowId) {
11374
11511
  const row = this.service.gridModel.page.rows?.find((gridRow) => gridRow.id === rowId);
11375
11512
  const viewContextChange = await this.service.select(this.smartGrid, row);
11376
11513
  this.smartGrid.viewContextService.handleChanges(viewContextChange.changes);
11514
+ }
11515
+ async onSelectList(rowIds) {
11516
+ this.isBlocked = true;
11517
+ rowIds.forEach((rowId) => this.onSelectInternal(rowId));
11377
11518
  this.refresh();
11378
11519
  }
11379
11520
  async onSelectAll(selected) {
@@ -11402,10 +11543,10 @@ class SmartGridComponent {
11402
11543
  }
11403
11544
  }
11404
11545
  SmartGridComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.4.0", ngImport: i0, type: SmartGridComponent, deps: [{ token: SmartGridService }, { token: ComponentFactoryService }, { token: i1$2.MatDialog }], target: i0.ɵɵFactoryTarget.Component });
11405
- SmartGridComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.4.0", type: SmartGridComponent, selector: "smart-grid", inputs: { smartGrid: "smartGrid", uuid: "uuid", dev: "dev" }, providers: [SmartGridService], viewQueries: [{ propertyName: "vcRefTable", first: true, predicate: ["table"], descendants: true, read: ViewContainerRef }], usesOnChanges: true, ngImport: i0, template: "<div *ngIf=\"smartGrid\" class=\"smartGrid-container\">\r\n <div class=\"smart-grid-edit-button\" *ngIf=\"smartGrid.showEditColumns\">\r\n <button (click)=\"editColumns()\" mat-raised-button color=\"primary\">\r\n Oszlopok testreszab\u00E1sa\r\n </button>\r\n </div>\r\n <!-- <div [ngClass]=\"isBlocked ? 'blocked' : ''\"></div> -->\r\n <div class=\"smartGridContent\">\r\n <div>\r\n <div *ngIf=\"smartGrid.showResultCount\">\r\n <div class=\"smartGrid-data-number\">\r\n {{ smartGrid.gridModel.totalRowCount }}\r\n </div>\r\n </div>\r\n </div>\r\n\r\n <div class=\"smart-grid-table-container\">\r\n <ng-template #table></ng-template>\r\n </div>\r\n\r\n <div *ngIf=\"smartGrid.layoutDef === layoutDef().EXPANDABLE\">\r\n <smart-expandable-section\r\n #gridExpandableSection\r\n *ngFor=\"let expandableSection of expandableSections\"\r\n [data]=\"expandableSection\"\r\n ></smart-expandable-section>\r\n </div>\r\n <div\r\n *ngIf=\"smartGrid.layoutDef === layoutDef().CARD\"\r\n class=\"cards-container\"\r\n [ngStyle]=\"{\r\n 'grid-template-columns':\r\n smartGrid.numberOfColumn !== undefined\r\n ? 'repeat(' + smartGrid.numberOfColumn + ', 1fr)'\r\n : ''\r\n }\"\r\n >\r\n <app-smart-grid-card\r\n class=\"smartGrid-card-container\"\r\n *ngFor=\"let task of smartGrid.gridModel.page.rows\"\r\n [item]=\"task\"\r\n [smartGrid]=\"smartGrid\"\r\n ></app-smart-grid-card>\r\n </div>\r\n </div>\r\n\r\n <mat-paginator\r\n *ngIf=\"smartGrid.paginator\"\r\n #paginator\r\n [length]=\"length\"\r\n [pageSize]=\"pageSize\"\r\n [pageSizeOptions]=\"pageSizeOptions\"\r\n (page)=\"onChangePage($event)\"\r\n ></mat-paginator>\r\n</div>\r\n", styles: [".smartGrid-container{position:relative;padding:1.5rem;display:flex;flex-direction:column;gap:1rem}.smartGrid-data-number{padding-bottom:1rem}.cards-container{display:grid;grid-gap:1rem;gap:1rem;padding:1rem}.smartGrid-card-container{height:auto;border:1px solid black;border-radius:8px}.smartGrid-container ::ng-deep .mat-form-field-appearance-legacy .mat-form-field-underline{bottom:0}.smartGridContent{width:100%;flex:1;overflow:auto}.blocked{position:absolute;width:calc(100% - 3rem);height:calc(100% - 3rem);z-index:110;background-color:#0003}.smart-grid-table-container{display:flex;flex-direction:column;gap:1rem}.smart-grid-edit-button{display:flex;flex-direction:row;justify-content:flex-end}\n"], components: [{ type: i3.MatButton, selector: "button[mat-button], button[mat-raised-button], button[mat-icon-button], button[mat-fab], button[mat-mini-fab], button[mat-stroked-button], button[mat-flat-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { type: ExpandableSectionComponent, selector: "smart-expandable-section", inputs: ["data", "index"] }, { type: SmartGridCardComponent, selector: "app-smart-grid-card", inputs: ["item", "smartGrid"] }, { type: i7$1.MatPaginator, selector: "mat-paginator", inputs: ["disabled"], exportAs: ["matPaginator"] }], directives: [{ type: i3$1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i3$1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i3$1.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }] });
11546
+ SmartGridComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.4.0", type: SmartGridComponent, selector: "smart-grid", inputs: { smartGrid: "smartGrid", uuid: "uuid", dev: "dev" }, providers: [SmartGridService], viewQueries: [{ propertyName: "vcRefTable", first: true, predicate: ["table"], descendants: true, read: ViewContainerRef }], usesOnChanges: true, ngImport: i0, template: "<div *ngIf=\"smartGrid\" class=\"smartGrid-container\">\r\n <div class=\"smart-grid-edit-button\" *ngIf=\"smartGrid.showEditColumns\">\r\n <button (click)=\"editColumns()\" mat-raised-button color=\"primary\">\r\n Oszlopok testreszab\u00E1sa\r\n </button>\r\n </div>\r\n <!-- <div [ngClass]=\"isBlocked ? 'blocked' : ''\"></div> -->\r\n <div class=\"smartGridContent\">\r\n <div>\r\n <div *ngIf=\"smartGrid.showResultCount\">\r\n <div class=\"smartGrid-data-number\">\r\n {{ smartGrid.gridModel.totalRowCount }}\r\n </div>\r\n </div>\r\n </div>\r\n\r\n <div class=\"smart-grid-table-container\">\r\n <ng-template #table></ng-template>\r\n </div>\r\n\r\n <div *ngIf=\"smartGrid.layoutDef === layoutDef().EXPANDABLE\">\r\n <smart-expandable-section\r\n #gridExpandableSection\r\n *ngFor=\"let expandableSection of expandableSections\"\r\n [data]=\"expandableSection\"\r\n ></smart-expandable-section>\r\n </div>\r\n <div\r\n *ngIf=\"smartGrid.layoutDef === layoutDef().CARD\"\r\n class=\"cards-container\"\r\n [ngStyle]=\"{\r\n 'grid-template-columns':\r\n smartGrid.numberOfColumn !== undefined\r\n ? 'repeat(' + smartGrid.numberOfColumn + ', 1fr)'\r\n : ''\r\n }\"\r\n >\r\n <app-smart-grid-card\r\n class=\"smartGrid-card-container\"\r\n *ngFor=\"let task of smartGrid.gridModel.page.rows\"\r\n [item]=\"task\"\r\n [smartGrid]=\"smartGrid\"\r\n ></app-smart-grid-card>\r\n </div>\r\n <div\r\n *ngIf=\"smartGrid.layoutDef === layoutDef().TREE && treeControl\"\r\n class=\"tree-container\"\r\n [ngStyle]=\"{\r\n 'grid-template-columns':\r\n smartGrid.numberOfColumn !== undefined\r\n ? 'repeat(' + smartGrid.numberOfColumn + ', 1fr)'\r\n : ''\r\n }\"\r\n >\r\n <mat-tree [dataSource]=\"treeDataSource!\" [treeControl]=\"treeControl!\">\r\n <mat-tree-node *matTreeNodeDef=\"let node\" matTreeNodeToggle matTreeNodePadding>\r\n <button mat-icon-button disabled></button>\r\n <mat-checkbox\r\n class=\"checklist-leaf-node\"\r\n [checked]=\"treeChecklistSelection?.isSelected(node)\"\r\n (change)=\"treeNodeSelectionToggle(node)\"\r\n >{{ getTreeItem(node) }}</mat-checkbox\r\n >\r\n </mat-tree-node>\r\n\r\n <!-- <mat-tree-node *matTreeNodeDef=\"let node; when: hasNoContent\" matTreeNodePadding>\r\n <button mat-icon-button disabled></button>\r\n <mat-form-field appearance=\"fill\">\r\n <mat-label>New item...</mat-label>\r\n <input matInput #itemValue placeholder=\"Ex. Lettuce\" />\r\n </mat-form-field>\r\n <button mat-button (click)=\"saveNode(node, itemValue.value)\">Save</button>\r\n </mat-tree-node> -->\r\n\r\n <mat-tree-node *matTreeNodeDef=\"let node; when: hasChild\" matTreeNodePadding>\r\n <button mat-icon-button matTreeNodeToggle [attr.aria-label]=\"'Toggle ' + node.item\">\r\n <mat-icon class=\"mat-icon-rtl-mirror\">\r\n {{ treeControl!.isExpanded(node) ? 'expand_more' : 'chevron_right' }}\r\n </mat-icon>\r\n </button>\r\n <!-- [checked]=\"descendantsAllSelected(node)\" -->\r\n <mat-checkbox\r\n [checked]=\"treeChecklistSelection?.isSelected(node)\"\r\n [indeterminate]=\"descendantsPartiallySelected(node)\"\r\n (change)=\"treeNodeSelectionToggle(node)\"\r\n >{{ getTreeItem(node) }}</mat-checkbox\r\n >\r\n </mat-tree-node>\r\n </mat-tree>\r\n </div>\r\n </div>\r\n\r\n <mat-paginator\r\n *ngIf=\"smartGrid.paginator\"\r\n #paginator\r\n [length]=\"length\"\r\n [pageSize]=\"pageSize\"\r\n [pageSizeOptions]=\"pageSizeOptions\"\r\n (page)=\"onChangePage($event)\"\r\n ></mat-paginator>\r\n</div>\r\n", styles: [".smartGrid-container{position:relative;padding:1.5rem;display:flex;flex-direction:column;gap:1rem}.smartGrid-data-number{padding-bottom:1rem}.cards-container{display:grid;grid-gap:1rem;gap:1rem;padding:1rem}.smartGrid-card-container{height:auto;border:1px solid black;border-radius:8px}.smartGrid-container ::ng-deep .mat-form-field-appearance-legacy .mat-form-field-underline{bottom:0}.smartGridContent{width:100%;flex:1;overflow:auto}.blocked{position:absolute;width:calc(100% - 3rem);height:calc(100% - 3rem);z-index:110;background-color:#0003}.smart-grid-table-container{display:flex;flex-direction:column;gap:1rem}.smart-grid-edit-button{display:flex;flex-direction:row;justify-content:flex-end}\n"], components: [{ type: i3.MatButton, selector: "button[mat-button], button[mat-raised-button], button[mat-icon-button], button[mat-fab], button[mat-mini-fab], button[mat-stroked-button], button[mat-flat-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { type: ExpandableSectionComponent, selector: "smart-expandable-section", inputs: ["data", "index"] }, { type: SmartGridCardComponent, selector: "app-smart-grid-card", inputs: ["item", "smartGrid"] }, { type: i2$6.MatTree, selector: "mat-tree", exportAs: ["matTree"] }, { type: i10.MatCheckbox, selector: "mat-checkbox", inputs: ["disableRipple", "color", "tabIndex", "aria-label", "aria-labelledby", "aria-describedby", "id", "required", "labelPosition", "name", "value", "checked", "disabled", "indeterminate"], outputs: ["change", "indeterminateChange"], exportAs: ["matCheckbox"] }, { type: i1$1.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { type: i10$1.MatPaginator, selector: "mat-paginator", inputs: ["disabled"], exportAs: ["matPaginator"] }], directives: [{ type: i3$1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i3$1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i3$1.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { type: i2$6.MatTreeNodeDef, selector: "[matTreeNodeDef]", inputs: ["matTreeNodeDefWhen", "matTreeNode"] }, { type: i2$6.MatTreeNode, selector: "mat-tree-node", inputs: ["role", "disabled", "tabIndex"], exportAs: ["matTreeNode"] }, { type: i2$6.MatTreeNodeToggle, selector: "[matTreeNodeToggle]", inputs: ["matTreeNodeToggleRecursive"] }, { type: i2$6.MatTreeNodePadding, selector: "[matTreeNodePadding]", inputs: ["matTreeNodePadding", "matTreeNodePaddingIndent"] }] });
11406
11547
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.4.0", ngImport: i0, type: SmartGridComponent, decorators: [{
11407
11548
  type: Component,
11408
- args: [{ selector: 'smart-grid', providers: [SmartGridService], template: "<div *ngIf=\"smartGrid\" class=\"smartGrid-container\">\r\n <div class=\"smart-grid-edit-button\" *ngIf=\"smartGrid.showEditColumns\">\r\n <button (click)=\"editColumns()\" mat-raised-button color=\"primary\">\r\n Oszlopok testreszab\u00E1sa\r\n </button>\r\n </div>\r\n <!-- <div [ngClass]=\"isBlocked ? 'blocked' : ''\"></div> -->\r\n <div class=\"smartGridContent\">\r\n <div>\r\n <div *ngIf=\"smartGrid.showResultCount\">\r\n <div class=\"smartGrid-data-number\">\r\n {{ smartGrid.gridModel.totalRowCount }}\r\n </div>\r\n </div>\r\n </div>\r\n\r\n <div class=\"smart-grid-table-container\">\r\n <ng-template #table></ng-template>\r\n </div>\r\n\r\n <div *ngIf=\"smartGrid.layoutDef === layoutDef().EXPANDABLE\">\r\n <smart-expandable-section\r\n #gridExpandableSection\r\n *ngFor=\"let expandableSection of expandableSections\"\r\n [data]=\"expandableSection\"\r\n ></smart-expandable-section>\r\n </div>\r\n <div\r\n *ngIf=\"smartGrid.layoutDef === layoutDef().CARD\"\r\n class=\"cards-container\"\r\n [ngStyle]=\"{\r\n 'grid-template-columns':\r\n smartGrid.numberOfColumn !== undefined\r\n ? 'repeat(' + smartGrid.numberOfColumn + ', 1fr)'\r\n : ''\r\n }\"\r\n >\r\n <app-smart-grid-card\r\n class=\"smartGrid-card-container\"\r\n *ngFor=\"let task of smartGrid.gridModel.page.rows\"\r\n [item]=\"task\"\r\n [smartGrid]=\"smartGrid\"\r\n ></app-smart-grid-card>\r\n </div>\r\n </div>\r\n\r\n <mat-paginator\r\n *ngIf=\"smartGrid.paginator\"\r\n #paginator\r\n [length]=\"length\"\r\n [pageSize]=\"pageSize\"\r\n [pageSizeOptions]=\"pageSizeOptions\"\r\n (page)=\"onChangePage($event)\"\r\n ></mat-paginator>\r\n</div>\r\n", styles: [".smartGrid-container{position:relative;padding:1.5rem;display:flex;flex-direction:column;gap:1rem}.smartGrid-data-number{padding-bottom:1rem}.cards-container{display:grid;grid-gap:1rem;gap:1rem;padding:1rem}.smartGrid-card-container{height:auto;border:1px solid black;border-radius:8px}.smartGrid-container ::ng-deep .mat-form-field-appearance-legacy .mat-form-field-underline{bottom:0}.smartGridContent{width:100%;flex:1;overflow:auto}.blocked{position:absolute;width:calc(100% - 3rem);height:calc(100% - 3rem);z-index:110;background-color:#0003}.smart-grid-table-container{display:flex;flex-direction:column;gap:1rem}.smart-grid-edit-button{display:flex;flex-direction:row;justify-content:flex-end}\n"] }]
11549
+ args: [{ selector: 'smart-grid', providers: [SmartGridService], template: "<div *ngIf=\"smartGrid\" class=\"smartGrid-container\">\r\n <div class=\"smart-grid-edit-button\" *ngIf=\"smartGrid.showEditColumns\">\r\n <button (click)=\"editColumns()\" mat-raised-button color=\"primary\">\r\n Oszlopok testreszab\u00E1sa\r\n </button>\r\n </div>\r\n <!-- <div [ngClass]=\"isBlocked ? 'blocked' : ''\"></div> -->\r\n <div class=\"smartGridContent\">\r\n <div>\r\n <div *ngIf=\"smartGrid.showResultCount\">\r\n <div class=\"smartGrid-data-number\">\r\n {{ smartGrid.gridModel.totalRowCount }}\r\n </div>\r\n </div>\r\n </div>\r\n\r\n <div class=\"smart-grid-table-container\">\r\n <ng-template #table></ng-template>\r\n </div>\r\n\r\n <div *ngIf=\"smartGrid.layoutDef === layoutDef().EXPANDABLE\">\r\n <smart-expandable-section\r\n #gridExpandableSection\r\n *ngFor=\"let expandableSection of expandableSections\"\r\n [data]=\"expandableSection\"\r\n ></smart-expandable-section>\r\n </div>\r\n <div\r\n *ngIf=\"smartGrid.layoutDef === layoutDef().CARD\"\r\n class=\"cards-container\"\r\n [ngStyle]=\"{\r\n 'grid-template-columns':\r\n smartGrid.numberOfColumn !== undefined\r\n ? 'repeat(' + smartGrid.numberOfColumn + ', 1fr)'\r\n : ''\r\n }\"\r\n >\r\n <app-smart-grid-card\r\n class=\"smartGrid-card-container\"\r\n *ngFor=\"let task of smartGrid.gridModel.page.rows\"\r\n [item]=\"task\"\r\n [smartGrid]=\"smartGrid\"\r\n ></app-smart-grid-card>\r\n </div>\r\n <div\r\n *ngIf=\"smartGrid.layoutDef === layoutDef().TREE && treeControl\"\r\n class=\"tree-container\"\r\n [ngStyle]=\"{\r\n 'grid-template-columns':\r\n smartGrid.numberOfColumn !== undefined\r\n ? 'repeat(' + smartGrid.numberOfColumn + ', 1fr)'\r\n : ''\r\n }\"\r\n >\r\n <mat-tree [dataSource]=\"treeDataSource!\" [treeControl]=\"treeControl!\">\r\n <mat-tree-node *matTreeNodeDef=\"let node\" matTreeNodeToggle matTreeNodePadding>\r\n <button mat-icon-button disabled></button>\r\n <mat-checkbox\r\n class=\"checklist-leaf-node\"\r\n [checked]=\"treeChecklistSelection?.isSelected(node)\"\r\n (change)=\"treeNodeSelectionToggle(node)\"\r\n >{{ getTreeItem(node) }}</mat-checkbox\r\n >\r\n </mat-tree-node>\r\n\r\n <!-- <mat-tree-node *matTreeNodeDef=\"let node; when: hasNoContent\" matTreeNodePadding>\r\n <button mat-icon-button disabled></button>\r\n <mat-form-field appearance=\"fill\">\r\n <mat-label>New item...</mat-label>\r\n <input matInput #itemValue placeholder=\"Ex. Lettuce\" />\r\n </mat-form-field>\r\n <button mat-button (click)=\"saveNode(node, itemValue.value)\">Save</button>\r\n </mat-tree-node> -->\r\n\r\n <mat-tree-node *matTreeNodeDef=\"let node; when: hasChild\" matTreeNodePadding>\r\n <button mat-icon-button matTreeNodeToggle [attr.aria-label]=\"'Toggle ' + node.item\">\r\n <mat-icon class=\"mat-icon-rtl-mirror\">\r\n {{ treeControl!.isExpanded(node) ? 'expand_more' : 'chevron_right' }}\r\n </mat-icon>\r\n </button>\r\n <!-- [checked]=\"descendantsAllSelected(node)\" -->\r\n <mat-checkbox\r\n [checked]=\"treeChecklistSelection?.isSelected(node)\"\r\n [indeterminate]=\"descendantsPartiallySelected(node)\"\r\n (change)=\"treeNodeSelectionToggle(node)\"\r\n >{{ getTreeItem(node) }}</mat-checkbox\r\n >\r\n </mat-tree-node>\r\n </mat-tree>\r\n </div>\r\n </div>\r\n\r\n <mat-paginator\r\n *ngIf=\"smartGrid.paginator\"\r\n #paginator\r\n [length]=\"length\"\r\n [pageSize]=\"pageSize\"\r\n [pageSizeOptions]=\"pageSizeOptions\"\r\n (page)=\"onChangePage($event)\"\r\n ></mat-paginator>\r\n</div>\r\n", styles: [".smartGrid-container{position:relative;padding:1.5rem;display:flex;flex-direction:column;gap:1rem}.smartGrid-data-number{padding-bottom:1rem}.cards-container{display:grid;grid-gap:1rem;gap:1rem;padding:1rem}.smartGrid-card-container{height:auto;border:1px solid black;border-radius:8px}.smartGrid-container ::ng-deep .mat-form-field-appearance-legacy .mat-form-field-underline{bottom:0}.smartGridContent{width:100%;flex:1;overflow:auto}.blocked{position:absolute;width:calc(100% - 3rem);height:calc(100% - 3rem);z-index:110;background-color:#0003}.smart-grid-table-container{display:flex;flex-direction:column;gap:1rem}.smart-grid-edit-button{display:flex;flex-direction:row;justify-content:flex-end}\n"] }]
11409
11550
  }], ctorParameters: function () { return [{ type: SmartGridService }, { type: ComponentFactoryService }, { type: i1$2.MatDialog }]; }, propDecorators: { smartGrid: [{
11410
11551
  type: Input
11411
11552
  }], uuid: [{
@@ -11445,6 +11586,8 @@ SmartGridModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version
11445
11586
  MatIconModule,
11446
11587
  MatButtonModule,
11447
11588
  MatPaginatorModule,
11589
+ MatTreeModule,
11590
+ MatCheckboxModule,
11448
11591
  SmartExpandableSectionModule,
11449
11592
  DragDropModule,
11450
11593
  SmartformModule,
@@ -11456,6 +11599,8 @@ SmartGridModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version
11456
11599
  MatIconModule,
11457
11600
  MatButtonModule,
11458
11601
  MatPaginatorModule,
11602
+ MatTreeModule,
11603
+ MatCheckboxModule,
11459
11604
  SmartExpandableSectionModule,
11460
11605
  DragDropModule,
11461
11606
  SmartformModule,
@@ -11477,6 +11622,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.4.0", ngImpor
11477
11622
  MatIconModule,
11478
11623
  MatButtonModule,
11479
11624
  MatPaginatorModule,
11625
+ MatTreeModule,
11626
+ MatCheckboxModule,
11480
11627
  SmartExpandableSectionModule,
11481
11628
  DragDropModule,
11482
11629
  SmartformModule,