From b03318dd96873d010e79375efa8a7fbb539f5ef5 Mon Sep 17 00:00:00 2001 From: pavlo poimanov Date: Thu, 21 May 2026 16:02:32 +0300 Subject: [PATCH 1/9] feat(charts): add chart range slider --- .../chart-range-slider.component.html | 72 ++++ .../chart-range-slider.component.less | 44 +++ .../chart-range-slider.component.spec.ts | 178 +++++++++ .../chart-range-slider.component.ts | 371 ++++++++++++++++++ .../src/chart-range-slider/public-api.ts | 2 + .../charts/src/chart-range-slider/types.ts | 18 + packages/charts/src/charts.module.ts | 3 + packages/charts/src/public-api.ts | 1 + 8 files changed, 689 insertions(+) create mode 100644 packages/charts/src/chart-range-slider/chart-range-slider.component.html create mode 100644 packages/charts/src/chart-range-slider/chart-range-slider.component.less create mode 100644 packages/charts/src/chart-range-slider/chart-range-slider.component.spec.ts create mode 100644 packages/charts/src/chart-range-slider/chart-range-slider.component.ts create mode 100644 packages/charts/src/chart-range-slider/public-api.ts create mode 100644 packages/charts/src/chart-range-slider/types.ts diff --git a/packages/charts/src/chart-range-slider/chart-range-slider.component.html b/packages/charts/src/chart-range-slider/chart-range-slider.component.html new file mode 100644 index 000000000..143671d1b --- /dev/null +++ b/packages/charts/src/chart-range-slider/chart-range-slider.component.html @@ -0,0 +1,72 @@ +
+ + + + + + + + + + + + + + + + + + + +
diff --git a/packages/charts/src/chart-range-slider/chart-range-slider.component.less b/packages/charts/src/chart-range-slider/chart-range-slider.component.less new file mode 100644 index 000000000..1c62f6861 --- /dev/null +++ b/packages/charts/src/chart-range-slider/chart-range-slider.component.less @@ -0,0 +1,44 @@ +:host { + display: block; +} + +.nui-chart-range-slider { + width: 100%; +} + +.nui-chart-range-slider__surface { + display: block; + width: 100%; + cursor: pointer; + overflow: visible; +} + +.nui-chart-range-slider__area { + fill-opacity: 0.18; +} + +.nui-chart-range-slider__line { + fill: none; + stroke-width: 1.5; + vector-effect: non-scaling-stroke; +} + +.nui-chart-range-slider__shade { + fill: rgba(0, 0, 0, 0.08); +} + +.nui-chart-range-slider__selection { + cursor: grab; +} + +.nui-chart-range-slider__window { + fill: rgba(255, 255, 255, 0.16); + stroke: #3f85af; + stroke-width: 1; + vector-effect: non-scaling-stroke; +} + +.nui-chart-range-slider__handle { + fill: #3f85af; + opacity: 0.95; +} \ No newline at end of file diff --git a/packages/charts/src/chart-range-slider/chart-range-slider.component.spec.ts b/packages/charts/src/chart-range-slider/chart-range-slider.component.spec.ts new file mode 100644 index 000000000..a9f3be296 --- /dev/null +++ b/packages/charts/src/chart-range-slider/chart-range-slider.component.spec.ts @@ -0,0 +1,178 @@ +import { SimpleChange } from "@angular/core"; +import { ComponentFixture, TestBed } from "@angular/core/testing"; + +import { ChartRangeSliderComponent } from "./chart-range-slider.component"; +import { IChartRangeSliderSeries } from "./types"; + +describe("ChartRangeSliderComponent", () => { + let fixture: ComponentFixture; + let component: ChartRangeSliderComponent; + + beforeEach(() => { + TestBed.configureTestingModule({ + declarations: [ChartRangeSliderComponent], + }); + + fixture = TestBed.createComponent(ChartRangeSliderComponent); + component = fixture.componentInstance; + }); + + it("builds the selection window from the visible range and selected index", () => { + component.series = createSeries(); + component.visibleRange = 4; + component.selectedIndex = 3; + + applyInputs(component, fixture); + + expect(component.selectionRect.width).toBeCloseTo(40, 4); + expect(component.selectionRect.x).toBeCloseTo(30, 4); + expect(component.selectionRange).toEqual( + jasmine.objectContaining({ + startIndex: 3, + endIndex: 6, + startValue: 3, + endValue: 6, + }) + ); + }); + + it("clamps the selected index to the last possible window", () => { + component.series = createSeries(); + component.visibleRange = 4; + component.selectedIndex = 20; + + applyInputs(component, fixture); + + expect(component.selectedIndex).toBe(6); + expect(component.selectionRange.startIndex).toBe(6); + expect(component.selectionRange.endIndex).toBe(9); + }); + + it("emits the new window when the track is clicked", () => { + const selectedIndexChangeSpy = spyOn( + component.selectedIndexChange, + "emit" + ); + const rangeChangeSpy = spyOn(component.rangeChange, "emit"); + + component.series = createSeries(); + component.visibleRange = 4; + component.selectedIndex = 0; + + applyInputs(component, fixture); + setTrackRect(component, 100, 0); + + component.onTrackMouseDown(createMouseEvent(80)); + + expect(selectedIndexChangeSpy).toHaveBeenCalledWith(6); + expect(rangeChangeSpy).toHaveBeenCalledWith( + jasmine.objectContaining({ + startIndex: 6, + endIndex: 9, + startValue: 6, + endValue: 9, + }) + ); + }); + + it("drags the selection window and clamps it at the start of the track", () => { + const selectedIndexChangeSpy = spyOn( + component.selectedIndexChange, + "emit" + ); + + component.series = createSeries(); + component.visibleRange = 4; + component.selectedIndex = 3; + + applyInputs(component, fixture); + setTrackRect(component, 100, 0); + + component.onSelectionMouseDown(createMouseEvent(35)); + component.onDocumentMouseMove(createMouseEvent(-10)); + component.onDocumentMouseUp(); + + expect(component.selectionRange.startIndex).toBe(0); + expect(selectedIndexChangeSpy).toHaveBeenCalledWith(0); + }); + + it("expands the selection to the full width when the visible range exceeds the data", () => { + component.series = createSeries(5); + component.visibleRange = 20; + component.selectedIndex = 4; + + applyInputs(component, fixture); + + expect(component.selectionRect.width).toBe(100); + expect(component.selectionRect.x).toBe(0); + expect(component.selectionRange.startIndex).toBe(0); + expect(component.selectionRange.endIndex).toBe(4); + }); + + it("renders only active series", () => { + component.series = createSeries(); + component.series[1].active = false; + component.visibleRange = 4; + + applyInputs(component, fixture); + + expect(component.previewSeries.length).toBe(1); + expect(component.previewSeries[0].id).toBe("latency"); + }); +}); + +function applyInputs( + component: ChartRangeSliderComponent, + fixture: ComponentFixture +): void { + component.ngOnChanges({ + series: new SimpleChange(null, component.series, false), + visibleRange: new SimpleChange(null, component.visibleRange, false), + selectedIndex: new SimpleChange(null, component.selectedIndex, false), + height: new SimpleChange(null, component.height, false), + }); + fixture.detectChanges(); +} + +function setTrackRect( + component: ChartRangeSliderComponent, + width: number, + left: number +): void { + spyOn( + component.track.nativeElement, + "getBoundingClientRect" + ).and.returnValue({ + left, + width, + } as DOMRect); +} + +function createMouseEvent(clientX: number): MouseEvent { + return { + clientX, + preventDefault: jasmine.createSpy("preventDefault"), + stopPropagation: jasmine.createSpy("stopPropagation"), + } as unknown as MouseEvent; +} + +function createSeries(length = 10): IChartRangeSliderSeries[] { + return [ + { + id: "latency", + color: "#3f85af", + data: Array.from({ length }, (_, index) => ({ + x: index, + y: (index + 1) * 10, + })), + }, + { + id: "jitter", + color: "#f59e0b", + data: Array.from({ length }, (_, index) => ({ + x: index, + y: index * 5, + })), + }, + ]; +} diff --git a/packages/charts/src/chart-range-slider/chart-range-slider.component.ts b/packages/charts/src/chart-range-slider/chart-range-slider.component.ts new file mode 100644 index 000000000..83b5511ed --- /dev/null +++ b/packages/charts/src/chart-range-slider/chart-range-slider.component.ts @@ -0,0 +1,371 @@ +import { + ChangeDetectionStrategy, + Component, + ElementRef, + EventEmitter, + HostListener, + Input, + OnChanges, + Output, + SimpleChanges, + ViewChild, +} from "@angular/core"; + +import { IChartRangeSliderRange, IChartRangeSliderSeries } from "./types"; + +interface IRenderedChartRangeSliderSeries { + id: string; + color: string; + areaPath: string; + linePath: string; +} + +interface IYDomain { + min: number; + max: number; + baseline: number; +} + +@Component({ + selector: "nui-chart-range-slider", + templateUrl: "./chart-range-slider.component.html", + styleUrls: ["./chart-range-slider.component.less"], + changeDetection: ChangeDetectionStrategy.OnPush, + standalone: false, +}) +export class ChartRangeSliderComponent implements OnChanges { + @Input() public series: IChartRangeSliderSeries[] = []; + @Input() public visibleRange = 0; + @Input() public selectedIndex = 0; + @Input() public height = 24; + @Input() public trackOffset = 0; + + @Output() public selectedIndexChange = new EventEmitter(); + @Output() public rangeChange = new EventEmitter(); + + @ViewChild("track", { static: true }) + public track: ElementRef; + + public readonly viewBoxWidth = 100; + public previewSeries: IRenderedChartRangeSliderSeries[] = []; + public selectionRect = { x: 0, width: 0 }; + public selectionRange: IChartRangeSliderRange = this.createEmptyRange(); + + private isDragging = false; + private dragOffset = 0; + private totalPointCount = 0; + + public ngOnChanges(changes: SimpleChanges): void { + if ( + changes["series"] || + changes["visibleRange"] || + changes["selectedIndex"] || + changes["height"] + ) { + this.rebuildView(); + } + } + + public onTrackMouseDown(event: MouseEvent): void { + if (!this.canInteract()) { + return; + } + + this.applySelectionFromPointer( + this.getPointerPosition(event) - this.selectionRect.width / 2 + ); + } + + public onSelectionMouseDown(event: MouseEvent): void { + if (!this.canInteract()) { + return; + } + + event.preventDefault(); + event.stopPropagation(); + this.isDragging = true; + this.dragOffset = this.getPointerPosition(event) - this.selectionRect.x; + } + + @HostListener("document:mousemove", ["$event"]) + public onDocumentMouseMove(event: MouseEvent): void { + if (!this.isDragging) { + return; + } + + event.preventDefault(); + this.applySelectionFromPointer( + this.getPointerPosition(event) - this.dragOffset + ); + } + + @HostListener("document:mouseup") + public onDocumentMouseUp(): void { + this.isDragging = false; + } + + private rebuildView(): void { + const activeSeries = this.getActiveSeries(); + const referenceSeries = this.getReferenceSeries(activeSeries); + + this.totalPointCount = this.getTotalPointCount(activeSeries); + this.previewSeries = this.buildPreviewSeries(activeSeries); + this.setSelection(this.selectedIndex, referenceSeries); + } + + private setSelection( + nextIndex: number, + referenceSeries: IChartRangeSliderSeries | undefined, + emit = false + ): void { + const clampedIndex = this.getClampedSelectionIndex(nextIndex); + + this.selectedIndex = clampedIndex; + this.selectionRect = this.buildSelectionRect(clampedIndex); + this.selectionRange = this.buildRange(clampedIndex, referenceSeries); + + if (emit) { + this.selectedIndexChange.emit(this.selectionRange.startIndex); + this.rangeChange.emit(this.selectionRange); + } + } + + private applySelectionFromPointer(pointerX: number): void { + const trackLimit = Math.max( + this.viewBoxWidth - this.selectionRect.width, + 0 + ); + const clampedPointer = this.clamp(pointerX, 0, trackLimit); + const nextIndex = + (clampedPointer / this.viewBoxWidth) * this.totalPointCount; + + this.setSelection( + nextIndex, + this.getReferenceSeries(this.getActiveSeries()), + true + ); + } + + private buildSelectionRect(startIndex: number): { + x: number; + width: number; + } { + const effectiveVisibleRange = this.getEffectiveVisibleRange(); + + if (!this.totalPointCount || !effectiveVisibleRange) { + return { x: 0, width: 0 }; + } + + if (effectiveVisibleRange >= this.totalPointCount) { + return { x: 0, width: this.viewBoxWidth }; + } + + return { + width: + (effectiveVisibleRange / this.totalPointCount) * + this.viewBoxWidth, + x: (startIndex / this.totalPointCount) * this.viewBoxWidth, + }; + } + + private buildRange( + startIndex: number, + referenceSeries: IChartRangeSliderSeries | undefined + ): IChartRangeSliderRange { + const effectiveVisibleRange = this.getEffectiveVisibleRange(); + + if (!this.totalPointCount || !effectiveVisibleRange) { + return this.createEmptyRange(); + } + + const endIndex = Math.min( + startIndex + effectiveVisibleRange - 1, + this.totalPointCount - 1 + ); + + return { + startIndex, + endIndex, + startValue: referenceSeries?.data[startIndex]?.x, + endValue: referenceSeries?.data[endIndex]?.x, + }; + } + + private buildPreviewSeries( + activeSeries: IChartRangeSliderSeries[] + ): IRenderedChartRangeSliderSeries[] { + if (!activeSeries.length) { + return []; + } + + const yDomain = this.getYDomain(activeSeries); + + return activeSeries.map((series) => ({ + id: series.id, + color: series.color ?? "#3f85af", + areaPath: this.buildAreaPath(series, yDomain), + linePath: this.buildLinePath(series, yDomain), + })); + } + + private buildAreaPath( + series: IChartRangeSliderSeries, + yDomain: IYDomain + ): string { + if (!series.data.length) { + return ""; + } + + const baseline = this.scaleY(yDomain.baseline, yDomain); + const firstX = this.scaleX(0, series.data.length); + const lastX = this.scaleX(series.data.length - 1, series.data.length); + const points = series.data + .map( + (point, index) => + `L ${this.scaleX(index, series.data.length)} ${this.scaleY( + point.y, + yDomain + )}` + ) + .join(" "); + + return `M ${firstX} ${baseline} ${points} L ${lastX} ${baseline} Z`; + } + + private buildLinePath( + series: IChartRangeSliderSeries, + yDomain: IYDomain + ): string { + return series.data + .map((point, index) => { + const command = index === 0 ? "M" : "L"; + return `${command} ${this.scaleX( + index, + series.data.length + )} ${this.scaleY(point.y, yDomain)}`; + }) + .join(" "); + } + + private getActiveSeries(): IChartRangeSliderSeries[] { + return (this.series ?? []).filter( + (series) => (series.active ?? true) && series.data?.length + ); + } + + private getReferenceSeries( + series: IChartRangeSliderSeries[] + ): IChartRangeSliderSeries | undefined { + return series.reduce( + (longestSeries, currentSeries) => { + if ( + !longestSeries || + currentSeries.data.length > longestSeries.data.length + ) { + return currentSeries; + } + + return longestSeries; + }, + undefined + ); + } + + private getTotalPointCount(series: IChartRangeSliderSeries[]): number { + return series.reduce( + (maxLength, currentSeries) => + Math.max(maxLength, currentSeries.data.length), + 0 + ); + } + + private getYDomain(series: IChartRangeSliderSeries[]): IYDomain { + const values = series.reduce((result, currentSeries) => { + currentSeries.data.forEach((point) => result.push(point.y)); + return result; + }, []); + + const rawMin = values.length ? Math.min(...values) : 0; + const rawMax = values.length ? Math.max(...values) : 0; + const min = Math.min(rawMin, 0); + const max = rawMax === min ? min + 1 : rawMax; + + return { + min, + max, + baseline: min, + }; + } + + private getEffectiveVisibleRange(): number { + if (!this.totalPointCount) { + return 0; + } + + const normalizedVisibleRange = Math.max( + 0, + Math.floor(this.visibleRange) + ); + + return Math.min(normalizedVisibleRange, this.totalPointCount); + } + + private getClampedSelectionIndex(value: number): number { + const effectiveVisibleRange = this.getEffectiveVisibleRange(); + + if (!this.totalPointCount || !effectiveVisibleRange) { + return 0; + } + + const maxStartIndex = Math.max( + this.totalPointCount - effectiveVisibleRange, + 0 + ); + + return this.clamp(Math.round(value), 0, maxStartIndex); + } + + private getPointerPosition(event: MouseEvent): number { + const rect = this.track.nativeElement.getBoundingClientRect(); + + if (!rect.width) { + return 0; + } + + return this.clamp( + ((event.clientX - rect.left) / rect.width) * this.viewBoxWidth, + 0, + this.viewBoxWidth + ); + } + + private scaleX(index: number, pointCount: number): number { + if (pointCount <= 1) { + return this.viewBoxWidth / 2; + } + + return (index / (pointCount - 1)) * this.viewBoxWidth; + } + + private scaleY(value: number, domain: IYDomain): number { + return ( + this.height - + ((value - domain.min) / (domain.max - domain.min)) * this.height + ); + } + + private createEmptyRange(): IChartRangeSliderRange { + return { + startIndex: 0, + endIndex: 0, + }; + } + + private canInteract(): boolean { + return this.totalPointCount > 0 && this.getEffectiveVisibleRange() > 0; + } + + private clamp(value: number, min: number, max: number): number { + return Math.min(Math.max(value, min), max); + } +} diff --git a/packages/charts/src/chart-range-slider/public-api.ts b/packages/charts/src/chart-range-slider/public-api.ts new file mode 100644 index 000000000..c479e85e8 --- /dev/null +++ b/packages/charts/src/chart-range-slider/public-api.ts @@ -0,0 +1,2 @@ +export * from "./chart-range-slider.component"; +export * from "./types"; diff --git a/packages/charts/src/chart-range-slider/types.ts b/packages/charts/src/chart-range-slider/types.ts new file mode 100644 index 000000000..a5a394da1 --- /dev/null +++ b/packages/charts/src/chart-range-slider/types.ts @@ -0,0 +1,18 @@ +export interface IChartRangeSliderPoint { + x: number; + y: number; +} + +export interface IChartRangeSliderSeries { + id: string; + data: IChartRangeSliderPoint[]; + color?: string; + active?: boolean; +} + +export interface IChartRangeSliderRange { + startIndex: number; + endIndex: number; + startValue?: number; + endValue?: number; +} diff --git a/packages/charts/src/charts.module.ts b/packages/charts/src/charts.module.ts index 4ad82c514..844753538 100644 --- a/packages/charts/src/charts.module.ts +++ b/packages/charts/src/charts.module.ts @@ -32,6 +32,7 @@ import { } from "@nova-ui/bits"; import { ChartComponent } from "./chart/chart.component"; +import { ChartRangeSliderComponent } from "./chart-range-slider/chart-range-slider.component"; import { ChartCollectionIdDirective } from "./chart-collection/chart-collection-id.directive"; import { ChartCollectionService } from "./chart-collection/chart-collection.service"; import { ChartDonutContentComponent } from "./chart-donut-content/chart-donut-content.component"; @@ -54,6 +55,7 @@ import { ThresholdsService } from "./thresholds/thresholds-service"; BasicLegendTileComponent, RichLegendTileComponent, ChartComponent, + ChartRangeSliderComponent, ChartCollectionIdDirective, ChartMarkerComponent, ChartPopoverComponent, @@ -68,6 +70,7 @@ import { ThresholdsService } from "./thresholds/thresholds-service"; RichLegendTileComponent, BasicLegendTileComponent, ChartComponent, + ChartRangeSliderComponent, ChartCollectionIdDirective, ChartMarkerComponent, ChartPopoverComponent, diff --git a/packages/charts/src/public-api.ts b/packages/charts/src/public-api.ts index f2757d1ed..c9199bde4 100644 --- a/packages/charts/src/public-api.ts +++ b/packages/charts/src/public-api.ts @@ -24,6 +24,7 @@ export { ChartDonutContentComponent } from "./chart-donut-content/chart-donut-co export { ChartTooltipsComponent } from "./chart-tooltips/chart-tooltips.component"; export { ChartPopoverComponent } from "./chart-popover/chart-popover.component"; export { ChartMarkerComponent } from "./chart-marker/chart-marker.component"; +export * from "./chart-range-slider/public-api"; export * from "./charts.module"; export * from "./chart/chart.component"; From 96d5876c6d973510a4ffffa0440d22ad26853413 Mon Sep 17 00:00:00 2001 From: pavlo poimanov Date: Fri, 22 May 2026 23:36:57 +0300 Subject: [PATCH 2/9] OO-62803 Add Bits range filter component --- packages/bits/src/lib/public-api.ts | 1 + .../bits/src/lib/range-filter/public-api.ts | 3 + .../range-filter/range-filter.component.html | 191 +++++++++ .../range-filter/range-filter.component.less | 236 +++++++++++ .../range-filter.component.spec.ts | 374 +++++++++++++++++ .../range-filter/range-filter.component.ts | 383 ++++++++++++++++++ .../lib/range-filter/range-filter.models.ts | 4 + .../lib/range-filter/range-filter.module.ts | 9 + packages/bits/src/nui-api.ts | 1 + packages/bits/src/public_api.ts | 1 + 10 files changed, 1203 insertions(+) create mode 100644 packages/bits/src/lib/range-filter/public-api.ts create mode 100644 packages/bits/src/lib/range-filter/range-filter.component.html create mode 100644 packages/bits/src/lib/range-filter/range-filter.component.less create mode 100644 packages/bits/src/lib/range-filter/range-filter.component.spec.ts create mode 100644 packages/bits/src/lib/range-filter/range-filter.component.ts create mode 100644 packages/bits/src/lib/range-filter/range-filter.models.ts create mode 100644 packages/bits/src/lib/range-filter/range-filter.module.ts diff --git a/packages/bits/src/lib/public-api.ts b/packages/bits/src/lib/public-api.ts index f2e7a6df2..f47fdbcdb 100644 --- a/packages/bits/src/lib/public-api.ts +++ b/packages/bits/src/lib/public-api.ts @@ -37,6 +37,7 @@ export * from "./menu/public-api"; export * from "./paginator/public-api"; export * from "./panel/public-api"; export * from "./popover/public-api"; +export * from "./range-filter/public-api"; export * from "./repeat/public-api"; export * from "./select/public-api"; export * from "./select-v2/types"; diff --git a/packages/bits/src/lib/range-filter/public-api.ts b/packages/bits/src/lib/range-filter/public-api.ts new file mode 100644 index 000000000..efa92895e --- /dev/null +++ b/packages/bits/src/lib/range-filter/public-api.ts @@ -0,0 +1,3 @@ +export * from "./range-filter.component"; +export * from "./range-filter.models"; +export * from "./range-filter.module"; diff --git a/packages/bits/src/lib/range-filter/range-filter.component.html b/packages/bits/src/lib/range-filter/range-filter.component.html new file mode 100644 index 000000000..3745fb28e --- /dev/null +++ b/packages/bits/src/lib/range-filter/range-filter.component.html @@ -0,0 +1,191 @@ +
+ @if (label()) { +
+ {{ label() }} + @if (unit()) { + + {{ unit() }} + + } +
+ } @if (showInputs()) { @if (orientation() === 'horizontal') { +
+ @if (mode() === 'range') { +
+ @if (guides()) { + {{ + displayLow() + }} + } @else { + + } +
+ } +
+ @if (guides()) { + {{ + displayHigh() + }} + } @else { + + } +
+
+ } @else { +
+ @if (guides()) { + {{ displayHigh() }} + } @else { + + } +
+ } } + +
+
+
+ + @for (dot of guideDots(); track dot) { +
+ } @if (mode() === 'range') { +
+ } + +
+
+
+ + @if (showInputs() && orientation() === 'vertical' && mode() === 'range') { +
+ @if (guides()) { + {{ displayLow() }} + } @else { + + } +
+ } + +
+ @if (dragHandle()) { @if (mode() === 'range') { + Range: {{ displayLow() }} to {{ displayHigh() }} + } @else { + Value: {{ displayHigh() }} + } } +
+
diff --git a/packages/bits/src/lib/range-filter/range-filter.component.less b/packages/bits/src/lib/range-filter/range-filter.component.less new file mode 100644 index 000000000..2deb3de8e --- /dev/null +++ b/packages/bits/src/lib/range-filter/range-filter.component.less @@ -0,0 +1,236 @@ +@handle-size: 16px; +@track-thickness: 2px; +@guide-dot-size: 5px; +@touch-area-extra: 14px; + +:host { + display: block; +} + +.nui-range-filter { + position: relative; + + &__label { + font-size: var(--nui-font-size-default); + font-weight: bold; + color: var(--nui-color-text-default); + margin-bottom: 8px; + + &--vertical { + display: flex; + flex-direction: column; + align-items: center; + margin-top: 8px; + margin-bottom: 0; + text-align: center; + line-height: 1.2; + } + } + + &__unit { + margin-left: 4px; + font-size: var(--nui-font-size-default); + color: var(--nui-color-text-secondary); + font-weight: normal; + + &--stacked { + margin-left: 0; + margin-top: 2px; + display: block; + } + } + + &__track-wrapper { + padding: 12px 0; + } + + &__track { + position: relative; + height: @track-thickness; + background: var(--nui-color-line-default); + border-radius: calc(@track-thickness / 2); + cursor: pointer; + + .nui-range-filter--disabled & { + opacity: 0.4; + cursor: not-allowed; + pointer-events: none; + } + } + + &__fill { + position: absolute; + height: 100%; + background: var(--nui-color-active); + border-radius: calc(@track-thickness / 2); + pointer-events: none; + + .nui-range-filter--disabled & { + background: var(--nui-color-disabled); + cursor: not-allowed; + } + } + + &__handle { + position: absolute; + top: 50%; + width: @handle-size; + height: @handle-size; + background: var(--nui-color-active); + border: 2px solid var(--nui-color-active); + border-radius: 50%; + transform: translate(-50%, -50%); + cursor: grab; + touch-action: none; + + &::before { + content: ""; + position: absolute; + top: -@touch-area-extra; + left: -@touch-area-extra; + right: -@touch-area-extra; + bottom: -@touch-area-extra; + } + + &:focus { + outline: 3px solid var(--nui-color-focus); + outline-offset: 2px; + } + + &:focus:not(:focus-visible) { + outline: none; + } + + &--dragging { + cursor: grabbing; + } + + .nui-range-filter--disabled & { + background: var(--nui-color-disabled-secondary); + border-color: var(--nui-color-disabled); + cursor: not-allowed; + } + } + + &__guide-dot { + position: absolute; + top: 50%; + width: @guide-dot-size; + height: @guide-dot-size; + border-radius: 50%; + background: var(--nui-color-text-secondary); + transform: translate(-50%, -50%); + pointer-events: none; + } + + &__value-label { + display: inline-block; + width: 56px; + text-align: center; + font-size: var(--nui-font-size-default); + color: var(--nui-color-text-default); + font-variant-numeric: tabular-nums; + line-height: 28px; + } + + &__sr-only { + position: absolute; + width: 1px; + height: 1px; + overflow: hidden; + clip: rect(0, 0, 0, 0); + white-space: nowrap; + } + + &__inputs { + display: flex; + justify-content: space-between; + margin-bottom: 4px; + } + + &__input-group { + display: inline-flex; + width: 56px; + + &--end { + margin-left: auto; + } + + nui-textbox { + width: 56px; + min-width: 0; + + ::ng-deep .nui-textbox { + width: 66px; + min-width: 0; + } + + ::ng-deep input { + width: 100%; + min-width: 0; + } + } + } + + &--vertical { + display: flex; + flex-direction: column; + align-items: center; + + .nui-range-filter__label { + order: 5; + } + + .nui-range-filter__track-wrapper { + order: 2; + height: 200px; + width: 40px; + padding: 0 12px; + margin: 4px 0; + } + + .nui-range-filter__input-group--vert-top { + order: 1; + } + + .nui-range-filter__input-group--vert-bottom { + order: 4; + } + + .nui-range-filter__track { + height: 100%; + width: @track-thickness; + margin: 0 auto; + } + + .nui-range-filter__fill { + width: 100%; + height: auto; + left: 0; + right: 0; + } + + .nui-range-filter__handle { + left: 50%; + top: auto; + transform: translate(-50%, 50%); + } + + .nui-range-filter__guide-dot { + left: 50%; + top: auto; + transform: translate(-50%, 50%); + } + + .nui-range-filter__value-label { + width: auto; + line-height: 1.5; + } + + .nui-range-filter__input-group--vert { + display: flex; + justify-content: center; + margin: 0; + } + } +} \ No newline at end of file diff --git a/packages/bits/src/lib/range-filter/range-filter.component.spec.ts b/packages/bits/src/lib/range-filter/range-filter.component.spec.ts new file mode 100644 index 000000000..70d12bbe3 --- /dev/null +++ b/packages/bits/src/lib/range-filter/range-filter.component.spec.ts @@ -0,0 +1,374 @@ +import { ComponentFixture, TestBed } from "@angular/core/testing"; +import { By } from "@angular/platform-browser"; + +import { RangeFilterComponent } from "./range-filter.component"; +import { RangeValue } from "./range-filter.models"; + +describe("components >", () => { + describe("range filter >", () => { + let fixture: ComponentFixture; + let component: RangeFilterComponent; + + const setInputs = ( + overrides: Partial<{ + min: number; + max: number; + valueLow: number; + valueHigh: number; + step: number; + mode: "range" | "single"; + disabled: boolean; + showInputs: boolean; + debounceMs: number; + }> + ): void => { + if (overrides.min !== undefined) { + fixture.componentRef.setInput("min", overrides.min); + } + if (overrides.max !== undefined) { + fixture.componentRef.setInput("max", overrides.max); + } + if (overrides.valueLow !== undefined) { + fixture.componentRef.setInput("valueLow", overrides.valueLow); + } + if (overrides.valueHigh !== undefined) { + fixture.componentRef.setInput("valueHigh", overrides.valueHigh); + } + if (overrides.step !== undefined) { + fixture.componentRef.setInput("step", overrides.step); + } + if (overrides.mode !== undefined) { + fixture.componentRef.setInput("mode", overrides.mode); + } + if (overrides.disabled !== undefined) { + fixture.componentRef.setInput("disabled", overrides.disabled); + } + if (overrides.showInputs !== undefined) { + fixture.componentRef.setInput( + "showInputs", + overrides.showInputs + ); + } + if (overrides.debounceMs !== undefined) { + fixture.componentRef.setInput( + "debounceMs", + overrides.debounceMs + ); + } + fixture.detectChanges(); + }; + + const getHighHandle = () => + (fixture.debugElement.query( + By.css(".nui-range-filter__handle--high") + )?.nativeElement as HTMLElement | undefined) ?? null; + + const getLowHandle = () => + (fixture.debugElement.query( + By.css(".nui-range-filter__handle--low") + )?.nativeElement as HTMLElement | undefined) ?? null; + + const getInputs = () => + fixture.debugElement + .queryAll( + By.css(".nui-range-filter__input-group .nui-textbox__input") + ) + .map(({ nativeElement }) => nativeElement as HTMLInputElement); + + beforeEach(async () => { + await TestBed.configureTestingModule({ + imports: [RangeFilterComponent], + }).compileComponents(); + + fixture = TestBed.createComponent(RangeFilterComponent); + component = fixture.componentInstance; + fixture.componentRef.setInput("debounceMs", 0); + fixture.detectChanges(); + }); + + it("renders one handle in single mode", () => { + setInputs({ mode: "single" }); + + expect(getLowHandle()).toBeNull(); + expect(getHighHandle()).toBeTruthy(); + }); + + it("renders two handles in range mode", () => { + setInputs({ mode: "range" }); + + expect(getLowHandle()).toBeTruthy(); + expect(getHighHandle()).toBeTruthy(); + }); + + it("renders inputs when showInputs is true", () => { + setInputs({ showInputs: true, mode: "range" }); + + expect(getInputs().length).toBe(2); + }); + + it("hides inputs when showInputs is false", () => { + setInputs({ showInputs: false }); + + expect(getInputs().length).toBe(0); + }); + + it("renders one input in single mode", () => { + setInputs({ showInputs: true, mode: "single" }); + + expect(getInputs().length).toBe(1); + }); + + it("marks component disabled when disabled input is true", () => { + setInputs({ disabled: true }); + + expect( + fixture.debugElement.query( + By.css(".nui-range-filter--disabled") + ) + ).toBeTruthy(); + }); + + it("marks component disabled when min equals max", () => { + setInputs({ min: 50, max: 50 }); + + expect( + fixture.debugElement.query( + By.css(".nui-range-filter--disabled") + ) + ).toBeTruthy(); + }); + + it("sets handles to tabindex -1 when disabled", () => { + setInputs({ disabled: true, mode: "range" }); + + expect(getHighHandle()?.getAttribute("tabindex")).toBe("-1"); + expect(getLowHandle()?.getAttribute("tabindex")).toBe("-1"); + }); + + it("clamps displayLow to min when valueLow is below min", () => { + setInputs({ min: 10, max: 100, valueLow: 0, valueHigh: 80 }); + + expect(component["displayLow"]()).toBe(10); + }); + + it("clamps displayHigh to max when valueHigh exceeds max", () => { + setInputs({ min: 0, max: 100, valueLow: 20, valueHigh: 150 }); + + expect(component["displayHigh"]()).toBe(100); + }); + + it("clamps displayLow to valueHigh when valueLow exceeds valueHigh", () => { + setInputs({ min: 0, max: 100, valueLow: 90, valueHigh: 50 }); + + expect(component["displayLow"]()).toBe(50); + }); + + it("snaps displayHigh to nearest step", () => { + setInputs({ min: 0, max: 100, valueHigh: 13, step: 5 }); + + expect(component["displayHigh"]()).toBe(15); + }); + + it("snaps displayLow to nearest step", () => { + setInputs({ + min: 0, + max: 100, + valueLow: 12, + valueHigh: 80, + step: 5, + }); + + expect(component["displayLow"]()).toBe(10); + }); + + it("emits rangeChange immediately when debounceMs is 0", (done) => { + setInputs({ + min: 0, + max: 100, + valueLow: 20, + valueHigh: 80, + debounceMs: 0, + }); + + component.rangeChange.subscribe((value: RangeValue) => { + expect(value.high).toBe(79); + done(); + }); + + getHighHandle()?.dispatchEvent( + new KeyboardEvent("keydown", { + key: "ArrowLeft", + bubbles: true, + }) + ); + }); + + it("does not emit rangeChange when disabled", () => { + setInputs({ disabled: true, debounceMs: 0 }); + const spy = jasmine.createSpy("rangeChange"); + + component.rangeChange.subscribe(spy); + getHighHandle()?.dispatchEvent( + new KeyboardEvent("keydown", { + key: "ArrowLeft", + bubbles: true, + }) + ); + + expect(spy).not.toHaveBeenCalled(); + }); + + it("increments high value on ArrowRight", (done) => { + setInputs({ + min: 0, + max: 100, + valueLow: 20, + valueHigh: 50, + step: 1, + debounceMs: 0, + }); + + component.rangeChange.subscribe((value: RangeValue) => { + expect(value.high).toBe(51); + done(); + }); + + getHighHandle()?.dispatchEvent( + new KeyboardEvent("keydown", { + key: "ArrowRight", + bubbles: true, + }) + ); + }); + + it("decrements low value on ArrowLeft", (done) => { + setInputs({ + min: 0, + max: 100, + valueLow: 30, + valueHigh: 70, + step: 1, + mode: "range", + debounceMs: 0, + }); + + component.rangeChange.subscribe((value: RangeValue) => { + expect(value.low).toBe(29); + done(); + }); + + getLowHandle()?.dispatchEvent( + new KeyboardEvent("keydown", { + key: "ArrowLeft", + bubbles: true, + }) + ); + }); + + it("moves high to max on End key", (done) => { + setInputs({ min: 0, max: 100, valueHigh: 50, debounceMs: 0 }); + + component.rangeChange.subscribe((value: RangeValue) => { + expect(value.high).toBe(100); + done(); + }); + + getHighHandle()?.dispatchEvent( + new KeyboardEvent("keydown", { key: "End", bubbles: true }) + ); + }); + + it("moves high to min floor on Home key", (done) => { + setInputs({ + min: 0, + max: 100, + valueLow: 20, + valueHigh: 50, + mode: "range", + debounceMs: 0, + }); + + component.rangeChange.subscribe((value: RangeValue) => { + expect(value.high).toBe(20); + done(); + }); + + getHighHandle()?.dispatchEvent( + new KeyboardEvent("keydown", { key: "Home", bubbles: true }) + ); + }); + + it("moves by large step on Shift+Arrow", (done) => { + setInputs({ + min: 0, + max: 200, + valueHigh: 50, + step: 5, + debounceMs: 0, + }); + + component.rangeChange.subscribe((value: RangeValue) => { + expect(value.high).toBe(100); + done(); + }); + + getHighHandle()?.dispatchEvent( + new KeyboardEvent("keydown", { + key: "ArrowRight", + shiftKey: true, + bubbles: true, + }) + ); + }); + + it("emits low:min in single mode regardless of valueLow", (done) => { + setInputs({ + min: 10, + max: 100, + valueLow: 40, + valueHigh: 70, + mode: "single", + debounceMs: 0, + }); + + component.rangeChange.subscribe((value: RangeValue) => { + expect(value.low).toBe(10); + done(); + }); + + getHighHandle()?.dispatchEvent( + new KeyboardEvent("keydown", { + key: "ArrowRight", + bubbles: true, + }) + ); + }); + + it("sets aria-valuemin, aria-valuemax, and aria-valuenow on the high handle", () => { + setInputs({ + min: 0, + max: 100, + valueLow: 20, + valueHigh: 60, + mode: "range", + }); + + expect(getHighHandle()?.getAttribute("aria-valuemin")).toBe("20"); + expect(getHighHandle()?.getAttribute("aria-valuemax")).toBe("100"); + expect(getHighHandle()?.getAttribute("aria-valuenow")).toBe("60"); + }); + + it("sets aria-valuemax on the low handle to displayHigh", () => { + setInputs({ + min: 0, + max: 100, + valueLow: 20, + valueHigh: 60, + mode: "range", + }); + + expect(getLowHandle()?.getAttribute("aria-valuemax")).toBe("60"); + expect(getLowHandle()?.getAttribute("aria-valuenow")).toBe("20"); + }); + }); +}); diff --git a/packages/bits/src/lib/range-filter/range-filter.component.ts b/packages/bits/src/lib/range-filter/range-filter.component.ts new file mode 100644 index 000000000..24f3f9963 --- /dev/null +++ b/packages/bits/src/lib/range-filter/range-filter.component.ts @@ -0,0 +1,383 @@ +import { CommonModule } from "@angular/common"; +import { + ChangeDetectionStrategy, + ChangeDetectorRef, + Component, + ElementRef, + HostListener, + OnDestroy, + ViewChild, + computed, + inject, + input, + output, + signal, +} from "@angular/core"; +import { FormsModule } from "@angular/forms"; + +import { NuiTextboxModule } from "../textbox/textbox.module"; +import { RangeValue } from "./range-filter.models"; + +@Component({ + selector: "nui-range-filter", + templateUrl: "./range-filter.component.html", + styleUrls: ["./range-filter.component.less"], + changeDetection: ChangeDetectionStrategy.OnPush, + standalone: true, + imports: [CommonModule, FormsModule, NuiTextboxModule], +}) +export class RangeFilterComponent implements OnDestroy { + public readonly min = input(0); + public readonly max = input(100); + public readonly valueLow = input(0); + public readonly valueHigh = input(100); + public readonly step = input(1); + public readonly orientation = input<"horizontal" | "vertical">( + "horizontal" + ); + public readonly mode = input<"range" | "single">("range"); + public readonly disabled = input(false); + public readonly label = input(undefined); + public readonly unit = input(undefined); + public readonly showInputs = input(true); + public readonly guides = input(false); + public readonly debounceMs = input(300); + + public readonly rangeChange = output(); + + protected readonly dragHandle = signal<"low" | "high" | null>(null); + protected readonly displayLow = computed(() => { + if (this.dragHandle() !== null) { + return this.liveLow(); + } + + return this.snap( + Math.max(this.min(), Math.min(this.valueLow(), this.valueHigh())) + ); + }); + protected readonly displayHigh = computed(() => { + if (this.dragHandle() !== null) { + return this.liveHigh(); + } + + return this.snap( + Math.max(this.valueLow(), Math.min(this.valueHigh(), this.max())) + ); + }); + protected readonly isDisabled = computed( + () => this.disabled() || this.min() === this.max() + ); + protected readonly lowPct = computed(() => this.toPct(this.displayLow())); + protected readonly highPct = computed(() => this.toPct(this.displayHigh())); + protected readonly fillStart = computed(() => + this.mode() === "single" ? 0 : this.lowPct() + ); + protected readonly fillSize = computed( + () => this.highPct() - this.fillStart() + ); + protected readonly guideDots = computed((): number[] => { + if (!this.guides()) { + return []; + } + + const min = this.min(); + const max = this.max(); + const step = this.step(); + if (step <= 0 || max <= min) { + return []; + } + + const count = Math.round((max - min) / step); + if (count > 100) { + return []; + } + + const range = max - min; + const activeStart = this.fillStart(); + const activeEnd = activeStart + this.fillSize(); + const dots: number[] = []; + + for (let i = 0; i <= count; i++) { + const pct = ((i * step) / range) * 100; + if (pct < activeStart || pct > activeEnd) { + dots.push(pct); + } + } + + return dots; + }); + + private readonly liveLow = signal(0); + private readonly liveHigh = signal(100); + private readonly cdr = inject(ChangeDetectorRef); + @ViewChild("trackEl") private readonly trackEl?: ElementRef; + private readonly hostEl = inject(ElementRef); + + private debounceTimer?: ReturnType; + private dragPointerOffset = 0; + + public ngOnDestroy(): void { + clearTimeout(this.debounceTimer); + } + + protected onLowKeydown(event: KeyboardEvent): void { + if (this.isDisabled() || this.mode() === "single") { + return; + } + + const action = this.keyAction(event); + if (action === null) { + return; + } + + event.preventDefault(); + let next: number; + if (action === "min") { + next = this.min(); + } else if (action === "max") { + next = this.displayHigh(); + } else { + next = this.displayLow() + action; + } + + next = this.snap( + Math.max(this.min(), Math.min(next, this.displayHigh())) + ); + this.emitDebounced({ low: next, high: this.displayHigh() }); + } + + protected onHighKeydown(event: KeyboardEvent): void { + if (this.isDisabled()) { + return; + } + + const action = this.keyAction(event); + if (action === null) { + return; + } + + event.preventDefault(); + const floor = this.mode() === "single" ? this.min() : this.displayLow(); + let next: number; + if (action === "min") { + next = floor; + } else if (action === "max") { + next = this.max(); + } else { + next = this.displayHigh() + action; + } + + next = this.snap(Math.max(floor, Math.min(next, this.max()))); + this.emitDebounced({ + low: this.mode() === "single" ? this.min() : this.displayLow(), + high: next, + }); + } + + protected onHandleMousedown( + event: MouseEvent, + handle: "low" | "high" + ): void { + if (this.isDisabled()) { + return; + } + + event.preventDefault(); + (event.currentTarget as HTMLElement).focus(); + + const currentLow = this.displayLow(); + const currentHigh = this.displayHigh(); + this.liveLow.set(currentLow); + this.liveHigh.set(currentHigh); + this.dragHandle.set(handle); + + const track = this.trackEl?.nativeElement; + if (!track) { + this.dragPointerOffset = 0; + return; + } + + const rect = track.getBoundingClientRect(); + const handlePct = + this.toPct(handle === "low" ? currentLow : currentHigh) / 100; + this.dragPointerOffset = + this.orientation() === "horizontal" + ? event.clientX - (rect.left + handlePct * rect.width) + : event.clientY - (rect.bottom - handlePct * rect.height); + } + + @HostListener("document:mousemove", ["$event"]) + protected onDocumentMousemove(event: MouseEvent): void { + if (this.dragHandle() === null) { + return; + } + + const value = this.eventToValue(event, this.dragPointerOffset); + if (this.dragHandle() === "low") { + this.liveLow.set( + this.snap( + Math.max(this.min(), Math.min(value, this.liveHigh())) + ) + ); + } else { + const floor = + this.mode() === "single" ? this.min() : this.liveLow(); + this.liveHigh.set( + this.snap(Math.max(floor, Math.min(value, this.max()))) + ); + } + + this.cdr.markForCheck(); + } + + @HostListener("document:mouseup") + protected onDocumentMouseup(): void { + if (this.dragHandle() === null) { + return; + } + + const low = this.mode() === "single" ? this.min() : this.liveLow(); + const high = this.liveHigh(); + this.dragHandle.set(null); + clearTimeout(this.debounceTimer); + this.rangeChange.emit({ low, high }); + this.cdr.markForCheck(); + } + + protected onTrackClick(event: MouseEvent): void { + if (this.isDisabled()) { + return; + } + + const value = this.eventToValue(event); + const distHigh = Math.abs(value - this.displayHigh()); + const distLow = Math.abs(value - this.displayLow()); + if (this.mode() === "single" || distHigh <= distLow) { + const floor = + this.mode() === "single" ? this.min() : this.displayLow(); + const next = this.snap( + Math.max(floor, Math.min(value, this.max())) + ); + this.emitDebounced({ + low: this.mode() === "single" ? this.min() : this.displayLow(), + high: next, + }); + return; + } + + const next = this.snap( + Math.max(this.min(), Math.min(value, this.displayHigh())) + ); + this.emitDebounced({ low: next, high: this.displayHigh() }); + } + + protected onLowInputChange(rawValue: string): void { + if (this.isDisabled()) { + return; + } + + const next = this.clampAndSnap( + rawValue, + this.min(), + this.displayHigh() + ); + this.emitDebounced({ low: next, high: this.displayHigh() }); + } + + protected onHighInputChange(rawValue: string): void { + if (this.isDisabled()) { + return; + } + + const floor = this.mode() === "single" ? this.min() : this.displayLow(); + const next = this.clampAndSnap(rawValue, floor, this.max()); + this.emitDebounced({ + low: this.mode() === "single" ? this.min() : this.displayLow(), + high: next, + }); + } + + private keyAction(event: KeyboardEvent): number | "min" | "max" | null { + const isHorizontal = this.orientation() === "horizontal"; + const incrementKey = isHorizontal ? "ArrowRight" : "ArrowUp"; + const decrementKey = isHorizontal ? "ArrowLeft" : "ArrowDown"; + const largeStep = this.step() * 10; + + if (event.key === incrementKey) { + return event.shiftKey ? largeStep : this.step(); + } + if (event.key === decrementKey) { + return event.shiftKey ? -largeStep : -this.step(); + } + if (event.key === "Home") { + return "min"; + } + if (event.key === "End") { + return "max"; + } + + return null; + } + + private eventToValue(event: MouseEvent, pointerOffset = 0): number { + const track = this.trackEl?.nativeElement; + if (!track) { + return this.min(); + } + + const rect = track.getBoundingClientRect(); + const pct = + this.orientation() === "horizontal" + ? Math.max( + 0, + Math.min( + 1, + (event.clientX - pointerOffset - rect.left) / + rect.width + ) + ) + : Math.max( + 0, + Math.min( + 1, + 1 - + (event.clientY - pointerOffset - rect.top) / + rect.height + ) + ); + + return this.min() + pct * (this.max() - this.min()); + } + + private toPct(value: number): number { + const range = this.max() - this.min(); + + return range === 0 ? 0 : ((value - this.min()) / range) * 100; + } + + private snap(value: number): number { + const step = this.step(); + + return step > 0 ? Math.round(value / step) * step : value; + } + + private clampAndSnap(rawValue: string, low: number, high: number): number { + const parsed = parseFloat(rawValue); + return this.snap( + Math.max(low, Math.min(Number.isNaN(parsed) ? low : parsed, high)) + ); + } + + private emitDebounced(value: RangeValue): void { + clearTimeout(this.debounceTimer); + const debounceMs = this.debounceMs(); + if (debounceMs <= 0) { + this.rangeChange.emit(value); + return; + } + + this.debounceTimer = setTimeout(() => { + this.rangeChange.emit(value); + }, debounceMs); + } +} diff --git a/packages/bits/src/lib/range-filter/range-filter.models.ts b/packages/bits/src/lib/range-filter/range-filter.models.ts new file mode 100644 index 000000000..84e47772e --- /dev/null +++ b/packages/bits/src/lib/range-filter/range-filter.models.ts @@ -0,0 +1,4 @@ +export interface RangeValue { + low: number; + high: number; +} diff --git a/packages/bits/src/lib/range-filter/range-filter.module.ts b/packages/bits/src/lib/range-filter/range-filter.module.ts new file mode 100644 index 000000000..83c339329 --- /dev/null +++ b/packages/bits/src/lib/range-filter/range-filter.module.ts @@ -0,0 +1,9 @@ +import { NgModule } from "@angular/core"; + +import { RangeFilterComponent } from "./range-filter.component"; + +@NgModule({ + imports: [RangeFilterComponent], + exports: [RangeFilterComponent], +}) +export class NuiRangeFilterModule {} diff --git a/packages/bits/src/nui-api.ts b/packages/bits/src/nui-api.ts index 4e53411e5..f4baf3017 100644 --- a/packages/bits/src/nui-api.ts +++ b/packages/bits/src/nui-api.ts @@ -56,6 +56,7 @@ export { NuiPanelModule } from "./lib/panel/panel.module"; export { NuiPopoverModule } from "./lib/popover/popover.module"; export { NuiProgressModule } from "./lib/progress/progress.module"; export { NuiRadioModule } from "./lib/radio/radio.module"; +export { NuiRangeFilterModule } from "./lib/range-filter/range-filter.module"; export { NuiRepeatModule } from "./lib/repeat/repeat.module"; export { NuiRiskScoreModule } from "./lib/risk-score/risk-score.module"; export { NuiSearchModule } from "./lib/search/search.module"; diff --git a/packages/bits/src/public_api.ts b/packages/bits/src/public_api.ts index 50bb94250..9b2277a32 100644 --- a/packages/bits/src/public_api.ts +++ b/packages/bits/src/public_api.ts @@ -46,6 +46,7 @@ export { ButtonComponent } from "./lib/button/button.component"; export { BusyComponent } from "./lib/busy/busy.component"; export { ImageComponent } from "./lib/image/image.component"; export { SearchComponent } from "./lib/search/search.component"; +export { RangeFilterComponent } from "./lib/range-filter/range-filter.component"; export { TextboxComponent } from "./lib/textbox/textbox.component"; export { RepeatItemComponent } from "./lib/repeat/repeat-item/repeat-item.component"; export { RepeatComponent } from "./lib/repeat/repeat.component"; From 6ecd9c3bdfbb325815c4156f5c7106350477cc33 Mon Sep 17 00:00:00 2001 From: pavlo poimanov Date: Sat, 23 May 2026 00:13:02 +0300 Subject: [PATCH 3/9] OO-62803 Add range filter demos and screenshots --- .../oo-62803/range-filter-basic.png | Bin 0 -> 29285 bytes .../oo-62803/range-filter-docs.png | Bin 0 -> 222249 bytes .../oo-62803/range-filter-guides.png | Bin 0 -> 31053 bytes .../oo-62803/range-filter-vertical.png | Bin 0 -> 32632 bytes .../src/components/app/app-routing.module.ts | 5 ++ .../demo/src/components/demo/demo.files.ts | 13 +++ .../src/components/demo/range-filter/index.ts | 4 + .../range-filter-basic.example.component.html | 25 ++++++ .../range-filter-basic.example.component.less | 48 +++++++++++ .../range-filter-basic.example.component.ts | 20 +++++ .../range-filter-docs.example.component.html | 50 +++++++++++ .../range-filter-docs.example.component.ts | 8 ++ ...range-filter-guides.example.component.html | 26 ++++++ ...range-filter-guides.example.component.less | 32 +++++++ .../range-filter-guides.example.component.ts | 20 +++++ ...nge-filter-vertical.example.component.html | 25 ++++++ ...nge-filter-vertical.example.component.less | 48 +++++++++++ ...range-filter-vertical.example.component.ts | 30 +++++++ .../demo/range-filter/range-filter.module.ts | 81 ++++++++++++++++++ .../range-filter/range-filter.component.html | 6 +- .../range-filter.component.spec.ts | 36 ++++++++ .../range-filter/range-filter.component.ts | 4 +- 22 files changed, 477 insertions(+), 4 deletions(-) create mode 100644 docs/screenshots/oo-62803/range-filter-basic.png create mode 100644 docs/screenshots/oo-62803/range-filter-docs.png create mode 100644 docs/screenshots/oo-62803/range-filter-guides.png create mode 100644 docs/screenshots/oo-62803/range-filter-vertical.png create mode 100644 packages/bits/demo/src/components/demo/range-filter/index.ts create mode 100644 packages/bits/demo/src/components/demo/range-filter/range-filter-basic/range-filter-basic.example.component.html create mode 100644 packages/bits/demo/src/components/demo/range-filter/range-filter-basic/range-filter-basic.example.component.less create mode 100644 packages/bits/demo/src/components/demo/range-filter/range-filter-basic/range-filter-basic.example.component.ts create mode 100644 packages/bits/demo/src/components/demo/range-filter/range-filter-docs/range-filter-docs.example.component.html create mode 100644 packages/bits/demo/src/components/demo/range-filter/range-filter-docs/range-filter-docs.example.component.ts create mode 100644 packages/bits/demo/src/components/demo/range-filter/range-filter-guides/range-filter-guides.example.component.html create mode 100644 packages/bits/demo/src/components/demo/range-filter/range-filter-guides/range-filter-guides.example.component.less create mode 100644 packages/bits/demo/src/components/demo/range-filter/range-filter-guides/range-filter-guides.example.component.ts create mode 100644 packages/bits/demo/src/components/demo/range-filter/range-filter-vertical/range-filter-vertical.example.component.html create mode 100644 packages/bits/demo/src/components/demo/range-filter/range-filter-vertical/range-filter-vertical.example.component.less create mode 100644 packages/bits/demo/src/components/demo/range-filter/range-filter-vertical/range-filter-vertical.example.component.ts create mode 100644 packages/bits/demo/src/components/demo/range-filter/range-filter.module.ts diff --git a/docs/screenshots/oo-62803/range-filter-basic.png b/docs/screenshots/oo-62803/range-filter-basic.png new file mode 100644 index 0000000000000000000000000000000000000000..f61bc0ccf59e7966506d20eb06e8751551155e77 GIT binary patch literal 29285 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

21`Z)t^t@Jo< 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 literal 0 HcmV?d00001 diff --git a/docs/screenshots/oo-62803/range-filter-guides.png b/docs/screenshots/oo-62803/range-filter-guides.png new file mode 100644 index 0000000000000000000000000000000000000000..a0bfee9e78d253073632262a101ac69cd8286148 GIT binary patch literal 31053 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

co0bo%%Tb$z<-V^8C>hb!zK zIFbe=pFhb0vJDz+pUmdg3j^09er@akBPBGlnQW8xa z&r5%~#`Rb)&7<8d@e$(XU^(!yfHTX$W|p4Znz#%IE~Q6Dces+TUL!NlT3TG}I+B(E zy0bTf+a|vSF4F*pk-J>?cH#77KSH=9E(5JerSmq4^&OZ0?-hABl`a4T_cx3pQ_`oxND4c)Gem{VMTs83)MbQNs z9z~Ohf}#{2yVS3aX|-iA2k2Aq9WIrJHP!uF=QEpn4q1qQ5Ek(yir60}{iX~c^TI#z zxI!WSXe8&Kofy#n2ULCg$+#2Z{cVXPtdYu>-N9A&;rowuACsr*@!cu33v#djo$vwt z67}Fc$Kv&ljlNcjqLEtpyli=rh)F6AG>wAt{E2UPT0zTdrHq{4{#m~2aM5Q$_cA4H zs|-&om(q$bM*fZKZO))<7Xu)EbG))oor?=Tfa&o+c|Exp6>N77d2^LC9%4{7;6za@;+S>#{YW69>8p5hCy zs5r5A{q~k(nN6{bj-b33JF&S(^K)UbXe@?bY)GZb@KnbQXc~5^v9Ylk?pj!| zy=_4Om3=a>hyubXWjmeQJsOnjeFEfnTzeOKM zIfmY!|M@d3Io_$JzO?kj06<0tv$VF(9kl)R65iF-RdqNx(N;X&5`CCCpfo+vr%6b2 z@~9hmQ8n@ckeQCl1GA*m)WVS$&#r5ztGBr{>~b4|4_1D4&O>A?+~-~0_U9K17k?e? zZ%sLYPKjE3DJ(492%_eRf1IVI@4@KUu)YSR_um<l-sk)i#sUmxY`Oz1P9KO?`yRBZVm_F+xvm3wS#Y=pI{u+W#!;Kmxq7u9ih z9;q*?B<18Vi>^P#Gg4B3hhfJn`GBn7AmNeO8idT|Snn))vr5SwcA#*Fy0y8vdHc!-G!FH`0&E-p?^{3`EVO}Q_-W6>6-)Ou%ADlOR6M3xf~f8xjG4lF4O%GdOJ8~4u?RKE~mRC!-%SY-P4@39E>E1}b!ot+B{ z3q?l=f7NF}8Bp+&9CNCy=kr}GlJ_vP4uT18wK(&~Y5Q8}t7pLB2@4HfNN!VHAk|k<)Ob{^U>@{u-(0Dl literal 0 HcmV?d00001 diff --git a/docs/screenshots/oo-62803/range-filter-vertical.png b/docs/screenshots/oo-62803/range-filter-vertical.png new file mode 100644 index 0000000000000000000000000000000000000000..1128c89bcb519ebd14edfa4a6656894105d8facf GIT binary patch literal 32632 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�Ft4C4)^v>leDjbiyy@UgECv9r02q53N$H$fR6j2mkyj4gb7X{Aum( za>_LL1N5uTvCz#7hGF0f873_tr)u&9!PtG_tBmSldH!bk%%EC%NBG1X zZ%T?Rv{sQtPIu~uSGT6f*?+s{!u$%`bX#;pKA#BnbL+j7%7#dvuSUY)!#iz>J6AY0 z_*gc=-+3aN)3Z_p-{0(BcqgmH@{09%es0()h;yHm{Q0%0-00;zMx)KYHdK2fVJ-P4 z&*eGKCbiAQsIN0?OWb?!e3>Vk_p-BAh-Wp6+XXg3ZLLJ9ecJ{Xi<-7XYgfmDkrBtV zW(y8M<}4mFfs4P~nF@;~lG-jfqJ^KUfkl}yU&jY4y#AwYa@a-w8y)S!ME*Et^QVk- zKW4B`06z7Hr z;e506qo=W6#v#-*#Bpf^*~}tL=!qi`5_^}F|LrQ#4~4#vvEJCV6~FAv#~rt@Mf!Lv z5$-LOrG7i9u&AW3=uXDd>W=K8?HKuLna*a0PeTp)2IQ)PZhUQ=hTQ0`l)j*JJ*l(3Vke{3 zJHWv=>=BJrzWmmMX9RvT=nEQhTR>NXwFvR#gC!~{1Ubp2^MfsER;aFF#n^g7)ikpe zKRc`Z;Yz&pz-C)xlxcW4d-nJgnXm4h?pLUv!?o9~Hn!C(8W)xnf^8kh(bGTt(p=6S z3dQ7=d#|lRA9*8KOk3yL>NZ?*y=n0)PIdB3S~?A0T% zXGYWohy@Zz{(v%Rca=gX#1}nb(U7ZS7fhkWO&i{Sasjn3?Tef?9%TR0KKJ}V zkx<2cO{5(BNQF5cs)ZfDF&20;kt09mny#RYnwXtRw<;J6bz30jCCBAzU-!&Gsq40m zH}iM8Nsr%0$yM%NV;fx-Ruc3gnb~%f{aEj>>+GmC)?l68igpNHU4=2St0!nY4V^!y z`aHnXL;aPiwZ|wD#nKZVq??&~lbA;o6OZSRPckjPabU9`LY39!l~V81ir(k)Yt&HM zAihg)*-IYydzLf~&M&Nq)-Em%*}HMYNYsbw>}Df78l87?8ifdQA-+oMjq1gwLGDa!O?yb+{`U?1UTiEef^kukFVw8W z)j9M`8U5VYiuIOSTMox;?q*oVh9y)rL8awxB**H|=HKU$5_PjSFi8g$TKy1x;=aMk zTiz&D4z1@iR~c@$6;JM_y0>)VCkGC_Bpn_V#=&oV{*Cue*2=2bf?I5?$hNGQZBK7h zIo5?)3XCb<{eE9KOVmJUeaTxv;j8vB$`E2EdS+xIMW~-y7hD`D77TmW_1O!3`-akQ z3*)sJ0jr~g)%PiMKbwakmm3FHZFxR`fmEWd7?LEkE)>7`ow z_e8+9RX;oB2-md+XQm0co#Rgy5;+4Y-Jm<^WZ0^4hL6R;KMdme#|{!lj%CbS7P|+n z?~`V&pI24Ml+ldBs~Pm8VZ+fjeE3@#G35KR`$({cK+KPmKk~E4B6h6>5(Xm!8Q6Z-!9Qg5rt~0KMIc|z{uLW< z<($2_=b8FZS0tiqp1qvDBX}bkHCBJ`)igy#>qEgx~Pts?BQ9Rpl$$y}&ZnQCsFmhDA9e2saahd_55-R9QEOtbB>X?Zu5E70KR* zaV{N@`+8v&s-AD`Xjm`SDNOih;^}jlcXEklZ&=5w?v{7n>}q6VzAhyxVu_HAcF1vqMprxtEqSex`jUvkAD~=$NfYFMWmF zNHmj?Hym{;vg^gsaKV|J!7kNHe;EKS;29}ADSO;tbnCu>t@xlC`*BXCppQC-2OS^? z{G02{*>sX}0H6M;@EnA3kx;F4&i#8?9rJ93T`Bai*qbzo@}=setTr8hn8> zOvmZZdsUW`V4Fb_iEkK|lZ9rtv}QEDe@w?0>+t>a*!w{lOb_<8bkxs{qo3BlXO=Hn z?ZxWTl$F&w_eP`gUb=Lmi5ROcG^${tU_2`E9_zIlJBEQX68P=^bPRUNRO&w z?wS@?Wtu?t@tfyQbm!LYCNAOiK790V4!sT#Mib%q=)Qr+)Pv}&Oh(>BVuUBs>N0;hsZTfX`tIGPU%_PcZ_*i;Ff{=gY_7&SWthsX zV-}y>zX`m1`iPY;U_>!qH)ye^e{*EdjN=k-cW)AYy!9d@lN~nkk?V@-k)ASi#!F2E zm6Hq0z19Sf40O^(wsv+Pi#?k8?*W`P(KM|+#L-~7kFo#Tb4CBtKJ+3pUIu07zwN$BY zFQ_l2vuE^~0GQSYN#MxTyuO9Bvq&}$flRkg?Bn%2vSh_>7_EfrDHmhhCya*)jVlHyen7T~T{%@LYLU zh`hWwhE(0J5(4a8Q^DagVJ^K_%m^#_#$t-4G%}?Sx;~|&O7FZ;I>%RH_E=%WyaAHK zh1BZ|nehVG`USd{6Xxw~TeBIwquPeOvi91O#I&6Qbfc5z#Iu4uf+m)Cy;zaQNzn*~ zOI3$Jy@>3q%b5RI7nS*Pyn1RtgS0U!PQX&_L_?MuJF_s=Pl~HOSQD*9WevYf{J@%a zK}ATFiWlF~kKW!JNvd`CuP>ajvLO>*xxI}Dy7N1JAS+aRFK}KS;TjB0PpowM~$Giy%zIm?WHIh5%8HCGA}Lf?@&(2*z^T7dDpSqU;)8EeL#&)kn59L6+>p6^ByxF62>wZh$gOh5c@$KwojmUzsxpe(poEXKQN_2dU=4ljNSH%;$E4X<-_qzVixegbqi|!7T2iu*~4?lcdPYvZLf20m?@JnNk$A~%%0Cu ztV^$FcTz#n?TiH@_I4dDmuK}amf9x1h!t}ylE`8qn~u=vkgn`UYfBjNQXCj(V(z^& zASJ59U}`kl!yMv1{{#0f-&xep{aP3Z=Nq!Oi45w!*_+f=d{*OJ;GCnQSm5V1xVfWR z@dbfpTb4&bdxTs*r4_ns8+95`LJpKh={vsY46Y^>N6cyt3Mo=a;0#xF7W(MHIRVV> zc*{&-w5@2!vaO)sFXfCDjedr;L{)5AzFTc6v)WOR#vBtVrK#I{&pp?UfYmHH=lrzF zt+eEnS@Q&A#g})ekQ`CPIJvzra=n*}?#q=6cW3equPefdL( zJ-EkXsE~X5uDey`GVed0G>C{rg zV$?4Gy#uYhP4Kj`;aEyB2X>(RWY*zQr27xLut-_WbE?*eXN7C0%16KCMb^vW?tok0 zY8BPW`r_0%!m1+mL6=(#rT8n7`2U9BpSjW8aX6vE8RapB!CT+!x0}QJ-*|OZ!ufb8 zOG}WU*n$3TMCwJs^S&ZErRKdkIX+GQR(W4XksO-3z&O)jh*U=AY2xFZ#I;N_N|?va zPkYHjji56LXl|falCH*>j|=IiRELakHK^3M1Q&blI%EG`MrjhQINjxCyq_cQm@0l( zcEC^LO6dhU&2HbNob~>J%iU}q;}m1q6I8r?8$(`2O}(seb-8gj$PpQ#nAM3NeNC4= zyMEt%f6?e+>Yoh*hZ^X^gRp%k5uGl4Ou6Mg4lj(au{l2uDO(+FB9o_GLd1G{L6v#= z`6-smtqH@`32V5ZNyHo7&DKg#UW)OhyCI&l%C66syplRA0=2kZWu4TPqxtj;Q3)hd zFl~R(l})HlL2%B?t8gtqPktp|;2<3f-2^ zZpF3BBM(nNh)B1Xk`HRE4f(}}vqF$JK3quFC?W=XX}KUUX@X3DW)6>HssxR5$=-c` zn)_Sxq())+uZbEDkD~MMe_GTcJhiOhW?CyV2B(=j&yMczF@XQ%0=gewQ-K#*%v?!M z+nq1(3Zim6OMnHxKHq);H!aj;jUYy*ziwRS?o3HhE_Jgu_tCMqidkb-J0#opI&TR- zzr;IY>1oEn92|>om{3zecBYw}i2(nvC3%DmefVh?kNZ@VUa&|RZ&^4T@+$5`oo9b= zEoIHH6=p3e?m0DGTpjA%RoPW3g{d!DuJtCMIK+fump$1<)6>$8FMXKY&Bw^qV9Isr z>xvh$YA@h3Tq<(T#NlR_*McgqUg`-Z#DF}(RmM^Q52gkxYXg=|o2s>Iy_b4)?~JVO z(uGHNDFojJJfJo9JAJo^4P&Ugnwk%-ZH?$+A6{T@C;Ycj31F`-^6jAG54H6BvF&pa zjE?==`#)lm)No8yb%+E|gk%w;tDd34_)bQa*~(e&^hd%bAaiW9?e)nLam9V=B%A&@ zv_N{b=lmvniCDzVc{i+aO|v|xQ?Z$e`~t5b3us#oCZ=|`AD+i?xqZLAIJ#@1dMN%P zl?buGxykC4id~D3oxC!l{PrjqIhz=1lN#oD0@5g+Md}p`BAA|e96Gt%vIf?2MJJDJ zj0q|35AW#j8O2S!9QwXPC8{M=@A%w&*|`PM;dU|!m~Kz3i`;m#`aQEE=Mk+?(SNyV zf@9IKy3Y&M4OiT2Ul6ltJIeWdU-e7QyJyVCL0y(A*>;4-5;1|HRw&SZJ$sb0#Bh>oKU3sXw zcEF|qd!yyUi1;?K2}im4`o*m*p&DxW8o!j^xmX_pY&uQuMq|r%UxwviqPka|lK1qB z*gqEodn?&zS)Cm^cYmz!bZ!gRh~|R7Nqayxe8?vAuvy=|Ul3L8z7E4%pqnR@(59(E zgZ-hh^-YpPEiGcdROc>_h%0EJ1Ox_y?Jo%*D3UXpr=>w&v8JKCYmg&-^*Rh zSrzE4B|Cb~7`}ne@rzd6o%&IK@*v9bFj!{t;n#sm`IGyteP_p_2i@RoOF+p6)u{zT zsUtJ|!&SA3v)xF*OG*CC>aAM1;_e^WsEkBaa@Y!X^>;mHQQ*d>P2)AO=tsNvyN-Ms z-QN6FM%F&U?CPWK>oUsSe%IKrdR*(OWf&+dB<=K^!q$Fqqa(FX3f#U;GjufN<#?s7 z8duzj&TP97=G)d%9!`E|D^XTASRaMU7GrnWn}OxqC8 zW?&Ot(iwKkx;}F#!S^dyw*6)gn6i)Go`VOG$m*u4moH^-ee1h~kB>EWzN>i)eB*uS zs^nqes6UvJe#O(A^d=6_B`_EU(-Y~AISn%N#*C^D5JZuN_r#|{6vQF);? zSB#%)P}){UQy@r+wOvPZc68su!SPecXOdZ&fIVn?8=PsfG#I=wYEnC|i2A zB9c$DbnjXiytb@I(4RUG&0e-L@POl0fS%927pQJTOGT}uY=B55xuiO#n2)y_9t1%K znE8>y2Z^Nt?fky^Tq~+o&{8)7HmEddIyl&e)pLwnD`|vebX`2)8KEkcKv)^IyxfS0 zuQq6idinDB?V=-PP0J7$_%Jc11)Zt)E8_K9ac4Tz^V5 zIM}0s?D(8G0(e1kzprReDY~1x-t_QGPA4czs~{AkL%n{pU65D0`uE)0#{3yR|94j6j8x8eP|+H zG|cKoG7fleV7w^dPHD_SzluyWxTR~!zM_R!nq6U!9j;X&{jC+h8=XaKA9TZ-oA(h~3&WVJL&1VwvEbbv;1uKaY4v_= zRsaPTa^~M7SI!Jvr%f3ZzKxYb%Mtyj=GZMXD2v__L#eu({ZbY!(Cm^?ud5V-*ypfk zT;}pEyUHtH_1d53oq`MoA(j)REVNuJiKffUiex|=Wj6PV*~L!tS7L7a+D5P3fUGpK zi!Zws+wJz(?czq!;+3Kylz~QE;S3kTPv=^-cajDP-`74Cgk{%Bzn3+#$A3cnNh*J>v)xZv1;A3#HESZR){~l|HW&OL6Nq! zbFwoYG=c68wW85d7FFrYLt^OO*nv|>L*lC6Y9bF6zn9M- z9d=*ZpJ0dCoe~P>N`sGd@3aD-l}jej2Y$&}YhP9jUOw~qDA2YKyQNg>+qySNj9&Oz z2|9W9!5)~>J?chTnFv}-oLZ=sk%=7)_AScESw>BPYImfddjq420Z7Ga*_`e{azmD} zKjg?{wE!kdraN0|{He39K%jMuNI~sm%066sO(jZhESS8f2wf=Vp%E&(ggMQFW9R+U ziWX*5+-QV2=*B=71{#3D?KH`@1Te zco<`Yu5It;#nK|7EcdAF<^p7Dua5jim5sn}>1XKvlg%p^2WnQN_Q{o)KoXI*2Bu+X z*g&4KQA=bTbaoL+0Pi=6U8j}LG-dw%d*-BNaz@7QQZe7|$elG>A#D{}l}@R|lmz{n z2W5tA^3w94-9F?kT1!0dq4eU>jkjLL`y8Y5ZNie6sf`e*x9@)5iU4E5IB8|gVt<)N z1&{AOAsnSgIZq#yv7jfRK?_(Y5l&4TrMZ?^Em3j_s}o?85X@9L51TrTgds~|b_s!p zTX51H%#kH5Pf%C8Fk4cz8Ck6-FL<>aLK|C7#|l&63NGu4-?m&gWuf}mqw3H-Eg(R$ zR8y$hv7$lcNo%wzN(4;fI5X$d9jEB5zMhkXFGIomnd~h4CuQY_n^geJmE&T6|us5?p24$RT2 zG|n@YT^-|cQmIVW@--F$8|t)I>VLK-@Ft1F%w;ketUzLuVMxE?u-})5FVyN!?tIlt z@3e89dy_blrYoJwsgU-TK2Ve68MKC0R|A!&L|30stH`+iMJrmD{lV^FFKv}Ju!DN0 zHmC5LxI;V)+ZbJtQ=TDj!rYmGe71ij%_BP!`N3$pJCf$7xNYNpJiZ@zvs_9|6wCoG z8sfRqKNCPQkpUIGs=u49esAobr;z^R{-;XMD5g`;frY%M#+X+bWRc&(Nr61IPj=D2 zDL_Yzif25F9(K;vJsUb2?g^Q-THdamj+bV%*SRMZFO(S8V}qdGC;Sk5?lyN*=^Rhh zoj$G+zy7d*Q>9$AxGW5kJWo9vaoyOP?@Ju-TMUT^qHd=gEggpNVvg$Bog2uJ_U32l z-wfPUZE7%k1?AJ8o~m#?{%kOOM!p*dw=Y5r(n2OeJ+pN=F7tJlKYe$_c<20N_I7V2 z&5FZXsMZAse$dX#Cr<^Qi}KBPnZWjMd>A*fP60%r$IzJaNg1y{GXCkk4{% zi~qj$Y~kmo5}!Xc2x_Adc`tBl%>H-Dixj89=FGFUWq}CzcIWe+lriNL#CuebX!&*w zEU_>xixZVDXgK(7L;~UuJGfwwFaNrXOMILDny{T0u)~0#9Tk+kdq8Y=nP`s;#At$M8FV_rm>j?)398R}NvP$Jquji9!QLak-)yD=xQt z>!*WVHXLqyO^w)G|C^9m^X^TB|HHZAmW`;WMlMlFbZs4yp(-ZfQnk!QaPL6DPMH{T znD>dGw(Hn;+@N_CYQ+UQsj4$leI4vdVVunA_;O^F&~og(%$ zlw)2;5v8>r{4zhtqvM~i=p^kIMzv!zDl)0-bc^+HI0^{HN)@)TrGfAk~NEZd;)vyTs_ zDcPRX2;>H()E;_iG~|LH-0#~GM>?72>c$g&a>3|-Mf=Rd!wWOo%-ZHg&~KfP!Fv_u zH6x@>P@JnolGbMykwN%*@j> z6+)~LXC{bCUy(C7ta-q|vQfc!nckH4xndot$KO737s!q93DbabA*Il26pI4E~ zKkDCU6L}7gdCMN15*4&&)CP5#sFgGnn^4}U_6VC>Ld1LXk6KeUXYGqOFTOdGehAoIL#_1}Dzy*zP0j5>U(AJ?hSh_I#%y zi8|q;2r_jMZ>z_uBvpqc)}17GX1cAxHA`z6oI&Wk-tkx`NM!)#on04j8-NGQU@d17 zpEUlO4wvZ}R{Wc4)zG6`$Gt_w=ov=t^>;xZ?|RcOX&wAdZyl1o#v?=%SmZ0AokT1Jn23w9~c z)aeri^ZDmys~Q&uWj?MLF;gga@2P1hOl)fG*STIGU{G}zL42i-8Z)!r-Ph&tl6jSb zXpGi_4zicgXYaPuI!51E@I1qF!SQM6qi^}*etbR^8{Wzrb^1svwwvN-M#nc>gvVCP z&-nB>>T?)Z>4k^q4Cm*rfYv&c^ zQc}pHIM&aY!9L|FVIluhI&huCw#A&dVdZFyo>` zf;EC|=5?g3)vCg-ZuMg~ktW@9hZ(L?O zejIs4>4wQ@h{IibUC};^h-odZvW9MZQ`xbBmLI-3D@E{{-;c=c9%*<9IDSyC$RX{&~mCS4W+-hkp(HOe53n9=LdCtlIL2z&6dVY3FK~ns*201 zyR3j0-ncYxWR&VEpTQwDAtH}nu}C&C<4Y17>tsXkf!55P1JRZ2cu7gW$~ZE?S>Lp) z-*=>ab)>%uDs*78c!8?mS50c-!`8RcxLb0=+=Wxr2~Ch?(T!VsLu#>9IBggzL8Os( zG}hP`ZVXuzOj7Hmk}!K1QWvdTjT`z|IqNqq<;=LJZz;i^U$}LCg*HAw#?Bt3{V~njDy*^6Xr-GSTfyes2c9A*O4irF zmD$IrE%qQ%y}kH$poe#EQ~eBB;-3{QMxqzg!$G5rvh(Urax}NTPjP-lI*>*6Sjf?uBxl)h^v9{OWF^ z#zCn%hdGNOMFt7YbFqCVL&Ppe7TQHT+10P)D2`s=bps;Q5sw=^Sj9dp z&-+a&x3`9F-ehvedSV@y8q}|u@_4s}Mp29l4)pZ(>89)vo}G3ssUTA(n{n)&`&-7d z`N18hf0NIBk?Yr#R}w!`tVsLz#AoAVMn`$|9FG2El&xdK_ zy2wqikPQFH0R!Gbpxi3FIstjd+O=SSp(eS_P-7e@^^T9=ofx)Sz3*-H_T{E#_BX0b z;=awwFQ7_|;-q#J{uO#jvUi$@bXwwjBl7G_qNjfbfvK@3?R3qDi(fJyhg9f^_Lb4c z|8Rsa*njf<5T2q;IOq6`O;sjG_QqBD7YW0>funfH+%We3^{m=>p$Ga4a8Z;e)ti>e zr&J2>B5od&Py{iQcHk#BCWe>3R?a*+sCG0l$bQ$>aq^rQbql(wxMzUP`oOE^IQ7C8 z3pVz@`*^)8lN6@$xZyBWSlV?KXZ9_lrUvZi%LE9x%HCKa|&63-{xd#@I>~E6tm3!+OIrP3IreMn*9lsV9 z`abHv=4oYR6zzwN63J!UB<(w|lF-L!uL^4(+bk=+Wx_TMh|z!QGpnrqsU2~&f9<;#vf_534II!CZZ}l+LZl8WxtYiSzPG{O_(VVw z!7hMW6|vtz1^ja19~!r+C|v1vaB2b~Y{bSe(kZcw6?slwqN1TGQSE1*0(Ui~p0=;( zPk!dp7Ap*+H&Q;a!)}3vGhgD&*J0V8$;%>3P3)HIgy4;jJmiYKyKcA)L)Yo{xZEw6 zSpZ*Bi3npPj*NYH5a`15rwraiFGti*!Dy!y!4|s@r9BGZuGr4Hq=VLcohCyIQvs{_5-nex8L2`-ZDfO>uXpxz#i;*N9x|w(dRmaExi!W zWT(DQOr(|(r7mGEFK5dz|Js~<@#C=NCFR?JE6NpCP4Rs&KNotceVLd{ir|NzYMsxM zN{G{!yZi17r**pKtq-jNWVdsaz6TL8ZO;?SLL-UVC!Q@KgS#7Q8tmF~`o(5{KJ?T` z3M2%m>227QsxUQNKd%nc^ZM{HplZYK-?l*ors)l?uJ5%w0=@RpXPkM_L-@fVq+KP_ zzN=pRNig3}4hToA?{)qBadL_faguMa=ERBuh`G9>2+(TA1Ah+8mJAo45e&U$0X)nQV@asEncF#i8EIPPBbioe;j?40v&T zax#Lk;2Ln|n1(Ike;AbL3WM0*(f{ro5*VHs9Ue18iu;6I`Bt^5*Z8H{w`dtfHP{)s zw5YO?tpO@X>m2LE3MR6H;6_n0pQ18rXZf%H>hyn51muYh|6f3zP}1~_ltAt&*yi-r z2du%tNZy;zd6o7~wAkzD*pv;#DfW$`J4Fu|;``u_2sH zDn>I`bVv*lnlRV{)tDNenzEFWHLTJ%F&Db5!?#DCkxh+%rPeKwx!)W|EdWpODI zRS)%zp#hI~cK@!%57bi63fyS~`b8b%`M#Wj2(T{g+qm16aC)!0&_X6Bcf)?M4$|77 zWGE#mYY*B<#dc(|P3+IPg^&jn>D5*lcH#`6K(G&;E{AS!(E1lX(aN^;b>yf=ip>yr z>)7|$_ibMNS@F#QN-x!29HXyDcVB%>7ugAfb@)OkS(5-J5aOBOASgZ3|8(sB4h;?c z=Qo(&>vF|8zsCZWPWRmVvf&^YsX^T%NFsw7Xjp;YJLTw66$FBm?`-SfPse~JaD)|NfaX7HvrrM=h;p%=({N-d$mE+M`#u9dWr z#;PB#_k1Ja$9MMv@$*Lrn|j=Dpog^#KFm`N&Wot#J;o`WIGi@v>t(LeKzZ^U#{dr? zfw?;j9iP5jM_fr3OKRZKfC{P~^t?5GT+Mkl6^we2dU$0*$6Oh9i9fl+_SD>!D)So< zHSdsx?}7{bo-j|OyE$IU=zAEbb-ds@_$Cc8+$GMiDSder3xLpx}E>#Pqd&3ZV zJ)ks@!W^{hI^1w_mHKwQbLBW{kkycj+{RONF#-vi?Z>cO|Zr$tOmsDS{`M z$E}lAYD{_l>aa~(>E${44-j8uHs{majG#Wg++Q4OfFK#TuefqM$j7I8V>oT$p;tV0 zYat=tGh}}rs4+Ik7h!&2Egu|4*$BV%&t*kMH8fc-f7Sk()Li2km}th@87Y@VltGzn zPc_I3CXvxGW?|t^K`u-3{LWa9>YN5IWwd=3N9E!sds=<=Qj%LQyqSY>8FpO*4qp{= z(cx`CirDTBtGEW(zKZ)UY~N2NK}6EW-LH5jeN)vg^26k)t69Q zlx$uLaS{P<8g(^nA|%K6?Y{}6I0iEeJdy9ytjI<+vb5Av{cL6^qR=W&#)^^l)XG73 zLAKOjphwJ(k}s^lp--}YzM@dVx8OD0lAkiyydOu;7VEZRsJUH?C47kWs_RUB z1d|^A$-^``)P(m|t-JWTI4bc<|Uq9=k0Z)gf7d7|`g z+BAu>>n%jqvjRP!>ZR*XboaiPwZq^Y=Oe(E@n)t?A{XrJ+_c}$xB3)NW!-n404i+4x8XVT`gRw~ggFbqb^ z#EJxe-TzdbvjjBFGHL8Ry>Y2?u=ARiNRpF>F|zG;8tS&p(^DTxntEQwm}jaBXZgV7 zK&!7C!%|EbC0R7mjZ0L2nk4a!T42&K{`blQj+x>E9(e56Bb{NZUq8Sn4BFDX>_inQ zCNk#s)k!ELsk~t}$lw`DyZ%W>{0G{U+X>=6MXG$H`OkK?Df4lM0cj z-S4FA#CI0{0nU6G@LAXA2@89?S{#?pT&rnV&=;DkPZTllQiXrUwN}Aex=lKy&TE`u zE5~T0k#MMCM{-bznlc>NUfO zu-f-El6NfRi=u+u^hMCVY*P^l7WbApSZkQ<{=sRU^&KFq4i*62BVlPitZopBo}_-k zD!E5@2lw&R?`(Ggx|3+J1c!&Iu?ny%NvGh=uWAfhlvc^kW6OfA9I4VqoQm7)BUfoBe7D@^0*F-GnNXaP=_5gj*g+oLS*V?9z zv`3!>+E)Bb;-?>^s=MFS4{cT zSLKbq=?+0Q)3@tj5k%Gs*bB+<4%sVw{#4z(T16wa_@=1YY>6u5*^1=(CA`ayQH4Lg zJRzZ2Nb>;&k)|S`6hT_(MG+LFC`jla z(g{U+M?pYDKt#GU5ilaXw?sfdYUnLM=%FQ)Kp+9acMy2Ld+$HrT6f*M?t0h#&R;A} z&fc?U&zUnbd*(MF!E}Ac_(+FUp}zxE1TucWDmCR3NfZ%1^QAS zfKug#&?RQTQbtpl4-S2*jhpC?ufty*x-&C6&`6U9e^=}ESsF5V%(3-rGH%aVH(YGL z`sHOUr|+IC2epQVG7YNP513`}MqjEsTtsz|u23CX{L>C&FkdeQTVqgOF!8Du*Hy{$ zY0&|z#~v;)z92o1NgX;@o5x_X_$j@^5$;!C{zAUD7=JaivAk(~>%xL-xfS!0nz&d; zw-Q*3W#$@u`t~Q6>M?XU%-B8~sq;DcdskmC5;gOZ+I?r(MKl`#+soGt%o@&lizX9T@|$L%t0 z>lXoEdtm+AjUc+K7gcYHr>zC>#cLFWIExY$d}G#@3!2zgQg!(&e3=R(CkDfBY7R-^ znOar4Bga2~o>2a3X5VUZr%?T^4r9F14Hk}7^HS>OF9N!T)NX){$>Ilp${!yrThn9s z)P$ASy#7r19hqn~m0FO&!NmD^2FdyA?7XU!*6Kqr+wuO0dy0Bh@#B$>OC!Z*OyW9u zzZO*I4GyP%FW3tP^n7_WqB~zx{;$yLLW){fz6V^sqH5(dKsz|prD<

C#%8$F$7q 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 SG5tp!KYE~{RB+EM=sy6H!O4gK literal 0 HcmV?d00001 diff --git a/packages/bits/demo/src/components/app/app-routing.module.ts b/packages/bits/demo/src/components/app/app-routing.module.ts index cf0636bff..a82b9f7b0 100644 --- a/packages/bits/demo/src/components/app/app-routing.module.ts +++ b/packages/bits/demo/src/components/app/app-routing.module.ts @@ -194,6 +194,11 @@ const appRoutes: Routes = [ loadChildren: async () => import("../demo/radio-group/radio-group.module"), }, + { + path: "range-filter", + loadChildren: async () => + import("../demo/range-filter/range-filter.module"), + }, { path: "repeat", loadChildren: async () => import("../demo/repeat/repeat.module"), diff --git a/packages/bits/demo/src/components/demo/demo.files.ts b/packages/bits/demo/src/components/demo/demo.files.ts index 41cd2c849..fc74adf6b 100644 --- a/packages/bits/demo/src/components/demo/demo.files.ts +++ b/packages/bits/demo/src/components/demo/demo.files.ts @@ -962,6 +962,19 @@ export const DEMO_PATHS = [ "radio-group/radio-group.module.ts", "radio-group/value-change-radio-group/value-change-radio-group.example.component.html", "radio-group/value-change-radio-group/value-change-radio-group.example.component.ts", + "range-filter/index.ts", + "range-filter/range-filter-basic/range-filter-basic.example.component.html", + "range-filter/range-filter-basic/range-filter-basic.example.component.less", + "range-filter/range-filter-basic/range-filter-basic.example.component.ts", + "range-filter/range-filter-docs/range-filter-docs.example.component.html", + "range-filter/range-filter-docs/range-filter-docs.example.component.ts", + "range-filter/range-filter-guides/range-filter-guides.example.component.html", + "range-filter/range-filter-guides/range-filter-guides.example.component.less", + "range-filter/range-filter-guides/range-filter-guides.example.component.ts", + "range-filter/range-filter-vertical/range-filter-vertical.example.component.html", + "range-filter/range-filter-vertical/range-filter-vertical.example.component.less", + "range-filter/range-filter-vertical/range-filter-vertical.example.component.ts", + "range-filter/range-filter.module.ts", "repeat/index.ts", "repeat/repeat-disabled-multi-selection/repeat-disabled-multi-selection.example.component.html", "repeat/repeat-disabled-multi-selection/repeat-disabled-multi-selection.example.component.ts", diff --git a/packages/bits/demo/src/components/demo/range-filter/index.ts b/packages/bits/demo/src/components/demo/range-filter/index.ts new file mode 100644 index 000000000..59a06be24 --- /dev/null +++ b/packages/bits/demo/src/components/demo/range-filter/index.ts @@ -0,0 +1,4 @@ +export * from "./range-filter-docs/range-filter-docs.example.component"; +export * from "./range-filter-basic/range-filter-basic.example.component"; +export * from "./range-filter-guides/range-filter-guides.example.component"; +export * from "./range-filter-vertical/range-filter-vertical.example.component"; diff --git a/packages/bits/demo/src/components/demo/range-filter/range-filter-basic/range-filter-basic.example.component.html b/packages/bits/demo/src/components/demo/range-filter/range-filter-basic/range-filter-basic.example.component.html new file mode 100644 index 000000000..dd2a93662 --- /dev/null +++ b/packages/bits/demo/src/components/demo/range-filter/range-filter-basic/range-filter-basic.example.component.html @@ -0,0 +1,25 @@ +

diff --git a/packages/bits/demo/src/components/demo/range-filter/range-filter-basic/range-filter-basic.example.component.less b/packages/bits/demo/src/components/demo/range-filter/range-filter-basic/range-filter-basic.example.component.less new file mode 100644 index 000000000..545d2ff1c --- /dev/null +++ b/packages/bits/demo/src/components/demo/range-filter/range-filter-basic/range-filter-basic.example.component.less @@ -0,0 +1,48 @@ +.demo-card { + padding: 20px 24px; + border: 1px solid var(--nui-color-line-default); + border-radius: 12px; + background: linear-gradient( + 180deg, + var(--nui-color-background-default) 0%, + var(--nui-color-background-strong) 100% + ); + + &__header { + display: flex; + justify-content: space-between; + gap: 16px; + margin-bottom: 20px; + } + + &__eyebrow { + margin-bottom: 4px; + color: var(--nui-color-text-secondary); + font-size: 12px; + font-weight: 600; + letter-spacing: 0.04em; + text-transform: uppercase; + } + + &__title { + margin: 0; + font-size: 20px; + } + + &__subtitle { + margin: 8px 0 0; + max-width: 420px; + color: var(--nui-color-text-secondary); + } + + &__pill { + align-self: flex-start; + padding: 8px 12px; + border-radius: 999px; + background: var(--nui-color-background-accented); + color: var(--nui-color-text-default); + font-size: 14px; + font-weight: 700; + white-space: nowrap; + } +} \ No newline at end of file diff --git a/packages/bits/demo/src/components/demo/range-filter/range-filter-basic/range-filter-basic.example.component.ts b/packages/bits/demo/src/components/demo/range-filter/range-filter-basic/range-filter-basic.example.component.ts new file mode 100644 index 000000000..0d5bc38db --- /dev/null +++ b/packages/bits/demo/src/components/demo/range-filter/range-filter-basic/range-filter-basic.example.component.ts @@ -0,0 +1,20 @@ +import { Component } from "@angular/core"; + +import { RangeValue } from "@nova-ui/bits"; + +@Component({ + selector: "nui-range-filter-basic-example", + templateUrl: "./range-filter-basic.example.component.html", + styleUrls: ["./range-filter-basic.example.component.less"], + standalone: false, +}) +export class RangeFilterBasicExampleComponent { + public selectedRange: RangeValue = { + low: 18, + high: 72, + }; + + public onRangeChange(value: RangeValue): void { + this.selectedRange = value; + } +} diff --git a/packages/bits/demo/src/components/demo/range-filter/range-filter-docs/range-filter-docs.example.component.html b/packages/bits/demo/src/components/demo/range-filter/range-filter-docs/range-filter-docs.example.component.html new file mode 100644 index 000000000..73f3449fb --- /dev/null +++ b/packages/bits/demo/src/components/demo/range-filter/range-filter-docs/range-filter-docs.example.component.html @@ -0,0 +1,50 @@ +

Required Modules

+
    +
  • + NuiRangeFilterModule +
  • +
+ +

Basic Usage

+

+ The <nui-range-filter> component provides a draggable + range or single-value selector with keyboard support. Use the + rangeChange output to react to user input and feed the updated + value back through valueLow and valueHigh. +

+ + + + +

Guided Stepped Range

+

+ Enable guides to show step markers along the track. This works + well for bounded metric ranges where users should stay aligned to discrete + increments. +

+ + When guides is enabled, the component shows compact value + labels instead of number inputs. + + + + + +

Vertical Single Value

+

+ Use orientation="vertical" together with + mode="single" when the primary interaction is setting one + threshold rather than selecting a window. +

+ + + diff --git a/packages/bits/demo/src/components/demo/range-filter/range-filter-docs/range-filter-docs.example.component.ts b/packages/bits/demo/src/components/demo/range-filter/range-filter-docs/range-filter-docs.example.component.ts new file mode 100644 index 000000000..1100bace4 --- /dev/null +++ b/packages/bits/demo/src/components/demo/range-filter/range-filter-docs/range-filter-docs.example.component.ts @@ -0,0 +1,8 @@ +import { Component } from "@angular/core"; + +@Component({ + selector: "nui-range-filter-docs-example", + templateUrl: "./range-filter-docs.example.component.html", + standalone: false, +}) +export class RangeFilterDocsExampleComponent {} diff --git a/packages/bits/demo/src/components/demo/range-filter/range-filter-guides/range-filter-guides.example.component.html b/packages/bits/demo/src/components/demo/range-filter/range-filter-guides/range-filter-guides.example.component.html new file mode 100644 index 000000000..b9f5fa895 --- /dev/null +++ b/packages/bits/demo/src/components/demo/range-filter/range-filter-guides/range-filter-guides.example.component.html @@ -0,0 +1,26 @@ +
+
+
+

Response-time budget

+

+ Discrete 25 ms steps make it easier to align the selected band + with alert thresholds. +

+
+
+ {{ selectedRange.low }} ms to {{ selectedRange.high }} ms +
+
+ + +
diff --git a/packages/bits/demo/src/components/demo/range-filter/range-filter-guides/range-filter-guides.example.component.less b/packages/bits/demo/src/components/demo/range-filter/range-filter-guides/range-filter-guides.example.component.less new file mode 100644 index 000000000..840702ac8 --- /dev/null +++ b/packages/bits/demo/src/components/demo/range-filter/range-filter-guides/range-filter-guides.example.component.less @@ -0,0 +1,32 @@ +.metric-card { + padding: 20px 24px; + border-left: 4px solid var(--nui-color-active); + border-radius: 12px; + background: var(--nui-color-background-default); + box-shadow: inset 0 0 0 1px var(--nui-color-line-default); + + &__header { + display: flex; + justify-content: space-between; + gap: 16px; + margin-bottom: 16px; + } + + &__title { + margin: 0; + font-size: 18px; + } + + &__subtitle { + margin: 8px 0 0; + max-width: 420px; + color: var(--nui-color-text-secondary); + } + + &__legend { + align-self: flex-start; + font-weight: 700; + color: var(--nui-color-active); + white-space: nowrap; + } +} \ No newline at end of file diff --git a/packages/bits/demo/src/components/demo/range-filter/range-filter-guides/range-filter-guides.example.component.ts b/packages/bits/demo/src/components/demo/range-filter/range-filter-guides/range-filter-guides.example.component.ts new file mode 100644 index 000000000..3c590a73a --- /dev/null +++ b/packages/bits/demo/src/components/demo/range-filter/range-filter-guides/range-filter-guides.example.component.ts @@ -0,0 +1,20 @@ +import { Component } from "@angular/core"; + +import { RangeValue } from "@nova-ui/bits"; + +@Component({ + selector: "nui-range-filter-guides-example", + templateUrl: "./range-filter-guides.example.component.html", + styleUrls: ["./range-filter-guides.example.component.less"], + standalone: false, +}) +export class RangeFilterGuidesExampleComponent { + public selectedRange: RangeValue = { + low: 125, + high: 350, + }; + + public onRangeChange(value: RangeValue): void { + this.selectedRange = value; + } +} diff --git a/packages/bits/demo/src/components/demo/range-filter/range-filter-vertical/range-filter-vertical.example.component.html b/packages/bits/demo/src/components/demo/range-filter/range-filter-vertical/range-filter-vertical.example.component.html new file mode 100644 index 000000000..61311b0c1 --- /dev/null +++ b/packages/bits/demo/src/components/demo/range-filter/range-filter-vertical/range-filter-vertical.example.component.html @@ -0,0 +1,25 @@ +
+
+
Single Value Mode
+

Priority threshold

+

+ Use a vertical slider when the range itself is less important than a + single cut-off point. +

+
+ Level {{ threshold.high }} / 10 +
+
{{ thresholdLabel }}
+
+ + +
diff --git a/packages/bits/demo/src/components/demo/range-filter/range-filter-vertical/range-filter-vertical.example.component.less b/packages/bits/demo/src/components/demo/range-filter/range-filter-vertical/range-filter-vertical.example.component.less new file mode 100644 index 000000000..d8cd310bb --- /dev/null +++ b/packages/bits/demo/src/components/demo/range-filter/range-filter-vertical/range-filter-vertical.example.component.less @@ -0,0 +1,48 @@ +.threshold-demo { + display: flex; + align-items: center; + gap: 32px; + padding: 20px 24px; + border-radius: 12px; + background: + radial-gradient(circle at top left, rgba(15, 126, 209, 0.12), transparent 45%), + var(--nui-color-background-default); + box-shadow: inset 0 0 0 1px var(--nui-color-line-default); + + &__details { + max-width: 320px; + } + + &__eyebrow { + margin-bottom: 4px; + color: var(--nui-color-text-secondary); + font-size: 12px; + font-weight: 600; + letter-spacing: 0.04em; + text-transform: uppercase; + } + + &__title { + margin: 0; + font-size: 18px; + } + + &__subtitle { + margin: 8px 0 16px; + color: var(--nui-color-text-secondary); + } + + &__status { + margin-bottom: 8px; + font-size: 24px; + font-weight: 700; + } + + &__badge { + display: inline-block; + padding: 6px 10px; + border-radius: 999px; + background: var(--nui-color-background-accented); + font-weight: 700; + } +} \ No newline at end of file diff --git a/packages/bits/demo/src/components/demo/range-filter/range-filter-vertical/range-filter-vertical.example.component.ts b/packages/bits/demo/src/components/demo/range-filter/range-filter-vertical/range-filter-vertical.example.component.ts new file mode 100644 index 000000000..b61615449 --- /dev/null +++ b/packages/bits/demo/src/components/demo/range-filter/range-filter-vertical/range-filter-vertical.example.component.ts @@ -0,0 +1,30 @@ +import { Component } from "@angular/core"; + +import { RangeValue } from "@nova-ui/bits"; + +@Component({ + selector: "nui-range-filter-vertical-example", + templateUrl: "./range-filter-vertical.example.component.html", + styleUrls: ["./range-filter-vertical.example.component.less"], + standalone: false, +}) +export class RangeFilterVerticalExampleComponent { + public threshold: RangeValue = { + low: 0, + high: 7, + }; + + public get thresholdLabel(): string { + if (this.threshold.high >= 8) { + return "Critical"; + } + if (this.threshold.high >= 5) { + return "Warning"; + } + return "Healthy"; + } + + public onRangeChange(value: RangeValue): void { + this.threshold = value; + } +} diff --git a/packages/bits/demo/src/components/demo/range-filter/range-filter.module.ts b/packages/bits/demo/src/components/demo/range-filter/range-filter.module.ts new file mode 100644 index 000000000..a90a28a0b --- /dev/null +++ b/packages/bits/demo/src/components/demo/range-filter/range-filter.module.ts @@ -0,0 +1,81 @@ +import { NgModule } from "@angular/core"; +import { RouterModule } from "@angular/router"; + +import { + DEMO_PATH_TOKEN, + NuiDocsModule, + NuiMessageModule, + NuiRangeFilterModule, + SrlcStage, +} from "@nova-ui/bits"; + +import { + RangeFilterBasicExampleComponent, + RangeFilterDocsExampleComponent, + RangeFilterGuidesExampleComponent, + RangeFilterVerticalExampleComponent, +} from "./index"; +import { getDemoFiles } from "../../../static/demo-files-factory"; + +const routes = [ + { + path: "", + component: RangeFilterDocsExampleComponent, + data: { + srlc: { + stage: SrlcStage.beta, + }, + showThemeSwitcher: true, + }, + }, + { + path: "basic", + component: RangeFilterBasicExampleComponent, + data: { + srlc: { + hideIndicator: true, + }, + }, + }, + { + path: "guides", + component: RangeFilterGuidesExampleComponent, + data: { + srlc: { + hideIndicator: true, + }, + }, + }, + { + path: "vertical", + component: RangeFilterVerticalExampleComponent, + data: { + srlc: { + hideIndicator: true, + }, + }, + }, +]; + +@NgModule({ + imports: [ + NuiDocsModule, + NuiMessageModule, + NuiRangeFilterModule, + RouterModule.forChild(routes), + ], + declarations: [ + RangeFilterBasicExampleComponent, + RangeFilterDocsExampleComponent, + RangeFilterGuidesExampleComponent, + RangeFilterVerticalExampleComponent, + ], + providers: [ + { + provide: DEMO_PATH_TOKEN, + useValue: getDemoFiles("range-filter"), + }, + ], + exports: [RouterModule], +}) +export default class RangeFilterModule {} diff --git a/packages/bits/src/lib/range-filter/range-filter.component.html b/packages/bits/src/lib/range-filter/range-filter.component.html index 3745fb28e..e0f6a62c6 100644 --- a/packages/bits/src/lib/range-filter/range-filter.component.html +++ b/packages/bits/src/lib/range-filter/range-filter.component.html @@ -9,7 +9,7 @@
{{ label() }} @if (unit()) { @@ -125,7 +125,7 @@ [attr.aria-valuemax]="displayHigh()" [attr.aria-valuenow]="displayLow()" aria-label="Minimum value" - [attr.aria-labelledby]="label() ? 'nui-range-label' : null" + [attr.aria-labelledby]="label() ? labelId : null" (mousedown)="onHandleMousedown($event, 'low')" (click)="$event.stopPropagation()" (keydown)="onLowKeydown($event)" @@ -151,7 +151,7 @@ [attr.aria-valuemax]="max()" [attr.aria-valuenow]="displayHigh()" aria-label="Maximum value" - [attr.aria-labelledby]="label() ? 'nui-range-label' : null" + [attr.aria-labelledby]="label() ? labelId : null" (mousedown)="onHandleMousedown($event, 'high')" (click)="$event.stopPropagation()" (keydown)="onHighKeydown($event)" diff --git a/packages/bits/src/lib/range-filter/range-filter.component.spec.ts b/packages/bits/src/lib/range-filter/range-filter.component.spec.ts index 70d12bbe3..0b1e94616 100644 --- a/packages/bits/src/lib/range-filter/range-filter.component.spec.ts +++ b/packages/bits/src/lib/range-filter/range-filter.component.spec.ts @@ -370,5 +370,41 @@ describe("components >", () => { expect(getLowHandle()?.getAttribute("aria-valuemax")).toBe("60"); expect(getLowHandle()?.getAttribute("aria-valuenow")).toBe("20"); }); + + it("uses a unique label id for each instance", () => { + const firstFixture = TestBed.createComponent(RangeFilterComponent); + firstFixture.componentRef.setInput("label", "CPU usage"); + firstFixture.detectChanges(); + + const secondFixture = TestBed.createComponent(RangeFilterComponent); + secondFixture.componentRef.setInput("label", "Latency"); + secondFixture.detectChanges(); + + const firstLabelId = ( + firstFixture.debugElement.query( + By.css(".nui-range-filter__label") + ).nativeElement as HTMLElement + ).id; + const secondLabelId = ( + secondFixture.debugElement.query( + By.css(".nui-range-filter__label") + ).nativeElement as HTMLElement + ).id; + + expect(firstLabelId).not.toBe(secondLabelId); + expect( + firstFixture.debugElement + .query(By.css(".nui-range-filter__handle--high")) + .nativeElement.getAttribute("aria-labelledby") + ).toBe(firstLabelId); + expect( + secondFixture.debugElement + .query(By.css(".nui-range-filter__handle--high")) + .nativeElement.getAttribute("aria-labelledby") + ).toBe(secondLabelId); + + firstFixture.destroy(); + secondFixture.destroy(); + }); }); }); diff --git a/packages/bits/src/lib/range-filter/range-filter.component.ts b/packages/bits/src/lib/range-filter/range-filter.component.ts index 24f3f9963..2087533d4 100644 --- a/packages/bits/src/lib/range-filter/range-filter.component.ts +++ b/packages/bits/src/lib/range-filter/range-filter.component.ts @@ -27,6 +27,8 @@ import { RangeValue } from "./range-filter.models"; imports: [CommonModule, FormsModule, NuiTextboxModule], }) export class RangeFilterComponent implements OnDestroy { + private static nextLabelId = 0; + public readonly min = input(0); public readonly max = input(100); public readonly valueLow = input(0); @@ -45,6 +47,7 @@ export class RangeFilterComponent implements OnDestroy { public readonly rangeChange = output(); + protected readonly labelId = `nui-range-filter-label-${RangeFilterComponent.nextLabelId++}`; protected readonly dragHandle = signal<"low" | "high" | null>(null); protected readonly displayLow = computed(() => { if (this.dragHandle() !== null) { @@ -111,7 +114,6 @@ export class RangeFilterComponent implements OnDestroy { private readonly liveHigh = signal(100); private readonly cdr = inject(ChangeDetectorRef); @ViewChild("trackEl") private readonly trackEl?: ElementRef; - private readonly hostEl = inject(ElementRef); private debounceTimer?: ReturnType; private dragPointerOffset = 0; From 2069d39811c5671a5978cd2aec12e2d4ffd70c7b Mon Sep 17 00:00:00 2001 From: pavlo poimanov Date: Sat, 23 May 2026 01:10:10 +0300 Subject: [PATCH 4/9] refactor(charts): remove ChartRangeSlider component and related files --- .../chart-range-slider.component.html | 72 ---- .../chart-range-slider.component.less | 44 --- .../chart-range-slider.component.spec.ts | 178 --------- .../chart-range-slider.component.ts | 371 ------------------ .../src/chart-range-slider/public-api.ts | 2 - .../charts/src/chart-range-slider/types.ts | 18 - packages/charts/src/charts.module.ts | 3 - packages/charts/src/public-api.ts | 1 - 8 files changed, 689 deletions(-) delete mode 100644 packages/charts/src/chart-range-slider/chart-range-slider.component.html delete mode 100644 packages/charts/src/chart-range-slider/chart-range-slider.component.less delete mode 100644 packages/charts/src/chart-range-slider/chart-range-slider.component.spec.ts delete mode 100644 packages/charts/src/chart-range-slider/chart-range-slider.component.ts delete mode 100644 packages/charts/src/chart-range-slider/public-api.ts delete mode 100644 packages/charts/src/chart-range-slider/types.ts diff --git a/packages/charts/src/chart-range-slider/chart-range-slider.component.html b/packages/charts/src/chart-range-slider/chart-range-slider.component.html deleted file mode 100644 index 143671d1b..000000000 --- a/packages/charts/src/chart-range-slider/chart-range-slider.component.html +++ /dev/null @@ -1,72 +0,0 @@ -
- - - - - - - - - - - - - - - - - - - -
diff --git a/packages/charts/src/chart-range-slider/chart-range-slider.component.less b/packages/charts/src/chart-range-slider/chart-range-slider.component.less deleted file mode 100644 index 1c62f6861..000000000 --- a/packages/charts/src/chart-range-slider/chart-range-slider.component.less +++ /dev/null @@ -1,44 +0,0 @@ -:host { - display: block; -} - -.nui-chart-range-slider { - width: 100%; -} - -.nui-chart-range-slider__surface { - display: block; - width: 100%; - cursor: pointer; - overflow: visible; -} - -.nui-chart-range-slider__area { - fill-opacity: 0.18; -} - -.nui-chart-range-slider__line { - fill: none; - stroke-width: 1.5; - vector-effect: non-scaling-stroke; -} - -.nui-chart-range-slider__shade { - fill: rgba(0, 0, 0, 0.08); -} - -.nui-chart-range-slider__selection { - cursor: grab; -} - -.nui-chart-range-slider__window { - fill: rgba(255, 255, 255, 0.16); - stroke: #3f85af; - stroke-width: 1; - vector-effect: non-scaling-stroke; -} - -.nui-chart-range-slider__handle { - fill: #3f85af; - opacity: 0.95; -} \ No newline at end of file diff --git a/packages/charts/src/chart-range-slider/chart-range-slider.component.spec.ts b/packages/charts/src/chart-range-slider/chart-range-slider.component.spec.ts deleted file mode 100644 index a9f3be296..000000000 --- a/packages/charts/src/chart-range-slider/chart-range-slider.component.spec.ts +++ /dev/null @@ -1,178 +0,0 @@ -import { SimpleChange } from "@angular/core"; -import { ComponentFixture, TestBed } from "@angular/core/testing"; - -import { ChartRangeSliderComponent } from "./chart-range-slider.component"; -import { IChartRangeSliderSeries } from "./types"; - -describe("ChartRangeSliderComponent", () => { - let fixture: ComponentFixture; - let component: ChartRangeSliderComponent; - - beforeEach(() => { - TestBed.configureTestingModule({ - declarations: [ChartRangeSliderComponent], - }); - - fixture = TestBed.createComponent(ChartRangeSliderComponent); - component = fixture.componentInstance; - }); - - it("builds the selection window from the visible range and selected index", () => { - component.series = createSeries(); - component.visibleRange = 4; - component.selectedIndex = 3; - - applyInputs(component, fixture); - - expect(component.selectionRect.width).toBeCloseTo(40, 4); - expect(component.selectionRect.x).toBeCloseTo(30, 4); - expect(component.selectionRange).toEqual( - jasmine.objectContaining({ - startIndex: 3, - endIndex: 6, - startValue: 3, - endValue: 6, - }) - ); - }); - - it("clamps the selected index to the last possible window", () => { - component.series = createSeries(); - component.visibleRange = 4; - component.selectedIndex = 20; - - applyInputs(component, fixture); - - expect(component.selectedIndex).toBe(6); - expect(component.selectionRange.startIndex).toBe(6); - expect(component.selectionRange.endIndex).toBe(9); - }); - - it("emits the new window when the track is clicked", () => { - const selectedIndexChangeSpy = spyOn( - component.selectedIndexChange, - "emit" - ); - const rangeChangeSpy = spyOn(component.rangeChange, "emit"); - - component.series = createSeries(); - component.visibleRange = 4; - component.selectedIndex = 0; - - applyInputs(component, fixture); - setTrackRect(component, 100, 0); - - component.onTrackMouseDown(createMouseEvent(80)); - - expect(selectedIndexChangeSpy).toHaveBeenCalledWith(6); - expect(rangeChangeSpy).toHaveBeenCalledWith( - jasmine.objectContaining({ - startIndex: 6, - endIndex: 9, - startValue: 6, - endValue: 9, - }) - ); - }); - - it("drags the selection window and clamps it at the start of the track", () => { - const selectedIndexChangeSpy = spyOn( - component.selectedIndexChange, - "emit" - ); - - component.series = createSeries(); - component.visibleRange = 4; - component.selectedIndex = 3; - - applyInputs(component, fixture); - setTrackRect(component, 100, 0); - - component.onSelectionMouseDown(createMouseEvent(35)); - component.onDocumentMouseMove(createMouseEvent(-10)); - component.onDocumentMouseUp(); - - expect(component.selectionRange.startIndex).toBe(0); - expect(selectedIndexChangeSpy).toHaveBeenCalledWith(0); - }); - - it("expands the selection to the full width when the visible range exceeds the data", () => { - component.series = createSeries(5); - component.visibleRange = 20; - component.selectedIndex = 4; - - applyInputs(component, fixture); - - expect(component.selectionRect.width).toBe(100); - expect(component.selectionRect.x).toBe(0); - expect(component.selectionRange.startIndex).toBe(0); - expect(component.selectionRange.endIndex).toBe(4); - }); - - it("renders only active series", () => { - component.series = createSeries(); - component.series[1].active = false; - component.visibleRange = 4; - - applyInputs(component, fixture); - - expect(component.previewSeries.length).toBe(1); - expect(component.previewSeries[0].id).toBe("latency"); - }); -}); - -function applyInputs( - component: ChartRangeSliderComponent, - fixture: ComponentFixture -): void { - component.ngOnChanges({ - series: new SimpleChange(null, component.series, false), - visibleRange: new SimpleChange(null, component.visibleRange, false), - selectedIndex: new SimpleChange(null, component.selectedIndex, false), - height: new SimpleChange(null, component.height, false), - }); - fixture.detectChanges(); -} - -function setTrackRect( - component: ChartRangeSliderComponent, - width: number, - left: number -): void { - spyOn( - component.track.nativeElement, - "getBoundingClientRect" - ).and.returnValue({ - left, - width, - } as DOMRect); -} - -function createMouseEvent(clientX: number): MouseEvent { - return { - clientX, - preventDefault: jasmine.createSpy("preventDefault"), - stopPropagation: jasmine.createSpy("stopPropagation"), - } as unknown as MouseEvent; -} - -function createSeries(length = 10): IChartRangeSliderSeries[] { - return [ - { - id: "latency", - color: "#3f85af", - data: Array.from({ length }, (_, index) => ({ - x: index, - y: (index + 1) * 10, - })), - }, - { - id: "jitter", - color: "#f59e0b", - data: Array.from({ length }, (_, index) => ({ - x: index, - y: index * 5, - })), - }, - ]; -} diff --git a/packages/charts/src/chart-range-slider/chart-range-slider.component.ts b/packages/charts/src/chart-range-slider/chart-range-slider.component.ts deleted file mode 100644 index 83b5511ed..000000000 --- a/packages/charts/src/chart-range-slider/chart-range-slider.component.ts +++ /dev/null @@ -1,371 +0,0 @@ -import { - ChangeDetectionStrategy, - Component, - ElementRef, - EventEmitter, - HostListener, - Input, - OnChanges, - Output, - SimpleChanges, - ViewChild, -} from "@angular/core"; - -import { IChartRangeSliderRange, IChartRangeSliderSeries } from "./types"; - -interface IRenderedChartRangeSliderSeries { - id: string; - color: string; - areaPath: string; - linePath: string; -} - -interface IYDomain { - min: number; - max: number; - baseline: number; -} - -@Component({ - selector: "nui-chart-range-slider", - templateUrl: "./chart-range-slider.component.html", - styleUrls: ["./chart-range-slider.component.less"], - changeDetection: ChangeDetectionStrategy.OnPush, - standalone: false, -}) -export class ChartRangeSliderComponent implements OnChanges { - @Input() public series: IChartRangeSliderSeries[] = []; - @Input() public visibleRange = 0; - @Input() public selectedIndex = 0; - @Input() public height = 24; - @Input() public trackOffset = 0; - - @Output() public selectedIndexChange = new EventEmitter(); - @Output() public rangeChange = new EventEmitter(); - - @ViewChild("track", { static: true }) - public track: ElementRef; - - public readonly viewBoxWidth = 100; - public previewSeries: IRenderedChartRangeSliderSeries[] = []; - public selectionRect = { x: 0, width: 0 }; - public selectionRange: IChartRangeSliderRange = this.createEmptyRange(); - - private isDragging = false; - private dragOffset = 0; - private totalPointCount = 0; - - public ngOnChanges(changes: SimpleChanges): void { - if ( - changes["series"] || - changes["visibleRange"] || - changes["selectedIndex"] || - changes["height"] - ) { - this.rebuildView(); - } - } - - public onTrackMouseDown(event: MouseEvent): void { - if (!this.canInteract()) { - return; - } - - this.applySelectionFromPointer( - this.getPointerPosition(event) - this.selectionRect.width / 2 - ); - } - - public onSelectionMouseDown(event: MouseEvent): void { - if (!this.canInteract()) { - return; - } - - event.preventDefault(); - event.stopPropagation(); - this.isDragging = true; - this.dragOffset = this.getPointerPosition(event) - this.selectionRect.x; - } - - @HostListener("document:mousemove", ["$event"]) - public onDocumentMouseMove(event: MouseEvent): void { - if (!this.isDragging) { - return; - } - - event.preventDefault(); - this.applySelectionFromPointer( - this.getPointerPosition(event) - this.dragOffset - ); - } - - @HostListener("document:mouseup") - public onDocumentMouseUp(): void { - this.isDragging = false; - } - - private rebuildView(): void { - const activeSeries = this.getActiveSeries(); - const referenceSeries = this.getReferenceSeries(activeSeries); - - this.totalPointCount = this.getTotalPointCount(activeSeries); - this.previewSeries = this.buildPreviewSeries(activeSeries); - this.setSelection(this.selectedIndex, referenceSeries); - } - - private setSelection( - nextIndex: number, - referenceSeries: IChartRangeSliderSeries | undefined, - emit = false - ): void { - const clampedIndex = this.getClampedSelectionIndex(nextIndex); - - this.selectedIndex = clampedIndex; - this.selectionRect = this.buildSelectionRect(clampedIndex); - this.selectionRange = this.buildRange(clampedIndex, referenceSeries); - - if (emit) { - this.selectedIndexChange.emit(this.selectionRange.startIndex); - this.rangeChange.emit(this.selectionRange); - } - } - - private applySelectionFromPointer(pointerX: number): void { - const trackLimit = Math.max( - this.viewBoxWidth - this.selectionRect.width, - 0 - ); - const clampedPointer = this.clamp(pointerX, 0, trackLimit); - const nextIndex = - (clampedPointer / this.viewBoxWidth) * this.totalPointCount; - - this.setSelection( - nextIndex, - this.getReferenceSeries(this.getActiveSeries()), - true - ); - } - - private buildSelectionRect(startIndex: number): { - x: number; - width: number; - } { - const effectiveVisibleRange = this.getEffectiveVisibleRange(); - - if (!this.totalPointCount || !effectiveVisibleRange) { - return { x: 0, width: 0 }; - } - - if (effectiveVisibleRange >= this.totalPointCount) { - return { x: 0, width: this.viewBoxWidth }; - } - - return { - width: - (effectiveVisibleRange / this.totalPointCount) * - this.viewBoxWidth, - x: (startIndex / this.totalPointCount) * this.viewBoxWidth, - }; - } - - private buildRange( - startIndex: number, - referenceSeries: IChartRangeSliderSeries | undefined - ): IChartRangeSliderRange { - const effectiveVisibleRange = this.getEffectiveVisibleRange(); - - if (!this.totalPointCount || !effectiveVisibleRange) { - return this.createEmptyRange(); - } - - const endIndex = Math.min( - startIndex + effectiveVisibleRange - 1, - this.totalPointCount - 1 - ); - - return { - startIndex, - endIndex, - startValue: referenceSeries?.data[startIndex]?.x, - endValue: referenceSeries?.data[endIndex]?.x, - }; - } - - private buildPreviewSeries( - activeSeries: IChartRangeSliderSeries[] - ): IRenderedChartRangeSliderSeries[] { - if (!activeSeries.length) { - return []; - } - - const yDomain = this.getYDomain(activeSeries); - - return activeSeries.map((series) => ({ - id: series.id, - color: series.color ?? "#3f85af", - areaPath: this.buildAreaPath(series, yDomain), - linePath: this.buildLinePath(series, yDomain), - })); - } - - private buildAreaPath( - series: IChartRangeSliderSeries, - yDomain: IYDomain - ): string { - if (!series.data.length) { - return ""; - } - - const baseline = this.scaleY(yDomain.baseline, yDomain); - const firstX = this.scaleX(0, series.data.length); - const lastX = this.scaleX(series.data.length - 1, series.data.length); - const points = series.data - .map( - (point, index) => - `L ${this.scaleX(index, series.data.length)} ${this.scaleY( - point.y, - yDomain - )}` - ) - .join(" "); - - return `M ${firstX} ${baseline} ${points} L ${lastX} ${baseline} Z`; - } - - private buildLinePath( - series: IChartRangeSliderSeries, - yDomain: IYDomain - ): string { - return series.data - .map((point, index) => { - const command = index === 0 ? "M" : "L"; - return `${command} ${this.scaleX( - index, - series.data.length - )} ${this.scaleY(point.y, yDomain)}`; - }) - .join(" "); - } - - private getActiveSeries(): IChartRangeSliderSeries[] { - return (this.series ?? []).filter( - (series) => (series.active ?? true) && series.data?.length - ); - } - - private getReferenceSeries( - series: IChartRangeSliderSeries[] - ): IChartRangeSliderSeries | undefined { - return series.reduce( - (longestSeries, currentSeries) => { - if ( - !longestSeries || - currentSeries.data.length > longestSeries.data.length - ) { - return currentSeries; - } - - return longestSeries; - }, - undefined - ); - } - - private getTotalPointCount(series: IChartRangeSliderSeries[]): number { - return series.reduce( - (maxLength, currentSeries) => - Math.max(maxLength, currentSeries.data.length), - 0 - ); - } - - private getYDomain(series: IChartRangeSliderSeries[]): IYDomain { - const values = series.reduce((result, currentSeries) => { - currentSeries.data.forEach((point) => result.push(point.y)); - return result; - }, []); - - const rawMin = values.length ? Math.min(...values) : 0; - const rawMax = values.length ? Math.max(...values) : 0; - const min = Math.min(rawMin, 0); - const max = rawMax === min ? min + 1 : rawMax; - - return { - min, - max, - baseline: min, - }; - } - - private getEffectiveVisibleRange(): number { - if (!this.totalPointCount) { - return 0; - } - - const normalizedVisibleRange = Math.max( - 0, - Math.floor(this.visibleRange) - ); - - return Math.min(normalizedVisibleRange, this.totalPointCount); - } - - private getClampedSelectionIndex(value: number): number { - const effectiveVisibleRange = this.getEffectiveVisibleRange(); - - if (!this.totalPointCount || !effectiveVisibleRange) { - return 0; - } - - const maxStartIndex = Math.max( - this.totalPointCount - effectiveVisibleRange, - 0 - ); - - return this.clamp(Math.round(value), 0, maxStartIndex); - } - - private getPointerPosition(event: MouseEvent): number { - const rect = this.track.nativeElement.getBoundingClientRect(); - - if (!rect.width) { - return 0; - } - - return this.clamp( - ((event.clientX - rect.left) / rect.width) * this.viewBoxWidth, - 0, - this.viewBoxWidth - ); - } - - private scaleX(index: number, pointCount: number): number { - if (pointCount <= 1) { - return this.viewBoxWidth / 2; - } - - return (index / (pointCount - 1)) * this.viewBoxWidth; - } - - private scaleY(value: number, domain: IYDomain): number { - return ( - this.height - - ((value - domain.min) / (domain.max - domain.min)) * this.height - ); - } - - private createEmptyRange(): IChartRangeSliderRange { - return { - startIndex: 0, - endIndex: 0, - }; - } - - private canInteract(): boolean { - return this.totalPointCount > 0 && this.getEffectiveVisibleRange() > 0; - } - - private clamp(value: number, min: number, max: number): number { - return Math.min(Math.max(value, min), max); - } -} diff --git a/packages/charts/src/chart-range-slider/public-api.ts b/packages/charts/src/chart-range-slider/public-api.ts deleted file mode 100644 index c479e85e8..000000000 --- a/packages/charts/src/chart-range-slider/public-api.ts +++ /dev/null @@ -1,2 +0,0 @@ -export * from "./chart-range-slider.component"; -export * from "./types"; diff --git a/packages/charts/src/chart-range-slider/types.ts b/packages/charts/src/chart-range-slider/types.ts deleted file mode 100644 index a5a394da1..000000000 --- a/packages/charts/src/chart-range-slider/types.ts +++ /dev/null @@ -1,18 +0,0 @@ -export interface IChartRangeSliderPoint { - x: number; - y: number; -} - -export interface IChartRangeSliderSeries { - id: string; - data: IChartRangeSliderPoint[]; - color?: string; - active?: boolean; -} - -export interface IChartRangeSliderRange { - startIndex: number; - endIndex: number; - startValue?: number; - endValue?: number; -} diff --git a/packages/charts/src/charts.module.ts b/packages/charts/src/charts.module.ts index 844753538..4ad82c514 100644 --- a/packages/charts/src/charts.module.ts +++ b/packages/charts/src/charts.module.ts @@ -32,7 +32,6 @@ import { } from "@nova-ui/bits"; import { ChartComponent } from "./chart/chart.component"; -import { ChartRangeSliderComponent } from "./chart-range-slider/chart-range-slider.component"; import { ChartCollectionIdDirective } from "./chart-collection/chart-collection-id.directive"; import { ChartCollectionService } from "./chart-collection/chart-collection.service"; import { ChartDonutContentComponent } from "./chart-donut-content/chart-donut-content.component"; @@ -55,7 +54,6 @@ import { ThresholdsService } from "./thresholds/thresholds-service"; BasicLegendTileComponent, RichLegendTileComponent, ChartComponent, - ChartRangeSliderComponent, ChartCollectionIdDirective, ChartMarkerComponent, ChartPopoverComponent, @@ -70,7 +68,6 @@ import { ThresholdsService } from "./thresholds/thresholds-service"; RichLegendTileComponent, BasicLegendTileComponent, ChartComponent, - ChartRangeSliderComponent, ChartCollectionIdDirective, ChartMarkerComponent, ChartPopoverComponent, diff --git a/packages/charts/src/public-api.ts b/packages/charts/src/public-api.ts index c9199bde4..f2757d1ed 100644 --- a/packages/charts/src/public-api.ts +++ b/packages/charts/src/public-api.ts @@ -24,7 +24,6 @@ export { ChartDonutContentComponent } from "./chart-donut-content/chart-donut-co export { ChartTooltipsComponent } from "./chart-tooltips/chart-tooltips.component"; export { ChartPopoverComponent } from "./chart-popover/chart-popover.component"; export { ChartMarkerComponent } from "./chart-marker/chart-marker.component"; -export * from "./chart-range-slider/public-api"; export * from "./charts.module"; export * from "./chart/chart.component"; From 2ef6a66c9ded2d69af9d976f78eb737330f467b3 Mon Sep 17 00:00:00 2001 From: pavlo poimanov Date: Mon, 25 May 2026 09:53:37 +0300 Subject: [PATCH 5/9] tests --- .../range-filter-basic.example.component.html | 2 +- ...range-filter-guides.example.component.html | 2 +- ...nge-filter-vertical.example.component.html | 2 +- packages/bits/e2e/components/public_api.ts | 1 + .../range-filter.component.spec.ts | 19 ++++++++++ .../range-filter/range-filter.component.ts | 36 ++++++++++++++----- 6 files changed, 50 insertions(+), 12 deletions(-) diff --git a/packages/bits/demo/src/components/demo/range-filter/range-filter-basic/range-filter-basic.example.component.html b/packages/bits/demo/src/components/demo/range-filter/range-filter-basic/range-filter-basic.example.component.html index dd2a93662..bd4b58654 100644 --- a/packages/bits/demo/src/components/demo/range-filter/range-filter-basic/range-filter-basic.example.component.html +++ b/packages/bits/demo/src/components/demo/range-filter/range-filter-basic/range-filter-basic.example.component.html @@ -1,4 +1,4 @@ -
+
Alert Tuning
diff --git a/packages/bits/demo/src/components/demo/range-filter/range-filter-guides/range-filter-guides.example.component.html b/packages/bits/demo/src/components/demo/range-filter/range-filter-guides/range-filter-guides.example.component.html index b9f5fa895..396ac634e 100644 --- a/packages/bits/demo/src/components/demo/range-filter/range-filter-guides/range-filter-guides.example.component.html +++ b/packages/bits/demo/src/components/demo/range-filter/range-filter-guides/range-filter-guides.example.component.html @@ -1,4 +1,4 @@ -
+

Response-time budget

diff --git a/packages/bits/demo/src/components/demo/range-filter/range-filter-vertical/range-filter-vertical.example.component.html b/packages/bits/demo/src/components/demo/range-filter/range-filter-vertical/range-filter-vertical.example.component.html index 61311b0c1..28bb7c420 100644 --- a/packages/bits/demo/src/components/demo/range-filter/range-filter-vertical/range-filter-vertical.example.component.html +++ b/packages/bits/demo/src/components/demo/range-filter/range-filter-vertical/range-filter-vertical.example.component.html @@ -1,4 +1,4 @@ -
+
Single Value Mode

Priority threshold

diff --git a/packages/bits/e2e/components/public_api.ts b/packages/bits/e2e/components/public_api.ts index f81f16bf0..d64780ed8 100644 --- a/packages/bits/e2e/components/public_api.ts +++ b/packages/bits/e2e/components/public_api.ts @@ -37,6 +37,7 @@ export * from "./popover/popover.atom"; export * from "./popup/overlay-content.atom"; export * from "./popup/popup.atom"; export * from "./progress/progress.atom"; +export * from "./range-filter/range-filter.atom"; export * from "./search/search.atom"; export * from "./select/basic-select.atom"; export * from "./select/select.atom"; diff --git a/packages/bits/src/lib/range-filter/range-filter.component.spec.ts b/packages/bits/src/lib/range-filter/range-filter.component.spec.ts index 0b1e94616..c63f0854c 100644 --- a/packages/bits/src/lib/range-filter/range-filter.component.spec.ts +++ b/packages/bits/src/lib/range-filter/range-filter.component.spec.ts @@ -157,6 +157,12 @@ describe("components >", () => { expect(component["displayHigh"]()).toBe(100); }); + it("clamps displayHigh to min when both values are below min", () => { + setInputs({ min: 50, max: 100, valueLow: 0, valueHigh: 10 }); + + expect(component["displayHigh"]()).toBe(50); + }); + it("clamps displayLow to valueHigh when valueLow exceeds valueHigh", () => { setInputs({ min: 0, max: 100, valueLow: 90, valueHigh: 50 }); @@ -181,6 +187,19 @@ describe("components >", () => { expect(component["displayLow"]()).toBe(10); }); + it("snaps values relative to min", () => { + setInputs({ + min: 3, + max: 23, + valueLow: 3, + valueHigh: 18, + step: 5, + }); + + expect(component["displayLow"]()).toBe(3); + expect(component["displayHigh"]()).toBe(18); + }); + it("emits rangeChange immediately when debounceMs is 0", (done) => { setInputs({ min: 0, diff --git a/packages/bits/src/lib/range-filter/range-filter.component.ts b/packages/bits/src/lib/range-filter/range-filter.component.ts index 2087533d4..0d0b3abfb 100644 --- a/packages/bits/src/lib/range-filter/range-filter.component.ts +++ b/packages/bits/src/lib/range-filter/range-filter.component.ts @@ -49,23 +49,31 @@ export class RangeFilterComponent implements OnDestroy { protected readonly labelId = `nui-range-filter-label-${RangeFilterComponent.nextLabelId++}`; protected readonly dragHandle = signal<"low" | "high" | null>(null); + protected readonly resolvedLow = computed(() => { + const resolvedHigh = this.snapAndClamp( + this.valueHigh(), + this.min(), + this.max() + ); + + return this.snapAndClamp(this.valueLow(), this.min(), resolvedHigh); + }); + protected readonly resolvedHigh = computed(() => + this.snapAndClamp(this.valueHigh(), this.resolvedLow(), this.max()) + ); protected readonly displayLow = computed(() => { if (this.dragHandle() !== null) { return this.liveLow(); } - return this.snap( - Math.max(this.min(), Math.min(this.valueLow(), this.valueHigh())) - ); + return this.resolvedLow(); }); protected readonly displayHigh = computed(() => { if (this.dragHandle() !== null) { return this.liveHigh(); } - return this.snap( - Math.max(this.valueLow(), Math.min(this.valueHigh(), this.max())) - ); + return this.resolvedHigh(); }); protected readonly isDisabled = computed( () => this.disabled() || this.min() === this.max() @@ -359,14 +367,24 @@ export class RangeFilterComponent implements OnDestroy { private snap(value: number): number { const step = this.step(); + const min = this.min(); + + return step > 0 ? min + Math.round((value - min) / step) * step : value; + } + + private snapAndClamp(value: number, low: number, high: number): number { + const bounded = Math.max(low, Math.min(value, high)); - return step > 0 ? Math.round(value / step) * step : value; + return Math.max(low, Math.min(this.snap(bounded), high)); } private clampAndSnap(rawValue: string, low: number, high: number): number { const parsed = parseFloat(rawValue); - return this.snap( - Math.max(low, Math.min(Number.isNaN(parsed) ? low : parsed, high)) + + return this.snapAndClamp( + Number.isNaN(parsed) ? low : parsed, + low, + high ); } From efe33fc1960c441e08d0645e546b97690d3c5eea Mon Sep 17 00:00:00 2001 From: pavlo poimanov Date: Mon, 25 May 2026 09:54:55 +0300 Subject: [PATCH 6/9] tests --- packages/bits/blob-report/report-beefacc.zip | Bin 0 -> 8466 bytes .../range-filter/range-filter.a11y.spec.ts | 41 ++++++++ .../range-filter/range-filter.atom.ts | 95 ++++++++++++++++++ .../range-filter/range-filter.e2e.spec.ts | 92 +++++++++++++++++ 4 files changed, 228 insertions(+) create mode 100644 packages/bits/blob-report/report-beefacc.zip create mode 100644 packages/bits/e2e/components/range-filter/range-filter.a11y.spec.ts create mode 100644 packages/bits/e2e/components/range-filter/range-filter.atom.ts create mode 100644 packages/bits/e2e/components/range-filter/range-filter.e2e.spec.ts diff --git a/packages/bits/blob-report/report-beefacc.zip b/packages/bits/blob-report/report-beefacc.zip new file mode 100644 index 0000000000000000000000000000000000000000..fccd03d4183dbe8f8e05518009f85dfe5eac541a GIT binary patch literal 8466 zcmYkCXE^|ZzV3#qU&0zV^GFg(S43q!v99gB;b0?xtGBkMA>Zd z9|ohaIhhAA$8UJNjfVL$Q*lrHUSWf%|Z3>`aZ|7B@4L^K3U zA&3?R?-%a1XHOwK?bnWvWfcO^GZ25%oRO~-h5HM+%vAS{Mrsw|VY-ng{HD~K)WmRO=X?tv2N1%*R;7Rw_ z^o-M|_CV{iw9{LT>c$0xyX)1?6`}Dxf7-8=fsrSDM8L#_mA@%c6jrHIcK8J5Rk?ZS z+1i3!l!1+qphuYsH&?F=lBJQYqQz~l06ANK%--i$ojJ}qe^l_FJv{R8uUcMNzJL7k zZok^Q&i82w0e0LbeY%ggKGVtcpS`GTZi~L&Qq<$${grqDsYkL~!?rovXXj2&FJ%Qt z8=faq40b##a29=Y;o;+RG9n;Q#wIXVHgfq}FYu=3M*l0t!}^6;jUihlGQc|p7Te}` zXZrfF&FJCB_F)Loa@*ZPk8_Tc6OaS8xg1op=;-|QIM89TZf4|izs|`+;Eoq@p>25= zvbis!ZNE}Ms_cJI<8{Vy?CJ|t5jxg8G3MaN zDVrG@+JPC2q@{h0DG~7T-FaRE7=h;)?h6!8{?!ALrS0gan32C9c{!qi<#^k_js$UlMdxqUMVDRLF!h-1|Dfz{VoLq&G?!c z|A_ypvgmv{O(Nc2f<$)KEbJX3QWs{N)ZBR9-$E`vDMfENoLOa9SCTC4KX0|ExrVY4 zGcP`aBO_+RF_NLB6^4ZAC6YoyM!LX-$-{8d+P z@@`tAF?qWF#RrX>oAuX`*#n`Pyh7bs*lnNx_$8*B7n1AMurt-Y@^)=qT!Ahi9Qb*> z5H-rFTMl);fKh?Fw;P1Pc6jzLF)8MROn>$WDyzDlWMUKIESZ}&!U)?OD22D7K$~q4 z2B`EPu6O;RL(G=3m$I{cs;md{*h%n|2RmFbuEo4e)^`7j?s>K!y{#klY5*WROiiYS zqSTX>g+n|pC(zz?GD7{Mh4hEda;98U(**1;$DzI&$$#vAhSNo9_)WYM=fICe|+03I3lA!NV|`^^LCd?XK+(_l-(oXhkM=Zg0W7SG5M(F!rlzL)6&0H z|AAYK$ou>a9u=H1TpRq8U(IA&9zz)~tE7AHnEG?t(zc5+CHAZ_No7Mz-ROrM+g9(o ziHog!I;)E#8p_}isVr6py2gWFa_$%!mOYv^W2g=nniF&Jru(SpKJ)(26>j4(r0FG~ zYDtF_(((~2-Q|1W!%sGi@Uny1<6_h|rb!a#{U)CxO0|96_TW~pCWzy{(e3o>vXZ5) zX^@xvIkRh;nOkCbpKS_v{dU&dM9-$i>FJ(bbJB^%h$@r&f5&MvE^~0d#IG@bmp#H8 zU4#inm{ldmc zk~2pE87-W7g%FMRHAa5+Ld4aA_!8dv zy!#^h_MH&Z)C0b-2S9{-_0?|=g1Ze3QE|@9tWF0*+&1QYT1jyZKxC00%5B%a!N}6W zmT$}L=O@1^y+VrCtg#BWyA@c#0nMF?@d{O3ZEtqvmHC)XfPWjyvE9Ru%G8#gkbsk! z92%0~qxNlaI%!fvYr1}qi)us6#N+*r^$@kcKemUSs-KRWuiD*dMuQS<9V#y5Cq?Gi z!XhCf;bx_;ppXfxcx1o@^SWlrH^4Jb$nz}om}eiz+TI$Z{Lnx_ga#cf@ndQ8PQ7+5oOL;eY>YP0spCnB?TqG758%8pO zKebB8U?$8vy<*j=VP9s^F+5|iC2VfTy$b2@pE^E3rhQQ~B6B@ka?- zD>AvF4^VQC*%I#rfhrUl)u!n)x+S{7Av-EDRVw0(6oQ#G!%~n`gX0;pJ2pHLojDC= z$9T8ZWRGfegbTl?{O1_;2%;#P{{{E|r@Y_rh-wrhJ>4kkD%CTb1@qdxZ?q{i zPT9`pP3|l$HM1gi^od94&0rV@uj!wuJPEpwuvZZtRAPt0 zKu`lK@PXXr1&5Qa`C(q3MIqIIJSM`-tR_CIdy= z8!zWw0lH3RonBgAoA?)yvg@ND!}Qc=&-UQ>%0 z95pq~{tPsr`1+xOGz9{|>Er3e!bxXHkL#1$5ci|=eFCz@-f+BeFNiEyp-%lX zc0Lm~kkuZLCKiUk9N)>zB<~nTDR^Z4;&=4TAc%8v>pP0VSSf)X<=dwB&o)z z9-Hw=bI-LCTc;W#u(+e7uF>q)gy_H0)<895HA2OiU;gE5+6THjW6iO&wHqh@Ezk2x z`%32b)HAIw^|^4X2B|G2Txq1pwrfqUS%c}njN<=_75x(N79}!&1j>#P@GIx<)d%he zJZ0SOm89Q)$uh&jvx7Giir~!kS`#|<(yb5=iBb;d-u*1)nH|9cqJVZ)`DaOs|0@57Nx08Glg#$gttm!HV&go+}}ZEiZ#RO#JxJCOml}Wkh#Eu%5xBF zU=B@&Yg$GAFn+xEyHE$Uvz^(-!%w4MYRbw5n|C-Sj^ga#Uy-T2p}M}IyS{XTQOb9< zE_y!Yg~@nSy4n62Nuz3~D^6BiYO~xgSw_h=7$jIrs+f~(9DDSo5~QkcXzE1&ysP&~ zc-ZU>rlZzwTre8>z2kl+R$+w43Zr3~Krm#PW)h12-Z!r+N}8qwd7z2*CX@|vB|4LA z<^X6_+-y6n#=rg)Tb#_5Yg=l*Db1ezabR9>`L*=hfzn6^R79^VBWNh-Fu1_2_gKN_ z#SPm(J?(-~d&Yxt$qlvY6AVfWpR{@J4aF~j?pY#XYzk@IIN~uPa)Y(f54DQwG>(I_ zSd3heN)@G1XfK>QJy<`-ckE?JeZet}$gVA*<*yyTCLERS)Rr6Mvqc$Kbx?C2|1_MJ zJ~`oaUs#({=q8kYb7J~FU!RA&EZ6P=Y2ij$duv0RNbdOMvvroe|1T zw*iQ}o8yLMSkkPYS{+JKZ> zfID^>vA3eKqX;(3acOz$KdMd*tH_?`Tk{e){tBf}J7C``Pl=MC?XS{jL zmjrVUSJZb`B3+41`nOgnP|ZvZC^49xYL}?u z&Fycp=A_Rw5jC)Jn8068e2Y<$>gk+BciwNT*dm~}C>w2u#`+QW&&2d@)EVwKUG=_0 zc^0iZ>|@=JjyLHjF2+ncoox`#ghb0fcBHnF56sLd8TANkc&Jx+d3P~Ck0z(##T&BV!3e~LF8MxEjOth0=^ zKuC?UMU4v5?4E$C#B?5f(;%Y9Ce0VU0p_4Eu-$1g_lu@QjP7OU8BPTL3DbwNg z67EO>4JSO6Yu7t-jZB$L`#V?lnkN+8fTSrN)RiJc;L*($ii?&E&6brWi7eT4(Zchm zFc&s@U^ZUk+DL|I0l5KBMIGK5L!tVx?qq(HpyyWQwAQE+Z4((-iaq#^x1&NWPnL;=IbA{#NX>erWD|v9JORjG*dcg+>Exp zGn7@5>}DGH2eeUL;@YDZ8FU103lj_x#Eh?r-_IVlD7=%S0LKWL*3K^Cn+_4`elG}; z-lp@l`cL~~2ZZM>b+WK=pZLMj>vZA1!4E`?JIZqV-N}>wN#hSD+kN4&)#ggO>im?9 zXxFcFaTX)YD8GVjCeU|X{j81>!fXyee}lAr-mXIWDwh3-S?DoEa1`rBikobdWJ zj~$3}qTddC2TpjPH3#`wHIbOJhbBeIhNts%&MExjcf`9(&enD~GMgZBhaX86b+dV)r>Z%ke99te-R$8N-qDy)X1 zmex6L)=XG!SCEIqB!r2GoB8c=Y!w}&l{q~u4)*r>BP{mNHWff4@Q@^iw7!)7>4o)y zyU&72s6uk4k@2N{j9$!N&VzH5TM-AbL8pw$Rr~Gu^nihlM4d`y%!*58F}cz9DPW2= zps%bln-$kBQj0P{(uE{T=3NG8yaYo_NQfv)^Mr-HG4fDz2dkD^#HFS$p(EP)5}saq z^U4kW*L>a^#jm~wI{&#w*SllpT`I#Ie5w@cS|J($?}>dgT36i9B}-eGh*kbkVo*jZ zT;;UTTg=}$lq?<@?M*+-h$9tKWxF`H>r|+&`3Eg47rJc9a2#~%g;f6&S4^Q%l0>ar z_x_=uqM=xW@sKu7G|4lc(+oSaNk8qioB`aKE$M^Jr6gZioRJ~R%&m9B{cO5`n6)0Y z-f57x5WnNT@XTZ)CjOMfo$FntdH6WP1N%U*n11y?X;Y$|ETE_b16Uy<^rPHT0oNph69OWH{WbOW7A8uG@(m^=TJ(}!{XJlBQyDI zoG?|o!DpoT9sTDYpd|@Pb|-)M2(AW0^PYy5m8wP(it7xS;%iJyp|OU;{v34?s@3WA zm7qI(QL|=y?6tpnbQOF>H1DM|@ed9gs!H49QUIZ}SRY?TE_{TfC-K#raf;Sop$6D| zbF3EGW)B+hz=_HhYyai@^t1)vee!R5*Fv!ZHhLuRLKyGN=yPy5J8zDZUHsYe_VLmq zfgNsb-#^}z*G4BuUADkK*fw96)Kmq5+oGfOjlqTgwu_KO6WUn|leMSG2tFk8uuFMA07Z@%0PXglF|Q@)oNU;oMq9zuNGO-=?;&{pqJ z3Z~2=qK#YYS};JM{$b!5s>|pJPuC(H>e;^iv7)K7De`*a_44NnVP5#l&k51Qti?@1 zqz;_3GIhvMOgs}6vZCL4*~}p>0}TfOv%aO^y~NPV^;^xf&4idnS~7aZR1?4gmMN!Z zSM|aflt}Ehs@HMaIRtPA)Zngkk|X=gTFt=hI~M4nZYY`Fdkiu~^hz zy!n@TkZX0h0%|=QHCy=I8htL5C}gUCV0M!`nwZxjHdx`6WTwcKOX!ZiQlAKs=( z^sO<&f1ILPzm%uTwK~j{ufKO)4)26@p~S$w&FX0H}N z7TB~FNj!pff%s!RgeKnwA7ppJ)h6%>3|y(aM;uCI_fx=1Ts!Hwg2WSk3=srBR>#o& z>T|e-#JWN5M2(_fUvPO~iJZGDxMb8Fy9-&fAjER$T6ZVMx)T$e z9IWvjhO!Kz>A4PdwyjA$xj!ob>iv0L4A0Ab#wa>50g&xh`)P+b3j603qt1XJD;BD3 z!5tB|*Q>FLN=5H8gT3noI~?r&bO#mX{6Zxa@rahlHbHkHstvzTkE?!34aOJnC8~$G zGU-qD3wmK;_fGPTKnrqapj1JcP6itH#{t`%|B ze0$@YESKspKQca0Pbmt%IzZHz@@QQ`v3j-Ar0IiIRSg1vg}?jo?e&nJcOlAUhq8_F z&ol^>veuvlkD-=I6j$Y~rnjcxDMk?HAET=rU@f1IND1rgy6uQq?Ce;7>%XDpu9 zlumg0MNXT2ao=yT>X9viZm=qe$Q-dt)gx{Ae2%-D6Y^|7brI%Y0sOvH!B`U2}^dB#*#&o z&S~A*4K93VGm@b_Xwo4JS&CdoKnrs3G1!8It0wm7iY;&$lV{}1>r5^e_JWW_at1(( z!Sh1}p~e&l(R5fnwg_4PPN*jQgsJ#9lg_|G4NjXZWFq6N9C{a{!V4MA^OVwR9ik5T zip6S^F4$DQ>{7G)Z0jmF?Q-}1pSh9(78%d>uPVuPDcxjVqQ-WuXA9&Dc3jl?3Pypv zwv0=?d5P|kxz|7)p)7VNXv0Pu!9*rkhqi4pt%{9`vw&Z8s$eVDGvxB|Y@;j8#DU)i zzMcghY1-EH6R$AITLRs9<&M>=zcfGKMNo>2+Z~TmdlekHy(@B@h7~gu$(_{S1qR$d zer--UefEC(K%c+~lI`38wD(1QS=@)tBY9{=njTczgE4&bxQn%>{ejFx-6rpLa+z`` zZ=NR%5ViomxA-sNekQT=dzhGAYXo21w*r;6sf4*eU%^@*2pbPyAfgaG-+r`6i;UJt zamYk^&s>8GzX8C1b=|2@XPc%tGEIwD*G+ktWHIYMzS5$o!r?AU2v$>+5W4k$c6s3U zmgw_<$-ioANfia8M#*DYN%#_e`36}vu0+gZLO__p z9o)0lBr8=E>_Ybbu3|{oC)YQ-qi-#!Or`I`fBwrMLaNsAZIP@#my)|e^7n$kZY|{# zrR=11GFI2Ts2(>m*k}0pl)xJ2`7(mq|9=Ql_a8x=BG-$Bba}XmFv-{qBv1#*Lavqm zfb${2DW^Jy&ZK%yaoigG=SNNL!kHPTgshBNdX662SyPm*J^8vZu0_0Q%pPts`#BXn z!_ZC>%0sik=U5RT{QzLElLbzD0J_|2eZGM$Vg$`={I;rIut+3>h(>$+f-g!(pv*#< zSs4(bc>@YZCwL3i?syRWj-B%7jGm9Agt00LSt2@)_Unnx`{bR^>ciKknDi&p7+`Qv zQFXyJQgr3f+-N!-m|H`Vf^KwQ!B1JF=(RsLs20qQVl156l zKyJ>aKaoZHMOpB);S=yHDjV5bnU??I$dE03$SKOlpb9UP3Kk*bK*!LVJeE%FfS;CJvsrfXe9ND3vRhQdKmbtU3gfZY1uO`t*|H-;es^05` zHhM%8`R?OKvkGb(m3G~vm&I9)@`J>$o`3j^zqYQ^Rt$eUW*nrfJeOIswbSvT<$tK1 z)5XCw5HI=oyD(~;jgSz9=c}QTm-?bgwJYWD{R%%K|Fznn|9bzsqCr&==kssc|E~TI%>tW1 literal 0 HcmV?d00001 diff --git a/packages/bits/e2e/components/range-filter/range-filter.a11y.spec.ts b/packages/bits/e2e/components/range-filter/range-filter.a11y.spec.ts new file mode 100644 index 000000000..1d76a2c74 --- /dev/null +++ b/packages/bits/e2e/components/range-filter/range-filter.a11y.spec.ts @@ -0,0 +1,41 @@ +// © 2022 SolarWinds Worldwide, LLC. All rights reserved. +// +// Permission is hereby granted, free of charge, to any person obtaining a copy +// of this software and associated documentation files (the "Software"), to +// deal in the Software without restriction, including without limitation the +// rights to use, copy, modify, merge, publish, distribute, sublicense, and/or +// sell copies of the Software, and to permit persons to whom the Software is +// furnished to do so, subject to the following conditions: +// +// The above copyright notice and this permission notice shall be included in +// all copies or substantial portions of the Software. +// +// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +// THE SOFTWARE. + +import { Helpers, test } from "../../setup"; +import { RangeFilterAtom } from "./range-filter.atom"; + +const routes = [ + "range-filter/basic", + "range-filter/guides", + "range-filter/vertical", +]; + +test.describe("a11y: range-filter", () => { + for (const route of routes) { + test(`should pass axe scan on ${route}`, async ({ + page, + runA11yScan, + }) => { + await Helpers.prepareBrowser(route, page); + + await runA11yScan(RangeFilterAtom); + }); + } +}); diff --git a/packages/bits/e2e/components/range-filter/range-filter.atom.ts b/packages/bits/e2e/components/range-filter/range-filter.atom.ts new file mode 100644 index 000000000..fd20249b4 --- /dev/null +++ b/packages/bits/e2e/components/range-filter/range-filter.atom.ts @@ -0,0 +1,95 @@ +// © 2022 SolarWinds Worldwide, LLC. All rights reserved. +// +// Permission is hereby granted, free of charge, to any person obtaining a copy +// of this software and associated documentation files (the "Software"), to +// deal in the Software without restriction, including without limitation the +// rights to use, copy, modify, merge, publish, distribute, sublicense, and/or +// sell copies of the Software, and to permit persons to whom the Software is +// furnished to do so, subject to the following conditions: +// +// The above copyright notice and this permission notice shall be included in +// all copies or substantial portions of the Software. +// +// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +// THE SOFTWARE. + +import { Locator } from "@playwright/test"; + +import { Atom } from "../../atom"; +import { expect } from "../../setup"; + +export class RangeFilterAtom extends Atom { + public static CSS_SELECTOR = "nui-range-filter"; + + public readonly handles: Locator; + public readonly inputs: Locator; + + constructor(locator: Locator) { + super(locator); + this.handles = locator.getByRole("slider"); + this.inputs = locator.getByRole("spinbutton"); + } + + public get lowHandle(): Locator { + return this.handles.first(); + } + + public get highHandle(): Locator { + return this.handles.last(); + } + + public get minimumInput(): Locator { + return this.getLocator().getByRole("spinbutton", { + name: "Minimum value", + }); + } + + public get maximumInput(): Locator { + return this.getLocator().getByRole("spinbutton", { + name: "Maximum value", + }); + } + + public async expectHandleCount(count: number): Promise { + await expect(this.handles).toHaveCount(count); + } + + public async expectInputCount(count: number): Promise { + await expect(this.inputs).toHaveCount(count); + } + + public async expectLowValue(value: number): Promise { + await expect(this.lowHandle).toHaveAttribute( + "aria-valuenow", + String(value) + ); + } + + public async expectHighValue(value: number): Promise { + await expect(this.highHandle).toHaveAttribute( + "aria-valuenow", + String(value) + ); + } + + public async expectMinimumInputValue(value: number): Promise { + await expect(this.minimumInput).toHaveValue(String(value)); + } + + public async expectMaximumInputValue(value: number): Promise { + await expect(this.maximumInput).toHaveValue(String(value)); + } + + public async pressLowHandle(key: string): Promise { + await this.lowHandle.press(key); + } + + public async pressHighHandle(key: string): Promise { + await this.highHandle.press(key); + } +} diff --git a/packages/bits/e2e/components/range-filter/range-filter.e2e.spec.ts b/packages/bits/e2e/components/range-filter/range-filter.e2e.spec.ts new file mode 100644 index 000000000..16b0c6578 --- /dev/null +++ b/packages/bits/e2e/components/range-filter/range-filter.e2e.spec.ts @@ -0,0 +1,92 @@ +// © 2022 SolarWinds Worldwide, LLC. All rights reserved. +// +// Permission is hereby granted, free of charge, to any person obtaining a copy +// of this software and associated documentation files (the "Software"), to +// deal in the Software without restriction, including without limitation the +// rights to use, copy, modify, merge, publish, distribute, sublicense, and/or +// sell copies of the Software, and to permit persons to whom the Software is +// furnished to do so, subject to the following conditions: +// +// The above copyright notice and this permission notice shall be included in +// all copies or substantial portions of the Software. +// +// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +// THE SOFTWARE. + +import { Atom } from "../../atom"; +import { expect, Helpers, test } from "../../setup"; +import { RangeFilterAtom } from "./range-filter.atom"; + +test.describe("USERCONTROL range-filter >", () => { + test("updates the basic range summary when the high handle moves by keyboard", async ({ + page, + }) => { + await Helpers.prepareBrowser("range-filter/basic", page); + + const demo = Helpers.page.getByTestId("test-range-filter-basic"); + const rangeFilter = Atom.findIn(RangeFilterAtom, demo); + + await rangeFilter.toBeVisible(); + await rangeFilter.expectHandleCount(2); + await rangeFilter.expectInputCount(2); + await rangeFilter.expectLowValue(18); + await rangeFilter.expectHighValue(72); + await rangeFilter.expectMinimumInputValue(18); + await rangeFilter.expectMaximumInputValue(72); + + await rangeFilter.pressHighHandle("ArrowRight"); + + await rangeFilter.expectHighValue(73); + await rangeFilter.expectMaximumInputValue(73); + await expect(demo).toContainText("18% - 73%"); + }); + + test("keeps the stepped guides demo summary in sync without exposing number inputs", async ({ + page, + }) => { + await Helpers.prepareBrowser("range-filter/guides", page); + + const demo = Helpers.page.getByTestId("test-range-filter-guides"); + const rangeFilter = Atom.findIn(RangeFilterAtom, demo); + + await rangeFilter.toBeVisible(); + await rangeFilter.expectHandleCount(2); + await rangeFilter.expectInputCount(0); + await rangeFilter.expectLowValue(125); + await rangeFilter.expectHighValue(350); + + await rangeFilter.pressLowHandle("ArrowLeft"); + + await rangeFilter.expectLowValue(100); + await expect(demo).toContainText("100 ms to 350 ms"); + }); + + test("updates the vertical single-value status and label when the threshold changes", async ({ + page, + }) => { + await Helpers.prepareBrowser("range-filter/vertical", page); + + const demo = Helpers.page.getByTestId("test-range-filter-vertical"); + const rangeFilter = Atom.findIn(RangeFilterAtom, demo); + + await rangeFilter.toBeVisible(); + await rangeFilter.expectHandleCount(1); + await rangeFilter.expectInputCount(1); + await rangeFilter.expectHighValue(7); + await rangeFilter.expectMaximumInputValue(7); + await expect(demo).toContainText("Level 7 / 10"); + await expect(demo).toContainText("Warning"); + + await rangeFilter.pressHighHandle("ArrowUp"); + + await rangeFilter.expectHighValue(8); + await rangeFilter.expectMaximumInputValue(8); + await expect(demo).toContainText("Level 8 / 10"); + await expect(demo).toContainText("Critical"); + }); +}); From 934d07901f28672c50c03a6e98f48e9b6ff68fa7 Mon Sep 17 00:00:00 2001 From: pavlo poimanov Date: Mon, 25 May 2026 09:55:16 +0300 Subject: [PATCH 7/9] tests --- packages/bits/blob-report/report-beefacc.zip | Bin 8466 -> 0 bytes 1 file changed, 0 insertions(+), 0 deletions(-) delete mode 100644 packages/bits/blob-report/report-beefacc.zip diff --git a/packages/bits/blob-report/report-beefacc.zip b/packages/bits/blob-report/report-beefacc.zip deleted file mode 100644 index fccd03d4183dbe8f8e05518009f85dfe5eac541a..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 8466 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 From 5c31a65febbf2da4965d3cf88a7fb1ae53d88690 Mon Sep 17 00:00:00 2001 From: pavlo poimanov Date: Mon, 25 May 2026 10:32:13 +0300 Subject: [PATCH 8/9] refactor(range-filter): update aria-labels and improve snapping logic --- .../oo-62803/range-filter-basic.png | Bin 29285 -> 0 bytes .../oo-62803/range-filter-docs.png | Bin 222249 -> 0 bytes .../oo-62803/range-filter-guides.png | Bin 31053 -> 0 bytes .../oo-62803/range-filter-vertical.png | Bin 32632 -> 0 bytes .../range-filter/range-filter.component.html | 10 +- .../range-filter.component.spec.ts | 95 ++++++++++++++++-- .../range-filter/range-filter.component.ts | 71 +++++++------ 7 files changed, 132 insertions(+), 44 deletions(-) delete mode 100644 docs/screenshots/oo-62803/range-filter-basic.png delete mode 100644 docs/screenshots/oo-62803/range-filter-docs.png delete mode 100644 docs/screenshots/oo-62803/range-filter-guides.png delete mode 100644 docs/screenshots/oo-62803/range-filter-vertical.png diff --git a/docs/screenshots/oo-62803/range-filter-basic.png b/docs/screenshots/oo-62803/range-filter-basic.png deleted file mode 100644 index f61bc0ccf59e7966506d20eb06e8751551155e77..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 29285 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

21`Z)t^t@Jo< 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 diff --git a/docs/screenshots/oo-62803/range-filter-guides.png b/docs/screenshots/oo-62803/range-filter-guides.png deleted file mode 100644 index a0bfee9e78d253073632262a101ac69cd8286148..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 31053 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

co0bo%%Tb$z<-V^8C>hb!zK zIFbe=pFhb0vJDz+pUmdg3j^09er@akBPBGlnQW8xa z&r5%~#`Rb)&7<8d@e$(XU^(!yfHTX$W|p4Znz#%IE~Q6Dces+TUL!NlT3TG}I+B(E zy0bTf+a|vSF4F*pk-J>?cH#77KSH=9E(5JerSmq4^&OZ0?-hABl`a4T_cx3pQ_`oxND4c)Gem{VMTs83)MbQNs z9z~Ohf}#{2yVS3aX|-iA2k2Aq9WIrJHP!uF=QEpn4q1qQ5Ek(yir60}{iX~c^TI#z zxI!WSXe8&Kofy#n2ULCg$+#2Z{cVXPtdYu>-N9A&;rowuACsr*@!cu33v#djo$vwt z67}Fc$Kv&ljlNcjqLEtpyli=rh)F6AG>wAt{E2UPT0zTdrHq{4{#m~2aM5Q$_cA4H zs|-&om(q$bM*fZKZO))<7Xu)EbG))oor?=Tfa&o+c|Exp6>N77d2^LC9%4{7;6za@;+S>#{YW69>8p5hCy zs5r5A{q~k(nN6{bj-b33JF&S(^K)UbXe@?bY)GZb@KnbQXc~5^v9Ylk?pj!| zy=_4Om3=a>hyubXWjmeQJsOnjeFEfnTzeOKM zIfmY!|M@d3Io_$JzO?kj06<0tv$VF(9kl)R65iF-RdqNx(N;X&5`CCCpfo+vr%6b2 z@~9hmQ8n@ckeQCl1GA*m)WVS$&#r5ztGBr{>~b4|4_1D4&O>A?+~-~0_U9K17k?e? zZ%sLYPKjE3DJ(492%_eRf1IVI@4@KUu)YSR_um<l-sk)i#sUmxY`Oz1P9KO?`yRBZVm_F+xvm3wS#Y=pI{u+W#!;Kmxq7u9ih z9;q*?B<18Vi>^P#Gg4B3hhfJn`GBn7AmNeO8idT|Snn))vr5SwcA#*Fy0y8vdHc!-G!FH`0&E-p?^{3`EVO}Q_-W6>6-)Ou%ADlOR6M3xf~f8xjG4lF4O%GdOJ8~4u?RKE~mRC!-%SY-P4@39E>E1}b!ot+B{ z3q?l=f7NF}8Bp+&9CNCy=kr}GlJ_vP4uT18wK(&~Y5Q8}t7pLB2@4HfNN!VHAk|k<)Ob{^U>@{u-(0Dl diff --git a/docs/screenshots/oo-62803/range-filter-vertical.png b/docs/screenshots/oo-62803/range-filter-vertical.png deleted file mode 100644 index 1128c89bcb519ebd14edfa4a6656894105d8facf..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 32632 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�Ft4C4)^v>leDjbiyy@UgECv9r02q53N$H$fR6j2mkyj4gb7X{Aum( za>_LL1N5uTvCz#7hGF0f873_tr)u&9!PtG_tBmSldH!bk%%EC%NBG1X zZ%T?Rv{sQtPIu~uSGT6f*?+s{!u$%`bX#;pKA#BnbL+j7%7#dvuSUY)!#iz>J6AY0 z_*gc=-+3aN)3Z_p-{0(BcqgmH@{09%es0()h;yHm{Q0%0-00;zMx)KYHdK2fVJ-P4 z&*eGKCbiAQsIN0?OWb?!e3>Vk_p-BAh-Wp6+XXg3ZLLJ9ecJ{Xi<-7XYgfmDkrBtV zW(y8M<}4mFfs4P~nF@;~lG-jfqJ^KUfkl}yU&jY4y#AwYa@a-w8y)S!ME*Et^QVk- zKW4B`06z7Hr z;e506qo=W6#v#-*#Bpf^*~}tL=!qi`5_^}F|LrQ#4~4#vvEJCV6~FAv#~rt@Mf!Lv z5$-LOrG7i9u&AW3=uXDd>W=K8?HKuLna*a0PeTp)2IQ)PZhUQ=hTQ0`l)j*JJ*l(3Vke{3 zJHWv=>=BJrzWmmMX9RvT=nEQhTR>NXwFvR#gC!~{1Ubp2^MfsER;aFF#n^g7)ikpe zKRc`Z;Yz&pz-C)xlxcW4d-nJgnXm4h?pLUv!?o9~Hn!C(8W)xnf^8kh(bGTt(p=6S z3dQ7=d#|lRA9*8KOk3yL>NZ?*y=n0)PIdB3S~?A0T% zXGYWohy@Zz{(v%Rca=gX#1}nb(U7ZS7fhkWO&i{Sasjn3?Tef?9%TR0KKJ}V zkx<2cO{5(BNQF5cs)ZfDF&20;kt09mny#RYnwXtRw<;J6bz30jCCBAzU-!&Gsq40m zH}iM8Nsr%0$yM%NV;fx-Ruc3gnb~%f{aEj>>+GmC)?l68igpNHU4=2St0!nY4V^!y z`aHnXL;aPiwZ|wD#nKZVq??&~lbA;o6OZSRPckjPabU9`LY39!l~V81ir(k)Yt&HM zAihg)*-IYydzLf~&M&Nq)-Em%*}HMYNYsbw>}Df78l87?8ifdQA-+oMjq1gwLGDa!O?yb+{`U?1UTiEef^kukFVw8W z)j9M`8U5VYiuIOSTMox;?q*oVh9y)rL8awxB**H|=HKU$5_PjSFi8g$TKy1x;=aMk zTiz&D4z1@iR~c@$6;JM_y0>)VCkGC_Bpn_V#=&oV{*Cue*2=2bf?I5?$hNGQZBK7h zIo5?)3XCb<{eE9KOVmJUeaTxv;j8vB$`E2EdS+xIMW~-y7hD`D77TmW_1O!3`-akQ z3*)sJ0jr~g)%PiMKbwakmm3FHZFxR`fmEWd7?LEkE)>7`ow z_e8+9RX;oB2-md+XQm0co#Rgy5;+4Y-Jm<^WZ0^4hL6R;KMdme#|{!lj%CbS7P|+n z?~`V&pI24Ml+ldBs~Pm8VZ+fjeE3@#G35KR`$({cK+KPmKk~E4B6h6>5(Xm!8Q6Z-!9Qg5rt~0KMIc|z{uLW< z<($2_=b8FZS0tiqp1qvDBX}bkHCBJ`)igy#>qEgx~Pts?BQ9Rpl$$y}&ZnQCsFmhDA9e2saahd_55-R9QEOtbB>X?Zu5E70KR* zaV{N@`+8v&s-AD`Xjm`SDNOih;^}jlcXEklZ&=5w?v{7n>}q6VzAhyxVu_HAcF1vqMprxtEqSex`jUvkAD~=$NfYFMWmF zNHmj?Hym{;vg^gsaKV|J!7kNHe;EKS;29}ADSO;tbnCu>t@xlC`*BXCppQC-2OS^? z{G02{*>sX}0H6M;@EnA3kx;F4&i#8?9rJ93T`Bai*qbzo@}=setTr8hn8> zOvmZZdsUW`V4Fb_iEkK|lZ9rtv}QEDe@w?0>+t>a*!w{lOb_<8bkxs{qo3BlXO=Hn z?ZxWTl$F&w_eP`gUb=Lmi5ROcG^${tU_2`E9_zIlJBEQX68P=^bPRUNRO&w z?wS@?Wtu?t@tfyQbm!LYCNAOiK790V4!sT#Mib%q=)Qr+)Pv}&Oh(>BVuUBs>N0;hsZTfX`tIGPU%_PcZ_*i;Ff{=gY_7&SWthsX zV-}y>zX`m1`iPY;U_>!qH)ye^e{*EdjN=k-cW)AYy!9d@lN~nkk?V@-k)ASi#!F2E zm6Hq0z19Sf40O^(wsv+Pi#?k8?*W`P(KM|+#L-~7kFo#Tb4CBtKJ+3pUIu07zwN$BY zFQ_l2vuE^~0GQSYN#MxTyuO9Bvq&}$flRkg?Bn%2vSh_>7_EfrDHmhhCya*)jVlHyen7T~T{%@LYLU zh`hWwhE(0J5(4a8Q^DagVJ^K_%m^#_#$t-4G%}?Sx;~|&O7FZ;I>%RH_E=%WyaAHK zh1BZ|nehVG`USd{6Xxw~TeBIwquPeOvi91O#I&6Qbfc5z#Iu4uf+m)Cy;zaQNzn*~ zOI3$Jy@>3q%b5RI7nS*Pyn1RtgS0U!PQX&_L_?MuJF_s=Pl~HOSQD*9WevYf{J@%a zK}ATFiWlF~kKW!JNvd`CuP>ajvLO>*xxI}Dy7N1JAS+aRFK}KS;TjB0PpowM~$Giy%zIm?WHIh5%8HCGA}Lf?@&(2*z^T7dDpSqU;)8EeL#&)kn59L6+>p6^ByxF62>wZh$gOh5c@$KwojmUzsxpe(poEXKQN_2dU=4ljNSH%;$E4X<-_qzVixegbqi|!7T2iu*~4?lcdPYvZLf20m?@JnNk$A~%%0Cu ztV^$FcTz#n?TiH@_I4dDmuK}amf9x1h!t}ylE`8qn~u=vkgn`UYfBjNQXCj(V(z^& zASJ59U}`kl!yMv1{{#0f-&xep{aP3Z=Nq!Oi45w!*_+f=d{*OJ;GCnQSm5V1xVfWR z@dbfpTb4&bdxTs*r4_ns8+95`LJpKh={vsY46Y^>N6cyt3Mo=a;0#xF7W(MHIRVV> zc*{&-w5@2!vaO)sFXfCDjedr;L{)5AzFTc6v)WOR#vBtVrK#I{&pp?UfYmHH=lrzF zt+eEnS@Q&A#g})ekQ`CPIJvzra=n*}?#q=6cW3equPefdL( zJ-EkXsE~X5uDey`GVed0G>C{rg zV$?4Gy#uYhP4Kj`;aEyB2X>(RWY*zQr27xLut-_WbE?*eXN7C0%16KCMb^vW?tok0 zY8BPW`r_0%!m1+mL6=(#rT8n7`2U9BpSjW8aX6vE8RapB!CT+!x0}QJ-*|OZ!ufb8 zOG}WU*n$3TMCwJs^S&ZErRKdkIX+GQR(W4XksO-3z&O)jh*U=AY2xFZ#I;N_N|?va zPkYHjji56LXl|falCH*>j|=IiRELakHK^3M1Q&blI%EG`MrjhQINjxCyq_cQm@0l( zcEC^LO6dhU&2HbNob~>J%iU}q;}m1q6I8r?8$(`2O}(seb-8gj$PpQ#nAM3NeNC4= zyMEt%f6?e+>Yoh*hZ^X^gRp%k5uGl4Ou6Mg4lj(au{l2uDO(+FB9o_GLd1G{L6v#= z`6-smtqH@`32V5ZNyHo7&DKg#UW)OhyCI&l%C66syplRA0=2kZWu4TPqxtj;Q3)hd zFl~R(l})HlL2%B?t8gtqPktp|;2<3f-2^ zZpF3BBM(nNh)B1Xk`HRE4f(}}vqF$JK3quFC?W=XX}KUUX@X3DW)6>HssxR5$=-c` zn)_Sxq())+uZbEDkD~MMe_GTcJhiOhW?CyV2B(=j&yMczF@XQ%0=gewQ-K#*%v?!M z+nq1(3Zim6OMnHxKHq);H!aj;jUYy*ziwRS?o3HhE_Jgu_tCMqidkb-J0#opI&TR- zzr;IY>1oEn92|>om{3zecBYw}i2(nvC3%DmefVh?kNZ@VUa&|RZ&^4T@+$5`oo9b= zEoIHH6=p3e?m0DGTpjA%RoPW3g{d!DuJtCMIK+fump$1<)6>$8FMXKY&Bw^qV9Isr z>xvh$YA@h3Tq<(T#NlR_*McgqUg`-Z#DF}(RmM^Q52gkxYXg=|o2s>Iy_b4)?~JVO z(uGHNDFojJJfJo9JAJo^4P&Ugnwk%-ZH?$+A6{T@C;Ycj31F`-^6jAG54H6BvF&pa zjE?==`#)lm)No8yb%+E|gk%w;tDd34_)bQa*~(e&^hd%bAaiW9?e)nLam9V=B%A&@ zv_N{b=lmvniCDzVc{i+aO|v|xQ?Z$e`~t5b3us#oCZ=|`AD+i?xqZLAIJ#@1dMN%P zl?buGxykC4id~D3oxC!l{PrjqIhz=1lN#oD0@5g+Md}p`BAA|e96Gt%vIf?2MJJDJ zj0q|35AW#j8O2S!9QwXPC8{M=@A%w&*|`PM;dU|!m~Kz3i`;m#`aQEE=Mk+?(SNyV zf@9IKy3Y&M4OiT2Ul6ltJIeWdU-e7QyJyVCL0y(A*>;4-5;1|HRw&SZJ$sb0#Bh>oKU3sXw zcEF|qd!yyUi1;?K2}im4`o*m*p&DxW8o!j^xmX_pY&uQuMq|r%UxwviqPka|lK1qB z*gqEodn?&zS)Cm^cYmz!bZ!gRh~|R7Nqayxe8?vAuvy=|Ul3L8z7E4%pqnR@(59(E zgZ-hh^-YpPEiGcdROc>_h%0EJ1Ox_y?Jo%*D3UXpr=>w&v8JKCYmg&-^*Rh zSrzE4B|Cb~7`}ne@rzd6o%&IK@*v9bFj!{t;n#sm`IGyteP_p_2i@RoOF+p6)u{zT zsUtJ|!&SA3v)xF*OG*CC>aAM1;_e^WsEkBaa@Y!X^>;mHQQ*d>P2)AO=tsNvyN-Ms z-QN6FM%F&U?CPWK>oUsSe%IKrdR*(OWf&+dB<=K^!q$Fqqa(FX3f#U;GjufN<#?s7 z8duzj&TP97=G)d%9!`E|D^XTASRaMU7GrnWn}OxqC8 zW?&Ot(iwKkx;}F#!S^dyw*6)gn6i)Go`VOG$m*u4moH^-ee1h~kB>EWzN>i)eB*uS zs^nqes6UvJe#O(A^d=6_B`_EU(-Y~AISn%N#*C^D5JZuN_r#|{6vQF);? zSB#%)P}){UQy@r+wOvPZc68su!SPecXOdZ&fIVn?8=PsfG#I=wYEnC|i2A zB9c$DbnjXiytb@I(4RUG&0e-L@POl0fS%927pQJTOGT}uY=B55xuiO#n2)y_9t1%K znE8>y2Z^Nt?fky^Tq~+o&{8)7HmEddIyl&e)pLwnD`|vebX`2)8KEkcKv)^IyxfS0 zuQq6idinDB?V=-PP0J7$_%Jc11)Zt)E8_K9ac4Tz^V5 zIM}0s?D(8G0(e1kzprReDY~1x-t_QGPA4czs~{AkL%n{pU65D0`uE)0#{3yR|94j6j8x8eP|+H zG|cKoG7fleV7w^dPHD_SzluyWxTR~!zM_R!nq6U!9j;X&{jC+h8=XaKA9TZ-oA(h~3&WVJL&1VwvEbbv;1uKaY4v_= zRsaPTa^~M7SI!Jvr%f3ZzKxYb%Mtyj=GZMXD2v__L#eu({ZbY!(Cm^?ud5V-*ypfk zT;}pEyUHtH_1d53oq`MoA(j)REVNuJiKffUiex|=Wj6PV*~L!tS7L7a+D5P3fUGpK zi!Zws+wJz(?czq!;+3Kylz~QE;S3kTPv=^-cajDP-`74Cgk{%Bzn3+#$A3cnNh*J>v)xZv1;A3#HESZR){~l|HW&OL6Nq! zbFwoYG=c68wW85d7FFrYLt^OO*nv|>L*lC6Y9bF6zn9M- z9d=*ZpJ0dCoe~P>N`sGd@3aD-l}jej2Y$&}YhP9jUOw~qDA2YKyQNg>+qySNj9&Oz z2|9W9!5)~>J?chTnFv}-oLZ=sk%=7)_AScESw>BPYImfddjq420Z7Ga*_`e{azmD} zKjg?{wE!kdraN0|{He39K%jMuNI~sm%066sO(jZhESS8f2wf=Vp%E&(ggMQFW9R+U ziWX*5+-QV2=*B=71{#3D?KH`@1Te zco<`Yu5It;#nK|7EcdAF<^p7Dua5jim5sn}>1XKvlg%p^2WnQN_Q{o)KoXI*2Bu+X z*g&4KQA=bTbaoL+0Pi=6U8j}LG-dw%d*-BNaz@7QQZe7|$elG>A#D{}l}@R|lmz{n z2W5tA^3w94-9F?kT1!0dq4eU>jkjLL`y8Y5ZNie6sf`e*x9@)5iU4E5IB8|gVt<)N z1&{AOAsnSgIZq#yv7jfRK?_(Y5l&4TrMZ?^Em3j_s}o?85X@9L51TrTgds~|b_s!p zTX51H%#kH5Pf%C8Fk4cz8Ck6-FL<>aLK|C7#|l&63NGu4-?m&gWuf}mqw3H-Eg(R$ zR8y$hv7$lcNo%wzN(4;fI5X$d9jEB5zMhkXFGIomnd~h4CuQY_n^geJmE&T6|us5?p24$RT2 zG|n@YT^-|cQmIVW@--F$8|t)I>VLK-@Ft1F%w;ketUzLuVMxE?u-})5FVyN!?tIlt z@3e89dy_blrYoJwsgU-TK2Ve68MKC0R|A!&L|30stH`+iMJrmD{lV^FFKv}Ju!DN0 zHmC5LxI;V)+ZbJtQ=TDj!rYmGe71ij%_BP!`N3$pJCf$7xNYNpJiZ@zvs_9|6wCoG z8sfRqKNCPQkpUIGs=u49esAobr;z^R{-;XMD5g`;frY%M#+X+bWRc&(Nr61IPj=D2 zDL_Yzif25F9(K;vJsUb2?g^Q-THdamj+bV%*SRMZFO(S8V}qdGC;Sk5?lyN*=^Rhh zoj$G+zy7d*Q>9$AxGW5kJWo9vaoyOP?@Ju-TMUT^qHd=gEggpNVvg$Bog2uJ_U32l z-wfPUZE7%k1?AJ8o~m#?{%kOOM!p*dw=Y5r(n2OeJ+pN=F7tJlKYe$_c<20N_I7V2 z&5FZXsMZAse$dX#Cr<^Qi}KBPnZWjMd>A*fP60%r$IzJaNg1y{GXCkk4{% zi~qj$Y~kmo5}!Xc2x_Adc`tBl%>H-Dixj89=FGFUWq}CzcIWe+lriNL#CuebX!&*w zEU_>xixZVDXgK(7L;~UuJGfwwFaNrXOMILDny{T0u)~0#9Tk+kdq8Y=nP`s;#At$M8FV_rm>j?)398R}NvP$Jquji9!QLak-)yD=xQt z>!*WVHXLqyO^w)G|C^9m^X^TB|HHZAmW`;WMlMlFbZs4yp(-ZfQnk!QaPL6DPMH{T znD>dGw(Hn;+@N_CYQ+UQsj4$leI4vdVVunA_;O^F&~og(%$ zlw)2;5v8>r{4zhtqvM~i=p^kIMzv!zDl)0-bc^+HI0^{HN)@)TrGfAk~NEZd;)vyTs_ zDcPRX2;>H()E;_iG~|LH-0#~GM>?72>c$g&a>3|-Mf=Rd!wWOo%-ZHg&~KfP!Fv_u zH6x@>P@JnolGbMykwN%*@j> z6+)~LXC{bCUy(C7ta-q|vQfc!nckH4xndot$KO737s!q93DbabA*Il26pI4E~ zKkDCU6L}7gdCMN15*4&&)CP5#sFgGnn^4}U_6VC>Ld1LXk6KeUXYGqOFTOdGehAoIL#_1}Dzy*zP0j5>U(AJ?hSh_I#%y zi8|q;2r_jMZ>z_uBvpqc)}17GX1cAxHA`z6oI&Wk-tkx`NM!)#on04j8-NGQU@d17 zpEUlO4wvZ}R{Wc4)zG6`$Gt_w=ov=t^>;xZ?|RcOX&wAdZyl1o#v?=%SmZ0AokT1Jn23w9~c z)aeri^ZDmys~Q&uWj?MLF;gga@2P1hOl)fG*STIGU{G}zL42i-8Z)!r-Ph&tl6jSb zXpGi_4zicgXYaPuI!51E@I1qF!SQM6qi^}*etbR^8{Wzrb^1svwwvN-M#nc>gvVCP z&-nB>>T?)Z>4k^q4Cm*rfYv&c^ zQc}pHIM&aY!9L|FVIluhI&huCw#A&dVdZFyo>` zf;EC|=5?g3)vCg-ZuMg~ktW@9hZ(L?O zejIs4>4wQ@h{IibUC};^h-odZvW9MZQ`xbBmLI-3D@E{{-;c=c9%*<9IDSyC$RX{&~mCS4W+-hkp(HOe53n9=LdCtlIL2z&6dVY3FK~ns*201 zyR3j0-ncYxWR&VEpTQwDAtH}nu}C&C<4Y17>tsXkf!55P1JRZ2cu7gW$~ZE?S>Lp) z-*=>ab)>%uDs*78c!8?mS50c-!`8RcxLb0=+=Wxr2~Ch?(T!VsLu#>9IBggzL8Os( zG}hP`ZVXuzOj7Hmk}!K1QWvdTjT`z|IqNqq<;=LJZz;i^U$}LCg*HAw#?Bt3{V~njDy*^6Xr-GSTfyes2c9A*O4irF zmD$IrE%qQ%y}kH$poe#EQ~eBB;-3{QMxqzg!$G5rvh(Urax}NTPjP-lI*>*6Sjf?uBxl)h^v9{OWF^ z#zCn%hdGNOMFt7YbFqCVL&Ppe7TQHT+10P)D2`s=bps;Q5sw=^Sj9dp z&-+a&x3`9F-ehvedSV@y8q}|u@_4s}Mp29l4)pZ(>89)vo}G3ssUTA(n{n)&`&-7d z`N18hf0NIBk?Yr#R}w!`tVsLz#AoAVMn`$|9FG2El&xdK_ zy2wqikPQFH0R!Gbpxi3FIstjd+O=SSp(eS_P-7e@^^T9=ofx)Sz3*-H_T{E#_BX0b z;=awwFQ7_|;-q#J{uO#jvUi$@bXwwjBl7G_qNjfbfvK@3?R3qDi(fJyhg9f^_Lb4c z|8Rsa*njf<5T2q;IOq6`O;sjG_QqBD7YW0>funfH+%We3^{m=>p$Ga4a8Z;e)ti>e zr&J2>B5od&Py{iQcHk#BCWe>3R?a*+sCG0l$bQ$>aq^rQbql(wxMzUP`oOE^IQ7C8 z3pVz@`*^)8lN6@$xZyBWSlV?KXZ9_lrUvZi%LE9x%HCKa|&63-{xd#@I>~E6tm3!+OIrP3IreMn*9lsV9 z`abHv=4oYR6zzwN63J!UB<(w|lF-L!uL^4(+bk=+Wx_TMh|z!QGpnrqsU2~&f9<;#vf_534II!CZZ}l+LZl8WxtYiSzPG{O_(VVw z!7hMW6|vtz1^ja19~!r+C|v1vaB2b~Y{bSe(kZcw6?slwqN1TGQSE1*0(Ui~p0=;( zPk!dp7Ap*+H&Q;a!)}3vGhgD&*J0V8$;%>3P3)HIgy4;jJmiYKyKcA)L)Yo{xZEw6 zSpZ*Bi3npPj*NYH5a`15rwraiFGti*!Dy!y!4|s@r9BGZuGr4Hq=VLcohCyIQvs{_5-nex8L2`-ZDfO>uXpxz#i;*N9x|w(dRmaExi!W zWT(DQOr(|(r7mGEFK5dz|Js~<@#C=NCFR?JE6NpCP4Rs&KNotceVLd{ir|NzYMsxM zN{G{!yZi17r**pKtq-jNWVdsaz6TL8ZO;?SLL-UVC!Q@KgS#7Q8tmF~`o(5{KJ?T` z3M2%m>227QsxUQNKd%nc^ZM{HplZYK-?l*ors)l?uJ5%w0=@RpXPkM_L-@fVq+KP_ zzN=pRNig3}4hToA?{)qBadL_faguMa=ERBuh`G9>2+(TA1Ah+8mJAo45e&U$0X)nQV@asEncF#i8EIPPBbioe;j?40v&T zax#Lk;2Ln|n1(Ike;AbL3WM0*(f{ro5*VHs9Ue18iu;6I`Bt^5*Z8H{w`dtfHP{)s zw5YO?tpO@X>m2LE3MR6H;6_n0pQ18rXZf%H>hyn51muYh|6f3zP}1~_ltAt&*yi-r z2du%tNZy;zd6o7~wAkzD*pv;#DfW$`J4Fu|;``u_2sH zDn>I`bVv*lnlRV{)tDNenzEFWHLTJ%F&Db5!?#DCkxh+%rPeKwx!)W|EdWpODI zRS)%zp#hI~cK@!%57bi63fyS~`b8b%`M#Wj2(T{g+qm16aC)!0&_X6Bcf)?M4$|77 zWGE#mYY*B<#dc(|P3+IPg^&jn>D5*lcH#`6K(G&;E{AS!(E1lX(aN^;b>yf=ip>yr z>)7|$_ibMNS@F#QN-x!29HXyDcVB%>7ugAfb@)OkS(5-J5aOBOASgZ3|8(sB4h;?c z=Qo(&>vF|8zsCZWPWRmVvf&^YsX^T%NFsw7Xjp;YJLTw66$FBm?`-SfPse~JaD)|NfaX7HvrrM=h;p%=({N-d$mE+M`#u9dWr z#;PB#_k1Ja$9MMv@$*Lrn|j=Dpog^#KFm`N&Wot#J;o`WIGi@v>t(LeKzZ^U#{dr? zfw?;j9iP5jM_fr3OKRZKfC{P~^t?5GT+Mkl6^we2dU$0*$6Oh9i9fl+_SD>!D)So< zHSdsx?}7{bo-j|OyE$IU=zAEbb-ds@_$Cc8+$GMiDSder3xLpx}E>#Pqd&3ZV zJ)ks@!W^{hI^1w_mHKwQbLBW{kkycj+{RONF#-vi?Z>cO|Zr$tOmsDS{`M z$E}lAYD{_l>aa~(>E${44-j8uHs{majG#Wg++Q4OfFK#TuefqM$j7I8V>oT$p;tV0 zYat=tGh}}rs4+Ik7h!&2Egu|4*$BV%&t*kMH8fc-f7Sk()Li2km}th@87Y@VltGzn zPc_I3CXvxGW?|t^K`u-3{LWa9>YN5IWwd=3N9E!sds=<=Qj%LQyqSY>8FpO*4qp{= z(cx`CirDTBtGEW(zKZ)UY~N2NK}6EW-LH5jeN)vg^26k)t69Q zlx$uLaS{P<8g(^nA|%K6?Y{}6I0iEeJdy9ytjI<+vb5Av{cL6^qR=W&#)^^l)XG73 zLAKOjphwJ(k}s^lp--}YzM@dVx8OD0lAkiyydOu;7VEZRsJUH?C47kWs_RUB z1d|^A$-^``)P(m|t-JWTI4bc<|Uq9=k0Z)gf7d7|`g z+BAu>>n%jqvjRP!>ZR*XboaiPwZq^Y=Oe(E@n)t?A{XrJ+_c}$xB3)NW!-n404i+4x8XVT`gRw~ggFbqb^ z#EJxe-TzdbvjjBFGHL8Ry>Y2?u=ARiNRpF>F|zG;8tS&p(^DTxntEQwm}jaBXZgV7 zK&!7C!%|EbC0R7mjZ0L2nk4a!T42&K{`blQj+x>E9(e56Bb{NZUq8Sn4BFDX>_inQ zCNk#s)k!ELsk~t}$lw`DyZ%W>{0G{U+X>=6MXG$H`OkK?Df4lM0cj z-S4FA#CI0{0nU6G@LAXA2@89?S{#?pT&rnV&=;DkPZTllQiXrUwN}Aex=lKy&TE`u zE5~T0k#MMCM{-bznlc>NUfO zu-f-El6NfRi=u+u^hMCVY*P^l7WbApSZkQ<{=sRU^&KFq4i*62BVlPitZopBo}_-k zD!E5@2lw&R?`(Ggx|3+J1c!&Iu?ny%NvGh=uWAfhlvc^kW6OfA9I4VqoQm7)BUfoBe7D@^0*F-GnNXaP=_5gj*g+oLS*V?9z zv`3!>+E)Bb;-?>^s=MFS4{cT zSLKbq=?+0Q)3@tj5k%Gs*bB+<4%sVw{#4z(T16wa_@=1YY>6u5*^1=(CA`ayQH4Lg zJRzZ2Nb>;&k)|S`6hT_(MG+LFC`jla z(g{U+M?pYDKt#GU5ilaXw?sfdYUnLM=%FQ)Kp+9acMy2Ld+$HrT6f*M?t0h#&R;A} z&fc?U&zUnbd*(MF!E}Ac_(+FUp}zxE1TucWDmCR3NfZ%1^QAS zfKug#&?RQTQbtpl4-S2*jhpC?ufty*x-&C6&`6U9e^=}ESsF5V%(3-rGH%aVH(YGL z`sHOUr|+IC2epQVG7YNP513`}MqjEsTtsz|u23CX{L>C&FkdeQTVqgOF!8Du*Hy{$ zY0&|z#~v;)z92o1NgX;@o5x_X_$j@^5$;!C{zAUD7=JaivAk(~>%xL-xfS!0nz&d; zw-Q*3W#$@u`t~Q6>M?XU%-B8~sq;DcdskmC5;gOZ+I?r(MKl`#+soGt%o@&lizX9T@|$L%t0 z>lXoEdtm+AjUc+K7gcYHr>zC>#cLFWIExY$d}G#@3!2zgQg!(&e3=R(CkDfBY7R-^ znOar4Bga2~o>2a3X5VUZr%?T^4r9F14Hk}7^HS>OF9N!T)NX){$>Ilp${!yrThn9s z)P$ASy#7r19hqn~m0FO&!NmD^2FdyA?7XU!*6Kqr+wuO0dy0Bh@#B$>OC!Z*OyW9u zzZO*I4GyP%FW3tP^n7_WqB~zx{;$yLLW){fz6V^sqH5(dKsz|prD<

C#%8$F$7q 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 SG5tp!KYE~{RB+EM=sy6H!O4gK diff --git a/packages/bits/src/lib/range-filter/range-filter.component.html b/packages/bits/src/lib/range-filter/range-filter.component.html index e0f6a62c6..944ba238d 100644 --- a/packages/bits/src/lib/range-filter/range-filter.component.html +++ b/packages/bits/src/lib/range-filter/range-filter.component.html @@ -124,8 +124,9 @@ [attr.aria-valuemin]="min()" [attr.aria-valuemax]="displayHigh()" [attr.aria-valuenow]="displayLow()" - aria-label="Minimum value" - [attr.aria-labelledby]="label() ? labelId : null" + [attr.aria-label]=" + label() ? label() + ', Minimum value' : 'Minimum value' + " (mousedown)="onHandleMousedown($event, 'low')" (click)="$event.stopPropagation()" (keydown)="onLowKeydown($event)" @@ -150,8 +151,9 @@ " [attr.aria-valuemax]="max()" [attr.aria-valuenow]="displayHigh()" - aria-label="Maximum value" - [attr.aria-labelledby]="label() ? labelId : null" + [attr.aria-label]=" + label() ? label() + ', Maximum value' : 'Maximum value' + " (mousedown)="onHandleMousedown($event, 'high')" (click)="$event.stopPropagation()" (keydown)="onHighKeydown($event)" diff --git a/packages/bits/src/lib/range-filter/range-filter.component.spec.ts b/packages/bits/src/lib/range-filter/range-filter.component.spec.ts index c63f0854c..8ef2a2f70 100644 --- a/packages/bits/src/lib/range-filter/range-filter.component.spec.ts +++ b/packages/bits/src/lib/range-filter/range-filter.component.spec.ts @@ -1,4 +1,9 @@ -import { ComponentFixture, TestBed } from "@angular/core/testing"; +import { + ComponentFixture, + TestBed, + fakeAsync, + tick, +} from "@angular/core/testing"; import { By } from "@angular/platform-browser"; import { RangeFilterComponent } from "./range-filter.component"; @@ -18,6 +23,7 @@ describe("components >", () => { step: number; mode: "range" | "single"; disabled: boolean; + label: string; showInputs: boolean; debounceMs: number; }> @@ -43,6 +49,9 @@ describe("components >", () => { if (overrides.disabled !== undefined) { fixture.componentRef.setInput("disabled", overrides.disabled); } + if (overrides.label !== undefined) { + fixture.componentRef.setInput("label", overrides.label); + } if (overrides.showInputs !== undefined) { fixture.componentRef.setInput( "showInputs", @@ -222,6 +231,41 @@ describe("components >", () => { ); }); + it("debounces scheduled range changes and emits only the latest value", fakeAsync(() => { + setInputs({ debounceMs: 25 }); + const emitted: RangeValue[] = []; + + component.rangeChange.subscribe((value: RangeValue) => { + emitted.push(value); + }); + + component["emitDebounced"]({ low: 10, high: 40 }); + component["emitDebounced"]({ low: 15, high: 45 }); + + tick(24); + expect(emitted).toEqual([]); + + tick(1); + expect(emitted).toEqual([{ low: 15, high: 45 }]); + })); + + it("cancels a pending debounced emission when an immediate value is requested", fakeAsync(() => { + setInputs({ debounceMs: 25 }); + const emitted: RangeValue[] = []; + + component.rangeChange.subscribe((value: RangeValue) => { + emitted.push(value); + }); + + component["emitDebounced"]({ low: 10, high: 40 }); + component["emitImmediately"]({ low: 20, high: 50 }); + + expect(emitted).toEqual([{ low: 20, high: 50 }]); + + tick(25); + expect(emitted).toEqual([{ low: 20, high: 50 }]); + })); + it("does not emit rangeChange when disabled", () => { setInputs({ disabled: true, debounceMs: 0 }); const spy = jasmine.createSpy("rangeChange"); @@ -340,6 +384,28 @@ describe("components >", () => { ); }); + it("keeps emitted values inside the declared range when step does not divide max", (done) => { + setInputs({ + min: 0, + max: 10, + valueHigh: 6, + step: 6, + debounceMs: 0, + }); + + component.rangeChange.subscribe((value: RangeValue) => { + expect(value.high).toBe(10); + done(); + }); + + getHighHandle()?.dispatchEvent( + new KeyboardEvent("keydown", { + key: "ArrowRight", + bubbles: true, + }) + ); + }); + it("emits low:min in single mode regardless of valueLow", (done) => { setInputs({ min: 10, @@ -411,19 +477,26 @@ describe("components >", () => { ).id; expect(firstLabelId).not.toBe(secondLabelId); - expect( - firstFixture.debugElement - .query(By.css(".nui-range-filter__handle--high")) - .nativeElement.getAttribute("aria-labelledby") - ).toBe(firstLabelId); - expect( - secondFixture.debugElement - .query(By.css(".nui-range-filter__handle--high")) - .nativeElement.getAttribute("aria-labelledby") - ).toBe(secondLabelId); + expect(firstLabelId).toContain("nui-range-filter-label-"); + expect(secondLabelId).toContain("nui-range-filter-label-"); firstFixture.destroy(); secondFixture.destroy(); }); + + it("preserves distinct thumb labels when a visible label is present", () => { + setInputs({ label: "CPU usage", mode: "range" }); + + expect(getLowHandle()?.getAttribute("aria-label")).toBe( + "CPU usage, Minimum value" + ); + expect(getHighHandle()?.getAttribute("aria-label")).toBe( + "CPU usage, Maximum value" + ); + expect(getLowHandle()?.hasAttribute("aria-labelledby")).toBeFalse(); + expect( + getHighHandle()?.hasAttribute("aria-labelledby") + ).toBeFalse(); + }); }); }); diff --git a/packages/bits/src/lib/range-filter/range-filter.component.ts b/packages/bits/src/lib/range-filter/range-filter.component.ts index 0d0b3abfb..7cc34c824 100644 --- a/packages/bits/src/lib/range-filter/range-filter.component.ts +++ b/packages/bits/src/lib/range-filter/range-filter.component.ts @@ -14,10 +14,17 @@ import { signal, } from "@angular/core"; import { FormsModule } from "@angular/forms"; +import { Subject, of, timer } from "rxjs"; +import { map, switchMap, takeUntil } from "rxjs/operators"; import { NuiTextboxModule } from "../textbox/textbox.module"; import { RangeValue } from "./range-filter.models"; +type RangeChangeRequest = { + immediate: boolean; + value: RangeValue; +}; + @Component({ selector: "nui-range-filter", templateUrl: "./range-filter.component.html", @@ -120,14 +127,36 @@ export class RangeFilterComponent implements OnDestroy { private readonly liveLow = signal(0); private readonly liveHigh = signal(100); + private readonly destroy$ = new Subject(); + private readonly rangeChangeRequests$ = new Subject(); private readonly cdr = inject(ChangeDetectorRef); @ViewChild("trackEl") private readonly trackEl?: ElementRef; - private debounceTimer?: ReturnType; private dragPointerOffset = 0; + constructor() { + this.rangeChangeRequests$ + .pipe( + switchMap(({ immediate, value }) => { + const debounceMs = this.debounceMs(); + + if (immediate || debounceMs <= 0) { + return of(value); + } + + return timer(debounceMs).pipe(map(() => value)); + }), + takeUntil(this.destroy$) + ) + .subscribe((value) => { + this.rangeChange.emit(value); + }); + } + public ngOnDestroy(): void { - clearTimeout(this.debounceTimer); + this.destroy$.next(); + this.destroy$.complete(); + this.rangeChangeRequests$.complete(); } protected onLowKeydown(event: KeyboardEvent): void { @@ -150,9 +179,7 @@ export class RangeFilterComponent implements OnDestroy { next = this.displayLow() + action; } - next = this.snap( - Math.max(this.min(), Math.min(next, this.displayHigh())) - ); + next = this.snapAndClamp(next, this.min(), this.displayHigh()); this.emitDebounced({ low: next, high: this.displayHigh() }); } @@ -177,7 +204,7 @@ export class RangeFilterComponent implements OnDestroy { next = this.displayHigh() + action; } - next = this.snap(Math.max(floor, Math.min(next, this.max()))); + next = this.snapAndClamp(next, floor, this.max()); this.emitDebounced({ low: this.mode() === "single" ? this.min() : this.displayLow(), high: next, @@ -225,16 +252,12 @@ export class RangeFilterComponent implements OnDestroy { const value = this.eventToValue(event, this.dragPointerOffset); if (this.dragHandle() === "low") { this.liveLow.set( - this.snap( - Math.max(this.min(), Math.min(value, this.liveHigh())) - ) + this.snapAndClamp(value, this.min(), this.liveHigh()) ); } else { const floor = this.mode() === "single" ? this.min() : this.liveLow(); - this.liveHigh.set( - this.snap(Math.max(floor, Math.min(value, this.max()))) - ); + this.liveHigh.set(this.snapAndClamp(value, floor, this.max())); } this.cdr.markForCheck(); @@ -249,8 +272,7 @@ export class RangeFilterComponent implements OnDestroy { const low = this.mode() === "single" ? this.min() : this.liveLow(); const high = this.liveHigh(); this.dragHandle.set(null); - clearTimeout(this.debounceTimer); - this.rangeChange.emit({ low, high }); + this.emitImmediately({ low, high }); this.cdr.markForCheck(); } @@ -265,9 +287,7 @@ export class RangeFilterComponent implements OnDestroy { if (this.mode() === "single" || distHigh <= distLow) { const floor = this.mode() === "single" ? this.min() : this.displayLow(); - const next = this.snap( - Math.max(floor, Math.min(value, this.max())) - ); + const next = this.snapAndClamp(value, floor, this.max()); this.emitDebounced({ low: this.mode() === "single" ? this.min() : this.displayLow(), high: next, @@ -275,9 +295,7 @@ export class RangeFilterComponent implements OnDestroy { return; } - const next = this.snap( - Math.max(this.min(), Math.min(value, this.displayHigh())) - ); + const next = this.snapAndClamp(value, this.min(), this.displayHigh()); this.emitDebounced({ low: next, high: this.displayHigh() }); } @@ -389,15 +407,10 @@ export class RangeFilterComponent implements OnDestroy { } private emitDebounced(value: RangeValue): void { - clearTimeout(this.debounceTimer); - const debounceMs = this.debounceMs(); - if (debounceMs <= 0) { - this.rangeChange.emit(value); - return; - } + this.rangeChangeRequests$.next({ immediate: false, value }); + } - this.debounceTimer = setTimeout(() => { - this.rangeChange.emit(value); - }, debounceMs); + private emitImmediately(value: RangeValue): void { + this.rangeChangeRequests$.next({ immediate: true, value }); } } From b223de8ca52df36e603cf18e2290eca116430509 Mon Sep 17 00:00:00 2001 From: pavlo poimanov Date: Mon, 25 May 2026 11:39:01 +0300 Subject: [PATCH 9/9] refactor(range-filter): simplify debounce logic and improve subscription management --- .../range-filter/range-filter.component.ts | 57 +++++++++---------- 1 file changed, 28 insertions(+), 29 deletions(-) diff --git a/packages/bits/src/lib/range-filter/range-filter.component.ts b/packages/bits/src/lib/range-filter/range-filter.component.ts index 7cc34c824..71734b9e1 100644 --- a/packages/bits/src/lib/range-filter/range-filter.component.ts +++ b/packages/bits/src/lib/range-filter/range-filter.component.ts @@ -14,16 +14,17 @@ import { signal, } from "@angular/core"; import { FormsModule } from "@angular/forms"; -import { Subject, of, timer } from "rxjs"; -import { map, switchMap, takeUntil } from "rxjs/operators"; +import { Subject, of } from "rxjs"; +import { debounce, delay } from "rxjs/operators"; -import { NuiTextboxModule } from "../textbox/textbox.module"; import { RangeValue } from "./range-filter.models"; +import { NuiTextboxModule } from "../textbox/textbox.module"; -type RangeChangeRequest = { +interface RangeChangeRequest { + debounceMs: number; immediate: boolean; value: RangeValue; -}; +} @Component({ selector: "nui-range-filter", @@ -127,35 +128,25 @@ export class RangeFilterComponent implements OnDestroy { private readonly liveLow = signal(0); private readonly liveHigh = signal(100); - private readonly destroy$ = new Subject(); private readonly rangeChangeRequests$ = new Subject(); + private readonly rangeChangeSubscription = this.rangeChangeRequests$ + .pipe( + debounce(({ immediate, debounceMs }) => + immediate || debounceMs <= 0 + ? of(null) + : of(null).pipe(delay(debounceMs)) + ) + ) + .subscribe(({ value }) => { + this.rangeChange.emit(value); + }); private readonly cdr = inject(ChangeDetectorRef); @ViewChild("trackEl") private readonly trackEl?: ElementRef; private dragPointerOffset = 0; - constructor() { - this.rangeChangeRequests$ - .pipe( - switchMap(({ immediate, value }) => { - const debounceMs = this.debounceMs(); - - if (immediate || debounceMs <= 0) { - return of(value); - } - - return timer(debounceMs).pipe(map(() => value)); - }), - takeUntil(this.destroy$) - ) - .subscribe((value) => { - this.rangeChange.emit(value); - }); - } - public ngOnDestroy(): void { - this.destroy$.next(); - this.destroy$.complete(); + this.rangeChangeSubscription.unsubscribe(); this.rangeChangeRequests$.complete(); } @@ -407,10 +398,18 @@ export class RangeFilterComponent implements OnDestroy { } private emitDebounced(value: RangeValue): void { - this.rangeChangeRequests$.next({ immediate: false, value }); + this.rangeChangeRequests$.next({ + debounceMs: this.debounceMs(), + immediate: false, + value, + }); } private emitImmediately(value: RangeValue): void { - this.rangeChangeRequests$.next({ immediate: true, value }); + this.rangeChangeRequests$.next({ + debounceMs: 0, + immediate: true, + value, + }); } }