UNPKG

@zohodesk/components

Version:

Dot UI is a customizable React component library built to deliver a clean, accessible, and developer-friendly UI experience. It offers a growing set of reusable components designed to align with modern design systems and streamline application development

66 lines (59 loc) 1.32 kB
import { useNumberGenerator, getNumberGenerators } from "./NumberGenerator/NumberGenerator"; import { getLibraryConfig } from "./Config"; let globalId = getLibraryConfig('idCounter'), deletedIndexes = [], globalPrefix; export function setGlobalIdPrefix(value) { globalPrefix = value; } export function removeGlobalIdPrefix() { globalPrefix = undefined; } function getGlobalIdPrefix() { return globalPrefix; } export function setGlobalId(id) { globalId = id; } function getGlobalId() { return globalId; } function setDeletedIndexes(array) { deletedIndexes = array; } function getDeletedIndexes() { return deletedIndexes; } function callback(_ref) { let { globalId, deletedIndexes } = _ref; setGlobalId(globalId); setDeletedIndexes(deletedIndexes); } export function useUniqueId(prefix) { return useNumberGenerator({ getGlobalId, prefix, getGlobalPrefix: getGlobalIdPrefix, getDeletedIndexes, callback }); } export function getUniqueId(Component, prefix) { return getNumberGenerators({ Component, prefix, getGlobalPrefix: getGlobalIdPrefix, getGlobalId, getDeletedIndexes, callback }); } // let Provider = { // docs: { // componentGroup: 'Provider', // folderName: 'Functions' // } // }; // export { Provider };