x-ui-design 1.0.28 → 1.0.30

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.js CHANGED
@@ -3850,7 +3850,7 @@ function applyMask(raw, mask, maskChar = MASK_CHAR) {
3850
3850
  var css_248z$f = ".xUi-input-container{align-items:center;background-color:transparent;border:1px solid var(--xui-border-color);border-radius:var(--xui-border-radius-sm);display:flex;overflow:hidden}.xUi-input-container:not(.xUi-input-error):not(.xUi-input-disabled):has(.xUi-input):hover,.xUi-input-container:not(.xUi-input-error):not(.xUi-input-disabled):has(.xUi-input:focus){border:1px solid var(--xui-primary-color)}.xUi-input-container.xUi-input-error{border-color:var(--xui-error-color)}.xUi-input-container.xUi-input-error .error-svg-icon,.xUi-input-suffix .error-svg-icon{color:var(--xui-error-color)}.xUi-input-wrapper{align-items:center;display:flex;flex-grow:1;position:relative;transition:border .3s}.xUi-input,.xUi-input-wrapper{background-color:transparent;height:-webkit-fill-available}.xUi-input{border:none;color:var(--xui-text-color);flex:1;outline:none;padding:.1px 7px;width:100%}.xUi-input:placeholder-shown{text-overflow:ellipsis}.xUi-input::placeholder{color:var(--xui-text-color);opacity:.6}.xUi-input-prefix,.xUi-input-suffix{background-color:transparent;gap:4px}.xUi-input-addon,.xUi-input-prefix,.xUi-input-suffix{align-items:center;color:var(--xui-text-color);display:flex;height:-webkit-fill-available;padding:0 7px}.xUi-input-addon.xUi-input-after{border-left:1px solid var(--xui-border-color)}.xUi-input-addon.xUi-input-before{border-right:1px solid var(--xui-border-color)}.xUi-input-large .xUi-input-addon{padding:0 10px}.xUi-input-clear{align-items:center;cursor:pointer;display:flex;margin:0 5px;position:relative;width:16px}.xUi-input-clear svg{color:var(--xui-text-color)}.xUi-input-disabled,.xUi-input-disabled .xUi-input,.xUi-input-disabled .xUi-input-suffix{background-color:var(--xui-color-disabled);cursor:not-allowed}.xUi-input-small{height:22px}.xUi-input-large .xUi-input-clear,.xUi-input-small .xUi-input,.xUi-input-small .xUi-input::placeholder{font-size:var(--xui-font-size-md)}.xUi-input-middle{border-radius:var(--xui-border-radius-md);height:30px}.xUi-input-large .xUi-input-clear,.xUi-input-middle .xUi-input,.xUi-input-middle .xUi-input::placeholder{font-size:var(--xui-font-size-md)}.xUi-input-large{border-radius:var(--xui-border-radius-lg);height:44px}.xUi-input-large .xUi-input,.xUi-input-large .xUi-input-clear,.xUi-input-large .xUi-input::placeholder{font-size:var(--xui-font-size-lg)}";
3851
3851
  styleInject(css_248z$f);
3852
3852
 
3853
- const InputComponent = ({
3853
+ const InputComponent = /*#__PURE__*/React.forwardRef(({
3854
3854
  size = 'large',
3855
3855
  error,
3856
3856
  suffix,
@@ -3878,9 +3878,8 @@ const InputComponent = ({
3878
3878
  defaultValue,
3879
3879
  // eslint-disable-next-line @typescript-eslint/no-unused-vars
3880
3880
  child,
3881
- ref,
3882
3881
  ...props
3883
- }) => {
3882
+ }, ref) => {
3884
3883
  const inputRef = React.useRef(null);
3885
3884
  const lastKeyPressed = React.useRef(null);
3886
3885
  const internalValue = mask ? applyMask(stripMask(`${value ?? ''}`, mask, maskChar), mask, maskChar).masked : value ?? '';
@@ -3888,18 +3887,20 @@ const InputComponent = ({
3888
3887
  const [iconRenderVisible, setIconRenderVisible] = React.useState(false);
3889
3888
  const animationRef = React.useRef(null);
3890
3889
  React.useImperativeHandle(ref, () => ({
3891
- retry: () => ({
3892
- focus: () => inputRef.current?.focus(),
3893
- blur: () => inputRef.current?.blur(),
3894
- input: inputRef.current,
3895
- nativeElement: inputRef.current,
3896
- setSelectionRange: (start, end) => {
3897
- if (inputRef.current) {
3898
- inputRef.current.setSelectionRange(start, end);
3899
- }
3890
+ focus: () => {
3891
+ inputRef.current?.focus();
3892
+ },
3893
+ input: inputRef.current,
3894
+ blur: () => {
3895
+ inputRef.current?.blur();
3896
+ },
3897
+ nativeElement: inputRef.current,
3898
+ setSelectionRange: (start, end) => {
3899
+ if (inputRef.current) {
3900
+ inputRef.current.setSelectionRange(start, end);
3900
3901
  }
3901
- })
3902
- }));
3902
+ }
3903
+ }), []);
3903
3904
  React.useEffect(() => {
3904
3905
  setMaskValue(mask ? applyMask(stripMask(`${value ?? ''}`, mask, maskChar), mask, maskChar).masked : value ?? '');
3905
3906
  }, [value, mask, maskChar]);
@@ -3991,7 +3992,7 @@ const InputComponent = ({
3991
3992
  } : {}), suffix || iconRender?.(iconRenderVisible), error && feedbackIcons ? /*#__PURE__*/React.createElement(ErrorIcon, null) : null)), addonAfter ? /*#__PURE__*/React.createElement("span", {
3992
3993
  className: `${prefixCls}-addon ${prefixCls}-after ${prefixClsV3}-addon ${prefixClsV3}-after`
3993
3994
  }, addonAfter) : null);
3994
- };
3995
+ });
3995
3996
  InputComponent.displayName = 'Input';
3996
3997
  const Input$1 = InputComponent;
3997
3998
  Input$1.TextArea = Textarea;