UNPKG

@atlaskit/editor-plugin-card

Version:

Card plugin for @atlaskit/editor-core

44 lines 1.28 kB
/** * @jsxRuntime classic * @jsx jsx */ import { useEffect, useState } from 'react'; import { DEFAULT_GET_DATASOURCE_DATA_PAGE_SIZE, useDatasourceClientExtension } from '@atlaskit/link-client-extension'; export const useFetchDatasourceDataInfo = ({ datasourceId, parameters, visibleColumnKeys }) => { const [extensionKey, setExtensionKey] = useState(undefined); const { getDatasourceData } = useDatasourceClientExtension(); useEffect(() => { const fetchDatasource = async () => { try { if (!datasourceId || !parameters || !visibleColumnKeys) { return; } const datasourceDataRequest = { parameters, pageSize: DEFAULT_GET_DATASOURCE_DATA_PAGE_SIZE, pageCursor: undefined, fields: visibleColumnKeys, includeSchema: true }; const { meta } = await getDatasourceData(datasourceId, datasourceDataRequest, false); setExtensionKey(meta.extensionKey); } catch (e) { // eslint-disable-next-line no-console console.error(e); setExtensionKey(undefined); } }; void fetchDatasource(); }, [getDatasourceData, visibleColumnKeys, parameters, datasourceId]); return { extensionKey }; };