{
"icon":"red-packet.jpg",
"color":"linear-gradient(274.27deg, rgba(255, 255, 255, 0.1) 0%, rgba(255, 255, 255, 0) 100%), #EB4232",
- "link":"https://bapp.blockmeta.com/redpacket/",
- "domainsMeta": {
- "icon": "https://supertx.bymov.io/favicon.ico"
- }
+ "link":"https://bapp.blockmeta.com/redpacket/"
}
]
}
},
);
- getDomains().then((domains)=>{
+ const lang = store.getters.language === 'zh'?'cn':'en'
+
+ getDomains(lang).then(({domains, domainMeta})=>{
const _bytom = store.state.bytom.clone()
if(!domains.every(v => _bytom.settings.domains.includes(v))){
_bytom.settings.domains = Array.from(new Set(_bytom.settings.domains.concat(domains)))
+ _bytom.settings.domainsMeta = Object.assign(_bytom.settings.domainsMeta, domainMeta)
store.dispatch(Actions.UPDATE_STORED_BYTOM, _bytom)
}
})
},
);
- getDomains().then((domains)=>{
+ getDomains().then(({domains, domainMeta})=>{
const _bytom = store.state.bytom.clone()
if(!domains.every(v => _bytom.settings.domains.includes(v))){
_bytom.settings.domains = Array.from(new Set(_bytom.settings.domains.concat(domains)))
+ _bytom.settings.domainsMeta = Object.assign(_bytom.settings.domainsMeta, domainMeta)
store.dispatch(Actions.UPDATE_STORED_BYTOM, _bytom)
}
})
return original.filter(value => !remove.includes(value));
}
-export function getDomains(){
+export function getDomains(lang = 'en'){
let domains = bappData.list.filter( l => l.link!== undefined).map(a => a.link.split('/')[2]);
const crossChainLink = "crosschain.bymov.io"
+ let domainMeta = {
+ "crosschain.bymov.io":{
+ icon: "https://crosschain.bymov.io/favicon.ico",
+ title: "MOV"
+ }
+ }
+
+ updateDomainMeta(bappData, domainMeta, lang)
+
return fetch(bappRequestUrl)
.then(response => response.json())
.then(json => {
if(!_.isEqual(json, bappData)){
domains = json.list.filter( l => l.link!== undefined).map(a => a.link.split('/')[2]);
+ updateDomainMeta(json, domainMeta, lang)
}
domains.push(crossChainLink)
- return domains;
+ return {domains, domainMeta};
}).catch((e)=>{
domains.push(crossChainLink)
- return domains;
+ return {domains, domainMeta};
});
}
+
+function updateDomainMeta(jsonData, domainMeta, lang){
+ const list = jsonData.list
+ for(let index in list){
+ const meta = list[index].domainsMeta
+ if(meta){
+ meta.title = jsonData[lang][index].title
+ const domain = list[index]['link'].split('/')[2]
+ domainMeta[domain] = meta
+ }
+ }
+}