@spark-web/utils
Advanced tools
Comparing version 1.2.2 to 1.2.3
export { mergeRefs } from './merge-refs'; | ||
export { assignRef, useComposedRefs } from './use-composed-refs'; | ||
export { useDisclosure } from './use-disclosure'; | ||
export { useIsomorphicLayoutEffect } from './use-isomorphic-layout-effect'; | ||
export { useSynchronizedAnimation } from './use-synchronized-animation'; | ||
export { assignRef, useComposedRefs } from './useComposedRefs'; |
@@ -1,3 +0,3 @@ | ||
export { buildDataAttributes } from './buildDataAttributes'; | ||
export { resetElementStyles } from './resetElementStyles'; | ||
export type { DataAttributeMap } from './buildDataAttributes'; | ||
export { buildDataAttributes } from './build-data-attributes'; | ||
export { resetElementStyles } from './reset-element-styles'; | ||
export type { DataAttributeMap } from './build-data-attributes'; |
@@ -1,4 +0,4 @@ | ||
export { forwardRefWithAs } from './forwardRefWithAs'; | ||
export { forwardRefWithAs } from './forward-ref-with-as'; | ||
export { isBoolean, isFunction, isNumber, isString } from './type-check'; | ||
export { typedKeys } from './utility-functions'; | ||
export type { AssignableRef, ElementTagNameMap, SingleOrArray, } from './utility-types'; |
@@ -5,6 +5,6 @@ 'use strict'; | ||
var _slicedToArray = require('@babel/runtime/helpers/slicedToArray'); | ||
var _createForOfIteratorHelper = require('@babel/runtime/helpers/createForOfIteratorHelper'); | ||
var react = require('react'); | ||
var _createForOfIteratorHelper = require('@babel/runtime/helpers/createForOfIteratorHelper'); | ||
var typeCheck = require('./type-check-c9975507.cjs.dev.js'); | ||
var _slicedToArray = require('@babel/runtime/helpers/slicedToArray'); | ||
@@ -30,2 +30,60 @@ /** | ||
/** | ||
* Passes or assigns an arbitrary value to a ref function or object. | ||
* | ||
* @param ref | ||
* @param value | ||
*/ | ||
function assignRef(ref, value) { | ||
if (ref == null) return; | ||
if (typeCheck.isFunction(ref)) { | ||
ref(value); | ||
} else { | ||
try { | ||
ref.current = value; | ||
} catch (error) { | ||
throw new Error("Cannot assign value \"".concat(value, "\" to ref \"").concat(ref, "\"")); | ||
} | ||
} | ||
} | ||
/** | ||
* Passes or assigns a value to multiple refs (typically a DOM node). Useful for | ||
* dealing with components that need an explicit ref for DOM calculations but | ||
* also forwards refs assigned by an app. | ||
* | ||
* @param refs Refs to fork | ||
* | ||
* @example | ||
* const internalRef = useRef<HTMLSpanElement>(null); | ||
* const composedRef = useComposedRefs(internalRef, forwardedRef); | ||
*/ | ||
function useComposedRefs() { | ||
for (var _len = arguments.length, refs = new Array(_len), _key = 0; _key < _len; _key++) { | ||
refs[_key] = arguments[_key]; | ||
} | ||
return react.useCallback(function (node) { | ||
var _iterator = _createForOfIteratorHelper(refs), | ||
_step; | ||
try { | ||
for (_iterator.s(); !(_step = _iterator.n()).done;) { | ||
var ref = _step.value; | ||
assignRef(ref, node); | ||
} // `refs` is already an array. If we do what ESLint wants us to do | ||
// and wrap `refs` in square brackets, then the useCallback will fire | ||
// on every render (not just when the dependencies change). | ||
// eslint-disable-next-line react-hooks/exhaustive-deps | ||
} catch (err) { | ||
_iterator.e(err); | ||
} finally { | ||
_iterator.f(); | ||
} | ||
}, refs); | ||
} | ||
/** | ||
* `useDisclosure` is a custom hook used to help handle common open, close, or toggle scenarios. | ||
@@ -116,60 +174,2 @@ */ | ||
/** | ||
* Passes or assigns an arbitrary value to a ref function or object. | ||
* | ||
* @param ref | ||
* @param value | ||
*/ | ||
function assignRef(ref, value) { | ||
if (ref == null) return; | ||
if (typeCheck.isFunction(ref)) { | ||
ref(value); | ||
} else { | ||
try { | ||
ref.current = value; | ||
} catch (error) { | ||
throw new Error("Cannot assign value \"".concat(value, "\" to ref \"").concat(ref, "\"")); | ||
} | ||
} | ||
} | ||
/** | ||
* Passes or assigns a value to multiple refs (typically a DOM node). Useful for | ||
* dealing with components that need an explicit ref for DOM calculations but | ||
* also forwards refs assigned by an app. | ||
* | ||
* @param refs Refs to fork | ||
* | ||
* @example | ||
* const internalRef = useRef<HTMLSpanElement>(null); | ||
* const composedRef = useComposedRefs(internalRef, forwardedRef); | ||
*/ | ||
function useComposedRefs() { | ||
for (var _len = arguments.length, refs = new Array(_len), _key = 0; _key < _len; _key++) { | ||
refs[_key] = arguments[_key]; | ||
} | ||
return react.useCallback(function (node) { | ||
var _iterator = _createForOfIteratorHelper(refs), | ||
_step; | ||
try { | ||
for (_iterator.s(); !(_step = _iterator.n()).done;) { | ||
var ref = _step.value; | ||
assignRef(ref, node); | ||
} // `refs` is already an array. If we do what ESLint wants us to do | ||
// and wrap `refs` in square brackets, then the useCallback will fire | ||
// on every render (not just when the dependencies change). | ||
// eslint-disable-next-line react-hooks/exhaustive-deps | ||
} catch (err) { | ||
_iterator.e(err); | ||
} finally { | ||
_iterator.f(); | ||
} | ||
}, refs); | ||
} | ||
exports.assignRef = assignRef; | ||
@@ -176,0 +176,0 @@ exports.mergeRefs = mergeRefs; |
@@ -5,6 +5,6 @@ 'use strict'; | ||
var _slicedToArray = require('@babel/runtime/helpers/slicedToArray'); | ||
var _createForOfIteratorHelper = require('@babel/runtime/helpers/createForOfIteratorHelper'); | ||
var react = require('react'); | ||
var _createForOfIteratorHelper = require('@babel/runtime/helpers/createForOfIteratorHelper'); | ||
var typeCheck = require('./type-check-7d653f66.cjs.prod.js'); | ||
var _slicedToArray = require('@babel/runtime/helpers/slicedToArray'); | ||
@@ -30,2 +30,60 @@ /** | ||
/** | ||
* Passes or assigns an arbitrary value to a ref function or object. | ||
* | ||
* @param ref | ||
* @param value | ||
*/ | ||
function assignRef(ref, value) { | ||
if (ref == null) return; | ||
if (typeCheck.isFunction(ref)) { | ||
ref(value); | ||
} else { | ||
try { | ||
ref.current = value; | ||
} catch (error) { | ||
throw new Error("Cannot assign value \"".concat(value, "\" to ref \"").concat(ref, "\"")); | ||
} | ||
} | ||
} | ||
/** | ||
* Passes or assigns a value to multiple refs (typically a DOM node). Useful for | ||
* dealing with components that need an explicit ref for DOM calculations but | ||
* also forwards refs assigned by an app. | ||
* | ||
* @param refs Refs to fork | ||
* | ||
* @example | ||
* const internalRef = useRef<HTMLSpanElement>(null); | ||
* const composedRef = useComposedRefs(internalRef, forwardedRef); | ||
*/ | ||
function useComposedRefs() { | ||
for (var _len = arguments.length, refs = new Array(_len), _key = 0; _key < _len; _key++) { | ||
refs[_key] = arguments[_key]; | ||
} | ||
return react.useCallback(function (node) { | ||
var _iterator = _createForOfIteratorHelper(refs), | ||
_step; | ||
try { | ||
for (_iterator.s(); !(_step = _iterator.n()).done;) { | ||
var ref = _step.value; | ||
assignRef(ref, node); | ||
} // `refs` is already an array. If we do what ESLint wants us to do | ||
// and wrap `refs` in square brackets, then the useCallback will fire | ||
// on every render (not just when the dependencies change). | ||
// eslint-disable-next-line react-hooks/exhaustive-deps | ||
} catch (err) { | ||
_iterator.e(err); | ||
} finally { | ||
_iterator.f(); | ||
} | ||
}, refs); | ||
} | ||
/** | ||
* `useDisclosure` is a custom hook used to help handle common open, close, or toggle scenarios. | ||
@@ -116,60 +174,2 @@ */ | ||
/** | ||
* Passes or assigns an arbitrary value to a ref function or object. | ||
* | ||
* @param ref | ||
* @param value | ||
*/ | ||
function assignRef(ref, value) { | ||
if (ref == null) return; | ||
if (typeCheck.isFunction(ref)) { | ||
ref(value); | ||
} else { | ||
try { | ||
ref.current = value; | ||
} catch (error) { | ||
throw new Error("Cannot assign value \"".concat(value, "\" to ref \"").concat(ref, "\"")); | ||
} | ||
} | ||
} | ||
/** | ||
* Passes or assigns a value to multiple refs (typically a DOM node). Useful for | ||
* dealing with components that need an explicit ref for DOM calculations but | ||
* also forwards refs assigned by an app. | ||
* | ||
* @param refs Refs to fork | ||
* | ||
* @example | ||
* const internalRef = useRef<HTMLSpanElement>(null); | ||
* const composedRef = useComposedRefs(internalRef, forwardedRef); | ||
*/ | ||
function useComposedRefs() { | ||
for (var _len = arguments.length, refs = new Array(_len), _key = 0; _key < _len; _key++) { | ||
refs[_key] = arguments[_key]; | ||
} | ||
return react.useCallback(function (node) { | ||
var _iterator = _createForOfIteratorHelper(refs), | ||
_step; | ||
try { | ||
for (_iterator.s(); !(_step = _iterator.n()).done;) { | ||
var ref = _step.value; | ||
assignRef(ref, node); | ||
} // `refs` is already an array. If we do what ESLint wants us to do | ||
// and wrap `refs` in square brackets, then the useCallback will fire | ||
// on every render (not just when the dependencies change). | ||
// eslint-disable-next-line react-hooks/exhaustive-deps | ||
} catch (err) { | ||
_iterator.e(err); | ||
} finally { | ||
_iterator.f(); | ||
} | ||
}, refs); | ||
} | ||
exports.assignRef = assignRef; | ||
@@ -176,0 +176,0 @@ exports.mergeRefs = mergeRefs; |
@@ -1,5 +0,5 @@ | ||
import _slicedToArray from '@babel/runtime/helpers/esm/slicedToArray'; | ||
import { useState, useLayoutEffect, useRef, useCallback } from 'react'; | ||
import _createForOfIteratorHelper from '@babel/runtime/helpers/esm/createForOfIteratorHelper'; | ||
import { useCallback, useState, useLayoutEffect, useRef } from 'react'; | ||
import { i as isFunction } from './type-check-5d26332c.esm.js'; | ||
import _slicedToArray from '@babel/runtime/helpers/esm/slicedToArray'; | ||
@@ -25,2 +25,60 @@ /** | ||
/** | ||
* Passes or assigns an arbitrary value to a ref function or object. | ||
* | ||
* @param ref | ||
* @param value | ||
*/ | ||
function assignRef(ref, value) { | ||
if (ref == null) return; | ||
if (isFunction(ref)) { | ||
ref(value); | ||
} else { | ||
try { | ||
ref.current = value; | ||
} catch (error) { | ||
throw new Error("Cannot assign value \"".concat(value, "\" to ref \"").concat(ref, "\"")); | ||
} | ||
} | ||
} | ||
/** | ||
* Passes or assigns a value to multiple refs (typically a DOM node). Useful for | ||
* dealing with components that need an explicit ref for DOM calculations but | ||
* also forwards refs assigned by an app. | ||
* | ||
* @param refs Refs to fork | ||
* | ||
* @example | ||
* const internalRef = useRef<HTMLSpanElement>(null); | ||
* const composedRef = useComposedRefs(internalRef, forwardedRef); | ||
*/ | ||
function useComposedRefs() { | ||
for (var _len = arguments.length, refs = new Array(_len), _key = 0; _key < _len; _key++) { | ||
refs[_key] = arguments[_key]; | ||
} | ||
return useCallback(function (node) { | ||
var _iterator = _createForOfIteratorHelper(refs), | ||
_step; | ||
try { | ||
for (_iterator.s(); !(_step = _iterator.n()).done;) { | ||
var ref = _step.value; | ||
assignRef(ref, node); | ||
} // `refs` is already an array. If we do what ESLint wants us to do | ||
// and wrap `refs` in square brackets, then the useCallback will fire | ||
// on every render (not just when the dependencies change). | ||
// eslint-disable-next-line react-hooks/exhaustive-deps | ||
} catch (err) { | ||
_iterator.e(err); | ||
} finally { | ||
_iterator.f(); | ||
} | ||
}, refs); | ||
} | ||
/** | ||
* `useDisclosure` is a custom hook used to help handle common open, close, or toggle scenarios. | ||
@@ -111,60 +169,2 @@ */ | ||
/** | ||
* Passes or assigns an arbitrary value to a ref function or object. | ||
* | ||
* @param ref | ||
* @param value | ||
*/ | ||
function assignRef(ref, value) { | ||
if (ref == null) return; | ||
if (isFunction(ref)) { | ||
ref(value); | ||
} else { | ||
try { | ||
ref.current = value; | ||
} catch (error) { | ||
throw new Error("Cannot assign value \"".concat(value, "\" to ref \"").concat(ref, "\"")); | ||
} | ||
} | ||
} | ||
/** | ||
* Passes or assigns a value to multiple refs (typically a DOM node). Useful for | ||
* dealing with components that need an explicit ref for DOM calculations but | ||
* also forwards refs assigned by an app. | ||
* | ||
* @param refs Refs to fork | ||
* | ||
* @example | ||
* const internalRef = useRef<HTMLSpanElement>(null); | ||
* const composedRef = useComposedRefs(internalRef, forwardedRef); | ||
*/ | ||
function useComposedRefs() { | ||
for (var _len = arguments.length, refs = new Array(_len), _key = 0; _key < _len; _key++) { | ||
refs[_key] = arguments[_key]; | ||
} | ||
return useCallback(function (node) { | ||
var _iterator = _createForOfIteratorHelper(refs), | ||
_step; | ||
try { | ||
for (_iterator.s(); !(_step = _iterator.n()).done;) { | ||
var ref = _step.value; | ||
assignRef(ref, node); | ||
} // `refs` is already an array. If we do what ESLint wants us to do | ||
// and wrap `refs` in square brackets, then the useCallback will fire | ||
// on every render (not just when the dependencies change). | ||
// eslint-disable-next-line react-hooks/exhaustive-deps | ||
} catch (err) { | ||
_iterator.e(err); | ||
} finally { | ||
_iterator.f(); | ||
} | ||
}, refs); | ||
} | ||
export { assignRef, mergeRefs, useComposedRefs, useDisclosure, useIsomorphicLayoutEffect, useSynchronizedAnimation }; |
{ | ||
"name": "@spark-web/utils", | ||
"version": "1.2.2", | ||
"license": "MIT", | ||
"version": "1.2.3", | ||
"homepage": "https://github.com/brighte-labs/spark-web#readme", | ||
"repository": { | ||
"type": "git", | ||
"url": "https://github.com/brighte-labs/spark-web.git", | ||
"directory": "packages/utils" | ||
}, | ||
"main": "dist/spark-web-utils.cjs.js", | ||
@@ -13,3 +18,3 @@ "module": "dist/spark-web-utils.esm.js", | ||
"dependencies": { | ||
"@babel/runtime": "^7.18.9" | ||
"@babel/runtime": "^7.19.0" | ||
}, | ||
@@ -16,0 +21,0 @@ "devDependencies": { |
No License Found
License(Experimental) License information could not be found.
Found 1 instance in 1 package
No repository
Supply chain riskPackage does not have a linked source code repository. Without this field, a package will have no reference to the location of the source code use to generate the package.
Found 1 instance in 1 package
No website
QualityPackage does not have a website.
Found 1 instance in 1 package
42089
3
1
Updated@babel/runtime@^7.19.0