@bookklik/senangstart-css 0.2.0 → 0.2.3

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 (131) hide show
  1. package/dist/senangstart-css.js +84 -7
  2. package/dist/senangstart-css.min.js +25 -23
  3. package/docs/.vitepress/config.js +7 -4
  4. package/docs/SYNTAX-REFERENCE.md +1590 -1555
  5. package/docs/index.md +6 -0
  6. package/docs/ms/index.md +6 -0
  7. package/docs/ms/reference/visual/accent-color.md +6 -6
  8. package/docs/ms/reference/visual/animation-builtin.md +6 -6
  9. package/docs/ms/reference/visual/animation-delay.md +4 -2
  10. package/docs/ms/reference/visual/animation-direction.md +6 -6
  11. package/docs/ms/reference/visual/animation-duration.md +4 -4
  12. package/docs/ms/reference/visual/animation-fill.md +33 -9
  13. package/docs/ms/reference/visual/animation-iteration.md +5 -5
  14. package/docs/ms/reference/visual/animation-play.md +4 -4
  15. package/docs/ms/reference/visual/appearance.md +4 -4
  16. package/docs/ms/reference/visual/blend-modes.md +6 -6
  17. package/docs/ms/reference/visual/border-radius.md +8 -8
  18. package/docs/ms/reference/visual/box-shadow.md +6 -6
  19. package/docs/ms/reference/visual/caret-color.md +2 -2
  20. package/docs/ms/reference/visual/cursor.md +6 -6
  21. package/docs/ms/reference/visual/filter-blur.md +7 -7
  22. package/docs/ms/reference/visual/font-family.md +8 -8
  23. package/docs/ms/reference/visual/font-smoothing.md +4 -4
  24. package/docs/ms/reference/visual/font-style.md +4 -4
  25. package/docs/ms/reference/visual/font-variant-numeric.md +6 -4
  26. package/docs/ms/reference/visual/font-weight.md +6 -6
  27. package/docs/ms/reference/visual/hyphens.md +6 -6
  28. package/docs/ms/reference/visual/letter-spacing.md +8 -8
  29. package/docs/ms/reference/visual/line-clamp.md +9 -9
  30. package/docs/ms/reference/visual/line-height.md +8 -8
  31. package/docs/ms/reference/visual/list-style.md +7 -7
  32. package/docs/ms/reference/visual/mask.md +6 -2
  33. package/docs/ms/reference/visual/opacity.md +8 -8
  34. package/docs/ms/reference/visual/pointer-events.md +4 -4
  35. package/docs/ms/reference/visual/state-prefixes.md +5 -3
  36. package/docs/ms/reference/visual/text-decoration.md +6 -4
  37. package/docs/ms/reference/visual/text-indent.md +8 -4
  38. package/docs/ms/reference/visual/text-overflow.md +6 -4
  39. package/docs/ms/reference/visual/text-shadow.md +8 -2
  40. package/docs/ms/reference/visual/text-size.md +84 -66
  41. package/docs/ms/reference/visual/text-transform.md +6 -6
  42. package/docs/ms/reference/visual/text-wrap.md +8 -8
  43. package/docs/ms/reference/visual/transform-backface.md +29 -9
  44. package/docs/ms/reference/visual/transform-origin.md +4 -4
  45. package/docs/ms/reference/visual/transform-perspective-origin.md +41 -7
  46. package/docs/ms/reference/visual/transform-perspective.md +41 -7
  47. package/docs/ms/reference/visual/transform-rotate-3d.md +93 -0
  48. package/docs/ms/reference/visual/transform-rotate.md +6 -6
  49. package/docs/ms/reference/visual/transform-scale.md +7 -7
  50. package/docs/ms/reference/visual/transform-skew.md +6 -6
  51. package/docs/ms/reference/visual/transform-style.md +31 -11
  52. package/docs/ms/reference/visual/transform-translate-z.md +90 -0
  53. package/docs/ms/reference/visual/transform-translate.md +40 -14
  54. package/docs/ms/reference/visual/transition-delay.md +4 -2
  55. package/docs/ms/reference/visual/transition-duration.md +4 -4
  56. package/docs/ms/reference/visual/transition-timing.md +6 -6
  57. package/docs/ms/reference/visual/typography-keywords.md +8 -8
  58. package/docs/ms/reference/visual/user-select.md +4 -4
  59. package/docs/ms/reference/visual/vertical-align.md +10 -8
  60. package/docs/ms/reference/visual/whitespace.md +8 -8
  61. package/docs/ms/reference/visual/word-break.md +8 -8
  62. package/docs/public/assets/ss-logo.svg +83 -0
  63. package/docs/reference/visual/accent-color.md +6 -6
  64. package/docs/reference/visual/animation-builtin.md +6 -6
  65. package/docs/reference/visual/animation-delay.md +4 -2
  66. package/docs/reference/visual/animation-direction.md +6 -6
  67. package/docs/reference/visual/animation-duration.md +4 -4
  68. package/docs/reference/visual/animation-fill.md +33 -9
  69. package/docs/reference/visual/animation-iteration.md +5 -5
  70. package/docs/reference/visual/animation-play.md +4 -4
  71. package/docs/reference/visual/appearance.md +4 -4
  72. package/docs/reference/visual/blend-modes.md +6 -6
  73. package/docs/reference/visual/border-radius.md +8 -8
  74. package/docs/reference/visual/box-shadow.md +6 -6
  75. package/docs/reference/visual/caret-color.md +2 -2
  76. package/docs/reference/visual/cursor.md +6 -6
  77. package/docs/reference/visual/filter-blur.md +7 -7
  78. package/docs/reference/visual/font-family.md +8 -8
  79. package/docs/reference/visual/font-smoothing.md +4 -4
  80. package/docs/reference/visual/font-style.md +4 -4
  81. package/docs/reference/visual/font-variant-numeric.md +6 -4
  82. package/docs/reference/visual/font-weight.md +6 -6
  83. package/docs/reference/visual/hyphens.md +6 -6
  84. package/docs/reference/visual/letter-spacing.md +8 -8
  85. package/docs/reference/visual/line-clamp.md +9 -9
  86. package/docs/reference/visual/line-height.md +8 -8
  87. package/docs/reference/visual/list-style.md +7 -7
  88. package/docs/reference/visual/mask.md +6 -2
  89. package/docs/reference/visual/opacity.md +8 -8
  90. package/docs/reference/visual/pointer-events.md +4 -4
  91. package/docs/reference/visual/state-prefixes.md +5 -3
  92. package/docs/reference/visual/text-decoration.md +6 -4
  93. package/docs/reference/visual/text-indent.md +8 -4
  94. package/docs/reference/visual/text-overflow.md +6 -4
  95. package/docs/reference/visual/text-shadow.md +8 -2
  96. package/docs/reference/visual/text-size.md +84 -66
  97. package/docs/reference/visual/text-transform.md +6 -6
  98. package/docs/reference/visual/text-wrap.md +8 -8
  99. package/docs/reference/visual/transform-backface.md +29 -9
  100. package/docs/reference/visual/transform-origin.md +4 -4
  101. package/docs/reference/visual/transform-perspective-origin.md +41 -7
  102. package/docs/reference/visual/transform-perspective.md +41 -7
  103. package/docs/reference/visual/transform-rotate-3d.md +93 -0
  104. package/docs/reference/visual/transform-rotate.md +6 -6
  105. package/docs/reference/visual/transform-scale.md +7 -7
  106. package/docs/reference/visual/transform-skew.md +6 -6
  107. package/docs/reference/visual/transform-style.md +31 -11
  108. package/docs/reference/visual/transform-translate-z.md +90 -0
  109. package/docs/reference/visual/transform-translate.md +40 -14
  110. package/docs/reference/visual/transition-delay.md +4 -2
  111. package/docs/reference/visual/transition-duration.md +4 -4
  112. package/docs/reference/visual/transition-timing.md +6 -6
  113. package/docs/reference/visual/typography-keywords.md +8 -8
  114. package/docs/reference/visual/user-select.md +4 -4
  115. package/docs/reference/visual/vertical-align.md +10 -8
  116. package/docs/reference/visual/whitespace.md +8 -8
  117. package/docs/reference/visual/word-break.md +8 -8
  118. package/docs/syntax-reference.json +2009 -1972
  119. package/package.json +2 -2
  120. package/playground/index.html +37 -38
  121. package/playground/sample_code.txt +23 -0
  122. package/playground/tw-convertor.html +13 -13
  123. package/scripts/generate-docs.js +9 -7
  124. package/src/cdn/jit.js +51 -7
  125. package/src/compiler/generators/css.js +24 -2
  126. package/src/config/defaults.js +31 -7
  127. package/src/definitions/visual-transform3d.js +202 -36
  128. package/src/definitions/visual-transforms.js +42 -25
  129. package/src/definitions/visual-transitions.js +40 -26
  130. package/src/definitions/visual-typography.js +53 -44
  131. package/src/definitions/visual.js +73 -58
