| 
					
				 | 
			
			
				@@ -1,7 +1,8 @@ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-import { getChromeStorage, setChromeStorage } from '@/uilts/chromeExtension.js' 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-import { throttle, getQueryString, getCookie, nextTick, getQueryStringByUrl } from '@/uilts/help' 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+import { getChromeStorage, setChromeStorage, chromeExtensionUrl } from '@/uilts/chromeExtension.js' 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+import { throttle, getQueryString, getCookie, nextTick, getQueryStringByUrl, getStorage, setStorage, getInnerIframeURL } from '@/uilts/help' 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 import { discordAuthRedirectUri, iframeHost } from '@/http/configAPI' 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 import { reportSrcPublishEvent } from '@/http/publishApi' 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 import Report from "@/log-center/log" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 import { fetchAddFinishEvent } from '@/logic/background/fetch/facebook'; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 import { showNFTGroupIcon, hideNFTGroupList, checkUserJoinGroup, elemAddEventListener, addJoinedGroupList } from '@/logic/content/nft'; 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -10,6 +11,8 @@ import { clearPostContent, setGroupIconStatus } from '@/logic/content/nft.js' 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 import { toolBox } from '@/logic/content/ToolBox' 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 import axios from 'axios'; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 import messageCenter from '@/uilts/messageCenter'; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+import { PlayType } from '@/types'; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+import { reSetBindPostContent } from '@/http/help.js' 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 let dom = {}; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -23,6 +26,7 @@ let systemInfo = { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     theme: 'light' 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 let fixProfileTabAutoTimer = null; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -116,6 +120,13 @@ export function showTwitterPublishDialogHandler(publishRes) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     // _setPublishContent(publishRes.srcContent); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     setDialogPublishContent(publishRes.srcContent); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     _publishTweetEvent(publishRes, bindTwitterArtMethod); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    Report.reportLog({ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        businessType: Report.businessType.pageView, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        objectType: Report.objectType.setPublishContent, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        postId: publishRes.postId 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    }, { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    }); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 export function twitterPublishHandler(res) { 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -225,12 +236,30 @@ function _publishTweetEvent(params, cb) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             bindTwitterArt.needBind = true; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             bindTwitterArt.postId = params.postId; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             tweetPublishStore.showPublishDialog = false; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            bindContentStr(params); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             // checkIsShowReSend(dialog, params); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             cb && cb() 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         }); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     }, 800) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+function bindContentStr(params) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    if (params && params.postBizData) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        if (typeof params.postBizData == 'string') { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            let objBizData = JSON.parse(params.postBizData); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            let inputEle = document.querySelector('div[contenteditable="true"]'); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            if (objBizData.luckdropType == PlayType.treasure && inputEle) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                let textContent = inputEle.innerText; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                reSetBindPostContent({ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    postId: params.postId, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    postSrcContent: textContent, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                }) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 function onClosePublishDialogHandle(dom, params) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     // 如果是 Tool box 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     if (params.postType == 3) { 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -398,7 +427,7 @@ function _addIframe() { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     // let span = document.createElement('span'); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     // const shadowRoot = span.attachShadow({mode: 'closed'}) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     let iframe = document.createElement('iframe'); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-    iframe.src = chrome.runtime.getURL('/iframe/publish.html') 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    iframe.src = chromeExtensionUrl + ('iframe/publish.html') 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     iframe.id = 'iframe-content' 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     iframe.style.cssText = 'position:fixed;top:0px;right:0;display:block; width:100%;height:100%;z-index:10000; border: medium none;display:none;background: rgba(255,255,255,0);'; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     // shadowRoot.appendChild(iframe); 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -421,9 +450,9 @@ function addPublishTipsIframe(params = {}) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             let iframe = document.createElement('iframe'); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             iframe.id = 'de-publish-tips' 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             if (params.type == 'nft') { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                iframe.src = chrome.runtime.getURL('/iframe/publish-tips.html?type="nft"'); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                iframe.src = chromeExtensionUrl + ('iframe/publish-tips.html?type="nft"'); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             } else { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                iframe.src = chrome.runtime.getURL('/iframe/publish-tips.html'); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                iframe.src = chromeExtensionUrl + ('iframe/publish-tips.html'); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             iframe.style.cssText = `border: medium none; width:270px;height:500px;position: fixed; right: ${right}px; top: 5%;z-index: -1` 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -440,7 +469,7 @@ export function noticeBindTweet(params) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     hidePopupPage(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     let iframe = document.createElement('iframe'); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     iframe.id = 'de-notice-bind-tweet'; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-    iframe.src = chrome.runtime.getURL('/iframe/bind-tweet.html') + `?params=${JSON.stringify(params)}`; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    iframe.src = chromeExtensionUrl + ('iframe/bind-tweet.html') + `?params=${JSON.stringify(params)}`; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     iframe.style.cssText = `border: medium none; width:400px;min-height:313px;position: fixed; right: 16px; top: 16px;border-radius: 20px;` 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     let iframeContent = document.getElementById('de-notice-bind-tweet'); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     if (!iframeContent) { 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -529,7 +558,7 @@ const setDialogPublishContent = throttle(function (content) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         if (inputEle) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             inputEle.dispatchEvent(event); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-    }, 300) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    }, 800) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 }, 600); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 /** 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -766,14 +795,14 @@ export function bindTwitterArtMethod() { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 import parseCard from './ParseCard' 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-// 检测dom改变  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-// 获取短链接  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-// 查看本地是否有postid  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-// 如果有 修改dom 返回  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-// 如果没有 网络请求  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-// 获取postid  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-// 获取twitterid  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-// 检测当前所有dom 如果没有  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+// 检测dom改变 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+// 获取短链接 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+// 查看本地是否有postid 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+// 如果有 修改dom 返回 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+// 如果没有 网络请求 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+// 获取postid 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+// 获取twitterid 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+// 检测当前所有dom 如果没有 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -808,73 +837,75 @@ function onChangePageMain(targetNode) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 // 2.监听卡片是否可见 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 // 3.如果可见了 去找 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-function setIframeRedPacket(type = 'twitter') { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+function setIframeCard(type = 'twitter') { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     // 获取所有卡片参数 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     let card_json_data 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-    switch (type) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        case 'facebook': 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            card_json_data = parseCard.parseFacebookCardParmas() 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            for (let i in card_json_data) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                parseCard.replaceFacebookPacket(card_json_data[i]) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            break; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        default: 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            card_json_data = parseCard.parseAllDeNetCardParmas() 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            // 过滤出可以请求的短链接 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            parseCard.getCardParmas(card_json_data).then((res) => { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                for (let i in res.has_post_Id_card_data) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                    let item = res.has_post_Id_card_data[i]; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                    if (item && item.post_Id && item.post_Id.indexOf('nft/') >= 0) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                        parseCard.replaceNftDomRedPacket(item) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                    } else if (item && item.post_Id && item.post_Id.indexOf('nft_group/') >= 0) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                        parseCard.replaceNftGroupDomRedPacket(item) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                    } else if (item && item.post_Id && item.post_Id.indexOf('luckdraw/') >= 0) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                        item.post_Id = item.post_Id.split('luckdraw/')[1] || '' 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                        item.page_type = '抽奖' 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                        parseCard.replaceDOMRedPacket(item) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                    } else if (item && item.post_Id && item.post_Id.indexOf('toolbox/') >= 0) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                        item.page_type = 'toolbox' 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                        item.post_Id = item.post_Id.split('toolbox/')[1] || '' 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                        if (item.post_Id) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                            parseCard.replaceIframeToolBox(item) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                    } else if (item && item.post_Id && !item.post_Id.includes('/')) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                        item.page_type = '红包' 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                        parseCard.replaceDOMRedPacket(item) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                        // 夺宝链接 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                    } else if (item && item.post_Id && item.post_Id.includes('treasure/')) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                        // https://testh5.denetme.net/treasure/{postid} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                        // https://testh5.denetme.net/treasure/invite/{inviteCode} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                        // 邀请链接 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                        if (item.post_Id.includes('invite/')) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                            item.invite_code = item.post_Id.split('invite/')[1] || '' 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                            item.page_type = '邀请链接' 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                            if (item.invite_code) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                                item.post_Id = '' 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                                parseCard.replaceDOMTreasureCard(item) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                            } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                        } else { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                            // 原始链接 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                            item.page_type = '原始链接' 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                            item.post_Id = item.post_Id.split('treasure/')[1] || '' 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                            if (item.post_Id) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                                parseCard.replaceDOMTreasureCard(item) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    if (type == 'facebook') { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        card_json_data = parseCard.parseFacebookCardParmas() 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        for (let i in card_json_data) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            parseCard.replaceFacebookPacket(card_json_data[i]) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    else if (type == 'twitter') { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        card_json_data = parseCard.parseAllDeNetCardParmas() 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        // 过滤出可以请求的短链接 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        parseCard.getCardParmas(card_json_data).then((res) => { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            for (let i in res.has_post_Id_card_data) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                let item = res.has_post_Id_card_data[i]; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                if (item && item.post_Id && item.post_Id.indexOf('nft/') >= 0) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    parseCard.replaceNftDomRedPacket(item) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                } else if (item && item.post_Id && item.post_Id.indexOf('nft_group/') >= 0) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    parseCard.replaceNftGroupDomRedPacket(item) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                } else if (item && item.post_Id && item.post_Id.indexOf('luckdraw/') >= 0) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    item.post_Id = item.post_Id.split('luckdraw/')[1] || '' 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    item.page_type = '抽奖' 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    parseCard.replaceDOMRedPacket(item) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                } else if (item && item.post_Id && item.post_Id.indexOf('toolbox/') >= 0) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    item.page_type = 'toolbox' 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    item.post_Id = item.post_Id.split('toolbox/')[1] || '' 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    if (item.post_Id) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        parseCard.replaceIframeToolBox(item) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                } else if (item && item.post_Id && !item.post_Id.includes('/')) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    item.page_type = '红包' 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    parseCard.replaceDOMRedPacket(item) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    // 夺宝链接 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                } else if (item && item.post_Id && item.post_Id.includes('treasure/')) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    // https://testh5.denetme.net/treasure/{postid} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    // https://testh5.denetme.net/treasure/invite/{inviteCode} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    // 邀请链接 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    if (item.post_Id.includes('invite/')) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        let arr = item.post_Id.split('/') 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        let index 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        for (let i in arr) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                            index = Number(i) + 1 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                            if (arr[i] == 'invite' && arr.length >= index) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                                item.invite_code = arr[index] 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                                break 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                             } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                         } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                    } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                if (res.need_net_short_url.length > 0) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                    // 请求短链接 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                    chrome.runtime.sendMessage({ actionType: "CONTENT_TWITTER_SHORT_LINK", data: "", arr_url: res.need_net_short_url }, (res) => { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                        if (!res) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                            Report.reportLog({ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                                objectType: Report.objectType.parse_card_error 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                            }); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        item.page_type = '邀请链接' 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        if (item.invite_code) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                            item.post_Id = '' 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                            parseCard.replaceDOMTreasureCard(item) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                         } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                    }) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    } else { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        // 原始链接 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        item.page_type = '原始链接' 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        item.post_Id = item.post_Id.split('treasure/')[1] || '' 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        if (item.post_Id) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                            parseCard.replaceDOMTreasureCard(item) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                 } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            }) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            break; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            if (res.need_net_short_urls.length > 0) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                parseCard.netShortUrl(res.need_net_short_urls, () => { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    changeQueueNum(5) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                }) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        }) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -940,7 +971,7 @@ function initParseCard() { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                     return 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                 } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                 initGroupTip() 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                setIframeRedPacket() 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                setIframeCard() 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                 checkHasSliderDeBtn(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                 changeQueueNum(-1) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                 showNFTCard() 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -954,7 +985,7 @@ function initParseCard() { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                 if (queue_num <= 0) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                     return 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                 } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                setIframeRedPacket('facebook') 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                setIframeCard('facebook') 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                 changeQueueNum(-1) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             }, 1000) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         } 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -1031,6 +1062,28 @@ export function init() { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     }); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+export const getTweetUserFollowStatus = (params) => { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    let { tweetId, userList } = params.data; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    let promiseList = []; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    for (let i = 0; i < userList.length; i++) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        promiseList[i] = TwitterApiUserByScreenNameReq({ screen_name: userList[i]['name'] }); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    Promise.all(promiseList).then((res) => { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        let list = []; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        if (res && res.length) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            for (let i = 0; i < res.length; i++) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                let item = res[i]; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                if (item && item.data && item.data.data) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    list.push(item.data.data) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        chrome.runtime.sendMessage({ actionType: 'CONTENT_GET_TWEET_USER_FOLLOW_STATUS_RES', data: list, tweetId, type: params.type, iframeId: params.iframeId }, () => { }) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    }) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 function onPageVisbile() { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     document.addEventListener('visibilitychange', function () { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         let isHidden = document.hidden; 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -1288,10 +1341,12 @@ export function checkTwitterTaskState() { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         }) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         // 点击取消 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         clickByDataTestId(e, 'confirmationSheetCancel', () => { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            console.log('DO_TASK1') 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             chrome.runtime.sendMessage({ actionType: "DO_TASK", tweet_Id, task_type, task_data, task_done: false }, () => { }) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         }) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         // 点击 蒙层 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         if (e.target && e.target.nextSibling && e.target.nextSibling.dataset && e.target.nextSibling.dataset.testid == 'confirmationSheetDialog') { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            console.log('DO_TASK2') 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             chrome.runtime.sendMessage({ actionType: "DO_TASK", tweet_Id, task_type, task_data, task_done: false }, () => { }) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     }, true) 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -1346,7 +1401,7 @@ export function getTweetAuthorByDom(params) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-export function doTaskTwitterAPI({ task_data, task_type, tasks }) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+export function doTaskTwitterAPI({ task_data, task_type, tasks, iframeId }) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     switch (task_type) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         case 'like': 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             TwitterLikeAPI(task_data.tweet_Id) 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -1381,7 +1436,7 @@ export function doTaskTwitterAPI({ task_data, task_type, tasks }) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                     // 推文发推 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                     case '10': 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                         // 发推 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                        TwitterApiCreateTweet({ text: task_data.tweet_text, tweet_Id: task_data.tweet_Id }) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        TwitterApiCreateTweet({ text: task_data.tweet_text, tweet_Id: task_data.tweet_Id, iframeId }) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                         break 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                 } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -1394,7 +1449,7 @@ export function showJoinDialog(data) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     let iframe = document.querySelector('#nftProjectId') 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     iframe.style.display = 'block' 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     iframe.contentWindow.postMessage({ actionType: 'SHOW_JOIN_DATA', data }, '*'); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-    iframe.src = chrome.runtime.getURL(`/iframe/buy-nft.html#/group?params=${JSON.stringify(data)}&time=${new Date().getTime()}`) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    iframe.src = chromeExtensionUrl + (`iframe/buy-nft.html#/group?params=${JSON.stringify(data)}&time=${new Date().getTime()}`) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 const TwitterFollowAPI = (item, tweet_Id) => { 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -1422,6 +1477,7 @@ const TwitterFollowAPI = (item, tweet_Id) => { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         chrome.runtime.sendMessage({ actionType: "DO_TASK", do_type: 'api', tweet_Id, task_type: 'follow', task_data, task_done: true }, () => { }) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     }).catch(() => { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        console.log('DO_TASK3') 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         chrome.runtime.sendMessage({ actionType: "DO_TASK", do_type: 'api', tweet_Id, task_type: 'follow', task_data, task_done: false }, () => { }) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     }) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 } 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -1454,6 +1510,7 @@ const TwitterRetweetAPI = (tweet_Id) => { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     }).then(() => { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         chrome.runtime.sendMessage({ actionType: "DO_TASK", do_type: 'api', tweet_Id, task_type: 'retweet', task_data: '', task_done: true }, () => { }) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     }).catch(() => { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        console.log('DO0_TASK4') 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         chrome.runtime.sendMessage({ actionType: "DO_TASK", do_type: 'api', tweet_Id, task_type: 'retweet', task_data: '', task_done: false }, () => { }) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     }) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 } 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -1485,12 +1542,12 @@ const TwitterLikeAPI = (tweet_Id) => { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     }).then(() => { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         chrome.runtime.sendMessage({ actionType: "DO_TASK", do_type: 'api', tweet_Id, task_type: 'like', task_data: '', task_done: true }, () => { }) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     }).catch(() => { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        console.log('DO_TASK5') 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         chrome.runtime.sendMessage({ actionType: "DO_TASK", do_type: 'api', tweet_Id, task_type: 'like', task_data: '', task_done: false }, () => { }) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     }) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				- 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-const TwitterApiCreateTweet = ({ text, tweet_Id }) => { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+const TwitterApiCreateTweet = ({ text, tweet_Id, iframeId }) => { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     let data = { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         queryId: "hC1nuE-2d1NX5LYBuuAvtQ", 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         features: { 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -1536,16 +1593,15 @@ const TwitterApiCreateTweet = ({ text, tweet_Id }) => { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             "x-twitter-client-language": "en" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         }, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     }).then(function (response) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        chrome.runtime.sendMessage({ actionType: "DO_TASK", do_type: 'api', tweet_Id, task_type: 'createTweet', task_data: '', task_done: true, response }) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        chrome.runtime.sendMessage({ actionType: "DO_TASK", do_type: 'api', tweet_Id, task_type: 'createTweet1', task_data: '', task_done: '是', response, iframeId }) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     }).catch(function (err) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        chrome.runtime.sendMessage({ actionType: "DO_TASK", do_type: 'api', tweet_Id, task_type: 'createTweet', task_data: '', task_done: false }) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        chrome.runtime.sendMessage({ actionType: "DO_TASK", do_type: 'api', tweet_Id, task_type: 'createTweet1', task_data: '', task_done: '否', iframeId }) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     }); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				- 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-export const TwitterApiUserByScreenName = (params) => { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-    let { screen_name, tweetId = '', objectType = '' } = params; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-    axios.get(`https://twitter.com/i/api/graphql/mCbpQvZAw6zu_4PvuAUVVQ/UserByScreenName?variables=%7B%22screen_name%22%3A%22${screen_name}%22%2C%22withSafetyModeUserFields%22%3Atrue%2C%22withSuperFollowsUserFields%22%3Atrue%7D`, { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+const TwitterApiUserByScreenNameReq = (params) => { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    let { screen_name } = params || {}; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    return axios.get(`https://twitter.com/i/api/graphql/mCbpQvZAw6zu_4PvuAUVVQ/UserByScreenName?variables=%7B%22screen_name%22%3A%22${screen_name}%22%2C%22withSafetyModeUserFields%22%3Atrue%2C%22withSuperFollowsUserFields%22%3Atrue%7D`, { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         headers: { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             "accept": "*/*", 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             "accept-language": "zh-CN,zh;q=0.9,en-US;q=0.8,en;q=0.7", 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -1562,10 +1618,17 @@ export const TwitterApiUserByScreenName = (params) => { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             "x-twitter-auth-type": "OAuth2Session", 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             "x-twitter-client-language": "en" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         }, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-    }).then(function (response) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    }) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+export const TwitterApiUserByScreenName = (params, cb) => { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    let { screen_name, tweetId = '', objectType = '' } = params; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    TwitterApiUserByScreenNameReq({ screen_name }).then(function (response) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         chrome.runtime.sendMessage({ actionType: "CONTENT_API_GET_TWEET_USER_INFO_RES", data: response.data.data || {}, tweetId, objectType }, () => { }) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     }).catch(function (err) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-      chrome.runtime.sendMessage({ actionType: "CONTENT_API_GET_TWEET_USER_INFO_RES", data: {}, tweetId, objectType }, () => { }) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        chrome.runtime.sendMessage({ actionType: "CONTENT_API_GET_TWEET_USER_INFO_RES", data: {}, tweetId, objectType }, () => { }) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     }); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -1722,7 +1785,7 @@ const initGroupTip = () => { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         if (iframe_banner) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             if (twitterAccount != getQueryStringByUrl(iframe_banner.src, 'twitterAccount')) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                 iframe_banner.style.display = 'none' 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                // iframe_banner.src = chrome.runtime.getURL(`/iframe/group-card.html?twitterAccount=${twitterAccount}`) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                // iframe_banner.src = chromeExtensionUrl + (`iframe/group-card.html?twitterAccount=${twitterAccount}`) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                 iframe_banner.contentWindow.postMessage({ actionType: 'SHOW_BANNER', twitterAccount }, '*'); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             return 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -1732,7 +1795,7 @@ const initGroupTip = () => { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             let iframe = document.createElement('iframe') 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             iframe.id = 'denet_group_banner' 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             iframe.style.cssText = 'border: medium none; display:none; width:100%; height:100px;' 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            iframe.src = chrome.runtime.getURL(`/iframe/group-card.html?twitterAccount=${twitterAccount}`) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            iframe.src = chromeExtensionUrl + (`iframe/group-card.html?twitterAccount=${twitterAccount}`) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             // iframe.contentWindow.postMessage({ actionType: 'SHOW_BANNER', twitterAccount }, '*'); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             if (dom && !dom.parentNode.children[0].querySelector('iframe')) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                 // dom.parentNode.insertBefore(iframe, dom) 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -1763,7 +1826,7 @@ export const showBuyNFT = ({ nft_project_Id, post_Id = '' }) => { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     let iframe = document.querySelector('#nftProjectId') 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     iframe.style.display = 'block' 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-    iframe.src = chrome.runtime.getURL(`/iframe/buy-nft.html#/?nftProjectId=${nft_project_Id}&postId=${post_Id}`) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    iframe.src = chromeExtensionUrl + (`iframe/buy-nft.html#/?nftProjectId=${nft_project_Id}&postId=${post_Id}`) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 const initBuyNFT = () => { 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -1782,7 +1845,7 @@ export const showNFTCard = () => { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     let where = isTwitter && userElem && tabIndex; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     if (where) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         let iframe = document.createElement('iframe'); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        iframe.src = chrome.runtime.getURL(`/iframe/nft-card.html`) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        iframe.src = chromeExtensionUrl + (`iframe/nft-card.html`) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         iframe.style.cssText = 'border:medium none; width:100%; height:290px;'; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         let nftElement = document.createElement('div'); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         nftElement.id = 'de-nft-node'; 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -1823,7 +1886,7 @@ export const appendPopupPage = (params = {}) => { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     let iframe = document.createElement('iframe'); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     iframe.id = 'de-popup-page'; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-    iframe.src = chrome.runtime.getURL('/iframe/popup-page.html') + `#${path}`; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    iframe.src = chromeExtensionUrl + ('iframe/popup-page.html') + `#${path}`; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     iframe.style.cssText = `border: medium none; width: 375px !important; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         height: 650px;position: fixed; right: 16px; top: 16px;background: #FFFFFF;border: 0.5px solid #919191;box-shadow: 0px 4px 20px rgba(0, 0, 0, 0.2);box-sizing: border-box;z-index: 90000; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         animation-duration: 0.5s !important; 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -1870,7 +1933,7 @@ export const showPopupPage = (params = {}) => { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     if (iframe) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         if (path) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            iframe.src = chrome.runtime.getURL('/iframe/popup-page.html') + `#${path}`; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            iframe.src = chromeExtensionUrl + ('iframe/popup-page.html') + `#${path}`; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         iframe.style.transform = 'translateX(-' + 395 + 'px)'; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -1985,14 +2048,14 @@ export const setPopupConfByPopupPage = () => { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-/**  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				- *  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				- * Group Tab List Start  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+/** 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ * 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ * Group Tab List Start 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  */ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 /** 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				- *  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				- * 创建 Group Tab  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ * 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ * 创建 Group Tab 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  */ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 const createGroupTabNode = () => { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     let groupIcon = document.createElement('img'); 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -2388,7 +2451,7 @@ const addTabGroupContent = (cb) => { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     let iframe = document.createElement('iframe'); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     iframe.id = 'de-tab-group-content'; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-    iframe.src = `${iframeHost}/tab-group` + `?params=${JSON.stringify(params)}`; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    iframe.src = getInnerIframeURL(`${iframeHost}/tab-group` + `?params=${JSON.stringify(params)}&iframeID=${iframe.id}`); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     iframe.style.cssText = `border: medium none; height: 500px;display: none` 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     let iframeContent = getGroupTabContentNode(); 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -2534,6 +2597,12 @@ export const setGroupInfo = (params = {}) => { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+export const getExtensionStorgeDataForIframe = (data) => { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    getChromeStorage(data.key).then((res) => { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        messageCenter.send(data.iframeID, `IFRAME_GET_EXTENSION_STORGE_DATA-${data.messageID}`, res) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    }); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 const getSysTheme = () => { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     const themeMedia = window.matchMedia("(prefers-color-scheme: light)"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     if (themeMedia.matches) { 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -2572,10 +2641,10 @@ const sysThemeChange = () => { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     }, 800) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-/**  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				- *  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				- * Group Tab List End  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				- *  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+/** 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ * 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ * Group Tab List End 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ * 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  */ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -2594,3 +2663,16 @@ export const showPublishDialog = () => { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         smallBtn.click(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+// 获取推文发送回去 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+export const sendContentByTwitterID = (tweet_Id) => { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    // 获取内容 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    let txt = parseCard.getContentByTwitterId(tweet_Id) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    // 发送 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    chrome.runtime.sendMessage({ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        actionType: "CONTENT_GET_TWEET_TXT", data: { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            tweet_Id, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            txt 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    }) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+} 
			 |