// node_modules/vuetify/lib/composables/forwardRefs.mjs var Refs = Symbol("Forwarded refs"); function getDescriptor(obj, key) { let currentObj = obj; while (currentObj) { const descriptor = Reflect.getOwnPropertyDescriptor(currentObj, key); if (descriptor) return descriptor; currentObj = Object.getPrototypeOf(currentObj); } return void 0; } function forwardRefs(target) { for (var _len = arguments.length, refs = new Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++) { refs[_key - 1] = arguments[_key]; } target[Refs] = refs; return new Proxy(target, { get(target2, key) { if (Reflect.has(target2, key)) { return Reflect.get(target2, key); } if (typeof key === "symbol" || key.startsWith("$") || key.startsWith("__")) return; for (const ref of refs) { if (ref.value && Reflect.has(ref.value, key)) { const val = Reflect.get(ref.value, key); return typeof val === "function" ? val.bind(ref.value) : val; } } }, has(target2, key) { if (Reflect.has(target2, key)) { return true; } if (typeof key === "symbol" || key.startsWith("$") || key.startsWith("__")) return false; for (const ref of refs) { if (ref.value && Reflect.has(ref.value, key)) { return true; } } return false; }, set(target2, key, value) { if (Reflect.has(target2, key)) { return Reflect.set(target2, key, value); } if (typeof key === "symbol" || key.startsWith("$") || key.startsWith("__")) return false; for (const ref of refs) { if (ref.value && Reflect.has(ref.value, key)) { return Reflect.set(ref.value, key, value); } } return false; }, getOwnPropertyDescriptor(target2, key) { var _a; const descriptor = Reflect.getOwnPropertyDescriptor(target2, key); if (descriptor) return descriptor; if (typeof key === "symbol" || key.startsWith("$") || key.startsWith("__")) return; for (const ref of refs) { if (!ref.value) continue; const descriptor2 = getDescriptor(ref.value, key) ?? ("_" in ref.value ? getDescriptor((_a = ref.value._) == null ? void 0 : _a.setupState, key) : void 0); if (descriptor2) return descriptor2; } for (const ref of refs) { const childRefs = ref.value && ref.value[Refs]; if (!childRefs) continue; const queue = childRefs.slice(); while (queue.length) { const ref2 = queue.shift(); const descriptor2 = getDescriptor(ref2.value, key); if (descriptor2) return descriptor2; const childRefs2 = ref2.value && ref2.value[Refs]; if (childRefs2) queue.push(...childRefs2); } } return void 0; } }); } export { forwardRefs }; //# sourceMappingURL=chunk-DOBNCX34.js.map