@magic-xpa/angular 4.1200.0-dev4120.127 → 4.1200.0-dev4120.130

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.
@@ -1,6 +1,6 @@
1
1
  import { isNullOrUndefined, NString, List, isUndefined, StringBuilder, RefParam } from '@magic-xpa/mscorelib';
2
2
  import * as i0 from '@angular/core';
3
- import { Injectable, Component, Input, Output, Directive, EventEmitter, ViewChild, InjectionToken, Inject, HostListener, Optional, Pipe, forwardRef, NgModule } from '@angular/core';
3
+ import { Injectable, Component, Input, Output, Directive, EventEmitter, HostListener, ViewChild, InjectionToken, Inject, Optional, Pipe, forwardRef, NgModule } from '@angular/core';
4
4
  import * as i1 from '@angular/common';
5
5
  import { DatePipe, CommonModule, formatDate } from '@angular/common';
6
6
  import * as i2 from '@angular/router';
@@ -14,11 +14,13 @@ import { MagicProperties, Logger, StrUtil, StorageAttribute, PICInterface, MsgIn
14
14
  import { filter, map, debounceTime } from 'rxjs/operators';
15
15
  import { Subject, EMPTY, fromEvent } from 'rxjs';
16
16
  import { __decorate, __metadata } from 'tslib';
17
+ import * as i2$1 from '@angular/cdk/drag-drop';
18
+ import { DragDropModule, CdkDragHandle, CdkDrag } from '@angular/cdk/drag-drop';
17
19
  import * as i1$1 from '@angular/platform-browser';
18
20
  import * as i1$2 from '@angular/common/http';
19
21
  import { provideHttpClient, withInterceptorsFromDi } from '@angular/common/http';
20
22
  import { maskitoTimeOptionsGenerator } from '@maskito/kit';
21
- import * as i2$1 from '@angular/cdk/platform';
23
+ import * as i2$2 from '@angular/cdk/platform';
22
24
  import { MaskitoModule } from '@maskito/angular';
23
25
  import { NativeDateAdapter, MAT_DATE_LOCALE, DateAdapter, MAT_DATE_FORMATS } from '@angular/material/core';
24
26
 
@@ -1026,21 +1028,40 @@ const _c0$3 = ["modalheader"];
1026
1028
  const _c1$1 = ["modalForeground"];
1027
1029
  function MagicOverlayContainer_button_2_Template(rf, ctx) { if (rf & 1) {
1028
1030
  const _r2 = i0.ɵɵgetCurrentView();
1029
- i0.ɵɵelementStart(0, "button", 9);
1031
+ i0.ɵɵelementStart(0, "button", 16);
1030
1032
  i0.ɵɵlistener("click", function MagicOverlayContainer_button_2_Template_button_click_0_listener() { i0.ɵɵrestoreView(_r2); const ctx_r2 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r2.OnClose()); });
1031
1033
  i0.ɵɵtext(1, "X");
1032
1034
  i0.ɵɵelementEnd();
1033
1035
  } }
