sdga-ui 1.0.2 → 1.0.4

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 (119) hide show
  1. package/.editorconfig +23 -23
  2. package/.github/workflows/deploy.yml +57 -0
  3. package/.github/workflows/publish.yml +36 -33
  4. package/.prettierignore +73 -73
  5. package/.prettierrc +17 -17
  6. package/LICENSE +21 -21
  7. package/README.md +175 -167
  8. package/css/dga-ui.css +60 -30
  9. package/css/dga-ui.css.map +1 -1
  10. package/demo-angular/.editorconfig +17 -0
  11. package/demo-angular/.vscode/extensions.json +4 -0
  12. package/demo-angular/.vscode/launch.json +20 -0
  13. package/demo-angular/.vscode/tasks.json +42 -0
  14. package/demo-angular/README.md +59 -0
  15. package/demo-angular/angular.json +90 -0
  16. package/demo-angular/package-lock.json +10459 -0
  17. package/demo-angular/package.json +50 -0
  18. package/demo-angular/public/.nojekyll +0 -0
  19. package/demo-angular/public/favicon.ico +0 -0
  20. package/demo-angular/public/i18n/ar.json +239 -0
  21. package/demo-angular/public/i18n/en.json +239 -0
  22. package/demo-angular/src/app/app.config.ts +20 -0
  23. package/demo-angular/src/app/app.html +52 -0
  24. package/demo-angular/src/app/app.routes.ts +45 -0
  25. package/demo-angular/src/app/app.scss +430 -0
  26. package/demo-angular/src/app/app.spec.ts +23 -0
  27. package/demo-angular/src/app/app.ts +88 -0
  28. package/demo-angular/src/app/shared/code-example/code-example.component.html +30 -0
  29. package/demo-angular/src/app/shared/code-example/code-example.component.scss +183 -0
  30. package/demo-angular/src/app/shared/code-example/code-example.component.ts +78 -0
  31. package/demo-angular/src/app/views/alerts/alerts.component.html +155 -0
  32. package/demo-angular/src/app/views/alerts/alerts.component.scss +3 -0
  33. package/demo-angular/src/app/views/alerts/alerts.component.ts +134 -0
  34. package/demo-angular/src/app/views/bootstrap/bootstrap.component.html +14 -0
  35. package/demo-angular/src/app/views/bootstrap/bootstrap.component.scss +91 -0
  36. package/demo-angular/src/app/views/bootstrap/bootstrap.component.ts +23 -0
  37. package/demo-angular/src/app/views/buttons/buttons.component.html +289 -0
  38. package/demo-angular/src/app/views/buttons/buttons.component.scss +14 -0
  39. package/demo-angular/src/app/views/buttons/buttons.component.ts +155 -0
  40. package/demo-angular/src/app/views/cards/cards.component.html +156 -0
  41. package/demo-angular/src/app/views/cards/cards.component.html.backup +156 -0
  42. package/demo-angular/src/app/views/cards/cards.component.scss +11 -0
  43. package/demo-angular/src/app/views/cards/cards.component.ts +194 -0
  44. package/demo-angular/src/app/views/forms/forms.component.html +347 -0
  45. package/demo-angular/src/app/views/forms/forms.component.scss +3 -0
  46. package/demo-angular/src/app/views/forms/forms.component.ts +222 -0
  47. package/demo-angular/src/app/views/home/home.component.html +38 -0
  48. package/demo-angular/src/app/views/home/home.component.scss +35 -0
  49. package/demo-angular/src/app/views/home/home.component.ts +12 -0
  50. package/demo-angular/src/app/views/links/links.component.html +140 -0
  51. package/demo-angular/src/app/views/links/links.component.scss +60 -0
  52. package/demo-angular/src/app/views/links/links.component.ts +123 -0
  53. package/demo-angular/src/app/views/tables/tables.component.html +289 -0
  54. package/demo-angular/src/app/views/tables/tables.component.scss +3 -0
  55. package/demo-angular/src/app/views/tables/tables.component.ts +278 -0
  56. package/demo-angular/src/app/views/toasts/toasts.component.html +201 -0
  57. package/demo-angular/src/app/views/toasts/toasts.component.scss +0 -0
  58. package/demo-angular/src/app/views/toasts/toasts.component.ts +182 -0
  59. package/demo-angular/src/index.html +14 -0
  60. package/demo-angular/src/main.ts +6 -0
  61. package/demo-angular/src/styles.scss +4 -0
  62. package/demo-angular/tsconfig.app.json +15 -0
  63. package/demo-angular/tsconfig.json +33 -0
  64. package/demo-angular/tsconfig.spec.json +15 -0
  65. package/fonts/IBM_Plex_Sans_Arabic/OFL.txt +93 -93
  66. package/package.json +50 -47
  67. package/theme/_fonts.scss +58 -58
  68. package/theme/_functions.scss +11 -11
  69. package/theme/_variables.scss +50 -50
  70. package/theme/components/_accordion.scss +35 -35
  71. package/theme/components/_alerts.scss +11 -11
  72. package/theme/components/_badges.scss +8 -8
  73. package/theme/components/_breadcrumb.scss +13 -13
  74. package/theme/components/_buttons.scss +270 -270
  75. package/theme/components/_cards.scss +21 -21
  76. package/theme/components/_carousel.scss +33 -33
  77. package/theme/components/_content.scss +211 -211
  78. package/theme/components/_dropdowns.scss +45 -45
  79. package/theme/components/_forms-check.scss +124 -124
  80. package/theme/components/_forms-floating.scss +17 -17
  81. package/theme/components/_forms-inputs.scss +70 -70
  82. package/theme/components/_forms-range.scss +26 -26
  83. package/theme/components/_forms-select.scss +47 -47
  84. package/theme/components/_forms-switch.scss +63 -63
  85. package/theme/components/_forms-validation.scss +16 -16
  86. package/theme/components/_forms.scss +14 -14
  87. package/theme/components/_list-group.scss +26 -26
  88. package/theme/components/_modals.scss +42 -42
  89. package/theme/components/_navbar.scss +40 -40
  90. package/theme/components/_navigation.scss +151 -151
  91. package/theme/components/_offcanvas.scss +15 -15
  92. package/theme/components/_overlays.scss +112 -112
  93. package/theme/components/_pagination.scss +39 -39
  94. package/theme/components/_popovers.scss +26 -26
  95. package/theme/components/_progress.scss +11 -11
  96. package/theme/components/_spinners.scss +11 -11
  97. package/theme/components/_tables.scss +47 -47
  98. package/theme/components/_toasts.scss +16 -16
  99. package/theme/components/_tooltips.scss +15 -15
  100. package/theme/config/_base.scss +111 -111
  101. package/theme/config/_colors.scss +303 -303
  102. package/theme/config/_effects.scss +227 -227
  103. package/theme/config/_radius.scss +78 -78
  104. package/theme/config/_spacing.scss +155 -155
  105. package/theme/config/_typography.scss +118 -118
  106. package/theme/customizations/_alerts.scss +242 -242
  107. package/theme/customizations/_badges.scss +15 -15
  108. package/theme/customizations/_buttons.scss +209 -209
  109. package/theme/customizations/_cards.scss +117 -117
  110. package/theme/customizations/_forms-check.scss +278 -278
  111. package/theme/customizations/_forms-inputs.scss +9 -9
  112. package/theme/customizations/_forms-switch.scss +91 -91
  113. package/theme/customizations/_forms.scss +5 -5
  114. package/theme/customizations/_global.scss +25 -25
  115. package/theme/customizations/_links.scss +94 -46
  116. package/theme/customizations/_tables.scss +67 -67
  117. package/theme/customizations/_toasts.scss +221 -221
  118. package/theme/customizations/_utilities.scss +138 -138
  119. package/theme/dga-ui.scss +28 -28
