@bookklik/senangstart-css 0.2.3 → 0.2.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.
Files changed (135) hide show
  1. package/dist/senangstart-css.js +100 -6
  2. package/dist/senangstart-css.min.js +26 -22
  3. package/dist/senangstart-tw.js +537 -0
  4. package/dist/senangstart-tw.min.js +2 -0
  5. package/docs/.vitepress/config.js +6 -0
  6. package/docs/guide/cdn.md +1 -1
  7. package/docs/ms/guide/cdn.md +1 -1
  8. package/docs/ms/reference/layout/position.md +4 -4
  9. package/docs/ms/reference/layout/z-index.md +8 -8
  10. package/docs/ms/reference/space/gap.md +1 -1
  11. package/docs/ms/reference/space/height.md +1 -1
  12. package/docs/ms/reference/space/margin.md +1 -1
  13. package/docs/ms/reference/space/padding.md +1 -1
  14. package/docs/ms/reference/space/scale-reference.md +46 -17
  15. package/docs/ms/reference/space/width.md +1 -1
  16. package/docs/ms/reference/space.md +1 -1
  17. package/docs/ms/reference/spacing.md +103 -21
  18. package/docs/ms/reference/visual/animation-fill.md +8 -8
  19. package/docs/ms/reference/visual/backdrop-blur.md +4 -4
  20. package/docs/ms/reference/visual/backdrop-brightness.md +8 -8
  21. package/docs/ms/reference/visual/backdrop-grayscale.md +6 -6
  22. package/docs/ms/reference/visual/backdrop-sepia.md +6 -6
  23. package/docs/ms/reference/visual/background-clip.md +2 -2
  24. package/docs/ms/reference/visual/background-image.md +4 -4
  25. package/docs/ms/reference/visual/filter-brightness.md +4 -4
  26. package/docs/ms/reference/visual/filter-contrast.md +4 -4
  27. package/docs/ms/reference/visual/filter-drop-shadow.md +6 -6
  28. package/docs/ms/reference/visual/filter-grayscale.md +4 -4
  29. package/docs/ms/reference/visual/filter-hue-rotate.md +4 -4
  30. package/docs/ms/reference/visual/filter-invert.md +2 -2
  31. package/docs/ms/reference/visual/filter-saturate.md +4 -4
  32. package/docs/ms/reference/visual/filter-sepia.md +4 -4
  33. package/docs/ms/reference/visual/font-family.md +2 -2
  34. package/docs/ms/reference/visual/gradient-from.md +57 -0
  35. package/docs/ms/reference/visual/gradient-to.md +57 -0
  36. package/docs/ms/reference/visual/gradient-via.md +54 -0
  37. package/docs/ms/reference/visual/letter-spacing.md +2 -2
  38. package/docs/ms/reference/visual/line-clamp.md +2 -2
  39. package/docs/ms/reference/visual/line-height.md +2 -2
  40. package/docs/ms/reference/visual/outline.md +2 -2
  41. package/docs/ms/reference/visual/ring-color.md +29 -0
  42. package/docs/ms/reference/visual/ring-offset.md +30 -0
  43. package/docs/ms/reference/visual/ring.md +62 -0
  44. package/docs/ms/reference/visual/stroke-width.md +6 -6
  45. package/docs/ms/reference/visual/stroke.md +4 -4
  46. package/docs/ms/reference/visual/text-indent.md +2 -2
  47. package/docs/ms/reference/visual/text-overflow.md +2 -2
  48. package/docs/ms/reference/visual/text-size.md +84 -84
  49. package/docs/ms/reference/visual/text-wrap.md +2 -2
  50. package/docs/ms/reference/visual/transform-backface.md +4 -4
  51. package/docs/ms/reference/visual/transform-perspective-origin.md +6 -6
  52. package/docs/ms/reference/visual/transform-perspective.md +6 -6
  53. package/docs/ms/reference/visual/transform-rotate-3d.md +6 -6
  54. package/docs/ms/reference/visual/transform-style.md +4 -4
  55. package/docs/ms/reference/visual/transform-translate-z.md +6 -6
  56. package/docs/ms/reference/visual/transform-translate.md +2 -2
  57. package/docs/ms/reference/visual/whitespace.md +2 -2
  58. package/docs/ms/reference/visual/word-break.md +2 -2
  59. package/docs/public/assets/senangstart-css.min.js +213 -1545
  60. package/docs/public/llms.txt +1718 -0
  61. package/docs/reference/layout/position.md +4 -4
  62. package/docs/reference/layout/z-index.md +8 -8
  63. package/docs/reference/space/gap.md +1 -1
  64. package/docs/reference/space/height.md +1 -1
  65. package/docs/reference/space/margin.md +1 -1
  66. package/docs/reference/space/padding.md +1 -1
  67. package/docs/reference/space/scale-reference.md +46 -17
  68. package/docs/reference/space/width.md +1 -1
  69. package/docs/reference/space.md +1 -1
  70. package/docs/reference/spacing.md +103 -21
  71. package/docs/reference/visual/animation-fill.md +8 -8
  72. package/docs/reference/visual/backdrop-blur.md +4 -4
  73. package/docs/reference/visual/backdrop-brightness.md +8 -8
  74. package/docs/reference/visual/backdrop-grayscale.md +6 -6
  75. package/docs/reference/visual/backdrop-sepia.md +6 -6
  76. package/docs/reference/visual/background-clip.md +2 -2
  77. package/docs/reference/visual/background-image.md +4 -4
  78. package/docs/reference/visual/filter-brightness.md +4 -4
  79. package/docs/reference/visual/filter-contrast.md +4 -4
  80. package/docs/reference/visual/filter-drop-shadow.md +6 -6
  81. package/docs/reference/visual/filter-grayscale.md +4 -4
  82. package/docs/reference/visual/filter-hue-rotate.md +4 -4
  83. package/docs/reference/visual/filter-invert.md +2 -2
  84. package/docs/reference/visual/filter-saturate.md +4 -4
  85. package/docs/reference/visual/filter-sepia.md +4 -4
  86. package/docs/reference/visual/font-family.md +2 -2
  87. package/docs/reference/visual/gradient-from.md +57 -0
  88. package/docs/reference/visual/gradient-to.md +57 -0
  89. package/docs/reference/visual/gradient-via.md +54 -0
  90. package/docs/reference/visual/letter-spacing.md +2 -2
  91. package/docs/reference/visual/line-clamp.md +2 -2
  92. package/docs/reference/visual/line-height.md +2 -2
  93. package/docs/reference/visual/outline.md +2 -2
  94. package/docs/reference/visual/ring-color.md +29 -0
  95. package/docs/reference/visual/ring-offset.md +30 -0
  96. package/docs/reference/visual/ring.md +62 -0
  97. package/docs/reference/visual/stroke-width.md +6 -6
  98. package/docs/reference/visual/stroke.md +4 -4
  99. package/docs/reference/visual/text-indent.md +2 -2
  100. package/docs/reference/visual/text-overflow.md +2 -2
  101. package/docs/reference/visual/text-size.md +84 -84
  102. package/docs/reference/visual/text-wrap.md +2 -2
  103. package/docs/reference/visual/transform-backface.md +4 -4
  104. package/docs/reference/visual/transform-perspective-origin.md +6 -6
  105. package/docs/reference/visual/transform-perspective.md +6 -6
  106. package/docs/reference/visual/transform-rotate-3d.md +6 -6
  107. package/docs/reference/visual/transform-style.md +4 -4
  108. package/docs/reference/visual/transform-translate-z.md +6 -6
  109. package/docs/reference/visual/transform-translate.md +2 -2
  110. package/docs/reference/visual/whitespace.md +2 -2
  111. package/docs/reference/visual/word-break.md +2 -2
  112. package/package.json +4 -2
  113. package/playground/tw-convertor.html +103 -589
  114. package/scripts/build-dist.js +45 -3
  115. package/scripts/bundle-jit.js +3 -3
  116. package/scripts/convert-tailwind.js +180 -1
  117. package/scripts/generate-llms-txt.js +264 -0
  118. package/src/cdn/{jit.js → senangstart-engine.js} +97 -8
  119. package/src/cdn/tw-conversion-engine.js +632 -0
  120. package/src/compiler/generators/css.js +27 -0
  121. package/src/config/defaults.js +37 -11
  122. package/src/core/constants.js +37 -8
  123. package/src/definitions/layout-positioning.js +6 -6
  124. package/src/definitions/space.js +46 -5
  125. package/src/definitions/visual-backgrounds.js +113 -15
  126. package/src/definitions/visual-borders.js +81 -2
  127. package/src/definitions/visual-filters.js +16 -16
  128. package/src/definitions/visual-svg.js +5 -5
  129. package/src/definitions/visual-transform3d.js +16 -16
  130. package/src/definitions/visual-transforms.js +1 -1
  131. package/src/definitions/visual-transitions.js +4 -4
  132. package/src/definitions/visual-typography.js +6 -6
  133. package/src/definitions/visual.js +4 -4
  134. package/tests/unit/compiler/generators/css.test.js +192 -0
  135. package/tests/unit/convert-tailwind.test.js +8 -0