1034
- function MagicOverlayContainer_div_5_Template(rf, ctx) { if (rf & 1) {
1036
+ function MagicOverlayContainer_span_5_Template(rf, ctx) { if (rf & 1) {
1035
1037
  const _r4 = i0.ɵɵgetCurrentView();
1036
- i0.ɵɵelementStart(0, "div", 10, 2);
1038
+ i0.ɵɵelementStart(0, "span", 17, 2);
1039
+ i0.ɵɵlistener("mousedown", function MagicOverlayContainer_span_5_Template_span_mousedown_0_listener($event) { i0.ɵɵrestoreView(_r4); const ctx_r2 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r2.onResizeStart($event, "corner")); });
1040
+ i0.ɵɵelementEnd();
1041
+ } }
1042
+ function MagicOverlayContainer_span_6_Template(rf, ctx) { if (rf & 1) {
1043
+ const _r5 = i0.ɵɵgetCurrentView();
1044
+ i0.ɵɵelementStart(0, "span", 18, 3);
1045
+ i0.ɵɵlistener("mousedown", function MagicOverlayContainer_span_6_Template_span_mousedown_0_listener($event) { i0.ɵɵrestoreView(_r5); const ctx_r2 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r2.onResizeStart($event, "right")); });
1046
+ i0.ɵɵelementEnd();
1047
+ } }
1048
+ function MagicOverlayContainer_span_7_Template(rf, ctx) { if (rf & 1) {
1049
+ const _r6 = i0.ɵɵgetCurrentView();
1050
+ i0.ɵɵelementStart(0, "span", 19, 4);
1051
+ i0.ɵɵlistener("mousedown", function MagicOverlayContainer_span_7_Template_span_mousedown_0_listener($event) { i0.ɵɵrestoreView(_r6); const ctx_r2 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r2.onResizeStart($event, "bottom")); });
1052
+ i0.ɵɵelementEnd();
1053
+ } }
1054
+ function MagicOverlayContainer_div_8_Template(rf, ctx) { if (rf & 1) {
1055
+ const _r7 = i0.ɵɵgetCurrentView();
1056
+ i0.ɵɵelementStart(0, "div", 20, 5);
1037
1057
  i0.ɵɵtext(2);
1038
- i0.ɵɵelementStart(3, "button", 11);
1039
- i0.ɵɵlistener("click", function MagicOverlayContainer_div_5_Template_button_click_3_listener() { i0.ɵɵrestoreView(_r4); const ctx_r2 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r2.OnClose()); });
1058
+ i0.ɵɵelementStart(3, "button", 21);
1059
+ i0.ɵɵlistener("click", function MagicOverlayContainer_div_8_Template_button_click_3_listener() { i0.ɵɵrestoreView(_r7); const ctx_r2 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r2.OnClose()); });
1040
1060
  i0.ɵɵtext(4, "X");
1041
1061
  i0.ɵɵelementEnd()();
1042
1062
  } if (rf & 2) {
1043
1063
  const ctx_r2 = i0.ɵɵnextContext();
1064
+ i0.ɵɵclassProp("movable", ctx_r2.IsMovable());
1044
1065
  i0.ɵɵadvance(2);
1045
1066
  i0.ɵɵtextInterpolate1(" ", ctx_r2.getText(), " ");
1046
1067
  } }
