ywana-core8 0.1.75 → 0.1.76

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 (122) hide show
  1. package/ACCORDION_EVALUATION.md +583 -0
  2. package/CHECKBOX_EVALUATION.md +273 -0
  3. package/CHIP_EVALUATION.md +542 -0
  4. package/COLOR_EVALUATION.md +524 -0
  5. package/COMPONENTS_EVALUATION.md +477 -0
  6. package/FORM_EVALUATION.md +459 -0
  7. package/HEADER_EVALUATION.md +436 -0
  8. package/ICON_EVALUATION.md +254 -0
  9. package/LIST_EVALUATION.md +574 -0
  10. package/PROGRESS_EVALUATION.md +450 -0
  11. package/RADIO_EVALUATION.md +439 -0
  12. package/RADIO_VISUAL_FIX.md +183 -0
  13. package/SECTION_IMPROVEMENTS.md +153 -0
  14. package/SWITCH_EVALUATION.md +335 -0
  15. package/SWITCH_VISUAL_FIX.md +232 -0
  16. package/TAB_EVALUATION.md +626 -0
  17. package/TEXTFIELD_EVALUATION.md +747 -0
  18. package/TOOLTIP_FIX.md +157 -0
  19. package/TREE_EVALUATION.md +708 -0
  20. package/dist/index.cjs +7900 -1615
  21. package/dist/index.cjs.map +1 -1
  22. package/dist/index.css +6094 -1122
  23. package/dist/index.css.map +1 -1
  24. package/dist/index.modern.js +7929 -1645
  25. package/dist/index.modern.js.map +1 -1
  26. package/dist/index.umd.js +7900 -1615
  27. package/dist/index.umd.js.map +1 -1
  28. package/jest.config.js +24 -0
  29. package/package.json +10 -1
  30. package/src/html/accordion.css +208 -4
  31. package/src/html/accordion.example.js +390 -0
  32. package/src/html/accordion.js +284 -28
  33. package/src/html/accordion.unit.test.js +334 -0
  34. package/src/html/button.css +157 -16
  35. package/src/html/button.example.js +374 -0
  36. package/src/html/button.js +240 -60
  37. package/src/html/button.test.js +422 -0
  38. package/src/html/checkbox.css +74 -2
  39. package/src/html/checkbox.example.js +316 -0
  40. package/src/html/checkbox.js +113 -26
  41. package/src/html/checkbox.test.js +285 -0
  42. package/src/html/chip.css +230 -19
  43. package/src/html/chip.example.js +355 -0
  44. package/src/html/chip.js +321 -25
  45. package/src/html/chip.test.js +425 -0
  46. package/src/html/color.css +435 -6
  47. package/src/html/color.example.js +527 -0
  48. package/src/html/color.js +458 -9
  49. package/src/html/color.test.js +362 -4
  50. package/src/html/components.example.js +492 -0
  51. package/src/html/components_enhanced.test.js +581 -0
  52. package/src/html/form.css +70 -3
  53. package/src/html/form.example.js +385 -0
  54. package/src/html/form.js +232 -34
  55. package/src/html/form.test.js +369 -0
  56. package/src/html/header2.css +264 -0
  57. package/src/html/header2.example.js +411 -0
  58. package/src/html/header2.js +203 -0
  59. package/src/html/header2.test.js +377 -0
  60. package/src/html/icon.css +20 -2
  61. package/src/html/icon.example.js +268 -0
  62. package/src/html/icon.js +86 -16
  63. package/src/html/icon.test.js +231 -0
  64. package/src/html/index.js +1 -1
  65. package/src/html/list.css +393 -1
  66. package/src/html/list.example.js +404 -0
  67. package/src/html/list.js +583 -40
  68. package/src/html/list.test.js +383 -0
  69. package/src/html/progress.css +707 -17
  70. package/src/html/progress.example.js +424 -0
  71. package/src/html/progress.js +906 -9
  72. package/src/html/progress.test.js +313 -0
  73. package/src/html/property.css +399 -0
  74. package/src/html/property.example.js +553 -0
  75. package/src/html/property.js +393 -15
  76. package/src/html/property.test.js +351 -2
  77. package/src/html/radio-visual-test.js +289 -0
  78. package/src/html/radio.css +137 -11
  79. package/src/html/radio.example.js +389 -0
  80. package/src/html/radio.js +234 -10
  81. package/src/html/radio.test.js +318 -0
  82. package/src/html/section.example.js +99 -0
  83. package/src/html/section.js +40 -3
  84. package/src/html/section.test.js +131 -0
  85. package/src/html/selector.css +329 -3
  86. package/src/html/selector.js +369 -23
  87. package/src/html/switch-debug.js +197 -0
  88. package/src/html/switch-test-visual.js +294 -0
  89. package/src/html/switch.css +200 -0
  90. package/src/html/switch.example.js +461 -0
  91. package/src/html/switch.js +283 -23
  92. package/src/html/switch.test.js +355 -0
  93. package/src/html/tab.css +288 -0
  94. package/src/html/tab.example.js +446 -0
  95. package/src/html/tab.js +387 -22
  96. package/src/html/tab_enhanced.js +378 -0
  97. package/src/html/tab_enhanced.test.js +504 -0
  98. package/src/html/table2.css +576 -0
  99. package/src/html/table2.example.js +703 -0
  100. package/src/html/table2.js +1252 -0
  101. package/src/html/table2.migration.md +328 -0
  102. package/src/html/table2.test.js +582 -0
  103. package/src/html/text.css +375 -0
  104. package/src/html/text.js +311 -20
  105. package/src/html/textfield2.css +842 -0
  106. package/src/html/textfield2.example.js +499 -0
  107. package/src/html/textfield2.js +1130 -0
  108. package/src/html/textfield2.test.js +950 -0
  109. package/src/html/thumbnail.css +289 -2
  110. package/src/html/thumbnail.js +214 -9
  111. package/src/html/tokenfield.css +449 -1
  112. package/src/html/tokenfield.example.js +503 -0
  113. package/src/html/tokenfield.js +561 -56
  114. package/src/html/tokenfield.test.js +423 -0
  115. package/src/html/tooltip-positioning-demo.js +187 -0
  116. package/src/html/tooltip.css +25 -2
  117. package/src/html/tree.css +228 -0
  118. package/src/html/tree.example.js +475 -0
  119. package/src/html/tree.js +712 -28
  120. package/src/html/tree_enhanced.test.js +495 -0
  121. package/table2.test.js +454 -0
  122. package/src/html/button.tsx +0 -38
