@smartbit4all/ng-client 3.3.214 → 3.3.216

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 (121) hide show
  1. package/esm2020/lib/session/api/api/session.service.mjs +1 -1
  2. package/esm2020/lib/session/api/configuration.mjs +1 -1
  3. package/esm2020/lib/session/api/encoder.mjs +1 -1
  4. package/esm2020/lib/session/api/model/accountInfo.mjs +1 -1
  5. package/esm2020/lib/session/api/model/apiError.mjs +1 -1
  6. package/esm2020/lib/session/api/model/authenticationProviderData.mjs +1 -1
  7. package/esm2020/lib/session/api/model/getAuthenticationProvidersResponse.mjs +1 -1
  8. package/esm2020/lib/session/api/model/models.mjs +1 -1
  9. package/esm2020/lib/session/api/model/refreshSessionRequest.mjs +1 -1
  10. package/esm2020/lib/session/api/model/session.mjs +1 -1
  11. package/esm2020/lib/session/api/model/sessionInfoData.mjs +1 -1
  12. package/esm2020/lib/session/api/model/userActivityLog.mjs +1 -1
  13. package/esm2020/lib/session/api/param.mjs +1 -1
  14. package/esm2020/lib/session/api/variables.mjs +1 -1
  15. package/esm2020/lib/session/smart-error-catching.interceptor.mjs +42 -27
  16. package/esm2020/lib/smart-form/api/api/api.mjs +1 -1
  17. package/esm2020/lib/smart-form/api/api/default.service.mjs +1 -1
  18. package/esm2020/lib/smart-form/api/api.module.mjs +1 -1
  19. package/esm2020/lib/smart-form/api/configuration.mjs +1 -1
  20. package/esm2020/lib/smart-form/api/encoder.mjs +1 -1
  21. package/esm2020/lib/smart-form/api/index.mjs +1 -1
  22. package/esm2020/lib/smart-form/api/model/propertyMapping.mjs +1 -1
  23. package/esm2020/lib/smart-form/api/model/selectionDefinition.mjs +1 -1
  24. package/esm2020/lib/smart-form/api/model/smartFormWidgetDirection.mjs +1 -1
  25. package/esm2020/lib/smart-form/api/model/smartFormWidgetType.mjs +1 -1
  26. package/esm2020/lib/smart-form/api/model/smartLayoutDefinition.mjs +1 -1
  27. package/esm2020/lib/smart-form/api/model/smartMatrixModel.mjs +1 -1
  28. package/esm2020/lib/smart-form/api/model/smartWidgetHint.mjs +1 -1
  29. package/esm2020/lib/smart-form/api/model/valueChangeMode.mjs +1 -1
  30. package/esm2020/lib/smart-form/api/param.mjs +1 -1
  31. package/esm2020/lib/smart-form/api/variables.mjs +1 -1
  32. package/esm2020/lib/smart-grid/api/grid-api/api/api.mjs +1 -1
  33. package/esm2020/lib/smart-grid/api/grid-api/api/grid.service.mjs +1 -1
  34. package/esm2020/lib/smart-grid/api/grid-api/api.module.mjs +1 -1
  35. package/esm2020/lib/smart-grid/api/grid-api/configuration.mjs +1 -1
  36. package/esm2020/lib/smart-grid/api/grid-api/encoder.mjs +1 -1
  37. package/esm2020/lib/smart-grid/api/grid-api/index.mjs +1 -1
  38. package/esm2020/lib/smart-grid/api/grid-api/model/gridColumnContentType.mjs +1 -1
  39. package/esm2020/lib/smart-grid/api/grid-api/model/gridColumnMeta.mjs +1 -1
  40. package/esm2020/lib/smart-grid/api/grid-api/model/gridDataAccessConfig.mjs +1 -1
  41. package/esm2020/lib/smart-grid/api/grid-api/model/gridModel.mjs +1 -1
  42. package/esm2020/lib/smart-grid/api/grid-api/model/gridPage.mjs +1 -1
  43. package/esm2020/lib/smart-grid/api/grid-api/model/gridRow.mjs +1 -1
  44. package/esm2020/lib/smart-grid/api/grid-api/model/gridSelectionChange.mjs +1 -1
  45. package/esm2020/lib/smart-grid/api/grid-api/model/gridSelectionMode.mjs +1 -1
  46. package/esm2020/lib/smart-grid/api/grid-api/model/gridSelectionType.mjs +1 -1
  47. package/esm2020/lib/smart-grid/api/grid-api/model/gridServerModel.mjs +1 -1
  48. package/esm2020/lib/smart-grid/api/grid-api/model/gridUpdateData.mjs +1 -1
  49. package/esm2020/lib/smart-grid/api/grid-api/model/gridView.mjs +1 -1
  50. package/esm2020/lib/smart-grid/api/grid-api/model/gridViewDescriptor.mjs +1 -1
  51. package/esm2020/lib/smart-grid/api/grid-api/model/models.mjs +1 -1
  52. package/esm2020/lib/smart-grid/api/grid-api/param.mjs +1 -1
  53. package/esm2020/lib/smart-grid/api/grid-api/variables.mjs +1 -1
  54. package/esm2020/lib/smart-grid/smart-grid.component.mjs +17 -8
  55. package/esm2020/lib/view-context/api/api/api.mjs +1 -1
  56. package/esm2020/lib/view-context/api/api/view.service.mjs +1 -1
  57. package/esm2020/lib/view-context/api/api.module.mjs +1 -1
  58. package/esm2020/lib/view-context/api/configuration.mjs +1 -1
  59. package/esm2020/lib/view-context/api/encoder.mjs +1 -1
  60. package/esm2020/lib/view-context/api/index.mjs +1 -1
  61. package/esm2020/lib/view-context/api/model/clipboardData.mjs +1 -1
  62. package/esm2020/lib/view-context/api/model/closeResult.mjs +1 -1
  63. package/esm2020/lib/view-context/api/model/componentConstraint.mjs +1 -1
  64. package/esm2020/lib/view-context/api/model/componentModel.mjs +1 -1
  65. package/esm2020/lib/view-context/api/model/componentModelChange.mjs +1 -1
  66. package/esm2020/lib/view-context/api/model/dataChange.mjs +1 -1
  67. package/esm2020/lib/view-context/api/model/dataChangeEvent.mjs +1 -1
  68. package/esm2020/lib/view-context/api/model/dataChangeKind.mjs +1 -1
  69. package/esm2020/lib/view-context/api/model/downloadedFile.mjs +1 -1
  70. package/esm2020/lib/view-context/api/model/iconPosition.mjs +1 -1
  71. package/esm2020/lib/view-context/api/model/imageResource.mjs +1 -1
  72. package/esm2020/lib/view-context/api/model/link.mjs +1 -1
  73. package/esm2020/lib/view-context/api/model/messageData.mjs +1 -1
  74. package/esm2020/lib/view-context/api/model/messageOption.mjs +1 -1
  75. package/esm2020/lib/view-context/api/model/messageOptionType.mjs +1 -1
  76. package/esm2020/lib/view-context/api/model/messageResult.mjs +1 -1
  77. package/esm2020/lib/view-context/api/model/messageTextType.mjs +1 -1
  78. package/esm2020/lib/view-context/api/model/messageType.mjs +1 -1
  79. package/esm2020/lib/view-context/api/model/openPendingData.mjs +1 -1
  80. package/esm2020/lib/view-context/api/model/serverRequestExecutionStat.mjs +1 -1
  81. package/esm2020/lib/view-context/api/model/serverRequestTrack.mjs +1 -1
  82. package/esm2020/lib/view-context/api/model/serverRequestType.mjs +1 -1
  83. package/esm2020/lib/view-context/api/model/smartLinkData.mjs +1 -1
  84. package/esm2020/lib/view-context/api/model/statisticRecord.mjs +1 -1
  85. package/esm2020/lib/view-context/api/model/style.mjs +1 -1
  86. package/esm2020/lib/view-context/api/model/uiAction.mjs +1 -1
  87. package/esm2020/lib/view-context/api/model/uiActionButtonType.mjs +1 -1
  88. package/esm2020/lib/view-context/api/model/uiActionConstraint.mjs +1 -1
  89. package/esm2020/lib/view-context/api/model/uiActionDescriptor.mjs +1 -1
  90. package/esm2020/lib/view-context/api/model/uiActionDialogDescriptor.mjs +1 -1
  91. package/esm2020/lib/view-context/api/model/uiActionFeedbackType.mjs +1 -1
  92. package/esm2020/lib/view-context/api/model/uiActionInputType.mjs +1 -1
  93. package/esm2020/lib/view-context/api/model/uiActionRequest.mjs +1 -1
  94. package/esm2020/lib/view-context/api/model/uiActionTooltip.mjs +1 -1
  95. package/esm2020/lib/view-context/api/model/uiActionUploadDescriptor.mjs +1 -1
  96. package/esm2020/lib/view-context/api/model/valueSet.mjs +1 -1
  97. package/esm2020/lib/view-context/api/model/view.mjs +1 -1
  98. package/esm2020/lib/view-context/api/model/viewApiError.mjs +1 -1
  99. package/esm2020/lib/view-context/api/model/viewConstraint.mjs +1 -1
  100. package/esm2020/lib/view-context/api/model/viewContextChange.mjs +1 -1
  101. package/esm2020/lib/view-context/api/model/viewContextData.mjs +1 -1
  102. package/esm2020/lib/view-context/api/model/viewData.mjs +1 -1
  103. package/esm2020/lib/view-context/api/model/viewPlaceholder.mjs +1 -1
  104. package/esm2020/lib/view-context/api/model/viewState.mjs +1 -1
  105. package/esm2020/lib/view-context/api/model/viewStateUpdate.mjs +1 -1
  106. package/esm2020/lib/view-context/api/model/viewType.mjs +1 -1
  107. package/esm2020/lib/view-context/api/param.mjs +1 -1
  108. package/esm2020/lib/view-context/api/variables.mjs +1 -1
  109. package/fesm2015/smartbit4all-ng-client.mjs +52 -28
  110. package/fesm2015/smartbit4all-ng-client.mjs.map +1 -1
  111. package/fesm2020/smartbit4all-ng-client.mjs +52 -28
  112. package/fesm2020/smartbit4all-ng-client.mjs.map +1 -1
  113. package/lib/session/smart-error-catching.interceptor.d.ts +8 -4
  114. package/lib/smart-grid/smart-grid.component.d.ts +3 -2
  115. package/package.json +1 -1
  116. package/smartbit4all-ng-client-3.3.216.tgz +0 -0
  117. package/src/lib/session/api/README.md +226 -226
  118. package/src/lib/smart-form/api/README.md +226 -226
  119. package/src/lib/smart-grid/api/grid-api/README.md +226 -226
  120. package/src/lib/view-context/api/README.md +226 -226
  121. package/smartbit4all-ng-client-3.3.214.tgz +0 -0
