I was wondering if it is possible to perform a hue/saturation color transformation, using css/svg filters, in the same way that Photoshop Hue/Saturation works.
Essentially, from what I've read, Photoshop internally converts all pixels from an RGB representation to a HSL representation, and basically increase the hue (H), saturation (S) or lightness (L) values according to what the user defines using the sliders, as seen in the image below:

Here, I chose the default range (Master), which means that all hue values will be considered.
Using CSS hue-rotate filter, we can have an approximate result to this:

Some colors are not exacly the same, due to the issues pointed out in this answer from another question: https://stackoverflow.com/a/19325417/4561405. (That's ok for me, I don't need it to be as accurate as Photoshop.)
So, essentially, the internal procedure for both approaches seems to be roughly the same.
Now, Photoshop also allows me to define a range of colors to be considered for adjustment, as seen in the picture below:

Essentially, what this range of values means is that any color with a hue vaue that falls off the range limits will be ignored. Hence, with my example, colors #1, #2 and #5 are left untouched.
I am trying to do the same thing using CSS os SVG filters, but I can't find a way to do it. I'm reading the filter effect documentation (https://drafts.fxtf.org/filter-effects/), to see if there's anything there that I could use to define the ranges, but I can't find anything.
Does anyone knows if there's a way to do what I intend to? Any valid alternative to CSS filters, perhaps?
EDIT: this snippet show what I am getting with filter: hue-rotate(45deg), and the result that I want to obtain.
.block-wrapper {
width: 100%;
height: 50px;
display: flex;
margin-bottom: 10px;
}
.block {
width: 20%;
height: 100%;
}
.b1 {
background-color: rgb(29 85 34);
}
.b1-goal {
background-color: rgb(29 85 34);
}
.b2 {
background-color: rgb(32 53 79);
}
.b2-goal {
background-color: rgb(32 53 79);
}
.b3 {
background-color: rgb(175 43 52);
}
.b3-goal {
background-color: rgb(173 75 51);
}
.b4 {
background-color: rgb(172 94 50);
}
.b4-goal {
background-color: rgb(166 160 44);
}
.b5 {
background-color: rgb(96 230 33);
}
.b5-goal {
background-color: rgb(96 230 33);
}
.hue-45 {
filter: hue-rotate(45deg);
}
<h3>Original</h3>
<div class="block-wrapper">
<div class="block b1"></div>
<div class="block b2"></div>
<div class="block b3"></div>
<div class="block b4"></div>
<div class="block b5"></div>
</div>
<h3>With <code>hue-rotate: 45deg;</code></h3>
<div class="block-wrapper hue-45">
<div class="block b1"></div>
<div class="block b2"></div>
<div class="block b3"></div>
<div class="block b4"></div>
<div class="block b5"></div>
</div>
<h3>What I want: update hue only for red colors</h3>
<div class="block-wrapper">
<div class="block b1-goal"></div>
<div class="block b2-goal"></div>
<div class="block b3-goal"></div>
<div class="block b4-goal"></div>
<div class="block b5-goal"></div>
</div>