25 lines
		
	
	
		
			776 B
		
	
	
	
		
			JavaScript
		
	
	
	
	
	
			
		
		
	
	
			25 lines
		
	
	
		
			776 B
		
	
	
	
		
			JavaScript
		
	
	
	
	
	
import { shallowRef, ref, computed } from 'vue';
 | 
						|
import { useResizeObserver } from '@vueuse/core';
 | 
						|
import { MINIMUM_INPUT_WIDTH } from '../../constants/form.mjs';
 | 
						|
 | 
						|
function useCalcInputWidth() {
 | 
						|
  const calculatorRef = shallowRef();
 | 
						|
  const calculatorWidth = ref(0);
 | 
						|
  const inputStyle = computed(() => ({
 | 
						|
    minWidth: `${Math.max(calculatorWidth.value, MINIMUM_INPUT_WIDTH)}px`
 | 
						|
  }));
 | 
						|
  const resetCalculatorWidth = () => {
 | 
						|
    var _a, _b;
 | 
						|
    calculatorWidth.value = (_b = (_a = calculatorRef.value) == null ? void 0 : _a.getBoundingClientRect().width) != null ? _b : 0;
 | 
						|
  };
 | 
						|
  useResizeObserver(calculatorRef, resetCalculatorWidth);
 | 
						|
  return {
 | 
						|
    calculatorRef,
 | 
						|
    calculatorWidth,
 | 
						|
    inputStyle
 | 
						|
  };
 | 
						|
}
 | 
						|
 | 
						|
export { useCalcInputWidth };
 | 
						|
//# sourceMappingURL=index.mjs.map
 |