@koi-design/uxd-ui 14.0.42 → 14.0.43

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.
@@ -346,6 +346,7 @@ var Slider = defineComponent({
346
346
  if (e.keyCode === KeyCode.DOWN || e.keyCode === KeyCode.LEFT) {
347
347
  nextValue -= stepValue;
348
348
  }
349
+ nextValue = trimAlignValue(nextValue);
349
350
  updateStateValue(nextValue);
350
351
  pauseEvent(e);
351
352
  };
@@ -1 +1 @@
1
- {"version":3,"file":"Slider.mjs","sources":["../../../../src/components/Slider/Slider.tsx"],"sourcesContent":["import { computed, defineComponent, ref, watch } from 'vue';\nimport UTooltip from '@uxd-ui/components/Tooltip';\nimport Handle from './Handle.vue';\nimport Marks from './Marks.vue';\nimport Steps from './Steps.vue';\nimport useGlobalConfig from '../base/hooks/useGlobalConfig';\nimport KeyCode from '../../utils/KeyCode';\nimport { sliderProps, sliderEmits } from './Slider.type';\n\nexport default defineComponent({\n name: 'USlider',\n props: sliderProps,\n emits: sliderEmits,\n setup(props, { emit }) {\n const sliderRef = ref<any | null>(null);\n const stateValue = ref(props.modelValue);\n const handleSize = computed(() => {\n return props.variant === 'strong' ? 'var(--slider-strong-handle-size)' : 'var(--slider-handle-size)';\n });\n\n // prefixCls\n const { prefixCls, config: globalConfig } = useGlobalConfig('slider');\n\n const computedDirection = computed(() => {\n return props.direction || globalConfig.direction || 'ltr';\n });\n\n const isRLT = computed(() => {\n return computedDirection.value === 'rtl' && !props.vertical;\n });\n\n // methods\n\n const getSliderStart = () => {\n if (sliderRef.value) {\n const rect = sliderRef.value.getBoundingClientRect();\n if (props.vertical) {\n return rect.top;\n }\n if (isRLT.value) {\n return window.pageXOffset + rect.right;\n }\n return window.pageXOffset + rect.left;\n }\n return 0;\n };\n\n const getMousePosition = (e: any) => {\n let zoom = 1;\n if (window.visualViewport) {\n zoom = +(window.visualViewport.width / document.body.getBoundingClientRect().width).toFixed(2);\n }\n return (props.vertical ? e.clientY : e.pageX) / zoom;\n };\n\n const getSliderLength = () => {\n if (!sliderRef.value) {\n return 0;\n }\n const coords = sliderRef.value.getBoundingClientRect();\n return props.vertical ? coords.height : coords.width;\n };\n\n const calcValue = (offset: number) => {\n const ratio = Math.max(offset, 0) / getSliderLength();\n const value = props.vertical ? (1 - ratio) * (props.max - props.min) + props.min : ratio * (props.max - props.min) + props.min;\n return Math.round(value);\n };\n\n const trimAlignValue = (v: number) => {\n if (v <= props.min) {\n return props.min;\n }\n if (v >= props.max) {\n return props.max;\n }\n return v;\n };\n\n const calcValueByPosition = (position: number) => {\n const pixelOffset = computedDirection.value === 'ltr' ? position - getSliderStart() : getSliderStart() - position;\n const nextValue = trimAlignValue(calcValue(pixelOffset));\n return nextValue;\n };\n\n const calcOffset = (value: number) => {\n const ratio = (value - props.min) / (props.max - props.min);\n return ratio * 100;\n };\n\n const makeDecimal = (value: number, step: number) => {\n if (step < 1) {\n const stepStr = step.toString();\n const m = stepStr.split('.')[1].length || 0;\n const multiple = 10 ** m;\n return ((value * multiple) % (step * multiple)) / multiple;\n }\n return value % step;\n };\n\n const updateStateValue = (value: number) => {\n let nextValue = value;\n if (props.step) {\n const modulus = makeDecimal(nextValue, props.step);\n const subValue = nextValue - modulus;\n nextValue = modulus > props.step / 2 ? subValue + props.step : subValue;\n }\n if (props.marks) {\n const marksMap: Record<number, number> = {};\n const subValueArr: number[] = [];\n const marksKeys = Object.keys(props.marks);\n marksKeys.forEach((ele) => {\n const key = Math.abs(value - Number(ele));\n subValueArr.push(key);\n marksMap[key] = Number(ele);\n });\n const minValue = Math.min.apply(null, subValueArr);\n nextValue = Math.abs(value - nextValue) > minValue || props.step === undefined ? marksMap[minValue] : nextValue;\n }\n if (!props.range) {\n stateValue.value = nextValue;\n } else if (Array.isArray(stateValue.value)) {\n if (nextValue > stateValue.value[1] || Math.abs(nextValue - stateValue.value[0]) > Math.abs(nextValue - stateValue.value[1])) {\n stateValue.value[1] = nextValue;\n } else if (\n (stateValue.value[1] - nextValue === 1 && nextValue - stateValue.value[0] !== 1) ||\n (nextValue - stateValue.value[0] === 1 && nextValue === stateValue.value[1])\n ) {\n stateValue.value[1] = stateValue.value[0];\n } else if (stateValue.value[1] === stateValue.value[0]) {\n if (nextValue < stateValue.value[0]) {\n stateValue.value[0] = nextValue;\n } else {\n stateValue.value[1] = nextValue;\n }\n } else {\n stateValue.value[0] = nextValue;\n }\n }\n emit('update:modelValue', stateValue.value);\n emit('change', stateValue.value);\n };\n\n const handleMouseUp = () => {\n // eslint-disable-next-line @typescript-eslint/no-use-before-define\n removeDocumentEvents();\n emit('after-change', stateValue.value);\n };\n\n const handleMouseMove = (e: any) => {\n if (!sliderRef.value) {\n handleMouseUp();\n return false;\n }\n const position = getMousePosition(e);\n const newStateValue = calcValueByPosition(position);\n updateStateValue(newStateValue);\n };\n\n const addDocumentMouseEvents = () => {\n document.addEventListener('mousemove', handleMouseMove);\n document.addEventListener('mouseup', handleMouseUp);\n };\n const removeDocumentEvents = () => {\n document.removeEventListener('mousemove', handleMouseMove);\n document.removeEventListener('mouseup', handleMouseUp);\n };\n\n const getCurrentValue = (type: string) => {\n if (type === 'min') {\n return Array.isArray(stateValue.value) ? stateValue.value[0] : stateValue.value;\n }\n return (stateValue.value as number[])[1];\n };\n\n const pauseEvent = (e: any) => {\n e.stopPropagation();\n e.preventDefault();\n };\n\n // computed\n const rangeStyle = computed(() => {\n if (Array.isArray(stateValue.value)) {\n let left = '0';\n let width = '0';\n if (stateValue.value[0] === props.min && stateValue.value[1] === props.min) {\n left = '0';\n width = '0';\n } else if (props.variant === 'strong') {\n left = `calc(${calcOffset(stateValue.value[0])}% - ${handleSize.value} / 2)`;\n width = `calc(${calcOffset(stateValue.value[1] - stateValue.value[0])}% + ${handleSize.value})`;\n } else {\n left = `calc(${calcOffset(stateValue.value[0])}%)`;\n width = `calc(${calcOffset(stateValue.value[1] - stateValue.value[0])}%)`;\n }\n\n if (props.vertical) {\n return {\n bottom: `${left}`,\n height: `${width}`\n };\n }\n if (computedDirection.value === 'rtl') {\n return {\n right: `${left}`,\n width: `${width}`\n };\n }\n return {\n left: `${left}`,\n width: `${width}`\n };\n }\n let size = '0';\n\n if (stateValue.value === props.min) {\n size = '0';\n } else if (props.variant === 'strong') {\n size = `calc(${calcOffset(stateValue.value)}% + ${handleSize.value})`;\n } else {\n size = `calc(${calcOffset(stateValue.value)}% + ${handleSize.value} / 2)`;\n }\n\n if (props.vertical) {\n return {\n bottom: `calc(-1 * ${handleSize.value} / 2)`,\n height: `${size}`\n };\n }\n if (computedDirection.value === 'rtl') {\n return {\n right: `calc(-1 * ${handleSize.value} / 2)`,\n width: `${size}`\n };\n }\n return {\n left: `calc(-1 * ${handleSize.value} / 2)`,\n width: `${size}`\n };\n });\n\n const maskStyle = computed(() => {\n if (Array.isArray(stateValue.value)) {\n const sizes = [\n {\n left: '0',\n width: '0'\n },\n {\n left: '0',\n width: '0'\n }\n ];\n\n if (stateValue.value[0] === props.min && stateValue.value[1] === props.min) {\n sizes[0].left = `calc(-1 * ${handleSize.value} / 2 - 1px)`;\n sizes[0].width = `calc(100% + ${handleSize.value})`;\n } else if (props.variant === 'strong') {\n sizes[0].left = `calc(-1 * ${handleSize.value} / 2 - 2px)`;\n sizes[0].width = `calc(${calcOffset(stateValue.value[0])}% + ${handleSize.value} + 2px)`;\n sizes[1].left = `calc(${calcOffset(stateValue.value[1])}% - ${handleSize.value} / 2)`;\n sizes[1].width = `calc(${100 - calcOffset(stateValue.value[1])}% + ${handleSize.value} + 2px)`;\n } else {\n sizes[0].left = `calc(-1 * ${handleSize.value} / 2 - 1px)`;\n sizes[0].width = `calc(${calcOffset(stateValue.value[0])}% + ${handleSize.value} / 2)`;\n sizes[1].left = `calc(${calcOffset(stateValue.value[1])}%)`;\n sizes[1].width = `calc(${100 - calcOffset(stateValue.value[1])}% + ${handleSize.value} / 2)`;\n }\n\n if (props.vertical) {\n return [\n {\n bottom: `${sizes[0].left}`,\n height: `${sizes[0].width}`\n },\n {\n bottom: `${sizes[1].left}`,\n height: `${sizes[1].width}`\n }\n ];\n }\n return [\n {\n left: `${sizes[0].left}`,\n width: `${sizes[0].width}`\n },\n {\n left: `${sizes[1].left}`,\n width: `${sizes[1].width}`\n }\n ];\n }\n let size = '0';\n let left = '0';\n if (props.variant === 'strong') {\n left = `calc(-1 * ${handleSize.value} / 2 - 2px)`;\n size = `calc(${100 - calcOffset(stateValue.value)}% + ${handleSize.value} + 2px)`;\n } else {\n left = `calc(-1 * ${handleSize.value} / 2)`;\n\n size = `calc(${100 - calcOffset(stateValue.value)}% + ${handleSize.value} / 2)`;\n }\n if (props.vertical) {\n return {\n top: `${left}`,\n height: `${size}`\n };\n }\n if (computedDirection.value === 'rtl') {\n return {\n left: `${left}`,\n width: `${size}`\n };\n }\n return {\n right: `${left}`,\n width: `${size}`\n };\n });\n\n const minPointStyle = computed(() => {\n const minValue = Array.isArray(stateValue.value) ? stateValue.value[0] : stateValue.value;\n if (props.vertical) {\n return {\n bottom: `${calcOffset(minValue)}%`\n };\n }\n if (computedDirection.value === 'rtl') {\n return {\n right: `${calcOffset(minValue)}%`\n };\n }\n return {\n left: `${calcOffset(minValue)}%`\n };\n });\n const maxPointStyle = computed(() => {\n const maxValue = Array.isArray(stateValue.value) ? stateValue.value[1] : props.max;\n if (props.vertical) {\n return {\n bottom: `${calcOffset(maxValue)}%`\n };\n }\n if (computedDirection.value === 'rtl') {\n return {\n right: `${calcOffset(maxValue)}%`\n };\n }\n return {\n left: `${calcOffset(maxValue)}%`\n };\n });\n const lowerBound = computed(() => {\n return Array.isArray(stateValue.value) ? stateValue.value[0] : props.min;\n });\n const upperBound = computed(() => {\n return Array.isArray(stateValue.value) ? stateValue.value[1] : stateValue.value;\n });\n\n watch(\n () => props.modelValue,\n () => {\n stateValue.value = props.modelValue;\n }\n );\n\n // Events\n const handleMarkClick = ({ e, point }: { e: any; point: number }) => {\n pauseEvent(e);\n updateStateValue(point);\n };\n const handleMouseDown = (e: any) => {\n if (props.disabled) return;\n const position = getMousePosition(e);\n const newStateValue = calcValueByPosition(position);\n updateStateValue(newStateValue);\n addDocumentMouseEvents();\n pauseEvent(e);\n };\n\n const handleKeyDown = (e: any, type: string) => {\n let nextValue = getCurrentValue(type);\n const stepValue = props.step || 1;\n if (e.keyCode === KeyCode.RIGHT || e.keyCode === KeyCode.UP) {\n nextValue += stepValue;\n }\n if (e.keyCode === KeyCode.DOWN || e.keyCode === KeyCode.LEFT) {\n nextValue -= stepValue;\n }\n updateStateValue(nextValue);\n pauseEvent(e);\n };\n\n return {\n sliderRef,\n prefixCls,\n rangeStyle,\n maskStyle,\n minPointStyle,\n maxPointStyle,\n stateValue,\n lowerBound,\n upperBound,\n handleMouseDown,\n handleMouseUp,\n handleKeyDown,\n handleMarkClick\n };\n },\n render() {\n const handler = (\n <>\n <UTooltip\n title={this.tipFormatter(this.range ? (this.stateValue as number[])[0] : (this.stateValue as number))}\n visible={this.tooltipVisible}\n offset={[0, 0]}\n >\n <Handle\n prefix-cls={this.prefixCls}\n style={this.minPointStyle}\n onKeydown={(e: any) => this.handleKeyDown(e, 'min')}\n isRangeStart={this.range}\n />\n </UTooltip>\n {this.range && (\n <UTooltip title={this.tipFormatter((this.stateValue as number[])[1])} visible={this.tooltipVisible} offset={[0, 0]}>\n <Handle prefix-cls={this.prefixCls} style={this.maxPointStyle} onKeydown={(e: any) => this.handleKeyDown(e, 'max')} />\n </UTooltip>\n )}\n </>\n );\n\n return (\n <div\n ref=\"sliderRef\"\n class={[\n this.prefixCls,\n `${this.prefixCls}-variant-${this.variant}`,\n {\n [`${this.prefixCls}-with-marks`]: this.marks && Object.keys(this.marks).length,\n [`${this.prefixCls}-disabled`]: this.disabled,\n [`${this.prefixCls}-vertical`]: this.vertical,\n [`${this.prefixCls}-rtl`]: this.direction === 'rtl' && !this.vertical\n }\n ]}\n onMousedown={this.handleMouseDown}\n onMouseup={this.handleMouseUp}\n >\n <div class={`${this.prefixCls}-content`}>\n <div class={`${this.prefixCls}-track`}></div>\n {this.included && !this.disabled ? (\n this.range ? (\n <>\n <div class={`${this.prefixCls}-mask-start`} style={(this.maskStyle as any[])[0]} />\n <div class={`${this.prefixCls}-mask`} style={(this.maskStyle as any[])[1]} />\n </>\n ) : (\n <div class={`${this.prefixCls}-mask`} style={this.maskStyle} />\n )\n ) : null}\n {this.included && <div class={`${this.prefixCls}-range`} style={this.rangeStyle} />}\n\n <Steps\n prefixCls={this.prefixCls}\n included={this.included}\n marks={this.marks}\n min={this.min}\n max={this.max}\n lowerBound={this.lowerBound}\n upperBound={this.upperBound}\n vertical={this.vertical}\n direction={this.direction}\n showDots={this.showDots}\n step={this.step}\n />\n {handler}\n {!!this.marks && (\n <Marks\n prefix-cls={this.prefixCls}\n included={this.included}\n marks={this.marks}\n min={this.min}\n max={this.max}\n lowerBound={this.lowerBound}\n upperBound={this.upperBound}\n vertical={this.vertical}\n direction={this.direction}\n onMark-click={this.handleMarkClick}\n />\n )}\n </div>\n </div>\n );\n }\n});\n"],"names":["defineComponent","name","props","sliderProps","emits","sliderEmits","setup","emit","sliderRef","ref","stateValue","modelValue","handleSize","computed","variant","prefixCls","config","globalConfig","useGlobalConfig","computedDirection","direction","isRLT","value","vertical","getSliderStart","rect","getBoundingClientRect","top","window","pageXOffset","right","left","getMousePosition","e","zoom","visualViewport","width","document","body","toFixed","clientY","pageX","getSliderLength","coords","height","calcValue","offset","ratio","Math","max","min","round","trimAlignValue","v","calcValueByPosition","position","pixelOffset","nextValue","calcOffset","makeDecimal","step","stepStr","toString","m","split","length","multiple","updateStateValue","modulus","subValue","marks","marksMap","subValueArr","marksKeys","Object","keys","forEach","ele","key","abs","Number","push","minValue","apply","undefined","range","Array","isArray","handleMouseUp","removeDocumentEvents","handleMouseMove","newStateValue","addDocumentMouseEvents","addEventListener","removeEventListener","getCurrentValue","type","pauseEvent","stopPropagation","preventDefault","rangeStyle","bottom","size","maskStyle","sizes","minPointStyle","maxPointStyle","maxValue","lowerBound","upperBound","watch","handleMarkClick","point","handleMouseDown","disabled","handleKeyDown","stepValue","keyCode","KeyCode","RIGHT","UP","DOWN","LEFT","render","handler","_createVNode","_Fragment","UTooltip","tipFormatter","tooltipVisible","default","Handle","included","Steps","showDots","Marks"],"mappings":"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"}
1
+ {"version":3,"file":"Slider.mjs","sources":["../../../../src/components/Slider/Slider.tsx"],"sourcesContent":["import { computed, defineComponent, ref, watch } from 'vue';\nimport UTooltip from '@uxd-ui/components/Tooltip';\nimport Handle from './Handle.vue';\nimport Marks from './Marks.vue';\nimport Steps from './Steps.vue';\nimport useGlobalConfig from '../base/hooks/useGlobalConfig';\nimport KeyCode from '../../utils/KeyCode';\nimport { sliderProps, sliderEmits } from './Slider.type';\n\nexport default defineComponent({\n name: 'USlider',\n props: sliderProps,\n emits: sliderEmits,\n setup(props, { emit }) {\n const sliderRef = ref<any | null>(null);\n const stateValue = ref(props.modelValue);\n const handleSize = computed(() => {\n return props.variant === 'strong' ? 'var(--slider-strong-handle-size)' : 'var(--slider-handle-size)';\n });\n\n // prefixCls\n const { prefixCls, config: globalConfig } = useGlobalConfig('slider');\n\n const computedDirection = computed(() => {\n return props.direction || globalConfig.direction || 'ltr';\n });\n\n const isRLT = computed(() => {\n return computedDirection.value === 'rtl' && !props.vertical;\n });\n\n // methods\n\n const getSliderStart = () => {\n if (sliderRef.value) {\n const rect = sliderRef.value.getBoundingClientRect();\n if (props.vertical) {\n return rect.top;\n }\n if (isRLT.value) {\n return window.pageXOffset + rect.right;\n }\n return window.pageXOffset + rect.left;\n }\n return 0;\n };\n\n const getMousePosition = (e: any) => {\n let zoom = 1;\n if (window.visualViewport) {\n zoom = +(window.visualViewport.width / document.body.getBoundingClientRect().width).toFixed(2);\n }\n return (props.vertical ? e.clientY : e.pageX) / zoom;\n };\n\n const getSliderLength = () => {\n if (!sliderRef.value) {\n return 0;\n }\n const coords = sliderRef.value.getBoundingClientRect();\n return props.vertical ? coords.height : coords.width;\n };\n\n const calcValue = (offset: number) => {\n const ratio = Math.max(offset, 0) / getSliderLength();\n const value = props.vertical ? (1 - ratio) * (props.max - props.min) + props.min : ratio * (props.max - props.min) + props.min;\n return Math.round(value);\n };\n\n const trimAlignValue = (v: number) => {\n if (v <= props.min) {\n return props.min;\n }\n if (v >= props.max) {\n return props.max;\n }\n return v;\n };\n\n const calcValueByPosition = (position: number) => {\n const pixelOffset = computedDirection.value === 'ltr' ? position - getSliderStart() : getSliderStart() - position;\n const nextValue = trimAlignValue(calcValue(pixelOffset));\n return nextValue;\n };\n\n const calcOffset = (value: number) => {\n const ratio = (value - props.min) / (props.max - props.min);\n return ratio * 100;\n };\n\n const makeDecimal = (value: number, step: number) => {\n if (step < 1) {\n const stepStr = step.toString();\n const m = stepStr.split('.')[1].length || 0;\n const multiple = 10 ** m;\n return ((value * multiple) % (step * multiple)) / multiple;\n }\n return value % step;\n };\n\n const updateStateValue = (value: number) => {\n let nextValue = value;\n if (props.step) {\n const modulus = makeDecimal(nextValue, props.step);\n const subValue = nextValue - modulus;\n nextValue = modulus > props.step / 2 ? subValue + props.step : subValue;\n }\n if (props.marks) {\n const marksMap: Record<number, number> = {};\n const subValueArr: number[] = [];\n const marksKeys = Object.keys(props.marks);\n marksKeys.forEach((ele) => {\n const key = Math.abs(value - Number(ele));\n subValueArr.push(key);\n marksMap[key] = Number(ele);\n });\n const minValue = Math.min.apply(null, subValueArr);\n nextValue = Math.abs(value - nextValue) > minValue || props.step === undefined ? marksMap[minValue] : nextValue;\n }\n if (!props.range) {\n stateValue.value = nextValue;\n } else if (Array.isArray(stateValue.value)) {\n if (nextValue > stateValue.value[1] || Math.abs(nextValue - stateValue.value[0]) > Math.abs(nextValue - stateValue.value[1])) {\n stateValue.value[1] = nextValue;\n } else if (\n (stateValue.value[1] - nextValue === 1 && nextValue - stateValue.value[0] !== 1) ||\n (nextValue - stateValue.value[0] === 1 && nextValue === stateValue.value[1])\n ) {\n stateValue.value[1] = stateValue.value[0];\n } else if (stateValue.value[1] === stateValue.value[0]) {\n if (nextValue < stateValue.value[0]) {\n stateValue.value[0] = nextValue;\n } else {\n stateValue.value[1] = nextValue;\n }\n } else {\n stateValue.value[0] = nextValue;\n }\n }\n emit('update:modelValue', stateValue.value);\n emit('change', stateValue.value);\n };\n\n const handleMouseUp = () => {\n // eslint-disable-next-line @typescript-eslint/no-use-before-define\n removeDocumentEvents();\n emit('after-change', stateValue.value);\n };\n\n const handleMouseMove = (e: any) => {\n if (!sliderRef.value) {\n handleMouseUp();\n return false;\n }\n const position = getMousePosition(e);\n const newStateValue = calcValueByPosition(position);\n updateStateValue(newStateValue);\n };\n\n const addDocumentMouseEvents = () => {\n document.addEventListener('mousemove', handleMouseMove);\n document.addEventListener('mouseup', handleMouseUp);\n };\n const removeDocumentEvents = () => {\n document.removeEventListener('mousemove', handleMouseMove);\n document.removeEventListener('mouseup', handleMouseUp);\n };\n\n const getCurrentValue = (type: string) => {\n if (type === 'min') {\n return Array.isArray(stateValue.value) ? stateValue.value[0] : stateValue.value;\n }\n return (stateValue.value as number[])[1];\n };\n\n const pauseEvent = (e: any) => {\n e.stopPropagation();\n e.preventDefault();\n };\n\n // computed\n const rangeStyle = computed(() => {\n if (Array.isArray(stateValue.value)) {\n let left = '0';\n let width = '0';\n if (stateValue.value[0] === props.min && stateValue.value[1] === props.min) {\n left = '0';\n width = '0';\n } else if (props.variant === 'strong') {\n left = `calc(${calcOffset(stateValue.value[0])}% - ${handleSize.value} / 2)`;\n width = `calc(${calcOffset(stateValue.value[1] - stateValue.value[0])}% + ${handleSize.value})`;\n } else {\n left = `calc(${calcOffset(stateValue.value[0])}%)`;\n width = `calc(${calcOffset(stateValue.value[1] - stateValue.value[0])}%)`;\n }\n\n if (props.vertical) {\n return {\n bottom: `${left}`,\n height: `${width}`\n };\n }\n if (computedDirection.value === 'rtl') {\n return {\n right: `${left}`,\n width: `${width}`\n };\n }\n return {\n left: `${left}`,\n width: `${width}`\n };\n }\n let size = '0';\n\n if (stateValue.value === props.min) {\n size = '0';\n } else if (props.variant === 'strong') {\n size = `calc(${calcOffset(stateValue.value)}% + ${handleSize.value})`;\n } else {\n size = `calc(${calcOffset(stateValue.value)}% + ${handleSize.value} / 2)`;\n }\n\n if (props.vertical) {\n return {\n bottom: `calc(-1 * ${handleSize.value} / 2)`,\n height: `${size}`\n };\n }\n if (computedDirection.value === 'rtl') {\n return {\n right: `calc(-1 * ${handleSize.value} / 2)`,\n width: `${size}`\n };\n }\n return {\n left: `calc(-1 * ${handleSize.value} / 2)`,\n width: `${size}`\n };\n });\n\n const maskStyle = computed(() => {\n if (Array.isArray(stateValue.value)) {\n const sizes = [\n {\n left: '0',\n width: '0'\n },\n {\n left: '0',\n width: '0'\n }\n ];\n\n if (stateValue.value[0] === props.min && stateValue.value[1] === props.min) {\n sizes[0].left = `calc(-1 * ${handleSize.value} / 2 - 1px)`;\n sizes[0].width = `calc(100% + ${handleSize.value})`;\n } else if (props.variant === 'strong') {\n sizes[0].left = `calc(-1 * ${handleSize.value} / 2 - 2px)`;\n sizes[0].width = `calc(${calcOffset(stateValue.value[0])}% + ${handleSize.value} + 2px)`;\n sizes[1].left = `calc(${calcOffset(stateValue.value[1])}% - ${handleSize.value} / 2)`;\n sizes[1].width = `calc(${100 - calcOffset(stateValue.value[1])}% + ${handleSize.value} + 2px)`;\n } else {\n sizes[0].left = `calc(-1 * ${handleSize.value} / 2 - 1px)`;\n sizes[0].width = `calc(${calcOffset(stateValue.value[0])}% + ${handleSize.value} / 2)`;\n sizes[1].left = `calc(${calcOffset(stateValue.value[1])}%)`;\n sizes[1].width = `calc(${100 - calcOffset(stateValue.value[1])}% + ${handleSize.value} / 2)`;\n }\n\n if (props.vertical) {\n return [\n {\n bottom: `${sizes[0].left}`,\n height: `${sizes[0].width}`\n },\n {\n bottom: `${sizes[1].left}`,\n height: `${sizes[1].width}`\n }\n ];\n }\n return [\n {\n left: `${sizes[0].left}`,\n width: `${sizes[0].width}`\n },\n {\n left: `${sizes[1].left}`,\n width: `${sizes[1].width}`\n }\n ];\n }\n let size = '0';\n let left = '0';\n if (props.variant === 'strong') {\n left = `calc(-1 * ${handleSize.value} / 2 - 2px)`;\n size = `calc(${100 - calcOffset(stateValue.value)}% + ${handleSize.value} + 2px)`;\n } else {\n left = `calc(-1 * ${handleSize.value} / 2)`;\n\n size = `calc(${100 - calcOffset(stateValue.value)}% + ${handleSize.value} / 2)`;\n }\n if (props.vertical) {\n return {\n top: `${left}`,\n height: `${size}`\n };\n }\n if (computedDirection.value === 'rtl') {\n return {\n left: `${left}`,\n width: `${size}`\n };\n }\n return {\n right: `${left}`,\n width: `${size}`\n };\n });\n\n const minPointStyle = computed(() => {\n const minValue = Array.isArray(stateValue.value) ? stateValue.value[0] : stateValue.value;\n if (props.vertical) {\n return {\n bottom: `${calcOffset(minValue)}%`\n };\n }\n if (computedDirection.value === 'rtl') {\n return {\n right: `${calcOffset(minValue)}%`\n };\n }\n return {\n left: `${calcOffset(minValue)}%`\n };\n });\n const maxPointStyle = computed(() => {\n const maxValue = Array.isArray(stateValue.value) ? stateValue.value[1] : props.max;\n if (props.vertical) {\n return {\n bottom: `${calcOffset(maxValue)}%`\n };\n }\n if (computedDirection.value === 'rtl') {\n return {\n right: `${calcOffset(maxValue)}%`\n };\n }\n return {\n left: `${calcOffset(maxValue)}%`\n };\n });\n const lowerBound = computed(() => {\n return Array.isArray(stateValue.value) ? stateValue.value[0] : props.min;\n });\n const upperBound = computed(() => {\n return Array.isArray(stateValue.value) ? stateValue.value[1] : stateValue.value;\n });\n\n watch(\n () => props.modelValue,\n () => {\n stateValue.value = props.modelValue;\n }\n );\n\n // Events\n const handleMarkClick = ({ e, point }: { e: any; point: number }) => {\n pauseEvent(e);\n updateStateValue(point);\n };\n const handleMouseDown = (e: any) => {\n if (props.disabled) return;\n const position = getMousePosition(e);\n const newStateValue = calcValueByPosition(position);\n updateStateValue(newStateValue);\n addDocumentMouseEvents();\n pauseEvent(e);\n };\n\n const handleKeyDown = (e: any, type: string) => {\n let nextValue = getCurrentValue(type);\n const stepValue = props.step || 1;\n if (e.keyCode === KeyCode.RIGHT || e.keyCode === KeyCode.UP) {\n nextValue += stepValue;\n }\n if (e.keyCode === KeyCode.DOWN || e.keyCode === KeyCode.LEFT) {\n nextValue -= stepValue;\n }\n nextValue = trimAlignValue(nextValue);\n updateStateValue(nextValue);\n pauseEvent(e);\n };\n\n return {\n sliderRef,\n prefixCls,\n rangeStyle,\n maskStyle,\n minPointStyle,\n maxPointStyle,\n stateValue,\n lowerBound,\n upperBound,\n handleMouseDown,\n handleMouseUp,\n handleKeyDown,\n handleMarkClick\n };\n },\n render() {\n const handler = (\n <>\n <UTooltip\n title={this.tipFormatter(this.range ? (this.stateValue as number[])[0] : (this.stateValue as number))}\n visible={this.tooltipVisible}\n offset={[0, 0]}\n >\n <Handle\n prefix-cls={this.prefixCls}\n style={this.minPointStyle}\n onKeydown={(e: any) => this.handleKeyDown(e, 'min')}\n isRangeStart={this.range}\n />\n </UTooltip>\n {this.range && (\n <UTooltip title={this.tipFormatter((this.stateValue as number[])[1])} visible={this.tooltipVisible} offset={[0, 0]}>\n <Handle prefix-cls={this.prefixCls} style={this.maxPointStyle} onKeydown={(e: any) => this.handleKeyDown(e, 'max')} />\n </UTooltip>\n )}\n </>\n );\n\n return (\n <div\n ref=\"sliderRef\"\n class={[\n this.prefixCls,\n `${this.prefixCls}-variant-${this.variant}`,\n {\n [`${this.prefixCls}-with-marks`]: this.marks && Object.keys(this.marks).length,\n [`${this.prefixCls}-disabled`]: this.disabled,\n [`${this.prefixCls}-vertical`]: this.vertical,\n [`${this.prefixCls}-rtl`]: this.direction === 'rtl' && !this.vertical\n }\n ]}\n onMousedown={this.handleMouseDown}\n onMouseup={this.handleMouseUp}\n >\n <div class={`${this.prefixCls}-content`}>\n <div class={`${this.prefixCls}-track`}></div>\n {this.included && !this.disabled ? (\n this.range ? (\n <>\n <div class={`${this.prefixCls}-mask-start`} style={(this.maskStyle as any[])[0]} />\n <div class={`${this.prefixCls}-mask`} style={(this.maskStyle as any[])[1]} />\n </>\n ) : (\n <div class={`${this.prefixCls}-mask`} style={this.maskStyle} />\n )\n ) : null}\n {this.included && <div class={`${this.prefixCls}-range`} style={this.rangeStyle} />}\n\n <Steps\n prefixCls={this.prefixCls}\n included={this.included}\n marks={this.marks}\n min={this.min}\n max={this.max}\n lowerBound={this.lowerBound}\n upperBound={this.upperBound}\n vertical={this.vertical}\n direction={this.direction}\n showDots={this.showDots}\n step={this.step}\n />\n {handler}\n {!!this.marks && (\n <Marks\n prefix-cls={this.prefixCls}\n included={this.included}\n marks={this.marks}\n min={this.min}\n max={this.max}\n lowerBound={this.lowerBound}\n upperBound={this.upperBound}\n vertical={this.vertical}\n direction={this.direction}\n onMark-click={this.handleMarkClick}\n />\n )}\n </div>\n </div>\n );\n }\n});\n"],"names":["defineComponent","name","props","sliderProps","emits","sliderEmits","setup","emit","sliderRef","ref","stateValue","modelValue","handleSize","computed","variant","prefixCls","config","globalConfig","useGlobalConfig","computedDirection","direction","isRLT","value","vertical","getSliderStart","rect","getBoundingClientRect","top","window","pageXOffset","right","left","getMousePosition","e","zoom","visualViewport","width","document","body","toFixed","clientY","pageX","getSliderLength","coords","height","calcValue","offset","ratio","Math","max","min","round","trimAlignValue","v","calcValueByPosition","position","pixelOffset","nextValue","calcOffset","makeDecimal","step","stepStr","toString","m","split","length","multiple","updateStateValue","modulus","subValue","marks","marksMap","subValueArr","marksKeys","Object","keys","forEach","ele","key","abs","Number","push","minValue","apply","undefined","range","Array","isArray","handleMouseUp","removeDocumentEvents","handleMouseMove","newStateValue","addDocumentMouseEvents","addEventListener","removeEventListener","getCurrentValue","type","pauseEvent","stopPropagation","preventDefault","rangeStyle","bottom","size","maskStyle","sizes","minPointStyle","maxPointStyle","maxValue","lowerBound","upperBound","watch","handleMarkClick","point","handleMouseDown","disabled","handleKeyDown","stepValue","keyCode","KeyCode","RIGHT","UP","DOWN","LEFT","render","handler","_createVNode","_Fragment","UTooltip","tipFormatter","tooltipVisible","default","Handle","included","Steps","showDots","Marks"],"mappings":"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"}
@@ -350,6 +350,7 @@ var Slider = vue.defineComponent({
350
350
  if (e.keyCode === KeyCode["default"].DOWN || e.keyCode === KeyCode["default"].LEFT) {
351
351
  nextValue -= stepValue;
352
352
  }
353
+ nextValue = trimAlignValue(nextValue);
353
354
  updateStateValue(nextValue);
354
355
  pauseEvent(e);
355
356
  };
@@ -1 +1 @@
1
- {"version":3,"file":"Slider.js","sources":["../../../../src/components/Slider/Slider.tsx"],"sourcesContent":["import { computed, defineComponent, ref, watch } from 'vue';\nimport UTooltip from '@uxd-ui/components/Tooltip';\nimport Handle from './Handle.vue';\nimport Marks from './Marks.vue';\nimport Steps from './Steps.vue';\nimport useGlobalConfig from '../base/hooks/useGlobalConfig';\nimport KeyCode from '../../utils/KeyCode';\nimport { sliderProps, sliderEmits } from './Slider.type';\n\nexport default defineComponent({\n name: 'USlider',\n props: sliderProps,\n emits: sliderEmits,\n setup(props, { emit }) {\n const sliderRef = ref<any | null>(null);\n const stateValue = ref(props.modelValue);\n const handleSize = computed(() => {\n return props.variant === 'strong' ? 'var(--slider-strong-handle-size)' : 'var(--slider-handle-size)';\n });\n\n // prefixCls\n const { prefixCls, config: globalConfig } = useGlobalConfig('slider');\n\n const computedDirection = computed(() => {\n return props.direction || globalConfig.direction || 'ltr';\n });\n\n const isRLT = computed(() => {\n return computedDirection.value === 'rtl' && !props.vertical;\n });\n\n // methods\n\n const getSliderStart = () => {\n if (sliderRef.value) {\n const rect = sliderRef.value.getBoundingClientRect();\n if (props.vertical) {\n return rect.top;\n }\n if (isRLT.value) {\n return window.pageXOffset + rect.right;\n }\n return window.pageXOffset + rect.left;\n }\n return 0;\n };\n\n const getMousePosition = (e: any) => {\n let zoom = 1;\n if (window.visualViewport) {\n zoom = +(window.visualViewport.width / document.body.getBoundingClientRect().width).toFixed(2);\n }\n return (props.vertical ? e.clientY : e.pageX) / zoom;\n };\n\n const getSliderLength = () => {\n if (!sliderRef.value) {\n return 0;\n }\n const coords = sliderRef.value.getBoundingClientRect();\n return props.vertical ? coords.height : coords.width;\n };\n\n const calcValue = (offset: number) => {\n const ratio = Math.max(offset, 0) / getSliderLength();\n const value = props.vertical ? (1 - ratio) * (props.max - props.min) + props.min : ratio * (props.max - props.min) + props.min;\n return Math.round(value);\n };\n\n const trimAlignValue = (v: number) => {\n if (v <= props.min) {\n return props.min;\n }\n if (v >= props.max) {\n return props.max;\n }\n return v;\n };\n\n const calcValueByPosition = (position: number) => {\n const pixelOffset = computedDirection.value === 'ltr' ? position - getSliderStart() : getSliderStart() - position;\n const nextValue = trimAlignValue(calcValue(pixelOffset));\n return nextValue;\n };\n\n const calcOffset = (value: number) => {\n const ratio = (value - props.min) / (props.max - props.min);\n return ratio * 100;\n };\n\n const makeDecimal = (value: number, step: number) => {\n if (step < 1) {\n const stepStr = step.toString();\n const m = stepStr.split('.')[1].length || 0;\n const multiple = 10 ** m;\n return ((value * multiple) % (step * multiple)) / multiple;\n }\n return value % step;\n };\n\n const updateStateValue = (value: number) => {\n let nextValue = value;\n if (props.step) {\n const modulus = makeDecimal(nextValue, props.step);\n const subValue = nextValue - modulus;\n nextValue = modulus > props.step / 2 ? subValue + props.step : subValue;\n }\n if (props.marks) {\n const marksMap: Record<number, number> = {};\n const subValueArr: number[] = [];\n const marksKeys = Object.keys(props.marks);\n marksKeys.forEach((ele) => {\n const key = Math.abs(value - Number(ele));\n subValueArr.push(key);\n marksMap[key] = Number(ele);\n });\n const minValue = Math.min.apply(null, subValueArr);\n nextValue = Math.abs(value - nextValue) > minValue || props.step === undefined ? marksMap[minValue] : nextValue;\n }\n if (!props.range) {\n stateValue.value = nextValue;\n } else if (Array.isArray(stateValue.value)) {\n if (nextValue > stateValue.value[1] || Math.abs(nextValue - stateValue.value[0]) > Math.abs(nextValue - stateValue.value[1])) {\n stateValue.value[1] = nextValue;\n } else if (\n (stateValue.value[1] - nextValue === 1 && nextValue - stateValue.value[0] !== 1) ||\n (nextValue - stateValue.value[0] === 1 && nextValue === stateValue.value[1])\n ) {\n stateValue.value[1] = stateValue.value[0];\n } else if (stateValue.value[1] === stateValue.value[0]) {\n if (nextValue < stateValue.value[0]) {\n stateValue.value[0] = nextValue;\n } else {\n stateValue.value[1] = nextValue;\n }\n } else {\n stateValue.value[0] = nextValue;\n }\n }\n emit('update:modelValue', stateValue.value);\n emit('change', stateValue.value);\n };\n\n const handleMouseUp = () => {\n // eslint-disable-next-line @typescript-eslint/no-use-before-define\n removeDocumentEvents();\n emit('after-change', stateValue.value);\n };\n\n const handleMouseMove = (e: any) => {\n if (!sliderRef.value) {\n handleMouseUp();\n return false;\n }\n const position = getMousePosition(e);\n const newStateValue = calcValueByPosition(position);\n updateStateValue(newStateValue);\n };\n\n const addDocumentMouseEvents = () => {\n document.addEventListener('mousemove', handleMouseMove);\n document.addEventListener('mouseup', handleMouseUp);\n };\n const removeDocumentEvents = () => {\n document.removeEventListener('mousemove', handleMouseMove);\n document.removeEventListener('mouseup', handleMouseUp);\n };\n\n const getCurrentValue = (type: string) => {\n if (type === 'min') {\n return Array.isArray(stateValue.value) ? stateValue.value[0] : stateValue.value;\n }\n return (stateValue.value as number[])[1];\n };\n\n const pauseEvent = (e: any) => {\n e.stopPropagation();\n e.preventDefault();\n };\n\n // computed\n const rangeStyle = computed(() => {\n if (Array.isArray(stateValue.value)) {\n let left = '0';\n let width = '0';\n if (stateValue.value[0] === props.min && stateValue.value[1] === props.min) {\n left = '0';\n width = '0';\n } else if (props.variant === 'strong') {\n left = `calc(${calcOffset(stateValue.value[0])}% - ${handleSize.value} / 2)`;\n width = `calc(${calcOffset(stateValue.value[1] - stateValue.value[0])}% + ${handleSize.value})`;\n } else {\n left = `calc(${calcOffset(stateValue.value[0])}%)`;\n width = `calc(${calcOffset(stateValue.value[1] - stateValue.value[0])}%)`;\n }\n\n if (props.vertical) {\n return {\n bottom: `${left}`,\n height: `${width}`\n };\n }\n if (computedDirection.value === 'rtl') {\n return {\n right: `${left}`,\n width: `${width}`\n };\n }\n return {\n left: `${left}`,\n width: `${width}`\n };\n }\n let size = '0';\n\n if (stateValue.value === props.min) {\n size = '0';\n } else if (props.variant === 'strong') {\n size = `calc(${calcOffset(stateValue.value)}% + ${handleSize.value})`;\n } else {\n size = `calc(${calcOffset(stateValue.value)}% + ${handleSize.value} / 2)`;\n }\n\n if (props.vertical) {\n return {\n bottom: `calc(-1 * ${handleSize.value} / 2)`,\n height: `${size}`\n };\n }\n if (computedDirection.value === 'rtl') {\n return {\n right: `calc(-1 * ${handleSize.value} / 2)`,\n width: `${size}`\n };\n }\n return {\n left: `calc(-1 * ${handleSize.value} / 2)`,\n width: `${size}`\n };\n });\n\n const maskStyle = computed(() => {\n if (Array.isArray(stateValue.value)) {\n const sizes = [\n {\n left: '0',\n width: '0'\n },\n {\n left: '0',\n width: '0'\n }\n ];\n\n if (stateValue.value[0] === props.min && stateValue.value[1] === props.min) {\n sizes[0].left = `calc(-1 * ${handleSize.value} / 2 - 1px)`;\n sizes[0].width = `calc(100% + ${handleSize.value})`;\n } else if (props.variant === 'strong') {\n sizes[0].left = `calc(-1 * ${handleSize.value} / 2 - 2px)`;\n sizes[0].width = `calc(${calcOffset(stateValue.value[0])}% + ${handleSize.value} + 2px)`;\n sizes[1].left = `calc(${calcOffset(stateValue.value[1])}% - ${handleSize.value} / 2)`;\n sizes[1].width = `calc(${100 - calcOffset(stateValue.value[1])}% + ${handleSize.value} + 2px)`;\n } else {\n sizes[0].left = `calc(-1 * ${handleSize.value} / 2 - 1px)`;\n sizes[0].width = `calc(${calcOffset(stateValue.value[0])}% + ${handleSize.value} / 2)`;\n sizes[1].left = `calc(${calcOffset(stateValue.value[1])}%)`;\n sizes[1].width = `calc(${100 - calcOffset(stateValue.value[1])}% + ${handleSize.value} / 2)`;\n }\n\n if (props.vertical) {\n return [\n {\n bottom: `${sizes[0].left}`,\n height: `${sizes[0].width}`\n },\n {\n bottom: `${sizes[1].left}`,\n height: `${sizes[1].width}`\n }\n ];\n }\n return [\n {\n left: `${sizes[0].left}`,\n width: `${sizes[0].width}`\n },\n {\n left: `${sizes[1].left}`,\n width: `${sizes[1].width}`\n }\n ];\n }\n let size = '0';\n let left = '0';\n if (props.variant === 'strong') {\n left = `calc(-1 * ${handleSize.value} / 2 - 2px)`;\n size = `calc(${100 - calcOffset(stateValue.value)}% + ${handleSize.value} + 2px)`;\n } else {\n left = `calc(-1 * ${handleSize.value} / 2)`;\n\n size = `calc(${100 - calcOffset(stateValue.value)}% + ${handleSize.value} / 2)`;\n }\n if (props.vertical) {\n return {\n top: `${left}`,\n height: `${size}`\n };\n }\n if (computedDirection.value === 'rtl') {\n return {\n left: `${left}`,\n width: `${size}`\n };\n }\n return {\n right: `${left}`,\n width: `${size}`\n };\n });\n\n const minPointStyle = computed(() => {\n const minValue = Array.isArray(stateValue.value) ? stateValue.value[0] : stateValue.value;\n if (props.vertical) {\n return {\n bottom: `${calcOffset(minValue)}%`\n };\n }\n if (computedDirection.value === 'rtl') {\n return {\n right: `${calcOffset(minValue)}%`\n };\n }\n return {\n left: `${calcOffset(minValue)}%`\n };\n });\n const maxPointStyle = computed(() => {\n const maxValue = Array.isArray(stateValue.value) ? stateValue.value[1] : props.max;\n if (props.vertical) {\n return {\n bottom: `${calcOffset(maxValue)}%`\n };\n }\n if (computedDirection.value === 'rtl') {\n return {\n right: `${calcOffset(maxValue)}%`\n };\n }\n return {\n left: `${calcOffset(maxValue)}%`\n };\n });\n const lowerBound = computed(() => {\n return Array.isArray(stateValue.value) ? stateValue.value[0] : props.min;\n });\n const upperBound = computed(() => {\n return Array.isArray(stateValue.value) ? stateValue.value[1] : stateValue.value;\n });\n\n watch(\n () => props.modelValue,\n () => {\n stateValue.value = props.modelValue;\n }\n );\n\n // Events\n const handleMarkClick = ({ e, point }: { e: any; point: number }) => {\n pauseEvent(e);\n updateStateValue(point);\n };\n const handleMouseDown = (e: any) => {\n if (props.disabled) return;\n const position = getMousePosition(e);\n const newStateValue = calcValueByPosition(position);\n updateStateValue(newStateValue);\n addDocumentMouseEvents();\n pauseEvent(e);\n };\n\n const handleKeyDown = (e: any, type: string) => {\n let nextValue = getCurrentValue(type);\n const stepValue = props.step || 1;\n if (e.keyCode === KeyCode.RIGHT || e.keyCode === KeyCode.UP) {\n nextValue += stepValue;\n }\n if (e.keyCode === KeyCode.DOWN || e.keyCode === KeyCode.LEFT) {\n nextValue -= stepValue;\n }\n updateStateValue(nextValue);\n pauseEvent(e);\n };\n\n return {\n sliderRef,\n prefixCls,\n rangeStyle,\n maskStyle,\n minPointStyle,\n maxPointStyle,\n stateValue,\n lowerBound,\n upperBound,\n handleMouseDown,\n handleMouseUp,\n handleKeyDown,\n handleMarkClick\n };\n },\n render() {\n const handler = (\n <>\n <UTooltip\n title={this.tipFormatter(this.range ? (this.stateValue as number[])[0] : (this.stateValue as number))}\n visible={this.tooltipVisible}\n offset={[0, 0]}\n >\n <Handle\n prefix-cls={this.prefixCls}\n style={this.minPointStyle}\n onKeydown={(e: any) => this.handleKeyDown(e, 'min')}\n isRangeStart={this.range}\n />\n </UTooltip>\n {this.range && (\n <UTooltip title={this.tipFormatter((this.stateValue as number[])[1])} visible={this.tooltipVisible} offset={[0, 0]}>\n <Handle prefix-cls={this.prefixCls} style={this.maxPointStyle} onKeydown={(e: any) => this.handleKeyDown(e, 'max')} />\n </UTooltip>\n )}\n </>\n );\n\n return (\n <div\n ref=\"sliderRef\"\n class={[\n this.prefixCls,\n `${this.prefixCls}-variant-${this.variant}`,\n {\n [`${this.prefixCls}-with-marks`]: this.marks && Object.keys(this.marks).length,\n [`${this.prefixCls}-disabled`]: this.disabled,\n [`${this.prefixCls}-vertical`]: this.vertical,\n [`${this.prefixCls}-rtl`]: this.direction === 'rtl' && !this.vertical\n }\n ]}\n onMousedown={this.handleMouseDown}\n onMouseup={this.handleMouseUp}\n >\n <div class={`${this.prefixCls}-content`}>\n <div class={`${this.prefixCls}-track`}></div>\n {this.included && !this.disabled ? (\n this.range ? (\n <>\n <div class={`${this.prefixCls}-mask-start`} style={(this.maskStyle as any[])[0]} />\n <div class={`${this.prefixCls}-mask`} style={(this.maskStyle as any[])[1]} />\n </>\n ) : (\n <div class={`${this.prefixCls}-mask`} style={this.maskStyle} />\n )\n ) : null}\n {this.included && <div class={`${this.prefixCls}-range`} style={this.rangeStyle} />}\n\n <Steps\n prefixCls={this.prefixCls}\n included={this.included}\n marks={this.marks}\n min={this.min}\n max={this.max}\n lowerBound={this.lowerBound}\n upperBound={this.upperBound}\n vertical={this.vertical}\n direction={this.direction}\n showDots={this.showDots}\n step={this.step}\n />\n {handler}\n {!!this.marks && (\n <Marks\n prefix-cls={this.prefixCls}\n included={this.included}\n marks={this.marks}\n min={this.min}\n max={this.max}\n lowerBound={this.lowerBound}\n upperBound={this.upperBound}\n vertical={this.vertical}\n direction={this.direction}\n onMark-click={this.handleMarkClick}\n />\n )}\n </div>\n </div>\n );\n }\n});\n"],"names":["defineComponent","name","props","sliderProps","emits","sliderEmits","setup","emit","sliderRef","ref","stateValue","modelValue","handleSize","computed","variant","prefixCls","config","globalConfig","useGlobalConfig","computedDirection","direction","isRLT","value","vertical","getSliderStart","rect","getBoundingClientRect","top","window","pageXOffset","right","left","getMousePosition","e","zoom","visualViewport","width","document","body","toFixed","clientY","pageX","getSliderLength","coords","height","calcValue","offset","ratio","Math","max","min","round","trimAlignValue","v","calcValueByPosition","position","pixelOffset","nextValue","calcOffset","makeDecimal","step","stepStr","toString","m","split","length","multiple","updateStateValue","modulus","subValue","marks","marksMap","subValueArr","marksKeys","Object","keys","forEach","ele","key","abs","Number","push","minValue","apply","undefined","range","Array","isArray","handleMouseUp","removeDocumentEvents","handleMouseMove","newStateValue","addDocumentMouseEvents","addEventListener","removeEventListener","getCurrentValue","type","pauseEvent","stopPropagation","preventDefault","rangeStyle","bottom","size","maskStyle","sizes","minPointStyle","maxPointStyle","maxValue","lowerBound","upperBound","watch","handleMarkClick","point","handleMouseDown","disabled","handleKeyDown","stepValue","keyCode","KeyCode","RIGHT","UP","DOWN","LEFT","render","handler","_createVNode","_Fragment","UTooltip","tipFormatter","tooltipVisible","default","Handle","included","Steps","showDots","Marks"],"mappings":"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"}
1
+ {"version":3,"file":"Slider.js","sources":["../../../../src/components/Slider/Slider.tsx"],"sourcesContent":["import { computed, defineComponent, ref, watch } from 'vue';\nimport UTooltip from '@uxd-ui/components/Tooltip';\nimport Handle from './Handle.vue';\nimport Marks from './Marks.vue';\nimport Steps from './Steps.vue';\nimport useGlobalConfig from '../base/hooks/useGlobalConfig';\nimport KeyCode from '../../utils/KeyCode';\nimport { sliderProps, sliderEmits } from './Slider.type';\n\nexport default defineComponent({\n name: 'USlider',\n props: sliderProps,\n emits: sliderEmits,\n setup(props, { emit }) {\n const sliderRef = ref<any | null>(null);\n const stateValue = ref(props.modelValue);\n const handleSize = computed(() => {\n return props.variant === 'strong' ? 'var(--slider-strong-handle-size)' : 'var(--slider-handle-size)';\n });\n\n // prefixCls\n const { prefixCls, config: globalConfig } = useGlobalConfig('slider');\n\n const computedDirection = computed(() => {\n return props.direction || globalConfig.direction || 'ltr';\n });\n\n const isRLT = computed(() => {\n return computedDirection.value === 'rtl' && !props.vertical;\n });\n\n // methods\n\n const getSliderStart = () => {\n if (sliderRef.value) {\n const rect = sliderRef.value.getBoundingClientRect();\n if (props.vertical) {\n return rect.top;\n }\n if (isRLT.value) {\n return window.pageXOffset + rect.right;\n }\n return window.pageXOffset + rect.left;\n }\n return 0;\n };\n\n const getMousePosition = (e: any) => {\n let zoom = 1;\n if (window.visualViewport) {\n zoom = +(window.visualViewport.width / document.body.getBoundingClientRect().width).toFixed(2);\n }\n return (props.vertical ? e.clientY : e.pageX) / zoom;\n };\n\n const getSliderLength = () => {\n if (!sliderRef.value) {\n return 0;\n }\n const coords = sliderRef.value.getBoundingClientRect();\n return props.vertical ? coords.height : coords.width;\n };\n\n const calcValue = (offset: number) => {\n const ratio = Math.max(offset, 0) / getSliderLength();\n const value = props.vertical ? (1 - ratio) * (props.max - props.min) + props.min : ratio * (props.max - props.min) + props.min;\n return Math.round(value);\n };\n\n const trimAlignValue = (v: number) => {\n if (v <= props.min) {\n return props.min;\n }\n if (v >= props.max) {\n return props.max;\n }\n return v;\n };\n\n const calcValueByPosition = (position: number) => {\n const pixelOffset = computedDirection.value === 'ltr' ? position - getSliderStart() : getSliderStart() - position;\n const nextValue = trimAlignValue(calcValue(pixelOffset));\n return nextValue;\n };\n\n const calcOffset = (value: number) => {\n const ratio = (value - props.min) / (props.max - props.min);\n return ratio * 100;\n };\n\n const makeDecimal = (value: number, step: number) => {\n if (step < 1) {\n const stepStr = step.toString();\n const m = stepStr.split('.')[1].length || 0;\n const multiple = 10 ** m;\n return ((value * multiple) % (step * multiple)) / multiple;\n }\n return value % step;\n };\n\n const updateStateValue = (value: number) => {\n let nextValue = value;\n if (props.step) {\n const modulus = makeDecimal(nextValue, props.step);\n const subValue = nextValue - modulus;\n nextValue = modulus > props.step / 2 ? subValue + props.step : subValue;\n }\n if (props.marks) {\n const marksMap: Record<number, number> = {};\n const subValueArr: number[] = [];\n const marksKeys = Object.keys(props.marks);\n marksKeys.forEach((ele) => {\n const key = Math.abs(value - Number(ele));\n subValueArr.push(key);\n marksMap[key] = Number(ele);\n });\n const minValue = Math.min.apply(null, subValueArr);\n nextValue = Math.abs(value - nextValue) > minValue || props.step === undefined ? marksMap[minValue] : nextValue;\n }\n if (!props.range) {\n stateValue.value = nextValue;\n } else if (Array.isArray(stateValue.value)) {\n if (nextValue > stateValue.value[1] || Math.abs(nextValue - stateValue.value[0]) > Math.abs(nextValue - stateValue.value[1])) {\n stateValue.value[1] = nextValue;\n } else if (\n (stateValue.value[1] - nextValue === 1 && nextValue - stateValue.value[0] !== 1) ||\n (nextValue - stateValue.value[0] === 1 && nextValue === stateValue.value[1])\n ) {\n stateValue.value[1] = stateValue.value[0];\n } else if (stateValue.value[1] === stateValue.value[0]) {\n if (nextValue < stateValue.value[0]) {\n stateValue.value[0] = nextValue;\n } else {\n stateValue.value[1] = nextValue;\n }\n } else {\n stateValue.value[0] = nextValue;\n }\n }\n emit('update:modelValue', stateValue.value);\n emit('change', stateValue.value);\n };\n\n const handleMouseUp = () => {\n // eslint-disable-next-line @typescript-eslint/no-use-before-define\n removeDocumentEvents();\n emit('after-change', stateValue.value);\n };\n\n const handleMouseMove = (e: any) => {\n if (!sliderRef.value) {\n handleMouseUp();\n return false;\n }\n const position = getMousePosition(e);\n const newStateValue = calcValueByPosition(position);\n updateStateValue(newStateValue);\n };\n\n const addDocumentMouseEvents = () => {\n document.addEventListener('mousemove', handleMouseMove);\n document.addEventListener('mouseup', handleMouseUp);\n };\n const removeDocumentEvents = () => {\n document.removeEventListener('mousemove', handleMouseMove);\n document.removeEventListener('mouseup', handleMouseUp);\n };\n\n const getCurrentValue = (type: string) => {\n if (type === 'min') {\n return Array.isArray(stateValue.value) ? stateValue.value[0] : stateValue.value;\n }\n return (stateValue.value as number[])[1];\n };\n\n const pauseEvent = (e: any) => {\n e.stopPropagation();\n e.preventDefault();\n };\n\n // computed\n const rangeStyle = computed(() => {\n if (Array.isArray(stateValue.value)) {\n let left = '0';\n let width = '0';\n if (stateValue.value[0] === props.min && stateValue.value[1] === props.min) {\n left = '0';\n width = '0';\n } else if (props.variant === 'strong') {\n left = `calc(${calcOffset(stateValue.value[0])}% - ${handleSize.value} / 2)`;\n width = `calc(${calcOffset(stateValue.value[1] - stateValue.value[0])}% + ${handleSize.value})`;\n } else {\n left = `calc(${calcOffset(stateValue.value[0])}%)`;\n width = `calc(${calcOffset(stateValue.value[1] - stateValue.value[0])}%)`;\n }\n\n if (props.vertical) {\n return {\n bottom: `${left}`,\n height: `${width}`\n };\n }\n if (computedDirection.value === 'rtl') {\n return {\n right: `${left}`,\n width: `${width}`\n };\n }\n return {\n left: `${left}`,\n width: `${width}`\n };\n }\n let size = '0';\n\n if (stateValue.value === props.min) {\n size = '0';\n } else if (props.variant === 'strong') {\n size = `calc(${calcOffset(stateValue.value)}% + ${handleSize.value})`;\n } else {\n size = `calc(${calcOffset(stateValue.value)}% + ${handleSize.value} / 2)`;\n }\n\n if (props.vertical) {\n return {\n bottom: `calc(-1 * ${handleSize.value} / 2)`,\n height: `${size}`\n };\n }\n if (computedDirection.value === 'rtl') {\n return {\n right: `calc(-1 * ${handleSize.value} / 2)`,\n width: `${size}`\n };\n }\n return {\n left: `calc(-1 * ${handleSize.value} / 2)`,\n width: `${size}`\n };\n });\n\n const maskStyle = computed(() => {\n if (Array.isArray(stateValue.value)) {\n const sizes = [\n {\n left: '0',\n width: '0'\n },\n {\n left: '0',\n width: '0'\n }\n ];\n\n if (stateValue.value[0] === props.min && stateValue.value[1] === props.min) {\n sizes[0].left = `calc(-1 * ${handleSize.value} / 2 - 1px)`;\n sizes[0].width = `calc(100% + ${handleSize.value})`;\n } else if (props.variant === 'strong') {\n sizes[0].left = `calc(-1 * ${handleSize.value} / 2 - 2px)`;\n sizes[0].width = `calc(${calcOffset(stateValue.value[0])}% + ${handleSize.value} + 2px)`;\n sizes[1].left = `calc(${calcOffset(stateValue.value[1])}% - ${handleSize.value} / 2)`;\n sizes[1].width = `calc(${100 - calcOffset(stateValue.value[1])}% + ${handleSize.value} + 2px)`;\n } else {\n sizes[0].left = `calc(-1 * ${handleSize.value} / 2 - 1px)`;\n sizes[0].width = `calc(${calcOffset(stateValue.value[0])}% + ${handleSize.value} / 2)`;\n sizes[1].left = `calc(${calcOffset(stateValue.value[1])}%)`;\n sizes[1].width = `calc(${100 - calcOffset(stateValue.value[1])}% + ${handleSize.value} / 2)`;\n }\n\n if (props.vertical) {\n return [\n {\n bottom: `${sizes[0].left}`,\n height: `${sizes[0].width}`\n },\n {\n bottom: `${sizes[1].left}`,\n height: `${sizes[1].width}`\n }\n ];\n }\n return [\n {\n left: `${sizes[0].left}`,\n width: `${sizes[0].width}`\n },\n {\n left: `${sizes[1].left}`,\n width: `${sizes[1].width}`\n }\n ];\n }\n let size = '0';\n let left = '0';\n if (props.variant === 'strong') {\n left = `calc(-1 * ${handleSize.value} / 2 - 2px)`;\n size = `calc(${100 - calcOffset(stateValue.value)}% + ${handleSize.value} + 2px)`;\n } else {\n left = `calc(-1 * ${handleSize.value} / 2)`;\n\n size = `calc(${100 - calcOffset(stateValue.value)}% + ${handleSize.value} / 2)`;\n }\n if (props.vertical) {\n return {\n top: `${left}`,\n height: `${size}`\n };\n }\n if (computedDirection.value === 'rtl') {\n return {\n left: `${left}`,\n width: `${size}`\n };\n }\n return {\n right: `${left}`,\n width: `${size}`\n };\n });\n\n const minPointStyle = computed(() => {\n const minValue = Array.isArray(stateValue.value) ? stateValue.value[0] : stateValue.value;\n if (props.vertical) {\n return {\n bottom: `${calcOffset(minValue)}%`\n };\n }\n if (computedDirection.value === 'rtl') {\n return {\n right: `${calcOffset(minValue)}%`\n };\n }\n return {\n left: `${calcOffset(minValue)}%`\n };\n });\n const maxPointStyle = computed(() => {\n const maxValue = Array.isArray(stateValue.value) ? stateValue.value[1] : props.max;\n if (props.vertical) {\n return {\n bottom: `${calcOffset(maxValue)}%`\n };\n }\n if (computedDirection.value === 'rtl') {\n return {\n right: `${calcOffset(maxValue)}%`\n };\n }\n return {\n left: `${calcOffset(maxValue)}%`\n };\n });\n const lowerBound = computed(() => {\n return Array.isArray(stateValue.value) ? stateValue.value[0] : props.min;\n });\n const upperBound = computed(() => {\n return Array.isArray(stateValue.value) ? stateValue.value[1] : stateValue.value;\n });\n\n watch(\n () => props.modelValue,\n () => {\n stateValue.value = props.modelValue;\n }\n );\n\n // Events\n const handleMarkClick = ({ e, point }: { e: any; point: number }) => {\n pauseEvent(e);\n updateStateValue(point);\n };\n const handleMouseDown = (e: any) => {\n if (props.disabled) return;\n const position = getMousePosition(e);\n const newStateValue = calcValueByPosition(position);\n updateStateValue(newStateValue);\n addDocumentMouseEvents();\n pauseEvent(e);\n };\n\n const handleKeyDown = (e: any, type: string) => {\n let nextValue = getCurrentValue(type);\n const stepValue = props.step || 1;\n if (e.keyCode === KeyCode.RIGHT || e.keyCode === KeyCode.UP) {\n nextValue += stepValue;\n }\n if (e.keyCode === KeyCode.DOWN || e.keyCode === KeyCode.LEFT) {\n nextValue -= stepValue;\n }\n nextValue = trimAlignValue(nextValue);\n updateStateValue(nextValue);\n pauseEvent(e);\n };\n\n return {\n sliderRef,\n prefixCls,\n rangeStyle,\n maskStyle,\n minPointStyle,\n maxPointStyle,\n stateValue,\n lowerBound,\n upperBound,\n handleMouseDown,\n handleMouseUp,\n handleKeyDown,\n handleMarkClick\n };\n },\n render() {\n const handler = (\n <>\n <UTooltip\n title={this.tipFormatter(this.range ? (this.stateValue as number[])[0] : (this.stateValue as number))}\n visible={this.tooltipVisible}\n offset={[0, 0]}\n >\n <Handle\n prefix-cls={this.prefixCls}\n style={this.minPointStyle}\n onKeydown={(e: any) => this.handleKeyDown(e, 'min')}\n isRangeStart={this.range}\n />\n </UTooltip>\n {this.range && (\n <UTooltip title={this.tipFormatter((this.stateValue as number[])[1])} visible={this.tooltipVisible} offset={[0, 0]}>\n <Handle prefix-cls={this.prefixCls} style={this.maxPointStyle} onKeydown={(e: any) => this.handleKeyDown(e, 'max')} />\n </UTooltip>\n )}\n </>\n );\n\n return (\n <div\n ref=\"sliderRef\"\n class={[\n this.prefixCls,\n `${this.prefixCls}-variant-${this.variant}`,\n {\n [`${this.prefixCls}-with-marks`]: this.marks && Object.keys(this.marks).length,\n [`${this.prefixCls}-disabled`]: this.disabled,\n [`${this.prefixCls}-vertical`]: this.vertical,\n [`${this.prefixCls}-rtl`]: this.direction === 'rtl' && !this.vertical\n }\n ]}\n onMousedown={this.handleMouseDown}\n onMouseup={this.handleMouseUp}\n >\n <div class={`${this.prefixCls}-content`}>\n <div class={`${this.prefixCls}-track`}></div>\n {this.included && !this.disabled ? (\n this.range ? (\n <>\n <div class={`${this.prefixCls}-mask-start`} style={(this.maskStyle as any[])[0]} />\n <div class={`${this.prefixCls}-mask`} style={(this.maskStyle as any[])[1]} />\n </>\n ) : (\n <div class={`${this.prefixCls}-mask`} style={this.maskStyle} />\n )\n ) : null}\n {this.included && <div class={`${this.prefixCls}-range`} style={this.rangeStyle} />}\n\n <Steps\n prefixCls={this.prefixCls}\n included={this.included}\n marks={this.marks}\n min={this.min}\n max={this.max}\n lowerBound={this.lowerBound}\n upperBound={this.upperBound}\n vertical={this.vertical}\n direction={this.direction}\n showDots={this.showDots}\n step={this.step}\n />\n {handler}\n {!!this.marks && (\n <Marks\n prefix-cls={this.prefixCls}\n included={this.included}\n marks={this.marks}\n min={this.min}\n max={this.max}\n lowerBound={this.lowerBound}\n upperBound={this.upperBound}\n vertical={this.vertical}\n direction={this.direction}\n onMark-click={this.handleMarkClick}\n />\n )}\n </div>\n </div>\n );\n }\n});\n"],"names":["defineComponent","name","props","sliderProps","emits","sliderEmits","setup","emit","sliderRef","ref","stateValue","modelValue","handleSize","computed","variant","prefixCls","config","globalConfig","useGlobalConfig","computedDirection","direction","isRLT","value","vertical","getSliderStart","rect","getBoundingClientRect","top","window","pageXOffset","right","left","getMousePosition","e","zoom","visualViewport","width","document","body","toFixed","clientY","pageX","getSliderLength","coords","height","calcValue","offset","ratio","Math","max","min","round","trimAlignValue","v","calcValueByPosition","position","pixelOffset","nextValue","calcOffset","makeDecimal","step","stepStr","toString","m","split","length","multiple","updateStateValue","modulus","subValue","marks","marksMap","subValueArr","marksKeys","Object","keys","forEach","ele","key","abs","Number","push","minValue","apply","undefined","range","Array","isArray","handleMouseUp","removeDocumentEvents","handleMouseMove","newStateValue","addDocumentMouseEvents","addEventListener","removeEventListener","getCurrentValue","type","pauseEvent","stopPropagation","preventDefault","rangeStyle","bottom","size","maskStyle","sizes","minPointStyle","maxPointStyle","maxValue","lowerBound","upperBound","watch","handleMarkClick","point","handleMouseDown","disabled","handleKeyDown","stepValue","keyCode","KeyCode","RIGHT","UP","DOWN","LEFT","render","handler","_createVNode","_Fragment","UTooltip","tipFormatter","tooltipVisible","default","Handle","included","Steps","showDots","Marks"],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@koi-design/uxd-ui",
3
- "version": "14.0.42",
3
+ "version": "14.0.43",
4
4
  "description": "uxd ui component with vue3.0",
5
5
  "license": "MIT",
6
6
  "maintainers": [],
@@ -1 +1 @@
1
- :root,[data-theme-color]{--primary-color:var(--primary-9)}.uui-notice{--notice-container-width:420px;--notice-container-padding:var(--space-4);--notice-container-gap:var(--space-2);--notice-padding:var(--space-4) var(--space-8) var(--space-4) var(--space-4);--notice-border-radius:var(--radius-md);--notice-border-color:var(--color-border-split);--notice-background-color:var(--color-background);--notice-icon-size:var(--space-4);--notice-text-color:var(--default-font-color);--notice-icon-color:var(--default-font-color);--notice-close-color:var(--default-font-color);--notice-desc-color:var(--secondary-font-color)}.uui-notice{box-sizing:border-box;margin:0;padding:0;color:var(--default-font-color);font-size:var(--default-font-size);font-variant:var(--default-font-variant);line-height:var(--default-line-height);list-style:none;font-feature-settings:var(--default-font-feature-settings);position:fixed;z-index:var(--zindex-notice);width:100%;max-width:var(--notice-container-width);padding:var(--notice-container-padding)}.uui-notice>span{display:flex;flex-direction:column;gap:var(--notice-container-gap)}.uui-notice-notice{position:relative;padding:var(--notice-padding);overflow:hidden;background:var(--notice-background-color);border:1px solid var(--notice-border-color);border-radius:var(--notice-border-radius);box-shadow:var(--notice-shadow)}.uui-notice-notice:has([data-type=error]){--notice-icon-color:white;--notice-text-color:white;--notice-close-color:white;--notice-desc-color:white;--notice-background-color:var(--error-color);--notice-border-color:var(--error-color)}.uui-notice-notice:has([data-type=warning]){--notice-icon-color:white;--notice-text-color:white;--notice-close-color:white;--notice-desc-color:white;--notice-background-color:var(--warning-color)}.uui-notice-notice:has([data-type=success]){--notice-icon-color:white;--notice-text-color:white;--notice-close-color:white;--notice-desc-color:white;--notice-background-color:var(--success-color)}.uui-notice-wrapper{display:flex;align-items:center;position:relative;gap:var(--space-3)}.uui-notice-with-icon{padding-left:var(--space-6)}.uui-notice-icon{position:absolute;left:0;top:0;font-size:var(--notice-icon-size);line-height:1;color:var(--notice-icon-color)}.uui-notice-title{font-size:var(--default-font-size);line-height:var(--line-height-none);color:var(--notice-text-color);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.uui-notice-with-desc .uui-notice-title{margin-bottom:var(--space-1);font-weight:var(--font-weight-medium)}.uui-notice-with-icon .uui-notice-title{transform:translateY(1px)}.uui-notice-desc{font-size:var(--font-size-xs);color:var(--notice-desc-color);line-height:var(--line-height-5)}.uui-notice-btn{display:flex;align-items:center;justify-content:center;background:0 0;border:1px solid var(--color-border-base);flex:0;padding:0 var(--space-3);height:var(--space-8);white-space:nowrap;border-radius:var(--radius-base);color:var(--notice-text-color);cursor:pointer;transition:all .3s ease}.uui-notice-notice-close{position:absolute;top:var(--space-4);right:var(--space-3);opacity:.7;width:var(--space-4);height:var(--space-4);display:flex;align-items:center;justify-content:center}.uui-notice-notice-close i.uui-icon{font-size:var(--font-size-base);color:var(--notice-close-color)}.uui-notice-notice-close:hover{opacity:1}.uui-notice .move-notice-enter-active{animation-duration:var(--animation-time,.3);animation-fill-mode:both;animation-name:moveNoticeIn}.uui-notice .move-notice-leave-active{animation-duration:var(--animation-time,.3);animation-fill-mode:both;animation-name:moveNoticeOut}.uui-notice .move-notice-enter-from{opacity:0;animation-timing-function:var(--ease-in-out)}.uui-notice .move-notice-leave-to{animation-timing-function:var(--ease-in-out)}.uui-notice-bottom-left,.uui-notice-bottom-right{margin-right:0;margin-left:var(--notice-margin-horizontal)}.uui-notice-bottom-left .move-notice-enter-active,.uui-notice-bottom-right .move-notice-enter-active{animation-name:moveNoticeBottomIn}.uui-notice-bottom-left .move-notice-leave-active,.uui-notice-bottom-right .move-notice-leave-active{animation-name:moveNoticeBottomOut}@keyframes moveNoticeBottomIn{0%{opacity:0;transform-origin:0 0;transform:translateY(100%)}100%{opacity:1;transform-origin:0 0;transform:translateY(0)}}@keyframes moveNoticeIn{0%{opacity:0;transform-origin:0 0;transform:translateY(-100%)}100%{opacity:1;transform-origin:0 0;transform:translateY(0)}}@keyframes moveNoticeOut{0%{transform-origin:0 0;transform:translateX(0);opacity:1}70%{transform-origin:0 0;transform:translateX(100%);opacity:0;height:auto;padding:var(--notice-padding);margin-bottom:var(--notice-margin-base)}100%{transform-origin:0 0;transform:translateX(100%);opacity:0;height:0;padding:0;margin-bottom:0}}@keyframes moveNoticeLeftOut{0%{transform-origin:0 0;transform:translateX(0);opacity:1}70%{transform-origin:0 0;transform:translateX(-100%);opacity:0;height:auto;padding:var(--notice-padding);margin-bottom:var(--notice-margin-base)}100%{transform-origin:0 0;transform:translateX(-100%);opacity:0;height:0;padding:0;margin-bottom:0}}
1
+ :root,[data-theme-color]{--primary-color:var(--primary-9)}.uui-notice{--notice-container-width:420px;--notice-container-padding:var(--space-4);--notice-container-gap:var(--space-2);--notice-padding:var(--space-4) var(--space-8) var(--space-4) var(--space-4);--notice-border-radius:var(--radius-md);--notice-border-color:var(--color-border-split);--notice-background-color:var(--color-background);--notice-icon-size:var(--space-4);--notice-text-color:var(--default-font-color);--notice-icon-color:var(--default-font-color);--notice-close-color:var(--default-font-color);--notice-desc-color:var(--secondary-font-color)}.uui-notice{box-sizing:border-box;margin:0;padding:0;color:var(--default-font-color);font-size:var(--default-font-size);font-variant:var(--default-font-variant);line-height:var(--default-line-height);list-style:none;font-feature-settings:var(--default-font-feature-settings);position:fixed;z-index:var(--zindex-notice);width:100%;max-width:var(--notice-container-width);padding:var(--notice-container-padding)}.uui-notice:has(span:empty){display:none}.uui-notice>span{display:flex;flex-direction:column;gap:var(--notice-container-gap)}.uui-notice-notice{position:relative;padding:var(--notice-padding);overflow:hidden;background:var(--notice-background-color);border:1px solid var(--notice-border-color);border-radius:var(--notice-border-radius);box-shadow:var(--notice-shadow)}.uui-notice-notice:has([data-type=error]){--notice-icon-color:white;--notice-text-color:white;--notice-close-color:white;--notice-desc-color:white;--notice-background-color:var(--error-color);--notice-border-color:var(--error-color)}.uui-notice-notice:has([data-type=warning]){--notice-icon-color:white;--notice-text-color:white;--notice-close-color:white;--notice-desc-color:white;--notice-background-color:var(--warning-color)}.uui-notice-notice:has([data-type=success]){--notice-icon-color:white;--notice-text-color:white;--notice-close-color:white;--notice-desc-color:white;--notice-background-color:var(--success-color)}.uui-notice-wrapper{display:flex;align-items:center;position:relative;gap:var(--space-3)}.uui-notice-with-icon{padding-left:var(--space-6)}.uui-notice-icon{position:absolute;left:0;top:0;font-size:var(--notice-icon-size);line-height:1;color:var(--notice-icon-color)}.uui-notice-title{font-size:var(--default-font-size);line-height:var(--line-height-none);color:var(--notice-text-color);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.uui-notice-with-desc .uui-notice-title{margin-bottom:var(--space-1);font-weight:var(--font-weight-medium)}.uui-notice-with-icon .uui-notice-title{transform:translateY(1px)}.uui-notice-desc{font-size:var(--font-size-xs);color:var(--notice-desc-color);line-height:var(--line-height-5)}.uui-notice-btn{display:flex;align-items:center;justify-content:center;background:0 0;border:1px solid var(--color-border-base);flex:0;padding:0 var(--space-3);height:var(--space-8);white-space:nowrap;border-radius:var(--radius-base);color:var(--notice-text-color);cursor:pointer;transition:all .3s ease}.uui-notice-notice-close{position:absolute;top:var(--space-4);right:var(--space-3);opacity:.7;width:var(--space-4);height:var(--space-4);display:flex;align-items:center;justify-content:center}.uui-notice-notice-close i.uui-icon{font-size:var(--font-size-base);color:var(--notice-close-color)}.uui-notice-notice-close:hover{opacity:1}.uui-notice .move-notice-enter-active{animation-duration:var(--animation-time,.3);animation-fill-mode:both;animation-name:moveNoticeIn}.uui-notice .move-notice-leave-active{animation-duration:var(--animation-time,.3);animation-fill-mode:both;animation-name:moveNoticeOut}.uui-notice .move-notice-enter-from{opacity:0;animation-timing-function:var(--ease-in-out)}.uui-notice .move-notice-leave-to{animation-timing-function:var(--ease-in-out)}.uui-notice-bottom-left,.uui-notice-bottom-right{margin-right:0;margin-left:var(--notice-margin-horizontal)}.uui-notice-bottom-left .move-notice-enter-active,.uui-notice-bottom-right .move-notice-enter-active{animation-name:moveNoticeBottomIn}.uui-notice-bottom-left .move-notice-leave-active,.uui-notice-bottom-right .move-notice-leave-active{animation-name:moveNoticeBottomOut}@keyframes moveNoticeBottomIn{0%{opacity:0;transform-origin:0 0;transform:translateY(100%)}100%{opacity:1;transform-origin:0 0;transform:translateY(0)}}@keyframes moveNoticeIn{0%{opacity:0;transform-origin:0 0;transform:translateY(-100%)}100%{opacity:1;transform-origin:0 0;transform:translateY(0)}}@keyframes moveNoticeOut{0%{transform-origin:0 0;transform:translateX(0);opacity:1}70%{transform-origin:0 0;transform:translateX(100%);opacity:0;height:auto;padding:var(--notice-padding);margin-bottom:var(--notice-margin-base)}100%{transform-origin:0 0;transform:translateX(100%);opacity:0;height:0;padding:0;margin-bottom:0}}@keyframes moveNoticeLeftOut{0%{transform-origin:0 0;transform:translateX(0);opacity:1}70%{transform-origin:0 0;transform:translateX(-100%);opacity:0;height:auto;padding:var(--notice-padding);margin-bottom:var(--notice-margin-base)}100%{transform-origin:0 0;transform:translateX(-100%);opacity:0;height:0;padding:0;margin-bottom:0}}
@@ -13,6 +13,10 @@
13
13
  max-width: var(--notice-container-width);
14
14
  padding: var(--notice-container-padding);
15
15
 
16
+ &:has(span:empty) {
17
+ display: none;
18
+ }
19
+
16
20
  & > span {
17
21
  display: flex;
18
22
  flex-direction: column;