myoperator-mcp 0.2.85 → 0.2.87

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 (2) hide show
  1. package/dist/index.js +25 -0
  2. package/package.json +1 -1
package/dist/index.js CHANGED
@@ -3207,6 +3207,8 @@ export interface SelectFieldProps {
3207
3207
  defaultValue?: string;
3208
3208
  /** Callback when value changes */
3209
3209
  onValueChange?: (value: string) => void;
3210
+ /** Callback when an option is selected, provides the full option object */
3211
+ onSelect?: (option: SelectOption) => void;
3210
3212
  /** Options to display */
3211
3213
  options: SelectOption[];
3212
3214
  /** Enable search/filter functionality */
@@ -3255,6 +3257,7 @@ const SelectField = React.forwardRef<HTMLButtonElement, SelectFieldProps>(
3255
3257
  value,
3256
3258
  defaultValue,
3257
3259
  onValueChange,
3260
+ onSelect,
3258
3261
  options,
3259
3262
  searchable,
3260
3263
  searchPlaceholder = "Search...",
@@ -3269,6 +3272,16 @@ const SelectField = React.forwardRef<HTMLButtonElement, SelectFieldProps>(
3269
3272
  // Internal state for search
3270
3273
  const [searchQuery, setSearchQuery] = React.useState("");
3271
3274
 
3275
+ // Handle onSelect at item level (fires even when same value is re-selected)
3276
+ const handleItemSelect = React.useCallback(
3277
+ (option: SelectOption) => {
3278
+ if (!option.disabled) {
3279
+ onSelect?.(option);
3280
+ }
3281
+ },
3282
+ [onSelect]
3283
+ );
3284
+
3272
3285
  // Derive state from props
3273
3286
  const derivedState = error ? "error" : "default";
3274
3287
 
@@ -3384,6 +3397,12 @@ const SelectField = React.forwardRef<HTMLButtonElement, SelectFieldProps>(
3384
3397
  key={option.value}
3385
3398
  value={option.value}
3386
3399
  disabled={option.disabled}
3400
+ onPointerUp={() => handleItemSelect(option)}
3401
+ onKeyDown={(e) => {
3402
+ if (e.key === "Enter" || e.key === " ") {
3403
+ handleItemSelect(option);
3404
+ }
3405
+ }}
3387
3406
  >
3388
3407
  {option.label}
3389
3408
  </SelectItem>
@@ -3400,6 +3419,12 @@ const SelectField = React.forwardRef<HTMLButtonElement, SelectFieldProps>(
3400
3419
  key={option.value}
3401
3420
  value={option.value}
3402
3421
  disabled={option.disabled}
3422
+ onPointerUp={() => handleItemSelect(option)}
3423
+ onKeyDown={(e) => {
3424
+ if (e.key === "Enter" || e.key === " ") {
3425
+ handleItemSelect(option);
3426
+ }
3427
+ }}
3403
3428
  >
3404
3429
  {option.label}
3405
3430
  </SelectItem>
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "myoperator-mcp",
3
- "version": "0.2.85",
3
+ "version": "0.2.87",
4
4
  "description": "MCP server for myOperator UI components - enables AI assistants to access component metadata, examples, and design tokens",
5
5
  "type": "module",
6
6
  "bin": "./dist/index.js",