| } : { | } : { | ||||
| mainAxis: 4, | mainAxis: 4, | ||||
| }} | }} | ||||
| customContainer={document.body} | |||||
| > | > | ||||
| <PortalToFollowElemTrigger onClick={handleTrigger}> | <PortalToFollowElemTrigger onClick={handleTrigger}> | ||||
| <ActionButton className={cn(expand ? 'size-8 rounded-lg' : 'size-6 rounded-md')}> | <ActionButton className={cn(expand ? 'size-8 rounded-lg' : 'size-6 rounded-md')}> |
| offset?: number | OffsetOptions | offset?: number | OffsetOptions | ||||
| onOpenChange?: (open: boolean) => void | onOpenChange?: (open: boolean) => void | ||||
| triggerPopupSameWidth?: boolean | triggerPopupSameWidth?: boolean | ||||
| customContainer?: HTMLElement | null | |||||
| } | } | ||||
| export function usePortalToFollowElem({ | export function usePortalToFollowElem({ | ||||
| offset: offsetValue = 0, | offset: offsetValue = 0, | ||||
| onOpenChange: setControlledOpen, | onOpenChange: setControlledOpen, | ||||
| triggerPopupSameWidth, | triggerPopupSameWidth, | ||||
| customContainer = null, | |||||
| }: PortalToFollowElemOptions = {}) { | }: PortalToFollowElemOptions = {}) { | ||||
| const container = document.getElementById('workflow-container') || document.body | |||||
| const container = customContainer || document.getElementById('workflow-container') || document.body | |||||
| const [localOpen, setLocalOpen] = useState(false) | const [localOpen, setLocalOpen] = useState(false) | ||||
| const open = controlledOpen ?? localOpen | const open = controlledOpen ?? localOpen | ||||
| const handleOpenChange = useCallback((newOpen: boolean) => { | const handleOpenChange = useCallback((newOpen: boolean) => { |
| onClick={onClickExport} | onClick={onClickExport} | ||||
| > | > | ||||
| <span className='system-md-regular px-1 text-text-secondary'> | <span className='system-md-regular px-1 text-text-secondary'> | ||||
| {t('datasetPipeline.operations.exportDSL')} | |||||
| {t('datasetPipeline.operations.exportPipeline')} | |||||
| </span> | </span> | ||||
| </div> | </div> | ||||
| </div> | </div> |
| choose: 'Choose', | choose: 'Choose', | ||||
| details: 'Details', | details: 'Details', | ||||
| editInfo: 'Edit info', | editInfo: 'Edit info', | ||||
| exportDSL: 'Export DSL', | |||||
| useTemplate: 'Use this Knowledge Pipeline', | useTemplate: 'Use this Knowledge Pipeline', | ||||
| backToDataSource: 'Back to Data Source', | backToDataSource: 'Back to Data Source', | ||||
| process: 'Process', | process: 'Process', |
| choose: '选择', | choose: '选择', | ||||
| details: '详情', | details: '详情', | ||||
| editInfo: '编辑信息', | editInfo: '编辑信息', | ||||
| exportDSL: '导出 DSL', | |||||
| useTemplate: '使用此知识流水线', | useTemplate: '使用此知识流水线', | ||||
| backToDataSource: '返回数据源', | backToDataSource: '返回数据源', | ||||
| process: '处理', | process: '处理', |