@tekton-ui/core 0.2.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 (254) hide show
  1. package/README.md +758 -0
  2. package/dist/blueprint.d.ts +44 -0
  3. package/dist/blueprint.d.ts.map +1 -0
  4. package/dist/blueprint.js +163 -0
  5. package/dist/blueprint.js.map +1 -0
  6. package/dist/component-schemas.d.ts +78 -0
  7. package/dist/component-schemas.d.ts.map +1 -0
  8. package/dist/component-schemas.js +1037 -0
  9. package/dist/component-schemas.js.map +1 -0
  10. package/dist/css-generator.d.ts +42 -0
  11. package/dist/css-generator.d.ts.map +1 -0
  12. package/dist/css-generator.js +339 -0
  13. package/dist/css-generator.js.map +1 -0
  14. package/dist/icon-library.d.ts +109 -0
  15. package/dist/icon-library.d.ts.map +1 -0
  16. package/dist/icon-library.js +204 -0
  17. package/dist/icon-library.js.map +1 -0
  18. package/dist/index.d.ts +36 -0
  19. package/dist/index.d.ts.map +1 -0
  20. package/dist/index.js +51 -0
  21. package/dist/index.js.map +1 -0
  22. package/dist/layout-css-generator.d.ts +158 -0
  23. package/dist/layout-css-generator.d.ts.map +1 -0
  24. package/dist/layout-css-generator.js +901 -0
  25. package/dist/layout-css-generator.js.map +1 -0
  26. package/dist/layout-resolver.d.ts +92 -0
  27. package/dist/layout-resolver.d.ts.map +1 -0
  28. package/dist/layout-resolver.js +275 -0
  29. package/dist/layout-resolver.js.map +1 -0
  30. package/dist/layout-tokens/index.d.ts +16 -0
  31. package/dist/layout-tokens/index.d.ts.map +1 -0
  32. package/dist/layout-tokens/index.js +16 -0
  33. package/dist/layout-tokens/index.js.map +1 -0
  34. package/dist/layout-tokens/keyboard.d.ts +254 -0
  35. package/dist/layout-tokens/keyboard.d.ts.map +1 -0
  36. package/dist/layout-tokens/keyboard.js +407 -0
  37. package/dist/layout-tokens/keyboard.js.map +1 -0
  38. package/dist/layout-tokens/mobile-shells.d.ts +78 -0
  39. package/dist/layout-tokens/mobile-shells.d.ts.map +1 -0
  40. package/dist/layout-tokens/mobile-shells.js +635 -0
  41. package/dist/layout-tokens/mobile-shells.js.map +1 -0
  42. package/dist/layout-tokens/pages.d.ts +100 -0
  43. package/dist/layout-tokens/pages.d.ts.map +1 -0
  44. package/dist/layout-tokens/pages.js +576 -0
  45. package/dist/layout-tokens/pages.js.map +1 -0
  46. package/dist/layout-tokens/responsive.d.ts +109 -0
  47. package/dist/layout-tokens/responsive.d.ts.map +1 -0
  48. package/dist/layout-tokens/responsive.js +167 -0
  49. package/dist/layout-tokens/responsive.js.map +1 -0
  50. package/dist/layout-tokens/safe-area.d.ts +156 -0
  51. package/dist/layout-tokens/safe-area.d.ts.map +1 -0
  52. package/dist/layout-tokens/safe-area.js +316 -0
  53. package/dist/layout-tokens/safe-area.js.map +1 -0
  54. package/dist/layout-tokens/sections-advanced.d.ts +277 -0
  55. package/dist/layout-tokens/sections-advanced.d.ts.map +1 -0
  56. package/dist/layout-tokens/sections-advanced.js +593 -0
  57. package/dist/layout-tokens/sections-advanced.js.map +1 -0
  58. package/dist/layout-tokens/sections.d.ts +137 -0
  59. package/dist/layout-tokens/sections.d.ts.map +1 -0
  60. package/dist/layout-tokens/sections.js +694 -0
  61. package/dist/layout-tokens/sections.js.map +1 -0
  62. package/dist/layout-tokens/shells.d.ts +77 -0
  63. package/dist/layout-tokens/shells.d.ts.map +1 -0
  64. package/dist/layout-tokens/shells.js +408 -0
  65. package/dist/layout-tokens/shells.js.map +1 -0
  66. package/dist/layout-tokens/touch-target.d.ts +119 -0
  67. package/dist/layout-tokens/touch-target.d.ts.map +1 -0
  68. package/dist/layout-tokens/touch-target.js +156 -0
  69. package/dist/layout-tokens/touch-target.js.map +1 -0
  70. package/dist/layout-tokens/types.d.ts +632 -0
  71. package/dist/layout-tokens/types.d.ts.map +1 -0
  72. package/dist/layout-tokens/types.js +49 -0
  73. package/dist/layout-tokens/types.js.map +1 -0
  74. package/dist/layout-validation.d.ts +1547 -0
  75. package/dist/layout-validation.d.ts.map +1 -0
  76. package/dist/layout-validation.js +628 -0
  77. package/dist/layout-validation.js.map +1 -0
  78. package/dist/render.d.ts +23 -0
  79. package/dist/render.d.ts.map +1 -0
  80. package/dist/render.js +244 -0
  81. package/dist/render.js.map +1 -0
  82. package/dist/schema-validation.d.ts +208 -0
  83. package/dist/schema-validation.d.ts.map +1 -0
  84. package/dist/schema-validation.js +205 -0
  85. package/dist/schema-validation.js.map +1 -0
  86. package/dist/screen-generation/generators/css-in-js-generator.d.ts +82 -0
  87. package/dist/screen-generation/generators/css-in-js-generator.d.ts.map +1 -0
  88. package/dist/screen-generation/generators/css-in-js-generator.js +335 -0
  89. package/dist/screen-generation/generators/css-in-js-generator.js.map +1 -0
  90. package/dist/screen-generation/generators/index.d.ts +13 -0
  91. package/dist/screen-generation/generators/index.d.ts.map +1 -0
  92. package/dist/screen-generation/generators/index.js +32 -0
  93. package/dist/screen-generation/generators/index.js.map +1 -0
  94. package/dist/screen-generation/generators/react-generator.d.ts +100 -0
  95. package/dist/screen-generation/generators/react-generator.d.ts.map +1 -0
  96. package/dist/screen-generation/generators/react-generator.js +379 -0
  97. package/dist/screen-generation/generators/react-generator.js.map +1 -0
  98. package/dist/screen-generation/generators/tailwind-generator.d.ts +105 -0
  99. package/dist/screen-generation/generators/tailwind-generator.d.ts.map +1 -0
  100. package/dist/screen-generation/generators/tailwind-generator.js +355 -0
  101. package/dist/screen-generation/generators/tailwind-generator.js.map +1 -0
  102. package/dist/screen-generation/generators/types.d.ts +136 -0
  103. package/dist/screen-generation/generators/types.d.ts.map +1 -0
  104. package/dist/screen-generation/generators/types.js +18 -0
  105. package/dist/screen-generation/generators/types.js.map +1 -0
  106. package/dist/screen-generation/generators/utils.d.ts +187 -0
  107. package/dist/screen-generation/generators/utils.d.ts.map +1 -0
  108. package/dist/screen-generation/generators/utils.js +312 -0
  109. package/dist/screen-generation/generators/utils.js.map +1 -0
  110. package/dist/screen-generation/index.d.ts +14 -0
  111. package/dist/screen-generation/index.d.ts.map +1 -0
  112. package/dist/screen-generation/index.js +33 -0
  113. package/dist/screen-generation/index.js.map +1 -0
  114. package/dist/screen-generation/resolver/component-resolver.d.ts +157 -0
  115. package/dist/screen-generation/resolver/component-resolver.d.ts.map +1 -0
  116. package/dist/screen-generation/resolver/component-resolver.js +295 -0
  117. package/dist/screen-generation/resolver/component-resolver.js.map +1 -0
  118. package/dist/screen-generation/resolver/index.d.ts +10 -0
  119. package/dist/screen-generation/resolver/index.d.ts.map +1 -0
  120. package/dist/screen-generation/resolver/index.js +46 -0
  121. package/dist/screen-generation/resolver/index.js.map +1 -0
  122. package/dist/screen-generation/resolver/layout-resolver.d.ts +155 -0
  123. package/dist/screen-generation/resolver/layout-resolver.d.ts.map +1 -0
  124. package/dist/screen-generation/resolver/layout-resolver.js +193 -0
  125. package/dist/screen-generation/resolver/layout-resolver.js.map +1 -0
  126. package/dist/screen-generation/resolver/screen-resolver.d.ts +174 -0
  127. package/dist/screen-generation/resolver/screen-resolver.d.ts.map +1 -0
  128. package/dist/screen-generation/resolver/screen-resolver.js +373 -0
  129. package/dist/screen-generation/resolver/screen-resolver.js.map +1 -0
  130. package/dist/screen-generation/resolver/token-resolver.d.ts +170 -0
  131. package/dist/screen-generation/resolver/token-resolver.d.ts.map +1 -0
  132. package/dist/screen-generation/resolver/token-resolver.js +260 -0
  133. package/dist/screen-generation/resolver/token-resolver.js.map +1 -0
  134. package/dist/screen-generation/types.d.ts +116 -0
  135. package/dist/screen-generation/types.d.ts.map +1 -0
  136. package/dist/screen-generation/types.js +33 -0
  137. package/dist/screen-generation/types.js.map +1 -0
  138. package/dist/screen-generation/validators.d.ts +286 -0
  139. package/dist/screen-generation/validators.d.ts.map +1 -0
  140. package/dist/screen-generation/validators.js +323 -0
  141. package/dist/screen-generation/validators.js.map +1 -0
  142. package/dist/screen-templates/__tests__/registry.test.d.ts +6 -0
  143. package/dist/screen-templates/__tests__/registry.test.d.ts.map +1 -0
  144. package/dist/screen-templates/__tests__/registry.test.js +247 -0
  145. package/dist/screen-templates/__tests__/registry.test.js.map +1 -0
  146. package/dist/screen-templates/__tests__/templates.test.d.ts +6 -0
  147. package/dist/screen-templates/__tests__/templates.test.d.ts.map +1 -0
  148. package/dist/screen-templates/__tests__/templates.test.js +179 -0
  149. package/dist/screen-templates/__tests__/templates.test.js.map +1 -0
  150. package/dist/screen-templates/index.d.ts +39 -0
  151. package/dist/screen-templates/index.d.ts.map +1 -0
  152. package/dist/screen-templates/index.js +79 -0
  153. package/dist/screen-templates/index.js.map +1 -0
  154. package/dist/screen-templates/registry.d.ts +177 -0
  155. package/dist/screen-templates/registry.d.ts.map +1 -0
  156. package/dist/screen-templates/registry.js +274 -0
  157. package/dist/screen-templates/registry.js.map +1 -0
  158. package/dist/screen-templates/templates/account/index.d.ts +6 -0
  159. package/dist/screen-templates/templates/account/index.d.ts.map +1 -0
  160. package/dist/screen-templates/templates/account/index.js +6 -0
  161. package/dist/screen-templates/templates/account/index.js.map +1 -0
  162. package/dist/screen-templates/templates/account/profile.d.ts +23 -0
  163. package/dist/screen-templates/templates/account/profile.d.ts.map +1 -0
  164. package/dist/screen-templates/templates/account/profile.js +249 -0
  165. package/dist/screen-templates/templates/account/profile.js.map +1 -0
  166. package/dist/screen-templates/templates/auth/forgot-password.d.ts +23 -0
  167. package/dist/screen-templates/templates/auth/forgot-password.d.ts.map +1 -0
  168. package/dist/screen-templates/templates/auth/forgot-password.js +203 -0
  169. package/dist/screen-templates/templates/auth/forgot-password.js.map +1 -0
  170. package/dist/screen-templates/templates/auth/index.d.ts +9 -0
  171. package/dist/screen-templates/templates/auth/index.d.ts.map +1 -0
  172. package/dist/screen-templates/templates/auth/index.js +9 -0
  173. package/dist/screen-templates/templates/auth/index.js.map +1 -0
  174. package/dist/screen-templates/templates/auth/login.d.ts +24 -0
  175. package/dist/screen-templates/templates/auth/login.d.ts.map +1 -0
  176. package/dist/screen-templates/templates/auth/login.js +254 -0
  177. package/dist/screen-templates/templates/auth/login.js.map +1 -0
  178. package/dist/screen-templates/templates/auth/signup.d.ts +24 -0
  179. package/dist/screen-templates/templates/auth/signup.d.ts.map +1 -0
  180. package/dist/screen-templates/templates/auth/signup.js +315 -0
  181. package/dist/screen-templates/templates/auth/signup.js.map +1 -0
  182. package/dist/screen-templates/templates/auth/verification.d.ts +23 -0
  183. package/dist/screen-templates/templates/auth/verification.d.ts.map +1 -0
  184. package/dist/screen-templates/templates/auth/verification.js +239 -0
  185. package/dist/screen-templates/templates/auth/verification.js.map +1 -0
  186. package/dist/screen-templates/templates/feedback/confirmation.d.ts +9 -0
  187. package/dist/screen-templates/templates/feedback/confirmation.d.ts.map +1 -0
  188. package/dist/screen-templates/templates/feedback/confirmation.js +107 -0
  189. package/dist/screen-templates/templates/feedback/confirmation.js.map +1 -0
  190. package/dist/screen-templates/templates/feedback/empty.d.ts +9 -0
  191. package/dist/screen-templates/templates/feedback/empty.d.ts.map +1 -0
  192. package/dist/screen-templates/templates/feedback/empty.js +90 -0
  193. package/dist/screen-templates/templates/feedback/empty.js.map +1 -0
  194. package/dist/screen-templates/templates/feedback/error.d.ts +9 -0
  195. package/dist/screen-templates/templates/feedback/error.d.ts.map +1 -0
  196. package/dist/screen-templates/templates/feedback/error.js +99 -0
  197. package/dist/screen-templates/templates/feedback/error.js.map +1 -0
  198. package/dist/screen-templates/templates/feedback/index.d.ts +10 -0
  199. package/dist/screen-templates/templates/feedback/index.d.ts.map +1 -0
  200. package/dist/screen-templates/templates/feedback/index.js +10 -0
  201. package/dist/screen-templates/templates/feedback/index.js.map +1 -0
  202. package/dist/screen-templates/templates/feedback/loading.d.ts +9 -0
  203. package/dist/screen-templates/templates/feedback/loading.d.ts.map +1 -0
  204. package/dist/screen-templates/templates/feedback/loading.js +77 -0
  205. package/dist/screen-templates/templates/feedback/loading.js.map +1 -0
  206. package/dist/screen-templates/templates/feedback/success.d.ts +9 -0
  207. package/dist/screen-templates/templates/feedback/success.d.ts.map +1 -0
  208. package/dist/screen-templates/templates/feedback/success.js +99 -0
  209. package/dist/screen-templates/templates/feedback/success.js.map +1 -0
  210. package/dist/screen-templates/templates/home/index.d.ts +6 -0
  211. package/dist/screen-templates/templates/home/index.d.ts.map +1 -0
  212. package/dist/screen-templates/templates/home/index.js +6 -0
  213. package/dist/screen-templates/templates/home/index.js.map +1 -0
  214. package/dist/screen-templates/templates/home/landing.d.ts +24 -0
  215. package/dist/screen-templates/templates/home/landing.d.ts.map +1 -0
  216. package/dist/screen-templates/templates/home/landing.js +197 -0
  217. package/dist/screen-templates/templates/home/landing.js.map +1 -0
  218. package/dist/screen-templates/templates/settings/index.d.ts +6 -0
  219. package/dist/screen-templates/templates/settings/index.d.ts.map +1 -0
  220. package/dist/screen-templates/templates/settings/index.js +6 -0
  221. package/dist/screen-templates/templates/settings/index.js.map +1 -0
  222. package/dist/screen-templates/templates/settings/preferences.d.ts +24 -0
  223. package/dist/screen-templates/templates/settings/preferences.d.ts.map +1 -0
  224. package/dist/screen-templates/templates/settings/preferences.js +265 -0
  225. package/dist/screen-templates/templates/settings/preferences.js.map +1 -0
  226. package/dist/screen-templates/types.d.ts +229 -0
  227. package/dist/screen-templates/types.d.ts.map +1 -0
  228. package/dist/screen-templates/types.js +7 -0
  229. package/dist/screen-templates/types.js.map +1 -0
  230. package/dist/theme-v2.d.ts +228 -0
  231. package/dist/theme-v2.d.ts.map +1 -0
  232. package/dist/theme-v2.js +158 -0
  233. package/dist/theme-v2.js.map +1 -0
  234. package/dist/theme.d.ts +60 -0
  235. package/dist/theme.d.ts.map +1 -0
  236. package/dist/theme.js +76 -0
  237. package/dist/theme.js.map +1 -0
  238. package/dist/token-resolver.d.ts +69 -0
  239. package/dist/token-resolver.d.ts.map +1 -0
  240. package/dist/token-resolver.js +122 -0
  241. package/dist/token-resolver.js.map +1 -0
  242. package/dist/token-validation.d.ts +432 -0
  243. package/dist/token-validation.d.ts.map +1 -0
  244. package/dist/token-validation.js +140 -0
  245. package/dist/token-validation.js.map +1 -0
  246. package/dist/tokens.d.ts +158 -0
  247. package/dist/tokens.d.ts.map +1 -0
  248. package/dist/tokens.js +10 -0
  249. package/dist/tokens.js.map +1 -0
  250. package/dist/types.d.ts +77 -0
  251. package/dist/types.d.ts.map +1 -0
  252. package/dist/types.js +7 -0
  253. package/dist/types.js.map +1 -0
  254. package/package.json +53 -0