@@ -33,9 +33,9 @@ visual="drop-shadow:[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="drop-shadow:medium"</code> - Tambah bayang pada elemen</p>
35
35
  <div layout="flex" space="g:medium p:big" visual="bg:neutral-100 dark:bg:neutral-900 rounded:medium">
36
- <div space="p:small" visual="bg:primary text:white rounded:small" style="filter: drop-shadow(0 1px 2px rgba(0,0,0,0.3));">small</div>
37
- <div space="p:small" visual="bg:primary text:white rounded:small" style="filter: drop-shadow(0 4px 6px rgba(0,0,0,0.3));">medium</div>
38
- <div space="p:small" visual="bg:primary text:white rounded:small" style="filter: drop-shadow(0 10px 15px rgba(0,0,0,0.3));">big</div>
36
+ <div space="p:small" visual="bg:primary text:white rounded:small drop-shadow:small">small</div>
37
+ <div space="p:small" visual="bg:primary text:white rounded:small drop-shadow:medium">medium</div>
38
+ <div space="p:small" visual="bg:primary text:white rounded:small drop-shadow:big">big</div>
39
39
  </div>
40
40
  </div>
41
41
 
@@ -44,9 +44,9 @@ visual="drop-shadow:[value]"
44
44
 
45
45
  ```html
46
46
  <div layout="flex" space="g:medium p:big" visual="bg:neutral-100 dark:bg:neutral-900 rounded:medium">
47
- <div space="p:small" visual="bg:primary text:white rounded:small" style="filter: drop-shadow(0 1px 2px rgba(0,0,0,0.3));">small</div>
48
- <div space="p:small" visual="bg:primary text:white rounded:small" style="filter: drop-shadow(0 4px 6px rgba(0,0,0,0.3));">medium</div>
49
- <div space="p:small" visual="bg:primary text:white rounded:small" style="filter: drop-shadow(0 10px 15px rgba(0,0,0,0.3));">big</div>
47
+ <div space="p:small" visual="bg:primary text:white rounded:small drop-shadow:small">small</div>
48
+ <div space="p:small" visual="bg:primary text:white rounded:small drop-shadow:medium">medium</div>
49
+ <div space="p:small" visual="bg:primary text:white rounded:small drop-shadow:big">big</div>
50
50
  </div>
51
51
  ```
52
52
 
@@ -31,8 +31,8 @@ visual="grayscale:[value]"
31
31
  <p space="m:none" visual="text:neutral-600 dark:text:neutral-400 text-sm"><code>visual="grayscale:full"</code> - Tukar ke skala kelabu</p>
