@designbasekorea/ui-wc 0.13.0 → 0.15.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 (168) hide show
  1. package/CHANGELOG.md +16 -0
  2. package/LICENSE +21 -0
  3. package/README.en.md +45 -0
  4. package/README.md +13 -5
  5. package/THIRD-PARTY-NOTICES.md +5 -0
  6. package/dist/esm/components/db-ad-banner.d.ts +6 -0
  7. package/dist/esm/components/db-ad-banner.js +1 -1
  8. package/dist/esm/components/db-animation-background.d.ts +7 -0
  9. package/dist/esm/components/db-animation-background.js +1 -1
  10. package/dist/esm/components/db-avatar.d.ts +2 -0
  11. package/dist/esm/components/db-avatar.js +1 -1
  12. package/dist/esm/components/db-banner.d.ts +2 -0
  13. package/dist/esm/components/db-banner.js +1 -1
  14. package/dist/esm/components/db-bottom-navigation.d.ts +2 -0
  15. package/dist/esm/components/db-bottom-navigation.js +1 -1
  16. package/dist/esm/components/db-card.d.ts +2 -0
  17. package/dist/esm/components/db-card.js +1 -1
  18. package/dist/esm/components/db-carousel.d.ts +2 -0
  19. package/dist/esm/components/db-carousel.js +1 -1
  20. package/dist/esm/components/db-code-block.d.ts +3 -0
  21. package/dist/esm/components/db-code-block.js +1 -1
  22. package/dist/esm/components/db-color-picker.d.ts +5 -0
  23. package/dist/esm/components/db-color-picker.js +1 -1
  24. package/dist/esm/components/db-color-swatch.d.ts +2 -0
  25. package/dist/esm/components/db-color-swatch.js +1 -1
  26. package/dist/esm/components/db-confirm.d.ts +2 -0
  27. package/dist/esm/components/db-confirm.js +1 -1
  28. package/dist/esm/components/db-context-menu.d.ts +6 -2
  29. package/dist/esm/components/db-context-menu.js +1 -1
  30. package/dist/esm/components/db-cookie-banner.d.ts +2 -0
  31. package/dist/esm/components/db-cookie-banner.js +1 -1
  32. package/dist/esm/components/db-drawer.d.ts +2 -0
  33. package/dist/esm/components/db-drawer.js +1 -1
  34. package/dist/esm/components/db-dropdown.d.ts +2 -0
  35. package/dist/esm/components/db-dropdown.js +1 -1
  36. package/dist/esm/components/db-easing-editor.d.ts +5 -0
  37. package/dist/esm/components/db-empty-state.d.ts +2 -0
  38. package/dist/esm/components/db-empty-state.js +1 -1
  39. package/dist/esm/components/db-file-uploader.d.ts +4 -0
  40. package/dist/esm/components/db-file-uploader.js +1 -1
  41. package/dist/esm/components/db-footer.d.ts +2 -0
  42. package/dist/esm/components/db-footer.js +1 -1
  43. package/dist/esm/components/db-gantt.d.ts +2 -0
  44. package/dist/esm/components/db-gantt.js +1 -1
  45. package/dist/esm/components/db-image-list.d.ts +3 -0
  46. package/dist/esm/components/db-image-list.js +1 -1
  47. package/dist/esm/components/db-keyframe-editor.d.ts +5 -0
  48. package/dist/esm/components/db-layer-list.d.ts +71 -0
  49. package/dist/esm/components/db-layer-list.js +1 -0
  50. package/dist/esm/components/db-lightbox.d.ts +4 -0
  51. package/dist/esm/components/db-lightbox.js +1 -1
  52. package/dist/esm/components/db-list.d.ts +2 -0
  53. package/dist/esm/components/db-list.js +1 -1
  54. package/dist/esm/components/db-menu-item.d.ts +2 -0
  55. package/dist/esm/components/db-menu-item.js +1 -1
  56. package/dist/esm/components/db-modal.d.ts +3 -0
  57. package/dist/esm/components/db-modal.js +1 -1
  58. package/dist/esm/components/db-navbar.d.ts +5 -0
  59. package/dist/esm/components/db-navbar.js +1 -1
  60. package/dist/esm/components/db-onboarding-modal.d.ts +3 -0
  61. package/dist/esm/components/db-onboarding-modal.js +1 -1
  62. package/dist/esm/components/db-page-header.d.ts +3 -0
  63. package/dist/esm/components/db-page-header.js +1 -1
  64. package/dist/esm/components/db-pagination.d.ts +2 -0
  65. package/dist/esm/components/db-pagination.js +1 -1
  66. package/dist/esm/components/db-popover.d.ts +2 -0
  67. package/dist/esm/components/db-popover.js +1 -1
  68. package/dist/esm/components/db-search-bar.d.ts +3 -0
  69. package/dist/esm/components/db-search-bar.js +1 -1
  70. package/dist/esm/components/db-section-app-download.d.ts +2 -0
  71. package/dist/esm/components/db-section-app-download.js +1 -1
  72. package/dist/esm/components/db-section-contact.d.ts +2 -0
  73. package/dist/esm/components/db-section-contact.js +1 -1
  74. package/dist/esm/components/db-section-cta.d.ts +3 -0
  75. package/dist/esm/components/db-section-cta.js +1 -1
  76. package/dist/esm/components/db-section-faq.d.ts +2 -0
  77. package/dist/esm/components/db-section-faq.js +1 -1
  78. package/dist/esm/components/db-section-feature.d.ts +3 -0
  79. package/dist/esm/components/db-section-feature.js +1 -1
  80. package/dist/esm/components/db-section-hero.d.ts +2 -0
  81. package/dist/esm/components/db-section-hero.js +1 -1
  82. package/dist/esm/components/db-section-logo-cloud.d.ts +2 -0
  83. package/dist/esm/components/db-section-logo-cloud.js +1 -1
  84. package/dist/esm/components/db-section-pricing.d.ts +3 -0
  85. package/dist/esm/components/db-section-pricing.js +1 -1
  86. package/dist/esm/components/db-section-stats.d.ts +2 -0
  87. package/dist/esm/components/db-section-stats.js +1 -1
  88. package/dist/esm/components/db-section-testimonials.d.ts +4 -0
  89. package/dist/esm/components/db-section-testimonials.js +1 -1
  90. package/dist/esm/components/db-section.d.ts +2 -0
  91. package/dist/esm/components/db-section.js +1 -1
  92. package/dist/esm/components/db-share.d.ts +5 -0
  93. package/dist/esm/components/db-share.js +1 -1
  94. package/dist/esm/components/db-sidebar.d.ts +7 -0
  95. package/dist/esm/components/db-sidebar.js +1 -1
  96. package/dist/esm/components/db-stat.d.ts +2 -0
  97. package/dist/esm/components/db-stat.js +1 -1
  98. package/dist/esm/components/db-table.d.ts +5 -0
  99. package/dist/esm/components/db-table.js +1 -1
  100. package/dist/esm/components/db-testimonial.d.ts +3 -0
  101. package/dist/esm/components/db-testimonial.js +1 -1
  102. package/dist/esm/components/db-time-picker.d.ts +1 -0
  103. package/dist/esm/components/db-time-picker.js +1 -1
  104. package/dist/esm/components/db-top-banner.d.ts +3 -0
  105. package/dist/esm/components/db-top-banner.js +1 -1
  106. package/dist/esm/components/db-tutorial.d.ts +3 -0
  107. package/dist/esm/components/db-tutorial.js +1 -1
  108. package/dist/esm/components/db-video-timeline.d.ts +34 -2
  109. package/dist/esm/components/db-video-timeline.js +1 -1
  110. package/dist/esm/components/db-world-map.d.ts +5 -0
  111. package/dist/esm/components/media-editor-model.d.ts +10 -1
  112. package/dist/esm/core/i18n-en.js +1 -1
  113. package/dist/esm/core/i18n.d.ts +11 -0
  114. package/dist/esm/core/i18n.js +1 -1
  115. package/dist/esm/index.d.ts +2 -1
  116. package/dist/esm/index.js +1 -1
  117. package/dist/index.cjs +1 -1
  118. package/dist/index.css +1 -1
  119. package/dist/index.d.ts +619 -486
  120. package/dist/index.esm.js +1 -1
  121. package/dist/react/index.cjs +1 -1
  122. package/dist/react/index.d.ts +47 -3
  123. package/dist/react/index.esm.js +1 -1
  124. package/docs/ACCORDION.md +17 -0
  125. package/docs/ACHIEVEMENTS.md +15 -0
  126. package/docs/AI-ELEMENTS.md +86 -0
  127. package/docs/APP-UPDATE.md +60 -0
  128. package/docs/ATTACHMENTS.md +32 -0
  129. package/docs/BUTTON.md +17 -0
  130. package/docs/CDN-GUIDE.md +82 -0
  131. package/docs/COMPONENT-CHECKLIST.md +98 -0
  132. package/docs/CONTEXT-MENU.md +22 -0
  133. package/docs/CREDIT-AI.md +136 -0
  134. package/docs/CREDIT-CARD.md +52 -0
  135. package/docs/CROSS_PLATFORM_COMPONENT_STRATEGY.md +81 -0
  136. package/docs/EASING-EDITOR.md +42 -0
  137. package/docs/EFFECT-KEYFRAMES.md +60 -0
  138. package/docs/LAYER-LIST.md +31 -0
  139. package/docs/MEDIA-EDITORS.md +63 -0
  140. package/docs/MODULE-REUSE.md +43 -0
  141. package/docs/MULTI-PLATFORM-GUIDE.md +246 -0
  142. package/docs/NOTIFICATIONS.md +23 -0
  143. package/docs/PAPER-CARDS.md +61 -0
  144. package/docs/QUALITY-GUIDELINES.md +196 -0
  145. package/docs/RANGE-SLIDER.md +29 -0
  146. package/docs/REACT-WC-INTEGRATION.md +96 -0
  147. package/docs/RECENT-COMPONENTS-QUALITY.md +96 -0
  148. package/docs/SELECT.md +26 -0
  149. package/docs/SELECTION-CONTROLS.md +33 -0
  150. package/docs/SITE-SHELL.md +37 -0
  151. package/docs/STYLING.md +60 -0
  152. package/docs/SUPPORT.md +39 -0
  153. package/docs/TABS.md +19 -0
  154. package/docs/TEXT-FIELDS.md +28 -0
  155. package/docs/TIME-PICKER-DEVELOPMENT.md +115 -0
  156. package/docs/TOGGLE.md +40 -0
  157. package/docs/TRAVEL.md +30 -0
  158. package/docs/UI-NATIVE.md +90 -0
  159. package/docs/VIDEO-EXPORT.md +12 -0
  160. package/docs/VOICE-INPUT.md +24 -0
  161. package/docs/VUE-ANGULAR-INTEGRATION.md +197 -0
  162. package/docs/WORDPRESS-INTEGRATION.md +250 -0
  163. package/docs/WORKSPACE.md +27 -0
  164. package/docs/quality/AXE-REPORT.md +35 -0
  165. package/docs/quality/CREDIT-AI-RELEASE-2026-10-18.md +34 -0
  166. package/docs/quality/ENUM-MIGRATION-WORKSHEET.md +288 -0
  167. package/docs/quality/SCORECARD.md +389 -0
  168. package/package.json +136 -130
