UNPKG

@wordpress/components

Version:
8 lines (7 loc) 1.39 kB
{ "version": 3, "sources": ["../../../src/utils/hooks/use-update-effect.js"], "sourcesContent": ["/**\n * WordPress dependencies\n */\nimport { useRef, useEffect } from '@wordpress/element';\n\n/**\n * A `React.useEffect` that will not run on the first render.\n * Source:\n * https://github.com/ariakit/ariakit/blob/main/packages/ariakit-react-core/src/utils/hooks.ts\n *\n * @param {React.EffectCallback} effect\n * @param {React.DependencyList} deps\n */\nfunction useUpdateEffect(effect, deps) {\n const mountedRef = useRef(false);\n useEffect(() => {\n if (mountedRef.current) {\n return effect();\n }\n mountedRef.current = true;\n return undefined;\n // 1. This hook needs to pass a dep list that isn't an array literal\n // 2. `effect` is missing from the array, and will need to be added carefully to avoid additional warnings\n // see https://github.com/WordPress/gutenberg/pull/41166\n }, deps);\n useEffect(() => () => {\n mountedRef.current = false;\n }, []);\n}\nexport default useUpdateEffect;"], "mappings": ";;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAGA,qBAAkC;AAUlC,SAAS,gBAAgB,QAAQ,MAAM;AACrC,QAAM,iBAAa,uBAAO,KAAK;AAC/B,gCAAU,MAAM;AACd,QAAI,WAAW,SAAS;AACtB,aAAO,OAAO;AAAA,IAChB;AACA,eAAW,UAAU;AACrB,WAAO;AAAA,EAIT,GAAG,IAAI;AACP,gCAAU,MAAM,MAAM;AACpB,eAAW,UAAU;AAAA,EACvB,GAAG,CAAC,CAAC;AACP;AACA,IAAO,4BAAQ;", "names": [] }