"use client" import React from "react"; import { IoSparklesSharp } from "react-icons/io5"; import { FaCaretRight, FaCaretDown } from "react-icons/fa"; type Props = { name: string; type: string; required?: boolean; deprecated?: boolean; children?: React.ReactNode; cloudOnly?: boolean; default?: string; collapsable?: boolean; }; export function PropertyReference({ children, name, type, required = false, deprecated = false, cloudOnly = false, default: defaultValue, collapsable = false, }: Props) { const [isCollapsed, setIsCollapsed] = React.useState( collapsable ? true : false ); const enhancedChildren = React.Children.map(children, (child) => { if ( React.isValidElement(child) && (child.type as any).name === "PropertyReference" ) { return React.cloneElement(child, { collapsable: true } as Props); } return child; }); const collapseClassName = `${isCollapsed ? "hidden" : ""}`; const renderChips = () => { return ( <> {type} {required && ( required )} {deprecated && ( deprecated )} > ); }; return (