@acorex/components 19.12.0-next.1 → 19.12.0-next.3

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 (54) hide show
  1. package/calendar/lib/calendar-range.component.d.ts +4 -1
  2. package/calendar/lib/calendar.class.d.ts +8 -0
  3. package/calendar/lib/calendar.component.d.ts +2 -0
  4. package/datetime-box/lib/datetime-box.component.d.ts +11 -13
  5. package/datetime-input/lib/datetime-input.component.d.ts +21 -84
  6. package/datetime-picker/lib/datetime-picker.component.d.ts +13 -31
  7. package/fesm2022/acorex-components-alert.mjs +2 -2
  8. package/fesm2022/acorex-components-alert.mjs.map +1 -1
  9. package/fesm2022/acorex-components-calendar.mjs +65 -37
  10. package/fesm2022/acorex-components-calendar.mjs.map +1 -1
  11. package/fesm2022/acorex-components-conversation.mjs +2 -2
  12. package/fesm2022/acorex-components-conversation.mjs.map +1 -1
  13. package/fesm2022/acorex-components-datetime-box.mjs +28 -26
  14. package/fesm2022/acorex-components-datetime-box.mjs.map +1 -1
  15. package/fesm2022/acorex-components-datetime-input.mjs +113 -181
  16. package/fesm2022/acorex-components-datetime-input.mjs.map +1 -1
  17. package/fesm2022/acorex-components-datetime-picker.mjs +79 -81
  18. package/fesm2022/acorex-components-datetime-picker.mjs.map +1 -1
  19. package/fesm2022/acorex-components-file-explorer.mjs +1 -1
  20. package/fesm2022/acorex-components-file-explorer.mjs.map +1 -1
  21. package/fesm2022/acorex-components-map.mjs +13 -3
  22. package/fesm2022/acorex-components-map.mjs.map +1 -1
  23. package/fesm2022/{acorex-components-modal-acorex-components-modal-Bs1CnBt8.mjs → acorex-components-modal-acorex-components-modal-BzlZIwq8.mjs} +116 -26
  24. package/fesm2022/acorex-components-modal-acorex-components-modal-BzlZIwq8.mjs.map +1 -0
  25. package/fesm2022/acorex-components-modal-modal-content.component-zmFWBaiD.mjs +187 -0
  26. package/fesm2022/acorex-components-modal-modal-content.component-zmFWBaiD.mjs.map +1 -0
  27. package/fesm2022/acorex-components-modal.mjs +1 -1
  28. package/fesm2022/acorex-components-query-builder.mjs +1 -1
  29. package/fesm2022/acorex-components-query-builder.mjs.map +1 -1
  30. package/fesm2022/acorex-components-scheduler.mjs +1299 -103
  31. package/fesm2022/acorex-components-scheduler.mjs.map +1 -1
  32. package/fesm2022/acorex-components-tree-view.mjs +16 -7
  33. package/fesm2022/acorex-components-tree-view.mjs.map +1 -1
  34. package/map/lib/map.service.d.ts +1 -1
  35. package/modal/lib/modal-content/modal-content.component.d.ts +11 -8
  36. package/modal/lib/modal-state.service.d.ts +5 -4
  37. package/modal/lib/modal.component.d.ts +2 -0
  38. package/modal/lib/modal.service.d.ts +4 -2
  39. package/modal/lib/modal.types.d.ts +15 -1
  40. package/package.json +1 -1
  41. package/scheduler/index.d.ts +5 -2
  42. package/scheduler/lib/scheduler.class.d.ts +53 -0
  43. package/scheduler/lib/scheduler.component.d.ts +75 -22
  44. package/scheduler/lib/scheduler.module.d.ts +5 -9
  45. package/scheduler/lib/scheduler.service.d.ts +61 -0
  46. package/scheduler/lib/views/day/scheduler-day-view.component.d.ts +35 -0
  47. package/scheduler/lib/views/month/scheduler-month-view.component.d.ts +45 -0
  48. package/scheduler/lib/views/week/scheduler-week-view.component.d.ts +42 -0
  49. package/tree-view/lib/tree-view.component.d.ts +4 -2
  50. package/fesm2022/acorex-components-modal-acorex-components-modal-Bs1CnBt8.mjs.map +0 -1
  51. package/fesm2022/acorex-components-modal-modal-content.component-DhpujG4d.mjs +0 -181
  52. package/fesm2022/acorex-components-modal-modal-content.component-DhpujG4d.mjs.map +0 -1
  53. package/scheduler/lib/scheduler-month-view.component.d.ts +0 -41
  54. package/scheduler/lib/scheduler-week-view.component.d.ts +0 -10
@@ -1,7 +1,9 @@
1
1
  import * as i0 from '@angular/core';
2
- import { ChangeDetectionStrategy, ViewEncapsulation, Component, signal, inject, ComponentRef, Injectable, viewChild, TemplateRef, NgModule } from '@angular/core';
2
+ import { ChangeDetectionStrategy, ViewEncapsulation, Component, inject, signal, ComponentRef, Injectable, viewChild, TemplateRef, NgModule, Input, Directive } from '@angular/core';
3
3
  import { NXComponent } from '@acorex/components/common';
4
4
  import { AXOverlayService } from '@acorex/cdk/overlay';
5
+ import { cloneDeep, set } from 'lodash-es';
6
+ import { Subject } from 'rxjs';
5
7
 
6
8
  class AXModalFooterComponent {
7
9
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.5", ngImport: i0, type: AXModalFooterComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
@@ -14,26 +16,16 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.5", ngImpor
14
16
 
15
17
  class AXModalStateService {
16
18
  constructor() {
17
- this.modalOption = signal(null);
18
19
  this.modalList = new Map();
19
20
  this.overlayService = inject(AXOverlayService);
21
+ this.modalOption = signal(null);
20
22
  }
21
23
  async open(content, options) {
22
24
  this.modalOption.set(options);
23
25
  const randomId = Math.floor(Math.random() * 100000000000);
24
- const modalContentComp = (await import('./acorex-components-modal-modal-content.component-DhpujG4d.mjs')).AXModalContentComponent;
25
- const ref = await this.overlayService.create(modalContentComp, {
26
- position: options?.position,
27
- backdrop: options?.backdrop,
28
- inputs: {
29
- __content__: content,
30
- inputs: { ...options?.inputs },
31
- id: randomId,
32
- },
33
- });
34
- this.modalList.set(randomId, ref);
35
- return {
36
- id: randomId,
26
+ const modalContentComp = (await import('./acorex-components-modal-modal-content.component-zmFWBaiD.mjs')).AXModalContentComponent;
27
+ const onClose = new Subject();
28
+ const returnRef = {
37
29
  close: (data) => {
38
30
  this.close(randomId, data);
39
31
  },
@@ -43,40 +35,95 @@ class AXModalStateService {
43
35
  minimize: () => {
44
36
  this.minimize(randomId);
45
37
  },
38
+ maximize: () => {
39
+ this.maximize(randomId);
40
+ },
41
+ restore: () => {
42
+ this.restore(randomId);
43
+ },
44
+ onClose,
46
45
  };
46
+ const finalInputs = { ...(cloneDeep(options?.inputs) ?? {}), ...{ __modal__: returnRef } };
47
+ const finalOptions = set(cloneDeep(options) ?? {}, 'inputs', finalInputs);
48
+ const ref = await this.overlayService.create(modalContentComp, {
49
+ position: options?.position,
50
+ backdrop: options?.backdrop,
51
+ inputs: {
52
+ __content__: content,
53
+ inputs: {
54
+ ...finalOptions?.inputs,
55
+ },
56
+ id: randomId,
57
+ },
58
+ });
59
+ this.modalList.set(randomId, { overlay: ref, modal: returnRef });
60
+ return returnRef;
47
61
  }
48
62
  async close(id, data) {
49
63
  const ref = this.modalList.get(id);
50
64
  if (!ref)
51
65
  return;
52
- ref.instance.destroy();
66
+ ref.modal.onClose.next(data);
67
+ ref.overlay.instance.destroy();
53
68
  this.modalList.delete(id);
54
69
  }
55
70
  async setInputs(id, values) {
56
- const ref = this.modalList.get(id);
71
+ const ref = this.modalList.get(id).overlay.instance;
57
72
  if (!ref)
58
73
  return;
59
- if (ref.instance instanceof ComponentRef) {
60
- const comRef = ref.instance;
74
+ if (ref instanceof ComponentRef) {
75
+ const comRef = ref;
61
76
  Object.entries(values).forEach((v) => {
62
77
  comRef.setInput(v[0], v[1]);
63
78
  });
64
79
  }
65
80
  else {
66
- ref.instance.context.inputs.set(values);
81
+ ref.context.inputs.set(values);
67
82
  }
68
83
  }
69
84
  async minimize(id) {
70
- const ref = this.modalList.get(id);
85
+ const ref = this.modalList.get(id).overlay.instance;
86
+ if (!ref)
87
+ return;
88
+ if (ref instanceof ComponentRef) {
89
+ ref.instance.minimize();
90
+ }
91
+ else {
92
+ ref.context.minimize();
93
+ }
94
+ }
95
+ async maximize(id) {
96
+ const ref = this.modalList.get(id).overlay.instance;
71
97
  if (!ref)
72
98
  return;
73
- if (ref.instance instanceof ComponentRef) {
74
- ref.instance.instance.modalSizeHandler();
99
+ if (ref instanceof ComponentRef) {
100
+ ref.instance.maximize();
75
101
  }
76
102
  else {
77
- ref.instance.context.modalSizeHandler();
103
+ ref.context.maximize();
78
104
  }
79
105
  }
106
+ async restore(id) {
107
+ const ref = this.modalList.get(id).overlay.instance;
108
+ if (!ref)
109
+ return;
110
+ if (ref instanceof ComponentRef) {
111
+ ref.instance.restore();
112
+ }
113
+ else {
114
+ ref.context.restore();
115
+ }
116
+ }
117
+ getMapIndexOf(targetKey) {
118
+ let index = 0;
119
+ for (const key of this.modalList.keys()) {
120
+ if (key === targetKey) {
121
+ return index;
122
+ }
123
+ index++;
124
+ }
125
+ return -1;
126
+ }
80
127
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.5", ngImport: i0, type: AXModalStateService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
81
128
  static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.2.5", ngImport: i0, type: AXModalStateService, providedIn: 'root' }); }
82
129
  }
@@ -115,6 +162,16 @@ class AXModalComponent extends NXComponent {
115
162
  return;
116
163
  this.ref().minimize();
117
164
  }
165
+ async maximize() {
166
+ if (!this.ref())
167
+ return;
168
+ this.ref().maximize();
169
+ }
170
+ async restore() {
171
+ if (!this.ref())
172
+ return;
173
+ this.ref().restore();
174
+ }
118
175
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.5", ngImport: i0, type: AXModalComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
119
176
  static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.2.0", version: "19.2.5", type: AXModalComponent, isStandalone: true, selector: "ax-modal", viewQueries: [{ propertyName: "template", first: true, predicate: TemplateRef, descendants: true, isSignal: true }], usesInheritance: true, ngImport: i0, template: `
120
177
  <ng-template #contentTemplate>
@@ -144,6 +201,7 @@ class AXModalService {
144
201
  async open(content, options) {
145
202
  const ref = await this.stateService.open(content, options);
146
203
  this.ref.set(ref);
204
+ return ref;
147
205
  }
148
206
  async close() {
149
207
  if (!this.ref())
@@ -161,6 +219,16 @@ class AXModalService {
161
219
  return;
162
220
  this.ref().minimize();
163
221
  }
222
+ async maximize() {
223
+ if (!this.ref())
224
+ return;
225
+ this.ref().maximize();
226
+ }
227
+ async restore() {
228
+ if (!this.ref())
229
+ return;
230
+ this.ref().restore();
231
+ }
164
232
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.5", ngImport: i0, type: AXModalService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
165
233
  static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.2.5", ngImport: i0, type: AXModalService }); }
166
234
  }
@@ -184,9 +252,31 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.5", ngImpor
184
252
  }]
185
253
  }] });