package/docs/index.md CHANGED
@@ -37,6 +37,12 @@ features:
37
37
  details: Override any scale, add custom colors, extend the theme to match your brand.
38
38
  ---
39
39
 
40
+ <style>
41
+ .image-container .VPImage {
42
+ filter: drop-shadow(2px 2px 0px rgba(0, 0, 0, 0.2));
43
+ }
44
+ </style>
45
+
40
46
  ## Quick Example
41
47
 
42
48
  ```html
package/docs/ms/index.md CHANGED
@@ -37,6 +37,12 @@ features:
37
37
  details: Tindih ganti mana-mana skala, tambah warna tersuai, lanjutkan tema untuk padankan jenama anda.
38
38
  ---
39
39
 
40
+ <style>
41
+ .image-container .VPImage {
42
+ filter: drop-shadow(2px 2px 0px rgba(0, 0, 0, 0.2));
43
+ }
44
+ </style>
45
+
40
46
  ## Contoh Pantas
41
47
 
42
48
  ```html
@@ -22,9 +22,9 @@ visual="accent:[color]"
22
22
  <div layout="flex col" space="g:medium">
23
23
  <p space="m:none" visual="text:neutral-600 dark:text:neutral-400 text-sm"><code>visual="accent:primary"</code> - Gaya kawalan borang asli (kotak semak, radio, julat)</p>
24
24
  <div layout="flex" space="g:medium p:medium" visual="bg:neutral-100 dark:bg:neutral-900 rounded:medium">
25
- <input type="checkbox" checked style="accent-color: #3b82f6; width: 20px; height: 20px;">
26
- <input type="radio" checked style="accent-color: #10b981; width: 20px; height: 20px;">
27
- <input type="range" style="accent-color: #8b5cf6; width: 100px;">
25
+ <input type="checkbox" checked visual="accent:primary w:[20px] h:[20px]">
26
+ <input type="radio" checked visual="accent:success w:[20px] h:[20px]">
27
+ <input type="range" visual="accent:secondary w:[100px]">
28
28
  </div>
29
29
  </div>
30
30
 
@@ -33,9 +33,9 @@ visual="accent:[color]"
33
33
 
34
34
  ```html
35
35
  <div layout="flex" space="g:medium p:medium" visual="bg:neutral-100 dark:bg:neutral-900 rounded:medium">
36
- <input type="checkbox" checked style="accent-color: #3b82f6; width: 20px; height: 20px;">
37
- <input type="radio" checked style="accent-color: #10b981; width: 20px; height: 20px;">
38
- <input type="range" style="accent-color: #8b5cf6; width: 100px;">
36
+ <input type="checkbox" checked visual="accent:primary w:[20px] h:[20px]">
37
+ <input type="radio" checked visual="accent:success w:[20px] h:[20px]">
38
+ <input type="range" visual="accent:secondary w:[100px]">
39
39
  </div>
40
40
  ```
41
41
 
@@ -32,9 +32,9 @@ visual="animate:[value]"
32
32
  <div layout="flex col" space="g:medium">
33
33
  <p space="m:none" visual="text:neutral-600 dark:text:neutral-400 text-sm"><code>visual="animate:spin"</code> - Animasi sedia guna</p>
34
34
  <div layout="flex" space="g:medium p:medium" visual="bg:neutral-100 dark:bg:neutral-900 rounded:medium">
