@flowerforce/flower-react 3.4.2-beta.0 → 3.5.1-beta.0
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/CHANGELOG.md +12 -0
 - package/dist/index.cjs.js +5 -3
 - package/dist/index.esm.js +5 -3
 - package/package.json +2 -2
 
    
        package/CHANGELOG.md
    CHANGED
    
    | 
         @@ -1,3 +1,15 @@ 
     | 
|
| 
      
 1 
     | 
    
         
            +
            ## 3.5.0 (2024-10-08)
         
     | 
| 
      
 2 
     | 
    
         
            +
             
     | 
| 
      
 3 
     | 
    
         
            +
             
     | 
| 
      
 4 
     | 
    
         
            +
            ### 🚀 Features
         
     | 
| 
      
 5 
     | 
    
         
            +
             
     | 
| 
      
 6 
     | 
    
         
            +
            - added "hasFocus" in useFlower and "focused" on FlowerField ([#66](https://github.com/flowerforce/flower/pull/66))
         
     | 
| 
      
 7 
     | 
    
         
            +
             
     | 
| 
      
 8 
     | 
    
         
            +
             
     | 
| 
      
 9 
     | 
    
         
            +
            ### 🧱 Updated Dependencies
         
     | 
| 
      
 10 
     | 
    
         
            +
             
     | 
| 
      
 11 
     | 
    
         
            +
            - Updated flower-core to 3.3.0
         
     | 
| 
      
 12 
     | 
    
         
            +
             
     | 
| 
       1 
13 
     | 
    
         
             
            ## 3.4.1 (2024-10-02)
         
     | 
| 
       2 
14 
     | 
    
         | 
| 
       3 
15 
     | 
    
         | 
    
        package/dist/index.cjs.js
    CHANGED
    
    | 
         @@ -410,11 +410,11 @@ function isIntrinsicElement$1(x) { 
     | 
|
| 
       410 
410 
     | 
    
         
             
            //TODO make types for wrapper function props
         
     | 
| 
       411 
411 
     | 
    
         
             
            function Wrapper$1({ Component, id, flowName, currentNode, validate, asyncDebounce = 0, asyncValidate, asyncInitialError, asyncWaitingError, destroyValue, onBlur, onFocus, hidden, onUpdate, defaultValue, ...props }) {
         
     | 
| 
       412 
412 
     | 
    
         
             
                const dispatch = useDispatch();
         
     | 
| 
       413 
     | 
    
         
            -
                const [customAsyncErrors, setCustomAsyncErrors] = React.useState(asyncValidate && [asyncInitialError]);
         
     | 
| 
      
 413 
     | 
    
         
            +
                const [customAsyncErrors, setCustomAsyncErrors] = React.useState(!hidden && asyncValidate && [asyncInitialError]);
         
     | 
| 
       414 
414 
     | 
    
         
             
                const [isValidating, setIsValidating] = React.useState(undefined);
         
     | 
| 
       415 
415 
     | 
    
         
             
                const { flowNameFromPath = flowName, path } = React.useMemo(() => flowerCore.CoreUtils.getPath(id), [id]);
         
     | 
| 
       416 
416 
     | 
    
         
             
                const value = useSelector(getDataFromState(flowNameFromPath, path));
         
     | 
| 
       417 
     | 
    
         
            -
                const errors = useSelector(makeSelectFieldError(flowName, id, validate), flowerCore.CoreUtils.allEqual);
         
     | 
| 
      
 417 
     | 
    
         
            +
                const errors = useSelector(makeSelectFieldError(flowName, id, hidden ? [] : validate), flowerCore.CoreUtils.allEqual);
         
     | 
| 
       418 
418 
     | 
    
         
             
                const dirty = useSelector(makeSelectNodeFieldDirty(flowName, currentNode, id));
         
     | 
| 
       419 
419 
     | 
    
         
             
                const touched = useSelector(makeSelectNodeFieldTouched(flowName, currentNode, id));
         
     | 
| 
       420 
420 
     | 
    
         
             
                const focused = useSelector(makeSelectNodeFieldFocused(flowName, currentNode, id));
         
     | 
| 
         @@ -480,6 +480,8 @@ function Wrapper$1({ Component, id, flowName, currentNode, validate, asyncDeboun 
     | 
|
| 
       480 
480 
     | 
    
         
             
                    onFocus && onFocus(e);
         
     | 
| 
       481 
481 
     | 
    
         
             
                }, [onFocus, setFocus]);
         
     | 
| 
       482 
482 
     | 
    
         
             
                React.useEffect(() => {
         
     | 
| 
      
 483 
     | 
    
         
            +
                    if (hidden)
         
     | 
| 
      
 484 
     | 
    
         
            +
                        return;
         
     | 
| 
       483 
485 
     | 
    
         
             
                    if (asyncValidate) {
         
     | 
| 
       484 
486 
     | 
    
         
             
                        if (refValue.current === value)
         
     | 
| 
       485 
487 
     | 
    
         
             
                            return;
         
     | 
| 
         @@ -493,7 +495,7 @@ function Wrapper$1({ Component, id, flowName, currentNode, validate, asyncDeboun 
     | 
|
| 
       493 
495 
     | 
    
         
             
                        setTouched(true);
         
     | 
| 
       494 
496 
     | 
    
         
             
                        debouncedValidation(value);
         
     | 
| 
       495 
497 
     | 
    
         
             
                    }
         
     | 
| 
       496 
     | 
    
         
            -
                }, [asyncValidate, asyncInitialError, value, debouncedValidation, setTouched]);
         
     | 
| 
      
 498 
     | 
    
         
            +
                }, [asyncValidate, asyncInitialError, value, debouncedValidation, setTouched, hidden]);
         
     | 
| 
       497 
499 
     | 
    
         
             
                React.useEffect(() => {
         
     | 
| 
       498 
500 
     | 
    
         
             
                    if (onUpdate) {
         
     | 
| 
       499 
501 
     | 
    
         
             
                        onUpdate(value);
         
     | 
    
        package/dist/index.esm.js
    CHANGED
    
    | 
         @@ -408,11 +408,11 @@ function isIntrinsicElement$1(x) { 
     | 
|
| 
       408 
408 
     | 
    
         
             
            //TODO make types for wrapper function props
         
     | 
| 
       409 
409 
     | 
    
         
             
            function Wrapper$1({ Component, id, flowName, currentNode, validate, asyncDebounce = 0, asyncValidate, asyncInitialError, asyncWaitingError, destroyValue, onBlur, onFocus, hidden, onUpdate, defaultValue, ...props }) {
         
     | 
| 
       410 
410 
     | 
    
         
             
                const dispatch = useDispatch();
         
     | 
| 
       411 
     | 
    
         
            -
                const [customAsyncErrors, setCustomAsyncErrors] = useState(asyncValidate && [asyncInitialError]);
         
     | 
| 
      
 411 
     | 
    
         
            +
                const [customAsyncErrors, setCustomAsyncErrors] = useState(!hidden && asyncValidate && [asyncInitialError]);
         
     | 
| 
       412 
412 
     | 
    
         
             
                const [isValidating, setIsValidating] = useState(undefined);
         
     | 
| 
       413 
413 
     | 
    
         
             
                const { flowNameFromPath = flowName, path } = useMemo(() => CoreUtils.getPath(id), [id]);
         
     | 
| 
       414 
414 
     | 
    
         
             
                const value = useSelector(getDataFromState(flowNameFromPath, path));
         
     | 
| 
       415 
     | 
    
         
            -
                const errors = useSelector(makeSelectFieldError(flowName, id, validate), CoreUtils.allEqual);
         
     | 
| 
      
 415 
     | 
    
         
            +
                const errors = useSelector(makeSelectFieldError(flowName, id, hidden ? [] : validate), CoreUtils.allEqual);
         
     | 
| 
       416 
416 
     | 
    
         
             
                const dirty = useSelector(makeSelectNodeFieldDirty(flowName, currentNode, id));
         
     | 
| 
       417 
417 
     | 
    
         
             
                const touched = useSelector(makeSelectNodeFieldTouched(flowName, currentNode, id));
         
     | 
| 
       418 
418 
     | 
    
         
             
                const focused = useSelector(makeSelectNodeFieldFocused(flowName, currentNode, id));
         
     | 
| 
         @@ -478,6 +478,8 @@ function Wrapper$1({ Component, id, flowName, currentNode, validate, asyncDeboun 
     | 
|
| 
       478 
478 
     | 
    
         
             
                    onFocus && onFocus(e);
         
     | 
| 
       479 
479 
     | 
    
         
             
                }, [onFocus, setFocus]);
         
     | 
| 
       480 
480 
     | 
    
         
             
                useEffect(() => {
         
     | 
| 
      
 481 
     | 
    
         
            +
                    if (hidden)
         
     | 
| 
      
 482 
     | 
    
         
            +
                        return;
         
     | 
| 
       481 
483 
     | 
    
         
             
                    if (asyncValidate) {
         
     | 
| 
       482 
484 
     | 
    
         
             
                        if (refValue.current === value)
         
     | 
| 
       483 
485 
     | 
    
         
             
                            return;
         
     | 
| 
         @@ -491,7 +493,7 @@ function Wrapper$1({ Component, id, flowName, currentNode, validate, asyncDeboun 
     | 
|
| 
       491 
493 
     | 
    
         
             
                        setTouched(true);
         
     | 
| 
       492 
494 
     | 
    
         
             
                        debouncedValidation(value);
         
     | 
| 
       493 
495 
     | 
    
         
             
                    }
         
     | 
| 
       494 
     | 
    
         
            -
                }, [asyncValidate, asyncInitialError, value, debouncedValidation, setTouched]);
         
     | 
| 
      
 496 
     | 
    
         
            +
                }, [asyncValidate, asyncInitialError, value, debouncedValidation, setTouched, hidden]);
         
     | 
| 
       495 
497 
     | 
    
         
             
                useEffect(() => {
         
     | 
| 
       496 
498 
     | 
    
         
             
                    if (onUpdate) {
         
     | 
| 
       497 
499 
     | 
    
         
             
                        onUpdate(value);
         
     | 
    
        package/package.json
    CHANGED
    
    | 
         @@ -1,6 +1,6 @@ 
     | 
|
| 
       1 
1 
     | 
    
         
             
            {
         
     | 
| 
       2 
2 
     | 
    
         
             
              "name": "@flowerforce/flower-react",
         
     | 
| 
       3 
     | 
    
         
            -
              "version": "3. 
     | 
| 
      
 3 
     | 
    
         
            +
              "version": "3.5.1-beta.0",
         
     | 
| 
       4 
4 
     | 
    
         
             
              "description": "FlowerJS components, hooks and utils for React.",
         
     | 
| 
       5 
5 
     | 
    
         
             
              "repository": {
         
     | 
| 
       6 
6 
     | 
    
         
             
                "type": "git",
         
     | 
| 
         @@ -34,7 +34,7 @@ 
     | 
|
| 
       34 
34 
     | 
    
         
             
                "typescript": "^5.4.5"
         
     | 
| 
       35 
35 
     | 
    
         
             
              },
         
     | 
| 
       36 
36 
     | 
    
         
             
              "dependencies": {
         
     | 
| 
       37 
     | 
    
         
            -
                "@flowerforce/flower-core": "3. 
     | 
| 
      
 37 
     | 
    
         
            +
                "@flowerforce/flower-core": "3.3.1-beta.0",
         
     | 
| 
       38 
38 
     | 
    
         
             
                "@reduxjs/toolkit": "^2.2.4",
         
     | 
| 
       39 
39 
     | 
    
         
             
                "lodash": "^4.17.21",
         
     | 
| 
       40 
40 
     | 
    
         
             
                "react-redux": "^9.1.2",
         
     |