mmhglobal-dynamicform 2.36.1 → 2.36.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -2288,7 +2288,8 @@ class ZComponentService {
2288
2288
  if (this.timePickerDateType.includes(data.Type)) {
2289
2289
  const userTimeZoneOffSet = this.convertOffsetMinToHour((new Date(value).getTimezoneOffset()));
2290
2290
  const datetimeWithoutTimeZone = this.removeTimeZoneAndConvertToISOString(value);
2291
- return new Date(`${datetimeWithoutTimeZone.split('.000Z')[0]}${userTimeZoneOffSet}`);
2291
+ //return new Date(`${datetimeWithoutTimeZone.split('.000Z')[0]}${userTimeZoneOffSet}`);
2292
+ return new Date(`${datetimeWithoutTimeZone.split('Z')[0]}${userTimeZoneOffSet}`);
2292
2293
  }
2293
2294
  else if (data.Type === 'zshortdate') {
2294
2295
  const dateOnly = value.includes('T') ? value.split('T')[0] : value; // Extract date portion
@@ -2513,7 +2514,7 @@ class ZGridBindingDirective extends DataBindingDirective {
2513
2514
  webapiService, toastService,
2514
2515
  //private mainService: MainService,
2515
2516
  //private offlineDatabaseService: OfflineDatabaseService,
2516
- signalrService, gridService, loggingService, stateSettingService) {
2517
+ signalrService, gridService, loggingService, stateSettingService, componentService) {
2517
2518
  super(grid);
2518
2519
  this.webapiService = webapiService;
2519
2520
  this.toastService = toastService;
@@ -2521,6 +2522,7 @@ class ZGridBindingDirective extends DataBindingDirective {
2521
2522
  this.gridService = gridService;
2522
2523
  this.loggingService = loggingService;
2523
2524
  this.stateSettingService = stateSettingService;
2525
+ this.componentService = componentService;
2524
2526
  this.changeEvent = {
2525
2527
  pageChanged: false,
2526
2528
  filterChanged: false,
@@ -2987,6 +2989,7 @@ class ZGridBindingDirective extends DataBindingDirective {
2987
2989
  }
2988
2990
  handleGetDataBindingComplete(data, skipCacheData) {
2989
2991
  this.aggregateHandling(data.dataSet);
2992
+ this.handleDateTimeIgnoringTimeZone(data.dataSet);
2990
2993
  this.grid.data = { data: data.dataSet, total: data.totalCount };
2991
2994
  if (!skipCacheData) {
2992
2995
  const stateLogic = this.gridService.getGridStateLogic(this.field);
@@ -3171,6 +3174,23 @@ class ZGridBindingDirective extends DataBindingDirective {
3171
3174
  col.aggregateValue = aggregateValue;
3172
3175
  });
3173
3176
  }
3177
+ handleDateTimeIgnoringTimeZone(dataSet) {
3178
+ // Column types related to date and time handling
3179
+ const dateColumnTypes = ['zdate', 'ztime', 'zdatetime', 'zshortdate', 'zuidatetime', 'zuitime'];
3180
+ // Filter columns that have date-related types
3181
+ const dateTimeColumns = this.gridSetting.columns.filter(col => dateColumnTypes.includes(col.Type));
3182
+ // Filter columns where the timezone should be ignored
3183
+ const ignoreTimeZoneColumns = dateTimeColumns.filter(col => col.IsIgnoreTimeZone);
3184
+ // If there are columns that should ignore the timezone
3185
+ if (ignoreTimeZoneColumns.length > 0) {
3186
+ dataSet.forEach(data => {
3187
+ ignoreTimeZoneColumns.forEach(col => {
3188
+ // Adjust datetime based on the timezone ignoring setting
3189
+ data[col.Value] = this.componentService.localizeDateTimeByIgnoringTimeZone(data[col.Value], col);
3190
+ });
3191
+ });
3192
+ }
3193
+ }
3174
3194
  /**
3175
3195
  * Reset aggregate values for columns with aggregate types.
3176
3196
  *
@@ -3335,7 +3355,7 @@ class ZGridBindingDirective extends DataBindingDirective {
3335
3355
  this.loggingService.debugLog('generated grid columns', this.gridSetting);
3336
3356
  }
3337
3357
  }
3338
- ZGridBindingDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.3", ngImport: i0, type: ZGridBindingDirective, deps: [{ token: GridComponent }, { token: i2.WebApiService }, { token: i2.ToastService }, { token: i2.SignalrService }, { token: ZGridService }, { token: i2.LoggingService }, { token: i2.StateSettingService }], target: i0.ɵɵFactoryTarget.Directive });
3358
+ ZGridBindingDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.3", ngImport: i0, type: ZGridBindingDirective, deps: [{ token: GridComponent }, { token: i2.WebApiService }, { token: i2.ToastService }, { token: i2.SignalrService }, { token: ZGridService }, { token: i2.LoggingService }, { token: i2.StateSettingService }, { token: ZComponentService }], target: i0.ɵɵFactoryTarget.Directive });
3339
3359
  ZGridBindingDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "13.3.3", type: ZGridBindingDirective, selector: "[zgridbinding]", inputs: { zgridbinding: "zgridbinding" }, usesInheritance: true, ngImport: i0 });
3340
3360
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.3", ngImport: i0, type: ZGridBindingDirective, decorators: [{
3341
3361
  type: Directive,
@@ -3345,7 +3365,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.3", ngImpor
3345
3365
  }], ctorParameters: function () { return [{ type: undefined, decorators: [{
3346
3366
  type: Inject,
3347
3367
  args: [GridComponent]
3348
- }] }, { type: i2.WebApiService }, { type: i2.ToastService }, { type: i2.SignalrService }, { type: ZGridService }, { type: i2.LoggingService }, { type: i2.StateSettingService }]; }, propDecorators: { zgridbinding: [{
3368
+ }] }, { type: i2.WebApiService }, { type: i2.ToastService }, { type: i2.SignalrService }, { type: ZGridService }, { type: i2.LoggingService }, { type: i2.StateSettingService }, { type: ZComponentService }]; }, propDecorators: { zgridbinding: [{
3349
3369
  type: Input
3350
3370
  }] } });
3351
3371
 
@@ -15099,10 +15119,10 @@ class ZganttchartComponent extends DataListingFieldBase {
15099
15119
  }
15100
15120
  }
15101
15121
  ZganttchartComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.3", ngImport: i0, type: ZganttchartComponent, deps: [{ token: ZComponentService }], target: i0.ɵɵFactoryTarget.Component });
15102
- ZganttchartComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.3", type: ZganttchartComponent, selector: "app-zganttchart", usesInheritance: true, ngImport: i0, template: "<kendo-gantt [style.height.px]=\"500\"\n [data]=\"ganttData\"\n kendoGanttExpandable\n [initiallyExpanded]=\"true\"\n [toolbarSettings]=\"{ position: 'both', addTaskTool: 'none' }\"\n [activeView]=\"activeView\"\n [sortable]=\"true\"\n [selectable]=\"selectable\"\n [isSelected]=\"isSelected\"\n (cellClick)=\"toggleSelection($event)\"\n (taskClick)=\"toggleSelection($event)\"\n [timelinePaneOptions]=\"{ collapsed: collapsed,\n collapsible: collapsible,\n size: timelineSize\n }\">\n <kendo-gantt-column *ngFor=\"let col of columns;\"\n [field]=\"col.field\"\n [title]=\"col.title\"\n [width]=\"col.width\"\n [format]=\"col.format\">\n </kendo-gantt-column>\n <ng-template kendoGanttToolbarTemplate\n position=\"both\"\n let-position=\"position\">\n <div *ngIf=\"position === 'top'\" class=\"toolbar-top\">\n <span>{{data.Title}}</span>\n <kendo-gantt-view-selector [views]=\"views\"\n [(activeView)]=\"activeView\"></kendo-gantt-view-selector>\n </div>\n <div *ngIf=\"position === 'bottom'\" class=\"toolbar-bottom\">\n <span>Total {{totalCount}} records</span>\n </div>\n </ng-template>\n <kendo-gantt-timeline-day-view></kendo-gantt-timeline-day-view>\n <kendo-gantt-timeline-week-view></kendo-gantt-timeline-week-view>\n <kendo-gantt-timeline-month-view></kendo-gantt-timeline-month-view>\n <kendo-gantt-timeline-year-view></kendo-gantt-timeline-year-view>\n</kendo-gantt>\n", styles: ["label.k-radio-label{display:inline-block;margin-right:10px}.toolbar-top{display:flex;width:100%;justify-content:space-between;align-items:center}.toolbar-bottom{display:flex;width:100%;align-items:end}\n"], components: [{ type: i2$e.GanttComponent, selector: "kendo-gantt", inputs: ["aria-roledescription", "role", "taskModelFields", "dependencyModelFields", "activeView", "data", "isSelected", "validateNewDependency", "selectable", "toolbarSettings", "fetchChildren", "hasChildren", "dependencies", "sortable", "sort", "filterable", "filter", "workDayStart", "workDayEnd", "workWeekStart", "workWeekEnd", "navigable", "timelinePaneOptions", "treeListPaneOptions", "taskClass", "rowClass", "isExpanded", "columnsAutoSize", "columnMenu", "columnsReorderable", "columnsResizable", "dragScrollSettings"], outputs: ["selectionChange", "rowExpand", "taskDblClick", "cellDblClick", "cellClose", "taskDelete", "rowCollapse", "remove", "cancel", "save", "taskAdd", "dependencyAdd", "sortChange", "filterChange", "dataStateChange", "treeListPaneCollapsedChange", "timelinePaneCollapsedChange", "timelinePaneSizeChange", "activeViewChange", "columnResize", "columnReorder", "columnVisibilityChange", "columnLockedChange", "cellClick", "taskClick"], exportAs: ["kendoGantt"] }, { type: i2$e.GanttColumnComponent, selector: "kendo-gantt-column", inputs: ["format", "filter", "filterable", "editor", "editable", "locked", "lockable", "hidden", "media", "style", "headerStyle", "footerStyle", "class", "headerClass", "footerClass"] }, { type: i2$e.ViewSelectorComponent, selector: "kendo-gantt-view-selector", inputs: ["views", "activeView"], outputs: ["activeViewChange"] }, { type: i2$e.TimelineDayViewComponent, selector: "kendo-gantt-timeline-day-view" }, { type: i2$e.TimelineWeekViewComponent, selector: "kendo-gantt-timeline-week-view" }, { type: i2$e.TimelineMonthViewComponent, selector: "kendo-gantt-timeline-month-view" }, { type: i2$e.TimelineYearViewComponent, selector: "kendo-gantt-timeline-year-view" }], directives: [{ type: i2$e.GanttExpandableDirective, selector: "[kendoGanttExpandable]", inputs: ["expandBy"], exportAs: ["kendoGanttExpandable"] }, { type: i5.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i2$e.ToolbarTemplateDirective, selector: "[kendoGanttToolbarTemplate]", inputs: ["position"] }, { type: i5.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] });
15122
+ ZganttchartComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.3", type: ZganttchartComponent, selector: "app-zganttchart", usesInheritance: true, ngImport: i0, template: "<kendo-gantt [style.height.px]=\"500\"\r\n [data]=\"ganttData\"\r\n kendoGanttExpandable\r\n [initiallyExpanded]=\"true\"\r\n [toolbarSettings]=\"{ position: 'both', addTaskTool: 'none' }\"\r\n [activeView]=\"activeView\"\r\n [sortable]=\"true\"\r\n [selectable]=\"selectable\"\r\n [isSelected]=\"isSelected\"\r\n (cellClick)=\"toggleSelection($event)\"\r\n (taskClick)=\"toggleSelection($event)\"\r\n [timelinePaneOptions]=\"{ collapsed: collapsed,\r\n collapsible: collapsible,\r\n size: timelineSize\r\n }\">\r\n <kendo-gantt-column *ngFor=\"let col of columns;\"\r\n [field]=\"col.field\"\r\n [title]=\"col.title\"\r\n [width]=\"col.width\"\r\n [format]=\"col.format\">\r\n </kendo-gantt-column>\r\n <ng-template kendoGanttToolbarTemplate\r\n position=\"both\"\r\n let-position=\"position\">\r\n <div *ngIf=\"position === 'top'\" class=\"toolbar-top\">\r\n <span>{{data.Title}}</span>\r\n <kendo-gantt-view-selector [views]=\"views\"\r\n [(activeView)]=\"activeView\"></kendo-gantt-view-selector>\r\n </div>\r\n <div *ngIf=\"position === 'bottom'\" class=\"toolbar-bottom\">\r\n <span>Total {{totalCount}} records</span>\r\n </div>\r\n </ng-template>\r\n <kendo-gantt-timeline-day-view></kendo-gantt-timeline-day-view>\r\n <kendo-gantt-timeline-week-view></kendo-gantt-timeline-week-view>\r\n <kendo-gantt-timeline-month-view></kendo-gantt-timeline-month-view>\r\n <kendo-gantt-timeline-year-view></kendo-gantt-timeline-year-view>\r\n</kendo-gantt>\r\n", styles: ["label.k-radio-label{display:inline-block;margin-right:10px}.toolbar-top{display:flex;width:100%;justify-content:space-between;align-items:center}.toolbar-bottom{display:flex;width:100%;align-items:end}\n"], components: [{ type: i2$e.GanttComponent, selector: "kendo-gantt", inputs: ["aria-roledescription", "role", "taskModelFields", "dependencyModelFields", "activeView", "data", "isSelected", "validateNewDependency", "selectable", "toolbarSettings", "fetchChildren", "hasChildren", "dependencies", "sortable", "sort", "filterable", "filter", "workDayStart", "workDayEnd", "workWeekStart", "workWeekEnd", "navigable", "timelinePaneOptions", "treeListPaneOptions", "taskClass", "rowClass", "isExpanded", "columnsAutoSize", "columnMenu", "columnsReorderable", "columnsResizable", "dragScrollSettings"], outputs: ["selectionChange", "rowExpand", "taskDblClick", "cellDblClick", "cellClose", "taskDelete", "rowCollapse", "remove", "cancel", "save", "taskAdd", "dependencyAdd", "sortChange", "filterChange", "dataStateChange", "treeListPaneCollapsedChange", "timelinePaneCollapsedChange", "timelinePaneSizeChange", "activeViewChange", "columnResize", "columnReorder", "columnVisibilityChange", "columnLockedChange", "cellClick", "taskClick"], exportAs: ["kendoGantt"] }, { type: i2$e.GanttColumnComponent, selector: "kendo-gantt-column", inputs: ["format", "filter", "filterable", "editor", "editable", "locked", "lockable", "hidden", "media", "style", "headerStyle", "footerStyle", "class", "headerClass", "footerClass"] }, { type: i2$e.ViewSelectorComponent, selector: "kendo-gantt-view-selector", inputs: ["views", "activeView"], outputs: ["activeViewChange"] }, { type: i2$e.TimelineDayViewComponent, selector: "kendo-gantt-timeline-day-view" }, { type: i2$e.TimelineWeekViewComponent, selector: "kendo-gantt-timeline-week-view" }, { type: i2$e.TimelineMonthViewComponent, selector: "kendo-gantt-timeline-month-view" }, { type: i2$e.TimelineYearViewComponent, selector: "kendo-gantt-timeline-year-view" }], directives: [{ type: i2$e.GanttExpandableDirective, selector: "[kendoGanttExpandable]", inputs: ["expandBy"], exportAs: ["kendoGanttExpandable"] }, { type: i5.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i2$e.ToolbarTemplateDirective, selector: "[kendoGanttToolbarTemplate]", inputs: ["position"] }, { type: i5.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] });
15103
15123
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.3", ngImport: i0, type: ZganttchartComponent, decorators: [{
15104
15124
  type: Component,
15105
- args: [{ selector: 'app-zganttchart', template: "<kendo-gantt [style.height.px]=\"500\"\n [data]=\"ganttData\"\n kendoGanttExpandable\n [initiallyExpanded]=\"true\"\n [toolbarSettings]=\"{ position: 'both', addTaskTool: 'none' }\"\n [activeView]=\"activeView\"\n [sortable]=\"true\"\n [selectable]=\"selectable\"\n [isSelected]=\"isSelected\"\n (cellClick)=\"toggleSelection($event)\"\n (taskClick)=\"toggleSelection($event)\"\n [timelinePaneOptions]=\"{ collapsed: collapsed,\n collapsible: collapsible,\n size: timelineSize\n }\">\n <kendo-gantt-column *ngFor=\"let col of columns;\"\n [field]=\"col.field\"\n [title]=\"col.title\"\n [width]=\"col.width\"\n [format]=\"col.format\">\n </kendo-gantt-column>\n <ng-template kendoGanttToolbarTemplate\n position=\"both\"\n let-position=\"position\">\n <div *ngIf=\"position === 'top'\" class=\"toolbar-top\">\n <span>{{data.Title}}</span>\n <kendo-gantt-view-selector [views]=\"views\"\n [(activeView)]=\"activeView\"></kendo-gantt-view-selector>\n </div>\n <div *ngIf=\"position === 'bottom'\" class=\"toolbar-bottom\">\n <span>Total {{totalCount}} records</span>\n </div>\n </ng-template>\n <kendo-gantt-timeline-day-view></kendo-gantt-timeline-day-view>\n <kendo-gantt-timeline-week-view></kendo-gantt-timeline-week-view>\n <kendo-gantt-timeline-month-view></kendo-gantt-timeline-month-view>\n <kendo-gantt-timeline-year-view></kendo-gantt-timeline-year-view>\n</kendo-gantt>\n", styles: ["label.k-radio-label{display:inline-block;margin-right:10px}.toolbar-top{display:flex;width:100%;justify-content:space-between;align-items:center}.toolbar-bottom{display:flex;width:100%;align-items:end}\n"] }]
15125
+ args: [{ selector: 'app-zganttchart', template: "<kendo-gantt [style.height.px]=\"500\"\r\n [data]=\"ganttData\"\r\n kendoGanttExpandable\r\n [initiallyExpanded]=\"true\"\r\n [toolbarSettings]=\"{ position: 'both', addTaskTool: 'none' }\"\r\n [activeView]=\"activeView\"\r\n [sortable]=\"true\"\r\n [selectable]=\"selectable\"\r\n [isSelected]=\"isSelected\"\r\n (cellClick)=\"toggleSelection($event)\"\r\n (taskClick)=\"toggleSelection($event)\"\r\n [timelinePaneOptions]=\"{ collapsed: collapsed,\r\n collapsible: collapsible,\r\n size: timelineSize\r\n }\">\r\n <kendo-gantt-column *ngFor=\"let col of columns;\"\r\n [field]=\"col.field\"\r\n [title]=\"col.title\"\r\n [width]=\"col.width\"\r\n [format]=\"col.format\">\r\n </kendo-gantt-column>\r\n <ng-template kendoGanttToolbarTemplate\r\n position=\"both\"\r\n let-position=\"position\">\r\n <div *ngIf=\"position === 'top'\" class=\"toolbar-top\">\r\n <span>{{data.Title}}</span>\r\n <kendo-gantt-view-selector [views]=\"views\"\r\n [(activeView)]=\"activeView\"></kendo-gantt-view-selector>\r\n </div>\r\n <div *ngIf=\"position === 'bottom'\" class=\"toolbar-bottom\">\r\n <span>Total {{totalCount}} records</span>\r\n </div>\r\n </ng-template>\r\n <kendo-gantt-timeline-day-view></kendo-gantt-timeline-day-view>\r\n <kendo-gantt-timeline-week-view></kendo-gantt-timeline-week-view>\r\n <kendo-gantt-timeline-month-view></kendo-gantt-timeline-month-view>\r\n <kendo-gantt-timeline-year-view></kendo-gantt-timeline-year-view>\r\n</kendo-gantt>\r\n", styles: ["label.k-radio-label{display:inline-block;margin-right:10px}.toolbar-top{display:flex;width:100%;justify-content:space-between;align-items:center}.toolbar-bottom{display:flex;width:100%;align-items:end}\n"] }]
15106
15126
  }], ctorParameters: function () { return [{ type: ZComponentService }]; } });
15107
15127
 
15108
15128
  /********** Angular **********/