{"version":3,"file":"uniqueID.mjs","names":["React","register","useEnhancedEffect","createSource","prefix","arguments","length","undefined","value","useUID","_context$prefix","context","get","_ref","useId","useState","_ref2","_slicedToArray","uid","trimmedUid","String","startsWith","endsWith","slice","set","props","_objectSpread"],"sources":["../src/uniqueID.ts"],"sourcesContent":["import React from 'react';\nimport { UnknownProperties, register } from './core/index';\nimport useEnhancedEffect from './use/useEnhancedEffect';\n\ntype ContextType = {\n  prefix?: string;\n  value: number;\n};\n\n/** @deprecated */\nexport interface IUniqueIDProps extends UniqueIDProps, UnknownProperties {}\nexport type UniqueIDProps = {\n  /* Unique ID */\n  uid?: string;\n};\n\nconst createSource = (prefix = 'ui-kit-'): ContextType => ({ value: 1, prefix });\n\nexport const useUID = (prefix?: string): string => {\n  const context = register.get<ContextType>('uid-context', createSource(prefix));\n  const [uid] = React.useId ? [React.useId()] : React.useState<number>(context.value++);\n  const trimmedUid =\n    String(uid).startsWith(':') && String(uid).endsWith(':') ? String(uid).slice(1, -1) : uid;\n\n  useEnhancedEffect(() => {\n    register.set<ContextType>('uid-context', context);\n  }, [trimmedUid]);\n\n  return (context.prefix ?? '') + trimmedUid;\n};\n\nexport default (prefix?: string) => {\n  return (props: any): { uid: ReturnType<typeof useUID> } => {\n    const uid = useUID(prefix);\n    return {\n      uid,\n      ...props,\n    };\n  };\n};\n"],"mappings":";;AAAA,OAAOA,KAAK,MAAM,OAAO;AACzB,SAA4BC,QAAQ,QAAQ,kBAAc;AAC1D,OAAOC,iBAAiB,MAAM,6BAAyB;AAcvD,IAAMC,YAAY,GAAG,SAAfA,YAAYA,CAAA;EAAA,IAAIC,MAAM,GAAAC,SAAA,CAAAC,MAAA,QAAAD,SAAA,QAAAE,SAAA,GAAAF,SAAA,MAAG,SAAS;EAAA,OAAmB;IAAEG,KAAK,EAAE,CAAC;IAAEJ,MAAM,EAANA;EAAO,CAAC;AAAA,CAAC;AAEhF,OAAO,IAAMK,MAAM,GAAG,SAATA,MAAMA,CAAIL,MAAe,EAAa;EAAA,IAAAM,eAAA;EACjD,IAAMC,OAAO,GAAGV,QAAQ,CAACW,GAAG,CAAc,aAAa,EAAET,YAAY,CAACC,MAAM,CAAC,CAAC;EAC9E,IAAAS,IAAA,GAAcb,KAAK,CAACc,KAAK,GAAG,CAACd,KAAK,CAACc,KAAK,EAAE,CAAC,GAAGd,KAAK,CAACe,QAAQ,CAASJ,OAAO,CAACH,KAAK,EAAE,CAAC;IAAAQ,KAAA,GAAAC,cAAA,CAAAJ,IAAA;IAA9EK,GAAG,GAAAF,KAAA;EACV,IAAMG,UAAU,GACdC,MAAM,CAACF,GAAG,CAAC,CAACG,UAAU,CAAC,GAAG,CAAC,IAAID,MAAM,CAACF,GAAG,CAAC,CAACI,QAAQ,CAAC,GAAG,CAAC,GAAGF,MAAM,CAACF,GAAG,CAAC,CAACK,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAGL,GAAG;EAE3FhB,iBAAiB,CAAC,YAAM;IACtBD,QAAQ,CAACuB,GAAG,CAAc,aAAa,EAAEb,OAAO,CAAC;EACnD,CAAC,EAAE,CAACQ,UAAU,CAAC,CAAC;EAEhB,OAAO,EAAAT,eAAA,GAACC,OAAO,CAACP,MAAM,cAAAM,eAAA,cAAAA,eAAA,GAAI,EAAE,IAAIS,UAAU;AAC5C,CAAC;AAED,gBAAe,UAACf,MAAe,EAAK;EAClC,OAAO,UAACqB,KAAU,EAAyC;IACzD,IAAMP,GAAG,GAAGT,MAAM,CAACL,MAAM,CAAC;IAC1B,OAAAsB,aAAA;MACER,GAAG,EAAHA;IAAG,GACAO,KAAK;EAEZ,CAAC;AACH,CAAC"}