All files / web/src/arcade-games/know-your-world/features/letter-confirmation index.ts

100% Statements 78/78
100% Branches 0/0
100% Functions 0/0
100% Lines 78/78

Press n or j to go to the next uncovered block, b, p or k for the previous block.

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 791x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x  
/**
 * Letter Confirmation Feature Module
 *
 * This module handles letter confirmation functionality for Learning mode
 * in the Know Your World game:
 * - Confirmation state management
 * - Keyboard input handling
 * - Letter display with visual feedback
 * - Utility functions for letter processing
 *
 * ## Usage
 *
 * ```tsx
 * import {
 *   useLetterConfirmation,
 *   LetterDisplay,
 *   normalizeToBaseLetter,
 * } from '../features/letter-confirmation'
 *
 * function GameInfoPanel() {
 *   const confirmation = useLetterConfirmation({
 *     regionName: currentRegionName,
 *     requiredLetters: 3,
 *     confirmedCount: state.nameConfirmationProgress,
 *     isMyTurn,
 *     gameMode,
 *     onConfirmLetter: confirmLetter,
 *   })
 *
 *   return (
 *     <LetterDisplay
 *       regionName={currentRegionName}
 *       requiredLetters={3}
 *       confirmedCount={state.nameConfirmationProgress}
 *       isComplete={confirmation.isComplete}
 *       isDark={isDark}
 *     />
 *   )
 * }
 * ```
 */
 
// ============================================================================
// Types
// ============================================================================
 
export type {
  LetterInfo,
  LetterStatus,
  UseLetterConfirmationOptions,
  UseLetterConfirmationReturn,
  LetterDisplayProps,
} from './types'
 
// ============================================================================
// Hook
// ============================================================================
 
export { useLetterConfirmation } from './useLetterConfirmation'
 
// ============================================================================
// Components
// ============================================================================
 
export { LetterDisplay } from './LetterDisplay'
 
// ============================================================================
// Utilities
// ============================================================================
 
export {
  getNthNonSpaceLetter,
  normalizeToBaseLetter,
  countNonSpaceLetters,
  getLetterStatus,
  getLetterStyles,
  calculateProgress,
} from './letterUtils'