@@ -9064,52 +9064,59 @@ class SmartErrorCatchingInterceptor {
9064
9064
  this.session = session;
9065
9065
  this.sessionErrorCodes = [
9066
9066
  {
9067
- code: "session.expired",
9067
+ code: 'session.expired',
9068
9068
  behaviour: SessionErrorBehaviour.REFRESH,
9069
9069
  },
9070
9070
  {
9071
- code: "session.refreshtoken.invalid",
9071
+ code: 'session.refreshtoken.invalid',
9072
9072
  behaviour: SessionErrorBehaviour.RESTART,
9073
9073
  },
9074
9074
  {
9075
- code: "session.badrequest.missingtoken",
9075
+ code: 'session.badrequest.missingtoken',
9076
9076
  behaviour: SessionErrorBehaviour.RESTART,
9077
9077
  },
9078
9078
  {
9079
- code: "session.security.nocontext",
9079
+ code: 'session.security.nocontext',
9080
9080
  behaviour: SessionErrorBehaviour.RESTART,
9081
9081
  },
9082
9082
  {
9083
- code: "session.invalidsessionuri",
9083
+ code: 'session.invalidsessionuri',
9084
9084
  behaviour: SessionErrorBehaviour.RESTART,
9085
9085
  },
9086
9086
  {
9087
- code: "session.notinitialized",
9087
+ code: 'session.notinitialized',
9088
9088
  behaviour: SessionErrorBehaviour.RESTART,
9089
9089
  },
9090
9090
  {
9091
- code: "session.viewcontext.missing",
9091
+ code: 'session.viewcontext.missing',
9092
9092
  behaviour: SessionErrorBehaviour.RESTART,
9093
9093
  },
9094
9094
  ];
9095
9095
  }