32
32
  <div layout="flex" space="g:medium p:medium" visual="bg:neutral-100 dark:bg:neutral-900 rounded:medium">
33
33
  <div space="p:small" visual="bg:primary text:white rounded:small">none</div>
34
- <div space="p:small" visual="bg:primary text:white rounded:small" style="filter: grayscale(50%);">partial</div>
35
- <div space="p:small" visual="bg:primary text:white rounded:small" style="filter: grayscale(100%);">full</div>
34
+ <div space="p:small" visual="bg:primary text:white rounded:small grayscale:partial">partial</div>
35
+ <div space="p:small" visual="bg:primary text:white rounded:small grayscale:full">full</div>
36
36
  </div>
37
37
  </div>
38
38
 
@@ -42,8 +42,8 @@ visual="grayscale:[value]"
42
42
  ```html
43
43
  <div layout="flex" space="g:medium p:medium" visual="bg:neutral-100 dark:bg:neutral-900 rounded:medium">
44
44
  <div space="p:small" visual="bg:primary text:white rounded:small">none</div>
45
- <div space="p:small" visual="bg:primary text:white rounded:small" style="filter: grayscale(50%);">partial</div>
46
- <div space="p:small" visual="bg:primary text:white rounded:small" style="filter: grayscale(100%);">full</div>
45
+ <div space="p:small" visual="bg:primary text:white rounded:small grayscale:partial">partial</div>
46
+ <div space="p:small" visual="bg:primary text:white rounded:small grayscale:full">full</div>
47
47
  </div>
48
48
  ```
49
49
 
@@ -31,8 +31,8 @@ visual="hue-rotate:[degrees]"
31
31
  <p space="m:none" visual="text:neutral-600 dark:text:neutral-400 text-sm"><code>visual="hue-rotate:90"</code> - Putar rona warna</p>
32
32
  <div layout="flex" space="g:medium p:medium" visual="bg:neutral-100 dark:bg:neutral-900 rounded:medium">
33
33
  <div space="p:small" visual="bg:primary text:white rounded:small">0°</div>
34
- <div space="p:small" visual="bg:primary text:white rounded:small" style="filter: hue-rotate(90deg);">90°</div>
35
- <div space="p:small" visual="bg:primary text:white rounded:small" style="filter: hue-rotate(180deg);">180°</div>
34
+ <div space="p:small" visual="bg:primary text:white rounded:small hue-rotate:90">90°</div>
35
+ <div space="p:small" visual="bg:primary text:white rounded:small hue-rotate:180">180°</div>
36
36
  </div>
37
37
  </div>
38
38
 
@@ -42,8 +42,8 @@ visual="hue-rotate:[degrees]"
42
42
  ```html
43
43
  <div layout="flex" space="g:medium p:medium" visual="bg:neutral-100 dark:bg:neutral-900 rounded:medium">
44
44
  <div space="p:small" visual="bg:primary text:white rounded:small">0°</div>
45
- <div space="p:small" visual="bg:primary text:white rounded:small" style="filter: hue-rotate(90deg);">90°</div>
46
- <div space="p:small" visual="bg:primary text:white rounded:small" style="filter: hue-rotate(180deg);">180°</div>
45
+ <div space="p:small" visual="bg:primary text:white rounded:small hue-rotate:90">90°</div>
46
+ <div space="p:small" visual="bg:primary text:white rounded:small hue-rotate:180">180°</div>
47
47
  </div>
48
48
  ```
49
49
 
@@ -31,7 +31,7 @@ visual="invert:[value]"
31
31
  <p space="m:none" visual="text:neutral-600 dark:text:neutral-400 text-sm"><code>visual="invert:full"</code> - Songsangkan warna elemen</p>
32
32
  <div layout="flex" space="g:medium p:medium" visual="bg:neutral-100 dark:bg:neutral-900 rounded:medium">
33
33
  <div space="p:small" visual="bg:primary text:white rounded:small">none</div>
34
- <div space="p:small" visual="bg:primary text:white rounded:small" style="filter: invert(100%);">full</div>
34
+ <div space="p:small" visual="bg:primary text:white rounded:small invert:full">full</div>
35
35
  </div>
36
36
  </div>
37
37
 
@@ -41,7 +41,7 @@ visual="invert:[value]"
41
41
  ```html
42
42
  <div layout="flex" space="g:medium p:medium" visual="bg:neutral-100 dark:bg:neutral-900 rounded:medium">
43
43
  <div space="p:small" visual="bg:primary text:white rounded:small">none</div>
44
- <div space="p:small" visual="bg:primary text:white rounded:small" style="filter: invert(100%);">full</div>
44
+ <div space="p:small" visual="bg:primary text:white rounded:small invert:full">full</div>
45
45
  </div>
46
46
  ```
47
47
 
@@ -32,9 +32,9 @@ visual="saturate:[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="saturate:vivid"</code> - Laraskan ketepuan warna</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" style="filter: saturate(0);">none</div>
35
+ <div space="p:small" visual="bg:primary text:white rounded:small saturate:none">none</div>
36
36
  <div space="p:small" visual="bg:primary text:white rounded:small">normal</div>
37
- <div space="p:small" visual="bg:primary text:white rounded:small" style="filter: saturate(2);">vivid</div>
37
+ <div space="p:small" visual="bg:primary text:white rounded:small saturate:vivid">vivid</div>
38
38
  </div>
39
39
  </div>
40
40
 
@@ -43,9 +43,9 @@ visual="saturate:[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" style="filter: saturate(0);">none</div>
46
+ <div space="p:small" visual="bg:primary text:white rounded:small saturate:none">none</div>
47
47
  <div space="p:small" visual="bg:primary text:white rounded:small">normal</div>
48
- <div space="p:small" visual="bg:primary text:white rounded:small" style="filter: saturate(2);">vivid</div>
48
+ <div space="p:small" visual="bg:primary text:white rounded:small saturate:vivid">vivid</div>
49
49
  </div>
50
50
  ```
51
51
 
@@ -31,8 +31,8 @@ visual="sepia:[value]"
31
31
  <p space="m:none" visual="text:neutral-600 dark:text:neutral-400 text-sm"><code>visual="sepia:full"</code> - Terapkan ton sepia vintaj</p>
32
32
  <div layout="flex" space="g:medium p:medium" visual="bg:neutral-100 dark:bg:neutral-900 rounded:medium">
33
33
  <div space="p:small" visual="bg:primary text:white rounded:small">none</div>
34
- <div space="p:small" visual="bg:primary text:white rounded:small" style="filter: sepia(50%);">partial</div>
35
- <div space="p:small" visual="bg:primary text:white rounded:small" style="filter: sepia(100%);">full</div>
34
+ <div space="p:small" visual="bg:primary text:white rounded:small sepia:partial">partial</div>
35
+ <div space="p:small" visual="bg:primary text:white rounded:small sepia:full">full</div>
36
36
  </div>
37
37
  </div>
38
38
 
@@ -42,8 +42,8 @@ visual="sepia:[value]"
42
42
  ```html
43
43
  <div layout="flex" space="g:medium p:medium" visual="bg:neutral-100 dark:bg:neutral-900 rounded:medium">
44
44
  <div space="p:small" visual="bg:primary text:white rounded:small">none</div>
45
- <div space="p:small" visual="bg:primary text:white rounded:small" style="filter: sepia(50%);">partial</div>
46
- <div space="p:small" visual="bg:primary text:white rounded:small" style="filter: sepia(100%);">full</div>
45
+ <div space="p:small" visual="bg:primary text:white rounded:small sepia:partial">partial</div>
46
+ <div space="p:small" visual="bg:primary text:white rounded:small sepia:full">full</div>
47
47
  </div>
