@vc-shell/vc-app-skill 2.0.0-alpha.33 → 2.0.0-alpha.33-pr220.455e322

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 (192) hide show
  1. package/CHANGELOG.md +52 -55
  2. package/README.md +18 -12
  3. package/package.json +4 -4
  4. package/runtime/agents/api-analyzer.md +31 -16
  5. package/runtime/agents/blade-enhancer.md +15 -9
  6. package/runtime/agents/details-blade-generator.md +47 -31
  7. package/runtime/agents/list-blade-generator.md +21 -37
  8. package/runtime/agents/locales-generator.md +3 -0
  9. package/runtime/agents/migration-agent.md +18 -7
  10. package/runtime/agents/module-analyzer.md +2 -0
  11. package/runtime/agents/module-assembler.md +15 -0
  12. package/runtime/agents/promote-agent.md +15 -4
  13. package/runtime/agents/type-checker.md +11 -0
  14. package/runtime/knowledge/docs/core/api/platform.docs.md +30 -30
  15. package/runtime/knowledge/docs/core/blade-navigation/blade-nav-composables.docs.md +41 -41
  16. package/runtime/knowledge/docs/core/composables/bladeContext/index.docs.md +12 -10
  17. package/runtime/knowledge/docs/core/composables/useApiClient/useApiClient.docs.md +11 -14
  18. package/runtime/knowledge/docs/core/composables/useAppBarMobileButtons/useAppBarMobileButtons.docs.md +35 -35
  19. package/runtime/knowledge/docs/core/composables/useAppBarWidget/useAppBarWidget.docs.md +35 -35
  20. package/runtime/knowledge/docs/core/composables/useAppInsights/useAppInsights.docs.md +15 -15
  21. package/runtime/knowledge/docs/core/composables/useAssets/useAssets.docs.md +21 -18
  22. package/runtime/knowledge/docs/core/composables/useAssetsManager/useAssetsManager.docs.md +31 -27
  23. package/runtime/knowledge/docs/core/composables/useAsync/useAsync.docs.md +90 -61
  24. package/runtime/knowledge/docs/core/composables/useBeforeUnload/useBeforeUnload.docs.md +19 -18
  25. package/runtime/knowledge/docs/core/composables/useBlade/useBlade.docs.md +89 -68
  26. package/runtime/knowledge/docs/core/composables/useBladeForm/useBladeForm.docs.md +27 -25
  27. package/runtime/knowledge/docs/core/composables/useBladeRegistry/useBladeRegistry.docs.md +15 -15
  28. package/runtime/knowledge/docs/core/composables/useBladeWidgets/index.docs.md +74 -78
  29. package/runtime/knowledge/docs/core/composables/useBreadcrumbs/useBreadcrumbs.docs.md +11 -11
  30. package/runtime/knowledge/docs/core/composables/useConnectionStatus/useConnectionStatus.docs.md +27 -15
  31. package/runtime/knowledge/docs/core/composables/useDashboard/useDashboard.docs.md +30 -30
  32. package/runtime/knowledge/docs/core/composables/useDynamicProperties/useDynamicProperties.docs.md +34 -36
  33. package/runtime/knowledge/docs/core/composables/useErrorHandler/useErrorHandler.docs.md +44 -23
  34. package/runtime/knowledge/docs/core/composables/useFunctions/useFunctions.docs.md +14 -11
  35. package/runtime/knowledge/docs/core/composables/useKeyboardNavigation/useKeyboardNavigation.docs.md +47 -38
  36. package/runtime/knowledge/docs/core/composables/useLanguages/useLanguages.docs.md +37 -28
  37. package/runtime/knowledge/docs/core/composables/useLoading/useLoading.docs.md +23 -17
  38. package/runtime/knowledge/docs/core/composables/useMenuExpanded/index.docs.md +10 -10
  39. package/runtime/knowledge/docs/core/composables/useMenuService/useMenuService.docs.md +42 -42
  40. package/runtime/knowledge/docs/core/composables/useModificationTracker/useModificationTracker.docs.md +22 -12
  41. package/runtime/knowledge/docs/core/composables/useNotifications/useNotifications.docs.md +33 -41
  42. package/runtime/knowledge/docs/core/composables/usePermissions/usePermissions.docs.md +16 -16
  43. package/runtime/knowledge/docs/core/composables/usePopup/usePopup.docs.md +32 -24
  44. package/runtime/knowledge/docs/core/composables/useResponsive/useResponsive.docs.md +32 -11
  45. package/runtime/knowledge/docs/core/composables/useSettings/useSettings.docs.md +24 -15
  46. package/runtime/knowledge/docs/core/composables/useSettingsMenu/useSettingsMenu.docs.md +7 -7
  47. package/runtime/knowledge/docs/core/composables/useSidebarState/useSidebarState.docs.md +32 -24
  48. package/runtime/knowledge/docs/core/composables/useSlowNetworkDetection/useSlowNetworkDetection.docs.md +21 -17
  49. package/runtime/knowledge/docs/core/composables/useTheme/useTheme.docs.md +24 -24
  50. package/runtime/knowledge/docs/core/composables/useToolbar/useToolbar.docs.md +28 -31
  51. package/runtime/knowledge/docs/core/composables/useUser/useUser.docs.md +43 -24
  52. package/runtime/knowledge/docs/core/composables/useUserManagement/useUserManagement.docs.md +68 -48
  53. package/runtime/knowledge/docs/core/composables/useWebVitals/useWebVitals.docs.md +19 -19
  54. package/runtime/knowledge/docs/core/composables/useWidgets/useWidgets.docs.md +42 -47
  55. package/runtime/knowledge/docs/core/directives/autofocus/autofocus.docs.md +10 -4
  56. package/runtime/knowledge/docs/core/directives/loading/loading.docs.md +35 -20
  57. package/runtime/knowledge/docs/core/notifications/notifications.docs.md +36 -35
  58. package/runtime/knowledge/docs/core/plugins/ai-agent/ai-agent.docs.md +38 -38
  59. package/runtime/knowledge/docs/core/plugins/extension-points/extension-points.docs.md +107 -91
  60. package/runtime/knowledge/docs/core/plugins/global-error-handler/global-error-handler.docs.md +10 -10
  61. package/runtime/knowledge/docs/core/plugins/i18n/i18n.docs.md +21 -23
  62. package/runtime/knowledge/docs/core/plugins/modularity/modularity.docs.md +98 -90
  63. package/runtime/knowledge/docs/core/plugins/permissions/permissions.docs.md +10 -16
  64. package/runtime/knowledge/docs/core/plugins/signalR/signalR.docs.md +9 -9
  65. package/runtime/knowledge/docs/core/plugins/validation/validation.docs.md +65 -22
  66. package/runtime/knowledge/docs/core/services/services.docs.md +19 -22
  67. package/runtime/knowledge/docs/core/types/types.docs.md +40 -40
  68. package/runtime/knowledge/docs/core/utilities/date/date-utilities.docs.md +27 -27
  69. package/runtime/knowledge/docs/core/utilities/shared-utilities.docs.md +23 -23
  70. package/runtime/knowledge/docs/core/utilities/thumbnail/thumbnail.docs.md +22 -25
  71. package/runtime/knowledge/docs/core/utilities/utilities.docs.md +64 -64
  72. package/runtime/knowledge/docs/injection-keys.docs.md +52 -51
  73. package/runtime/knowledge/docs/modules/assets-manager/assets-manager.docs.md +9 -9
  74. package/runtime/knowledge/docs/shell/_internal/popup/common/popup-common.docs.md +23 -43
  75. package/runtime/knowledge/docs/shell/auth/ChangePasswordPage/change-password-page.docs.md +5 -5
  76. package/runtime/knowledge/docs/shell/auth/ForgotPasswordPage/forgot-password-page.docs.md +5 -5
  77. package/runtime/knowledge/docs/shell/auth/InvitePage/invite-page.docs.md +8 -7
  78. package/runtime/knowledge/docs/shell/auth/LoginPage/login-page.docs.md +7 -7
  79. package/runtime/knowledge/docs/shell/auth/ResetPasswordPage/reset-password-page.docs.md +8 -7
  80. package/runtime/knowledge/docs/shell/auth/sign-in/sign-in.docs.md +29 -13
  81. package/runtime/knowledge/docs/shell/components/change-password/change-password.docs.md +13 -16
  82. package/runtime/knowledge/docs/shell/components/change-password-button/change-password-button.docs.md +1 -7
  83. package/runtime/knowledge/docs/shell/components/error-interceptor/error-interceptor.docs.md +5 -5
  84. package/runtime/knowledge/docs/shell/components/language-selector/language-selector.docs.md +1 -1
  85. package/runtime/knowledge/docs/shell/components/logout-button/logout-button.docs.md +1 -1
  86. package/runtime/knowledge/docs/shell/components/notification-template/notification-template.docs.md +17 -9
  87. package/runtime/knowledge/docs/shell/components/settings-menu/settings-menu.docs.md +12 -18
  88. package/runtime/knowledge/docs/shell/components/settings-menu-item/settings-menu-item.docs.md +34 -65
  89. package/runtime/knowledge/docs/shell/components/sidebar/sidebar.docs.md +16 -26
  90. package/runtime/knowledge/docs/shell/components/theme-selector/theme-selector.docs.md +2 -2
  91. package/runtime/knowledge/docs/shell/components/user-dropdown-button/user-dropdown-button.docs.md +7 -9
  92. package/runtime/knowledge/docs/shell/dashboard/dashboard-charts/dashboard-charts.docs.md +30 -40
  93. package/runtime/knowledge/docs/shell/dashboard/dashboard-widget-card/dashboard-widget-card.docs.md +26 -19
  94. package/runtime/knowledge/docs/shell/dashboard/draggable-dashboard/draggable-dashboard.docs.md +15 -12
  95. package/runtime/knowledge/docs/ui/components/atoms/vc-badge/vc-badge.docs.md +15 -26
  96. package/runtime/knowledge/docs/ui/components/atoms/vc-banner/vc-banner.docs.md +21 -19
  97. package/runtime/knowledge/docs/ui/components/atoms/vc-button/vc-button.docs.md +83 -67
  98. package/runtime/knowledge/docs/ui/components/atoms/vc-card/vc-card.docs.md +100 -59
  99. package/runtime/knowledge/docs/ui/components/atoms/vc-col/vc-col.docs.md +28 -11
  100. package/runtime/knowledge/docs/ui/components/atoms/vc-container/vc-container.docs.md +20 -17
  101. package/runtime/knowledge/docs/ui/components/atoms/vc-hint/vc-hint.docs.md +26 -17
  102. package/runtime/knowledge/docs/ui/components/atoms/vc-icon/vc-icon.docs.md +30 -32
  103. package/runtime/knowledge/docs/ui/components/atoms/vc-image/vc-image.docs.md +25 -48
  104. package/runtime/knowledge/docs/ui/components/atoms/vc-label/vc-label.docs.md +29 -24
  105. package/runtime/knowledge/docs/ui/components/atoms/vc-link/vc-link.docs.md +23 -15
  106. package/runtime/knowledge/docs/ui/components/atoms/vc-loading/vc-loading.docs.md +22 -13
  107. package/runtime/knowledge/docs/ui/components/atoms/vc-progress/vc-progress.docs.md +33 -18
  108. package/runtime/knowledge/docs/ui/components/atoms/vc-row/vc-row.docs.md +56 -15
  109. package/runtime/knowledge/docs/ui/components/atoms/vc-scrollable-container/vc-scrollable-container.docs.md +28 -15
  110. package/runtime/knowledge/docs/ui/components/atoms/vc-skeleton/vc-skeleton.docs.md +40 -20
  111. package/runtime/knowledge/docs/ui/components/atoms/vc-status/vc-status.docs.md +25 -14
  112. package/runtime/knowledge/docs/ui/components/atoms/vc-status-icon/vc-status-icon.docs.md +40 -14
  113. package/runtime/knowledge/docs/ui/components/atoms/vc-tooltip/vc-tooltip.docs.md +54 -42
  114. package/runtime/knowledge/docs/ui/components/atoms/vc-video/vc-video.docs.md +17 -17
  115. package/runtime/knowledge/docs/ui/components/atoms/vc-widget/vc-widget.docs.md +21 -21
  116. package/runtime/knowledge/docs/ui/components/molecules/multilanguage-selector/multilanguage-selector.docs.md +23 -10
  117. package/runtime/knowledge/docs/ui/components/molecules/vc-accordion/vc-accordion.docs.md +55 -44
  118. package/runtime/knowledge/docs/ui/components/molecules/vc-breadcrumbs/vc-breadcrumbs.docs.md +23 -20
  119. package/runtime/knowledge/docs/ui/components/molecules/vc-checkbox/vc-checkbox.docs.md +92 -65
  120. package/runtime/knowledge/docs/ui/components/molecules/vc-checkbox-group/vc-checkbox-group.docs.md +22 -36
  121. package/runtime/knowledge/docs/ui/components/molecules/vc-color-input/vc-color-input.docs.md +65 -23
  122. package/runtime/knowledge/docs/ui/components/molecules/vc-date-picker/vc-date-picker.docs.md +52 -73
  123. package/runtime/knowledge/docs/ui/components/molecules/vc-dropdown/vc-dropdown.docs.md +91 -85
  124. package/runtime/knowledge/docs/ui/components/molecules/vc-dropdown-panel/vc-dropdown-panel.docs.md +38 -42
  125. package/runtime/knowledge/docs/ui/components/molecules/vc-editor/vc-editor.docs.md +56 -73
  126. package/runtime/knowledge/docs/ui/components/molecules/vc-field/vc-field.docs.md +61 -27
  127. package/runtime/knowledge/docs/ui/components/molecules/vc-file-upload/vc-file-upload.docs.md +42 -50
  128. package/runtime/knowledge/docs/ui/components/molecules/vc-form/vc-form.docs.md +35 -64
  129. package/runtime/knowledge/docs/ui/components/molecules/vc-image-tile/vc-image-tile.docs.md +38 -41
  130. package/runtime/knowledge/docs/ui/components/molecules/vc-input/vc-input.docs.md +109 -131
  131. package/runtime/knowledge/docs/ui/components/molecules/vc-input-currency/vc-input-currency.docs.md +47 -88
  132. package/runtime/knowledge/docs/ui/components/molecules/vc-input-dropdown/vc-input-dropdown.docs.md +50 -64
  133. package/runtime/knowledge/docs/ui/components/molecules/vc-input-group/vc-input-group.docs.md +29 -24
  134. package/runtime/knowledge/docs/ui/components/molecules/vc-menu/vc-menu.docs.md +32 -28
  135. package/runtime/knowledge/docs/ui/components/molecules/vc-multivalue/vc-multivalue.docs.md +57 -65
  136. package/runtime/knowledge/docs/ui/components/molecules/vc-pagination/vc-pagination.docs.md +28 -26
  137. package/runtime/knowledge/docs/ui/components/molecules/vc-radio-button/vc-radio-button.docs.md +55 -20
  138. package/runtime/knowledge/docs/ui/components/molecules/vc-radio-group/vc-radio-group.docs.md +21 -35
  139. package/runtime/knowledge/docs/ui/components/molecules/vc-rating/vc-rating.docs.md +38 -33
  140. package/runtime/knowledge/docs/ui/components/molecules/vc-select/vc-select.docs.md +72 -83
  141. package/runtime/knowledge/docs/ui/components/molecules/vc-slider/vc-slider.docs.md +21 -16
  142. package/runtime/knowledge/docs/ui/components/molecules/vc-switch/vc-switch.docs.md +55 -64
  143. package/runtime/knowledge/docs/ui/components/molecules/vc-textarea/vc-textarea.docs.md +51 -70
  144. package/runtime/knowledge/docs/ui/components/molecules/vc-toast/vc-toast.docs.md +58 -57
  145. package/runtime/knowledge/docs/ui/components/organisms/vc-app/vc-app.docs.md +49 -26
  146. package/runtime/knowledge/docs/ui/components/organisms/vc-auth-layout/vc-auth-layout.docs.md +82 -28
  147. package/runtime/knowledge/docs/ui/components/organisms/vc-blade/vc-blade.docs.md +90 -75
  148. package/runtime/knowledge/docs/ui/components/organisms/vc-data-table/composables/table-composables.docs.md +30 -44
  149. package/runtime/knowledge/docs/ui/components/organisms/vc-data-table/vc-data-table.docs.md +512 -369
  150. package/runtime/knowledge/docs/ui/components/organisms/vc-dynamic-property/vc-dynamic-property.docs.md +35 -52
  151. package/runtime/knowledge/docs/ui/components/organisms/vc-gallery/vc-gallery.docs.md +33 -62
  152. package/runtime/knowledge/docs/ui/components/organisms/vc-image-upload/vc-image-upload.docs.md +17 -23
  153. package/runtime/knowledge/docs/ui/components/organisms/vc-popup/vc-popup.docs.md +109 -68
  154. package/runtime/knowledge/docs/ui/components/organisms/vc-sidebar/vc-sidebar.docs.md +82 -44
  155. package/runtime/knowledge/docs/ui/composables/ui-composables.docs.md +8 -8
  156. package/runtime/knowledge/docs/ui/composables/useDataTablePagination.docs.md +164 -0
  157. package/runtime/knowledge/docs/ui/composables/useDataTableSort.docs.md +34 -26
  158. package/runtime/knowledge/docs/ui/composables/useTableSelection.docs.md +48 -40
  159. package/runtime/knowledge/docs/ui/composables/useTableSort.docs.md +30 -17
  160. package/runtime/knowledge/docs/ui/types/ui-types.docs.md +40 -29
  161. package/runtime/knowledge/examples/offers-module.md +15 -13
  162. package/runtime/knowledge/examples/team-module.md +82 -119
  163. package/runtime/knowledge/examples/videos-module.md +44 -17
  164. package/runtime/knowledge/index.md +22 -0
  165. package/runtime/knowledge/migration-prompts/blade-form-migration.md +17 -8
  166. package/runtime/knowledge/migration-prompts/blade-props-migration.md +1 -2
  167. package/runtime/knowledge/migration-prompts/datatable-migration.md +801 -0
  168. package/runtime/knowledge/migration-prompts/icon-migration.md +97 -0
  169. package/runtime/knowledge/migration-prompts/manual-migration-audit.md +117 -0
  170. package/runtime/knowledge/migration-prompts/notifications-migration.md +8 -3
  171. package/runtime/knowledge/migration-prompts/nswag-migration.md +25 -29
  172. package/runtime/knowledge/migration-prompts/use-assets-migration.md +164 -0
  173. package/runtime/knowledge/migration-prompts/use-data-table-pagination-migration.md +176 -0
  174. package/runtime/knowledge/migration-prompts/widgets-migration.md +48 -27
  175. package/runtime/knowledge/patterns/assets-management.md +20 -20
  176. package/runtime/knowledge/patterns/blade-navigation.md +7 -14
  177. package/runtime/knowledge/patterns/blade-widget.md +19 -17
  178. package/runtime/knowledge/patterns/child-blade-flow.md +19 -7
  179. package/runtime/knowledge/patterns/composable-details.md +20 -50
  180. package/runtime/knowledge/patterns/composable-list.md +43 -31
  181. package/runtime/knowledge/patterns/dashboard-widget.md +14 -16
  182. package/runtime/knowledge/patterns/datatable-pattern.md +521 -0
  183. package/runtime/knowledge/patterns/details-blade-pattern.md +78 -116
  184. package/runtime/knowledge/patterns/extension-points-usage.md +53 -44
  185. package/runtime/knowledge/patterns/form-validation.md +28 -64
  186. package/runtime/knowledge/patterns/list-blade-pattern.md +33 -21
  187. package/runtime/knowledge/patterns/module-structure.md +7 -1
  188. package/runtime/knowledge/patterns/multilanguage-fields.md +8 -14
  189. package/runtime/knowledge/patterns/notification-template.md +21 -14
  190. package/runtime/knowledge/patterns/signalr-notifications.md +30 -32
  191. package/runtime/knowledge/patterns/toolbar-pattern.md +18 -20
  192. package/runtime/vc-app.md +241 -62
