| footer={null} | footer={null} | ||||
| mask={false} | mask={false} | ||||
| positionCenter={false} | positionCenter={false} | ||||
| panelClassname={cn('mb-2 mr-2 mt-[64px] !w-[420px] !max-w-[420px] justify-start rounded-2xl border-[0.5px] border-components-panel-border !bg-components-panel-bg !p-0 shadow-xl')} | |||||
| panelClassName={cn('mb-2 mr-2 mt-[64px] !w-[420px] !max-w-[420px] justify-start rounded-2xl border-[0.5px] border-components-panel-border !bg-components-panel-bg !p-0 shadow-xl')} | |||||
| > | > | ||||
| <> | <> | ||||
| {isLoading && <Loading type='app' />} | {isLoading && <Loading type='app' />} |
| <RiDeleteBinLine className='h-4 w-4' /> | <RiDeleteBinLine className='h-4 w-4' /> | ||||
| </div> | </div> | ||||
| </div> | </div> | ||||
| <Drawer isOpen={showSettingsModal} onClose={() => setShowSettingsModal(false)} footer={null} mask={isMobile} panelClassname='mt-16 mx-2 sm:mr-2 mb-3 !p-0 !max-w-[640px] rounded-xl'> | |||||
| <Drawer isOpen={showSettingsModal} onClose={() => setShowSettingsModal(false)} footer={null} mask={isMobile} panelClassName='mt-16 mx-2 sm:mr-2 mb-3 !p-0 !max-w-[640px] rounded-xl'> | |||||
| <SettingsModal | <SettingsModal | ||||
| currentDataset={config} | currentDataset={config} | ||||
| onCancel={() => setShowSettingsModal(false)} | onCancel={() => setShowSettingsModal(false)} |
| onClose={onCloseDrawer} | onClose={onCloseDrawer} | ||||
| mask={isMobile} | mask={isMobile} | ||||
| footer={null} | footer={null} | ||||
| panelClassname='mt-16 mx-2 sm:mr-2 mb-4 !p-0 !max-w-[640px] rounded-xl bg-components-panel-bg' | |||||
| panelClassName='mt-16 mx-2 sm:mr-2 mb-4 !p-0 !max-w-[640px] rounded-xl bg-components-panel-bg' | |||||
| > | > | ||||
| <DrawerContext.Provider value={{ | <DrawerContext.Provider value={{ | ||||
| onClose: onCloseDrawer, | onClose: onCloseDrawer, |
| onClose={onCloseDrawer} | onClose={onCloseDrawer} | ||||
| mask={isMobile} | mask={isMobile} | ||||
| footer={null} | footer={null} | ||||
| panelClassname='mt-16 mx-2 sm:mr-2 mb-3 !p-0 !max-w-[600px] rounded-xl border border-components-panel-border' | |||||
| panelClassName='mt-16 mx-2 sm:mr-2 mb-3 !p-0 !max-w-[600px] rounded-xl border border-components-panel-border' | |||||
| > | > | ||||
| <DetailPanel onClose={onCloseDrawer} runID={currentLog?.workflow_run.id || ''} /> | <DetailPanel onClose={onCloseDrawer} runID={currentLog?.workflow_run.id || ''} /> | ||||
| </Drawer> | </Drawer> |
| type Props = { | type Props = { | ||||
| isShow: boolean | isShow: boolean | ||||
| onHide: () => void | onHide: () => void | ||||
| dialogClassName?: string | |||||
| dialogBackdropClassName?: string | |||||
| panelClassName?: string | panelClassName?: string | ||||
| maxWidthClassName?: string | maxWidthClassName?: string | ||||
| contentClassName?: string | contentClassName?: string | ||||
| const DrawerPlus: FC<Props> = ({ | const DrawerPlus: FC<Props> = ({ | ||||
| isShow, | isShow, | ||||
| onHide, | onHide, | ||||
| dialogClassName = '', | |||||
| dialogBackdropClassName = '', | |||||
| panelClassName = '', | panelClassName = '', | ||||
| maxWidthClassName = '!max-w-[640px]', | maxWidthClassName = '!max-w-[640px]', | ||||
| height = 'calc(100vh - 72px)', | height = 'calc(100vh - 72px)', | ||||
| footer={null} | footer={null} | ||||
| mask={isMobile || isShowMask} | mask={isMobile || isShowMask} | ||||
| positionCenter={positionCenter} | positionCenter={positionCenter} | ||||
| panelClassname={cn('mx-2 mb-3 mt-16 rounded-xl !p-0 sm:mr-2', panelClassName, maxWidthClassName)} | |||||
| dialogClassName={dialogClassName} | |||||
| dialogBackdropClassName={dialogBackdropClassName} | |||||
| panelClassName={cn('mx-2 mb-3 mt-16 rounded-xl !p-0 sm:mr-2', panelClassName, maxWidthClassName)} | |||||
| > | > | ||||
| <div | <div | ||||
| className={cn(contentClassName, 'flex w-full flex-col rounded-xl border-[0.5px] border-divider-subtle bg-components-panel-bg shadow-xl')} | className={cn(contentClassName, 'flex w-full flex-col rounded-xl border-[0.5px] border-divider-subtle bg-components-panel-bg shadow-xl')} |
| export type IDrawerProps = { | export type IDrawerProps = { | ||||
| title?: string | title?: string | ||||
| description?: string | description?: string | ||||
| panelClassname?: string | |||||
| dialogClassName?: string | |||||
| dialogBackdropClassName?: string | |||||
| panelClassName?: string | |||||
| children: React.ReactNode | children: React.ReactNode | ||||
| footer?: React.ReactNode | footer?: React.ReactNode | ||||
| mask?: boolean | mask?: boolean | ||||
| export default function Drawer({ | export default function Drawer({ | ||||
| title = '', | title = '', | ||||
| description = '', | description = '', | ||||
| panelClassname = '', | |||||
| dialogClassName = '', | |||||
| dialogBackdropClassName = '', | |||||
| panelClassName = '', | |||||
| children, | children, | ||||
| footer, | footer, | ||||
| mask = true, | mask = true, | ||||
| unmount={unmount} | unmount={unmount} | ||||
| open={isOpen} | open={isOpen} | ||||
| onClose={() => !clickOutsideNotOpen && onClose()} | onClose={() => !clickOutsideNotOpen && onClose()} | ||||
| className="fixed inset-0 z-[80] overflow-y-auto" | |||||
| className={cn('fixed inset-0 z-[30] overflow-y-auto', dialogClassName)} | |||||
| > | > | ||||
| <div className={cn('flex h-screen w-screen justify-end', positionCenter && '!justify-center')}> | <div className={cn('flex h-screen w-screen justify-end', positionCenter && '!justify-center')}> | ||||
| {/* mask */} | {/* mask */} | ||||
| <DialogBackdrop | <DialogBackdrop | ||||
| className={cn('fixed inset-0 z-[90]', mask && 'bg-black bg-opacity-30')} | |||||
| className={cn('fixed inset-0 z-[40]', mask && 'bg-black/30', dialogBackdropClassName)} | |||||
| onClick={() => { | onClick={() => { | ||||
| !clickOutsideNotOpen && onClose() | !clickOutsideNotOpen && onClose() | ||||
| }} | }} | ||||
| /> | /> | ||||
| <div className={cn('relative z-[100] flex w-full max-w-sm flex-col justify-between overflow-hidden bg-components-panel-bg p-6 text-left align-middle shadow-xl', panelClassname)}> | |||||
| <div className={cn('relative z-[50] flex w-full max-w-sm flex-col justify-between overflow-hidden bg-components-panel-bg p-6 text-left align-middle shadow-xl', panelClassName)}> | |||||
| <> | <> | ||||
| <div className='flex justify-between'> | <div className='flex justify-between'> | ||||
| {title && <DialogTitle | {title && <DialogTitle |
| <Drawer | <Drawer | ||||
| isOpen={isOpen} | isOpen={isOpen} | ||||
| onClose={onClose} | onClose={onClose} | ||||
| panelClassname={classNames('!p-0 bg-components-panel-bg', | |||||
| panelClassName={classNames('!p-0 bg-components-panel-bg', | |||||
| fullScreen | fullScreen | ||||
| ? '!max-w-full !w-full' | ? '!max-w-full !w-full' | ||||
| : 'mt-16 mr-2 mb-2 !max-w-[560px] !w-[560px] border-[0.5px] border-components-panel-border rounded-xl', | : 'mt-16 mr-2 mb-2 !max-w-[560px] !w-[560px] border-[0.5px] border-components-panel-border rounded-xl', |
| } | } | ||||
| </div> | </div> | ||||
| } | } | ||||
| <FloatRightContainer showClose isOpen={showMetadata} onClose={() => setShowMetadata(false)} isMobile={isMobile} panelClassname='!justify-start' footer={null}> | |||||
| <FloatRightContainer showClose isOpen={showMetadata} onClose={() => setShowMetadata(false)} isMobile={isMobile} panelClassName='!justify-start' footer={null}> | |||||
| <Metadata | <Metadata | ||||
| className='mr-2 mt-3' | className='mr-2 mt-3' | ||||
| datasetId={datasetId} | datasetId={datasetId} |
| <RecordsEmpty /> | <RecordsEmpty /> | ||||
| )} | )} | ||||
| </div> | </div> | ||||
| <FloatRightContainer panelClassname='!justify-start !overflow-y-auto' showClose isMobile={isMobile} isOpen={isShowRightPanel} onClose={hideRightPanel} footer={null}> | |||||
| <FloatRightContainer panelClassName='!justify-start !overflow-y-auto' showClose isMobile={isMobile} isOpen={isShowRightPanel} onClose={hideRightPanel} footer={null}> | |||||
| <div className='flex flex-col pt-3'> | <div className='flex flex-col pt-3'> | ||||
| {/* {renderHitResults(generalResultData)} */} | {/* {renderHitResults(generalResultData)} */} | ||||
| {submitLoading | {submitLoading | ||||
| } | } | ||||
| </div> | </div> | ||||
| </FloatRightContainer> | </FloatRightContainer> | ||||
| <Drawer unmount={true} isOpen={isShowModifyRetrievalModal} onClose={() => setIsShowModifyRetrievalModal(false)} footer={null} mask={isMobile} panelClassname='mt-16 mx-2 sm:mr-2 mb-3 !p-0 !max-w-[640px] rounded-xl'> | |||||
| <Drawer unmount={true} isOpen={isShowModifyRetrievalModal} onClose={() => setIsShowModifyRetrievalModal(false)} footer={null} mask={isMobile} panelClassName='mt-16 mx-2 sm:mr-2 mb-3 !p-0 !max-w-[640px] rounded-xl'> | |||||
| <ModifyRetrievalModal | <ModifyRetrievalModal | ||||
| indexMethod={currentDataset?.indexing_technique || ''} | indexMethod={currentDataset?.indexing_technique || ''} | ||||
| value={retrievalConfig} | value={retrievalConfig} |
| showClose | showClose | ||||
| title={t('dataset.metadata.metadata')} | title={t('dataset.metadata.metadata')} | ||||
| footer={null} | footer={null} | ||||
| panelClassname='px-4 block !max-w-[420px] my-2 rounded-l-2xl' | |||||
| panelClassName='px-4 block !max-w-[420px] my-2 rounded-l-2xl' | |||||
| > | > | ||||
| <div className='h-full overflow-y-auto'> | <div className='h-full overflow-y-auto'> | ||||
| <div className='system-sm-regular text-text-tertiary'>{t(`${i18nPrefix}.description`)}</div> | <div className='system-sm-regular text-text-tertiary'>{t(`${i18nPrefix}.description`)}</div> |
| footer={null} | footer={null} | ||||
| mask | mask | ||||
| positionCenter={false} | positionCenter={false} | ||||
| panelClassname={cn('mb-2 mr-2 mt-[64px] !w-[420px] !max-w-[420px] justify-start rounded-2xl border-[0.5px] border-components-panel-border !bg-components-panel-bg !p-0 shadow-xl')} | |||||
| panelClassName={cn('mb-2 mr-2 mt-[64px] !w-[420px] !max-w-[420px] justify-start rounded-2xl border-[0.5px] border-components-panel-border !bg-components-panel-bg !p-0 shadow-xl')} | |||||
| > | > | ||||
| <> | <> | ||||
| <div className='p-4 pb-2'> | <div className='p-4 pb-2'> |
| footer={null} | footer={null} | ||||
| mask={false} | mask={false} | ||||
| positionCenter={false} | positionCenter={false} | ||||
| panelClassname={cn('mb-2 mr-2 mt-[64px] !w-[420px] !max-w-[420px] justify-start rounded-2xl border-[0.5px] border-components-panel-border !bg-components-panel-bg !p-0 shadow-xl')} | |||||
| panelClassName={cn('mb-2 mr-2 mt-[64px] !w-[420px] !max-w-[420px] justify-start rounded-2xl border-[0.5px] border-components-panel-border !bg-components-panel-bg !p-0 shadow-xl')} | |||||
| > | > | ||||
| {detail && ( | {detail && ( | ||||
| <> | <> |
| footer={null} | footer={null} | ||||
| mask={false} | mask={false} | ||||
| positionCenter={false} | positionCenter={false} | ||||
| panelClassname={cn('mb-2 mr-2 mt-[64px] !w-[420px] !max-w-[420px] justify-start rounded-2xl border-[0.5px] border-components-panel-border !bg-components-panel-bg !p-0 shadow-xl')} | |||||
| panelClassName={cn('mb-2 mr-2 mt-[64px] !w-[420px] !max-w-[420px] justify-start rounded-2xl border-[0.5px] border-components-panel-border !bg-components-panel-bg !p-0 shadow-xl')} | |||||
| > | > | ||||
| <> | <> | ||||
| {/* header */} | {/* header */} |
| clickOutsideNotOpen | clickOutsideNotOpen | ||||
| onClose={onHide} | onClose={onHide} | ||||
| footer={null} | footer={null} | ||||
| panelClassname={cn('mx-2 mb-3 mt-16 rounded-xl !p-0 sm:mr-2', 'mt-2 !w-[640px]', '!max-w-[640px]')} | |||||
| panelClassName={cn('mx-2 mb-3 mt-16 rounded-xl !p-0 sm:mr-2', 'mt-2 !w-[640px]', '!max-w-[640px]')} | |||||
| > | > | ||||
| <div | <div | ||||
| className='flex w-full rounded-xl border-[0.5px] border-gray-200 bg-white shadow-xl' | className='flex w-full rounded-xl border-[0.5px] border-gray-200 bg-white shadow-xl' |
| positionCenter={positionCenter} | positionCenter={positionCenter} | ||||
| onHide={onHide} | onHide={onHide} | ||||
| title={t('tools.createTool.authMethod.title')!} | title={t('tools.createTool.authMethod.title')!} | ||||
| panelClassName='mt-2 !w-[520px] h-fit' | |||||
| dialogClassName='z-[60]' | |||||
| dialogBackdropClassName='z-[70]' | |||||
| panelClassName='mt-2 !w-[520px] h-fit z-[80]' | |||||
| maxWidthClassName='!max-w-[520px]' | maxWidthClassName='!max-w-[520px]' | ||||
| height={'fit-content'} | height={'fit-content'} | ||||
| headerClassName='!border-b-divider-regular' | headerClassName='!border-b-divider-regular' |
| footer={null} | footer={null} | ||||
| mask={false} | mask={false} | ||||
| positionCenter={false} | positionCenter={false} | ||||
| panelClassname={cn('mb-2 mr-2 mt-[64px] !w-[420px] !max-w-[420px] justify-start rounded-2xl border-[0.5px] border-components-panel-border !bg-components-panel-bg !p-0 shadow-xl')} | |||||
| panelClassName={cn('mb-2 mr-2 mt-[64px] !w-[420px] !max-w-[420px] justify-start rounded-2xl border-[0.5px] border-components-panel-border !bg-components-panel-bg !p-0 shadow-xl')} | |||||
| > | > | ||||
| <div className='p-4'> | <div className='p-4'> | ||||
| <div className='mb-3 flex'> | <div className='mb-3 flex'> |
| } | } | ||||
| {isShowSettingsModal && ( | {isShowSettingsModal && ( | ||||
| <Drawer isOpen={isShowSettingsModal} onClose={hideSettingsModal} footer={null} mask={isMobile} panelClassname='mt-16 mx-2 sm:mr-2 mb-3 !p-0 !max-w-[640px] rounded-xl'> | |||||
| <Drawer isOpen={isShowSettingsModal} onClose={hideSettingsModal} footer={null} mask={isMobile} panelClassName='mt-16 mx-2 sm:mr-2 mb-3 !p-0 !max-w-[640px] rounded-xl'> | |||||
| <SettingsModal | <SettingsModal | ||||
| currentDataset={payload} | currentDataset={payload} | ||||
| onCancel={hideSettingsModal} | onCancel={hideSettingsModal} |