48
48
  ```
49
49
 
@@ -29,7 +29,7 @@ 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">
32
+ <div layout="flex col" space="g:small p:medium" visual="bg:neutral-100 dark:bg:neutral-900 rounded:medium">
33
33
  <span visual="font:sans">Sans-serif font</span>
34
34
  <span visual="font:serif">Serif font</span>
35
35
  <span visual="font:mono">Monospace font</span>
@@ -40,7 +40,7 @@ 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">
43
+ <div layout="flex col" space="g:small p:medium" visual="bg:neutral-100 dark:bg:neutral-900 rounded:medium">
44
44
  <span visual="font:sans">Sans-serif font</span>
45
45
  <span visual="font:serif">Serif font</span>
46
46
  <span visual="font:mono">Monospace font</span>
@@ -0,0 +1,57 @@
1
+ # Gradient From
2
+
3
+ Tetapkan warna mula gradien
4
+
5
+ ## Sintaks
6
+ ```
7
+ visual="from:[color]"
8
+ ```
9
+
10
+ ## Nilai
11
+
12
+ | Nilai | CSS Output | Huraian |
13
+ |-------|------------|-------------|
14
+ | `primary` | `--tw-gradient-from: var(--c-primary); --tw-gradient-to: transparent; --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)` | Mula dari utama |
15
+ | `blue-500` | `--tw-gradient-from: var(--c-blue-500); --tw-gradient-to: transparent; --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)` | Mula dari biru |
16
+
17
+ ## Contoh
18
+
19
+ ```html
20
+ <div visual="bg-image:gradient-to-r from:blue-500 to:purple-500">Gradient</div>
21
+ ```
22
+
23
+ ## Pratonton
24
+
25
+ <div space="p-x:big p-b:medium m-t:medium" visual="border-w:thin border:neutral-100 dark:border:neutral-800 rounded:medium">
26
+
27
+ ### Mula Gradien
28
+
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="from:blue-500"</code> - Tetapkan warna permulaan gradien</p>
31
+ <div layout="flex" space="g:medium p:medium" visual="bg:neutral-100 dark:bg:neutral-900 rounded:medium">
32
+ <div space="p:medium" visual="bg-image:gradient-to-r from:blue-500 to:purple-500 text:white rounded:small">from:blue-500 to:purple-500</div>
33
+ <div space="p:medium" visual="bg-image:gradient-to-r from:emerald-500 to:blue-500 text:white rounded:small">from:emerald-500 to:blue-500</div>
34
+ </div>
35
+ </div>
36
+
37
+ <details>
38
+ <summary>Lihat Kod</summary>
39
+
40
+ ```html
41
+ <div layout="flex" space="g:medium p:medium" visual="bg:neutral-100 dark:bg:neutral-900 rounded:medium">
42
+ <div space="p:medium" visual="bg-image:gradient-to-r from:blue-500 to:purple-500 text:white rounded:small">from:blue-500 to:purple-500</div>
43
+ <div space="p:medium" visual="bg-image:gradient-to-r from:emerald-500 to:blue-500 text:white rounded:small">from:emerald-500 to:blue-500</div>
44
+ </div>
45
+ ```
46
+
47
+ </details>
48
+
49
+ </div>
50
+
51
+ ## Nilai Arbitrari
52
+
53
+ Sokong nilai tersuai menggunakan sintaks kurungan segi empat:
54
+
55
+ ```html
56
+ <div visual="gradient:[custom-value]">Custom</div>
57
+ ```
@@ -0,0 +1,57 @@
1
+ # Gradient To
2
+
3
+ Tetapkan warna akhir gradien
4
+
5
+ ## Sintaks
6
+ ```
7
+ visual="to:[color]"
8
+ ```
9
+
10
+ ## Nilai
11
+
12
+ | Nilai | CSS Output | Huraian |
13
+ |-------|------------|-------------|
14
+ | `purple-500` | `--tw-gradient-to: var(--c-purple-500)` | Akhir di ungu |
15
+ | `pink-500` | `--tw-gradient-to: var(--c-pink-500)` | Akhir di merah jambu |
16
+
17
+ ## Contoh
18
+
19
+ ```html
20
+ <div visual="bg-image:gradient-to-r from:blue-500 to:purple-500">Blue to purple</div>
21
+ ```
22
+
23
+ ## Pratonton
24
+
25
+ <div space="p-x:big p-b:medium m-t:medium" visual="border-w:thin border:neutral-100 dark:border:neutral-800 rounded:medium">
26
+
27
+ ### Akhir Gradien
28
+
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="to:purple-500"</code> - Tetapkan warna pengakhiran gradien</p>
31
+ <div layout="flex" space="g:medium p:medium" visual="bg:neutral-100 dark:bg:neutral-900 rounded:medium">
32
+ <div space="p:medium" visual="bg-image:gradient-to-r from:blue-500 to:purple-500 text:white rounded:small">to:purple-500</div>
33
+ <div space="p:medium" visual="bg-image:gradient-to-r from:blue-500 to:pink-500 text:white rounded:small">to:pink-500</div>
34
+ </div>
35
+ </div>
36
+
37
+ <details>
38
+ <summary>Lihat Kod</summary>
39
+
40
+ ```html
41
+ <div layout="flex" space="g:medium p:medium" visual="bg:neutral-100 dark:bg:neutral-900 rounded:medium">
42
+ <div space="p:medium" visual="bg-image:gradient-to-r from:blue-500 to:purple-500 text:white rounded:small">to:purple-500</div>
43
+ <div space="p:medium" visual="bg-image:gradient-to-r from:blue-500 to:pink-500 text:white rounded:small">to:pink-500</div>
44
+ </div>
45
+ ```
46
+
47
+ </details>
48
+
49
+ </div>
50
+
51
+ ## Nilai Arbitrari
52
+
53
+ Sokong nilai tersuai menggunakan sintaks kurungan segi empat:
54
+
55
+ ```html
56
+ <div visual="gradient:[custom-value]">Custom</div>
57
+ ```
@@ -0,0 +1,54 @@
1
+ # Gradient Via
2
+
3
+ Tetapkan warna tengah gradien
4
+
5
+ ## Sintaks
6
+ ```
7
+ visual="via:[color]"
8
+ ```
9
+
10
+ ## Nilai
11
+
12
+ | Nilai | CSS Output | Huraian |
13
+ |-------|------------|-------------|
14
+ | `purple-500` | `--tw-gradient-via: var(--c-purple-500); --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-via), var(--tw-gradient-to)` | Melalui ungu |
15
+
16
+ ## Contoh
17
+
18
+ ```html
19
+ <div visual="bg-image:gradient-to-r from:blue-500 via:purple-500 to:pink-500">Three-color gradient</div>
20
+ ```
21
+
22
+ ## Pratonton
23
+
24
+ <div space="p-x:big p-b:medium m-t:medium" visual="border-w:thin border:neutral-100 dark:border:neutral-800 rounded:medium">
25
+
26
+ ### Pertengahan Gradien
27
+
28
+ <div layout="flex col" space="g:medium">
29
+ <p space="m:none" visual="text:neutral-600 dark:text:neutral-400 text-sm"><code>visual="via:purple-500"</code> - Tambah hentian warna tengah pada gradien</p>
30
+ <div layout="flex" space="g:medium p:medium" visual="bg:neutral-100 dark:bg:neutral-900 rounded:medium">
31
+ <div space="p:medium" visual="bg-image:gradient-to-r from:blue-500 via:purple-500 to:pink-500 text:white rounded:small">from:blue via:purple to:pink</div>
32
+ </div>
33
+ </div>
34
+
35
+ <details>
36
+ <summary>Lihat Kod</summary>
37
+
38
+ ```html
39
+ <div layout="flex" space="g:medium p:medium" visual="bg:neutral-100 dark:bg:neutral-900 rounded:medium">
40
+ <div space="p:medium" visual="bg-image:gradient-to-r from:blue-500 via:purple-500 to:pink-500 text:white rounded:small">from:blue via:purple to:pink</div>
41
+ </div>
42
+ ```
43
+
44
+ </details>
45
+
46
+ </div>
47
+
48
+ ## Nilai Arbitrari
49
+
50
+ Sokong nilai tersuai menggunakan sintaks kurungan segi empat:
51
+
52
+ ```html
53
+ <div visual="gradient:[custom-value]">Custom</div>
54
+ ```
@@ -32,7 +32,7 @@ visual="tracking:[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="tracking:wide"</code> - Laraskan jarak antara aksara</p>
35
- <div layout="flex:col" space="g:small p:medium" visual="bg:neutral-100 dark:bg:neutral-900 rounded:medium">
35
+ <div layout="flex col" space="g:small p:medium" visual="bg:neutral-100 dark:bg:neutral-900 rounded:medium">
36
36
  <span visual="tracking:tighter">tighter spacing</span>
37
37
  <span visual="tracking:normal">normal spacing</span>
38
38
  <span visual="tracking:widest">widest spacing</span>
@@ -43,7 +43,7 @@ visual="tracking:[value]"
43
43
  <summary>Lihat Kod</summary>
44
44
 
45
45
  ```html
46
- <div layout="flex:col" space="g:small p:medium" visual="bg:neutral-100 dark:bg:neutral-900 rounded:medium">
46
+ <div layout="flex col" space="g:small p:medium" visual="bg:neutral-100 dark:bg:neutral-900 rounded:medium">
47
47
  <span visual="tracking:tighter">tighter spacing</span>
48
48
  <span visual="tracking:normal">normal spacing</span>
49
49
  <span visual="tracking:widest">widest spacing</span>
@@ -30,7 +30,7 @@ visual="line-clamp:[value]"
30
30
 
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="line-clamp:2"</code> - Hadkan teks kepada baris tertentu</p>
33
- <div layout="flex:col" space="g:small p:medium" visual="bg:neutral-100 dark:bg:neutral-900 rounded:medium">
33
+ <div layout="flex col" space="g:small p:medium" visual="bg:neutral-100 dark:bg:neutral-900 rounded:medium">
34
34
  <div space="p:small w:[200px]" visual="bg:primary text:white rounded:small line-clamp:1">This is a very long text that will be clamped to just one single line with ellipsis.</div>
