1- import { Suspense , lazy , useEffect , useMemo , useState } from 'react'
2- import { Tab } from '@headlessui/react'
1+ import { Fragment , Suspense , lazy , useEffect , useMemo , useState } from 'react'
2+ import { TabGroup , TabPanel , TabPanels } from '@headlessui/react'
33import clsx from 'clsx'
44import { includes , isArrayEmpty , isFalse , isNotNil } from '~/utils'
55import { type EditorTab , useStoreEditor } from '~/context/editor'
@@ -155,7 +155,8 @@ export default function EditorPreview({
155155 < h3 className = "text-md" > No Data To Preview</ h3 >
156156 </ div >
157157 ) : (
158- < Tab . Group
158+ < TabGroup
159+ as = { Fragment }
159160 key = { tab . id }
160161 onChange = { setActiveTabIndex }
161162 selectedIndex = { activeTabIndex }
@@ -186,20 +187,20 @@ export default function EditorPreview({
186187 </ Button >
187188 </ div >
188189 </ TabList >
189- < Tab . Panels className = "h-full w-full overflow-hidden" >
190+ < TabPanels className = "h-full w-full overflow-hidden" >
190191 { isNotNil ( previewTable ) && (
191- < Tab . Panel
192+ < TabPanel
192193 unmount = { false }
193194 className = { clsx (
194195 'w-full h-full pt-4 relative px-2' ,
195196 'ring-white ring-opacity-60 ring-offset-2 ring-offset-blue-400 focus:outline-none focus:ring-2' ,
196197 ) }
197198 >
198199 < Table data = { previewTable } />
199- </ Tab . Panel >
200+ </ TabPanel >
200201 ) }
201202 { isNotNil ( previewQuery ) && tab . file . isRemote && (
202- < Tab . Panel
203+ < TabPanel
203204 unmount = { false }
204205 className = "w-full h-full ring-white ring-opacity-60 ring-offset-2 ring-offset-blue-400 focus:outline-none focus:ring-2 p-2"
205206 >
@@ -211,10 +212,11 @@ export default function EditorPreview({
211212 className = "text-xs"
212213 />
213214 </ div >
214- </ Tab . Panel >
215+ </ TabPanel >
215216 ) }
216217 { showLineage && (
217- < Tab . Panel
218+ < TabPanel
219+ as = "div"
218220 unmount = { false }
219221 className = { clsx (
220222 'w-full h-full ring-white ring-opacity-60 ring-offset-2 ring-offset-blue-400 focus:outline-none focus:ring-2' ,
@@ -227,10 +229,11 @@ export default function EditorPreview({
227229 >
228230 < ModelLineage model = { model } />
229231 </ Suspense >
230- </ Tab . Panel >
232+ </ TabPanel >
231233 ) }
232234 { isNotNil ( previewDiff ?. row_diff ) && (
233- < Tab . Panel
235+ < TabPanel
236+ as = "div"
234237 unmount = { false }
235238 className = { clsx (
236239 'w-full h-full ring-white ring-opacity-60 ring-offset-2 ring-offset-blue-400 focus:outline-none focus:ring-2 py-2' ,
@@ -240,10 +243,10 @@ export default function EditorPreview({
240243 key = { tab . id }
241244 diff = { previewDiff }
242245 />
243- </ Tab . Panel >
246+ </ TabPanel >
244247 ) }
245248 { showErrors && (
246- < Tab . Panel
249+ < TabPanel
247250 unmount = { false }
248251 className = "w-full h-full ring-white ring-opacity-60 ring-offset-2 ring-offset-blue-400 focus:outline-none focus:ring-2 py-2"
249252 >
@@ -262,10 +265,10 @@ export default function EditorPreview({
262265 </ li >
263266 ) ) }
264267 </ ul >
265- </ Tab . Panel >
268+ </ TabPanel >
266269 ) }
267- </ Tab . Panels >
268- </ Tab . Group >
270+ </ TabPanels >
271+ </ TabGroup >
269272 ) }
270273 </ div >
271274 )
0 commit comments