import {
  EIssueConsequence, EIssueType
} from '../../enum';
import {
  IFixing
} from '../../types';

export const FIXING_PROP_FOOTER_ACTIONS: IFixing = {
  propName: 'footerActions',
  codeOld: `interface DialogProps {
  footerActions?: Array<string>;
}`,
  codeNew: `interface DialogProps {
  footerActions?: ('ok', 'cancel')[];
}`,
  issues: [{
    title: '随便什么字符串',
    code: `<Dialog {..{
  footerActions: ['hello', 'world']
}}>
  ...
</Dialog>`,
    type: EIssueType.RUNTIME_CRASH,
    consequences: [EIssueConsequence.CONFUSING, EIssueConsequence.CRASH],
    error: [
      'can\'t access property "className", btnProps is undefined'
    ]
  }, {
    title: '多个 ok 或 cancel',
    code: `<Dialog {..{
  footerActions: ['ok', 'cancel', 'ok]
}}
...
</Dialog>`,
    type: EIssueType.RUNTIME_WARNING,
    consequences: [EIssueConsequence.DEBUG_WARNING],
    error: [
      'Warning: Encountered two children with the same key'
    ]
  }]
};
