diff --git a/components/panels/AggregatedTimePanel.jsx b/components/panels/AggregatedTimePanel.jsx index 41ed4ab80..8cfd327ff 100644 --- a/components/panels/AggregatedTimePanel.jsx +++ b/components/panels/AggregatedTimePanel.jsx @@ -10,36 +10,29 @@ import { cdn, wfcdn, optimize } from '@/services/utilities.js'; dayjs.extend(utc); -const corpus = cdn('svg/factions/corpus.svg'); -const corrupted = cdn('svg/factions/corrupted.svg'); -const grineer = cdn('svg/factions/grineer.svg'); -const infested = cdn('svg/factions/infested.svg'); -const sentient = cdn('svg/factions/sentient.svg'); const steelPath = cdn('svg/sp-logo.svg'); const steelEssence = optimize(wfcdn('steel-essence.png'), '250x250', 'fill', 'center'); -const fImg = { - corpus, - grineer, - infested, - infestation: infested, - corrupted, - orokin: corrupted, - sentient, -}; - const cycleDefault = { activation: '0', expiry: '0', isWarm: true, - active: 'Fass', + active: 'Loading...', isDay: true, + state: 'Loading...', }; const textStyle = { 'text-transform': 'capitalize', }; +const fontStyle = { + ...textStyle, + position: 'relative', + top: '2.5px', + left: '5px', +}; + const EarthTimer = { props: ['earthCycle'], computed: { @@ -203,18 +196,21 @@ const ResetTimer = { }; const AnomalyTimer = { props: ['sentientOutposts'], - computed: {}, + computed: { + label() { + return this.$t('factions.sentient') + ' | ' + this.$t('sentientoutpost.warn'); + }, + }, render() { return (
{this.$t('sentientoutpost.header')} -
{this.sentientOutposts.mission.node} @@ -234,8 +230,12 @@ const SteelPathTimer = { src={steelPath} name={this.$t('steelPath.header')} class="li-mission-decorator li-mission-decorator-lg invert mx-1" - height="20px" - width="20px" + height="12.5px" + width="12.5px" + style={{ + position: 'relative', + top: '-1.5px', + }} />
@@ -244,6 +244,7 @@ const SteelPathTimer = {
{this.steelPath?.currentReward?.cost} +
{this.$t('arbitration.header')} - +
{this.arbitration.node}
@@ -289,7 +281,38 @@ const ArbitrationTimer = { ); }, }; - +const ZarimanTimer = { + props: ['zarimanCycle'], + computed: { + isZarimanCorpus() { + return this.zarimanCycle.state === 'corpus'; + }, + isZarimanGrineer() { + return this.zarimanCycle.state === 'grineer'; + }, + }, + render() { + return ( +
+ + {this.$t(`location.zariman`)} +
+ {this.isZarimanCorpus && } + {this.isZarimanGrineer && } +
+ {this.$t(`time.${this.zarimanCycle.state.toLowerCase()}`)} +
+
+ +
+ ); + }, +}; export default { name: 'AggregatedTimePanel', props: { @@ -299,6 +322,7 @@ export default { cetusCycle: cycleDefault, earthCycle: cycleDefault, cambionCycle: cycleDefault, + zarimanCycle: cycleDefault, sentientOutposts: {}, steelPath: { activation: 0, @@ -350,6 +374,7 @@ export default { {this.isArbitrationActive && this.componentState.arbitration.display && ( )} + {this.componentState.zariman?.display && }
diff --git a/nuxt.config.js b/nuxt.config.js index 088e2d703..da13b7782 100644 --- a/nuxt.config.js +++ b/nuxt.config.js @@ -30,6 +30,7 @@ export default { '@fortawesome/fontawesome-free/css/regular.min.css', '@fortawesome/fontawesome-free/css/solid.min.css', '@fortawesome/fontawesome-free/css/brands.min.css', + '@/static/less/Warframe-symbols.less', '@/static/less/common.less', '@/static/less/tables.less', '@/static/less/night.less', diff --git a/package.json b/package.json index 31d3dd2fe..9671b77c1 100644 --- a/package.json +++ b/package.json @@ -14,7 +14,7 @@ "test:debug": "cypress open --config-file=cypress.config.js" }, "lint-staged": { - "*.{js,vue}": "eslint --cache", + "*.{js,vue,jsx}": "eslint --cache", "*.**": "prettier --check --ignore-unknown" }, "dependencies": { diff --git a/static/json/components.json b/static/json/components.json index 274725b07..8fcc9982a 100644 --- a/static/json/components.json +++ b/static/json/components.json @@ -70,6 +70,17 @@ "location": "Cambion" } }, + "zariman": { + "display": true, + "displayable": true, + "displayName": "Zariman Ten Zero Cycle", + "key": "zariman", + "component": "TimePanel", + "props": { + "time": "@worldstate.zarimanCycle", + "location": "Zariman" + } + }, "bounties": { "display": true, "displayable": true, diff --git a/static/json/initialWorldstate.json b/static/json/initialWorldstate.json index 90a6303aa..65c7a345a 100644 --- a/static/json/initialWorldstate.json +++ b/static/json/initialWorldstate.json @@ -119,7 +119,16 @@ "active": false, "id": "12345" }, - "twitter": [] + "twitter": [], + "zarimanCycle": { + "id": "zarimanCycle0000000080000", + "expiry": "2000-01-01T01:00:00.000Z", + "activation": "2000-01-01T01:00:00.000Z", + "state": "Loading...", + "timeLeft": "1h 1m 1s", + "shortString": "1h 1m 1s", + "isCorpus": false + } }, "ps4": { "timestamp": "2000-01-01T01:00:00.000Z", diff --git a/static/lang/cs.json b/static/lang/cs.json index 4fd9029f0..8a2dbf48c 100644 --- a/static/lang/cs.json +++ b/static/lang/cs.json @@ -108,7 +108,8 @@ "cetus": "Cetus", "vallis": "Vallis", "earth": "Země", - "cambion": "Cambion" + "cambion": "Cambion", + "zariman": "Zariman Ten Zero" }, "news": { "header": "Novinky", @@ -178,7 +179,9 @@ "ongoingL": "Probíhá:", "expiredL": "Expirováno", "depart": "Ocestovat", - "arrive": "Objeví za" + "arrive": "Objeví za", + "grineer": "Grineer", + "corpus": "Corpus" }, "timer": { "ostron": "Ostron", diff --git a/static/lang/de.json b/static/lang/de.json index 7c172a7f0..95e4ca97c 100644 --- a/static/lang/de.json +++ b/static/lang/de.json @@ -108,7 +108,8 @@ "cetus": "Cetus", "vallis": "Tal", "earth": "Erde", - "cambion": "Cambion" + "cambion": "Cambion", + "zariman": "Zariman Ten Zero" }, "news": { "header": "Neuigkeiten", diff --git a/static/lang/en.json b/static/lang/en.json index 15a17a094..6d30a25a6 100644 --- a/static/lang/en.json +++ b/static/lang/en.json @@ -108,7 +108,8 @@ "cetus": "Cetus", "vallis": "Vallis", "earth": "Earth", - "cambion": "Cambion" + "cambion": "Cambion", + "zariman": "Zariman Ten Zero" }, "news": { "header": "News", @@ -178,7 +179,9 @@ "ongoingL": "Ongoing for:", "expiredL": "Expired", "depart": "Departs", - "arrive": "Arrives at" + "arrive": "Arrives at", + "grineer": "Grineer", + "corpus": "Corpus" }, "timer": { "ostron": "Ostron", diff --git a/static/lang/es.json b/static/lang/es.json index 623ed835e..5ae47d021 100644 --- a/static/lang/es.json +++ b/static/lang/es.json @@ -108,7 +108,8 @@ "cetus": "Cetus", "vallis": "Valles", "earth": "La Tierra", - "cambion": "Cambion" + "cambion": "Cambion", + "zariman": "Zariman Ten Zero" }, "news": { "header": "Noticias", diff --git a/static/lang/fr.json b/static/lang/fr.json index 347bdbeba..891cb5d65 100644 --- a/static/lang/fr.json +++ b/static/lang/fr.json @@ -108,7 +108,8 @@ "cetus": "Cetus", "vallis": "Vallée d'Orbis", "earth": "Terre", - "cambion": "Puy de Cambion" + "cambion": "Puy de Cambion", + "zariman": "Zariman Ten Zero" }, "news": { "header": "Actualités", @@ -178,7 +179,9 @@ "ongoingL": "En cours pour :", "expiredL": "Expiré", "depart": "Départs", - "arrive": "Arrivée prévue à" + "arrive": "Arrivée prévue à", + "grineer": "Grineer", + "corpus": "Corpus" }, "timer": { "ostron": "Ostron", diff --git a/static/lang/it.json b/static/lang/it.json index 0882722f1..c6d78901f 100644 --- a/static/lang/it.json +++ b/static/lang/it.json @@ -108,7 +108,8 @@ "cetus": "Cetus", "vallis": "Vallis", "earth": "Terra", - "cambion": "Cambion" + "cambion": "Cambion", + "zariman": "Zariman Ten Zero" }, "news": { "header": "Novità", @@ -178,7 +179,9 @@ "ongoingL": "In corso per:", "expiredL": "Scaduto", "depart": "Partenza", - "arrive": "Arriva a" + "arrive": "Arriva a", + "grineer": "Grineer", + "corpus": "Corpus" }, "timer": { "ostron": "Ostron", diff --git a/static/lang/ko.json b/static/lang/ko.json index f13445758..af7635cd6 100644 --- a/static/lang/ko.json +++ b/static/lang/ko.json @@ -108,7 +108,8 @@ "cetus": "시터스", "vallis": "협곡", "earth": "지구", - "cambion": "캠비온" + "cambion": "캠비온", + "zariman": "Zariman Ten Zero" }, "news": { "header": "새 소식", @@ -178,7 +179,9 @@ "ongoingL": "진행:", "expiredL": "만료", "depart": "출발", - "arrive": "도착까지" + "arrive": "도착까지", + "grineer": "Grineer", + "corpus": "Corpus" }, "timer": { "ostron": "오스트론", diff --git a/static/lang/pl.json b/static/lang/pl.json index 15a17a094..6d30a25a6 100644 --- a/static/lang/pl.json +++ b/static/lang/pl.json @@ -108,7 +108,8 @@ "cetus": "Cetus", "vallis": "Vallis", "earth": "Earth", - "cambion": "Cambion" + "cambion": "Cambion", + "zariman": "Zariman Ten Zero" }, "news": { "header": "News", @@ -178,7 +179,9 @@ "ongoingL": "Ongoing for:", "expiredL": "Expired", "depart": "Departs", - "arrive": "Arrives at" + "arrive": "Arrives at", + "grineer": "Grineer", + "corpus": "Corpus" }, "timer": { "ostron": "Ostron", diff --git a/static/lang/pt.json b/static/lang/pt.json index 15a17a094..6d30a25a6 100644 --- a/static/lang/pt.json +++ b/static/lang/pt.json @@ -108,7 +108,8 @@ "cetus": "Cetus", "vallis": "Vallis", "earth": "Earth", - "cambion": "Cambion" + "cambion": "Cambion", + "zariman": "Zariman Ten Zero" }, "news": { "header": "News", @@ -178,7 +179,9 @@ "ongoingL": "Ongoing for:", "expiredL": "Expired", "depart": "Departs", - "arrive": "Arrives at" + "arrive": "Arrives at", + "grineer": "Grineer", + "corpus": "Corpus" }, "timer": { "ostron": "Ostron", diff --git a/static/lang/ru.json b/static/lang/ru.json index 27640ac28..6d705c442 100644 --- a/static/lang/ru.json +++ b/static/lang/ru.json @@ -108,7 +108,8 @@ "cetus": "Цетус", "vallis": "Долина Сфер", "earth": "Земля", - "cambion": "Камбион" + "cambion": "Камбион", + "zariman": "Zariman Ten Zero" }, "news": { "header": "Новости", @@ -178,7 +179,9 @@ "ongoingL": "Длится:", "expiredL": "Завершено", "depart": "Отбытие", - "arrive": "Прибудет на" + "arrive": "Прибудет на", + "grineer": "Grineer", + "corpus": "Corpus" }, "timer": { "ostron": "Острон", diff --git a/static/lang/sr.json b/static/lang/sr.json index 052408a23..6e8045517 100644 --- a/static/lang/sr.json +++ b/static/lang/sr.json @@ -108,7 +108,8 @@ "cetus": "Cetus", "vallis": "Vallis", "earth": "Earth", - "cambion": "Cambion" + "cambion": "Cambion", + "zariman": "Zariman Ten Zero" }, "news": { "header": "News", @@ -178,7 +179,9 @@ "ongoingL": "Ongoing for:", "expiredL": "Expired", "depart": "Departs", - "arrive": "Arrives at" + "arrive": "Arrives at", + "grineer": "Grineer", + "corpus": "Corpus" }, "timer": { "ostron": "Ostron", diff --git a/static/lang/tr.json b/static/lang/tr.json index 15a17a094..6d30a25a6 100644 --- a/static/lang/tr.json +++ b/static/lang/tr.json @@ -108,7 +108,8 @@ "cetus": "Cetus", "vallis": "Vallis", "earth": "Earth", - "cambion": "Cambion" + "cambion": "Cambion", + "zariman": "Zariman Ten Zero" }, "news": { "header": "News", @@ -178,7 +179,9 @@ "ongoingL": "Ongoing for:", "expiredL": "Expired", "depart": "Departs", - "arrive": "Arrives at" + "arrive": "Arrives at", + "grineer": "Grineer", + "corpus": "Corpus" }, "timer": { "ostron": "Ostron", diff --git a/static/lang/zh.json b/static/lang/zh.json index 6e6623136..6dd661a27 100644 --- a/static/lang/zh.json +++ b/static/lang/zh.json @@ -108,7 +108,8 @@ "cetus": "希图斯", "vallis": "奥布山谷", "earth": "地球", - "cambion": "魔胎之境" + "cambion": "魔胎之境", + "zariman": "Zariman Ten Zero" }, "news": { "header": "新闻", @@ -178,7 +179,9 @@ "ongoingL": "已进行:", "expiredL": "已结束", "depart": "将离开", - "arrive": "将到达" + "arrive": "将到达", + "grineer": "Grineer", + "corpus": "Corpus" }, "timer": { "ostron": "Ostron", diff --git a/static/less/Warframe-symbols.less b/static/less/Warframe-symbols.less new file mode 100644 index 000000000..35f07ec15 --- /dev/null +++ b/static/less/Warframe-symbols.less @@ -0,0 +1 @@ +@import (css) 'https://wfcd.github.io/genesis-assets/fonts/Warframe-symbols.css'; diff --git a/store/worldstate.js b/store/worldstate.js index c8b3d1cee..2c8d337bd 100644 --- a/store/worldstate.js +++ b/store/worldstate.js @@ -199,6 +199,7 @@ export const actions = { .concat(ws.flashSales.map((item) => item.id)) .concat(ws.conclaveChallenges.map((item) => item.id)) .concat([ws.cetusCycle.id]) + .concat([ws.zarimanCycle.id]) .concat([ws.voidTrader.id]) .concat(ws.arbitration && [`arbitration:${new Date(ws.arbitration.expiry).getTime()}`]) // .concat(ws.persistentEnemies.map((enemy) => enemy.pid))