@idds/styles 1.0.26

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 (81) hide show
  1. package/README.md +147 -0
  2. package/package.json +55 -0
  3. package/src/colors/brands/bgn.css +29 -0
  4. package/src/colors/brands/bkn.css +32 -0
  5. package/src/colors/brands/inagov.css +39 -0
  6. package/src/colors/brands/inaku.css +28 -0
  7. package/src/colors/brands/inapas.css +28 -0
  8. package/src/colors/brands/lan.css +38 -0
  9. package/src/colors/brands/pan-rb.css +30 -0
  10. package/src/colors/index.css +11 -0
  11. package/src/colors/primitives/index.css +150 -0
  12. package/src/colors/product/index.css +205 -0
  13. package/src/colors/utilities/index.css +77 -0
  14. package/src/components/accordion-card.css +99 -0
  15. package/src/components/accordion.css +120 -0
  16. package/src/components/action-dropdown.css +140 -0
  17. package/src/components/alert.css +180 -0
  18. package/src/components/avatar.css +182 -0
  19. package/src/components/badge.css +244 -0
  20. package/src/components/bottom-sheet.css +61 -0
  21. package/src/components/breadcrumb.css +94 -0
  22. package/src/components/button-group.css +130 -0
  23. package/src/components/button.css +233 -0
  24. package/src/components/card.css +488 -0
  25. package/src/components/carousel.css +100 -0
  26. package/src/components/chart.css +81 -0
  27. package/src/components/checkbox.css +211 -0
  28. package/src/components/chip.css +228 -0
  29. package/src/components/collapse.css +84 -0
  30. package/src/components/confirmation.css +131 -0
  31. package/src/components/date-picker.css +1063 -0
  32. package/src/components/divider.css +174 -0
  33. package/src/components/drawer.css +757 -0
  34. package/src/components/dropdown.css +369 -0
  35. package/src/components/field-input-table.css +347 -0
  36. package/src/components/file-upload.css +357 -0
  37. package/src/components/input-search.css +428 -0
  38. package/src/components/linear-progress-indicator.css +34 -0
  39. package/src/components/modal.css +497 -0
  40. package/src/components/month-picker.css +325 -0
  41. package/src/components/multiple-choice-grid.css +383 -0
  42. package/src/components/pagination.css +415 -0
  43. package/src/components/password-input.css +472 -0
  44. package/src/components/phone-input.css +412 -0
  45. package/src/components/progress-bar.css +447 -0
  46. package/src/components/radio-input.css +263 -0
  47. package/src/components/reset.css +431 -0
  48. package/src/components/select-dropdown.css +663 -0
  49. package/src/components/select-option.css +217 -0
  50. package/src/components/skeleton.css +488 -0
  51. package/src/components/spinner.css +450 -0
  52. package/src/components/stepper.css +209 -0
  53. package/src/components/tab-horizontal.css +278 -0
  54. package/src/components/tab-vertical.css +261 -0
  55. package/src/components/table-progress-bar.css +48 -0
  56. package/src/components/table.css +538 -0
  57. package/src/components/text-area.css +216 -0
  58. package/src/components/text-field.css +275 -0
  59. package/src/components/theme-toggle.css +259 -0
  60. package/src/components/time-picker.css +436 -0
  61. package/src/components/toast.css +245 -0
  62. package/src/components/toggle.css +223 -0
  63. package/src/components/tooltip.css +452 -0
  64. package/src/components/year-picker.css +423 -0
  65. package/src/index.css +3 -0
  66. package/src/tailwind/css/bgn.css +43 -0
  67. package/src/tailwind/css/bkn.css +37 -0
  68. package/src/tailwind/css/idds.css +231 -0
  69. package/src/tailwind/css/inagov.css +33 -0
  70. package/src/tailwind/css/inaku.css +33 -0
  71. package/src/tailwind/css/inapas.css +33 -0
  72. package/src/tailwind/css/lan.css +43 -0
  73. package/src/tailwind/css/pan-rb.css +35 -0
  74. package/src/tailwind/ts/bgn.ts +20 -0
  75. package/src/tailwind/ts/bkn.ts +38 -0
  76. package/src/tailwind/ts/idds.ts +240 -0
  77. package/src/tailwind/ts/inagov.ts +35 -0
  78. package/src/tailwind/ts/inaku.ts +35 -0
  79. package/src/tailwind/ts/inapas.ts +35 -0
  80. package/src/tailwind/ts/lan.ts +45 -0
  81. package/src/tailwind/ts/panrb.ts +37 -0
