@sakura-ui/sakura-ui 0.1.21 → 0.3.0

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 (264) hide show
  1. package/README.md +16 -6
  2. package/package.json +26 -20
  3. package/packages/core/package.json +30 -18
  4. package/packages/core/src/components/Button.tsx +33 -32
  5. package/packages/core/src/components/Card.tsx +38 -20
  6. package/packages/core/src/components/Code.tsx +6 -4
  7. package/packages/core/src/components/Faq.tsx +13 -7
  8. package/packages/core/src/components/Heading.tsx +42 -32
  9. package/packages/core/src/components/Icon.tsx +43 -13
  10. package/packages/core/src/components/IconButton.tsx +56 -45
  11. package/packages/core/src/components/LangSelector.tsx +135 -0
  12. package/packages/core/src/components/Link.tsx +38 -65
  13. package/packages/core/src/components/LinkCard.tsx +91 -0
  14. package/packages/core/src/components/List.tsx +14 -12
  15. package/packages/core/src/components/MenuButton.tsx +112 -0
  16. package/packages/core/src/components/NavigationItem.tsx +41 -0
  17. package/packages/core/src/components/OverflowContainer.tsx +24 -0
  18. package/packages/core/src/components/PopoverMenu.tsx +81 -0
  19. package/packages/core/src/components/Pre.tsx +6 -4
  20. package/packages/core/src/components/Table.tsx +35 -28
  21. package/packages/core/src/components/buttonStyle.ts +55 -38
  22. package/packages/core/src/components/index.ts +13 -28
  23. package/packages/core/src/icons/Close.tsx +21 -0
  24. package/packages/core/src/icons/CloseMobile.tsx +43 -0
  25. package/packages/core/src/icons/KeyboardArrowDown.tsx +24 -0
  26. package/packages/core/src/icons/Language.tsx +25 -0
  27. package/packages/core/src/icons/LanguageMobile.tsx +40 -0
  28. package/packages/core/src/icons/Menu.tsx +24 -0
  29. package/packages/core/src/icons/MenuMobile.tsx +40 -0
  30. package/packages/core/src/icons/index.ts +8 -0
  31. package/packages/core/src/icons/props.ts +5 -0
  32. package/packages/core/src/index.ts +9 -29
  33. package/packages/core/src/type.d.ts +1 -0
  34. package/packages/core/tests/Button.test.tsx +40 -0
  35. package/packages/core/tests/Card.test.tsx +36 -8
  36. package/packages/core/tests/IconButton.test.tsx +57 -0
  37. package/packages/core/tests/Link.test.tsx +60 -0
  38. package/packages/core/tests/vitest.setup.ts +2 -0
  39. package/packages/core/tsconfig.node.json +3 -2
  40. package/packages/core/vite.config.ts +3 -2
  41. package/packages/forms/.turbo/turbo-build.log +22 -0
  42. package/packages/forms/dist/index.cjs.js +242 -152
  43. package/packages/forms/dist/index.es.js +947 -1010
  44. package/packages/forms/dist/types/components/Checkbox.d.ts +10 -3
  45. package/packages/forms/dist/types/components/Checkbox.d.ts.map +1 -1
  46. package/packages/forms/dist/types/components/FieldsetControl.d.ts +14 -9
  47. package/packages/forms/dist/types/components/FieldsetControl.d.ts.map +1 -1
  48. package/packages/forms/dist/types/components/FileInput.d.ts +10 -3
  49. package/packages/forms/dist/types/components/FileInput.d.ts.map +1 -1
  50. package/packages/forms/dist/types/components/Input.d.ts +10 -3
  51. package/packages/forms/dist/types/components/Input.d.ts.map +1 -1
  52. package/packages/forms/dist/types/components/LabelControl.d.ts +13 -8
  53. package/packages/forms/dist/types/components/LabelControl.d.ts.map +1 -1
  54. package/packages/forms/dist/types/components/Radio.d.ts +10 -3
  55. package/packages/forms/dist/types/components/Radio.d.ts.map +1 -1
  56. package/packages/forms/dist/types/components/Select.d.ts +10 -3
  57. package/packages/forms/dist/types/components/Select.d.ts.map +1 -1
  58. package/packages/forms/dist/types/components/Textarea.d.ts +8 -3
  59. package/packages/forms/dist/types/components/Textarea.d.ts.map +1 -1
  60. package/packages/forms/dist/types/components/controlled/CheckboxGroup.d.ts +18 -11
  61. package/packages/forms/dist/types/components/controlled/CheckboxGroup.d.ts.map +1 -1
  62. package/packages/forms/dist/types/components/controlled/RadioGroup.d.ts +19 -12
  63. package/packages/forms/dist/types/components/controlled/RadioGroup.d.ts.map +1 -1
  64. package/packages/forms/dist/types/components/controlled/index.d.ts +0 -2
  65. package/packages/forms/dist/types/components/controlled/index.d.ts.map +1 -1
  66. package/packages/forms/dist/types/components/index.d.ts +8 -8
  67. package/packages/forms/dist/types/components/index.d.ts.map +1 -1
  68. package/packages/forms/dist/types/components/inputStyle.d.ts +13 -0
  69. package/packages/forms/dist/types/components/inputStyle.d.ts.map +1 -0
  70. package/packages/forms/dist/types/index.d.ts +1 -2
  71. package/packages/forms/dist/types/index.d.ts.map +1 -1
  72. package/packages/forms/node_modules/.bin/autoprefixer +2 -2
  73. package/packages/forms/node_modules/.bin/tailwind +2 -2
  74. package/packages/forms/node_modules/.bin/tailwindcss +2 -2
  75. package/packages/forms/node_modules/.bin/ts-node +4 -4
  76. package/packages/forms/node_modules/.bin/ts-node-cwd +4 -4
  77. package/packages/forms/node_modules/.bin/ts-node-esm +4 -4
  78. package/packages/forms/node_modules/.bin/ts-node-script +4 -4
  79. package/packages/forms/node_modules/.bin/ts-node-transpile-only +4 -4
  80. package/packages/forms/node_modules/.bin/ts-script +4 -4
  81. package/packages/forms/node_modules/.bin/tsc +17 -0
  82. package/packages/forms/node_modules/.bin/tsserver +17 -0
  83. package/packages/forms/node_modules/.vite/vitest/results.json +1 -0
  84. package/packages/forms/package.json +21 -17
  85. package/packages/forms/src/components/Checkbox.tsx +82 -64
  86. package/packages/forms/src/components/FieldsetControl.tsx +21 -28
  87. package/packages/forms/src/components/FileInput.tsx +88 -62
  88. package/packages/forms/src/components/Input.tsx +35 -41
  89. package/packages/forms/src/components/LabelControl.tsx +19 -25
  90. package/packages/forms/src/components/Radio.tsx +73 -61
  91. package/packages/forms/src/components/Select.tsx +71 -61
  92. package/packages/forms/src/components/Textarea.tsx +50 -54
  93. package/packages/forms/src/components/controlled/CheckboxGroup.tsx +25 -19
  94. package/packages/forms/src/components/controlled/RadioGroup.tsx +22 -20
  95. package/packages/forms/src/components/controlled/index.ts +0 -2
  96. package/packages/forms/src/components/index.ts +8 -8
  97. package/packages/forms/src/components/inputStyle.ts +82 -0
  98. package/packages/forms/src/index.ts +1 -17
  99. package/packages/forms/tests/Checkbox.test.tsx +44 -0
  100. package/packages/forms/tests/FieldsetControl.test.tsx +63 -12
  101. package/packages/forms/tests/FileInput.test.tsx +25 -0
  102. package/packages/forms/tests/Input.test.tsx +13 -84
  103. package/packages/forms/tests/LabelControl.test.tsx +83 -21
  104. package/packages/forms/tests/Radio.test.tsx +24 -79
  105. package/packages/forms/tests/Select.test.tsx +30 -0
  106. package/packages/forms/tests/Textarea.test.tsx +25 -0
  107. package/packages/forms/tests/vitest.setup.ts +2 -0
  108. package/packages/forms/tsconfig.node.json +3 -2
  109. package/packages/forms/vite.config.ts +3 -2
  110. package/packages/helper/.turbo/turbo-build.log +23 -0
  111. package/packages/helper/dist/index.cjs.js +78 -0
  112. package/packages/helper/dist/index.es.js +119 -0
  113. package/packages/helper/dist/types/calc.d.ts +2 -0
  114. package/packages/helper/dist/types/calc.d.ts.map +1 -0
  115. package/packages/{forms/dist/types/utils/class.d.ts → helper/dist/types/cx.d.ts} +1 -1
  116. package/packages/helper/dist/types/cx.d.ts.map +1 -0
  117. package/packages/helper/dist/types/index.d.ts +6 -0
  118. package/packages/helper/dist/types/index.d.ts.map +1 -0
  119. package/packages/helper/dist/types/querySelector.d.ts +2 -0
  120. package/packages/helper/dist/types/querySelector.d.ts.map +1 -0
  121. package/packages/helper/dist/types/styles.d.ts +22 -0
  122. package/packages/helper/dist/types/styles.d.ts.map +1 -0
  123. package/packages/helper/dist/types/treefy.d.ts +8 -0
  124. package/packages/helper/dist/types/treefy.d.ts.map +1 -0
  125. package/packages/{config → helper}/package.json +13 -19
  126. package/packages/helper/src/calc.ts +1 -0
  127. package/packages/{core/src/libs → helper/src}/cx.ts +1 -0
  128. package/packages/helper/src/index.ts +5 -0
  129. package/packages/helper/src/querySelector.ts +20 -0
  130. package/packages/helper/src/styles.ts +116 -0
  131. package/packages/helper/src/treefy.ts +22 -0
  132. package/packages/helper/vite.config.ts +26 -0
  133. package/packages/markdown/.turbo/turbo-build.log +22 -0
  134. package/packages/markdown/README.md +129 -0
  135. package/packages/markdown/dist/index.cjs.js +175 -0
  136. package/packages/markdown/dist/index.es.js +17098 -0
  137. package/packages/markdown/dist/types/components/Markdown.d.ts +15 -0
  138. package/packages/markdown/dist/types/components/Markdown.d.ts.map +1 -0
  139. package/packages/markdown/dist/types/components/index.d.ts +2 -0
  140. package/packages/markdown/dist/types/components/index.d.ts.map +1 -0
  141. package/packages/markdown/dist/types/index.d.ts +2 -0
  142. package/packages/markdown/dist/types/index.d.ts.map +1 -0
  143. package/packages/markdown/dist/types/plugins/attr.d.ts +3 -0
  144. package/packages/markdown/dist/types/plugins/attr.d.ts.map +1 -0
  145. package/packages/markdown/dist/types/plugins/card.d.ts +3 -0
  146. package/packages/markdown/dist/types/plugins/card.d.ts.map +1 -0
  147. package/packages/markdown/dist/types/plugins/cell.d.ts +3 -0
  148. package/packages/markdown/dist/types/plugins/cell.d.ts.map +1 -0
  149. package/packages/markdown/dist/types/plugins/faq.d.ts +3 -0
  150. package/packages/markdown/dist/types/plugins/faq.d.ts.map +1 -0
  151. package/packages/markdown/dist/types/plugins/grid.d.ts +3 -0
  152. package/packages/markdown/dist/types/plugins/grid.d.ts.map +1 -0
  153. package/packages/markdown/dist/types/plugins/headings.d.ts +9 -0
  154. package/packages/markdown/dist/types/plugins/headings.d.ts.map +1 -0
  155. package/packages/markdown/dist/types/plugins/helper.d.ts +9 -0
  156. package/packages/markdown/dist/types/plugins/helper.d.ts.map +1 -0
  157. package/packages/markdown/dist/types/plugins/index.d.ts +9 -0
  158. package/packages/markdown/dist/types/plugins/index.d.ts.map +1 -0
  159. package/packages/markdown/dist/types/plugins/linkButton.d.ts +3 -0
  160. package/packages/markdown/dist/types/plugins/linkButton.d.ts.map +1 -0
  161. package/packages/markdown/dist/types/plugins/youtube.d.ts +3 -0
  162. package/packages/markdown/dist/types/plugins/youtube.d.ts.map +1 -0
  163. package/packages/markdown/node_modules/.bin/autoprefixer +17 -0
  164. package/packages/markdown/node_modules/.bin/tailwind +17 -0
  165. package/packages/markdown/node_modules/.bin/tailwindcss +17 -0
  166. package/packages/markdown/node_modules/.bin/ts-node +17 -0
  167. package/packages/markdown/node_modules/.bin/ts-node-cwd +17 -0
  168. package/packages/markdown/node_modules/.bin/ts-node-esm +17 -0
  169. package/packages/markdown/node_modules/.bin/ts-node-script +17 -0
  170. package/packages/markdown/node_modules/.bin/ts-node-transpile-only +17 -0
  171. package/packages/markdown/node_modules/.bin/ts-script +17 -0
  172. package/packages/markdown/node_modules/.bin/tsc +17 -0
  173. package/packages/markdown/node_modules/.bin/tsserver +17 -0
  174. package/packages/markdown/package.json +83 -0
  175. package/packages/markdown/src/components/Markdown.tsx +361 -0
  176. package/packages/markdown/src/components/index.ts +1 -0
  177. package/packages/markdown/src/global.d.ts +9 -0
  178. package/packages/markdown/src/index.ts +1 -0
  179. package/packages/markdown/src/plugins/attr.ts +19 -0
  180. package/packages/markdown/src/plugins/card.ts +57 -0
  181. package/packages/markdown/src/plugins/cell.ts +47 -0
  182. package/packages/markdown/src/plugins/faq.ts +40 -0
  183. package/packages/markdown/src/plugins/grid.ts +51 -0
  184. package/packages/markdown/src/plugins/headings.ts +35 -0
  185. package/packages/markdown/src/plugins/helper.ts +27 -0
  186. package/packages/markdown/src/plugins/index.ts +8 -0
  187. package/packages/markdown/src/plugins/linkButton.ts +25 -0
  188. package/packages/markdown/src/plugins/youtube.ts +48 -0
  189. package/packages/markdown/tsconfig.json +13 -0
  190. package/packages/markdown/tsconfig.node.json +7 -0
  191. package/packages/{config → markdown}/vite.config.ts +6 -2
  192. package/packages/tailwind-theme-plugin/.turbo/turbo-build.log +22 -0
  193. package/packages/tailwind-theme-plugin/dist/index.cjs.js +1 -1
  194. package/packages/tailwind-theme-plugin/dist/index.es.js +5358 -6115
  195. package/packages/tailwind-theme-plugin/dist/types/index.d.ts +1 -1
  196. package/packages/tailwind-theme-plugin/dist/types/index.d.ts.map +1 -1
  197. package/packages/tailwind-theme-plugin/node_modules/.bin/autoprefixer +4 -4
  198. package/packages/tailwind-theme-plugin/node_modules/.bin/tailwind +4 -4
  199. package/packages/tailwind-theme-plugin/node_modules/.bin/tailwindcss +4 -4
  200. package/packages/tailwind-theme-plugin/node_modules/.bin/ts-node +4 -4
  201. package/packages/tailwind-theme-plugin/node_modules/.bin/ts-node-cwd +4 -4
  202. package/packages/tailwind-theme-plugin/node_modules/.bin/ts-node-esm +4 -4
  203. package/packages/tailwind-theme-plugin/node_modules/.bin/ts-node-script +4 -4
  204. package/packages/tailwind-theme-plugin/node_modules/.bin/ts-node-transpile-only +4 -4
  205. package/packages/tailwind-theme-plugin/node_modules/.bin/ts-script +4 -4
  206. package/packages/tailwind-theme-plugin/node_modules/.bin/tsc +17 -0
  207. package/packages/tailwind-theme-plugin/node_modules/.bin/tsserver +17 -0
  208. package/packages/tailwind-theme-plugin/package.json +10 -7
  209. package/packages/tailwind-theme-plugin/src/index.ts +232 -297
  210. package/packages/tailwind-theme-plugin/vite.config.ts +1 -1
  211. package/packages/config/src/index.ts +0 -347
  212. package/packages/config/tests/index.test.ts +0 -13
  213. package/packages/core/.eslintrc.json +0 -25
  214. package/packages/core/src/components/InfoCard.tsx +0 -50
  215. package/packages/core/src/libs/forward-ref.ts +0 -41
  216. package/packages/core/src/types/component.ts +0 -82
  217. package/packages/forms/coverage/clover.xml +0 -209
  218. package/packages/forms/coverage/coverage-final.json +0 -18
  219. package/packages/forms/coverage/lcov-report/base.css +0 -224
  220. package/packages/forms/coverage/lcov-report/block-navigation.js +0 -87
  221. package/packages/forms/coverage/lcov-report/favicon.png +0 -0
  222. package/packages/forms/coverage/lcov-report/index.html +0 -161
  223. package/packages/forms/coverage/lcov-report/prettify.css +0 -1
  224. package/packages/forms/coverage/lcov-report/prettify.js +0 -2
  225. package/packages/forms/coverage/lcov-report/sort-arrow-sprite.png +0 -0
  226. package/packages/forms/coverage/lcov-report/sorter.js +0 -196
  227. package/packages/forms/coverage/lcov-report/src/components/Checkbox.tsx.html +0 -295
  228. package/packages/forms/coverage/lcov-report/src/components/FieldsetControl.tsx.html +0 -295
  229. package/packages/forms/coverage/lcov-report/src/components/LabelControl.tsx.html +0 -289
  230. package/packages/forms/coverage/lcov-report/src/components/Radio.tsx.html +0 -262
  231. package/packages/forms/coverage/lcov-report/src/components/Select.tsx.html +0 -259
  232. package/packages/forms/coverage/lcov-report/src/components/Text.tsx.html +0 -220
  233. package/packages/forms/coverage/lcov-report/src/components/Textarea.tsx.html +0 -229
  234. package/packages/forms/coverage/lcov-report/src/components/context.ts.html +0 -136
  235. package/packages/forms/coverage/lcov-report/src/components/controlled/CheckboxGroup.tsx.html +0 -244
  236. package/packages/forms/coverage/lcov-report/src/components/controlled/RadioGroup.tsx.html +0 -265
  237. package/packages/forms/coverage/lcov-report/src/components/controlled/SelectControl.tsx.html +0 -205
  238. package/packages/forms/coverage/lcov-report/src/components/controlled/TextControl.tsx.html +0 -202
  239. package/packages/forms/coverage/lcov-report/src/components/controlled/TextareaControl.tsx.html +0 -205
  240. package/packages/forms/coverage/lcov-report/src/components/controlled/index.html +0 -191
  241. package/packages/forms/coverage/lcov-report/src/components/controlled/index.ts.html +0 -100
  242. package/packages/forms/coverage/lcov-report/src/components/index.html +0 -236
  243. package/packages/forms/coverage/lcov-report/src/components/index.ts.html +0 -106
  244. package/packages/forms/coverage/lcov-report/src/index.html +0 -116
  245. package/packages/forms/coverage/lcov-report/src/index.ts.html +0 -136
  246. package/packages/forms/coverage/lcov-report/src/utils/index.html +0 -116
  247. package/packages/forms/coverage/lcov-report/src/utils/index.ts.html +0 -88
  248. package/packages/forms/coverage/lcov.info +0 -434
  249. package/packages/forms/dist/types/components/controlled/SelectControl.d.ts +0 -10
  250. package/packages/forms/dist/types/components/controlled/SelectControl.d.ts.map +0 -1
  251. package/packages/forms/dist/types/components/controlled/TextareaControl.d.ts +0 -10
  252. package/packages/forms/dist/types/components/controlled/TextareaControl.d.ts.map +0 -1
  253. package/packages/forms/dist/types/utils/class.d.ts.map +0 -1
  254. package/packages/forms/jest.config.ts +0 -11
  255. package/packages/forms/node_modules/.bin/browserslist +0 -17
  256. package/packages/forms/node_modules/.bin/eslint +0 -17
  257. package/packages/forms/node_modules/.bin/vitest +0 -17
  258. package/packages/forms/node_modules/.vitest/results.json +0 -1
  259. package/packages/forms/src/components/controlled/SelectControl.tsx +0 -42
  260. package/packages/forms/src/components/controlled/TextareaControl.tsx +0 -42
  261. package/packages/forms/src/utils/class.ts +0 -1
  262. package/packages/tailwind-theme-plugin/node_modules/.bin/browserslist +0 -17
  263. /package/packages/{config → helper}/tsconfig.json +0 -0
  264. /package/packages/{config → helper}/tsconfig.node.json +0 -0