@@ -0,0 +1,265 @@
1
+ /**
2
+ * @tekton-ui/core - Settings/Preferences Screen Template
3
+ * [SPEC-UI-002] [TAG-UI002-029] settings.preferences
4
+ *
5
+ * Design Reference: Claude.ai Settings Page
6
+ * - 좌측 설정 메뉴 + 우측 설정 패널
7
+ * - 섹션별 명확한 구분
8
+ * - 토글/선택 UI 일관성
9
+ */
10
+ /**
11
+ * Preferences Component
12
+ * 설정/환경설정 화면 컴포넌트
13
+ *
14
+ * Required Components: Switch, Select, Button, Form, Tabs, Separator
15
+ */
16
+ export const PreferencesComponent = ({ slots, className, texts }) => {
17
+ const defaultTexts = {
18
+ title: texts?.title ?? '설정',
19
+ subtitle: texts?.subtitle ?? '앱 환경설정을 관리하세요',
20
+ saveButton: texts?.saveButton ?? '저장',
21
+ cancelButton: texts?.cancelButton ?? '취소',
22
+ ...texts,
23
+ };
24
+ return {
25
+ type: 'div',
26
+ props: {
27
+ className: `min-h-screen bg-[var(--tekton-bg-base)] ${className ?? ''}`,
28
+ },
29
+ children: [
30
+ {
31
+ type: 'div',
32
+ props: {
33
+ className: 'flex h-screen',
34
+ },
35
+ children: [
36
+ // Settings sidebar/menu
37
+ slots?.menu ?? {
38
+ type: 'aside',
39
+ props: {
40
+ className: 'w-64 border-r bg-[var(--tekton-bg-surface)]',
41
+ style: {
42
+ padding: 'var(--tekton-spacing-4)',
43
+ },
44
+ },
45
+ children: [
46
+ {
47
+ type: 'Tabs',
48
+ props: {
49
+ orientation: 'vertical',
50
+ className: 'space-y-1',
51
+ },
52
+ children: ['Settings menu items...'],
53
+ },
54
+ ],
55
+ },
56
+ // Settings panel
57
+ {
58
+ type: 'main',
59
+ props: {
60
+ className: 'flex-1 overflow-auto',
61
+ style: {
62
+ padding: 'var(--tekton-layout-padding-desktop)',
63
+ },
64
+ },
65
+ children: [
66
+ // Header
67
+ {
68
+ type: 'div',
69
+ props: {
70
+ className: 'mb-8',
71
+ },
72
+ children: [
73
+ {
74
+ type: 'h1',
75
+ props: {
76
+ className: 'text-3xl font-semibold mb-2',
77
+ },
78
+ children: [defaultTexts.title],
79
+ },
80
+ {
81
+ type: 'p',
82
+ props: {
83
+ className: 'text-[var(--tekton-text-secondary)]',
84
+ },
85
+ children: [defaultTexts.subtitle],
86
+ },
87
+ ],
88
+ },
89
+ {
90
+ type: 'Separator',
91
+ props: {
92
+ className: 'my-6',
93
+ },
94
+ },
95
+ // Settings form
96
+ {
97
+ type: 'Form',
98
+ props: {
99
+ className: 'space-y-8 max-w-2xl',
100
+ },
101
+ children: [
102
+ // Content slot for settings sections
103
+ slots?.content ?? {
104
+ type: 'div',
105
+ props: {
106
+ className: 'space-y-6',
107
+ },
108
+ children: [
109
+ // Example settings group
110
+ {
111
+ type: 'div',
112
+ props: {
113
+ className: 'space-y-4',
114
+ },
115
+ children: [
116
+ {
117
+ type: 'h3',
118
+ props: {
119
+ className: 'text-lg font-medium',
120
+ },
121
+ children: ['일반 설정'],
122
+ },
123
+ {
124
+ type: 'div',
125
+ props: {
126
+ className: 'flex items-center justify-between',
127
+ },
128
+ children: [
129
+ {
130
+ type: 'div',
131
+ children: [
132
+ {
133
+ type: 'p',
134
+ props: {
135
+ className: 'font-medium',
136
+ },
137
+ children: ['알림'],
138
+ },
139
+ {
140
+ type: 'p',
141
+ props: {
142
+ className: 'text-sm text-[var(--tekton-text-secondary)]',
143
+ },
144
+ children: ['푸시 알림 받기'],
145
+ },
146
+ ],
147
+ },
148
+ {
149
+ type: 'Switch',
150
+ },
151
+ ],
152
+ },
153
+ ],
154
+ },
155
+ ],
156
+ },
157
+ {
158
+ type: 'Separator',
159
+ props: {
160
+ className: 'my-6',
161
+ },
162
+ },
163
+ // Action buttons
164
+ {
165
+ type: 'div',
166
+ props: {
167
+ className: 'flex gap-4',
168
+ },
169
+ children: [
170
+ {
171
+ type: 'Button',
172
+ props: {
173
+ type: 'submit',
174
+ },
175
+ children: [defaultTexts.saveButton],
176
+ },
177
+ {
178
+ type: 'Button',
179
+ props: {
180
+ variant: 'outline',
181
+ },
182
+ children: [defaultTexts.cancelButton],
183
+ },
184
+ ],
185
+ },
186
+ ],
187
+ },
188
+ ],
189
+ },
190
+ ],
191
+ },
192
+ ],
193
+ };
194
+ };
195
+ /**
196
+ * Settings/Preferences Screen Template
197
+ * 설정/환경설정 화면 템플릿 정의
198
+ */
199
+ export const preferencesTemplate = {
200
+ id: 'settings.preferences',
201
+ name: 'Settings/Preferences',
202
+ category: 'form',
203
+ description: 'Settings and preferences screen with sidebar menu and settings panel. Organized sections with switches and selects.',
204
+ skeleton: {
205
+ shell: 'shell.web.app',
206
+ page: 'page.dashboard',
207
+ sections: [
208
+ {
209
+ id: 'menu',
210
+ name: 'Settings Menu',
211
+ required: true,
212
+ allowedComponents: ['Tabs', 'Navigation'],
213
+ },
214
+ {
215
+ id: 'header',
216
+ name: 'Page Header',
217
+ required: true,
218
+ allowedComponents: ['Text'],
219
+ },
220
+ {
221
+ id: 'content',
222
+ name: 'Settings Content',
223
+ required: true,
224
+ allowedComponents: ['Form', 'Switch', 'Select', 'Button', 'Separator'],
225
+ },
226
+ ],
227
+ },
228
+ customizable: {
229
+ texts: ['title', 'subtitle', 'saveButton', 'cancelButton'],
230
+ optional: ['search', 'reset_to_defaults'],
231
+ slots: ['menu', 'content', 'header'],
232
+ },
233
+ requiredComponents: ['Switch', 'Select', 'Button', 'Form', 'Tabs', 'Separator'],
234
+ layout: {
235
+ type: 'sidebar',
236
+ maxWidth: 'full',
237
+ responsive: {
238
+ desktop: {
239
+ padding: 'atomic.spacing.64',
240
+ gap: 'atomic.spacing.32',
241
+ columns: 12,
242
+ direction: 'row',
243
+ },
244
+ tablet: {
245
+ padding: 'atomic.spacing.32',
246
+ gap: 'atomic.spacing.24',
247
+ columns: 8,
248
+ direction: 'column',
249
+ },
250
+ mobile: {
251
+ padding: 'atomic.spacing.16',
252
+ gap: 'atomic.spacing.16',
253
+ columns: 4,
254
+ direction: 'column',
255
+ },
256
+ },
257
+ },
258
+ tokenBindings: {
259
+ backgroundColor: 'semantic.color.background.base',
260
+ textColor: 'semantic.color.text.primary',
261
+ sidebarBg: 'semantic.color.background.surface',
262
+ },
263
+ Component: PreferencesComponent,
264
+ };
265
+ //# sourceMappingURL=preferences.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"preferences.js","sourceRoot":"","sources":["../../../../src/screen-templates/templates/settings/preferences.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,229 @@
1
+ /**
2
+ * @tekton-ui/core - Screen Template Types
3
+ * AI-Native ScreenTemplate interface system for 12 P0 Screen Templates
4
+ * [SPEC-UI-002] [TAG-UI002-001]
5
+ */
6
+ import type { TokenReference } from '../token-resolver.js';
7
+ /**
8
+ * Minimal React type definitions for screen templates
9
+ * Note: Full React types should be provided by the consuming application
10
+ */
11
+ export type ComponentType<P = object> = (props: P) => unknown;
12
+ export type ReactNode = unknown;
13
+ export type FC<P = object> = (props: P) => unknown;
14
+ /**
15
+ * JSX namespace declaration for template typing
16
+ * 템플릿 타이핑을 위한 JSX namespace 선언
17
+ */
18
+ declare global {
19
+ namespace JSX {
20
+ interface Element {
21
+ type?: string;
22
+ props?: Record<string, unknown>;
23
+ children?: unknown[];
24
+ }
25
+ }
26
+ }
27
+ /**
28
+ * Screen Category - Template classification
29
+ * 템플릿을 카테고리별로 분류
30
+ */
31
+ export type ScreenCategory = 'auth' | 'dashboard' | 'content' | 'form' | 'feedback' | 'marketing';
32
+ /**
33
+ * Layout Type - Template layout patterns
34
+ * 템플릿의 레이아웃 타입
35
+ */
36
+ export type TemplateLayoutType = 'full' | 'centered' | 'split' | 'sidebar';
37
+ /**
38
+ * Max Width Options - Container maximum width
39
+ * 컨테이너 최대 너비 옵션
40
+ */
41
+ export type MaxWidthOption = 'sm' | 'md' | 'lg' | 'xl' | 'full';
42
+ /**
43
+ * Section Template - Layout section definition
44
+ * 템플릿 내 섹션 정의
45
+ *
46
+ * @example
47
+ * ```typescript
48
+ * const headerSection: SectionTemplate = {
49
+ * id: 'header',
50
+ * name: 'Header',
51
+ * required: true,
52
+ * allowedComponents: ['Logo', 'Navigation'],
53
+ * defaultComponent: 'Logo'
54
+ * };
55
+ * ```
56
+ */
57
+ export interface SectionTemplate {
58
+ /** 섹션 ID (예: 'header', 'main', 'footer') */
59
+ id: string;
60
+ /** 섹션 이름 */
61
+ name: string;
62
+ /** 필수 여부 - true면 반드시 포함되어야 함 */
63
+ required: boolean;
64
+ /** 허용 컴포넌트 타입 (optional) */
65
+ allowedComponents?: string[];
66
+ /** 기본 컴포넌트 (optional) */
67
+ defaultComponent?: string;
68
+ }
69
+ /**
70
+ * Responsive Layout - Breakpoint-specific layout configuration
71
+ * 반응형 레이아웃 설정 (Desktop, Tablet, Mobile)
72
+ *
73
+ * [TAG-UI002-005] - 항상 반응형 breakpoint 지원
74
+ */
75
+ export interface ResponsiveLayout {
76
+ /** 패딩 토큰 (예: 'atomic.spacing.64') */
77
+ padding?: TokenReference;
78
+ /** 간격 토큰 (예: 'atomic.spacing.32') */
79
+ gap?: TokenReference;
80
+ /** 그리드 컬럼 수 */
81
+ columns?: number;
82
+ /** 레이아웃 방향 */
83
+ direction?: 'row' | 'column';
84
+ }
85
+ /**
86
+ * Template Layout - Complete layout configuration
87
+ * 템플릿 레이아웃 전체 설정
88
+ *
89
+ * [TAG-UI002-002] - 항상 Tekton 레이아웃 토큰 사용
90
+ * [TAG-UI002-005] - 반응형 breakpoint 지원
91
+ */
92
+ export interface TemplateLayout {
93
+ /** 레이아웃 타입 */
94
+ type: TemplateLayoutType;
95
+ /** 최대 너비 (선택적) */
96
+ maxWidth?: MaxWidthOption;
97
+ /** 반응형 breakpoint별 레이아웃 */
98
+ responsive: {
99
+ /** Desktop (≥1024px) */
100
+ desktop: ResponsiveLayout;
101
+ /** Tablet (768px~1024px) */
102
+ tablet: ResponsiveLayout;
103
+ /** Mobile (<768px) */
104
+ mobile: ResponsiveLayout;
105
+ };
106
+ }
107
+ /**
108
+ * Customizable Configuration - AI modification boundaries
109
+ * AI가 수정 가능한 영역 정의
110
+ *
111
+ * [TAG-UI002-003] - 항상 AI 커스터마이징 가능 영역 명시
112
+ */
113
+ export interface CustomizableConfig {
114
+ /** 수정 가능한 텍스트 키 배열 (예: ['title', 'subtitle', 'button_label']) */
115
+ texts: string[];
116
+ /** 선택적 기능 배열 (예: ['social_login', 'remember_me']) */
117
+ optional: string[];
118
+ /** 커스터마이징 가능한 슬롯 배열 (예: ['header', 'footer', 'sidebar']) */
119
+ slots: string[];
120
+ }
121
+ /**
122
+ * ScreenTemplate Props - Component props interface
123
+ * ScreenTemplate 컴포넌트가 받는 props
124
+ */
125
+ export interface ScreenTemplateProps {
126
+ /** 슬롯 컨텐츠 (예: { header: <Logo />, footer: <Footer /> }) */
127
+ slots?: Record<string, ReactNode>;
128
+ /** 커스텀 클래스 */
129
+ className?: string;
130
+ /** 테마 오버라이드 (테마 ID) */
131
+ theme?: string;
132
+ /** 커스터마이징 가능한 텍스트 */
133
+ texts?: Record<string, string>;
134
+ }
135
+ /**
136
+ * ScreenTemplate - AI-Native screen template definition
137
+ * AI가 이해하고 수정 가능한 화면 템플릿 인터페이스
138
+ *
139
+ * [TAG-UI002-001] - 항상 ScreenTemplate 인터페이스 준수
140
+ *
141
+ * @example
142
+ * ```typescript
143
+ * const loginTemplate: ScreenTemplate = {
144
+ * id: 'auth.login',
145
+ * name: 'Login',
146
+ * category: 'auth',
147
+ * description: 'User login screen with email/password authentication',
148
+ * skeleton: {
149
+ * shell: 'shell.web.app',
150
+ * page: 'page.auth',
151
+ * sections: [
152
+ * { id: 'logo', name: 'Logo', required: true },
153
+ * { id: 'form', name: 'Login Form', required: true },
154
+ * { id: 'footer', name: 'Footer Links', required: false }
155
+ * ]
156
+ * },
157
+ * customizable: {
158
+ * texts: ['title', 'subtitle', 'button_label'],
159
+ * optional: ['social_login', 'remember_me'],
160
+ * slots: ['header', 'footer']
161
+ * },
162
+ * requiredComponents: ['Button', 'Input', 'Form', 'Card', 'Label'],
163
+ * layout: {
164
+ * type: 'centered',
165
+ * maxWidth: 'sm',
166
+ * responsive: {
167
+ * desktop: { padding: 'atomic.spacing.64', gap: 'atomic.spacing.32' },
168
+ * tablet: { padding: 'atomic.spacing.32', gap: 'atomic.spacing.24' },
169
+ * mobile: { padding: 'atomic.spacing.16', gap: 'atomic.spacing.16' }
170
+ * }
171
+ * },
172
+ * Component: LoginComponent
173
+ * };
174
+ * ```
175
+ */
176
+ export interface ScreenTemplate {
177
+ /** 템플릿 고유 ID (예: 'auth.login', 'dashboard.overview') */
178
+ id: string;
179
+ /** 템플릿 이름 */
180
+ name: string;
181
+ /** 카테고리 */
182
+ category: ScreenCategory;
183
+ /** 설명 - AI에게 제공되는 컨텍스트 */
184
+ description: string;
185
+ /** 골격 - AI가 수정 가능한 범위 명시 */
186
+ skeleton: {
187
+ /** 쉘 타입 (전체 페이지 레이아웃) */
188
+ shell: 'shell.web.app' | 'shell.web.landing' | 'shell.mobile';
189
+ /** 페이지 레이아웃 타입 */
190
+ page: 'page.auth' | 'page.dashboard' | 'page.content' | 'page.form';
191
+ /** 섹션 템플릿 배열 */
192
+ sections: SectionTemplate[];
193
+ };
194
+ /** AI 커스터마이징 가능 영역 [TAG-UI002-003] */
195
+ customizable: CustomizableConfig;
196
+ /** 필수 컴포넌트 [TAG-UI002-004] */
197
+ requiredComponents: string[];
198
+ /** 레이아웃 설정 [TAG-UI002-002, TAG-UI002-005] */
199
+ layout: TemplateLayout;
200
+ /** 토큰 바인딩 (선택적) */
201
+ tokenBindings?: Record<string, TokenReference>;
202
+ /** React 컴포넌트 */
203
+ Component: ComponentType<ScreenTemplateProps>;
204
+ }
205
+ /**
206
+ * Template Validation Error - Template validation error details
207
+ * 템플릿 검증 오류 상세 정보
208
+ */
209
+ export interface TemplateValidationError {
210
+ /** 오류 타입 */
211
+ type: 'missing_component' | 'invalid_layout' | 'invalid_token' | 'missing_section';
212
+ /** 오류 메시지 */
213
+ message: string;
214
+ /** 관련 필드 (선택적) */
215
+ field?: string;
216
+ }
217
+ /**
218
+ * Template Validation Result - Template validation result
219
+ * 템플릿 검증 결과
220
+ *
221
+ * [TAG-UI002-004] - 필수 컴포넌트 검증
222
+ */
223
+ export interface TemplateValidationResult {
224
+ /** 검증 성공 여부 */
225
+ valid: boolean;
226
+ /** 오류 목록 (검증 실패 시) */
227
+ errors?: TemplateValidationError[];
228
+ }
229
+ //# sourceMappingURL=types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/screen-templates/types.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,7 @@
1
+ /**
2
+ * @tekton-ui/core - Screen Template Types
3
+ * AI-Native ScreenTemplate interface system for 12 P0 Screen Templates
4
+ * [SPEC-UI-002] [TAG-UI002-001]
5
+ */
6
+ export {};
7
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/screen-templates/types.ts"],"names":[],"mappings":"AAAA;;;;GAIG"}