@capillarytech/blaze-ui 5.20.0 → 5.22.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 (189) hide show
  1. package/CapAskAira/CapAiMediaGeneration/saga.js +1446 -0
  2. package/CapAskAira/CapAiMediaGeneration/saga.js.map +1 -0
  3. package/CapCollapsibleLeftNavigation/saga.js +1441 -0
  4. package/CapCollapsibleLeftNavigation/saga.js.map +1 -0
  5. package/CapLanguageProvider/actions.js +125 -0
  6. package/CapLanguageProvider/actions.js.map +1 -0
  7. package/CapLanguageProvider/constants.js +37 -0
  8. package/CapLanguageProvider/constants.js.map +1 -0
  9. package/CapLanguageProvider/reducer.js +130 -0
  10. package/CapLanguageProvider/reducer.js.map +1 -0
  11. package/CapLanguageProvider/saga.js +1457 -0
  12. package/CapLanguageProvider/saga.js.map +1 -0
  13. package/CapLanguageProvider/selector.js +186 -0
  14. package/CapLanguageProvider/selector.js.map +1 -0
  15. package/CapSupportVideosWrapper/utils.js +34 -0
  16. package/CapSupportVideosWrapper/utils.js.map +1 -0
  17. package/package.json +1 -1
  18. package/CapActionBar/README.md +0 -11
  19. package/CapAdvancedIcon/README.md +0 -185
  20. package/CapAdvancedIcon/use-cases.md +0 -44
  21. package/CapAlert/README.md +0 -144
  22. package/CapAppNotEnabled/README.md +0 -84
  23. package/CapAskAira/README.md +0 -328
  24. package/CapBanner/README.md +0 -4
  25. package/CapBlock/README.md +0 -175
  26. package/CapBorderedBox/Status.md +0 -40
  27. package/CapCSVFileUploader/README.md +0 -124
  28. package/CapCSVFileUploader/Status.md +0 -47
  29. package/CapCard/README.md +0 -85
  30. package/CapCard/Status.md +0 -41
  31. package/CapCardBox/README.md +0 -169
  32. package/CapCardBox/Status.md +0 -52
  33. package/CapCarousel/README.md +0 -190
  34. package/CapCarousel/Status.md +0 -73
  35. package/CapCheckbox/README.md +0 -254
  36. package/CapCheckbox/Status.md +0 -41
  37. package/CapColorPicker/README.md +0 -112
  38. package/CapColorPicker/Status.md +0 -52
  39. package/CapColorPicker/tests/USE_CASES_ANALYSIS.md +0 -92
  40. package/CapColoredTag/README.md +0 -167
  41. package/CapColoredTag/Status.md +0 -49
  42. package/CapConditionPreview/MIGRATION_ANALYSIS.md +0 -70
  43. package/CapConditionPreview/README.md +0 -40
  44. package/CapConditionPreview/tests/USE_CASES_CapConditionPreview.md +0 -65
  45. package/CapCustomCard/README.md +0 -182
  46. package/CapCustomCard/Status.md +0 -40
  47. package/CapCustomCarousel/Status.md +0 -69
  48. package/CapCustomCheckboxList/README.md +0 -178
  49. package/CapCustomCheckboxList/Status.md +0 -52
  50. package/CapCustomCheckboxList/tests/USE_CASES_ANALYSIS.md +0 -174
  51. package/CapCustomList/README.md +0 -117
  52. package/CapCustomList/Status.md +0 -77
  53. package/CapCustomList/tests/USE_CASES_ANALYSIS.md +0 -124
  54. package/CapCustomSelect/README.md +0 -38
  55. package/CapDatePicker/README.md +0 -139
  56. package/CapDateRangePicker/README.md +0 -159
  57. package/CapDateTimePicker/README.md +0 -136
  58. package/CapDateTimeRangePicker/README.md +0 -243
  59. package/CapDivider/README.md +0 -122
  60. package/CapDrawer/README.md +0 -207
  61. package/CapDrawer/Status.md +0 -52
  62. package/CapDrawer/tests/MISSING_USE_CASES.md +0 -170
  63. package/CapDropdown/README.md +0 -515
  64. package/CapDropdown/Status.md +0 -45
  65. package/CapDropdown/tests/USE_CASES_ANALYSIS.md +0 -137
  66. package/CapError/README.md +0 -88
  67. package/CapErrorBoundary/CapErrorBoundary-use-cases.md +0 -89
  68. package/CapErrorBoundary/README.md +0 -150
  69. package/CapErrorStateIllustration/README.md +0 -222
  70. package/CapErrorStateIllustration/USE_CASES.md +0 -33
  71. package/CapExpressionEditor/README.md +0 -32
  72. package/CapForm/README.md +0 -132
  73. package/CapForm/Status.md +0 -40
  74. package/CapForm/tests/PHASE1_UNFULFILLED_USE_CASES.md +0 -113
  75. package/CapForm/tests/USE_CASES_ANALYSIS.md +0 -119
  76. package/CapFormItem/README.md +0 -320
  77. package/CapFormItem/Status.md +0 -73
  78. package/CapFormItem/tests/USE_CASES_ANALYSIS.md +0 -84
  79. package/CapGraph/README.md +0 -69
  80. package/CapGraph/USE_CASES.md +0 -66
  81. package/CapHamburgerMenu/README.md +0 -234
  82. package/CapHamburgerMenu/USE_CASES.md +0 -48
  83. package/CapHeader/Status.md +0 -41
  84. package/CapHeading/README.md +0 -220
  85. package/CapHeading/Status.md +0 -41
  86. package/CapIcon/README.md +0 -207
  87. package/CapIllustration/Status.md +0 -41
  88. package/CapImage/README.md +0 -50
  89. package/CapImportMFEComponent/README.md +0 -121
  90. package/CapInfoNote/Status.md +0 -40
  91. package/CapInfoNote/tests/USE_CASES_ANALYSIS.md +0 -114
  92. package/CapInput/README.md +0 -196
  93. package/CapInput/Status.md +0 -123
  94. package/CapInput/tests/USE_CASES_ANALYSIS.md +0 -169
  95. package/CapLanguageProvider/CapLanguageProvider-use-cases.md +0 -56
  96. package/CapLanguageProvider/README.md +0 -206
  97. package/CapLevelGraphRenderer/CapLevelGraphRenderer-test-cases.md +0 -50
  98. package/CapLevelGraphRenderer/README.md +0 -123
  99. package/CapLevelGraphRenderer/Tooltip_MIGRATION_ANALYSIS.md +0 -120
  100. package/CapLink/README.md +0 -203
  101. package/CapLink/Status.md +0 -32
  102. package/CapLink/tests/CapLink.missingUseCases.md +0 -95
  103. package/CapList/README.md +0 -129
  104. package/CapList/Status.md +0 -69
  105. package/CapListLayout/README.md +0 -7
  106. package/CapLogin/README.md +0 -7
  107. package/CapMenu/README.md +0 -86
  108. package/CapModal/README.md +0 -357
  109. package/CapModal/Status.md +0 -52
  110. package/CapModal/tests/USE_CASES_GAPS.md +0 -207
  111. package/CapMultiSelect/README.md +0 -170
  112. package/CapMultiSelect/tests/USE_CASES_ANALYSIS.md +0 -29
  113. package/CapMultiSelectDatePicker/README.md +0 -11
  114. package/CapNavigation/README.md +0 -72
  115. package/CapNotification/README.md +0 -228
  116. package/CapNotificationDropdown/README.md +0 -5
  117. package/CapPopover/README.md +0 -234
  118. package/CapProgress/Status.md +0 -40
  119. package/CapRadio/Status.md +0 -54
  120. package/CapRadioButton/README.md +0 -152
  121. package/CapRadioButton/Status.md +0 -70
  122. package/CapRadioButton/tests/USE_CASES_ANALYSIS.md +0 -120
  123. package/CapRadioCard/README.md +0 -161
  124. package/CapRadioCard/Status.md +0 -78
  125. package/CapRadioGroup/README.md +0 -141
  126. package/CapRadioGroup/Status.md +0 -59
  127. package/CapReorderComponent/README.md +0 -179
  128. package/CapReorderComponent/Status.md +0 -41
  129. package/CapRoadMap/README.md +0 -126
  130. package/CapRoadMap/Status.md +0 -53
  131. package/CapRoadMap/tests/USE_CASE_GAPS.md +0 -92
  132. package/CapRow/README.md +0 -424
  133. package/CapSKUUploader/README.md +0 -189
  134. package/CapSKUUploader/Status.md +0 -66
  135. package/CapSecondaryTopBar/README.md +0 -7
  136. package/CapSelect/README.md +0 -243
  137. package/CapSelectFilter/README.md +0 -121
  138. package/CapShape/README.md +0 -96
  139. package/CapShape/Status.md +0 -36
  140. package/CapShape/tests/USE_CASES_ANALYSIS.md +0 -120
  141. package/CapSideBar/README.md +0 -298
  142. package/CapSideBar/Status.md +0 -5
  143. package/CapSlideBox/README.md +0 -68
  144. package/CapSlider/README.md +0 -423
  145. package/CapSlider/Status.md +0 -48
  146. package/CapSlider/tests/TEST_COVERAGE.md +0 -118
  147. package/CapSnackBar/README.md +0 -222
  148. package/CapSnackBar/Status.md +0 -41
  149. package/CapSomethingWentWrong/README.md +0 -97
  150. package/CapSplit/README.md +0 -19
  151. package/CapStatisticCard/README.md +0 -138
  152. package/CapStatus/README.md +0 -148
  153. package/CapStatus/Status.md +0 -40
  154. package/CapSteps/Status.md +0 -40
  155. package/CapStepsAccordian/README.md +0 -305
  156. package/CapStepsAccordian/Status.md +0 -48
  157. package/CapSupportVideosWrapper/README.md +0 -14
  158. package/CapSwitch/README.md +0 -351
  159. package/CapTab/README.md +0 -406
  160. package/CapTab/Status.md +0 -104
  161. package/CapTab/tests/USE_CASE_GAPS.md +0 -143
  162. package/CapTabV3/ANALYSIS.md +0 -60
  163. package/CapTabV3/README.md +0 -156
  164. package/CapTabV3/Status.md +0 -52
  165. package/CapTabV3/tests/USE_CASE_GAPS.md +0 -149
  166. package/CapTable/README.md +0 -160
  167. package/CapTable/Status.md +0 -41
  168. package/CapTag/README.md +0 -16
  169. package/CapTagDropdown/README.md +0 -171
  170. package/CapTagDropdown/Status.md +0 -55
  171. package/CapTimePicker/README.md +0 -170
  172. package/CapTooltip/README.md +0 -336
  173. package/CapTooltipWithInfo/Status.md +0 -75
  174. package/CapTopBar/README.md +0 -146
  175. package/CapTree/README.md +0 -124
  176. package/CapTree/Status.md +0 -48
  177. package/CapTree/tests/STATUS.md +0 -154
  178. package/CapTreeSelect/README.md +0 -217
  179. package/CapTreeSelect/Status.md +0 -52
  180. package/CapTruncateList/README.md +0 -13
  181. package/CapUnifiedSelect/README.md +0 -40
  182. package/CapUploader/README.md +0 -313
  183. package/CapUploader/Status.md +0 -76
  184. package/CapUploader/tests/USE_CASES_ANALYSIS.md +0 -225
  185. package/CapUserProfile/README.md +0 -105
  186. package/CapUserProfile/Status.md +0 -95
  187. package/CapVirtualList/README.md +0 -162
  188. package/CapVirtualList/Status.md +0 -71
  189. package/assets/HOCs/ComponentWithLabelHOC/README.md +0 -230
