@capillarytech/blaze-ui 5.21.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 (177) hide show
  1. package/CapLanguageProvider/actions.js +125 -0
  2. package/CapLanguageProvider/actions.js.map +1 -0
  3. package/CapLanguageProvider/constants.js +37 -0
  4. package/CapLanguageProvider/constants.js.map +1 -0
  5. package/package.json +1 -1
  6. package/CapActionBar/README.md +0 -11
  7. package/CapAdvancedIcon/README.md +0 -185
  8. package/CapAdvancedIcon/use-cases.md +0 -44
  9. package/CapAlert/README.md +0 -144
  10. package/CapAppNotEnabled/README.md +0 -84
  11. package/CapAskAira/README.md +0 -328
  12. package/CapBanner/README.md +0 -4
  13. package/CapBlock/README.md +0 -175
  14. package/CapBorderedBox/Status.md +0 -40
  15. package/CapCSVFileUploader/README.md +0 -124
  16. package/CapCSVFileUploader/Status.md +0 -47
  17. package/CapCard/README.md +0 -85
  18. package/CapCard/Status.md +0 -41
  19. package/CapCardBox/README.md +0 -169
  20. package/CapCardBox/Status.md +0 -52
  21. package/CapCarousel/README.md +0 -190
  22. package/CapCarousel/Status.md +0 -73
  23. package/CapCheckbox/README.md +0 -254
  24. package/CapCheckbox/Status.md +0 -41
  25. package/CapColorPicker/README.md +0 -112
  26. package/CapColorPicker/Status.md +0 -52
  27. package/CapColorPicker/tests/USE_CASES_ANALYSIS.md +0 -92
  28. package/CapColoredTag/README.md +0 -167
  29. package/CapColoredTag/Status.md +0 -49
  30. package/CapConditionPreview/MIGRATION_ANALYSIS.md +0 -70
  31. package/CapConditionPreview/README.md +0 -40
  32. package/CapConditionPreview/tests/USE_CASES_CapConditionPreview.md +0 -65
  33. package/CapCustomCard/README.md +0 -182
  34. package/CapCustomCard/Status.md +0 -40
  35. package/CapCustomCarousel/Status.md +0 -69
  36. package/CapCustomCheckboxList/README.md +0 -178
  37. package/CapCustomCheckboxList/Status.md +0 -52
  38. package/CapCustomCheckboxList/tests/USE_CASES_ANALYSIS.md +0 -174
  39. package/CapCustomList/README.md +0 -117
  40. package/CapCustomList/Status.md +0 -77
  41. package/CapCustomList/tests/USE_CASES_ANALYSIS.md +0 -124
  42. package/CapCustomSelect/README.md +0 -38
  43. package/CapDatePicker/README.md +0 -139
  44. package/CapDateRangePicker/README.md +0 -159
  45. package/CapDateTimePicker/README.md +0 -136
  46. package/CapDateTimeRangePicker/README.md +0 -243
  47. package/CapDivider/README.md +0 -122
  48. package/CapDrawer/README.md +0 -207
  49. package/CapDrawer/Status.md +0 -52
  50. package/CapDrawer/tests/MISSING_USE_CASES.md +0 -170
  51. package/CapDropdown/README.md +0 -515
  52. package/CapDropdown/Status.md +0 -45
  53. package/CapDropdown/tests/USE_CASES_ANALYSIS.md +0 -137
  54. package/CapError/README.md +0 -88
  55. package/CapErrorBoundary/CapErrorBoundary-use-cases.md +0 -89
  56. package/CapErrorBoundary/README.md +0 -150
  57. package/CapErrorStateIllustration/README.md +0 -222
  58. package/CapErrorStateIllustration/USE_CASES.md +0 -33
  59. package/CapExpressionEditor/README.md +0 -32
  60. package/CapForm/README.md +0 -132
  61. package/CapForm/Status.md +0 -40
  62. package/CapForm/tests/PHASE1_UNFULFILLED_USE_CASES.md +0 -113
  63. package/CapForm/tests/USE_CASES_ANALYSIS.md +0 -119
  64. package/CapFormItem/README.md +0 -320
  65. package/CapFormItem/Status.md +0 -73
  66. package/CapFormItem/tests/USE_CASES_ANALYSIS.md +0 -84
  67. package/CapGraph/README.md +0 -69
  68. package/CapGraph/USE_CASES.md +0 -66
  69. package/CapHamburgerMenu/README.md +0 -234
  70. package/CapHamburgerMenu/USE_CASES.md +0 -48
  71. package/CapHeader/Status.md +0 -41
  72. package/CapHeading/README.md +0 -220
  73. package/CapHeading/Status.md +0 -41
  74. package/CapIcon/README.md +0 -207
  75. package/CapIllustration/Status.md +0 -41
  76. package/CapImage/README.md +0 -50
  77. package/CapImportMFEComponent/README.md +0 -121
  78. package/CapInfoNote/Status.md +0 -40
  79. package/CapInfoNote/tests/USE_CASES_ANALYSIS.md +0 -114
  80. package/CapInput/README.md +0 -196
  81. package/CapInput/Status.md +0 -123
  82. package/CapInput/tests/USE_CASES_ANALYSIS.md +0 -169
  83. package/CapLanguageProvider/CapLanguageProvider-use-cases.md +0 -56
  84. package/CapLanguageProvider/README.md +0 -206
  85. package/CapLevelGraphRenderer/CapLevelGraphRenderer-test-cases.md +0 -50
  86. package/CapLevelGraphRenderer/README.md +0 -123
  87. package/CapLevelGraphRenderer/Tooltip_MIGRATION_ANALYSIS.md +0 -120
  88. package/CapLink/README.md +0 -203
  89. package/CapLink/Status.md +0 -32
  90. package/CapLink/tests/CapLink.missingUseCases.md +0 -95
  91. package/CapList/README.md +0 -129
  92. package/CapList/Status.md +0 -69
  93. package/CapListLayout/README.md +0 -7
  94. package/CapLogin/README.md +0 -7
  95. package/CapMenu/README.md +0 -86
  96. package/CapModal/README.md +0 -357
  97. package/CapModal/Status.md +0 -52
  98. package/CapModal/tests/USE_CASES_GAPS.md +0 -207
  99. package/CapMultiSelect/README.md +0 -170
  100. package/CapMultiSelect/tests/USE_CASES_ANALYSIS.md +0 -29
  101. package/CapMultiSelectDatePicker/README.md +0 -11
  102. package/CapNavigation/README.md +0 -72
  103. package/CapNotification/README.md +0 -228
  104. package/CapNotificationDropdown/README.md +0 -5
  105. package/CapPopover/README.md +0 -234
  106. package/CapProgress/Status.md +0 -40
  107. package/CapRadio/Status.md +0 -54
  108. package/CapRadioButton/README.md +0 -152
  109. package/CapRadioButton/Status.md +0 -70
  110. package/CapRadioButton/tests/USE_CASES_ANALYSIS.md +0 -120
  111. package/CapRadioCard/README.md +0 -161
  112. package/CapRadioCard/Status.md +0 -78
  113. package/CapRadioGroup/README.md +0 -141
  114. package/CapRadioGroup/Status.md +0 -59
  115. package/CapReorderComponent/README.md +0 -179
  116. package/CapReorderComponent/Status.md +0 -41
  117. package/CapRoadMap/README.md +0 -126
  118. package/CapRoadMap/Status.md +0 -53
  119. package/CapRoadMap/tests/USE_CASE_GAPS.md +0 -92
  120. package/CapRow/README.md +0 -424
  121. package/CapSKUUploader/README.md +0 -189
  122. package/CapSKUUploader/Status.md +0 -66
  123. package/CapSecondaryTopBar/README.md +0 -7
  124. package/CapSelect/README.md +0 -243
  125. package/CapSelectFilter/README.md +0 -121
  126. package/CapShape/README.md +0 -96
  127. package/CapShape/Status.md +0 -36
  128. package/CapShape/tests/USE_CASES_ANALYSIS.md +0 -120
  129. package/CapSideBar/README.md +0 -298
  130. package/CapSideBar/Status.md +0 -5
  131. package/CapSlideBox/README.md +0 -68
  132. package/CapSlider/README.md +0 -423
  133. package/CapSlider/Status.md +0 -48
  134. package/CapSlider/tests/TEST_COVERAGE.md +0 -118
  135. package/CapSnackBar/README.md +0 -222
  136. package/CapSnackBar/Status.md +0 -41
  137. package/CapSomethingWentWrong/README.md +0 -97
  138. package/CapSplit/README.md +0 -19
  139. package/CapStatisticCard/README.md +0 -138
  140. package/CapStatus/README.md +0 -148
  141. package/CapStatus/Status.md +0 -40
  142. package/CapSteps/Status.md +0 -40
  143. package/CapStepsAccordian/README.md +0 -305
  144. package/CapStepsAccordian/Status.md +0 -48
  145. package/CapSupportVideosWrapper/README.md +0 -14
  146. package/CapSwitch/README.md +0 -351
  147. package/CapTab/README.md +0 -406
  148. package/CapTab/Status.md +0 -104
  149. package/CapTab/tests/USE_CASE_GAPS.md +0 -143
  150. package/CapTabV3/ANALYSIS.md +0 -60
  151. package/CapTabV3/README.md +0 -156
  152. package/CapTabV3/Status.md +0 -52
  153. package/CapTabV3/tests/USE_CASE_GAPS.md +0 -149
  154. package/CapTable/README.md +0 -160
  155. package/CapTable/Status.md +0 -41
  156. package/CapTag/README.md +0 -16
  157. package/CapTagDropdown/README.md +0 -171
  158. package/CapTagDropdown/Status.md +0 -55
  159. package/CapTimePicker/README.md +0 -170
  160. package/CapTooltip/README.md +0 -336
  161. package/CapTooltipWithInfo/Status.md +0 -75
  162. package/CapTopBar/README.md +0 -146
  163. package/CapTree/README.md +0 -124
  164. package/CapTree/Status.md +0 -48
  165. package/CapTree/tests/STATUS.md +0 -154
  166. package/CapTreeSelect/README.md +0 -217
  167. package/CapTreeSelect/Status.md +0 -52
  168. package/CapTruncateList/README.md +0 -13
  169. package/CapUnifiedSelect/README.md +0 -40
  170. package/CapUploader/README.md +0 -313
  171. package/CapUploader/Status.md +0 -76
  172. package/CapUploader/tests/USE_CASES_ANALYSIS.md +0 -225
  173. package/CapUserProfile/README.md +0 -105
  174. package/CapUserProfile/Status.md +0 -95
  175. package/CapVirtualList/README.md +0 -162
  176. package/CapVirtualList/Status.md +0 -71
  177. package/assets/HOCs/ComponentWithLabelHOC/README.md +0 -230
