mautourco-components 0.2.82 → 0.2.83

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.
@@ -102,13 +102,21 @@ var CarBookingCard = function (_a) {
102
102
  };
103
103
  // Handle CTA click: toggle between "Add to quote" and "Selected" and pass supplement data
104
104
  var handleCtaClick = function (e) {
105
- setIsSelected(!isSelected);
105
+ var newIsSelected = !isSelected;
106
+ setIsSelected(newIsSelected);
107
+ // Reset hover state when deselecting to prevent text staying as "Remove"
108
+ if (!newIsSelected) {
109
+ setIsHovered(false);
110
+ }
106
111
  // Pass the selected supplements to the parent component
107
112
  onCtaClick === null || onCtaClick === void 0 ? void 0 : onCtaClick(e, selectedSupplements.length > 0 ? selectedSupplements : undefined);
108
113
  };
109
114
  // Determine button state based on selection and hover
110
- var shouldShowRemove = isSelected && isHovered;
111
- var shouldShowSelected = isSelected && !isHovered;
115
+ // Use both isSelected (internal state) and state prop to ensure synchronization
116
+ // If state prop is 'default', always show default label regardless of isSelected
117
+ var isActuallySelected = isSelected && (state === 'selected' || state === 'hover');
118
+ var shouldShowRemove = isActuallySelected && isHovered;
119
+ var shouldShowSelected = isActuallySelected && !isHovered;
112
120
  var resolvedCtaLabel = shouldShowRemove
113
121
  ? 'Remove'
114
122
  : shouldShowSelected
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "mautourco-components",
3
- "version": "0.2.82",
3
+ "version": "0.2.83",
4
4
  "private": false,
5
5
  "description": "Bibliothèque de composants Mautourco pour le redesign",
6
6
  "main": "dist/index.js",
@@ -193,14 +193,22 @@ const CarBookingCard: React.FC<CarBookingCardProps> = ({
193
193
 
194
194
  // Handle CTA click: toggle between "Add to quote" and "Selected" and pass supplement data
195
195
  const handleCtaClick = (e: React.MouseEvent<HTMLButtonElement>) => {
196
- setIsSelected(!isSelected);
196
+ const newIsSelected = !isSelected;
197
+ setIsSelected(newIsSelected);
198
+ // Reset hover state when deselecting to prevent text staying as "Remove"
199
+ if (!newIsSelected) {
200
+ setIsHovered(false);
201
+ }
197
202
  // Pass the selected supplements to the parent component
198
203
  onCtaClick?.(e, selectedSupplements.length > 0 ? selectedSupplements : undefined);
199
204
  };
200
205
 
201
206
  // Determine button state based on selection and hover
202
- const shouldShowRemove = isSelected && isHovered;
203
- const shouldShowSelected = isSelected && !isHovered;
207
+ // Use both isSelected (internal state) and state prop to ensure synchronization
208
+ // If state prop is 'default', always show default label regardless of isSelected
209
+ const isActuallySelected = isSelected && (state === 'selected' || state === 'hover');
210
+ const shouldShowRemove = isActuallySelected && isHovered;
211
+ const shouldShowSelected = isActuallySelected && !isHovered;
204
212
 
205
213
  const resolvedCtaLabel = shouldShowRemove
206
214
  ? 'Remove'