Add missing ActivityPub representations (#4230)
- Follow, undo follow - Accept follow, reject follow - Like, undo like - Block, undo block - Delete (note) - Update (actor)
This commit is contained in:
		
					parent
					
						
							
								902c5cf7ca
							
						
					
				
			
			
				commit
				
					
						d4b097a88c
					
				
			
		
					 10 changed files with 162 additions and 0 deletions
				
			
		
							
								
								
									
										15
									
								
								app/serializers/activitypub/accept_follow_serializer.rb
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										15
									
								
								app/serializers/activitypub/accept_follow_serializer.rb
									
										
									
									
									
										Normal file
									
								
							|  | @ -0,0 +1,15 @@ | |||
| # frozen_string_literal: true | ||||
| 
 | ||||
| class ActivityPub::AcceptFollowSerializer < ActiveModel::Serializer | ||||
|   attributes :type, :actor | ||||
| 
 | ||||
|   has_one :object, serializer: ActivityPub::FollowSerializer | ||||
| 
 | ||||
|   def type | ||||
|     'Accept' | ||||
|   end | ||||
| 
 | ||||
|   def actor | ||||
|     ActivityPub::TagManager.instance.uri_for(object.target_account) | ||||
|   end | ||||
| end | ||||
							
								
								
									
										18
									
								
								app/serializers/activitypub/block_serializer.rb
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										18
									
								
								app/serializers/activitypub/block_serializer.rb
									
										
									
									
									
										Normal file
									
								
							|  | @ -0,0 +1,18 @@ | |||
| # frozen_string_literal: true | ||||
| 
 | ||||
| class ActivityPub::BlockSerializer < ActiveModel::Serializer | ||||
|   attributes :type, :actor | ||||
|   attribute :virtual_object, key: :object | ||||
| 
 | ||||
|   def type | ||||
|     'Block' | ||||
|   end | ||||
| 
 | ||||
|   def actor | ||||
|     ActivityPub::TagManager.instance.uri_for(object.account) | ||||
|   end | ||||
| 
 | ||||
|   def virtual_object | ||||
|     ActivityPub::TagManager.instance.uri_for(object.target_account) | ||||
|   end | ||||
| end | ||||
							
								
								
									
										18
									
								
								app/serializers/activitypub/delete_serializer.rb
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										18
									
								
								app/serializers/activitypub/delete_serializer.rb
									
										
									
									
									
										Normal file
									
								
							|  | @ -0,0 +1,18 @@ | |||
| # frozen_string_literal: true | ||||
| 
 | ||||
| class ActivityPub::DeleteSerializer < ActiveModel::Serializer | ||||
|   attributes :type, :actor | ||||
|   attribute :virtual_object, key: :object | ||||
| 
 | ||||
|   def type | ||||
|     'Delete' | ||||
|   end | ||||
| 
 | ||||
|   def actor | ||||
|     ActivityPub::TagManager.instance.uri_for(object.account) | ||||
|   end | ||||
| 
 | ||||
|   def virtual_object | ||||
|     ActivityPub::TagManager.instance.uri_for(object) | ||||
|   end | ||||
| end | ||||
							
								
								
									
										18
									
								
								app/serializers/activitypub/follow_serializer.rb
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										18
									
								
								app/serializers/activitypub/follow_serializer.rb
									
										
									
									
									
										Normal file
									
								
							|  | @ -0,0 +1,18 @@ | |||
| # frozen_string_literal: true | ||||
| 
 | ||||
| class ActivityPub::FollowSerializer < ActiveModel::Serializer | ||||
|   attributes :type, :actor | ||||
|   attribute :virtual_object, key: :object | ||||
| 
 | ||||
|   def type | ||||
|     'Follow' | ||||
|   end | ||||
| 
 | ||||
|   def actor | ||||
|     ActivityPub::TagManager.instance.uri_for(object.account) | ||||
|   end | ||||
| 
 | ||||
|   def virtual_object | ||||
|     ActivityPub::TagManager.instance.uri_for(object.target_account) | ||||
|   end | ||||
| end | ||||
							
								
								
									
										18
									
								
								app/serializers/activitypub/like_serializer.rb
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										18
									
								
								app/serializers/activitypub/like_serializer.rb
									
										
									
									
									
										Normal file
									
								
							|  | @ -0,0 +1,18 @@ | |||
| # frozen_string_literal: true | ||||
| 
 | ||||
| class ActivityPub::LikeSerializer < ActiveModel::Serializer | ||||
|   attributes :type, :actor | ||||
|   attribute :virtual_object, key: :object | ||||
| 
 | ||||
|   def type | ||||
|     'Like' | ||||
|   end | ||||
| 
 | ||||
|   def actor | ||||
|     ActivityPub::TagManager.instance.uri_for(object.account) | ||||
|   end | ||||
| 
 | ||||
|   def virtual_object | ||||
|     ActivityPub::TagManager.instance.uri_for(object.status) | ||||
|   end | ||||
| end | ||||
							
								
								
									
										15
									
								
								app/serializers/activitypub/reject_follow_serializer.rb
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										15
									
								
								app/serializers/activitypub/reject_follow_serializer.rb
									
										
									
									
									
										Normal file
									
								
							|  | @ -0,0 +1,15 @@ | |||
| # frozen_string_literal: true | ||||
| 
 | ||||
| class ActivityPub::RejectFollowSerializer < ActiveModel::Serializer | ||||
|   attributes :type, :actor | ||||
| 
 | ||||
|   has_one :object, serializer: ActivityPub::FollowSerializer | ||||
| 
 | ||||
|   def type | ||||
|     'Reject' | ||||
|   end | ||||
| 
 | ||||
|   def actor | ||||
|     ActivityPub::TagManager.instance.uri_for(object.target_account) | ||||
|   end | ||||
| end | ||||
							
								
								
									
										15
									
								
								app/serializers/activitypub/undo_block_serializer.rb
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										15
									
								
								app/serializers/activitypub/undo_block_serializer.rb
									
										
									
									
									
										Normal file
									
								
							|  | @ -0,0 +1,15 @@ | |||
| # frozen_string_literal: true | ||||
| 
 | ||||
| class ActivityPub::UndoBlockSerializer < ActiveModel::Serializer | ||||
|   attributes :type, :actor | ||||
| 
 | ||||
|   has_one :object, serializer: ActivityPub::BlockSerializer | ||||
| 
 | ||||
|   def type | ||||
|     'Undo' | ||||
|   end | ||||
| 
 | ||||
|   def actor | ||||
|     ActivityPub::TagManager.instance.uri_for(object.account) | ||||
|   end | ||||
| end | ||||
							
								
								
									
										15
									
								
								app/serializers/activitypub/undo_follow_serializer.rb
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										15
									
								
								app/serializers/activitypub/undo_follow_serializer.rb
									
										
									
									
									
										Normal file
									
								
							|  | @ -0,0 +1,15 @@ | |||
| # frozen_string_literal: true | ||||
| 
 | ||||
| class ActivityPub::UndoFollowSerializer < ActiveModel::Serializer | ||||
|   attributes :type, :actor | ||||
| 
 | ||||
|   has_one :object, serializer: ActivityPub::FollowSerializer | ||||
| 
 | ||||
|   def type | ||||
|     'Undo' | ||||
|   end | ||||
| 
 | ||||
|   def actor | ||||
|     ActivityPub::TagManager.instance.uri_for(object.account) | ||||
|   end | ||||
| end | ||||
							
								
								
									
										15
									
								
								app/serializers/activitypub/undo_like_serializer.rb
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										15
									
								
								app/serializers/activitypub/undo_like_serializer.rb
									
										
									
									
									
										Normal file
									
								
							|  | @ -0,0 +1,15 @@ | |||
| # frozen_string_literal: true | ||||
| 
 | ||||
| class ActivityPub::UndoLikeSerializer < ActiveModel::Serializer | ||||
|   attributes :type, :actor | ||||
| 
 | ||||
|   has_one :object, serializer: ActivityPub::LikeSerializer | ||||
| 
 | ||||
|   def type | ||||
|     'Undo' | ||||
|   end | ||||
| 
 | ||||
|   def actor | ||||
|     ActivityPub::TagManager.instance.uri_for(object.account) | ||||
|   end | ||||
| end | ||||
							
								
								
									
										15
									
								
								app/serializers/activitypub/update_serializer.rb
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										15
									
								
								app/serializers/activitypub/update_serializer.rb
									
										
									
									
									
										Normal file
									
								
							|  | @ -0,0 +1,15 @@ | |||
| # frozen_string_literal: true | ||||
| 
 | ||||
| class ActivityPub::UpdateSerializer < ActiveModel::Serializer | ||||
|   attributes :type, :actor | ||||
| 
 | ||||
|   has_one :object, serializer: ActivityPub::ActorSerializer | ||||
| 
 | ||||
|   def type | ||||
|     'Update' | ||||
|   end | ||||
| 
 | ||||
|   def actor | ||||
|     ActivityPub::TagManager.instance.uri_for(object) | ||||
|   end | ||||
| end | ||||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue