content.js 3.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121
  1. // 此文件不要写具体逻辑,只调用函数
  2. // var port = chrome.runtime.connect({
  3. // name: "hello",
  4. // });
  5. import {
  6. showGiveDialogHandler,
  7. showIframeHandler,
  8. hideIframeHandler,
  9. showTwitterPublishDialogHandler,
  10. twitterPublishHandler,
  11. showPinTips,
  12. init,
  13. initExecuteScript,
  14. changeQueueNum,
  15. replyHandle,
  16. noticeBindTweet,
  17. hideNoticeBindTweet,
  18. getTweetAuthorByDom,
  19. facebookReplyTweet,
  20. doTaskTwitterAPI,
  21. onTweetReplyClick,
  22. showNFTSale,
  23. showBuyNFT,
  24. hideBuyNFT,
  25. showPopupPage
  26. } from "@/logic/content/twitter.js";
  27. import {
  28. initFacebookContent
  29. } from "@/logic/content/facebook.js"
  30. chrome.storage.onChanged.addListener(changes => {
  31. initExecuteScript(changes)
  32. })
  33. window.onload = () => {
  34. init();
  35. initFacebookContent();
  36. chrome.runtime.sendMessage({
  37. actionType: "CONTENT_WINDOW_LOADED_SET_POPUP_PAGE",
  38. data: { }
  39. }, () => { });
  40. };
  41. window.onmessage = (res) => {
  42. if (res.data && res.data.actionType) {
  43. switch (res.data.actionType) {
  44. case "IFRAME_SHOW_IFREME":
  45. showIframeHandler();
  46. break;
  47. case "IFRAME_HIDE_IFREME":
  48. hideIframeHandler();
  49. break;
  50. case "IFRAME_SHOW_TWITTER_PUBLISH_DIALOG":
  51. showTwitterPublishDialogHandler(res.data.publishRes);
  52. break;
  53. case "IFRAME_RED_PACKET_REPLY_CLICK":
  54. replyHandle(res.data.data || {});
  55. break;
  56. case "IFRAME_RED_PACKET_SHOW_BIND_TWEET_NOTICE":
  57. noticeBindTweet(res.data.data || {});
  58. break;
  59. case "IFRAME_CLOSE_BIND_TWEET":
  60. hideNoticeBindTweet();
  61. break;
  62. case "IFRAME_RED_PACKET_GET_TWEET_AUTHOR":
  63. getTweetAuthorByDom(res.data.data || {});
  64. break;
  65. case "IFRAME_RED_PACKET_CHECK_FACEBOOK_REPLY":
  66. facebookReplyTweet(res.data.data || {});
  67. break;
  68. case "IFRAME_RED_PACKET_ON_TWEET_REPLY_CLICK":
  69. onTweetReplyClick(res.data.data || {});
  70. break;
  71. // case 'IFRAME_TWITTER_API_DO_TASK':
  72. // doTaskTwitterAPI(res.data)
  73. // break
  74. // case "IFRAME_DO_TASK":
  75. // findTweetByIdDoTask(res.data.task_data, res.data.task_type)
  76. // break
  77. }
  78. }
  79. };
  80. chrome.runtime.onMessage.addListener((req, sender, sendResponse) => {
  81. sendResponse('')
  82. switch (req.actionType) {
  83. case 'BG_SHOW_PIN_TIPS':
  84. showPinTips()
  85. break
  86. case "BACK_TWITTER_LOGIN_SUCCESS":
  87. showGiveDialogHandler();
  88. break
  89. case 'BACK_TWITTER_SHORT_URL':
  90. console.log('BACK_TWITTER_SHORT_URL')
  91. changeQueueNum(1)
  92. break
  93. case 'IFRAME_TWITTER_API_DO_TASK':
  94. doTaskTwitterAPI(req)
  95. break
  96. case 'IFRAME_NFT_SHOW_SALE':
  97. showNFTSale()
  98. break
  99. case "IFRAME_TWITTER_PUBLISH":
  100. twitterPublishHandler(req.publishRes);
  101. break;
  102. case 'IFRAME_TWITTER_SHOW_POPUP_PAGE':
  103. showPopupPage({path: '/NFT'});
  104. break
  105. case "IFRAME_TWITTER_SHOW_BUY_NFT":
  106. showBuyNFT(req.data)
  107. break
  108. case 'IFRAME_TWITTER_HIDE_BUY_NFT':
  109. hideBuyNFT()
  110. break
  111. }
  112. })