|  | @@ -341,6 +341,7 @@ Meteor.publish('globalSearch', function(sessionId, queryParams) {
 | 
	
		
			
				|  |  |          }
 | 
	
		
			
				|  |  |        });
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  | +      // eslint-disable-next-line no-prototype-builtins
 | 
	
		
			
				|  |  |        if (!selector.swimlaneId.hasOwnProperty('swimlaneId')) {
 | 
	
		
			
				|  |  |          selector.swimlaneId = { $in: [] };
 | 
	
		
			
				|  |  |        }
 | 
	
	
		
			
				|  | @@ -362,6 +363,7 @@ Meteor.publish('globalSearch', function(sessionId, queryParams) {
 | 
	
		
			
				|  |  |          }
 | 
	
		
			
				|  |  |        });
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  | +      // eslint-disable-next-line no-prototype-builtins
 | 
	
		
			
				|  |  |        if (!selector.hasOwnProperty('listId')) {
 | 
	
		
			
				|  |  |          selector.listId = { $in: [] };
 | 
	
		
			
				|  |  |        }
 | 
	
	
		
			
				|  | @@ -507,13 +509,23 @@ Meteor.publish('globalSearch', function(sessionId, queryParams) {
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |      if (queryParams.text) {
 | 
	
		
			
				|  |  |        const regex = new RegExp(escapeForRegex(queryParams.text), 'i');
 | 
	
		
			
				|  |  | -      const items = ChecklistItems.find({ title: regex });
 | 
	
		
			
				|  |  | -      const checklists = Checklists.find({
 | 
	
		
			
				|  |  | -        $or: [
 | 
	
		
			
				|  |  | -          { title: regex },
 | 
	
		
			
				|  |  | -          { _id: { $in: items.map(item => item.checklistId) } },
 | 
	
		
			
				|  |  | -        ],
 | 
	
		
			
				|  |  | -      });
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +      const items = ChecklistItems.find(
 | 
	
		
			
				|  |  | +        { title: regex },
 | 
	
		
			
				|  |  | +        { fields: { cardId: 1 } },
 | 
	
		
			
				|  |  | +      );
 | 
	
		
			
				|  |  | +      const checklists = Checklists.find(
 | 
	
		
			
				|  |  | +        {
 | 
	
		
			
				|  |  | +          $or: [
 | 
	
		
			
				|  |  | +            { title: regex },
 | 
	
		
			
				|  |  | +            { _id: { $in: items.map(item => item.checklistId) } },
 | 
	
		
			
				|  |  | +          ],
 | 
	
		
			
				|  |  | +        },
 | 
	
		
			
				|  |  | +        { fields: { cardId: 1 } },
 | 
	
		
			
				|  |  | +      );
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +      const attachments = Attachments.find({ 'original.name': regex });
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  |        selector.$and.push({
 | 
	
		
			
				|  |  |          $or: [
 | 
	
		
			
				|  |  |            { title: regex },
 | 
	
	
		
			
				|  | @@ -527,6 +539,7 @@ Meteor.publish('globalSearch', function(sessionId, queryParams) {
 | 
	
		
			
				|  |  |              },
 | 
	
		
			
				|  |  |            },
 | 
	
		
			
				|  |  |            { _id: { $in: checklists.map(list => list.cardId) } },
 | 
	
		
			
				|  |  | +          { _id: { $in: attachments.map(attach => attach.cardId) } },
 | 
	
		
			
				|  |  |          ],
 | 
	
		
			
				|  |  |        });
 | 
	
		
			
				|  |  |      }
 |