interface.js 3.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112
  1. import _typeof from 'babel-runtime/helpers/typeof';
  2. import PropsTypes from '../_util/vue-types';
  3. export var UploadFileStatus = PropsTypes.oneOf(['error', 'success', 'done', 'uploading', 'removed']);
  4. // export const HttpRequestHeader {
  5. // [key: string]: string;
  6. // }
  7. // export const UploadFile = PropsTypes.shape({
  8. // uid: PropsTypes.oneOfType([
  9. // PropsTypes.string,
  10. // PropsTypes.number,
  11. // ]),
  12. // size: PropsTypes.number,
  13. // name: PropsTypes.string,
  14. // filename: PropsTypes.string,
  15. // lastModified: PropsTypes.number,
  16. // lastModifiedDate: PropsTypes.any,
  17. // url: PropsTypes.string,
  18. // status: UploadFileStatus,
  19. // percent: PropsTypes.number,
  20. // thumbUrl: PropsTypes.string,
  21. // originFileObj: PropsTypes.any,
  22. // response: PropsTypes.any,
  23. // error: PropsTypes.any,
  24. // linkProps: PropsTypes.any,
  25. // type: PropsTypes.string,
  26. // }).loose
  27. function UploadFile(_ref) {
  28. var uid = _ref.uid,
  29. name = _ref.name;
  30. if (!uid && uid !== 0) return false;
  31. if (!['string', 'number'].includes(typeof uid === 'undefined' ? 'undefined' : _typeof(uid))) return false;
  32. if (name === '' || typeof name !== 'string') return false;
  33. return true;
  34. }
  35. export var UploadChangeParam = {
  36. file: PropsTypes.custom(UploadFile),
  37. fileList: PropsTypes.arrayOf(PropsTypes.custom(UploadFile)),
  38. event: PropsTypes.object
  39. };
  40. export var ShowUploadListInterface = PropsTypes.shape({
  41. showRemoveIcon: PropsTypes.bool,
  42. showPreviewIcon: PropsTypes.bool
  43. }).loose;
  44. export var UploadLocale = PropsTypes.shape({
  45. uploading: PropsTypes.string,
  46. removeFile: PropsTypes.string,
  47. downloadFile: PropsTypes.string,
  48. uploadError: PropsTypes.string,
  49. previewFile: PropsTypes.string
  50. }).loose;
  51. export var UploadProps = {
  52. type: PropsTypes.oneOf(['drag', 'select']),
  53. name: PropsTypes.string,
  54. defaultFileList: PropsTypes.arrayOf(PropsTypes.custom(UploadFile)),
  55. fileList: PropsTypes.arrayOf(PropsTypes.custom(UploadFile)),
  56. action: PropsTypes.oneOfType([PropsTypes.string, PropsTypes.func]),
  57. directory: PropsTypes.bool,
  58. data: PropsTypes.oneOfType([PropsTypes.object, PropsTypes.func]),
  59. method: PropsTypes.oneOf(['POST', 'PUT', 'post', 'put']),
  60. headers: PropsTypes.object,
  61. showUploadList: PropsTypes.oneOfType([PropsTypes.bool, ShowUploadListInterface]),
  62. multiple: PropsTypes.bool,
  63. accept: PropsTypes.string,
  64. beforeUpload: PropsTypes.func,
  65. // onChange: PropsTypes.func,
  66. listType: PropsTypes.oneOf(['text', 'picture', 'picture-card']),
  67. // className: PropsTypes.string,
  68. // onPreview: PropsTypes.func,
  69. remove: PropsTypes.func,
  70. supportServerRender: PropsTypes.bool,
  71. // style: PropsTypes.object,
  72. disabled: PropsTypes.bool,
  73. prefixCls: PropsTypes.string,
  74. customRequest: PropsTypes.func,
  75. withCredentials: PropsTypes.bool,
  76. openFileDialogOnClick: PropsTypes.bool,
  77. locale: UploadLocale,
  78. height: PropsTypes.number,
  79. id: PropsTypes.string,
  80. previewFile: PropsTypes.func,
  81. transformFile: PropsTypes.func
  82. };
  83. export var UploadState = {
  84. fileList: PropsTypes.arrayOf(PropsTypes.custom(UploadFile)),
  85. dragState: PropsTypes.string
  86. };
  87. export var UploadListProps = {
  88. listType: PropsTypes.oneOf(['text', 'picture', 'picture-card']),
  89. // onPreview: PropsTypes.func,
  90. // onRemove: PropsTypes.func,
  91. // items: PropsTypes.arrayOf(UploadFile),
  92. items: PropsTypes.arrayOf(PropsTypes.custom(UploadFile)),
  93. // items: PropsTypes.any,
  94. progressAttr: PropsTypes.object,
  95. prefixCls: PropsTypes.string,
  96. showRemoveIcon: PropsTypes.bool,
  97. showDownloadIcon: PropsTypes.bool,
  98. showPreviewIcon: PropsTypes.bool,
  99. locale: UploadLocale,
  100. previewFile: PropsTypes.func
  101. };