@@ -1,209 +1,209 @@
1
- // Button Customizations - SDGA Custom Enhancements
2
-
3
- @use 'sass:color';
4
-
5
- // ============================================
6
- // BUTTON VARIANTS - Primary
7
- // ============================================
8
-
9
- .btn-primary {
10
- --#{$prefix}btn-color: #{$btn-primary-color};
11
- --#{$prefix}btn-bg: #{$btn-primary-bg};
12
- --#{$prefix}btn-border-color: #{$btn-primary-border-color};
13
- --#{$prefix}btn-hover-color: #{$btn-primary-hover-color};
14
- --#{$prefix}btn-hover-bg: #{$btn-primary-hover-bg};
15
- --#{$prefix}btn-hover-border-color: #{$btn-primary-hover-border-color};
16
- --#{$prefix}btn-focus-shadow-rgb: #{$btn-primary-focus-shadow-rgb};
17
- --#{$prefix}btn-active-color: #{$btn-primary-active-color};
18
- --#{$prefix}btn-active-bg: #{$btn-primary-active-bg};
19
- --#{$prefix}btn-active-border-color: #{$btn-primary-active-border-color};
20
- --#{$prefix}btn-disabled-color: #{$btn-primary-disabled-color};
21
- --#{$prefix}btn-disabled-bg: #{$btn-primary-disabled-bg};
22
- --#{$prefix}btn-disabled-border-color: #{$btn-primary-disabled-border-color};
23
- }
24
-
25
- .btn-outline-primary {
26
- --#{$prefix}btn-color: #{$btn-outline-primary-color};
27
- --#{$prefix}btn-border-color: #{$btn-outline-primary-border-color};
28
- --#{$prefix}btn-hover-color: #{$btn-outline-primary-hover-color};
29
- --#{$prefix}btn-hover-bg: #{$btn-outline-primary-hover-bg};
30
- --#{$prefix}btn-hover-border-color: #{$btn-outline-primary-hover-border-color};
31
- --#{$prefix}btn-focus-shadow-rgb: #{$btn-outline-primary-focus-shadow-rgb};
32
- --#{$prefix}btn-active-color: #{$btn-outline-primary-active-color};
33
- --#{$prefix}btn-active-bg: #{$btn-outline-primary-active-bg};
34
- --#{$prefix}btn-active-border-color: #{$btn-outline-primary-active-border-color};
35
- --#{$prefix}btn-disabled-color: #{$btn-outline-primary-disabled-color};
36
- --#{$prefix}btn-disabled-bg: #{$btn-outline-primary-disabled-bg};
37
- --#{$prefix}btn-disabled-border-color: #{$btn-outline-primary-disabled-border-color};
38
- }
39
-
40
- // ============================================
41
- // BUTTON VARIANTS - Secondary
42
- // ============================================
43
-
44
- .btn-secondary {
45
- --#{$prefix}btn-color: #{$btn-secondary-color};
46
- --#{$prefix}btn-bg: #{$btn-secondary-bg};
47
- --#{$prefix}btn-border-color: #{$btn-secondary-border-color};
48
- --#{$prefix}btn-hover-color: #{$btn-secondary-hover-color};
49
- --#{$prefix}btn-hover-bg: #{$btn-secondary-hover-bg};
50
- --#{$prefix}btn-hover-border-color: #{$btn-secondary-hover-border-color};
51
- --#{$prefix}btn-focus-shadow-rgb: #{$btn-secondary-focus-shadow-rgb};
52
- --#{$prefix}btn-active-color: #{$btn-secondary-active-color};
53
- --#{$prefix}btn-active-bg: #{$btn-secondary-active-bg};
54
- --#{$prefix}btn-active-border-color: #{$btn-secondary-active-border-color};
55
- --#{$prefix}btn-disabled-color: #{$btn-secondary-disabled-color};
56
- --#{$prefix}btn-disabled-bg: #{$btn-secondary-disabled-bg};
57
- --#{$prefix}btn-disabled-border-color: #{$btn-secondary-disabled-border-color};
58
- }
59
-
60
- .btn-outline-secondary {
61
- --#{$prefix}btn-color: #{$btn-outline-secondary-color};
62
- --#{$prefix}btn-border-color: #{$btn-outline-secondary-border-color};
63
- --#{$prefix}btn-hover-color: #{$btn-outline-secondary-hover-color};
64
- --#{$prefix}btn-hover-bg: #{$btn-outline-secondary-hover-bg};
65
- --#{$prefix}btn-hover-border-color: #{$btn-outline-secondary-hover-border-color};
66
- --#{$prefix}btn-focus-shadow-rgb: #{$btn-outline-secondary-focus-shadow-rgb};
67
- --#{$prefix}btn-active-color: #{$btn-outline-secondary-active-color};
68
- --#{$prefix}btn-active-bg: #{$btn-outline-secondary-active-bg};
69
- --#{$prefix}btn-active-border-color: #{$btn-outline-secondary-active-border-color};
70
- --#{$prefix}btn-disabled-color: #{$btn-outline-secondary-disabled-color};
71
- --#{$prefix}btn-disabled-bg: #{$btn-outline-secondary-disabled-bg};
72
- --#{$prefix}btn-disabled-border-color: #{$btn-outline-secondary-disabled-border-color};
73
- }
74
-
75
- // ============================================
76
- // BUTTON VARIANTS - Danger/Destructive
77
- // ============================================
78
-
79
- .btn-danger {
80
- --#{$prefix}btn-color: #{$btn-danger-color};
81
- --#{$prefix}btn-bg: #{$btn-danger-bg};
82
- --#{$prefix}btn-border-color: #{$btn-danger-border-color};
83
- --#{$prefix}btn-hover-color: #{$btn-danger-hover-color};
84
- --#{$prefix}btn-hover-bg: #{$btn-danger-hover-bg};
85
- --#{$prefix}btn-hover-border-color: #{$btn-danger-hover-border-color};
86
- --#{$prefix}btn-focus-shadow-rgb: #{$btn-danger-focus-shadow-rgb};
87
- --#{$prefix}btn-active-color: #{$btn-danger-active-color};
88
- --#{$prefix}btn-active-bg: #{$btn-danger-active-bg};
89
- --#{$prefix}btn-active-border-color: #{$btn-danger-active-border-color};
90
- --#{$prefix}btn-disabled-color: #{$btn-danger-disabled-color};
91
- --#{$prefix}btn-disabled-bg: #{$btn-danger-disabled-bg};
92
- --#{$prefix}btn-disabled-border-color: #{$btn-danger-disabled-border-color};
93
- }
94
-
95
- .btn-outline-danger {
96
- --#{$prefix}btn-color: #{$btn-outline-danger-color};
97
- --#{$prefix}btn-border-color: #{$btn-outline-danger-border-color};
98
- --#{$prefix}btn-hover-color: #{$btn-outline-danger-hover-color};
99
- --#{$prefix}btn-hover-bg: #{$btn-outline-danger-hover-bg};
100
- --#{$prefix}btn-hover-border-color: #{$btn-outline-danger-hover-border-color};
101
- --#{$prefix}btn-focus-shadow-rgb: #{$btn-outline-danger-focus-shadow-rgb};
102
- --#{$prefix}btn-active-color: #{$btn-outline-danger-active-color};
103
- --#{$prefix}btn-active-bg: #{$btn-outline-danger-active-bg};
104
- --#{$prefix}btn-active-border-color: #{$btn-outline-danger-active-border-color};
105
- --#{$prefix}btn-disabled-color: #{$btn-outline-danger-disabled-color};
106
- --#{$prefix}btn-disabled-bg: #{$btn-outline-danger-disabled-bg};
107
- --#{$prefix}btn-disabled-border-color: #{$btn-outline-danger-disabled-border-color};
108
- }
109
-
110
- // ============================================
111
- // BUTTON VARIANTS - Neutral
112
- // ============================================
113
-
114
- .btn-neutral {
115
- --#{$prefix}btn-color: #{$btn-neutral-color};
116
- --#{$prefix}btn-bg: #{$btn-neutral-bg};
117
- --#{$prefix}btn-border-color: #{$btn-neutral-border-color};
118
- --#{$prefix}btn-hover-color: #{$btn-neutral-hover-color};
119
- --#{$prefix}btn-hover-bg: #{$btn-neutral-hover-bg};
120
- --#{$prefix}btn-hover-border-color: #{$btn-neutral-hover-border-color};
121
- --#{$prefix}btn-focus-shadow-rgb: #{$btn-neutral-focus-shadow-rgb};
122
- --#{$prefix}btn-active-color: #{$btn-neutral-active-color};
123
- --#{$prefix}btn-active-bg: #{$btn-neutral-active-bg};
124
- --#{$prefix}btn-active-border-color: #{$btn-neutral-active-border-color};
125
- --#{$prefix}btn-disabled-color: #{$btn-neutral-disabled-color};
126
- --#{$prefix}btn-disabled-bg: #{$btn-neutral-disabled-bg};
127
- --#{$prefix}btn-disabled-border-color: #{$btn-neutral-disabled-border-color};
128
- }
129
-
130
- .btn-outline-neutral {
131
- --#{$prefix}btn-color: #{$btn-outline-neutral-color};
132
- --#{$prefix}btn-border-color: #{$btn-outline-neutral-border-color};
133
- --#{$prefix}btn-hover-color: #{$btn-outline-neutral-hover-color};
134
- --#{$prefix}btn-hover-bg: #{$btn-outline-neutral-hover-bg};
135
- --#{$prefix}btn-hover-border-color: #{$btn-outline-neutral-hover-border-color};
136
- --#{$prefix}btn-focus-shadow-rgb: #{$btn-outline-neutral-focus-shadow-rgb};
137
- --#{$prefix}btn-active-color: #{$btn-outline-neutral-active-color};
138
- --#{$prefix}btn-active-bg: #{$btn-outline-neutral-active-bg};
139
- --#{$prefix}btn-active-border-color: #{$btn-outline-neutral-active-border-color};
140
- --#{$prefix}btn-disabled-color: #{$btn-outline-neutral-disabled-color};
141
- --#{$prefix}btn-disabled-bg: #{$btn-outline-neutral-disabled-bg};
142
- --#{$prefix}btn-disabled-border-color: #{$btn-outline-neutral-disabled-border-color};
143
- }
144
-
145
- .btn-subtle {
146
- --#{$prefix}btn-color: #{$btn-subtle-color};
147
- --#{$prefix}btn-border-color: #{$btn-subtle-border-color};
148
- --#{$prefix}btn-hover-color: #{$btn-subtle-hover-color};
149
- --#{$prefix}btn-hover-bg: #{$btn-subtle-hover-bg};
150
- --#{$prefix}btn-hover-border-color: #{$btn-subtle-hover-border-color};
151
- --#{$prefix}btn-focus-shadow-rgb: #{$btn-subtle-focus-shadow-rgb};
152
- --#{$prefix}btn-active-color: #{$btn-subtle-active-color};
153
- --#{$prefix}btn-active-bg: #{$btn-subtle-active-bg};
154
- --#{$prefix}btn-active-border-color: #{$btn-subtle-active-border-color};
155
- --#{$prefix}btn-disabled-color: #{$btn-subtle-disabled-color};
156
- --#{$prefix}btn-disabled-bg: #{$btn-subtle-disabled-bg};
157
- --#{$prefix}btn-disabled-border-color: #{$btn-subtle-disabled-border-color};
158
- }
159
-
160
- // ============================================
161
- // CUSTOM BUTTON SIZES
162
- // ============================================
163
-
164
- .btn-xs {
165
- padding: 0.25rem 0.5rem;
166
- font-size: 0.75rem;
167
- line-height: 1.4;
168
- border-radius: $radius-sm;
169
- }
170
-
171
- // ============================================
172
- // BUTTON ICON UTILITIES
173
- // ============================================
174
- // Icon-only buttons (square buttons with icon)
175
- .btn-icon {
176
- display: inline-flex;
177
- align-items: center;
178
- gap: .25rem;
179
-
180
- &.btn-lg {
181
- padding: 0.75rem;
182
- }
183
-
184
- &.btn-sm {
185
- padding: 0.375rem;
186
- }
187
-
188
- &.btn-xs {
189
- padding: 0.25rem;
190
- }
191
- }
192
-
193
- // ============================================
194
- // Dropdown
195
- // ============================================
196
-
197
- .dropdown-toggle{
198
- display: inline-flex;
199
- align-items: center;
200
- gap: .25rem;
201
- }
202
-
203
- .dropdown-menu{
204
- text-align: $body-text-align;
205
-
206
- [dir="rtl"] & {
207
- inset: 0 0 auto auto !important;
208
- }
209
- }
1
+ // Button Customizations - SDGA Custom Enhancements
2
+
3
+ @use 'sass:color';
4
+
5
+ // ============================================
6
+ // BUTTON VARIANTS - Primary
7
+ // ============================================
8
+
9
+ .btn-primary {
10
+ --#{$prefix}btn-color: #{$btn-primary-color};
11
+ --#{$prefix}btn-bg: #{$btn-primary-bg};
12
+ --#{$prefix}btn-border-color: #{$btn-primary-border-color};
13
+ --#{$prefix}btn-hover-color: #{$btn-primary-hover-color};
14
+ --#{$prefix}btn-hover-bg: #{$btn-primary-hover-bg};
15
+ --#{$prefix}btn-hover-border-color: #{$btn-primary-hover-border-color};
16
+ --#{$prefix}btn-focus-shadow-rgb: #{$btn-primary-focus-shadow-rgb};
17
+ --#{$prefix}btn-active-color: #{$btn-primary-active-color};
18
+ --#{$prefix}btn-active-bg: #{$btn-primary-active-bg};
19
+ --#{$prefix}btn-active-border-color: #{$btn-primary-active-border-color};
20
+ --#{$prefix}btn-disabled-color: #{$btn-primary-disabled-color};
21
+ --#{$prefix}btn-disabled-bg: #{$btn-primary-disabled-bg};
22
+ --#{$prefix}btn-disabled-border-color: #{$btn-primary-disabled-border-color};
23
+ }
24
+
25
+ .btn-outline-primary {
26
+ --#{$prefix}btn-color: #{$btn-outline-primary-color};
27
+ --#{$prefix}btn-border-color: #{$btn-outline-primary-border-color};
28
+ --#{$prefix}btn-hover-color: #{$btn-outline-primary-hover-color};
29
+ --#{$prefix}btn-hover-bg: #{$btn-outline-primary-hover-bg};
30
+ --#{$prefix}btn-hover-border-color: #{$btn-outline-primary-hover-border-color};
31
+ --#{$prefix}btn-focus-shadow-rgb: #{$btn-outline-primary-focus-shadow-rgb};
32
+ --#{$prefix}btn-active-color: #{$btn-outline-primary-active-color};
33
+ --#{$prefix}btn-active-bg: #{$btn-outline-primary-active-bg};
34
+ --#{$prefix}btn-active-border-color: #{$btn-outline-primary-active-border-color};
35
+ --#{$prefix}btn-disabled-color: #{$btn-outline-primary-disabled-color};
36
+ --#{$prefix}btn-disabled-bg: #{$btn-outline-primary-disabled-bg};
37
+ --#{$prefix}btn-disabled-border-color: #{$btn-outline-primary-disabled-border-color};
38
+ }
39
+
40
+ // ============================================
41
+ // BUTTON VARIANTS - Secondary
42
+ // ============================================
43
+
44
+ .btn-secondary {
45
+ --#{$prefix}btn-color: #{$btn-secondary-color};
46
+ --#{$prefix}btn-bg: #{$btn-secondary-bg};
47
+ --#{$prefix}btn-border-color: #{$btn-secondary-border-color};
48
+ --#{$prefix}btn-hover-color: #{$btn-secondary-hover-color};
49
+ --#{$prefix}btn-hover-bg: #{$btn-secondary-hover-bg};
50
+ --#{$prefix}btn-hover-border-color: #{$btn-secondary-hover-border-color};
51
+ --#{$prefix}btn-focus-shadow-rgb: #{$btn-secondary-focus-shadow-rgb};
52
+ --#{$prefix}btn-active-color: #{$btn-secondary-active-color};
53
+ --#{$prefix}btn-active-bg: #{$btn-secondary-active-bg};
54
+ --#{$prefix}btn-active-border-color: #{$btn-secondary-active-border-color};
55
+ --#{$prefix}btn-disabled-color: #{$btn-secondary-disabled-color};
56
+ --#{$prefix}btn-disabled-bg: #{$btn-secondary-disabled-bg};
57
+ --#{$prefix}btn-disabled-border-color: #{$btn-secondary-disabled-border-color};
58
+ }
59
+
60
+ .btn-outline-secondary {
61
+ --#{$prefix}btn-color: #{$btn-outline-secondary-color};
62
+ --#{$prefix}btn-border-color: #{$btn-outline-secondary-border-color};
63
+ --#{$prefix}btn-hover-color: #{$btn-outline-secondary-hover-color};
64
+ --#{$prefix}btn-hover-bg: #{$btn-outline-secondary-hover-bg};
65
+ --#{$prefix}btn-hover-border-color: #{$btn-outline-secondary-hover-border-color};
66
+ --#{$prefix}btn-focus-shadow-rgb: #{$btn-outline-secondary-focus-shadow-rgb};
67
+ --#{$prefix}btn-active-color: #{$btn-outline-secondary-active-color};
68
+ --#{$prefix}btn-active-bg: #{$btn-outline-secondary-active-bg};
69
+ --#{$prefix}btn-active-border-color: #{$btn-outline-secondary-active-border-color};
70
+ --#{$prefix}btn-disabled-color: #{$btn-outline-secondary-disabled-color};
71
+ --#{$prefix}btn-disabled-bg: #{$btn-outline-secondary-disabled-bg};
72
+ --#{$prefix}btn-disabled-border-color: #{$btn-outline-secondary-disabled-border-color};
73
+ }
74
+
75
+ // ============================================
76
+ // BUTTON VARIANTS - Danger/Destructive
77
+ // ============================================
78
+
79
+ .btn-danger {
80
+ --#{$prefix}btn-color: #{$btn-danger-color};
81
+ --#{$prefix}btn-bg: #{$btn-danger-bg};
82
+ --#{$prefix}btn-border-color: #{$btn-danger-border-color};
83
+ --#{$prefix}btn-hover-color: #{$btn-danger-hover-color};
84
+ --#{$prefix}btn-hover-bg: #{$btn-danger-hover-bg};
85
+ --#{$prefix}btn-hover-border-color: #{$btn-danger-hover-border-color};
86
+ --#{$prefix}btn-focus-shadow-rgb: #{$btn-danger-focus-shadow-rgb};
87
+ --#{$prefix}btn-active-color: #{$btn-danger-active-color};
88
+ --#{$prefix}btn-active-bg: #{$btn-danger-active-bg};
89
+ --#{$prefix}btn-active-border-color: #{$btn-danger-active-border-color};
90
+ --#{$prefix}btn-disabled-color: #{$btn-danger-disabled-color};
91
+ --#{$prefix}btn-disabled-bg: #{$btn-danger-disabled-bg};
92
+ --#{$prefix}btn-disabled-border-color: #{$btn-danger-disabled-border-color};
93
+ }
94
+
95
+ .btn-outline-danger {
96
+ --#{$prefix}btn-color: #{$btn-outline-danger-color};
97
+ --#{$prefix}btn-border-color: #{$btn-outline-danger-border-color};
98
+ --#{$prefix}btn-hover-color: #{$btn-outline-danger-hover-color};
99
+ --#{$prefix}btn-hover-bg: #{$btn-outline-danger-hover-bg};
100
+ --#{$prefix}btn-hover-border-color: #{$btn-outline-danger-hover-border-color};
101
+ --#{$prefix}btn-focus-shadow-rgb: #{$btn-outline-danger-focus-shadow-rgb};
102
+ --#{$prefix}btn-active-color: #{$btn-outline-danger-active-color};
103
+ --#{$prefix}btn-active-bg: #{$btn-outline-danger-active-bg};
104
+ --#{$prefix}btn-active-border-color: #{$btn-outline-danger-active-border-color};
105
+ --#{$prefix}btn-disabled-color: #{$btn-outline-danger-disabled-color};
106
+ --#{$prefix}btn-disabled-bg: #{$btn-outline-danger-disabled-bg};
107
+ --#{$prefix}btn-disabled-border-color: #{$btn-outline-danger-disabled-border-color};
108
+ }
109
+
110
+ // ============================================
111
+ // BUTTON VARIANTS - Neutral
112
+ // ============================================
113
+
114
+ .btn-neutral {
115
+ --#{$prefix}btn-color: #{$btn-neutral-color};
116
+ --#{$prefix}btn-bg: #{$btn-neutral-bg};
117
+ --#{$prefix}btn-border-color: #{$btn-neutral-border-color};
118
+ --#{$prefix}btn-hover-color: #{$btn-neutral-hover-color};
119
+ --#{$prefix}btn-hover-bg: #{$btn-neutral-hover-bg};
120
+ --#{$prefix}btn-hover-border-color: #{$btn-neutral-hover-border-color};
121
+ --#{$prefix}btn-focus-shadow-rgb: #{$btn-neutral-focus-shadow-rgb};
122
+ --#{$prefix}btn-active-color: #{$btn-neutral-active-color};
123
+ --#{$prefix}btn-active-bg: #{$btn-neutral-active-bg};
124
+ --#{$prefix}btn-active-border-color: #{$btn-neutral-active-border-color};
125
+ --#{$prefix}btn-disabled-color: #{$btn-neutral-disabled-color};
126
+ --#{$prefix}btn-disabled-bg: #{$btn-neutral-disabled-bg};
127
+ --#{$prefix}btn-disabled-border-color: #{$btn-neutral-disabled-border-color};
128
+ }
129
+
130
+ .btn-outline-neutral {
131
+ --#{$prefix}btn-color: #{$btn-outline-neutral-color};
132
+ --#{$prefix}btn-border-color: #{$btn-outline-neutral-border-color};
133
+ --#{$prefix}btn-hover-color: #{$btn-outline-neutral-hover-color};
134
+ --#{$prefix}btn-hover-bg: #{$btn-outline-neutral-hover-bg};
135
+ --#{$prefix}btn-hover-border-color: #{$btn-outline-neutral-hover-border-color};
136
+ --#{$prefix}btn-focus-shadow-rgb: #{$btn-outline-neutral-focus-shadow-rgb};
137
+ --#{$prefix}btn-active-color: #{$btn-outline-neutral-active-color};
138
+ --#{$prefix}btn-active-bg: #{$btn-outline-neutral-active-bg};
139
+ --#{$prefix}btn-active-border-color: #{$btn-outline-neutral-active-border-color};
140
+ --#{$prefix}btn-disabled-color: #{$btn-outline-neutral-disabled-color};
141
+ --#{$prefix}btn-disabled-bg: #{$btn-outline-neutral-disabled-bg};
142
+ --#{$prefix}btn-disabled-border-color: #{$btn-outline-neutral-disabled-border-color};
143
+ }
144
+
145
+ .btn-subtle {
146
+ --#{$prefix}btn-color: #{$btn-subtle-color};
147
+ --#{$prefix}btn-border-color: #{$btn-subtle-border-color};
148
+ --#{$prefix}btn-hover-color: #{$btn-subtle-hover-color};
149
+ --#{$prefix}btn-hover-bg: #{$btn-subtle-hover-bg};
150
+ --#{$prefix}btn-hover-border-color: #{$btn-subtle-hover-border-color};
151
+ --#{$prefix}btn-focus-shadow-rgb: #{$btn-subtle-focus-shadow-rgb};
152
+ --#{$prefix}btn-active-color: #{$btn-subtle-active-color};
153
+ --#{$prefix}btn-active-bg: #{$btn-subtle-active-bg};
154
+ --#{$prefix}btn-active-border-color: #{$btn-subtle-active-border-color};
155
+ --#{$prefix}btn-disabled-color: #{$btn-subtle-disabled-color};
156
+ --#{$prefix}btn-disabled-bg: #{$btn-subtle-disabled-bg};
157
+ --#{$prefix}btn-disabled-border-color: #{$btn-subtle-disabled-border-color};
158
+ }
159
+
160
+ // ============================================
161
+ // CUSTOM BUTTON SIZES
162
+ // ============================================
163
+
164
+ .btn-xs {
165
+ padding: 0.25rem 0.5rem;
166
+ font-size: 0.75rem;
167
+ line-height: 1.4;
168
+ border-radius: $radius-sm;
169
+ }
170
+
171
+ // ============================================
172
+ // BUTTON ICON UTILITIES
173
+ // ============================================
174
+ // Icon-only buttons (square buttons with icon)
175
+ .btn-icon {
176
+ display: inline-flex;
177
+ align-items: center;
178
+ gap: .25rem;
179
+
180
+ &.btn-lg {
181
+ padding: 0.75rem;
182
+ }
183
+
184
+ &.btn-sm {
185
+ padding: 0.375rem;
186
+ }
187
+
188
+ &.btn-xs {
189
+ padding: 0.25rem;
190
+ }
191
+ }
192
+
193
+ // ============================================
194
+ // Dropdown
195
+ // ============================================
196
+
197
+ .dropdown-toggle{
198
+ display: inline-flex;
199
+ align-items: center;
200
+ gap: .25rem;
201
+ }
202
+
203
+ .dropdown-menu{
204
+ text-align: $body-text-align;
205
+
206
+ [dir="rtl"] & {
207
+ inset: 0 0 auto auto !important;
208
+ }
209
+ }
@@ -1,117 +1,117 @@
1
- // Card Customizations - SDGA Custom Enhancements
2
-
3
- .card {
4
- transition: transform 0.3s ease;
5
- width: 100%;
6
-
7
- &:focus-visible {
8
- border-radius: $radius-lg !important;
9
- }
10
-
11
- &.expanded {
12
- .card-expanded-icon {
13
- transform: rotate(180deg);
14
- }
15
- }
16
- .card-expanded-content {
17
- animation: slideDown 0.3s ease-out;
18
- border-top: 1px solid #e5e7eb;
19
- padding-top: 1rem;
20
- }
21
-
22
- @keyframes slideDown {
23
- from {
24
- opacity: 0;
25
- transform: translateY(-10px) scaleY(0);
26
- transform-origin: top;
27
- }
28
- to {
29
- opacity: 1;
30
- transform: translateY(0) scaleY(1);
31
- transform-origin: top;
32
- }
33
- }
34
-
35
- .card-title {
36
- margin-bottom: 1.5rem;
37
- display: flex;
38
- align-items: center;
39
- justify-content: space-between;
40
- }
41
-
42
-
43
- &.disabled {
44
- background-color: $gray-200;
45
- cursor: not-allowed;
46
-
47
- .card-title-icon {
48
- &::after {
49
- background-color: $gray-100;
50
- }
51
- color: $gray-400;
52
- }
53
-
54
- }
55
-
56
- .card-title-icon {
57
- &::after {
58
- content: '';
59
- width: 3rem;
60
- height: 3rem;
61
- border-radius: $radius-full;
62
- background-color: $primary-50;
63
- position: absolute;
64
- z-index: -1;
65
- }
66
- width: 3rem;
67
- height: 3rem;
68
- position: relative;
69
- display: inline-flex;
70
- align-items: center;
71
- justify-content: center;
72
- color: $success-700;
73
- z-index: 1;
74
- }
75
-
76
- .card-title-checked {
77
- margin-inline-start: auto;
78
- margin-inline-end: 4%;
79
- margin-top: 4%;
80
- margin-bottom: 4%;
81
- }
82
-
83
- .card-text {
84
- margin: 0;
85
- }
86
-
87
- .card-footer {
88
- margin-top: auto;
89
- display: flex;
90
- gap: 1rem;
91
- align-items: center;
92
- justify-content: flex-start;
93
-
94
- // Footer variants
95
- &.card-footer-center {
96
- justify-content: center;
97
- }
98
-
99
- &.card-footer-start {
100
- justify-content: flex-start;
101
- }
102
-
103
- &.card-footer-between {
104
- justify-content: space-between;
105
- }
106
-
107
- .card-expanded-icon {
108
- margin-inline-start: auto;
109
- cursor: pointer;
110
- transition: transform 0.3s ease;
111
-
112
- &:hover {
113
- opacity: 0.7;
114
- }
115
- }
116
- }
117
- }
1
+ // Card Customizations - SDGA Custom Enhancements
2
+
3
+ .card {
4
+ transition: transform 0.3s ease;
5
+ width: 100%;
6
+
7
+ &:focus-visible {
8
+ border-radius: $radius-lg !important;
9
+ }
10
+
11
+ &.expanded {
12
+ .card-expanded-icon {
13
+ transform: rotate(180deg);
14
+ }
15
+ }
16
+ .card-expanded-content {
17
+ animation: slideDown 0.3s ease-out;
18
+ border-top: 1px solid #e5e7eb;
19
+ padding-top: 1rem;
20
+ }
21
+
22
+ @keyframes slideDown {
23
+ from {
24
+ opacity: 0;
25
+ transform: translateY(-10px) scaleY(0);
26
+ transform-origin: top;
27
+ }
28
+ to {
29
+ opacity: 1;
30
+ transform: translateY(0) scaleY(1);
31
+ transform-origin: top;
32
+ }
33
+ }
34
+
35
+ .card-title {
36
+ margin-bottom: 1.5rem;
37
+ display: flex;
38
+ align-items: center;
39
+ justify-content: space-between;
40
+ }
41
+
42
+
43
+ &.disabled {
44
+ background-color: $gray-200;
45
+ cursor: not-allowed;
46
+
47
+ .card-title-icon {
48
+ &::after {
49
+ background-color: $gray-100;
50
+ }
51
+ color: $gray-400;
52
+ }
53
+
54
+ }
55
+
56
+ .card-title-icon {
57
+ &::after {
58
+ content: '';
59
+ width: 3rem;
60
+ height: 3rem;
61
+ border-radius: $radius-full;
62
+ background-color: $primary-50;
63
+ position: absolute;
64
+ z-index: -1;
65
+ }
66
+ width: 3rem;
67
+ height: 3rem;
68
+ position: relative;
69
+ display: inline-flex;
70
+ align-items: center;
71
+ justify-content: center;
72
+ color: $success-700;
73
+ z-index: 1;
74
+ }
75
+
76
+ .card-title-checked {
77
+ margin-inline-start: auto;
78
+ margin-inline-end: 1rem;
79
+ margin-top: 1rem;
80
+ margin-bottom: 1rem;
81
+ }
82
+
83
+ .card-text {
84
+ margin: 0;
85
+ }
86
+
87
+ .card-footer {
88
+ margin-top: auto;
89
+ display: flex;
90
+ gap: 1rem;
91
+ align-items: center;
92
+ justify-content: flex-start;
93
+
94
+ // Footer variants
95
+ &.card-footer-center {
96
+ justify-content: center;
97
+ }
98
+
99
+ &.card-footer-start {
100
+ justify-content: flex-start;
101
+ }
102
+
103
+ &.card-footer-between {
104
+ justify-content: space-between;
105
+ }
106
+
107
+ .card-expanded-icon {
108
+ margin-inline-start: auto;
109
+ cursor: pointer;
110
+ transition: transform 0.3s ease;
111
+
112
+ &:hover {
113
+ opacity: 0.7;
114
+ }
115
+ }
116
+ }
117
+ }