(loader: IDocumentStoreLoader, isGetFileNameOnly = false)
| 185 | } |
| 186 | |
| 187 | export const addLoaderSource = (loader: IDocumentStoreLoader, isGetFileNameOnly = false) => { |
| 188 | let source = 'None' |
| 189 | |
| 190 | const handleUnstructuredFileLoader = (config: any, isGetFileNameOnly: boolean): string => { |
| 191 | if (config.fileObject) { |
| 192 | return isGetFileNameOnly ? getFileName(config.fileObject) : config.fileObject.replace('FILE-STORAGE::', '') |
| 193 | } |
| 194 | return config.filePath || 'None' |
| 195 | } |
| 196 | |
| 197 | switch (loader.loaderId) { |
| 198 | case 'pdfFile': |
| 199 | case 'docxFile': |
| 200 | case 'jsonFile': |
| 201 | case 'csvFile': |
| 202 | case 'file': |
| 203 | case 'jsonlinesFile': |
| 204 | case 'txtFile': |
| 205 | source = isGetFileNameOnly |
| 206 | ? getFileName(loader.loaderConfig?.[loader.loaderId]) |
| 207 | : loader.loaderConfig?.[loader.loaderId]?.replace('FILE-STORAGE::', '') || 'None' |
| 208 | break |
| 209 | case 'apiLoader': |
| 210 | source = loader.loaderConfig?.url + ' (' + loader.loaderConfig?.method + ')' |
| 211 | break |
| 212 | case 'cheerioWebScraper': |
| 213 | case 'playwrightWebScraper': |
| 214 | case 'puppeteerWebScraper': |
| 215 | source = loader.loaderConfig?.url || 'None' |
| 216 | break |
| 217 | case 'unstructuredFileLoader': |
| 218 | source = handleUnstructuredFileLoader(loader.loaderConfig || {}, isGetFileNameOnly) |
| 219 | break |
| 220 | default: |
| 221 | source = 'None' |
| 222 | break |
| 223 | } |
| 224 | |
| 225 | return source |
| 226 | } |
| 227 | |
| 228 | export class DocumentStoreDTO { |
| 229 | id: string |
no test coverage detected