mirror of
https://github.com/home-assistant/frontend.git
synced 2025-07-24 09:46:36 +00:00
Fix step any in number selector (#19077)
This commit is contained in:
parent
d762a9365f
commit
325ad6f721
@ -43,6 +43,22 @@ export class HaNumberSelector extends LitElement {
|
||||
this.selector.number?.min === undefined ||
|
||||
this.selector.number?.max === undefined;
|
||||
|
||||
let sliderStep;
|
||||
|
||||
if (!isBox) {
|
||||
sliderStep = this.selector.number!.step ?? 1;
|
||||
if (sliderStep === "any") {
|
||||
sliderStep = 1;
|
||||
// divide the range of the slider by 100 steps
|
||||
const step =
|
||||
(this.selector.number!.max! - this.selector.number!.min!) / 100;
|
||||
// biggest step size is 1, round the step size to a division of 1
|
||||
while (sliderStep > step) {
|
||||
sliderStep /= 10;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
return html`
|
||||
<div class="input">
|
||||
${!isBox
|
||||
@ -52,12 +68,10 @@ export class HaNumberSelector extends LitElement {
|
||||
: ""}
|
||||
<ha-slider
|
||||
labeled
|
||||
.min=${this.selector.number?.min}
|
||||
.max=${this.selector.number?.max}
|
||||
.min=${this.selector.number!.min}
|
||||
.max=${this.selector.number!.max}
|
||||
.value=${this.value ?? ""}
|
||||
.step=${this.selector.number?.step === "any"
|
||||
? undefined
|
||||
: this.selector.number?.step ?? 1}
|
||||
.step=${sliderStep}
|
||||
.disabled=${this.disabled}
|
||||
.required=${this.required}
|
||||
@change=${this._handleSliderChange}
|
||||
|
@ -70,15 +70,15 @@ const SELECTOR_SCHEMAS = {
|
||||
number: [
|
||||
{
|
||||
name: "min",
|
||||
selector: { number: { mode: "box" } },
|
||||
selector: { number: { mode: "box", step: "any" } },
|
||||
},
|
||||
{
|
||||
name: "max",
|
||||
selector: { number: { mode: "box" } },
|
||||
selector: { number: { mode: "box", step: "any" } },
|
||||
},
|
||||
{
|
||||
name: "step",
|
||||
selector: { number: { mode: "box" } },
|
||||
selector: { number: { mode: "box", step: "any" } },
|
||||
},
|
||||
] as const,
|
||||
object: [] as const,
|
||||
|
Loading…
x
Reference in New Issue
Block a user