@ng-nest/ui 16.0.8 → 16.0.10

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 (72) hide show
  1. package/dialog/dialog-ref.d.ts +3 -1
  2. package/drag/drag.directive.d.ts +14 -0
  3. package/drag/drag.module.d.ts +8 -0
  4. package/drag/drag.property.d.ts +26 -0
  5. package/drag/index.d.ts +5 -0
  6. package/drag/public-api.d.ts +3 -0
  7. package/esm2022/button/button.component.mjs +3 -3
  8. package/esm2022/button/buttons.component.mjs +2 -2
  9. package/esm2022/dialog/dialog-ref.mjs +5 -3
  10. package/esm2022/drag/drag.directive.mjs +71 -0
  11. package/esm2022/drag/drag.module.mjs +19 -0
  12. package/esm2022/drag/drag.property.mjs +32 -0
  13. package/esm2022/drag/ng-nest-ui-drag.mjs +5 -0
  14. package/esm2022/drag/public-api.mjs +4 -0
  15. package/esm2022/index.mjs +2 -1
  16. package/esm2022/input/input.component.mjs +3 -3
  17. package/esm2022/input/input.property.mjs +12 -2
  18. package/esm2022/input-number/input-number.component.mjs +40 -15
  19. package/esm2022/message-box/message-box.component.mjs +23 -6
  20. package/esm2022/message-box/message-box.property.mjs +1 -1
  21. package/esm2022/portal/portal.service.mjs +1 -1
  22. package/esm2022/select/select.component.mjs +5 -6
  23. package/esm2022/slider-select/slider-select.component.mjs +248 -49
  24. package/esm2022/slider-select/slider-select.module.mjs +29 -4
  25. package/esm2022/slider-select/slider-select.property.mjs +21 -2
  26. package/esm2022/table/public-api.mjs +1 -2
  27. package/esm2022/table/table-head.component.mjs +4 -4
  28. package/esm2022/table/table.component.mjs +3 -3
  29. package/esm2022/table/table.module.mjs +9 -8
  30. package/esm2022/tooltip/tooltip.directive.mjs +5 -3
  31. package/esm2022/tree/tree.component.mjs +3 -1
  32. package/esm2022/tree-select/tree-select.component.mjs +2 -2
  33. package/fesm2022/ng-nest-ui-button.mjs +4 -4
  34. package/fesm2022/ng-nest-ui-button.mjs.map +1 -1
  35. package/fesm2022/ng-nest-ui-dialog.mjs +3 -1
  36. package/fesm2022/ng-nest-ui-dialog.mjs.map +1 -1
  37. package/fesm2022/ng-nest-ui-drag.mjs +119 -0
  38. package/fesm2022/ng-nest-ui-drag.mjs.map +1 -0
  39. package/fesm2022/ng-nest-ui-input-number.mjs +40 -16
  40. package/fesm2022/ng-nest-ui-input-number.mjs.map +1 -1
  41. package/fesm2022/ng-nest-ui-input.mjs +13 -3
  42. package/fesm2022/ng-nest-ui-input.mjs.map +1 -1
  43. package/fesm2022/ng-nest-ui-message-box.mjs +22 -5
  44. package/fesm2022/ng-nest-ui-message-box.mjs.map +1 -1
  45. package/fesm2022/ng-nest-ui-portal.mjs.map +1 -1
  46. package/fesm2022/ng-nest-ui-select.mjs +4 -5
  47. package/fesm2022/ng-nest-ui-select.mjs.map +1 -1
  48. package/fesm2022/ng-nest-ui-slider-select.mjs +296 -54
  49. package/fesm2022/ng-nest-ui-slider-select.mjs.map +1 -1
  50. package/fesm2022/ng-nest-ui-table.mjs +17 -86
  51. package/fesm2022/ng-nest-ui-table.mjs.map +1 -1
  52. package/fesm2022/ng-nest-ui-tooltip.mjs +4 -2
  53. package/fesm2022/ng-nest-ui-tooltip.mjs.map +1 -1
  54. package/fesm2022/ng-nest-ui-tree-select.mjs +2 -2
  55. package/fesm2022/ng-nest-ui-tree-select.mjs.map +1 -1
  56. package/fesm2022/ng-nest-ui-tree.mjs +2 -0
  57. package/fesm2022/ng-nest-ui-tree.mjs.map +1 -1
  58. package/fesm2022/ng-nest-ui.mjs +1 -0
  59. package/fesm2022/ng-nest-ui.mjs.map +1 -1
  60. package/index.d.ts +1 -0
  61. package/input/input.property.d.ts +11 -1
  62. package/input-number/input-number.component.d.ts +6 -1
  63. package/message-box/message-box.component.d.ts +1 -0
  64. package/message-box/message-box.property.d.ts +11 -0
  65. package/package.json +58 -52
  66. package/slider-select/slider-select.component.d.ts +33 -16
  67. package/slider-select/slider-select.module.d.ts +3 -1
  68. package/slider-select/slider-select.property.d.ts +51 -3
  69. package/table/public-api.d.ts +0 -1
  70. package/table/table.module.d.ts +18 -18
  71. package/esm2022/table/drag.directive.mjs +0 -78
  72. package/table/drag.directive.d.ts +0 -27
@@ -1,18 +1,21 @@
1
1
  import * as i4 from '@ng-nest/ui/tooltip';
2
2
  import { XTooltipDirective, XTooltipModule } from '@ng-nest/ui/tooltip';
3
3
  import * as i0 from '@angular/core';
4
- import { EventEmitter, Component, Input, Output, ViewEncapsulation, ChangeDetectionStrategy, ViewChild, NgModule } from '@angular/core';
4
+ import { EventEmitter, Component, Input, Output, ViewEncapsulation, ChangeDetectionStrategy, ViewChild, HostBinding, ViewChildren, NgModule } from '@angular/core';
5
5
  import { __decorate } from 'tslib';
6
6
  import * as i1 from '@ng-nest/ui/core';
7
- import { XInputNumber, XInputBoolean, XIsEmpty, XResize, XClearClass, XIsUndefined } from '@ng-nest/ui/core';
7
+ import { XInputNumber, XInputBoolean, XIsEmpty, XIsNull, XIsUndefined, XIsNumber, XIsArray, XResize, XClearClass } from '@ng-nest/ui/core';
8
8
  import { XControlValueAccessor, XValueAccessor, XBaseFormModule } from '@ng-nest/ui/base-form';
9
+ import * as i3 from '@angular/cdk/drag-drop';
10
+ import { CdkDrag, DragDropModule } from '@angular/cdk/drag-drop';
9
11
  import { Subject } from 'rxjs';
10
12
  import { debounceTime, takeUntil } from 'rxjs/operators';
11
13
  import * as i2 from '@angular/common';
12
14
  import { CommonModule } from '@angular/common';
13
- import * as i3 from '@angular/cdk/drag-drop';
14
- import { DragDropModule } from '@angular/cdk/drag-drop';
15
+ import * as i5 from '@ng-nest/ui/outlet';
16
+ import { XOutletModule } from '@ng-nest/ui/outlet';
15
17
  import { FormsModule, ReactiveFormsModule } from '@angular/forms';
18
+ import { XDragModule } from '@ng-nest/ui/drag';
16
19
 
17
20
  /**
18
21
  * SliderSelect
@@ -46,6 +49,11 @@ class XSliderSelectProperty extends XControlValueAccessor {
46
49
  * @en_US Display Tooltip prompts
47
50
  */
48
51
  this.showTooltip = true;