@@ -20,19 +20,19 @@ A small indicator component for displaying counts, status dots, or short text la
20
20
 
21
21
  ## Key Props
22
22
 
23
- | Prop | Type | Default | Description |
24
- |------|------|---------|-------------|
25
- | `content` | `string \| number` | -- | Text or number displayed inside the badge |
26
- | `variant` | `"primary" \| "success" \| "warning" \| "danger" \| "info" \| "secondary"` | `"primary"` | Color variant |
27
- | `size` | `"s" \| "m"` | `"m"` | Badge size |
28
- | `isDot` | `boolean` | `false` | Renders as a small dot without text |
29
- | `inline` | `boolean` | `false` | Renders as an inline element without absolute positioning |
30
- | `clickable` | `boolean` | `false` | Makes the badge respond to click events |
31
- | `disabled` | `boolean` | `false` | Disables interaction on clickable badges |
32
- | `customPosition` | `boolean` | `false` | Enables custom `top`/`right` positioning |
33
- | `top` | `string` | -- | Custom top offset (requires `customPosition`) |
34
- | `right` | `string` | -- | Custom right offset (requires `customPosition`) |
35
- | `ariaLabel` | `string` | -- | Custom accessible label for the badge |
23
+ | Prop | Type | Default | Description |
24
+ | ---------------- | -------------------------------------------------------------------------- | ----------- | --------------------------------------------------------- |
25
+ | `content` | `string \| number` | -- | Text or number displayed inside the badge |
26
+ | `variant` | `"primary" \| "success" \| "warning" \| "danger" \| "info" \| "secondary"` | `"primary"` | Color variant |
27
+ | `size` | `"s" \| "m"` | `"m"` | Badge size |
28
+ | `isDot` | `boolean` | `false` | Renders as a small dot without text |
29
+ | `inline` | `boolean` | `false` | Renders as an inline element without absolute positioning |
30
+ | `clickable` | `boolean` | `false` | Makes the badge respond to click events |
31
+ | `disabled` | `boolean` | `false` | Disables interaction on clickable badges |
32
+ | `customPosition` | `boolean` | `false` | Enables custom `top`/`right` positioning |
33
+ | `top` | `string` | -- | Custom top offset (requires `customPosition`) |
34
+ | `right` | `string` | -- | Custom right offset (requires `customPosition`) |
35
+ | `ariaLabel` | `string` | -- | Custom accessible label for the badge |
36
36
 