35
- <div space="p:small" visual="bg:primary text:white rounded:small">spin</div>
36
- <div space="p:small" visual="bg:primary text:white rounded:small">pulse</div>
37
- <div space="p:small" visual="bg:primary text:white rounded:small">bounce</div>
35
+ <div space="p:small" visual="bg:primary text:white rounded:small animate:spin">spin</div>
36
+ <div space="p:small" visual="bg:primary text:white rounded:small animate:pulse">pulse</div>
37
+ <div space="p:small" visual="bg:primary text:white rounded:small animate:bounce">bounce</div>
38
38
  </div>
39
39
  </div>
40
40
 
@@ -43,9 +43,9 @@ visual="animate:[value]"
43
43
 
44
44
  ```html
45
45
  <div layout="flex" space="g:medium p:medium" visual="bg:neutral-100 dark:bg:neutral-900 rounded:medium">
46
- <div space="p:small" visual="bg:primary text:white rounded:small">spin</div>
47
- <div space="p:small" visual="bg:primary text:white rounded:small">pulse</div>
48
- <div space="p:small" visual="bg:primary text:white rounded:small">bounce</div>
46
+ <div space="p:small" visual="bg:primary text:white rounded:small animate:spin">spin</div>
47
+ <div space="p:small" visual="bg:primary text:white rounded:small animate:pulse">pulse</div>
48
+ <div space="p:small" visual="bg:primary text:white rounded:small animate:bounce">bounce</div>
49
49
  </div>
50
50
  ```
51
51
 
@@ -32,7 +32,8 @@ visual="animation-delay:[value]"
32
32
  <div layout="flex col" space="g:medium">
33
33
  <p space="m:none" visual="text:neutral-600 dark:text:neutral-400 text-sm"><code>visual="animation-delay:slow"</code> - Kelewatan sebelum animasi bermula</p>
34
34
  <div layout="flex" space="g:medium p:medium" visual="bg:neutral-100 dark:bg:neutral-900 rounded:medium">
35
- <div space="p:small" visual="bg:primary text:white rounded:small">delay:slow (300ms)</div>
35
+ <div space="p:small" visual="bg:primary text:white rounded:small animate:pulse animation-delay:instant">instant</div>
36
+ <div space="p:small" visual="bg:primary text:white rounded:small animate:pulse animation-delay:slow">slow</div>
36
37
  </div>
37
38
  </div>
38
39
 
@@ -41,7 +42,8 @@ visual="animation-delay:[value]"
41
42
 
42
43
  ```html
43
44
  <div layout="flex" space="g:medium p:medium" visual="bg:neutral-100 dark:bg:neutral-900 rounded:medium">
44
- <div space="p:small" visual="bg:primary text:white rounded:small">delay:slow (300ms)</div>
45
+ <div space="p:small" visual="bg:primary text:white rounded:small animate:pulse animation-delay:instant">instant</div>
46
+ <div space="p:small" visual="bg:primary text:white rounded:small animate:pulse animation-delay:slow">slow</div>
45
47
  </div>
46
48
  ```
47
49
 
@@ -31,9 +31,9 @@ visual="animation-direction:[value]"
31
31
  <div layout="flex col" space="g:medium">
32
32
  <p space="m:none" visual="text:neutral-600 dark:text:neutral-400 text-sm"><code>visual="animation-direction:alternate"</code> - Kawal arah main balik</p>
33
33
  <div layout="flex" space="g:medium p:medium" visual="bg:neutral-100 dark:bg:neutral-900 rounded:medium">
34
- <div space="p:small" visual="bg:primary text:white rounded:small">normal</div>
35
- <div space="p:small" visual="bg:primary text:white rounded:small">reverse</div>
36
- <div space="p:small" visual="bg:primary text:white rounded:small">alternate</div>
34
+ <div space="p:small" visual="bg:primary text:white rounded:small animate:spin animation-direction:normal">normal</div>
35
+ <div space="p:small" visual="bg:primary text:white rounded:small animate:spin animation-direction:reverse">reverse</div>
36
+ <div space="p:small" visual="bg:primary text:white rounded:small animate:spin animation-direction:alternate">alternate</div>
37
37
  </div>
38
38
  </div>
39
39
 
@@ -42,9 +42,9 @@ visual="animation-direction:[value]"
42
42
 
43
43
  ```html
44
44
  <div layout="flex" space="g:medium p:medium" visual="bg:neutral-100 dark:bg:neutral-900 rounded:medium">
45
- <div space="p:small" visual="bg:primary text:white rounded:small">normal</div>
46
- <div space="p:small" visual="bg:primary text:white rounded:small">reverse</div>
47
- <div space="p:small" visual="bg:primary text:white rounded:small">alternate</div>
45
+ <div space="p:small" visual="bg:primary text:white rounded:small animate:spin animation-direction:normal">normal</div>
46
+ <div space="p:small" visual="bg:primary text:white rounded:small animate:spin animation-direction:reverse">reverse</div>
47
+ <div space="p:small" visual="bg:primary text:white rounded:small animate:spin animation-direction:alternate">alternate</div>
48
48
  </div>
49
49
  ```
50
50
 
@@ -34,8 +34,8 @@ visual="animation-duration:[value]"
34
34
  <div layout="flex col" space="g:medium">
35
35
  <p space="m:none" visual="text:neutral-600 dark:text:neutral-400 text-sm"><code>visual="animation-duration:slow"</code> - Kawal kelajuan animasi</p>
36
36
  <div layout="flex" space="g:medium p:medium" visual="bg:neutral-100 dark:bg:neutral-900 rounded:medium">
37
- <div space="p:small" visual="bg:primary text:white rounded:small">fast: 150ms</div>
38
- <div space="p:small" visual="bg:primary text:white rounded:small">slow: 300ms</div>
37
+ <div space="p:small" visual="bg:primary text:white rounded:small animate:spin animation-duration:fast">fast</div>
38
+ <div space="p:small" visual="bg:primary text:white rounded:small animate:spin animation-duration:slow">slow</div>
39
39
  </div>
40
40
  </div>
41
41
 
@@ -44,8 +44,8 @@ visual="animation-duration:[value]"
44
44
 
45
45
  ```html
46
46
  <div layout="flex" space="g:medium p:medium" visual="bg:neutral-100 dark:bg:neutral-900 rounded:medium">
47
- <div space="p:small" visual="bg:primary text:white rounded:small">fast: 150ms</div>
48
- <div space="p:small" visual="bg:primary text:white rounded:small">slow: 300ms</div>
47
+ <div space="p:small" visual="bg:primary text:white rounded:small animate:spin animation-duration:fast">fast</div>
48
+ <div space="p:small" visual="bg:primary text:white rounded:small animate:spin animation-duration:slow">slow</div>
49
49
  </div>
50
50
  ```
