You cannot select more than 25 topics
			Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
		
		
		
		
		
			
		
			
				
	
	
		
			167 lines
		
	
	
		
			3.7 KiB
		
	
	
	
		
			JavaScript
		
	
			
		
		
	
	
			167 lines
		
	
	
		
			3.7 KiB
		
	
	
	
		
			JavaScript
		
	
| /* global clearTimeout, Buffer, TextDecoder, process */
 | |
| 
 | |
| const OriginalAppDotNetApi = require('../../js/modules/loki_app_dot_net_api.js');
 | |
| 
 | |
| const sampleFeed =
 | |
|   '<?xml version="1.0" encoding="windows-1252"?><rss version="2.0"><channel>    <title>FeedForAll Sample Feed</title></channel></rss>';
 | |
| 
 | |
| const samplesGetMessages = {
 | |
|   meta: { code: 200 },
 | |
|   data: [
 | |
|     {
 | |
|       channel_id: 1,
 | |
|       created_at: '2020-03-18T04:48:44.000Z',
 | |
|       entities: {
 | |
|         mentions: [],
 | |
|         hashtags: [],
 | |
|         links: [],
 | |
|       },
 | |
|       id: 3662,
 | |
|       machine_only: false,
 | |
|       num_replies: 0,
 | |
|       source: {},
 | |
|       thread_id: 3662,
 | |
|       reply_to: null,
 | |
|       text: 'hgt',
 | |
|       html: '<span itemscope="https://app.net/schemas/Post">hgt</span>',
 | |
|       annotations: [
 | |
|         {
 | |
|           type: 'network.loki.messenger.publicChat',
 | |
|           value: {
 | |
|             timestamp: 1584506921361,
 | |
|             sig:
 | |
|               '262ab113810564d7ff6474dea264e10e2143d91c004903d06d8d9fddb5b74b2c6245865544d5cf76ee16a3fca045bc028a48c51f8a290508a29b6013d014dc83',
 | |
|             sigver: 1,
 | |
|           },
 | |
|         },
 | |
|       ],
 | |
|       user: {
 | |
|         id: 2448,
 | |
|         username:
 | |
|           '050cd79763303bcc251bd489a6f7da823a2b8555402b01a7959ebca550d048600f',
 | |
|         created_at: '2020-03-18T02:42:05.000Z',
 | |
|         canonical_url: null,
 | |
|         type: null,
 | |
|         timezone: null,
 | |
|         locale: null,
 | |
|         avatar_image: {
 | |
|           url: null,
 | |
|           width: null,
 | |
|           height: null,
 | |
|           is_default: false,
 | |
|         },
 | |
|         cover_image: {
 | |
|           url: null,
 | |
|           width: null,
 | |
|           height: null,
 | |
|           is_default: false,
 | |
|         },
 | |
|         counts: {
 | |
|           following: 0,
 | |
|           posts: 0,
 | |
|           followers: 0,
 | |
|           stars: 0,
 | |
|         },
 | |
|         name: 'asdf',
 | |
|         annotations: [],
 | |
|       },
 | |
|     },
 | |
|   ],
 | |
| };
 | |
| 
 | |
| class StubAppDotNetAPI extends OriginalAppDotNetApi {
 | |
|   // make a request to the server
 | |
|   async serverRequest(endpoint, options = {}) {
 | |
|     const { method } = options;
 | |
|     // console.warn('STUBBED ', method, ':', endpoint);
 | |
| 
 | |
|     if (
 | |
|       endpoint === 'loki/v1/rss/messenger' ||
 | |
|       endpoint === 'loki/v1/rss/loki'
 | |
|     ) {
 | |
|       return {
 | |
|         statusCode: 200,
 | |
|         response: {
 | |
|           data: sampleFeed,
 | |
|         },
 | |
|       };
 | |
|     }
 | |
| 
 | |
|     if (endpoint === 'channels/1/messages') {
 | |
|       if (!method) {
 | |
|         return {
 | |
|           statusCode: 200,
 | |
|           response: samplesGetMessages,
 | |
|         };
 | |
|       }
 | |
|       return {
 | |
|         statusCode: 200,
 | |
|         response: {
 | |
|           data: [],
 | |
|           meta: {
 | |
|             max_id: 0,
 | |
|           },
 | |
|         },
 | |
|       };
 | |
|     }
 | |
| 
 | |
|     if (
 | |
|       endpoint === 'loki/v1/channel/1/deletes' ||
 | |
|       endpoint === 'loki/v1/channel/1/moderators'
 | |
|     ) {
 | |
|       return {
 | |
|         statusCode: 200,
 | |
|         response: {
 | |
|           data: [],
 | |
|           meta: {
 | |
|             max_id: 0,
 | |
|           },
 | |
|         },
 | |
|       };
 | |
|     }
 | |
| 
 | |
|     if (endpoint === 'channels/1') {
 | |
|       let name = 'Unknown group';
 | |
|       if (this.baseServerUrl.includes('/chat-dev.lokinet.org')) {
 | |
|         name = 'Loki Dev Chat';
 | |
|       } else if (this.baseServerUrl.includes('/chat.getsession.org')) {
 | |
|         name = 'Session Public Chat';
 | |
|       }
 | |
|       return {
 | |
|         statusCode: 200,
 | |
|         response: {
 | |
|           data: {
 | |
|             annotations: [
 | |
|               {
 | |
|                 type: 'net.patter-app.settings',
 | |
|                 value: {
 | |
|                   name,
 | |
|                 },
 | |
|               },
 | |
|             ],
 | |
|           },
 | |
|         },
 | |
|       };
 | |
|     }
 | |
|     if (endpoint === 'token') {
 | |
|       return {
 | |
|         statusCode: 200,
 | |
|         response: {
 | |
|           data: {
 | |
|             user: {
 | |
|               name: 'unknown name',
 | |
|             },
 | |
|           },
 | |
|         },
 | |
|       };
 | |
|     }
 | |
| 
 | |
|     return {
 | |
|       statusCode: 200,
 | |
|       response: {},
 | |
|     };
 | |
|   }
 | |
| }
 | |
| 
 | |
| module.exports = StubAppDotNetAPI;
 |