9096
9096
  intercept(request, next) {
9097
- return next.handle(request).pipe(catchError$1((error) => {
9098
- if (error.status === 400 && error.error.code) {
9099
- let sessionError = this.sessionErrorCodes.find((sessionError) => sessionError.code === error.error.code);
9100
- if (sessionError) {
9101
- return this.resolveError(sessionError).pipe(switchMap(() => {
9102
- this.session.headerParams.map((headerParam) => {
9103
- request = request.clone({
9104
- headers: request.headers.set(headerParam.headerName, headerParam.value),
9105
- });
9106
- });
9107
- return next.handle(request);
9108
- }));
9109
- }
9097
+ return next
9098
+ .handle(request)
9099
+ .pipe(catchError$1((error) => this.handleError(error, request, next)));
9100
+ }
9101
+ handleError(error, request, next) {
9102
+ if (this.isSessionError(error)) {
9103
+ const sessionError = this.getSessionError(error);
9104
+ if (sessionError) {
9105
+ return this.resolveError(sessionError).pipe(switchMap((resolved) => {
9106
+ if (resolved && sessionError.behaviour !== SessionErrorBehaviour.RESTART) {
9107
+ return next.handle(this.updateRequestHeaders(request));
9108
+ }
9109
+ return throwError(() => error);
9110
+ }));
9110
9111
  }
9111
- return throwError(error);
9112
- }));
9112
+ }
9113
+ return throwError(() => error);
9114
+ }
9115
+ isSessionError(error) {
9116
+ return error.status === 400 && error.error.code != null;
9117
+ }
9118
+ getSessionError(error) {
9119
+ return this.sessionErrorCodes.find((sessionError) => sessionError.code === error.error.code);
9113
9120
  }
9114
9121
  resolveError(sessionError) {
9115
9122
  if (sessionError.behaviour === SessionErrorBehaviour.RESTART) {
@@ -9117,6 +9124,14 @@ class SmartErrorCatchingInterceptor {
9117
9124
  }
9118
9125
  return from(this.session.refreshSession());
9119
9126
  }
9127
+ updateRequestHeaders(request) {
9128
+ this.session.headerParams.forEach((headerParam) => {
9129
+ request = request.clone({
9130
+ headers: request.headers.set(headerParam.headerName, headerParam.value),
9131
+ });
9132
+ });
9133
+ return request;
9134
+ }
9120
9135
  }
9121
9136
  SmartErrorCatchingInterceptor.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.4.0", ngImport: i0, type: SmartErrorCatchingInterceptor, deps: [{ token: SmartSessionService }], target: i0.ɵɵFactoryTarget.Injectable });
9122
9137
  SmartErrorCatchingInterceptor.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.4.0", ngImport: i0, type: SmartErrorCatchingInterceptor });
@@ -10415,11 +10430,12 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.4.0", ngImpor
10415
10430
  }] } });
