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;
 |