@shohojdhara/atomix 0.6.3 → 0.6.5

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.
Files changed (77) hide show
  1. package/dist/atomix.css +119 -40
  2. package/dist/atomix.css.map +1 -1
  3. package/dist/atomix.min.css +1 -1
  4. package/dist/atomix.min.css.map +1 -1
  5. package/dist/atomix.umd.js +1 -1
  6. package/dist/atomix.umd.js.map +1 -1
  7. package/dist/atomix.umd.min.js +1 -1
  8. package/dist/charts.d.ts +30 -1
  9. package/dist/charts.js +566 -597
  10. package/dist/charts.js.map +1 -1
  11. package/dist/core.d.ts +30 -1
  12. package/dist/core.js +600 -624
  13. package/dist/core.js.map +1 -1
  14. package/dist/forms.d.ts +30 -1
  15. package/dist/forms.js +1122 -1163
  16. package/dist/forms.js.map +1 -1
  17. package/dist/heavy.d.ts +31 -89
  18. package/dist/heavy.js +1015 -1045
  19. package/dist/heavy.js.map +1 -1
  20. package/dist/index.d.ts +378 -104
  21. package/dist/index.esm.js +10959 -10837
  22. package/dist/index.esm.js.map +1 -1
  23. package/dist/index.js +10935 -10812
  24. package/dist/index.js.map +1 -1
  25. package/dist/index.min.js +1 -1
  26. package/dist/index.min.js.map +1 -1
  27. package/package.json +1 -1
  28. package/src/components/Accordion/Accordion.tsx +2 -5
  29. package/src/components/AtomixGlass/AtomixGlass.test.tsx +14 -16
  30. package/src/components/AtomixGlass/AtomixGlass.tsx +137 -355
  31. package/src/components/AtomixGlass/AtomixGlassContainer.tsx +32 -249
  32. package/src/components/AtomixGlass/GlassFilter.tsx +62 -68
  33. package/src/components/AtomixGlass/README.md +2 -1
  34. package/src/components/AtomixGlass/__snapshots__/AtomixGlass.test.tsx.snap +19 -18
  35. package/src/components/AtomixGlass/glass-border-styles.test.ts +58 -0
  36. package/src/components/AtomixGlass/glass-border-styles.ts +136 -0
  37. package/src/components/AtomixGlass/glass-utils.ts +411 -6
  38. package/src/components/AtomixGlass/stories/AnimationFeatures.stories.tsx +158 -537
  39. package/src/components/AtomixGlass/stories/Border.stories.tsx +149 -0
  40. package/src/components/AtomixGlass/stories/Examples.stories.tsx +229 -89
  41. package/src/components/AtomixGlass/stories/Playground.stories.tsx +29 -340
  42. package/src/components/AtomixGlass/stories/argTypes.ts +30 -13
  43. package/src/components/AtomixGlass/stories/premium-presets.ts +206 -0
  44. package/src/components/AtomixGlass/stories/shared-components.tsx +52 -8
  45. package/src/components/Badge/Badge.tsx +4 -4
  46. package/src/components/Button/Button.tsx +2 -6
  47. package/src/components/Callout/Callout.test.tsx +4 -3
  48. package/src/components/Callout/Callout.tsx +2 -5
  49. package/src/components/Dropdown/Dropdown.tsx +3 -7
  50. package/src/components/Form/Checkbox.tsx +2 -8
  51. package/src/components/Form/Input.tsx +2 -9
  52. package/src/components/Form/Radio.tsx +2 -9
  53. package/src/components/Form/Select.tsx +2 -7
  54. package/src/components/Form/Textarea.tsx +2 -9
  55. package/src/components/Messages/Messages.tsx +2 -8
  56. package/src/components/Modal/Modal.tsx +4 -5
  57. package/src/components/Navigation/Nav/Nav.tsx +2 -6
  58. package/src/components/Navigation/Navbar/Navbar.tsx +2 -9
  59. package/src/components/Navigation/SideMenu/SideMenu.tsx +2 -6
  60. package/src/components/Pagination/Pagination.tsx +2 -10
  61. package/src/components/Popover/Popover.tsx +2 -9
  62. package/src/components/Progress/Progress.tsx +2 -7
  63. package/src/components/Rating/Rating.tsx +2 -10
  64. package/src/components/Spinner/Spinner.tsx +2 -7
  65. package/src/components/Steps/Steps.tsx +2 -10
  66. package/src/components/Tabs/Tabs.tsx +2 -9
  67. package/src/components/Toggle/Toggle.tsx +2 -10
  68. package/src/components/Tooltip/Tooltip.tsx +2 -5
  69. package/src/lib/composables/useAtomixGlass.ts +41 -10
  70. package/src/lib/composables/useAtomixGlassStyles.ts +59 -75
  71. package/src/lib/composables/usePerformanceMonitor.ts +5 -0
  72. package/src/lib/constants/components.ts +358 -46
  73. package/src/lib/types/components.ts +33 -1
  74. package/src/styles/01-settings/_settings.atomix-glass.scss +69 -31
  75. package/src/styles/02-tools/_tools.glass.scss +45 -3
  76. package/src/styles/06-components/_components.atomix-glass.scss +114 -77
  77. package/src/components/AtomixGlass/deprecated/AtomixGlass.deprecated.tsx +0 -390
