{"version":3,"sources":["../src/utils/peer-deps-check.ts","../src/components/button.tsx","../src/components/card.tsx"],"names":["React","jsx","jsxs"],"mappings":"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","file":"index.cjs","sourcesContent":["import React from \"react\";\n\nlet hasCheckedPeerDeps = false;\n\nexport function checkPeerDependencies(): void {\n  // Only check once to avoid performance impact\n  if (hasCheckedPeerDeps) return;\n  hasCheckedPeerDeps = true;\n\n  const missingDeps: string[] = [];\n  const errorMessages: string[] = [];\n\n  // Check for React\n  if (!React || typeof React.createElement !== \"function\") {\n    missingDeps.push(\"react\");\n    errorMessages.push(\"React is not available\");\n  }\n\n  // Check React version (basic check)\n  if (React.version && React.version.split(\".\")[0] < \"16\") {\n    errorMessages.push(\n      `React version ${React.version} is too old. Requires React >=16.8.0`,\n    );\n  }\n\n  if (missingDeps.length > 0 || errorMessages.length > 0) {\n    const error = new Error(\n      `@madooei/react-example-package peer dependency issues:\\n\\n` +\n        (errorMessages.length > 0\n          ? `Issues:\\n${errorMessages.map((msg) => `- ${msg}`).join(\"\\n\")}\\n\\n`\n          : \"\") +\n        (missingDeps.length > 0\n          ? `Missing dependencies: ${missingDeps.join(\", \")}\\n\\n`\n          : \"\") +\n        `Please install the required dependencies:\\n` +\n        `npm install react react-dom tailwindcss\\n\\n` +\n        `Also ensure Tailwind CSS is configured in your project for proper styling.`,\n    );\n    error.name = \"PeerDependencyError\";\n    throw error;\n  }\n\n  // Warn about Tailwind CSS (non-blocking)\n  if (typeof window !== \"undefined\" && typeof document !== \"undefined\") {\n    // Only check in browser environment\n    setTimeout(() => {\n      const hasMetaTailwind = document.querySelector('meta[name=\"tailwind\"]');\n      const hasTailwindClasses =\n        document.querySelector('[class*=\"bg-blue-\"]') ||\n        document.querySelector('[class*=\"shadow-\"]') ||\n        document.querySelector('[class*=\"rounded-\"]');\n\n      if (!hasMetaTailwind && !hasTailwindClasses) {\n        console.warn(\n          \"⚠️  @madooei/react-example-package: Tailwind CSS not detected.\\n\" +\n            \"Components may not display correctly without Tailwind CSS.\\n\" +\n            \"Please ensure Tailwind CSS is installed and configured.\\n\" +\n            \"See: https://tailwindcss.com/docs/installation\",\n        );\n      }\n    }, 100); // Small delay to let components render\n  }\n}\n","import React from \"react\";\nimport { type ButtonProps } from \"@/types\";\nimport { checkPeerDependencies } from \"@/utils/peer-deps-check\";\n\n// Export your React components here\nexport const Button: React.FC<ButtonProps> = ({\n  children,\n  variant = \"primary\",\n  size = \"medium\",\n  disabled = false,\n  onClick,\n}) => {\n  // Check peer dependencies on component usage\n  checkPeerDependencies();\n  const baseClasses =\n    \"inline-flex items-center justify-center font-medium rounded-md focus:outline-none focus:ring-2 focus:ring-offset-2\";\n\n  const variantClasses = {\n    primary: \"bg-blue-600 text-white hover:bg-blue-700 focus:ring-blue-500\",\n    secondary: \"bg-gray-600 text-white hover:bg-gray-700 focus:ring-gray-500\",\n    danger: \"bg-red-600 text-white hover:bg-red-700 focus:ring-red-500\",\n  };\n\n  const sizeClasses = {\n    small: \"px-2.5 py-1.5 text-xs\",\n    medium: \"px-4 py-2 text-sm\",\n    large: \"px-6 py-3 text-base\",\n  };\n\n  const disabledClasses = \"opacity-50 cursor-not-allowed\";\n\n  const className = [\n    baseClasses,\n    variantClasses[variant as keyof typeof variantClasses],\n    sizeClasses[size as keyof typeof sizeClasses],\n    disabled && disabledClasses,\n  ]\n    .filter(Boolean)\n    .join(\" \");\n\n  return (\n    <button\n      className={className}\n      disabled={disabled}\n      onClick={onClick}\n      type=\"button\"\n    >\n      {children}\n    </button>\n  );\n};\n","import React from \"react\";\nimport { type CardProps } from \"@/types\";\nimport { checkPeerDependencies } from \"@/utils/peer-deps-check\";\n\nexport const Card: React.FC<CardProps> = ({\n  children,\n  title,\n  className = \"\",\n}) => {\n  // Check peer dependencies on component usage\n  checkPeerDependencies();\n  const baseClasses =\n    \"bg-white shadow-md rounded-lg p-6 border border-gray-200\";\n  const combinedClassName = [baseClasses, className].filter(Boolean).join(\" \");\n\n  return (\n    <div className={combinedClassName}>\n      {title && (\n        <h3 className=\"text-lg font-semibold text-gray-900 mb-4\">{title}</h3>\n      )}\n      {children}\n    </div>\n  );\n};\n"]}