186
254
 
255
+ class AXModalComponentBase {
256
+ close(data = null) {
257
+ this.__modal__.close(data);
258
+ }
259
+ minimize() {
260
+ this.__modal__.minimize();
261
+ }
262
+ restore() {
263
+ this.__modal__.restore();
264
+ }
265
+ maximize() {
266
+ this.__modal__.maximize();
267
+ }
268
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.5", ngImport: i0, type: AXModalComponentBase, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
269
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "19.2.5", type: AXModalComponentBase, isStandalone: true, inputs: { __modal__: "__modal__" }, ngImport: i0 }); }
270
+ }
271
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.5", ngImport: i0, type: AXModalComponentBase, decorators: [{
272
+ type: Directive
273
+ }], propDecorators: { __modal__: [{
274
+ type: Input
275
+ }] } });
276
+
187
277
  /**
188
278
  * Generated bundle index. Do not edit.
189
279
  */
190
280
 
191
- export { AXModalStateService as A, AXModalFooterComponent as a, AXModalComponent as b, AXModalModule as c, AXModalService as d };
192
- //# sourceMappingURL=acorex-components-modal-acorex-components-modal-Bs1CnBt8.mjs.map
281
+ export { AXModalStateService as A, AXModalFooterComponent as a, AXModalComponent as b, AXModalModule as c, AXModalService as d, AXModalComponentBase as e };
282
+ //# sourceMappingURL=acorex-components-modal-acorex-components-modal-BzlZIwq8.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"acorex-components-modal-acorex-components-modal-BzlZIwq8.mjs","sources":["../../../../libs/components/modal/src/lib/modal-footer/modal-footer.component.ts","../../../../libs/components/modal/src/lib/modal-footer/modal-footer.component.html","../../../../libs/components/modal/src/lib/modal-state.service.ts","../../../../libs/components/modal/src/lib/modal.component.ts","../../../../libs/components/modal/src/lib/modal.service.ts","../../../../libs/components/modal/src/lib/modal.module.ts","../../../../libs/components/modal/src/lib/modal.types.ts","../../../../libs/components/modal/src/acorex-components-modal.ts"],"sourcesContent":["import { ChangeDetectionStrategy, Component, ViewEncapsulation } from '@angular/core';\n\n@Component({\n selector: 'ax-modal-footer',\n templateUrl: './modal-footer.component.html',\n styleUrl: './modal-footer.component.scss',\n imports: [],\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class AXModalFooterComponent {}\n","<ng-content select=\"ax-modal-footer\">\n <ng-content select=\"ax-prefix\"></ng-content>\n <ng-content select=\"ax-suffix\"></ng-content>\n</ng-content>\n","import { AXOverlayRef, AXOverlayService } from '@acorex/cdk/overlay';\nimport { AXComponentContent, AXComponentInputs } from '@acorex/core/components';\nimport { ComponentRef, inject, Injectable, signal } from '@angular/core';\nimport { cloneDeep, set } from 'lodash-es';\nimport { Subject } from 'rxjs';\nimport { AXModalContentComponent } from './modal-content/modal-content.component';\nimport { AXModalOptions, AXModalRef } from './modal.types';\n\n@Injectable({\n providedIn: 'root',\n})\nexport class AXModalStateService {\n private modalList = new Map<number, { overlay: AXOverlayRef<AXModalContentComponent>; modal: AXModalRef }>();\n private overlayService = inject(AXOverlayService);\n modalOption = signal<AXModalOptions>(null);\n\n async open<TResult = any>(content: AXComponentContent, options?: AXModalOptions): Promise<AXModalRef<TResult>> {\n this.modalOption.set(options);\n const randomId = Math.floor(Math.random() * 100000000000);\n const modalContentComp = (await import('./modal-content/modal-content.component')).AXModalContentComponent;\n const onClose = new Subject<TResult>();\n\n const returnRef: AXModalRef = {\n close: (data) => {\n this.close(randomId, data);\n },\n setInputs: (values: AXComponentInputs) => {\n this.setInputs(randomId, values);\n },\n minimize: () => {\n this.minimize(randomId);\n },\n maximize: () => {\n this.maximize(randomId);\n },\n restore: () => {\n this.restore(randomId);\n },\n onClose,\n };\n\n const finalInputs = { ...(cloneDeep(options?.inputs) ?? {}), ...{ __modal__: returnRef } };\n const finalOptions = set(cloneDeep(options) ?? {}, 'inputs', finalInputs);\n\n const ref = await this.overlayService.create(modalContentComp, {\n position: options?.position,\n backdrop: options?.backdrop,\n inputs: {\n __content__: content,\n inputs: {\n ...finalOptions?.inputs,\n },\n id: randomId,\n },\n });\n\n this.modalList.set(randomId, { overlay: ref, modal: returnRef });\n\n return returnRef;\n }\n\n async close<TResult = any>(id: number, data?: TResult) {\n const ref = this.modalList.get(id);\n if (!ref) return;\n ref.modal.onClose.next(data);\n ref.overlay.instance.destroy();\n this.modalList.delete(id);\n }\n\n async setInputs(id: number, values: AXComponentInputs) {\n const ref = this.modalList.get(id).overlay.instance;\n if (!ref) return;\n if (ref instanceof ComponentRef) {\n const comRef = ref as ComponentRef<any>;\n Object.entries(values).forEach((v) => {\n comRef.setInput(v[0], v[1]);\n });\n } else {\n ref.context.inputs.set(values);\n }\n }\n\n async minimize(id: number) {\n const ref = this.modalList.get(id).overlay.instance;\n if (!ref) return;\n if (ref instanceof ComponentRef) {\n ref.instance.minimize();\n } else {\n ref.context.minimize();\n }\n }\n\n async maximize(id: number) {\n const ref = this.modalList.get(id).overlay.instance;\n if (!ref) return;\n if (ref instanceof ComponentRef) {\n ref.instance.maximize();\n } else {\n ref.context.maximize();\n }\n }\n\n async restore(id: number) {\n const ref = this.modalList.get(id).overlay.instance;\n if (!ref) return;\n if (ref instanceof ComponentRef) {\n ref.instance.restore();\n } else {\n ref.context.restore();\n }\n }\n\n getMapIndexOf(targetKey: any) {\n let index = 0;\n for (const key of this.modalList.keys()) {\n if (key === targetKey) {\n return index;\n }\n index++;\n }\n return -1;\n }\n}\n","import { NXComponent } from '@acorex/components/common';\nimport { AXComponentInputs } from '@acorex/core/components';\nimport {\n ChangeDetectionStrategy,\n Component,\n inject,\n signal,\n TemplateRef,\n viewChild,\n ViewEncapsulation,\n} from '@angular/core';\nimport { AXModalStateService } from './modal-state.service';\nimport { AXModalOptions, AXModalRef } from './modal.types';\n\n@Component({\n selector: 'ax-modal',\n template: `\n <ng-template #contentTemplate>\n <ng-content></ng-content>\n </ng-template>\n `,\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class AXModalComponent extends NXComponent {\n private service = inject(AXModalStateService);\n protected template = viewChild(TemplateRef);\n private ref = signal<AXModalRef<any>>(null);\n\n async open(options?: AXModalOptions) {\n const ref = await this.service.open(this.template(), options);\n this.ref.set(ref);\n return ref;\n }\n\n async close() {\n if (this.ref()) return;\n this.ref().close();\n }\n\n async setInputs(values: AXComponentInputs) {\n if (!this.ref()) return;\n const transform = { inputs: values };\n this.ref().setInputs(transform);\n }\n\n async minimize() {\n if (!this.ref()) return;\n this.ref().minimize();\n }\n\n async maximize() {\n if (!this.ref()) return;\n this.ref().maximize();\n }\n\n async restore() {\n if (!this.ref()) return;\n this.ref().restore();\n }\n}\n","import { AXComponentContent, AXComponentInputs } from '@acorex/core/components';\nimport { inject, Injectable, signal } from '@angular/core';\nimport { AXModalStateService } from './modal-state.service';\nimport { AXModalOptions, AXModalRef } from './modal.types';\n\n@Injectable()\nexport class AXModalService {\n private stateService = inject(AXModalStateService);\n private ref = signal<AXModalRef<any>>(null);\n\n async open(content: AXComponentContent, options?: AXModalOptions): Promise<AXModalRef> {\n const ref = await this.stateService.open(content, options);\n this.ref.set(ref);\n return ref;\n }\n\n async close() {\n if (!this.ref()) return;\n this.ref().close();\n }\n\n async setInputs(values: AXComponentInputs) {\n if (!this.ref()) return;\n const transform = { inputs: values };\n this.ref().setInputs(transform);\n }\n\n async minimize() {\n if (!this.ref()) return;\n this.ref().minimize();\n }\n\n async maximize() {\n if (!this.ref()) return;\n this.ref().maximize();\n }\n\n async restore() {\n if (!this.ref()) return;\n this.ref().restore();\n }\n}\n","import { NgModule } from '@angular/core';\nimport { AXModalFooterComponent } from './modal-footer/modal-footer.component';\nimport { AXModalComponent } from './modal.component';\nimport { AXModalService } from './modal.service';\n\nconst COMPONENT = [AXModalComponent, AXModalFooterComponent];\n\nconst MODULES = [];\n\n@NgModule({\n imports: [...MODULES, ...COMPONENT],\n exports: [...COMPONENT],\n providers: [AXModalService],\n})\nexport class AXModalModule {}\n","import { AXOverlayOptions } from '@acorex/cdk/overlay';\nimport { AXComponentInputs } from '@acorex/core/components';\nimport { Directive, Input } from '@angular/core';\nimport { Subject } from 'rxjs';\n\nexport interface AXModalOptions extends AXOverlayOptions {\n title?: string;\n buttons?: {\n minimize?: {\n enable: boolean;\n position: 'bottom-right' | 'bottom-left';\n };\n maximize?: boolean;\n close?: boolean;\n };\n draggable?: boolean;\n size?: 'sm' | 'md' | 'lg' | 'full' | 'fit';\n}\n\nexport interface AXModalRef<TResult = any> {\n minimize: () => void;\n maximize: () => void;\n restore: () => void;\n close: (data?: TResult) => void;\n setInputs: (values: AXComponentInputs) => void;\n onClose: Subject<TResult>;\n}\n\n@Directive()\nexport abstract class AXModalComponentBase {\n @Input()\n private __modal__: AXModalRef;\n\n public close(data: any = null) {\n this.__modal__.close(data);\n }\n\n public minimize() {\n this.__modal__.minimize();\n }\n\n public restore() {\n this.__modal__.restore();\n }\n\n public maximize() {\n this.__modal__.maximize();\n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
@@ -0,0 +1,187 @@
1
+ import * as i1 from '@acorex/cdk/focus-trap';
2
+ import { AXFocusTrapDirective } from '@acorex/cdk/focus-trap';
3
+ import { AXButtonComponent } from '@acorex/components/button';
4
+ import { NXComponent } from '@acorex/components/common';
5
+ import * as i3 from '@acorex/components/decorators';
6
+ import { AXDecoratorModule } from '@acorex/components/decorators';
7
+ import { trigger, transition, style, animate } from '@angular/animations';
8
+ import * as i2 from '@angular/common';
9
+ import { CommonModule } from '@angular/common';
10
+ import * as i0 from '@angular/core';
11
+ import { input, model, inject, viewChild, computed, TemplateRef, signal, afterNextRender, effect, HostBinding, HostListener, ChangeDetectionStrategy, ViewEncapsulation, Component } from '@angular/core';
12
+ import { A as AXModalStateService, a as AXModalFooterComponent } from './acorex-components-modal-acorex-components-modal-BzlZIwq8.mjs';
13
+
14
+ class AXModalContentComponent extends NXComponent {
15
+ constructor() {
16
+ super(...arguments);
17
+ this.__content__ = input.required();
18
+ this.id = input();
19
+ this.inputs = model();
20
+ this.serviceState = inject(AXModalStateService);
21
+ this.modalContainer = viewChild('c');
22
+ this.footer = viewChild(AXModalFooterComponent);
23
+ this.isTemplate = computed(() => this.__content__() instanceof TemplateRef);
24
+ this.component = computed(() => this.__content__());
25
+ this.template = computed(() => this.__content__());
26
+ this.modalSizeState = signal('normal');
27
+ this.isMouseDown = signal(false);
28
+ this.offsetX = signal(0);
29
+ this.offsetY = signal(0);
30
+ this.prevLeft = signal('');
31
+ this.prevTop = signal('');
32
+ this.backdropState = computed(() => this.serviceState.modalOption()?.backdrop?.enabled);
33
+ this.closeHeaderButton = computed(() => this.serviceState.modalOption()?.buttons.close);
34
+ this.backdropBackground = computed(() => this.serviceState.modalOption()?.backdrop?.background);
35
+ this.backdropClass = computed(() => this.serviceState.modalOption()?.backdrop?.cssClass);
36
+ this.backdropCloseOnClick = computed(() => this.serviceState.modalOption()?.backdrop?.closeOnClick);
37
+ this.minimizePosition = computed(() => this.serviceState.modalOption()?.buttons.minimize.position);
38
+ this.minimizeState = computed(() => this.serviceState.modalOption()?.buttons.minimize.enable);
39
+ this.maximizeState = computed(() => this.serviceState.modalOption()?.buttons.maximize);
40
+ this.modalSize = computed(() => this.serviceState.modalOption()?.size || 'fit');
41
+ this.headerTitle = computed(() => this.serviceState.modalOption()?.title);
42
+ this.draggable = computed(() => this.serviceState.modalOption()?.draggable);
43
+ this.#init = afterNextRender(() => {
44
+ const popFooter = this.nativeElement.querySelector('.ax-modal-footer');
45
+ const footer = this.nativeElement.querySelector('.ax-modal-content ax-modal-footer');
46
+ if (footer) {
47
+ popFooter?.append(footer);
48
+ }
49
+ });
50
+ this.fadeInOut = true;
51
+ this.#eff = effect(() => {
52
+ const host = this.nativeElement;
53
+ if (this.draggable())
54
+ host.classList.add('ax-draggable');
55
+ if (!this.backdropState())
56
+ return;
57
+ host.classList.add('ax-backdrop');
58
+ if (!this.backdropBackground())
59
+ return;
60
+ if (this.backdropClass()) {
61
+ host.classList.add(this.backdropClass());
62
+ }
63
+ else {
64
+ host.classList.add('ax-default-backdrop');
65
+ }
66
+ });
67
+ }
68
+ #init;
69
+ closeHandler() {
70
+ this.serviceState.close(this.id());
71
+ }
72
+ minimize() {
73
+ const index = this.serviceState.getMapIndexOf(this.id());
74
+ this.modalContainer().nativeElement.style.top = `auto`;
75
+ this.modalContainer().nativeElement.style.bottom = `0`;
76
+ if (this.backdropState())
77
+ this.nativeElement.classList.remove('ax-backdrop');
78
+ this.modalContainer().nativeElement.classList.remove('ax-normal-modal');
79
+ this.modalContainer().nativeElement.classList.remove('ax-maximize-modal');
80
+ this.modalContainer().nativeElement.classList.add(`ax-minimize-modal`);
81
+ if (this.minimizePosition() === 'bottom-right') {
82
+ this.modalContainer().nativeElement.style.left = `auto`;
83
+ this.modalContainer().nativeElement.style.right = `${index * this.modalContainer().nativeElement.offsetWidth}px`;
84
+ }
85
+ else {
86
+ this.modalContainer().nativeElement.style.right = `auto`;
87
+ this.modalContainer().nativeElement.style.left = `${index * this.modalContainer().nativeElement.offsetWidth}px`;
88
+ }
89
+ this.modalSizeState.set('minimize');
90
+ }
91
+ maximize() {
92
+ if (this.modalSizeState() === 'minimize')
93
+ this.restore();
94
+ this.modalContainer().nativeElement.style.top = `auto`;
95
+ this.modalContainer().nativeElement.style.right = `auto`;
96
+ this.modalContainer().nativeElement.style.left = `auto`;
97
+ this.modalContainer().nativeElement.style.bottom = `auto`;
98
+ this.modalContainer().nativeElement.classList.remove(`ax-minimize-modal`);
99
+ this.modalContainer().nativeElement.classList.remove(`ax-normal-modal`);
100
+ this.modalContainer().nativeElement.classList.add('ax-maximize-modal');
101
+ this.modalSizeState.set('maximize');
102
+ }
103
+ restore() {
104
+ this.modalContainer().nativeElement.style.bottom = `auto`;
105
+ this.modalContainer().nativeElement.style.right = `auto`;
106
+ this.modalContainer().nativeElement.style.left = this.prevLeft();
107
+ this.modalContainer().nativeElement.style.top = this.prevTop();
108
+ if (this.backdropState())
109
+ this.nativeElement.classList.add('ax-backdrop');
110
+ this.modalContainer().nativeElement.classList.remove(`ax-minimize-modal`);
111
+ this.modalContainer().nativeElement.classList.remove(`ax-maximize-modal`);
112
+ this.modalContainer().nativeElement.classList.add('ax-normal-modal');
113
+ this.modalSizeState.set('normal');
114
+ }
115
+ pointerDownHandler(e) {
116
+ if (!this.draggable() || this.modalSizeState() !== 'normal')
117
+ return;
118
+ this.isMouseDown.set(true);
119
+ this.modalContainer().nativeElement.style.transition = 'none';
120
+ this.offsetX.set(e.clientX - this.modalContainer().nativeElement.offsetLeft);
121
+ this.offsetY.set(e.clientY - this.modalContainer().nativeElement.offsetTop);
122
+ }
123
+ pointerMoveHandler(e) {
124
+ if (!this.draggable() || this.modalSizeState() !== 'normal')
125
+ return;
126
+ if (!this.isMouseDown())
127
+ return;
128
+ this.modalContainer().nativeElement.style.left = `${e.clientX - this.offsetX()}px`;
129
+ this.modalContainer().nativeElement.style.top = `${e.clientY - this.offsetY()}px`;
130
+ this.prevLeft.set(`${e.clientX - this.offsetX()}px`);
131
+ this.prevTop.set(`${e.clientY - this.offsetY()}px`);
132
+ }
133
+ pointerUpHandler() {
134
+ if (!this.draggable() || this.modalSizeState() !== 'normal')
135
+ return;
136
+ this.modalContainer().nativeElement.style.transition = '0.5s all ease';
137
+ this.isMouseDown.set(false);
138
+ }
139
+ backdropCloseHandler(e) {
140
+ if (!this.backdropCloseOnClick())
141
+ return;
142
+ if (e.target === e.currentTarget) {
143
+ this.closeHandler();
144
+ }
145
+ }
146
+ #eff;
147
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.5", ngImport: i0, type: AXModalContentComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
148
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.2.5", type: AXModalContentComponent, isStandalone: true, selector: "ax-modal-content", inputs: { __content__: { classPropertyName: "__content__", publicName: "__content__", isSignal: true, isRequired: true, transformFunction: null }, id: { classPropertyName: "id", publicName: "id", isSignal: true, isRequired: false, transformFunction: null }, inputs: { classPropertyName: "inputs", publicName: "inputs", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { inputs: "inputsChange" }, host: { listeners: { "pointermove": "pointerMoveHandler($event)", "pointerup": "pointerUpHandler($event)", "pointerleave": "pointerUpHandler($event)", "click": "backdropCloseHandler($event)" }, properties: { "@fadeInOut": "this.fadeInOut" } }, viewQueries: [{ propertyName: "modalContainer", first: true, predicate: ["c"], descendants: true, isSignal: true }, { propertyName: "footer", first: true, predicate: AXModalFooterComponent, descendants: true, isSignal: true }], usesInheritance: true, hostDirectives: [{ directive: i1.AXFocusTrapDirective }], ngImport: i0, template: "<div #c class=\"ax-modal-container ax-{{ modalSizeState() }}-modal ax-modal-{{ modalSize() }}\">\n <div (pointerdown)=\"pointerDownHandler($event)\" class=\"ax-modal-header\">\n <ax-text>{{ headerTitle() }}</ax-text>\n\n <div>\n @if (minimizeState()) {\n <ax-button class=\"ax-sm\" (onClick)=\"minimize()\" look=\"blank\" color=\"primary\">\n <ax-icon class=\"ax-icon ax-icon-minimize\"> </ax-icon>\n </ax-button>\n }\n\n @if (modalSizeState() !== 'normal') {\n <ax-button class=\"ax-sm\" (onClick)=\"restore()\" look=\"blank\" color=\"primary\">\n <ax-icon class=\"ax-icon ax-icon-maximize\"> </ax-icon>\n </ax-button>\n }\n\n @if (maximizeState()) {\n <ax-button class=\"ax-sm\" (onClick)=\"maximize()\" look=\"blank\" color=\"primary\">\n <ax-icon class=\"ax-icon ax-icon-full-screen\"> </ax-icon>\n </ax-button>\n }\n\n @if (closeHeaderButton()) {\n <ax-button class=\"ax-sm\" look=\"blank\" (onClick)=\"closeHandler()\" color=\"danger\">\n <ax-icon class=\"ax-icon ax-icon-close\"> </ax-icon>\n </ax-button>\n }\n </div>\n </div>\n <div class=\"ax-modal-content\">\n @if (isTemplate()) {\n <ng-container [ngTemplateOutlet]=\"this.template()\" [ngTemplateOutletContext]=\"inputs()\"></ng-container>\n } @else {\n <ng-container [ngComponentOutlet]=\"this.component()\" [ngComponentOutletInputs]=\"inputs()\"></ng-container>\n }\n </div>\n <div class=\"ax-modal-footer\"></div>\n</div>\n", styles: ["ax-modal-content{z-index:100;touch-action:none;-webkit-user-select:none;user-select:none}ax-modal-content.ax-backdrop{position:fixed;top:0;left:0;width:100vw;height:100vh}ax-modal-content.ax-default-backdrop{background-color:#00000080}ax-modal-content.ax-draggable .ax-modal-header:hover{cursor:move}ax-modal-content .ax-modal-container{position:fixed;z-index:110;background-color:rgba(var(--ax-sys-color-lightest-surface));display:flex;flex-direction:column;justify-content:space-between;border-radius:var(--ax-sys-border-radius);border:1px solid rgba(var(--ax-sys-color-border-lightest-surface));overflow:hidden;transition:.5s all ease;max-height:90vh;max-width:100vw}ax-modal-content .ax-modal-container.ax-modal-full{max-height:100vh!important;width:100%;height:100%}ax-modal-content .ax-modal-container.ax-modal-fit{width:fit-content}@media (min-width: 320px) and (max-width: 640px){ax-modal-content .ax-modal-container.ax-modal-sm,ax-modal-content .ax-modal-container.ax-modal-md,ax-modal-content .ax-modal-container.ax-modal-lg,ax-modal-content .ax-modal-container.ax-modal-fit{width:93vw}}@media (min-width: 768px){ax-modal-content .ax-modal-container.ax-modal-sm{width:55vw}ax-modal-content .ax-modal-container.ax-modal-md{width:65vw}ax-modal-content .ax-modal-container.ax-modal-lg{width:75vw}}@media (min-width: 1280px){ax-modal-content .ax-modal-container.ax-modal-sm{width:30vw}ax-modal-content .ax-modal-container.ax-modal-md{width:50vw}ax-modal-content .ax-modal-container.ax-modal-lg{width:85vw}}@media (min-width: 1536px){ax-modal-content .ax-modal-container.ax-modal-sm{width:25vw}ax-modal-content .ax-modal-container.ax-modal-md{width:40vw}ax-modal-content .ax-modal-container.ax-modal-lg{width:65vw}}ax-modal-content .ax-modal-container.ax-normal-modal{top:50%;left:50%;transform:translate(-50%,-50%)}ax-modal-content .ax-modal-container.ax-normal-modal .ax-modal-content{display:block}ax-modal-content .ax-modal-container.ax-normal-modal .ax-modal-footer{display:block}ax-modal-content .ax-modal-container.ax-minimize-modal .ax-modal-content{display:none}ax-modal-content .ax-modal-container.ax-minimize-modal .ax-modal-footer{display:none}ax-modal-content .ax-modal-container.ax-maximize-modal{max-height:100vh!important;width:100%;height:100%}ax-modal-content .ax-modal-container.ax-maximize-modal .ax-modal-content{display:block}ax-modal-content .ax-modal-container.ax-maximize-modal .ax-modal-footer{display:block}ax-modal-content .ax-modal-container .ax-modal-header,ax-modal-content .ax-modal-container .ax-modal-footer,ax-modal-content .ax-modal-container .ax-modal-content{padding:.5rem}ax-modal-content .ax-modal-container .ax-modal-header,ax-modal-content .ax-modal-container .ax-modal-footer{height:fit-content}ax-modal-content .ax-modal-container .ax-modal-content{overflow:auto;border-block:1px solid rgba(var(--ax-sys-color-border-lightest-surface));flex-grow:1}ax-modal-content .ax-modal-container .ax-modal-header{display:flex;justify-content:space-between;align-items:center;gap:.5rem}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i2.NgComponentOutlet, selector: "[ngComponentOutlet]", inputs: ["ngComponentOutlet", "ngComponentOutletInputs", "ngComponentOutletInjector", "ngComponentOutletContent", "ngComponentOutletNgModule", "ngComponentOutletNgModuleFactory"], exportAs: ["ngComponentOutlet"] }, { kind: "directive", type: i2.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: AXButtonComponent, selector: "ax-button", inputs: ["disabled", "size", "tabIndex", "color", "look", "text", "toggleable", "selected", "iconOnly", "type", "loadingText"], outputs: ["onBlur", "onFocus", "onClick", "selectedChange", "toggleableChange", "lookChange", "colorChange", "disabledChange", "loadingTextChange"] }, { kind: "ngmodule", type: AXDecoratorModule }, { kind: "component", type: i3.AXDecoratorIconComponent, selector: "ax-icon", inputs: ["icon"] }, { kind: "component", type: i3.AXDecoratorGenericComponent, selector: "ax-footer, ax-header, ax-content, ax-divider, ax-form-hint, ax-prefix, ax-suffix, ax-text, ax-title, ax-subtitle, ax-placeholder, ax-overlay" }], animations: [
149
+ trigger('fadeInOut', [
150
+ transition(':enter', [
151
+ style({ opacity: 0, transform: 'scale(0.85)' }),
152
+ animate('200ms ease-out', style({ opacity: 1, transform: 'scale(1)' })),
153
+ ]),
154
+ transition(':leave', [animate('200ms ease-in', style({ opacity: 0, transform: 'scale(0.85)' }))]),
155
+ ]),
156
+ ], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
157
+ }
158
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.5", ngImport: i0, type: AXModalContentComponent, decorators: [{
159
+ type: Component,
160
+ args: [{ selector: 'ax-modal-content', imports: [CommonModule, AXButtonComponent, AXDecoratorModule], encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, hostDirectives: [AXFocusTrapDirective], animations: [
161
+ trigger('fadeInOut', [
162
+ transition(':enter', [
163
+ style({ opacity: 0, transform: 'scale(0.85)' }),
164
+ animate('200ms ease-out', style({ opacity: 1, transform: 'scale(1)' })),
165
+ ]),
166
+ transition(':leave', [animate('200ms ease-in', style({ opacity: 0, transform: 'scale(0.85)' }))]),
167
+ ]),
168
+ ], template: "<div #c class=\"ax-modal-container ax-{{ modalSizeState() }}-modal ax-modal-{{ modalSize() }}\">\n <div (pointerdown)=\"pointerDownHandler($event)\" class=\"ax-modal-header\">\n <ax-text>{{ headerTitle() }}</ax-text>\n\n <div>\n @if (minimizeState()) {\n <ax-button class=\"ax-sm\" (onClick)=\"minimize()\" look=\"blank\" color=\"primary\">\n <ax-icon class=\"ax-icon ax-icon-minimize\"> </ax-icon>\n </ax-button>\n }\n\n @if (modalSizeState() !== 'normal') {\n <ax-button class=\"ax-sm\" (onClick)=\"restore()\" look=\"blank\" color=\"primary\">\n <ax-icon class=\"ax-icon ax-icon-maximize\"> </ax-icon>\n </ax-button>\n }\n\n @if (maximizeState()) {\n <ax-button class=\"ax-sm\" (onClick)=\"maximize()\" look=\"blank\" color=\"primary\">\n <ax-icon class=\"ax-icon ax-icon-full-screen\"> </ax-icon>\n </ax-button>\n }\n\n @if (closeHeaderButton()) {\n <ax-button class=\"ax-sm\" look=\"blank\" (onClick)=\"closeHandler()\" color=\"danger\">\n <ax-icon class=\"ax-icon ax-icon-close\"> </ax-icon>\n </ax-button>\n }\n </div>\n </div>\n <div class=\"ax-modal-content\">\n @if (isTemplate()) {\n <ng-container [ngTemplateOutlet]=\"this.template()\" [ngTemplateOutletContext]=\"inputs()\"></ng-container>\n } @else {\n <ng-container [ngComponentOutlet]=\"this.component()\" [ngComponentOutletInputs]=\"inputs()\"></ng-container>\n }\n </div>\n <div class=\"ax-modal-footer\"></div>\n</div>\n", styles: ["ax-modal-content{z-index:100;touch-action:none;-webkit-user-select:none;user-select:none}ax-modal-content.ax-backdrop{position:fixed;top:0;left:0;width:100vw;height:100vh}ax-modal-content.ax-default-backdrop{background-color:#00000080}ax-modal-content.ax-draggable .ax-modal-header:hover{cursor:move}ax-modal-content .ax-modal-container{position:fixed;z-index:110;background-color:rgba(var(--ax-sys-color-lightest-surface));display:flex;flex-direction:column;justify-content:space-between;border-radius:var(--ax-sys-border-radius);border:1px solid rgba(var(--ax-sys-color-border-lightest-surface));overflow:hidden;transition:.5s all ease;max-height:90vh;max-width:100vw}ax-modal-content .ax-modal-container.ax-modal-full{max-height:100vh!important;width:100%;height:100%}ax-modal-content .ax-modal-container.ax-modal-fit{width:fit-content}@media (min-width: 320px) and (max-width: 640px){ax-modal-content .ax-modal-container.ax-modal-sm,ax-modal-content .ax-modal-container.ax-modal-md,ax-modal-content .ax-modal-container.ax-modal-lg,ax-modal-content .ax-modal-container.ax-modal-fit{width:93vw}}@media (min-width: 768px){ax-modal-content .ax-modal-container.ax-modal-sm{width:55vw}ax-modal-content .ax-modal-container.ax-modal-md{width:65vw}ax-modal-content .ax-modal-container.ax-modal-lg{width:75vw}}@media (min-width: 1280px){ax-modal-content .ax-modal-container.ax-modal-sm{width:30vw}ax-modal-content .ax-modal-container.ax-modal-md{width:50vw}ax-modal-content .ax-modal-container.ax-modal-lg{width:85vw}}@media (min-width: 1536px){ax-modal-content .ax-modal-container.ax-modal-sm{width:25vw}ax-modal-content .ax-modal-container.ax-modal-md{width:40vw}ax-modal-content .ax-modal-container.ax-modal-lg{width:65vw}}ax-modal-content .ax-modal-container.ax-normal-modal{top:50%;left:50%;transform:translate(-50%,-50%)}ax-modal-content .ax-modal-container.ax-normal-modal .ax-modal-content{display:block}ax-modal-content .ax-modal-container.ax-normal-modal .ax-modal-footer{display:block}ax-modal-content .ax-modal-container.ax-minimize-modal .ax-modal-content{display:none}ax-modal-content .ax-modal-container.ax-minimize-modal .ax-modal-footer{display:none}ax-modal-content .ax-modal-container.ax-maximize-modal{max-height:100vh!important;width:100%;height:100%}ax-modal-content .ax-modal-container.ax-maximize-modal .ax-modal-content{display:block}ax-modal-content .ax-modal-container.ax-maximize-modal .ax-modal-footer{display:block}ax-modal-content .ax-modal-container .ax-modal-header,ax-modal-content .ax-modal-container .ax-modal-footer,ax-modal-content .ax-modal-container .ax-modal-content{padding:.5rem}ax-modal-content .ax-modal-container .ax-modal-header,ax-modal-content .ax-modal-container .ax-modal-footer{height:fit-content}ax-modal-content .ax-modal-container .ax-modal-content{overflow:auto;border-block:1px solid rgba(var(--ax-sys-color-border-lightest-surface));flex-grow:1}ax-modal-content .ax-modal-container .ax-modal-header{display:flex;justify-content:space-between;align-items:center;gap:.5rem}\n"] }]
169
+ }], propDecorators: { pointerMoveHandler: [{
170
+ type: HostListener,
171
+ args: ['pointermove', ['$event']]
172
+ }], pointerUpHandler: [{
173
+ type: HostListener,
174
+ args: ['pointerup', ['$event']]
175
+ }, {
176
+ type: HostListener,
177
+ args: ['pointerleave', ['$event']]
178
+ }], backdropCloseHandler: [{
179
+ type: HostListener,
180
+ args: ['click', ['$event']]
181
+ }], fadeInOut: [{
182
+ type: HostBinding,
183
+ args: ['@fadeInOut']
184
+ }] } });
185
+
186
+ export { AXModalContentComponent };
187
+ //# sourceMappingURL=acorex-components-modal-modal-content.component-zmFWBaiD.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"acorex-components-modal-modal-content.component-zmFWBaiD.mjs","sources":["../../../../libs/components/modal/src/lib/modal-content/modal-content.component.ts","../../../../libs/components/modal/src/lib/modal-content/modal-content.component.html"],"sourcesContent":["import { AXFocusTrapDirective } from '@acorex/cdk/focus-trap';\nimport { AXButtonComponent } from '@acorex/components/button';\nimport { NXComponent } from '@acorex/components/common';\nimport { AXDecoratorModule } from '@acorex/components/decorators';\nimport { AXComponentContent, AXComponentInputs, AXComponentType } from '@acorex/core/components';\nimport { animate, style, transition, trigger } from '@angular/animations';\nimport { CommonModule } from '@angular/common';\nimport {\n afterNextRender,\n ChangeDetectionStrategy,\n Component,\n computed,\n effect,\n ElementRef,\n HostBinding,\n HostListener,\n inject,\n input,\n model,\n signal,\n TemplateRef,\n viewChild,\n ViewEncapsulation,\n} from '@angular/core';\nimport { AXModalFooterComponent } from '../modal-footer/modal-footer.component';\nimport { AXModalStateService } from '../modal-state.service';\n\n@Component({\n selector: 'ax-modal-content',\n templateUrl: './modal-content.component.html',\n styleUrl: './modal-content.component.scss',\n imports: [CommonModule, AXButtonComponent, AXDecoratorModule],\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n hostDirectives: [AXFocusTrapDirective],\n animations: [\n trigger('fadeInOut', [\n transition(':enter', [\n style({ opacity: 0, transform: 'scale(0.85)' }),\n animate('200ms ease-out', style({ opacity: 1, transform: 'scale(1)' })),\n ]),\n transition(':leave', [animate('200ms ease-in', style({ opacity: 0, transform: 'scale(0.85)' }))]),\n ]),\n ],\n})\nexport class AXModalContentComponent extends NXComponent {\n __content__ = input.required<AXComponentContent>();\n public id = input<number>();\n public inputs = model<AXComponentInputs>();\n private serviceState = inject(AXModalStateService);\n\n protected modalContainer = viewChild<ElementRef>('c');\n protected footer = viewChild<AXModalFooterComponent>(AXModalFooterComponent);\n\n protected isTemplate = computed(() => this.__content__() instanceof TemplateRef);\n public component = computed(() => this.__content__() as AXComponentType<any>);\n public template = computed(() => this.__content__() as TemplateRef<any>);\n protected modalSizeState = signal<'maximize' | 'minimize' | 'normal'>('normal');\n private isMouseDown = signal(false);\n private offsetX = signal(0);\n private offsetY = signal(0);\n private prevLeft = signal('');\n private prevTop = signal('');\n private backdropState = computed(() => this.serviceState.modalOption()?.backdrop?.enabled);\n protected closeHeaderButton = computed(() => this.serviceState.modalOption()?.buttons.close);\n private backdropBackground = computed(() => this.serviceState.modalOption()?.backdrop?.background);\n private backdropClass = computed(() => this.serviceState.modalOption()?.backdrop?.cssClass);\n private backdropCloseOnClick = computed(() => this.serviceState.modalOption()?.backdrop?.closeOnClick);\n private minimizePosition = computed(() => this.serviceState.modalOption()?.buttons.minimize.position);\n protected minimizeState = computed(() => this.serviceState.modalOption()?.buttons.minimize.enable);\n protected maximizeState = computed(() => this.serviceState.modalOption()?.buttons.maximize);\n protected modalSize = computed(() => this.serviceState.modalOption()?.size || 'fit');\n protected headerTitle = computed(() => this.serviceState.modalOption()?.title);\n private draggable = computed(() => this.serviceState.modalOption()?.draggable);\n\n #init = afterNextRender(() => {\n const popFooter = this.nativeElement.querySelector<HTMLDivElement>('.ax-modal-footer');\n const footer = this.nativeElement.querySelector<HTMLDivElement>('.ax-modal-content ax-modal-footer');\n if (footer) {\n popFooter?.append(footer);\n }\n });\n\n protected closeHandler() {\n this.serviceState.close(this.id());\n }\n\n minimize() {\n const index = this.serviceState.getMapIndexOf(this.id());\n\n this.modalContainer().nativeElement.style.top = `auto`;\n this.modalContainer().nativeElement.style.bottom = `0`;\n\n if (this.backdropState()) this.nativeElement.classList.remove('ax-backdrop');\n this.modalContainer().nativeElement.classList.remove('ax-normal-modal');\n this.modalContainer().nativeElement.classList.remove('ax-maximize-modal');\n this.modalContainer().nativeElement.classList.add(`ax-minimize-modal`);\n\n if (this.minimizePosition() === 'bottom-right') {\n this.modalContainer().nativeElement.style.left = `auto`;\n this.modalContainer().nativeElement.style.right = `${index * this.modalContainer().nativeElement.offsetWidth}px`;\n } else {\n this.modalContainer().nativeElement.style.right = `auto`;\n this.modalContainer().nativeElement.style.left = `${index * this.modalContainer().nativeElement.offsetWidth}px`;\n }\n\n this.modalSizeState.set('minimize');\n }\n\n maximize() {\n if (this.modalSizeState() === 'minimize') this.restore();\n\n this.modalContainer().nativeElement.style.top = `auto`;\n this.modalContainer().nativeElement.style.right = `auto`;\n this.modalContainer().nativeElement.style.left = `auto`;\n this.modalContainer().nativeElement.style.bottom = `auto`;\n\n this.modalContainer().nativeElement.classList.remove(`ax-minimize-modal`);\n this.modalContainer().nativeElement.classList.remove(`ax-normal-modal`);\n this.modalContainer().nativeElement.classList.add('ax-maximize-modal');\n this.modalSizeState.set('maximize');\n }\n\n restore() {\n this.modalContainer().nativeElement.style.bottom = `auto`;\n this.modalContainer().nativeElement.style.right = `auto`;\n this.modalContainer().nativeElement.style.left = this.prevLeft();\n this.modalContainer().nativeElement.style.top = this.prevTop();\n\n if (this.backdropState()) this.nativeElement.classList.add('ax-backdrop');\n this.modalContainer().nativeElement.classList.remove(`ax-minimize-modal`);\n this.modalContainer().nativeElement.classList.remove(`ax-maximize-modal`);\n this.modalContainer().nativeElement.classList.add('ax-normal-modal');\n this.modalSizeState.set('normal');\n }\n\n protected pointerDownHandler(e: MouseEvent) {\n if (!this.draggable() || this.modalSizeState() !== 'normal') return;\n this.isMouseDown.set(true);\n this.modalContainer().nativeElement.style.transition = 'none';\n this.offsetX.set(e.clientX - this.modalContainer().nativeElement.offsetLeft);\n this.offsetY.set(e.clientY - this.modalContainer().nativeElement.offsetTop);\n }\n\n @HostListener('pointermove', ['$event'])\n protected pointerMoveHandler(e: MouseEvent) {\n if (!this.draggable() || this.modalSizeState() !== 'normal') return;\n if (!this.isMouseDown()) return;\n this.modalContainer().nativeElement.style.left = `${e.clientX - this.offsetX()}px`;\n this.modalContainer().nativeElement.style.top = `${e.clientY - this.offsetY()}px`;\n this.prevLeft.set(`${e.clientX - this.offsetX()}px`);\n this.prevTop.set(`${e.clientY - this.offsetY()}px`);\n }\n\n @HostListener('pointerup', ['$event'])\n @HostListener('pointerleave', ['$event'])\n protected pointerUpHandler() {\n if (!this.draggable() || this.modalSizeState() !== 'normal') return;\n this.modalContainer().nativeElement.style.transition = '0.5s all ease';\n this.isMouseDown.set(false);\n }\n\n @HostListener('click', ['$event'])\n protected backdropCloseHandler(e: MouseEvent) {\n if (!this.backdropCloseOnClick()) return;\n if (e.target === e.currentTarget) {\n this.closeHandler();\n }\n }\n\n @HostBinding('@fadeInOut') fadeInOut = true;\n\n #eff = effect(() => {\n const host = this.nativeElement;\n if (this.draggable()) host.classList.add('ax-draggable');\n if (!this.backdropState()) return;\n host.classList.add('ax-backdrop');\n if (!this.backdropBackground()) return;\n if (this.backdropClass()) {\n host.classList.add(this.backdropClass());\n } else {\n host.classList.add('ax-default-backdrop');\n }\n });\n}\n","<div #c class=\"ax-modal-container ax-{{ modalSizeState() }}-modal ax-modal-{{ modalSize() }}\">\n <div (pointerdown)=\"pointerDownHandler($event)\" class=\"ax-modal-header\">\n <ax-text>{{ headerTitle() }}</ax-text>\n\n <div>\n @if (minimizeState()) {\n <ax-button class=\"ax-sm\" (onClick)=\"minimize()\" look=\"blank\" color=\"primary\">\n <ax-icon class=\"ax-icon ax-icon-minimize\"> </ax-icon>\n </ax-button>\n }\n\n @if (modalSizeState() !== 'normal') {\n <ax-button class=\"ax-sm\" (onClick)=\"restore()\" look=\"blank\" color=\"primary\">\n <ax-icon class=\"ax-icon ax-icon-maximize\"> </ax-icon>\n </ax-button>\n }\n\n @if (maximizeState()) {\n <ax-button class=\"ax-sm\" (onClick)=\"maximize()\" look=\"blank\" color=\"primary\">\n <ax-icon class=\"ax-icon ax-icon-full-screen\"> </ax-icon>\n </ax-button>\n }\n\n @if (closeHeaderButton()) {\n <ax-button class=\"ax-sm\" look=\"blank\" (onClick)=\"closeHandler()\" color=\"danger\">\n <ax-icon class=\"ax-icon ax-icon-close\"> </ax-icon>\n </ax-button>\n }\n </div>\n </div>\n <div class=\"ax-modal-content\">\n @if (isTemplate()) {\n <ng-container [ngTemplateOutlet]=\"this.template()\" [ngTemplateOutletContext]=\"inputs()\"></ng-container>\n } @else {\n <ng-container [ngComponentOutlet]=\"this.component()\" [ngComponentOutletInputs]=\"inputs()\"></ng-container>\n }\n </div>\n <div class=\"ax-modal-footer\"></div>\n</div>\n"],"names":[],"mappings":"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"}
@@ -1,2 +1,2 @@
1
- export { b as AXModalComponent, a as AXModalFooterComponent, c as AXModalModule, d as AXModalService } from './acorex-components-modal-acorex-components-modal-Bs1CnBt8.mjs';
1
+ export { b as AXModalComponent, e as AXModalComponentBase, a as AXModalFooterComponent, c as AXModalModule, d as AXModalService } from './acorex-components-modal-acorex-components-modal-BzlZIwq8.mjs';
2
2
  //# sourceMappingURL=acorex-components-modal.mjs.map