@@ -1,5 +1,5 @@
1
1
  /// <reference types="vitest" />
2
- import { resolve } from 'path'
2
+ import { resolve } from 'node:path'
3
3
  import { defineConfig } from 'vite'
4
4
  import { peerDependencies } from './package.json'
5
5
 
@@ -1,347 +0,0 @@
1
- import plugin from 'tailwindcss/plugin'
2
-
3
- const booleans = [
4
- 'atomic',
5
- 'busy',
6
- 'checked',
7
- 'current',
8
- 'disabled',
9
- 'expanded',
10
- 'grabbed',
11
- 'haspopup',
12
- 'hidden',
13
- 'invalid',
14
- 'live',
15
- 'modal',
16
- 'multiline',
17
- 'multiselectable',
18
- 'pressed',
19
- 'readonly',
20
- 'required',
21
- 'selected'
22
- ]
23
-
24
- const enumerables = {
25
- autocomplete: ['both', 'inline', 'list', 'none'],
26
- current: ['date', 'location', 'page', 'step', 'time'],
27
- dropeffect: ['copy', 'execute', 'link', 'move', 'none', 'popup'],
28
- haspopup: ['dialog', 'grid', 'listbox', 'menu', 'tree'],
29
- orientation: ['horizontal', 'undefined', 'vertial'],
30
- relevant: ['additions', 'all', 'removals', 'text'],
31
- sort: ['ascending', 'descending', 'none', 'other']
32
- }
33
-
34
- const sakuraPlugin = plugin(
35
- ({ addBase, addVariant }) => {
36
- addBase({
37
- '@font-face': {
38
- fontFamily: 'Material Symbols Outlined',
39
- fontWeight: '300',
40
- fontStyle: 'normal'
41
- }
42
- })
43
- const addAriaVariant = (name: string, value: string) => {
44
- addVariant(name, `[${name}="${value}"]&`)
45
- addVariant(`peer-${name}`, `:merge(.peer)[${name}="${value}"] ~ &`)
46
- addVariant(`group-${name}`, `:merge(.group)[${name}="${value}"] &`)
47
- }
48
- const addAriaEnumVariant = (name: string, value: string) => {
49
- addVariant(`${name}-${value}`, `[${name}="${value}"]&`)
50
- addVariant(
51
- `peer-${name}-${value}`,
52
- `:merge(.peer)[${name}="${value}"] ~ &`
53
- )
54
- addVariant(
55
- `group-${name}-${value}`,
56
- `:merge(.group)[${name}="${value}"] &`
57
- )
58
- }
59
-
60
- for (const attribute of booleans) {
61
- addAriaVariant(`aria-${attribute}`, 'true')
62
- }
63
-
64
- for (const [attribute, values] of Object.entries(enumerables)) {
65
- for (const value of values) {
66
- addAriaEnumVariant(`aria-${attribute}`, value)
67
- }
68
- }
69
- },
70
- {
71
- theme: {
72
- extend: {
73
- fontSize: {
74
- 'h-xxl': [
75
- '57px',
76
- {
77
- lineHeight: '1.4',
78
- letterSpacing: '0.04em',
79
- fontWeight: '700'
80
- }
81
- ],
82
- 'h-xl': [
83
- '45px',
84
- {
85
- lineHeight: '1.4',
86
- letterSpacing: '0.04em',
87
- fontWeight: '700'
88
- }
89
- ],
90
- // h1
91
- 'h-lg': [
92
- '36px',
93
- {
94
- lineHeight: '1.4',
95
- letterSpacing: '0.04em',
96
- fontWeight: '700'
97
- }
98
- ],
99
- 'h-lg-m': [
100
- '32px',
101
- {
102
- lineHeight: '1.5',
103
- letterSpacing: '0.04em',
104
- fontWeight: '700'
105
- }
106
- ],
107
- // h2
108
- 'h-med': [
109
- '32px',
110
- {
111
- lineHeight: '1.5',
112
- letterSpacing: '0.04em',
113
- fontWeight: '700'
114
- }
115
- ],
116
- 'h-med-m': [
117
- '28px',
118
- {
119
- lineHeight: '1.5',
120
- letterSpacing: '0.04em',
121
- fontWeight: '700'
122
- }
123
- ],
124
- // h3
125
- 'h-sm': [
126
- '28px',
127
- {
128
- lineHeight: '1.5',
129
- letterSpacing: '0.04em',
130
- fontWeight: '700'
131
- }
132
- ],
133
- 'h-sm-m': [
134
- '24px',
135
- {
136
- lineHeight: '1.5',
137
- letterSpacing: '0.04em',
138
- fontWeight: '700'
139
- }
140
- ],
141
- // h4
142
- 'h-xs': [
143
- '24px',
144
- {
145
- lineHeight: '1.5',
146
- letterSpacing: '0.04em',
147
- fontWeight: '700'
148
- }
149
- ],
150
- 'h-xs-m': [
151
- '20px',
152
- {
153
- lineHeight: '1.5',
154
- letterSpacing: '0.04em',
155
- fontWeight: '700'
156
- }
157
- ],
158
- // h5 h6
159
- 'h-xxs': [
160
- '20px',
161
- {
162
- lineHeight: '1.5',
163
- letterSpacing: '0.04em',
164
- fontWeight: '700'
165
- }
166
- ],
167
- 'h-xxs-m': [
168
- '16px',
169
- {
170
- lineHeight: '1.5',
171
- letterSpacing: '0.04em',
172
- fontWeight: '700'
173
- }
174
- ],
175
- base: [
176
- '16px',
177
- {
178
- lineHeight: '1.7',
179
- letterSpacing: '0.04em',
180
- fontWeight: '400'
181
- }
182
- ],
183
- 'base-sm': [
184
- '14px',
185
- {
186
- lineHeight: '1.7',
187
- letterSpacing: '0.04em',
188
- fontWeight: '400'
189
- }
190
- ],
191
- sup: [
192
- '12px',
193
- {
194
- lineHeight: '1.7',
195
- letterSpacing: '0.02em',
196
- fontWeight: '400'
197
- }
198
- ],
199
- 'sup-sm': [
200
- '10px',
201
- {
202
- lineHeight: '1.7',
203
- letterSpacing: '0.02em',
204
- fontWeight: '400'
205
- }
206
- ],
207
- button: [
208
- '16px',
209
- {
210
- lineHeight: '1.5',
211
- letterSpacing: '0.04em',
212
- fontWeight: '700'
213
- }
214
- ],
215
- 'button-sm': [
216
- '14px',
217
- {
218
- lineHeight: '14px',
219
- letterSpacing: '0.04em',
220
- fontWeight: '700'
221
- }
222
- ],
223
- label: [
224
- '14px',
225
- {
226
- lineHeight: '1.5',
227
- letterSpacing: '0.04em',
228
- fontWeight: '500'
229
- }
230
- ],
231
- 'label-sm': [
232
- '12px',
233
- {
234
- lineHeight: '1.5',
235
- letterSpacing: '0.04em',
236
- fontWeight: '500'
237
- }
238
- ],
239
- code: [
240
- '16px',
241
- {
242
- lineHeight: '1.7',
243
- letterSpacing: '0.04em',
244
- fontWeight: '400'
245
- }
246
- ]
247
- },
248
- colors: {
249
- white: {
250
- 1000: '#FFFFFF'
251
- },
252
- sea: {
253
- 1200: '#00004F',
254
- 1100: '#000060',
255
- 1000: '#000071',
256
- 900: '#000082',
257
- 800: '#0017C1',
258
- 700: '#0031D8',
259
- 600: '#1A3EE8',
260
- 500: '#264AF4',
261
- 400: '#4979F5',
262
- 300: '#7096F8',
263
- 200: '#9DB7F9',
264
- 100: '#C5D7FB',
265
- 50: '#E8F1FE'
266
- },
267
- sumi: {
268
- 1200: '#000000',
269
- 1100: '#080808',
270
- 1000: '#111111',
271
- 900: '#1A1A1C',
272
- 800: '#414143',
273
- 700: '#626264',
274
- 600: '#757578',
275
- 500: '#949497',
276
- 400: '#B4B4B7',
277
- 300: '#D8D8DB',
278
- 200: '#E8E8EB',
279
- 100: '#F1F1F4',
280
- 50: '#F8F8FB'
281
- },
282
- forest: {
283
- 1200: '#032213',
284
- 1100: '#08351F',
285
- 1000: '#0C472A',
286
- 900: '#115A36',
287
- 800: '#197A4B',
288
- 700: '#1D8B56',
289
- 600: '#259D63',
290
- 500: '#2CAC6E',
291
- 400: '#51B883',
292
- 300: '#71C598',
293
- 200: '#9BD4B5',
294
- 100: '#C2E5D1',
295
- 50: '#E6F5EC'
296
- },
297
- wood: {
298
- 1200: '#662E00',
299
- 1100: '#833B00',
300
- 1000: '#9C4600',
301
- 900: '#B65200',
302
- 800: '#C16800',
303
- 700: '#C87504',
304
- 600: '#CD820A',
305
- 500: '#D18D0F',
306
- 400: '#D69C2B',
307
- 300: '#DCAC4D',
308
- 200: '#E1C383',
309
- 100: '#E7D8B9',
310
- 50: '#F3EEE5'
311
- },
312
- sun: {
313
- 1200: '#640101',
314
- 1100: '#890101',
315
- 1000: '#AF0000',
316
- 900: '#D50000',
317
- 800: '#EC0000',
318
- 700: '#FA1606',
319
- 600: '#FF220D',
320
- 500: '#FF4B36',
321
- 400: '#FF5838',
322
- 300: '#FF7B5C',
323
- 200: '#FFA28B',
324
- 100: '#FFC8B8',
325
- 50: '#FFE7E6'
326
- }
327
- },
328
- fontFamily: {
329
- sans: [
330
- 'Noto Sans JP',
331
- '-apple-system',
332
- 'blinkmacsystemfont',
333
- 'Segoe UI',
334
- 'Hiragino Kaku Gothic ProN',
335
- 'BIZ UDPGothic',
336
- 'meiryo',
337
- 'sans-serif'
338
- ],
339
- code: ['Monaco', 'Menlo', 'Consolas', 'Courier New', 'monospace'],
340
- icon: ['Material Symbols Outlined']
341
- }
342
- }
343
- }
344
- }
345
- )
346
-
347
- export default sakuraPlugin
@@ -1,13 +0,0 @@
1
- import sakuraPlugin from '../src'
2
-
3
- describe('run tests', () => {
4
- it('tests the sakuraConfig', () => {
5
- const config = {
6
- mode: 'jit',
7
- content: ['./src/components/**/*.{js,ts,jsx,tsx}'],
8
- plugins: [sakuraPlugin]
9
- }
10
- console.log(config)
11
- expect(1 + 2).toBe(3)
12
- })
13
- })
@@ -1,25 +0,0 @@
1
- {
2
- "env": {
3
- "browser": true,
4
- "es2021": true
5
- },
6
- "extends": [
7
- "eslint:recommended",
8
- "plugin:@typescript-eslint/recommended",
9
- "plugin:react/recommended",
10
- "plugin:jsx-a11y/recommended",
11
- "prettier"
12
- ],
13
- "parser": "@typescript-eslint/parser",
14
- "parserOptions": {
15
- "ecmaVersion": "latest",
16
- "sourceType": "module"
17
- },
18
- "plugins": ["@typescript-eslint", "react", "jsx-a11y"],
19
- "rules": {},
20
- "settings": {
21
- "react": {
22
- "version": "detect"
23
- }
24
- }
25
- }
@@ -1,50 +0,0 @@
1
- import React from 'react'
2
- import { cx } from '../libs/cx'
3
-
4
- export interface InfoCardProps
5
- extends React.ComponentPropsWithoutRef<'section'> {
6
- title?: string
7
- }
8
-
9
- export const InfoCard = (props: InfoCardProps) => {
10
- const { className, children, title, ...restProps } = props
11
-
12
- const style = `
13
- border
14
- border-solid
15
- border-sumi-300
16
- rounded-2xl
17
- sm:rounded-3xl
18
- text-sumi-900
19
- `
20
-
21
- const topStyle = `
22
- pt-6
23
- px-6
24
- text-h-xxs-m
25
- sm:text-h-xxs
26
- leading-none
27
- mb-2
28
- `
29
-
30
- const bottmStyle = `
31
- pb-6
32
- px-6
33
- text-base
34
- `
35
-
36
- const headingId = React.useId()
37
-
38
- return (
39
- <section
40
- aria-labelledby={headingId}
41
- className={cx(style, className)}
42
- {...restProps}
43
- >
44
- <h2 id={headingId} className={topStyle}>
45
- {title}
46
- </h2>
47
- <p className={bottmStyle}>{children}</p>
48
- </section>
49
- )
50
- }
@@ -1,41 +0,0 @@
1
- /*
2
- MIT License
3
-
4
- Copyright (c) 2019 Segun Adebayo
5
-
6
- Permission is hereby granted, free of charge, to any person obtaining a copy
7
- of this software and associated documentation files (the "Software"), to deal
8
- in the Software without restriction, including without limitation the rights
9
- to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
10
- copies of the Software, and to permit persons to whom the Software is
11
- furnished to do so, subject to the following conditions:
12
-
13
- The above copyright notice and this permission notice shall be included in all
14
- copies or substantial portions of the Software.
15
-
16
- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
17
- IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
18
- FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
19
- AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
20
- LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
21
- OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
22
- SOFTWARE.
23
- */
24
-
25
- import { ComponentProps, forwardRef as forwardReactRef } from 'react'
26
- import { As, ComponentWithAs, RightJoinProps } from '../types/component'
27
-
28
- export function forwardRef<Props extends object, Component extends As>(
29
- component: React.ForwardRefRenderFunction<
30
- // eslint-disable-next-line @typescript-eslint/no-explicit-any
31
- any,
32
- RightJoinProps<ComponentProps<Component>, Props> & {
33
- as?: As
34
- }
35
- >
36
- ) {
37
- return forwardReactRef(component) as unknown as ComponentWithAs<
38
- Component,
39
- Props
40
- >
41
- }
@@ -1,82 +0,0 @@
1
- /*
2
- MIT License
3
-
4
- Copyright (c) 2019 Segun Adebayo
5
-
6
- Permission is hereby granted, free of charge, to any person obtaining a copy
7
- of this software and associated documentation files (the "Software"), to deal
8
- in the Software without restriction, including without limitation the rights
9
- to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
10
- copies of the Software, and to permit persons to whom the Software is
11
- furnished to do so, subject to the following conditions:
12
-
13
- The above copyright notice and this permission notice shall be included in all
14
- copies or substantial portions of the Software.
15
-
16
- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
17
- IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
18
- FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
19
- AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
20
- LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
21
- OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
22
- SOFTWARE.
23
- */
24
-
25
- import { ComponentProps } from 'react'
26
-
27
- // eslint-disable-next-line @typescript-eslint/no-explicit-any
28
- export type As<Props = any> = React.ElementType<Props>
29
-
30
- export type OmitCommonProps<
31
- Target,
32
- // eslint-disable-next-line @typescript-eslint/no-explicit-any
33
- OmitAdditionalProps extends keyof any = never
34
- > = Omit<Target, 'as' | OmitAdditionalProps>
35
-
36
- export type RightJoinProps<
37
- SourceProps extends object = object,
38
- OverrideProps extends object = object
39
- > = OmitCommonProps<SourceProps, keyof OverrideProps> & OverrideProps
40
-
41
- type MergeWithAs<
42
- ComponentProps extends object,
43
- AsProps extends object,
44
- AdditionalProps extends object = object,
45
- AsComponent extends As = As
46
- > = RightJoinProps<ComponentProps, AdditionalProps> &
47
- RightJoinProps<AsProps, AdditionalProps> & {
48
- as?: AsComponent
49
- }
50
-
51
- export type PropsWithAs<
52
- Component extends As,
53
- Props extends object
54
- > = RightJoinProps<ComponentProps<Component>, Props> & {
55
- as?: As
56
- }
57
-
58
- export type PropsOf<T extends As> = React.ComponentPropsWithoutRef<T> & {
59
- as?: As
60
- }
61
-
62
- export type ComponentWithAs<
63
- Component extends As,
64
- Props extends object = object
65
- > = {
66
- <AsComponent extends As = Component>(
67
- props: MergeWithAs<
68
- React.ComponentProps<Component>,
69
- React.ComponentProps<AsComponent>,
70
- Props,
71
- AsComponent
72
- >
73
- ): JSX.Element
74
- displayName?: string
75
- // eslint-disable-next-line @typescript-eslint/no-explicit-any
76
- propTypes?: React.WeakValidationMap<any>
77
- // eslint-disable-next-line @typescript-eslint/no-explicit-any
78
- contextTypes?: React.ValidationMap<any>
79
- // eslint-disable-next-line @typescript-eslint/no-explicit-any
80
- defaultProps?: Partial<any>
81
- id?: string
82
- }