Skip to content

Commit

Permalink
feat(color-picker): add logic for disabledAlpha
Browse files Browse the repository at this point in the history
  • Loading branch information
oljc committed Feb 6, 2024
1 parent aecd552 commit ddec0bc
Show file tree
Hide file tree
Showing 4 changed files with 25 additions and 19 deletions.
4 changes: 2 additions & 2 deletions packages/web-vue/components/color-picker/color-picker.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -167,11 +167,11 @@ export default defineComponent({
const formatValue = computed(() => {
const { r, g, b } = color.value.rgb;
if (props.format === 'rgb') {
return alpha.value < 1
return alpha.value < 1 && !props.disabledAlpha
? `rgba(${r}, ${g}, ${b}, ${alpha.value.toFixed(2)})`
: `rgb(${r}, ${g}, ${b})`;
}
return alpha.value < 1
return alpha.value < 1 && !props.disabledAlpha
? `#${rgbaToHex(r, g, b, alpha.value)}`
: `#${rgbToHex(r, g, b)}`;
});
Expand Down
12 changes: 7 additions & 5 deletions packages/web-vue/components/color-picker/input-hex.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -72,11 +72,13 @@ export default defineComponent({
// @ts-ignore
onPaste={onPaste}
/>
<InputAlpha
disabled={props.disabled}
value={props.alpha}
onChange={props.onAlphaChange}
/>
{!props.disabledAlpha && (
<InputAlpha
disabled={props.disabled}
value={props.alpha}
onChange={props.onAlphaChange}
/>
)}
</InputGroup>
);
},
Expand Down
12 changes: 7 additions & 5 deletions packages/web-vue/components/color-picker/input-rgb.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -46,11 +46,13 @@ export default defineComponent({
onChange={(val = 0) => handleChange({ [channel]: val })}
/>
))}
<InputAlpha
disabled={props.disabled}
value={props.alpha}
onChange={props.onAlphaChange}
/>
{!props.disabledAlpha && (
<InputAlpha
disabled={props.disabled}
value={props.alpha}
onChange={props.onAlphaChange}
/>
)}
</InputGroup>
);
},
Expand Down
16 changes: 9 additions & 7 deletions packages/web-vue/components/color-picker/panel.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -135,13 +135,15 @@ export default defineComponent({
props.onHsvChange?.({ h, s: hsv.value.s, v: hsv.value.v })
}
/>
<ControlBar
type="alpha"
x={props.alpha}
color={props.color}
colorString={props.colorString}
onChange={props.onAlphaChange}
/>
{!props.disabledAlpha && (
<ControlBar
type="alpha"
x={props.alpha}
color={props.color}
colorString={props.colorString}
onChange={props.onAlphaChange}
/>
)}
</div>
<div
class={`${prefixCls}-preview`}
Expand Down

0 comments on commit ddec0bc

Please sign in to comment.