35
35
  <div space="p:small w:[200px]" visual="bg:success text:white rounded:small line-clamp:2">This is a very long text that will be clamped to exactly two lines with ellipsis at the end.</div>
36
36
  <div space="p:small w:[200px]" visual="bg:warning text:black rounded:small line-clamp:3">This is a very long text that will be clamped to exactly three lines with ellipsis shown at the end of the third line.</div>
@@ -41,7 +41,7 @@ visual="line-clamp:[value]"
41
41
  <summary>Lihat Kod</summary>
42
42
 
43
43
  ```html
44
- <div layout="flex:col" space="g:small p:medium" visual="bg:neutral-100 dark:bg:neutral-900 rounded:medium">
44
+ <div layout="flex col" space="g:small p:medium" visual="bg:neutral-100 dark:bg:neutral-900 rounded:medium">
45
45
  <div space="p:small w:[200px]" visual="bg:primary text:white rounded:small line-clamp:1">This is a very long text that will be clamped to just one single line with ellipsis.</div>
46
46
  <div space="p:small w:[200px]" visual="bg:success text:white rounded:small line-clamp:2">This is a very long text that will be clamped to exactly two lines with ellipsis at the end.</div>
47
47
  <div space="p:small w:[200px]" visual="bg:warning text:black rounded:small line-clamp:3">This is a very long text that will be clamped to exactly three lines with ellipsis shown at the end of the third line.</div>
@@ -32,7 +32,7 @@ visual="leading:[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="leading:relaxed"</code> - Kawal jarak menegak antara baris</p>
35
- <div layout="flex:col" space="g:medium p:medium" visual="bg:neutral-100 dark:bg:neutral-900 rounded:medium">
35
+ <div layout="flex col" space="g:medium p:medium" visual="bg:neutral-100 dark:bg:neutral-900 rounded:medium">
36
36
  <p space="m:0" visual="leading:tight">Tight leading<br>for headings</p>
37
37
  <p space="m:0" visual="leading:normal">Normal leading<br>for body text</p>
38
38
  <p space="m:0" visual="leading:loose">Loose leading<br>for readability</p>
@@ -43,7 +43,7 @@ visual="leading:[value]"
43
43
  <summary>Lihat Kod</summary>
44
44
 
45
45
  ```html
46
- <div layout="flex:col" space="g:medium p:medium" visual="bg:neutral-100 dark:bg:neutral-900 rounded:medium">
46
+ <div layout="flex col" space="g:medium p:medium" visual="bg:neutral-100 dark:bg:neutral-900 rounded:medium">
47
47
  <p space="m:0" visual="leading:tight">Tight leading<br>for headings</p>
48
48
  <p space="m:0" visual="leading:normal">Normal leading<br>for body text</p>
49
49
  <p space="m:0" visual="leading:loose">Loose leading<br>for readability</p>
@@ -22,7 +22,7 @@ visual="outline:[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="outline:primary"</code> - Garis luar tidak mempengaruhi susun atur</p>
24
24
  <div layout="flex" space="g:medium p:medium" visual="bg:neutral-100 dark:bg:neutral-900 rounded:medium">
25
- <button space="p:small" visual="outline:primary bg:white dark:bg:neutral-800 rounded:small" style="outline-width: 2px; outline-style: solid;">outline:primary</button>
25
+ <button space="p:small" visual="outline:primary bg:white dark:bg:neutral-800 rounded:small">outline:primary</button>
26
26
  </div>
27
27
  </div>
28
28
 
@@ -31,7 +31,7 @@ visual="outline:[color]"
31
31
 
32
32
  ```html
33
33
  <div layout="flex" space="g:medium p:medium" visual="bg:neutral-100 dark:bg:neutral-900 rounded:medium">
34
- <button space="p:small" visual="outline:primary bg:white dark:bg:neutral-800 rounded:small" style="outline-width: 2px; outline-style: solid;">outline:primary</button>
34
+ <button space="p:small" visual="outline:primary bg:white dark:bg:neutral-800 rounded:small">outline:primary</button>
35
35
  </div>
36
36
  ```
37
37
 