10416
10431
 
10417
10432
  class SmartGridComponent {
10418
- constructor(service, cfService, dialog, uiActionDescriptorService, gridMenuIcon) {
10433
+ constructor(service, cfService, dialog, uiActionDescriptorService, injector, gridMenuIcon) {
10419
10434
  this.service = service;
10420
10435
  this.cfService = cfService;
10421
10436
  this.dialog = dialog;
10422
10437
  this.uiActionDescriptorService = uiActionDescriptorService;
10438
+ this.injector = injector;
10423
10439
  this.gridMenuIcon = gridMenuIcon;
10424
10440
  // private readonly defaultPageSize: number = 10;
10425
10441
  this.defaultPageSizeOptions = [5, 10, 25, 50];
@@ -10742,7 +10758,15 @@ class SmartGridComponent {
10742
10758
  });
10743
10759
  }
10744
10760
  renderCards() {
10745
- // TODO
10761
+ if (!this.smartGrid.customComponent) {
10762
+ let datalayoutDef = {
10763
+ dataLayout: SmartGridDataLayout.COLUMN,
10764
+ gridLayout: SmartGridDataLayout.COLUMN,
10765
+ type: SmartGridType.CUSTOM,
10766
+ };
10767
+ this.smartGrid.dataLayoutDef = datalayoutDef;
10768
+ this.smartGrid.customComponent = this.injector.get(this.smartGrid.gridIdentifier + 'Card');
10769
+ }
10746
10770
  }
10747
10771
  isMultipleSelection() {
10748
10772
  const selectionMode = this.service.gridModel.view?.descriptor?.selectionMode;
@@ -11137,12 +11161,12 @@ class SmartGridComponent {
11137
11161
  this.dialog.open(TableLayoutDefinerComponent, { data: dialogData });
11138
11162
  }
11139
11163
  }
11140
- SmartGridComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.4.0", ngImport: i0, type: SmartGridComponent, deps: [{ token: SmartGridService }, { token: ComponentFactoryService }, { token: i1$1.MatDialog }, { token: UiActionDescriptorService }, { token: 'gridMenuIcon' }], target: i0.ɵɵFactoryTarget.Component });
11141
- 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 }, { propertyName: "toolbar", first: true, predicate: ["toolbar"], descendants: true }], usesOnChanges: true, ngImport: i0, template: "<div *ngIf=\"smartGrid\" class=\"smartGrid-container\">\r\n <div class=\"smart-grid-toolbar\">\r\n <smart-ui-action-toolbar #toolbar [id]=\"'grid_not_initialized'\"></smart-ui-action-toolbar>\r\n <button\r\n (click)=\"editColumns()\"\r\n mat-mini-fab\r\n color=\"text-primary\"\r\n *ngIf=\"smartGrid.showEditColumns\"\r\n >\r\n <mat-icon aria-hidden=\"false\" aria-label=\"Columns\" class=\"smart-grid-edit-icon\"\r\n >view_columns</mat-icon\r\n >\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 [onSelect]=\"onSelect.bind(this)\"\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\r\n *matTreeNodeDef=\"let node\"\r\n matTreeNodeToggle\r\n matTreeNodePadding\r\n matTreeNodePaddingIndent=\"24\"\r\n >\r\n <button mat-icon-button disabled class=\"tree-button\"></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\r\n *matTreeNodeDef=\"let node; when: hasChild\"\r\n matTreeNodePadding\r\n matTreeNodePaddingIndent=\"24\"\r\n >\r\n <button\r\n mat-icon-button\r\n matTreeNodeToggle\r\n class=\"tree-button\"\r\n [attr.aria-label]=\"'Toggle ' + node.item\"\r\n >\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 <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 && !treeControl\"\r\n #paginator\r\n [length]=\"length\"\r\n [pageIndex]=\"pageIndex\"\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-toolbar{display:flex;flex-direction:row;justify-content:flex-end;align-items:center}.smart-grid-toolbar smart-ui-action-toolbar{width:100%}.smart-grid-edit-icon{color:var(--light-gray)}.tree-button{width:24px!important;height:24px!important}\n"], components: [{ type: UiActionToolbarComponent, selector: "smart-ui-action-toolbar", inputs: ["uiActionModels", "uiActionDescriptorService", "id"] }, { type: i2.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: i4.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { type: ExpandableSectionComponent, selector: "smart-expandable-section", inputs: ["data", "index"] }, { type: SmartGridCardComponent, selector: "app-smart-grid-card", inputs: ["item", "smartGrid", "onSelect"] }, { type: i10.MatTree, selector: "mat-tree", exportAs: ["matTree"] }, { type: i12.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: i12$1.MatPaginator, selector: "mat-paginator", inputs: ["disabled"], exportAs: ["matPaginator"] }], directives: [{ type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i3.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i3.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { type: i10.MatTreeNodeDef, selector: "[matTreeNodeDef]", inputs: ["matTreeNodeDefWhen", "matTreeNode"] }, { type: i10.MatTreeNode, selector: "mat-tree-node", inputs: ["role", "disabled", "tabIndex"], exportAs: ["matTreeNode"] }, { type: i10.MatTreeNodeToggle, selector: "[matTreeNodeToggle]", inputs: ["matTreeNodeToggleRecursive"] }, { type: i10.MatTreeNodePadding, selector: "[matTreeNodePadding]", inputs: ["matTreeNodePadding", "matTreeNodePaddingIndent"] }] });
11164
+ SmartGridComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.4.0", ngImport: i0, type: SmartGridComponent, deps: [{ token: SmartGridService }, { token: ComponentFactoryService }, { token: i1$1.MatDialog }, { token: UiActionDescriptorService }, { token: i0.Injector }, { token: 'gridMenuIcon' }], target: i0.ɵɵFactoryTarget.Component });
11165
+ 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 }, { propertyName: "toolbar", first: true, predicate: ["toolbar"], descendants: true }], usesOnChanges: true, ngImport: i0, template: "<div *ngIf=\"smartGrid\" class=\"smartGrid-container\">\r\n <div class=\"smart-grid-toolbar\">\r\n <smart-ui-action-toolbar #toolbar [id]=\"'grid_not_initialized'\"></smart-ui-action-toolbar>\r\n <button\r\n (click)=\"editColumns()\"\r\n mat-mini-fab\r\n color=\"text-primary\"\r\n *ngIf=\"smartGrid.showEditColumns\"\r\n >\r\n <mat-icon aria-hidden=\"false\" aria-label=\"Columns\" class=\"smart-grid-edit-icon\"\r\n >view_columns</mat-icon\r\n >\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 && smartGrid.dataLayoutDef\"\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 [onSelect]=\"onSelect.bind(this)\"\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\r\n *matTreeNodeDef=\"let node\"\r\n matTreeNodeToggle\r\n matTreeNodePadding\r\n matTreeNodePaddingIndent=\"24\"\r\n >\r\n <button mat-icon-button disabled class=\"tree-button\"></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\r\n *matTreeNodeDef=\"let node; when: hasChild\"\r\n matTreeNodePadding\r\n matTreeNodePaddingIndent=\"24\"\r\n >\r\n <button\r\n mat-icon-button\r\n matTreeNodeToggle\r\n class=\"tree-button\"\r\n [attr.aria-label]=\"'Toggle ' + node.item\"\r\n >\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 <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 && !treeControl\"\r\n #paginator\r\n [length]=\"length\"\r\n [pageIndex]=\"pageIndex\"\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-toolbar{display:flex;flex-direction:row;justify-content:flex-end;align-items:center}.smart-grid-toolbar smart-ui-action-toolbar{width:100%}.smart-grid-edit-icon{color:var(--light-gray)}.tree-button{width:24px!important;height:24px!important}\n"], components: [{ type: UiActionToolbarComponent, selector: "smart-ui-action-toolbar", inputs: ["uiActionModels", "uiActionDescriptorService", "id"] }, { type: i2.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: i4.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { type: ExpandableSectionComponent, selector: "smart-expandable-section", inputs: ["data", "index"] }, { type: SmartGridCardComponent, selector: "app-smart-grid-card", inputs: ["item", "smartGrid", "onSelect"] }, { type: i10.MatTree, selector: "mat-tree", exportAs: ["matTree"] }, { type: i12.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: i12$1.MatPaginator, selector: "mat-paginator", inputs: ["disabled"], exportAs: ["matPaginator"] }], directives: [{ type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i3.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i3.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { type: i10.MatTreeNodeDef, selector: "[matTreeNodeDef]", inputs: ["matTreeNodeDefWhen", "matTreeNode"] }, { type: i10.MatTreeNode, selector: "mat-tree-node", inputs: ["role", "disabled", "tabIndex"], exportAs: ["matTreeNode"] }, { type: i10.MatTreeNodeToggle, selector: "[matTreeNodeToggle]", inputs: ["matTreeNodeToggleRecursive"] }, { type: i10.MatTreeNodePadding, selector: "[matTreeNodePadding]", inputs: ["matTreeNodePadding", "matTreeNodePaddingIndent"] }] });
11142
11166
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.4.0", ngImport: i0, type: SmartGridComponent, decorators: [{
11143
11167
  type: Component,
