@birhaus/test-utils
Version:
BIRHAUS v3.0 Radical Minimalist Testing Framework - Glass morphism validators, generous spacing tests, and v3 component validation utilities
1 lines • 94.9 kB
Source Map (JSON)
{"version":3,"sources":["../../src/v3/GlassMorphismValidator.ts","../../src/v3/V3SpacingValidator.ts","../../src/v3/V3AnimationValidator.ts","../../src/v3/index.ts"],"names":[],"mappings":"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","file":"index.mjs","sourcesContent":["/**\n * GlassMorphismValidator - Validates glass morphism effects in BIRHAUS v3.0 components\n * \n * Validates:\n * - Backdrop blur effects (backdrop-filter: blur)\n * - Backdrop saturation (backdrop-filter: saturate)\n * - Glass background opacity (semi-transparent backgrounds)\n * - Border transparency and glass borders\n * - Layered glass effects with proper z-index\n * - Performance impact of glass effects\n * - Accessibility considerations for glass backgrounds\n */\n\nexport interface GlassEffectProperties {\n backdropBlur: string | null\n backdropSaturate: string | null\n backgroundColor: string | null\n borderColor: string | null\n borderOpacity: number\n backgroundOpacity: number\n zIndex: number\n hasGradientOverlay: boolean\n}\n\nexport interface GlassValidationRule {\n name: string\n description: string\n severity: 'error' | 'warning' | 'info'\n validate: (element: Element, computedStyle: CSSStyleDeclaration) => boolean\n message: string\n messageEs: string\n}\n\nexport interface GlassValidationResult {\n isValid: boolean\n rule: GlassValidationRule\n element: Element\n actualValue: string\n expectedValue: string\n severity: 'error' | 'warning' | 'info'\n}\n\nexport interface GlassValidationReport {\n totalElements: number\n validElements: number\n invalidElements: number\n errors: GlassValidationResult[]\n warnings: GlassValidationResult[]\n info: GlassValidationResult[]\n performance: {\n glassElementsCount: number\n estimatedRenderCost: number\n recommendations: string[]\n }\n}\n\n/**\n * BIRHAUS v3.0 Glass Morphism Validation Rules\n */\nexport const glassValidationRules: GlassValidationRule[] = [\n {\n name: 'backdrop-blur-required',\n description: 'Glass elements must have backdrop-blur effect',\n severity: 'error',\n validate: (element, style) => {\n const backdropFilter = style.getPropertyValue('backdrop-filter')\n return backdropFilter.includes('blur(') && !backdropFilter.includes('blur(0px)')\n },\n message: 'Glass morphism elements must include backdrop-blur',\n messageEs: 'Elementos glass morphism deben incluir backdrop-blur'\n },\n \n {\n name: 'backdrop-saturate-recommended',\n description: 'Glass elements should have backdrop saturation for richer effect',\n severity: 'warning',\n validate: (element, style) => {\n const backdropFilter = style.getPropertyValue('backdrop-filter')\n return backdropFilter.includes('saturate(') && \n !backdropFilter.includes('saturate(100%)')\n },\n message: 'Consider adding backdrop-saturate for richer glass effect',\n messageEs: 'Considera agregar backdrop-saturate para efecto glass más rico'\n },\n\n {\n name: 'semi-transparent-background',\n description: 'Glass backgrounds should be semi-transparent',\n severity: 'error',\n validate: (element, style) => {\n const bg = style.getPropertyValue('background-color')\n const opacity = extractOpacity(bg)\n return opacity > 0.1 && opacity < 0.9\n },\n message: 'Glass backgrounds must be semi-transparent (0.1 to 0.9 opacity)',\n messageEs: 'Fondos glass deben ser semi-transparentes (opacidad 0.1 a 0.9)'\n },\n\n {\n name: 'glass-border-transparency',\n description: 'Glass borders should be semi-transparent',\n severity: 'warning',\n validate: (element, style) => {\n const borderColor = style.getPropertyValue('border-color')\n if (!borderColor || borderColor === 'transparent') return true\n const opacity = extractOpacity(borderColor)\n return opacity < 0.6\n },\n message: 'Glass borders should be semi-transparent for better effect',\n messageEs: 'Bordes glass deben ser semi-transparentes para mejor efecto'\n },\n\n {\n name: 'gradient-overlay-present',\n description: 'Glass elements should have subtle gradient overlay',\n severity: 'info',\n validate: (element, style) => {\n // Check for pseudo-elements with gradients\n const hasOverlay = element.querySelector('::before, ::after') || \n element.querySelector('[class*=\"gradient\"]')\n return !!hasOverlay\n },\n message: 'Consider adding gradient overlay for enhanced glass effect',\n messageEs: 'Considera agregar superposición de gradiente para efecto glass mejorado'\n },\n\n {\n name: 'performance-blur-limit',\n description: 'Backdrop blur should not exceed reasonable performance limits',\n severity: 'warning',\n validate: (element, style) => {\n const backdropFilter = style.getPropertyValue('backdrop-filter')\n const blurMatch = backdropFilter.match(/blur\\((\\d+)px\\)/)\n if (!blurMatch) return true\n const blurValue = parseInt(blurMatch[1])\n return blurValue <= 20 // Reasonable performance limit\n },\n message: 'Backdrop blur > 20px may impact performance',\n messageEs: 'Backdrop blur > 20px puede impactar el rendimiento'\n },\n\n {\n name: 'contrast-accessibility',\n description: 'Glass backgrounds must maintain sufficient contrast',\n severity: 'error',\n validate: (element, style) => {\n // Simplified contrast check - in real implementation would calculate actual contrast\n const bg = style.getPropertyValue('background-color')\n const color = style.getPropertyValue('color')\n const bgOpacity = extractOpacity(bg)\n \n // If background is very transparent, text must be high contrast\n return bgOpacity > 0.4 || isHighContrast(color, bg)\n },\n message: 'Glass elements must maintain WCAG AA contrast ratios',\n messageEs: 'Elementos glass deben mantener ratios de contraste WCAG AA'\n }\n]\n\n/**\n * Extract opacity value from CSS color\n */\nfunction extractOpacity(color: string): number {\n if (!color) return 1\n\n // Handle rgba() format\n const rgbaMatch = color.match(/rgba?\\(\\s*\\d+\\s*,\\s*\\d+\\s*,\\s*\\d+\\s*,?\\s*([\\d.]+)?\\s*\\)/)\n if (rgbaMatch && rgbaMatch[1]) {\n return parseFloat(rgbaMatch[1])\n }\n\n // Handle hsla() format\n const hslaMatch = color.match(/hsla?\\(\\s*\\d+\\s*,\\s*\\d+%\\s*,\\s*\\d+%\\s*,?\\s*([\\d.]+)?\\s*\\)/)\n if (hslaMatch && hslaMatch[1]) {\n return parseFloat(hslaMatch[1])\n }\n\n // Handle CSS custom properties and other formats\n if (color.includes('/')) {\n const parts = color.split('/')\n const alpha = parts[parts.length - 1].trim()\n if (alpha.endsWith('%')) {\n return parseFloat(alpha) / 100\n }\n return parseFloat(alpha)\n }\n\n return 1 // Assume opaque if can't determine\n}\n\n/**\n * Simplified contrast check\n */\nfunction isHighContrast(color1: string, color2: string): boolean {\n // In real implementation, would calculate actual WCAG contrast ratio\n // This is a simplified version for the validator\n return true // Placeholder\n}\n\n/**\n * Extract glass effect properties from element\n */\nexport function extractGlassProperties(element: Element): GlassEffectProperties {\n const style = window.getComputedStyle(element)\n const backdropFilter = style.getPropertyValue('backdrop-filter')\n \n // Extract backdrop blur\n const blurMatch = backdropFilter.match(/blur\\(([^)]+)\\)/)\n const backdropBlur = blurMatch ? blurMatch[1] : null\n \n // Extract backdrop saturate\n const saturateMatch = backdropFilter.match(/saturate\\(([^)]+)\\)/)\n const backdropSaturate = saturateMatch ? saturateMatch[1] : null\n \n const backgroundColor = style.getPropertyValue('background-color')\n const borderColor = style.getPropertyValue('border-color')\n const zIndex = parseInt(style.getPropertyValue('z-index')) || 0\n \n // Check for gradient overlay (simplified)\n const hasGradientOverlay = element.querySelector('[class*=\"gradient\"]') !== null ||\n style.getPropertyValue('background-image').includes('gradient')\n \n return {\n backdropBlur,\n backdropSaturate,\n backgroundColor,\n borderColor,\n borderOpacity: extractOpacity(borderColor),\n backgroundOpacity: extractOpacity(backgroundColor),\n zIndex,\n hasGradientOverlay\n }\n}\n\n/**\n * Validate glass morphism effects on element\n */\nexport function validateGlassElement(\n element: Element,\n rules: GlassValidationRule[] = glassValidationRules\n): GlassValidationResult[] {\n const style = window.getComputedStyle(element)\n const results: GlassValidationResult[] = []\n\n for (const rule of rules) {\n const isValid = rule.validate(element, style)\n \n if (!isValid) {\n results.push({\n isValid: false,\n rule,\n element,\n actualValue: extractActualValue(element, rule),\n expectedValue: rule.description,\n severity: rule.severity\n })\n }\n }\n\n return results\n}\n\n/**\n * Extract actual value for validation result\n */\nfunction extractActualValue(element: Element, rule: GlassValidationRule): string {\n const style = window.getComputedStyle(element)\n \n switch (rule.name) {\n case 'backdrop-blur-required':\n return style.getPropertyValue('backdrop-filter')\n case 'backdrop-saturate-recommended':\n return style.getPropertyValue('backdrop-filter')\n case 'semi-transparent-background':\n return style.getPropertyValue('background-color')\n case 'glass-border-transparency':\n return style.getPropertyValue('border-color')\n default:\n return 'N/A'\n }\n}\n\n/**\n * Find all glass morphism elements in DOM\n */\nexport function findGlassElements(container: Element = document.body): Element[] {\n const selectors = [\n '[class*=\"backdrop-blur\"]',\n '[class*=\"glass\"]',\n '[style*=\"backdrop-filter\"]',\n '[data-glass=\"true\"]',\n '[data-birhaus-glass]'\n ]\n\n const elements = new Set<Element>()\n \n for (const selector of selectors) {\n container.querySelectorAll(selector).forEach(el => elements.add(el))\n }\n\n // Also check computed styles for backdrop-filter\n container.querySelectorAll('*').forEach(el => {\n const style = window.getComputedStyle(el)\n const backdropFilter = style.getPropertyValue('backdrop-filter')\n if (backdropFilter && backdropFilter !== 'none') {\n elements.add(el)\n }\n })\n\n return Array.from(elements)\n}\n\n/**\n * Generate comprehensive glass morphism validation report\n */\nexport function validateGlassMorphism(\n container: Element = document.body,\n rules: GlassValidationRule[] = glassValidationRules\n): GlassValidationReport {\n const glassElements = findGlassElements(container)\n const allResults: GlassValidationResult[] = []\n\n for (const element of glassElements) {\n const results = validateGlassElement(element, rules)\n allResults.push(...results)\n }\n\n const errors = allResults.filter(r => r.severity === 'error')\n const warnings = allResults.filter(r => r.severity === 'warning')\n const info = allResults.filter(r => r.severity === 'info')\n\n // Performance analysis\n const estimatedRenderCost = calculateGlassRenderCost(glassElements)\n const recommendations = generatePerformanceRecommendations(glassElements, estimatedRenderCost)\n\n return {\n totalElements: glassElements.length,\n validElements: glassElements.length - new Set(allResults.map(r => r.element)).size,\n invalidElements: new Set(allResults.map(r => r.element)).size,\n errors,\n warnings,\n info,\n performance: {\n glassElementsCount: glassElements.length,\n estimatedRenderCost,\n recommendations\n }\n }\n}\n\n/**\n * Calculate estimated render cost of glass effects\n */\nfunction calculateGlassRenderCost(elements: Element[]): number {\n let cost = 0\n \n for (const element of elements) {\n const style = window.getComputedStyle(element)\n const backdropFilter = style.getPropertyValue('backdrop-filter')\n \n // Base cost for glass effect\n cost += 1\n \n // Additional cost for blur\n const blurMatch = backdropFilter.match(/blur\\((\\d+)px\\)/)\n if (blurMatch) {\n const blurValue = parseInt(blurMatch[1])\n cost += blurValue * 0.1 // Higher blur = higher cost\n }\n \n // Additional cost for saturation\n if (backdropFi