@ng-nest/ui 18.0.11 → 18.0.12

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.
@@ -294,6 +294,7 @@ class XSliderSelectComponent extends XSliderSelectProperty {
294
294
  this.onChange(this.value());
295
295
  }
296
296
  getOffset(val) {
297
+ console.log(val, this.min(), this.max());
297
298
  return Math.abs(Math.round(((val + (this.reverse() ? -this.min() : this.min())) * 100) / (this.max() - this.min())));
298
299
  }
299
300
  setLeft() {
@@ -438,9 +439,11 @@ class XSliderSelectComponent extends XSliderSelectProperty {
438
439
  }
439
440
  else {
440
441
  if (this.reverse()) {
442
+ this.renderer.removeStyle(this.dragStartRef().nativeElement, 'bottom');
441
443
  this.renderer.setStyle(this.dragStartRef().nativeElement, 'top', `${this.startOffset()}%`);
442
444
  }
443
445
  else {
446
+ this.renderer.removeStyle(this.dragStartRef().nativeElement, 'top');
444
447
  this.renderer.setStyle(this.dragStartRef().nativeElement, 'bottom', `${this.startOffset()}%`);
445
448
  }
446
449
  this.renderer.setStyle(this.processRef().nativeElement, 'height', `${this.startOffset()}%`);
@@ -464,9 +467,11 @@ class XSliderSelectComponent extends XSliderSelectProperty {
464
467
  }
465
468
  else {
466
469
  if (this.reverse()) {
470
+ this.renderer.removeStyle(this.dragStartRef().nativeElement, 'left');
467
471
  this.renderer.setStyle(this.dragStartRef().nativeElement, 'right', `${this.startOffset()}%`);
468
472
  }
469
473
  else {
474
+ this.renderer.removeStyle(this.dragStartRef().nativeElement, 'right');
470
475
  this.renderer.setStyle(this.dragStartRef().nativeElement, 'left', `${this.startOffset()}%`);
471
476
  }
472
477
  this.renderer.setStyle(this.processRef().nativeElement, 'width', `${this.startOffset()}%`);
@@ -474,7 +479,7 @@ class XSliderSelectComponent extends XSliderSelectProperty {
474
479
  }
475
480
  }
476
481
  /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.2", ngImport: i0, type: XSliderSelectComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
477
- /** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.2", type: XSliderSelectComponent, isStandalone: true, 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, isSignal: true }, { propertyName: "dragStartRef", first: true, predicate: ["dragStartRef"], descendants: true, isSignal: true }, { propertyName: "dragEndRef", first: true, predicate: ["dragEndRef"], descendants: true, isSignal: true }, { propertyName: "railRef", first: true, predicate: ["railRef"], descendants: true, isSignal: true }, { propertyName: "processRef", first: true, predicate: ["processRef"], descendants: true, isSignal: true }, { propertyName: "tooltips", predicate: XTooltipDirective, descendants: true, isSignal: 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]=\"disabledComputed()\"\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 [ngClass]=\"classMap()\"\r\n>\r\n @if (label()) {\r\n <label\r\n [class.x-slider-select-label-required]=\"requiredComputed()\"\r\n [style.width]=\"labelWidth()\"\r\n [ngClass]=\"labelMapSignal()\"\r\n >{{ label() }}</label\r\n >\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]=\"disabledComputed() || !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 @for (mark of markList(); track mark.label) {\r\n <div class=\"x-slider-select-mark\" [ngStyle]=\"mark.style\">\r\n <span class=\"x-slider-select-mark-label\">{{ mark.label }}</span>\r\n </div>\r\n }\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]=\"disabledComputed()\"\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]=\"tooltipStartTpl\"\r\n [(visible)]=\"startVisible\"\r\n [manual]=\"startManual()\"\r\n >\r\n <ng-container *xOutlet=\"customButton()\">{{ customButton() }}</ng-container>\r\n </div>\r\n <ng-template #tooltipStartTpl>\r\n <ng-container *xOutlet=\"tooltipCustom(); context: { $value: startDisplayValue() }\">{{\r\n startDisplayValue()\r\n }}</ng-container>\r\n </ng-template>\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]=\"disabledComputed()\"\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]=\"tooltipEndTpl\"\r\n [(visible)]=\"endVisible\"\r\n [manual]=\"endManual()\"\r\n >\r\n <ng-container *xOutlet=\"customButton()\">{{ customButton() }}</ng-container>\r\n </div>\r\n <ng-template #tooltipEndTpl>\r\n <ng-container *xOutlet=\"tooltipCustom(); context: { $value: endDisplayValue() }\">{{\r\n endDisplayValue()\r\n }}</ng-container>\r\n </ng-template>\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}.x-slider-select{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:var(--x-height-medium);line-height:var(--x-height-medium);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(var(--x-height-medium) / 4);border-radius:var(--x-border-radius)}.x-slider-select-rail>div{width:100%;height:100%;border-radius:var(--x-border-radius)}.x-slider-select-track{margin-left:.5rem;width:100%;border-radius:var(--x-border-radius);position:absolute}.x-slider-select-process{height:calc(var(--x-height-medium) / 4);background-color:var(--x-primary);border-radius:var(--x-border-radius);width:0%;position:relative}.x-slider-select-drags{position:relative;width:100%;height:var(--x-height-medium);display:flex;align-items:center}.x-slider-select-drag{position:absolute;cursor:pointer}.x-slider-select-marks{position:absolute;margin-left:.5rem;width:100%;height:var(--x-height-medium);display:flex;align-items:center}.x-slider-select-mark{position:absolute;transform:translate(-50%);border-radius:1rem;display:flex;align-items:center;justify-content:center}.x-slider-select-mark:before{content:\" \";position:absolute;width:.75rem;height:.75rem;border:calc(var(--x-border-width) * 2) solid var(--x-primary);background-color:var(--x-background-a100);border-radius:1rem}.x-slider-select-mark-label{transform:translateY(1rem)}.x-slider-select-button:not(.x-slider-select-custom-button){border-radius:1rem;border:calc(var(--x-border-width) * 2) solid var(--x-primary);background-color:var(--x-background-a100)}.x-slider-select-button{width:1rem;height:1rem;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:var(--x-height-medium);line-height:var(--x-height-medium);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:1rem}.x-slider-select-reverse .x-slider-select-rail{margin-left:-.5rem}.x-slider-select-reverse .x-slider-select-marks{margin-right:.5rem}.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:.5rem}.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:1rem;align-items:initial;justify-content:center;height:100%}.x-slider-select-vertical .x-slider-select-rail{margin-left:initial;margin-top:-.5rem;height:calc(100% - 1rem);width:calc(var(--x-height-medium) / 4)}.x-slider-select-vertical .x-slider-select-track{display:flex;align-items:flex-end;margin-left:initial;margin-bottom:.5rem;width:calc(var(--x-height-medium) / 4);height:100%}.x-slider-select-vertical .x-slider-select-marks{display:flex;align-items:flex-end;justify-content:center;margin-left:initial;margin-bottom:.5rem;width:calc(var(--x-height-medium) / 4);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:1rem}.x-slider-select-vertical .x-slider-select-process{height:0%;width:calc(var(--x-height-medium) / 4)}.x-slider-select-vertical .x-slider-select-drags{height:100%;width:var(--x-height-medium);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:1rem;padding-top:initial}.x-slider-select-vertical .x-slider-select-reverse .x-slider-select-rail{margin-top:.5rem}.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:-.5rem;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: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "ngmodule", type: FormsModule }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "ngmodule", type: DragDropModule }, { kind: "directive", type: i1.CdkDrag, selector: "[cdkDrag]", inputs: ["cdkDragData", "cdkDragLockAxis", "cdkDragRootElement", "cdkDragBoundary", "cdkDragStartDelay", "cdkDragFreeDragPosition", "cdkDragDisabled", "cdkDragConstrainPosition", "cdkDragPreviewClass", "cdkDragPreviewContainer", "cdkDragScale"], outputs: ["cdkDragStarted", "cdkDragReleased", "cdkDragEnded", "cdkDragEntered", "cdkDragExited", "cdkDragDropped", "cdkDragMoved"], exportAs: ["cdkDrag"] }, { kind: "directive", type: XTooltipDirective, selector: "[x-tooltip], x-tooltip" }, { kind: "directive", type: XOutletDirective, selector: "[xOutlet]", inputs: ["xOutletContext", "xOutlet"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
482
+ /** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.2", type: XSliderSelectComponent, isStandalone: true, 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, isSignal: true }, { propertyName: "dragStartRef", first: true, predicate: ["dragStartRef"], descendants: true, isSignal: true }, { propertyName: "dragEndRef", first: true, predicate: ["dragEndRef"], descendants: true, isSignal: true }, { propertyName: "railRef", first: true, predicate: ["railRef"], descendants: true, isSignal: true }, { propertyName: "processRef", first: true, predicate: ["processRef"], descendants: true, isSignal: true }, { propertyName: "tooltips", predicate: XTooltipDirective, descendants: true, isSignal: 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]=\"disabledComputed()\"\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 [ngClass]=\"classMap()\"\r\n>\r\n @if (label()) {\r\n <label\r\n [class.x-slider-select-label-required]=\"requiredComputed()\"\r\n [style.width]=\"labelWidth()\"\r\n [ngClass]=\"labelMapSignal()\"\r\n >{{ label() }}</label\r\n >\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]=\"disabledComputed() || !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 @for (mark of markList(); track mark.label) {\r\n <div class=\"x-slider-select-mark\" [ngStyle]=\"mark.style\">\r\n <span class=\"x-slider-select-mark-label\">{{ mark.label }}</span>\r\n </div>\r\n }\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]=\"disabledComputed()\"\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()\"\r\n [content]=\"tooltipStartTpl\"\r\n [(visible)]=\"startVisible\"\r\n [manual]=\"startManual()\"\r\n >\r\n <ng-container *xOutlet=\"customButton()\">{{ customButton() }}</ng-container>\r\n </div>\r\n <ng-template #tooltipStartTpl>\r\n <ng-container *xOutlet=\"tooltipCustom(); context: { $value: startDisplayValue() }\">{{\r\n startDisplayValue()\r\n }}</ng-container>\r\n </ng-template>\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]=\"disabledComputed()\"\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()\"\r\n [content]=\"tooltipEndTpl\"\r\n [(visible)]=\"endVisible\"\r\n [manual]=\"endManual()\"\r\n >\r\n <ng-container *xOutlet=\"customButton()\">{{ customButton() }}</ng-container>\r\n </div>\r\n <ng-template #tooltipEndTpl>\r\n <ng-container *xOutlet=\"tooltipCustom(); context: { $value: endDisplayValue() }\">{{\r\n endDisplayValue()\r\n }}</ng-container>\r\n </ng-template>\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}.x-slider-select{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:var(--x-height-medium);line-height:var(--x-height-medium);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(var(--x-height-medium) / 4);border-radius:var(--x-border-radius)}.x-slider-select-rail>div{width:100%;height:100%;border-radius:var(--x-border-radius)}.x-slider-select-track{margin-left:.5rem;width:100%;border-radius:var(--x-border-radius);position:absolute}.x-slider-select-process{height:calc(var(--x-height-medium) / 4);background-color:var(--x-primary);border-radius:var(--x-border-radius);width:0%;position:relative}.x-slider-select-drags{position:relative;width:100%;height:var(--x-height-medium);display:flex;align-items:center}.x-slider-select-drag{position:absolute;cursor:pointer}.x-slider-select-marks{position:absolute;margin-left:.5rem;width:100%;height:var(--x-height-medium);display:flex;align-items:center}.x-slider-select-mark{position:absolute;transform:translate(-50%);border-radius:1rem;display:flex;align-items:center;justify-content:center}.x-slider-select-mark:before{content:\" \";position:absolute;width:.75rem;height:.75rem;border:calc(var(--x-border-width) * 2) solid var(--x-primary);background-color:var(--x-background-a100);border-radius:1rem}.x-slider-select-mark-label{transform:translateY(1rem)}.x-slider-select-button:not(.x-slider-select-custom-button){border-radius:1rem;border:calc(var(--x-border-width) * 2) solid var(--x-primary);background-color:var(--x-background-a100)}.x-slider-select-button{width:1rem;height:1rem;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:var(--x-height-medium);line-height:var(--x-height-medium);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:1rem}.x-slider-select-reverse .x-slider-select-rail{margin-left:-.5rem}.x-slider-select-reverse .x-slider-select-marks{margin-right:.5rem}.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:.5rem}.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:1rem;align-items:initial;justify-content:center;height:100%}.x-slider-select-vertical .x-slider-select-rail{margin-left:initial;margin-top:-.5rem;height:calc(100% - 1rem);width:calc(var(--x-height-medium) / 4)}.x-slider-select-vertical .x-slider-select-track{display:flex;align-items:flex-end;margin-left:initial;margin-bottom:.5rem;width:calc(var(--x-height-medium) / 4);height:100%}.x-slider-select-vertical .x-slider-select-marks{display:flex;align-items:flex-end;justify-content:center;margin-left:initial;margin-bottom:.5rem;width:calc(var(--x-height-medium) / 4);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:1rem}.x-slider-select-vertical .x-slider-select-process{height:0%;width:calc(var(--x-height-medium) / 4)}.x-slider-select-vertical .x-slider-select-drags{height:100%;width:var(--x-height-medium);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:1rem;padding-top:initial}.x-slider-select-vertical .x-slider-select-reverse .x-slider-select-rail{margin-top:.5rem}.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:-.5rem;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: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "ngmodule", type: FormsModule }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "ngmodule", type: DragDropModule }, { kind: "directive", type: i1.CdkDrag, selector: "[cdkDrag]", inputs: ["cdkDragData", "cdkDragLockAxis", "cdkDragRootElement", "cdkDragBoundary", "cdkDragStartDelay", "cdkDragFreeDragPosition", "cdkDragDisabled", "cdkDragConstrainPosition", "cdkDragPreviewClass", "cdkDragPreviewContainer", "cdkDragScale"], outputs: ["cdkDragStarted", "cdkDragReleased", "cdkDragEnded", "cdkDragEntered", "cdkDragExited", "cdkDragDropped", "cdkDragMoved"], exportAs: ["cdkDrag"] }, { kind: "directive", type: XTooltipDirective, selector: "[x-tooltip], x-tooltip" }, { kind: "directive", type: XOutletDirective, selector: "[xOutlet]", inputs: ["xOutletContext", "xOutlet"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
478
483
  }
479
484
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.2", ngImport: i0, type: XSliderSelectComponent, decorators: [{
480
485
  type: Component,
@@ -487,7 +492,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.2", ngImpor
487
492
  XTooltipDirective,
488
493
  XDragDirective,
489
494
  XOutletDirective
490
- ], 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]=\"disabledComputed()\"\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 [ngClass]=\"classMap()\"\r\n>\r\n @if (label()) {\r\n <label\r\n [class.x-slider-select-label-required]=\"requiredComputed()\"\r\n [style.width]=\"labelWidth()\"\r\n [ngClass]=\"labelMapSignal()\"\r\n >{{ label() }}</label\r\n >\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]=\"disabledComputed() || !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 @for (mark of markList(); track mark.label) {\r\n <div class=\"x-slider-select-mark\" [ngStyle]=\"mark.style\">\r\n <span class=\"x-slider-select-mark-label\">{{ mark.label }}</span>\r\n </div>\r\n }\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]=\"disabledComputed()\"\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]=\"tooltipStartTpl\"\r\n [(visible)]=\"startVisible\"\r\n [manual]=\"startManual()\"\r\n >\r\n <ng-container *xOutlet=\"customButton()\">{{ customButton() }}</ng-container>\r\n </div>\r\n <ng-template #tooltipStartTpl>\r\n <ng-container *xOutlet=\"tooltipCustom(); context: { $value: startDisplayValue() }\">{{\r\n startDisplayValue()\r\n }}</ng-container>\r\n </ng-template>\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]=\"disabledComputed()\"\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]=\"tooltipEndTpl\"\r\n [(visible)]=\"endVisible\"\r\n [manual]=\"endManual()\"\r\n >\r\n <ng-container *xOutlet=\"customButton()\">{{ customButton() }}</ng-container>\r\n </div>\r\n <ng-template #tooltipEndTpl>\r\n <ng-container *xOutlet=\"tooltipCustom(); context: { $value: endDisplayValue() }\">{{\r\n endDisplayValue()\r\n }}</ng-container>\r\n </ng-template>\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}.x-slider-select{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:var(--x-height-medium);line-height:var(--x-height-medium);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(var(--x-height-medium) / 4);border-radius:var(--x-border-radius)}.x-slider-select-rail>div{width:100%;height:100%;border-radius:var(--x-border-radius)}.x-slider-select-track{margin-left:.5rem;width:100%;border-radius:var(--x-border-radius);position:absolute}.x-slider-select-process{height:calc(var(--x-height-medium) / 4);background-color:var(--x-primary);border-radius:var(--x-border-radius);width:0%;position:relative}.x-slider-select-drags{position:relative;width:100%;height:var(--x-height-medium);display:flex;align-items:center}.x-slider-select-drag{position:absolute;cursor:pointer}.x-slider-select-marks{position:absolute;margin-left:.5rem;width:100%;height:var(--x-height-medium);display:flex;align-items:center}.x-slider-select-mark{position:absolute;transform:translate(-50%);border-radius:1rem;display:flex;align-items:center;justify-content:center}.x-slider-select-mark:before{content:\" \";position:absolute;width:.75rem;height:.75rem;border:calc(var(--x-border-width) * 2) solid var(--x-primary);background-color:var(--x-background-a100);border-radius:1rem}.x-slider-select-mark-label{transform:translateY(1rem)}.x-slider-select-button:not(.x-slider-select-custom-button){border-radius:1rem;border:calc(var(--x-border-width) * 2) solid var(--x-primary);background-color:var(--x-background-a100)}.x-slider-select-button{width:1rem;height:1rem;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:var(--x-height-medium);line-height:var(--x-height-medium);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:1rem}.x-slider-select-reverse .x-slider-select-rail{margin-left:-.5rem}.x-slider-select-reverse .x-slider-select-marks{margin-right:.5rem}.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:.5rem}.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:1rem;align-items:initial;justify-content:center;height:100%}.x-slider-select-vertical .x-slider-select-rail{margin-left:initial;margin-top:-.5rem;height:calc(100% - 1rem);width:calc(var(--x-height-medium) / 4)}.x-slider-select-vertical .x-slider-select-track{display:flex;align-items:flex-end;margin-left:initial;margin-bottom:.5rem;width:calc(var(--x-height-medium) / 4);height:100%}.x-slider-select-vertical .x-slider-select-marks{display:flex;align-items:flex-end;justify-content:center;margin-left:initial;margin-bottom:.5rem;width:calc(var(--x-height-medium) / 4);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:1rem}.x-slider-select-vertical .x-slider-select-process{height:0%;width:calc(var(--x-height-medium) / 4)}.x-slider-select-vertical .x-slider-select-drags{height:100%;width:var(--x-height-medium);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:1rem;padding-top:initial}.x-slider-select-vertical .x-slider-select-reverse .x-slider-select-rail{margin-top:.5rem}.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:-.5rem;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"] }]
495
+ ], 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]=\"disabledComputed()\"\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 [ngClass]=\"classMap()\"\r\n>\r\n @if (label()) {\r\n <label\r\n [class.x-slider-select-label-required]=\"requiredComputed()\"\r\n [style.width]=\"labelWidth()\"\r\n [ngClass]=\"labelMapSignal()\"\r\n >{{ label() }}</label\r\n >\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]=\"disabledComputed() || !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 @for (mark of markList(); track mark.label) {\r\n <div class=\"x-slider-select-mark\" [ngStyle]=\"mark.style\">\r\n <span class=\"x-slider-select-mark-label\">{{ mark.label }}</span>\r\n </div>\r\n }\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]=\"disabledComputed()\"\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()\"\r\n [content]=\"tooltipStartTpl\"\r\n [(visible)]=\"startVisible\"\r\n [manual]=\"startManual()\"\r\n >\r\n <ng-container *xOutlet=\"customButton()\">{{ customButton() }}</ng-container>\r\n </div>\r\n <ng-template #tooltipStartTpl>\r\n <ng-container *xOutlet=\"tooltipCustom(); context: { $value: startDisplayValue() }\">{{\r\n startDisplayValue()\r\n }}</ng-container>\r\n </ng-template>\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]=\"disabledComputed()\"\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()\"\r\n [content]=\"tooltipEndTpl\"\r\n [(visible)]=\"endVisible\"\r\n [manual]=\"endManual()\"\r\n >\r\n <ng-container *xOutlet=\"customButton()\">{{ customButton() }}</ng-container>\r\n </div>\r\n <ng-template #tooltipEndTpl>\r\n <ng-container *xOutlet=\"tooltipCustom(); context: { $value: endDisplayValue() }\">{{\r\n endDisplayValue()\r\n }}</ng-container>\r\n </ng-template>\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}.x-slider-select{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:var(--x-height-medium);line-height:var(--x-height-medium);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(var(--x-height-medium) / 4);border-radius:var(--x-border-radius)}.x-slider-select-rail>div{width:100%;height:100%;border-radius:var(--x-border-radius)}.x-slider-select-track{margin-left:.5rem;width:100%;border-radius:var(--x-border-radius);position:absolute}.x-slider-select-process{height:calc(var(--x-height-medium) / 4);background-color:var(--x-primary);border-radius:var(--x-border-radius);width:0%;position:relative}.x-slider-select-drags{position:relative;width:100%;height:var(--x-height-medium);display:flex;align-items:center}.x-slider-select-drag{position:absolute;cursor:pointer}.x-slider-select-marks{position:absolute;margin-left:.5rem;width:100%;height:var(--x-height-medium);display:flex;align-items:center}.x-slider-select-mark{position:absolute;transform:translate(-50%);border-radius:1rem;display:flex;align-items:center;justify-content:center}.x-slider-select-mark:before{content:\" \";position:absolute;width:.75rem;height:.75rem;border:calc(var(--x-border-width) * 2) solid var(--x-primary);background-color:var(--x-background-a100);border-radius:1rem}.x-slider-select-mark-label{transform:translateY(1rem)}.x-slider-select-button:not(.x-slider-select-custom-button){border-radius:1rem;border:calc(var(--x-border-width) * 2) solid var(--x-primary);background-color:var(--x-background-a100)}.x-slider-select-button{width:1rem;height:1rem;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:var(--x-height-medium);line-height:var(--x-height-medium);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:1rem}.x-slider-select-reverse .x-slider-select-rail{margin-left:-.5rem}.x-slider-select-reverse .x-slider-select-marks{margin-right:.5rem}.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:.5rem}.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:1rem;align-items:initial;justify-content:center;height:100%}.x-slider-select-vertical .x-slider-select-rail{margin-left:initial;margin-top:-.5rem;height:calc(100% - 1rem);width:calc(var(--x-height-medium) / 4)}.x-slider-select-vertical .x-slider-select-track{display:flex;align-items:flex-end;margin-left:initial;margin-bottom:.5rem;width:calc(var(--x-height-medium) / 4);height:100%}.x-slider-select-vertical .x-slider-select-marks{display:flex;align-items:flex-end;justify-content:center;margin-left:initial;margin-bottom:.5rem;width:calc(var(--x-height-medium) / 4);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:1rem}.x-slider-select-vertical .x-slider-select-process{height:0%;width:calc(var(--x-height-medium) / 4)}.x-slider-select-vertical .x-slider-select-drags{height:100%;width:var(--x-height-medium);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:1rem;padding-top:initial}.x-slider-select-vertical .x-slider-select-reverse .x-slider-select-rail{margin-top:.5rem}.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:-.5rem;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"] }]
491
496
  }], propDecorators: { getVertical: [{
492
497
  type: HostBinding,
493
498
  args: ['class.x-slider-select-vertical']
@@ -1 +1 @@
1
- {"version":3,"file":"ng-nest-ui-slider-select.mjs","sources":["../../../../lib/ng-nest/ui/slider-select/slider-select.property.ts","../../../../lib/ng-nest/ui/slider-select/slider-select.component.ts","../../../../lib/ng-nest/ui/slider-select/slider-select.component.html","../../../../lib/ng-nest/ui/slider-select/slider-select.module.ts","../../../../lib/ng-nest/ui/slider-select/ng-nest-ui-slider-select.ts"],"sourcesContent":["import { XToBoolean, XToCssPixelValue, XToNumber } from '@ng-nest/ui/core';\r\nimport { Component, input, output } from '@angular/core';\r\nimport { XFormControlFunction, XFormOption } from '@ng-nest/ui/base-form';\r\nimport type { CdkDragStart, CdkDragMove, CdkDragEnd } from '@angular/cdk/drag-drop';\r\nimport type { XAlign, XBoolean, XDirection, XJustify, XNumber, XTemplate } from '@ng-nest/ui/core';\r\n\r\n/**\r\n * SliderSelect\r\n * @selector x-slider-select\r\n * @decorator component\r\n */\r\nexport const XSliderSelectPrefix = 'x-slider-select';\r\nconst X_SLIDER_SELECT_CONFIG_NAME = 'sliderSelect';\r\n\r\n/**\r\n * SliderSelect Property\r\n */\r\n@Component({ selector: `${XSliderSelectPrefix}-property`, template: '' })\r\nexport class XSliderSelectProperty extends XFormControlFunction(X_SLIDER_SELECT_CONFIG_NAME) {\r\n /**\r\n * @zh_CN 最小值\r\n * @en_US Minimum\r\n */\r\n readonly min = input<number, XNumber>(0, { transform: XToNumber });\r\n /**\r\n * @zh_CN 最大值\r\n * @en_US Max\r\n */\r\n readonly max = input<number, XNumber>(100, { transform: XToNumber });\r\n /**\r\n * @zh_CN 步数\r\n * @en_US Step count\r\n */\r\n readonly step = input<number, XNumber>(1, { transform: XToNumber });\r\n /**\r\n * @zh_CN 精度,默认根据步数来计算\r\n * @en_US Precision, calculated based on the number of steps by default\r\n */\r\n readonly precision = input<number | undefined, XNumber>(undefined, { transform: XToNumber });\r\n /**\r\n * @zh_CN 显示 tooltip 提示\r\n * @en_US Display Tooltip prompts\r\n */\r\n readonly showTooltip = input<boolean, XBoolean>(true, { transform: XToBoolean });\r\n /**\r\n * @zh_CN 反向\r\n * @en_US Reverse\r\n */\r\n readonly reverse = input<boolean, XBoolean>(false, { transform: XToBoolean });\r\n /**\r\n * @zh_CN 垂直\r\n * @en_US Vertical\r\n */\r\n readonly vertical = input<boolean, XBoolean>(false, { transform: XToBoolean });\r\n /**\r\n * @zh_CN 范围\r\n * @en_US Range\r\n */\r\n readonly range = input<boolean, XBoolean>(false, { transform: XToBoolean });\r\n /**\r\n * @zh_CN 自定义滑块\r\n * @en_US Custom button\r\n */\r\n readonly customButton = input<XTemplate>();\r\n /**\r\n * @zh_CN 刻度标记,key 为实际数字,在 [min,max] 内,可通过 style 设置样式\r\n * @en_US Scale marking, key is the actual number, in [min, max], you can set style through style\r\n */\r\n readonly marks = input<XSliderSelectMark[]>([]);\r\n /**\r\n * @zh_CN 自定义 tooltip\r\n * @en_US Custom tooltip\r\n */\r\n readonly tooltipCustom = input<XTemplate>();\r\n /**\r\n * @zh_CN 标签\r\n * @en_US Label\r\n */\r\n override readonly label = input<string>('');\r\n /**\r\n * @zh_CN 标签宽度\r\n * @en_US Label width\r\n */\r\n override readonly labelWidth = input<string, XNumber>('', { transform: XToCssPixelValue });\r\n /**\r\n * @zh_CN 标签文字对齐方式\r\n * @en_US Label text alignment method\r\n */\r\n override readonly labelAlign = input<XAlign>('start');\r\n /**\r\n * @zh_CN flex 布局下的子元素水平排列方式\r\n * @en_US The level of sub-element level arrangement under flex layout\r\n */\r\n override readonly justify = input<XJustify>('start');\r\n /**\r\n * @zh_CN flex 布局下的子元素垂直排列方式\r\n * @en_US sub-element vertical arrangement method under flex layout\r\n */\r\n override readonly align = input<XAlign>('start');\r\n /**\r\n * @zh_CN flex 布局下的子元素排列方向\r\n * @en_US The direction of the sub-element arrangement under flex layout\r\n */\r\n override readonly direction = input<XDirection>('column');\r\n /**\r\n * @zh_CN 禁用\r\n * @en_US Disabled\r\n */\r\n override readonly disabled = input<boolean, XBoolean>(false, { transform: XToBoolean });\r\n /**\r\n * @zh_CN 必填\r\n * @en_US Required\r\n */\r\n override readonly required = input<boolean, XBoolean>(false, { transform: XToBoolean });\r\n /**\r\n * @zh_CN 开始拖动的事件\r\n * @en_US Start drag event\r\n */\r\n readonly dragStartEmit = output<CdkDragStart>();\r\n /**\r\n * @zh_CN 按住移动中的事件\r\n * @en_US Hold down the moving event\r\n */\r\n readonly dragMoveEmit = output<CdkDragMove>();\r\n /**\r\n * @zh_CN 移动结束的事件\r\n * @en_US Mobile end event\r\n */\r\n readonly dragEndEmit = output<CdkDragEnd>();\r\n}\r\n\r\n/**\r\n * SliderSelect Option\r\n */\r\nexport interface XSliderSelectOption extends XFormOption {\r\n /**\r\n * @zh_CN 最小值\r\n * @en_US Minimum\r\n */\r\n min?: number;\r\n /**\r\n * @zh_CN 最大值\r\n * @en_US Max\r\n */\r\n max?: number;\r\n /**\r\n * @zh_CN 步数\r\n * @en_US Step count\r\n */\r\n step?: number;\r\n /**\r\n * @zh_CN 精度,默认根据步数来计算\r\n * @en_US Precision, calculated based on the number of steps by default\r\n */\r\n precision?: number;\r\n /**\r\n * @zh_CN 显示 tooltip 提示\r\n * @en_US Display Tooltip prompts\r\n */\r\n showTooltip?: boolean;\r\n /**\r\n * @zh_CN 反向\r\n * @en_US Reverse\r\n */\r\n reverse?: boolean;\r\n /**\r\n * @zh_CN 垂直\r\n * @en_US Vertical\r\n */\r\n vertical?: boolean;\r\n /**\r\n * @zh_CN 范围\r\n * @en_US Range\r\n */\r\n range?: boolean;\r\n /**\r\n * @zh_CN 自定义滑块\r\n * @en_US Custom button\r\n */\r\n customButton?: XTemplate;\r\n /**\r\n * @zh_CN 刻度标记,key 为实际数字,在 [min,max] 内,可通过 style 设置样式\r\n * @en_US Scale marking, key is the actual number, in [min, max], you can set style through style\r\n */\r\n marks?: XSliderSelectMark[];\r\n /**\r\n * @zh_CN 自定义 tooltip\r\n * @en_US Custom tooltip\r\n */\r\n tooltipCustom?: XTemplate;\r\n /**\r\n * @zh_CN 标签\r\n * @en_US Label\r\n */\r\n label?: string;\r\n /**\r\n * @zh_CN 标签宽度\r\n * @en_US Label width\r\n */\r\n labelWidth?: string;\r\n /**\r\n * @zh_CN 标签文字对齐方式\r\n * @en_US Label text alignment method\r\n */\r\n labelAlign?: XAlign;\r\n /**\r\n * @zh_CN flex 布局下的子元素水平排列方式\r\n * @en_US The level of sub-element level arrangement under flex layout\r\n */\r\n justify?: XJustify;\r\n /**\r\n * @zh_CN flex 布局下的子元素垂直排列方式\r\n * @en_US sub-element vertical arrangement method under flex layout\r\n */\r\n align?: XAlign;\r\n /**\r\n * @zh_CN flex 布局下的子元素排列方向\r\n * @en_US The direction of the sub-element arrangement under flex layout\r\n */\r\n direction?: XDirection;\r\n /**\r\n * @zh_CN 禁用\r\n * @en_US Disabled\r\n */\r\n disabled?: boolean;\r\n /**\r\n * @zh_CN 必填\r\n * @en_US Required\r\n */\r\n required?: boolean;\r\n /**\r\n * @zh_CN 开始拖动的事件\r\n * @en_US Start drag event\r\n */\r\n dragStartEmit?: (start: CdkDragStart) => void;\r\n /**\r\n * @zh_CN 按住移动中的事件\r\n * @en_US Hold down the moving event\r\n */\r\n dragMoveEmit?: (move: CdkDragMove) => void;\r\n /**\r\n * @zh_CN 移动结束的事件\r\n * @en_US Mobile end event\r\n */\r\n dragEndEmit?: (end: CdkDragEnd) => void;\r\n}\r\n\r\n/**\r\n * @zh_CN 刻度标记\r\n * @en_US Scale marking\r\n */\r\nexport interface XSliderSelectMark {\r\n /**\r\n * @zh_CN 数值\r\n * @en_US Value\r\n */\r\n value: number;\r\n /**\r\n * @zh_CN 显示标签\r\n * @en_US Label\r\n */\r\n label: string;\r\n /**\r\n * @zh_CN 标签样式\r\n * @en_US style\r\n */\r\n style?: { [style: string]: any };\r\n /**\r\n * @zh_CN 实际偏移量(自动计算)\r\n * @en_US Offset. automatic calculation\r\n */\r\n offset?: number;\r\n}\r\n","import { XTooltipDirective } from '@ng-nest/ui/tooltip';\r\nimport {\r\n Component,\r\n ViewEncapsulation,\r\n ChangeDetectionStrategy,\r\n ChangeDetectorRef,\r\n Renderer2,\r\n ElementRef,\r\n OnDestroy,\r\n AfterViewInit,\r\n HostBinding,\r\n inject,\r\n signal,\r\n viewChild,\r\n viewChildren,\r\n computed\r\n} from '@angular/core';\r\nimport { XSliderSelectProperty, XSliderSelectPrefix, XSliderSelectMark } from './slider-select.property';\r\nimport { XIsEmpty, XIsUndefined, XResize, XResizeObserver, XIsNumber, XIsArray, XIsNull } from '@ng-nest/ui/core';\r\nimport { DragDropModule } from '@angular/cdk/drag-drop';\r\nimport { Subject } from 'rxjs';\r\nimport { debounceTime, takeUntil } from 'rxjs/operators';\r\nimport { XValueAccessor } from '@ng-nest/ui/base-form';\r\nimport { NgClass, NgStyle } from '@angular/common';\r\nimport { FormsModule, ReactiveFormsModule } from '@angular/forms';\r\nimport { XDragDirective } from '@ng-nest/ui/drag';\r\nimport { XOutletDirective } from '@ng-nest/ui/outlet';\r\nimport type { CdkDragMove, CdkDragStart, CdkDragEnd } from '@angular/cdk/drag-drop';\r\n\r\n@Component({\r\n selector: `${XSliderSelectPrefix}`,\r\n standalone: true,\r\n imports: [\r\n NgClass,\r\n NgStyle,\r\n FormsModule,\r\n ReactiveFormsModule,\r\n DragDropModule,\r\n XTooltipDirective,\r\n XDragDirective,\r\n XOutletDirective\r\n ],\r\n templateUrl: './slider-select.component.html',\r\n styleUrls: ['./slider-select.component.scss'],\r\n encapsulation: ViewEncapsulation.None,\r\n changeDetection: ChangeDetectionStrategy.OnPush,\r\n providers: [XValueAccessor(XSliderSelectComponent)]\r\n})\r\nexport class XSliderSelectComponent extends XSliderSelectProperty implements OnDestroy, AfterViewInit {\r\n sliderSelect = viewChild.required<ElementRef<HTMLElement>>('sliderSelect');\r\n dragStartRef = viewChild.required<ElementRef<HTMLElement>>('dragStartRef');\r\n dragEndRef = viewChild.required<ElementRef<HTMLElement>>('dragEndRef');\r\n railRef = viewChild.required<ElementRef<HTMLElement>>('railRef');\r\n processRef = viewChild.required<ElementRef<HTMLElement>>('processRef');\r\n @HostBinding('class.x-slider-select-vertical') get getVertical() {\r\n return this.vertical();\r\n }\r\n tooltips = viewChildren(XTooltipDirective);\r\n tooltipStart = computed(() => {\r\n if (this.tooltips().length > 0) {\r\n return this.tooltips()![0];\r\n }\r\n return null;\r\n });\r\n tooltipEnd = computed(() => {\r\n if (this.tooltips().length > 1) {\r\n return this.tooltips()![1];\r\n }\r\n return null;\r\n });\r\n\r\n override value = signal<number | number[]>(0);\r\n starting = signal(false);\r\n\r\n startOffset = signal(0);\r\n startVisible = signal(false);\r\n startManual = signal(false);\r\n start = signal<number | null>(null);\r\n startDisplayValue = signal('0');\r\n showStartTooltip = signal(true);\r\n\r\n endOffset = signal(0);\r\n endVisible = signal(false);\r\n endManual = signal(false);\r\n end = signal<number | null>(null);\r\n endDisplayValue = signal('0');\r\n showEndTooltip = signal(true);\r\n\r\n markList = computed(() => {\r\n if (!this.marks()) return [];\r\n const marks: XSliderSelectMark[] = [];\r\n for (let mark of this.marks()) {\r\n const mk: XSliderSelectMark = {\r\n value: mark.value,\r\n label: mark.label,\r\n style: { ...mark.style }\r\n };\r\n mk.offset = this.getOffset(mark.value);\r\n\r\n if (this.reverse()) {\r\n if (this.vertical()) {\r\n mk.style!['top'] = `${mk.offset}%`;\r\n } else {\r\n mk.style!['right'] = `${mk.offset}%`;\r\n }\r\n } else {\r\n if (this.vertical()) {\r\n mk.style!['bottom'] = `${mk.offset}%`;\r\n } else {\r\n mk.style!['left'] = `${mk.offset}%`;\r\n }\r\n }\r\n marks.push(mk);\r\n }\r\n return marks;\r\n });\r\n\r\n private unSubject = new Subject<void>();\r\n private resizeObserver!: XResizeObserver;\r\n isNumber = computed(() => XIsNumber(this.value()) && !XIsArray(this.value()));\r\n isArray = computed(() => XIsArray(this.value()));\r\n\r\n classMap = computed(() => ({\r\n [`x-justify-${this.justify()}`]: !!this.justify(),\r\n [`x-align-${this.align()}`]: !!this.align(),\r\n [`x-direction-${this.direction()}`]: !!this.direction()\r\n }));\r\n labelMapSignal = computed(() => ({\r\n [`x-text-align-${this.labelAlign()}`]: !!this.labelAlign()\r\n }));\r\n\r\n precisionSignal = computed(() => {\r\n const precision = this.precision();\r\n if (XIsUndefined(precision) || !XIsEmpty(this.step())) {\r\n let stepStr = String(this.step());\r\n let indexpoint = stepStr.indexOf('.');\r\n if (indexpoint === -1) {\r\n return 0;\r\n } else {\r\n return stepStr.length - (indexpoint + 1);\r\n }\r\n }\r\n return precision;\r\n });\r\n\r\n override requiredIsEmpty = computed(\r\n () => this.validatorComputed() && this.requiredComputed() && (XIsEmpty(this.value()) || this.value() === 0)\r\n );\r\n\r\n override writeValue(value: number | number[]) {\r\n if (this.starting()) return;\r\n if (XIsNull(value) || XIsUndefined(value)) {\r\n if (this.range()) {\r\n value = [this.min(), this.min()];\r\n } else {\r\n value = this.min();\r\n }\r\n }\r\n this.value.set(value);\r\n this.setLeft();\r\n this.setDisplayValue();\r\n }\r\n\r\n private renderer = inject(Renderer2);\r\n override cdr = inject(ChangeDetectorRef);\r\n elementRef = inject(ElementRef);\r\n\r\n ngAfterViewInit() {\r\n XResize(this.sliderSelect().nativeElement)\r\n .pipe(debounceTime(30), takeUntil(this.unSubject))\r\n .subscribe((x) => {\r\n this.resizeObserver = x.resizeObserver;\r\n this.setLeft();\r\n this.setDisplayValue();\r\n });\r\n }\r\n\r\n ngOnDestroy(): void {\r\n this.unSubject.next();\r\n this.unSubject.complete();\r\n this.resizeObserver?.disconnect();\r\n }\r\n\r\n change() {\r\n const getVal = (offset: number) => {\r\n return parseFloat(\r\n Number(((this.max() - this.min()) * offset) / 100 + this.min()).toFixed(this.precisionSignal())\r\n );\r\n };\r\n const startVal = getVal(this.startOffset());\r\n if (this.isNumber()) {\r\n this.value.set(startVal);\r\n } else {\r\n const endVal = getVal(this.endOffset());\r\n if (endVal < startVal) {\r\n this.value.set([endVal, startVal]);\r\n } else {\r\n this.value.set([startVal, endVal]);\r\n }\r\n }\r\n\r\n this.setDisplayValue();\r\n if (this.onChange) this.onChange(this.value());\r\n }\r\n\r\n getOffset(val: number) {\r\n return Math.abs(\r\n Math.round(((val + (this.reverse() ? -this.min() : this.min())) * 100) / (this.max() - this.min()))\r\n );\r\n }\r\n\r\n setLeft() {\r\n let startVal = 0,\r\n endVal = 0;\r\n const value = this.value();\r\n if (this.isNumber()) {\r\n startVal = value as number;\r\n } else if (XIsArray(value) && value.length > 1) {\r\n startVal = value[0];\r\n endVal = value[1];\r\n this.endOffset.set(this.getOffset(endVal));\r\n this.end.set(this.endOffset());\r\n }\r\n\r\n this.startOffset.set(this.getOffset(startVal));\r\n this.start.set(this.startOffset());\r\n\r\n this.setDrag();\r\n }\r\n\r\n setDisplayValue() {\r\n const displayVal = (val: number) => {\r\n return Number(val).toFixed(this.precisionSignal());\r\n };\r\n const value = this.value();\r\n if (this.isNumber()) {\r\n this.startDisplayValue.set(displayVal(value as number));\r\n } else {\r\n if (XIsArray(value) && value.length > 1) {\r\n if (this.startOffset() > this.endOffset()) {\r\n this.startDisplayValue.set(displayVal(value[1]));\r\n this.endDisplayValue.set(displayVal(value[0]));\r\n } else {\r\n this.startDisplayValue.set(displayVal(value[0]));\r\n this.endDisplayValue.set(displayVal(value[1]));\r\n }\r\n }\r\n }\r\n }\r\n\r\n started(drag: CdkDragStart, type: 'start' | 'end' | 'both' = 'start') {\r\n this.starting.set(true);\r\n if (['start', 'both'].includes(type)) {\r\n const start = this.startOffset();\r\n this.start.set(start);\r\n if (this.showStartTooltip()) {\r\n this.startManual.set(true);\r\n this.startVisible.set(true);\r\n }\r\n }\r\n if (['end', 'both'].includes(type)) {\r\n const end = this.endOffset();\r\n this.end.set(end);\r\n if (this.showEndTooltip()) {\r\n this.endManual.set(true);\r\n this.endVisible.set(true);\r\n }\r\n }\r\n this.formControlValidator();\r\n this.dragStartEmit.emit(drag);\r\n }\r\n\r\n moved(drag: CdkDragMove, type: 'start' | 'end' | 'both' = 'start') {\r\n let transform = drag.source.getFreeDragPosition();\r\n this.setDrag(this.vertical() ? transform.y : transform.x, type);\r\n drag.source.reset();\r\n if (['start', 'both'].includes(type) && this.showStartTooltip()) {\r\n this.tooltipStart()?.updatePortal();\r\n }\r\n if (['end', 'both'].includes(type) && this.showEndTooltip()) {\r\n this.tooltipEnd()?.updatePortal();\r\n }\r\n this.change();\r\n this.dragMoveEmit.emit(drag);\r\n }\r\n\r\n ended(drag: CdkDragEnd, type: 'start' | 'end' | 'both' = 'start') {\r\n if (['start', 'both'].includes(type)) {\r\n if (this.showStartTooltip()) {\r\n this.startManual.set(false);\r\n this.startVisible.set(false);\r\n }\r\n }\r\n if (['end', 'both'].includes(type)) {\r\n if (this.showEndTooltip()) {\r\n this.endManual.set(false);\r\n this.endVisible.set(false);\r\n }\r\n }\r\n this.starting.set(false);\r\n this.dragEndEmit.emit(drag);\r\n }\r\n\r\n setDrag(distance: number = 0, type: 'start' | 'end' | 'both' = 'both') {\r\n if (typeof this.railRef().nativeElement.getBoundingClientRect !== 'function') return;\r\n let railBox = this.railRef().nativeElement.getBoundingClientRect();\r\n let railBoxLength = this.vertical() ? railBox.height : railBox.width;\r\n let stepLength = railBoxLength / ((this.max() - this.min()) / this.step());\r\n let offset = Math.abs(distance % stepLength);\r\n let dis =\r\n offset < stepLength / 2\r\n ? distance > 0\r\n ? distance - offset\r\n : distance + offset\r\n : distance > 0\r\n ? distance + stepLength - offset\r\n : distance - stepLength + offset;\r\n\r\n const setOffset = (d: number) => {\r\n let x1 = (d / 100) * railBoxLength;\r\n if (this.vertical()) {\r\n x1 += this.reverse() ? dis : -dis;\r\n } else {\r\n x1 += this.reverse() ? -dis : dis;\r\n }\r\n return Math.round((x1 / railBoxLength) * 100);\r\n };\r\n\r\n if (type === 'both') {\r\n this.startOffset.set(setOffset(this.start()!));\r\n this.endOffset.set(setOffset(this.end()!));\r\n } else if (type === 'start') {\r\n this.startOffset.set(setOffset(this.start()!));\r\n } else if (type === 'end') {\r\n this.endOffset.set(setOffset(this.end()!));\r\n }\r\n\r\n this.setDragStyles();\r\n }\r\n\r\n setDragStyles() {\r\n if (this.vertical()) {\r\n if (this.isArray()) {\r\n const wd = Math.abs(this.endOffset() - this.startOffset());\r\n const lt = this.endOffset() > this.startOffset() ? this.startOffset() : this.endOffset();\r\n if (this.reverse()) {\r\n this.renderer.setStyle(this.dragStartRef().nativeElement, 'top', `${this.startOffset()}%`);\r\n this.renderer.setStyle(this.dragEndRef().nativeElement, 'top', `${this.endOffset()}%`);\r\n this.renderer.setStyle(this.processRef().nativeElement, 'top', `${lt}%`);\r\n } else {\r\n this.renderer.setStyle(this.dragStartRef().nativeElement, 'bottom', `${this.startOffset()}%`);\r\n this.renderer.setStyle(this.dragEndRef().nativeElement, 'bottom', `${this.endOffset()}%`);\r\n this.renderer.setStyle(this.processRef().nativeElement, 'bottom', `${lt}%`);\r\n }\r\n this.renderer.setStyle(this.processRef().nativeElement, 'height', `${wd}%`);\r\n } else {\r\n if (this.reverse()) {\r\n this.renderer.setStyle(this.dragStartRef().nativeElement, 'top', `${this.startOffset()}%`);\r\n } else {\r\n this.renderer.setStyle(this.dragStartRef().nativeElement, 'bottom', `${this.startOffset()}%`);\r\n }\r\n this.renderer.setStyle(this.processRef().nativeElement, 'height', `${this.startOffset()}%`);\r\n }\r\n } else {\r\n if (this.isArray()) {\r\n const wd = Math.abs(this.endOffset() - this.startOffset());\r\n const lt = this.endOffset() > this.startOffset() ? this.startOffset() : this.endOffset();\r\n if (this.reverse()) {\r\n this.renderer.setStyle(this.dragStartRef().nativeElement, 'right', `${this.startOffset()}%`);\r\n this.renderer.setStyle(this.dragEndRef().nativeElement, 'right', `${this.endOffset()}%`);\r\n this.renderer.setStyle(this.processRef().nativeElement, 'right', `${lt}%`);\r\n } else {\r\n this.renderer.setStyle(this.dragStartRef().nativeElement, 'left', `${this.startOffset()}%`);\r\n this.renderer.setStyle(this.dragEndRef().nativeElement, 'left', `${this.endOffset()}%`);\r\n this.renderer.setStyle(this.processRef().nativeElement, 'left', `${lt}%`);\r\n }\r\n this.renderer.setStyle(this.processRef().nativeElement, 'width', `${wd}%`);\r\n } else {\r\n if (this.reverse()) {\r\n this.renderer.setStyle(this.dragStartRef().nativeElement, 'right', `${this.startOffset()}%`);\r\n } else {\r\n this.renderer.setStyle(this.dragStartRef().nativeElement, 'left', `${this.startOffset()}%`);\r\n }\r\n this.renderer.setStyle(this.processRef().nativeElement, 'width', `${this.startOffset()}%`);\r\n }\r\n }\r\n }\r\n}\r\n","<div\r\n #sliderSelect\r\n class=\"x-slider-select\"\r\n [class.x-flex]=\"justify() || align() || direction()\"\r\n [class.x-disabled]=\"disabledComputed()\"\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 [ngClass]=\"classMap()\"\r\n>\r\n @if (label()) {\r\n <label\r\n [class.x-slider-select-label-required]=\"requiredComputed()\"\r\n [style.width]=\"labelWidth()\"\r\n [ngClass]=\"labelMapSignal()\"\r\n >{{ label() }}</label\r\n >\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]=\"disabledComputed() || !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 @for (mark of markList(); track mark.label) {\r\n <div class=\"x-slider-select-mark\" [ngStyle]=\"mark.style\">\r\n <span class=\"x-slider-select-mark-label\">{{ mark.label }}</span>\r\n </div>\r\n }\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]=\"disabledComputed()\"\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]=\"tooltipStartTpl\"\r\n [(visible)]=\"startVisible\"\r\n [manual]=\"startManual()\"\r\n >\r\n <ng-container *xOutlet=\"customButton()\">{{ customButton() }}</ng-container>\r\n </div>\r\n <ng-template #tooltipStartTpl>\r\n <ng-container *xOutlet=\"tooltipCustom(); context: { $value: startDisplayValue() }\">{{\r\n startDisplayValue()\r\n }}</ng-container>\r\n </ng-template>\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]=\"disabledComputed()\"\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]=\"tooltipEndTpl\"\r\n [(visible)]=\"endVisible\"\r\n [manual]=\"endManual()\"\r\n >\r\n <ng-container *xOutlet=\"customButton()\">{{ customButton() }}</ng-container>\r\n </div>\r\n <ng-template #tooltipEndTpl>\r\n <ng-container *xOutlet=\"tooltipCustom(); context: { $value: endDisplayValue() }\">{{\r\n endDisplayValue()\r\n }}</ng-container>\r\n </ng-template>\r\n </div>\r\n </div>\r\n </div>\r\n</div>\r\n","import { NgModule } from '@angular/core';\r\nimport { XSliderSelectComponent } from './slider-select.component';\r\n\r\n@NgModule({\r\n exports: [XSliderSelectComponent],\r\n imports: [XSliderSelectComponent]\r\n})\r\nexport class XSliderSelectModule {}\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ng-nest-ui-slider-select.mjs","sources":["../../../../lib/ng-nest/ui/slider-select/slider-select.property.ts","../../../../lib/ng-nest/ui/slider-select/slider-select.component.ts","../../../../lib/ng-nest/ui/slider-select/slider-select.component.html","../../../../lib/ng-nest/ui/slider-select/slider-select.module.ts","../../../../lib/ng-nest/ui/slider-select/ng-nest-ui-slider-select.ts"],"sourcesContent":["import { XToBoolean, XToCssPixelValue, XToNumber } from '@ng-nest/ui/core';\r\nimport { Component, input, output } from '@angular/core';\r\nimport { XFormControlFunction, XFormOption } from '@ng-nest/ui/base-form';\r\nimport type { CdkDragStart, CdkDragMove, CdkDragEnd } from '@angular/cdk/drag-drop';\r\nimport type { XAlign, XBoolean, XDirection, XJustify, XNumber, XTemplate } from '@ng-nest/ui/core';\r\n\r\n/**\r\n * SliderSelect\r\n * @selector x-slider-select\r\n * @decorator component\r\n */\r\nexport const XSliderSelectPrefix = 'x-slider-select';\r\nconst X_SLIDER_SELECT_CONFIG_NAME = 'sliderSelect';\r\n\r\n/**\r\n * SliderSelect Property\r\n */\r\n@Component({ selector: `${XSliderSelectPrefix}-property`, template: '' })\r\nexport class XSliderSelectProperty extends XFormControlFunction(X_SLIDER_SELECT_CONFIG_NAME) {\r\n /**\r\n * @zh_CN 最小值\r\n * @en_US Minimum\r\n */\r\n readonly min = input<number, XNumber>(0, { transform: XToNumber });\r\n /**\r\n * @zh_CN 最大值\r\n * @en_US Max\r\n */\r\n readonly max = input<number, XNumber>(100, { transform: XToNumber });\r\n /**\r\n * @zh_CN 步数\r\n * @en_US Step count\r\n */\r\n readonly step = input<number, XNumber>(1, { transform: XToNumber });\r\n /**\r\n * @zh_CN 精度,默认根据步数来计算\r\n * @en_US Precision, calculated based on the number of steps by default\r\n */\r\n readonly precision = input<number | undefined, XNumber>(undefined, { transform: XToNumber });\r\n /**\r\n * @zh_CN 显示 tooltip 提示\r\n * @en_US Display Tooltip prompts\r\n */\r\n readonly showTooltip = input<boolean, XBoolean>(true, { transform: XToBoolean });\r\n /**\r\n * @zh_CN 反向\r\n * @en_US Reverse\r\n */\r\n readonly reverse = input<boolean, XBoolean>(false, { transform: XToBoolean });\r\n /**\r\n * @zh_CN 垂直\r\n * @en_US Vertical\r\n */\r\n readonly vertical = input<boolean, XBoolean>(false, { transform: XToBoolean });\r\n /**\r\n * @zh_CN 范围\r\n * @en_US Range\r\n */\r\n readonly range = input<boolean, XBoolean>(false, { transform: XToBoolean });\r\n /**\r\n * @zh_CN 自定义滑块\r\n * @en_US Custom button\r\n */\r\n readonly customButton = input<XTemplate>();\r\n /**\r\n * @zh_CN 刻度标记,key 为实际数字,在 [min,max] 内,可通过 style 设置样式\r\n * @en_US Scale marking, key is the actual number, in [min, max], you can set style through style\r\n */\r\n readonly marks = input<XSliderSelectMark[]>([]);\r\n /**\r\n * @zh_CN 自定义 tooltip\r\n * @en_US Custom tooltip\r\n */\r\n readonly tooltipCustom = input<XTemplate>();\r\n /**\r\n * @zh_CN 标签\r\n * @en_US Label\r\n */\r\n override readonly label = input<string>('');\r\n /**\r\n * @zh_CN 标签宽度\r\n * @en_US Label width\r\n */\r\n override readonly labelWidth = input<string, XNumber>('', { transform: XToCssPixelValue });\r\n /**\r\n * @zh_CN 标签文字对齐方式\r\n * @en_US Label text alignment method\r\n */\r\n override readonly labelAlign = input<XAlign>('start');\r\n /**\r\n * @zh_CN flex 布局下的子元素水平排列方式\r\n * @en_US The level of sub-element level arrangement under flex layout\r\n */\r\n override readonly justify = input<XJustify>('start');\r\n /**\r\n * @zh_CN flex 布局下的子元素垂直排列方式\r\n * @en_US sub-element vertical arrangement method under flex layout\r\n */\r\n override readonly align = input<XAlign>('start');\r\n /**\r\n * @zh_CN flex 布局下的子元素排列方向\r\n * @en_US The direction of the sub-element arrangement under flex layout\r\n */\r\n override readonly direction = input<XDirection>('column');\r\n /**\r\n * @zh_CN 禁用\r\n * @en_US Disabled\r\n */\r\n override readonly disabled = input<boolean, XBoolean>(false, { transform: XToBoolean });\r\n /**\r\n * @zh_CN 必填\r\n * @en_US Required\r\n */\r\n override readonly required = input<boolean, XBoolean>(false, { transform: XToBoolean });\r\n /**\r\n * @zh_CN 开始拖动的事件\r\n * @en_US Start drag event\r\n */\r\n readonly dragStartEmit = output<CdkDragStart>();\r\n /**\r\n * @zh_CN 按住移动中的事件\r\n * @en_US Hold down the moving event\r\n */\r\n readonly dragMoveEmit = output<CdkDragMove>();\r\n /**\r\n * @zh_CN 移动结束的事件\r\n * @en_US Mobile end event\r\n */\r\n readonly dragEndEmit = output<CdkDragEnd>();\r\n}\r\n\r\n/**\r\n * SliderSelect Option\r\n */\r\nexport interface XSliderSelectOption extends XFormOption {\r\n /**\r\n * @zh_CN 最小值\r\n * @en_US Minimum\r\n */\r\n min?: number;\r\n /**\r\n * @zh_CN 最大值\r\n * @en_US Max\r\n */\r\n max?: number;\r\n /**\r\n * @zh_CN 步数\r\n * @en_US Step count\r\n */\r\n step?: number;\r\n /**\r\n * @zh_CN 精度,默认根据步数来计算\r\n * @en_US Precision, calculated based on the number of steps by default\r\n */\r\n precision?: number;\r\n /**\r\n * @zh_CN 显示 tooltip 提示\r\n * @en_US Display Tooltip prompts\r\n */\r\n showTooltip?: boolean;\r\n /**\r\n * @zh_CN 反向\r\n * @en_US Reverse\r\n */\r\n reverse?: boolean;\r\n /**\r\n * @zh_CN 垂直\r\n * @en_US Vertical\r\n */\r\n vertical?: boolean;\r\n /**\r\n * @zh_CN 范围\r\n * @en_US Range\r\n */\r\n range?: boolean;\r\n /**\r\n * @zh_CN 自定义滑块\r\n * @en_US Custom button\r\n */\r\n customButton?: XTemplate;\r\n /**\r\n * @zh_CN 刻度标记,key 为实际数字,在 [min,max] 内,可通过 style 设置样式\r\n * @en_US Scale marking, key is the actual number, in [min, max], you can set style through style\r\n */\r\n marks?: XSliderSelectMark[];\r\n /**\r\n * @zh_CN 自定义 tooltip\r\n * @en_US Custom tooltip\r\n */\r\n tooltipCustom?: XTemplate;\r\n /**\r\n * @zh_CN 标签\r\n * @en_US Label\r\n */\r\n label?: string;\r\n /**\r\n * @zh_CN 标签宽度\r\n * @en_US Label width\r\n */\r\n labelWidth?: string;\r\n /**\r\n * @zh_CN 标签文字对齐方式\r\n * @en_US Label text alignment method\r\n */\r\n labelAlign?: XAlign;\r\n /**\r\n * @zh_CN flex 布局下的子元素水平排列方式\r\n * @en_US The level of sub-element level arrangement under flex layout\r\n */\r\n justify?: XJustify;\r\n /**\r\n * @zh_CN flex 布局下的子元素垂直排列方式\r\n * @en_US sub-element vertical arrangement method under flex layout\r\n */\r\n align?: XAlign;\r\n /**\r\n * @zh_CN flex 布局下的子元素排列方向\r\n * @en_US The direction of the sub-element arrangement under flex layout\r\n */\r\n direction?: XDirection;\r\n /**\r\n * @zh_CN 禁用\r\n * @en_US Disabled\r\n */\r\n disabled?: boolean;\r\n /**\r\n * @zh_CN 必填\r\n * @en_US Required\r\n */\r\n required?: boolean;\r\n /**\r\n * @zh_CN 开始拖动的事件\r\n * @en_US Start drag event\r\n */\r\n dragStartEmit?: (start: CdkDragStart) => void;\r\n /**\r\n * @zh_CN 按住移动中的事件\r\n * @en_US Hold down the moving event\r\n */\r\n dragMoveEmit?: (move: CdkDragMove) => void;\r\n /**\r\n * @zh_CN 移动结束的事件\r\n * @en_US Mobile end event\r\n */\r\n dragEndEmit?: (end: CdkDragEnd) => void;\r\n}\r\n\r\n/**\r\n * @zh_CN 刻度标记\r\n * @en_US Scale marking\r\n */\r\nexport interface XSliderSelectMark {\r\n /**\r\n * @zh_CN 数值\r\n * @en_US Value\r\n */\r\n value: number;\r\n /**\r\n * @zh_CN 显示标签\r\n * @en_US Label\r\n */\r\n label: string;\r\n /**\r\n * @zh_CN 标签样式\r\n * @en_US style\r\n */\r\n style?: { [style: string]: any };\r\n /**\r\n * @zh_CN 实际偏移量(自动计算)\r\n * @en_US Offset. automatic calculation\r\n */\r\n offset?: number;\r\n}\r\n","import { XTooltipDirective } from '@ng-nest/ui/tooltip';\r\nimport {\r\n Component,\r\n ViewEncapsulation,\r\n ChangeDetectionStrategy,\r\n ChangeDetectorRef,\r\n Renderer2,\r\n ElementRef,\r\n OnDestroy,\r\n AfterViewInit,\r\n HostBinding,\r\n inject,\r\n signal,\r\n viewChild,\r\n viewChildren,\r\n computed\r\n} from '@angular/core';\r\nimport { XSliderSelectProperty, XSliderSelectPrefix, XSliderSelectMark } from './slider-select.property';\r\nimport { XIsEmpty, XIsUndefined, XResize, XResizeObserver, XIsNumber, XIsArray, XIsNull } from '@ng-nest/ui/core';\r\nimport { DragDropModule } from '@angular/cdk/drag-drop';\r\nimport { Subject } from 'rxjs';\r\nimport { debounceTime, takeUntil } from 'rxjs/operators';\r\nimport { XValueAccessor } from '@ng-nest/ui/base-form';\r\nimport { NgClass, NgStyle } from '@angular/common';\r\nimport { FormsModule, ReactiveFormsModule } from '@angular/forms';\r\nimport { XDragDirective } from '@ng-nest/ui/drag';\r\nimport { XOutletDirective } from '@ng-nest/ui/outlet';\r\nimport type { CdkDragMove, CdkDragStart, CdkDragEnd } from '@angular/cdk/drag-drop';\r\n\r\n@Component({\r\n selector: `${XSliderSelectPrefix}`,\r\n standalone: true,\r\n imports: [\r\n NgClass,\r\n NgStyle,\r\n FormsModule,\r\n ReactiveFormsModule,\r\n DragDropModule,\r\n XTooltipDirective,\r\n XDragDirective,\r\n XOutletDirective\r\n ],\r\n templateUrl: './slider-select.component.html',\r\n styleUrls: ['./slider-select.component.scss'],\r\n encapsulation: ViewEncapsulation.None,\r\n changeDetection: ChangeDetectionStrategy.OnPush,\r\n providers: [XValueAccessor(XSliderSelectComponent)]\r\n})\r\nexport class XSliderSelectComponent extends XSliderSelectProperty implements OnDestroy, AfterViewInit {\r\n sliderSelect = viewChild.required<ElementRef<HTMLElement>>('sliderSelect');\r\n dragStartRef = viewChild.required<ElementRef<HTMLElement>>('dragStartRef');\r\n dragEndRef = viewChild.required<ElementRef<HTMLElement>>('dragEndRef');\r\n railRef = viewChild.required<ElementRef<HTMLElement>>('railRef');\r\n processRef = viewChild.required<ElementRef<HTMLElement>>('processRef');\r\n @HostBinding('class.x-slider-select-vertical') get getVertical() {\r\n return this.vertical();\r\n }\r\n tooltips = viewChildren(XTooltipDirective);\r\n tooltipStart = computed(() => {\r\n if (this.tooltips().length > 0) {\r\n return this.tooltips()![0];\r\n }\r\n return null;\r\n });\r\n tooltipEnd = computed(() => {\r\n if (this.tooltips().length > 1) {\r\n return this.tooltips()![1];\r\n }\r\n return null;\r\n });\r\n\r\n override value = signal<number | number[]>(0);\r\n starting = signal(false);\r\n\r\n startOffset = signal(0);\r\n startVisible = signal(false);\r\n startManual = signal(false);\r\n start = signal<number | null>(null);\r\n startDisplayValue = signal('0');\r\n showStartTooltip = signal(true);\r\n\r\n endOffset = signal(0);\r\n endVisible = signal(false);\r\n endManual = signal(false);\r\n end = signal<number | null>(null);\r\n endDisplayValue = signal('0');\r\n showEndTooltip = signal(true);\r\n\r\n markList = computed(() => {\r\n if (!this.marks()) return [];\r\n const marks: XSliderSelectMark[] = [];\r\n for (let mark of this.marks()) {\r\n const mk: XSliderSelectMark = {\r\n value: mark.value,\r\n label: mark.label,\r\n style: { ...mark.style }\r\n };\r\n mk.offset = this.getOffset(mark.value);\r\n\r\n if (this.reverse()) {\r\n if (this.vertical()) {\r\n mk.style!['top'] = `${mk.offset}%`;\r\n } else {\r\n mk.style!['right'] = `${mk.offset}%`;\r\n }\r\n } else {\r\n if (this.vertical()) {\r\n mk.style!['bottom'] = `${mk.offset}%`;\r\n } else {\r\n mk.style!['left'] = `${mk.offset}%`;\r\n }\r\n }\r\n marks.push(mk);\r\n }\r\n return marks;\r\n });\r\n\r\n private unSubject = new Subject<void>();\r\n private resizeObserver!: XResizeObserver;\r\n isNumber = computed(() => XIsNumber(this.value()) && !XIsArray(this.value()));\r\n isArray = computed(() => XIsArray(this.value()));\r\n\r\n classMap = computed(() => ({\r\n [`x-justify-${this.justify()}`]: !!this.justify(),\r\n [`x-align-${this.align()}`]: !!this.align(),\r\n [`x-direction-${this.direction()}`]: !!this.direction()\r\n }));\r\n labelMapSignal = computed(() => ({\r\n [`x-text-align-${this.labelAlign()}`]: !!this.labelAlign()\r\n }));\r\n\r\n precisionSignal = computed(() => {\r\n const precision = this.precision();\r\n if (XIsUndefined(precision) || !XIsEmpty(this.step())) {\r\n let stepStr = String(this.step());\r\n let indexpoint = stepStr.indexOf('.');\r\n if (indexpoint === -1) {\r\n return 0;\r\n } else {\r\n return stepStr.length - (indexpoint + 1);\r\n }\r\n }\r\n return precision;\r\n });\r\n\r\n override requiredIsEmpty = computed(\r\n () => this.validatorComputed() && this.requiredComputed() && (XIsEmpty(this.value()) || this.value() === 0)\r\n );\r\n\r\n override writeValue(value: number | number[]) {\r\n if (this.starting()) return;\r\n if (XIsNull(value) || XIsUndefined(value)) {\r\n if (this.range()) {\r\n value = [this.min(), this.min()];\r\n } else {\r\n value = this.min();\r\n }\r\n }\r\n this.value.set(value);\r\n this.setLeft();\r\n this.setDisplayValue();\r\n }\r\n\r\n private renderer = inject(Renderer2);\r\n override cdr = inject(ChangeDetectorRef);\r\n elementRef = inject(ElementRef);\r\n\r\n ngAfterViewInit() {\r\n XResize(this.sliderSelect().nativeElement)\r\n .pipe(debounceTime(30), takeUntil(this.unSubject))\r\n .subscribe((x) => {\r\n this.resizeObserver = x.resizeObserver;\r\n this.setLeft();\r\n this.setDisplayValue();\r\n });\r\n }\r\n\r\n ngOnDestroy(): void {\r\n this.unSubject.next();\r\n this.unSubject.complete();\r\n this.resizeObserver?.disconnect();\r\n }\r\n\r\n change() {\r\n const getVal = (offset: number) => {\r\n return parseFloat(\r\n Number(((this.max() - this.min()) * offset) / 100 + this.min()).toFixed(this.precisionSignal())\r\n );\r\n };\r\n const startVal = getVal(this.startOffset());\r\n if (this.isNumber()) {\r\n this.value.set(startVal);\r\n } else {\r\n const endVal = getVal(this.endOffset());\r\n if (endVal < startVal) {\r\n this.value.set([endVal, startVal]);\r\n } else {\r\n this.value.set([startVal, endVal]);\r\n }\r\n }\r\n\r\n this.setDisplayValue();\r\n if (this.onChange) this.onChange(this.value());\r\n }\r\n\r\n getOffset(val: number) {\r\n console.log(val, this.min(), this.max());\r\n return Math.abs(\r\n Math.round(((val + (this.reverse() ? -this.min() : this.min())) * 100) / (this.max() - this.min()))\r\n );\r\n }\r\n\r\n setLeft() {\r\n let startVal = 0,\r\n endVal = 0;\r\n const value = this.value();\r\n if (this.isNumber()) {\r\n startVal = value as number;\r\n } else if (XIsArray(value) && value.length > 1) {\r\n startVal = value[0];\r\n endVal = value[1];\r\n this.endOffset.set(this.getOffset(endVal));\r\n this.end.set(this.endOffset());\r\n }\r\n\r\n this.startOffset.set(this.getOffset(startVal));\r\n this.start.set(this.startOffset());\r\n\r\n this.setDrag();\r\n }\r\n\r\n setDisplayValue() {\r\n const displayVal = (val: number) => {\r\n return Number(val).toFixed(this.precisionSignal());\r\n };\r\n const value = this.value();\r\n if (this.isNumber()) {\r\n this.startDisplayValue.set(displayVal(value as number));\r\n } else {\r\n if (XIsArray(value) && value.length > 1) {\r\n if (this.startOffset() > this.endOffset()) {\r\n this.startDisplayValue.set(displayVal(value[1]));\r\n this.endDisplayValue.set(displayVal(value[0]));\r\n } else {\r\n this.startDisplayValue.set(displayVal(value[0]));\r\n this.endDisplayValue.set(displayVal(value[1]));\r\n }\r\n }\r\n }\r\n }\r\n\r\n started(drag: CdkDragStart, type: 'start' | 'end' | 'both' = 'start') {\r\n this.starting.set(true);\r\n if (['start', 'both'].includes(type)) {\r\n const start = this.startOffset();\r\n this.start.set(start);\r\n if (this.showStartTooltip()) {\r\n this.startManual.set(true);\r\n this.startVisible.set(true);\r\n }\r\n }\r\n if (['end', 'both'].includes(type)) {\r\n const end = this.endOffset();\r\n this.end.set(end);\r\n if (this.showEndTooltip()) {\r\n this.endManual.set(true);\r\n this.endVisible.set(true);\r\n }\r\n }\r\n this.formControlValidator();\r\n this.dragStartEmit.emit(drag);\r\n }\r\n\r\n moved(drag: CdkDragMove, type: 'start' | 'end' | 'both' = 'start') {\r\n let transform = drag.source.getFreeDragPosition();\r\n this.setDrag(this.vertical() ? transform.y : transform.x, type);\r\n drag.source.reset();\r\n if (['start', 'both'].includes(type) && this.showStartTooltip()) {\r\n this.tooltipStart()?.updatePortal();\r\n }\r\n if (['end', 'both'].includes(type) && this.showEndTooltip()) {\r\n this.tooltipEnd()?.updatePortal();\r\n }\r\n this.change();\r\n this.dragMoveEmit.emit(drag);\r\n }\r\n\r\n ended(drag: CdkDragEnd, type: 'start' | 'end' | 'both' = 'start') {\r\n if (['start', 'both'].includes(type)) {\r\n if (this.showStartTooltip()) {\r\n this.startManual.set(false);\r\n this.startVisible.set(false);\r\n }\r\n }\r\n if (['end', 'both'].includes(type)) {\r\n if (this.showEndTooltip()) {\r\n this.endManual.set(false);\r\n this.endVisible.set(false);\r\n }\r\n }\r\n this.starting.set(false);\r\n this.dragEndEmit.emit(drag);\r\n }\r\n\r\n setDrag(distance: number = 0, type: 'start' | 'end' | 'both' = 'both') {\r\n if (typeof this.railRef().nativeElement.getBoundingClientRect !== 'function') return;\r\n let railBox = this.railRef().nativeElement.getBoundingClientRect();\r\n let railBoxLength = this.vertical() ? railBox.height : railBox.width;\r\n let stepLength = railBoxLength / ((this.max() - this.min()) / this.step());\r\n let offset = Math.abs(distance % stepLength);\r\n let dis =\r\n offset < stepLength / 2\r\n ? distance > 0\r\n ? distance - offset\r\n : distance + offset\r\n : distance > 0\r\n ? distance + stepLength - offset\r\n : distance - stepLength + offset;\r\n\r\n const setOffset = (d: number) => {\r\n let x1 = (d / 100) * railBoxLength;\r\n if (this.vertical()) {\r\n x1 += this.reverse() ? dis : -dis;\r\n } else {\r\n x1 += this.reverse() ? -dis : dis;\r\n }\r\n return Math.round((x1 / railBoxLength) * 100);\r\n };\r\n\r\n if (type === 'both') {\r\n this.startOffset.set(setOffset(this.start()!));\r\n this.endOffset.set(setOffset(this.end()!));\r\n } else if (type === 'start') {\r\n this.startOffset.set(setOffset(this.start()!));\r\n } else if (type === 'end') {\r\n this.endOffset.set(setOffset(this.end()!));\r\n }\r\n\r\n this.setDragStyles();\r\n }\r\n\r\n setDragStyles() {\r\n if (this.vertical()) {\r\n if (this.isArray()) {\r\n const wd = Math.abs(this.endOffset() - this.startOffset());\r\n const lt = this.endOffset() > this.startOffset() ? this.startOffset() : this.endOffset();\r\n if (this.reverse()) {\r\n this.renderer.setStyle(this.dragStartRef().nativeElement, 'top', `${this.startOffset()}%`);\r\n this.renderer.setStyle(this.dragEndRef().nativeElement, 'top', `${this.endOffset()}%`);\r\n this.renderer.setStyle(this.processRef().nativeElement, 'top', `${lt}%`);\r\n } else {\r\n this.renderer.setStyle(this.dragStartRef().nativeElement, 'bottom', `${this.startOffset()}%`);\r\n this.renderer.setStyle(this.dragEndRef().nativeElement, 'bottom', `${this.endOffset()}%`);\r\n this.renderer.setStyle(this.processRef().nativeElement, 'bottom', `${lt}%`);\r\n }\r\n this.renderer.setStyle(this.processRef().nativeElement, 'height', `${wd}%`);\r\n } else {\r\n if (this.reverse()) {\r\n this.renderer.removeStyle(this.dragStartRef().nativeElement, 'bottom');\r\n this.renderer.setStyle(this.dragStartRef().nativeElement, 'top', `${this.startOffset()}%`);\r\n } else {\r\n this.renderer.removeStyle(this.dragStartRef().nativeElement, 'top');\r\n this.renderer.setStyle(this.dragStartRef().nativeElement, 'bottom', `${this.startOffset()}%`);\r\n }\r\n this.renderer.setStyle(this.processRef().nativeElement, 'height', `${this.startOffset()}%`);\r\n }\r\n } else {\r\n if (this.isArray()) {\r\n const wd = Math.abs(this.endOffset() - this.startOffset());\r\n const lt = this.endOffset() > this.startOffset() ? this.startOffset() : this.endOffset();\r\n if (this.reverse()) {\r\n this.renderer.setStyle(this.dragStartRef().nativeElement, 'right', `${this.startOffset()}%`);\r\n this.renderer.setStyle(this.dragEndRef().nativeElement, 'right', `${this.endOffset()}%`);\r\n this.renderer.setStyle(this.processRef().nativeElement, 'right', `${lt}%`);\r\n } else {\r\n this.renderer.setStyle(this.dragStartRef().nativeElement, 'left', `${this.startOffset()}%`);\r\n this.renderer.setStyle(this.dragEndRef().nativeElement, 'left', `${this.endOffset()}%`);\r\n this.renderer.setStyle(this.processRef().nativeElement, 'left', `${lt}%`);\r\n }\r\n this.renderer.setStyle(this.processRef().nativeElement, 'width', `${wd}%`);\r\n } else {\r\n if (this.reverse()) {\r\n this.renderer.removeStyle(this.dragStartRef().nativeElement, 'left');\r\n this.renderer.setStyle(this.dragStartRef().nativeElement, 'right', `${this.startOffset()}%`);\r\n } else {\r\n this.renderer.removeStyle(this.dragStartRef().nativeElement, 'right');\r\n this.renderer.setStyle(this.dragStartRef().nativeElement, 'left', `${this.startOffset()}%`);\r\n }\r\n this.renderer.setStyle(this.processRef().nativeElement, 'width', `${this.startOffset()}%`);\r\n }\r\n }\r\n }\r\n}\r\n","<div\r\n #sliderSelect\r\n class=\"x-slider-select\"\r\n [class.x-flex]=\"justify() || align() || direction()\"\r\n [class.x-disabled]=\"disabledComputed()\"\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 [ngClass]=\"classMap()\"\r\n>\r\n @if (label()) {\r\n <label\r\n [class.x-slider-select-label-required]=\"requiredComputed()\"\r\n [style.width]=\"labelWidth()\"\r\n [ngClass]=\"labelMapSignal()\"\r\n >{{ label() }}</label\r\n >\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]=\"disabledComputed() || !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 @for (mark of markList(); track mark.label) {\r\n <div class=\"x-slider-select-mark\" [ngStyle]=\"mark.style\">\r\n <span class=\"x-slider-select-mark-label\">{{ mark.label }}</span>\r\n </div>\r\n }\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]=\"disabledComputed()\"\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()\"\r\n [content]=\"tooltipStartTpl\"\r\n [(visible)]=\"startVisible\"\r\n [manual]=\"startManual()\"\r\n >\r\n <ng-container *xOutlet=\"customButton()\">{{ customButton() }}</ng-container>\r\n </div>\r\n <ng-template #tooltipStartTpl>\r\n <ng-container *xOutlet=\"tooltipCustom(); context: { $value: startDisplayValue() }\">{{\r\n startDisplayValue()\r\n }}</ng-container>\r\n </ng-template>\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]=\"disabledComputed()\"\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()\"\r\n [content]=\"tooltipEndTpl\"\r\n [(visible)]=\"endVisible\"\r\n [manual]=\"endManual()\"\r\n >\r\n <ng-container *xOutlet=\"customButton()\">{{ customButton() }}</ng-container>\r\n </div>\r\n <ng-template #tooltipEndTpl>\r\n <ng-container *xOutlet=\"tooltipCustom(); context: { $value: endDisplayValue() }\">{{\r\n endDisplayValue()\r\n }}</ng-container>\r\n </ng-template>\r\n </div>\r\n </div>\r\n </div>\r\n</div>\r\n","import { NgModule } from '@angular/core';\r\nimport { XSliderSelectComponent } from './slider-select.component';\r\n\r\n@NgModule({\r\n exports: [XSliderSelectComponent],\r\n imports: [XSliderSelectComponent]\r\n})\r\nexport class XSliderSelectModule {}\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"}
@@ -227,7 +227,7 @@ class XTableProperty extends XPropertyFunction(X_TABLE_CONFIG_NAME) {
227
227
  * @zh_CN 树形表格
228
228
  * @en_US Tree table
229
229
  */
230
- this.treeTable = input(this.config?.treeTable ?? true, {
230
+ this.treeTable = input(this.config?.treeTable ?? false, {
231
231
  transform: XToBoolean
232
232
  });
233
233
  /**