51
51
 
@@ -29,11 +29,23 @@ visual="animation-fill:[value]"
29
29
  ### Pengisian Animasi
30
30
 
31
31
  <div layout="flex col" space="g:medium">
32
- <p space="m:none" visual="text:neutral-600 dark:text:neutral-400 text-sm"><code>visual="animation-fill:forwards"</code> - Kawal keadaan sebelum/selepas animasi</p>
33
- <div layout="flex" space="g:medium p:medium" visual="bg:neutral-100 dark:bg:neutral-900 rounded:medium">
34
- <div space="p:small" visual="bg:primary text:white rounded:small">none</div>
35
- <div space="p:small" visual="bg:primary text:white rounded:small">forwards</div>
36
- <div space="p:small" visual="bg:primary text:white rounded:small">both</div>
32
+ <p space="m:none" visual="text:neutral-600 dark:text:neutral-400 text-sm"><code>visual="animation-fill:forwards"</code> - Kawal keadaan sebelum/selepas animasi. "forwards" kekalkan keadaan akhir, "none" kembali kepada asal.</p>
33
+ <div layout="flex:col" space="g:medium p:medium" visual="bg:neutral-100 dark:bg:neutral-900 rounded:medium">
34
+ <p visual="text-size:small text:neutral-600 dark:text:neutral-400">Hover to replay animation:</p>
35
+ <div layout="flex" space="g:medium">
36
+ <div layout="flex:col" space="g:tiny">
37
+ <span visual="text-size:tiny text:neutral-500">none (returns)</span>
38
+ <div space="p:small" visual="bg:primary text:white rounded:small animate:bounce animation-iteration:1 animation-fill:none hover:animate:bounce">⬆</div>
39
+ </div>
40
+ <div layout="flex:col" space="g:tiny">
41
+ <span visual="text-size:tiny text:neutral-500">forwards (stays)</span>
42
+ <div space="p:small" visual="bg:success text:white rounded:small animate:bounce animation-iteration:1 animation-fill:forwards hover:animate:bounce">⬆</div>
43
+ </div>
44
+ <div layout="flex:col" space="g:tiny">
45
+ <span visual="text-size:tiny text:neutral-500">both</span>
46
+ <div space="p:small" visual="bg:warning text:white rounded:small animate:bounce animation-iteration:1 animation-fill:both hover:animate:bounce">⬆</div>
47
+ </div>
48
+ </div>
37
49
  </div>
38
50
  </div>
39
51
 
@@ -41,10 +53,22 @@ visual="animation-fill:[value]"
41
53
  <summary>Lihat Kod</summary>
42
54
 
43
55
  ```html
44
- <div layout="flex" space="g:medium p:medium" visual="bg:neutral-100 dark:bg:neutral-900 rounded:medium">
45
- <div space="p:small" visual="bg:primary text:white rounded:small">none</div>
46
- <div space="p:small" visual="bg:primary text:white rounded:small">forwards</div>
47
- <div space="p:small" visual="bg:primary text:white rounded:small">both</div>
56
+ <div layout="flex:col" space="g:medium p:medium" visual="bg:neutral-100 dark:bg:neutral-900 rounded:medium">
57
+ <p visual="text-size:small text:neutral-600 dark:text:neutral-400">Hover to replay animation:</p>
58
+ <div layout="flex" space="g:medium">
59
+ <div layout="flex:col" space="g:tiny">
60
+ <span visual="text-size:tiny text:neutral-500">none (returns)</span>
61
+ <div space="p:small" visual="bg:primary text:white rounded:small animate:bounce animation-iteration:1 animation-fill:none hover:animate:bounce">⬆</div>
62
+ </div>
63
+ <div layout="flex:col" space="g:tiny">
64
+ <span visual="text-size:tiny text:neutral-500">forwards (stays)</span>
65
+ <div space="p:small" visual="bg:success text:white rounded:small animate:bounce animation-iteration:1 animation-fill:forwards hover:animate:bounce">⬆</div>
66
+ </div>
67
+ <div layout="flex:col" space="g:tiny">
68
+ <span visual="text-size:tiny text:neutral-500">both</span>
69
+ <div space="p:small" visual="bg:warning text:white rounded:small animate:bounce animation-iteration:1 animation-fill:both hover:animate:bounce">⬆</div>
70
+ </div>
71
+ </div>
48
72
  </div>
49
73
  ```
50
74
 
@@ -27,10 +27,10 @@ visual="animation-iteration:[value]"
27
27
  ### Ulangan Animasi
28
28
 
29
29
  <div layout="flex col" space="g:medium">
30
- <p space="m:none" visual="text:neutral-600 dark:text:neutral-400 text-sm"><code>visual="animation-iteration:1"</code> - Kawal bilangan gelung</p>
30
+ <p space="m:none" visual="text:neutral-600 dark:text:neutral-400 text-sm"><code>visual="animation-iteration:infinite"</code> - Kawal bilangan gelung</p>
31
31
  <div layout="flex" space="g:medium p:medium" visual="bg:neutral-100 dark:bg:neutral-900 rounded:medium">
32
- <div space="p:small" visual="bg:primary text:white rounded:small">1 (once)</div>
33
- <div space="p:small" visual="bg:primary text:white rounded:small">infinite</div>
32
+ <div space="p:small" visual="bg:primary text:white rounded:small animate:bounce animation-iteration:1">once</div>
33
+ <div space="p:small" visual="bg:primary text:white rounded:small animate:bounce animation-iteration:infinite">infinite</div>
34
34
  </div>
35
35
  </div>
36
36
 
@@ -39,8 +39,8 @@ visual="animation-iteration:[value]"
39
39
 
40
40
  ```html
41
41
  <div layout="flex" space="g:medium p:medium" visual="bg:neutral-100 dark:bg:neutral-900 rounded:medium">
42
- <div space="p:small" visual="bg:primary text:white rounded:small">1 (once)</div>
43
- <div space="p:small" visual="bg:primary text:white rounded:small">infinite</div>
42
+ <div space="p:small" visual="bg:primary text:white rounded:small animate:bounce animation-iteration:1">once</div>
43
+ <div space="p:small" visual="bg:primary text:white rounded:small animate:bounce animation-iteration:infinite">infinite</div>
44
44
  </div>
45
45
  ```
