Refactor timeline filtering code
This commit is contained in:
		
							parent
							
								
									1c99164bcb
								
							
						
					
					
						commit
						a96bc45649
					
				
					 2 changed files with 7 additions and 8 deletions
				
			
		|  | @ -10,6 +10,12 @@ const makeEmojiMap = record => record.emojis.reduce((obj, emoji) => { | ||||||
|   return obj; |   return obj; | ||||||
| }, {}); | }, {}); | ||||||
| 
 | 
 | ||||||
|  | export function searchTextFromRawStatus (status) { | ||||||
|  |   const spoilerText   = status.spoiler_text || ''; | ||||||
|  |   const searchContent = ([spoilerText, status.content].concat((status.poll && status.poll.options) ? status.poll.options.map(option => option.title) : [])).join('\n\n').replace(/<br\s*\/?>/g, '\n').replace(/<\/p><p>/g, '\n\n'); | ||||||
|  |   return domParser.parseFromString(searchContent, 'text/html').documentElement.textContent; | ||||||
|  | } | ||||||
|  | 
 | ||||||
| export function normalizeAccount(account) { | export function normalizeAccount(account) { | ||||||
|   account = { ...account }; |   account = { ...account }; | ||||||
| 
 | 
 | ||||||
|  |  | ||||||
|  | @ -4,8 +4,7 @@ import { Map as ImmutableMap, List as ImmutableList } from 'immutable'; | ||||||
| import compareId from 'flavours/glitch/util/compare_id'; | import compareId from 'flavours/glitch/util/compare_id'; | ||||||
| import { me, usePendingItems as preferPendingItems } from 'flavours/glitch/util/initial_state'; | import { me, usePendingItems as preferPendingItems } from 'flavours/glitch/util/initial_state'; | ||||||
| import { getFiltersRegex } from 'flavours/glitch/selectors'; | import { getFiltersRegex } from 'flavours/glitch/selectors'; | ||||||
| 
 | import { searchTextFromRawStatus } from 'flavours/glitch/actions/importer/normalizer'; | ||||||
| const domParser = new DOMParser(); |  | ||||||
| 
 | 
 | ||||||
| export const TIMELINE_UPDATE  = 'TIMELINE_UPDATE'; | export const TIMELINE_UPDATE  = 'TIMELINE_UPDATE'; | ||||||
| export const TIMELINE_DELETE  = 'TIMELINE_DELETE'; | export const TIMELINE_DELETE  = 'TIMELINE_DELETE'; | ||||||
|  | @ -20,12 +19,6 @@ export const TIMELINE_LOAD_PENDING = 'TIMELINE_LOAD_PENDING'; | ||||||
| export const TIMELINE_DISCONNECT   = 'TIMELINE_DISCONNECT'; | export const TIMELINE_DISCONNECT   = 'TIMELINE_DISCONNECT'; | ||||||
| export const TIMELINE_CONNECT      = 'TIMELINE_CONNECT'; | export const TIMELINE_CONNECT      = 'TIMELINE_CONNECT'; | ||||||
| 
 | 
 | ||||||
| const searchTextFromRawStatus = (status) => { |  | ||||||
|   const spoilerText   = status.spoiler_text || ''; |  | ||||||
|   const searchContent = ([spoilerText, status.content].concat((status.poll && status.poll.options) ? status.poll.options.map(option => option.title) : [])).join('\n\n').replace(/<br\s*\/?>/g, '\n').replace(/<\/p><p>/g, '\n\n'); |  | ||||||
|   return domParser.parseFromString(searchContent, 'text/html').documentElement.textContent; |  | ||||||
| } |  | ||||||
| 
 |  | ||||||
| export const loadPending = timeline => ({ | export const loadPending = timeline => ({ | ||||||
|   type: TIMELINE_LOAD_PENDING, |   type: TIMELINE_LOAD_PENDING, | ||||||
|   timeline, |   timeline, | ||||||
|  |  | ||||||
		Loading…
	
		Reference in a new issue