@@ -192,7 +192,7 @@ class AXQueryBuilderComponent {
192
192
  return item.id;
193
193
  }
194
194
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.5", ngImport: i0, type: AXQueryBuilderComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
195
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.2.5", type: AXQueryBuilderComponent, isStandalone: true, selector: "ax-query-builder", inputs: { columnData: { classPropertyName: "columnData", publicName: "columnData", isSignal: true, isRequired: true, transformFunction: null }, queryData: { classPropertyName: "queryData", publicName: "queryData", isSignal: true, isRequired: true, transformFunction: null } }, outputs: { queryData: "queryDataChange", onValueChanged: "onValueChanged" }, viewQueries: [{ propertyName: "selectBoxRef", first: true, predicate: ["reRender"], descendants: true, isSignal: true }], ngImport: i0, template: "<ng-container\n *ngFor=\"let item of queryData(); let i = index; trackBy: trackById\"\n [ngTemplateOutletContext]=\"{ $implicit: item, index: i }\"\n [ngTemplateOutlet]=\"query\"\n>\n</ng-container>\n\n<ng-template #query let-item let-index=\"index\">\n @if (item.condition) {\n <div class=\"ax-recursive-container\">\n <div class=\"ax-add-condition-container\">\n <ax-button-group selection=\"single\" (selectedButtonChange)=\"conditionHandler($event, item)\" color=\"primary\" class=\"ax-sm\">\n <ax-button-group-item data=\"and\" [selected]=\"item.condition === 'and'\" text=\"And\"> </ax-button-group-item>\n <ax-button-group-item data=\"or\" [selected]=\"item.condition === 'or'\" text=\"Or\"> </ax-button-group-item>\n </ax-button-group>\n <ax-button (onClick)=\"addRulesHandler(item)\" class=\"ax-sm\" color=\"primary\" look=\"blank\" text=\"Add Rules\"></ax-button>\n <ax-button (onClick)=\"addGroupHandler(item)\" class=\"ax-sm\" color=\"primary\" look=\"blank\" text=\"Add Group\"></ax-button>\n @if (index !== 0) {\n <ax-button look=\"blank\" (onClick)=\"removeGroupHandler(item)\" class=\"ax-sm\" color=\"danger\">\n <ax-icon icon=\"ax-icon ax-icon-trash\"></ax-icon>\n </ax-button>\n }\n </div>\n\n <ng-container *ngFor=\"let child of item.rules; trackBy: trackById\" [ngTemplateOutletContext]=\"{ $implicit: child }\" [ngTemplateOutlet]=\"query\">\n </ng-container>\n </div>\n } @else {\n <div class=\"ax-rules-container\">\n <div class=\"ax-input-rules-container\">\n <ax-select-box\n (onValueChanged)=\"columnDataHandler($event, item)\"\n valueField=\"field\"\n textField=\"label\"\n [dataSource]=\"columnData()\"\n placeholder=\"Select Field\"\n >\n </ax-select-box>\n\n <ax-select-box\n #reRender\n [disabled]=\"!item.field\"\n name=\"selectBoxOperator\"\n (onValueChanged)=\"operatorDataHandler($event, item)\"\n [dataSource]=\"ds\"\n placeholder=\"Select Operator\"\n >\n </ax-select-box>\n\n @switch (item.type) {\n @case ('boolean') {\n <div class=\"ax-boolean-value-input-container\">\n @for (boolean of item.inputValues; track $index) {\n <label>{{ boolean }}</label>\n <input name=\"same\" [value]=\"boolean\" (input)=\"booleanValueHandler($event, item)\" type=\"radio\" />\n }\n </div>\n }\n @case ('string') {\n <ax-text-box (onValueChanged)=\"stringValueHandler($event, item)\">\n <ax-clear-button></ax-clear-button>\n </ax-text-box>\n }\n @case ('number') {\n <ax-number-box (onValueChanged)=\"numberValueHandler($event, item)\"></ax-number-box>\n }\n @case ('date') {\n <ax-datetime-box format=\"yyyy/MM/dd\" (onValueChanged)=\"dateValueHandler($event, item)\">\n <ax-clear-button></ax-clear-button>\n </ax-datetime-box>\n }\n }\n </div>\n <ax-button (onClick)=\"removeRulesHandler(item)\" look=\"blank\" class=\"ax-md\" color=\"danger\">\n <ax-icon icon=\"ax-icon ax-icon-trash\"></ax-icon>\n </ax-button>\n </div>\n }\n</ng-template>\n", styles: ["ax-query-builder{border:1px solid rgba(var(--ax-sys-color-border-lightest-surface));border-radius:var(--ax-sys-border-radius);padding:1rem;width:100%;display:block}ax-query-builder .ax-add-condition-container{display:flex;gap:.5rem;margin-block:.5rem}ax-query-builder .ax-recursive-container{border-inline-start:1px solid rgba(var(--ax-sys-color-border-lightest-surface));padding-inline-start:1rem}ax-query-builder .ax-rules-container{display:flex;align-items:center;margin-block:.5rem}ax-query-builder .ax-rules-container .ax-input-rules-container{display:flex;align-items:center;gap:.5rem;width:100%}ax-query-builder .ax-rules-container:not(:last-child){margin-bottom:.5rem}ax-query-builder .ax-boolean-value-input-container{display:flex;gap:.5rem;align-items:center}\n"], dependencies: [{ kind: "directive", type: NgFor, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: AXButtonGroupComponent, selector: "ax-button-group", inputs: ["disabled", "color", "look", "selection"], outputs: ["onBlur", "onFocus", "lookChange", "colorChange", "disabledChange", "onClick", "selectionChange", "selectedButtonChange"] }, { kind: "component", type: AXButtonGroupItemComponent, selector: "ax-button-group-item", inputs: ["color", "disabled", "text", "selected", "divided", "data", "name"], outputs: ["onClick", "onFocus", "onBlur", "disabledChange"] }, { kind: "component", type: AXButtonComponent, selector: "ax-button", inputs: ["disabled", "size", "tabIndex", "color", "look", "text", "toggleable", "selected", "iconOnly", "type", "loadingText"], outputs: ["onBlur", "onFocus", "onClick", "selectedChange", "toggleableChange", "lookChange", "colorChange", "disabledChange", "loadingTextChange"] }, { kind: "component", type: AXDecoratorIconComponent, selector: "ax-icon", inputs: ["icon"] }, { kind: "component", type: AXSelectBoxComponent, selector: "ax-select-box", inputs: ["disabled", "readonly", "tabIndex", "placeholder", "minValue", "maxValue", "value", "state", "name", "id", "type", "look", "multiple", "valueField", "textField", "disabledField", "textTemplate", "selectedItems", "dataSource", "minRecordsForSearch", "caption", "itemTemplate", "selectedTemplate", "emptyTemplate", "loadingTemplate", "dropdownWidth", "searchBoxAutoFocus"], outputs: ["valueChange", "stateChange", "onValueChanged", "onBlur", "onFocus", "readonlyChange", "disabledChange", "onOpened", "onClosed"] }, { kind: "component", type: AXTextBoxComponent, selector: "ax-text-box", inputs: ["disabled", "tabIndex", "readonly", "value", "state", "name", "id", "placeholder", "maxLength", "allowNull", "type", "autoComplete", "look", "mask-options", "class"], outputs: ["onBlur", "onFocus", "valueChange", "stateChange", "onValueChanged", "readonlyChange", "disabledChange", "onKeyDown", "onKeyUp", "onKeyPress"] }, { kind: "component", type: AXDecoratorClearButtonComponent, selector: "ax-clear-button", inputs: ["icon"] }, { kind: "component", type: AXNumberBoxComponent, selector: "ax-number-box", inputs: ["disabled", "readonly", "tabIndex", "placeholder", "value", "state", "name", "id", "look", "type", "changeOnScroll", "thousandsSeparator", "padDecimalZeros", "step", "decimals", "decimalStep", "showSpinButtons", "minValue", "maxValue", "class"], outputs: ["valueChange", "stateChange", "onValueChanged", "onBlur", "onFocus", "readonlyChange", "disabledChange", "onKeyDown", "onKeyUp", "onKeyPress"] }, { kind: "component", type: AXDateTimeBoxComponent, selector: "ax-datetime-box", inputs: ["disabled", "readonly", "tabIndex", "placeholder", "minValue", "maxValue", "value", "state", "name", "depth", "id", "type", "look", "holidayDates", "allowTyping", "format"], outputs: ["valueChange", "stateChange", "onValueChanged", "onBlur", "onFocus", "onOpened", "onClosed", "readonlyChange", "disabledChange", "formatChange"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
195
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.2.5", type: AXQueryBuilderComponent, isStandalone: true, selector: "ax-query-builder", inputs: { columnData: { classPropertyName: "columnData", publicName: "columnData", isSignal: true, isRequired: true, transformFunction: null }, queryData: { classPropertyName: "queryData", publicName: "queryData", isSignal: true, isRequired: true, transformFunction: null } }, outputs: { queryData: "queryDataChange", onValueChanged: "onValueChanged" }, viewQueries: [{ propertyName: "selectBoxRef", first: true, predicate: ["reRender"], descendants: true, isSignal: true }], ngImport: i0, template: "<ng-container\n *ngFor=\"let item of queryData(); let i = index; trackBy: trackById\"\n [ngTemplateOutletContext]=\"{ $implicit: item, index: i }\"\n [ngTemplateOutlet]=\"query\"\n>\n</ng-container>\n\n<ng-template #query let-item let-index=\"index\">\n @if (item.condition) {\n <div class=\"ax-recursive-container\">\n <div class=\"ax-add-condition-container\">\n <ax-button-group selection=\"single\" (selectedButtonChange)=\"conditionHandler($event, item)\" color=\"primary\" class=\"ax-sm\">\n <ax-button-group-item data=\"and\" [selected]=\"item.condition === 'and'\" text=\"And\"> </ax-button-group-item>\n <ax-button-group-item data=\"or\" [selected]=\"item.condition === 'or'\" text=\"Or\"> </ax-button-group-item>\n </ax-button-group>\n <ax-button (onClick)=\"addRulesHandler(item)\" class=\"ax-sm\" color=\"primary\" look=\"blank\" text=\"Add Rules\"></ax-button>\n <ax-button (onClick)=\"addGroupHandler(item)\" class=\"ax-sm\" color=\"primary\" look=\"blank\" text=\"Add Group\"></ax-button>\n @if (index !== 0) {\n <ax-button look=\"blank\" (onClick)=\"removeGroupHandler(item)\" class=\"ax-sm\" color=\"danger\">\n <ax-icon icon=\"ax-icon ax-icon-trash\"></ax-icon>\n </ax-button>\n }\n </div>\n\n <ng-container *ngFor=\"let child of item.rules; trackBy: trackById\" [ngTemplateOutletContext]=\"{ $implicit: child }\" [ngTemplateOutlet]=\"query\">\n </ng-container>\n </div>\n } @else {\n <div class=\"ax-rules-container\">\n <div class=\"ax-input-rules-container\">\n <ax-select-box\n (onValueChanged)=\"columnDataHandler($event, item)\"\n valueField=\"field\"\n textField=\"label\"\n [dataSource]=\"columnData()\"\n placeholder=\"Select Field\"\n >\n </ax-select-box>\n\n <ax-select-box\n #reRender\n [disabled]=\"!item.field\"\n name=\"selectBoxOperator\"\n (onValueChanged)=\"operatorDataHandler($event, item)\"\n [dataSource]=\"ds\"\n placeholder=\"Select Operator\"\n >\n </ax-select-box>\n\n @switch (item.type) {\n @case ('boolean') {\n <div class=\"ax-boolean-value-input-container\">\n @for (boolean of item.inputValues; track $index) {\n <label>{{ boolean }}</label>\n <input name=\"same\" [value]=\"boolean\" (input)=\"booleanValueHandler($event, item)\" type=\"radio\" />\n }\n </div>\n }\n @case ('string') {\n <ax-text-box (onValueChanged)=\"stringValueHandler($event, item)\">\n <ax-clear-button></ax-clear-button>\n </ax-text-box>\n }\n @case ('number') {\n <ax-number-box (onValueChanged)=\"numberValueHandler($event, item)\"></ax-number-box>\n }\n @case ('date') {\n <ax-datetime-box format=\"yyyy/MM/dd\" (onValueChanged)=\"dateValueHandler($event, item)\">\n <ax-clear-button></ax-clear-button>\n </ax-datetime-box>\n }\n }\n </div>\n <ax-button (onClick)=\"removeRulesHandler(item)\" look=\"blank\" class=\"ax-md\" color=\"danger\">\n <ax-icon icon=\"ax-icon ax-icon-trash\"></ax-icon>\n </ax-button>\n </div>\n }\n</ng-template>\n", styles: ["ax-query-builder{border:1px solid rgba(var(--ax-sys-color-border-lightest-surface));border-radius:var(--ax-sys-border-radius);padding:1rem;width:100%;display:block}ax-query-builder .ax-add-condition-container{display:flex;gap:.5rem;margin-block:.5rem}ax-query-builder .ax-recursive-container{border-inline-start:1px solid rgba(var(--ax-sys-color-border-lightest-surface));padding-inline-start:1rem}ax-query-builder .ax-rules-container{display:flex;align-items:center;margin-block:.5rem}ax-query-builder .ax-rules-container .ax-input-rules-container{display:flex;align-items:center;gap:.5rem;width:100%}ax-query-builder .ax-rules-container:not(:last-child){margin-bottom:.5rem}ax-query-builder .ax-boolean-value-input-container{display:flex;gap:.5rem;align-items:center}\n"], dependencies: [{ kind: "directive", type: NgFor, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: AXButtonGroupComponent, selector: "ax-button-group", inputs: ["disabled", "color", "look", "selection"], outputs: ["onBlur", "onFocus", "lookChange", "colorChange", "disabledChange", "onClick", "selectionChange", "selectedButtonChange"] }, { kind: "component", type: AXButtonGroupItemComponent, selector: "ax-button-group-item", inputs: ["color", "disabled", "text", "selected", "divided", "data", "name"], outputs: ["onClick", "onFocus", "onBlur", "disabledChange"] }, { kind: "component", type: AXButtonComponent, selector: "ax-button", inputs: ["disabled", "size", "tabIndex", "color", "look", "text", "toggleable", "selected", "iconOnly", "type", "loadingText"], outputs: ["onBlur", "onFocus", "onClick", "selectedChange", "toggleableChange", "lookChange", "colorChange", "disabledChange", "loadingTextChange"] }, { kind: "component", type: AXDecoratorIconComponent, selector: "ax-icon", inputs: ["icon"] }, { kind: "component", type: AXSelectBoxComponent, selector: "ax-select-box", inputs: ["disabled", "readonly", "tabIndex", "placeholder", "minValue", "maxValue", "value", "state", "name", "id", "type", "look", "multiple", "valueField", "textField", "disabledField", "textTemplate", "selectedItems", "dataSource", "minRecordsForSearch", "caption", "itemTemplate", "selectedTemplate", "emptyTemplate", "loadingTemplate", "dropdownWidth", "searchBoxAutoFocus"], outputs: ["valueChange", "stateChange", "onValueChanged", "onBlur", "onFocus", "readonlyChange", "disabledChange", "onOpened", "onClosed"] }, { kind: "component", type: AXTextBoxComponent, selector: "ax-text-box", inputs: ["disabled", "tabIndex", "readonly", "value", "state", "name", "id", "placeholder", "maxLength", "allowNull", "type", "autoComplete", "look", "mask-options", "class"], outputs: ["onBlur", "onFocus", "valueChange", "stateChange", "onValueChanged", "readonlyChange", "disabledChange", "onKeyDown", "onKeyUp", "onKeyPress"] }, { kind: "component", type: AXDecoratorClearButtonComponent, selector: "ax-clear-button", inputs: ["icon"] }, { kind: "component", type: AXNumberBoxComponent, selector: "ax-number-box", inputs: ["disabled", "readonly", "tabIndex", "placeholder", "value", "state", "name", "id", "look", "type", "changeOnScroll", "thousandsSeparator", "padDecimalZeros", "step", "decimals", "decimalStep", "showSpinButtons", "minValue", "maxValue", "class"], outputs: ["valueChange", "stateChange", "onValueChanged", "onBlur", "onFocus", "readonlyChange", "disabledChange", "onKeyDown", "onKeyUp", "onKeyPress"] }, { kind: "component", type: AXDateTimeBoxComponent, selector: "ax-datetime-box", inputs: ["disabled", "readonly", "tabIndex", "placeholder", "minValue", "maxValue", "value", "state", "name", "depth", "id", "type", "look", "holidayDates", "allowTyping", "calendar", "picker", "format"], outputs: ["valueChange", "stateChange", "onValueChanged", "onBlur", "onFocus", "onOpened", "onClosed", "readonlyChange", "disabledChange", "formatChange"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
196
196
  }
197
197
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.5", ngImport: i0, type: AXQueryBuilderComponent, decorators: [{
198
198
  type: Component,