package/dist/heavy.d.ts CHANGED
@@ -151,6 +151,28 @@ interface OverLightObjectConfig {
151
151
  * saturationBoost: 2.0
152
152
  */
153
153
  saturationBoost?: number;
154
+ /**
155
+ * Rim opacity multiplier for animated border gradients (0.1 - 1.0)
156
+ *
157
+ * @default 0.7 when over-light is active, 0.35 otherwise
158
+ */
159
+ borderOpacity?: number;
160
+ }
161
+ /**
162
+ * Liquid glass rim configuration (Apple-style hairline border).
163
+ */
164
+ interface GlassBorderConfig {
165
+ /** Whether border layers render. @default true */
166
+ enabled?: boolean;
167
+ /** Rim width — maps to `--atomix-glass-border-width`. @default 0.5px */
168
+ width?: string | number;
169
+ /** Multiplier on rim gradient opacities. @default 1 */
170
+ opacity?: number;
171
+ /**
172
+ * When false, skips JS gradient vars so SCSS static fallbacks apply.
173
+ * @default true
174
+ */
175
+ animated?: boolean;
154
176
  }
155
177
  /**
156
178
  * AtomixGlass component props interface
@@ -166,7 +188,6 @@ interface AtomixGlassProps extends React.HTMLAttributes<HTMLDivElement> {
166
188
  globalMousePosition?: MousePosition;
167
189
  mouseOffset?: MousePosition;
168
190
  mouseContainer?: React.RefObject<HTMLElement | null> | null;
169
- padding?: string;
170
191
  height?: string | number;
171
192
  width?: string | number;
172
193
  overLight?: OverLightConfig;
@@ -194,6 +215,14 @@ interface AtomixGlassProps extends React.HTMLAttributes<HTMLDivElement> {
194
215
  highContrast?: boolean;
195
216
  withoutEffects?: boolean;
196
217
  withLiquidBlur?: boolean;
218
+ /**
219
+ * Liquid glass rim — boolean shorthand or structured config.
220
+ * Takes precedence over legacy `withBorder` when provided.
221
+ */
222
+ border?: boolean | GlassBorderConfig;
223
+ /**
224
+ * @deprecated Use `border` instead. When `border` is omitted, defaults to this value.
225
+ */
197
226
  withBorder?: boolean;
198
227
  withOverLightLayers?: boolean;
199
228
  /**
@@ -499,94 +528,7 @@ interface PhotoViewerProps extends BaseComponentProps {
499
528
  onClose?: () => void;
500
529
  }
501
530
 
502
- /**
503
- * AtomixGlass - A high-performance glass morphism component with liquid distortion effects
504
- *
505
- * Features:
506
- * - Hardware-accelerated glass effects with SVG filters
507
- * - Mouse-responsive liquid distortion
508
- * - Dynamic border-radius extraction from children CSS properties
509
- * - Automatic light/dark theme detection via overLight prop
510
- * - Accessibility and performance optimizations
511
- * - Multiple displacement modes (standard, polar, prominent, shader)
512
- * - Design token integration for consistent theming
513
- * - Focus ring support for keyboard navigation
514
- * - Responsive breakpoints for mobile optimization
515
- * - Enhanced ARIA attributes for screen readers
516
- * - Time-based animation system with FBM distortion
517
- * - Device preset optimization for performance/quality balance
518
- *
519
- * Design System Compliance:
520
- * - Uses design tokens for opacity, spacing, and colors
521
- * - Follows BEM methodology for class naming
522
- * - Implements focus-ring mixin for accessibility
523
- * - Supports reduced motion and high contrast preferences
524
- *
525
- * @example
526
- * // Basic usage with dynamic border-radius extraction
527
- * <AtomixGlass>
528
- * <div style={{ borderRadius: '12px' }}>Content with 12px radius</div>
529
- * </AtomixGlass>
530
- *
531
- * @example
532
- * // Manual border-radius override
533
- * <AtomixGlass borderRadius={20}>
534
- * <div>Content with 20px glass radius</div>
535
- * </AtomixGlass>
536
- *
537
- * @example
538
- * // Interactive glass with click handler
539
- * <AtomixGlass onClick={() => console.log('Clicked')} aria-label="Glass card">
540
- * <div>Clickable content</div>
541
- * </AtomixGlass>
542
- *
543
- * @example
544
- * // OverLight - Boolean mode (explicit control)
545
- * <AtomixGlass overLight={true}>
546
- * <div>Content on light background</div>
547
- * </AtomixGlass>
548
- *
549
- * @example
550
- * // OverLight - Auto-detection mode
551
- * <AtomixGlass overLight="auto">
552
- * <div>Content with auto-detected background</div>
553
- * </AtomixGlass>
554
- *
555
- * @example
556
- * // OverLight - Object config with custom settings
557
- * <AtomixGlass
558
- * overLight={{
559
- * threshold: 0.8,
560
- * opacity: 0.6,
561
- * contrast: 1.8,
562
- * brightness: 1.0,
563
- * saturationBoost: 1.5
564
- * }}
565
- * >
566
- * <div>Content with custom overLight config</div>
567
- * </AtomixGlass>
568
- *
569
- * @example
570
- * // Debug mode for overLight detection
571
- * <AtomixGlass overLight="auto" debugOverLight={true}>
572
- * <div>Content with debug logging enabled</div>
573
- * </AtomixGlass>
574
- *
575
- * @example
576
- * // Performance-optimized for mobile devices
577
- * <AtomixGlass devicePreset="performance" disableResponsiveBreakpoints={false}>
578
- * <div>Mobile-optimized glass effect</div>
579
- * </AtomixGlass>
580
- */
581
- declare global {
582
- interface Window {
583
- enablePerformanceMonitoring?: boolean;
584
- }
585
- }
586
- /**
587
- * AtomixGlass - wrapped with React.memo to prevent unnecessary re-renders.
588
- * Ref is forwarded to the root `<div>` element.
589
- */
531
+ /** Memoized public export. Ref targets the root `.c-atomix-glass` wrapper. */
590
532
  declare const AtomixGlass: React$1.NamedExoticComponent<AtomixGlassProps & React$1.RefAttributes<HTMLDivElement>>;
591
533
 
592
534
  /**