UNPKG

react-native-sortables

Version:

Powerful Sortable Components for Flexible Content Reordering in React Native

33 lines (32 loc) 1.17 kB
"use strict"; import { useMemo, useRef } from 'react'; import { useDebugContext } from '../../../debug'; import { error, typedMemo } from '../../../utils'; import { useCommonValuesContext } from '../CommonValuesProvider'; import { useCustomHandleContext } from '../CustomHandleProvider'; import { useOrderUpdater } from '../hooks'; export function useStrategyKey(strategy) { const counterRef = useRef(0); return useMemo(() => typeof strategy === 'string' ? strategy : String(counterRef.current++), [strategy]); } function OrderUpdaterComponent({ predefinedStrategies, strategy, triggerOrigin, useAdditionalValues }) { const factory = typeof strategy === 'string' ? predefinedStrategies[strategy] : strategy; if (!factory && typeof strategy === 'string') { throw error(`'${strategy}' is not a valid ordering strategy`); } const updater = factory({ debugContext: useDebugContext(), ...useCommonValuesContext(), ...useCustomHandleContext(), ...useAdditionalValues() }); useOrderUpdater(updater, triggerOrigin); return null; } export default typedMemo(OrderUpdaterComponent); //# sourceMappingURL=OrderUpdaterComponent.js.map