@@ -1,171 +0,0 @@
1
- # CapTagDropdown Migration Guide
2
-
3
- ## Overview
4
-
5
- `CapTagDropdown` has been migrated from Ant Design v3 to v6. This document outlines the changes and migration steps.
6
-
7
- ## Breaking Changes
8
-
9
- ### None
10
-
11
- This component maintains backward compatibility with the previous API.
12
-
13
- ## Deprecated Props
14
-
15
- The following props are deprecated but still supported for backward compatibility. They will show deprecation warnings in development mode.
16
-
17
- | Deprecated Prop | Replacement | Migration Guide |
18
- |----------------|-------------|-----------------|
19
- | `visible` | `dropdownProps.open` | Use `dropdownProps={{ open: true }}` instead of `visible={true}` |
20
- | `onVisibleChange` | `dropdownProps.onOpenChange` | Use `dropdownProps={{ onOpenChange: handleChange }}` instead of `onVisibleChange={handleChange}` |
21
- | `overlayStyle` | `dropdownProps.styles.root` | Use `dropdownProps={{ styles: { root: { width: '200px' } } }}` instead of `overlayStyle={{ width: '200px' }}` |
22
-
23
- ### Migration Examples
24
-
25
- #### Before (Deprecated)
26
- ```tsx
27
- <CapTagDropdown
28
- visible={isOpen}
29
- onVisibleChange={setIsOpen}
30
- overlayStyle={{ width: '300px' }}
31
- list={tags}
32
- content={inputValue}
33
- handleKeyDownCallback={handleKeyDown}
34
- />
35
- ```
36
-
37
- #### After (Recommended)
38
- ```tsx
39
- <CapTagDropdown
40
- dropdownProps={{
41
- open: isOpen,
42
- onOpenChange: setIsOpen,
43
- styles: {
44
- root: { width: '300px' }
45
- }
46
- }}
47
- list={tags}
48
- content={inputValue}
49
- handleKeyDownCallback={handleKeyDown}
50
- />
51
- ```
52
-
53
- ## Component API
54
-
55
- ### Props
56
-
57
- | Prop | Type | Default | Description |
58
- |-----|------|---------|-------------|
59
- | `className` | `string` | `''` | Additional CSS class name |
60
- | `content` | `string` | `''` | Input field value |
61
- | `list` | `TagItem[]` | `[]` | Array of tag items to display |
62
- | `handleRemoveTagCallback` | `(id: string \| number, e: React.MouseEvent) => void` | `() => {}` | Callback when a tag is removed |
63
- | `handleKeyDownCallback` | `(e: React.KeyboardEvent<HTMLInputElement>) => void` | `() => {}` | Callback for keyboard events |
64
- | `renderOptionRow` | `(props: RenderOptionRowProps) => React.ReactNode` | `undefined` | Custom render function for option row |
65
- | `inputProps` | `CapInputProps` | `{ suffix: <CapIcon type="enter" /> }` | Props passed to CapInput |
66
- | `dropdownProps` | `Omit<CapDropdownProps, 'children' \| 'overlay' \| 'overlayStyle'>` | `{ placement: 'bottomLeft', trigger: ['click'] }` | Props passed to CapDropdown |
67
- | `width` | `string` | `'24.571rem'` | Width of the dropdown container |
68
- | `visible` | `boolean` | ⚠️ Deprecated | Use `dropdownProps.open` instead |
69
- | `showAddedTags` | `boolean` | `false` | Whether to show added tags in collapsed view |
70
- | `onVisibleChange` | `(visible: boolean) => void` | ⚠️ Deprecated | Use `dropdownProps.onOpenChange` instead |
71
- | `overlayStyle` | `React.CSSProperties` | ⚠️ Deprecated | Use `dropdownProps.styles.root` instead |
72
-
73
- ### Types
74
-
75
- ```typescript
76
- interface TagItem {
77
- id: string | number;
78
- tag: string;
79
- }
80
-
81
- interface RenderOptionRowProps {
82
- className?: string;
83
- formatMessage: (message: { id: string; defaultMessage: string }) => string;
84
- list?: TagItem[];
85
- handleRemoveTagCallback?: (id: string | number, e: React.MouseEvent) => void;
86
- isError?: boolean;
87
- }
88
- ```
89
-
90
- ## Usage Examples
91
-
92
- ### Basic Usage
93
-
94
- ```tsx
95
- import CapTagDropdown from '@capillarytech/blaze-ui';
96
-
97
- const [tags, setTags] = useState<TagItem[]>([]);
98
- const [inputValue, setInputValue] = useState('');
99
-
100
- const handleKeyDown = (e: React.KeyboardEvent<HTMLInputElement>) => {
101
- if (e.key === 'Enter' && inputValue.trim()) {
102
- setTags([...tags, { id: Date.now(), tag: inputValue.trim() }]);
103
- setInputValue('');
104
- }
105
- };
106
-
107
- const handleRemoveTag = (id: string | number) => {
108
- setTags(tags.filter(tag => tag.id !== id));
109
- };
110
-
111
- <CapTagDropdown
112
- list={tags}
113
- content={inputValue}
114
- handleKeyDownCallback={handleKeyDown}
115
- handleRemoveTagCallback={handleRemoveTag}
116
- inputProps={{
117
- onChange: (e) => setInputValue(e.target.value),
118
- }}
119
- />
120
- ```
121
-
122
- ### With Custom Option Row
123
-
124
- ```tsx
125
- const customOptionRow = (props: RenderOptionRowProps) => (
126
- <CapRow>
127
- <CapMenu>
128
- {/* Custom menu content */}
129
- </CapMenu>
130
- </CapRow>
131
- );
132
-
133
- <CapTagDropdown
134
- renderOptionRow={customOptionRow}
135
- list={tags}
136
- content={inputValue}
137
- />
138
- ```
139
-
140
- ### With Show Added Tags
141
-
142
- ```tsx
143
- const [isOpen, setIsOpen] = useState(false);
144
-
145
- <CapTagDropdown
146
- showAddedTags={true}
147
- dropdownProps={{
148
- open: isOpen,
149
- onOpenChange: setIsOpen,
150
- }}
151
- list={tags}
152
- content={inputValue}
153
- />
154
- ```
155
-
156
- ## Internal Changes
157
-
158
- - Migrated from PropTypes to TypeScript types
159
- - Removed `defaultProps` in favor of default parameters
160
- - Updated to use Ant Design v6 APIs via `antd-v5` import alias
161
- - Menu styling moved to theme config (`components.Menu` tokens)
162
- - Component-specific styling preserved in SCSS (no `.ant-*` selectors)
163
-
164
- ## Related Components
165
-
166
- - `CapDropdown` - Base dropdown component
167
- - `CapMenu` - Menu component used in dropdown overlay
168
- - `CapInput` - Input component
169
- - `CapRow` - Row layout component
170
- - `CapLabel` - Label component
171
- - `CapIcon` - Icon component
@@ -1,55 +0,0 @@
1
- # Migration Status: CapTagDropdown
2
-
3
- **Last Updated**: 2026-02-19 14:26:33
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
- - [ ] **Step 8.1**: Pre-visual-test check (agent verification)
19
- - [ ] **Step 8.2**: Visual comparison
20
- - [ ] **Step 8.3**: Visual diff analysis (agent analysis)
21
- - [x] **Step 9**: CSS Analysis (if mismatches found)
22
- - [x] **Step 9.5**: CSS Analysis Completed
23
- - [x] **Step 10**: Git Commit & Push to branch (pre-commit hook will run tests)
24
- - [x] **Step 11**: Create Pull Request
25
-
26
- ## Deprecated Props Verification
27
-
28
- _No deprecated props verification results yet._
29
-
30
- **Note**: Step 2.5 is REQUIRED and enforced.
31
- - Focus: **Ant Design component prop changes** (e.g., Dropdown, Input, Alert, Tooltip, etc.)
32
- - Reference: MIGRATION_CHANGELOG_TEMPLATE.md for format, ANTD_V6_MIGRATION.md for Ant Design deprecated APIs
33
- - Skip: If original component doesn't exist in cap-ui-library
34
- - All deprecated Ant Design props and prop changes must be documented before proceeding.
35
-
36
- ## Visual Testing Results
37
-
38
- **Last Test**: 2026-02-19 14:26:33
39
- **Maximum Mismatch**: 0%
40
-
41
- ### Mismatched Variants:
42
- -
43
-
44
-
45
- ## CSS Fixes Applied
46
-
47
- **Date**: 2026-02-19 14:00:45
48
- **Summary**: CSS fixes applied based on visual testing analysis.
49
-
50
- _See full analysis in: `/Users/sarahkhader/repos/migration/blaze-ui/tools/visual-testing/report/CapTagDropdown/css-fix-analysis.md`_
51
-
52
-
53
- ## Notes
54
-
55
- _No notes yet._
@@ -1,170 +0,0 @@
1
- # CapTimePicker Migration Guide
2
-
3
- ## Overview
4
-
5
- CapTimePicker has been migrated to support Ant Design v6 APIs while maintaining backward compatibility with deprecated props from v3-v5.
6
-
7
- ## Breaking Changes
8
-
9
- ### API Changes (v3 → v6)
10
-
11
- | Old API (v3-v5) | New API (v6) | Migration |
12
- |----------------|--------------|-----------|
13
- | `allowEmpty` | `allowClear` | Use `allowClear` prop |
14
- | `addon` | `renderExtraFooter` | Use `renderExtraFooter` prop |
15
- | `dropdownClassName` | `classNames.popup.root` or `popupClassName` | Use `popupClassName` or `classNames.popup.root` |
16
- | `popupStyle` (v5) | `styles.popup.root` or `popupStyle` | Use `popupStyle` or `styles.popup.root` |
17
- | `bordered` | `variant` | Use `variant` prop (`'outlined'`, `'borderless'`, or `'filled'`) |
18
-
19
- ## Deprecated Props
20
-
21
- The following props are deprecated but still supported for backward compatibility. They will be removed in the next major version.
22
-
23
- | Deprecated Prop | Replacement | Notes |
24
- |----------------|-------------|-------|
25
- | `allowEmpty` | `allowClear` | Maps to `allowClear` internally |
26
- | `addon` | `renderExtraFooter` | Maps to `renderExtraFooter` internally |
27
- | `dropdownClassName` | `popupClassName` or `classNames.popup.root` | Merged with `popupClassName` |
28
- | `dropdownStyle` | `popupStyle` or `styles.popup.root` | Merged with `popupStyle` |
29
- | `bordered` | `variant` | `bordered={false}` → `variant="borderless"`, `bordered={true}` → `variant="outlined"` |
30
-
31
- ## Migration Examples
32
-
33
- ### Example 1: Basic Usage
34
-
35
- **Before (v3-v5):**
36
- ```tsx
37
- import CapTimePicker from '@capillarytech/blaze-ui/components/CapTimePicker';
38
-
39
- <CapTimePicker
40
- value={moment('12:00:00', 'HH:mm:ss')}
41
- onChange={(time) => console.log(time)}
42
- allowEmpty={false}
43
- bordered={true}
44
- />
45
- ```
46
-
47
- **After (v6):**
48
- ```tsx
49
- import CapTimePicker from '@capillarytech/blaze-ui/components/CapTimePicker';
50
- import dayjs from 'dayjs';
51
-
52
- <CapTimePicker
53
- value={dayjs('12:00:00', 'HH:mm:ss')}
54
- onChange={(time) => console.log(time)}
55
- allowClear={false}
56
- variant="outlined"
57
- />
58
- ```
59
-
60
- ### Example 2: Custom Popup Styling
61
-
62
- **Before (v5):**
63
- ```tsx
64
- <CapTimePicker
65
- dropdownClassName="custom-popup"
66
- dropdownStyle={{ zIndex: 1000 }}
67
- />
68
- ```
69
-
70
- **After (v6) - Option 1 (Direct props):**
71
- ```tsx
72
- <CapTimePicker
73
- popupClassName="custom-popup"
74
- popupStyle={{ zIndex: 1000 }}
75
- />
76
- ```
77
-
78
- **After (v6) - Option 2 (Object-based API):**
79
- ```tsx
80
- <CapTimePicker
81
- classNames={{
82
- popup: {
83
- root: 'custom-popup'
84
- }
85
- }}
86
- styles={{
87
- popup: {
88
- root: { zIndex: 1000 }
89
- }
90
- }}
91
- />
92
- ```
93
-
94
- ### Example 3: Custom Footer
95
-
96
- **Before (v5):**
97
- ```tsx
98
- <CapTimePicker
99
- addon={() => <div>Custom Footer</div>}
100
- />
101
- ```
102
-
103
- **After (v6):**
104
- ```tsx
105
- <CapTimePicker
106
- renderExtraFooter={() => <div>Custom Footer</div>}
107
- />
108
- ```
109
-
110
- ## Backward Compatibility
111
-
112
- All deprecated props are automatically mapped to their new equivalents:
113
-
114
- - `allowEmpty` → `allowClear`
115
- - `addon` → `renderExtraFooter`
116
- - `dropdownClassName` → merged with `popupClassName`
117
- - `dropdownStyle` → merged with `popupStyle`
118
- - `bordered` → converted to `variant` (`false` → `'borderless'`, `true` → `'outlined'`)
119
-
120
- **Note:** Deprecated props will log warnings in development mode when used.
121
-
122
- ## Moment.js → Day.js Migration
123
-
124
- CapTimePicker supports both Moment.js and Day.js for backward compatibility:
125
-
126
- ```tsx
127
- // Both work:
128
- <CapTimePicker value={moment('12:00:00', 'HH:mm:ss')} />
129
- <CapTimePicker value={dayjs('12:00:00', 'HH:mm:ss')} />
130
- ```
131
-
132
- However, **Day.js is recommended** as Moment.js is deprecated. The component automatically detects and converts Moment objects to Day.js internally.
133
-
134
- ## Theme Customization
135
-
136
- CapTimePicker styling is now handled via design tokens in `getCapThemeConfig.ts`:
137
-
138
- ```typescript
139
- components: {
140
- TimePicker: {
141
- controlHeight: 40, // Input height
142
- colorIcon: '#091e42', // Icon color
143
- },
144
- }
145
- ```
146
-
147
- All previous SCSS overrides have been migrated to design tokens. No `:global` overrides are needed.
148
-
149
- ## TypeScript Support
150
-
151
- Full TypeScript support is available:
152
-
153
- ```tsx
154
- import CapTimePicker, { CapTimePickerProps } from '@capillarytech/blaze-ui/components/CapTimePicker';
155
-
156
- const props: CapTimePickerProps = {
157
- value: dayjs('12:00:00', 'HH:mm:ss'),
158
- onChange: (time, timeString) => {},
159
- };
160
- ```
161
-
162
- ## Validation
163
-
164
- This migration has been validated against:
165
-
166
- - ✅ **SCSS File Content**: No `:global` or `.ant-` overrides without comments
167
- - ✅ **Theme Config Update**: `getCapThemeConfig.ts` updated with TimePicker tokens
168
- - ✅ **TypeScript Compilation**: Zero compilation errors
169
- - ✅ **Backward Compatibility**: All deprecated props supported with warnings
170
- - ✅ **CSS Modules**: Component uses CSS Modules pattern