37
37
  ## Common Patterns
38
38
 
@@ -65,12 +65,7 @@ A small indicator component for displaying counts, status dots, or short text la
65
65
  ### Clickable Badge with Dismiss
66
66
 
67
67
  ```vue
68
- <VcBadge
69
- :content="count"
70
- clickable
71
- variant="primary"
72
- @click="clearNotifications"
73
- >
68
+ <VcBadge :content="count" clickable variant="primary" @click="clearNotifications">
74
69
  <VcIcon icon="lucide-inbox" size="xl" />
75
70
  </VcBadge>
76
71
  ```
@@ -104,13 +99,7 @@ const statusVariantMap: Record<string, string> = {
104
99
  Fine-tune the badge position relative to its parent:
105
100
 
106
101
  ```vue
107
- <VcBadge
108
- content="NEW"
109
- variant="info"
110
- custom-position
111
- top="-4px"
112
- right="-12px"
113
- >
102
+ <VcBadge content="NEW" variant="info" custom-position top="-4px" right="-12px">
114
103
  <img src="/product.jpg" class="tw-w-16 tw-h-16 tw-rounded" />
115
104
  </VcBadge>
116
105
  ```
@@ -21,20 +21,20 @@ A contextual alert component for displaying important messages, warnings, or sta
21
21
 
22
22
  ## Key Props
23
23
 
24
- | Prop | Type | Default | Description |
25
- |------|------|---------|-------------|
26
- | `variant` | `"info" \| "warning" \| "danger" \| "success"` | `"info"` | Semantic color variant |
27
- | `icon` | `string` | -- | Icon identifier (e.g. `lucide-info`, `lucide-triangle-alert`) |
28
- | `iconSize` | `IconSize` | `"l"` | Size of the leading icon |
29
- | `iconVariant` | `IconVariant` | -- | Color variant for the icon |
30
- | `collapsedHeight` | `number` | `100` | Max height in pixels before content becomes collapsible |
24
+ | Prop | Type | Default | Description |
25
+ | ----------------- | ---------------------------------------------- | -------- | ------------------------------------------------------------- |
26
+ | `variant` | `"info" \| "warning" \| "danger" \| "success"` | `"info"` | Semantic color variant |
27
+ | `icon` | `string` | -- | Icon identifier (e.g. `lucide-info`, `lucide-triangle-alert`) |
28
+ | `iconSize` | `IconSize` | `"l"` | Size of the leading icon |
29
+ | `iconVariant` | `IconVariant` | -- | Color variant for the icon |
30
+ | `collapsedHeight` | `number` | `100` | Max height in pixels before content becomes collapsible |
31
31
 
32
32
  ## Slots
33
33
 
34
- | Slot | Description |
35
- |------|-------------|
36
- | `title` | Bold title text above the body content |
37
- | `default` | Body/description content |
34
+ | Slot | Description |
35
+ | --------- | ------------------------------------------------------------------------ |
36
+ | `title` | Bold title text above the body content |
37
+ | `default` | Body/description content |
38
38
  | `trigger` | Custom expand/collapse trigger (receives `{ isExpanded, toggle }` props) |
39
39
 
40
40
  ## Features
@@ -69,12 +69,7 @@ For backward compatibility, the deprecated variants `"light-danger"`, `"info-dar
69
69
  ### Decline Reason on a Detail Blade
70
70
 
71
71
  ```vue
72
- <VcBanner
73
- v-if="declineReason"
74
- variant="danger"
75
- icon="lucide-circle-alert"
76
- icon-variant="danger"
77
- >
72
+ <VcBanner v-if="declineReason" variant="danger" icon="lucide-circle-alert" icon-variant="danger">
78
73
  <template #title>Decline Reason</template>
79
74
  {{ declineReason }}
80
75
  </VcBanner>
@@ -112,8 +107,15 @@ Place a banner inside a blade to notify the user of important context before the
112
107
  This product has been marked as discontinued. Editing is limited to metadata fields only.
113
108
  </VcBanner>
114
109
 
115
- <VcInput label="Name" v-model="product.name" :disabled="product.isDiscontinued" />
116
- <VcTextarea label="Notes" v-model="product.notes" />
110
+ <VcInput
111
+ label="Name"
112
+ v-model="product.name"
113
+ :disabled="product.isDiscontinued"
114
+ />
115
+ <VcTextarea
116
+ label="Notes"
117
+ v-model="product.notes"
118
+ />
117
119
  </VcBlade>
118
120
  </template>
119
121
  ```
@@ -4,12 +4,12 @@ A versatile button component supporting 9 style variants, 5 size options, loadin
4
4
 
5
5
  ## When to Use
6
6
 
7
- | Scenario | Component |
8
- |----------|-----------|
9
- | Triggering an action (save, delete, submit) | **VcButton** |
10
- | Navigating to another URL or route | `<router-link>` or `<a>` tag |
11
- | Action inside a blade toolbar | `IBladeToolbar` items (rendered as buttons automatically) |
12
- | Inline text-style link within a paragraph | Native `<a>` or `<router-link>` |
7
+ | Scenario | Component |
8
+ | ------------------------------------------- | --------------------------------------------------------- |
9
+ | Triggering an action (save, delete, submit) | **VcButton** |
10
+ | Navigating to another URL or route | `<router-link>` or `<a>` tag |
11
+ | Action inside a blade toolbar | `IBladeToolbar` items (rendered as buttons automatically) |
12
+ | Inline text-style link within a paragraph | Native `<a>` or `<router-link>` |
13
13
 
14
14
  Use VcButton for any user-initiated action that does not navigate to a URL. **Do not use** VcButton for navigation -- the `link` variant looks like a link but calls `preventDefault()`, so actual URL navigation will not work. For toolbar actions, define `IBladeToolbar` objects instead of placing VcButton manually.
15
15
 
@@ -17,7 +17,11 @@ Use VcButton for any user-initiated action that does not navigate to a URL. **Do
17
17
 
18
18
  ```vue
19
19
  <template>
20
- <VcButton variant="primary" @click="handleSave">Save Changes</VcButton>
20
+ <VcButton
21
+ variant="primary"
22
+ @click="handleSave"
23
+ >Save Changes</VcButton
24
+ >
21
25
  </template>
22
26
 
23
27
  <script setup lang="ts">
@@ -41,13 +45,13 @@ Solid background colors for primary and prominent actions.
41
45
  <VcButton variant="info">Learn More</VcButton>
42
46
  ```
43
47
 
44
- | Variant | Use Case | Text Color |
45
- |---------|----------|------------|
46
- | `primary` | Main CTA -- save, submit, confirm | White |
47
- | `danger` | Destructive actions -- delete, remove | White |
48
- | `warning` | Caution actions -- override, force | Dark (for contrast) |
49
- | `success` | Positive actions -- approve, publish | White |
50
- | `info` | Informational actions -- details, help | White |
48
+ | Variant | Use Case | Text Color |
49
+ | --------- | -------------------------------------- | ------------------- |
50
+ | `primary` | Main CTA -- save, submit, confirm | White |
51
+ | `danger` | Destructive actions -- delete, remove | White |
52
+ | `warning` | Caution actions -- override, force | Dark (for contrast) |
53
+ | `success` | Positive actions -- approve, publish | White |
54
+ | `info` | Informational actions -- details, help | White |
51
55
 
52
56
  ### Structural Variants (Medium Emphasis)
53
57
 
@@ -58,10 +62,10 @@ Bordered or transparent backgrounds for secondary actions.
58
62
  <VcButton variant="outline">Export</VcButton>
59
63
  ```
60
64
 
61
- | Variant | Use Case | Hover Behavior |
62
- |---------|----------|----------------|
63
- | `secondary` | Cancel, dismiss, secondary actions | Background changes to primary-50 |
64
- | `outline` | Alternative actions alongside primary | Background changes to primary-50, border darkens |
65
+ | Variant | Use Case | Hover Behavior |
66
+ | ----------- | ------------------------------------- | ------------------------------------------------ |
67
+ | `secondary` | Cancel, dismiss, secondary actions | Background changes to primary-50 |
68
+ | `outline` | Alternative actions alongside primary | Background changes to primary-50, border darkens |
65
69
 
66
70
  ### Minimal Variants (Low Emphasis)
67
71
 
@@ -72,10 +76,10 @@ No border or background, used for inline or de-emphasized actions.
72
76
  <VcButton variant="link">View Documentation</VcButton>
73
77
  ```
74
78
 
75
- | Variant | Use Case | Hover Behavior |
76
- |---------|----------|----------------|
77
- | `ghost` | Toolbar icons, inline actions | Light background tint |
78
- | `link` | Text-like navigation, inline links | Underline on text |
79
+ | Variant | Use Case | Hover Behavior |
80
+ | ------- | ---------------------------------- | --------------------- |
81
+ | `ghost` | Toolbar icons, inline actions | Light background tint |
82
+ | `link` | Text-like navigation, inline links | Underline on text |
79
83
 
80
84
  ## Sizes
81
85
 
@@ -89,13 +93,13 @@ Five size options cover all common use cases from toolbar icons to prominent CTA
89
93
  <VcButton size="icon-sm" icon="lucide-pencil" aria-label="Edit" />
90
94
  ```
91
95
 
92
- | Size | Height | Padding | Typical Use |
93
- |------|--------|---------|-------------|
94
- | `sm` | 32px | 12px horizontal | Compact form actions, table footers |
95
- | `default` | 36px | 16px horizontal, 8px vertical | Standard blade actions |
96
- | `lg` | 40px | 24px horizontal | Prominent CTAs, dialog actions |
97
- | `icon` | 36x36px | 0 (square) | Toolbar icon buttons |
98
- | `icon-sm` | 24x24px | 0 (square) | Table cell actions, inline controls |
96
+ | Size | Height | Padding | Typical Use |
97
+ | --------- | ------- | ----------------------------- | ----------------------------------- |
98
+ | `sm` | 32px | 12px horizontal | Compact form actions, table footers |
99
+ | `default` | 36px | 16px horizontal, 8px vertical | Standard blade actions |
100
+ | `lg` | 40px | 24px horizontal | Prominent CTAs, dialog actions |
101
+ | `icon` | 36x36px | 0 (square) | Toolbar icon buttons |
102
+ | `icon-sm` | 24x24px | 0 (square) | Table cell actions, inline controls |
99
103
 
100
104
  > **Note:** Legacy aliases `xs` (maps to `sm`) and `base` (maps to `default`) are supported for backward compatibility.
101
105
 
@@ -127,6 +131,7 @@ When `loading` is `true`, the button shows a spinner in place of its icon and be
127
131
  ```
128
132
 
129
133
  During loading:
134
+
130
135
  - The icon is replaced with a spinning `lucide-loader-2`
131
136
  - The button is disabled (`pointer-events: none`)
132
137
  - The cursor changes to `wait`
@@ -137,13 +142,7 @@ During loading:
137
142
  The `selected` prop applies a visual highlight. Useful for toggle buttons or active states:
138
143
 
139
144
  ```vue
140
- <VcButton
141
- variant="ghost"
142
- :selected="isGridView"
143
- icon="lucide-grid"
144
- aria-label="Grid view"
145
- @click="isGridView = true"
146
- />
145
+ <VcButton variant="ghost" :selected="isGridView" icon="lucide-grid" aria-label="Grid view" @click="isGridView = true" />
147
146
  ```
148
147
 
149
148
  When selected, `aria-pressed="true"` is set on the button element.
@@ -176,8 +175,16 @@ VcButton integrates with `VcButtonGroup` via provide/inject. The group can set a
176
175
  ```vue
177
176
  <template>
178
177
  <div class="tw-flex tw-gap-2">
179
- <VcButton variant="secondary" @click="cancel">Cancel</VcButton>
180
- <VcButton variant="primary" :loading="isSaving" @click="save">
178
+ <VcButton
179
+ variant="secondary"
180
+ @click="cancel"
181
+ >Cancel</VcButton
182
+ >
183
+ <VcButton
184
+ variant="primary"
185
+ :loading="isSaving"
186
+ @click="save"
187
+ >
181
188
  Save
182
189
  </VcButton>
183
190
  </div>
@@ -189,8 +196,17 @@ VcButton integrates with `VcButtonGroup` via provide/inject. The group can set a
189
196
  ```vue
190
197
  <template>
191
198
  <div class="tw-flex tw-justify-end tw-gap-3 tw-p-4">
192
- <VcButton variant="outline" @click="dismiss">Cancel</VcButton>
193
- <VcButton variant="danger" :loading="isDeleting" icon="lucide-trash-2" @click="confirmDelete">
199
+ <VcButton
200
+ variant="outline"
201
+ @click="dismiss"
202
+ >Cancel</VcButton
203
+ >
204
+ <VcButton
205
+ variant="danger"
206
+ :loading="isDeleting"
207
+ icon="lucide-trash-2"
208
+ @click="confirmDelete"
209
+ >
194
210
  Delete Permanently
195
211
  </VcButton>
196
212
  </div>
@@ -231,46 +247,46 @@ VcButton integrates with `VcButtonGroup` via provide/inject. The group can set a
231
247
 
232
248
  ## Props
233
249
 
234
- | Prop | Type | Default | Description |
235
- |------|------|---------|-------------|
236
- | `variant` | `"primary" \| "secondary" \| "danger" \| "warning" \| "success" \| "info" \| "outline" \| "ghost" \| "link"` | `"primary"` | Visual style variant |
237
- | `size` | `"sm" \| "default" \| "lg" \| "icon" \| "icon-sm"` | `"default"` | Button size |
238
- | `icon` | `string \| Component` | -- | Icon identifier or Vue component |
239
- | `iconClass` | `string` | -- | Additional CSS class for the icon element |
240
- | `iconSize` | `IconSize` | `"s"` | Size of the icon (`"xs"`, `"s"`, `"m"`, `"l"`, `"xl"`, `"xxl"`) |
241
- | `loading` | `boolean` | `false` | Shows spinner, disables interaction, sets `aria-busy` |
242
- | `disabled` | `boolean` | `false` | Disables the button |
243
- | `selected` | `boolean` | `false` | Applies selected/active visual state, sets `aria-pressed` |
244
- | `text` | `boolean` | `false` | Renders as borderless text in the variant's color |
245
- | `type` | `"button" \| "submit" \| "reset"` | `"button"` | HTML button type |
246
- | `ariaLabel` | `string` | -- | Accessible label (required for icon-only buttons) |
250
+ | Prop | Type | Default | Description |
251
+ | ----------- | ------------------------------------------------------------------------------------------------------------ | ----------- | --------------------------------------------------------------- |
252
+ | `variant` | `"primary" \| "secondary" \| "danger" \| "warning" \| "success" \| "info" \| "outline" \| "ghost" \| "link"` | `"primary"` | Visual style variant |
253
+ | `size` | `"sm" \| "default" \| "lg" \| "icon" \| "icon-sm"` | `"default"` | Button size |
254
+ | `icon` | `string \| Component` | -- | Icon identifier or Vue component |
255
+ | `iconClass` | `string` | -- | Additional CSS class for the icon element |
256
+ | `iconSize` | `IconSize` | `"s"` | Size of the icon (`"xs"`, `"s"`, `"m"`, `"l"`, `"xl"`, `"xxl"`) |
257
+ | `loading` | `boolean` | `false` | Shows spinner, disables interaction, sets `aria-busy` |
258
+ | `disabled` | `boolean` | `false` | Disables the button |
259
+ | `selected` | `boolean` | `false` | Applies selected/active visual state, sets `aria-pressed` |
260
+ | `text` | `boolean` | `false` | Renders as borderless text in the variant's color |
261
+ | `type` | `"button" \| "submit" \| "reset"` | `"button"` | HTML button type |
262
+ | `ariaLabel` | `string` | -- | Accessible label (required for icon-only buttons) |
247
263
 
248
264
  ## Events
249
265
 
250
- | Event | Payload | Description |
251
- |-------|---------|-------------|
266
+ | Event | Payload | Description |
267
+ | ------- | ------- | ------------------------------------------------------------------------ |
252
268
  | `click` | `Event` | Emitted when the button is clicked (suppressed when disabled or loading) |
253
269
 
254
270
  ## Slots
255
271
 
256
- | Slot | Description |
257
- |------|-------------|
272
+ | Slot | Description |
273
+ | --------- | ----------------------------------------------------------------- |
258
274
  | `default` | Button text content. When empty, the button renders as icon-only. |
259
275
 
260
276
  ## CSS Custom Properties
261
277
 
262
278
  All visual properties are customizable through CSS custom properties. Each variant has three property sets (normal, hover, disabled) for background, text, and border colors.
263
279
 
264
- | Pattern | Example | Description |
265
- |---------|---------|-------------|
266
- | `--button-{variant}-background-color` | `--button-primary-background-color` | Normal background |
267
- | `--button-{variant}-background-color-hover` | `--button-primary-background-color-hover` | Hover background |
268
- | `--button-{variant}-text-color` | `--button-primary-text-color` | Normal text color |
269
- | `--button-{variant}-border-color` | `--button-primary-border-color` | Normal border color |
270
- | `--button-border-radius` | `6px` | Corner radius for all buttons |
271
- | `--button-focus-ring-color` | `var(--primary-300)` | Focus ring color |
272
- | `--button-focus-ring-width` | `2px` | Focus ring thickness |
273
- | `--button-{size}-height` | `--button-default-height: 36px` | Height per size |
280
+ | Pattern | Example | Description |
281
+ | ------------------------------------------- | ----------------------------------------- | ----------------------------- |
282
+ | `--button-{variant}-background-color` | `--button-primary-background-color` | Normal background |
283
+ | `--button-{variant}-background-color-hover` | `--button-primary-background-color-hover` | Hover background |
284
+ | `--button-{variant}-text-color` | `--button-primary-text-color` | Normal text color |
285
+ | `--button-{variant}-border-color` | `--button-primary-border-color` | Normal border color |
286
+ | `--button-border-radius` | `6px` | Corner radius for all buttons |
287
+ | `--button-focus-ring-color` | `var(--primary-300)` | Focus ring color |
288
+ | `--button-focus-ring-width` | `2px` | Focus ring thickness |
289
+ | `--button-{size}-height` | `--button-default-height: 36px` | Height per size |
274
290
 
275
291
  ## Accessibility
276
292
 
@@ -4,12 +4,12 @@ A bordered container with an optional header, icon, action buttons, and collapsi
4
4
 
5
5
  ## When to Use
6
6
 
7
- | Scenario | Component |
8
- |----------|-----------|
9
- | Grouping form fields or content with a header | **VcCard** |
10
- | Scrollable content wrapper without a header | [VcContainer](../vc-container/) |
7
+ | Scenario | Component |
8
+ | --------------------------------------------- | ---------------------------------------------------------------------------- |
9
+ | Grouping form fields or content with a header | **VcCard** |
10
+ | Scrollable content wrapper without a header | [VcContainer](../vc-container/) |
11
11
  | Collapsible section with rich toggle behavior | [VcAccordion](../../molecules/vc-accordion/) (for multiple exclusive panels) |
12
- | Alert or notification banner | [VcBanner](../vc-banner/) |
12
+ | Alert or notification banner | [VcBanner](../vc-banner/) |
13
13
 
14
14
  Use VcCard to visually separate content sections on a blade -- especially when you need a titled header, action buttons, or collapsible body. **Do not use** VcCard for dismissible alerts or status messages (use `VcBanner`), and avoid nesting VcCard when a simple `VcContainer` with padding would suffice.
15
15
 
@@ -66,11 +66,11 @@ Three variants control the header's background and text color to communicate sem
66
66
  </VcCard>
67
67
  ```
68
68
 
69
- | Variant | Header Background | Header Text | Use Case |
70
- |---------|-------------------|-------------|----------|
71
- | `default` | `var(--secondary-50)` (light gray) | `var(--secondary-950)` (dark) | Standard content grouping |
72
- | `success` | `var(--success-100)` (light green) | `var(--success-600)` (green) | Positive state confirmation |
73
- | `danger` | `var(--danger-100)` (light red) | `var(--danger-600)` (red) | Errors, warnings, destructive content |
69
+ | Variant | Header Background | Header Text | Use Case |
70
+ | --------- | ---------------------------------- | ----------------------------- | ------------------------------------- |
71
+ | `default` | `var(--secondary-50)` (light gray) | `var(--secondary-950)` (dark) | Standard content grouping |
72
+ | `success` | `var(--success-100)` (light green) | `var(--success-600)` (green) | Positive state confirmation |
73
+ | `danger` | `var(--danger-100)` (light red) | `var(--danger-600)` (red) | Errors, warnings, destructive content |
74
74
 
75
75
  ## Collapsible Sections
76
76
 
@@ -193,24 +193,61 @@ When `fill` is `true`, the card body applies `display: flex` to allow child cont
193
193
  ```vue
194
194
  <template>
195
195
  <div class="tw-flex tw-flex-col tw-gap-4">
196
- <VcCard header="Basic Information" icon="lucide-file-text">
196
+ <VcCard
197
+ header="Basic Information"
198
+ icon="lucide-file-text"
199
+ >
197
200
  <div class="tw-p-4 tw-grid tw-grid-cols-2 tw-gap-4">
198
- <VcInput v-model="form.name" label="Product Name" required />
199
- <VcInput v-model="form.sku" label="SKU" required />
200
- <VcInput v-model="form.price" label="Price" type="number" />
201
- <VcSelect v-model="form.category" label="Category" :options="categories" />
201
+ <VcInput
202
+ v-model="form.name"
203
+ label="Product Name"
204
+ required
205
+ />
206
+ <VcInput
207
+ v-model="form.sku"
208
+ label="SKU"
209
+ required
210
+ />
211
+ <VcInput
212
+ v-model="form.price"
213
+ label="Price"
214
+ type="number"
215
+ />
216
+ <VcSelect
217
+ v-model="form.category"
218
+ label="Category"
219
+ :options="categories"
220
+ />
202
221
  </div>
203
222
  </VcCard>
204
223
 
205
- <VcCard header="SEO Settings" icon="lucide-search" is-collapsable is-collapsed>
224
+ <VcCard
225
+ header="SEO Settings"
226
+ icon="lucide-search"
227
+ is-collapsable
228
+ is-collapsed
229
+ >
206
230
  <div class="tw-p-4 tw-grid tw-grid-cols-2 tw-gap-4">
207
- <VcInput v-model="form.metaTitle" label="Meta Title" />
208
- <VcInput v-model="form.metaDescription" label="Meta Description" />
209
- <VcInput v-model="form.slug" label="URL Slug" />
231
+ <VcInput
232
+ v-model="form.metaTitle"
233
+ label="Meta Title"
234
+ />
235
+ <VcInput
236
+ v-model="form.metaDescription"
237
+ label="Meta Description"
238
+ />
239
+ <VcInput
240
+ v-model="form.slug"
241
+ label="URL Slug"
242
+ />
210
243
  </div>
211
244
  </VcCard>
212
245
 
213
- <VcCard header="Inventory" icon="lucide-warehouse" is-collapsable>
246
+ <VcCard
247
+ header="Inventory"
248
+ icon="lucide-warehouse"
249
+ is-collapsable
250
+ >
214
251
  <div class="tw-p-4">
215
252
  <!-- inventory fields -->
216
253
  </div>
@@ -229,8 +266,16 @@ When `fill` is `true`, the card body applies `display: flex` to allow child cont
229
266
  :icon="errors.length > 0 ? 'lucide-alert-triangle' : 'lucide-check-circle'"
230
267
  >
231
268
  <div class="tw-p-4">
232
- <ul v-if="errors.length > 0" class="tw-list-disc tw-pl-4 tw-space-y-1">
233
- <li v-for="error in errors" :key="error">{{ error }}</li>
269
+ <ul
270
+ v-if="errors.length > 0"
271
+ class="tw-list-disc tw-pl-4 tw-space-y-1"
272
+ >
273
+ <li
274
+ v-for="error in errors"
275
+ :key="error"
276
+ >
277
+ {{ error }}
278
+ </li>
234
279
  </ul>
235
280
  <p v-else>All validations passed.</p>
236
281
  </div>
@@ -241,11 +286,7 @@ When `fill` is `true`, the card body applies `display: flex` to allow child cont
241
286
  import { computed } from "vue";
242
287
 
243
288
  const errors = ref<string[]>([]);
244
- const validationHeader = computed(() =>
245
- errors.value.length > 0
246
- ? `${errors.value.length} Validation Error(s)`
247
- : "Validation Passed"
248
- );
289
+ const validationHeader = computed(() => (errors.value.length > 0 ? `${errors.value.length} Validation Error(s)` : "Validation Passed"));
249
290
  </script>
250
291
  ```
251
292
 
@@ -295,47 +336,47 @@ const validationHeader = computed(() =>
295
336
 
296
337
  ## Props
297
338
 
298
- | Prop | Type | Default | Description |
299
- |------|------|---------|-------------|
300
- | `header` | `string` | -- | Title text displayed in the card header |
301
- | `icon` | `string` | -- | Icon identifier shown before the title |
302
- | `variant` | `"default" \| "success" \| "danger"` | `"default"` | Header color variant |
303
- | `isCollapsable` | `boolean` | `false` | Enables collapse/expand on header click |
304
- | `isCollapsed` | `boolean` | `false` | Controls the collapsed state (requires `isCollapsable`) |
305
- | `fill` | `boolean` | `false` | Makes body content fill available vertical space via flex |
339
+ | Prop | Type | Default | Description |
340
+ | --------------- | ------------------------------------ | ----------- | --------------------------------------------------------- |
341
+ | `header` | `string` | -- | Title text displayed in the card header |
342
+ | `icon` | `string` | -- | Icon identifier shown before the title |
343
+ | `variant` | `"default" \| "success" \| "danger"` | `"default"` | Header color variant |
344
+ | `isCollapsable` | `boolean` | `false` | Enables collapse/expand on header click |
345
+ | `isCollapsed` | `boolean` | `false` | Controls the collapsed state (requires `isCollapsable`) |
346
+ | `fill` | `boolean` | `false` | Makes body content fill available vertical space via flex |
306
347
 
307
348
  ## Events
308
349
 
309
- | Event | Payload | Description |
310
- |-------|---------|-------------|
311
- | `header:click` | -- | Emitted when the header is clicked (always, regardless of collapsable state) |
312
- | `state:collapsed` | `boolean` | Emitted when the collapsed state changes (`true` = collapsed) |
350
+ | Event | Payload | Description |
351
+ | ----------------- | --------- | ---------------------------------------------------------------------------- |
352
+ | `header:click` | -- | Emitted when the header is clicked (always, regardless of collapsable state) |
353
+ | `state:collapsed` | `boolean` | Emitted when the collapsed state changes (`true` = collapsed) |
313
354
 
314
355
  ## Slots
315
356
 
316
- | Slot | Description |
317
- |------|-------------|
318
- | `default` | Card body content |
319
- | `header` | Custom header content (replaces the default title + icon) |
320
- | `actions` | Action buttons rendered on the right side of the header |
357
+ | Slot | Description |
358
+ | --------- | --------------------------------------------------------- |
359
+ | `default` | Card body content |
360
+ | `header` | Custom header content (replaces the default title + icon) |
361
+ | `actions` | Action buttons rendered on the right side of the header |
321
362
 
322
363
  ## CSS Custom Properties
323
364
 
324
- | Variable | Default | Description |
325
- |----------|---------|-------------|
326
- | `--card-background` | `var(--additional-50)` | Card body background |
327
- | `--card-border-color` | `var(--neutrals-200)` | Border color |
328
- | `--card-border-radius` | `6px` | Corner radius |
329
- | `--card-header-background` | `var(--secondary-50)` | Default header background |
330
- | `--card-header-color` | `var(--secondary-950)` | Default header text color |
331
- | `--card-header-background-success` | `var(--success-100)` | Success variant header background |
332
- | `--card-header-background-danger` | `var(--danger-100)` | Danger variant header background |
333
- | `--card-header-color-success` | `var(--success-600)` | Success variant header text |
334
- | `--card-header-color-danger` | `var(--danger-600)` | Danger variant header text |
335
- | `--card-header-padding-hor` | `24px` | Header horizontal padding |
336
- | `--card-header-padding-vert` | `17px` | Header vertical padding |
337
- | `--card-hover-shadow` | `0 2px 8px rgba(0,0,0,0.06)` | Hover shadow |
338
- | `--card-focus-ring-color` | `var(--primary-300)` | Focus ring for collapsable headers |
365
+ | Variable | Default | Description |
366
+ | ---------------------------------- | ---------------------------- | ---------------------------------- |
367
+ | `--card-background` | `var(--additional-50)` | Card body background |
368
+ | `--card-border-color` | `var(--neutrals-200)` | Border color |
369
+ | `--card-border-radius` | `6px` | Corner radius |
370
+ | `--card-header-background` | `var(--secondary-50)` | Default header background |
371
+ | `--card-header-color` | `var(--secondary-950)` | Default header text color |
372
+ | `--card-header-background-success` | `var(--success-100)` | Success variant header background |
373
+ | `--card-header-background-danger` | `var(--danger-100)` | Danger variant header background |
374
+ | `--card-header-color-success` | `var(--success-600)` | Success variant header text |
375
+ | `--card-header-color-danger` | `var(--danger-600)` | Danger variant header text |
376
+ | `--card-header-padding-hor` | `24px` | Header horizontal padding |
377
+ | `--card-header-padding-vert` | `17px` | Header vertical padding |
378
+ | `--card-hover-shadow` | `0 2px 8px rgba(0,0,0,0.06)` | Hover shadow |
379
+ | `--card-focus-ring-color` | `var(--primary-300)` | Focus ring for collapsable headers |
339
380
 
340
381
  ## Accessibility
341
382