46
46
 
@@ -29,8 +29,8 @@ visual="animation-play:[value]"
29
29
  <div layout="flex col" space="g:medium">
30
30
  <p space="m:none" visual="text:neutral-600 dark:text:neutral-400 text-sm"><code>visual="animation-play:paused"</code> - Jeda atau sambung animasi</p>
31
31
  <div layout="flex" space="g:medium p:medium" visual="bg:neutral-100 dark:bg:neutral-900 rounded:medium">
32
- <div space="p:small" visual="bg:primary text:white rounded:small">running</div>
33
- <div space="p:small" visual="bg:primary text:white rounded:small">paused</div>
32
+ <div space="p:small" visual="bg:primary text:white rounded:small animate:spin animation-play:running">running</div>
33
+ <div space="p:small" visual="bg:primary text:white rounded:small animate:spin animation-play:paused">paused</div>
34
34
  </div>
35
35
  </div>
36
36
 
@@ -39,8 +39,8 @@ visual="animation-play:[value]"
39
39
 
40
40
  ```html
41
41
  <div layout="flex" space="g:medium p:medium" visual="bg:neutral-100 dark:bg:neutral-900 rounded:medium">
42
- <div space="p:small" visual="bg:primary text:white rounded:small">running</div>
43
- <div space="p:small" visual="bg:primary text:white rounded:small">paused</div>
42
+ <div space="p:small" visual="bg:primary text:white rounded:small animate:spin animation-play:running">running</div>
43
+ <div space="p:small" visual="bg:primary text:white rounded:small animate:spin animation-play:paused">paused</div>
44
44
  </div>
45
45
  ```
46
46
 
@@ -29,8 +29,8 @@ visual="appearance:[value]"
29
29
  <div layout="flex col" space="g:medium">
30
30
  <p space="m:none" visual="text:neutral-600 dark:text:neutral-400 text-sm"><code>visual="appearance:none"</code> - Buang gaya pelayar asli dari elemen borang</p>
31
31
  <div layout="flex" space="g:medium p:medium" visual="bg:neutral-100 dark:bg:neutral-900 rounded:medium">
32
- <select style="appearance: auto; padding: 0.25rem;"><option>Native</option></select>
33
- <select style="appearance: none; padding: 0.25rem; background: white; border: 1px solid #e5e7eb; border-radius: 0.25rem;"><option>Custom</option></select>
32
+ <select space="p:tiny" visual="appearance:auto"><option>Native</option></select>
33
+ <select space="p:tiny" visual="appearance:none bg:white border:neutral-300 rounded:small"><option>Custom</option></select>
34
34
  </div>
35
35
  </div>
36
36
 
@@ -39,8 +39,8 @@ visual="appearance:[value]"
39
39
 
40
40
  ```html
41
41
  <div layout="flex" space="g:medium p:medium" visual="bg:neutral-100 dark:bg:neutral-900 rounded:medium">
42
- <select style="appearance: auto; padding: 0.25rem;"><option>Native</option></select>
43
- <select style="appearance: none; padding: 0.25rem; background: white; border: 1px solid #e5e7eb; border-radius: 0.25rem;"><option>Custom</option></select>
42
+ <select space="p:tiny" visual="appearance:auto"><option>Native</option></select>
43
+ <select space="p:tiny" visual="appearance:none bg:white border:neutral-300 rounded:small"><option>Custom</option></select>
44
44
  </div>
45
45
  ```
46
46
 
@@ -32,9 +32,9 @@ visual="mix-blend:[value]"
32
32
 
33
33
  <div layout="flex col" space="g:medium">
34
34
  <p space="m:none" visual="text:neutral-600 dark:text:neutral-400 text-sm"><code>visual="mix-blend:multiply"</code> - Campurkan elemen dengan kandungan di belakangnya</p>
35
- <div layout="flex" space="g:medium p:medium" visual="rounded:medium" style="background: linear-gradient(135deg, #ef4444, #f97316);">
36
- <div space="p:small" visual="text:white rounded:small" style="mix-blend-mode: multiply; background: #3b82f6;">multiply</div>
37
- <div space="p:small" visual="text:white rounded:small" style="mix-blend-mode: screen; background: #3b82f6;">screen</div>
35
+ <div layout="flex" space="g:medium p:medium" visual="rounded:medium bg:gradient-red-orange">
36
+ <div space="p:small" visual="bg:blue-500 text:white rounded:small mix-blend:multiply">multiply</div>
37
+ <div space="p:small" visual="bg:blue-500 text:white rounded:small mix-blend:screen">screen</div>
38
38
  </div>
39
39
  </div>
40
40
 
@@ -42,9 +42,9 @@ visual="mix-blend:[value]"
42
42
  <summary>Lihat Kod</summary>
43
43
 
44
44
  ```html
45
- <div layout="flex" space="g:medium p:medium" visual="rounded:medium" style="background: linear-gradient(135deg, #ef4444, #f97316);">
46
- <div space="p:small" visual="text:white rounded:small" style="mix-blend-mode: multiply; background: #3b82f6;">multiply</div>
47
- <div space="p:small" visual="text:white rounded:small" style="mix-blend-mode: screen; background: #3b82f6;">screen</div>
45
+ <div layout="flex" space="g:medium p:medium" visual="rounded:medium bg:gradient-red-orange">
46
+ <div space="p:small" visual="bg:blue-500 text:white rounded:small mix-blend:multiply">multiply</div>
47
+ <div space="p:small" visual="bg:blue-500 text:white rounded:small mix-blend:screen">screen</div>
48
48
  </div>
49
49
  ```
50
50
 
@@ -33,10 +33,10 @@ visual="rounded:[value]"
33
33
  <div layout="flex col" space="g:medium">
34
34
  <p space="m:none" visual="text:neutral-600 dark:text:neutral-400 text-sm"><code>visual="rounded:medium"</code> - Bulatkan sudut elemen dari halus hingga berbentuk pil</p>
35
35
  <div layout="flex" space="g:medium p:medium" visual="bg:neutral-100 dark:bg:neutral-900 rounded:medium">
