(message)
| 838 | } |
| 839 | |
| 840 | export const removeDuplicateURL = (message) => { |
| 841 | const visitedURLs = [] |
| 842 | const newSourceDocuments = [] |
| 843 | |
| 844 | if (!message.sourceDocuments) return newSourceDocuments |
| 845 | |
| 846 | message.sourceDocuments.forEach((source) => { |
| 847 | if (source && source.metadata && source.metadata.source) { |
| 848 | if (isValidURL(source.metadata.source) && !visitedURLs.includes(source.metadata.source)) { |
| 849 | visitedURLs.push(source.metadata.source) |
| 850 | newSourceDocuments.push(source) |
| 851 | } else if (!isValidURL(source.metadata.source)) { |
| 852 | newSourceDocuments.push(source) |
| 853 | } |
| 854 | } else if (source) { |
| 855 | newSourceDocuments.push(source) |
| 856 | } |
| 857 | }) |
| 858 | return newSourceDocuments |
| 859 | } |
| 860 | |
| 861 | export const isValidURL = (url) => { |
| 862 | try { |
no test coverage detected