{"version":3,"file":"useDataSource2.mjs","sources":["../../../../../../../../packages/components/table-pro/src/hooks/useDataSource.ts"],"sourcesContent":["import { onMounted, unref } from 'vue'\nimport { isBoolean, isFunction } from '@tav-ui/utils/is'\nimport { useTimeoutFn } from '@tav-ui/hooks/core/useTimeout'\nimport { PAGE_SIZE } from '../const'\nimport type { ComputedRef, Ref } from 'vue'\nimport type { TableProInstance, TableProProps } from '../types'\n\nexport function useDataSource(\n  tablePropsRef: ComputedRef<TableProProps>,\n  // api: TableProProps['api'],\n  // immediate: TableProProps['immediate'],\n  // pagerConfig: TableProProps['pagerConfig'],\n  tableRef: Ref<TableProInstance | null>\n) {\n  const { api, immediate, pagerConfig } = unref(tablePropsRef)\n  const hasApi = api && isFunction(api)\n  if (!hasApi) return\n\n  const params = {\n    filter: {},\n    model: {},\n  }\n\n  if (isBoolean(pagerConfig.enabled) && !pagerConfig.enabled) {\n    Reflect.deleteProperty(params.model, 'page')\n    Reflect.deleteProperty(params.model, 'limit')\n  } else {\n    //@ts-ignore\n    params.model['page'] = 1\n    //@ts-ignore\n    params.model['limit'] = PAGE_SIZE\n  }\n\n  onMounted(() => {\n    immediate &&\n      useTimeoutFn(() => {\n        unref(tableRef.value)?.commitProxy('query', { ...params })\n      }, 16)\n  })\n}\n"],"names":[],"mappings":";;;;;AAIO,SAAS,aAAa,CAAC,aAAa,EAAE,QAAQ,EAAE;AACvD,EAAE,MAAM,EAAE,GAAG,EAAE,SAAS,EAAE,WAAW,EAAE,GAAG,KAAK,CAAC,aAAa,CAAC,CAAC;AAC/D,EAAE,MAAM,MAAM,GAAG,GAAG,IAAI,UAAU,CAAC,GAAG,CAAC,CAAC;AACxC,EAAE,IAAI,CAAC,MAAM;AACb,IAAI,OAAO;AACX,EAAE,MAAM,MAAM,GAAG;AACjB,IAAI,MAAM,EAAE,EAAE;AACd,IAAI,KAAK,EAAE,EAAE;AACb,GAAG,CAAC;AACJ,EAAE,IAAI,SAAS,CAAC,WAAW,CAAC,OAAO,CAAC,IAAI,CAAC,WAAW,CAAC,OAAO,EAAE;AAC9D,IAAI,OAAO,CAAC,cAAc,CAAC,MAAM,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;AACjD,IAAI,OAAO,CAAC,cAAc,CAAC,MAAM,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;AAClD,GAAG,MAAM;AACT,IAAI,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;AAC7B,IAAI,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,GAAG,SAAS,CAAC;AACtC,GAAG;AACH,EAAE,SAAS,CAAC,MAAM;AAClB,IAAI,SAAS,IAAI,YAAY,CAAC,MAAM;AACpC,MAAM,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,WAAW,CAAC,OAAO,EAAE,EAAE,GAAG,MAAM,EAAE,CAAC,CAAC;AACjE,KAAK,EAAE,EAAE,CAAC,CAAC;AACX,GAAG,CAAC,CAAC;AACL;;;;"}