@shohojdhara/atomix 0.5.6 → 0.5.8
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/dist/atomix.css +452 -369
- package/dist/atomix.css.map +1 -1
- package/dist/atomix.min.css +5 -5
- package/dist/atomix.min.css.map +1 -1
- package/dist/atomix.umd.js +2 -0
- package/dist/atomix.umd.js.map +1 -0
- package/dist/atomix.umd.min.js +1 -0
- package/dist/core.d.ts +4 -3
- package/dist/index.d.ts +4 -3
- package/dist/index.esm.js +20 -7
- package/dist/index.esm.js.map +1 -1
- package/dist/index.js +20 -7
- 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.js +7 -3
- package/dist/theme.js.map +1 -1
- package/package.json +3 -3
- package/src/components/Breadcrumb/Breadcrumb.tsx +3 -3
- package/src/lib/config/loader.ts +27 -6
- package/src/lib/theme/config/configLoader.ts +7 -2
- package/src/lib/theme/config/loader.ts +7 -6
- package/src/styles/06-components/_components.avatar-group.scss +1 -3
- package/src/styles/06-components/_components.avatar.scss +1 -1
- package/src/styles/06-components/_components.badge.scss +2 -2
- package/src/styles/06-components/_components.button.scss +3 -3
- package/src/styles/06-components/_components.callout.scss +5 -5
- package/src/styles/06-components/_components.card.scss +2 -5
- package/src/styles/06-components/_components.checkbox.scss +1 -1
- package/src/styles/06-components/_components.data-table.scss +1 -1
- package/src/styles/06-components/_components.datepicker.scss +1 -1
- package/src/styles/06-components/_components.dropdown.scss +3 -3
- package/src/styles/06-components/_components.edge-panel.scss +5 -9
- package/src/styles/06-components/_components.footer.scss +12 -13
- package/src/styles/06-components/_components.hero.scss +2 -2
- package/src/styles/06-components/_components.input.scss +3 -3
- package/src/styles/06-components/_components.list.scss +1 -1
- package/src/styles/06-components/_components.menu.scss +2 -2
- package/src/styles/06-components/_components.messages.scss +16 -18
- package/src/styles/06-components/_components.modal.scss +6 -6
- package/src/styles/06-components/_components.nav.scss +0 -3
- package/src/styles/06-components/_components.navbar.scss +3 -3
- package/src/styles/06-components/_components.pagination.scss +3 -3
- package/src/styles/06-components/_components.photoviewer.scss +3 -3
- package/src/styles/06-components/_components.popover.scss +3 -3
- package/src/styles/06-components/_components.product-review.scss +2 -2
- package/src/styles/06-components/_components.progress.scss +2 -2
- package/src/styles/06-components/_components.river.scss +1 -1
- package/src/styles/06-components/_components.sectionintro.scss +1 -1
- package/src/styles/06-components/_components.select.scss +5 -6
- package/src/styles/06-components/_components.side-menu.scss +6 -6
- package/src/styles/06-components/_components.skeleton.scss +8 -8
- package/src/styles/06-components/_components.slider.scss +6 -6
- package/src/styles/06-components/_components.steps.scss +2 -2
- package/src/styles/06-components/_components.tabs.scss +2 -2
- package/src/styles/06-components/_components.todo.scss +1 -1
- package/src/styles/06-components/_components.toggle.scss +3 -5
- package/src/styles/06-components/_components.tooltip.scss +2 -4
- package/src/styles/06-components/_components.upload.scss +1 -2
- package/src/styles/06-components/_components.video-player.scss +2 -2
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@shohojdhara/atomix",
|
|
3
|
-
"version": "0.5.
|
|
3
|
+
"version": "0.5.8",
|
|
4
4
|
"description": "Atomix Design System - A modern component library for web applications",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"sideEffects": [
|
|
@@ -17,7 +17,6 @@
|
|
|
17
17
|
"sass": "src/styles/index.scss",
|
|
18
18
|
"unpkg": "dist/atomix.umd.min.js",
|
|
19
19
|
"jsdelivr": "dist/atomix.umd.min.js",
|
|
20
|
-
"browser": "dist/atomix.umd.min.js",
|
|
21
20
|
"bin": {
|
|
22
21
|
"atomix": "scripts/atomix-cli.js"
|
|
23
22
|
},
|
|
@@ -115,6 +114,7 @@
|
|
|
115
114
|
"default": "./dist/heavy.js"
|
|
116
115
|
},
|
|
117
116
|
"./cdn": {
|
|
117
|
+
"types": "./dist/index.d.ts",
|
|
118
118
|
"import": "./dist/atomix.umd.min.js",
|
|
119
119
|
"require": "./dist/atomix.umd.min.js",
|
|
120
120
|
"default": "./dist/atomix.umd.min.js"
|
|
@@ -233,7 +233,7 @@
|
|
|
233
233
|
"build:types": "rollup -c rollup.config.types.js",
|
|
234
234
|
"build:styles": "rollup -c rollup.config.styles.js",
|
|
235
235
|
"build:themes": "rollup -c rollup/config/themes.js",
|
|
236
|
-
"build:parallel": "concurrently \"npm:build:js\" \"npm:build:types\" \"npm:build:styles\"",
|
|
236
|
+
"build:parallel": "concurrently \"npm:build:js\" \"npm:build:types\" \"npm:build:styles\" \"npm:build:umd\"",
|
|
237
237
|
"build:umd": "rollup -c rollup.config.umd.js",
|
|
238
238
|
"build:cli": "rollup -c rollup.config.cli.js",
|
|
239
239
|
"build:cli:dev": "rollup -c rollup.config.cli.js --environment NODE_ENV:development",
|
|
@@ -6,7 +6,6 @@ import React, {
|
|
|
6
6
|
cloneElement,
|
|
7
7
|
isValidElement,
|
|
8
8
|
ElementType,
|
|
9
|
-
ComponentType,
|
|
10
9
|
MouseEvent,
|
|
11
10
|
AnchorHTMLAttributes,
|
|
12
11
|
} from 'react';
|
|
@@ -58,10 +57,11 @@ interface LinkComponentProps extends AnchorHTMLAttributes<HTMLAnchorElement> {
|
|
|
58
57
|
href?: string;
|
|
59
58
|
to?: string;
|
|
60
59
|
onClick?: (event: MouseEvent<HTMLAnchorElement>) => void;
|
|
60
|
+
[key: string]: any;
|
|
61
61
|
}
|
|
62
62
|
|
|
63
63
|
// Compound Component Props
|
|
64
|
-
export interface BreadcrumbItemProps extends React.HTMLAttributes<HTMLLIElement> {
|
|
64
|
+
export interface BreadcrumbItemProps extends Omit<React.HTMLAttributes<HTMLLIElement>, 'onClick'> {
|
|
65
65
|
/**
|
|
66
66
|
* URL for the breadcrumb item
|
|
67
67
|
*/
|
|
@@ -85,7 +85,7 @@ export interface BreadcrumbItemProps extends React.HTMLAttributes<HTMLLIElement>
|
|
|
85
85
|
/**
|
|
86
86
|
* Optional custom link component
|
|
87
87
|
*/
|
|
88
|
-
linkAs?:
|
|
88
|
+
linkAs?: ElementType;
|
|
89
89
|
|
|
90
90
|
/**
|
|
91
91
|
* Link props to pass to the underlying anchor or linkComponent
|
package/src/lib/config/loader.ts
CHANGED
|
@@ -354,8 +354,11 @@ export function loadAtomixConfig(
|
|
|
354
354
|
*/
|
|
355
355
|
function loadConfigAtPath(path: string, required: boolean, defaultConfig: AtomixConfig): AtomixConfig {
|
|
356
356
|
try {
|
|
357
|
-
// Use dynamic
|
|
358
|
-
const
|
|
357
|
+
// Use dynamic requirement to hide from bundlers
|
|
358
|
+
const req = typeof require !== 'undefined' ? require : undefined;
|
|
359
|
+
if (!req) return defaultConfig;
|
|
360
|
+
|
|
361
|
+
const configModule = req(path);
|
|
359
362
|
const config = configModule.default || configModule;
|
|
360
363
|
|
|
361
364
|
// Validate it's an AtomixConfig
|
|
@@ -391,10 +394,28 @@ export function resolveConfigPath(configPath?: string): string | null {
|
|
|
391
394
|
return null;
|
|
392
395
|
}
|
|
393
396
|
|
|
394
|
-
//
|
|
395
|
-
|
|
396
|
-
|
|
397
|
-
|
|
397
|
+
// Use dynamic requirement to hide from bundlers like Turbopack/Webpack
|
|
398
|
+
let nodeFs: any;
|
|
399
|
+
let nodePath: any;
|
|
400
|
+
|
|
401
|
+
try {
|
|
402
|
+
// Using a dynamic string and eval-like approach to prevent static analysis
|
|
403
|
+
// This is safe here because we've already checked for window (browser)
|
|
404
|
+
const req = typeof require !== 'undefined' ? require : undefined;
|
|
405
|
+
if (req) {
|
|
406
|
+
nodeFs = req(['f', 's'].join(''));
|
|
407
|
+
nodePath = req(['p', 'a', 't', 'h'].join(''));
|
|
408
|
+
}
|
|
409
|
+
} catch (e) {
|
|
410
|
+
return null;
|
|
411
|
+
}
|
|
412
|
+
|
|
413
|
+
if (!nodeFs || !nodePath) {
|
|
414
|
+
return null;
|
|
415
|
+
}
|
|
416
|
+
|
|
417
|
+
const { existsSync } = nodeFs;
|
|
418
|
+
const { join } = nodePath;
|
|
398
419
|
|
|
399
420
|
// If a specific config path is provided, check if it exists
|
|
400
421
|
if (configPath) {
|
|
@@ -29,7 +29,9 @@ export function loadThemeFromConfigSync(options?: { configPath?: string; require
|
|
|
29
29
|
|
|
30
30
|
try {
|
|
31
31
|
// eslint-disable-next-line @typescript-eslint/no-var-requires
|
|
32
|
-
const
|
|
32
|
+
const req = typeof require !== 'undefined' ? require : undefined;
|
|
33
|
+
if (!req) throw new Error('require is not available');
|
|
34
|
+
const { loadAtomixConfig: loader } = req('../../config/loader');
|
|
33
35
|
loadAtomixConfig = loader;
|
|
34
36
|
} catch (error) {
|
|
35
37
|
if (options?.required !== false) {
|
|
@@ -214,7 +216,10 @@ export async function loadThemeFromConfig(options?: { configPath?: string; requi
|
|
|
214
216
|
let config: any;
|
|
215
217
|
try {
|
|
216
218
|
// eslint-disable-next-line @typescript-eslint/no-var-requires
|
|
217
|
-
const
|
|
219
|
+
const req = typeof require !== 'undefined' ? require : undefined;
|
|
220
|
+
if (!req) throw new Error('require is not available');
|
|
221
|
+
const { loadAtomixConfig: loader } = req('../../config/loader');
|
|
222
|
+
loadAtomixConfig = loader;
|
|
218
223
|
config = loadAtomixConfig({ configPath: options?.configPath, required: options?.required !== false });
|
|
219
224
|
} catch (error) {
|
|
220
225
|
// If loadAtomixConfig is not available (e.g., in browser bundle), provide helpful error
|
|
@@ -72,7 +72,8 @@ export function loadThemeConfig(
|
|
|
72
72
|
// In ESM environments, require might be undefined.
|
|
73
73
|
let nodeRequire: any;
|
|
74
74
|
try {
|
|
75
|
-
|
|
75
|
+
// Use eval('require') or similar to hide from bundlers
|
|
76
|
+
nodeRequire = typeof require !== 'undefined' ? require : undefined;
|
|
76
77
|
} catch {
|
|
77
78
|
// require is not defined
|
|
78
79
|
}
|
|
@@ -94,8 +95,8 @@ export function loadThemeConfig(
|
|
|
94
95
|
|
|
95
96
|
// If a specific config path is provided, try to use it
|
|
96
97
|
if (configPath && configPath !== DEFAULT_ATOMIX_CONFIG_PATH) {
|
|
97
|
-
const path = nodeRequire('
|
|
98
|
-
const fs = nodeRequire('
|
|
98
|
+
const path = nodeRequire(['p', 'a', 't', 'h'].join('')) as typeof import('path');
|
|
99
|
+
const fs = nodeRequire(['f', 's'].join('')) as typeof import('fs');
|
|
99
100
|
const fullPath = path.resolve(process.cwd(), configPath);
|
|
100
101
|
|
|
101
102
|
if (fs.existsSync(fullPath)) {
|
|
@@ -109,8 +110,8 @@ export function loadThemeConfig(
|
|
|
109
110
|
'atomix.config.json'
|
|
110
111
|
];
|
|
111
112
|
|
|
112
|
-
const path = nodeRequire('
|
|
113
|
-
const fs = nodeRequire('
|
|
113
|
+
const path = nodeRequire(['p', 'a', 't', 'h'].join('')) as typeof import('path');
|
|
114
|
+
const fs = nodeRequire(['f', 's'].join('')) as typeof import('fs');
|
|
114
115
|
|
|
115
116
|
for (const fileName of possiblePaths) {
|
|
116
117
|
const fullPath = path.resolve(process.cwd(), fileName);
|
|
@@ -131,7 +132,7 @@ export function loadThemeConfig(
|
|
|
131
132
|
|
|
132
133
|
// Handle JSON files differently
|
|
133
134
|
if (resolvedConfigPath.endsWith('.json')) {
|
|
134
|
-
const fs = nodeRequire('
|
|
135
|
+
const fs = nodeRequire(['f', 's'].join('')) as typeof import('fs');
|
|
135
136
|
configModule = JSON.parse(fs.readFileSync(resolvedConfigPath, 'utf8'));
|
|
136
137
|
} else {
|
|
137
138
|
// Use require (Node.js/CommonJS) for JS/TS files
|
|
@@ -36,14 +36,12 @@
|
|
|
36
36
|
color: var(--#{$prefix}avatar-group-more-color);
|
|
37
37
|
font-size: var(--#{$prefix}avatar-group-more-font-size);
|
|
38
38
|
font-weight: var(--#{$prefix}avatar-group-more-font-weight);
|
|
39
|
-
@include dynamic-background(var(--#{$prefix}avatar-group-more-bg));
|
|
40
39
|
border: var(--#{$prefix}avatar-group-more-border-width) solid
|
|
41
40
|
var(--#{$prefix}avatar-group-more-border-color);
|
|
42
|
-
|
|
43
|
-
// Inherit size and shape from avatars
|
|
44
41
|
width: var(--#{$prefix}avatar-size);
|
|
45
42
|
height: var(--#{$prefix}avatar-size);
|
|
46
43
|
border-radius: var(--#{$prefix}avatar-border-radius);
|
|
44
|
+
@include dynamic-background(var(--#{$prefix}avatar-group-more-bg));
|
|
47
45
|
}
|
|
48
46
|
|
|
49
47
|
// Stacked variant
|
|
@@ -32,12 +32,12 @@
|
|
|
32
32
|
justify-content: center;
|
|
33
33
|
@include square(var(--#{$prefix}avatar-size));
|
|
34
34
|
border-radius: var(--#{$prefix}avatar-border-radius);
|
|
35
|
-
@include dynamic-background(var(--#{$prefix}avatar-bg));
|
|
36
35
|
color: var(--#{$prefix}avatar-color);
|
|
37
36
|
border: var(--#{$prefix}avatar-border-width) solid var(--#{$prefix}avatar-border-color);
|
|
38
37
|
overflow: hidden;
|
|
39
38
|
user-select: none;
|
|
40
39
|
@include basic-transition(opacity);
|
|
40
|
+
@include dynamic-background(var(--#{$prefix}avatar-bg));
|
|
41
41
|
|
|
42
42
|
// Size variants
|
|
43
43
|
@each $size, $value in $avatar-size {
|
|
@@ -26,8 +26,8 @@
|
|
|
26
26
|
line-height: 1;
|
|
27
27
|
padding: var(--#{$prefix}tag-padding-y) var(--#{$prefix}tag-padding-x);
|
|
28
28
|
border-radius: var(--#{$prefix}tag-border-radius);
|
|
29
|
-
@include dynamic-background(var(--#{$prefix}tag-bg-color));
|
|
30
29
|
user-select: none;
|
|
30
|
+
@include dynamic-background(var(--#{$prefix}tag-bg-color));
|
|
31
31
|
|
|
32
32
|
&__icon {
|
|
33
33
|
font-size: var(--#{$prefix}tag-icon-size);
|
|
@@ -44,12 +44,12 @@
|
|
|
44
44
|
}
|
|
45
45
|
|
|
46
46
|
&--glass {
|
|
47
|
+
border: 1px solid color-mix(in srgb, var(--#{$prefix}tag-color) 50%, transparent);
|
|
47
48
|
@include dynamic-background(
|
|
48
49
|
var(--#{$prefix}tag-bg-color),
|
|
49
50
|
$enable-transparency: true,
|
|
50
51
|
$transparency: 0.2
|
|
51
52
|
);
|
|
52
|
-
border: 1px solid color-mix(in srgb, var(--#{$prefix}tag-color) 50%, transparent);
|
|
53
53
|
|
|
54
54
|
// // Outer depth and glass effect
|
|
55
55
|
// 0 1px 3px rgba(0, 0, 0, 0.2),
|
|
@@ -44,12 +44,12 @@
|
|
|
44
44
|
text-decoration: if(colors.$link-decoration == none, null, none);
|
|
45
45
|
white-space: button.$btn-white-space;
|
|
46
46
|
vertical-align: middle;
|
|
47
|
-
@include dynamic-background(var(--#{config.$prefix}btn-bg));
|
|
48
47
|
cursor: if(button.$enable-button-pointers, pointer, null);
|
|
49
48
|
user-select: none;
|
|
50
49
|
border: var(--#{config.$prefix}btn-border-width) solid var(--#{config.$prefix}btn-border-color);
|
|
51
50
|
border-radius: var(--#{config.$prefix}btn-border-radius);
|
|
52
51
|
transition: button.$btn-transition;
|
|
52
|
+
@include dynamic-background(var(--#{config.$prefix}btn-bg));
|
|
53
53
|
|
|
54
54
|
&__icon {
|
|
55
55
|
font-size: var(--#{config.$prefix}btn-icon-size);
|
|
@@ -58,8 +58,8 @@
|
|
|
58
58
|
&:hover {
|
|
59
59
|
color: var(--#{config.$prefix}btn-hover-color);
|
|
60
60
|
text-decoration: if(colors.$link-hover-decoration == underline, none, null);
|
|
61
|
-
@include dynamic-background(var(--#{config.$prefix}btn-hover-bg));
|
|
62
61
|
border-color: var(--#{config.$prefix}btn-hover-border-color);
|
|
62
|
+
@include dynamic-background(var(--#{config.$prefix}btn-hover-bg));
|
|
63
63
|
}
|
|
64
64
|
|
|
65
65
|
@each $color, $value in color-maps.$theme-colors {
|
|
@@ -216,11 +216,11 @@
|
|
|
216
216
|
fieldset:disabled & {
|
|
217
217
|
color: var(--#{config.$prefix}btn-disabled-color);
|
|
218
218
|
pointer-events: none;
|
|
219
|
-
@include dynamic-background(var(--#{config.$prefix}btn-disabled-bg));
|
|
220
219
|
background-image: if(button.$enable-gradients, none, null);
|
|
221
220
|
border-color: var(--#{config.$prefix}btn-disabled-border-color);
|
|
222
221
|
opacity: var(--#{config.$prefix}btn-disabled-opacity);
|
|
223
222
|
cursor: not-allowed;
|
|
223
|
+
@include dynamic-background(var(--#{config.$prefix}btn-disabled-bg));
|
|
224
224
|
|
|
225
225
|
&:focus-visible {
|
|
226
226
|
outline: none;
|
|
@@ -41,7 +41,6 @@
|
|
|
41
41
|
max-width: var(--#{config.$prefix}callout-width);
|
|
42
42
|
gap: var(--#{config.$prefix}callout-actions-spacer);
|
|
43
43
|
padding: var(--#{config.$prefix}callout-padding-y) var(--#{config.$prefix}callout-padding-x);
|
|
44
|
-
@include dynamic-background(var(--#{config.$prefix}callout-bg));
|
|
45
44
|
border-radius: var(--#{config.$prefix}callout-border-radius);
|
|
46
45
|
border: var(--#{config.$prefix}callout-border-witdh) solid
|
|
47
46
|
var(--#{config.$prefix}callout-border-color);
|
|
@@ -50,6 +49,7 @@
|
|
|
50
49
|
var(--#{config.$prefix}callout-transition-timing),
|
|
51
50
|
transform var(--#{config.$prefix}callout-transition-duration)
|
|
52
51
|
var(--#{config.$prefix}callout-transition-timing);
|
|
52
|
+
@include dynamic-background(var(--#{config.$prefix}callout-bg));
|
|
53
53
|
|
|
54
54
|
&__content {
|
|
55
55
|
width: 100%;
|
|
@@ -145,9 +145,9 @@
|
|
|
145
145
|
align-items: flex-start;
|
|
146
146
|
justify-content: flex-start;
|
|
147
147
|
border: none;
|
|
148
|
-
@include dynamic-background(var(--#{config.$prefix}callout-toast-bg));
|
|
149
148
|
box-shadow: var(--#{config.$prefix}callout-box-shadow);
|
|
150
149
|
animation: calloutToastIn 0.3s var(--#{config.$prefix}callout-transition-timing) forwards;
|
|
150
|
+
@include dynamic-background(var(--#{config.$prefix}callout-toast-bg));
|
|
151
151
|
|
|
152
152
|
#{$root} {
|
|
153
153
|
&__content {
|
|
@@ -235,13 +235,13 @@
|
|
|
235
235
|
|
|
236
236
|
// Glass effect for toast variant
|
|
237
237
|
&#{$root}--toast {
|
|
238
|
+
box-shadow:
|
|
239
|
+
0 8px 32px rgba(0, 0, 0, 0.1),
|
|
240
|
+
0 0 0 1px rgba(255, 255, 255, 0.1) inset;
|
|
238
241
|
@include dynamic-background(
|
|
239
242
|
var(--#{config.$prefix}callout-bg),
|
|
240
243
|
$enable-transparency: true
|
|
241
244
|
);
|
|
242
|
-
box-shadow:
|
|
243
|
-
0 8px 32px rgba(0, 0, 0, 0.1),
|
|
244
|
-
0 0 0 1px rgba(255, 255, 255, 0.1) inset;
|
|
245
245
|
}
|
|
246
246
|
}
|
|
247
247
|
|
|
@@ -42,14 +42,11 @@
|
|
|
42
42
|
padding: var(--#{$prefix}card-spacer-y) var(--#{$prefix}card-spacer-x);
|
|
43
43
|
border: var(--#{$prefix}card-border-width) solid var(--#{$prefix}card-border-color);
|
|
44
44
|
border-radius: var(--#{$prefix}card-border-radius);
|
|
45
|
-
@include basic-transition();
|
|
46
|
-
|
|
47
|
-
@include dynamic-background(var(--#{$prefix}card-bg));
|
|
48
|
-
|
|
49
|
-
// Link card support - ensure anchor elements behave like block elements
|
|
50
45
|
display: block;
|
|
51
46
|
text-decoration: none;
|
|
52
47
|
color: inherit;
|
|
48
|
+
@include basic-transition();
|
|
49
|
+
@include dynamic-background(var(--#{$prefix}card-bg));
|
|
53
50
|
|
|
54
51
|
// Reset anchor element default styles when card is used as a link
|
|
55
52
|
// This needs higher specificity to override global link styles
|
|
@@ -34,7 +34,6 @@
|
|
|
34
34
|
&__input {
|
|
35
35
|
position: relative;
|
|
36
36
|
appearance: none;
|
|
37
|
-
@include dynamic-background(var(--#{$prefix}checkbox-bg));
|
|
38
37
|
width: var(--#{$prefix}checkbox-width);
|
|
39
38
|
height: var(--#{$prefix}checkbox-height);
|
|
40
39
|
color: currentColor;
|
|
@@ -42,6 +41,7 @@
|
|
|
42
41
|
border-radius: var(--#{$prefix}checkbox-border-radius);
|
|
43
42
|
overflow: hidden;
|
|
44
43
|
@include basic-transition();
|
|
44
|
+
@include dynamic-background(var(--#{$prefix}checkbox-bg));
|
|
45
45
|
|
|
46
46
|
&[type='radio'] {
|
|
47
47
|
border-radius: $border-radius-pill;
|
|
@@ -33,8 +33,8 @@
|
|
|
33
33
|
width: 100%;
|
|
34
34
|
margin-bottom: 0;
|
|
35
35
|
color: var(--#{config.$prefix}data-table-color);
|
|
36
|
-
@include dynamic-background(var(--#{config.$prefix}data-table-bg));
|
|
37
36
|
border-collapse: collapse;
|
|
37
|
+
@include dynamic-background(var(--#{config.$prefix}data-table-bg));
|
|
38
38
|
|
|
39
39
|
// Header
|
|
40
40
|
&__header {
|
|
@@ -106,10 +106,10 @@
|
|
|
106
106
|
z-index: map.get($z-layers, 5);
|
|
107
107
|
width: var(--#{$prefix}datepicker-width);
|
|
108
108
|
padding: var(--#{$prefix}datepicker-padding-y) var(--#{$prefix}datepicker-padding-x);
|
|
109
|
-
@include dynamic-background(var(--#{$prefix}datepicker-bg));
|
|
110
109
|
border-radius: var(--#{$prefix}datepicker-border-radius);
|
|
111
110
|
box-shadow: var(--#{$prefix}datepicker-box-shadow);
|
|
112
111
|
margin-top: rem(4px);
|
|
112
|
+
@include dynamic-background(var(--#{$prefix}datepicker-bg));
|
|
113
113
|
|
|
114
114
|
// Calendar placements
|
|
115
115
|
&--top-start,
|
|
@@ -186,17 +186,17 @@
|
|
|
186
186
|
list-style: none;
|
|
187
187
|
@include mb(0);
|
|
188
188
|
border: 1px solid rgba(255, 255, 255, 0.08);
|
|
189
|
-
@include dynamic-background(var(--#{$prefix}dropdown-bg));
|
|
190
189
|
border-radius: var(--#{$prefix}dropdown-border-radius);
|
|
191
190
|
box-shadow: var(--#{$prefix}dropdown-box-shadow);
|
|
192
191
|
overflow: hidden;
|
|
192
|
+
@include dynamic-background(var(--#{$prefix}dropdown-bg));
|
|
193
193
|
|
|
194
194
|
&--glass {
|
|
195
|
+
box-shadow: var(--#{$prefix}dropdown-box-shadow);
|
|
195
196
|
@include dynamic-background(
|
|
196
197
|
var(--#{$prefix}dropdown-bg),
|
|
197
198
|
$enable-transparency: true
|
|
198
199
|
);
|
|
199
|
-
box-shadow: var(--#{$prefix}dropdown-box-shadow);
|
|
200
200
|
}
|
|
201
201
|
}
|
|
202
202
|
|
|
@@ -217,9 +217,9 @@
|
|
|
217
217
|
&:hover,
|
|
218
218
|
&:focus {
|
|
219
219
|
color: var(--#{$prefix}dropdown-link-hover-color);
|
|
220
|
-
@include dynamic-background(var(--#{$prefix}dropdown-link-hover-bg));
|
|
221
220
|
outline: none;
|
|
222
221
|
padding-left: calc(var(--#{$prefix}dropdown-item-padding-x) + 3px);
|
|
222
|
+
@include dynamic-background(var(--#{$prefix}dropdown-link-hover-bg));
|
|
223
223
|
}
|
|
224
224
|
|
|
225
225
|
&.is-active {
|
|
@@ -35,10 +35,10 @@
|
|
|
35
35
|
&__backdrop {
|
|
36
36
|
position: absolute;
|
|
37
37
|
inset: 0;
|
|
38
|
-
@include dynamic-background(var(--#{$prefix}edge-panel-backdrop-bg));
|
|
39
38
|
opacity: 0;
|
|
40
39
|
z-index: map.get($z-layers, 1);
|
|
41
40
|
transition: opacity var(--#{$prefix}edge-panel-animation-duration) ease;
|
|
41
|
+
@include dynamic-background(var(--#{$prefix}edge-panel-backdrop-bg));
|
|
42
42
|
|
|
43
43
|
&.is-animating {
|
|
44
44
|
animation: fadeIn 0.3s ease forwards;
|
|
@@ -55,12 +55,12 @@
|
|
|
55
55
|
color: var(--#{$prefix}edge-panel-color);
|
|
56
56
|
width: var(--#{$prefix}edge-panel-width);
|
|
57
57
|
height: 100%;
|
|
58
|
-
@include dynamic-background(var(--#{$prefix}edge-panel-bg));
|
|
59
58
|
box-shadow: var(--#{$prefix}edge-panel-shadow);
|
|
60
59
|
z-index: map.get($z-layers, 2);
|
|
61
60
|
overflow: hidden;
|
|
62
61
|
display: flex;
|
|
63
62
|
flex-direction: column;
|
|
63
|
+
@include dynamic-background(var(--#{$prefix}edge-panel-bg));
|
|
64
64
|
|
|
65
65
|
&.is-animating {
|
|
66
66
|
animation: slideIn var(--#{$prefix}edge-panel-animation-duration)
|
|
@@ -371,10 +371,7 @@
|
|
|
371
371
|
padding: 0;
|
|
372
372
|
border-radius: inherit;
|
|
373
373
|
transition: opacity 0.3s ease;
|
|
374
|
-
@include dynamic-background(
|
|
375
|
-
var(--#{$prefix}edge-panel-bg),
|
|
376
|
-
$enable-transparency: true
|
|
377
|
-
);
|
|
374
|
+
@include dynamic-background(var(--#{$prefix}edge-panel-bg), $enable-transparency: true);
|
|
378
375
|
}
|
|
379
376
|
|
|
380
377
|
.c-edge-panel__header {
|
|
@@ -404,13 +401,12 @@
|
|
|
404
401
|
}
|
|
405
402
|
|
|
406
403
|
.c-edge-panel__backdrop {
|
|
404
|
+
animation: fadeIn 0.3s ease forwards;
|
|
405
|
+
z-index: map.get($z-layers, 1);
|
|
407
406
|
@include dynamic-background(
|
|
408
407
|
var(--#{$prefix}edge-panel-backdrop-bg),
|
|
409
408
|
$enable-transparency: true
|
|
410
409
|
);
|
|
411
|
-
animation: fadeIn 0.3s ease forwards;
|
|
412
|
-
z-index: map.get($z-layers, 1);
|
|
413
|
-
|
|
414
410
|
&.is-animating-out {
|
|
415
411
|
animation: fadeOut 0.3s ease forwards;
|
|
416
412
|
}
|
|
@@ -33,11 +33,11 @@
|
|
|
33
33
|
--#{$prefix}disabled-opacity: 0.6;
|
|
34
34
|
|
|
35
35
|
// Base Styles
|
|
36
|
-
@include dynamic-background(var(--#{$prefix}footer-bg));
|
|
37
36
|
color: var(--#{$prefix}footer-color);
|
|
38
37
|
border-top: var(--#{$prefix}footer-border-width) solid var(--#{$prefix}footer-border-color);
|
|
39
38
|
padding: var(--#{$prefix}footer-padding-y) 0;
|
|
40
39
|
position: relative;
|
|
40
|
+
@include dynamic-background(var(--#{$prefix}footer-bg));
|
|
41
41
|
|
|
42
42
|
&--glass {
|
|
43
43
|
padding: 0;
|
|
@@ -47,10 +47,10 @@
|
|
|
47
47
|
background: transparent;
|
|
48
48
|
|
|
49
49
|
#{$root}__glass {
|
|
50
|
-
@include dynamic-background(rgba(var(--#{$prefix}footer-bg-rgb), 0.5, true));
|
|
51
50
|
color: var(--#{$prefix}footer-color);
|
|
52
51
|
border-top: var(--#{$prefix}footer-border-width) solid var(--#{$prefix}footer-border-color);
|
|
53
52
|
padding: var(--#{$prefix}footer-padding-y) 0;
|
|
53
|
+
@include dynamic-background(rgba(var(--#{$prefix}footer-bg-rgb), 0.5, true));
|
|
54
54
|
}
|
|
55
55
|
}
|
|
56
56
|
|
|
@@ -333,13 +333,13 @@
|
|
|
333
333
|
justify-content: center;
|
|
334
334
|
width: #{$footer-social-link-size};
|
|
335
335
|
height: #{$footer-social-link-size};
|
|
336
|
-
@include dynamic-background(#{$footer-social-link-bg});
|
|
337
336
|
color: #{$footer-social-link-color};
|
|
338
337
|
border-radius: #{$footer-social-link-border-radius};
|
|
339
338
|
text-decoration: none;
|
|
340
339
|
transition: #{$footer-social-link-transition};
|
|
341
340
|
position: relative;
|
|
342
341
|
overflow: hidden;
|
|
342
|
+
@include dynamic-background(#{$footer-social-link-bg});
|
|
343
343
|
|
|
344
344
|
&::before {
|
|
345
345
|
content: '';
|
|
@@ -357,10 +357,10 @@
|
|
|
357
357
|
|
|
358
358
|
&:hover,
|
|
359
359
|
&:focus {
|
|
360
|
-
@include dynamic-background(#{$footer-social-link-hover-bg});
|
|
361
360
|
color: #{$footer-social-link-hover-color};
|
|
362
361
|
transform: translateY(-3px) scale(1.05);
|
|
363
362
|
box-shadow: 0 8px 25px rgba(0, 0, 0, 0.15);
|
|
363
|
+
@include dynamic-background(#{$footer-social-link-hover-bg});
|
|
364
364
|
|
|
365
365
|
&::before {
|
|
366
366
|
transform: translateX(100%);
|
|
@@ -438,15 +438,14 @@
|
|
|
438
438
|
|
|
439
439
|
// Newsletter
|
|
440
440
|
&__newsletter {
|
|
441
|
-
@include dynamic-background(
|
|
442
|
-
linear-gradient(135deg, #{$footer-newsletter-bg}, rgba(#{$footer-newsletter-bg}, 0.8))
|
|
443
|
-
);
|
|
444
441
|
padding: #{$footer-newsletter-padding};
|
|
445
442
|
border-radius: #{$footer-newsletter-border-radius};
|
|
446
443
|
border: 1px solid var(--#{$prefix}border-subtle);
|
|
447
444
|
position: relative;
|
|
448
445
|
overflow: hidden;
|
|
449
|
-
|
|
446
|
+
@include dynamic-background(
|
|
447
|
+
linear-gradient(135deg, #{$footer-newsletter-bg}, rgba(#{$footer-newsletter-bg}, 0.8))
|
|
448
|
+
);
|
|
450
449
|
&::before {
|
|
451
450
|
content: '';
|
|
452
451
|
position: absolute;
|
|
@@ -503,13 +502,13 @@
|
|
|
503
502
|
flex: 1;
|
|
504
503
|
padding: #{$footer-newsletter-input-padding};
|
|
505
504
|
font-size: #{$footer-newsletter-input-font-size};
|
|
506
|
-
@include dynamic-background(#{$footer-newsletter-input-bg});
|
|
507
505
|
color: #{$footer-newsletter-input-color};
|
|
508
506
|
border: #{$footer-newsletter-input-border};
|
|
509
507
|
border-radius: #{$footer-newsletter-input-border-radius};
|
|
510
508
|
outline: none;
|
|
511
509
|
transition: all 0.3s ease;
|
|
512
510
|
box-sizing: border-box;
|
|
511
|
+
@include dynamic-background(#{$footer-newsletter-input-bg});
|
|
513
512
|
|
|
514
513
|
&:focus {
|
|
515
514
|
border-color: #{$footer-newsletter-input-focus-border-color};
|
|
@@ -529,7 +528,6 @@
|
|
|
529
528
|
|
|
530
529
|
&-button {
|
|
531
530
|
padding: #{$footer-newsletter-button-padding};
|
|
532
|
-
@include dynamic-background(#{$footer-newsletter-button-bg});
|
|
533
531
|
color: #{$footer-newsletter-button-color};
|
|
534
532
|
border: none;
|
|
535
533
|
border-radius: #{$footer-newsletter-button-border-radius};
|
|
@@ -539,6 +537,7 @@
|
|
|
539
537
|
white-space: nowrap;
|
|
540
538
|
position: relative;
|
|
541
539
|
overflow: hidden;
|
|
540
|
+
@include dynamic-background(#{$footer-newsletter-button-bg});
|
|
542
541
|
|
|
543
542
|
&::before {
|
|
544
543
|
content: '';
|
|
@@ -556,9 +555,9 @@
|
|
|
556
555
|
|
|
557
556
|
&:hover,
|
|
558
557
|
&:focus {
|
|
559
|
-
@include dynamic-background(#{$footer-newsletter-button-hover-bg});
|
|
560
558
|
transform: translateY(-2px);
|
|
561
559
|
box-shadow: 0 8px 25px rgba(0, 0, 0, 0.15);
|
|
560
|
+
@include dynamic-background(#{$footer-newsletter-button-hover-bg});
|
|
562
561
|
|
|
563
562
|
&::before {
|
|
564
563
|
transform: translateX(100%);
|
|
@@ -611,7 +610,6 @@
|
|
|
611
610
|
align-items: center;
|
|
612
611
|
gap: 0.5rem;
|
|
613
612
|
padding: 0.75rem 1.25rem;
|
|
614
|
-
@include dynamic-background(var(--#{$prefix}secondary-bg));
|
|
615
613
|
border: 1px solid var(--#{$prefix}border-subtle);
|
|
616
614
|
color: #{$footer-back-to-top-color};
|
|
617
615
|
font-size: #{$footer-back-to-top-font-size};
|
|
@@ -623,6 +621,7 @@
|
|
|
623
621
|
overflow: hidden;
|
|
624
622
|
text-decoration: none;
|
|
625
623
|
outline: none;
|
|
624
|
+
@include dynamic-background(var(--#{$prefix}secondary-bg));
|
|
626
625
|
|
|
627
626
|
&::before {
|
|
628
627
|
content: '';
|
|
@@ -641,10 +640,10 @@
|
|
|
641
640
|
&:hover,
|
|
642
641
|
&:focus {
|
|
643
642
|
color: #{$footer-back-to-top-hover-color};
|
|
644
|
-
@include dynamic-background(var(--#{$prefix}primary));
|
|
645
643
|
border-color: var(--#{$prefix}primary);
|
|
646
644
|
transform: translateY(-3px);
|
|
647
645
|
box-shadow: 0 6px 16px rgba(0, 0, 0, 0.12);
|
|
646
|
+
@include dynamic-background(var(--#{$prefix}primary));
|
|
648
647
|
|
|
649
648
|
&::before {
|
|
650
649
|
transform: translateX(100%);
|
|
@@ -36,8 +36,8 @@
|
|
|
36
36
|
display: grid;
|
|
37
37
|
place-items: center;
|
|
38
38
|
padding: var(--#{$prefix}hero-padding-y) var(--#{$prefix}hero-padding-x);
|
|
39
|
-
@include dynamic-background(var(--#{$prefix}hero-bg));
|
|
40
39
|
overflow: hidden;
|
|
40
|
+
@include dynamic-background(var(--#{$prefix}hero-bg));
|
|
41
41
|
|
|
42
42
|
&__bg {
|
|
43
43
|
position: absolute;
|
|
@@ -58,9 +58,9 @@
|
|
|
58
58
|
&__overlay {
|
|
59
59
|
position: absolute;
|
|
60
60
|
inset: 0;
|
|
61
|
-
@include dynamic-background(var(--#{$prefix}hero-overlay));
|
|
62
61
|
opacity: var(--#{$prefix}hero-overlay-opacity);
|
|
63
62
|
z-index: 1;
|
|
63
|
+
@include dynamic-background(var(--#{$prefix}hero-overlay));
|
|
64
64
|
}
|
|
65
65
|
|
|
66
66
|
&__container {
|
|
@@ -31,8 +31,8 @@
|
|
|
31
31
|
border: var(--#{$prefix}input-border-width) solid var(--#{$prefix}input-border-color);
|
|
32
32
|
border-radius: var(--#{$prefix}input-border-radius);
|
|
33
33
|
outline: none;
|
|
34
|
-
@include dynamic-background(var(--#{$prefix}input-bg));
|
|
35
34
|
@include basic-transition();
|
|
35
|
+
@include dynamic-background(var(--#{$prefix}input-bg));
|
|
36
36
|
|
|
37
37
|
&:focus,
|
|
38
38
|
&:hover {
|
|
@@ -108,11 +108,11 @@
|
|
|
108
108
|
|
|
109
109
|
// Glass morphism effect styles
|
|
110
110
|
&--glass {
|
|
111
|
-
@include dynamic-background(var(--#{$prefix}input-bg), $enable-transparency: true);
|
|
112
111
|
box-shadow:
|
|
113
112
|
0 8px 32px rgba(0, 0, 0, 0.1),
|
|
114
113
|
0 0 0 1px rgba(255, 255, 255, 0.1) inset;
|
|
115
114
|
border-color: color-mix(in srgb, var(--#{$prefix}input-border-color) 50%, transparent);
|
|
115
|
+
@include dynamic-background(var(--#{$prefix}input-bg), $enable-transparency: true);
|
|
116
116
|
|
|
117
117
|
&:focus,
|
|
118
118
|
&:hover {
|
|
@@ -130,8 +130,8 @@
|
|
|
130
130
|
// Glass disabled state
|
|
131
131
|
&:disabled,
|
|
132
132
|
&.is-disabled {
|
|
133
|
-
@include dynamic-background(var(--#{$prefix}input-bg), $enable-transparency: true);
|
|
134
133
|
opacity: 0.6;
|
|
134
|
+
@include dynamic-background(var(--#{$prefix}input-bg), $enable-transparency: true);
|
|
135
135
|
}
|
|
136
136
|
}
|
|
137
137
|
}
|
|
@@ -43,8 +43,8 @@
|
|
|
43
43
|
left: 0;
|
|
44
44
|
width: var(--#{config.$prefix}list-item-dash-width);
|
|
45
45
|
height: var(--#{config.$prefix}list-item-dash-height);
|
|
46
|
-
@include dynamic-background(var(--#{config.$prefix}list-color));
|
|
47
46
|
transform: translateY(-50%);
|
|
47
|
+
@include dynamic-background(var(--#{config.$prefix}list-color));
|
|
48
48
|
}
|
|
49
49
|
}
|
|
50
50
|
}
|