platformscode-new-react 0.0.2 → 0.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 (71) hide show
  1. package/dist/assets/fonts/IBM-Plex-Sans-Arabic/IBMPlexSansArabic-Bold.woff +0 -0
  2. package/dist/assets/fonts/IBM-Plex-Sans-Arabic/IBMPlexSansArabic-Bold.woff2 +0 -0
  3. package/dist/assets/fonts/IBM-Plex-Sans-Arabic/IBMPlexSansArabic-Medium.woff +0 -0
  4. package/dist/assets/fonts/IBM-Plex-Sans-Arabic/IBMPlexSansArabic-Medium.woff2 +0 -0
  5. package/dist/assets/fonts/IBM-Plex-Sans-Arabic/IBMPlexSansArabic-Regular.woff +0 -0
  6. package/dist/assets/fonts/IBM-Plex-Sans-Arabic/IBMPlexSansArabic-Regular.woff2 +0 -0
  7. package/dist/assets/fonts/IBM-Plex-Sans-Arabic/IBMPlexSansArabic-SemiBold.woff +0 -0
  8. package/dist/assets/fonts/IBM-Plex-Sans-Arabic/IBMPlexSansArabic-SemiBold.woff2 +0 -0
  9. package/dist/components.d.ts +12 -1
  10. package/dist/index.cjs.js +68346 -1161
  11. package/dist/index.js +69302 -1852
  12. package/dist/style.css +1 -0
  13. package/package.json +5 -3
  14. package/src/assets/styles/abstracts/_functions.scss +3 -0
  15. package/src/assets/styles/abstracts/_mixins.scss +60 -0
  16. package/src/assets/styles/abstracts/_variables.scss +46 -0
  17. package/src/assets/styles/abstracts/variables/_colors.scss +145 -0
  18. package/src/assets/styles/abstracts/variables/_radius.scss +19 -0
  19. package/src/assets/styles/abstracts/variables/_shadows.scss +9 -0
  20. package/src/assets/styles/abstracts/variables/_spacing.scss +35 -0
  21. package/src/assets/styles/abstracts/variables/_widths.scss +306 -0
  22. package/src/assets/styles/base/_animation.scss +0 -0
  23. package/src/assets/styles/base/_base.scss +29 -0
  24. package/src/assets/styles/base/_typography.scss +73 -0
  25. package/src/assets/styles/base/_utilities.scss +260 -0
  26. package/src/assets/styles/components/_accordions.scss +184 -0
  27. package/src/assets/styles/components/_avatar.scss +87 -0
  28. package/src/assets/styles/components/_breadcrumbs.scss +63 -0
  29. package/src/assets/styles/components/_btns.scss +815 -0
  30. package/src/assets/styles/components/_card.scss +91 -0
  31. package/src/assets/styles/components/_checkbox.scss +241 -0
  32. package/src/assets/styles/components/_content-switcher.scss +108 -0
  33. package/src/assets/styles/components/_data-table.scss +155 -0
  34. package/src/assets/styles/components/_date-picker.scss +257 -0
  35. package/src/assets/styles/components/_dropdown.scss +479 -0
  36. package/src/assets/styles/components/_featured-icons.scss +127 -0
  37. package/src/assets/styles/components/_file-upload.scss +164 -0
  38. package/src/assets/styles/components/_icons.scss +3 -0
  39. package/src/assets/styles/components/_inline-alert.scss +166 -0
  40. package/src/assets/styles/components/_input.scss +473 -0
  41. package/src/assets/styles/components/_links.scss +130 -0
  42. package/src/assets/styles/components/_list.scss +130 -0
  43. package/src/assets/styles/components/_loading.scss +135 -0
  44. package/src/assets/styles/components/_menu.scss +85 -0
  45. package/src/assets/styles/components/_modals.scss +108 -0
  46. package/src/assets/styles/components/_notification-toast.scss +177 -0
  47. package/src/assets/styles/components/_notifications.scss +139 -0
  48. package/src/assets/styles/components/_pagination.scss +79 -0
  49. package/src/assets/styles/components/_progress-indicator.scss +230 -0
  50. package/src/assets/styles/components/_radio.scss +183 -0
  51. package/src/assets/styles/components/_rating.scss +77 -0
  52. package/src/assets/styles/components/_shadows.scss +23 -0
  53. package/src/assets/styles/components/_structured-list.scss +95 -0
  54. package/src/assets/styles/components/_switch.scss +192 -0
  55. package/src/assets/styles/components/_tabs.scss +231 -0
  56. package/src/assets/styles/components/_tag.scss +191 -0
  57. package/src/assets/styles/components/_textarea.scss +294 -0
  58. package/src/assets/styles/components/_tooltip.scss +257 -0
  59. package/src/assets/styles/layout/_footer.scss +186 -0
  60. package/src/assets/styles/layout/_grid.scss +73 -0
  61. package/src/assets/styles/layout/_header.scss +0 -0
  62. package/src/assets/styles/layout/_layouts.scss +33 -0
  63. package/src/assets/styles/layout/_nav-header.scss +449 -0
  64. package/src/assets/styles/layout/_sidepanel.scss +340 -0
  65. package/src/assets/styles/layout/_table-of-content.scss +179 -0
  66. package/src/assets/styles/main.scss +54 -0
  67. package/src/assets/styles/themes/_dark.scss +416 -0
  68. package/src/assets/styles/themes/_light.scss +404 -0
  69. package/src/components.ts +45 -1
  70. package/src/index.ts +1 -0
  71. package/vite.config.ts +21 -1
