{"version":3,"file":"props.mjs","sources":["../../../components/upload/props.ts"],"sourcesContent":["import {\n  booleanProp,\n  buildProps,\n  eventProp,\n  iconProp,\n  localeProp,\n  stateProp,\n  styleProp\n} from '@vexip-ui/config'\n\nimport type { ExtractPropTypes, PropType } from 'vue'\nimport type { IconEffect } from '@/components/icon'\nimport type { ConfigurableProps } from '@vexip-ui/config'\nimport type {\n  BeforeSelect,\n  BeforeUpload,\n  RenderFn,\n  UploadFetchMethod,\n  UploadFileOptions,\n  UploadFileSlots,\n  UploadFileState,\n  UploadHttpError,\n  UploadListSlots,\n  UploadListType,\n  UploadSlots\n} from './symbol'\n\nexport const uploadProps = buildProps({\n  state: stateProp,\n  locale: localeProp('upload'),\n  url: String,\n  fileList: Array as PropType<UploadFileOptions[]>,\n  multiple: booleanProp,\n  tip: String,\n  accept: [String, Array] as PropType<string | string[]>,\n  filter: [String, Array] as PropType<string | string[]>,\n  maxSize: Number,\n  field: String,\n  data: Object as PropType<Record<string, string | Blob>>,\n  headers: Object as PropType<Record<string, string>>,\n  withCredentials: booleanProp,\n  manual: booleanProp,\n  hiddenFiles: booleanProp,\n  countLimit: Number,\n  allowDrag: booleanProp,\n  onBeforeUpload: Function as PropType<BeforeUpload>,\n  onBeforeSelect: Function as PropType<BeforeSelect>,\n  iconRenderer: Function as PropType<RenderFn>,\n  selectToAdd: booleanProp,\n  listType: String as PropType<UploadListType>,\n  block: booleanProp,\n  loadingText: String,\n  directory: booleanProp,\n  pathField: String,\n  disabledClick: booleanProp,\n  buttonLabel: String,\n  disabled: booleanProp,\n  loading: booleanProp,\n  loadingIcon: iconProp,\n  loadingLock: booleanProp,\n  loadingEffect: String as PropType<IconEffect>,\n  image: booleanProp,\n  defaultFiles: Array as PropType<UploadFileOptions[]>,\n  canPreview: Function as PropType<(file: UploadFileState) => boolean>,\n  listStyle: styleProp,\n  name: String,\n  customFetch: Function as PropType<UploadFetchMethod>,\n  slots: Object as PropType<UploadSlots>,\n  onExceed: eventProp<(files: UploadFileState[]) => void>(),\n  onChange: eventProp<(files: UploadFileState[]) => void>(),\n  onFilterError: eventProp<(files: UploadFileState) => void>(),\n  onSizeError: eventProp<(files: UploadFileState) => void>(),\n  onDelete: eventProp<(file: UploadFileState) => void>(),\n  onPreview: eventProp<(file: UploadFileState) => void>(),\n  onProgress: eventProp<(file: UploadFileState, percent: number) => void>(),\n  onSuccess: eventProp<(file: UploadFileState, response: any) => void>(),\n  onError: eventProp<(file: UploadFileState, error: UploadHttpError) => void>()\n})\n\nexport type UploadProps = ExtractPropTypes<typeof uploadProps>\nexport type UploadCProps = ConfigurableProps<\n  UploadProps,\n  'url' | 'fileList',\n  'onBeforeUpload' | 'onBeforeSelect'\n>\n\nexport const uploadListProps = buildProps({\n  files: Array as PropType<UploadFileState[]>,\n  selectToAdd: booleanProp,\n  iconRenderer: Function as PropType<RenderFn>,\n  type: String as PropType<UploadListType>,\n  loadingText: String,\n  style: styleProp,\n  precision: Number,\n  canPreview: Function as PropType<(file: UploadFileState) => boolean>,\n  slots: Object as PropType<UploadListSlots>,\n  onDelete: eventProp<(file: UploadFileState) => void>(),\n  onPreview: eventProp<(file: UploadFileState) => void>()\n})\n\nexport type UploadListProps = ExtractPropTypes<typeof uploadListProps>\nexport type UploadListCProps = ConfigurableProps<UploadListProps, 'files'>\n\nexport const uploadFileProps = buildProps({\n  locale: localeProp('upload'),\n  file: Object as PropType<UploadFileState>,\n  iconRenderer: Function as PropType<RenderFn>,\n  listType: String as PropType<UploadListType>,\n  loadingText: String,\n  selectToAdd: booleanProp,\n  precision: Number,\n  canPreview: Function as PropType<(file: UploadFileState) => boolean>,\n  slots: Object as PropType<UploadFileSlots>,\n  onDelete: eventProp<(file: UploadFileState) => void>(),\n  onPreview: eventProp<(file: UploadFileState) => void>()\n})\n\nexport type UploadFileProps = ExtractPropTypes<typeof uploadFileProps>\nexport type UploadFileCProps = ConfigurableProps<UploadFileProps, 'file'>\n"],"names":["uploadProps","buildProps","stateProp","localeProp","booleanProp","iconProp","styleProp","eventProp","uploadListProps","uploadFileProps"],"mappings":";AA2BO,MAAMA,IAAcC,EAAW;AAAA,EACpC,OAAOC;AAAA,EACP,QAAQC,EAAW,QAAQ;AAAA,EAC3B,KAAK;AAAA,EACL,UAAU;AAAA,EACV,UAAUC;AAAA,EACV,KAAK;AAAA,EACL,QAAQ,CAAC,QAAQ,KAAK;AAAA,EACtB,QAAQ,CAAC,QAAQ,KAAK;AAAA,EACtB,SAAS;AAAA,EACT,OAAO;AAAA,EACP,MAAM;AAAA,EACN,SAAS;AAAA,EACT,iBAAiBA;AAAA,EACjB,QAAQA;AAAA,EACR,aAAaA;AAAA,EACb,YAAY;AAAA,EACZ,WAAWA;AAAA,EACX,gBAAgB;AAAA,EAChB,gBAAgB;AAAA,EAChB,cAAc;AAAA,EACd,aAAaA;AAAA,EACb,UAAU;AAAA,EACV,OAAOA;AAAA,EACP,aAAa;AAAA,EACb,WAAWA;AAAA,EACX,WAAW;AAAA,EACX,eAAeA;AAAA,EACf,aAAa;AAAA,EACb,UAAUA;AAAA,EACV,SAASA;AAAA,EACT,aAAaC;AAAA,EACb,aAAaD;AAAA,EACb,eAAe;AAAA,EACf,OAAOA;AAAA,EACP,cAAc;AAAA,EACd,YAAY;AAAA,EACZ,WAAWE;AAAA,EACX,MAAM;AAAA,EACN,aAAa;AAAA,EACb,OAAO;AAAA,EACP,UAAUC,EAA8C;AAAA,EACxD,UAAUA,EAA8C;AAAA,EACxD,eAAeA,EAA4C;AAAA,EAC3D,aAAaA,EAA4C;AAAA,EACzD,UAAUA,EAA2C;AAAA,EACrD,WAAWA,EAA2C;AAAA,EACtD,YAAYA,EAA4D;AAAA,EACxE,WAAWA,EAA0D;AAAA,EACrE,SAASA,EAAmE;AAC9E,CAAC,GASYC,IAAkBP,EAAW;AAAA,EACxC,OAAO;AAAA,EACP,aAAaG;AAAA,EACb,cAAc;AAAA,EACd,MAAM;AAAA,EACN,aAAa;AAAA,EACb,OAAOE;AAAA,EACP,WAAW;AAAA,EACX,YAAY;AAAA,EACZ,OAAO;AAAA,EACP,UAAUC,EAA2C;AAAA,EACrD,WAAWA,EAA2C;AACxD,CAAC,GAKYE,IAAkBR,EAAW;AAAA,EACxC,QAAQE,EAAW,QAAQ;AAAA,EAC3B,MAAM;AAAA,EACN,cAAc;AAAA,EACd,UAAU;AAAA,EACV,aAAa;AAAA,EACb,aAAaC;AAAA,EACb,WAAW;AAAA,EACX,YAAY;AAAA,EACZ,OAAO;AAAA,EACP,UAAUG,EAA2C;AAAA,EACrD,WAAWA,EAA2C;AACxD,CAAC;"}