package/src/html/list.css CHANGED
@@ -75,5 +75,397 @@
75
75
  }
76
76
 
77
77
  .list > ul li > .meta {
78
-
78
+ color: var(--text-color-light);
79
+ font-size: 0.875rem;
80
+ }
81
+
82
+ /* Enhanced List Styles - New functionality while maintaining compatibility */
83
+
84
+ /* Enhanced states */
85
+ .list--disabled {
86
+ opacity: 0.6;
87
+ pointer-events: none;
88
+ }
89
+
90
+ .list--loading {
91
+ min-height: 200px;
92
+ justify-content: center;
93
+ align-items: center;
94
+ }
95
+
96
+ .list--animated {
97
+ transition: opacity 0.2s ease;
98
+ }
99
+
100
+ /* Search functionality */
101
+ .list__search {
102
+ padding: 1rem;
103
+ border-bottom: 1px solid var(--divider-color, #e0e0e0);
104
+ background-color: var(--background-color-light, #fafafa);
105
+ }
106
+
107
+ /* Sort functionality */
108
+ .list__sort {
109
+ padding: 0.5rem 1rem;
110
+ border-bottom: 1px solid var(--divider-color, #e0e0e0);
111
+ background-color: var(--background-color-light, #fafafa);
112
+ }
113
+
114
+ .list__sort-button {
115
+ display: flex;
116
+ align-items: center;
117
+ gap: 0.5rem;
118
+ background: none;
119
+ border: none;
120
+ cursor: pointer;
121
+ padding: 0.25rem 0.5rem;
122
+ border-radius: 4px;
123
+ transition: background-color 0.2s ease;
124
+ }
125
+
126
+ .list__sort-button:hover {
127
+ background-color: var(--hover-color, rgba(0, 0, 0, 0.04));
128
+ }
129
+
130
+ /* Loading state */
131
+ .list__loading {
132
+ display: flex;
133
+ flex-direction: column;
134
+ align-items: center;
135
+ justify-content: center;
136
+ padding: 3rem;
137
+ gap: 1rem;
138
+ color: var(--text-color-light, #666);
139
+ }
140
+
141
+ /* Empty state */
142
+ .list__empty {
143
+ display: flex;
144
+ flex-direction: column;
145
+ align-items: center;
146
+ justify-content: center;
147
+ padding: 3rem;
148
+ gap: 1rem;
149
+ color: var(--text-color-light, #666);
150
+ }
151
+
152
+ .list__empty .icon {
153
+ opacity: 0.5;
154
+ }
155
+
156
+ /* Enhanced list items */
157
+ .list__items {
158
+ overflow-y: auto;
159
+ }
160
+
161
+ .list__item {
162
+ display: flex;
163
+ align-items: center;
164
+ padding: 0.75rem;
165
+ cursor: pointer;
166
+ border-bottom: solid 1px var(--divider-color, #e0e0e0);
167
+ transition: background-color 0.2s ease, transform 0.1s ease;
168
+ outline: none;
169
+ position: relative;
170
+ }
171
+
172
+ .list--dense .list__item {
173
+ padding: 0.5rem 0.75rem;
174
+ }
175
+
176
+ .list__item:focus {
177
+ background-color: var(--focus-color, rgba(0, 0, 0, 0.08));
178
+ outline: 2px solid var(--primary-color, #2196f3);
179
+ outline-offset: -2px;
180
+ }
181
+
182
+ .list__item--selected {
183
+ background-color: var(--primary-color-lighter, #e3f2fd);
184
+ border-left: 4px solid var(--primary-color, #2196f3);
185
+ }
186
+
187
+ .list__item--disabled {
188
+ opacity: 0.6;
189
+ cursor: not-allowed;
190
+ pointer-events: none;
191
+ }
192
+
193
+ .list__item--animated:active {
194
+ transform: scale(0.98);
195
+ }
196
+
197
+ /* Multi-select */
198
+ .list__item--multi-select {
199
+ padding-left: 0.5rem;
200
+ }
201
+
202
+ .list__item-selector {
203
+ margin-right: 0.75rem;
204
+ display: flex;
205
+ align-items: center;
206
+ }
207
+
208
+ .list__item-checkbox {
209
+ color: var(--primary-color, #2196f3);
210
+ }
211
+
212
+ /* Avatar */
213
+ .list__item-avatar {
214
+ margin-right: 1rem;
215
+ width: 40px;
216
+ height: 40px;
217
+ border-radius: 50%;
218
+ overflow: hidden;
219
+ display: flex;
220
+ align-items: center;
221
+ justify-content: center;
222
+ background-color: var(--divider-color, #e0e0e0);
223
+ }
224
+
225
+ .list--dense .list__item-avatar {
226
+ width: 32px;
227
+ height: 32px;
228
+ }
229
+
230
+ .list__item-avatar-img {
231
+ width: 100%;
232
+ height: 100%;
233
+ object-fit: cover;
234
+ }
235
+
236
+ /* Enhanced icon */
237
+ .list__item-icon {
238
+ margin-right: 1rem;
239
+ display: flex;
240
+ align-items: center;
241
+ justify-content: center;
242
+ }
243
+
244
+ /* Enhanced content */
245
+ .list__item-content {
246
+ flex: 1;
247
+ min-width: 0;
248
+ }
249
+
250
+ .list__item-primary {
251
+ display: flex;
252
+ align-items: center;
253
+ gap: 0.5rem;
254
+ margin-bottom: 0.25rem;
255
+ }
256
+
257
+ .list__item-line1 {
258
+ font-weight: 500;
259
+ color: var(--text-color, #333);
260
+ overflow: hidden;
261
+ text-overflow: ellipsis;
262
+ white-space: nowrap;
263
+ }
264
+
265
+ .list__item-secondary {
266
+ margin-top: 0.25rem;
267
+ }
268
+
269
+ .list__item-line2 {
270
+ color: var(--text-color-light, #666);
271
+ font-size: 0.875rem;
272
+ overflow: hidden;
273
+ text-overflow: ellipsis;
274
+ white-space: nowrap;
275
+ }
276
+
277
+ /* Badge */
278
+ .list__item-badge {
279
+ background-color: var(--primary-color, #2196f3);
280
+ color: white;
281
+ padding: 0.125rem 0.5rem;
282
+ border-radius: 12px;
283
+ font-size: 0.75rem;
284
+ font-weight: 500;
285
+ white-space: nowrap;
286
+ }
287
+
288
+ /* Enhanced meta */
289
+ .list__item-meta {
290
+ color: var(--text-color-light, #666);
291
+ font-size: 0.875rem;
292
+ margin-left: 1rem;
293
+ white-space: nowrap;
294
+ }
295
+
296
+ /* Actions */
297
+ .list__item-actions {
298
+ margin-left: 1rem;
299
+ display: flex;
300
+ gap: 0.25rem;
301
+ opacity: 0;
302
+ transition: opacity 0.2s ease;
303
+ }
304
+
305
+ .list__item:hover .list__item-actions,
306
+ .list__item:focus .list__item-actions {
307
+ opacity: 1;
308
+ }
309
+
310
+ /* Enhanced grouped list */
311
+ .list__group-header {
312
+ display: flex;
313
+ align-items: center;
314
+ padding: 0.5rem 0.75rem;
315
+ background-color: var(--background-color-light, #fafafa);
316
+ border-bottom: solid 1px var(--divider-color, #e0e0e0);
317
+ font-weight: 600;
318
+ color: var(--text-color-light, #666);
319
+ cursor: pointer;
320
+ transition: background-color 0.2s ease;
321
+ outline: none;
322
+ }
323
+
324
+ .list__group-header:hover {
325
+ background-color: var(--hover-color, rgba(0, 0, 0, 0.04));
326
+ }
327
+
328
+ .list__group-header:focus {
329
+ background-color: var(--focus-color, rgba(0, 0, 0, 0.08));
330
+ outline: 2px solid var(--primary-color, #2196f3);
331
+ outline-offset: -2px;
332
+ }
333
+
334
+ .list__group-toggle {
335
+ margin-right: 0.5rem;
336
+ transition: transform 0.2s ease;
337
+ }
338
+
339
+ .list__group-count {
340
+ margin-left: auto;
341
+ font-size: 0.75rem;
342
+ opacity: 0.7;
343
+ }
344
+
345
+ .list__group-items {
346
+ list-style: none;
347
+ padding: 0;
348
+ margin: 0;
349
+ }
350
+
351
+ /* Responsive Design */
352
+ @media (max-width: 768px) {
353
+ .list__search {
354
+ padding: 0.75rem;
355
+ }
356
+
357
+ .list__item {
358
+ padding: 0.5rem;
359
+ }
360
+
361
+ .list__item-avatar {
362
+ width: 32px;
363
+ height: 32px;
364
+ }
365
+
366
+ .list__item-icon {
367
+ margin-right: 0.75rem;
368
+ }
369
+
370
+ .list__item-meta {
371
+ margin-left: 0.5rem;
372
+ font-size: 0.75rem;
373
+ }
374
+
375
+ .list__item-actions {
376
+ opacity: 1; /* Always show on mobile */
377
+ }
378
+ }
379
+
380
+ /* Dark Theme Support */
381
+ @media (prefers-color-scheme: dark) {
382
+ .list__search,
383
+ .list__sort,
384
+ .list__group-header {
385
+ background-color: var(--background-color-light-dark, #424242);
386
+ border-color: var(--divider-color-dark, #616161);
387
+ }
388
+
389
+ .list__item {
390
+ border-color: var(--divider-color-dark, #616161);
391
+ }
392
+
393
+ .list__item:hover {
394
+ background-color: var(--hover-color-dark, rgba(255, 255, 255, 0.08));
395
+ }
396
+
397
+ .list__item:focus {
398
+ background-color: var(--focus-color-dark, rgba(255, 255, 255, 0.12));
399
+ }
400
+
401
+ .list__item-line1 {
402
+ color: var(--text-color-dark, #ffffff);
403
+ }
404
+
405
+ .list__item-line2,
406
+ .list__item-meta,
407
+ .list__loading,
408
+ .list__empty {
409
+ color: var(--text-color-light-dark, #cccccc);
410
+ }
411
+ }
412
+
413
+ /* High Contrast Mode */
414
+ @media (prefers-contrast: high) {
415
+ .list__item {
416
+ border-bottom-width: 2px;
417
+ }
418
+
419
+ .list__item:focus {
420
+ outline-width: 3px;
421
+ }
422
+
423
+ .list__item--selected {
424
+ border-left-width: 6px;
425
+ }
426
+ }
427
+
428
+ /* Reduced Motion */
429
+ @media (prefers-reduced-motion: reduce) {
430
+ .list--animated,
431
+ .list__item,
432
+ .list__sort-button,
433
+ .list__group-header,
434
+ .list__group-toggle,
435
+ .list__item-actions {
436
+ transition: none;
437
+ }
438
+
439
+ .list__item--animated:active {
440
+ transform: none;
441
+ }
442
+ }
443
+
444
+ /* Print Styles */
445
+ @media print {
446
+ .list {
447
+ break-inside: avoid;
448
+ }
449
+
450
+ .list__search,
451
+ .list__sort,
452
+ .list__item-actions {
453
+ display: none !important;
454
+ }
455
+
456
+ .list__item {
457
+ break-inside: avoid;
458
+ border-bottom: 1px solid black !important;
459
+ background: white !important;
460
+ }
461
+
462
+ .list__item-line1,
463
+ .list__item-line2,
464
+ .list__item-meta {
465
+ color: black !important;
466
+ }
467
+
468
+ .list__item-actions {
469
+ opacity: 0 !important;
470
+ }
79
471
  }