MCPcopy Index your code
hub / github.com/FlowiseAI/Flowise / upsertDocStore

Function upsertDocStore

packages/server/src/services/documentstore/index.ts:1689–1993  ·  view source on GitHub ↗
(
    appDataSource: DataSource,
    componentNodes: IComponentNodes,
    telemetry: Telemetry,
    storeId: string,
    data: IDocumentStoreUpsertData,
    files: Express.Multer.File[] = [],
    isRefreshExisting = false,
    orgId: string,
    workspaceId: string,
    subscriptionId: string,
    usageCacheManager: UsageCacheManager
)

Source from the content-addressed store, hash-verified

1687}
1688
1689const upsertDocStore = async (
1690 appDataSource: DataSource,
1691 componentNodes: IComponentNodes,
1692 telemetry: Telemetry,
1693 storeId: string,
1694 data: IDocumentStoreUpsertData,
1695 files: Express.Multer.File[] = [],
1696 isRefreshExisting = false,
1697 orgId: string,
1698 workspaceId: string,
1699 subscriptionId: string,
1700 usageCacheManager: UsageCacheManager
1701) => {
1702 const docId = data.docId
1703 let metadata = {}
1704 if (data.metadata) {
1705 try {
1706 metadata = typeof data.metadata === 'string' ? JSON.parse(data.metadata) : data.metadata
1707 } catch (error) {
1708 throw new InternalFlowiseError(StatusCodes.BAD_REQUEST, `Error: Invalid metadata`)
1709 }
1710 }
1711 const replaceExisting =
1712 typeof data.replaceExisting === 'string' ? (data.replaceExisting as string).toLowerCase() === 'true' : data.replaceExisting ?? false
1713 const createNewDocStore =
1714 typeof data.createNewDocStore === 'string'
1715 ? (data.createNewDocStore as string).toLowerCase() === 'true'
1716 : data.createNewDocStore ?? false
1717 const newLoader = typeof data.loader === 'string' ? JSON.parse(data.loader) : data.loader
1718 const newSplitter = typeof data.splitter === 'string' ? JSON.parse(data.splitter) : data.splitter
1719 const newVectorStore = typeof data.vectorStore === 'string' ? JSON.parse(data.vectorStore) : data.vectorStore
1720 const newEmbedding = typeof data.embedding === 'string' ? JSON.parse(data.embedding) : data.embedding
1721 const newRecordManager = typeof data.recordManager === 'string' ? JSON.parse(data.recordManager) : data.recordManager
1722
1723 const getComponentLabelFromName = (nodeName: string) => {
1724 const component = Object.values(componentNodes).find((node) => node.name === nodeName)
1725 return component?.label || ''
1726 }
1727
1728 let loaderName = ''
1729 let loaderId = ''
1730 let loaderConfig: ICommonObject = {}
1731
1732 let splitterName = ''
1733 let splitterId = ''
1734 let splitterConfig: ICommonObject = {}
1735
1736 let vectorStoreName = ''
1737 let vectorStoreConfig: ICommonObject = {}
1738
1739 let embeddingName = ''
1740 let embeddingConfig: ICommonObject = {}
1741
1742 let recordManagerName = ''
1743 let recordManagerConfig: ICommonObject = {}
1744
1745 // Step 1: Get existing loader
1746 if (docId) {

Callers 1

executeDocStoreUpsertFunction · 0.85

Calls 15

checkStorageFunction · 0.90
updateStorageUsageFunction · 0.90
getErrorMessageFunction · 0.90
getFileFromUploadFunction · 0.85
addArrayFilesToStorageFunction · 0.85
mapMimeTypeToInputFieldFunction · 0.85
mapExtToInputFieldFunction · 0.85
stringifyMethod · 0.80
saveProcessingLoaderFunction · 0.70

Tested by

no test coverage detected