@rakeyshgidwani/roger-ui-bank-theme-stan-design 0.2.7 → 0.2.9
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +1 -1
- package/dist/components/ui/accessibility-demo.d.ts +259 -0
- package/dist/components/ui/accessibility-demo.esm.js +265 -0
- package/dist/components/ui/accessibility-demo.js +265 -0
- package/dist/components/ui/advanced-component-architecture-demo.d.ts +718 -0
- package/dist/components/ui/advanced-component-architecture-demo.esm.js +860 -0
- package/dist/components/ui/advanced-component-architecture-demo.js +860 -0
- package/dist/components/ui/advanced-transition-system-demo.d.ts +660 -0
- package/dist/components/ui/advanced-transition-system-demo.esm.js +624 -0
- package/dist/components/ui/advanced-transition-system-demo.js +624 -0
- package/dist/components/ui/advanced-transition-system.d.ts +391 -0
- package/dist/components/ui/advanced-transition-system.esm.js +351 -0
- package/dist/components/ui/advanced-transition-system.js +351 -0
- package/dist/components/ui/animation/animated-container.d.ts +162 -0
- package/dist/components/ui/animation/animated-container.esm.js +143 -0
- package/dist/components/ui/animation/animated-container.js +143 -0
- package/dist/components/ui/animation/index.d.ts +9 -0
- package/dist/components/ui/animation/index.esm.js +19 -0
- package/dist/components/ui/animation/index.js +19 -0
- package/dist/components/ui/animation/staggered-container.d.ts +64 -0
- package/dist/components/ui/animation/staggered-container.esm.js +59 -0
- package/dist/components/ui/animation/staggered-container.js +59 -0
- package/dist/components/ui/animation-demo.d.ts +238 -0
- package/dist/components/ui/animation-demo.esm.js +218 -0
- package/dist/components/ui/animation-demo.js +218 -0
- package/dist/components/ui/badge.d.ts +28 -0
- package/dist/components/ui/badge.esm.js +30 -0
- package/dist/components/ui/badge.js +30 -0
- package/dist/components/ui/battery-conscious-animation-demo.d.ts +561 -0
- package/dist/components/ui/battery-conscious-animation-demo.esm.js +533 -0
- package/dist/components/ui/battery-conscious-animation-demo.js +533 -0
- package/dist/components/ui/border-radius-shadow-demo.d.ts +183 -0
- package/dist/components/ui/border-radius-shadow-demo.esm.js +176 -0
- package/dist/components/ui/border-radius-shadow-demo.js +176 -0
- package/dist/components/ui/button.d.ts +33 -0
- package/dist/components/ui/button.esm.js +30 -0
- package/dist/components/ui/button.js +30 -0
- package/dist/components/ui/card.d.ts +205 -0
- package/dist/components/ui/card.esm.js +182 -0
- package/dist/components/ui/card.js +182 -0
- package/dist/components/ui/checkbox.d.ts +26 -0
- package/dist/components/ui/checkbox.esm.js +30 -0
- package/dist/components/ui/checkbox.js +30 -0
- package/dist/components/ui/color-preview.d.ts +402 -0
- package/dist/components/ui/color-preview.esm.js +388 -0
- package/dist/components/ui/color-preview.js +388 -0
- package/dist/components/ui/data-display/chart.d.ts +646 -0
- package/dist/components/ui/data-display/chart.esm.js +625 -0
- package/dist/components/ui/data-display/chart.js +625 -0
- package/dist/components/ui/data-display/data-grid-simple.d.ts +73 -0
- package/dist/components/ui/data-display/data-grid-simple.esm.js +76 -0
- package/dist/components/ui/data-display/data-grid-simple.js +76 -0
- package/dist/components/ui/data-display/data-grid.d.ts +670 -0
- package/dist/components/ui/data-display/data-grid.esm.js +667 -0
- package/dist/components/ui/data-display/data-grid.js +667 -0
- package/dist/components/ui/data-display/list.d.ts +448 -0
- package/dist/components/ui/data-display/list.esm.js +448 -0
- package/dist/components/ui/data-display/list.js +448 -0
- package/dist/components/ui/data-display/table.d.ts +472 -0
- package/dist/components/ui/data-display/table.esm.js +474 -0
- package/dist/components/ui/data-display/table.js +474 -0
- package/dist/components/ui/data-display/timeline.d.ts +433 -0
- package/dist/components/ui/data-display/timeline.esm.js +436 -0
- package/dist/components/ui/data-display/timeline.js +436 -0
- package/dist/components/ui/data-display/tree.d.ts +594 -0
- package/dist/components/ui/data-display/tree.esm.js +570 -0
- package/dist/components/ui/data-display/tree.js +570 -0
- package/dist/components/ui/data-display/types.d.ts +534 -0
- package/dist/components/ui/data-display/types.esm.js +511 -0
- package/dist/components/ui/data-display/types.js +511 -0
- package/dist/components/ui/enterprise-mobile-experience-demo.d.ts +735 -0
- package/dist/components/ui/enterprise-mobile-experience-demo.esm.js +699 -0
- package/dist/components/ui/enterprise-mobile-experience-demo.js +699 -0
- package/dist/components/ui/enterprise-mobile-experience.d.ts +461 -0
- package/dist/components/ui/enterprise-mobile-experience.esm.js +413 -0
- package/dist/components/ui/enterprise-mobile-experience.js +413 -0
- package/dist/components/ui/feedback/alert.d.ts +154 -0
- package/dist/components/ui/feedback/alert.esm.js +150 -0
- package/dist/components/ui/feedback/alert.js +150 -0
- package/dist/components/ui/feedback/progress.d.ts +288 -0
- package/dist/components/ui/feedback/progress.esm.js +269 -0
- package/dist/components/ui/feedback/progress.js +269 -0
- package/dist/components/ui/feedback/skeleton.d.ts +182 -0
- package/dist/components/ui/feedback/skeleton.esm.js +175 -0
- package/dist/components/ui/feedback/skeleton.js +175 -0
- package/dist/components/ui/feedback/toast.d.ts +277 -0
- package/dist/components/ui/feedback/toast.esm.js +256 -0
- package/dist/components/ui/feedback/toast.js +256 -0
- package/dist/components/ui/feedback/types.d.ts +123 -0
- package/dist/components/ui/feedback/types.esm.js +125 -0
- package/dist/components/ui/feedback/types.js +125 -0
- package/dist/components/ui/font-preview.d.ts +282 -0
- package/dist/components/ui/font-preview.esm.js +286 -0
- package/dist/components/ui/font-preview.js +286 -0
- package/dist/components/ui/form-demo.d.ts +544 -0
- package/dist/components/ui/form-demo.esm.js +516 -0
- package/dist/components/ui/form-demo.js +516 -0
- package/dist/components/ui/hardware-acceleration-demo.d.ts +540 -0
- package/dist/components/ui/hardware-acceleration-demo.esm.js +497 -0
- package/dist/components/ui/hardware-acceleration-demo.js +497 -0
- package/dist/components/ui/input.d.ts +33 -0
- package/dist/components/ui/input.esm.js +32 -0
- package/dist/components/ui/input.js +32 -0
- package/dist/components/ui/label.d.ts +13 -0
- package/dist/components/ui/label.esm.js +16 -0
- package/dist/components/ui/label.js +16 -0
- package/dist/components/ui/layout-demo.d.ts +352 -0
- package/dist/components/ui/layout-demo.esm.js +342 -0
- package/dist/components/ui/layout-demo.js +342 -0
- package/dist/components/ui/layouts/adaptive-layout.d.ts +132 -0
- package/dist/components/ui/layouts/adaptive-layout.esm.js +120 -0
- package/dist/components/ui/layouts/adaptive-layout.js +120 -0
- package/dist/components/ui/layouts/desktop-layout.d.ts +219 -0
- package/dist/components/ui/layouts/desktop-layout.esm.js +204 -0
- package/dist/components/ui/layouts/desktop-layout.js +204 -0
- package/dist/components/ui/layouts/index.d.ts +5 -0
- package/dist/components/ui/layouts/index.esm.js +10 -0
- package/dist/components/ui/layouts/index.js +10 -0
- package/dist/components/ui/layouts/mobile-layout.d.ts +158 -0
- package/dist/components/ui/layouts/mobile-layout.esm.js +152 -0
- package/dist/components/ui/layouts/mobile-layout.js +152 -0
- package/dist/components/ui/layouts/tablet-layout.d.ts +192 -0
- package/dist/components/ui/layouts/tablet-layout.esm.js +183 -0
- package/dist/components/ui/layouts/tablet-layout.js +183 -0
- package/dist/components/ui/mobile-form-validation.d.ts +439 -0
- package/dist/components/ui/mobile-form-validation.esm.js +418 -0
- package/dist/components/ui/mobile-form-validation.js +418 -0
- package/dist/components/ui/mobile-input-demo.d.ts +197 -0
- package/dist/components/ui/mobile-input-demo.esm.js +195 -0
- package/dist/components/ui/mobile-input-demo.js +195 -0
- package/dist/components/ui/mobile-input.d.ts +273 -0
- package/dist/components/ui/mobile-input.esm.js +216 -0
- package/dist/components/ui/mobile-input.js +216 -0
- package/dist/components/ui/mobile-skeleton-loading-demo.d.ts +628 -0
- package/dist/components/ui/mobile-skeleton-loading-demo.esm.js +621 -0
- package/dist/components/ui/mobile-skeleton-loading-demo.js +621 -0
- package/dist/components/ui/navigation/breadcrumb.d.ts +149 -0
- package/dist/components/ui/navigation/breadcrumb.esm.js +155 -0
- package/dist/components/ui/navigation/breadcrumb.js +155 -0
- package/dist/components/ui/navigation/index.d.ts +25 -0
- package/dist/components/ui/navigation/index.esm.js +14 -0
- package/dist/components/ui/navigation/index.js +14 -0
- package/dist/components/ui/navigation/menu.d.ts +366 -0
- package/dist/components/ui/navigation/menu.esm.js +360 -0
- package/dist/components/ui/navigation/menu.js +360 -0
- package/dist/components/ui/navigation/navigation-demo.d.ts +169 -0
- package/dist/components/ui/navigation/navigation-demo.esm.js +317 -0
- package/dist/components/ui/navigation/navigation-demo.js +317 -0
- package/dist/components/ui/navigation/pagination.d.ts +261 -0
- package/dist/components/ui/navigation/pagination.esm.js +260 -0
- package/dist/components/ui/navigation/pagination.js +260 -0
- package/dist/components/ui/navigation/sidebar.d.ts +375 -0
- package/dist/components/ui/navigation/sidebar.esm.js +369 -0
- package/dist/components/ui/navigation/sidebar.js +369 -0
- package/dist/components/ui/navigation/stepper.d.ts +294 -0
- package/dist/components/ui/navigation/stepper.esm.js +292 -0
- package/dist/components/ui/navigation/stepper.js +292 -0
- package/dist/components/ui/navigation/tabs.d.ts +196 -0
- package/dist/components/ui/navigation/tabs.esm.js +194 -0
- package/dist/components/ui/navigation/tabs.js +194 -0
- package/dist/components/ui/navigation/types.d.ts +293 -0
- package/dist/components/ui/navigation/types.esm.js +298 -0
- package/dist/components/ui/navigation/types.js +298 -0
- package/dist/components/ui/overlay/backdrop.d.ts +79 -0
- package/dist/components/ui/overlay/backdrop.esm.js +80 -0
- package/dist/components/ui/overlay/backdrop.js +80 -0
- package/dist/components/ui/overlay/focus-manager.d.ts +141 -0
- package/dist/components/ui/overlay/focus-manager.esm.js +141 -0
- package/dist/components/ui/overlay/focus-manager.js +141 -0
- package/dist/components/ui/overlay/index.d.ts +27 -0
- package/dist/components/ui/overlay/index.esm.js +16 -0
- package/dist/components/ui/overlay/index.js +16 -0
- package/dist/components/ui/overlay/modal.d.ts +262 -0
- package/dist/components/ui/overlay/modal.esm.js +266 -0
- package/dist/components/ui/overlay/modal.js +266 -0
- package/dist/components/ui/overlay/overlay-manager.d.ts +107 -0
- package/dist/components/ui/overlay/overlay-manager.esm.js +105 -0
- package/dist/components/ui/overlay/overlay-manager.js +105 -0
- package/dist/components/ui/overlay/popover.d.ts +450 -0
- package/dist/components/ui/overlay/popover.esm.js +446 -0
- package/dist/components/ui/overlay/popover.js +446 -0
- package/dist/components/ui/overlay/portal.d.ts +75 -0
- package/dist/components/ui/overlay/portal.esm.js +79 -0
- package/dist/components/ui/overlay/portal.js +79 -0
- package/dist/components/ui/overlay/tooltip.d.ts +298 -0
- package/dist/components/ui/overlay/tooltip.esm.js +288 -0
- package/dist/components/ui/overlay/tooltip.js +288 -0
- package/dist/components/ui/overlay/types.d.ts +194 -0
- package/dist/components/ui/overlay/types.esm.js +195 -0
- package/dist/components/ui/overlay/types.js +195 -0
- package/dist/components/ui/performance-demo.d.ts +583 -0
- package/dist/components/ui/performance-demo.esm.js +549 -0
- package/dist/components/ui/performance-demo.js +549 -0
- package/dist/components/ui/semantic-input-system-demo.d.ts +490 -0
- package/dist/components/ui/semantic-input-system-demo.esm.js +465 -0
- package/dist/components/ui/semantic-input-system-demo.js +465 -0
- package/dist/components/ui/theme-customizer.d.ts +378 -0
- package/dist/components/ui/theme-customizer.esm.js +354 -0
- package/dist/components/ui/theme-customizer.js +354 -0
- package/dist/components/ui/theme-preview.d.ts +305 -0
- package/dist/components/ui/theme-preview.esm.js +258 -0
- package/dist/components/ui/theme-preview.js +258 -0
- package/dist/components/ui/theme-switcher.d.ts +259 -0
- package/dist/components/ui/theme-switcher.esm.js +238 -0
- package/dist/components/ui/theme-switcher.js +238 -0
- package/dist/components/ui/theme-toggle.d.ts +34 -0
- package/dist/components/ui/theme-toggle.esm.js +38 -0
- package/dist/components/ui/theme-toggle.js +38 -0
- package/dist/components/ui/token-demo.d.ts +188 -0
- package/dist/components/ui/token-demo.esm.js +183 -0
- package/dist/components/ui/token-demo.js +183 -0
- package/dist/components/ui/touch-demo.d.ts +455 -0
- package/dist/components/ui/touch-demo.esm.js +433 -0
- package/dist/components/ui/touch-demo.js +433 -0
- package/dist/components/ui/touch-friendly-interface-demo.d.ts +512 -0
- package/dist/components/ui/touch-friendly-interface-demo.esm.js +481 -0
- package/dist/components/ui/touch-friendly-interface-demo.js +481 -0
- package/dist/components/ui/touch-friendly-interface.d.ts +292 -0
- package/dist/components/ui/touch-friendly-interface.esm.js +272 -0
- package/dist/components/ui/touch-friendly-interface.js +272 -0
- package/dist/hooks/index.d.ts +161 -0
- package/dist/hooks/index.esm.js +190 -0
- package/dist/hooks/index.js +190 -0
- package/dist/hooks/use-accessibility-support.d.ts +516 -0
- package/dist/hooks/use-accessibility-support.esm.js +488 -0
- package/dist/hooks/use-accessibility-support.js +488 -0
- package/dist/hooks/use-adaptive-layout.d.ts +287 -0
- package/dist/hooks/use-adaptive-layout.esm.js +266 -0
- package/dist/hooks/use-adaptive-layout.js +266 -0
- package/dist/hooks/use-advanced-patterns.d.ts +292 -0
- package/dist/hooks/use-advanced-patterns.esm.js +279 -0
- package/dist/hooks/use-advanced-patterns.js +279 -0
- package/dist/hooks/use-advanced-transition-system.d.ts +390 -0
- package/dist/hooks/use-advanced-transition-system.esm.js +352 -0
- package/dist/hooks/use-advanced-transition-system.js +352 -0
- package/dist/hooks/use-animation-profile.d.ts +285 -0
- package/dist/hooks/use-animation-profile.esm.js +259 -0
- package/dist/hooks/use-animation-profile.js +259 -0
- package/dist/hooks/use-battery-animations.d.ts +382 -0
- package/dist/hooks/use-battery-animations.esm.js +359 -0
- package/dist/hooks/use-battery-animations.js +359 -0
- package/dist/hooks/use-battery-conscious-loading.d.ts +473 -0
- package/dist/hooks/use-battery-conscious-loading.esm.js +432 -0
- package/dist/hooks/use-battery-conscious-loading.js +432 -0
- package/dist/hooks/use-battery-optimization.d.ts +328 -0
- package/dist/hooks/use-battery-optimization.esm.js +307 -0
- package/dist/hooks/use-battery-optimization.js +307 -0
- package/dist/hooks/use-battery-status.d.ts +297 -0
- package/dist/hooks/use-battery-status.esm.js +277 -0
- package/dist/hooks/use-battery-status.js +277 -0
- package/dist/hooks/use-component-performance.d.ts +342 -0
- package/dist/hooks/use-component-performance.esm.js +329 -0
- package/dist/hooks/use-component-performance.js +329 -0
- package/dist/hooks/use-device-loading-states.d.ts +456 -0
- package/dist/hooks/use-device-loading-states.esm.js +416 -0
- package/dist/hooks/use-device-loading-states.js +416 -0
- package/dist/hooks/use-device.d.ts +104 -0
- package/dist/hooks/use-device.esm.js +99 -0
- package/dist/hooks/use-device.js +99 -0
- package/dist/hooks/use-enterprise-mobile-experience.d.ts +486 -0
- package/dist/hooks/use-enterprise-mobile-experience.esm.js +439 -0
- package/dist/hooks/use-enterprise-mobile-experience.js +439 -0
- package/dist/hooks/use-form-feedback.d.ts +401 -0
- package/dist/hooks/use-form-feedback.esm.js +360 -0
- package/dist/hooks/use-form-feedback.js +360 -0
- package/dist/hooks/use-form-performance.d.ts +511 -0
- package/dist/hooks/use-form-performance.esm.js +478 -0
- package/dist/hooks/use-form-performance.js +478 -0
- package/dist/hooks/use-frame-rate.d.ts +249 -0
- package/dist/hooks/use-frame-rate.esm.js +232 -0
- package/dist/hooks/use-frame-rate.js +232 -0
- package/dist/hooks/use-gestures.d.ts +336 -0
- package/dist/hooks/use-gestures.esm.js +314 -0
- package/dist/hooks/use-gestures.js +314 -0
- package/dist/hooks/use-hardware-acceleration.d.ts +339 -0
- package/dist/hooks/use-hardware-acceleration.esm.js +313 -0
- package/dist/hooks/use-hardware-acceleration.js +313 -0
- package/dist/hooks/use-input-accessibility.d.ts +451 -0
- package/dist/hooks/use-input-accessibility.esm.js +417 -0
- package/dist/hooks/use-input-accessibility.js +417 -0
- package/dist/hooks/use-input-performance.d.ts +503 -0
- package/dist/hooks/use-input-performance.esm.js +471 -0
- package/dist/hooks/use-input-performance.js +471 -0
- package/dist/hooks/use-layout-performance.d.ts +317 -0
- package/dist/hooks/use-layout-performance.esm.js +298 -0
- package/dist/hooks/use-layout-performance.js +298 -0
- package/dist/hooks/use-loading-accessibility.d.ts +532 -0
- package/dist/hooks/use-loading-accessibility.esm.js +495 -0
- package/dist/hooks/use-loading-accessibility.js +495 -0
- package/dist/hooks/use-loading-performance.d.ts +471 -0
- package/dist/hooks/use-loading-performance.esm.js +449 -0
- package/dist/hooks/use-loading-performance.js +449 -0
- package/dist/hooks/use-memory-usage.d.ts +285 -0
- package/dist/hooks/use-memory-usage.esm.js +268 -0
- package/dist/hooks/use-memory-usage.js +268 -0
- package/dist/hooks/use-mobile-form-layout.d.ts +462 -0
- package/dist/hooks/use-mobile-form-layout.esm.js +427 -0
- package/dist/hooks/use-mobile-form-layout.js +427 -0
- package/dist/hooks/use-mobile-form-validation.d.ts +516 -0
- package/dist/hooks/use-mobile-form-validation.esm.js +451 -0
- package/dist/hooks/use-mobile-form-validation.js +451 -0
- package/dist/hooks/use-mobile-keyboard-optimization.d.ts +469 -0
- package/dist/hooks/use-mobile-keyboard-optimization.esm.js +431 -0
- package/dist/hooks/use-mobile-keyboard-optimization.js +431 -0
- package/dist/hooks/use-mobile-layout.d.ts +300 -0
- package/dist/hooks/use-mobile-layout.esm.js +280 -0
- package/dist/hooks/use-mobile-layout.js +280 -0
- package/dist/hooks/use-mobile-optimization.d.ts +404 -0
- package/dist/hooks/use-mobile-optimization.esm.js +378 -0
- package/dist/hooks/use-mobile-optimization.js +378 -0
- package/dist/hooks/use-mobile-skeleton.d.ts +399 -0
- package/dist/hooks/use-mobile-skeleton.esm.js +369 -0
- package/dist/hooks/use-mobile-skeleton.js +369 -0
- package/dist/hooks/use-mobile-touch.d.ts +412 -0
- package/dist/hooks/use-mobile-touch.esm.js +379 -0
- package/dist/hooks/use-mobile-touch.js +379 -0
- package/dist/hooks/use-performance-throttling.d.ts +346 -0
- package/dist/hooks/use-performance-throttling.esm.js +324 -0
- package/dist/hooks/use-performance-throttling.js +324 -0
- package/dist/hooks/use-performance.d.ts +314 -0
- package/dist/hooks/use-performance.esm.js +278 -0
- package/dist/hooks/use-performance.js +278 -0
- package/dist/hooks/use-reusable-architecture.d.ts +412 -0
- package/dist/hooks/use-reusable-architecture.esm.js +385 -0
- package/dist/hooks/use-reusable-architecture.js +385 -0
- package/dist/hooks/use-semantic-input-types.d.ts +354 -0
- package/dist/hooks/use-semantic-input-types.esm.js +315 -0
- package/dist/hooks/use-semantic-input-types.js +315 -0
- package/dist/hooks/use-semantic-input.d.ts +563 -0
- package/dist/hooks/use-semantic-input.esm.js +513 -0
- package/dist/hooks/use-semantic-input.js +513 -0
- package/dist/hooks/use-tablet-layout.d.ts +382 -0
- package/dist/hooks/use-tablet-layout.esm.js +355 -0
- package/dist/hooks/use-tablet-layout.js +355 -0
- package/dist/hooks/use-touch-friendly-input.d.ts +520 -0
- package/dist/hooks/use-touch-friendly-input.esm.js +480 -0
- package/dist/hooks/use-touch-friendly-input.js +480 -0
- package/dist/hooks/use-touch-friendly-interface.d.ts +329 -0
- package/dist/hooks/use-touch-friendly-interface.esm.js +299 -0
- package/dist/hooks/use-touch-friendly-interface.js +299 -0
- package/dist/hooks/use-touch-optimization.d.ts +373 -0
- package/dist/hooks/use-touch-optimization.esm.js +348 -0
- package/dist/hooks/use-touch-optimization.js +348 -0
- package/dist/lib/utils.d.ts +3 -0
- package/dist/lib/utils.esm.js +6 -0
- package/dist/lib/utils.js +6 -0
- package/dist/plugins/theme-css-generator.d.ts +345 -0
- package/dist/plugins/theme-css-generator.esm.js +305 -0
- package/dist/plugins/theme-css-generator.js +305 -0
- package/dist/styles.css +1 -1
- package/dist/themes/ThemeContext.d.ts +27 -0
- package/dist/themes/ThemeContext.esm.js +31 -0
- package/dist/themes/ThemeContext.js +31 -0
- package/dist/themes/ThemeProvider.d.ts +222 -0
- package/dist/themes/ThemeProvider.esm.js +229 -0
- package/dist/themes/ThemeProvider.js +229 -0
- package/dist/themes/accessibility/index.d.ts +7 -0
- package/dist/themes/accessibility/index.esm.js +27 -0
- package/dist/themes/accessibility/index.js +27 -0
- package/dist/themes/accessibility.d.ts +259 -0
- package/dist/themes/accessibility.esm.js +220 -0
- package/dist/themes/accessibility.js +220 -0
- package/dist/themes/aria-patterns.d.ts +418 -0
- package/dist/themes/aria-patterns.esm.js +384 -0
- package/dist/themes/aria-patterns.js +384 -0
- package/dist/themes/base-themes.d.ts +34 -0
- package/dist/themes/base-themes.esm.js +52 -0
- package/dist/themes/base-themes.js +52 -0
- package/dist/themes/colorManager.d.ts +327 -0
- package/dist/themes/colorManager.esm.js +362 -0
- package/dist/themes/colorManager.js +362 -0
- package/dist/themes/examples/dark-theme.d.ts +139 -0
- package/dist/themes/examples/dark-theme.esm.js +124 -0
- package/dist/themes/examples/dark-theme.js +124 -0
- package/dist/themes/examples/minimal-theme.d.ts +93 -0
- package/dist/themes/examples/minimal-theme.esm.js +86 -0
- package/dist/themes/examples/minimal-theme.js +86 -0
- package/dist/themes/focus-management.d.ts +699 -0
- package/dist/themes/focus-management.esm.js +642 -0
- package/dist/themes/focus-management.js +642 -0
- package/dist/themes/fontLoader.d.ts +163 -0
- package/dist/themes/fontLoader.esm.js +192 -0
- package/dist/themes/fontLoader.js +192 -0
- package/dist/themes/high-contrast.d.ts +619 -0
- package/dist/themes/high-contrast.esm.js +573 -0
- package/dist/themes/high-contrast.js +573 -0
- package/dist/themes/index.d.ts +11 -0
- package/dist/themes/index.esm.js +19 -0
- package/dist/themes/index.js +19 -0
- package/dist/themes/inheritance.d.ts +160 -0
- package/dist/themes/inheritance.esm.js +219 -0
- package/dist/themes/inheritance.js +219 -0
- package/dist/themes/keyboard-navigation.d.ts +550 -0
- package/dist/themes/keyboard-navigation.esm.js +521 -0
- package/dist/themes/keyboard-navigation.js +521 -0
- package/dist/themes/motion-reduction.d.ts +660 -0
- package/dist/themes/motion-reduction.esm.js +602 -0
- package/dist/themes/motion-reduction.js +602 -0
- package/dist/themes/navigation.d.ts +232 -0
- package/dist/themes/navigation.esm.js +238 -0
- package/dist/themes/navigation.js +238 -0
- package/dist/themes/screen-reader.d.ts +645 -0
- package/dist/themes/screen-reader.esm.js +580 -0
- package/dist/themes/screen-reader.js +580 -0
- package/dist/themes/systemThemeDetector.d.ts +148 -0
- package/dist/themes/systemThemeDetector.esm.js +174 -0
- package/dist/themes/systemThemeDetector.js +174 -0
- package/dist/themes/themeCSSUpdater.d.ts +229 -0
- package/dist/themes/themeCSSUpdater.esm.js +250 -0
- package/dist/themes/themeCSSUpdater.js +250 -0
- package/dist/themes/themePersistence.d.ts +192 -0
- package/dist/themes/themePersistence.esm.js +217 -0
- package/dist/themes/themePersistence.js +217 -0
- package/dist/themes/themes/stan-design.d.ts +678 -0
- package/dist/themes/themes/stan-design.esm.js +518 -0
- package/dist/themes/themes/stan-design.js +518 -0
- package/dist/themes/types.d.ts +454 -0
- package/dist/themes/types.esm.js +446 -0
- package/dist/themes/types.js +446 -0
- package/dist/themes/useSystemTheme.d.ts +43 -0
- package/dist/themes/useSystemTheme.esm.js +48 -0
- package/dist/themes/useSystemTheme.js +48 -0
- package/dist/themes/useTheme.d.ts +20 -0
- package/dist/themes/useTheme.esm.js +87 -0
- package/dist/themes/useTheme.js +87 -0
- package/dist/themes/validation.d.ts +406 -0
- package/dist/themes/validation.esm.js +411 -0
- package/dist/themes/validation.js +411 -0
- package/dist/tokens/index.d.ts +25 -0
- package/dist/tokens/index.esm.js +23 -0
- package/dist/tokens/index.js +23 -0
- package/dist/tokens/tokenExporter.d.ts +336 -0
- package/dist/tokens/tokenExporter.esm.js +371 -0
- package/dist/tokens/tokenExporter.js +371 -0
- package/dist/tokens/tokenGenerator.d.ts +250 -0
- package/dist/tokens/tokenGenerator.esm.js +267 -0
- package/dist/tokens/tokenGenerator.js +267 -0
- package/dist/tokens/tokenManager.d.ts +194 -0
- package/dist/tokens/tokenManager.esm.js +235 -0
- package/dist/tokens/tokenManager.js +235 -0
- package/dist/tokens/tokenValidator.d.ts +488 -0
- package/dist/tokens/tokenValidator.esm.js +497 -0
- package/dist/tokens/tokenValidator.js +497 -0
- package/dist/tokens/types.d.ts +78 -0
- package/dist/tokens/types.esm.js +64 -0
- package/dist/tokens/types.js +64 -0
- package/dist/utils/bundle-analyzer.d.ts +260 -0
- package/dist/utils/bundle-analyzer.esm.js +242 -0
- package/dist/utils/bundle-analyzer.js +242 -0
- package/dist/utils/bundle-splitting.d.ts +483 -0
- package/dist/utils/bundle-splitting.esm.js +458 -0
- package/dist/utils/bundle-splitting.js +458 -0
- package/dist/utils/lazy-loading.d.ts +437 -0
- package/dist/utils/lazy-loading.esm.js +415 -0
- package/dist/utils/lazy-loading.js +415 -0
- package/dist/utils/performance-monitor.d.ts +513 -0
- package/dist/utils/performance-monitor.esm.js +472 -0
- package/dist/utils/performance-monitor.js +472 -0
- package/dist/utils/tree-shaking.d.ts +274 -0
- package/dist/utils/tree-shaking.esm.js +266 -0
- package/dist/utils/tree-shaking.js +266 -0
- package/package.json +1 -1
|
@@ -0,0 +1,490 @@
|
|
|
1
|
+
export const SemanticInputSystemDemo: React.FC = () => {
|
|
2
|
+
const [activeDemo, setActiveDemo] = useState<'semantic' | 'mobile' | 'touch' | 'performance' | 'accessibility'>('semantic')
|
|
3
|
+
const [formData, setFormData] = useState({
|
|
4
|
+
name: '',
|
|
5
|
+
email: '',
|
|
6
|
+
phone: '',
|
|
7
|
+
creditCard: '',
|
|
8
|
+
amount: '',
|
|
9
|
+
search: ''
|
|
10
|
+
})
|
|
11
|
+
|
|
12
|
+
// Initialize hooks with proper interfaces
|
|
13
|
+
const { semanticState, detectInputType, optimizeKeyboard } = useSemanticInput(
|
|
14
|
+
{ type: 'text', autocomplete: 'on', inputMode: 'text', keyboardType: 'default' },
|
|
15
|
+
{},
|
|
16
|
+
{
|
|
17
|
+
enableAutoDetection: true,
|
|
18
|
+
enableKeyboardOptimization: true,
|
|
19
|
+
enableAutocomplete: true
|
|
20
|
+
}
|
|
21
|
+
)
|
|
22
|
+
|
|
23
|
+
const { keyboardState, optimizations, autoOptimizeForInputType } = useMobileKeyboardOptimization({
|
|
24
|
+
enableKeyboardDetection: true,
|
|
25
|
+
enablePerformanceMonitoring: true,
|
|
26
|
+
enableBatteryOptimization: true
|
|
27
|
+
})
|
|
28
|
+
|
|
29
|
+
const { touchState, touchOptimizations, autoOptimizeTouch } = useTouchFriendlyInput({
|
|
30
|
+
enableTouchOptimization: true,
|
|
31
|
+
enablePerformanceMonitoring: true,
|
|
32
|
+
enableAccessibilitySupport: true
|
|
33
|
+
})
|
|
34
|
+
|
|
35
|
+
const { performanceMetrics, autoOptimize } = useInputPerformance({
|
|
36
|
+
enablePerformanceMonitoring: true,
|
|
37
|
+
enableMemoryManagement: true,
|
|
38
|
+
enableBatteryOptimization: true
|
|
39
|
+
})
|
|
40
|
+
|
|
41
|
+
const { accessibilityFeatures, enableARIASupport } = useInputAccessibility({
|
|
42
|
+
enableARIA: true,
|
|
43
|
+
enableKeyboardNavigation: true,
|
|
44
|
+
enableScreenReader: true,
|
|
45
|
+
enableFocusManagement: true
|
|
46
|
+
})
|
|
47
|
+
|
|
48
|
+
const handleInputChange = (field: string, value: string) => {
|
|
49
|
+
setFormData(prev => ({ ...prev, [field]: value }))
|
|
50
|
+
|
|
51
|
+
// Detect semantic type and optimize
|
|
52
|
+
const detectedType = detectInputType(value, field)
|
|
53
|
+
if (detectedType && detectedType.type !== 'text') {
|
|
54
|
+
optimizeKeyboard(detectedType)
|
|
55
|
+
autoOptimizeForInputType(detectedType.type)
|
|
56
|
+
}
|
|
57
|
+
}
|
|
58
|
+
|
|
59
|
+
const handleDemoChange = (demo: typeof activeDemo) => {
|
|
60
|
+
setActiveDemo(demo)
|
|
61
|
+
|
|
62
|
+
// Start relevant monitoring for the selected demo
|
|
63
|
+
switch (demo) {
|
|
64
|
+
case 'semantic':
|
|
65
|
+
break
|
|
66
|
+
case 'mobile':
|
|
67
|
+
// Mobile keyboard detection is already running
|
|
68
|
+
break
|
|
69
|
+
case 'touch':
|
|
70
|
+
autoOptimizeTouch()
|
|
71
|
+
break
|
|
72
|
+
case 'performance':
|
|
73
|
+
autoOptimize()
|
|
74
|
+
break
|
|
75
|
+
case 'accessibility':
|
|
76
|
+
// Call functions safely - simplified to avoid type issues
|
|
77
|
+
if (typeof enableARIASupport === 'function') {
|
|
78
|
+
enableARIASupport()
|
|
79
|
+
}
|
|
80
|
+
break
|
|
81
|
+
}
|
|
82
|
+
}
|
|
83
|
+
|
|
84
|
+
const renderSemanticDemo = () => (
|
|
85
|
+
<div className="space-y-6">
|
|
86
|
+
<div className="grid grid-cols-1 md:grid-cols-2 gap-4">
|
|
87
|
+
<div className="space-y-2">
|
|
88
|
+
<Label htmlFor="name">Full Name</Label>
|
|
89
|
+
<Input
|
|
90
|
+
id="name"
|
|
91
|
+
value={formData.name}
|
|
92
|
+
onChange={(e) => handleInputChange('name', e.target.value)}
|
|
93
|
+
placeholder="Enter your full name"
|
|
94
|
+
className="semantic-input"
|
|
95
|
+
/>
|
|
96
|
+
<div className="text-sm text-gray-600">
|
|
97
|
+
Detected Type: <Badge variant="secondary">{semanticState.detectedType?.type || 'text'}</Badge>
|
|
98
|
+
</div>
|
|
99
|
+
</div>
|
|
100
|
+
|
|
101
|
+
<div className="space-y-2">
|
|
102
|
+
<Label htmlFor="email">Email Address</Label>
|
|
103
|
+
<Input
|
|
104
|
+
id="email"
|
|
105
|
+
type="email"
|
|
106
|
+
value={formData.email}
|
|
107
|
+
onChange={(e) => handleInputChange('email', e.target.value)}
|
|
108
|
+
placeholder="Enter your email"
|
|
109
|
+
className="semantic-input"
|
|
110
|
+
/>
|
|
111
|
+
<div className="text-sm text-gray-600">
|
|
112
|
+
Keyboard: <Badge variant="secondary">{semanticState.keyboardOptimized ? 'Optimized' : 'Default'}</Badge>
|
|
113
|
+
</div>
|
|
114
|
+
</div>
|
|
115
|
+
|
|
116
|
+
<div className="space-y-2">
|
|
117
|
+
<Label htmlFor="phone">Phone Number</Label>
|
|
118
|
+
<Input
|
|
119
|
+
id="phone"
|
|
120
|
+
value={formData.phone}
|
|
121
|
+
onChange={(e) => handleInputChange('phone', e.target.value)}
|
|
122
|
+
placeholder="Enter your phone number"
|
|
123
|
+
className="semantic-input"
|
|
124
|
+
/>
|
|
125
|
+
<div className="text-sm text-gray-600">
|
|
126
|
+
Autocomplete: <Badge variant="secondary">{semanticState.autocompleteEnhanced ? 'Enhanced' : 'Default'}</Badge>
|
|
127
|
+
</div>
|
|
128
|
+
</div>
|
|
129
|
+
|
|
130
|
+
<div className="space-y-2">
|
|
131
|
+
<Label htmlFor="creditCard">Credit Card</Label>
|
|
132
|
+
<Input
|
|
133
|
+
id="creditCard"
|
|
134
|
+
value={formData.creditCard}
|
|
135
|
+
onChange={(e) => handleInputChange('creditCard', e.target.value)}
|
|
136
|
+
placeholder="Enter credit card number"
|
|
137
|
+
className="semantic-input"
|
|
138
|
+
/>
|
|
139
|
+
<div className="text-sm text-gray-600">
|
|
140
|
+
Touch: <Badge variant="secondary">{semanticState.touchOptimized ? 'Optimized' : 'Default'}</Badge>
|
|
141
|
+
</div>
|
|
142
|
+
</div>
|
|
143
|
+
|
|
144
|
+
<div className="space-y-2">
|
|
145
|
+
<Label htmlFor="amount">Amount</Label>
|
|
146
|
+
<Input
|
|
147
|
+
id="amount"
|
|
148
|
+
value={formData.amount}
|
|
149
|
+
onChange={(e) => handleInputChange('amount', e.target.value)}
|
|
150
|
+
placeholder="Enter amount"
|
|
151
|
+
className="semantic-input"
|
|
152
|
+
/>
|
|
153
|
+
<div className="text-sm text-gray-600">
|
|
154
|
+
Performance: <Badge variant="secondary">{semanticState.isOptimized ? 'Optimized' : 'Default'}</Badge>
|
|
155
|
+
</div>
|
|
156
|
+
</div>
|
|
157
|
+
|
|
158
|
+
<div className="space-y-2">
|
|
159
|
+
<Label htmlFor="search">Search</Label>
|
|
160
|
+
<Input
|
|
161
|
+
id="search"
|
|
162
|
+
value={formData.search}
|
|
163
|
+
onChange={(e) => handleInputChange('search', e.target.value)}
|
|
164
|
+
placeholder="Search..."
|
|
165
|
+
className="semantic-input"
|
|
166
|
+
/>
|
|
167
|
+
<div className="text-sm text-gray-600">
|
|
168
|
+
Type: <Badge variant="secondary">{semanticState.detectedType?.type || 'text'}</Badge>
|
|
169
|
+
</div>
|
|
170
|
+
</div>
|
|
171
|
+
</div>
|
|
172
|
+
|
|
173
|
+
<div className="bg-gray-50 p-4 rounded-lg">
|
|
174
|
+
<h4 className="font-semibold mb-2">Semantic State</h4>
|
|
175
|
+
<pre className="text-xs text-gray-700 overflow-auto">
|
|
176
|
+
{JSON.stringify(semanticState, null, 2)}
|
|
177
|
+
</pre>
|
|
178
|
+
</div>
|
|
179
|
+
</div>
|
|
180
|
+
)
|
|
181
|
+
|
|
182
|
+
const renderMobileDemo = () => (
|
|
183
|
+
<div className="space-y-6">
|
|
184
|
+
<div className="grid grid-cols-1 md:grid-cols-2 gap-4">
|
|
185
|
+
<div className="space-y-2">
|
|
186
|
+
<Label>Keyboard State</Label>
|
|
187
|
+
<div className="space-y-2 text-sm">
|
|
188
|
+
<div>Visible: <Badge variant={keyboardState.isVisible ? 'default' : 'secondary'}>{keyboardState.isVisible ? 'Yes' : 'No'}</Badge></div>
|
|
189
|
+
<div>Height: {keyboardState.height}px</div>
|
|
190
|
+
<div>Type: <Badge variant="outline">{keyboardState.type}</Badge></div>
|
|
191
|
+
<div>Platform: <Badge variant="outline">{keyboardState.platform}</Badge></div>
|
|
192
|
+
<div>Orientation: <Badge variant="outline">{keyboardState.orientation}</Badge></div>
|
|
193
|
+
</div>
|
|
194
|
+
</div>
|
|
195
|
+
|
|
196
|
+
<div className="space-y-2">
|
|
197
|
+
<Label>Keyboard Optimizations</Label>
|
|
198
|
+
<div className="space-y-2">
|
|
199
|
+
{optimizations.map((opt, index) => (
|
|
200
|
+
<div key={index} className="flex items-center justify-between p-2 bg-gray-50 rounded">
|
|
201
|
+
<span className="text-sm">{opt.name}</span>
|
|
202
|
+
<Badge variant={opt.applied ? 'default' : 'secondary'}>
|
|
203
|
+
{opt.applied ? 'Applied' : 'Pending'}
|
|
204
|
+
</Badge>
|
|
205
|
+
</div>
|
|
206
|
+
))}
|
|
207
|
+
</div>
|
|
208
|
+
</div>
|
|
209
|
+
</div>
|
|
210
|
+
|
|
211
|
+
<div className="bg-blue-50 p-4 rounded-lg">
|
|
212
|
+
<h4 className="font-semibold mb-2 text-blue-800">Mobile Keyboard Features</h4>
|
|
213
|
+
<ul className="text-sm text-blue-700 space-y-1">
|
|
214
|
+
<li>• Automatic keyboard type detection</li>
|
|
215
|
+
<li>• Platform-specific optimizations</li>
|
|
216
|
+
<li>• Orientation-aware adjustments</li>
|
|
217
|
+
<li>• Performance monitoring integration</li>
|
|
218
|
+
<li>• Battery optimization support</li>
|
|
219
|
+
</ul>
|
|
220
|
+
</div>
|
|
221
|
+
</div>
|
|
222
|
+
)
|
|
223
|
+
|
|
224
|
+
const renderTouchDemo = () => (
|
|
225
|
+
<div className="space-y-6">
|
|
226
|
+
<div className="grid grid-cols-1 md:grid-cols-2 gap-4">
|
|
227
|
+
<div className="space-y-2">
|
|
228
|
+
<Label>Touch State</Label>
|
|
229
|
+
<div className="space-y-2 text-sm">
|
|
230
|
+
<div>Touching: <Badge variant={touchState.isTouching ? 'default' : 'secondary'}>{touchState.isTouching ? 'Yes' : 'No'}</Badge></div>
|
|
231
|
+
<div>Touch Count: {touchState.touchCount}</div>
|
|
232
|
+
<div>Duration: {touchState.touchDuration}ms</div>
|
|
233
|
+
<div>Velocity: {touchState.touchVelocity.toFixed(2)}px/ms</div>
|
|
234
|
+
<div>Gesture: <Badge variant="outline">{touchState.gestureType}</Badge></div>
|
|
235
|
+
</div>
|
|
236
|
+
</div>
|
|
237
|
+
|
|
238
|
+
<div className="space-y-2">
|
|
239
|
+
<Label>Touch Optimizations</Label>
|
|
240
|
+
<div className="space-y-2">
|
|
241
|
+
{touchOptimizations.map((opt, index) => (
|
|
242
|
+
<div key={index} className="flex items-center justify-between p-2 bg-gray-50 rounded">
|
|
243
|
+
<span className="text-sm">{opt.name}</span>
|
|
244
|
+
<Badge variant={opt.applied ? 'default' : 'secondary'}>
|
|
245
|
+
{opt.applied ? 'Applied' : 'Pending'}
|
|
246
|
+
</Badge>
|
|
247
|
+
</div>
|
|
248
|
+
))}
|
|
249
|
+
</div>
|
|
250
|
+
</div>
|
|
251
|
+
</div>
|
|
252
|
+
|
|
253
|
+
<div className="bg-green-50 p-4 rounded-lg">
|
|
254
|
+
<h4 className="font-semibold mb-2 text-green-800">Touch-Friendly Features</h4>
|
|
255
|
+
<ul className="text-sm text-green-700 space-y-1">
|
|
256
|
+
<li>• 44px minimum touch targets</li>
|
|
257
|
+
<li>• Multi-touch gesture support</li>
|
|
258
|
+
<li>• Touch feedback and animations</li>
|
|
259
|
+
<li>• Performance monitoring</li>
|
|
260
|
+
<li>• Accessibility compliance</li>
|
|
261
|
+
</ul>
|
|
262
|
+
</div>
|
|
263
|
+
</div>
|
|
264
|
+
)
|
|
265
|
+
|
|
266
|
+
const renderPerformanceDemo = () => (
|
|
267
|
+
<div className="space-y-6">
|
|
268
|
+
<div className="grid grid-cols-1 md:grid-cols-2 gap-4">
|
|
269
|
+
<div className="space-y-2">
|
|
270
|
+
<Label>Performance Metrics</Label>
|
|
271
|
+
<div className="space-y-2 text-sm">
|
|
272
|
+
<div>Frame Rate: {performanceMetrics.frameRate} FPS</div>
|
|
273
|
+
<div>Input Latency: {performanceMetrics.inputLatency.toFixed(2)}ms</div>
|
|
274
|
+
<div>Memory Usage: {performanceMetrics.memoryUsage}MB</div>
|
|
275
|
+
<div>Battery Level: {(performanceMetrics.batteryLevel * 100).toFixed(1)}%</div>
|
|
276
|
+
</div>
|
|
277
|
+
</div>
|
|
278
|
+
|
|
279
|
+
<div className="space-y-2">
|
|
280
|
+
<Label>Performance Status</Label>
|
|
281
|
+
<div className="space-y-2">
|
|
282
|
+
<div className="flex items-center justify-between">
|
|
283
|
+
<span className="text-sm">Frame Rate</span>
|
|
284
|
+
<Badge variant={performanceMetrics.frameRate >= 60 ? 'default' : 'destructive'}>
|
|
285
|
+
{performanceMetrics.frameRate >= 60 ? 'Optimal' : 'Low'}
|
|
286
|
+
</Badge>
|
|
287
|
+
</div>
|
|
288
|
+
<div className="flex items-center justify-between">
|
|
289
|
+
<span className="text-sm">Input Latency</span>
|
|
290
|
+
<Badge variant={performanceMetrics.inputLatency < 16 ? 'default' : 'destructive'}>
|
|
291
|
+
{performanceMetrics.inputLatency < 16 ? 'Optimal' : 'High'}
|
|
292
|
+
</Badge>
|
|
293
|
+
</div>
|
|
294
|
+
<div className="flex items-center justify-between">
|
|
295
|
+
<span className="text-sm">Memory</span>
|
|
296
|
+
<Badge variant={performanceMetrics.memoryUsage < 100 ? 'default' : 'destructive'}>
|
|
297
|
+
{performanceMetrics.memoryUsage < 100 ? 'Optimal' : 'High'}
|
|
298
|
+
</Badge>
|
|
299
|
+
</div>
|
|
300
|
+
</div>
|
|
301
|
+
</div>
|
|
302
|
+
</div>
|
|
303
|
+
|
|
304
|
+
<div className="bg-purple-50 p-4 rounded-lg">
|
|
305
|
+
<h4 className="font-semibold mb-2 text-purple-800">Performance Features</h4>
|
|
306
|
+
<ul className="text-sm text-purple-700 space-y-1">
|
|
307
|
+
<li>• Real-time performance monitoring</li>
|
|
308
|
+
<li>• Memory usage optimization</li>
|
|
309
|
+
<li>• Battery-conscious operations</li>
|
|
310
|
+
<li>• Frame rate optimization</li>
|
|
311
|
+
<li>• Input latency tracking</li>
|
|
312
|
+
</ul>
|
|
313
|
+
</div>
|
|
314
|
+
</div>
|
|
315
|
+
)
|
|
316
|
+
|
|
317
|
+
const renderAccessibilityDemo = () => (
|
|
318
|
+
<div className="space-y-6">
|
|
319
|
+
<div className="grid grid-cols-1 md:grid-cols-2 gap-4">
|
|
320
|
+
<div className="space-y-2">
|
|
321
|
+
<Label>Accessibility Features</Label>
|
|
322
|
+
<div className="space-y-2">
|
|
323
|
+
{accessibilityFeatures.map((feature, index) => (
|
|
324
|
+
<div key={index} className="flex items-center justify-between p-2 bg-gray-50 rounded">
|
|
325
|
+
<span className="text-sm">{feature.name}</span>
|
|
326
|
+
<Badge variant={feature.enabled ? 'default' : 'secondary'}>
|
|
327
|
+
{feature.enabled ? 'Enabled' : 'Disabled'}
|
|
328
|
+
</Badge>
|
|
329
|
+
</div>
|
|
330
|
+
))}
|
|
331
|
+
</div>
|
|
332
|
+
</div>
|
|
333
|
+
|
|
334
|
+
<div className="space-y-2">
|
|
335
|
+
<Label>Accessibility Score</Label>
|
|
336
|
+
<div className="text-center p-4 bg-blue-50 rounded-lg">
|
|
337
|
+
<div className="text-3xl font-bold text-blue-600">
|
|
338
|
+
{accessibilityFeatures.filter(f => f.enabled).length}/{accessibilityFeatures.length}
|
|
339
|
+
</div>
|
|
340
|
+
<div className="text-sm text-blue-700">Features Enabled</div>
|
|
341
|
+
</div>
|
|
342
|
+
</div>
|
|
343
|
+
</div>
|
|
344
|
+
|
|
345
|
+
<div className="bg-orange-50 p-4 rounded-lg">
|
|
346
|
+
<h4 className="font-semibold mb-2 text-orange-800">Accessibility Features</h4>
|
|
347
|
+
<ul className="text-sm text-orange-700 space-y-1">
|
|
348
|
+
<li>• ARIA labels and descriptions</li>
|
|
349
|
+
<li>• Keyboard navigation support</li>
|
|
350
|
+
<li>• Screen reader optimization</li>
|
|
351
|
+
<li>• Focus management</li>
|
|
352
|
+
<li>• High contrast support</li>
|
|
353
|
+
</ul>
|
|
354
|
+
</div>
|
|
355
|
+
</div>
|
|
356
|
+
)
|
|
357
|
+
|
|
358
|
+
return (
|
|
359
|
+
<div className="max-w-6xl mx-auto p-6 space-y-6">
|
|
360
|
+
<div className="text-center space-y-4">
|
|
361
|
+
<h1 className="text-4xl font-bold text-gray-900">
|
|
362
|
+
🎯 Story 12: Semantic Input System & Mobile Keyboard Optimization
|
|
363
|
+
</h1>
|
|
364
|
+
<p className="text-xl text-gray-600 max-w-3xl mx-auto">
|
|
365
|
+
Advanced input system with semantic type detection, mobile keyboard optimization,
|
|
366
|
+
touch-friendly behavior, performance monitoring, and accessibility support.
|
|
367
|
+
</p>
|
|
368
|
+
<div className="flex flex-wrap justify-center gap-2">
|
|
369
|
+
<Badge variant="default">Semantic Types</Badge>
|
|
370
|
+
<Badge variant="secondary">Mobile Keyboard</Badge>
|
|
371
|
+
<Badge variant="outline">Touch Optimization</Badge>
|
|
372
|
+
<Badge variant="destructive">Performance</Badge>
|
|
373
|
+
<Badge variant="default">Accessibility</Badge>
|
|
374
|
+
</div>
|
|
375
|
+
</div>
|
|
376
|
+
|
|
377
|
+
<div className="flex flex-wrap gap-2 justify-center">
|
|
378
|
+
<Button
|
|
379
|
+
variant={activeDemo === 'semantic' ? 'default' : 'outline'}
|
|
380
|
+
onClick={() => handleDemoChange('semantic')}
|
|
381
|
+
>
|
|
382
|
+
🧠 Semantic Input
|
|
383
|
+
</Button>
|
|
384
|
+
<Button
|
|
385
|
+
variant={activeDemo === 'mobile' ? 'default' : 'outline'}
|
|
386
|
+
onClick={() => handleDemoChange('mobile')}
|
|
387
|
+
>
|
|
388
|
+
📱 Mobile Keyboard
|
|
389
|
+
</Button>
|
|
390
|
+
<Button
|
|
391
|
+
variant={activeDemo === 'touch' ? 'default' : 'outline'}
|
|
392
|
+
onClick={() => handleDemoChange('touch')}
|
|
393
|
+
>
|
|
394
|
+
👆 Touch Friendly
|
|
395
|
+
</Button>
|
|
396
|
+
<Button
|
|
397
|
+
variant={activeDemo === 'performance' ? 'default' : 'outline'}
|
|
398
|
+
onClick={() => handleDemoChange('performance')}
|
|
399
|
+
>
|
|
400
|
+
⚡ Performance
|
|
401
|
+
</Button>
|
|
402
|
+
<Button
|
|
403
|
+
variant={activeDemo === 'accessibility' ? 'default' : 'outline'}
|
|
404
|
+
onClick={() => handleDemoChange('accessibility')}
|
|
405
|
+
>
|
|
406
|
+
♿ Accessibility
|
|
407
|
+
</Button>
|
|
408
|
+
</div>
|
|
409
|
+
|
|
410
|
+
<Card>
|
|
411
|
+
<CardHeader>
|
|
412
|
+
<CardTitle className="flex items-center gap-2">
|
|
413
|
+
{activeDemo === 'semantic' && '🧠 Semantic Input System'}
|
|
414
|
+
{activeDemo === 'mobile' && '📱 Mobile Keyboard Optimization'}
|
|
415
|
+
{activeDemo === 'touch' && '👆 Touch-Friendly Interface'}
|
|
416
|
+
{activeDemo === 'performance' && '⚡ Performance Monitoring'}
|
|
417
|
+
{activeDemo === 'accessibility' && '♿ Accessibility Features'}
|
|
418
|
+
</CardTitle>
|
|
419
|
+
<CardDescription>
|
|
420
|
+
{activeDemo === 'semantic' && 'Intelligent input type detection and mobile keyboard optimization'}
|
|
421
|
+
{activeDemo === 'mobile' && 'Platform-aware keyboard behavior and mobile-specific enhancements'}
|
|
422
|
+
{activeDemo === 'touch' && 'Touch-optimized interactions with 44px minimum targets'}
|
|
423
|
+
{activeDemo === 'performance' && 'Real-time performance monitoring and optimization'}
|
|
424
|
+
{activeDemo === 'accessibility' && 'Comprehensive accessibility support and compliance'}
|
|
425
|
+
</CardDescription>
|
|
426
|
+
</CardHeader>
|
|
427
|
+
<CardContent>
|
|
428
|
+
{activeDemo === 'semantic' && renderSemanticDemo()}
|
|
429
|
+
{activeDemo === 'mobile' && renderMobileDemo()}
|
|
430
|
+
{activeDemo === 'touch' && renderTouchDemo()}
|
|
431
|
+
{activeDemo === 'performance' && renderPerformanceDemo()}
|
|
432
|
+
{activeDemo === 'accessibility' && renderAccessibilityDemo()}
|
|
433
|
+
</CardContent>
|
|
434
|
+
</Card>
|
|
435
|
+
|
|
436
|
+
<div className="grid grid-cols-1 md:grid-cols-3 gap-4">
|
|
437
|
+
<Card>
|
|
438
|
+
<CardHeader>
|
|
439
|
+
<CardTitle className="text-lg">🎯 Next Steps</CardTitle>
|
|
440
|
+
</CardHeader>
|
|
441
|
+
<CardContent>
|
|
442
|
+
<ul className="text-sm space-y-2">
|
|
443
|
+
<li>✅ Story 12: Semantic Input System [COMPLETE]</li>
|
|
444
|
+
<li>🔧 Story 13: Touch-Friendly Interface</li>
|
|
445
|
+
<li>🎨 Story 14: Advanced Transitions</li>
|
|
446
|
+
<li>📱 Story 15: Mobile Experience Polish</li>
|
|
447
|
+
</ul>
|
|
448
|
+
</CardContent>
|
|
449
|
+
</Card>
|
|
450
|
+
|
|
451
|
+
<Card>
|
|
452
|
+
<CardHeader>
|
|
453
|
+
<CardTitle className="text-lg">🚀 Features</CardTitle>
|
|
454
|
+
</CardHeader>
|
|
455
|
+
<CardContent>
|
|
456
|
+
<ul className="text-sm space-y-2">
|
|
457
|
+
<li>• Semantic input type detection</li>
|
|
458
|
+
<li>• Mobile keyboard optimization</li>
|
|
459
|
+
<li>• Touch-friendly behavior</li>
|
|
460
|
+
<li>• Performance monitoring</li>
|
|
461
|
+
<li>• Accessibility compliance</li>
|
|
462
|
+
</ul>
|
|
463
|
+
</CardContent>
|
|
464
|
+
</Card>
|
|
465
|
+
|
|
466
|
+
<Card>
|
|
467
|
+
<CardHeader>
|
|
468
|
+
<CardTitle className="text-lg">📊 Status</CardTitle>
|
|
469
|
+
</CardHeader>
|
|
470
|
+
<CardContent>
|
|
471
|
+
<div className="space-y-2">
|
|
472
|
+
<div className="flex justify-between">
|
|
473
|
+
<span className="text-sm">Components:</span>
|
|
474
|
+
<Badge variant="default">6/6</Badge>
|
|
475
|
+
</div>
|
|
476
|
+
<div className="flex justify-between">
|
|
477
|
+
<span className="text-sm">Hooks:</span>
|
|
478
|
+
<Badge variant="default">6/6</Badge>
|
|
479
|
+
</div>
|
|
480
|
+
<div className="flex justify-between">
|
|
481
|
+
<span className="text-sm">Tests:</span>
|
|
482
|
+
<Badge variant="default">Passing</Badge>
|
|
483
|
+
</div>
|
|
484
|
+
</div>
|
|
485
|
+
</CardContent>
|
|
486
|
+
</Card>
|
|
487
|
+
</div>
|
|
488
|
+
</div>
|
|
489
|
+
)
|
|
490
|
+
}
|