30 lines
1.3 KiB
JavaScript
30 lines
1.3 KiB
JavaScript
const require_rolldown_runtime = require('../rolldown-runtime.cjs');
|
|
const require_ConfigProvider_ConfigProvider = require('../ConfigProvider/ConfigProvider.cjs');
|
|
const vue = require_rolldown_runtime.__toESM(require("vue"));
|
|
|
|
//#region src/shared/useId.ts
|
|
let count = 0;
|
|
/**
|
|
* The `useId` function generates a unique identifier using a provided deterministic ID or a default
|
|
* one prefixed with "reka-", or the provided one via `useId` props from `<ConfigProvider>`.
|
|
* @param {string | null | undefined} [deterministicId] - The `useId` function you provided takes an
|
|
* optional parameter `deterministicId`, which can be a string, null, or undefined. If
|
|
* `deterministicId` is provided, the function will return it. Otherwise, it will generate an id using
|
|
* the `useId` function obtained
|
|
*/
|
|
function useId(deterministicId, prefix = "reka") {
|
|
if (deterministicId) return deterministicId;
|
|
if ("useId" in vue) return `${prefix}-${vue.useId?.()}`;
|
|
const configProviderContext = require_ConfigProvider_ConfigProvider.injectConfigProviderContext({ useId: void 0 });
|
|
if (configProviderContext.useId) return `${prefix}-${configProviderContext.useId()}`;
|
|
return `${prefix}-${++count}`;
|
|
}
|
|
|
|
//#endregion
|
|
Object.defineProperty(exports, 'useId', {
|
|
enumerable: true,
|
|
get: function () {
|
|
return useId;
|
|
}
|
|
});
|
|
//# sourceMappingURL=useId.cjs.map
|