@@ -1,161 +0,0 @@
1
- # CapRadioCard Migration Guide
2
-
3
- ## Summary
4
-
5
- CapRadioCard has been migrated from `cap-ui-library` to `blaze-ui` with the following changes:
6
-
7
- - Converted from JavaScript to TypeScript
8
- - Converted from styled-components to SCSS modules
9
- - Migrated to Ant Design v6 APIs
10
- - Added TypeScript interfaces for props
11
- - Maintained backward compatibility with the existing API
12
-
13
- ## Breaking Changes
14
-
15
- **No breaking changes from cap-ui-library v8.x**
16
-
17
- The component maintains full backward compatibility with the existing API. All props from the original component continue to work as expected.
18
-
19
- ## Ant Design Components Used
20
-
21
- CapRadioCard uses the following Ant Design components:
22
-
23
- - **Card** - For displaying card content within radio buttons
24
- - **Radio** - Radio.Group and Radio.Button components for radio button functionality
25
-
26
- ### Ant Design Component Props Status
27
-
28
- **✅ No deprecated props**: The `Card` and `Radio` components from Ant Design v6 do not have any deprecated props according to the [Ant Design v6 Migration Guide](https://ant.design/docs/react/migration-v6). All Card and Radio props remain valid and unchanged in v6.
29
-
30
- ## Deprecated Props
31
-
32
- **None** - There are no deprecated Ant Design props for Card or Radio components in Ant Design v6.
33
-
34
- The following Ant Design components have deprecated props in v6, but **Card and Radio are not among them**:
35
- - **Alert**: `message` → `title`
36
- - **Tooltip**: `destroyTooltipOnHide` → `destroyOnHidden`, `overlayClassName` → `classNames.root`, `overlayStyle` → `styles.root`
37
- - **Tabs**: `TabPane` children → `items` prop, `tabPosition` → `tabPlacement`
38
- - **Dropdown**: `visible` → `open`, `overlayClassName` → `classNames.root`, `overlay` → `menu`
39
- - **All**: `visible` → `open`, `onVisibleChange` → `onOpenChange`
40
-
41
- **Note**: CapRadioCard only uses `Card` and `Radio` components, which have no deprecated props in v6.
42
-
43
- ## Prop Changes
44
-
45
- ### CapRadioCard Props
46
-
47
- CapRadioCard extends `Radio.Group` props from Ant Design v6 and adds the following props:
48
-
49
- | Prop | Type | Default | Description |
50
- |------|------|---------|-------------|
51
- | `panes` | `CapRadioCardPane[]` | `undefined` | Array of radio card panes to display |
52
- | `className` | `string` | `undefined` | Additional CSS class name |
53
- | `cardHeight` | `number \| string` | `'120px'` | Height of each radio card |
54
- | `cardWidth` | `number \| string` | `undefined` | Width of each radio card |
55
- | `selected` | `any` | `undefined` | Currently selected value (controlled) |
56
- | `customDisableClass` | `any` | `undefined` | Custom class name for disabled state |
57
- | `size` | `'small' \| 'default'` | `'default'` | Size of the radio cards |
58
- | `onChange` | `(e: RadioChangeEvent) => void` | `undefined` | Callback when selection changes (Ant Design prop) |
59
- | `defaultValue` | `any` | `undefined` | Default selected value (Ant Design prop) |
60
- | `value` | `any` | `undefined` | Current value (Ant Design prop) |
61
- | `...rest` | `RadioGroupProps` | - | All other Ant Design Radio.Group props are supported |
62
-
63
- ### CapRadioCardPane Props
64
-
65
- Each pane in the `panes` array supports the following props:
66
-
67
- | Prop | Type | Default | Description |
68
- |------|------|---------|-------------|
69
- | `value` | `string \| number` | **Required** | Unique value for this radio option |
70
- | `title` | `React.ReactNode` | `undefined` | Title text displayed in the card |
71
- | `content` | `React.ReactNode` | `undefined` | Content displayed below the title |
72
- | `icon` | `React.ReactNode` | `undefined` | Icon displayed at the top of the card |
73
- | `infoIconDescription` | `string` | `undefined` | Tooltip text for info icon |
74
- | `disabled` | `boolean` | `false` | Whether this option is disabled |
75
- | `customDisableClass` | `any` | `undefined` | Custom class name for disabled state |
76
- | `customComponent` | `React.ReactNode` | `undefined` | Custom component to render in the card |
77
- | `titleClassName` | `string` | `undefined` | Custom class name for the title |
78
- | `radioCardClassName` | `string` | `undefined` | Custom class name for the radio card |
79
- | `tooltipProps` | `object` | `undefined` | Props to pass to CapTooltip wrapper |
80
- | `...rest` | `any` | - | Additional props passed to Radio.Button |
81
-
82
- ## API Changes
83
-
84
- - **TypeScript Support**: Full TypeScript support with exported `CapRadioCardProps` and `CapRadioCardPane` interfaces
85
- - **Ant Design Version**: Upgraded from Ant Design v3 to v6
86
- - **Styling**: Migrated from styled-components to SCSS modules
87
-
88
- ## Behavioral Changes
89
-
90
- - **No breaking changes**: All existing code using CapRadioCard will continue to work without modifications
91
- - **Props passed through**: All Ant Design Radio.Group and Radio.Button props are passed through unchanged
92
-
93
- ## Migration Steps
94
-
95
- ### 1. Update Import
96
-
97
- ```tsx
98
- // Before (cap-ui-library)
99
- import CapRadioCard from '@capillarytech/cap-ui-library/CapRadioCard';
100
-
101
- // After (blaze-ui)
102
- import { CapRadioCard } from '@capillarytech/blaze-ui';
103
- // or
104
- import CapRadioCard from '@capillarytech/blaze-ui/CapRadioCard';
105
- ```
106
-
107
- ### 2. Usage (No Changes Required)
108
-
109
- ```tsx
110
- // Basic usage - works exactly the same
111
- <CapRadioCard
112
- panes={[
113
- {
114
- value: 'option1',
115
- title: 'Option 1',
116
- content: 'Description for option 1',
117
- icon: <Icon />,
118
- },
119
- {
120
- value: 'option2',
121
- title: 'Option 2',
122
- content: 'Description for option 2',
123
- },
124
- ]}
125
- onChange={(e) => console.log(e.target.value)}
126
- />
127
- ```
128
-
129
- ## TypeScript Usage
130
-
131
- ```tsx
132
- import { CapRadioCard, CapRadioCardPane } from '@capillarytech/blaze-ui';
133
-
134
- const panes: CapRadioCardPane[] = [
135
- {
136
- value: 'option1',
137
- title: 'Option 1',
138
- content: 'Description',
139
- icon: <Icon />,
140
- },
141
- ];
142
-
143
- <CapRadioCard panes={panes} onChange={handleChange} />
144
- ```
145
-
146
- ## Verification Status
147
-
148
- ✅ **Deprecated Props Check**: No deprecated props found
149
- - Card component: No deprecated props in Ant Design v6
150
- - Radio component: No deprecated props in Ant Design v6
151
- - Radio.Group: No deprecated props in Ant Design v6
152
- - Radio.Button: No deprecated props in Ant Design v6
153
-
154
- ✅ **Backward Compatibility**: Maintained
155
- - All props from cap-ui-library v8.x continue to work
156
- - No breaking changes introduced
157
-
158
- ✅ **Documentation**: Complete
159
- - Deprecated props section documented (none found)
160
- - Migration guide provided
161
- - TypeScript interfaces documented
@@ -1,78 +0,0 @@
1
- # Migration Status: CapRadioCard
2
-
3
- **Last Updated**: 2026-02-01 22:09:02
4
-
5
- ## Migration Steps
6
-
7
- - [x] **Step 0**: Setup branch and remote tracking
8
- - [x] **Step 1**: Migration Prompt 1 (Main migration)
9
- - [x] **Step 1.5**: Export component in blaze-ui/components/index.ts
10
- - [x] **Step 2**: Migration Prompt 2 (Storybook support)
11
- - [x] **Step 2.5**: Verify deprecated props and prop changes (REQUIRED - enforced)
12
- - [x] **Step 3**: Migration Prompt 3 (Unit tests)
13
- - [x] **Step 4**: Migration Prompt 4 (Visual test cases)
14
- - [x] **Step 5**: Linting (ESLint)
15
- - [x] **Step 6**: Pre-build Validation
16
- - [x] **Step 7**: Build blaze-ui
17
- - [x] **Step 8**: Visual Testing
18
- - [x] **Step 9**: CSS Analysis (if mismatches found)
19
- - [x] **Step 9.5**: CSS Analysis Completed
20
- - [x] **Step 10**: Git Commit & Push to branch (pre-commit hook will run tests)
21
- - [x] **Step 11**: Create Pull Request
22
-
23
- ## Deprecated Props Verification
24
-
25
- ### Deprecated Props Status
26
- ✅ **No deprecated props found**
27
-
28
- The `Card` and `Radio` components from Ant Design v6 do **not** have any deprecated props according to the [Ant Design v6 Migration Guide](https://ant.design/docs/react/migration-v6).
29
-
30
- ### Verification Results
31
-
32
- **Ant Design Components Used:**
33
- - ✅ **Card** - No deprecated props in v6
34
- - ✅ **Radio** (Radio.Group, Radio.Button) - No deprecated props in v6
35
-
36
- **Verification Checklist:**
37
- - ✅ Checked MIGRATION_CHANGELOG_TEMPLATE.md for Ant Design prop deprecations
38
- - ✅ Checked ANTD_V6_MIGRATION.md for Ant Design v6 changes
39
- - ✅ Compared props between original and migrated component
40
- - ✅ Verified no deprecated Ant Design props are being used
41
- - ✅ README.md created with "Deprecated Props" section
42
- - ✅ Documented that Card and Radio have no deprecated props
43
- - ✅ Fixed import inconsistency in types.ts (antd-v5 → antd)
44
-
45
- **Note**: Step 2.5 is REQUIRED and enforced.
46
- - Focus: **Ant Design component prop changes** (e.g., Dropdown, Input, Alert, Tooltip, etc.)
47
- - Reference: MIGRATION_CHANGELOG_TEMPLATE.md for format, ANTD_V6_MIGRATION.md for Ant Design deprecated APIs
48
- - Skip: If original component doesn't exist in cap-ui-library
49
- - All deprecated Ant Design props and prop changes must be documented before proceeding.
50
-
51
- ## Visual Testing Results
52
-
53
- **Last Test**: 2026-02-01 22:06:44
54
- **Maximum Mismatch**: 94.05%
55
-
56
- ### Mismatched Variants:
57
- - default:2.06%
58
- - selected:2.06%
59
- - with-icon:94.05%
60
- - with-info-icon:1.97%
61
- - disabled:1.53%
62
- - small-size:1.96%
63
- - custom-dimensions:2.75%
64
- - multiple-panes:1.89%
65
-
66
-
67
- ## CSS Fixes Applied
68
-
69
- **Date**: 2026-02-01 22:07:33
70
- **Summary**: CSS fixes applied based on visual testing analysis.
71
-
72
- _See full analysis in: `/Users/sarahkhader/repos/migration/blaze-ui/tools/visual-testing/report/CapRadioCard/css-fix-analysis.md`_
73
-
74
-
75
- ## Notes
76
-
77
- _No notes yet._
78
-
@@ -1,141 +0,0 @@
1
- # CapRadioGroup Migration: Ant Design v3 → v6
2
-
3
- ## Overview
4
-
5
- This document describes the migration of `CapRadioGroup` from Ant Design v3 to v6, preserving exact behavior and DOM structure from the original `cap-ui-library` component.
6
-
7
- ## Migration Date
8
-
9
- **2026-02-01**
10
-
11
- ## Breaking Changes
12
-
13
- **None** - Radio.Group component has no documented breaking changes in Ant Design v6 migration.
14
-
15
- ### Deprecated Props
16
-
17
- **Status:** ✅ **No deprecated props**
18
-
19
- The Ant Design `Radio.Group` component does not have any deprecated props in v6 that require backward compatibility mapping. Unlike other Ant Design components (Dropdown, Tooltip, Tabs, Alert, etc.), the Radio.Group component's prop API remained stable during the v3 → v6 migration.
20
-
21
- **Verified Ant Design Radio.Group Props (All Supported):**
22
- - `value` - Controlled value of the radio group
23
- - `defaultValue` - Default value for uncontrolled mode
24
- - `onChange` - Callback when value changes
25
- - `disabled` - Whether the radio group is disabled
26
- - `options` - Options array (alternative to children)
27
- - `name` - Name attribute for form submission
28
- - `size` - Size of radio buttons (`'small' | 'middle' | 'large'`)
29
- - `buttonStyle` - Style of radio button (`'outline' | 'solid'`)
30
- - `optionType` - Option type (`'default' | 'button'`)
31
- - All other `RadioGroupProps` from Ant Design v6
32
-
33
- **Reference:**
34
- - Checked `ANTD_V6_MIGRATION.md` - Radio.Group component has no documented prop deprecations in Ant Design v6 migration.
35
- - Checked `MIGRATION_CHANGELOG_TEMPLATE.md` - No Radio.Group deprecated props patterns documented.
36
-
37
- ## Changes Made
38
-
39
- ### 1. Component Structure
40
- - ✅ Converted from class component to functional component
41
- - ✅ Preserved exact DOM structure (React.Fragment → `<>`)
42
- - ✅ No wrapper divs added (matches original)
43
- - ✅ Preserved error message rendering logic
44
-
45
- ### 2. TypeScript Migration
46
- - ✅ Created `types.ts` with `CapRadioGroupProps` interface
47
- - ✅ Extended `RadioGroupProps` from `antd-v5`
48
- - ✅ Removed PropTypes, using TypeScript types
49
-
50
- ### 3. Styling Migration
51
- - ✅ Removed all `.ant-` class overrides from SCSS
52
- - ✅ Moved style overrides to theme config (`getCapThemeConfig.ts`)
53
- - ✅ Added `dotColor` token to `components.Radio` tokens
54
-
55
- ### 4. Theme Config Updates
56
-
57
- Added to `components.Radio` tokens:
58
- ```typescript
59
- Radio: {
60
- // ... existing tokens
61
- dotColor: styledVars.CAP_WHITE || '#ffffff', // Inner dot color when checked
62
- }
63
- ```
64
-
65
- **Migration**: The following SCSS overrides were moved to theme config:
66
- - `.ant-radio-checked .ant-radio-inner { background-color }` → `components.Radio.colorPrimary` (already existed)
67
- - `.ant-radio-inner:after { background-color: white }` → `components.Radio.dotColor` (newly added)
68
-
69
- ### 5. Imports Updated
70
- - ✅ `antd` → `antd-v5`
71
- - ✅ `classnames` → `classnames` (same package, updated import style)
72
- - ✅ Added TypeScript type imports
73
-
74
- ## API
75
-
76
- ### Props
77
-
78
- ```typescript
79
- interface CapRadioGroupProps extends Omit<RadioGroupProps, 'className'> {
80
- className?: string;
81
- children?: React.ReactNode;
82
- errorMessage?: string;
83
- }
84
- ```
85
-
86
- All `RadioGroupProps` from Ant Design v6 are supported. See [Ant Design Radio.Group documentation](https://ant.design/components/radio) for full API.
87
-
88
- ### Example Usage
89
-
90
- ```tsx
91
- import CapRadioGroup from '@capillarytech/blaze-ui/components/CapRadioGroup';
92
- import CapRadio from '@capillarytech/blaze-ui/components/CapRadio';
93
-
94
- <CapRadioGroup defaultValue="option1" errorMessage="Please select an option">
95
- <CapRadio value="option1">Option 1</CapRadio>
96
- <CapRadio value="option2">Option 2</CapRadio>
97
- <CapRadio value="option3">Option 3</CapRadio>
98
- </CapRadioGroup>
99
- ```
100
-
101
- ## Validation
102
-
103
- ### ✅ SCSS Validation
104
- ```bash
105
- grep -E '(:global|\.ant-|!important)' components/CapRadioGroup/styles.scss
106
- # Expected: Empty (no matches) ✅
107
- ```
108
-
109
- ### ✅ Theme Config Validation
110
- ```bash
111
- git diff components/utils/getCapThemeConfig.ts
112
- # Expected: Shows Radio.dotColor addition ✅
113
- ```
114
-
115
- ### ✅ TypeScript Compilation
116
- ```bash
117
- tsc --noEmit
118
- # Expected: Exit code 0 ✅
119
- ```
120
-
121
- ## Files Changed
122
-
123
- 1. `components/CapRadioGroup/index.tsx` - Migrated to functional component
124
- 2. `components/CapRadioGroup/types.ts` - Created TypeScript types
125
- 3. `components/CapRadioGroup/styles.scss` - Removed antd overrides
126
- 4. `components/CapRadioGroup/README.md` - Migration documentation
127
- 5. `components/utils/getCapThemeConfig.ts` - Added `dotColor` token
128
- 6. `components/index.ts` - Added exports
129
-
130
- ## Testing
131
-
132
- - ✅ Component renders correctly
133
- - ✅ Error message displays when provided
134
- - ✅ All Radio.Group props work as expected
135
- - ✅ Styling matches original (via theme config)
136
-
137
- ## Notes
138
-
139
- - Original component used `React.Fragment` - preserved in migration
140
- - No wrapper divs were in original - none added in migration
141
- - Component behavior is identical to original `cap-ui-library` version
@@ -1,59 +0,0 @@
1
- # Migration Status: CapRadioGroup
2
-
3
- **Last Updated**: 2026-02-01 21:46:04
4
-
5
- ## Migration Steps
6
-
7
- - [x] **Step 0**: Setup branch and remote tracking
8
- - [x] **Step 1**: Migration Prompt 1 (Main migration)
9
- - [x] **Step 1.5**: Export component in blaze-ui/components/index.ts
10
- - [x] **Step 2**: Migration Prompt 2 (Storybook support)
11
- - [x] **Step 2.5**: Verify deprecated props and prop changes (REQUIRED - enforced)
12
- - [x] **Step 3**: Migration Prompt 3 (Unit tests)
13
- - [x] **Step 4**: Migration Prompt 4 (Visual test cases)
14
- - [x] **Step 5**: Linting (ESLint)
15
- - [x] **Step 6**: Pre-build Validation
16
- - [x] **Step 7**: Build blaze-ui
17
- - [x] **Step 8**: Visual Testing
18
- - [x] **Step 9**: CSS Analysis (if mismatches found)
19
- - [x] **Step 9.5**: CSS Analysis Completed
20
- - [x] **Step 10**: Git Commit & Push to branch (pre-commit hook will run tests)
21
- - [x] **Step 11**: Create Pull Request
22
-
23
- ## Deprecated Props Verification
24
-
25
- _No deprecated props verification results yet._
26
-
27
- **Note**: Step 2.5 is REQUIRED and enforced.
28
- - Focus: **Ant Design component prop changes** (e.g., Dropdown, Input, Alert, Tooltip, etc.)
29
- - Reference: MIGRATION_CHANGELOG_TEMPLATE.md for format, ANTD_V6_MIGRATION.md for Ant Design deprecated APIs
30
- - Skip: If original component doesn't exist in cap-ui-library
31
- - All deprecated Ant Design props and prop changes must be documented before proceeding.
32
-
33
- ## Visual Testing Results
34
-
35
- **Last Test**: 2026-02-01 21:42:42
36
- **Maximum Mismatch**: 6.01%
37
-
38
- ### Mismatched Variants:
39
- - default:1.59%
40
- - selected:1.75%
41
- - error-message:2.00%
42
- - button-style:2.43%
43
- - button-style-solid:6.01%
44
- - long-list:2.21%
45
- - with-children:1.55%
46
-
47
-
48
- ## CSS Fixes Applied
49
-
50
- **Date**: 2026-02-01 21:44:34
51
- **Summary**: CSS fixes applied based on visual testing analysis.
52
-
53
- _See full analysis in: `/Users/sarahkhader/repos/migration/blaze-ui/tools/visual-testing/report/CapRadioGroup/css-fix-analysis.md`_
54
-
55
-
56
- ## Notes
57
-
58
- _No notes yet._
59
-
@@ -1,179 +0,0 @@
1
- # CapReorderComponent Migration: Ant Design v3 → v6
2
-
3
- ## Overview
4
-
5
- This document describes the migration of `CapReorderComponent` from Ant Design v3 to v6, preserving exact behavior and DOM structure from the original `cap-ui-library` component.
6
-
7
- ## Migration Date
8
-
9
- **2026-02-05**
10
-
11
- ## Breaking Changes
12
-
13
- **None** - CapReorderComponent maintains full backward compatibility with the original `cap-ui-library` component. All props remain unchanged and fully supported.
14
-
15
- ## Ant Design Component Used
16
-
17
- CapReorderComponent uses **CapCard** internally, which wraps Ant Design's **Card** component.
18
-
19
- ### Card Component Props Status
20
-
21
- **✅ No deprecated props**: The Ant Design `Card` component from Ant Design v6 does not have any deprecated props according to the [Ant Design v6 Migration Guide](https://ant.design/docs/react/migration-v6) and `ANTD_V6_MIGRATION.md`. The Card component is not listed in the deprecated API fixes table.
22
-
23
- **Note**: CapReorderComponent only passes `className` to CapCard, which is not a deprecated prop. All other props passed to CapCard are standard HTML/CSS props (e.g., `style`) or Cap component props.
24
-
25
- ### Deprecated Props
26
-
27
- **Status:** ✅ **No deprecated props**
28
-
29
- **CapReorderComponent Props:**
30
- - All component props (`panes`, `title`, `reOrderChannel`, `reset`) remain unchanged and fully supported
31
- - No deprecated props in the component interface
32
-
33
- **Ant Design Card Component Props:**
34
- - The Ant Design `Card` component used internally via CapCard has no deprecated props in v6
35
- - CapReorderComponent only passes `className` to CapCard, which is a standard prop
36
-
37
- **Verified Component Props (All Supported):**
38
- - `panes` - Array of pane objects with order, icon, channel, etc.
39
- - `title` - Optional title string to display above each pane
40
- - `reOrderChannel` - Callback function called when panes are reordered
41
- - `reset` - Boolean flag to reset panes to initial state
42
-
43
- **Reference:**
44
- - Checked `ANTD_V6_MIGRATION.md` - Card component has no documented prop deprecations in Ant Design v6 migration
45
- - Checked `MIGRATION_CHANGELOG_TEMPLATE.md` - No Card component deprecated props patterns documented
46
- - Verified CapCard implementation - Uses Ant Design Card component with no deprecated props
47
-
48
- **Note**: The following Ant Design components have deprecated props in v6, but **Card is not among them**:
49
- - Dropdown: `visible` → `open`, `overlayClassName` → `classNames.root`, `overlay` → `menu`
50
- - Tooltip: `destroyTooltipOnHide` → `destroyOnHidden`, `overlayClassName` → `classNames.root`
51
- - Tabs: `TabPane` children → `items` prop, `tabPosition` → `tabPlacement`
52
- - Alert: `message` → `title`
53
-
54
- ## Changes Made
55
-
56
- ### 1. Component Structure
57
- - ✅ Preserved exact DOM structure
58
- - ✅ No wrapper divs added (matches original)
59
- - ✅ Preserved reordering logic and state management
60
- - ✅ Preserved conditional rendering (chevrons, title)
61
-
62
- ### 2. TypeScript Migration
63
- - ✅ `types.ts` already exists with `CapReorderComponentProps` and `Pane` interfaces
64
- - ✅ All types properly exported
65
- - ✅ No `any` types used (uses `Record<string, unknown>`)
66
-
67
- ### 3. Styling Migration
68
- - ✅ Removed `:global(.ant-card-body)` override from SCSS
69
- - ✅ Moved Card body padding to theme config (`getCapThemeConfig.ts`)
70
- - ✅ Fixed SCSS import to use `import * as styles` pattern
71
-
72
- ### 4. Theme Config Updates
73
-
74
- Added to `components.Card` tokens:
75
- ```typescript
76
- Card: {
77
- // ... existing tokens
78
- padding: remToPx(styledVars.SPACING_16, '1.143rem'), // 16px - body padding (from CapReorderComponent migration)
79
- }
80
- ```
81
-
82
- **Migration**: The following SCSS override was moved to theme config:
83
- - `:global(.ant-card-body) { padding: $CAP_SPACE_16; }` → `components.Card.padding` (16px)
84
-
85
- **Note**: This change affects all Card components globally. Cards now have 16px body padding by default. Components requiring 24px padding can use the `paddingLG` size variant or override via `bodyStyle` prop.
86
-
87
- ### 5. Imports Updated
88
- - ✅ SCSS import changed from `import styles` to `import * as styles from './styles.scss'`
89
- - ✅ All other imports remain unchanged
90
-
91
- ## API
92
-
93
- ### Props
94
-
95
- ```typescript
96
- interface CapReorderComponentProps {
97
- panes: Pane[];
98
- title?: string;
99
- reOrderChannel: (panes: Pane[]) => void;
100
- reset?: boolean;
101
- }
102
-
103
- interface Pane {
104
- order: number;
105
- capIconClass?: string;
106
- withBackground?: boolean;
107
- backgroundProps?: Record<string, unknown>;
108
- icon: string;
109
- channel: string;
110
- id?: string | number;
111
- }
112
- ```
113
-
114
- ### Example Usage
115
-
116
- ```tsx
117
- import { CapReorderComponent } from '@capillarytech/blaze-ui';
118
- import type { Pane } from '@capillarytech/blaze-ui';
119
-
120
- const panes: Pane[] = [
121
- { id: '1', order: 1, icon: 'email', channel: 'Email' },
122
- { id: '2', order: 2, icon: 'sms', channel: 'SMS' },
123
- { id: '3', order: 3, icon: 'push', channel: 'Push Notification' },
124
- ];
125
-
126
- const handleReorder = (reorderedPanes: Pane[]) => {
127
- console.log('New order:', reorderedPanes);
128
- };
129
-
130
- <CapReorderComponent
131
- panes={panes}
132
- title="Channel"
133
- reOrderChannel={handleReorder}
134
- reset={false}
135
- />
136
- ```
137
-
138
- ## Validation
139
-
140
- ### ✅ SCSS Validation
141
- ```bash
142
- grep -E '(:global|\.ant-|!important)' components/CapReorderComponent/styles.scss
143
- # Expected: Empty (no matches) ✅
144
- ```
145
-
146
- ### ✅ Theme Config Validation
147
- ```bash
148
- git diff components/utils/getCapThemeConfig.ts
149
- # Expected: Shows Card.padding addition ✅
150
- ```
151
-
152
- ### ✅ TypeScript Compilation
153
- ```bash
154
- tsc --noEmit
155
- # Expected: Exit code 0 ✅
156
- ```
157
-
158
- ## Files Changed
159
-
160
- 1. `components/CapReorderComponent/index.tsx` - Fixed SCSS import pattern
161
- 2. `components/CapReorderComponent/styles.scss` - Removed `:global(.ant-card-body)` override
162
- 3. `components/CapReorderComponent/README.md` - Migration documentation (this file)
163
- 4. `components/utils/getCapThemeConfig.ts` - Added `Card.padding` token (16px)
164
-
165
- ## Testing
166
-
167
- - ✅ Component renders correctly
168
- - ✅ Reordering functionality works as expected
169
- - ✅ Title displays when provided
170
- - ✅ Chevrons render conditionally (no left chevron on first, no right chevron on last)
171
- - ✅ Reset prop resets panes to initial state
172
- - ✅ Styling matches original (via theme config)
173
-
174
- ## Notes
175
-
176
- - Original component used inline styles for `display: inline-block` and `paddingRight` - preserved in migration
177
- - Component uses CapCard, CapIcon, CapLabel, and CapRow - all Cap components, no direct Ant Design usage
178
- - Card body padding changed from scoped override to global theme config (affects all cards)
179
- - Component behavior is identical to original `cap-ui-library` version
@@ -1,41 +0,0 @@
1
- # Migration Status: CapReorderComponent
2
-
3
- **Last Updated**: 2026-02-12 12:52:23
4
-
5
- ## Migration Steps
6
-
7
- - [x] **Step 0**: Setup branch and remote tracking
8
- - [x] **Step 1**: Migration Prompt 1 (Main migration)
9
- - [x] **Step 2**: Migration Prompt 2 (Storybook support)
10
- - [x] **Step 3**: Migration Prompt 3 (Unit tests)
11
- - [x] **Step 4**: Migration Prompt 4 (Visual test cases)
12
- - [x] **Step 5**: Linting (ESLint)
13
- - [x] **Step 6**: Pre-build Validation
14
- - [] **Step 7**: Build blaze-ui
15
- - [] **Step 8**: Visual Testing
16
- - [] **Step 9**: CSS Analysis (if mismatches found)
17
- - [] **Step 9.5**: CSS Analysis Completed
18
- - [] **Step 10**: Git Commit & Push to branch (pre-commit hook will run tests)
19
- - [] **Step 11**: Create Pull Request
20
-
21
- ## Visual Testing Results
22
-
23
- **Last Test**: 2026-02-12 12:52:23
24
- **Maximum Mismatch**: 21.88%
25
-
26
- ### Mismatched Variants:
27
- - with-background-icons:21.88%
28
- - mixed-background:14.41%
29
-
30
-
31
- ## CSS Fixes Applied
32
-
33
- **Date**: 2026-01-28 09:42:08
34
- **Summary**: CSS fixes applied based on visual testing analysis.
35
-
36
- _See full analysis in: `/Users/sarahkhader/repos/migration/blaze-ui/tools/visual-testing/report/CapReorderComponent/css-fix-analysis.md`_
37
-
38
-
39
- ## Notes
40
-
41
- _No notes yet._