52
+ /**
53
+ * @zh_CN 刻度标记,key 为实际数字,在 [min,max] 内,可通过 style 设置样式
54
+ * @en_US Scale marking, key is the actual number, in [min, max], you can set style through style
55
+ */
56
+ this.marks = [];
49
57
  /**
50
58
  * @zh_CN 开始拖动的事件
51
59
  * @en_US Start drag event
@@ -63,7 +71,7 @@ class XSliderSelectProperty extends XControlValueAccessor {
63
71
  this.dragEndEmit = new EventEmitter();
64
72
  }
65
73
  /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.0.5", ngImport: i0, type: XSliderSelectProperty, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
66
- /** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.0.5", type: XSliderSelectProperty, selector: "x-slider-select-property", inputs: { min: "min", max: "max", step: "step", precision: "precision", showTooltip: "showTooltip", reverse: "reverse" }, outputs: { dragStartEmit: "dragStartEmit", dragMoveEmit: "dragMoveEmit", dragEndEmit: "dragEndEmit" }, usesInheritance: true, ngImport: i0, template: '', isInline: true }); }
74
+ /** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.0.5", type: XSliderSelectProperty, selector: "x-slider-select-property", inputs: { min: "min", max: "max", step: "step", precision: "precision", showTooltip: "showTooltip", reverse: "reverse", vertical: "vertical", range: "range", customButton: "customButton", marks: "marks" }, outputs: { dragStartEmit: "dragStartEmit", dragMoveEmit: "dragMoveEmit", dragEndEmit: "dragEndEmit" }, usesInheritance: true, ngImport: i0, template: '', isInline: true }); }
67
75
  }
68
76
  __decorate([
69
77
  XInputNumber()
@@ -83,6 +91,12 @@ __decorate([
83
91
  __decorate([
84
92
  XInputBoolean()
85
93
  ], XSliderSelectProperty.prototype, "reverse", void 0);
94
+ __decorate([
95
+ XInputBoolean()
96
+ ], XSliderSelectProperty.prototype, "vertical", void 0);
97
+ __decorate([
98
+ XInputBoolean()
99
+ ], XSliderSelectProperty.prototype, "range", void 0);
86
100
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.5", ngImport: i0, type: XSliderSelectProperty, decorators: [{
87
101
  type: Component,
88
102
  args: [{ selector: `${XSliderSelectPrefix}-property`, template: '' }]
@@ -98,6 +112,14 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.5", ngImpor
98
112
  type: Input
99
113
  }], reverse: [{
100
114
  type: Input
115
+ }], vertical: [{
116
+ type: Input
117
+ }], range: [{
118
+ type: Input
119
+ }], customButton: [{
120
+ type: Input
121
+ }], marks: [{
122
+ type: Input
101
123
  }], dragStartEmit: [{
102
124
  type: Output
103
125
  }], dragMoveEmit: [{
@@ -107,13 +129,24 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.5", ngImpor
107
129
  }] } });
108
130
 
109
131
  class XSliderSelectComponent extends XSliderSelectProperty {
132
+ get getVertical() {
133
+ return this.vertical;
134
+ }
110
135
  get requiredIsEmpty() {
111
136
  return this.validator && this.required && (XIsEmpty(this.value) || this.value === 0);
112
137
  }
113
138
  writeValue(value) {
114
- if (value === null)
115
- value = 0;
139
+ if (XIsNull(value) || XIsUndefined(value)) {
140
+ if (this.range) {
141
+ value = [Number(this.min), Number(this.min)];
142
+ }
143
+ else {
144
+ value = Number(this.min);
145
+ }
146
+ }
116
147
  this.value = value;
148
+ this.isNumber = XIsNumber(this.value) && !XIsArray(this.value);
149
+ this.isArray = XIsArray(this.value);
117
150
  this.setLeft();
118
151
  this.setDisplayValue();
119
152
  }
@@ -123,16 +156,26 @@ class XSliderSelectComponent extends XSliderSelectProperty {
123
156
  this.elementRef = elementRef;
124
157
  this.cdr = cdr;
125
158
  this.configService = configService;
126
- this.offset = 0;
127
- this.visible = false;
128
- this.manual = false;
129
- this.value = 0;
130
- this.displayValue = '0';
159
+ this.value = Number(this.min);
160
+ this.startOffset = 0;
161
+ this.startVisible = false;
162
+ this.startManual = false;
163
+ this.startDisplayValue = '0';
164
+ this.showStartTooltip = true;
165
+ this.endOffset = 0;
166
+ this.endVisible = false;
167
+ this.endManual = false;
168
+ this.endDisplayValue = '0';
169
+ this.showEndTooltip = true;
170
+ this.markList = [];
131
171
  this._unSubject = new Subject();
172
+ this.isNumber = true;
173
+ this.isArray = false;
132
174
  }
133
175
  ngOnInit() {
134
176
  this.setFlex(this.sliderSelect.nativeElement, this.renderer, this.justify, this.align, this.direction);
135
177
  this.setPrecision();
178
+ this.setMarks();
136
179
  this.setClassMap();
137
180
  }
138
181
  ngAfterViewInit() {
@@ -144,6 +187,12 @@ class XSliderSelectComponent extends XSliderSelectProperty {
144
187
  this.setDisplayValue();
145
188
  this.cdr.detectChanges();
146
189
  });
190
+ if (this.tooltips.length > 0) {
191
+ this.tooltipStart = this.tooltips.first;
192
+ }
193
+ if (this.tooltips.length > 1) {
194
+ this.tooltipEnd = this.tooltips.last;
195
+ }
147
196
  }
148
197
  ngOnDestroy() {
149
198
  this._unSubject.next();
@@ -151,8 +200,22 @@ class XSliderSelectComponent extends XSliderSelectProperty {
151
200
  this._resizeObserver?.disconnect();
152
201
  }
153
202
  change() {
154
- const val = Number(((Number(this.max) - Number(this.min)) * Number(this.offset)) / 100 + Number(this.min)).toFixed(Number(this.precision));
155
- this.value = parseFloat(val);
203
+ const getVal = (offset) => {
204
+ return parseFloat(Number(((Number(this.max) - Number(this.min)) * Number(offset)) / 100 + Number(this.min)).toFixed(Number(this.precision)));
205
+ };
206
+ const startVal = getVal(this.startOffset);
207
+ if (this.isNumber) {
208
+ this.value = startVal;
209
+ }
210
+ else {
211
+ const endVal = getVal(this.endOffset);
212
+ if (endVal < startVal) {
213
+ this.value = [endVal, startVal];
214
+ }
215
+ else {
216
+ this.value = [startVal, endVal];
217
+ }
218
+ }
156
219
  this.setDisplayValue();
157
220
  if (this.onChange)
158
221
  this.onChange(this.value);
@@ -161,15 +224,47 @@ class XSliderSelectComponent extends XSliderSelectProperty {
161
224
  XClearClass(this.labelMap);
162
225
  this.labelMap[`x-text-align-${this.labelAlign}`] = this.labelAlign ? true : false;
163
226
  }
227
+ getOffset(val) {
228
+ return Math.round(((val + (this.reverse ? -Number(this.min) : Number(this.min))) * 100) /
229
+ (Number(this.max) - Number(this.min)));
230
+ }
164
231
  setLeft() {
165
- this.offset = Math.round(((this.value + (this.reverse ? Number(this.min) : -Number(this.min))) * 100) / (Number(this.max) - Number(this.min)));
166
- const start = this.offset;
232
+ let startVal = 0, endVal = 0;
233
+ if (this.isNumber) {
234
+ startVal = this.value;
235
+ }
236
+ else if (XIsArray(this.value) && this.value.length > 1) {
237
+ startVal = this.value[0];
238
+ endVal = this.value[1];
239
+ this.endOffset = this.getOffset(endVal);
240
+ const end = this.endOffset;
241
+ this.end = end;
242
+ }
243
+ this.startOffset = this.getOffset(startVal);
244
+ const start = this.startOffset;
167
245
  this.start = start;
168
246
  this.setDrag();
169
247
  this.cdr.detectChanges();
170
248
  }
171
249
  setDisplayValue() {
172
- this.displayValue = Number(this.value).toFixed(Number(this.precision));
250
+ const displayVal = (val) => {
251
+ return Number(val).toFixed(Number(this.precision));
252
+ };
253
+ if (this.isNumber) {
254
+ this.startDisplayValue = displayVal(this.value);
255
+ }
256
+ else {
257
+ if (XIsArray(this.value) && this.value.length > 1) {
258
+ if (this.startOffset > this.endOffset) {
259
+ this.startDisplayValue = displayVal(this.value[1]);
260
+ this.endDisplayValue = displayVal(this.value[0]);
261
+ }
262
+ else {
263
+ this.startDisplayValue = displayVal(this.value[0]);
264
+ this.endDisplayValue = displayVal(this.value[1]);
265
+ }
266
+ }
267
+ }
173
268
  this.cdr.detectChanges();
174
269
  }
175
270
  setPrecision() {
@@ -184,98 +279,245 @@ class XSliderSelectComponent extends XSliderSelectProperty {
184
279
  }
185
280
  }
186
281
  }
187
- onInnerClick(_$event) { }
188
- started(drag) {
189
- const start = this.offset;
190
- this.start = start;
191
- if (this.showTooltip) {
192
- this.manual = true;
193
- this.visible = true;
282
+ setMarks() {
283
+ if (!this.marks)
284
+ return;
285
+ for (let mark of this.marks) {
286
+ const mk = {
287
+ value: mark.value,
288
+ label: mark.label,
289
+ style: { ...mark.style }
290
+ };
291
+ mk.offset = this.getOffset(mark.value);
292
+ if (this.reverse) {
293
+ if (this.vertical) {
294
+ mk.style['top'] = `${mk.offset}%`;
295
+ }
296
+ else {
297
+ mk.style['right'] = `${mk.offset}%`;
298
+ }
299
+ }
300
+ else {
301
+ if (this.vertical) {
302
+ mk.style['bottom'] = `${mk.offset}%`;
303
+ }
304
+ else {
305
+ mk.style['left'] = `${mk.offset}%`;
306
+ }
307
+ }
308
+ this.markList.push(mk);
309
+ }
310
+ }
311
+ started(drag, type = 'start') {
312
+ if (['start', 'both'].includes(type)) {
313
+ const start = this.startOffset;
314
+ this.start = start;
315
+ if (this.showStartTooltip) {
316
+ this.startManual = true;
317
+ this.startVisible = true;
318
+ }
319
+ }
320
+ if (['end', 'both'].includes(type)) {
321
+ const end = this.endOffset;
322
+ this.end = end;
323
+ if (this.showEndTooltip) {
324
+ this.endManual = true;
325
+ this.endVisible = true;
326
+ }
194
327
  }
195
328
  this.cdr.detectChanges();
196
329
  this.formControlValidator();
197
330
  this.dragStartEmit.emit(drag);
198
331
  }
199
- moved(drag) {
332
+ moved(drag, type = 'start') {
200
333
  let transform = drag.source.getFreeDragPosition();
201
- this.setDrag(transform.x);
334
+ this.setDrag(this.vertical ? transform.y : transform.x, type);
202
335
  drag.source.reset();
203
- if (this.showTooltip) {
204
- this.tooltip.updatePortal();
336
+ if (['start', 'both'].includes(type) && this.showStartTooltip) {
337
+ this.tooltipStart.updatePortal();
338
+ }
339
+ if (['end', 'both'].includes(type) && this.showEndTooltip) {
340
+ this.tooltipEnd.updatePortal();
205
341
  }
206
342
  this.change();
207
343
  this.dragMoveEmit.emit(drag);
208
344
  }
209
- ended(drag) {
210
- if (this.showTooltip) {
211
- this.manual = false;
212
- this.visible = false;
345
+ ended(drag, type = 'start') {
346
+ if (['start', 'both'].includes(type)) {
347
+ if (this.showStartTooltip) {
348
+ this.startManual = false;
349
+ this.startVisible = false;
350
+ }
351
+ }
352
+ if (['end', 'both'].includes(type)) {
353
+ if (this.showEndTooltip) {
354
+ this.endManual = false;
355
+ this.endVisible = false;
356
+ }
213
357
  }
214
358
  this.cdr.detectChanges();
215
359
  this.dragEndEmit.emit(drag);
216
360
  }
217
- setDrag(distance = 0) {
361
+ setDrag(distance = 0, type = 'both') {
218
362
  if (typeof this.railRef.nativeElement.getBoundingClientRect !== 'function')
219
363
  return;
220
364
  let railBox = this.railRef.nativeElement.getBoundingClientRect();
221
- let stepWidth = railBox.width / ((Number(this.max) - Number(this.min)) / Number(this.step));
222
- let offset = Math.abs(distance % stepWidth);
223
- let dis = offset < stepWidth / 2
365
+ let railBoxLength = this.vertical ? railBox.height : railBox.width;
366
+ let stepLength = railBoxLength / ((Number(this.max) - Number(this.min)) / Number(this.step));
367
+ let offset = Math.abs(distance % stepLength);
368
+ let dis = offset < stepLength / 2
224
369
  ? distance > 0
225
370
  ? distance - offset
226
371
  : distance + offset
227
372
  : distance > 0
228
- ? distance + stepWidth - offset
229
- : distance - stepWidth + offset;
230
- let x = (this.start / 100) * railBox.width + (this.reverse ? -dis : dis);
231
- this.offset = Math.round((x / railBox.width) * 100);
232
- if (this.reverse) {
233
- this.renderer.setStyle(this.dragRef.nativeElement, 'right', `${this.offset}%`);
373
+ ? distance + stepLength - offset
374
+ : distance - stepLength + offset;
375
+ const setOffset = (d) => {
376
+ let x1 = (d / 100) * railBoxLength;
377
+ if (this.vertical) {
378
+ x1 += this.reverse ? dis : -dis;
379
+ }
380
+ else {
381
+ x1 += this.reverse ? -dis : dis;
382
+ }
383
+ return Math.round((x1 / railBoxLength) * 100);
384
+ };
385
+ if (type === 'both') {
386
+ this.startOffset = setOffset(this.start);
387
+ this.endOffset = setOffset(this.end);
388
+ }
389
+ else if (type === 'start') {
390
+ this.startOffset = setOffset(this.start);
391
+ }
392
+ else if (type === 'end') {
393
+ this.endOffset = setOffset(this.end);
394
+ }
395
+ this.setDragStyles();
396
+ }
397
+ setDragStyles() {
398
+ if (this.vertical) {
399
+ if (this.isArray) {
400
+ const wd = Math.abs(this.endOffset - this.startOffset);
401
+ const lt = this.endOffset > this.startOffset ? this.startOffset : this.endOffset;
402
+ if (this.reverse) {
403
+ this.renderer.setStyle(this.dragStartRef.nativeElement, 'top', `${this.startOffset}%`);
404
+ this.renderer.setStyle(this.dragEndRef.nativeElement, 'top', `${this.endOffset}%`);
405
+ this.renderer.setStyle(this.processRef.nativeElement, 'top', `${lt}%`);
406
+ }
407
+ else {
408
+ this.renderer.setStyle(this.dragStartRef.nativeElement, 'bottom', `${this.startOffset}%`);
409
+ this.renderer.setStyle(this.dragEndRef.nativeElement, 'bottom', `${this.endOffset}%`);
410
+ this.renderer.setStyle(this.processRef.nativeElement, 'bottom', `${lt}%`);
411
+ }
412
+ this.renderer.setStyle(this.processRef.nativeElement, 'height', `${wd}%`);
413
+ }
414
+ else {
415
+ if (this.reverse) {
416
+ this.renderer.setStyle(this.dragStartRef.nativeElement, 'top', `${this.startOffset}%`);
417
+ }
418
+ else {
419
+ this.renderer.setStyle(this.dragStartRef.nativeElement, 'bottom', `${this.startOffset}%`);
420
+ }
421
+ this.renderer.setStyle(this.processRef.nativeElement, 'height', `${this.startOffset}%`);
422
+ }
234
423
  }
235
424
  else {
236
- this.renderer.setStyle(this.dragRef.nativeElement, 'left', `${this.offset}%`);
425
+ if (this.isArray) {
426
+ const wd = Math.abs(this.endOffset - this.startOffset);
427
+ const lt = this.endOffset > this.startOffset ? this.startOffset : this.endOffset;
428
+ if (this.reverse) {
429
+ this.renderer.setStyle(this.dragStartRef.nativeElement, 'right', `${this.startOffset}%`);
430
+ this.renderer.setStyle(this.dragEndRef.nativeElement, 'right', `${this.endOffset}%`);
431
+ this.renderer.setStyle(this.processRef.nativeElement, 'right', `${lt}%`);
432
+ }
433
+ else {
434
+ this.renderer.setStyle(this.dragStartRef.nativeElement, 'left', `${this.startOffset}%`);
435
+ this.renderer.setStyle(this.dragEndRef.nativeElement, 'left', `${this.endOffset}%`);
436
+ this.renderer.setStyle(this.processRef.nativeElement, 'left', `${lt}%`);
437
+ }
438
+ this.renderer.setStyle(this.processRef.nativeElement, 'width', `${wd}%`);
439
+ }
440
+ else {
441
+ if (this.reverse) {
442
+ this.renderer.setStyle(this.dragStartRef.nativeElement, 'right', `${this.startOffset}%`);
443
+ }
444
+ else {
445
+ this.renderer.setStyle(this.dragStartRef.nativeElement, 'left', `${this.startOffset}%`);
446
+ }
447
+ this.renderer.setStyle(this.processRef.nativeElement, 'width', `${this.startOffset}%`);
448
+ }
237
449
  }
238
- this.renderer.setStyle(this.processRef.nativeElement, 'width', `${this.offset}%`);
239
- this.renderer.removeStyle(this.dragRef.nativeElement, 'transform');
240
450
  }
241
451
  formControlChanges() {
242
452
  this.ngOnInit();
243
453
  this.cdr.detectChanges();
244
454
  }
245
455
  /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.0.5", ngImport: i0, type: XSliderSelectComponent, deps: [{ token: i0.Renderer2 }, { token: i0.ElementRef }, { token: i0.ChangeDetectorRef }, { token: i1.XConfigService }], target: i0.ɵɵFactoryTarget.Component }); }
246
- /** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.0.5", type: XSliderSelectComponent, selector: "x-slider-select", providers: [XValueAccessor(XSliderSelectComponent)], viewQueries: [{ propertyName: "sliderSelect", first: true, predicate: ["sliderSelect"], descendants: true, static: true }, { propertyName: "dragRef", first: true, predicate: ["dragRef"], descendants: true, static: true }, { propertyName: "railRef", first: true, predicate: ["railRef"], descendants: true, static: true }, { propertyName: "processRef", first: true, predicate: ["processRef"], descendants: true, static: true }, { propertyName: "tooltip", first: true, predicate: XTooltipDirective, descendants: true, static: true }], usesInheritance: true, ngImport: i0, template: "<div\r\n #sliderSelect\r\n class=\"x-slider-select\"\r\n [class.x-flex]=\"justify || align || direction\"\r\n [class.x-disabled]=\"disabled\"\r\n [class.x-required]=\"requiredIsEmpty\"\r\n [class.x-invalid]=\"invalid\"\r\n [class.x-slider-select-reverse]=\"reverse\"\r\n>\r\n <label *ngIf=\"label\" [class.x-slider-select-label-required]=\"required\" [style.width]=\"labelWidth\" [ngClass]=\"labelMap\">{{ label }}</label>\r\n <div class=\"x-slider-select-inner\" #innerRef (click)=\"onInnerClick($event)\">\r\n <div class=\"x-slider-select-rail\" #railRef>\r\n <div></div>\r\n </div>\r\n <div class=\"x-slider-select-track\" #trackRef>\r\n <div class=\"x-slider-select-process\" #processRef></div>\r\n </div>\r\n <div class=\"x-slider-select-drags\">\r\n <div\r\n #dragRef\r\n class=\"x-slider-select-drag\"\r\n cdkDrag\r\n cdkDragLockAxis=\"x\"\r\n [cdkDragDisabled]=\"disabled\"\r\n [cdkDragBoundary]=\"innerRef\"\r\n (cdkDragStarted)=\"started($event)\"\r\n (cdkDragEnded)=\"ended($event)\"\r\n (cdkDragMoved)=\"moved($event)\"\r\n >\r\n <div\r\n #tooltip\r\n x-tooltip\r\n class=\"x-slider-select-button\"\r\n placement=\"top\"\r\n [disabled]=\"!showTooltip\"\r\n [content]=\"displayValue\"\r\n [visible]=\"visible\"\r\n [manual]=\"manual\"\r\n ></div>\r\n </div>\r\n </div>\r\n </div>\r\n</div>\r\n", styles: ["@charset \"UTF-8\";x-slider-select{display:inline-block;width:12rem}.x-slider-select{margin:0;padding:0;width:100%}.x-slider-select.x-flex{display:flex}.x-slider-select.x-justify-start{justify-content:flex-start}.x-slider-select.x-justify-center{justify-content:center}.x-slider-select.x-justify-end{justify-content:flex-end}.x-slider-select.x-justify-space-between{justify-content:space-between}.x-slider-select.x-justify-space-around{justify-content:space-around}.x-slider-select.x-align-start{align-items:flex-start}.x-slider-select.x-align-center{align-items:center}.x-slider-select.x-align-end{align-items:flex-end}.x-slider-select.x-direction-column{flex-direction:column}.x-slider-select.x-direction-column-reverse{flex-direction:column-reverse}.x-slider-select.x-direction-row{flex-direction:row}.x-slider-select.x-direction-row-reverse{flex-direction:row-reverse}.x-slider-select>label{display:inline-block;white-space:nowrap;height:calc(var(--x-font-size) + .875rem);line-height:calc(var(--x-font-size) + .875rem);color:var(--x-text-300);font-weight:600}.x-slider-select>label.x-text-align-start{text-align:start}.x-slider-select>label.x-text-align-center{text-align:center}.x-slider-select>label.x-text-align-end{text-align:end}.x-slider-select-label-required:before{display:inline-block;margin-right:.25rem;color:var(--x-danger);line-height:1;font-size:var(--x-font-size-small);content:\"*\"}.x-slider-select-inner{flex:1;position:relative;display:flex;align-items:center;padding-right:1rem}.x-slider-select-rail{position:absolute;margin-left:.5rem;width:calc(100% - 1rem);background-color:var(--x-border-100);height:calc(calc(var(--x-font-size) + .875rem) / 4);border-radius:var(--x-border-radius)}.x-slider-select-rail>div{width:100%;height:100%}.x-slider-select-track{margin-left:.5rem;width:calc(100% - 1rem);position:absolute}.x-slider-select-process{height:calc(calc(var(--x-font-size) + .875rem) / 4);background-color:var(--x-primary);border-radius:var(--x-border-radius);width:0%}.x-slider-select-drags{position:relative;width:100%;height:calc(var(--x-font-size) + .875rem);display:flex;align-items:center}.x-slider-select-drag{position:absolute;cursor:pointer}.x-slider-select-button{width:1rem;height:1rem;border-radius:1rem;border:calc(var(--x-border-width) * 2) solid var(--x-primary);background-color:var(--x-background-a100)}.x-slider-select.x-invalid>label,.x-slider-select.x-required>label{color:var(--x-danger)}.x-slider-select.x-invalid>.x-slider-select-row>x-icon,.x-slider-select.x-required>.x-slider-select-row>x-icon{color:var(--x-danger)}.x-slider-select.x-invalid>.x-slider-select-row:before,.x-slider-select.x-required>.x-slider-select-row:before{content:\" \";z-index:2;position:absolute;height:calc(var(--x-font-size) + .875rem);line-height:calc(var(--x-font-size) + .875rem);border-top-left-radius:var(--x-border-radius);border-bottom-left-radius:var(--x-border-radius);width:.125rem;background-color:var(--x-danger)}.x-slider-select.x-disabled .x-slider-select-rail{background-color:var(--x-border-300)}.x-slider-select.x-disabled .x-slider-select-process{background-color:var(--x-primary-400)}.x-slider-select.x-disabled .x-slider-select-drag{cursor:not-allowed}.x-slider-select.x-disabled .x-slider-select-button{border-color:var(--x-primary-400)}.x-slider-select.x-flex.x-direction-row>label{padding:0 .5rem 0 0}.x-slider-select.x-flex.x-direction-row-reverse>label{padding:0 0 0 .5rem}.x-slider-select.x-flex.x-direction-column,.x-slider-select.x-flex.x-direction-column-reverse{align-items:inherit}.x-slider-select-max-length{position:absolute;font-size:var(--x-font-size-small);color:var(--x-text-500);padding:0 var(--x-padding-medium);right:0}.x-slider-select:hover:not(.x-disabled) .x-slider-select-track{background-color:var(--x-border-100)}.x-slider-select:hover:not(.x-disabled) .x-slider-select-process{background-color:var(--x-primary-100)}.x-slider-select:hover:not(.x-disabled) .x-slider-select-button{border-color:var(--x-primary-100)}.x-slider-select-reverse .x-slider-select-inner{padding-right:0;padding-left:1rem}.x-slider-select-reverse .x-slider-select-rail{margin-left:-.5rem}.x-slider-select-reverse .x-slider-select-track{display:flex;justify-content:flex-end;margin-left:-.5rem}.x-slider-select-reverse .x-slider-select-drags{justify-content:flex-end;right:auto}.x-slider-select:not(.x-slider-select-reverse) .x-slider-select-drag{left:auto}\n"], dependencies: [{ kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i3.CdkDrag, selector: "[cdkDrag]", inputs: ["cdkDragData", "cdkDragLockAxis", "cdkDragRootElement", "cdkDragBoundary", "cdkDragStartDelay", "cdkDragFreeDragPosition", "cdkDragDisabled", "cdkDragConstrainPosition", "cdkDragPreviewClass", "cdkDragPreviewContainer"], outputs: ["cdkDragStarted", "cdkDragReleased", "cdkDragEnded", "cdkDragEntered", "cdkDragExited", "cdkDragDropped", "cdkDragMoved"], exportAs: ["cdkDrag"] }, { kind: "directive", type: i4.XTooltipDirective, selector: "[x-tooltip], x-tooltip" }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
456
+ /** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.0.5", type: XSliderSelectComponent, selector: "x-slider-select", host: { properties: { "class.x-slider-select-vertical": "this.getVertical" } }, providers: [XValueAccessor(XSliderSelectComponent)], viewQueries: [{ propertyName: "sliderSelect", first: true, predicate: ["sliderSelect"], descendants: true, static: true }, { propertyName: "dragStartRef", first: true, predicate: ["dragStartRef"], descendants: true, static: true }, { propertyName: "dragEndRef", first: true, predicate: ["dragEndRef"], descendants: true, static: true }, { propertyName: "railRef", first: true, predicate: ["railRef"], descendants: true, static: true }, { propertyName: "processRef", first: true, predicate: ["processRef"], descendants: true, static: true }, { propertyName: "cdkDrag", first: true, predicate: CdkDrag, descendants: true }, { propertyName: "tooltips", predicate: XTooltipDirective, descendants: true }], usesInheritance: true, ngImport: i0, template: "<div\r\n #sliderSelect\r\n class=\"x-slider-select\"\r\n [class.x-flex]=\"justify || align || direction\"\r\n [class.x-disabled]=\"disabled\"\r\n [class.x-required]=\"requiredIsEmpty\"\r\n [class.x-invalid]=\"invalid\"\r\n [class.x-slider-select-reverse]=\"reverse\"\r\n [class.x-slider-select-range]=\"range\"\r\n>\r\n <label\r\n *ngIf=\"label\"\r\n [class.x-slider-select-label-required]=\"required\"\r\n [style.width]=\"labelWidth\"\r\n [ngClass]=\"labelMap\"\r\n >{{ label }}</label\r\n >\r\n <div class=\"x-slider-select-inner\" #innerRef>\r\n <div class=\"x-slider-select-rail\" #railRef>\r\n <div></div>\r\n </div>\r\n <div class=\"x-slider-select-drags\">\r\n <div class=\"x-slider-select-track\" #trackRef>\r\n <div\r\n #processRef\r\n class=\"x-slider-select-process\"\r\n cdkDrag\r\n [cdkDragLockAxis]=\"vertical ? 'y' : 'x'\"\r\n [cdkDragDisabled]=\"disabled || !range\"\r\n [cdkDragBoundary]=\"trackRef\"\r\n (cdkDragStarted)=\"started($event, 'both')\"\r\n (cdkDragEnded)=\"ended($event, 'both')\"\r\n (cdkDragMoved)=\"moved($event, 'both')\"\r\n ></div>\r\n </div>\r\n <div class=\"x-slider-select-marks\">\r\n <div class=\"x-slider-select-mark\" [ngStyle]=\"mark.style\" *ngFor=\"let mark of markList\">\r\n <span class=\"x-slider-select-mark-label\">{{ mark.label }}</span>\r\n </div>\r\n </div>\r\n <div\r\n #dragStartRef\r\n class=\"x-slider-select-drag\"\r\n cdkDrag\r\n [cdkDragLockAxis]=\"vertical ? 'y' : 'x'\"\r\n [cdkDragDisabled]=\"disabled\"\r\n [cdkDragBoundary]=\"innerRef\"\r\n (cdkDragStarted)=\"started($event, 'start')\"\r\n (cdkDragEnded)=\"ended($event, 'start')\"\r\n (cdkDragMoved)=\"moved($event, 'start')\"\r\n >\r\n <div\r\n #tooltipStart\r\n x-tooltip\r\n tabindex=\"0\"\r\n class=\"x-slider-select-button\"\r\n [class.x-slider-select-button-actived]=\"startVisible\"\r\n [class.x-slider-select-custom-button]=\"customButton\"\r\n placement=\"top\"\r\n [disabled]=\"!showTooltip && !showStartTooltip\"\r\n [content]=\"startDisplayValue\"\r\n [visible]=\"startVisible\"\r\n [manual]=\"startManual\"\r\n >\r\n <ng-container *xOutlet=\"customButton\">{{ customButton }}</ng-container>\r\n </div>\r\n </div>\r\n <div\r\n [hidden]=\"!range\"\r\n #dragEndRef\r\n class=\"x-slider-select-drag\"\r\n cdkDrag\r\n [cdkDragLockAxis]=\"vertical ? 'y' : 'x'\"\r\n [cdkDragDisabled]=\"disabled\"\r\n [cdkDragBoundary]=\"innerRef\"\r\n (cdkDragStarted)=\"started($event, 'end')\"\r\n (cdkDragEnded)=\"ended($event, 'end')\"\r\n (cdkDragMoved)=\"moved($event, 'end')\"\r\n >\r\n <div\r\n #tooltipEnd\r\n x-tooltip\r\n tabindex=\"0\"\r\n class=\"x-slider-select-button\"\r\n [class.x-slider-select-button-actived]=\"endVisible\"\r\n [class.x-slider-select-custom-button]=\"customButton\"\r\n placement=\"top\"\r\n [disabled]=\"!showTooltip && !showEndTooltip\"\r\n [content]=\"endDisplayValue\"\r\n [visible]=\"endVisible\"\r\n [manual]=\"endManual\"\r\n >\r\n <ng-container *xOutlet=\"customButton\">{{ customButton }}</ng-container>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n</div>\r\n", styles: ["@charset \"UTF-8\";x-slider-select{display:inline-block;width:12rem}.x-slider-select{margin:0;padding:0;width:100%}.x-slider-select.x-flex{display:flex}.x-slider-select.x-justify-start{justify-content:flex-start}.x-slider-select.x-justify-center{justify-content:center}.x-slider-select.x-justify-end{justify-content:flex-end}.x-slider-select.x-justify-space-between{justify-content:space-between}.x-slider-select.x-justify-space-around{justify-content:space-around}.x-slider-select.x-align-start{align-items:flex-start}.x-slider-select.x-align-center{align-items:center}.x-slider-select.x-align-end{align-items:flex-end}.x-slider-select.x-direction-column{flex-direction:column}.x-slider-select.x-direction-column-reverse{flex-direction:column-reverse}.x-slider-select.x-direction-row{flex-direction:row}.x-slider-select.x-direction-row-reverse{flex-direction:row-reverse}.x-slider-select>label{display:inline-block;white-space:nowrap;height:calc(var(--x-font-size) + .875rem);line-height:calc(var(--x-font-size) + .875rem);color:var(--x-text-300);font-weight:600}.x-slider-select>label.x-text-align-start{text-align:start}.x-slider-select>label.x-text-align-center{text-align:center}.x-slider-select>label.x-text-align-end{text-align:end}.x-slider-select-label-required:before{display:inline-block;margin-right:.25rem;color:var(--x-danger);line-height:1;font-size:var(--x-font-size-small);content:\"*\"}.x-slider-select-inner{flex:1;position:relative;display:flex;align-items:center;padding-right:.875rem}.x-slider-select-rail{position:absolute;margin-left:.4375rem;width:calc(100% - .875rem);background-color:var(--x-border-100);height:calc(calc(var(--x-font-size) + .875rem) / 5);border-radius:var(--x-border-radius)}.x-slider-select-rail>div{width:100%;height:100%}.x-slider-select-track{margin-left:.4375rem;width:100%;border-radius:var(--x-border-radius);position:absolute}.x-slider-select-process{height:calc(calc(var(--x-font-size) + .875rem) / 5);background-color:var(--x-primary);border-radius:var(--x-border-radius);width:0%;position:relative}.x-slider-select-drags{position:relative;width:100%;height:calc(var(--x-font-size) + .875rem);display:flex;align-items:center}.x-slider-select-drag{position:absolute;cursor:pointer}.x-slider-select-marks{position:absolute;margin-left:.4375rem;width:100%;height:calc(var(--x-font-size) + .875rem);display:flex;align-items:center}.x-slider-select-mark{position:absolute;transform:translate(-50%);border-radius:.875rem;display:flex;align-items:center;justify-content:center}.x-slider-select-mark:before{content:\" \";position:absolute;width:.65625rem;height:.65625rem;border:calc(var(--x-border-width) * 2) solid var(--x-primary);background-color:var(--x-background-a100);border-radius:.875rem}.x-slider-select-mark-label{transform:translateY(.875rem)}.x-slider-select-button:not(.x-slider-select-custom-button){border-radius:.875rem;border:calc(var(--x-border-width) * 2) solid var(--x-primary);background-color:var(--x-background-a100)}.x-slider-select-button{width:.875rem;height:.875rem;display:flex;align-items:center;justify-content:center;transition:var(--x-animation-duration-base)}.x-slider-select-button:hover,.x-slider-select-button-actived{transform:scale(1.2)}.x-slider-select-bar{width:100%;height:100%}.x-slider-select.x-invalid>label,.x-slider-select.x-required>label{color:var(--x-danger)}.x-slider-select.x-invalid>.x-slider-select-row>x-icon,.x-slider-select.x-required>.x-slider-select-row>x-icon{color:var(--x-danger)}.x-slider-select.x-invalid>.x-slider-select-row:before,.x-slider-select.x-required>.x-slider-select-row:before{content:\" \";z-index:2;position:absolute;height:calc(var(--x-font-size) + .875rem);line-height:calc(var(--x-font-size) + .875rem);border-top-left-radius:var(--x-border-radius);border-bottom-left-radius:var(--x-border-radius);width:.125rem;background-color:var(--x-danger)}.x-slider-select.x-disabled .x-slider-select-rail{background-color:var(--x-border-300)}.x-slider-select.x-disabled .x-slider-select-process{background-color:var(--x-primary-400)}.x-slider-select.x-disabled .x-slider-select-drag{cursor:not-allowed}.x-slider-select.x-disabled .x-slider-select-button:not(.x-slider-select-custom-button){border-color:var(--x-primary-400)}.x-slider-select.x-flex.x-direction-row>label{padding:0 .5rem 0 0}.x-slider-select.x-flex.x-direction-row-reverse>label{padding:0 0 0 .5rem}.x-slider-select.x-flex.x-direction-column,.x-slider-select.x-flex.x-direction-column-reverse{align-items:inherit}.x-slider-select-max-length{position:absolute;font-size:var(--x-font-size-small);color:var(--x-text-500);padding:0 var(--x-padding-medium);right:0}.x-slider-select:hover:not(.x-disabled) .x-slider-select-process{background-color:var(--x-primary-100)}.x-slider-select:hover:not(.x-disabled) .x-slider-select-button{border-color:var(--x-primary-100)}.x-slider-select-reverse .x-slider-select-inner{padding-right:0;padding-left:.875rem}.x-slider-select-reverse .x-slider-select-rail{margin-left:-.4375rem}.x-slider-select-reverse .x-slider-select-marks{margin-right:.4375rem}.x-slider-select-reverse .x-slider-select-mark{transform:translate(50%)}.x-slider-select-reverse .x-slider-select-track{display:flex;justify-content:flex-end;margin-right:.4375rem}.x-slider-select-reverse .x-slider-select-drags{justify-content:flex-end;right:auto}.x-slider-select-vertical{width:initial;height:12rem}.x-slider-select-vertical .x-slider-select{height:100%}.x-slider-select-vertical .x-slider-select-inner{padding-right:initial;padding-top:.875rem;align-items:initial;justify-content:center;height:100%}.x-slider-select-vertical .x-slider-select-rail{margin-left:initial;margin-top:-.4375rem;height:calc(100% - .875rem);width:calc(calc(var(--x-font-size) + .875rem) / 5)}.x-slider-select-vertical .x-slider-select-track{display:flex;align-items:flex-end;margin-left:initial;margin-bottom:.4375rem;width:calc(calc(var(--x-font-size) + .875rem) / 5);height:100%}.x-slider-select-vertical .x-slider-select-marks{display:flex;align-items:flex-end;justify-content:center;margin-left:initial;margin-bottom:.4375rem;width:calc(calc(var(--x-font-size) + .875rem) / 5);height:100%}.x-slider-select-vertical .x-slider-select-mark{transform:translate(0) translateY(50%)}.x-slider-select-vertical .x-slider-select-mark-label{transform:translate(50%) translateY(0);margin-left:.875rem}.x-slider-select-vertical .x-slider-select-process{height:0%;width:calc(calc(var(--x-font-size) + .875rem) / 5)}.x-slider-select-vertical .x-slider-select-drags{height:100%;width:calc(var(--x-font-size) + .875rem);align-items:flex-end;justify-content:center;right:auto}.x-slider-select-vertical .x-slider-select-reverse .x-slider-select-inner{padding-left:initial;padding-bottom:.875rem;padding-top:initial}.x-slider-select-vertical .x-slider-select-reverse .x-slider-select-rail{margin-top:.4375rem}.x-slider-select-vertical .x-slider-select-reverse .x-slider-select-track,.x-slider-select-vertical .x-slider-select-reverse .x-slider-select-marks{align-items:flex-start;margin-bottom:-.4375rem;margin-right:initial}.x-slider-select-vertical .x-slider-select-reverse .x-slider-select-mark{transform:translate(0) translateY(-50%)}.x-slider-select-range .x-slider-select-process{cursor:pointer}.x-slider-select:not(.x-slider-select-reverse) .x-slider-select-drag{left:auto}\n"], dependencies: [{ kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "directive", type: i3.CdkDrag, selector: "[cdkDrag]", inputs: ["cdkDragData", "cdkDragLockAxis", "cdkDragRootElement", "cdkDragBoundary", "cdkDragStartDelay", "cdkDragFreeDragPosition", "cdkDragDisabled", "cdkDragConstrainPosition", "cdkDragPreviewClass", "cdkDragPreviewContainer"], outputs: ["cdkDragStarted", "cdkDragReleased", "cdkDragEnded", "cdkDragEntered", "cdkDragExited", "cdkDragDropped", "cdkDragMoved"], exportAs: ["cdkDrag"] }, { kind: "directive", type: i4.XTooltipDirective, selector: "[x-tooltip], x-tooltip" }, { kind: "directive", type: i5.XOutletDirective, selector: "[xOutlet]", inputs: ["xOutletContext", "xOutlet"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
247
457
  }
248
458
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.5", ngImport: i0, type: XSliderSelectComponent, decorators: [{
249
459
  type: Component,
250
- args: [{ selector: `${XSliderSelectPrefix}`, encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, providers: [XValueAccessor(XSliderSelectComponent)], template: "<div\r\n #sliderSelect\r\n class=\"x-slider-select\"\r\n [class.x-flex]=\"justify || align || direction\"\r\n [class.x-disabled]=\"disabled\"\r\n [class.x-required]=\"requiredIsEmpty\"\r\n [class.x-invalid]=\"invalid\"\r\n [class.x-slider-select-reverse]=\"reverse\"\r\n>\r\n <label *ngIf=\"label\" [class.x-slider-select-label-required]=\"required\" [style.width]=\"labelWidth\" [ngClass]=\"labelMap\">{{ label }}</label>\r\n <div class=\"x-slider-select-inner\" #innerRef (click)=\"onInnerClick($event)\">\r\n <div class=\"x-slider-select-rail\" #railRef>\r\n <div></div>\r\n </div>\r\n <div class=\"x-slider-select-track\" #trackRef>\r\n <div class=\"x-slider-select-process\" #processRef></div>\r\n </div>\r\n <div class=\"x-slider-select-drags\">\r\n <div\r\n #dragRef\r\n class=\"x-slider-select-drag\"\r\n cdkDrag\r\n cdkDragLockAxis=\"x\"\r\n [cdkDragDisabled]=\"disabled\"\r\n [cdkDragBoundary]=\"innerRef\"\r\n (cdkDragStarted)=\"started($event)\"\r\n (cdkDragEnded)=\"ended($event)\"\r\n (cdkDragMoved)=\"moved($event)\"\r\n >\r\n <div\r\n #tooltip\r\n x-tooltip\r\n class=\"x-slider-select-button\"\r\n placement=\"top\"\r\n [disabled]=\"!showTooltip\"\r\n [content]=\"displayValue\"\r\n [visible]=\"visible\"\r\n [manual]=\"manual\"\r\n ></div>\r\n </div>\r\n </div>\r\n </div>\r\n</div>\r\n", styles: ["@charset \"UTF-8\";x-slider-select{display:inline-block;width:12rem}.x-slider-select{margin:0;padding:0;width:100%}.x-slider-select.x-flex{display:flex}.x-slider-select.x-justify-start{justify-content:flex-start}.x-slider-select.x-justify-center{justify-content:center}.x-slider-select.x-justify-end{justify-content:flex-end}.x-slider-select.x-justify-space-between{justify-content:space-between}.x-slider-select.x-justify-space-around{justify-content:space-around}.x-slider-select.x-align-start{align-items:flex-start}.x-slider-select.x-align-center{align-items:center}.x-slider-select.x-align-end{align-items:flex-end}.x-slider-select.x-direction-column{flex-direction:column}.x-slider-select.x-direction-column-reverse{flex-direction:column-reverse}.x-slider-select.x-direction-row{flex-direction:row}.x-slider-select.x-direction-row-reverse{flex-direction:row-reverse}.x-slider-select>label{display:inline-block;white-space:nowrap;height:calc(var(--x-font-size) + .875rem);line-height:calc(var(--x-font-size) + .875rem);color:var(--x-text-300);font-weight:600}.x-slider-select>label.x-text-align-start{text-align:start}.x-slider-select>label.x-text-align-center{text-align:center}.x-slider-select>label.x-text-align-end{text-align:end}.x-slider-select-label-required:before{display:inline-block;margin-right:.25rem;color:var(--x-danger);line-height:1;font-size:var(--x-font-size-small);content:\"*\"}.x-slider-select-inner{flex:1;position:relative;display:flex;align-items:center;padding-right:1rem}.x-slider-select-rail{position:absolute;margin-left:.5rem;width:calc(100% - 1rem);background-color:var(--x-border-100);height:calc(calc(var(--x-font-size) + .875rem) / 4);border-radius:var(--x-border-radius)}.x-slider-select-rail>div{width:100%;height:100%}.x-slider-select-track{margin-left:.5rem;width:calc(100% - 1rem);position:absolute}.x-slider-select-process{height:calc(calc(var(--x-font-size) + .875rem) / 4);background-color:var(--x-primary);border-radius:var(--x-border-radius);width:0%}.x-slider-select-drags{position:relative;width:100%;height:calc(var(--x-font-size) + .875rem);display:flex;align-items:center}.x-slider-select-drag{position:absolute;cursor:pointer}.x-slider-select-button{width:1rem;height:1rem;border-radius:1rem;border:calc(var(--x-border-width) * 2) solid var(--x-primary);background-color:var(--x-background-a100)}.x-slider-select.x-invalid>label,.x-slider-select.x-required>label{color:var(--x-danger)}.x-slider-select.x-invalid>.x-slider-select-row>x-icon,.x-slider-select.x-required>.x-slider-select-row>x-icon{color:var(--x-danger)}.x-slider-select.x-invalid>.x-slider-select-row:before,.x-slider-select.x-required>.x-slider-select-row:before{content:\" \";z-index:2;position:absolute;height:calc(var(--x-font-size) + .875rem);line-height:calc(var(--x-font-size) + .875rem);border-top-left-radius:var(--x-border-radius);border-bottom-left-radius:var(--x-border-radius);width:.125rem;background-color:var(--x-danger)}.x-slider-select.x-disabled .x-slider-select-rail{background-color:var(--x-border-300)}.x-slider-select.x-disabled .x-slider-select-process{background-color:var(--x-primary-400)}.x-slider-select.x-disabled .x-slider-select-drag{cursor:not-allowed}.x-slider-select.x-disabled .x-slider-select-button{border-color:var(--x-primary-400)}.x-slider-select.x-flex.x-direction-row>label{padding:0 .5rem 0 0}.x-slider-select.x-flex.x-direction-row-reverse>label{padding:0 0 0 .5rem}.x-slider-select.x-flex.x-direction-column,.x-slider-select.x-flex.x-direction-column-reverse{align-items:inherit}.x-slider-select-max-length{position:absolute;font-size:var(--x-font-size-small);color:var(--x-text-500);padding:0 var(--x-padding-medium);right:0}.x-slider-select:hover:not(.x-disabled) .x-slider-select-track{background-color:var(--x-border-100)}.x-slider-select:hover:not(.x-disabled) .x-slider-select-process{background-color:var(--x-primary-100)}.x-slider-select:hover:not(.x-disabled) .x-slider-select-button{border-color:var(--x-primary-100)}.x-slider-select-reverse .x-slider-select-inner{padding-right:0;padding-left:1rem}.x-slider-select-reverse .x-slider-select-rail{margin-left:-.5rem}.x-slider-select-reverse .x-slider-select-track{display:flex;justify-content:flex-end;margin-left:-.5rem}.x-slider-select-reverse .x-slider-select-drags{justify-content:flex-end;right:auto}.x-slider-select:not(.x-slider-select-reverse) .x-slider-select-drag{left:auto}\n"] }]
460
+ args: [{ selector: `${XSliderSelectPrefix}`, encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, providers: [XValueAccessor(XSliderSelectComponent)], template: "<div\r\n #sliderSelect\r\n class=\"x-slider-select\"\r\n [class.x-flex]=\"justify || align || direction\"\r\n [class.x-disabled]=\"disabled\"\r\n [class.x-required]=\"requiredIsEmpty\"\r\n [class.x-invalid]=\"invalid\"\r\n [class.x-slider-select-reverse]=\"reverse\"\r\n [class.x-slider-select-range]=\"range\"\r\n>\r\n <label\r\n *ngIf=\"label\"\r\n [class.x-slider-select-label-required]=\"required\"\r\n [style.width]=\"labelWidth\"\r\n [ngClass]=\"labelMap\"\r\n >{{ label }}</label\r\n >\r\n <div class=\"x-slider-select-inner\" #innerRef>\r\n <div class=\"x-slider-select-rail\" #railRef>\r\n <div></div>\r\n </div>\r\n <div class=\"x-slider-select-drags\">\r\n <div class=\"x-slider-select-track\" #trackRef>\r\n <div\r\n #processRef\r\n class=\"x-slider-select-process\"\r\n cdkDrag\r\n [cdkDragLockAxis]=\"vertical ? 'y' : 'x'\"\r\n [cdkDragDisabled]=\"disabled || !range\"\r\n [cdkDragBoundary]=\"trackRef\"\r\n (cdkDragStarted)=\"started($event, 'both')\"\r\n (cdkDragEnded)=\"ended($event, 'both')\"\r\n (cdkDragMoved)=\"moved($event, 'both')\"\r\n ></div>\r\n </div>\r\n <div class=\"x-slider-select-marks\">\r\n <div class=\"x-slider-select-mark\" [ngStyle]=\"mark.style\" *ngFor=\"let mark of markList\">\r\n <span class=\"x-slider-select-mark-label\">{{ mark.label }}</span>\r\n </div>\r\n </div>\r\n <div\r\n #dragStartRef\r\n class=\"x-slider-select-drag\"\r\n cdkDrag\r\n [cdkDragLockAxis]=\"vertical ? 'y' : 'x'\"\r\n [cdkDragDisabled]=\"disabled\"\r\n [cdkDragBoundary]=\"innerRef\"\r\n (cdkDragStarted)=\"started($event, 'start')\"\r\n (cdkDragEnded)=\"ended($event, 'start')\"\r\n (cdkDragMoved)=\"moved($event, 'start')\"\r\n >\r\n <div\r\n #tooltipStart\r\n x-tooltip\r\n tabindex=\"0\"\r\n class=\"x-slider-select-button\"\r\n [class.x-slider-select-button-actived]=\"startVisible\"\r\n [class.x-slider-select-custom-button]=\"customButton\"\r\n placement=\"top\"\r\n [disabled]=\"!showTooltip && !showStartTooltip\"\r\n [content]=\"startDisplayValue\"\r\n [visible]=\"startVisible\"\r\n [manual]=\"startManual\"\r\n >\r\n <ng-container *xOutlet=\"customButton\">{{ customButton }}</ng-container>\r\n </div>\r\n </div>\r\n <div\r\n [hidden]=\"!range\"\r\n #dragEndRef\r\n class=\"x-slider-select-drag\"\r\n cdkDrag\r\n [cdkDragLockAxis]=\"vertical ? 'y' : 'x'\"\r\n [cdkDragDisabled]=\"disabled\"\r\n [cdkDragBoundary]=\"innerRef\"\r\n (cdkDragStarted)=\"started($event, 'end')\"\r\n (cdkDragEnded)=\"ended($event, 'end')\"\r\n (cdkDragMoved)=\"moved($event, 'end')\"\r\n >\r\n <div\r\n #tooltipEnd\r\n x-tooltip\r\n tabindex=\"0\"\r\n class=\"x-slider-select-button\"\r\n [class.x-slider-select-button-actived]=\"endVisible\"\r\n [class.x-slider-select-custom-button]=\"customButton\"\r\n placement=\"top\"\r\n [disabled]=\"!showTooltip && !showEndTooltip\"\r\n [content]=\"endDisplayValue\"\r\n [visible]=\"endVisible\"\r\n [manual]=\"endManual\"\r\n >\r\n <ng-container *xOutlet=\"customButton\">{{ customButton }}</ng-container>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n</div>\r\n", styles: ["@charset \"UTF-8\";x-slider-select{display:inline-block;width:12rem}.x-slider-select{margin:0;padding:0;width:100%}.x-slider-select.x-flex{display:flex}.x-slider-select.x-justify-start{justify-content:flex-start}.x-slider-select.x-justify-center{justify-content:center}.x-slider-select.x-justify-end{justify-content:flex-end}.x-slider-select.x-justify-space-between{justify-content:space-between}.x-slider-select.x-justify-space-around{justify-content:space-around}.x-slider-select.x-align-start{align-items:flex-start}.x-slider-select.x-align-center{align-items:center}.x-slider-select.x-align-end{align-items:flex-end}.x-slider-select.x-direction-column{flex-direction:column}.x-slider-select.x-direction-column-reverse{flex-direction:column-reverse}.x-slider-select.x-direction-row{flex-direction:row}.x-slider-select.x-direction-row-reverse{flex-direction:row-reverse}.x-slider-select>label{display:inline-block;white-space:nowrap;height:calc(var(--x-font-size) + .875rem);line-height:calc(var(--x-font-size) + .875rem);color:var(--x-text-300);font-weight:600}.x-slider-select>label.x-text-align-start{text-align:start}.x-slider-select>label.x-text-align-center{text-align:center}.x-slider-select>label.x-text-align-end{text-align:end}.x-slider-select-label-required:before{display:inline-block;margin-right:.25rem;color:var(--x-danger);line-height:1;font-size:var(--x-font-size-small);content:\"*\"}.x-slider-select-inner{flex:1;position:relative;display:flex;align-items:center;padding-right:.875rem}.x-slider-select-rail{position:absolute;margin-left:.4375rem;width:calc(100% - .875rem);background-color:var(--x-border-100);height:calc(calc(var(--x-font-size) + .875rem) / 5);border-radius:var(--x-border-radius)}.x-slider-select-rail>div{width:100%;height:100%}.x-slider-select-track{margin-left:.4375rem;width:100%;border-radius:var(--x-border-radius);position:absolute}.x-slider-select-process{height:calc(calc(var(--x-font-size) + .875rem) / 5);background-color:var(--x-primary);border-radius:var(--x-border-radius);width:0%;position:relative}.x-slider-select-drags{position:relative;width:100%;height:calc(var(--x-font-size) + .875rem);display:flex;align-items:center}.x-slider-select-drag{position:absolute;cursor:pointer}.x-slider-select-marks{position:absolute;margin-left:.4375rem;width:100%;height:calc(var(--x-font-size) + .875rem);display:flex;align-items:center}.x-slider-select-mark{position:absolute;transform:translate(-50%);border-radius:.875rem;display:flex;align-items:center;justify-content:center}.x-slider-select-mark:before{content:\" \";position:absolute;width:.65625rem;height:.65625rem;border:calc(var(--x-border-width) * 2) solid var(--x-primary);background-color:var(--x-background-a100);border-radius:.875rem}.x-slider-select-mark-label{transform:translateY(.875rem)}.x-slider-select-button:not(.x-slider-select-custom-button){border-radius:.875rem;border:calc(var(--x-border-width) * 2) solid var(--x-primary);background-color:var(--x-background-a100)}.x-slider-select-button{width:.875rem;height:.875rem;display:flex;align-items:center;justify-content:center;transition:var(--x-animation-duration-base)}.x-slider-select-button:hover,.x-slider-select-button-actived{transform:scale(1.2)}.x-slider-select-bar{width:100%;height:100%}.x-slider-select.x-invalid>label,.x-slider-select.x-required>label{color:var(--x-danger)}.x-slider-select.x-invalid>.x-slider-select-row>x-icon,.x-slider-select.x-required>.x-slider-select-row>x-icon{color:var(--x-danger)}.x-slider-select.x-invalid>.x-slider-select-row:before,.x-slider-select.x-required>.x-slider-select-row:before{content:\" \";z-index:2;position:absolute;height:calc(var(--x-font-size) + .875rem);line-height:calc(var(--x-font-size) + .875rem);border-top-left-radius:var(--x-border-radius);border-bottom-left-radius:var(--x-border-radius);width:.125rem;background-color:var(--x-danger)}.x-slider-select.x-disabled .x-slider-select-rail{background-color:var(--x-border-300)}.x-slider-select.x-disabled .x-slider-select-process{background-color:var(--x-primary-400)}.x-slider-select.x-disabled .x-slider-select-drag{cursor:not-allowed}.x-slider-select.x-disabled .x-slider-select-button:not(.x-slider-select-custom-button){border-color:var(--x-primary-400)}.x-slider-select.x-flex.x-direction-row>label{padding:0 .5rem 0 0}.x-slider-select.x-flex.x-direction-row-reverse>label{padding:0 0 0 .5rem}.x-slider-select.x-flex.x-direction-column,.x-slider-select.x-flex.x-direction-column-reverse{align-items:inherit}.x-slider-select-max-length{position:absolute;font-size:var(--x-font-size-small);color:var(--x-text-500);padding:0 var(--x-padding-medium);right:0}.x-slider-select:hover:not(.x-disabled) .x-slider-select-process{background-color:var(--x-primary-100)}.x-slider-select:hover:not(.x-disabled) .x-slider-select-button{border-color:var(--x-primary-100)}.x-slider-select-reverse .x-slider-select-inner{padding-right:0;padding-left:.875rem}.x-slider-select-reverse .x-slider-select-rail{margin-left:-.4375rem}.x-slider-select-reverse .x-slider-select-marks{margin-right:.4375rem}.x-slider-select-reverse .x-slider-select-mark{transform:translate(50%)}.x-slider-select-reverse .x-slider-select-track{display:flex;justify-content:flex-end;margin-right:.4375rem}.x-slider-select-reverse .x-slider-select-drags{justify-content:flex-end;right:auto}.x-slider-select-vertical{width:initial;height:12rem}.x-slider-select-vertical .x-slider-select{height:100%}.x-slider-select-vertical .x-slider-select-inner{padding-right:initial;padding-top:.875rem;align-items:initial;justify-content:center;height:100%}.x-slider-select-vertical .x-slider-select-rail{margin-left:initial;margin-top:-.4375rem;height:calc(100% - .875rem);width:calc(calc(var(--x-font-size) + .875rem) / 5)}.x-slider-select-vertical .x-slider-select-track{display:flex;align-items:flex-end;margin-left:initial;margin-bottom:.4375rem;width:calc(calc(var(--x-font-size) + .875rem) / 5);height:100%}.x-slider-select-vertical .x-slider-select-marks{display:flex;align-items:flex-end;justify-content:center;margin-left:initial;margin-bottom:.4375rem;width:calc(calc(var(--x-font-size) + .875rem) / 5);height:100%}.x-slider-select-vertical .x-slider-select-mark{transform:translate(0) translateY(50%)}.x-slider-select-vertical .x-slider-select-mark-label{transform:translate(50%) translateY(0);margin-left:.875rem}.x-slider-select-vertical .x-slider-select-process{height:0%;width:calc(calc(var(--x-font-size) + .875rem) / 5)}.x-slider-select-vertical .x-slider-select-drags{height:100%;width:calc(var(--x-font-size) + .875rem);align-items:flex-end;justify-content:center;right:auto}.x-slider-select-vertical .x-slider-select-reverse .x-slider-select-inner{padding-left:initial;padding-bottom:.875rem;padding-top:initial}.x-slider-select-vertical .x-slider-select-reverse .x-slider-select-rail{margin-top:.4375rem}.x-slider-select-vertical .x-slider-select-reverse .x-slider-select-track,.x-slider-select-vertical .x-slider-select-reverse .x-slider-select-marks{align-items:flex-start;margin-bottom:-.4375rem;margin-right:initial}.x-slider-select-vertical .x-slider-select-reverse .x-slider-select-mark{transform:translate(0) translateY(-50%)}.x-slider-select-range .x-slider-select-process{cursor:pointer}.x-slider-select:not(.x-slider-select-reverse) .x-slider-select-drag{left:auto}\n"] }]
251
461
  }], ctorParameters: function () { return [{ type: i0.Renderer2 }, { type: i0.ElementRef }, { type: i0.ChangeDetectorRef }, { type: i1.XConfigService }]; }, propDecorators: { sliderSelect: [{
252
462
  type: ViewChild,
253
463
  args: ['sliderSelect', { static: true }]
254
- }], dragRef: [{
464
+ }], dragStartRef: [{
465
+ type: ViewChild,
466
+ args: ['dragStartRef', { static: true }]
467
+ }], dragEndRef: [{
255
468
  type: ViewChild,
256
- args: ['dragRef', { static: true }]
469
+ args: ['dragEndRef', { static: true }]
257
470
  }], railRef: [{
258
471
  type: ViewChild,
259
472
  args: ['railRef', { static: true }]
260
473
  }], processRef: [{
261
474
  type: ViewChild,
262
475
  args: ['processRef', { static: true }]
263
- }], tooltip: [{
476
+ }], getVertical: [{
477
+ type: HostBinding,
478
+ args: ['class.x-slider-select-vertical']
479
+ }], tooltips: [{
480
+ type: ViewChildren,
481
+ args: [XTooltipDirective]
482
+ }], cdkDrag: [{
264
483
  type: ViewChild,
265
- args: [XTooltipDirective, { static: true }]
484
+ args: [CdkDrag]
266
485
  }] } });
267
486
 
268
487
  class XSliderSelectModule {
269
488
  /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.0.5", ngImport: i0, type: XSliderSelectModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
270
- /** @nocollapse */ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "16.0.5", ngImport: i0, type: XSliderSelectModule, declarations: [XSliderSelectComponent, XSliderSelectProperty], imports: [CommonModule, FormsModule, ReactiveFormsModule, DragDropModule, XTooltipModule, XBaseFormModule], exports: [XSliderSelectComponent] }); }
271
- /** @nocollapse */ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "16.0.5", ngImport: i0, type: XSliderSelectModule, imports: [CommonModule, FormsModule, ReactiveFormsModule, DragDropModule, XTooltipModule, XBaseFormModule] }); }
489
+ /** @nocollapse */ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "16.0.5", ngImport: i0, type: XSliderSelectModule, declarations: [XSliderSelectComponent, XSliderSelectProperty], imports: [CommonModule,
490
+ FormsModule,
491
+ ReactiveFormsModule,
492
+ DragDropModule,
493
+ XTooltipModule,
494
+ XBaseFormModule,
495
+ XDragModule,
496
+ XOutletModule], exports: [XSliderSelectComponent] }); }
497
+ /** @nocollapse */ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "16.0.5", ngImport: i0, type: XSliderSelectModule, imports: [CommonModule,
498
+ FormsModule,
499
+ ReactiveFormsModule,
500
+ DragDropModule,
501
+ XTooltipModule,
502
+ XBaseFormModule,
503
+ XDragModule,
504
+ XOutletModule] }); }
272
505
  }
273
506
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.5", ngImport: i0, type: XSliderSelectModule, decorators: [{
274
507
  type: NgModule,
275
508
  args: [{
276
509
  declarations: [XSliderSelectComponent, XSliderSelectProperty],
277
510
  exports: [XSliderSelectComponent],
278
- imports: [CommonModule, FormsModule, ReactiveFormsModule, DragDropModule, XTooltipModule, XBaseFormModule]
511
+ imports: [
512
+ CommonModule,
513
+ FormsModule,
514
+ ReactiveFormsModule,
515
+ DragDropModule,
516
+ XTooltipModule,
517
+ XBaseFormModule,
518
+ XDragModule,
519
+ XOutletModule
520
+ ]
279
521
  }]
280
522
  }] });
281
523