36
- <div space="p:small" visual="bg:primary text:white" style="border-radius: 0;">none</div>
37
- <div space="p:small" visual="bg:primary text:white" style="border-radius: 0.25rem;">small</div>
38
- <div space="p:small" visual="bg:primary text:white" style="border-radius: 0.5rem;">medium</div>
39
- <div space="p:small" visual="bg:primary text:white" style="border-radius: 9999px;">round</div>
36
+ <div space="p:small" visual="bg:primary text:white rounded:none">none</div>
37
+ <div space="p:small" visual="bg:primary text:white rounded:small">small</div>
38
+ <div space="p:small" visual="bg:primary text:white rounded:medium">medium</div>
39
+ <div space="p:small" visual="bg:primary text:white rounded:round">round</div>
40
40
  </div>
41
41
  </div>
42
42
 
@@ -45,10 +45,10 @@ visual="rounded:[value]"
45
45
 
46
46
  ```html
47
47
  <div layout="flex" space="g:medium p:medium" visual="bg:neutral-100 dark:bg:neutral-900 rounded:medium">
48
- <div space="p:small" visual="bg:primary text:white" style="border-radius: 0;">none</div>
49
- <div space="p:small" visual="bg:primary text:white" style="border-radius: 0.25rem;">small</div>
50
- <div space="p:small" visual="bg:primary text:white" style="border-radius: 0.5rem;">medium</div>
51
- <div space="p:small" visual="bg:primary text:white" style="border-radius: 9999px;">round</div>
48
+ <div space="p:small" visual="bg:primary text:white rounded:none">none</div>
49
+ <div space="p:small" visual="bg:primary text:white rounded:small">small</div>
50
+ <div space="p:small" visual="bg:primary text:white rounded:medium">medium</div>
51
+ <div space="p:small" visual="bg:primary text:white rounded:round">round</div>
52
52
  </div>
53
53
  ```
54
54
 
@@ -32,9 +32,9 @@ visual="shadow:[value]"
32
32
  <div layout="flex col" space="g:medium">
33
33
  <p space="m:none" visual="text:neutral-600 dark:text:neutral-400 text-sm"><code>visual="shadow:medium"</code> - Tambah ketinggian dengan bayang dari halus hingga dramatik</p>
34
34
  <div layout="flex" space="g:big p:medium" visual="bg:neutral-100 dark:bg:neutral-900 rounded:medium">
35
- <div space="p:small" visual="bg:white dark:bg:neutral-800 rounded:small" style="box-shadow: 0 1px 2px rgba(0,0,0,0.1);">small</div>
36
- <div space="p:small" visual="bg:white dark:bg:neutral-800 rounded:small" style="box-shadow: 0 4px 6px rgba(0,0,0,0.1);">medium</div>
37
- <div space="p:small" visual="bg:white dark:bg:neutral-800 rounded:small" style="box-shadow: 0 10px 15px rgba(0,0,0,0.15);">big</div>
35
+ <div space="p:small" visual="bg:white dark:bg:neutral-800 rounded:small shadow:small">small</div>
36
+ <div space="p:small" visual="bg:white dark:bg:neutral-800 rounded:small shadow:medium">medium</div>
37
+ <div space="p:small" visual="bg:white dark:bg:neutral-800 rounded:small shadow:big">big</div>
38
38
  </div>
39
39
  </div>
40
40
 
@@ -43,9 +43,9 @@ visual="shadow:[value]"
43
43
 
44
44
  ```html
45
45
  <div layout="flex" space="g:big p:medium" visual="bg:neutral-100 dark:bg:neutral-900 rounded:medium">
46
- <div space="p:small" visual="bg:white dark:bg:neutral-800 rounded:small" style="box-shadow: 0 1px 2px rgba(0,0,0,0.1);">small</div>
47
- <div space="p:small" visual="bg:white dark:bg:neutral-800 rounded:small" style="box-shadow: 0 4px 6px rgba(0,0,0,0.1);">medium</div>
48
- <div space="p:small" visual="bg:white dark:bg:neutral-800 rounded:small" style="box-shadow: 0 10px 15px rgba(0,0,0,0.15);">big</div>
46
+ <div space="p:small" visual="bg:white dark:bg:neutral-800 rounded:small shadow:small">small</div>
47
+ <div space="p:small" visual="bg:white dark:bg:neutral-800 rounded:small shadow:medium">medium</div>
48
+ <div space="p:small" visual="bg:white dark:bg:neutral-800 rounded:small shadow:big">big</div>
49
49
  </div>
50
50
  ```
51
51
 
@@ -22,7 +22,7 @@ visual="caret:[color]"
22
22
  <div layout="flex col" space="g:medium">
23
23
  <p space="m:none" visual="text:neutral-600 dark:text:neutral-400 text-sm"><code>visual="caret:primary"</code> - Gaya kursor teks dalam medan input</p>
24
24
  <div space="p:medium" visual="bg:neutral-100 dark:bg:neutral-900 rounded:medium">
25
- <input type="text" placeholder="Type here..." style="caret-color: #3b82f6; padding: 0.5rem; border: 1px solid #e5e7eb; border-radius: 0.25rem;">
25
+ <input type="text" placeholder="Type here..." space="p:small" visual="caret:primary border:neutral-300 rounded:small">
26
26
  </div>
27
27
  </div>
28
28
 
@@ -31,7 +31,7 @@ visual="caret:[color]"
31
31
 
32
32
  ```html
33
33
  <div space="p:medium" visual="bg:neutral-100 dark:bg:neutral-900 rounded:medium">
34
- <input type="text" placeholder="Type here..." style="caret-color: #3b82f6; padding: 0.5rem; border: 1px solid #e5e7eb; border-radius: 0.25rem;">
34
+ <input type="text" placeholder="Type here..." space="p:small" visual="caret:primary border:neutral-300 rounded:small">
35
35
  </div>
36
36
  ```
37
37
 
@@ -36,9 +36,9 @@ visual="cursor:[value]"
36
36
  <div layout="flex col" space="g:medium">
37
37
  <p space="m:none" visual="text:neutral-600 dark:text:neutral-400 text-sm"><code>visual="cursor:pointer"</code> - Tukar kursor tetikus semasa hover</p>