@@ -0,0 +1,192 @@
1
+ .switch {
2
+ // margin: var(--spacing-md);
3
+ display: flex;
4
+ gap: var(--spacing-xl);
5
+ padding: var(--spacing-none);
6
+ width: fit-content;
7
+ padding: 3px;
8
+ cursor: pointer;
9
+
10
+ &-main {
11
+ &__content {
12
+ &.disabled {
13
+ & > .switch__label,
14
+ & > div > .switch__label,
15
+ & > div > .switch__helper-text {
16
+ color: var(--colors-border-disabled);
17
+ }
18
+ }
19
+ }
20
+ }
21
+
22
+ .switch-wrapper {
23
+ position: relative;
24
+ display: inline-block;
25
+ min-width: 48px;
26
+ height: 24px;
27
+
28
+ input {
29
+ opacity: 0;
30
+ width: 0;
31
+ height: 0;
32
+ }
33
+
34
+ .slider {
35
+ position: absolute;
36
+ cursor: pointer;
37
+ top: 0;
38
+ left: 0;
39
+ right: 0;
40
+ bottom: 0;
41
+ background-color: #ccc;
42
+ -webkit-transition: 0.4s;
43
+ transition: 0.4s;
44
+ border-radius: 34px;
45
+
46
+ &:before {
47
+ position: absolute;
48
+ content: "";
49
+ height: 16px;
50
+ width: 16px;
51
+ left: 4px;
52
+ bottom: 4px;
53
+ background-color: white;
54
+ -webkit-transition: 0.4s;
55
+ transition: 0.4s;
56
+ border-radius: 50%;
57
+ }
58
+ }
59
+
60
+ input:checked + .slider {
61
+ background-color: var(--colors-brand-600);
62
+ }
63
+
64
+ input:focus + .slider {
65
+ box-shadow: 0 0 1px var(--colors-brand-600);
66
+ }
67
+
68
+ input:checked + .slider:before {
69
+ -webkit-transform: translateX(16px);
70
+ -ms-transform: translateX(16px);
71
+ transform: translateX(24px);
72
+ }
73
+
74
+ .slider.round {
75
+ border-radius: 34px;
76
+ }
77
+
78
+ .slider.round:before {
79
+ border-radius: 50%;
80
+ }
81
+ }
82
+
83
+ &-icon {
84
+ display: none !important;
85
+ color: var(--colors-base-white);
86
+ font-size: 18px !important;
87
+ font-weight: bolder !important;
88
+ }
89
+
90
+ &.focus {
91
+ border-radius: var(--radius-sm);
92
+ outline: 2px solid var(--colors-base-black);
93
+ }
94
+
95
+ &-main {
96
+ &,
97
+ &__content {
98
+ display: flex;
99
+ column-gap: var(--spacing-xl);
100
+ }
101
+
102
+ flex-direction: column;
103
+ gap: var(--spacing-xs);
104
+ max-width: 382px;
105
+ // min-width: 160px;
106
+ }
107
+
108
+ & input {
109
+ position: absolute;
110
+ opacity: 0;
111
+ cursor: pointer;
112
+ height: 0;
113
+ width: 0;
114
+ }
115
+
116
+ &__label {
117
+ @extend .text-md-medium;
118
+ }
119
+
120
+ &__helper-text {
121
+ color: var(--colors-text-tertiary);
122
+ @extend .text-sm-regular;
123
+ margin-block: var(--spacing-xs);
124
+ }
125
+
126
+ &__warning {
127
+ display: flex;
128
+ align-items: center;
129
+ gap: var(--spacing-xl);
130
+ margin-left: var(--spacing-3xl);
131
+
132
+ color: var(--colors-text-error-primary);
133
+ @extend .text-sm-medium;
134
+
135
+ &-icon {
136
+ width: 24px;
137
+ }
138
+ }
139
+
140
+ &--brand {
141
+ & input:checked {
142
+ & ~ .switch__label,
143
+ & ~ div > .switch__label {
144
+ color: var(--colors-text-brand-secondary);
145
+ }
146
+ }
147
+
148
+ .switch-main {
149
+ &__content {
150
+ &.disabled {
151
+ & .switch-wrapper > .slider--active {
152
+ background-color: var(--colors-brand-200);
153
+ }
154
+
155
+ & > .switch__label,
156
+ & > div > .switch__label,
157
+ & > div > .switch__helper-text {
158
+ color: var(--colors-border-disabled);
159
+ }
160
+ }
161
+ }
162
+ }
163
+ }
164
+
165
+ &--readonly {
166
+ & .switch-slider {
167
+ background-color: transparent !important;
168
+
169
+ .switch-icon {
170
+ color: var(--colors-gray-neutral-600);
171
+ }
172
+ }
173
+ }
174
+ }
175
+
176
+ [dir="rtl"] .switch .switch-wrapper {
177
+ .slider {
178
+ &:before {
179
+ left: auto;
180
+ right: 4px;
181
+ }
182
+ }
183
+
184
+ input:checked + .slider:before {
185
+ transform: translateX(-24px); // Adjust the translation value for RTL
186
+ }
187
+ }
188
+
189
+ [dir="rtl"] .switch .switch__warning {
190
+ margin-left: 0;
191
+ margin-right: var(--spacing-3xl);
192
+ }
@@ -0,0 +1,231 @@
1
+ .tabs {
2
+ &-list {
3
+ list-style: none;
4
+ padding: 0;
5
+ margin: 0;
6
+
7
+ &--horizontal {
8
+ display: inline-flex;
9
+ flex-direction: row;
10
+ align-items: center;
11
+ gap: 3px;
12
+ position: relative;
13
+ width: 100%;
14
+
15
+ &::-webkit-scrollbar {
16
+ height: 5px;
17
+ }
18
+
19
+ &::-webkit-scrollbar-track {
20
+ background-color: transparent;
21
+ padding: 1px;
22
+ }
23
+
24
+ &::-webkit-scrollbar-thumb {
25
+ height: 5px;
26
+ border-radius: 10px;
27
+ border: 1px solid transparent;
28
+ background-color: #ccc;
29
+ background-clip: content-box;
30
+ mix-blend-mode: multiply;
31
+ }
32
+
33
+ &.tabs-list--divider {
34
+ &::after {
35
+ content: "";
36
+ position: absolute;
37
+ bottom: 0;
38
+ left: 0;
39
+ z-index: 0;
40
+ height: 3px;
41
+ width: 100%;
42
+ border-radius: var(--radius-full);
43
+ background-color: var(--colors-gray-neutral-300);
44
+ }
45
+ }
46
+
47
+ &.flush {
48
+ // & .tabs-list__item:first-child {}
49
+ }
50
+ }
51
+
52
+ &--vertical {
53
+ display: inline-flex;
54
+ align-items: start;
55
+ flex-direction: column;
56
+ gap: 3px;
57
+
58
+ & li {
59
+ width: 100%;
60
+ }
61
+
62
+ & .tabs-list__item {
63
+ justify-content: start !important;
64
+ }
65
+ }
66
+
67
+ &__item {
68
+ display: flex;
69
+ padding: var(--spacing-lg) var(--spacing-xl);
70
+ justify-content: center;
71
+ align-items: center;
72
+ gap: var(--spacing-xs);
73
+ border-radius: var(--radius-xs);
74
+ color: var(--colors-text-secondary);
75
+ position: relative;
76
+ white-space: nowrap;
77
+ cursor: pointer;
78
+
79
+ &:hover {
80
+ background-color: var(--colors-gray-neutral-100);
81
+
82
+ & .tabs-list__label {
83
+ color: var(--colors-text-primary);
84
+ }
85
+ }
86
+
87
+ &:hover::after,
88
+ &:active::after,
89
+ &--active::after {
90
+ content: "";
91
+ display: block;
92
+ position: absolute;
93
+ bottom: 1px;
94
+ left: 50%;
95
+ transform: translateX(-50%);
96
+ width: calc(100% - var(--spacing-xl) * 2);
97
+ height: 3px;
98
+ border-radius: var(--radius-full);
99
+ background-color: var(--colors-fg-quinary-400);
100
+ z-index: 1;
101
+ }
102
+
103
+ &:focus {
104
+ outline: 2px solid var(--colors-base-black);
105
+ position: relative;
106
+ color: var(--colors-text-secondary);
107
+
108
+ &::before {
109
+ content: "";
110
+ display: block;
111
+ background-color: transparent;
112
+ width: 100%;
113
+ height: 100%;
114
+ position: absolute;
115
+ top: 0;
116
+ left: 0;
117
+ z-index: 1;
118
+ border: 1px solid var(--colors-base-white);
119
+ border-radius: var(--radius-md);
120
+ }
121
+ }
122
+
123
+ &:active {
124
+ background: var(--colors-gray-neutral-300);
125
+ outline: none;
126
+
127
+ & .tabs-list__icon {
128
+ color: var(--colors-text-primary);
129
+ }
130
+
131
+ & .tabs-list__label {
132
+ color: var(--colors-text-primary);
133
+ }
134
+
135
+ &::after {
136
+ background-color: var(--colors-text-primary);
137
+ }
138
+
139
+ &::before {
140
+ display: none;
141
+ }
142
+ }
143
+
144
+ &--active {
145
+ & .tabs-list__label {
146
+ @extend .text-sm-medium;
147
+ }
148
+
149
+ & .tabs-list__icon {
150
+ color: var(--colors-brand-600);
151
+ }
152
+
153
+ &::after {
154
+ background-color: var(--colors-brand-600);
155
+ }
156
+
157
+ &:active {
158
+ background-color: transparent;
159
+ outline: none;
160
+
161
+ & .tabs-list__icon {
162
+ color: var(--colors-brand-600);
163
+ }
164
+ }
165
+
166
+ &:hover {
167
+ background-color: transparent;
168
+ color: var(--colors-brand-600);
169
+
170
+ &::after {
171
+ background-color: var(--colors-brand-600);
172
+ }
173
+ }
174
+ }
175
+
176
+ &--md {
177
+ padding: var(--spacing-lg) var(--spacing-xl);
178
+ }
179
+
180
+ &--sm {
181
+ padding: var(--spacing-md) var(--spacing-lg);
182
+
183
+ &::after {
184
+ width: calc(100% - var(--spacing-lg) * 2);
185
+ }
186
+ }
187
+ }
188
+
189
+ &__icon {
190
+ display: flex;
191
+ align-items: center;
192
+ color: var(--colors-text-secondary);
193
+ width: 16px;
194
+ height: 16px;
195
+ }
196
+
197
+ &__label {
198
+ @extend .text-sm-regular;
199
+ }
200
+
201
+ &--vertical &__item {
202
+ &:hover::after,
203
+ &:active::after,
204
+ &--active::after {
205
+ left: 1px;
206
+ top: 50%;
207
+ right: auto;
208
+ bottom: auto;
209
+ transform: translateY(-50%);
210
+ height: calc(100% - var(--spacing-md) * 2);
211
+ min-height: 16px;
212
+ width: 3px;
213
+ }
214
+
215
+ &--md {
216
+ padding: var(--spacing-sm) var(--spacing-lg);
217
+ }
218
+
219
+ &--sm {
220
+ padding: var(--spacing-xxs) var(--spacing-sm);
221
+ }
222
+ }
223
+ }
224
+ }
225
+
226
+ [dir="rtl"] .tabs-list--vertical .tabs-list__item:hover::after,
227
+ [dir="rtl"] .tabs-list--vertical .tabs-list__item:active::after,
228
+ [dir="rtl"] .tabs-list--vertical .tabs-list__item--active::after {
229
+ right: 1px;
230
+ left: auto;
231
+ }
@@ -0,0 +1,191 @@
1
+ .tags {
2
+ .flex-column {
3
+ align-items: flex-start;
4
+ }
5
+
6
+ .flex {
7
+ gap: 1rem;
8
+ }
9
+ }
10
+
11
+ .tag {
12
+ display: inline-flex;
13
+ height: 32px;
14
+ padding: var(--spacing-none) var(--spacing-lg);
15
+ // margin-block: 1rem; // to be enhanced
16
+ justify-content: center;
17
+ align-items: center;
18
+ gap: var(--spacing-xs);
19
+ border-radius: var(--radius-xs);
20
+ @extend .text-md-medium;
21
+
22
+ &-icon {
23
+ display: flex;
24
+ padding: 1.875px 1.5px;
25
+ justify-content: center;
26
+ align-items: center;
27
+ }
28
+
29
+ // sizes
30
+ &--lg {
31
+ height: 32px;
32
+ @extend .text-md-medium;
33
+
34
+ span.tag-icon {
35
+ width: 18px;
36
+ height: 18px;
37
+ }
38
+ }
39
+
40
+ &--md {
41
+ height: 24px;
42
+ @extend .text-xs-medium;
43
+
44
+ span.tag-icon {
45
+ width: 14px;
46
+ height: 14px;
47
+ }
48
+ }
49
+
50
+ &--sm {
51
+ height: 20px;
52
+ @extend .text-2xs-semibold;
53
+
54
+ span.tag-icon {
55
+ width: 10px;
56
+ height: 10px;
57
+ }
58
+ }
59
+
60
+ // types
61
+ &--rounded {
62
+ border-radius: var(--radius-full);
63
+ }
64
+
65
+ &--icon {
66
+ padding: 0;
67
+
68
+ &.tag--lg {
69
+ width: 32px;
70
+ height: 32px;
71
+ }
72
+
73
+ &.tag--md {
74
+ width: 24px;
75
+ height: 24px;
76
+ }
77
+
78
+ &.tag--sm {
79
+ width: 20px;
80
+ height: 20px;
81
+ }
82
+ }
83
+
84
+ // variants
85
+ &--neutral {
86
+ color: var(--tag-text-neutral);
87
+ background: var(--tag-background-neutral-light);
88
+ border: 1px solid var(--border-neutral-secondary);
89
+
90
+ &-outlined {
91
+ border: 1px solid var(--tag-border-neutral);
92
+ background-color: transparent;
93
+ color: var(--tag-text-neutral);
94
+ }
95
+ }
96
+
97
+ &--success {
98
+ color: var(--tag-text-success);
99
+ background-color: var(--tag-background-success-light);
100
+ border: 1px solid var(--tag-border-success-light);
101
+
102
+ &-outlined {
103
+ border: 1px solid var(--tag-border-success);
104
+ background-color: transparent;
105
+ color: var(--tag-text-success);
106
+ }
107
+ }
108
+
109
+ &--error {
110
+ color: var(--tag-text-error);
111
+ background-color: var(--tag-background-error-light);
112
+ border: 1px solid var(--tag-border-error-light);
113
+
114
+ &-outlined {
115
+ border: 1px solid var(--tag-border-error);
116
+ background-color: transparent;
117
+ color: var(--tag-text-error);
118
+ }
119
+ }
120
+
121
+ &--warning {
122
+ color: var(--tag-text-warning);
123
+ background-color: var(--tag-background-warning-light);
124
+ border: 1px solid var(--tag-border-warning-light);
125
+
126
+ &-outlined {
127
+ border: 1px solid var(--tag-border-error);
128
+ background-color: transparent;
129
+ color: var(--tag-text-warning);
130
+ }
131
+ }
132
+
133
+ &--info {
134
+ color: var(--tag-text-info);
135
+ background-color: var(--tag-background-info-light);
136
+ border: 1px solid var(--tag-border-info-light);
137
+
138
+ &-outlined {
139
+ border: 1px solid var(--tag-border-info);
140
+ background-color: transparent;
141
+ color: var(--tag-text-info);
142
+ }
143
+ }
144
+
145
+ &--purple {
146
+ color: var(--colors-purple-700);
147
+ background-color: var(--colors-purple-50);
148
+ border: 1px solid var(--colors-purple-200);
149
+
150
+ &-outlined {
151
+ border: 1px solid var(--colors-purple-500);
152
+ background-color: transparent;
153
+ color: var(--colors-purple-700);
154
+ }
155
+ }
156
+
157
+ &--pink {
158
+ color: var(--colors-pink-700);
159
+ background-color: var(--colors-pink-50);
160
+ border: 1px solid var(--colors-pink-200);
161
+
162
+ &-outlined {
163
+ border: 1px solid var(--colors-pink-500);
164
+ background-color: transparent;
165
+ color: var(--colors-pink-700);
166
+ }
167
+ }
168
+
169
+ &--orange {
170
+ color: var(--colors-orange-700);
171
+ background-color: var(--colors-orange-50);
172
+ border: 1px solid var(--colors-orange-200);
173
+
174
+ &-outlined {
175
+ border: 1px solid var(--colors-orange-500);
176
+ background-color: transparent;
177
+ color: var(--colors-orange-700);
178
+ }
179
+ }
180
+
181
+ &--on-color {
182
+ color: var(--colors-base-white);
183
+ background-color: hsl(var(--colors-alpha-white) / 30%);
184
+
185
+ &-outlined {
186
+ border: 1px solid hsl(var(--colors-alpha-white) / 90%);
187
+ background-color: transparent;
188
+ color: hsl(var(--colors-alpha-white) / 90%);
189
+ }
190
+ }
191
+ }