|
@@ -4,7 +4,7 @@ import { discordAuthRedirectUri } 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, setTabGroupIframeStyle, setGroupTabStatus, addGroupTab, groupBtnStyleChange, sendMessageToGroupBanner, setGroupTabSelfStyle } from '@/logic/content/nft';
|
|
|
+import { showNFTGroupIcon, hideNFTGroupList, checkUserJoinGroup, elemAddEventListener, addJoinedGroupList } from '@/logic/content/nft';
|
|
|
import { jumpTwitterDetailByAlert, showEditTweet } from '@/logic/content/help/twitter.js'
|
|
|
import { clearPostContent, setGroupIconStatus } from '@/logic/content/nft.js'
|
|
|
import ToolBox from '@/logic/content/ToolBox'
|
|
@@ -12,10 +12,19 @@ import axios from 'axios';
|
|
|
|
|
|
let dom = {};
|
|
|
|
|
|
-export let systemInfo = {
|
|
|
+let tweetAccountBindGroupInfo = {
|
|
|
+ isBind: false,
|
|
|
+ groupInfo: null,
|
|
|
+ isInit: false
|
|
|
+}
|
|
|
+
|
|
|
+let systemInfo = {
|
|
|
theme: 'light'
|
|
|
}
|
|
|
|
|
|
+let fixProfileTabAutoTimer = null;
|
|
|
+
|
|
|
+
|
|
|
let pin_login = false
|
|
|
function twitterPinLogin() {
|
|
|
if (pin_login) {
|
|
@@ -1440,6 +1449,19 @@ export function publishNFTTweetEvent({ groupId, postId, srcContent }, callback)
|
|
|
}, 800)
|
|
|
}
|
|
|
|
|
|
+const sendMessageToGroupBanner = (params) => {
|
|
|
+ chrome.runtime.sendMessage({
|
|
|
+ actionType: "SWITCH_GROUP_BANNER_STATUS",
|
|
|
+ data: params
|
|
|
+ }, (res) => {
|
|
|
+ if (!res) {
|
|
|
+ Report.reportLog({
|
|
|
+ objectType: Report.objectType.chrome_extension_sendmessage_error
|
|
|
+ })
|
|
|
+ }
|
|
|
+ });
|
|
|
+}
|
|
|
+
|
|
|
export const publishNFTTweetPost = ({ postId, srcContent, groupId }) => {
|
|
|
let inputEle = document.querySelector('div[contenteditable="true"]');
|
|
|
let textContent = inputEle.innerText
|
|
@@ -1792,6 +1814,497 @@ export const setPopupConfByPopupPage = () => {
|
|
|
}
|
|
|
}
|
|
|
|
|
|
+
|
|
|
+/**
|
|
|
+ *
|
|
|
+ * Group Tab List Start
|
|
|
+ */
|
|
|
+
|
|
|
+/**
|
|
|
+ *
|
|
|
+ * 创建 Group Tab
|
|
|
+ */
|
|
|
+const createGroupTabNode = () => {
|
|
|
+ let groupIcon = document.createElement('img');
|
|
|
+ groupIcon.id = 'de-group-tab-icon'
|
|
|
+ groupIcon.src = require("@/assets/img/icon-group-tab-item.png");
|
|
|
+ groupIcon.style.cssText = 'width:20px;height: 20px;margin-right:4px;';
|
|
|
+
|
|
|
+ let divNode = document.createElement('div');
|
|
|
+ divNode.style.cssText = 'display: flex; align-items: center;height: 100%';
|
|
|
+ divNode.appendChild(groupIcon);
|
|
|
+ divNode.appendChild(document.createTextNode('Group'));
|
|
|
+
|
|
|
+
|
|
|
+ let lineDom = document.createElement('div');
|
|
|
+ lineDom.id = 'de-tab-line';
|
|
|
+ lineDom.style.cssText = `border-radius: 9999px;
|
|
|
+ position: absolute;
|
|
|
+ bottom: 0px;
|
|
|
+ min-width: 56px;
|
|
|
+ align-self: center;
|
|
|
+ height: 4px;
|
|
|
+ background-color: rgb(29, 155, 240);
|
|
|
+ display: none`;
|
|
|
+
|
|
|
+ let groupTab = document.createElement('div');
|
|
|
+ groupTab.id = 'de-nav-tab-group';
|
|
|
+ groupTab.style.cssText = `z-index: 1;
|
|
|
+ position: relative;
|
|
|
+ display: flex;
|
|
|
+ min-width: 56px;
|
|
|
+ -webkit-box-pack: center;
|
|
|
+ justify-content: center;
|
|
|
+ -webkit-box-align: center;
|
|
|
+ align-items: center;
|
|
|
+ text-align: center;
|
|
|
+ padding: 0px 16px;
|
|
|
+ color: rgb(83, 100, 113);
|
|
|
+ font-weight: 700;
|
|
|
+ height: 53px;
|
|
|
+ cursor: pointer;
|
|
|
+ font: 500 15px / 20px TwitterChirp, -apple-system, "system-ui", "Segoe UI", Roboto, Helvetica, Arial, sans-serif;`;
|
|
|
+
|
|
|
+ groupTab.appendChild(divNode);
|
|
|
+ groupTab.appendChild(lineDom);
|
|
|
+
|
|
|
+ return groupTab;
|
|
|
+}
|
|
|
+
|
|
|
+const groupBtnStyleChange = () => {
|
|
|
+ let tab = getGroupTabNode();
|
|
|
+ if (tab) {
|
|
|
+ let line = tab.querySelector('#de-tab-line');
|
|
|
+ if (line) {
|
|
|
+ let { display } = line.style;
|
|
|
+ if (display != 'none') {
|
|
|
+ sendMessageToGroupBanner({ type: 'btn' })
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+}
|
|
|
+
|
|
|
+const getGroupTabNode = () => {
|
|
|
+ let tab = document.querySelector('#de-nav-tab-group');
|
|
|
+ return tab;
|
|
|
+}
|
|
|
+
|
|
|
+const addGroupTab = () => {
|
|
|
+ if (!document.querySelector('div[data-testid=UserName]')) {
|
|
|
+ return
|
|
|
+ }
|
|
|
+ let tabListDom = document.querySelector('div[role="tablist"]');
|
|
|
+ let groupItemTab = getGroupTabNode();
|
|
|
+
|
|
|
+ if (tabListDom && !groupItemTab) {
|
|
|
+ let groupTab = createGroupTabNode();
|
|
|
+
|
|
|
+ tabListDom.appendChild(groupTab);
|
|
|
+
|
|
|
+ groupTab.addEventListener('mouseenter', function () {
|
|
|
+ groupTab.style.background = 'rgba(15, 20, 25, 0.1)'
|
|
|
+ });
|
|
|
+ groupTab.addEventListener('mouseleave', function () {
|
|
|
+ groupTab.style.background = 'none'
|
|
|
+ });
|
|
|
+
|
|
|
+ setTimeout(() => {
|
|
|
+ let count = 0;
|
|
|
+ hiddenMaskWeb3Tab(count);
|
|
|
+ }, 1300)
|
|
|
+
|
|
|
+ addGroupTabEventListener();
|
|
|
+ }
|
|
|
+
|
|
|
+ removeTweetTabEvent({
|
|
|
+ tabListDom
|
|
|
+ });
|
|
|
+
|
|
|
+ addTweetTabEventListener({
|
|
|
+ tabListDom
|
|
|
+ });
|
|
|
+
|
|
|
+ addTabGroupContent(() => {
|
|
|
+ checkNeedSelectGroupTab();
|
|
|
+ });
|
|
|
+}
|
|
|
+
|
|
|
+const hiddenMaskWeb3Tab = (count) => {
|
|
|
+ setTimeout(() => {
|
|
|
+ count++;
|
|
|
+ if (count < 6) {
|
|
|
+ let tab = getMaskWeb3Tab();
|
|
|
+ if (tab) {
|
|
|
+ tab.style.display = 'none'
|
|
|
+ } else {
|
|
|
+ hiddenMaskWeb3Tab(count);
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }, 1000);
|
|
|
+}
|
|
|
+
|
|
|
+/**
|
|
|
+ * 跳转到个人主页 检查是否需要选中 Group tab
|
|
|
+ */
|
|
|
+const checkNeedSelectGroupTab = () => {
|
|
|
+ if (window.location.pathname != '/home') {
|
|
|
+ setTimeout(() => {
|
|
|
+ getChromeStorage('groupTabData', (res) => {
|
|
|
+ console.log('groupTabData', res);
|
|
|
+ if (res && res.deTabVal == 'deGroupTab') {
|
|
|
+ chrome.storage.local.remove("groupTabData");
|
|
|
+ setTimeout(() => {
|
|
|
+ selectGroupTab();
|
|
|
+ }, 300)
|
|
|
+ }
|
|
|
+ })
|
|
|
+ }, 1300)
|
|
|
+ }
|
|
|
+}
|
|
|
+
|
|
|
+/** 选中 Group tab */
|
|
|
+export const selectGroupTab = () => {
|
|
|
+ let groupTab = getGroupTabNode();
|
|
|
+ if (groupTab) {
|
|
|
+ groupTab.click();
|
|
|
+ }
|
|
|
+};
|
|
|
+
|
|
|
+export const groupTipsSelectGroupTab = (params = {}) => {
|
|
|
+ if (params.type == 'btn') {
|
|
|
+ let groupTab = getGroupTabNode();
|
|
|
+ if (groupTab) {
|
|
|
+ let line = groupTab.querySelector('#de-tab-line');
|
|
|
+ if (line) {
|
|
|
+ let { display } = line.style;
|
|
|
+ if (display == 'none') {
|
|
|
+ groupTab.click();
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+ } else {
|
|
|
+ selectGroupTab();
|
|
|
+ }
|
|
|
+}
|
|
|
+/**
|
|
|
+ *
|
|
|
+ * Group tab点击事件监听
|
|
|
+ */
|
|
|
+const addGroupTabEventListener = () => {
|
|
|
+ let groupTab = getGroupTabNode();
|
|
|
+ groupTab.addEventListener('click', function () {
|
|
|
+ let bgColor = document.querySelector('body').style.backgroundColor;
|
|
|
+
|
|
|
+ let groupColor = systemInfo.theme == 'dark' && bgColor == 'rgb(0, 0, 0)' ? '#fff' : 'rgb(15, 20, 25)';
|
|
|
+
|
|
|
+ // let groupColor = systemInfo.theme == 'light' ? 'rgb(15, 20, 25)' : '#fff';
|
|
|
+
|
|
|
+ setGroupTabSelfStyle({
|
|
|
+ groupColor: groupColor,
|
|
|
+ groupFontWeight: '700',
|
|
|
+ lineDisplay: 'block'
|
|
|
+ });
|
|
|
+
|
|
|
+ setTweetActiveTabStyle({
|
|
|
+ color: 'rgb(83, 100, 113)',
|
|
|
+ display: 'none'
|
|
|
+ });
|
|
|
+
|
|
|
+ setTabContentStyle({
|
|
|
+ tweetTabContentDisply: 'none',
|
|
|
+ iframeContentDisplay: 'block'
|
|
|
+ });
|
|
|
+
|
|
|
+ refreshTabGroup();
|
|
|
+
|
|
|
+ window.addEventListener('scroll', addPageScrollEvent);
|
|
|
+
|
|
|
+ let tipsDom = document.querySelector('#denet_group_banner');
|
|
|
+ if (tipsDom) {
|
|
|
+ sendMessageToGroupBanner({ type: 'btn' })
|
|
|
+ } else {
|
|
|
+ onShowGroupBanner();
|
|
|
+ }
|
|
|
+ })
|
|
|
+}
|
|
|
+
|
|
|
+const onShowGroupBanner = () => {
|
|
|
+ chrome.runtime.onMessage.addListener((req, sender, sendResponse) => {
|
|
|
+ switch (req.actionType) {
|
|
|
+ case 'IFRAME_SHOW_GROUP_TIP':
|
|
|
+ sendMessageToGroupBanner({ type: 'btn' })
|
|
|
+ if (!getGroupTabNode()) {
|
|
|
+ addGroupTab();
|
|
|
+ }
|
|
|
+ break
|
|
|
+ }
|
|
|
+ })
|
|
|
+}
|
|
|
+
|
|
|
+const addPageScrollEvent = () => {
|
|
|
+ let wrapperDom = document.querySelector('html');
|
|
|
+ let contentDom = document.querySelector('main[role="main"]');
|
|
|
+ let data = {
|
|
|
+ wrapperHeight: wrapperDom.offsetHeight,
|
|
|
+ wrapperScrollTop: wrapperDom.scrollTop,
|
|
|
+ contentHeight: contentDom.offsetHeight
|
|
|
+ }
|
|
|
+
|
|
|
+ chrome.runtime.sendMessage({
|
|
|
+ actionType: "CONTENT_GROUP_LIST_SCROLL",
|
|
|
+ data: data
|
|
|
+ }, () => { });
|
|
|
+};
|
|
|
+
|
|
|
+const removeTweetTabEvent = (params) => {
|
|
|
+ let { tabListDom } = params;
|
|
|
+
|
|
|
+ if (tabListDom) {
|
|
|
+ let tweetTabItem = tabListDom.querySelectorAll('div[role="presentation"]');
|
|
|
+ if (tweetTabItem.length) {
|
|
|
+ for (let i = 0; i < tweetTabItem.length; i++) {
|
|
|
+ let item = tweetTabItem[i];
|
|
|
+ item.removeEventListener('click', TweetTabEventHandler)
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+}
|
|
|
+
|
|
|
+/**
|
|
|
+ *
|
|
|
+ * twitter tab点击事件监听
|
|
|
+ */
|
|
|
+const addTweetTabEventListener = (params) => {
|
|
|
+ let { tabListDom } = params;
|
|
|
+ let groupItemTab = getGroupTabNode();
|
|
|
+
|
|
|
+ if (tabListDom && groupItemTab) {
|
|
|
+ // 监听twitter tab点击事件
|
|
|
+ let tweetTabItem = tabListDom.querySelectorAll('div[role="presentation"]');
|
|
|
+ if (tweetTabItem.length) {
|
|
|
+ for (let i = 0; i < tweetTabItem.length; i++) {
|
|
|
+ let item = tweetTabItem[i];
|
|
|
+ item.addEventListener('click', TweetTabEventHandler)
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+}
|
|
|
+
|
|
|
+const TweetTabEventHandler = () => {
|
|
|
+ window.removeEventListener('scroll', addPageScrollEvent);
|
|
|
+
|
|
|
+ setGroupTabSelfStyle({
|
|
|
+ groupColor: 'rgb(83, 100, 113)',
|
|
|
+ groupFontWeight: '500',
|
|
|
+ lineDisplay: 'none'
|
|
|
+ });
|
|
|
+
|
|
|
+ setTabContentStyle({
|
|
|
+ tweetTabContentDisply: 'block',
|
|
|
+ iframeContentDisplay: 'none'
|
|
|
+ });
|
|
|
+
|
|
|
+ setTweetActiveTabStyle({
|
|
|
+ color: 'rgb(15, 20, 25)',
|
|
|
+ display: 'block'
|
|
|
+ });
|
|
|
+
|
|
|
+ sendMessageToGroupBanner({ type: 'arrow' })
|
|
|
+};
|
|
|
+
|
|
|
+
|
|
|
+/**
|
|
|
+ * 设置 Group Tab 样式
|
|
|
+ * */
|
|
|
+const setGroupTabSelfStyle = (params = {}) => {
|
|
|
+ let { groupColor, groupFontWeight, lineDisplay } = params;
|
|
|
+ let groupTab = getGroupTabNode();
|
|
|
+ if (groupTab) {
|
|
|
+ groupTab.style.color = groupColor;
|
|
|
+ groupTab.style.fontWeight = groupFontWeight;
|
|
|
+
|
|
|
+ let lineDom = groupTab.querySelector('#de-tab-line');
|
|
|
+ if (lineDom) {
|
|
|
+ lineDom.style.display = lineDisplay;
|
|
|
+ }
|
|
|
+ }
|
|
|
+};
|
|
|
+
|
|
|
+/**
|
|
|
+ * 切换到 Group tab时 刷新列表
|
|
|
+ */
|
|
|
+export const refreshTabGroup = () => {
|
|
|
+ chrome.runtime.sendMessage({
|
|
|
+ actionType: "CONTENT_REFRESH_TAB_GROUP_LIST",
|
|
|
+ data: {}
|
|
|
+ }, () => { });
|
|
|
+}
|
|
|
+
|
|
|
+/**
|
|
|
+ *
|
|
|
+ * tab选中时设置 激活 的字体样式和选中条
|
|
|
+ */
|
|
|
+const setTweetActiveTabStyle = (params) => {
|
|
|
+ let { color, display } = params || {};
|
|
|
+ let tab = document.querySelector('a[aria-selected="true"]');
|
|
|
+ if (tab) {
|
|
|
+ let tweetActiveTab = tab.querySelector('div');
|
|
|
+ if (tweetActiveTab) {
|
|
|
+ tweetActiveTab.style.color = color;
|
|
|
+
|
|
|
+ let tweetTabLine = tweetActiveTab.querySelector('div');
|
|
|
+ if (tweetTabLine) {
|
|
|
+ tweetTabLine.style.display = display;
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+}
|
|
|
+
|
|
|
+/**
|
|
|
+ *
|
|
|
+ * 设置 tab 切换时 tab内容的样式(显示隐藏)
|
|
|
+ */
|
|
|
+const setTabContentStyle = (params) => {
|
|
|
+ let { tweetTabContentDisply, iframeContentDisplay } = params;
|
|
|
+ let tweetTabContent = getTweetTabContent();
|
|
|
+ if (tweetTabContent) {
|
|
|
+ if (tweetTabContentDisply == 'block') {
|
|
|
+ let { visibility } = tweetTabContent.style;
|
|
|
+ if (visibility == 'hidden') {
|
|
|
+ tweetTabContent.style.visibility = 'visible';
|
|
|
+ tweetTabContent.style.height = 'auto';
|
|
|
+ tweetTabContent.style.overflow = 'auto';
|
|
|
+ }
|
|
|
+ } else {
|
|
|
+ tweetTabContent.style.visibility = 'hidden';
|
|
|
+ tweetTabContent.style.height = '0px';
|
|
|
+ tweetTabContent.style.overflow = 'hidden';
|
|
|
+ tweetTabContent.style.margin = '0';
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+ let iframeContent = getGroupTabContentNode();
|
|
|
+
|
|
|
+ if (!iframeContent) {
|
|
|
+ addTabGroupContent();
|
|
|
+ }
|
|
|
+ setTimeout(() => {
|
|
|
+ iframeContent = getGroupTabContentNode();
|
|
|
+ if (iframeContent) {
|
|
|
+ iframeContent.style.display = iframeContentDisplay;
|
|
|
+ }
|
|
|
+ })
|
|
|
+};
|
|
|
+
|
|
|
+/**
|
|
|
+ *
|
|
|
+ * 获取 twitter tab 下的内容
|
|
|
+ */
|
|
|
+const getTweetTabContent = () => {
|
|
|
+ let tweetTabContent = document.querySelector('[data-testid="primaryColumn"] [role="navigation"] + * > div[aria-label]:not([role="progressbar"])') || document.querySelector('div[data-testid="emptyState"]');
|
|
|
+ return tweetTabContent;
|
|
|
+}
|
|
|
+
|
|
|
+/**
|
|
|
+ * 注入 Group List 内容
|
|
|
+ */
|
|
|
+const addTabGroupContent = (cb) => {
|
|
|
+ let params = {
|
|
|
+ windowLocation: window.location
|
|
|
+ }
|
|
|
+ let iframe = document.createElement('iframe');
|
|
|
+ iframe.id = 'de-tab-group-content';
|
|
|
+ iframe.src = chrome.runtime.getURL('/iframe/tab-group.html') + `?params=${JSON.stringify(params)}`;
|
|
|
+ iframe.style.cssText = `border: medium none; height: 500px;display: none`
|
|
|
+
|
|
|
+ let iframeContent = getGroupTabContentNode();
|
|
|
+
|
|
|
+ let tweetTabContent = getTweetTabContent();
|
|
|
+ if (!iframeContent) {
|
|
|
+ if (tweetTabContent && tweetTabContent.parentElement) {
|
|
|
+ tweetTabContent.parentElement.appendChild(iframe);
|
|
|
+ cb && cb();
|
|
|
+ }
|
|
|
+ }
|
|
|
+};
|
|
|
+
|
|
|
+const getGroupTabContentNode = () => {
|
|
|
+ let content = document.getElementById('de-tab-group-content');
|
|
|
+ return content;
|
|
|
+}
|
|
|
+
|
|
|
+const setGroupTabStatus = () => {
|
|
|
+ let groupTab = getGroupTabNode();
|
|
|
+ if (groupTab) {
|
|
|
+ let line = groupTab.querySelector('#de-tab-line');
|
|
|
+ if (line) {
|
|
|
+ let { display } = line.style;
|
|
|
+ if (display != 'none') {
|
|
|
+ groupTab.click();
|
|
|
+ }
|
|
|
+ }
|
|
|
+ } else {
|
|
|
+ setTimeout(() => {
|
|
|
+ addGroupTab();
|
|
|
+ }, 2000)
|
|
|
+ }
|
|
|
+
|
|
|
+ clearInterval(fixProfileTabAutoTimer);
|
|
|
+ fixProfileTabAutoSwitch();
|
|
|
+};
|
|
|
+
|
|
|
+const fixProfileTabAutoSwitch = () => {
|
|
|
+ fixProfileTabAutoTimer = setInterval(() => {
|
|
|
+ let groupTab = getGroupTabNode();
|
|
|
+ let tweetTab = document.querySelector('a[aria-selected="true"]');
|
|
|
+
|
|
|
+ if (groupTab) {
|
|
|
+ let line = groupTab.querySelector('#de-tab-line');
|
|
|
+ if (line) {
|
|
|
+ let { display } = line.style;
|
|
|
+ if (display != 'none' && tweetTab) {
|
|
|
+ let groupContent = getGroupTabContentNode();
|
|
|
+ if (groupContent) {
|
|
|
+ let tweetTabContent = getTweetTabContent();
|
|
|
+ let { visibility } = tweetTabContent.style;
|
|
|
+ let { display } = groupContent.style;
|
|
|
+
|
|
|
+ if (display == 'block' && visibility != 'hidden') {
|
|
|
+ groupTab.click();
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }, 1000)
|
|
|
+}
|
|
|
+
|
|
|
+/**
|
|
|
+ *
|
|
|
+ * 设置Tab Group Iframe 样式
|
|
|
+ */
|
|
|
+export const setTabGroupIframeStyle = (params, isReSize = false) => {
|
|
|
+ if(!isReSize) {
|
|
|
+ getSysTheme();
|
|
|
+ }
|
|
|
+ let iframeContent = getGroupTabContentNode();
|
|
|
+ if (iframeContent) {
|
|
|
+ let htmlHeight = document.querySelector('html').offsetHeight;
|
|
|
+ let primaryColumnHeightn = document.querySelector('div[data-testid="primaryColumn"]').offsetHeight;
|
|
|
+ let height = primaryColumnHeightn > htmlHeight ? primaryColumnHeightn : htmlHeight;
|
|
|
+ iframeContent.style.height = height + 'px';
|
|
|
+ }
|
|
|
+}
|
|
|
+
|
|
|
+/**
|
|
|
+ * mask web3 Tab
|
|
|
+ *
|
|
|
+ */
|
|
|
+const getMaskWeb3Tab = () => {
|
|
|
+ let tab = document.querySelector('div[data-testid="ScrollSnap-nextButtonWrapper"] + span');
|
|
|
+ return tab;
|
|
|
+}
|
|
|
+
|
|
|
export const pageJumpHandler = (params) => {
|
|
|
let { url } = params
|
|
|
if (url) {
|
|
@@ -1810,7 +2323,37 @@ export const getTweetProfileNavTop = (params) => {
|
|
|
}, () => { })
|
|
|
}
|
|
|
|
|
|
-export const getSysTheme = () => {
|
|
|
+
|
|
|
+export const setGroupInfo = (params = {}) => {
|
|
|
+ tweetAccountBindGroupInfo.groupInfo = params;
|
|
|
+ let groupTab = getGroupTabNode();
|
|
|
+
|
|
|
+ if (!params.nftGroupId) {
|
|
|
+ let { pathname = '' } = window.location;
|
|
|
+ if (pathname == "/compose/tweet") {
|
|
|
+ return;
|
|
|
+ };
|
|
|
+ if (groupTab) {
|
|
|
+ groupTab.style.display = 'none';
|
|
|
+ } else {
|
|
|
+ setTimeout(() => {
|
|
|
+ groupTab = getGroupTabNode();
|
|
|
+ if (groupTab) {
|
|
|
+ groupTab.style.display = 'none';
|
|
|
+ }
|
|
|
+ }, 800)
|
|
|
+ }
|
|
|
+ } else {
|
|
|
+ if (groupTab) {
|
|
|
+ let { display } = groupTab.style;
|
|
|
+ if (display == 'none') {
|
|
|
+ groupTab.style.display = 'block';
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+}
|
|
|
+
|
|
|
+const getSysTheme = () => {
|
|
|
const themeMedia = window.matchMedia("(prefers-color-scheme: light)");
|
|
|
if (themeMedia.matches) {
|
|
|
systemInfo.theme = 'light'
|
|
@@ -1840,6 +2383,12 @@ const sysThemeChange = () => {
|
|
|
}, 800)
|
|
|
}
|
|
|
|
|
|
+/**
|
|
|
+ *
|
|
|
+ * Group Tab List End
|
|
|
+ *
|
|
|
+ */
|
|
|
+
|
|
|
|
|
|
export const loginSuccessHandle = () => {
|
|
|
// 检查是否漏出group图标
|