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))