useUUID.js 714 B

12345678910111213141516171819
  1. import _slicedToArray from "@babel/runtime/helpers/esm/slicedToArray";
  2. import * as React from 'react';
  3. import useMergedState from "rc-util/es/hooks/useMergedState";
  4. var uniquePrefix = Math.random().toFixed(5).toString().slice(2);
  5. var internalId = 0;
  6. export default function useUUID(id) {
  7. var _useMergedState = useMergedState(id, {
  8. value: id
  9. }),
  10. _useMergedState2 = _slicedToArray(_useMergedState, 2),
  11. uuid = _useMergedState2[0],
  12. setUUID = _useMergedState2[1];
  13. React.useEffect(function () {
  14. internalId += 1;
  15. var newId = process.env.NODE_ENV === 'test' ? 'test' : "".concat(uniquePrefix, "-").concat(internalId);
  16. setUUID("rc-menu-uuid-".concat(newId));
  17. }, []);
  18. return uuid;
  19. }