@@ -0,0 +1,288 @@
1
+ # enum 계약 이관 검토 워크시트
2
+
3
+ > ⚠️ **자동 생성 파일** — `node scripts/audit-wc-quality.mjs` 로 갱신되지 않는 일회성 산출물이다.
4
+ > 값 확정 후 `packages/ui-contracts/src/components.ts` 로 옮기고 이 파일은 지운다.
5
+
6
+ ## 왜 이 문서가 필요한가
7
+
8
+ 아래 컴포넌트들은 `variant` · `size` 같은 enum 성격의 속성을 갖지만,
9
+ **허용 값 집합이 코드 어디에도 선언돼 있지 않다.** 값은 SCSS 수식어 클래스에만 암묵적으로 존재한다.
10
+
11
+ 자동 도출을 시도했으나 신뢰할 수 없었다 — SCSS 수식어에는 enum 값과 상태 클래스
12
+ (`--dragging`, `--first`), 다른 축의 값(`--padding-l`, `--theme-dark`)이 뒤섞여 있다.
13
+ 잘못 도출한 집합으로 `coerceToContract()` 를 적용하면 **유효한 값이 조용히 기본값으로 바뀌는 회귀**가 된다.
14
+ 그래서 자동 적용하지 않고, 사람이 확정할 수 있도록 후보만 정리했다.
15
+
16
+ ## 사용법
17
+
18
+ 1. 각 컴포넌트의 후보에서 실제 enum 값만 골라낸다 (상태 클래스·다른 축은 제외)
19
+ 2. `packages/ui-contracts/src/components.ts` 에 `<COMPONENT>_<ATTR>S` 로 추가
20
+ 3. 컴포넌트에서 import 하고 getter 를 `coerceToContract()` 로 감싼다
21
+ 4. `npm run audit:quality` 로 `STD-CONTRACT` · `STD-COERCE` 해소 확인
22
+
23
+ 레퍼런스 구현: `db-button` · `db-select` · `db-tabs`
24
+
25
+ ## 대상 45개
26
+
27
+ ### `db-accordion`
28
+
29
+ - enum 속성: `variant` (기본값 `default`), `size` (기본값 `m`)
30
+ - 후보 값: `bordered`, `contained`, `default`, `l`, `m`, `s`, `separated`
31
+ - 제외된 상태 클래스: `disabled`, `expanded`
32
+
33
+ ### `db-ad-banner`
34
+
35
+ - enum 속성: `variant` (기본값 `primary`), `size` (기본값 `m`)
36
+ - 후보 값: `bg-animation`, `bg-gradient`, `bg-grid`, `size-l`, `size-m`, `size-s`, `type-card`, `type-floating`, `type-hero`, `type-topbar`, `variant-error`, `variant-primary`, `variant-secondary`, `variant-success`, `variant-warning`
37
+ - 제외된 상태 클래스: `with-gradient`
38
+
39
+ ### `db-alert`
40
+
41
+ - enum 속성: `variant` (기본값 `default`), `size` (기본값 `m`)
42
+ - 후보 값: `danger`, `default`, `info`, `inverse`, `l`, `m`, `s`, `success`, `warning`
43
+ - 제외된 상태 클래스: `closable`, `with-icon`
44
+
45
+ ### `db-animation-text`
46
+
47
+ - enum 속성: `size` (기본값 `m`), `align` (기본값 `left`)
48
+ - 후보 값: `2xl`, `3xl`, `bold`, `bounce`, `center`, `custom`, `decode`, `down`, `error`, `extrabold`, `fade`, `flip`, `glow`, `gradient`, `info`, `justify`, `l`, `left`, `light`, `m`, `medium`, `normal`, `primary`, `reveal`, `right`, `roll`, `s`, `scale`, `scroll-fill`, `secondary`, `semibold`, `shake`, `slide`, `success`, `text-rotate`, `up`, `warning`, `wave`, `xl`, `xs`
49
+ - 제외된 상태 클래스: `clickable`, `disabled`, `typing`
50
+
51
+ ### `db-app-badge`
52
+
53
+ - enum 속성: `size` (기본값 `m`)
54
+ - 후보 값: `dark`, `l`, `light`, `s`
55
+
56
+ ### `db-audio-player`
57
+
58
+ - enum 속성: `variant` (기본값 `default`), `size` (기본값 `m`)
59
+ - 후보 값: `repeat-all`, `repeat-none`, `repeat-one`, `size-l`, `size-m`, `size-s`, `size-xl`
60
+ - 제외된 상태 클래스: `active`, `error`, `loading`, `muted`, `paused`, `playing`, `shuffle`
61
+
62
+ ### `db-banner`
63
+
64
+ - enum 속성: `variant` (기본값 `primary`), `size` (기본값 `m`)
65
+ - 후보 값: `image`, `l`, `m`, `outline`, `primary`, `s`, `secondary`, `tertiary`
66
+ - 제외된 상태 클래스: `clickable`
67
+
68
+ ### `db-breadcrumbs`
69
+
70
+ - enum 속성: `variant`, `size` (기본값 `m`)
71
+ - 후보 값: `contained`, `default`, `l`, `m`, `s`, `underlined`
72
+ - 제외된 상태 클래스: `active`, `collapsed`, `disabled`
73
+
74
+ ### `db-carousel`
75
+
76
+ - enum 속성: `variant` (기본값 `default`), `size` (기본값 `m`)
77
+ - 후보 값: `dragging`, `first`, `fullscreen`, `indicator-dots`, `indicator-lines`, `indicator-numbers`, `indicator-thumbnails`, `last`, `like`, `size-l`, `size-m`, `size-s`, `size-xl`, `theme-dark`, `theme-light`, `transition-cube`, `transition-fade`, `transition-flip`, `transition-slide`, `transition-zoom`, `transitioning`, `variant-cards`, `variant-default`, `variant-gallery`, `variant-hero`, `variant-testimonial`
78
+ - 제외된 상태 클래스: `active`, `disabled`, `next`, `prev`, `readonly`
79
+
80
+ ### `db-color-picker`
81
+
82
+ - enum 속성: `size`, `position`
83
+ - 후보 값: `bottom-end`, `bottom-start`, `l`, `m`, `s`, `top-end`, `top-start`, `trigger-swatch`
84
+ - 제외된 상태 클래스: `alpha`, `disabled`, `full-width`, `hue`, `no-input`, `readonly`
85
+
86
+ ### `db-color-swatch`
87
+
88
+ - enum 속성: `size`
89
+ - 후보 값: `circle`, `l`, `m`, `s`
90
+ - 제외된 상태 클래스: `disabled`
91
+
92
+ ### `db-confirm`
93
+
94
+ - enum 속성: `variant` (기본값 `info`), `size` (기본값 `s`)
95
+ - 후보 값: `l`, `m`, `s`
96
+ - 제외된 상태 클래스: `no-icon`
97
+
98
+ ### `db-countdown`
99
+
100
+ - enum 속성: `variant`, `size`
101
+ - 후보 값: `compact`, `default`, `l`, `minimal`, `s`
102
+ - 제외된 상태 클래스: `expired`, `with-labels`
103
+
104
+ ### `db-empty-state`
105
+
106
+ - enum 속성: `variant` (기본값 `no-data`), `size` (기본값 `m`)
107
+ - 후보 값: `error`, `l`, `m`, `no-access`, `no-data`, `no-results`, `onboarding`, `s`
108
+
109
+ ### `db-gradient`
110
+
111
+ - enum 속성: `variant` (기본값 `default`), `size` (기본값 `m`)
112
+ - 후보 값: `direction-radial`, `direction-to-bottom`, `direction-to-bottom-left`, `direction-to-bottom-right`, `direction-to-left`, `direction-to-right`, `direction-to-top`, `direction-to-top-left`, `direction-to-top-right`, `size-full`, `size-l`, `size-m`, `size-s`, `size-xl`, `variant-animated`, `variant-default`, `variant-mesh`
113
+ - 제외된 상태 클래스: `full-height`, `full-width`
114
+
115
+ ### `db-grid-background`
116
+
117
+ - enum 속성: `size`
118
+ - 후보 값: —
119
+
120
+ ### `db-kanban`
121
+
122
+ - enum 속성: `size`
123
+ - 후보 값: `danger`, `high`, `info`, `l`, `low`, `m`, `medium`, `neutral`, `primary`, `success`, `urgent`, `warning`
124
+ - 제외된 상태 클래스: `disabled`, `drag-over`, `dragged`, `dragging`, `full-width`, `over-limit`
125
+
126
+ ### `db-label`
127
+
128
+ - enum 속성: `size` (기본값 `s`)
129
+ - 후보 값: `l`, `m`, `s`
130
+ - 제외된 상태 클래스: `disabled`, `error`
131
+
132
+ ### `db-list`
133
+
134
+ - enum 속성: `variant` (기본값 `navigation`), `size` (기본값 `m`)
135
+ - 후보 값: `alignment-center`, `alignment-end`, `alignment-start`, `alignment-stretch`, `draggable`, `dragging`, `layout-horizontal`, `size-l`, `size-m`, `size-s`, `spacing-l`, `spacing-m`, `spacing-none`, `spacing-s`, `variant-bordered`, `variant-card`, `variant-default`, `variant-minimal`, `variant-navigation`
136
+ - 제외된 상태 클래스: `clickable`, `disabled`, `loading`, `selectable`, `selected`
137
+
138
+ ### `db-logo`
139
+
140
+ - enum 속성: `variant` (기본값 `default`), `size` (기본값 `m`)
141
+ - 후보 값: `dark`, `default`, `l`, `light`, `m`, `original`, `primary`, `s`, `secondary`, `white`, `xl`, `xs`
142
+ - 제외된 상태 클래스: `clickable`, `full-width`, `svg`
143
+
144
+ ### `db-markdown-editor`
145
+
146
+ - enum 속성: `variant` (기본값 `default`), `size` (기본값 `m`)
147
+ - 후보 값: `mode-code`, `mode-edit`, `mode-preview`, `mode-split`, `size-l`, `size-m`, `size-s`, `theme-dark`, `theme-light`, `variant-default`, `variant-filled`, `variant-outlined`
148
+ - 제외된 상태 클래스: `active`, `disabled`, `focused`, `readonly`
149
+
150
+ ### `db-marquee`
151
+
152
+ - enum 속성: `variant` (기본값 `default`), `size` (기본값 `m`)
153
+ - 후보 값: `size-l`, `size-m`, `size-s`, `variant-default`, `variant-filled`, `variant-outlined`
154
+ - 제외된 상태 클래스: `bordered`, `fade-edges`
155
+
156
+ ### `db-menu-item`
157
+
158
+ - enum 속성: `variant` (기본값 `default`), `size` (기본값 `m`)
159
+ - 후보 값: `block`, `danger`, `default`, `depth-1`, `depth-2`, `depth-3`, `dropdown`, `info`, `inline`, `l`, `m`, `primary`, `s`, `success`, `warning`
160
+ - 제외된 상태 클래스: `accordion`, `active`, `clickable`, `disabled`, `expanded`
161
+
162
+ ### `db-pagination`
163
+
164
+ - enum 속성: `variant` (기본값 `default`), `size` (기본값 `m`)
165
+ - 후보 값: `center`, `l`, `left`, `m`, `minimal`, `next`, `outlined`, `right`, `s`
166
+ - 제외된 상태 클래스: `active`, `disabled`, `full-width`
167
+
168
+ ### `db-progress-step`
169
+
170
+ - enum 속성: `size` (기본값 `m`)
171
+ - 후보 값: `active`, `completed`, `error`, `horizontal`, `l`, `m`, `pending`, `s`, `vertical`
172
+ - 제외된 상태 클래스: `clickable`, `disabled`, `full-width`
173
+
174
+ ### `db-random-gradient`
175
+
176
+ - enum 속성: `tone` (기본값 `vivid`)
177
+ - 후보 값: —
178
+ - 제외된 상태 클래스: `animated`
179
+
180
+ ### `db-rating`
181
+
182
+ - enum 속성: `variant`, `size`
183
+ - 후보 값: `color-error`, `color-primary`, `color-secondary`, `color-success`, `color-warning`, `display-detailed`, `size-l`, `size-m`, `size-s`, `variant-card`, `variant-inline`, `variant-large`, `variant-minimal`
184
+ - 제외된 상태 클래스: `clickable`, `disabled`, `empty`, `hover-preview`
185
+
186
+ ### `db-reorder`
187
+
188
+ - enum 속성: `variant`, `size`
189
+ - 후보 값: `bordered`, `default`, `filled`, `horizontal`, `l`, `m`, `minimal`, `s`
190
+ - 제외된 상태 클래스: `disabled`, `drag-over`, `dragged`, `dragging`, `full-width`, `selectable`, `selected`
191
+
192
+ ### `db-section-app-download`
193
+
194
+ - enum 속성: `size`, `align` (기본값 `center`)
195
+ - 후보 값: —
196
+
197
+ ### `db-section-contact`
198
+
199
+ - enum 속성: `size`, `align` (기본값 `center`)
200
+ - 후보 값: `padding-l`, `padding-m`, `padding-s`
201
+ - 제외된 상태 클래스: `accent`
202
+
203
+ ### `db-section-cta`
204
+
205
+ - enum 속성: `variant` (기본값 `default`), `size`, `align` (기본값 `center`)
206
+ - 후보 값: `dark`, `gradient`, `light`, `padding-l`, `padding-m`, `padding-s`, `tinted`
207
+
208
+ ### `db-section-faq`
209
+
210
+ - enum 속성: `size`, `align` (기본값 `center`)
211
+ - 후보 값: `padding-l`, `padding-m`, `padding-s`
212
+
213
+ ### `db-section-feature`
214
+
215
+ - enum 속성: `size`
216
+ - 후보 값: `padding-l`, `padding-m`, `padding-s`
217
+ - 제외된 상태 클래스: `tinted`
218
+
219
+ ### `db-section-feature-grid`
220
+
221
+ - enum 속성: `size`, `align` (기본값 `center`)
222
+ - 후보 값: `full-height`, `overflow-visible`, `padding-l`, `padding-m`, `padding-s`
223
+ - 제외된 상태 클래스: `tinted`
224
+
225
+ ### `db-section-hero`
226
+
227
+ - enum 속성: `variant` (기본값 `default`)
228
+ - 후보 값: `alignment-center`, `alignment-left`, `alignment-right`, `theme-dark`, `theme-gradient`, `theme-image`, `theme-light`, `variant-centered`, `variant-overlay`
229
+ - 제외된 상태 클래스: `animated`, `full-height`, `on-media`
230
+
231
+ ### `db-section-logo-cloud`
232
+
233
+ - enum 속성: `variant` (기본값 `grid`), `size`, `align` (기본값 `center`)
234
+ - 후보 값: `padding-l`, `padding-m`, `padding-s`
235
+
236
+ ### `db-section-pricing`
237
+
238
+ - enum 속성: `size`, `align` (기본값 `center`)
239
+ - 후보 값: `full-height`, `overflow-visible`, `padding-l`, `padding-m`, `padding-s`
240
+ - 제외된 상태 클래스: `highlighted`
241
+
242
+ ### `db-section-stats`
243
+
244
+ - enum 속성: `size`, `align` (기본값 `center`)
245
+ - 후보 값: `padding-l`, `padding-m`, `padding-s`
246
+ - 제외된 상태 클래스: `tinted`
247
+
248
+ ### `db-section-testimonials`
249
+
250
+ - enum 속성: `variant` (기본값 `grid`), `size`, `align` (기본값 `center`)
251
+ - 후보 값: `full-height`, `overflow-visible`, `padding-l`, `padding-m`, `padding-s`
252
+ - 제외된 상태 클래스: `next`, `prev`
253
+
254
+ ### `db-share`
255
+
256
+ - enum 속성: `variant` (기본값 `button`), `size` (기본값 `m`), `position` (기본값 `bottom`)
257
+ - 후보 값: `dropdown`, `email`, `facebook`, `inline`, `instagram`, `l`, `link`, `linkedin`, `modal`, `pinterest`, `qr`, `s`, `telegram`, `twitter`, `whatsapp`
258
+
259
+ ### `db-signature`
260
+
261
+ - enum 속성: `variant`
262
+ - 후보 값: `dashed`, `outlined`
263
+ - 제외된 상태 클래스: `disabled`
264
+
265
+ ### `db-timeline`
266
+
267
+ - enum 속성: `variant` (기본값 `default`), `size` (기본값 `m`)
268
+ - 후보 값: `active`, `alternate`, `completed`, `default`, `error`, `filled`, `info`, `l`, `left`, `m`, `outlined`, `pending`, `primary`, `right`, `s`, `secondary`, `success`, `warning`
269
+ - 제외된 상태 클래스: `clickable`, `disabled`, `full-width`, `with-icon`, `with-number`
270
+
271
+ ### `db-toolbar`
272
+
273
+ - enum 속성: `variant` (기본값 `default`), `size` (기본값 `m`), `position` (기본값 `top`)
274
+ - 후보 값: `custom`, `dropdown`, `open`, `position-bottom`, `position-floating`, `position-left`, `position-right`, `position-top`, `selected`, `size-l`, `size-m`, `size-s`, `variant-default`, `variant-filled`, `variant-ghost`, `variant-outlined`
275
+ - 제외된 상태 클래스: `active`, `button`, `disabled`, `fixed`, `full-width`, `rounded`, `separator`, `shadow`
276
+
277
+ ### `db-video-player`
278
+
279
+ - enum 속성: `variant` (기본값 `default`), `size` (기본값 `m`)
280
+ - 후보 값: `size-l`, `size-m`, `size-s`, `size-xl`, `theme-auto`, `theme-dark`, `theme-light`
281
+ - 제외된 상태 클래스: `error`, `fullscreen`, `loading`, `muted`, `paused`, `playing`, `show-controls`
282
+
283
+ ### `db-youtube-player`
284
+
285
+ - enum 속성: `variant` (기본값 `default`), `size` (기본값 `m`)
286
+ - 후보 값: `auto`, `dark`, `default`, `error`, `full`, `l`, `light`, `m`, `minimal`, `muted`, `picture-in-picture`, `s`, `theater`, `xl`
287
+ - 제외된 상태 클래스: `fullscreen`
288
+
@@ -0,0 +1,389 @@
1
+ # ui-wc 품질 스코어카드
2
+
3
+ > ⚠️ **자동 생성 파일 — 직접 수정하지 마세요.**
4
+ > `npm run audit:quality` 로 재생성됩니다. 규칙 정의는 [QUALITY-GUIDELINES.md](../QUALITY-GUIDELINES.md).
5
+
6
+ 생성일: 2026-10-29 · 대상 컴포넌트: **185개** · 평균 점수: **98점 (A)** · P0 무결점: **185/185**
7
+
8
+ ## 축별 요약
9
+
10
+ | 축 | 평균 | P0 위반 건수 | P1 위반 건수 |
11
+ |---|---|---|---|
12
+ | 접근성 (A11Y) | 100점 | 0 | 3 |
13
+ | 웹표준 (STD) | 100점 | 0 | 3 |
14
+ | 성능 (PERF) | 100점 | 0 | 6 |
15
+ | DX (DX) | 88점 | 0 | 112 |
16
+
17
+ ## 규칙별 위반 현황
18
+
19
+ | 규칙 | 등급 | 위반 | 해당 | 위반율 |
20
+ |---|---|---|---|---|
21
+ | `DX-I18N` | P1 | 86 | 185 | 46% |
22
+ | `PERF-RAF` | P1 | 6 | 26 | 23% |
23
+ | `DX-STORY` | P1 | 26 | 185 | 14% |
24
+ | `A11Y-ESCAPE` | P1 | 3 | 22 | 14% |
25
+ | `STD-LIGHT-DOM` | P1 | 3 | 158 | 2% |
26
+ | `A11Y-FOCUS-RING` | P0 | 0 | 156 | 0% |
27
+ | `A11Y-NAME` | P0 | 0 | 55 | 0% |
28
+ | `A11Y-TRAP` | P0 | 0 | 7 | 0% |
29
+ | `A11Y-DIALOG` | P0 | 0 | 18 | 0% |
30
+ | `A11Y-DECORATIVE` | P0 | 0 | 4 | 0% |
31
+ | `A11Y-STATE` | P0 | 0 | 107 | 0% |
32
+ | `A11Y-KEYBOARD` | P0 | 0 | 17 | 0% |
33
+ | `A11Y-REDUCED-MOTION` | P1 | 0 | 42 | 0% |
34
+ | `STD-DEFINE` | P0 | 0 | 185 | 0% |
35
+ | `STD-EVENT` | P0 | 0 | 98 | 0% |
36
+ | `STD-CONTRACT` | P0 | 0 | 120 | 0% |
37
+ | `STD-COERCE` | P0 | 0 | 120 | 0% |
38
+ | `STD-FORM` | P0 | 0 | 8 | 0% |
39
+ | `STD-NO-INNERHTML` | P0 | 0 | 185 | 0% |
40
+ | `STD-SSR` | P1 | 0 | 185 | 0% |
41
+ | `PERF-CLEANUP` | P0 | 0 | 185 | 0% |
42
+ | `PERF-GLOBAL-STATE` | P0 | 0 | 185 | 0% |
43
+ | `PERF-RECONCILE` | P1 | 0 | 185 | 0% |
44
+ | `PERF-LAZY` | P1 | 0 | 0 | 0% |
45
+ | `DX-UID` | P0 | 0 | 185 | 0% |
46
+
47
+ ## 위반 상세
48
+
49
+ ### `DX-I18N` (P1) — 86/185
50
+
51
+ > 사용자에게 노출되는 모든 문자열(aria-label 포함)은 오버라이드 가능해야 한다. 소스에 한국어 리터럴을 박지 말고 `core/i18n.ts` 의 `t()` 경유
52
+
53
+ - `db-accordion` — 하드코딩 한국어 1건 (예: "아코디언")
54
+ - `db-achievement-list` — 하드코딩 한국어 12건 (예: "뱃지 목록")
55
+ - `db-achievement-modal` — 하드코딩 한국어 10건 (예: "모달 닫기")
56
+ - `db-activity-heatmap` — 하드코딩 한국어 4건 (예: "적음")
57
+ - `db-ad-banner` — 하드코딩 한국어 15건 (예: "지금 바로 시작하세요")
58
+ - `db-ai-chat` — 하드코딩 한국어 5건 (예: "아티팩트 닫기")
59
+ - `db-ai-chat-list` — 하드코딩 한국어 2건 (예: "새 대화")
60
+ - `db-alert` — 하드코딩 한국어 1건 (예: "알림 닫기")
61
+ - `db-animation-background` — 하드코딩 한국어 4건 (예: "컨트롤 열기")
62
+ - `db-app-badge` — 하드코딩 한국어 2건 (예: "다운로드")
63
+ - `db-audio-player` — 하드코딩 한국어 9건 (예: "오디오를 재생할 수 없습니")
64
+ - `db-avatar` — 하드코딩 한국어 1건 (예: "아바타 이미지")
65
+ - `db-boarding-pass` — 하드코딩 한국어 12건 (예: "출발")
66
+ - `db-bottom-navigation` — 하드코딩 한국어 1건 (예: "하단 네비게이션")
67
+ - `db-bottom-sheet` — 하드코딩 한국어 1건 (예: "닫기")
68
+ - `db-breadcrumbs` — 하드코딩 한국어 1건 (예: "브레드크럼 네비게이션")
69
+ - `db-calendar` — 하드코딩 한국어 38건 (예: "회의")
70
+ - `db-card` — 하드코딩 한국어 1건 (예: "카드 선택")
71
+ - `db-chat-composer` — 하드코딩 한국어 3건 (예: "사진·이미지")
72
+ - `db-chat-message` — 하드코딩 한국어 5건 (예: "복사")
73
+ - `db-chat-room` — 하드코딩 한국어 8건 (예: "파일을 놓으면 첨부됩니다")
74
+ - `db-chat-typing` — 하드코딩 한국어 1건 (예: "AI가 응답을 생성하고 있")
75
+ - `db-chat-widget` — 하드코딩 한국어 75건 (예: "제품·정책 알아보기")
76
+ - `db-chip` — 하드코딩 한국어 1건 (예: "{0} 삭제")
77
+ - `db-code-block` — 하드코딩 한국어 3건 (예: "복사됨")
78
+ - `db-color-picker` — 하드코딩 한국어 3건 (예: "색상 선택")
79
+ - `db-context-bar` — 하드코딩 한국어 1건 (예: "선택 요소 작업")
80
+ - `db-cookie-banner` — 하드코딩 한국어 6건 (예: "쿠키 사용 안내")
81
+ - `db-countdown` — 하드코딩 한국어 4건 (예: "일")
82
+ - `db-date-picker` — 하드코딩 한국어 17건 (예: "날짜 선택 열기")
83
+ - `db-design-canvas` — 하드코딩 한국어 67건 (예: "요소")
84
+ - `db-design-toolbar` — 하드코딩 한국어 3건 (예: "디자인 도구")
85
+ - `db-download-progress` — 하드코딩 한국어 22건 (예: "다운로드 중")
86
+ - `db-drawer` — 하드코딩 한국어 1건 (예: "닫기")
87
+ - `db-dropdown` — 하드코딩 한국어 1건 (예: "메뉴")
88
+ - `db-email-verify` — 하드코딩 한국어 23건 (예: "남은 시간 {0}분 {1}")
89
+ - `db-flight-status` — 하드코딩 한국어 6건 (예: "출발 예정")
90
+ - `db-footer` — 하드코딩 한국어 3건 (예: "법적 고지")
91
+ - `db-form` — 하드코딩 한국어 3건 (예: "제출")
92
+ - `db-gantt` — 하드코딩 한국어 12건 (예: "일")
93
+ - `db-image` — 하드코딩 한국어 1건 (예: "이미지를 불러올 수 없습니")
94
+ - `db-image-list` — 하드코딩 한국어 1건 (예: "이미지 목록")
95
+ - `db-indicator` — 하드코딩 한국어 1건 (예: "{0}단계")
96
+ - `db-input` — 하드코딩 한국어 1건 (예: "비밀번호 강도")
97
+ - `db-kanban` — 하드코딩 한국어 8건 (예: "낮음")
98
+ - `db-lightbox` — 하드코딩 한국어 7건 (예: "이미지 갤러리")
99
+ - `db-list` — 하드코딩 한국어 1건 (예: "항목이 없습니다.")
100
+ - `db-markdown-editor` — 하드코딩 한국어 25건 (예: "마크다운을 입력하세요...")
101
+ - `db-navbar` — 하드코딩 한국어 8건 (예: "메인 네비게이션")
102
+ - `db-node` — 하드코딩 한국어 21건 (예: "일반")
103
+ - `db-onboarding-modal` — 하드코딩 한국어 8건 (예: "닫기")
104
+ - `db-otp-input` — 하드코딩 한국어 4건 (예: "인증 코드")
105
+ - `db-page-header` — 하드코딩 한국어 2건 (예: "뒤로가기")
106
+ - `db-pagination` — 하드코딩 한국어 8건 (예: "페이지 네비게이션")
107
+ - `db-phone-verify` — 하드코딩 한국어 21건 (예: "알뜰폰")
108
+ - `db-popover` — 하드코딩 한국어 1건 (예: "팝오버 닫기")
109
+ - `db-progress-step` — 하드코딩 한국어 1건 (예: "{0} 단계로 이동")
110
+ - `db-rating` — 하드코딩 한국어 3건 (예: "매우 좋음")
111
+ - `db-receipt` — 하드코딩 한국어 8건 (예: "수량")
112
+ - `db-resizable-panels` — 하드코딩 한국어 5건 (예: "크기 조절")
113
+ - `db-search-bar` — 하드코딩 한국어 9건 (예: "검색...")
114
+ - `db-section-app-download` — 하드코딩 한국어 2건 (예: "지금 바로 시작하세요")
115
+ - `db-section-contact` — 하드코딩 한국어 2건 (예: "문의하기")
116
+ - `db-section-faq` — 하드코딩 한국어 1건 (예: "자주 묻는 질문")
117
+ - `db-section-feature-grid` — 하드코딩 한국어 1건 (예: "주요 기능")
118
+ - `db-section-logo-cloud` — 하드코딩 한국어 1건 (예: "함께하는 파트너")
119
+ - `db-section-pricing` — 하드코딩 한국어 1건 (예: "요금제")
120
+ - `db-section-testimonials` — 하드코딩 한국어 4건 (예: "고객 후기")
121
+ - `db-segment-control` — 하드코딩 한국어 1건 (예: "세그먼트 컨트롤")
122
+ - `db-select` — 하드코딩 한국어 1건 (예: "{0} 제거")
123
+ - `db-share` — 하드코딩 한국어 14건 (예: "Instagram에 직접 ")
124
+ - `db-sidebar` — 하드코딩 한국어 14건 (예: "프로젝트 관리")
125
+ - `db-signature` — 하드코딩 한국어 2건 (예: "서명 입력 영역")
126
+ - `db-spinner` — 하드코딩 한국어 1건 (예: "로딩 중...")
127
+ - `db-split-view` — 하드코딩 한국어 1건 (예: "패널 너비 조정")
128
+ - `db-stepper` — 하드코딩 한국어 7건 (예: "감소")
129
+ - `db-table` — 하드코딩 한국어 3건 (예: "데이터가 없습니다.")
130
+ - `db-testimonial` — 하드코딩 한국어 1건 (예: "{0} 프로필 이미지")
131
+ - `db-ticket` — 하드코딩 한국어 1건 (예: "티켓")
132
+ - `db-time-picker` — 하드코딩 한국어 17건 (예: "시간 선택 열기")
133
+ - `db-tool-button` — 하드코딩 한국어 3건 (예: "도구")
134
+ - `db-top-banner` — 하드코딩 한국어 1건 (예: "닫기")
135
+ - `db-tutorial` — 하드코딩 한국어 4건 (예: "튜토리얼 종료")
136
+ - `db-two-factor` — 하드코딩 한국어 27건 (예: "인증 앱")
137
+ - `db-video-player` — 하드코딩 한국어 5건 (예: "10초 되감기")
138
+ - `db-youtube-player` — 하드코딩 한국어 1건 (예: "동영상을 불러올 수 없습니")
139
+
140
+ ### `PERF-RAF` (P1) — 6/26
141
+
142
+ > `scroll` / `resize` / `pointermove` 핸들러는 `requestAnimationFrame` 으로 병합하고, 스크롤 리스너는 `{ passive: true }`
143
+
144
+ - `db-design-canvas` — rAF 병합 없음
145
+ - `db-design-toolbar` — rAF 병합 없음
146
+ - `db-floating-action-button` — rAF 병합 없음
147
+ - `db-node` — rAF 병합 없음
148
+ - `db-page-header` — scroll 리스너에 passive 명시 없음
149
+ - `db-signature` — rAF 병합 없음
150
+
151
+ ### `DX-STORY` (P1) — 26/185
152
+
153
+ > 컴포넌트당 Storybook 스토리 1개 이상
154
+
155
+ - `db-ai-chain-of-thought` — Storybook 스토리 없음
156
+ - `db-ai-checkpoint` — Storybook 스토리 없음
157
+ - `db-ai-confirmation` — Storybook 스토리 없음
158
+ - `db-ai-context` — Storybook 스토리 없음
159
+ - `db-ai-conversation` — Storybook 스토리 없음
160
+ - `db-ai-file-tree` — Storybook 스토리 없음
161
+ - `db-ai-inline-citation` — Storybook 스토리 없음
162
+ - `db-ai-message` — Storybook 스토리 없음
163
+ - `db-ai-plan` — Storybook 스토리 없음
164
+ - `db-ai-queue` — Storybook 스토리 없음
165
+ - `db-ai-reasoning` — Storybook 스토리 없음
166
+ - `db-ai-sources` — Storybook 스토리 없음
167
+ - `db-ai-stack-trace` — Storybook 스토리 없음
168
+ - `db-ai-subagent` — Storybook 스토리 없음
169
+ - `db-ai-task` — Storybook 스토리 없음
170
+ - `db-ai-terminal` — Storybook 스토리 없음
171
+ - `db-ai-test-results` — Storybook 스토리 없음
172
+ - `db-ai-tool` — Storybook 스토리 없음
173
+ - `db-browser-mockup` — Storybook 스토리 없음
174
+ - `db-context-bar` — Storybook 스토리 없음
175
+ - `db-design-canvas` — Storybook 스토리 없음
176
+ - `db-design-toolbar` — Storybook 스토리 없음
177
+ - `db-filter-bar` — Storybook 스토리 없음
178
+ - `db-node` — Storybook 스토리 없음
179
+ - `db-tool-button` — Storybook 스토리 없음
180
+ - `db-voice-control` — Storybook 스토리 없음
181
+
182
+ ### `A11Y-ESCAPE` (P1) — 3/22
183
+
184
+ > 닫을 수 있는 오버레이/팝업은 Escape 로 닫힌다
185
+
186
+ - `db-achievement-modal` — Escape 로 닫을 수 없음
187
+ - `db-credit-dropdown` — Escape 로 닫을 수 없음
188
+ - `db-notification-dropdown` — Escape 로 닫을 수 없음
189
+
190
+ ### `STD-LIGHT-DOM` (P1) — 3/158
191
+
192
+ > Light DOM 을 유지한다(→ STYLING.md). 따라서 모든 클래스는 `designbase-wc-` 접두사 필수 — 전역 CSS 충돌 방어의 유일한 수단
193
+
194
+ - `db-browser-mockup` — attachShadow 사용 (Light DOM 규약 위반)
195
+ - `db-credit-card` — 비접두사 전역 클래스: db-credit-card
196
+ - `db-node` — attachShadow 사용 (Light DOM 규약 위반)
197
+
198
+ ## 컴포넌트별 점수
199
+
200
+ 낮은 점수부터. 개선 우선순위로 사용합니다.
201
+
202
+ | 컴포넌트 | 아키타입 | 점수 | 등급 | P0 위반 | P1 위반 |
203
+ |---|---|---|---|---|---|
204
+ | `db-node` | display | 87 | B | — | `STD-LIGHT-DOM` `PERF-RAF` `DX-I18N` `DX-STORY` |
205
+ | `db-context-bar` | display | 89 | B | — | `DX-I18N` `DX-STORY` |
206
+ | `db-design-canvas` | composite | 90 | B | — | `PERF-RAF` `DX-I18N` `DX-STORY` |
207
+ | `db-achievement-modal` | overlay | 91 | B | — | `A11Y-ESCAPE` `DX-I18N` |
208
+ | `db-browser-mockup` | display | 92 | B | — | `STD-LIGHT-DOM` `DX-STORY` |
209
+ | `db-design-toolbar` | composite | 92 | B | — | `PERF-RAF` `DX-I18N` `DX-STORY` |
210
+ | `db-page-header` | display | 94 | B | — | `PERF-RAF` `DX-I18N` |
211
+ | `db-tool-button` | overlay, composite | 94 | B | — | `DX-I18N` `DX-STORY` |
212
+ | `db-ai-checkpoint` | display | 95 | A | — | `DX-STORY` |
213
+ | `db-ai-confirmation` | display | 95 | A | — | `DX-STORY` |
214
+ | `db-ai-context` | display | 95 | A | — | `DX-STORY` |
215
+ | `db-ai-conversation` | display | 95 | A | — | `DX-STORY` |
216
+ | `db-ai-file-tree` | display | 95 | A | — | `DX-STORY` |
217
+ | `db-ai-inline-citation` | display | 95 | A | — | `DX-STORY` |
218
+ | `db-ai-message` | display | 95 | A | — | `DX-STORY` |
219
+ | `db-ai-queue` | display | 95 | A | — | `DX-STORY` |
220
+ | `db-ai-sources` | display | 95 | A | — | `DX-STORY` |
221
+ | `db-ai-stack-trace` | display | 95 | A | — | `DX-STORY` |
222
+ | `db-boarding-pass` | display | 95 | A | — | `DX-I18N` |
223
+ | `db-signature` | display | 95 | A | — | `PERF-RAF` `DX-I18N` |
224
+ | `db-ticket` | display | 95 | A | — | `DX-I18N` |
225
+ | `db-achievement-list` | display | 96 | A | — | `DX-I18N` |
226
+ | `db-ai-chain-of-thought` | display | 96 | A | — | `DX-STORY` |
227
+ | `db-ai-plan` | display | 96 | A | — | `DX-STORY` |
228
+ | `db-ai-reasoning` | display | 96 | A | — | `DX-STORY` |
229
+ | `db-ai-subagent` | display | 96 | A | — | `DX-STORY` |
230
+ | `db-ai-task` | display | 96 | A | — | `DX-STORY` |
231
+ | `db-ai-terminal` | display | 96 | A | — | `DX-STORY` |
232
+ | `db-ai-test-results` | display | 96 | A | — | `DX-STORY` |
233
+ | `db-ai-tool` | display | 96 | A | — | `DX-STORY` |
234
+ | `db-chat-typing` | display | 96 | A | — | `DX-I18N` |
235
+ | `db-credit-dropdown` | overlay, composite | 96 | A | — | `A11Y-ESCAPE` |
236
+ | `db-flight-status` | display | 96 | A | — | `DX-I18N` |
237
+ | `db-floating-action-button` | display | 96 | A | — | `PERF-RAF` |
238
+ | `db-notification-dropdown` | overlay, composite | 96 | A | — | `A11Y-ESCAPE` |
239
+ | `db-receipt` | display | 96 | A | — | `DX-I18N` |
240
+ | `db-resizable-panels` | display | 96 | A | — | `DX-I18N` |
241
+ | `db-voice-control` | display | 96 | A | — | `DX-STORY` |
242
+ | `db-accordion` | composite | 97 | A | — | `DX-I18N` |
243
+ | `db-activity-heatmap` | display | 97 | A | — | `DX-I18N` |
244
+ | `db-ad-banner` | display | 97 | A | — | `DX-I18N` |
245
+ | `db-ai-chat` | display | 97 | A | — | `DX-I18N` |
246
+ | `db-ai-chat-list` | display | 97 | A | — | `DX-I18N` |
247
+ | `db-alert` | display | 97 | A | — | `DX-I18N` |
248
+ | `db-animation-background` | overlay | 97 | A | — | `DX-I18N` |
249
+ | `db-app-badge` | display | 97 | A | — | `DX-I18N` |
250
+ | `db-audio-player` | composite | 97 | A | — | `DX-I18N` |
251
+ | `db-avatar` | display | 97 | A | — | `DX-I18N` |
252
+ | `db-bottom-navigation` | display | 97 | A | — | `DX-I18N` |
253
+ | `db-breadcrumbs` | display | 97 | A | — | `DX-I18N` |
254
+ | `db-calendar` | display | 97 | A | — | `DX-I18N` |
255
+ | `db-card` | display | 97 | A | — | `DX-I18N` |
256
+ | `db-chat-composer` | display | 97 | A | — | `DX-I18N` |
257
+ | `db-chat-message` | display | 97 | A | — | `DX-I18N` |
258
+ | `db-chat-room` | display | 97 | A | — | `DX-I18N` |
259
+ | `db-chat-widget` | overlay | 97 | A | — | `DX-I18N` |
260
+ | `db-chip` | display | 97 | A | — | `DX-I18N` |
261
+ | `db-code-block` | display | 97 | A | — | `DX-I18N` |
262
+ | `db-color-picker` | display | 97 | A | — | `DX-I18N` |
263
+ | `db-cookie-banner` | overlay | 97 | A | — | `DX-I18N` |
264
+ | `db-countdown` | display | 97 | A | — | `DX-I18N` |
265
+ | `db-credit-card` | display | 97 | A | — | `STD-LIGHT-DOM` |
266
+ | `db-download-progress` | display | 97 | A | — | `DX-I18N` |
267
+ | `db-email-verify` | display | 97 | A | — | `DX-I18N` |
268
+ | `db-filter-bar` | display | 97 | A | — | `DX-STORY` |
269
+ | `db-footer` | display | 97 | A | — | `DX-I18N` |
270
+ | `db-form` | display | 97 | A | — | `DX-I18N` |
271
+ | `db-gantt` | display | 97 | A | — | `DX-I18N` |
272
+ | `db-image` | display | 97 | A | — | `DX-I18N` |
273
+ | `db-image-list` | display | 97 | A | — | `DX-I18N` |
274
+ | `db-indicator` | display | 97 | A | — | `DX-I18N` |
275
+ | `db-kanban` | display | 97 | A | — | `DX-I18N` |
276
+ | `db-list` | display | 97 | A | — | `DX-I18N` |
277
+ | `db-markdown-editor` | display | 97 | A | — | `DX-I18N` |
278
+ | `db-navbar` | display | 97 | A | — | `DX-I18N` |
279
+ | `db-otp-input` | form, composite | 97 | A | — | `DX-I18N` |
280
+ | `db-pagination` | display | 97 | A | — | `DX-I18N` |
281
+ | `db-phone-verify` | display | 97 | A | — | `DX-I18N` |
282
+ | `db-progress-step` | display | 97 | A | — | `DX-I18N` |
283
+ | `db-rating` | display | 97 | A | — | `DX-I18N` |
284
+ | `db-search-bar` | display | 97 | A | — | `DX-I18N` |
285
+ | `db-section-app-download` | section | 97 | A | — | `DX-I18N` |
286
+ | `db-section-contact` | section | 97 | A | — | `DX-I18N` |
287
+ | `db-section-faq` | section | 97 | A | — | `DX-I18N` |
288
+ | `db-section-feature-grid` | section | 97 | A | — | `DX-I18N` |
289
+ | `db-section-logo-cloud` | section | 97 | A | — | `DX-I18N` |
290
+ | `db-section-pricing` | section | 97 | A | — | `DX-I18N` |
291
+ | `db-section-testimonials` | section | 97 | A | — | `DX-I18N` |
292
+ | `db-segment-control` | composite | 97 | A | — | `DX-I18N` |
293
+ | `db-share` | display | 97 | A | — | `DX-I18N` |
294
+ | `db-spinner` | display | 97 | A | — | `DX-I18N` |
295
+ | `db-split-view` | composite | 97 | A | — | `DX-I18N` |
296
+ | `db-stepper` | composite | 97 | A | — | `DX-I18N` |
297
+ | `db-table` | display | 97 | A | — | `DX-I18N` |
298
+ | `db-testimonial` | display | 97 | A | — | `DX-I18N` |
299
+ | `db-top-banner` | display | 97 | A | — | `DX-I18N` |
300
+ | `db-two-factor` | display | 97 | A | — | `DX-I18N` |
301
+ | `db-video-player` | display | 97 | A | — | `DX-I18N` |
302
+ | `db-youtube-player` | display | 97 | A | — | `DX-I18N` |
303
+ | `db-bottom-sheet` | overlay | 98 | A | — | `DX-I18N` |
304
+ | `db-date-picker` | overlay | 98 | A | — | `DX-I18N` |
305
+ | `db-drawer` | overlay | 98 | A | — | `DX-I18N` |
306
+ | `db-dropdown` | overlay, composite | 98 | A | — | `DX-I18N` |
307
+ | `db-input` | form | 98 | A | — | `DX-I18N` |
308
+ | `db-lightbox` | overlay, composite | 98 | A | — | `DX-I18N` |
309
+ | `db-onboarding-modal` | overlay, composite | 98 | A | — | `DX-I18N` |
310
+ | `db-popover` | overlay | 98 | A | — | `DX-I18N` |
311
+ | `db-select` | form, composite | 98 | A | — | `DX-I18N` |
312
+ | `db-sidebar` | display | 98 | A | — | `DX-I18N` |
313
+ | `db-time-picker` | overlay | 98 | A | — | `DX-I18N` |
314
+ | `db-tutorial` | overlay, composite | 98 | A | — | `DX-I18N` |
315
+ | `db-ai-execution-quote` | display | 100 | A | — | — |
316
+ | `db-ai-glow` | display | 100 | A | — | — |
317
+ | `db-ai-model-select` | display | 100 | A | — | — |
318
+ | `db-ai-task-status` | display | 100 | A | — | — |
319
+ | `db-animation-text` | display | 100 | A | — | — |
320
+ | `db-attachment-list` | display | 100 | A | — | — |
321
+ | `db-backdrop` | overlay | 100 | A | — | — |
322
+ | `db-badge` | display | 100 | A | — | — |
323
+ | `db-banner` | display | 100 | A | — | — |
324
+ | `db-bento-card` | display | 100 | A | — | — |
325
+ | `db-bento-grid` | display | 100 | A | — | — |
326
+ | `db-boarding-pass-stack` | composite | 100 | A | — | — |
327
+ | `db-border-beam` | display | 100 | A | — | — |
328
+ | `db-button` | form | 100 | A | — | — |
329
+ | `db-carousel` | display | 100 | A | — | — |
330
+ | `db-chat-list` | display | 100 | A | — | — |
331
+ | `db-chat-orb` | display | 100 | A | — | — |
332
+ | `db-chat-suggestions` | display | 100 | A | — | — |
333
+ | `db-chat-welcome` | display | 100 | A | — | — |
334
+ | `db-checkbox` | form | 100 | A | — | — |
335
+ | `db-color-swatch` | display | 100 | A | — | — |
336
+ | `db-confetti` | display | 100 | A | — | — |
337
+ | `db-confirm` | overlay | 100 | A | — | — |
338
+ | `db-container` | display | 100 | A | — | — |
339
+ | `db-context-menu` | overlay | 100 | A | — | — |
340
+ | `db-credit-balance` | display | 100 | A | — | — |
341
+ | `db-credit-history` | display | 100 | A | — | — |
342
+ | `db-credit-recharge` | display | 100 | A | — | — |
343
+ | `db-credit-recharge-modal` | display | 100 | A | — | — |
344
+ | `db-cursor-follower` | display | 100 | A | — | — |
345
+ | `db-divider` | display | 100 | A | — | — |
346
+ | `db-dropzone` | display | 100 | A | — | — |
347
+ | `db-empty-state` | display | 100 | A | — | — |
348
+ | `db-file-uploader` | display | 100 | A | — | — |
349
+ | `db-glyph-matrix` | display | 100 | A | — | — |
350
+ | `db-gradient` | display | 100 | A | — | — |
351
+ | `db-grid` | display | 100 | A | — | — |
352
+ | `db-grid-background` | display | 100 | A | — | — |
353
+ | `db-image-placeholder` | display | 100 | A | — | — |
354
+ | `db-label` | display | 100 | A | — | — |
355
+ | `db-logo` | display | 100 | A | — | — |
356
+ | `db-marquee` | display | 100 | A | — | — |
357
+ | `db-masonry` | display | 100 | A | — | — |
358
+ | `db-menu-item` | composite | 100 | A | — | — |
359
+ | `db-modal` | overlay | 100 | A | — | — |
360
+ | `db-navigation-rail` | display | 100 | A | — | — |
361
+ | `db-notification-inbox` | display | 100 | A | — | — |
362
+ | `db-plan-overview` | display | 100 | A | — | — |
363
+ | `db-progress` | display | 100 | A | — | — |
364
+ | `db-progressbar` | display | 100 | A | — | — |
365
+ | `db-progressive-blur` | display | 100 | A | — | — |
366
+ | `db-radio` | form, composite | 100 | A | — | — |
367
+ | `db-random-gradient` | display | 100 | A | — | — |
368
+ | `db-range-slider` | composite | 100 | A | — | — |
369
+ | `db-reorder` | display | 100 | A | — | — |
370
+ | `db-scroll-area` | display | 100 | A | — | — |
371
+ | `db-section` | display | 100 | A | — | — |
372
+ | `db-section-cta` | section | 100 | A | — | — |
373
+ | `db-section-feature` | section | 100 | A | — | — |
374
+ | `db-section-hero` | section | 100 | A | — | — |
375
+ | `db-section-stats` | section | 100 | A | — | — |
376
+ | `db-skeleton` | display | 100 | A | — | — |
377
+ | `db-stack` | display | 100 | A | — | — |
378
+ | `db-stat` | display | 100 | A | — | — |
379
+ | `db-tabs` | composite | 100 | A | — | — |
380
+ | `db-textarea` | form | 100 | A | — | — |
381
+ | `db-timeline` | display | 100 | A | — | — |
382
+ | `db-toast` | display | 100 | A | — | — |
383
+ | `db-toggle` | form | 100 | A | — | — |
384
+ | `db-toolbar` | display | 100 | A | — | — |
385
+ | `db-tooltip` | display | 100 | A | — | — |
386
+ | `db-tweet-card` | display | 100 | A | — | — |
387
+ | `db-workspace-invite-modal` | display | 100 | A | — | — |
388
+ | `db-workspace-members` | display | 100 | A | — | — |
389
+