@@ -0,0 +1,357 @@
1
+ /**
2
+ * File Upload Component Styles
3
+ * Menggunakan BEM naming convention dengan prefix "ina-"
4
+ * Sesuai dengan design Figma
5
+ */
6
+
7
+ .ina-file-upload {
8
+ width: 100%;
9
+ }
10
+
11
+ .ina-file-upload__label {
12
+ display: block;
13
+ font-size: 14px;
14
+ font-weight: 500;
15
+ line-height: 20px;
16
+ color: var(--ina-content-primary, var(--ina-neutral-800));
17
+ margin-bottom: 8px;
18
+ }
19
+
20
+ .ina-file-upload__dropzone {
21
+ border: 1px dashed var(--ina-neutral-400);
22
+ border-radius: 8px;
23
+ padding: 40px 24px;
24
+ text-align: center;
25
+ cursor: pointer;
26
+ transition: all 0.2s ease;
27
+ background-color: var(--ina-background-primary, var(--ina-neutral-25));
28
+ box-sizing: border-box;
29
+ }
30
+
31
+ .ina-file-upload__dropzone:hover {
32
+ border-color: var(--ina-primary-300, var(--Primary-300));
33
+ background-color: var(
34
+ --ina-background-secondary,
35
+ var(--Background-Secondary)
36
+ );
37
+ }
38
+
39
+ .ina-file-upload__dropzone--drag-over {
40
+ border-color: var(--ina-primary-300, var(--Primary-300));
41
+ background-color: var(--ina-primary-25, var(--Primary-25));
42
+ }
43
+
44
+ .ina-file-upload__dropzone--disabled {
45
+ opacity: 0.5;
46
+ cursor: not-allowed;
47
+ pointer-events: none;
48
+ }
49
+
50
+ .ina-file-upload__input {
51
+ display: none;
52
+ }
53
+
54
+ .ina-file-upload__content {
55
+ display: flex;
56
+ flex-direction: column;
57
+ align-items: center;
58
+ gap: 16px;
59
+ }
60
+
61
+ .ina-file-upload__icon {
62
+ color: var(--ina-content-primary, var(--ina-neutral-800));
63
+ display: flex;
64
+ align-items: center;
65
+ justify-content: center;
66
+ }
67
+
68
+ .ina-file-upload__text {
69
+ text-align: center;
70
+ display: flex;
71
+ flex-direction: column;
72
+ gap: 4px;
73
+ }
74
+
75
+ .ina-file-upload__title {
76
+ font-size: 16.618px;
77
+ font-weight: 600;
78
+ line-height: 23.265px;
79
+ color: var(--ina-content-primary, var(--ina-neutral-800));
80
+ margin: 0;
81
+ }
82
+
83
+ .ina-file-upload__description {
84
+ font-size: 14px;
85
+ font-weight: 400;
86
+ line-height: 20px;
87
+ color: var(--ina-content-secondary, var(--Content-Secondary));
88
+ margin: 0;
89
+ }
90
+
91
+ .ina-file-upload__button {
92
+ padding: 8px 16px;
93
+ background-color: var(--ina-content-primary);
94
+ color: var(--ina-neutral-25);
95
+ border: none;
96
+ border-radius: 8px;
97
+ font-size: 14px;
98
+ font-weight: 500;
99
+ line-height: 20px;
100
+ cursor: pointer;
101
+ transition: all 0.2s ease;
102
+ box-sizing: border-box;
103
+ }
104
+
105
+ .ina-file-upload__button:hover:not(:disabled) {
106
+ background-color: var(--ina-content-secondary, var(--Content-Secondary));
107
+ }
108
+
109
+ .ina-file-upload__button:disabled {
110
+ opacity: 0.5;
111
+ cursor: not-allowed;
112
+ }
113
+
114
+ /* File List */
115
+ .ina-file-upload__files {
116
+ margin-top: 16px;
117
+ display: flex;
118
+ flex-direction: column;
119
+ gap: 8px;
120
+ }
121
+
122
+ .ina-file-upload__file {
123
+ display: flex;
124
+ align-items: center;
125
+ gap: 12px;
126
+ padding: 12px 16px;
127
+ background-color: var(--ina-background-primary, var(--ina-neutral-25));
128
+ border: 1px solid var(--ina-stroke-primary, var(--Stroke-Primary));
129
+ border-radius: 8px;
130
+ box-sizing: border-box;
131
+ transition: all 0.2s ease;
132
+ }
133
+
134
+ .ina-file-upload__file--error {
135
+ border-color: var(--ina-negative-500, var(--ina-error-500));
136
+ background-color: var(--ina-error-25, var(--Error-25));
137
+ }
138
+
139
+ .ina-file-upload__file--error .ina-file-upload__file-name,
140
+ .ina-file-upload__file--error .ina-file-upload__file-error {
141
+ color: var(--ina-negative-500, var(--ina-error-500));
142
+ }
143
+
144
+ .ina-file-upload__file--success {
145
+ border-color: var(--ina-success-500, var(--Success-500));
146
+ }
147
+
148
+ .ina-file-upload__file--uploading {
149
+ border-color: var(--ina-primary-300, var(--Primary-300));
150
+ }
151
+
152
+ .ina-file-upload__file-indicator {
153
+ display: flex;
154
+ align-items: center;
155
+ justify-content: center;
156
+ flex-shrink: 0;
157
+ width: 16px;
158
+ height: 16px;
159
+ }
160
+
161
+ .ina-file-upload__file-icon-wrapper {
162
+ display: flex;
163
+ align-items: center;
164
+ justify-content: center;
165
+ width: 16px;
166
+ height: 16px;
167
+ border-radius: 50%;
168
+ }
169
+
170
+ .ina-file-upload__file-icon-wrapper--success {
171
+ border: 1px solid var(--ina-positive-600, var(--ina-success-600));
172
+ }
173
+
174
+ .ina-file-upload__file-icon-wrapper--success svg {
175
+ color: var(--ina-positive-600, var(--ina-success-600));
176
+ width: 16px;
177
+ height: 16px;
178
+ }
179
+
180
+ .ina-file-upload__file-icon-wrapper--error {
181
+ border: 1px solid var(--ina-negative-500, var(--ina-error-500));
182
+ }
183
+
184
+ .ina-file-upload__file-icon-wrapper--error svg {
185
+ color: var(--ina-negative-500, var(--ina-error-500));
186
+ width: 16px;
187
+ height: 16px;
188
+ }
189
+
190
+ .ina-file-upload__file-icon-wrapper--uploading {
191
+ border: 1px solid var(--ina-primary-300, var(--ina-blue-300));
192
+ }
193
+
194
+ .ina-file-upload__file-icon-wrapper--uploading svg {
195
+ color: var(--ina-primary-300, var(--ina-blue-300));
196
+ width: 16px;
197
+ height: 16px;
198
+ }
199
+
200
+ .ina-file-upload__file-icon-placeholder {
201
+ width: 16px;
202
+ height: 16px;
203
+ border: 1px solid var(--ina-neutral-400);
204
+ border-radius: 50%;
205
+ }
206
+
207
+ .ina-file-upload__file-icon--spinning {
208
+ animation: spin 1s linear infinite;
209
+ }
210
+
211
+ @keyframes spin {
212
+ from {
213
+ transform: rotate(0deg);
214
+ }
215
+ to {
216
+ transform: rotate(360deg);
217
+ }
218
+ }
219
+
220
+ .ina-file-upload__file-info {
221
+ flex: 1;
222
+ display: flex;
223
+ flex-direction: column;
224
+ gap: 4px;
225
+ min-width: 0;
226
+ }
227
+
228
+ .ina-file-upload__file-name {
229
+ font-size: 14px;
230
+ font-weight: 600;
231
+ line-height: 20px;
232
+ color: var(--ina-content-primary, var(--ina-neutral-800));
233
+ overflow: hidden;
234
+ text-overflow: ellipsis;
235
+ white-space: nowrap;
236
+ }
237
+
238
+ .ina-file-upload__file-size {
239
+ font-size: 12px;
240
+ font-weight: 400;
241
+ line-height: 16px;
242
+ color: var(--ina-content-secondary, var(--ina-neutral-500));
243
+ }
244
+
245
+ .ina-file-upload__file-error {
246
+ font-size: 12px;
247
+ font-weight: 400;
248
+ line-height: 16px;
249
+ color: var(--ina-negative-500, var(--ina-error-500));
250
+ margin-top: 4px;
251
+ }
252
+
253
+ .ina-file-upload__file-actions {
254
+ display: flex;
255
+ align-items: center;
256
+ gap: 8px;
257
+ flex-shrink: 0;
258
+ }
259
+
260
+ .ina-file-upload__file-retry,
261
+ .ina-file-upload__file-remove {
262
+ background: none;
263
+ border: none;
264
+ color: var(--ina-negative-500, var(--ina-red-500));
265
+ cursor: pointer;
266
+ padding: 4px;
267
+ border-radius: 4px;
268
+ transition: all 0.2s ease;
269
+ display: flex;
270
+ align-items: center;
271
+ justify-content: center;
272
+ width: 20px;
273
+ height: 20px;
274
+ }
275
+
276
+ .ina-file-upload__file-retry:hover,
277
+ .ina-file-upload__file-remove:hover {
278
+ background-color: var(--ina-background-tertiary, var(--ina-neutral-100));
279
+ color: var(--ina-content-primary, var(--ina-neutral-800));
280
+ }
281
+
282
+ .ina-file-upload__file-retry {
283
+ color: var(--ina-primary-500, var(--ina-blue-500));
284
+ }
285
+
286
+ .ina-file-upload__file-retry:hover {
287
+ background-color: var(--ina-primary-25, var(--ina-blue-25));
288
+ }
289
+
290
+ /* Show More Button */
291
+ .ina-file-upload__show-more {
292
+ display: flex;
293
+ align-items: center;
294
+ gap: 4px;
295
+ margin-top: 8px;
296
+ background: none;
297
+ border: none;
298
+ color: var(--ina-primary-500, var(--Primary-500));
299
+ font-size: 14px;
300
+ font-weight: 400;
301
+ line-height: 20px;
302
+ cursor: pointer;
303
+ padding: 0;
304
+ transition: all 0.2s ease;
305
+ }
306
+
307
+ .ina-file-upload__show-more:hover {
308
+ color: var(--ina-primary-600, var(--Primary-600));
309
+ text-decoration: underline;
310
+ }
311
+
312
+ .ina-file-upload__show-more-icon {
313
+ transition: transform 0.2s ease;
314
+ }
315
+
316
+ .ina-file-upload__show-more-icon--expanded {
317
+ transform: rotate(180deg);
318
+ }
319
+
320
+ /* Error Messages */
321
+ .ina-file-upload__errors {
322
+ margin-top: 12px;
323
+ display: flex;
324
+ flex-direction: column;
325
+ gap: 4px;
326
+ }
327
+
328
+ .ina-file-upload__error-message {
329
+ font-size: 12px;
330
+ font-weight: 400;
331
+ line-height: 16px;
332
+ color: var(--ina-error-500, var(--Error-500));
333
+ padding: 8px 12px;
334
+ background-color: var(--ina-error-25, var(--Error-25));
335
+ border-radius: 4px;
336
+ border: 1px solid var(--ina-error-500, var(--Error-500));
337
+ }
338
+
339
+ /* Status Message */
340
+ .ina-file-upload__status {
341
+ margin-top: 12px;
342
+ font-size: 14px;
343
+ font-weight: 400;
344
+ line-height: 20px;
345
+ }
346
+
347
+ .ina-file-upload__status--success {
348
+ color: var(--ina-success-500, var(--Success-500));
349
+ }
350
+
351
+ .ina-file-upload__status--error {
352
+ color: var(--ina-error-500, var(--Error-500));
353
+ }
354
+
355
+ .ina-file-upload__status--warning {
356
+ color: var(--ina-warning-500, var(--Warning-500));
357
+ }