@shohojdhara/atomix 0.3.12 → 0.3.14
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 +19 -0
- package/README.md +2 -0
- package/dist/atomix.css +101 -88
- package/dist/atomix.css.map +1 -1
- package/dist/atomix.min.css +5 -15258
- package/dist/atomix.min.css.map +1 -1
- package/dist/charts.d.ts +1 -1
- package/dist/charts.js +17 -19
- package/dist/charts.js.map +1 -1
- package/dist/core.d.ts +41 -11
- package/dist/core.js +55 -41
- package/dist/core.js.map +1 -1
- package/dist/forms.d.ts +28 -11
- package/dist/forms.js +25 -24
- package/dist/forms.js.map +1 -1
- package/dist/heavy.d.ts +1 -1
- package/dist/heavy.js +32 -25
- package/dist/heavy.js.map +1 -1
- package/dist/index.d.ts +122 -46
- package/dist/index.esm.js +865 -200
- package/dist/index.esm.js.map +1 -1
- package/dist/index.js +870 -204
- package/dist/index.js.map +1 -1
- package/dist/index.min.js +1 -1
- package/dist/index.min.js.map +1 -1
- package/dist/theme.d.ts +27 -2
- package/dist/theme.js +721 -108
- package/dist/theme.js.map +1 -1
- package/package.json +1 -1
- package/scripts/atomix-cli.js +610 -1111
- package/scripts/cli/component-generator.js +610 -0
- package/scripts/cli/documentation-sync.js +542 -0
- package/scripts/cli/interactive-init.js +84 -288
- package/scripts/cli/mappings.js +211 -0
- package/scripts/cli/migration-tools.js +95 -288
- package/scripts/cli/template-manager.js +107 -0
- package/scripts/cli/templates/README.md +123 -0
- package/scripts/cli/templates/composable-templates.js +149 -0
- package/scripts/cli/templates/config-templates.js +126 -0
- package/scripts/cli/templates/index.js +95 -0
- package/scripts/cli/templates/project-templates.js +214 -0
- package/scripts/cli/templates/react-templates.js +261 -0
- package/scripts/cli/templates/scss-templates.js +156 -0
- package/scripts/cli/templates/storybook-templates.js +236 -0
- package/scripts/cli/templates/testing-templates.js +45 -0
- package/scripts/cli/templates/token-templates.js +447 -0
- package/scripts/cli/templates/types-templates.js +133 -0
- package/scripts/cli/templates-original-backup.js +1655 -0
- package/scripts/cli/templates.js +35 -0
- package/scripts/cli/templates_backup.js +684 -0
- package/scripts/cli/theme-bridge.js +20 -14
- package/scripts/cli/token-manager.js +150 -77
- package/scripts/cli/utils.js +37 -25
- package/src/components/Accordion/Accordion.stories.tsx +5 -5
- package/src/components/Accordion/Accordion.test.tsx +57 -0
- package/src/components/Accordion/Accordion.tsx +4 -0
- package/src/components/AtomixGlass/AtomixGlassContainer.tsx +41 -44
- package/src/components/AtomixGlass/stories/AtomixGlass.stories.tsx +1 -1
- package/src/components/AtomixGlass/stories/Examples.stories.tsx +37 -37
- package/src/components/AtomixGlass/stories/Modes.stories.tsx +1 -2
- package/src/components/AtomixGlass/stories/Playground.stories.tsx +50 -51
- package/src/components/Avatar/Avatar.stories.tsx +26 -26
- package/src/components/Badge/Badge.stories.tsx +31 -31
- package/src/components/Badge/Badge.test.tsx +51 -0
- package/src/components/Badge/Badge.tsx +20 -1
- package/src/components/Block/Block.stories.tsx +5 -5
- package/src/components/Breadcrumb/Breadcrumb.stories.tsx +1 -1
- package/src/components/Breadcrumb/Breadcrumb.tsx +2 -2
- package/src/components/Button/Button.stories.tsx +13 -13
- package/src/components/Button/Button.tsx +4 -4
- package/src/components/Button/ButtonGroup.stories.tsx +2 -2
- package/src/components/Button/README.md +5 -0
- package/src/components/Callout/Callout.stories.tsx +11 -11
- package/src/components/Callout/Callout.test.tsx +10 -10
- package/src/components/Callout/Callout.tsx +7 -7
- package/src/components/Callout/README.md +9 -8
- package/src/components/Card/Card.tsx +2 -2
- package/src/components/Chart/Chart.stories.tsx +6 -6
- package/src/components/Chart/Chart.tsx +1 -1
- package/src/components/ColorModeToggle/ColorModeToggle.stories.tsx +1 -1
- package/src/components/DataTable/DataTable.tsx +14 -12
- package/src/components/DatePicker/DatePicker.stories.tsx +6 -6
- package/src/components/Dropdown/Dropdown.stories.tsx +4 -4
- package/src/components/Form/Checkbox.stories.tsx +3 -3
- package/src/components/Form/Checkbox.tsx +4 -2
- package/src/components/Form/Form.stories.tsx +3 -3
- package/src/components/Form/FormGroup.stories.tsx +1 -1
- package/src/components/Form/Input.stories.tsx +28 -16
- package/src/components/Form/Input.test.tsx +59 -0
- package/src/components/Form/Input.tsx +97 -95
- package/src/components/Form/Radio.stories.tsx +94 -94
- package/src/components/Form/Radio.tsx +2 -2
- package/src/components/Form/Select.stories.tsx +4 -4
- package/src/components/Form/Select.tsx +2 -2
- package/src/components/Form/Textarea.stories.tsx +22 -7
- package/src/components/Form/Textarea.test.tsx +45 -0
- package/src/components/Form/Textarea.tsx +88 -86
- package/src/components/List/List.stories.tsx +2 -2
- package/src/components/Modal/Modal.stories.tsx +4 -4
- package/src/components/Navigation/Navbar/Navbar.stories.tsx +5 -5
- package/src/components/Navigation/Navbar/Navbar.tsx +1 -1
- package/src/components/Navigation/README.md +1 -1
- package/src/components/Pagination/Pagination.stories.tsx +5 -2
- package/src/components/Pagination/Pagination.tsx +1 -1
- package/src/components/PhotoViewer/PhotoViewer.stories.tsx +10 -10
- package/src/components/Popover/Popover.stories.tsx +1 -1
- package/src/components/ProductReview/ProductReview.tsx +1 -1
- package/src/components/Progress/Progress.tsx +46 -46
- package/src/components/Rating/Rating.stories.tsx +4 -4
- package/src/components/Rating/Rating.tsx +8 -8
- package/src/components/Slider/Slider.stories.tsx +63 -63
- package/src/components/Spinner/Spinner.stories.tsx +2 -2
- package/src/components/Spinner/Spinner.test.tsx +35 -0
- package/src/components/Spinner/Spinner.tsx +9 -2
- package/src/components/Testimonial/Testimonial.stories.tsx +1 -1
- package/src/components/Toggle/Toggle.stories.tsx +32 -9
- package/src/components/Toggle/Toggle.test.tsx +91 -0
- package/src/components/Toggle/Toggle.tsx +44 -27
- package/src/components/Tooltip/Tooltip.tsx +1 -1
- package/src/layouts/Grid/Grid.stories.tsx +49 -49
- package/src/layouts/MasonryGrid/MasonryGrid.stories.tsx +2 -2
- package/src/lib/composables/useAccordion.ts +12 -3
- package/src/lib/composables/useBreadcrumb.ts +2 -2
- package/src/lib/composables/useCallout.ts +7 -7
- package/src/lib/composables/useNavbar.ts +1 -1
- package/src/lib/constants/components.ts +1 -1
- package/src/lib/storybook/InteractiveDemo.tsx +113 -0
- package/src/lib/storybook/PreviewContainer.tsx +36 -0
- package/src/lib/storybook/VariantsGrid.tsx +21 -0
- package/src/lib/storybook/index.ts +3 -0
- package/src/lib/theme/core/createThemeObject.ts +9 -5
- package/src/lib/theme/devtools/CLI.ts +155 -0
- package/src/lib/theme/devtools/DesignTokensCustomizer.stories.tsx +213 -0
- package/src/lib/theme/devtools/DesignTokensCustomizer.tsx +566 -0
- package/src/lib/theme/devtools/LiveEditor.tsx +2 -1
- package/src/lib/theme/devtools/index.ts +3 -0
- package/src/lib/theme/errors/errors.ts +8 -0
- package/src/lib/theme/runtime/ThemeProvider.tsx +117 -57
- package/src/lib/theme/runtime/__tests__/ThemeProvider.integration.test.tsx +305 -0
- package/src/lib/theme/runtime/__tests__/ThemeProvider.test.tsx +588 -0
- package/src/lib/theme/utils/__tests__/themeValidation.test.ts +264 -0
- package/src/lib/theme/utils/index.ts +1 -0
- package/src/lib/theme/utils/themeValidation.ts +501 -0
- package/src/lib/theme-tools.ts +32 -3
- package/src/lib/types/components.ts +81 -26
- package/src/lib/utils/themeNaming.ts +1 -1
- package/src/styles/06-components/_components.atomix-glass.scss +14 -15
- package/src/styles/06-components/_components.callout.scss +29 -33
- package/src/styles/06-components/_index.scss +1 -1
- package/src/styles/99-utilities/_utilities.display.scss +14 -3
- package/src/styles/99-utilities/_utilities.flex.scss +10 -10
- package/src/styles/99-utilities/_utilities.text.scss +28 -8
- package/scripts/cli/__tests__/cli-commands.test.js +0 -204
- package/scripts/cli/__tests__/utils.test.js +0 -201
- package/scripts/cli/__tests__/vitest.config.js +0 -26
|
@@ -86,7 +86,7 @@ export const HeroExample: Story = {
|
|
|
86
86
|
✨
|
|
87
87
|
</div>
|
|
88
88
|
<h1
|
|
89
|
-
className="u-mt-0 u-
|
|
89
|
+
className="u-mt-0 u-text-1 u-font-bold"
|
|
90
90
|
style={{
|
|
91
91
|
fontSize: '48px',
|
|
92
92
|
marginBottom: '20px',
|
|
@@ -100,7 +100,7 @@ export const HeroExample: Story = {
|
|
|
100
100
|
Modern Glass UI
|
|
101
101
|
</h1>
|
|
102
102
|
<p
|
|
103
|
-
className="u-
|
|
103
|
+
className="u-text-4 u-mb-4"
|
|
104
104
|
style={{
|
|
105
105
|
fontSize: '18px',
|
|
106
106
|
lineHeight: 1.7,
|
|
@@ -113,7 +113,7 @@ export const HeroExample: Story = {
|
|
|
113
113
|
designs that stand out.
|
|
114
114
|
</p>
|
|
115
115
|
<div
|
|
116
|
-
className="u-
|
|
116
|
+
className="u-flex u-gap-3 u-justify-center u-flex-wrap"
|
|
117
117
|
style={{ gap: '16px' }}
|
|
118
118
|
>
|
|
119
119
|
<Button glass size="lg">
|
|
@@ -426,7 +426,7 @@ export const DashboardCards: Story = {
|
|
|
426
426
|
</div>
|
|
427
427
|
<div>
|
|
428
428
|
<h1
|
|
429
|
-
className="u-m-0 u-
|
|
429
|
+
className="u-m-0 u-text-2 u-font-bold"
|
|
430
430
|
style={{
|
|
431
431
|
fontSize: '28px',
|
|
432
432
|
marginBottom: '6px',
|
|
@@ -439,7 +439,7 @@ export const DashboardCards: Story = {
|
|
|
439
439
|
Analytics Dashboard
|
|
440
440
|
</h1>
|
|
441
441
|
<p
|
|
442
|
-
className="u-m-0 u-opacity-80 u-
|
|
442
|
+
className="u-m-0 u-opacity-80 u-text-6"
|
|
443
443
|
style={{
|
|
444
444
|
fontSize: '15px',
|
|
445
445
|
color: 'rgba(255, 255, 255, 0.85)',
|
|
@@ -601,21 +601,21 @@ export const ProductCard: Story = {
|
|
|
601
601
|
</div>
|
|
602
602
|
|
|
603
603
|
{/* Product Info */}
|
|
604
|
-
<h2 className="u-m-0 u-mb-1 u-
|
|
605
|
-
<p className="u-m-0 u-mb-2 u-opacity-70 u-
|
|
604
|
+
<h2 className="u-m-0 u-mb-1 u-text-6 u-font-bold">Premium Cotton T-Shirt</h2>
|
|
605
|
+
<p className="u-m-0 u-mb-2 u-opacity-70 u-text-7">
|
|
606
606
|
Ultra-soft fabric with a modern fit. Perfect for everyday wear.
|
|
607
607
|
</p>
|
|
608
608
|
|
|
609
609
|
{/* Price */}
|
|
610
|
-
<div className="u-
|
|
611
|
-
<span className="u-
|
|
612
|
-
<span className="u-
|
|
610
|
+
<div className="u-flex u-items-center u-gap-2 u-mb-2">
|
|
611
|
+
<span className="u-text-4 u-font-bold u-text-success">$49.99</span>
|
|
612
|
+
<span className="u-text-4 u-text-decoration-line-through u-opacity-50">$71.99</span>
|
|
613
613
|
</div>
|
|
614
614
|
|
|
615
615
|
{/* Size Selection */}
|
|
616
616
|
<div className="u-mb-2">
|
|
617
|
-
<label className="u-
|
|
618
|
-
<div className="u-
|
|
617
|
+
<label className="u-block u-text-7 u-font-semibold u-mb-2">Select Size</label>
|
|
618
|
+
<div className="u-flex u-gap-2">
|
|
619
619
|
{sizes.map(size => (
|
|
620
620
|
<Button
|
|
621
621
|
key={size}
|
|
@@ -632,8 +632,8 @@ export const ProductCard: Story = {
|
|
|
632
632
|
|
|
633
633
|
{/* Quantity */}
|
|
634
634
|
<div className="u-mb-2">
|
|
635
|
-
<label className="u-
|
|
636
|
-
<div className="u-
|
|
635
|
+
<label className="u-block u-text-7 u-font-semibold u-mb-1 u-text-white">Quantity</label>
|
|
636
|
+
<div className="u-flex u-items-center u-gap-2">
|
|
637
637
|
<Button onClick={() => setQuantity(Math.max(1, quantity - 1))} glass>
|
|
638
638
|
−
|
|
639
639
|
</Button>
|
|
@@ -751,14 +751,14 @@ export const NotificationCenter: Story = {
|
|
|
751
751
|
>
|
|
752
752
|
{/* Header */}
|
|
753
753
|
<div
|
|
754
|
-
className="u-p-4 u-
|
|
754
|
+
className="u-p-4 u-flex u-justify-between u-items-center"
|
|
755
755
|
style={{
|
|
756
756
|
borderBottom:
|
|
757
757
|
'1px solid color-mix(in srgb, var(--atomix-success) 10%, transparent)',
|
|
758
758
|
}}
|
|
759
759
|
>
|
|
760
|
-
<div className="u-
|
|
761
|
-
<h2 className="u-m-0 u-
|
|
760
|
+
<div className="u-flex u-items-center u-gap-2">
|
|
761
|
+
<h2 className="u-m-0 u-text-4 u-font-bold">Notifications</h2>
|
|
762
762
|
{unreadCount > 0 && (
|
|
763
763
|
<span
|
|
764
764
|
style={{
|
|
@@ -966,7 +966,7 @@ export const LoginForm: Story = {
|
|
|
966
966
|
<Icon name="Lock" style={{ position: 'relative', zIndex: 1 }} />
|
|
967
967
|
</div>
|
|
968
968
|
<h2
|
|
969
|
-
className="u-m-0 u-mb-2 u-
|
|
969
|
+
className="u-m-0 u-mb-2 u-text-3 u-font-bold"
|
|
970
970
|
style={{
|
|
971
971
|
fontSize: '32px',
|
|
972
972
|
marginBottom: '12px',
|
|
@@ -979,7 +979,7 @@ export const LoginForm: Story = {
|
|
|
979
979
|
Welcome Back
|
|
980
980
|
</h2>
|
|
981
981
|
<p
|
|
982
|
-
className="u-m-0 u-opacity-70 u-
|
|
982
|
+
className="u-m-0 u-opacity-70 u-text-7"
|
|
983
983
|
style={{
|
|
984
984
|
fontSize: '15px',
|
|
985
985
|
color: 'rgba(255, 255, 255, 0.85)',
|
|
@@ -992,7 +992,7 @@ export const LoginForm: Story = {
|
|
|
992
992
|
{/* Form */}
|
|
993
993
|
<form onSubmit={handleSubmit}>
|
|
994
994
|
<div className="u-mb-3">
|
|
995
|
-
<label className="u-
|
|
995
|
+
<label className="u-block u-text-7 u-font-semibold u-mb-2">Email Address</label>
|
|
996
996
|
<Input
|
|
997
997
|
type="email"
|
|
998
998
|
value={email}
|
|
@@ -1006,7 +1006,7 @@ export const LoginForm: Story = {
|
|
|
1006
1006
|
</div>
|
|
1007
1007
|
|
|
1008
1008
|
<div className="u-mb-3">
|
|
1009
|
-
<label className="u-
|
|
1009
|
+
<label className="u-block u-text-7 u-font-semibold u-mb-2">Password</label>
|
|
1010
1010
|
<Input
|
|
1011
1011
|
type="password"
|
|
1012
1012
|
value={password}
|
|
@@ -1064,7 +1064,7 @@ export const LoginForm: Story = {
|
|
|
1064
1064
|
glass={{
|
|
1065
1065
|
elasticity: 0,
|
|
1066
1066
|
}}
|
|
1067
|
-
className="u-
|
|
1067
|
+
className="u-block u-w-100"
|
|
1068
1068
|
>
|
|
1069
1069
|
{isLoading ? 'Signing in...' : 'Sign In'}
|
|
1070
1070
|
</Button>
|
|
@@ -1236,7 +1236,7 @@ export const MusicPlayer: Story = {
|
|
|
1236
1236
|
{/* Track Info */}
|
|
1237
1237
|
<div className="u-text-center u-mb-3">
|
|
1238
1238
|
<h2
|
|
1239
|
-
className="u-m-0 u-mb-2 u-
|
|
1239
|
+
className="u-m-0 u-mb-2 u-text-3 u-font-bold"
|
|
1240
1240
|
style={{
|
|
1241
1241
|
fontSize: '28px',
|
|
1242
1242
|
marginBottom: '8px',
|
|
@@ -1248,7 +1248,7 @@ export const MusicPlayer: Story = {
|
|
|
1248
1248
|
>
|
|
1249
1249
|
Summer Vibes
|
|
1250
1250
|
</h2>
|
|
1251
|
-
<p className="u-m-0 u-opacity-70 u-
|
|
1251
|
+
<p className="u-m-0 u-opacity-70 u-text-6" style={{ fontSize: '16px', color: 'rgba(255, 255, 255, 0.85)' }}>
|
|
1252
1252
|
The Atomix Band
|
|
1253
1253
|
</p>
|
|
1254
1254
|
</div>
|
|
@@ -2524,7 +2524,7 @@ export const SettingsPanel: Story = {
|
|
|
2524
2524
|
⚙️
|
|
2525
2525
|
</div>
|
|
2526
2526
|
<h2
|
|
2527
|
-
className="u-m-0 u-
|
|
2527
|
+
className="u-m-0 u-text-2 u-font-bold"
|
|
2528
2528
|
style={{
|
|
2529
2529
|
fontSize: '28px',
|
|
2530
2530
|
background: 'linear-gradient(135deg, #fff 0%, rgba(255,255,255,0.9) 100%)',
|
|
@@ -2536,7 +2536,7 @@ export const SettingsPanel: Story = {
|
|
|
2536
2536
|
Settings
|
|
2537
2537
|
</h2>
|
|
2538
2538
|
</div>
|
|
2539
|
-
<p className="u-m-0 u-
|
|
2539
|
+
<p className="u-m-0 u-text-6 u-opacity-70" style={{ fontSize: '15px', color: 'rgba(255, 255, 255, 0.85)' }}>
|
|
2540
2540
|
Manage your account preferences and settings
|
|
2541
2541
|
</p>
|
|
2542
2542
|
</div>
|
|
@@ -2802,7 +2802,7 @@ export const SettingsPanel: Story = {
|
|
|
2802
2802
|
</div>
|
|
2803
2803
|
|
|
2804
2804
|
{/* Action Buttons */}
|
|
2805
|
-
<div className="u-
|
|
2805
|
+
<div className="u-flex u-gap-2">
|
|
2806
2806
|
<button
|
|
2807
2807
|
onClick={handleSave}
|
|
2808
2808
|
style={{
|
|
@@ -4164,7 +4164,7 @@ export const PaymentForm: Story = {
|
|
|
4164
4164
|
</div>
|
|
4165
4165
|
<div>
|
|
4166
4166
|
<h2
|
|
4167
|
-
className="u-m-0 u-
|
|
4167
|
+
className="u-m-0 u-text-4 u-font-bold"
|
|
4168
4168
|
style={{
|
|
4169
4169
|
fontSize: '24px',
|
|
4170
4170
|
marginBottom: '4px',
|
|
@@ -4176,7 +4176,7 @@ export const PaymentForm: Story = {
|
|
|
4176
4176
|
>
|
|
4177
4177
|
Payment Details
|
|
4178
4178
|
</h2>
|
|
4179
|
-
<p className="u-m-0 u-
|
|
4179
|
+
<p className="u-m-0 u-text-7 u-opacity-70" style={{ fontSize: '14px', color: 'rgba(255, 255, 255, 0.85)' }}>
|
|
4180
4180
|
Complete your purchase securely
|
|
4181
4181
|
</p>
|
|
4182
4182
|
</div>
|
|
@@ -4259,9 +4259,9 @@ export const PaymentForm: Story = {
|
|
|
4259
4259
|
</div>
|
|
4260
4260
|
</AtomixGlass>
|
|
4261
4261
|
{/* Form */}
|
|
4262
|
-
<div className="u-
|
|
4262
|
+
<div className="u-flex u-flex-column u-gap-3">
|
|
4263
4263
|
<div>
|
|
4264
|
-
<label className="u-
|
|
4264
|
+
<label className="u-block u-text-7 u-font-semibold u-mb-2">Card Number</label>
|
|
4265
4265
|
<Input
|
|
4266
4266
|
variant="primary"
|
|
4267
4267
|
glass={
|
|
@@ -4278,7 +4278,7 @@ export const PaymentForm: Story = {
|
|
|
4278
4278
|
</div>
|
|
4279
4279
|
|
|
4280
4280
|
<div>
|
|
4281
|
-
<label className="u-
|
|
4281
|
+
<label className="u-block u-text-7 u-font-semibold u-mb-2">Cardholder Name</label>
|
|
4282
4282
|
<Input
|
|
4283
4283
|
variant="primary"
|
|
4284
4284
|
glass={
|
|
@@ -4293,7 +4293,7 @@ export const PaymentForm: Story = {
|
|
|
4293
4293
|
/>
|
|
4294
4294
|
</div>
|
|
4295
4295
|
|
|
4296
|
-
<div className="u-
|
|
4296
|
+
<div className="u-grid u-gap-3" style={{ gridTemplateColumns: '1fr 1fr' }}>
|
|
4297
4297
|
<div>
|
|
4298
4298
|
<label
|
|
4299
4299
|
style={{
|
|
@@ -4547,7 +4547,7 @@ export const NewsletterSubscription: Story = {
|
|
|
4547
4547
|
<div style={{ marginBottom: '20px' }}>
|
|
4548
4548
|
<div
|
|
4549
4549
|
style={{ position: 'relative' }}
|
|
4550
|
-
className="u-
|
|
4550
|
+
className="u-flex u-gap-2 u-items-center"
|
|
4551
4551
|
>
|
|
4552
4552
|
<div className="u-w-100">
|
|
4553
4553
|
<Input
|
|
@@ -4788,7 +4788,7 @@ export const ProgressTracker: Story = {
|
|
|
4788
4788
|
🚀
|
|
4789
4789
|
</div>
|
|
4790
4790
|
<h2
|
|
4791
|
-
className="u-m-0 u-
|
|
4791
|
+
className="u-m-0 u-text-2 u-font-bold"
|
|
4792
4792
|
style={{
|
|
4793
4793
|
fontSize: '28px',
|
|
4794
4794
|
background: 'linear-gradient(135deg, #fff 0%, rgba(255,255,255,0.9) 100%)',
|
|
@@ -4801,7 +4801,7 @@ export const ProgressTracker: Story = {
|
|
|
4801
4801
|
</h2>
|
|
4802
4802
|
</div>
|
|
4803
4803
|
<p
|
|
4804
|
-
className="u-m-0 u-
|
|
4804
|
+
className="u-m-0 u-text-6 u-opacity-70"
|
|
4805
4805
|
style={{ marginBottom: '48px', fontSize: '16px', color: 'rgba(255, 255, 255, 0.85)' }}
|
|
4806
4806
|
>
|
|
4807
4807
|
Complete the following steps to set up your account
|
|
@@ -4968,7 +4968,7 @@ export const ProgressTracker: Story = {
|
|
|
4968
4968
|
</div>
|
|
4969
4969
|
|
|
4970
4970
|
{/* Navigation Buttons */}
|
|
4971
|
-
<div className="u-
|
|
4971
|
+
<div className="u-flex u-justify-between u-gap-3">
|
|
4972
4972
|
<button
|
|
4973
4973
|
onClick={() => setCurrentStep(Math.max(1, currentStep - 1))}
|
|
4974
4974
|
disabled={currentStep === 1}
|
|
@@ -208,9 +208,8 @@ export const ModeGallery: Story = {
|
|
|
208
208
|
const isSelected = selectedMode === mode.id;
|
|
209
209
|
|
|
210
210
|
return (
|
|
211
|
-
<GridCol xs={12} md={6} className="u-mb-4">
|
|
211
|
+
<GridCol key={mode.id} xs={12} md={6} className="u-mb-4">
|
|
212
212
|
<AtomixGlass
|
|
213
|
-
key={mode.id}
|
|
214
213
|
mode={mode.id as any}
|
|
215
214
|
displacementScale={mode.settings.displacementScale}
|
|
216
215
|
blurAmount={mode.settings.blurAmount}
|
|
@@ -460,10 +460,10 @@ export const Playground: Story = {
|
|
|
460
460
|
Math.min(
|
|
461
461
|
100,
|
|
462
462
|
100 -
|
|
463
|
-
|
|
464
|
-
|
|
465
|
-
|
|
466
|
-
|
|
463
|
+
settings.displacementScale * 0.15 -
|
|
464
|
+
Math.abs(settings.blurAmount) * 2 -
|
|
465
|
+
settings.aberrationIntensity * 3 -
|
|
466
|
+
settings.elasticity * 20
|
|
467
467
|
)
|
|
468
468
|
);
|
|
469
469
|
|
|
@@ -545,7 +545,7 @@ export const Playground: Story = {
|
|
|
545
545
|
</div>
|
|
546
546
|
<div>
|
|
547
547
|
<h2
|
|
548
|
-
className="u-m-0 u-text-white u-
|
|
548
|
+
className="u-m-0 u-text-white u-font-bold"
|
|
549
549
|
style={{
|
|
550
550
|
fontSize: '1.75rem',
|
|
551
551
|
background: 'linear-gradient(135deg, #fff 0%, rgba(255,255,255,0.8) 100%)',
|
|
@@ -574,9 +574,9 @@ export const Playground: Story = {
|
|
|
574
574
|
border: `2px solid ${getPerformanceColor()}`,
|
|
575
575
|
}}
|
|
576
576
|
>
|
|
577
|
-
<div className="u-
|
|
578
|
-
<span className="u-text-white u-
|
|
579
|
-
<span className="u-
|
|
577
|
+
<div className="u-flex u-justify-between u-items-center u-mb-2">
|
|
578
|
+
<span className="u-text-white u-font-semibold">Performance Score</span>
|
|
579
|
+
<span className="u-font-bold" style={{ color: getPerformanceColor() }}>
|
|
580
580
|
{Math.round(performanceScore)}/100
|
|
581
581
|
</span>
|
|
582
582
|
</div>
|
|
@@ -598,7 +598,7 @@ export const Playground: Story = {
|
|
|
598
598
|
/>
|
|
599
599
|
</div>
|
|
600
600
|
<div
|
|
601
|
-
className="u-mt-2 u-text-center u-
|
|
601
|
+
className="u-mt-2 u-text-center u-text-xs"
|
|
602
602
|
style={{ color: getPerformanceColor() }}
|
|
603
603
|
>
|
|
604
604
|
{getPerformanceLabel()} -{' '}
|
|
@@ -613,7 +613,7 @@ export const Playground: Story = {
|
|
|
613
613
|
{/* Quick Presets */}
|
|
614
614
|
<div className="u-mb-6">
|
|
615
615
|
<label
|
|
616
|
-
className="u-
|
|
616
|
+
className="u-block u-mb-3 u-text-white u-font-semibold"
|
|
617
617
|
style={{ fontSize: '14px', letterSpacing: '0.5px' }}
|
|
618
618
|
>
|
|
619
619
|
⚡ Quick Presets
|
|
@@ -676,34 +676,33 @@ export const Playground: Story = {
|
|
|
676
676
|
{/* Controls */}
|
|
677
677
|
{Object.entries(settings).map(([key, value]) => (
|
|
678
678
|
<div key={key} className="u-mb-5">
|
|
679
|
-
<div className="u-
|
|
679
|
+
<div className="u-flex u-justify-between u-items-center u-mb-2">
|
|
680
680
|
<label
|
|
681
|
-
className="u-text-white u-
|
|
681
|
+
className="u-text-white u-text-sm u-font-medium"
|
|
682
682
|
style={{ textTransform: 'capitalize' }}
|
|
683
683
|
>
|
|
684
684
|
{key.replace(/([A-Z])/g, ' $1').trim()}
|
|
685
685
|
</label>
|
|
686
|
-
<span className="u-text-white u-opacity-80 u-
|
|
686
|
+
<span className="u-text-white u-opacity-80 u-text-sm u-font-semibold">
|
|
687
687
|
{typeof value === 'boolean'
|
|
688
688
|
? value
|
|
689
689
|
? 'On'
|
|
690
690
|
: 'Off'
|
|
691
691
|
: typeof value === 'number'
|
|
692
692
|
? value.toFixed(
|
|
693
|
-
|
|
694
|
-
|
|
695
|
-
|
|
696
|
-
|
|
697
|
-
|
|
698
|
-
|
|
693
|
+
key.includes('Amount') ||
|
|
694
|
+
key.includes('elasticity') ||
|
|
695
|
+
key.includes('aberration')
|
|
696
|
+
? 2
|
|
697
|
+
: 0
|
|
698
|
+
)
|
|
699
699
|
: value}
|
|
700
700
|
</span>
|
|
701
701
|
</div>
|
|
702
702
|
{typeof value === 'boolean' ? (
|
|
703
703
|
<Toggle
|
|
704
|
-
|
|
705
|
-
|
|
706
|
-
onToggleOff={() => setSettings(prev => ({ ...prev, [key]: false }))}
|
|
704
|
+
checked={value as boolean}
|
|
705
|
+
onChange={checked => setSettings(prev => ({ ...prev, [key]: checked }))}
|
|
707
706
|
/>
|
|
708
707
|
) : (
|
|
709
708
|
<input
|
|
@@ -724,8 +723,8 @@ export const Playground: Story = {
|
|
|
724
723
|
}
|
|
725
724
|
step={
|
|
726
725
|
key === 'aberrationIntensity' ||
|
|
727
|
-
|
|
728
|
-
|
|
726
|
+
key === 'elasticity' ||
|
|
727
|
+
key === 'blurAmount'
|
|
729
728
|
? 0.01
|
|
730
729
|
: 1
|
|
731
730
|
}
|
|
@@ -741,7 +740,7 @@ export const Playground: Story = {
|
|
|
741
740
|
|
|
742
741
|
{/* Mode Selector */}
|
|
743
742
|
<div className="u-mb-5">
|
|
744
|
-
<label className="u-
|
|
743
|
+
<label className="u-block u-mb-2 u-text-white u-font-semibold">
|
|
745
744
|
Glass Mode
|
|
746
745
|
</label>
|
|
747
746
|
<select
|
|
@@ -775,7 +774,7 @@ export const Playground: Story = {
|
|
|
775
774
|
{/* Shader Variant Selector */}
|
|
776
775
|
{selectedMode === 'shader' && (
|
|
777
776
|
<div className="u-mb-5">
|
|
778
|
-
<label className="u-
|
|
777
|
+
<label className="u-block u-mb-2 u-text-white u-font-semibold">
|
|
779
778
|
Shader Variant
|
|
780
779
|
</label>
|
|
781
780
|
<select
|
|
@@ -809,7 +808,7 @@ export const Playground: Story = {
|
|
|
809
808
|
|
|
810
809
|
{/* Background Control */}
|
|
811
810
|
<div className="u-mb-6">
|
|
812
|
-
<label className="u-
|
|
811
|
+
<label className="u-block u-mb-2 u-text-white u-font-semibold">
|
|
813
812
|
Background Image
|
|
814
813
|
</label>
|
|
815
814
|
<input
|
|
@@ -821,7 +820,7 @@ export const Playground: Story = {
|
|
|
821
820
|
onChange={e => setBackgroundIndex(parseInt(e.target.value))}
|
|
822
821
|
style={{ width: '100%', height: '6px', accentColor: '#7AFFD7' }}
|
|
823
822
|
/>
|
|
824
|
-
<div className="u-mt-2 u-text-center u-text-white u-opacity-70 u-
|
|
823
|
+
<div className="u-mt-2 u-text-center u-text-white u-opacity-70 u-text-xs">
|
|
825
824
|
Background {backgroundIndex + 1} of {backgrounds.length}
|
|
826
825
|
</div>
|
|
827
826
|
</div>
|
|
@@ -901,12 +900,12 @@ export const Playground: Story = {
|
|
|
901
900
|
>
|
|
902
901
|
<div style={{ padding: '2.5rem' }}>
|
|
903
902
|
<div
|
|
904
|
-
className="u-
|
|
903
|
+
className="u-flex u-justify-between u-items-center u-mb-4"
|
|
905
904
|
style={{ marginBottom: '24px' }}
|
|
906
905
|
>
|
|
907
906
|
<div>
|
|
908
907
|
<h3
|
|
909
|
-
className="u-m-0 u-
|
|
908
|
+
className="u-m-0 u-font-bold"
|
|
910
909
|
style={{
|
|
911
910
|
fontSize: '1.75rem',
|
|
912
911
|
background: 'linear-gradient(135deg, #fff 0%, rgba(255,255,255,0.8) 100%)',
|
|
@@ -1018,7 +1017,7 @@ export const Playground: Story = {
|
|
|
1018
1017
|
✨
|
|
1019
1018
|
</div>
|
|
1020
1019
|
<h2
|
|
1021
|
-
className="u-mb-4 u-
|
|
1020
|
+
className="u-mb-4 u-font-bold"
|
|
1022
1021
|
style={{
|
|
1023
1022
|
fontSize: '2.75rem',
|
|
1024
1023
|
background: 'linear-gradient(135deg, #fff 0%, rgba(255,255,255,0.8) 100%)',
|
|
@@ -1045,7 +1044,7 @@ export const Playground: Story = {
|
|
|
1045
1044
|
effect.
|
|
1046
1045
|
</p>
|
|
1047
1046
|
<div
|
|
1048
|
-
className="u-
|
|
1047
|
+
className="u-flex u-justify-center u-flex-wrap"
|
|
1049
1048
|
style={{ gap: '1rem' }}
|
|
1050
1049
|
>
|
|
1051
1050
|
<Button variant="primary" size="lg">
|
|
@@ -1066,7 +1065,7 @@ export const Playground: Story = {
|
|
|
1066
1065
|
}}
|
|
1067
1066
|
>
|
|
1068
1067
|
<div
|
|
1069
|
-
className="u-mb-3 u-
|
|
1068
|
+
className="u-mb-3 u-font-semibold u-text-sm"
|
|
1070
1069
|
style={{ color: '#7AFFD7' }}
|
|
1071
1070
|
>
|
|
1072
1071
|
📊 Current Configuration
|
|
@@ -1079,40 +1078,40 @@ export const Playground: Story = {
|
|
|
1079
1078
|
}}
|
|
1080
1079
|
>
|
|
1081
1080
|
<div>
|
|
1082
|
-
<div className="u-
|
|
1081
|
+
<div className="u-text-xs u-opacity-70">Mode</div>
|
|
1083
1082
|
<div
|
|
1084
|
-
className="u-
|
|
1083
|
+
className="u-font-semibold"
|
|
1085
1084
|
style={{ textTransform: 'capitalize' }}
|
|
1086
1085
|
>
|
|
1087
1086
|
{selectedMode}
|
|
1088
1087
|
</div>
|
|
1089
1088
|
</div>
|
|
1090
1089
|
<div>
|
|
1091
|
-
<div className="u-
|
|
1090
|
+
<div className="u-text-xs u-opacity-70">Shader</div>
|
|
1092
1091
|
<div
|
|
1093
|
-
className="u-
|
|
1092
|
+
className="u-font-semibold"
|
|
1094
1093
|
style={{ textTransform: 'capitalize' }}
|
|
1095
1094
|
>
|
|
1096
1095
|
{selectedShader}
|
|
1097
1096
|
</div>
|
|
1098
1097
|
</div>
|
|
1099
1098
|
<div>
|
|
1100
|
-
<div className="u-
|
|
1101
|
-
<div className="u-
|
|
1099
|
+
<div className="u-text-xs u-opacity-70">Displacement</div>
|
|
1100
|
+
<div className="u-font-semibold">{settings.displacementScale}px</div>
|
|
1102
1101
|
</div>
|
|
1103
1102
|
<div>
|
|
1104
|
-
<div className="u-
|
|
1105
|
-
<div className="u-
|
|
1103
|
+
<div className="u-text-xs u-opacity-70">Aberration</div>
|
|
1104
|
+
<div className="u-font-semibold">
|
|
1106
1105
|
{settings.aberrationIntensity.toFixed(1)}
|
|
1107
1106
|
</div>
|
|
1108
1107
|
</div>
|
|
1109
1108
|
<div>
|
|
1110
|
-
<div className="u-
|
|
1111
|
-
<div className="u-
|
|
1109
|
+
<div className="u-text-xs u-opacity-70">Blur</div>
|
|
1110
|
+
<div className="u-font-semibold">{settings.blurAmount.toFixed(2)}</div>
|
|
1112
1111
|
</div>
|
|
1113
1112
|
<div>
|
|
1114
|
-
<div className="u-
|
|
1115
|
-
<div className="u-
|
|
1113
|
+
<div className="u-text-xs u-opacity-70">Elasticity</div>
|
|
1114
|
+
<div className="u-font-semibold">{settings.elasticity.toFixed(2)}</div>
|
|
1116
1115
|
</div>
|
|
1117
1116
|
</div>
|
|
1118
1117
|
</div>
|
|
@@ -1126,7 +1125,7 @@ export const Playground: Story = {
|
|
|
1126
1125
|
}}
|
|
1127
1126
|
>
|
|
1128
1127
|
<div
|
|
1129
|
-
className="u-mb-3 u-
|
|
1128
|
+
className="u-mb-3 u-font-semibold u-text-sm"
|
|
1130
1129
|
style={{ color: '#7AFFD7' }}
|
|
1131
1130
|
>
|
|
1132
1131
|
🎨 Visual Characteristics
|
|
@@ -1204,7 +1203,7 @@ export const Playground: Story = {
|
|
|
1204
1203
|
}}
|
|
1205
1204
|
>
|
|
1206
1205
|
<div
|
|
1207
|
-
className="u-mb-3 u-
|
|
1206
|
+
className="u-mb-3 u-font-semibold u-text-sm"
|
|
1208
1207
|
style={{ color: '#7AFFD7' }}
|
|
1209
1208
|
>
|
|
1210
1209
|
📈 Quick Stats
|
|
@@ -1219,23 +1218,23 @@ export const Playground: Story = {
|
|
|
1219
1218
|
>
|
|
1220
1219
|
<div>
|
|
1221
1220
|
<span className="u-opacity-70">Saturation:</span>
|
|
1222
|
-
<span className="u-
|
|
1221
|
+
<span className="u-font-semibold u-ml-2">{settings.saturation}%</span>
|
|
1223
1222
|
</div>
|
|
1224
1223
|
<div>
|
|
1225
1224
|
<span className="u-opacity-70">Radius:</span>
|
|
1226
|
-
<span className="u-
|
|
1225
|
+
<span className="u-font-semibold u-ml-2">
|
|
1227
1226
|
{settings.cornerRadius}px
|
|
1228
1227
|
</span>
|
|
1229
1228
|
</div>
|
|
1230
1229
|
<div>
|
|
1231
1230
|
<span className="u-opacity-70">Background:</span>
|
|
1232
|
-
<span className="u-
|
|
1231
|
+
<span className="u-font-semibold u-ml-2">
|
|
1233
1232
|
{backgroundIndex + 1}/{backgrounds.length}
|
|
1234
1233
|
</span>
|
|
1235
1234
|
</div>
|
|
1236
1235
|
<div>
|
|
1237
1236
|
<span className="u-opacity-70">Effects:</span>
|
|
1238
|
-
<span className="u-
|
|
1237
|
+
<span className="u-font-semibold u-ml-2">
|
|
1239
1238
|
{settings.disableEffects ? 'Disabled' : 'Enabled'}
|
|
1240
1239
|
</span>
|
|
1241
1240
|
</div>
|