38
38
  <div layout="flex" space="g:medium p:medium" visual="bg:neutral-100 dark:bg:neutral-900 rounded:medium">
39
- <div space="p:small" visual="bg:primary text:white rounded:small" style="cursor: pointer;">pointer</div>
40
- <div space="p:small" visual="bg:primary text:white rounded:small" style="cursor: wait;">wait</div>
41
- <div space="p:small" visual="bg:primary text:white rounded:small" style="cursor: not-allowed;">not-allowed</div>
39
+ <div space="p:small" visual="bg:primary text:white rounded:small cursor:pointer">pointer</div>
40
+ <div space="p:small" visual="bg:primary text:white rounded:small cursor:wait">wait</div>
41
+ <div space="p:small" visual="bg:primary text:white rounded:small cursor:not-allowed">not-allowed</div>
42
42
  </div>
43
43
  </div>
44
44
 
@@ -47,9 +47,9 @@ visual="cursor:[value]"
47
47
 
48
48
  ```html
49
49
  <div layout="flex" space="g:medium p:medium" visual="bg:neutral-100 dark:bg:neutral-900 rounded:medium">
50
- <div space="p:small" visual="bg:primary text:white rounded:small" style="cursor: pointer;">pointer</div>
51
- <div space="p:small" visual="bg:primary text:white rounded:small" style="cursor: wait;">wait</div>
52
- <div space="p:small" visual="bg:primary text:white rounded:small" style="cursor: not-allowed;">not-allowed</div>
50
+ <div space="p:small" visual="bg:primary text:white rounded:small cursor:pointer">pointer</div>
51
+ <div space="p:small" visual="bg:primary text:white rounded:small cursor:wait">wait</div>
52
+ <div space="p:small" visual="bg:primary text:white rounded:small cursor:not-allowed">not-allowed</div>
53
53
  </div>
54
54
  ```
55
55
 
@@ -32,11 +32,11 @@ visual="blur:[value]"
32
32
  ### Kabur
33
33
 
34
34
  <div layout="flex col" space="g:medium">
35
- <p space="m:none" visual="text:neutral-600 dark:text:neutral-400 text-sm"><code>visual="blur:medium"</code> - Terapkan penapis kabur gaussian pada elemen</p>
35
+ <p space="m:none" visual="text:neutral-600 dark:text:neutral-400 text-sm"><code>visual="blur:small"</code> - Terapkan penapis kabur gaussian pada elemen</p>
36
36
  <div layout="flex" space="g:medium p:medium" visual="bg:neutral-100 dark:bg:neutral-900 rounded:medium">
37
- <div space="p:small" visual="bg:primary text:white rounded:small">none</div>
38
- <div space="p:small" visual="bg:primary text:white rounded:small" style="filter: blur(2px);">small</div>
39
- <div space="p:small" visual="bg:primary text:white rounded:small" style="filter: blur(4px);">medium</div>
37
+ <div space="p:small" visual="bg:primary text:white rounded:small blur:none">none</div>
38
+ <div space="p:small" visual="bg:primary text:white rounded:small blur:tiny">tiny</div>
39
+ <div space="p:small" visual="bg:primary text:white rounded:small blur:small">small</div>
40
40
  </div>
41
41
  </div>
42
42
 
@@ -45,9 +45,9 @@ visual="blur:[value]"
45
45
 
46
46
  ```html
47
47
  <div layout="flex" space="g:medium p:medium" visual="bg:neutral-100 dark:bg:neutral-900 rounded:medium">
48
- <div space="p:small" visual="bg:primary text:white rounded:small">none</div>
49
- <div space="p:small" visual="bg:primary text:white rounded:small" style="filter: blur(2px);">small</div>
50
- <div space="p:small" visual="bg:primary text:white rounded:small" style="filter: blur(4px);">medium</div>
48
+ <div space="p:small" visual="bg:primary text:white rounded:small blur:none">none</div>
49
+ <div space="p:small" visual="bg:primary text:white rounded:small blur:tiny">tiny</div>
50
+ <div space="p:small" visual="bg:primary text:white rounded:small blur:small">small</div>
51
51
  </div>
52
52
  ```
53
53
 
@@ -29,10 +29,10 @@ visual="font:[family]"
29
29
 
30
30
  <div layout="flex col" space="g:medium">
31
31
  <p space="m:none" visual="text:neutral-600 dark:text:neutral-400 text-sm"><code>visual="font:sans"</code> - Pilih antara sans, serif, atau mono</p>
32
- <div layout="flex col" space="g:small p:medium" visual="bg:neutral-100 dark:bg:neutral-900 rounded:medium">
33
- <span style="font-family: ui-sans-serif, system-ui, sans-serif;">Sans-serif font</span>
34
- <span style="font-family: ui-serif, Georgia, serif;">Serif font</span>
35
- <span style="font-family: ui-monospace, monospace;">Monospace font</span>
32
+ <div layout="flex:col" space="g:small p:medium" visual="bg:neutral-100 dark:bg:neutral-900 rounded:medium">
33
+ <span visual="font:sans">Sans-serif font</span>
34
+ <span visual="font:serif">Serif font</span>
35
+ <span visual="font:mono">Monospace font</span>
36
36
  </div>
37
37
  </div>
38
38
 
@@ -40,10 +40,10 @@ visual="font:[family]"
40
40
  <summary>Lihat Kod</summary>
41
41
 
42
42
  ```html
43
- <div layout="flex col" space="g:small p:medium" visual="bg:neutral-100 dark:bg:neutral-900 rounded:medium">
44
- <span style="font-family: ui-sans-serif, system-ui, sans-serif;">Sans-serif font</span>
45
- <span style="font-family: ui-serif, Georgia, serif;">Serif font</span>
46
- <span style="font-family: ui-monospace, monospace;">Monospace font</span>
43
+ <div layout="flex:col" space="g:small p:medium" visual="bg:neutral-100 dark:bg:neutral-900 rounded:medium">
44
+ <span visual="font:sans">Sans-serif font</span>
45
+ <span visual="font:serif">Serif font</span>
46
+ <span visual="font:mono">Monospace font</span>
47
47
  </div>
48
48
  ```
49
49
 
@@ -29,8 +29,8 @@ visual="[smoothing-value]"
29
29
  <div layout="flex col" space="g:medium">