@@ -0,0 +1,29 @@
1
+ # Ring Color
2
+
3
+ Tetapkan warna cincin
4
+
5
+ ## Sintaks
6
+ ```
7
+ visual="ring-color:[color]"
8
+ ```
9
+
10
+ ## Nilai
11
+
12
+ | Nilai | CSS Output | Huraian |
13
+ |-------|------------|-------------|
14
+ | `primary` | `--ring-color: var(--c-primary)` | Warna cincin utama |
15
+ | `blue-500` | `--ring-color: var(--c-blue-500)` | Warna cincin biru |
16
+
17
+ ## Contoh
18
+
19
+ ```html
20
+ <button visual="ring:small ring-color:primary">Colored ring</button>
21
+ ```
22
+
23
+ ## Nilai Arbitrari
24
+
25
+ Sokong nilai tersuai menggunakan sintaks kurungan segi empat:
26
+
27
+ ```html
28
+ <div visual="ring:[custom-value]">Custom</div>
29
+ ```
@@ -0,0 +1,30 @@
1
+ # Ring Offset
2
+
3
+ Tambah ruang antara cincin dan elemen
4
+
5
+ ## Sintaks
6
+ ```
7
+ visual="ring-offset:[size]"
8
+ ```
9
+
10
+ ## Nilai
11
+
12
+ | Nilai | CSS Output | Huraian |
13
+ |-------|------------|-------------|
14
+ | `0` | `--ring-offset: 0px` | Tiada ruang |
15
+ | `2` | `--ring-offset: 2px` | Ruang 2px |
16
+ | `4` | `--ring-offset: 4px` | Ruang 4px |
17
+
18
+ ## Contoh
19
+
20
+ ```html
21
+ <button visual="ring:small ring-offset:2 ring-color:primary">With offset</button>
22
+ ```
23
+
24
+ ## Nilai Arbitrari
25
+
26
+ Sokong nilai tersuai menggunakan sintaks kurungan segi empat:
27
+
28
+ ```html
29
+ <div visual="ring:[custom-value]">Custom</div>
30
+ ```
@@ -0,0 +1,62 @@
1
+ # Ring
2
+
3
+ Tambah cincin fokus pada elemen menggunakan box-shadow
4
+
5
+ ## Sintaks
6
+ ```
7
+ visual="ring:[size]"
8
+ ```
9
+
10
+ ## Nilai
11
+
12
+ | Nilai | CSS Output | Huraian |
13
+ |-------|------------|-------------|
14
+ | `none` | `box-shadow: 0 0 0 0 transparent` | Tiada cincin |
15
+ | `thin` | `box-shadow: 0 0 0 1px var(--ring-color)` | Cincin nipis (1px) |
16
+ | `regular` | `box-shadow: 0 0 0 2px var(--ring-color)` | Cincin biasa (2px) |
17
+ | `small` | `box-shadow: 0 0 0 4px var(--ring-color)` | Cincin kecil (4px) |
18
+ | `medium` | `box-shadow: 0 0 0 6px var(--ring-color)` | Cincin sederhana (6px) |
19
+ | `big` | `box-shadow: 0 0 0 8px var(--ring-color)` | Cincin besar (8px) |
20
+
21
+ ## Contoh
22
+
23
+ ```html
24
+ <button visual="focus-visible:ring:small ring-color:primary">Focus me</button>
25
+ <input visual="focus:ring:regular ring-color:blue-500">
26
+ ```
27
+
28
+ ## Pratonton
29
+
30
+ <div space="p-x:big p-b:medium m-t:medium" visual="border-w:thin border:neutral-100 dark:border:neutral-800 rounded:medium">
31
+
32
+ ### Cincin Fokus
33
+
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="focus-visible:ring:small"</code> - Cincin muncul pada fokus papan kekunci (cuba kekunci Tab)</p>
36
+ <div layout="flex" space="g:medium p:medium" visual="bg:neutral-100 dark:bg:neutral-900 rounded:medium">
37
+ <button space="p:small p-x:medium" visual="bg:primary text:white rounded:small focus-visible:ring:small ring-color:blue-300">Tab to me</button>
38
+ <button space="p:small p-x:medium" visual="bg:white dark:bg:neutral-800 border:neutral-300 border-w:thin rounded:small focus-visible:ring:small ring-color:primary">Or me</button>
39
+ </div>
40
+ </div>
41
+
42
+ <details>
43
+ <summary>Lihat Kod</summary>
44
+
45
+ ```html
46
+ <div layout="flex" space="g:medium p:medium" visual="bg:neutral-100 dark:bg:neutral-900 rounded:medium">
47
+ <button space="p:small p-x:medium" visual="bg:primary text:white rounded:small focus-visible:ring:small ring-color:blue-300">Tab to me</button>
48
+ <button space="p:small p-x:medium" visual="bg:white dark:bg:neutral-800 border:neutral-300 border-w:thin rounded:small focus-visible:ring:small ring-color:primary">Or me</button>
49
+ </div>
50
+ ```
51
+
52
+ </details>
53
+
54
+ </div>
55
+
56
+ ## Nilai Arbitrari
57
+
58
+ Sokong nilai tersuai menggunakan sintaks kurungan segi empat:
59
+
60
+ ```html
61
+ <div visual="ring:[custom-value]">Custom</div>
62
+ ```
@@ -30,9 +30,9 @@ visual="stroke-w:[value]"
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="stroke-w:2"</code> - Kawal ketebalan gurisan SVG</p>
32
32
  <div layout="flex" space="g:medium p:medium" visual="bg:neutral-100 dark:bg:neutral-900 rounded:medium">
33
- <svg visual="stroke:primary fill:none" width="40" height="40" viewBox="0 0 24 24" style="stroke-width: 1px;"><circle cx="12" cy="12" r="10"/></svg>
34
- <svg visual="stroke:primary fill:none" width="40" height="40" viewBox="0 0 24 24" style="stroke-width: 2px;"><circle cx="12" cy="12" r="10"/></svg>
35
- <svg visual="stroke:primary fill:none" width="40" height="40" viewBox="0 0 24 24" style="stroke-width: 3px;"><circle cx="12" cy="12" r="10"/></svg>
33
+ <svg visual="stroke:primary fill:none stroke-w:1" width="40" height="40" viewBox="0 0 24 24"><circle cx="12" cy="12" r="10"/></svg>
34
+ <svg visual="stroke:primary fill:none stroke-w:2" width="40" height="40" viewBox="0 0 24 24"><circle cx="12" cy="12" r="10"/></svg>
35
+ <svg visual="stroke:primary fill:none stroke-w:3" width="40" height="40" viewBox="0 0 24 24"><circle cx="12" cy="12" r="10"/></svg>
36
36
  </div>
37
37
  </div>
38
38
 
@@ -41,9 +41,9 @@ visual="stroke-w:[value]"
41
41
 
42
42
  ```html
43
43
  <div layout="flex" space="g:medium p:medium" visual="bg:neutral-100 dark:bg:neutral-900 rounded:medium">
44
- <svg visual="stroke:primary fill:none" width="40" height="40" viewBox="0 0 24 24" style="stroke-width: 1px;"><circle cx="12" cy="12" r="10"/></svg>
45
- <svg visual="stroke:primary fill:none" width="40" height="40" viewBox="0 0 24 24" style="stroke-width: 2px;"><circle cx="12" cy="12" r="10"/></svg>
46
- <svg visual="stroke:primary fill:none" width="40" height="40" viewBox="0 0 24 24" style="stroke-width: 3px;"><circle cx="12" cy="12" r="10"/></svg>
44
+ <svg visual="stroke:primary fill:none stroke-w:1" width="40" height="40" viewBox="0 0 24 24"><circle cx="12" cy="12" r="10"/></svg>
45
+ <svg visual="stroke:primary fill:none stroke-w:2" width="40" height="40" viewBox="0 0 24 24"><circle cx="12" cy="12" r="10"/></svg>
46
+ <svg visual="stroke:primary fill:none stroke-w:3" width="40" height="40" viewBox="0 0 24 24"><circle cx="12" cy="12" r="10"/></svg>
47
47
  </div>
48
48
  ```
