@nexheal/nexheal-lib 0.0.5

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -0,0 +1,384 @@
1
+ .form-group {
2
+ position: relative;
3
+ margin-bottom: 1.25rem;
4
+ .inp-label {
5
+ width: 100%;
6
+ color: #9b9b9b;
7
+ min-height: 16px;
8
+ font-size: 0.95em;
9
+ margin-bottom: 2px;
10
+ position: relative;
11
+ &.required:after {
12
+ content: "*";
13
+ top: -0.075em;
14
+ font-size: 1.5em;
15
+ color: #ff0000;
16
+ font-weight: 600;
17
+ padding-left: 5px;
18
+ position: absolute;
19
+ }
20
+ }
21
+ .option-list {
22
+ .list-item {
23
+ padding: 5px 10px;
24
+ cursor: pointer;
25
+ &.highlighted {
26
+ background-color: #f0f0f0;
27
+ }
28
+ &:hover {
29
+ background-color: #e0e0e0;
30
+ }
31
+ }
32
+ }
33
+ .form-control {
34
+ width: 100%;
35
+ height: 42px;
36
+ outline: none;
37
+ display: block;
38
+ font-weight: 400;
39
+ line-height: 1.5;
40
+ box-shadow: none;
41
+ border-radius: 0;
42
+ font-size: 1.05em;
43
+ background: #eff2f9;
44
+ border-color: #eff2f9;
45
+ padding: 0.375rem 0.75rem;
46
+ background-clip: padding-box;
47
+ border-style: none !important;
48
+ border-bottom: 1px solid #eff2f9 !important;
49
+ transition:
50
+ border-color 0.15s ease-in-out,
51
+ box-shadow 0.15s ease-in-out;
52
+ &::placeholder {
53
+ color: #a8a8a8;
54
+ font-size: 1.025em;
55
+ }
56
+ &:disabled,
57
+ &[readonly] {
58
+ opacity: 1;
59
+ user-select: none;
60
+ cursor: not-allowed;
61
+ background: #e7e7e7;
62
+ }
63
+ }
64
+ .form-control.is-invalid,
65
+ .is-invalid .form-control input {
66
+ background-image: none;
67
+ border: 0 solid transparent !important;
68
+ border-bottom: 2px solid #ff3e1d !important;
69
+ &:focus {
70
+ outline: none;
71
+ box-shadow: none;
72
+ }
73
+ }
74
+ .form-control ~ .focus-border {
75
+ width: 0;
76
+ bottom: 0;
77
+ left: 50%;
78
+ height: 2px;
79
+ transition: 0.4s;
80
+ position: absolute;
81
+ background-color: #3399ff;
82
+ }
83
+ .form-control:focus ~ .focus-border {
84
+ left: 0;
85
+ width: 100%;
86
+ transition: 0.4s;
87
+ }
88
+ .form-control:focus ~ .clear {
89
+ opacity: 1;
90
+ }
91
+ .form-control[readonly] {
92
+ user-select: none;
93
+ background: #d0d3da;
94
+ }
95
+ .clear {
96
+ top: 31px;
97
+ right: 7px;
98
+ z-index: 4;
99
+ opacity: 0;
100
+ cursor: pointer;
101
+ padding: 2px 5px;
102
+ position: absolute;
103
+ background: #eff2f9;
104
+ .he {
105
+ font-size: 11px;
106
+ color: #ff0000;
107
+ }
108
+ }
109
+ .val-msg {
110
+ font-size: 0.9em;
111
+ color: #ff0000;
112
+ font-weight: 500;
113
+ position: absolute;
114
+ letter-spacing: 0.01rem;
115
+ }
116
+ &.select,
117
+ &.auto-complete,
118
+ &.multi-select,
119
+ &.calendar {
120
+ .form-control {
121
+ padding-right: 2rem;
122
+ }
123
+ .form-control[readonly] {
124
+ opacity: 1;
125
+ cursor: default;
126
+ user-select: none;
127
+ background: #eff2f9;
128
+ &:focus ~ .focus-border {
129
+ display: unset;
130
+ }
131
+ }
132
+ .form-control[disabled] {
133
+ opacity: 1;
134
+ -webkit-user-select: none;
135
+ user-select: none;
136
+ cursor: not-allowed;
137
+ background: #e7e7e7;
138
+ &:focus ~ .focus-border {
139
+ display: unset;
140
+ }
141
+ }
142
+ .arrow {
143
+ top: 34px;
144
+ right: 10px;
145
+ position: absolute;
146
+ pointer-events: none;
147
+ .he {
148
+ color: inherit;
149
+ font-size: 13px;
150
+ color: #2ba599;
151
+ cursor: default;
152
+ font-weight: 600;
153
+ }
154
+ }
155
+ .calendar-icon {
156
+ top: 13px;
157
+ right: 10px;
158
+ line-height: 1;
159
+ position: absolute;
160
+ pointer-events: none;
161
+ i {
162
+ font-size: 1rem;
163
+ color: #2ba599;
164
+ font-weight: 600;
165
+ }
166
+ }
167
+ .option-list {
168
+ top: 65px;
169
+ z-index: 2;
170
+ width: 100%;
171
+ cursor: default;
172
+ min-width: 150px;
173
+ max-height: 233px;
174
+ position: absolute;
175
+ overflow-y: overlay;
176
+ background: #ffffff;
177
+ box-shadow: 0 2px 6px 0 rgba(0, 0, 0, 0.125);
178
+ .list-item {
179
+ gap: 10px;
180
+ display: flex;
181
+ font-size: 1em;
182
+ cursor: default;
183
+ font-weight: 400;
184
+ color: #584e4e;
185
+ padding: 9px 10px;
186
+ align-items: center;
187
+ letter-spacing: 0.015rem;
188
+ label {
189
+ cursor: default;
190
+ }
191
+ img {
192
+ box-shadow: 0px 0px 1px 0 #646363;
193
+ }
194
+ &:hover {
195
+ background: #efefef;
196
+ }
197
+ &.active {
198
+ color: #ffffff;
199
+ background: #13b4a4;
200
+ }
201
+ }
202
+ }
203
+ &.list-lg {
204
+ .option-list {
205
+ width: 225px;
206
+ }
207
+ }
208
+ }
209
+ &.input-placeholder {
210
+ .form-control {
211
+ &::placeholder {
212
+ color: #d0d0d0;
213
+ font-size: 0.95em;
214
+ }
215
+ }
216
+ }
217
+ &.no-label {
218
+ .arrow {
219
+ top: 11px;
220
+ }
221
+ .clear {
222
+ top: 9px;
223
+ }
224
+ .option-list {
225
+ top: 44px;
226
+ }
227
+ }
228
+ &.group-sm {
229
+ .form-control {
230
+ height: 36px;
231
+ font-size: 1em;
232
+ }
233
+ .arrow {
234
+ top: 31px;
235
+ }
236
+ .clear {
237
+ top: 29px;
238
+ }
239
+ &.no-label {
240
+ .arrow {
241
+ top: 8px;
242
+ }
243
+ .clear {
244
+ top: 7px;
245
+ }
246
+ }
247
+ }
248
+ &.clear {
249
+ .form-control {
250
+ padding-right: 2rem;
251
+ }
252
+ }
253
+ &.clear-right {
254
+ .form-control {
255
+ padding-right: 2.5rem;
256
+ }
257
+ }
258
+ &.min-clear-bottom {
259
+ margin-bottom: 0.5rem;
260
+ }
261
+ &.clear-bottom {
262
+ margin-bottom: 0;
263
+ }
264
+ }
265
+
266
+ // attributes and appearance
267
+ input::-webkit-outer-spin-button,
268
+ input::-webkit-inner-spin-button {
269
+ appearance: none;
270
+ }
271
+
272
+ // checkbox
273
+ .checkbox-container {
274
+ display: block;
275
+ cursor: pointer;
276
+ padding-top: 1px;
277
+ color: #9b9b9b;
278
+ user-select: none;
279
+ position: relative;
280
+ padding-left: 30px;
281
+ width: fit-content;
282
+ font-size: 0.975em;
283
+ margin-bottom: 1.25rem;
284
+ input {
285
+ width: 0;
286
+ height: 0;
287
+ opacity: 0;
288
+ cursor: pointer;
289
+ position: absolute;
290
+ &:disabled {
291
+ &:checked ~ .checkmark {
292
+ opacity: 0.5;
293
+ cursor: not-allowed;
294
+ }
295
+ }
296
+ }
297
+ &:hover input ~ .checkmark {
298
+ background-color: #727272;
299
+ }
300
+ .checkmark {
301
+ top: 0;
302
+ left: 0;
303
+ width: 22px;
304
+ height: 22px;
305
+ cursor: pointer;
306
+ position: absolute;
307
+ background-color: #cccccc;
308
+ &:after {
309
+ top: 4px;
310
+ left: 8px;
311
+ width: 6px;
312
+ content: "";
313
+ height: 12px;
314
+ display: none;
315
+ position: absolute;
316
+ border: solid #ffffff;
317
+ transform: rotate(45deg);
318
+ border-width: 0 3px 3px 0;
319
+ }
320
+ }
321
+ input:checked ~ .checkmark {
322
+ background-color: #0d6f7d;
323
+ &:after {
324
+ display: block;
325
+ }
326
+ }
327
+ &.checkbox-form {
328
+ top: 31px;
329
+ }
330
+ &.min-clear-bottom {
331
+ margin-bottom: 0.5rem;
332
+ }
333
+ &.clear-bottom {
334
+ margin-bottom: 0;
335
+ }
336
+ &.blank {
337
+ .checkmark {
338
+ top: -11px;
339
+ }
340
+ }
341
+ &.focused {
342
+ color: #6dc0dc;
343
+ }
344
+ &.multi-select {
345
+ width: 100%;
346
+ font-size: 1em;
347
+ margin-bottom: 0;
348
+ font-weight: 400;
349
+ color: #584e4e;
350
+ letter-spacing: 0.015rem;
351
+ padding: 10px 10px 10px 40px;
352
+ .checkmark {
353
+ top: 10px;
354
+ left: 10px;
355
+ }
356
+ }
357
+ }
358
+ .checkbox-container input[type="checkbox"]:focus-visible ~ .checkmark,
359
+ .checkbox-container input[type="checkbox"]:focus-visible + .checkmark,
360
+ .switch-container input[type="checkbox"]:focus-visible ~ .switch-slider,
361
+ .switch-container input[type="checkbox"]:focus-visible + .switch-slider {
362
+ background-color: #6dc0dc;
363
+ }
364
+ .checkbox-container:has(input:disabled) {
365
+ opacity: 0.6;
366
+ cursor: not-allowed;
367
+ &:hover input ~ .checkmark {
368
+ cursor: not-allowed;
369
+ background-color: #cccccc;
370
+ }
371
+ }
372
+ .checkbox-container.readonly {
373
+ cursor: default;
374
+ pointer-events: none;
375
+ .checkmark {
376
+ cursor: default;
377
+ opacity: 0.75;
378
+ }
379
+ }
380
+ .switch-container.readonly {
381
+ cursor: default;
382
+ pointer-events: none;
383
+ opacity: 0.75;
384
+ }
@@ -0,0 +1 @@
1
+ @use "formcontrols";