30
30
  <p space="m:none" visual="text:neutral-600 dark:text:neutral-400 text-sm"><code>visual="antialiased"</code> - Kawal persembahan teks</p>
31
31
  <div layout="flex" space="g:medium p:medium" visual="bg:neutral-100 dark:bg:neutral-900 rounded:medium">
32
- <div space="p:small" visual="bg:primary text:white rounded:small">antialiased</div>
33
- <div space="p:small" visual="bg:primary text:white rounded:small">subpixel</div>
32
+ <div space="p:small" visual="bg:primary text:white rounded:small antialiased">antialiased</div>
33
+ <div space="p:small" visual="bg:success text:white rounded:small subpixel-antialiased">subpixel</div>
34
34
  </div>
35
35
  </div>
36
36
 
@@ -39,8 +39,8 @@ visual="[smoothing-value]"
39
39
 
40
40
  ```html
41
41
  <div layout="flex" space="g:medium p:medium" visual="bg:neutral-100 dark:bg:neutral-900 rounded:medium">
42
- <div space="p:small" visual="bg:primary text:white rounded:small">antialiased</div>
43
- <div space="p:small" visual="bg:primary text:white rounded:small">subpixel</div>
42
+ <div space="p:small" visual="bg:primary text:white rounded:small antialiased">antialiased</div>
43
+ <div space="p:small" visual="bg:success text:white rounded:small subpixel-antialiased">subpixel</div>
44
44
  </div>
45
45
  ```
46
46
 
@@ -29,8 +29,8 @@ visual="[style-value]"
29
29
  <div layout="flex col" space="g:medium">
30
30
  <p space="m:none" visual="text:neutral-600 dark:text:neutral-400 text-sm"><code>visual="italic"</code> - Teks italic atau normal</p>
31
31
  <div layout="flex" space="g:medium p:medium" visual="bg:neutral-100 dark:bg:neutral-900 rounded:medium">
32
- <span space="p:small" visual="bg:primary text:white rounded:small" style="font-style: italic;">italic</span>
33
- <span space="p:small" visual="bg:primary text:white rounded:small">normal</span>
32
+ <span space="p:small" visual="bg:primary text:white rounded:small italic">italic</span>
33
+ <span space="p:small" visual="bg:success text:white rounded:small not-italic">not-italic</span>
34
34
  </div>
35
35
  </div>
36
36
 
@@ -39,8 +39,8 @@ visual="[style-value]"
39
39
 
40
40
  ```html
41
41
  <div layout="flex" space="g:medium p:medium" visual="bg:neutral-100 dark:bg:neutral-900 rounded:medium">
42
- <span space="p:small" visual="bg:primary text:white rounded:small" style="font-style: italic;">italic</span>
43
- <span space="p:small" visual="bg:primary text:white rounded:small">normal</span>
42
+ <span space="p:small" visual="bg:primary text:white rounded:small italic">italic</span>
43
+ <span space="p:small" visual="bg:success text:white rounded:small not-italic">not-italic</span>
44
44
  </div>
45
45
  ```
46
46
 
@@ -34,8 +34,9 @@ visual="[variant-value]"
34
34
  <div layout="flex col" space="g:medium">
35
35
  <p space="m:none" visual="text:neutral-600 dark:text:neutral-400 text-sm"><code>visual="tabular-nums"</code> - Kawal paparan nombor</p>
36
36
  <div layout="flex" space="g:medium p:medium" visual="bg:neutral-100 dark:bg:neutral-900 rounded:medium">
37
- <div space="p:small" visual="bg:primary text:white rounded:small">tabular-nums</div>
38
- <div space="p:small" visual="bg:primary text:white rounded:small">ordinal</div>
37
+ <div space="p:small" visual="bg:primary text:white rounded:small tabular-nums text-size:big">123,456.00</div>
38
+ <div space="p:small" visual="bg:success text:white rounded:small slashed-zero text-size:big">0123</div>
39
+ <div space="p:small" visual="bg:warning text:black rounded:small ordinal text-size:big">1st 2nd 3rd</div>
39
40
  </div>
40
41
  </div>
41
42
 
@@ -44,8 +45,9 @@ visual="[variant-value]"
44
45
 
45
46
  ```html
46
47
  <div layout="flex" space="g:medium p:medium" visual="bg:neutral-100 dark:bg:neutral-900 rounded:medium">
47
- <div space="p:small" visual="bg:primary text:white rounded:small">tabular-nums</div>
48
- <div space="p:small" visual="bg:primary text:white rounded:small">ordinal</div>
48
+ <div space="p:small" visual="bg:primary text:white rounded:small tabular-nums text-size:big">123,456.00</div>
49
+ <div space="p:small" visual="bg:success text:white rounded:small slashed-zero text-size:big">0123</div>
50
+ <div space="p:small" visual="bg:warning text:black rounded:small ordinal text-size:big">1st 2nd 3rd</div>
49
51
  </div>
50
52
  ```
51
53
 
@@ -31,9 +31,9 @@ visual="font:[weight]"
31
31
  <div layout="flex col" space="g:medium">
32
32
  <p space="m:none" visual="text:neutral-600 dark:text:neutral-400 text-sm"><code>visual="font:bold"</code> - Kawal ketebalan teks</p>
33
33
  <div layout="flex" space="g:medium p:medium" visual="bg:neutral-100 dark:bg:neutral-900 rounded:medium">
34
- <span style="font-weight: 400;">normal</span>
35
- <span style="font-weight: 500;">medium</span>
36
- <span style="font-weight: 700;">bold</span>
34
+ <span visual="font:normal">normal</span>
35
+ <span visual="font:medium">medium</span>
36
+ <span visual="font:bold">bold</span>
37
37
  </div>
38
38
  </div>
39
39
 
@@ -42,9 +42,9 @@ visual="font:[weight]"
42
42
 
43
43
  ```html
44
44
  <div layout="flex" space="g:medium p:medium" visual="bg:neutral-100 dark:bg:neutral-900 rounded:medium">
45
- <span style="font-weight: 400;">normal</span>
46
- <span style="font-weight: 500;">medium</span>
47
- <span style="font-weight: 700;">bold</span>
45
+ <span visual="font:normal">normal</span>
46
+ <span visual="font:medium">medium</span>
47
+ <span visual="font:bold">bold</span>
48
48
  </div>
49
49
  ```
50
50