11144
- args: [{ selector: 'smart-grid', providers: [SmartGridService], template: "<div *ngIf=\"smartGrid\" class=\"smartGrid-container\">\r\n <div class=\"smart-grid-toolbar\">\r\n <smart-ui-action-toolbar #toolbar [id]=\"'grid_not_initialized'\"></smart-ui-action-toolbar>\r\n <button\r\n (click)=\"editColumns()\"\r\n mat-mini-fab\r\n color=\"text-primary\"\r\n *ngIf=\"smartGrid.showEditColumns\"\r\n >\r\n <mat-icon aria-hidden=\"false\" aria-label=\"Columns\" class=\"smart-grid-edit-icon\"\r\n >view_columns</mat-icon\r\n >\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 [onSelect]=\"onSelect.bind(this)\"\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\r\n *matTreeNodeDef=\"let node\"\r\n matTreeNodeToggle\r\n matTreeNodePadding\r\n matTreeNodePaddingIndent=\"24\"\r\n >\r\n <button mat-icon-button disabled class=\"tree-button\"></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\r\n *matTreeNodeDef=\"let node; when: hasChild\"\r\n matTreeNodePadding\r\n matTreeNodePaddingIndent=\"24\"\r\n >\r\n <button\r\n mat-icon-button\r\n matTreeNodeToggle\r\n class=\"tree-button\"\r\n [attr.aria-label]=\"'Toggle ' + node.item\"\r\n >\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 <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 && !treeControl\"\r\n #paginator\r\n [length]=\"length\"\r\n [pageIndex]=\"pageIndex\"\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-toolbar{display:flex;flex-direction:row;justify-content:flex-end;align-items:center}.smart-grid-toolbar smart-ui-action-toolbar{width:100%}.smart-grid-edit-icon{color:var(--light-gray)}.tree-button{width:24px!important;height:24px!important}\n"] }]
11145
- }], ctorParameters: function () { return [{ type: SmartGridService }, { type: ComponentFactoryService }, { type: i1$1.MatDialog }, { type: UiActionDescriptorService }, { type: undefined, decorators: [{
11168
+ args: [{ selector: 'smart-grid', providers: [SmartGridService], template: "<div *ngIf=\"smartGrid\" class=\"smartGrid-container\">\r\n <div class=\"smart-grid-toolbar\">\r\n <smart-ui-action-toolbar #toolbar [id]=\"'grid_not_initialized'\"></smart-ui-action-toolbar>\r\n <button\r\n (click)=\"editColumns()\"\r\n mat-mini-fab\r\n color=\"text-primary\"\r\n *ngIf=\"smartGrid.showEditColumns\"\r\n >\r\n <mat-icon aria-hidden=\"false\" aria-label=\"Columns\" class=\"smart-grid-edit-icon\"\r\n >view_columns</mat-icon\r\n >\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 && smartGrid.dataLayoutDef\"\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 [onSelect]=\"onSelect.bind(this)\"\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\r\n *matTreeNodeDef=\"let node\"\r\n matTreeNodeToggle\r\n matTreeNodePadding\r\n matTreeNodePaddingIndent=\"24\"\r\n >\r\n <button mat-icon-button disabled class=\"tree-button\"></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\r\n *matTreeNodeDef=\"let node; when: hasChild\"\r\n matTreeNodePadding\r\n matTreeNodePaddingIndent=\"24\"\r\n >\r\n <button\r\n mat-icon-button\r\n matTreeNodeToggle\r\n class=\"tree-button\"\r\n [attr.aria-label]=\"'Toggle ' + node.item\"\r\n >\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 <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 && !treeControl\"\r\n #paginator\r\n [length]=\"length\"\r\n [pageIndex]=\"pageIndex\"\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-toolbar{display:flex;flex-direction:row;justify-content:flex-end;align-items:center}.smart-grid-toolbar smart-ui-action-toolbar{width:100%}.smart-grid-edit-icon{color:var(--light-gray)}.tree-button{width:24px!important;height:24px!important}\n"] }]
11169
+ }], ctorParameters: function () { return [{ type: SmartGridService }, { type: ComponentFactoryService }, { type: i1$1.MatDialog }, { type: UiActionDescriptorService }, { type: i0.Injector }, { type: undefined, decorators: [{
11146
11170
  type: Inject,
11147
11171
  args: ['gridMenuIcon']
11148
11172
  }] }]; }, propDecorators: { smartGrid: [{