@designbasekorea/ui 0.2.12 → 0.2.14
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/index.css +1 -1
- package/dist/index.css.map +1 -1
- package/dist/index.d.ts +6 -0
- package/dist/index.esm.css +1 -1
- package/dist/index.esm.css.map +1 -1
- package/dist/index.esm.js +11 -4
- package/dist/index.esm.js.map +1 -1
- package/dist/index.js +11 -4
- package/dist/index.js.map +1 -1
- package/dist/index.umd.css +1 -1
- package/dist/index.umd.css.map +1 -1
- package/dist/index.umd.js +11 -4
- package/dist/index.umd.js.map +1 -1
- package/package.json +1 -1
package/dist/index.esm.js
CHANGED
|
@@ -5277,7 +5277,7 @@ const Chip = ({ label, size = 'm', variant = 'default', color = 'primary', delet
|
|
|
5277
5277
|
};
|
|
5278
5278
|
Chip.displayName = 'Chip';
|
|
5279
5279
|
|
|
5280
|
-
const ColorPicker = ({ size = 'm', type = 'dropdown', value, defaultValue = '#006FFF', showInput = true, showAlpha = false, showFormatSelector = true, showCopyButton = true, disabled = false, readonly = false, onChange, className, }) => {
|
|
5280
|
+
const ColorPicker = ({ size = 'm', type = 'dropdown', position = 'bottom-left', value, defaultValue = '#006FFF', showInput = true, showAlpha = false, showFormatSelector = true, showCopyButton = true, disabled = false, readonly = false, onChange, className, }) => {
|
|
5281
5281
|
const [selectedColor, setSelectedColor] = useState(value || defaultValue);
|
|
5282
5282
|
const [isOpen, setIsOpen] = useState(false);
|
|
5283
5283
|
const [hue, setHue] = useState(211);
|
|
@@ -5423,6 +5423,11 @@ const ColorPicker = ({ size = 'm', type = 'dropdown', value, defaultValue = '#00
|
|
|
5423
5423
|
const handleInputChange = (e) => {
|
|
5424
5424
|
const newValue = e.target.value.trim();
|
|
5425
5425
|
setInputValue(newValue);
|
|
5426
|
+
// HEX 값이 유효하면 실시간으로 색상 업데이트
|
|
5427
|
+
if (/^#[0-9A-F]{6}$/i.test(newValue)) {
|
|
5428
|
+
handleColorChange(newValue.toUpperCase());
|
|
5429
|
+
updateHSLFromHex(newValue);
|
|
5430
|
+
}
|
|
5426
5431
|
};
|
|
5427
5432
|
// 입력 필드에서 포커스 아웃 시 검증 및 적용
|
|
5428
5433
|
const handleInputBlur = () => {
|
|
@@ -5510,7 +5515,7 @@ const ColorPicker = ({ size = 'm', type = 'dropdown', value, defaultValue = '#00
|
|
|
5510
5515
|
return;
|
|
5511
5516
|
setIsOpen(!isOpen);
|
|
5512
5517
|
};
|
|
5513
|
-
const classes = clsx('designbase-color-picker', `designbase-color-picker--${size}`, {
|
|
5518
|
+
const classes = clsx('designbase-color-picker', `designbase-color-picker--${size}`, `designbase-color-picker--${position}`, {
|
|
5514
5519
|
'designbase-color-picker--disabled': disabled,
|
|
5515
5520
|
'designbase-color-picker--readonly': readonly,
|
|
5516
5521
|
'designbase-color-picker--open': isOpen,
|
|
@@ -9357,7 +9362,7 @@ const ProgressStep = ({ items, size = 'm', layout = 'vertical', currentStep = 0,
|
|
|
9357
9362
|
}) }));
|
|
9358
9363
|
};
|
|
9359
9364
|
|
|
9360
|
-
const RangeSlider = ({ value, range, min = 0, max = 100, step = 1, size = 'm', variant = 'default', showValue = false, showMarks = false, marks = [], markLabels = {}, disabled = false, readOnly = false, fullWidth = false, vertical = false, onChange, onRangeChange, className, ...props }) => {
|
|
9365
|
+
const RangeSlider = ({ value, range, min = 0, max = 100, step = 1, size = 'm', variant = 'default', showValue = false, valuePosition = 'top', showMarks = false, marks = [], markLabels = {}, disabled = false, readOnly = false, fullWidth = false, vertical = false, onChange, onRangeChange, className, ...props }) => {
|
|
9361
9366
|
const [internalValue, setInternalValue] = useState(value ?? min);
|
|
9362
9367
|
const [internalRange, setInternalRange] = useState(range ?? [min, max]);
|
|
9363
9368
|
const [isDragging, setIsDragging] = useState(false);
|
|
@@ -9368,6 +9373,8 @@ const RangeSlider = ({ value, range, min = 0, max = 100, step = 1, size = 'm', v
|
|
|
9368
9373
|
const isControlled = value !== undefined || range !== undefined;
|
|
9369
9374
|
const currentValue = isControlled ? (value ?? internalValue) : internalValue;
|
|
9370
9375
|
const currentRange = isControlled ? (range ?? internalRange) : internalRange;
|
|
9376
|
+
// 단일 값일 때 기본적으로 우측에 표시
|
|
9377
|
+
const effectiveValuePosition = valuePosition === 'top' && range === undefined ? 'right' : valuePosition;
|
|
9371
9378
|
// 값 정규화
|
|
9372
9379
|
const normalizeValue = useCallback((val) => {
|
|
9373
9380
|
return Math.max(min, Math.min(max, val));
|
|
@@ -9537,7 +9544,7 @@ const RangeSlider = ({ value, range, min = 0, max = 100, step = 1, size = 'm', v
|
|
|
9537
9544
|
}, "aria-hidden": "true", children: markLabels[mark] && (jsx("span", { className: "designbase-range-slider__mark-label", children: markLabels[mark] })) }, mark));
|
|
9538
9545
|
});
|
|
9539
9546
|
};
|
|
9540
|
-
const classes = clsx('designbase-range-slider', `designbase-range-slider--${size}`, `designbase-range-slider--${variant}`, {
|
|
9547
|
+
const classes = clsx('designbase-range-slider', `designbase-range-slider--${size}`, `designbase-range-slider--${variant}`, `designbase-range-slider--value-${effectiveValuePosition}`, {
|
|
9541
9548
|
'designbase-range-slider--disabled': disabled,
|
|
9542
9549
|
'designbase-range-slider--readonly': readOnly,
|
|
9543
9550
|
'designbase-range-slider--full-width': fullWidth,
|