@@ -1073,10 +1094,15 @@ class MagicOverlayContainer extends BaseMagicOverlayContainer {
1073
1094
  *
1074
1095
  */
1075
1096
  componentRef = null;
1097
+ resizing = false;
1098
+ resizeDirection = null;
1099
+ originalWidth = 0;
1100
+ originalHeight = 0;
1101
+ originalMouseX = 0;
1102
+ originalMouseY = 0;
1103
+ isCenteredToWindow = true;
1076
1104
  /**
1077
1105
  *
1078
- * @param injector
1079
- * @param componentFactoryResolver
1080
1106
  */
1081
1107
  constructor() {
1082
1108
  super();
@@ -1087,6 +1113,8 @@ class MagicOverlayContainer extends BaseMagicOverlayContainer {
1087
1113
  ngOnInit() {
1088
1114
  this.componentRef = this.modalbodyViewContainerRef.createComponent(this.ModalComp);
1089
1115
  Object.assign(this.componentRef.instance, this.ModalCompParameters);
1116
+ let comp = this.componentRef.instance;
1117
+ this.isCenteredToWindow = comp.IsCenteredToWindow();
1090
1118
  }
1091
1119
  setViewContainerRef(vcRef) {
1092
1120
  this.modalbodyViewContainerRef = vcRef;
@@ -1113,7 +1141,7 @@ class MagicOverlayContainer extends BaseMagicOverlayContainer {
1113
1141
  let comp = this.componentRef.instance;
1114
1142
  styles['width'] = comp.Width();
1115
1143
  styles['height'] = comp.Height();
1116
- if (comp.IsCenteredToWindow()) {
1144
+ if (this.isCenteredToWindow) {
1117
1145
  styles['margin'] = 'auto';
1118
1146
  }
1119
1147
  else {
@@ -1165,6 +1193,72 @@ class MagicOverlayContainer extends BaseMagicOverlayContainer {
1165
1193
  if (comp.ShouldCloseOnBackgroundClick())
1166
1194
  this.OnClose();
1167
1195
  }
1196
+ /**
1197
+ * Checks if the overlay component allows to be resized.
1198
+ * @returns {boolean} True if the overlay is resizable, false otherwise.
1199
+ */
1200
+ IsResizable() {
1201
+ let comp = this.componentRef.instance;
1202
+ return comp.IsResizable();
1203
+ }
1204
+ /**
1205
+ * Checks if the overlay component allows to be moved (dragged).
1206
+ * @returns {boolean} True if the overlay is movable, false otherwise.
1207
+ */
1208
+ IsMovable() {
1209
+ let comp = this.componentRef.instance;
1210
+ return comp.IsMovable();
1211
+ }
1212
+ /**
1213
+ * Initiates the resize process when a mousedown event occurs on a resize handle.
1214
+ * Stores the initial state (dimensions, mouse position) and sets flags.
1215
+ * @param {MouseEvent} event - The mousedown event triggering the resize.
1216
+ * @param {'right' | 'bottom' | 'corner'} direction - Indicates which resize handle was activated.
1217
+ */
1218
+ onResizeStart(event, direction) {
1219
+ this.resizing = true;
1220
+ this.resizeDirection = direction;
1221
+ const element = this.foregroundElementRef.nativeElement;
1222
+ this.originalWidth = element.offsetWidth;
1223
+ this.originalHeight = element.offsetHeight;
1224
+ this.originalMouseX = event.clientX;
1225
+ this.originalMouseY = event.clientY;
1226
+ event.preventDefault();
1227
+ event.stopPropagation();
1228
+ }
1229
+ /**
1230
+ * Handles the resizing logic as the mouse moves across the window.
1231
+ * This listener is active globally on the window during a resize operation via @HostListener.
1232
+ * Calculates and applies the new dimensions to the element based on mouse movement.
1233
+ * @param {MouseEvent} event - The mousemove event passed by the HostListener.
1234
+ */
1235
+ onResize(event) {
1236
+ if (!this.resizing)
1237
+ return;
1238
+ const element = this.foregroundElementRef.nativeElement;
1239
+ if (this.resizeDirection === 'right' || this.resizeDirection === 'corner') {
1240
+ let dx = (event.clientX - this.originalMouseX);
1241
+ let newWidth = this.originalWidth + dx;
1242
+ if (this.isCenteredToWindow)
1243
+ newWidth = this.originalWidth + (2 * dx);
1244
+ element.style.width = `${newWidth}px`;
1245
+ }
1246
+ if (this.resizeDirection === 'bottom' || this.resizeDirection === 'corner') {
1247
+ let dy = (event.clientY - this.originalMouseY);
1248
+ let newHeight = this.originalHeight + dy;
1249
+ if (this.isCenteredToWindow)
1250
+ newHeight = this.originalHeight + (2 * dy);
1251
+ element.style.height = `${newHeight}px`;
1252
+ }
1253
+ }
1254
+ /**
1255
+ * Finalizes the resize operation when the mouse button is released anywhere on the window.
1256
+ * Resets the resizing state flags. Triggered globally via @HostListener.
1257
+ */
1258
+ onResizeEnd() {
1259
+ this.resizing = false;
1260
+ this.resizeDirection = null;
1261
+ }
1168
1262
  /** @nocollapse */ static ɵfac = function MagicOverlayContainer_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || MagicOverlayContainer)(); };
1169
1263
  /** @nocollapse */ static ɵcmp = /** @pureOrBreakMyCode */ i0.ɵɵdefineComponent({ type: MagicOverlayContainer, selectors: [["app-magic-overlay-container"]], viewQuery: function MagicOverlayContainer_Query(rf, ctx) { if (rf & 1) {
1170
1264
  i0.ɵɵviewQuery(_c0$3, 5);
@@ -1173,47 +1267,63 @@ class MagicOverlayContainer extends BaseMagicOverlayContainer {
1173
1267
  let _t;
1174
1268
  i0.ɵɵqueryRefresh(_t = i0.ɵɵloadQuery()) && (ctx.headerElementRef = _t.first);
1175
1269
  i0.ɵɵqueryRefresh(_t = i0.ɵɵloadQuery()) && (ctx.foregroundElementRef = _t.first);
1176
- } }, inputs: { ModalComp: "ModalComp", ModalCompParameters: "ModalCompParameters" }, outputs: { onClose: "onClose" }, standalone: false, features: [i0.ɵɵInheritDefinitionFeature], decls: 9, vars: 4, consts: [["modalForeground", ""], ["modalbody", ""], ["modalheader", ""], [1, "modal-background", 3, "click"], ["tabindex", "-1", "style", "float:right; border: none; background-color: transparent; outline: none; color: white", 3, "click", 4, "ngIf"], [1, "modal-foreground", 3, "ngStyle"], ["class", "modal-header", 4, "ngIf"], [3, "ngStyle"], ["magicViewContainerRef", ""], ["tabindex", "-1", 2, "float", "right", "border", "none", "background-color", "transparent", "outline", "none", "color", "white", 3, "click"], [1, "modal-header"], ["tabindex", "-1", 2, "float", "right", 3, "click"]], template: function MagicOverlayContainer_Template(rf, ctx) { if (rf & 1) {
1270
+ } }, hostBindings: function MagicOverlayContainer_HostBindings(rf, ctx) { if (rf & 1) {
1271
+ i0.ɵɵlistener("mousemove", function MagicOverlayContainer_mousemove_HostBindingHandler($event) { return ctx.onResize($event); }, false, i0.ɵɵresolveWindow)("mouseup", function MagicOverlayContainer_mouseup_HostBindingHandler() { return ctx.onResizeEnd(); }, false, i0.ɵɵresolveWindow);
1272
+ } }, inputs: { ModalComp: "ModalComp", ModalCompParameters: "ModalCompParameters" }, outputs: { onClose: "onClose" }, standalone: false, features: [i0.ɵɵInheritDefinitionFeature], decls: 12, vars: 8, consts: [["modalForeground", ""], ["modalbody", ""], ["dragHandleCorner", ""], ["dragHandleRight", ""], ["dragHandleBottom", ""], ["modalheader", ""], [1, "boundary-line"], [1, "modal-background", 3, "click"], ["tabindex", "-1", "style", "float:right; border: none; background-color: transparent; outline: none; color: white", 3, "click", 4, "ngIf"], ["cdkDragBoundary", ".boundary-line", "cdkDrag", "", 1, "modal-foreground", 3, "ngStyle", "cdkDragDisabled"], ["class", "dragHandle corner", 3, "mousedown", 4, "ngIf"], ["class", "dragHandle right", 3, "mousedown", 4, "ngIf"], ["class", "dragHandle bottom", 3, "mousedown", 4, "ngIf"], ["class", "modal-header", "cdkDragHandle", "", 3, "movable", 4, "ngIf"], [3, "ngStyle"], ["magicViewContainerRef", ""], ["tabindex", "-1", 2, "float", "right", "border", "none", "background-color", "transparent", "outline", "none", "color", "white", 3, "click"], [1, "dragHandle", "corner", 3, "mousedown"], [1, "dragHandle", "right", 3, "mousedown"], [1, "dragHandle", "bottom", 3, "mousedown"], ["cdkDragHandle", "", 1, "modal-header"], ["tabindex", "-1", 2, "float", "right", 3, "click"]], template: function MagicOverlayContainer_Template(rf, ctx) { if (rf & 1) {
1177
1273
  const _r1 = i0.ɵɵgetCurrentView();
1178
- i0.ɵɵelementStart(0, "div")(1, "div", 3);
1274
+ i0.ɵɵelementStart(0, "div", 6)(1, "div", 7);
1179
1275
  i0.ɵɵlistener("click", function MagicOverlayContainer_Template_div_click_1_listener() { i0.ɵɵrestoreView(_r1); return i0.ɵɵresetView(ctx.OnBackgroundClick()); });
1180
- i0.ɵɵtemplate(2, MagicOverlayContainer_button_2_Template, 2, 0, "button", 4);
1276
+ i0.ɵɵtemplate(2, MagicOverlayContainer_button_2_Template, 2, 0, "button", 8);
1181
1277
  i0.ɵɵelementEnd();
1182
- i0.ɵɵelementStart(3, "div", 5, 0);
1183
- i0.ɵɵtemplate(5, MagicOverlayContainer_div_5_Template, 5, 1, "div", 6);
1184
- i0.ɵɵelementStart(6, "div", 7);
1185
- i0.ɵɵelement(7, "div", 8, 1);
1278
+ i0.ɵɵelementStart(3, "div", 9, 0);
1279
+ i0.ɵɵtemplate(5, MagicOverlayContainer_span_5_Template, 2, 0, "span", 10)(6, MagicOverlayContainer_span_6_Template, 2, 0, "span", 11)(7, MagicOverlayContainer_span_7_Template, 2, 0, "span", 12)(8, MagicOverlayContainer_div_8_Template, 5, 3, "div", 13);
1280
+ i0.ɵɵelementStart(9, "div", 14);
1281
+ i0.ɵɵelement(10, "div", 15, 1);
1186
1282
  i0.ɵɵelementEnd()()();
1187
1283
  } if (rf & 2) {
1188
1284
  i0.ɵɵadvance(2);
1189
1285
  i0.ɵɵproperty("ngIf", !ctx.getShowTitleBar());
1190
1286
  i0.ɵɵadvance();
1191
- i0.ɵɵproperty("ngStyle", ctx.getStyle());
1287
+ i0.ɵɵproperty("ngStyle", ctx.getStyle())("cdkDragDisabled", !ctx.IsMovable());
1192
1288
  i0.ɵɵadvance(2);
1289
+ i0.ɵɵproperty("ngIf", ctx.IsResizable());
1290
+ i0.ɵɵadvance();
1291
+ i0.ɵɵproperty("ngIf", ctx.IsResizable());
1292
+ i0.ɵɵadvance();
1293
+ i0.ɵɵproperty("ngIf", ctx.IsResizable());
1294
+ i0.ɵɵadvance();
1193
1295
  i0.ɵɵproperty("ngIf", ctx.getShowTitleBar());
1194
1296
  i0.ɵɵadvance();
1195
1297
  i0.ɵɵproperty("ngStyle", ctx.getClientAreaStyles());
1196
- } }, dependencies: [i1.NgIf, i1.NgStyle, MagicViewContainerRef], styles: [".modal-foreground[_ngcontent-%COMP%]{position:fixed;inset:0;background-color:#fff}.modal-background[_ngcontent-%COMP%]{position:fixed;inset:0;background-color:#000;opacity:.75}.modal-header[_ngcontent-%COMP%]{background-color:beige;border-bottom:2px solid red}"] });
1298
+ } }, dependencies: [i1.NgIf, i1.NgStyle, i2$1.CdkDragHandle, i2$1.CdkDrag, MagicViewContainerRef], styles: [".modal-foreground[_ngcontent-%COMP%]{position:fixed;inset:0;background-color:#fff}.modal-background[_ngcontent-%COMP%]{position:fixed;inset:0;background-color:#000;opacity:.75}.modal-header[_ngcontent-%COMP%]{background-color:beige;border-bottom:2px solid red}.modal-header.movable[_ngcontent-%COMP%]:active{cursor:move}.container[_ngcontent-%COMP%]{position:relative}.dragHandle[_ngcontent-%COMP%]{position:absolute}.dragHandle.corner[_ngcontent-%COMP%]{width:10px;right:0;bottom:0;height:10px;cursor:nwse-resize;background:linear-gradient(135deg,rgba(0,0,0,.4) 50%,transparent 50%)}.dragHandle.right[_ngcontent-%COMP%]{width:2px;right:-2px;height:100%;cursor:ew-resize}.dragHandle.bottom[_ngcontent-%COMP%]{height:2px;bottom:-2px;width:100%;cursor:ns-resize}.boundary-line[_ngcontent-%COMP%]{width:100%;height:100%;max-width:100%}"] });
1197
1299
  }
1198
1300
  (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(MagicOverlayContainer, [{
1199
1301
  type: Component,
1200
1302
  args: [{ selector: 'app-magic-overlay-container', template: `
1201
- <div>
1303
+ <div class="boundary-line">
1304
+
1202
1305
  <div class="modal-background" (click)="OnBackgroundClick()">
1203
1306
  <button (click)="OnClose()" tabindex="-1" style="float:right; border: none; background-color: transparent; outline: none; color: white" *ngIf="!getShowTitleBar()">X</button>
1204
1307
  </div>
1205
- <div #modalForeground class="modal-foreground" [ngStyle]="getStyle()">
1206
- <div #modalheader class="modal-header" *ngIf="getShowTitleBar()">
1308
+
1309
+ <div #modalForeground class="modal-foreground" [ngStyle]="getStyle()" cdkDragBoundary=".boundary-line" cdkDrag [cdkDragDisabled]="!IsMovable()">
1310
+
1311
+ <span #dragHandleCorner *ngIf="IsResizable()" class="dragHandle corner" (mousedown)="onResizeStart($event, 'corner')"></span>
1312
+ <span #dragHandleRight *ngIf="IsResizable()" class="dragHandle right" (mousedown)="onResizeStart($event, 'right')"></span>
1313
+ <span #dragHandleBottom *ngIf="IsResizable()" class="dragHandle bottom" (mousedown)="onResizeStart($event, 'bottom')"></span>
1314
+
1315
+ <div #modalheader class="modal-header" *ngIf="getShowTitleBar()" cdkDragHandle [class.movable]="IsMovable()">
1207
1316
  {{getText()}}
1208
1317
  <button (click)="OnClose()" style="float:right" tabindex="-1">X</button>
1209
1318
  </div>
1319
+
1210
1320
  <div [ngStyle]="getClientAreaStyles()">
1211
1321
  <div #modalbody magicViewContainerRef>
1212
1322
  </div>
1213
1323
  </div>
1214
1324
  </div>
1215
1325
  </div>
1216
- `, standalone: false, styles: [".modal-foreground{position:fixed;inset:0;background-color:#fff}.modal-background{position:fixed;inset:0;background-color:#000;opacity:.75}.modal-header{background-color:beige;border-bottom:2px solid red}\n"] }]
1326
+ `, standalone: false, styles: [".modal-foreground{position:fixed;inset:0;background-color:#fff}.modal-background{position:fixed;inset:0;background-color:#000;opacity:.75}.modal-header{background-color:beige;border-bottom:2px solid red}.modal-header.movable:active{cursor:move}.container{position:relative}.dragHandle{position:absolute}.dragHandle.corner{width:10px;right:0;bottom:0;height:10px;cursor:nwse-resize;background:linear-gradient(135deg,rgba(0,0,0,.4) 50%,transparent 50%)}.dragHandle.right{width:2px;right:-2px;height:100%;cursor:ew-resize}.dragHandle.bottom{height:2px;bottom:-2px;width:100%;cursor:ns-resize}.boundary-line{width:100%;height:100%;max-width:100%}\n"] }]
1217
1327
  }], () => [], { headerElementRef: [{
1218
1328
  type: ViewChild,
1219
1329
  args: ['modalheader', { static: false }]
@@ -1226,8 +1336,14 @@ class MagicOverlayContainer extends BaseMagicOverlayContainer {
1226
1336
  type: Input
1227
1337
  }], onClose: [{
1228
1338
  type: Output
1339
+ }], onResize: [{
1340
+ type: HostListener,
1341
+ args: ['window:mousemove', ['$event']]
1342
+ }], onResizeEnd: [{
1343
+ type: HostListener,
1344
+ args: ['window:mouseup']
1229
1345
  }] }); })();
1230
- (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(MagicOverlayContainer, { className: "MagicOverlayContainer", filePath: "src/ui/magic-modal/magic-overlay-container.ts", lineNumber: 41 }); })();
1346
+ (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(MagicOverlayContainer, { className: "MagicOverlayContainer", filePath: "src/ui/magic-modal/magic-overlay-container.ts", lineNumber: 50 }); })();
1231
1347
 
1232
1348
  /**
1233
1349
  * Service managing overlay windows
@@ -4337,7 +4453,7 @@ class MagicDirective {
4337
4453
  ngOnDestroy() {
4338
4454
  this.subscribeRefreshDom.unsubscribe();
4339
4455
  }
4340
- /** @nocollapse */ static ɵfac = function MagicDirective_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || MagicDirective)(i0.ɵɵdirectiveInject(TaskMagicService), i0.ɵɵdirectiveInject(i0.ElementRef), i0.ɵɵdirectiveInject(i0.Renderer2), i0.ɵɵdirectiveInject(i0.ViewContainerRef), i0.ɵɵdirectiveInject(i2$1.Platform), i0.ɵɵdirectiveInject(RowMagicDirective, 8)); };
4456
+ /** @nocollapse */ static ɵfac = function MagicDirective_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || MagicDirective)(i0.ɵɵdirectiveInject(TaskMagicService), i0.ɵɵdirectiveInject(i0.ElementRef), i0.ɵɵdirectiveInject(i0.Renderer2), i0.ɵɵdirectiveInject(i0.ViewContainerRef), i0.ɵɵdirectiveInject(i2$2.Platform), i0.ɵɵdirectiveInject(RowMagicDirective, 8)); };
4341
4457
  /** @nocollapse */ static ɵdir = /** @pureOrBreakMyCode */ i0.ɵɵdefineDirective({ type: MagicDirective, selectors: [["", "magic", ""]], inputs: { magic: "magic", eventsOnly: "eventsOnly", pollTime: "pollTime", rowId: "rowId" }, standalone: false });
4342
4458
  }
4343
4459
  (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(MagicDirective, [{
@@ -4346,7 +4462,7 @@ class MagicDirective {
4346
4462
  selector: "[magic]",
4347
4463
  standalone: false
4348
4464
  }]
4349
- }], () => [{ type: TaskMagicService }, { type: i0.ElementRef }, { type: i0.Renderer2 }, { type: i0.ViewContainerRef }, { type: i2$1.Platform }, { type: RowMagicDirective, decorators: [{
4465
+ }], () => [{ type: TaskMagicService }, { type: i0.ElementRef }, { type: i0.Renderer2 }, { type: i0.ViewContainerRef }, { type: i2$2.Platform }, { type: RowMagicDirective, decorators: [{
4350
4466
  type: Optional
4351
4467
  }] }], { magic: [{
4352
4468
  type: Input,
@@ -4535,7 +4651,7 @@ class NoControlMagicDirective extends MagicDirective {
4535
4651
  break;
4536
4652
  }
4537
4653
  }
4538
- /** @nocollapse */ static ɵfac = function NoControlMagicDirective_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || NoControlMagicDirective)(i0.ɵɵdirectiveInject(TaskMagicService), i0.ɵɵdirectiveInject(i0.ElementRef), i0.ɵɵdirectiveInject(i0.Renderer2), i0.ɵɵdirectiveInject(i0.ViewContainerRef), i0.ɵɵdirectiveInject(i2$1.Platform), i0.ɵɵdirectiveInject(RowMagicDirective, 8)); };
4654
+ /** @nocollapse */ static ɵfac = function NoControlMagicDirective_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || NoControlMagicDirective)(i0.ɵɵdirectiveInject(TaskMagicService), i0.ɵɵdirectiveInject(i0.ElementRef), i0.ɵɵdirectiveInject(i0.Renderer2), i0.ɵɵdirectiveInject(i0.ViewContainerRef), i0.ɵɵdirectiveInject(i2$2.Platform), i0.ɵɵdirectiveInject(RowMagicDirective, 8)); };
4539
4655
  /** @nocollapse */ static ɵdir = /** @pureOrBreakMyCode */ i0.ɵɵdefineDirective({ type: NoControlMagicDirective, selectors: [["", "magicnc", ""]], inputs: { magic: [0, "magicnc", "magic"] }, standalone: false, features: [i0.ɵɵInheritDefinitionFeature] });
4540
4656
  }
4541
4657
  (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(NoControlMagicDirective, [{
@@ -4544,7 +4660,7 @@ class NoControlMagicDirective extends MagicDirective {
4544
4660
  selector: '[magicnc]',
4545
4661
  standalone: false
4546
4662
  }]
4547
- }], () => [{ type: TaskMagicService }, { type: i0.ElementRef }, { type: i0.Renderer2 }, { type: i0.ViewContainerRef }, { type: i2$1.Platform }, { type: RowMagicDirective, decorators: [{
4663
+ }], () => [{ type: TaskMagicService }, { type: i0.ElementRef }, { type: i0.Renderer2 }, { type: i0.ViewContainerRef }, { type: i2$2.Platform }, { type: RowMagicDirective, decorators: [{
4548
4664
  type: Optional
4549
4665
  }] }], { magic: [{
4550
4666
  type: Input,
@@ -6445,7 +6561,8 @@ class MagicModule {
6445
6561
  FormsModule,
6446
6562
  ReactiveFormsModule,
6447
6563
  RouterModule,
6448
- DynamicModule, MaskitoModule] });
6564
+ DynamicModule,
6565
+ DragDropModule, MaskitoModule] });
6449
6566
  }
6450
6567
  (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(MagicModule, [{
6451
6568
  type: NgModule,
@@ -6456,7 +6573,10 @@ class MagicModule {
6456
6573
  FormsModule,
6457
6574
  ReactiveFormsModule,
6458
6575
  RouterModule,
6459
- DynamicModule],
6576
+ DynamicModule,
6577
+ CdkDragHandle,
6578
+ CdkDrag,
6579
+ DragDropModule],
6460
6580
  providers: [ConfirmationComponentsMagicProvider, OverlayContainerMagicProvider, provideHttpClient(withInterceptorsFromDi())]
6461
6581
  }]
6462
6582
  }], null, null); })();
@@ -6492,7 +6612,10 @@ class MagicModule {
6492
6612
  FormsModule,
6493
6613
  ReactiveFormsModule,
6494
6614
  RouterModule,
6495
- DynamicModule], exports: [MagicDirective,
6615
+ DynamicModule,
6616
+ CdkDragHandle,
6617
+ CdkDrag,
6618
+ DragDropModule], exports: [MagicDirective,
6496
6619
  CheckboxMagicDirective,
6497
6620
  CheckboxNoFormControlMagicDirective,
6498
6621
  InputNoFormControlMagicDirective,