49
49
 
@@ -29,8 +29,8 @@ visual="stroke:[color]"
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="stroke:primary"</code> - Guris elemen SVG dengan warna</p>
31
31
  <div layout="flex" space="g:medium p:medium" visual="bg:neutral-100 dark:bg:neutral-900 rounded:medium">
32
- <svg visual="stroke:primary fill:none" width="40" height="40" viewBox="0 0 24 24" style="stroke-width: 2px;"><circle cx="12" cy="12" r="10"/></svg>
33
- <svg visual="stroke:danger fill:none" width="40" height="40" viewBox="0 0 24 24" style="stroke-width: 2px;"><circle cx="12" cy="12" r="10"/></svg>
32
+ <svg visual="stroke:primary fill:none stroke-w:2" width="40" height="40" viewBox="0 0 24 24"><circle cx="12" cy="12" r="10"/></svg>
33
+ <svg visual="stroke:danger fill:none stroke-w:2" width="40" height="40" viewBox="0 0 24 24"><circle cx="12" cy="12" r="10"/></svg>
34
34
  </div>
35
35
  </div>
36
36
 
@@ -39,8 +39,8 @@ visual="stroke:[color]"
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
- <svg visual="stroke:primary fill:none" width="40" height="40" viewBox="0 0 24 24" style="stroke-width: 2px;"><circle cx="12" cy="12" r="10"/></svg>
43
- <svg visual="stroke:danger fill:none" width="40" height="40" viewBox="0 0 24 24" style="stroke-width: 2px;"><circle cx="12" cy="12" r="10"/></svg>
42
+ <svg visual="stroke:primary fill:none stroke-w:2" width="40" height="40" viewBox="0 0 24 24"><circle cx="12" cy="12" r="10"/></svg>
43
+ <svg visual="stroke:danger fill:none stroke-w:2" width="40" height="40" viewBox="0 0 24 24"><circle cx="12" cy="12" r="10"/></svg>
44
44
  </div>
45
45
  ```
46
46
 
@@ -27,7 +27,7 @@ visual="indent:[value]"
27
27
 
28
28
  <div layout="flex col" space="g:medium">
29
29
  <p space="m:none" visual="text:neutral-600 dark:text:neutral-400 text-sm"><code>visual="indent:medium"</code> - Inden baris pertama teks</p>
30
- <div layout="flex:col" space="g:small p:medium" visual="bg:neutral-100 dark:bg:neutral-900 rounded:medium">
30
+ <div layout="flex col" space="g:small p:medium" visual="bg:neutral-100 dark:bg:neutral-900 rounded:medium">
31
31
  <p space="p:small" visual="bg:primary text:white rounded:small indent:0">No indent on this text paragraph.</p>
32
32
  <p space="p:small" visual="bg:success text:white rounded:small indent:medium">Medium indent on this first line of the paragraph.</p>
33
33
  <p space="p:small" visual="bg:warning text:black rounded:small indent:big">Bigger indent on this first line of the paragraph.</p>
@@ -38,7 +38,7 @@ visual="indent:[value]"
38
38
  <summary>Lihat Kod</summary>
39
39
 
40
40
  ```html
41
- <div layout="flex:col" space="g:small p:medium" visual="bg:neutral-100 dark:bg:neutral-900 rounded:medium">
41
+ <div layout="flex col" space="g:small p:medium" visual="bg:neutral-100 dark:bg:neutral-900 rounded:medium">
42
42
  <p space="p:small" visual="bg:primary text:white rounded:small indent:0">No indent on this text paragraph.</p>
43
43
  <p space="p:small" visual="bg:success text:white rounded:small indent:medium">Medium indent on this first line of the paragraph.</p>
44
44
  <p space="p:small" visual="bg:warning text:black rounded:small indent:big">Bigger indent on this first line of the paragraph.</p>
@@ -29,7 +29,7 @@ visual="[overflow-value]"
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="truncate"</code> - Kendalikan teks yang melimpah</p>
32
- <div layout="flex:col" space="g:small p:medium" visual="bg:neutral-100 dark:bg:neutral-900 rounded:medium">
32
+ <div layout="flex col" space="g:small p:medium" visual="bg:neutral-100 dark:bg:neutral-900 rounded:medium">
33
33
  <div space="p:small w:[150px]" visual="bg:primary text:white rounded:small truncate">This long text will be truncated with ellipsis</div>
34
34
  <div space="p:small w:[150px]" visual="bg:success text:white rounded:small text-clip">This long text will be clipped without ellipsis</div>
35
35
  </div>
@@ -39,7 +39,7 @@ visual="[overflow-value]"
39
39
  <summary>Lihat Kod</summary>
40
40
 
41
41
  ```html
42
- <div layout="flex:col" space="g:small p:medium" visual="bg:neutral-100 dark:bg:neutral-900 rounded:medium">
42
+ <div layout="flex col" space="g:small p:medium" visual="bg:neutral-100 dark:bg:neutral-900 rounded:medium">
43
43
  <div space="p:small w:[150px]" visual="bg:primary text:white rounded:small truncate">This long text will be truncated with ellipsis</div>
44
44
  <div space="p:small w:[150px]" visual="bg:success text:white rounded:small text-clip">This long text will be clipped without ellipsis</div>
45
45
  </div>