Finalizacja migracji
@@ -1,162 +1,162 @@
|
||||
@import "./styles/responsive.scss";
|
||||
@import "./styles/variables.scss";
|
||||
@import "./styles/global.scss";
|
||||
@import "./styles/scenery_status.scss";
|
||||
|
||||
:root {
|
||||
--clr-primary: #ffc014;
|
||||
--clr-secondary: #2f2f2f;
|
||||
|
||||
--clr-bg: #333;
|
||||
|
||||
--clr-accent: #1085b3;
|
||||
--clr-accent2: #ff3d5d;
|
||||
|
||||
--clr-skr: #ff5100;
|
||||
--clr-twr: #ffbb00;
|
||||
}
|
||||
|
||||
// VUE ROUTE CHANGE ANIMATION
|
||||
.view-anim {
|
||||
&-enter-from,
|
||||
&-leave-to {
|
||||
opacity: 0.02;
|
||||
}
|
||||
|
||||
&-enter-active,
|
||||
&-leave-active {
|
||||
transition: all $animDuration $animType;
|
||||
min-height: 100%;
|
||||
}
|
||||
}
|
||||
|
||||
.route {
|
||||
margin: 0 0.2em;
|
||||
|
||||
&-active {
|
||||
color: $accentCol;
|
||||
font-weight: bold;
|
||||
}
|
||||
}
|
||||
|
||||
// APP
|
||||
.app {
|
||||
background: $bgCol;
|
||||
color: white;
|
||||
|
||||
overflow: hidden;
|
||||
|
||||
font-size: 1rem;
|
||||
|
||||
@include smallScreen() {
|
||||
font-size: calc(0.45rem + 1vw);
|
||||
}
|
||||
}
|
||||
|
||||
// CONTAINER
|
||||
.app_container {
|
||||
display: flex;
|
||||
flex-flow: column;
|
||||
|
||||
min-width: 0;
|
||||
min-height: 100vh;
|
||||
|
||||
header {
|
||||
flex: 0 0 auto;
|
||||
}
|
||||
|
||||
main {
|
||||
flex: 1 1 auto;
|
||||
}
|
||||
|
||||
footer {
|
||||
flex: 0 1 0.2em;
|
||||
}
|
||||
}
|
||||
|
||||
// HEADER
|
||||
.app_header {
|
||||
background: $primaryCol;
|
||||
padding: 0.15em;
|
||||
|
||||
border-radius: 0 0 1em 1em;
|
||||
|
||||
display: flex;
|
||||
justify-content: center;
|
||||
}
|
||||
|
||||
.header {
|
||||
&_brand {
|
||||
position: relative;
|
||||
width: 100%;
|
||||
font-size: 4.25em;
|
||||
|
||||
text-align: center;
|
||||
|
||||
img {
|
||||
width: 0.8em;
|
||||
}
|
||||
|
||||
.brand_lang {
|
||||
position: absolute;
|
||||
right: 0;
|
||||
|
||||
transform: translate(110%, -35%);
|
||||
|
||||
img {
|
||||
width: 0.6em;
|
||||
}
|
||||
|
||||
cursor: pointer;
|
||||
}
|
||||
}
|
||||
|
||||
&_info {
|
||||
display: flex;
|
||||
justify-content: space-between;
|
||||
|
||||
font-size: 1.25em;
|
||||
|
||||
margin: 0 0.3em;
|
||||
padding: 0.2em;
|
||||
}
|
||||
|
||||
&_links {
|
||||
display: flex;
|
||||
justify-content: center;
|
||||
|
||||
border-radius: 0.7em;
|
||||
|
||||
font-size: 1.25em;
|
||||
padding: 0.5em;
|
||||
}
|
||||
}
|
||||
|
||||
// COUNTER
|
||||
.info_counter {
|
||||
display: flex;
|
||||
align-items: center;
|
||||
color: $accentCol;
|
||||
|
||||
span {
|
||||
margin: 0 0.15em;
|
||||
}
|
||||
|
||||
img {
|
||||
width: 1.35em;
|
||||
}
|
||||
}
|
||||
|
||||
// FOOTER
|
||||
footer.app_footer {
|
||||
max-width: 100%;
|
||||
padding: 0.5em;
|
||||
|
||||
z-index: 10;
|
||||
|
||||
background: #111;
|
||||
color: white;
|
||||
|
||||
text-align: center;
|
||||
vertical-align: middle;
|
||||
@import "./styles/responsive.scss";
|
||||
@import "./styles/variables.scss";
|
||||
@import "./styles/global.scss";
|
||||
@import "./styles/scenery_status.scss";
|
||||
|
||||
:root {
|
||||
--clr-primary: #ffc014;
|
||||
--clr-secondary: #2f2f2f;
|
||||
|
||||
--clr-bg: #333;
|
||||
|
||||
--clr-accent: #1085b3;
|
||||
--clr-accent2: #ff3d5d;
|
||||
|
||||
--clr-skr: #ff5100;
|
||||
--clr-twr: #ffbb00;
|
||||
}
|
||||
|
||||
// VUE ROUTE CHANGE ANIMATION
|
||||
.view-anim {
|
||||
&-enter-from,
|
||||
&-leave-to {
|
||||
opacity: 0.02;
|
||||
}
|
||||
|
||||
&-enter-active,
|
||||
&-leave-active {
|
||||
transition: all $animDuration $animType;
|
||||
min-height: 100%;
|
||||
}
|
||||
}
|
||||
|
||||
.route {
|
||||
margin: 0 0.2em;
|
||||
|
||||
&-active {
|
||||
color: $accentCol;
|
||||
font-weight: bold;
|
||||
}
|
||||
}
|
||||
|
||||
// APP
|
||||
.app {
|
||||
background: $bgCol;
|
||||
color: white;
|
||||
|
||||
overflow: hidden;
|
||||
|
||||
font-size: 1rem;
|
||||
|
||||
@include smallScreen() {
|
||||
font-size: calc(0.45rem + 1vw);
|
||||
}
|
||||
}
|
||||
|
||||
// CONTAINER
|
||||
.app_container {
|
||||
display: flex;
|
||||
flex-flow: column;
|
||||
|
||||
min-width: 0;
|
||||
min-height: 100vh;
|
||||
|
||||
header {
|
||||
flex: 0 0 auto;
|
||||
}
|
||||
|
||||
main {
|
||||
flex: 1 1 auto;
|
||||
}
|
||||
|
||||
footer {
|
||||
flex: 0 1 0.2em;
|
||||
}
|
||||
}
|
||||
|
||||
// HEADER
|
||||
.app_header {
|
||||
background: $primaryCol;
|
||||
padding: 0.15em;
|
||||
|
||||
border-radius: 0 0 1em 1em;
|
||||
|
||||
display: flex;
|
||||
justify-content: center;
|
||||
}
|
||||
|
||||
.header {
|
||||
&_brand {
|
||||
position: relative;
|
||||
width: 100%;
|
||||
font-size: 4.25em;
|
||||
|
||||
text-align: center;
|
||||
|
||||
img {
|
||||
width: 0.8em;
|
||||
}
|
||||
|
||||
.brand_lang {
|
||||
position: absolute;
|
||||
right: 0;
|
||||
|
||||
transform: translate(110%, -35%);
|
||||
|
||||
img {
|
||||
width: 0.6em;
|
||||
}
|
||||
|
||||
cursor: pointer;
|
||||
}
|
||||
}
|
||||
|
||||
&_info {
|
||||
display: flex;
|
||||
justify-content: space-between;
|
||||
|
||||
font-size: 1.25em;
|
||||
|
||||
margin: 0 0.3em;
|
||||
padding: 0.2em;
|
||||
}
|
||||
|
||||
&_links {
|
||||
display: flex;
|
||||
justify-content: center;
|
||||
|
||||
border-radius: 0.7em;
|
||||
|
||||
font-size: 1.25em;
|
||||
padding: 0.5em;
|
||||
}
|
||||
}
|
||||
|
||||
// COUNTER
|
||||
.info_counter {
|
||||
display: flex;
|
||||
align-items: center;
|
||||
color: $accentCol;
|
||||
|
||||
span {
|
||||
margin: 0 0.15em;
|
||||
}
|
||||
|
||||
img {
|
||||
width: 1.35em;
|
||||
}
|
||||
}
|
||||
|
||||
// FOOTER
|
||||
footer.app_footer {
|
||||
max-width: 100%;
|
||||
padding: 0.5em;
|
||||
|
||||
z-index: 10;
|
||||
|
||||
background: #111;
|
||||
color: white;
|
||||
|
||||
text-align: center;
|
||||
vertical-align: middle;
|
||||
}
|
||||
@@ -1,213 +1,213 @@
|
||||
<template>
|
||||
<div class="app">
|
||||
<!-- <UpdateModal
|
||||
:currentVersion="VERSION"
|
||||
@toggleUpdateModal="toggleUpdateModal"
|
||||
v-if="updateModalVisible"
|
||||
/> -->
|
||||
|
||||
<div class="app_container">
|
||||
<header class="app_header">
|
||||
<div class="header_body">
|
||||
<span class="header_brand">
|
||||
<span>
|
||||
<span>Stacj</span>
|
||||
<img
|
||||
src="@/assets/trainlogo.png"
|
||||
alt="trainlogo"
|
||||
/>
|
||||
<span>wnik</span>
|
||||
</span>
|
||||
|
||||
<span class="brand_lang">
|
||||
|
||||
<span
|
||||
class="lang pl"
|
||||
@click="changeLang('en')"
|
||||
:class="{ current: currentLang == 'pl' }"
|
||||
v-if="currentLang == 'pl'"
|
||||
>
|
||||
<img
|
||||
:src="iconPL"
|
||||
alt="icon-pl"
|
||||
/>
|
||||
</span>
|
||||
|
||||
<span
|
||||
class="lang en"
|
||||
@click="changeLang('pl')"
|
||||
:class="{ current: currentLang == 'en' }"
|
||||
v-if="currentLang == 'en'"
|
||||
>
|
||||
<img
|
||||
:src="iconEN"
|
||||
alt="icon-en"
|
||||
/>
|
||||
</span>
|
||||
</span>
|
||||
</span>
|
||||
|
||||
<span class="header_info">
|
||||
<Clock />
|
||||
<div class="info_counter">
|
||||
<img
|
||||
src="@/assets/icon-dispatcher.svg"
|
||||
alt="icon dispatcher"
|
||||
/>
|
||||
<span>{{ data.activeStationCount }}</span>
|
||||
<span>{{ data.activeTrainCount }}</span>
|
||||
<img
|
||||
src="@/assets/icon-train.svg"
|
||||
alt="icon train"
|
||||
/>
|
||||
</div>
|
||||
</span>
|
||||
|
||||
<span class="header_links">
|
||||
<router-link
|
||||
class="route"
|
||||
active-class="route-active"
|
||||
to="/"
|
||||
exact
|
||||
>{{ $t("app.sceneries") }}
|
||||
</router-link>
|
||||
/
|
||||
<router-link
|
||||
class="route"
|
||||
active-class="route-active"
|
||||
to="/trains"
|
||||
>{{ $t("app.trains") }}
|
||||
</router-link>
|
||||
</span>
|
||||
</div>
|
||||
</header>
|
||||
|
||||
<main class="app_main">
|
||||
|
||||
<router-view v-slot="{ Component }">
|
||||
<transition
|
||||
name="view-anim"
|
||||
mode="out-in"
|
||||
>
|
||||
<keep-alive>
|
||||
<component :is="Component" />
|
||||
</keep-alive>
|
||||
</transition>
|
||||
|
||||
</router-view>
|
||||
</main>
|
||||
|
||||
<footer class="app_footer">
|
||||
©
|
||||
<a
|
||||
href="https://td2.info.pl/profile/?u=20777"
|
||||
target="_blank"
|
||||
>
|
||||
Spythere
|
||||
</a>
|
||||
2021 | v{{ VERSION }}
|
||||
|
||||
</footer>
|
||||
</div>
|
||||
</div>
|
||||
</template>
|
||||
|
||||
<script lang="ts">
|
||||
// import UpdateModal from "@/components/Global/UpdateModal.vue";
|
||||
import Clock from "@/components/App/Clock.vue";
|
||||
|
||||
import StorageManager from "@/scripts/managers/storageManager";
|
||||
import { computed, ComputedRef, defineComponent } from "vue";
|
||||
import { GETTERS } from "./constants/storeConstants";
|
||||
import { StoreData } from "./scripts/interfaces/StoreData";
|
||||
import { useStore } from "./store";
|
||||
// import { StoreData } from "./scripts/interfaces/StoreData";
|
||||
|
||||
export default defineComponent({
|
||||
components: {
|
||||
Clock,
|
||||
},
|
||||
|
||||
setup() {
|
||||
const store = useStore();
|
||||
store.dispatch("synchronizeData");
|
||||
|
||||
const data: ComputedRef<StoreData> = computed(
|
||||
() => store.getters[GETTERS.allData]
|
||||
);
|
||||
|
||||
return {
|
||||
data,
|
||||
};
|
||||
},
|
||||
|
||||
data: () => ({
|
||||
VERSION: "1.4.7",
|
||||
updateModalVisible: false,
|
||||
hasReleaseNotes: false,
|
||||
currentLang: "pl",
|
||||
|
||||
iconEN: require("@/assets/icon-en.jpg"),
|
||||
iconPL: require("@/assets/icon-pl.svg"),
|
||||
}),
|
||||
|
||||
created() {
|
||||
this.loadLang();
|
||||
},
|
||||
|
||||
mounted() {
|
||||
if (StorageManager.getStringValue("version") != this.VERSION) {
|
||||
StorageManager.setStringValue("version", this.VERSION);
|
||||
|
||||
if (this.hasReleaseNotes)
|
||||
StorageManager.setBooleanValue("version_notes_read", false);
|
||||
}
|
||||
|
||||
this.updateModalVisible =
|
||||
this.hasReleaseNotes &&
|
||||
!StorageManager.getBooleanValue("version_notes_read");
|
||||
},
|
||||
|
||||
methods: {
|
||||
toggleUpdateModal() {
|
||||
this.updateModalVisible = !this.updateModalVisible;
|
||||
StorageManager.setBooleanValue("version_notes_read", true);
|
||||
},
|
||||
|
||||
changeLang(lang: string) {
|
||||
this.$i18n.locale = lang;
|
||||
this.currentLang = lang;
|
||||
|
||||
StorageManager.setStringValue("lang", lang);
|
||||
},
|
||||
|
||||
loadLang() {
|
||||
const storageLang = StorageManager.getStringValue("lang");
|
||||
|
||||
if (storageLang) {
|
||||
this.changeLang(storageLang);
|
||||
return;
|
||||
}
|
||||
|
||||
if (!window.navigator.language) {
|
||||
this.changeLang("pl");
|
||||
return;
|
||||
}
|
||||
|
||||
switch (window.navigator.language) {
|
||||
case "pl-PL":
|
||||
this.changeLang("pl");
|
||||
break;
|
||||
case "en-EN":
|
||||
default:
|
||||
this.changeLang("en");
|
||||
break;
|
||||
}
|
||||
|
||||
return;
|
||||
},
|
||||
},
|
||||
});
|
||||
</script>
|
||||
|
||||
<template>
|
||||
<div class="app">
|
||||
<!-- <UpdateModal
|
||||
:currentVersion="VERSION"
|
||||
@toggleUpdateModal="toggleUpdateModal"
|
||||
v-if="updateModalVisible"
|
||||
/> -->
|
||||
|
||||
<div class="app_container">
|
||||
<header class="app_header">
|
||||
<div class="header_body">
|
||||
<span class="header_brand">
|
||||
<span>
|
||||
<span>Stacj</span>
|
||||
<img
|
||||
src="@/assets/trainlogo.png"
|
||||
alt="trainlogo"
|
||||
/>
|
||||
<span>wnik</span>
|
||||
</span>
|
||||
|
||||
<span class="brand_lang">
|
||||
|
||||
<span
|
||||
class="lang pl"
|
||||
@click="changeLang('en')"
|
||||
:class="{ current: currentLang == 'pl' }"
|
||||
v-if="currentLang == 'pl'"
|
||||
>
|
||||
<img
|
||||
:src="iconPL"
|
||||
alt="icon-pl"
|
||||
/>
|
||||
</span>
|
||||
|
||||
<span
|
||||
class="lang en"
|
||||
@click="changeLang('pl')"
|
||||
:class="{ current: currentLang == 'en' }"
|
||||
v-if="currentLang == 'en'"
|
||||
>
|
||||
<img
|
||||
:src="iconEN"
|
||||
alt="icon-en"
|
||||
/>
|
||||
</span>
|
||||
</span>
|
||||
</span>
|
||||
|
||||
<span class="header_info">
|
||||
<Clock />
|
||||
<div class="info_counter">
|
||||
<img
|
||||
src="@/assets/icon-dispatcher.svg"
|
||||
alt="icon dispatcher"
|
||||
/>
|
||||
<span>{{ data.activeStationCount }}</span>
|
||||
<span>{{ data.activeTrainCount }}</span>
|
||||
<img
|
||||
src="@/assets/icon-train.svg"
|
||||
alt="icon train"
|
||||
/>
|
||||
</div>
|
||||
</span>
|
||||
|
||||
<span class="header_links">
|
||||
<router-link
|
||||
class="route"
|
||||
active-class="route-active"
|
||||
to="/"
|
||||
exact
|
||||
>{{ $t("app.sceneries") }}
|
||||
</router-link>
|
||||
/
|
||||
<router-link
|
||||
class="route"
|
||||
active-class="route-active"
|
||||
to="/trains"
|
||||
>{{ $t("app.trains") }}
|
||||
</router-link>
|
||||
</span>
|
||||
</div>
|
||||
</header>
|
||||
|
||||
<main class="app_main">
|
||||
|
||||
<router-view v-slot="{ Component }">
|
||||
<transition
|
||||
name="view-anim"
|
||||
mode="out-in"
|
||||
>
|
||||
<keep-alive>
|
||||
<component :is="Component" />
|
||||
</keep-alive>
|
||||
</transition>
|
||||
|
||||
</router-view>
|
||||
</main>
|
||||
|
||||
<footer class="app_footer">
|
||||
©
|
||||
<a
|
||||
href="https://td2.info.pl/profile/?u=20777"
|
||||
target="_blank"
|
||||
>
|
||||
Spythere
|
||||
</a>
|
||||
2021 | v{{ VERSION }}
|
||||
|
||||
</footer>
|
||||
</div>
|
||||
</div>
|
||||
</template>
|
||||
|
||||
<script lang="ts">
|
||||
// import UpdateModal from "@/components/Global/UpdateModal.vue";
|
||||
import Clock from "@/components/App/Clock.vue";
|
||||
|
||||
import StorageManager from "@/scripts/managers/storageManager";
|
||||
import { computed, ComputedRef, defineComponent } from "vue";
|
||||
import { GETTERS } from "./constants/storeConstants";
|
||||
import { StoreData } from "./scripts/interfaces/StoreData";
|
||||
import { useStore } from "./store";
|
||||
// import { StoreData } from "./scripts/interfaces/StoreData";
|
||||
|
||||
export default defineComponent({
|
||||
components: {
|
||||
Clock,
|
||||
},
|
||||
|
||||
setup() {
|
||||
const store = useStore();
|
||||
store.dispatch("synchronizeData");
|
||||
|
||||
const data: ComputedRef<StoreData> = computed(
|
||||
() => store.getters[GETTERS.allData]
|
||||
);
|
||||
|
||||
return {
|
||||
data,
|
||||
};
|
||||
},
|
||||
|
||||
data: () => ({
|
||||
VERSION: "1.4.7",
|
||||
updateModalVisible: false,
|
||||
hasReleaseNotes: false,
|
||||
currentLang: "pl",
|
||||
|
||||
iconEN: require("@/assets/icon-en.jpg"),
|
||||
iconPL: require("@/assets/icon-pl.svg"),
|
||||
}),
|
||||
|
||||
created() {
|
||||
this.loadLang();
|
||||
},
|
||||
|
||||
mounted() {
|
||||
if (StorageManager.getStringValue("version") != this.VERSION) {
|
||||
StorageManager.setStringValue("version", this.VERSION);
|
||||
|
||||
if (this.hasReleaseNotes)
|
||||
StorageManager.setBooleanValue("version_notes_read", false);
|
||||
}
|
||||
|
||||
this.updateModalVisible =
|
||||
this.hasReleaseNotes &&
|
||||
!StorageManager.getBooleanValue("version_notes_read");
|
||||
},
|
||||
|
||||
methods: {
|
||||
toggleUpdateModal() {
|
||||
this.updateModalVisible = !this.updateModalVisible;
|
||||
StorageManager.setBooleanValue("version_notes_read", true);
|
||||
},
|
||||
|
||||
changeLang(lang: string) {
|
||||
this.$i18n.locale = lang;
|
||||
this.currentLang = lang;
|
||||
|
||||
StorageManager.setStringValue("lang", lang);
|
||||
},
|
||||
|
||||
loadLang() {
|
||||
const storageLang = StorageManager.getStringValue("lang");
|
||||
|
||||
if (storageLang) {
|
||||
this.changeLang(storageLang);
|
||||
return;
|
||||
}
|
||||
|
||||
if (!window.navigator.language) {
|
||||
this.changeLang("pl");
|
||||
return;
|
||||
}
|
||||
|
||||
switch (window.navigator.language) {
|
||||
case "pl-PL":
|
||||
this.changeLang("pl");
|
||||
break;
|
||||
case "en-EN":
|
||||
default:
|
||||
this.changeLang("en");
|
||||
break;
|
||||
}
|
||||
|
||||
return;
|
||||
},
|
||||
},
|
||||
});
|
||||
</script>
|
||||
|
||||
<style lang="scss" src="./App.scss"></style>
|
||||
@@ -1,5 +1,5 @@
|
||||
<svg width="60" height="60" viewBox="0 0 60 60" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||
<rect width="60" height="60" fill="#009DCE"/>
|
||||
<path fill-rule="evenodd" clip-rule="evenodd" d="M4.02083 6.51042V6H5.04167V6.51042H13.2083V6H14.2292V6.51042H15.25V8.55208H14.2292V11.1042H15.25V13.1458H14.2292V15.6979H15.25V17.7396H14.2292V20.2917H15.25V22.3333H14.2292V24.8854H15.25V26.9271H14.2292V29.4792H15.25V31.5208H14.2292V34.0729H15.25V36.1146H14.2292V38.6667H15.25V40.7083H14.2292V43.2604H15.25V45.3021H14.2292V47.8542H15.25V49.8958H14.2292V52.4479H15.25V54.4896H14.2292V55H13.2083V54.4896H5.04167V55H4.02083V54.4896H3V52.4479H4.02083V49.8958H3V47.8542H4.02083V45.3021H3V43.2604H4.02083V40.7083H3V38.6667H4.02083V36.1146H3V34.0729H4.02083V31.5208H3V29.4792H4.02083V26.9271H3V24.8854H4.02083V22.3333H3V20.2917H4.02083V17.7396H3V15.6979H4.02083V13.1458H3V11.1042H4.02083V8.55208H3V6.51042H4.02083ZM5.04167 52.4479H13.2083V49.8958H5.04167V52.4479ZM13.2083 45.3021V47.8542H5.04167V45.3021H13.2083ZM5.04167 43.2604H13.2083V40.7083H5.04167V43.2604ZM13.2083 36.1146V38.6667H5.04167V36.1146H13.2083ZM5.04167 34.0729H13.2083V31.5208H5.04167V34.0729ZM13.2083 26.9271V29.4792H5.04167V26.9271H13.2083ZM5.04167 24.8854H13.2083V22.3333H5.04167V24.8854ZM13.2083 17.7396V20.2917H5.04167V17.7396H13.2083ZM5.04167 15.6979H13.2083V13.1458H5.04167V15.6979ZM13.2083 8.55208V11.1042H5.04167V8.55208H13.2083Z" fill="black"/>
|
||||
<path d="M25.1071 27.3731L30.4643 14L16 30.7164H22.9643L18.1429 46L31 27.3731H25.1071Z" fill="#FFF500"/>
|
||||
</svg>
|
||||
<svg width="60" height="60" viewBox="0 0 60 60" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||
<rect width="60" height="60" fill="#009DCE"/>
|
||||
<path fill-rule="evenodd" clip-rule="evenodd" d="M4.02083 6.51042V6H5.04167V6.51042H13.2083V6H14.2292V6.51042H15.25V8.55208H14.2292V11.1042H15.25V13.1458H14.2292V15.6979H15.25V17.7396H14.2292V20.2917H15.25V22.3333H14.2292V24.8854H15.25V26.9271H14.2292V29.4792H15.25V31.5208H14.2292V34.0729H15.25V36.1146H14.2292V38.6667H15.25V40.7083H14.2292V43.2604H15.25V45.3021H14.2292V47.8542H15.25V49.8958H14.2292V52.4479H15.25V54.4896H14.2292V55H13.2083V54.4896H5.04167V55H4.02083V54.4896H3V52.4479H4.02083V49.8958H3V47.8542H4.02083V45.3021H3V43.2604H4.02083V40.7083H3V38.6667H4.02083V36.1146H3V34.0729H4.02083V31.5208H3V29.4792H4.02083V26.9271H3V24.8854H4.02083V22.3333H3V20.2917H4.02083V17.7396H3V15.6979H4.02083V13.1458H3V11.1042H4.02083V8.55208H3V6.51042H4.02083ZM5.04167 52.4479H13.2083V49.8958H5.04167V52.4479ZM13.2083 45.3021V47.8542H5.04167V45.3021H13.2083ZM5.04167 43.2604H13.2083V40.7083H5.04167V43.2604ZM13.2083 36.1146V38.6667H5.04167V36.1146H13.2083ZM5.04167 34.0729H13.2083V31.5208H5.04167V34.0729ZM13.2083 26.9271V29.4792H5.04167V26.9271H13.2083ZM5.04167 24.8854H13.2083V22.3333H5.04167V24.8854ZM13.2083 17.7396V20.2917H5.04167V17.7396H13.2083ZM5.04167 15.6979H13.2083V13.1458H5.04167V15.6979ZM13.2083 8.55208V11.1042H5.04167V8.55208H13.2083Z" fill="black"/>
|
||||
<path d="M25.1071 27.3731L30.4643 14L16 30.7164H22.9643L18.1429 46L31 27.3731H25.1071Z" fill="#FFF500"/>
|
||||
</svg>
|
||||
|
||||
|
Before Width: | Height: | Size: 1.5 KiB After Width: | Height: | Size: 1.5 KiB |
@@ -1,6 +1,6 @@
|
||||
<svg width="60" height="60" viewBox="0 0 60 60" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||
<rect width="60" height="60" fill="#898989"/>
|
||||
<path fill-rule="evenodd" clip-rule="evenodd" d="M4.02083 6.51042V6H5.04167V6.51042H13.2083V6H14.2292V6.51042H15.25V8.55208H14.2292V11.1042H15.25V13.1458H14.2292V15.6979H15.25V17.7396H14.2292V20.2917H15.25V22.3333H14.2292V24.8854H15.25V26.9271H14.2292V29.4792H15.25V31.5208H14.2292V34.0729H15.25V36.1146H14.2292V38.6667H15.25V40.7083H14.2292V43.2604H15.25V45.3021H14.2292V47.8542H15.25V49.8958H14.2292V52.4479H15.25V54.4896H14.2292V55H13.2083V54.4896H5.04167V55H4.02083V54.4896H3V52.4479H4.02083V49.8958H3V47.8542H4.02083V45.3021H3V43.2604H4.02083V40.7083H3V38.6667H4.02083V36.1146H3V34.0729H4.02083V31.5208H3V29.4792H4.02083V26.9271H3V24.8854H4.02083V22.3333H3V20.2917H4.02083V17.7396H3V15.6979H4.02083V13.1458H3V11.1042H4.02083V8.55208H3V6.51042H4.02083ZM5.04167 52.4479H13.2083V49.8958H5.04167V52.4479ZM13.2083 45.3021V47.8542H5.04167V45.3021H13.2083ZM5.04167 43.2604H13.2083V40.7083H5.04167V43.2604ZM13.2083 36.1146V38.6667H5.04167V36.1146H13.2083ZM5.04167 34.0729H13.2083V31.5208H5.04167V34.0729ZM13.2083 26.9271V29.4792H5.04167V26.9271H13.2083ZM5.04167 24.8854H13.2083V22.3333H5.04167V24.8854ZM13.2083 17.7396V20.2917H5.04167V17.7396H13.2083ZM5.04167 15.6979H13.2083V13.1458H5.04167V15.6979ZM13.2083 8.55208V11.1042H5.04167V8.55208H13.2083Z" fill="black"/>
|
||||
<path d="M26.1071 27.3731L31.4643 14L17 30.7164H23.9643L19.1429 46L32 27.3731H26.1071Z" fill="#FFF500"/>
|
||||
<path d="M17.8333 17.0476L31.1667 43.7143" stroke="#FF0000" stroke-width="2" stroke-linecap="round"/>
|
||||
</svg>
|
||||
<svg width="60" height="60" viewBox="0 0 60 60" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||
<rect width="60" height="60" fill="#898989"/>
|
||||
<path fill-rule="evenodd" clip-rule="evenodd" d="M4.02083 6.51042V6H5.04167V6.51042H13.2083V6H14.2292V6.51042H15.25V8.55208H14.2292V11.1042H15.25V13.1458H14.2292V15.6979H15.25V17.7396H14.2292V20.2917H15.25V22.3333H14.2292V24.8854H15.25V26.9271H14.2292V29.4792H15.25V31.5208H14.2292V34.0729H15.25V36.1146H14.2292V38.6667H15.25V40.7083H14.2292V43.2604H15.25V45.3021H14.2292V47.8542H15.25V49.8958H14.2292V52.4479H15.25V54.4896H14.2292V55H13.2083V54.4896H5.04167V55H4.02083V54.4896H3V52.4479H4.02083V49.8958H3V47.8542H4.02083V45.3021H3V43.2604H4.02083V40.7083H3V38.6667H4.02083V36.1146H3V34.0729H4.02083V31.5208H3V29.4792H4.02083V26.9271H3V24.8854H4.02083V22.3333H3V20.2917H4.02083V17.7396H3V15.6979H4.02083V13.1458H3V11.1042H4.02083V8.55208H3V6.51042H4.02083ZM5.04167 52.4479H13.2083V49.8958H5.04167V52.4479ZM13.2083 45.3021V47.8542H5.04167V45.3021H13.2083ZM5.04167 43.2604H13.2083V40.7083H5.04167V43.2604ZM13.2083 36.1146V38.6667H5.04167V36.1146H13.2083ZM5.04167 34.0729H13.2083V31.5208H5.04167V34.0729ZM13.2083 26.9271V29.4792H5.04167V26.9271H13.2083ZM5.04167 24.8854H13.2083V22.3333H5.04167V24.8854ZM13.2083 17.7396V20.2917H5.04167V17.7396H13.2083ZM5.04167 15.6979H13.2083V13.1458H5.04167V15.6979ZM13.2083 8.55208V11.1042H5.04167V8.55208H13.2083Z" fill="black"/>
|
||||
<path d="M26.1071 27.3731L31.4643 14L17 30.7164H23.9643L19.1429 46L32 27.3731H26.1071Z" fill="#FFF500"/>
|
||||
<path d="M17.8333 17.0476L31.1667 43.7143" stroke="#FF0000" stroke-width="2" stroke-linecap="round"/>
|
||||
</svg>
|
||||
|
||||
|
Before Width: | Height: | Size: 1.6 KiB After Width: | Height: | Size: 1.6 KiB |
@@ -1,6 +1,6 @@
|
||||
<svg width="60" height="60" viewBox="0 0 60 60" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||
<rect width="60" height="60" fill="#009DCE"/>
|
||||
<path fill-rule="evenodd" clip-rule="evenodd" d="M4.02083 6.51042V6H5.04167V6.51042H13.2083V6H14.2292V6.51042H15.25V8.55208H14.2292V11.1042H15.25V13.1458H14.2292V15.6979H15.25V17.7396H14.2292V20.2917H15.25V22.3333H14.2292V24.8854H15.25V26.9271H14.2292V29.4792H15.25V31.5208H14.2292V34.0729H15.25V36.1146H14.2292V38.6667H15.25V40.7083H14.2292V43.2604H15.25V45.3021H14.2292V47.8542H15.25V49.8958H14.2292V52.4479H15.25V54.4896H14.2292V55H13.2083V54.4896H5.04167V55H4.02083V54.4896H3V52.4479H4.02083V49.8958H3V47.8542H4.02083V45.3021H3V43.2604H4.02083V40.7083H3V38.6667H4.02083V36.1146H3V34.0729H4.02083V31.5208H3V29.4792H4.02083V26.9271H3V24.8854H4.02083V22.3333H3V20.2917H4.02083V17.7396H3V15.6979H4.02083V13.1458H3V11.1042H4.02083V8.55208H3V6.51042H4.02083ZM5.04167 52.4479H13.2083V49.8958H5.04167V52.4479ZM13.2083 45.3021V47.8542H5.04167V45.3021H13.2083ZM5.04167 43.2604H13.2083V40.7083H5.04167V43.2604ZM13.2083 36.1146V38.6667H5.04167V36.1146H13.2083ZM5.04167 34.0729H13.2083V31.5208H5.04167V34.0729ZM13.2083 26.9271V29.4792H5.04167V26.9271H13.2083ZM5.04167 24.8854H13.2083V22.3333H5.04167V24.8854ZM13.2083 17.7396V20.2917H5.04167V17.7396H13.2083ZM5.04167 15.6979H13.2083V13.1458H5.04167V15.6979ZM13.2083 8.55208V11.1042H5.04167V8.55208H13.2083Z" fill="black"/>
|
||||
<path fill-rule="evenodd" clip-rule="evenodd" d="M19.0208 6.51042V6H20.0417V6.51042H28.2083V6H29.2292V6.51042H30.25V8.55208H29.2292V11.1042H30.25V13.1458H29.2292V15.6979H30.25V17.7396H29.2292V20.2917H30.25V22.3333H29.2292V24.8854H30.25V26.9271H29.2292V29.4792H30.25V31.5208H29.2292V34.0729H30.25V36.1146H29.2292V38.6667H30.25V40.7083H29.2292V43.2604H30.25V45.3021H29.2292V47.8542H30.25V49.8958H29.2292V52.4479H30.25V54.4896H29.2292V55H28.2083V54.4896H20.0417V55H19.0208V54.4896H18V52.4479H19.0208V49.8958H18V47.8542H19.0208V45.3021H18V43.2604H19.0208V40.7083H18V38.6667H19.0208V36.1146H18V34.0729H19.0208V31.5208H18V29.4792H19.0208V26.9271H18V24.8854H19.0208V22.3333H18V20.2917H19.0208V17.7396H18V15.6979H19.0208V13.1458H18V11.1042H19.0208V8.55208H18V6.51042H19.0208ZM20.0417 52.4479H28.2083V49.8958H20.0417V52.4479ZM28.2083 45.3021V47.8542H20.0417V45.3021H28.2083ZM20.0417 43.2604H28.2083V40.7083H20.0417V43.2604ZM28.2083 36.1146V38.6667H20.0417V36.1146H28.2083ZM20.0417 34.0729H28.2083V31.5208H20.0417V34.0729ZM28.2083 26.9271V29.4792H20.0417V26.9271H28.2083ZM20.0417 24.8854H28.2083V22.3333H20.0417V24.8854ZM28.2083 17.7396V20.2917H20.0417V17.7396H28.2083ZM20.0417 15.6979H28.2083V13.1458H20.0417V15.6979ZM28.2083 8.55208V11.1042H20.0417V8.55208H28.2083Z" fill="black"/>
|
||||
<path d="M17.9286 26.5522L24.3571 9L7 30.9403H15.3571L9.57143 51L25 26.5522H17.9286Z" fill="#FFF500"/>
|
||||
</svg>
|
||||
<svg width="60" height="60" viewBox="0 0 60 60" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||
<rect width="60" height="60" fill="#009DCE"/>
|
||||
<path fill-rule="evenodd" clip-rule="evenodd" d="M4.02083 6.51042V6H5.04167V6.51042H13.2083V6H14.2292V6.51042H15.25V8.55208H14.2292V11.1042H15.25V13.1458H14.2292V15.6979H15.25V17.7396H14.2292V20.2917H15.25V22.3333H14.2292V24.8854H15.25V26.9271H14.2292V29.4792H15.25V31.5208H14.2292V34.0729H15.25V36.1146H14.2292V38.6667H15.25V40.7083H14.2292V43.2604H15.25V45.3021H14.2292V47.8542H15.25V49.8958H14.2292V52.4479H15.25V54.4896H14.2292V55H13.2083V54.4896H5.04167V55H4.02083V54.4896H3V52.4479H4.02083V49.8958H3V47.8542H4.02083V45.3021H3V43.2604H4.02083V40.7083H3V38.6667H4.02083V36.1146H3V34.0729H4.02083V31.5208H3V29.4792H4.02083V26.9271H3V24.8854H4.02083V22.3333H3V20.2917H4.02083V17.7396H3V15.6979H4.02083V13.1458H3V11.1042H4.02083V8.55208H3V6.51042H4.02083ZM5.04167 52.4479H13.2083V49.8958H5.04167V52.4479ZM13.2083 45.3021V47.8542H5.04167V45.3021H13.2083ZM5.04167 43.2604H13.2083V40.7083H5.04167V43.2604ZM13.2083 36.1146V38.6667H5.04167V36.1146H13.2083ZM5.04167 34.0729H13.2083V31.5208H5.04167V34.0729ZM13.2083 26.9271V29.4792H5.04167V26.9271H13.2083ZM5.04167 24.8854H13.2083V22.3333H5.04167V24.8854ZM13.2083 17.7396V20.2917H5.04167V17.7396H13.2083ZM5.04167 15.6979H13.2083V13.1458H5.04167V15.6979ZM13.2083 8.55208V11.1042H5.04167V8.55208H13.2083Z" fill="black"/>
|
||||
<path fill-rule="evenodd" clip-rule="evenodd" d="M19.0208 6.51042V6H20.0417V6.51042H28.2083V6H29.2292V6.51042H30.25V8.55208H29.2292V11.1042H30.25V13.1458H29.2292V15.6979H30.25V17.7396H29.2292V20.2917H30.25V22.3333H29.2292V24.8854H30.25V26.9271H29.2292V29.4792H30.25V31.5208H29.2292V34.0729H30.25V36.1146H29.2292V38.6667H30.25V40.7083H29.2292V43.2604H30.25V45.3021H29.2292V47.8542H30.25V49.8958H29.2292V52.4479H30.25V54.4896H29.2292V55H28.2083V54.4896H20.0417V55H19.0208V54.4896H18V52.4479H19.0208V49.8958H18V47.8542H19.0208V45.3021H18V43.2604H19.0208V40.7083H18V38.6667H19.0208V36.1146H18V34.0729H19.0208V31.5208H18V29.4792H19.0208V26.9271H18V24.8854H19.0208V22.3333H18V20.2917H19.0208V17.7396H18V15.6979H19.0208V13.1458H18V11.1042H19.0208V8.55208H18V6.51042H19.0208ZM20.0417 52.4479H28.2083V49.8958H20.0417V52.4479ZM28.2083 45.3021V47.8542H20.0417V45.3021H28.2083ZM20.0417 43.2604H28.2083V40.7083H20.0417V43.2604ZM28.2083 36.1146V38.6667H20.0417V36.1146H28.2083ZM20.0417 34.0729H28.2083V31.5208H20.0417V34.0729ZM28.2083 26.9271V29.4792H20.0417V26.9271H28.2083ZM20.0417 24.8854H28.2083V22.3333H20.0417V24.8854ZM28.2083 17.7396V20.2917H20.0417V17.7396H28.2083ZM20.0417 15.6979H28.2083V13.1458H20.0417V15.6979ZM28.2083 8.55208V11.1042H20.0417V8.55208H28.2083Z" fill="black"/>
|
||||
<path d="M17.9286 26.5522L24.3571 9L7 30.9403H15.3571L9.57143 51L25 26.5522H17.9286Z" fill="#FFF500"/>
|
||||
</svg>
|
||||
|
||||
|
Before Width: | Height: | Size: 2.7 KiB After Width: | Height: | Size: 2.7 KiB |
@@ -1,7 +1,7 @@
|
||||
<svg width="60" height="60" viewBox="0 0 60 60" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||
<rect width="60" height="60" fill="#898989"/>
|
||||
<path fill-rule="evenodd" clip-rule="evenodd" d="M4.02083 6.51042V6H5.04167V6.51042H13.2083V6H14.2292V6.51042H15.25V8.55208H14.2292V11.1042H15.25V13.1458H14.2292V15.6979H15.25V17.7396H14.2292V20.2917H15.25V22.3333H14.2292V24.8854H15.25V26.9271H14.2292V29.4792H15.25V31.5208H14.2292V34.0729H15.25V36.1146H14.2292V38.6667H15.25V40.7083H14.2292V43.2604H15.25V45.3021H14.2292V47.8542H15.25V49.8958H14.2292V52.4479H15.25V54.4896H14.2292V55H13.2083V54.4896H5.04167V55H4.02083V54.4896H3V52.4479H4.02083V49.8958H3V47.8542H4.02083V45.3021H3V43.2604H4.02083V40.7083H3V38.6667H4.02083V36.1146H3V34.0729H4.02083V31.5208H3V29.4792H4.02083V26.9271H3V24.8854H4.02083V22.3333H3V20.2917H4.02083V17.7396H3V15.6979H4.02083V13.1458H3V11.1042H4.02083V8.55208H3V6.51042H4.02083ZM5.04167 52.4479H13.2083V49.8958H5.04167V52.4479ZM13.2083 45.3021V47.8542H5.04167V45.3021H13.2083ZM5.04167 43.2604H13.2083V40.7083H5.04167V43.2604ZM13.2083 36.1146V38.6667H5.04167V36.1146H13.2083ZM5.04167 34.0729H13.2083V31.5208H5.04167V34.0729ZM13.2083 26.9271V29.4792H5.04167V26.9271H13.2083ZM5.04167 24.8854H13.2083V22.3333H5.04167V24.8854ZM13.2083 17.7396V20.2917H5.04167V17.7396H13.2083ZM5.04167 15.6979H13.2083V13.1458H5.04167V15.6979ZM13.2083 8.55208V11.1042H5.04167V8.55208H13.2083Z" fill="black"/>
|
||||
<path fill-rule="evenodd" clip-rule="evenodd" d="M19.0208 6.51042V6H20.0417V6.51042H28.2083V6H29.2292V6.51042H30.25V8.55208H29.2292V11.1042H30.25V13.1458H29.2292V15.6979H30.25V17.7396H29.2292V20.2917H30.25V22.3333H29.2292V24.8854H30.25V26.9271H29.2292V29.4792H30.25V31.5208H29.2292V34.0729H30.25V36.1146H29.2292V38.6667H30.25V40.7083H29.2292V43.2604H30.25V45.3021H29.2292V47.8542H30.25V49.8958H29.2292V52.4479H30.25V54.4896H29.2292V55H28.2083V54.4896H20.0417V55H19.0208V54.4896H18V52.4479H19.0208V49.8958H18V47.8542H19.0208V45.3021H18V43.2604H19.0208V40.7083H18V38.6667H19.0208V36.1146H18V34.0729H19.0208V31.5208H18V29.4792H19.0208V26.9271H18V24.8854H19.0208V22.3333H18V20.2917H19.0208V17.7396H18V15.6979H19.0208V13.1458H18V11.1042H19.0208V8.55208H18V6.51042H19.0208ZM20.0417 52.4479H28.2083V49.8958H20.0417V52.4479ZM28.2083 45.3021V47.8542H20.0417V45.3021H28.2083ZM20.0417 43.2604H28.2083V40.7083H20.0417V43.2604ZM28.2083 36.1146V38.6667H20.0417V36.1146H28.2083ZM20.0417 34.0729H28.2083V31.5208H20.0417V34.0729ZM28.2083 26.9271V29.4792H20.0417V26.9271H28.2083ZM20.0417 24.8854H28.2083V22.3333H20.0417V24.8854ZM28.2083 17.7396V20.2917H20.0417V17.7396H28.2083ZM20.0417 15.6979H28.2083V13.1458H20.0417V15.6979ZM28.2083 8.55208V11.1042H20.0417V8.55208H28.2083Z" fill="black"/>
|
||||
<path d="M17.9286 26.5522L24.3571 9L7 30.9403H15.3571L9.57143 51L25 26.5522H17.9286Z" fill="#FFF500"/>
|
||||
<path d="M8 13L24 48" stroke="#FF0000" stroke-width="2" stroke-linecap="round"/>
|
||||
</svg>
|
||||
<svg width="60" height="60" viewBox="0 0 60 60" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||
<rect width="60" height="60" fill="#898989"/>
|
||||
<path fill-rule="evenodd" clip-rule="evenodd" d="M4.02083 6.51042V6H5.04167V6.51042H13.2083V6H14.2292V6.51042H15.25V8.55208H14.2292V11.1042H15.25V13.1458H14.2292V15.6979H15.25V17.7396H14.2292V20.2917H15.25V22.3333H14.2292V24.8854H15.25V26.9271H14.2292V29.4792H15.25V31.5208H14.2292V34.0729H15.25V36.1146H14.2292V38.6667H15.25V40.7083H14.2292V43.2604H15.25V45.3021H14.2292V47.8542H15.25V49.8958H14.2292V52.4479H15.25V54.4896H14.2292V55H13.2083V54.4896H5.04167V55H4.02083V54.4896H3V52.4479H4.02083V49.8958H3V47.8542H4.02083V45.3021H3V43.2604H4.02083V40.7083H3V38.6667H4.02083V36.1146H3V34.0729H4.02083V31.5208H3V29.4792H4.02083V26.9271H3V24.8854H4.02083V22.3333H3V20.2917H4.02083V17.7396H3V15.6979H4.02083V13.1458H3V11.1042H4.02083V8.55208H3V6.51042H4.02083ZM5.04167 52.4479H13.2083V49.8958H5.04167V52.4479ZM13.2083 45.3021V47.8542H5.04167V45.3021H13.2083ZM5.04167 43.2604H13.2083V40.7083H5.04167V43.2604ZM13.2083 36.1146V38.6667H5.04167V36.1146H13.2083ZM5.04167 34.0729H13.2083V31.5208H5.04167V34.0729ZM13.2083 26.9271V29.4792H5.04167V26.9271H13.2083ZM5.04167 24.8854H13.2083V22.3333H5.04167V24.8854ZM13.2083 17.7396V20.2917H5.04167V17.7396H13.2083ZM5.04167 15.6979H13.2083V13.1458H5.04167V15.6979ZM13.2083 8.55208V11.1042H5.04167V8.55208H13.2083Z" fill="black"/>
|
||||
<path fill-rule="evenodd" clip-rule="evenodd" d="M19.0208 6.51042V6H20.0417V6.51042H28.2083V6H29.2292V6.51042H30.25V8.55208H29.2292V11.1042H30.25V13.1458H29.2292V15.6979H30.25V17.7396H29.2292V20.2917H30.25V22.3333H29.2292V24.8854H30.25V26.9271H29.2292V29.4792H30.25V31.5208H29.2292V34.0729H30.25V36.1146H29.2292V38.6667H30.25V40.7083H29.2292V43.2604H30.25V45.3021H29.2292V47.8542H30.25V49.8958H29.2292V52.4479H30.25V54.4896H29.2292V55H28.2083V54.4896H20.0417V55H19.0208V54.4896H18V52.4479H19.0208V49.8958H18V47.8542H19.0208V45.3021H18V43.2604H19.0208V40.7083H18V38.6667H19.0208V36.1146H18V34.0729H19.0208V31.5208H18V29.4792H19.0208V26.9271H18V24.8854H19.0208V22.3333H18V20.2917H19.0208V17.7396H18V15.6979H19.0208V13.1458H18V11.1042H19.0208V8.55208H18V6.51042H19.0208ZM20.0417 52.4479H28.2083V49.8958H20.0417V52.4479ZM28.2083 45.3021V47.8542H20.0417V45.3021H28.2083ZM20.0417 43.2604H28.2083V40.7083H20.0417V43.2604ZM28.2083 36.1146V38.6667H20.0417V36.1146H28.2083ZM20.0417 34.0729H28.2083V31.5208H20.0417V34.0729ZM28.2083 26.9271V29.4792H20.0417V26.9271H28.2083ZM20.0417 24.8854H28.2083V22.3333H20.0417V24.8854ZM28.2083 17.7396V20.2917H20.0417V17.7396H28.2083ZM20.0417 15.6979H28.2083V13.1458H20.0417V15.6979ZM28.2083 8.55208V11.1042H20.0417V8.55208H28.2083Z" fill="black"/>
|
||||
<path d="M17.9286 26.5522L24.3571 9L7 30.9403H15.3571L9.57143 51L25 26.5522H17.9286Z" fill="#FFF500"/>
|
||||
<path d="M8 13L24 48" stroke="#FF0000" stroke-width="2" stroke-linecap="round"/>
|
||||
</svg>
|
||||
|
||||
|
Before Width: | Height: | Size: 2.8 KiB After Width: | Height: | Size: 2.8 KiB |
@@ -1,6 +1,6 @@
|
||||
<svg width="60" height="60" viewBox="0 0 60 60" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||
<rect width="60" height="60" fill="#898989"/>
|
||||
<rect x="25.6208" y="34.1208" width="13" height="20.4133" rx="5" transform="rotate(-30 25.6208 34.1208)" stroke="white" stroke-width="4"/>
|
||||
<rect x="13.7321" y="14.2321" width="13" height="20.4133" rx="5" transform="rotate(-30 13.7321 14.2321)" stroke="white" stroke-width="4"/>
|
||||
<path d="M28 25L33 34" stroke="white" stroke-width="3" stroke-linecap="round" stroke-linejoin="bevel"/>
|
||||
</svg>
|
||||
<svg width="60" height="60" viewBox="0 0 60 60" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||
<rect width="60" height="60" fill="#898989"/>
|
||||
<rect x="25.6208" y="34.1208" width="13" height="20.4133" rx="5" transform="rotate(-30 25.6208 34.1208)" stroke="white" stroke-width="4"/>
|
||||
<rect x="13.7321" y="14.2321" width="13" height="20.4133" rx="5" transform="rotate(-30 13.7321 14.2321)" stroke="white" stroke-width="4"/>
|
||||
<path d="M28 25L33 34" stroke="white" stroke-width="3" stroke-linecap="round" stroke-linejoin="bevel"/>
|
||||
</svg>
|
||||
|
||||
|
Before Width: | Height: | Size: 531 B After Width: | Height: | Size: 537 B |
|
Before Width: | Height: | Size: 9.5 KiB After Width: | Height: | Size: 9.5 KiB |
|
Before Width: | Height: | Size: 5.8 KiB After Width: | Height: | Size: 5.8 KiB |
@@ -1,4 +1,4 @@
|
||||
<svg width="60" height="60" viewBox="0 0 60 60" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||
<rect width="60" height="60" fill="#898989"/>
|
||||
<path d="M19.992 25.492C19.92 25.612 19.84 25.704 19.752 25.768C19.672 25.824 19.572 25.852 19.452 25.852C19.316 25.852 19.156 25.784 18.972 25.648C18.788 25.512 18.556 25.364 18.276 25.204C18.004 25.036 17.672 24.884 17.28 24.748C16.896 24.612 16.428 24.544 15.876 24.544C15.356 24.544 14.896 24.616 14.496 24.76C14.104 24.896 13.772 25.084 13.5 25.324C13.236 25.564 13.036 25.848 12.9 26.176C12.764 26.496 12.696 26.844 12.696 27.22C12.696 27.7 12.812 28.1 13.044 28.42C13.284 28.732 13.596 29 13.98 29.224C14.372 29.448 14.812 29.644 15.3 29.812C15.796 29.972 16.3 30.14 16.812 30.316C17.332 30.492 17.836 30.692 18.324 30.916C18.82 31.132 19.26 31.408 19.644 31.744C20.036 32.08 20.348 32.492 20.58 32.98C20.82 33.468 20.94 34.068 20.94 34.78C20.94 35.532 20.812 36.24 20.556 36.904C20.3 37.56 19.924 38.132 19.428 38.62C18.94 39.108 18.336 39.492 17.616 39.772C16.904 40.052 16.092 40.192 15.18 40.192C14.06 40.192 13.044 39.992 12.132 39.592C11.22 39.184 10.44 38.636 9.792 37.948L10.464 36.844C10.528 36.756 10.604 36.684 10.692 36.628C10.788 36.564 10.892 36.532 11.004 36.532C11.108 36.532 11.224 36.576 11.352 36.664C11.488 36.744 11.64 36.848 11.808 36.976C11.976 37.104 12.168 37.244 12.384 37.396C12.6 37.548 12.844 37.688 13.116 37.816C13.396 37.944 13.712 38.052 14.064 38.14C14.416 38.22 14.812 38.26 15.252 38.26C15.804 38.26 16.296 38.184 16.728 38.032C17.16 37.88 17.524 37.668 17.82 37.396C18.124 37.116 18.356 36.784 18.516 36.4C18.676 36.016 18.756 35.588 18.756 35.116C18.756 34.596 18.636 34.172 18.396 33.844C18.164 33.508 17.856 33.228 17.472 33.004C17.088 32.78 16.648 32.592 16.152 32.44C15.656 32.28 15.152 32.12 14.64 31.96C14.128 31.792 13.624 31.6 13.128 31.384C12.632 31.168 12.192 30.888 11.808 30.544C11.424 30.2 11.112 29.772 10.872 29.26C10.64 28.74 10.524 28.1 10.524 27.34C10.524 26.732 10.64 26.144 10.872 25.576C11.112 25.008 11.456 24.504 11.904 24.064C12.36 23.624 12.916 23.272 13.572 23.008C14.236 22.744 14.996 22.612 15.852 22.612C16.812 22.612 17.684 22.764 18.468 23.068C19.26 23.372 19.956 23.812 20.556 24.388L19.992 25.492ZM29.3033 31.72C29.9673 31.72 30.5513 31.632 31.0553 31.456C31.5673 31.28 31.9953 31.036 32.3393 30.724C32.6913 30.404 32.9553 30.024 33.1313 29.584C33.3073 29.144 33.3953 28.66 33.3953 28.132C33.3953 27.036 33.0553 26.18 32.3753 25.564C31.7033 24.948 30.6793 24.64 29.3033 24.64H26.5433V31.72H29.3033ZM29.3033 22.804C30.3913 22.804 31.3353 22.932 32.1353 23.188C32.9433 23.436 33.6113 23.792 34.1393 24.256C34.6673 24.72 35.0593 25.28 35.3152 25.936C35.5793 26.592 35.7113 27.324 35.7113 28.132C35.7113 28.932 35.5713 29.664 35.2913 30.328C35.0113 30.992 34.5993 31.564 34.0553 32.044C33.5193 32.524 32.8513 32.9 32.0513 33.172C31.2593 33.436 30.3433 33.568 29.3033 33.568H26.5433V40H24.2273V22.804H29.3033ZM49.2493 38.104L49.2373 40H38.6413V22.804H49.2373V24.7H40.9693V30.412H47.6653V32.236H40.9693V38.104H49.2493Z" fill="white"/>
|
||||
</svg>
|
||||
<svg width="60" height="60" viewBox="0 0 60 60" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||
<rect width="60" height="60" fill="#898989"/>
|
||||
<path d="M19.992 25.492C19.92 25.612 19.84 25.704 19.752 25.768C19.672 25.824 19.572 25.852 19.452 25.852C19.316 25.852 19.156 25.784 18.972 25.648C18.788 25.512 18.556 25.364 18.276 25.204C18.004 25.036 17.672 24.884 17.28 24.748C16.896 24.612 16.428 24.544 15.876 24.544C15.356 24.544 14.896 24.616 14.496 24.76C14.104 24.896 13.772 25.084 13.5 25.324C13.236 25.564 13.036 25.848 12.9 26.176C12.764 26.496 12.696 26.844 12.696 27.22C12.696 27.7 12.812 28.1 13.044 28.42C13.284 28.732 13.596 29 13.98 29.224C14.372 29.448 14.812 29.644 15.3 29.812C15.796 29.972 16.3 30.14 16.812 30.316C17.332 30.492 17.836 30.692 18.324 30.916C18.82 31.132 19.26 31.408 19.644 31.744C20.036 32.08 20.348 32.492 20.58 32.98C20.82 33.468 20.94 34.068 20.94 34.78C20.94 35.532 20.812 36.24 20.556 36.904C20.3 37.56 19.924 38.132 19.428 38.62C18.94 39.108 18.336 39.492 17.616 39.772C16.904 40.052 16.092 40.192 15.18 40.192C14.06 40.192 13.044 39.992 12.132 39.592C11.22 39.184 10.44 38.636 9.792 37.948L10.464 36.844C10.528 36.756 10.604 36.684 10.692 36.628C10.788 36.564 10.892 36.532 11.004 36.532C11.108 36.532 11.224 36.576 11.352 36.664C11.488 36.744 11.64 36.848 11.808 36.976C11.976 37.104 12.168 37.244 12.384 37.396C12.6 37.548 12.844 37.688 13.116 37.816C13.396 37.944 13.712 38.052 14.064 38.14C14.416 38.22 14.812 38.26 15.252 38.26C15.804 38.26 16.296 38.184 16.728 38.032C17.16 37.88 17.524 37.668 17.82 37.396C18.124 37.116 18.356 36.784 18.516 36.4C18.676 36.016 18.756 35.588 18.756 35.116C18.756 34.596 18.636 34.172 18.396 33.844C18.164 33.508 17.856 33.228 17.472 33.004C17.088 32.78 16.648 32.592 16.152 32.44C15.656 32.28 15.152 32.12 14.64 31.96C14.128 31.792 13.624 31.6 13.128 31.384C12.632 31.168 12.192 30.888 11.808 30.544C11.424 30.2 11.112 29.772 10.872 29.26C10.64 28.74 10.524 28.1 10.524 27.34C10.524 26.732 10.64 26.144 10.872 25.576C11.112 25.008 11.456 24.504 11.904 24.064C12.36 23.624 12.916 23.272 13.572 23.008C14.236 22.744 14.996 22.612 15.852 22.612C16.812 22.612 17.684 22.764 18.468 23.068C19.26 23.372 19.956 23.812 20.556 24.388L19.992 25.492ZM29.3033 31.72C29.9673 31.72 30.5513 31.632 31.0553 31.456C31.5673 31.28 31.9953 31.036 32.3393 30.724C32.6913 30.404 32.9553 30.024 33.1313 29.584C33.3073 29.144 33.3953 28.66 33.3953 28.132C33.3953 27.036 33.0553 26.18 32.3753 25.564C31.7033 24.948 30.6793 24.64 29.3033 24.64H26.5433V31.72H29.3033ZM29.3033 22.804C30.3913 22.804 31.3353 22.932 32.1353 23.188C32.9433 23.436 33.6113 23.792 34.1393 24.256C34.6673 24.72 35.0593 25.28 35.3152 25.936C35.5793 26.592 35.7113 27.324 35.7113 28.132C35.7113 28.932 35.5713 29.664 35.2913 30.328C35.0113 30.992 34.5993 31.564 34.0553 32.044C33.5193 32.524 32.8513 32.9 32.0513 33.172C31.2593 33.436 30.3433 33.568 29.3033 33.568H26.5433V40H24.2273V22.804H29.3033ZM49.2493 38.104L49.2373 40H38.6413V22.804H49.2373V24.7H40.9693V30.412H47.6653V32.236H40.9693V38.104H49.2493Z" fill="white"/>
|
||||
</svg>
|
||||
|
||||
|
Before Width: | Height: | Size: 3.0 KiB After Width: | Height: | Size: 3.0 KiB |
@@ -1,4 +1,4 @@
|
||||
<svg width="60" height="60" viewBox="0 0 60 60" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||
<rect width="60" height="60" fill="#898989"/>
|
||||
<path d="M18.992 25.492C18.92 25.612 18.84 25.704 18.752 25.768C18.672 25.824 18.572 25.852 18.452 25.852C18.316 25.852 18.156 25.784 17.972 25.648C17.788 25.512 17.556 25.364 17.276 25.204C17.004 25.036 16.672 24.884 16.28 24.748C15.896 24.612 15.428 24.544 14.876 24.544C14.356 24.544 13.896 24.616 13.496 24.76C13.104 24.896 12.772 25.084 12.5 25.324C12.236 25.564 12.036 25.848 11.9 26.176C11.764 26.496 11.696 26.844 11.696 27.22C11.696 27.7 11.812 28.1 12.044 28.42C12.284 28.732 12.596 29 12.98 29.224C13.372 29.448 13.812 29.644 14.3 29.812C14.796 29.972 15.3 30.14 15.812 30.316C16.332 30.492 16.836 30.692 17.324 30.916C17.82 31.132 18.26 31.408 18.644 31.744C19.036 32.08 19.348 32.492 19.58 32.98C19.82 33.468 19.94 34.068 19.94 34.78C19.94 35.532 19.812 36.24 19.556 36.904C19.3 37.56 18.924 38.132 18.428 38.62C17.94 39.108 17.336 39.492 16.616 39.772C15.904 40.052 15.092 40.192 14.18 40.192C13.06 40.192 12.044 39.992 11.132 39.592C10.22 39.184 9.44 38.636 8.792 37.948L9.464 36.844C9.528 36.756 9.604 36.684 9.692 36.628C9.788 36.564 9.892 36.532 10.004 36.532C10.108 36.532 10.224 36.576 10.352 36.664C10.488 36.744 10.64 36.848 10.808 36.976C10.976 37.104 11.168 37.244 11.384 37.396C11.6 37.548 11.844 37.688 12.116 37.816C12.396 37.944 12.712 38.052 13.064 38.14C13.416 38.22 13.812 38.26 14.252 38.26C14.804 38.26 15.296 38.184 15.728 38.032C16.16 37.88 16.524 37.668 16.82 37.396C17.124 37.116 17.356 36.784 17.516 36.4C17.676 36.016 17.756 35.588 17.756 35.116C17.756 34.596 17.636 34.172 17.396 33.844C17.164 33.508 16.856 33.228 16.472 33.004C16.088 32.78 15.648 32.592 15.152 32.44C14.656 32.28 14.152 32.12 13.64 31.96C13.128 31.792 12.624 31.6 12.128 31.384C11.632 31.168 11.192 30.888 10.808 30.544C10.424 30.2 10.112 29.772 9.872 29.26C9.64 28.74 9.524 28.1 9.524 27.34C9.524 26.732 9.64 26.144 9.872 25.576C10.112 25.008 10.456 24.504 10.904 24.064C11.36 23.624 11.916 23.272 12.572 23.008C13.236 22.744 13.996 22.612 14.852 22.612C15.812 22.612 16.684 22.764 17.468 23.068C18.26 23.372 18.956 23.812 19.556 24.388L18.992 25.492ZM28.3033 31.72C28.9673 31.72 29.5513 31.632 30.0553 31.456C30.5673 31.28 30.9953 31.036 31.3393 30.724C31.6913 30.404 31.9553 30.024 32.1313 29.584C32.3073 29.144 32.3953 28.66 32.3953 28.132C32.3953 27.036 32.0553 26.18 31.3753 25.564C30.7033 24.948 29.6793 24.64 28.3033 24.64H25.5433V31.72H28.3033ZM28.3033 22.804C29.3913 22.804 30.3353 22.932 31.1353 23.188C31.9433 23.436 32.6113 23.792 33.1393 24.256C33.6673 24.72 34.0593 25.28 34.3152 25.936C34.5793 26.592 34.7113 27.324 34.7113 28.132C34.7113 28.932 34.5713 29.664 34.2913 30.328C34.0113 30.992 33.5993 31.564 33.0553 32.044C32.5193 32.524 31.8513 32.9 31.0513 33.172C30.2593 33.436 29.3433 33.568 28.3033 33.568H25.5433V40H23.2273V22.804H28.3033ZM39.9573 30.34H40.8333C41.1373 30.34 41.3813 30.304 41.5653 30.232C41.7493 30.152 41.9173 30.02 42.0693 29.836L47.7933 23.356C47.9533 23.148 48.1213 23.004 48.2973 22.924C48.4733 22.844 48.6893 22.804 48.9453 22.804H50.9133L44.3613 30.208C44.2013 30.4 44.0453 30.56 43.8933 30.688C43.7493 30.808 43.5933 30.908 43.4253 30.988C43.6413 31.06 43.8373 31.168 44.0133 31.312C44.1893 31.448 44.3613 31.628 44.5293 31.852L51.3693 40H49.3533C49.2013 40 49.0693 39.992 48.9573 39.976C48.8533 39.952 48.7613 39.92 48.6813 39.88C48.6013 39.832 48.5293 39.78 48.4653 39.724C48.4093 39.66 48.3533 39.588 48.2973 39.508L42.3693 32.68C42.2093 32.48 42.0373 32.34 41.8533 32.26C41.6693 32.172 41.3893 32.128 41.0133 32.128H39.9573V40H37.6413V22.804H39.9573V30.34Z" fill="white"/>
|
||||
</svg>
|
||||
<svg width="60" height="60" viewBox="0 0 60 60" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||
<rect width="60" height="60" fill="#898989"/>
|
||||
<path d="M18.992 25.492C18.92 25.612 18.84 25.704 18.752 25.768C18.672 25.824 18.572 25.852 18.452 25.852C18.316 25.852 18.156 25.784 17.972 25.648C17.788 25.512 17.556 25.364 17.276 25.204C17.004 25.036 16.672 24.884 16.28 24.748C15.896 24.612 15.428 24.544 14.876 24.544C14.356 24.544 13.896 24.616 13.496 24.76C13.104 24.896 12.772 25.084 12.5 25.324C12.236 25.564 12.036 25.848 11.9 26.176C11.764 26.496 11.696 26.844 11.696 27.22C11.696 27.7 11.812 28.1 12.044 28.42C12.284 28.732 12.596 29 12.98 29.224C13.372 29.448 13.812 29.644 14.3 29.812C14.796 29.972 15.3 30.14 15.812 30.316C16.332 30.492 16.836 30.692 17.324 30.916C17.82 31.132 18.26 31.408 18.644 31.744C19.036 32.08 19.348 32.492 19.58 32.98C19.82 33.468 19.94 34.068 19.94 34.78C19.94 35.532 19.812 36.24 19.556 36.904C19.3 37.56 18.924 38.132 18.428 38.62C17.94 39.108 17.336 39.492 16.616 39.772C15.904 40.052 15.092 40.192 14.18 40.192C13.06 40.192 12.044 39.992 11.132 39.592C10.22 39.184 9.44 38.636 8.792 37.948L9.464 36.844C9.528 36.756 9.604 36.684 9.692 36.628C9.788 36.564 9.892 36.532 10.004 36.532C10.108 36.532 10.224 36.576 10.352 36.664C10.488 36.744 10.64 36.848 10.808 36.976C10.976 37.104 11.168 37.244 11.384 37.396C11.6 37.548 11.844 37.688 12.116 37.816C12.396 37.944 12.712 38.052 13.064 38.14C13.416 38.22 13.812 38.26 14.252 38.26C14.804 38.26 15.296 38.184 15.728 38.032C16.16 37.88 16.524 37.668 16.82 37.396C17.124 37.116 17.356 36.784 17.516 36.4C17.676 36.016 17.756 35.588 17.756 35.116C17.756 34.596 17.636 34.172 17.396 33.844C17.164 33.508 16.856 33.228 16.472 33.004C16.088 32.78 15.648 32.592 15.152 32.44C14.656 32.28 14.152 32.12 13.64 31.96C13.128 31.792 12.624 31.6 12.128 31.384C11.632 31.168 11.192 30.888 10.808 30.544C10.424 30.2 10.112 29.772 9.872 29.26C9.64 28.74 9.524 28.1 9.524 27.34C9.524 26.732 9.64 26.144 9.872 25.576C10.112 25.008 10.456 24.504 10.904 24.064C11.36 23.624 11.916 23.272 12.572 23.008C13.236 22.744 13.996 22.612 14.852 22.612C15.812 22.612 16.684 22.764 17.468 23.068C18.26 23.372 18.956 23.812 19.556 24.388L18.992 25.492ZM28.3033 31.72C28.9673 31.72 29.5513 31.632 30.0553 31.456C30.5673 31.28 30.9953 31.036 31.3393 30.724C31.6913 30.404 31.9553 30.024 32.1313 29.584C32.3073 29.144 32.3953 28.66 32.3953 28.132C32.3953 27.036 32.0553 26.18 31.3753 25.564C30.7033 24.948 29.6793 24.64 28.3033 24.64H25.5433V31.72H28.3033ZM28.3033 22.804C29.3913 22.804 30.3353 22.932 31.1353 23.188C31.9433 23.436 32.6113 23.792 33.1393 24.256C33.6673 24.72 34.0593 25.28 34.3152 25.936C34.5793 26.592 34.7113 27.324 34.7113 28.132C34.7113 28.932 34.5713 29.664 34.2913 30.328C34.0113 30.992 33.5993 31.564 33.0553 32.044C32.5193 32.524 31.8513 32.9 31.0513 33.172C30.2593 33.436 29.3433 33.568 28.3033 33.568H25.5433V40H23.2273V22.804H28.3033ZM39.9573 30.34H40.8333C41.1373 30.34 41.3813 30.304 41.5653 30.232C41.7493 30.152 41.9173 30.02 42.0693 29.836L47.7933 23.356C47.9533 23.148 48.1213 23.004 48.2973 22.924C48.4733 22.844 48.6893 22.804 48.9453 22.804H50.9133L44.3613 30.208C44.2013 30.4 44.0453 30.56 43.8933 30.688C43.7493 30.808 43.5933 30.908 43.4253 30.988C43.6413 31.06 43.8373 31.168 44.0133 31.312C44.1893 31.448 44.3613 31.628 44.5293 31.852L51.3693 40H49.3533C49.2013 40 49.0693 39.992 48.9573 39.976C48.8533 39.952 48.7613 39.92 48.6813 39.88C48.6013 39.832 48.5293 39.78 48.4653 39.724C48.4093 39.66 48.3533 39.588 48.2973 39.508L42.3693 32.68C42.2093 32.48 42.0373 32.34 41.8533 32.26C41.6693 32.172 41.3893 32.128 41.0133 32.128H39.9573V40H37.6413V22.804H39.9573V30.34Z" fill="white"/>
|
||||
</svg>
|
||||
|
||||
|
Before Width: | Height: | Size: 3.6 KiB After Width: | Height: | Size: 3.6 KiB |
@@ -1,5 +1,5 @@
|
||||
<svg width="25" height="40" viewBox="0 0 25 40" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||
<path d="M22.3239 23.2517L12.5 39.9451L2.67613 23.2517C-1.14806 16.7533 -3.04933 0.0257886 12.4963 2.9778e-05C28.0499 0.0205562 26.1487 16.7523 22.3239 23.2517Z" fill="#7B7B7B"/>
|
||||
<path d="M18.0882 23H7.5V7.91892C7.5 4.02703 18.0882 4.02703 18.0882 7.91892V23Z" fill="white"/>
|
||||
<path d="M12.0446 8.99239V12.4865H11.314V9.81828L10.557 10.3053L10.2235 9.76004L11.3776 8.99239H12.0446ZM13.26 9.36298C13.4894 9.07357 13.8282 8.92886 14.2765 8.92886C14.7247 8.92886 15.0618 9.07357 15.2877 9.36298C15.5171 9.65239 15.6318 10.1183 15.6318 10.7606C15.6318 11.3995 15.5188 11.8583 15.2929 12.1371C15.0671 12.4124 14.7282 12.55 14.2765 12.55C13.8247 12.55 13.4859 12.4124 13.26 12.1371C13.0341 11.8583 12.9212 11.3995 12.9212 10.7606C12.9212 10.1183 13.0341 9.65239 13.26 9.36298ZM14.88 10.7447C14.88 10.3071 14.8341 10.0018 14.7424 9.82886C14.6506 9.65239 14.4953 9.56416 14.2765 9.56416C14.0612 9.56416 13.9059 9.65239 13.8106 9.82886C13.7188 10.0053 13.6729 10.3106 13.6729 10.7447C13.6729 11.1789 13.7206 11.4824 13.8159 11.6553C13.9112 11.8283 14.0665 11.9147 14.2818 11.9147C14.4971 11.9147 14.6506 11.8283 14.7424 11.6553C14.8341 11.4824 14.88 11.1789 14.88 10.7447ZM13.907 16.9924V17.6277H12.3453L12.2553 18.3847C12.4741 18.3 12.6823 18.2577 12.88 18.2577C13.6353 18.2577 14.0129 18.6089 14.0129 19.3112C14.0129 19.7065 13.9088 20.0118 13.7006 20.2271C13.4923 20.4424 13.1976 20.55 12.8164 20.55C12.6541 20.55 12.4688 20.5342 12.2606 20.5024C12.0558 20.4706 11.8917 20.4371 11.7682 20.4018L11.5776 20.3542L11.657 19.8142C12.0841 19.8812 12.4406 19.9147 12.7264 19.9147C12.8994 19.9147 13.0317 19.8689 13.1235 19.7771C13.2153 19.6853 13.2611 19.5547 13.2611 19.3853C13.2611 19.2124 13.2223 19.0871 13.1447 19.0095C13.067 18.9318 12.9576 18.893 12.8164 18.893C12.58 18.893 12.3717 18.9159 12.1917 18.9618L12.1123 18.983L11.6782 18.8824L11.7735 16.9924H13.907Z" fill="black"/>
|
||||
</svg>
|
||||
<svg width="25" height="40" viewBox="0 0 25 40" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||
<path d="M22.3239 23.2517L12.5 39.9451L2.67613 23.2517C-1.14806 16.7533 -3.04933 0.0257886 12.4963 2.9778e-05C28.0499 0.0205562 26.1487 16.7523 22.3239 23.2517Z" fill="#7B7B7B"/>
|
||||
<path d="M18.0882 23H7.5V7.91892C7.5 4.02703 18.0882 4.02703 18.0882 7.91892V23Z" fill="white"/>
|
||||
<path d="M12.0446 8.99239V12.4865H11.314V9.81828L10.557 10.3053L10.2235 9.76004L11.3776 8.99239H12.0446ZM13.26 9.36298C13.4894 9.07357 13.8282 8.92886 14.2765 8.92886C14.7247 8.92886 15.0618 9.07357 15.2877 9.36298C15.5171 9.65239 15.6318 10.1183 15.6318 10.7606C15.6318 11.3995 15.5188 11.8583 15.2929 12.1371C15.0671 12.4124 14.7282 12.55 14.2765 12.55C13.8247 12.55 13.4859 12.4124 13.26 12.1371C13.0341 11.8583 12.9212 11.3995 12.9212 10.7606C12.9212 10.1183 13.0341 9.65239 13.26 9.36298ZM14.88 10.7447C14.88 10.3071 14.8341 10.0018 14.7424 9.82886C14.6506 9.65239 14.4953 9.56416 14.2765 9.56416C14.0612 9.56416 13.9059 9.65239 13.8106 9.82886C13.7188 10.0053 13.6729 10.3106 13.6729 10.7447C13.6729 11.1789 13.7206 11.4824 13.8159 11.6553C13.9112 11.8283 14.0665 11.9147 14.2818 11.9147C14.4971 11.9147 14.6506 11.8283 14.7424 11.6553C14.8341 11.4824 14.88 11.1789 14.88 10.7447ZM13.907 16.9924V17.6277H12.3453L12.2553 18.3847C12.4741 18.3 12.6823 18.2577 12.88 18.2577C13.6353 18.2577 14.0129 18.6089 14.0129 19.3112C14.0129 19.7065 13.9088 20.0118 13.7006 20.2271C13.4923 20.4424 13.1976 20.55 12.8164 20.55C12.6541 20.55 12.4688 20.5342 12.2606 20.5024C12.0558 20.4706 11.8917 20.4371 11.7682 20.4018L11.5776 20.3542L11.657 19.8142C12.0841 19.8812 12.4406 19.9147 12.7264 19.9147C12.8994 19.9147 13.0317 19.8689 13.1235 19.7771C13.2153 19.6853 13.2611 19.5547 13.2611 19.3853C13.2611 19.2124 13.2223 19.0871 13.1447 19.0095C13.067 18.9318 12.9576 18.893 12.8164 18.893C12.58 18.893 12.3717 18.9159 12.1917 18.9618L12.1123 18.983L11.6782 18.8824L11.7735 16.9924H13.907Z" fill="black"/>
|
||||
</svg>
|
||||
|
||||
|
Before Width: | Height: | Size: 1.9 KiB After Width: | Height: | Size: 1.9 KiB |
@@ -1,46 +1,46 @@
|
||||
<svg width="148" height="150" viewBox="0 0 148 150" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||
<g id="warning-image">
|
||||
<path id="bg" d="M0 150L74.5 0L148 150H74.2508H73.7492H0Z" fill="#F2E147"/>
|
||||
<g id="signal">
|
||||
<rect id="Rectangle 13" x="70" y="130" width="8" height="20" fill="#C4C4C4"/>
|
||||
<rect id="Rectangle 12" x="59" y="47" width="31" height="90" rx="15.5" fill="#171616"/>
|
||||
<circle id="Ellipse 8" cx="74" cy="63" r="7" fill="#393838"/>
|
||||
<g id="Ellipse 9" filter="url(#filter0_d)">
|
||||
<circle cx="74" cy="82" r="7" fill="#F40000"/>
|
||||
</g>
|
||||
<circle id="Ellipse 10" cx="74" cy="101" r="7" fill="#393838"/>
|
||||
<circle id="Ellipse 13" cx="74" cy="120" r="7" fill="#393838"/>
|
||||
<g id="anim-circle" filter="url(#filter1_d)">
|
||||
<circle cx="74" cy="120" r="7" fill="#F40000"/>
|
||||
|
||||
<animate
|
||||
attributeType="XML"
|
||||
attributeName="opacity"
|
||||
values="1;0;1"
|
||||
dur="1.5s"
|
||||
repeatCount="indefinite"
|
||||
/>
|
||||
</g>
|
||||
</g>
|
||||
</g>
|
||||
<defs>
|
||||
<filter id="filter0_d" x="62" y="70" width="24" height="24" filterUnits="userSpaceOnUse" color-interpolation-filters="sRGB">
|
||||
<feFlood flood-opacity="0" result="BackgroundImageFix"/>
|
||||
<feColorMatrix in="SourceAlpha" type="matrix" values="0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 127 0"/>
|
||||
<feOffset/>
|
||||
<feGaussianBlur stdDeviation="2.5"/>
|
||||
<feColorMatrix type="matrix" values="0 0 0 0 0.770833 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0"/>
|
||||
<feBlend mode="normal" in2="BackgroundImageFix" result="effect1_dropShadow"/>
|
||||
<feBlend mode="normal" in="SourceGraphic" in2="effect1_dropShadow" result="shape"/>
|
||||
</filter>
|
||||
<filter id="filter1_d" x="62" y="108" width="24" height="24" filterUnits="userSpaceOnUse" color-interpolation-filters="sRGB">
|
||||
<feFlood flood-opacity="0" result="BackgroundImageFix"/>
|
||||
<feColorMatrix in="SourceAlpha" type="matrix" values="0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 127 0"/>
|
||||
<feOffset/>
|
||||
<feGaussianBlur stdDeviation="2.5"/>
|
||||
<feColorMatrix type="matrix" values="0 0 0 0 0.770833 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0"/>
|
||||
<feBlend mode="normal" in2="BackgroundImageFix" result="effect1_dropShadow"/>
|
||||
<feBlend mode="normal" in="SourceGraphic" in2="effect1_dropShadow" result="shape"/>
|
||||
</filter>
|
||||
</defs>
|
||||
</svg>
|
||||
<svg width="148" height="150" viewBox="0 0 148 150" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||
<g id="warning-image">
|
||||
<path id="bg" d="M0 150L74.5 0L148 150H74.2508H73.7492H0Z" fill="#F2E147"/>
|
||||
<g id="signal">
|
||||
<rect id="Rectangle 13" x="70" y="130" width="8" height="20" fill="#C4C4C4"/>
|
||||
<rect id="Rectangle 12" x="59" y="47" width="31" height="90" rx="15.5" fill="#171616"/>
|
||||
<circle id="Ellipse 8" cx="74" cy="63" r="7" fill="#393838"/>
|
||||
<g id="Ellipse 9" filter="url(#filter0_d)">
|
||||
<circle cx="74" cy="82" r="7" fill="#F40000"/>
|
||||
</g>
|
||||
<circle id="Ellipse 10" cx="74" cy="101" r="7" fill="#393838"/>
|
||||
<circle id="Ellipse 13" cx="74" cy="120" r="7" fill="#393838"/>
|
||||
<g id="anim-circle" filter="url(#filter1_d)">
|
||||
<circle cx="74" cy="120" r="7" fill="#F40000"/>
|
||||
|
||||
<animate
|
||||
attributeType="XML"
|
||||
attributeName="opacity"
|
||||
values="1;0;1"
|
||||
dur="1.5s"
|
||||
repeatCount="indefinite"
|
||||
/>
|
||||
</g>
|
||||
</g>
|
||||
</g>
|
||||
<defs>
|
||||
<filter id="filter0_d" x="62" y="70" width="24" height="24" filterUnits="userSpaceOnUse" color-interpolation-filters="sRGB">
|
||||
<feFlood flood-opacity="0" result="BackgroundImageFix"/>
|
||||
<feColorMatrix in="SourceAlpha" type="matrix" values="0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 127 0"/>
|
||||
<feOffset/>
|
||||
<feGaussianBlur stdDeviation="2.5"/>
|
||||
<feColorMatrix type="matrix" values="0 0 0 0 0.770833 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0"/>
|
||||
<feBlend mode="normal" in2="BackgroundImageFix" result="effect1_dropShadow"/>
|
||||
<feBlend mode="normal" in="SourceGraphic" in2="effect1_dropShadow" result="shape"/>
|
||||
</filter>
|
||||
<filter id="filter1_d" x="62" y="108" width="24" height="24" filterUnits="userSpaceOnUse" color-interpolation-filters="sRGB">
|
||||
<feFlood flood-opacity="0" result="BackgroundImageFix"/>
|
||||
<feColorMatrix in="SourceAlpha" type="matrix" values="0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 127 0"/>
|
||||
<feOffset/>
|
||||
<feGaussianBlur stdDeviation="2.5"/>
|
||||
<feColorMatrix type="matrix" values="0 0 0 0 0.770833 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0"/>
|
||||
<feBlend mode="normal" in2="BackgroundImageFix" result="effect1_dropShadow"/>
|
||||
<feBlend mode="normal" in="SourceGraphic" in2="effect1_dropShadow" result="shape"/>
|
||||
</filter>
|
||||
</defs>
|
||||
</svg>
|
||||
|
||||
|
Before Width: | Height: | Size: 2.1 KiB After Width: | Height: | Size: 2.1 KiB |
@@ -1,9 +1,9 @@
|
||||
<svg width="64" height="64" viewBox="0 0 64 64" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||
<rect width="64" height="64" fill="#898989"/>
|
||||
<path d="M8 19H57" stroke="white" stroke-width="3" stroke-linecap="round" stroke-linejoin="round"/>
|
||||
<path d="M8 32H57" stroke="white" stroke-width="3" stroke-linecap="round" stroke-linejoin="round"/>
|
||||
<path d="M8 45H57" stroke="white" stroke-width="3" stroke-linecap="round" stroke-linejoin="round"/>
|
||||
<circle cx="16" cy="19" r="3" fill="#898989" stroke="white" stroke-width="2"/>
|
||||
<circle cx="45" cy="32" r="3" fill="#898989" stroke="white" stroke-width="2"/>
|
||||
<circle cx="28" cy="45" r="3" fill="#898989" stroke="white" stroke-width="2"/>
|
||||
</svg>
|
||||
<svg width="64" height="64" viewBox="0 0 64 64" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||
<rect width="64" height="64" fill="#898989"/>
|
||||
<path d="M8 19H57" stroke="white" stroke-width="3" stroke-linecap="round" stroke-linejoin="round"/>
|
||||
<path d="M8 32H57" stroke="white" stroke-width="3" stroke-linecap="round" stroke-linejoin="round"/>
|
||||
<path d="M8 45H57" stroke="white" stroke-width="3" stroke-linecap="round" stroke-linejoin="round"/>
|
||||
<circle cx="16" cy="19" r="3" fill="#898989" stroke="white" stroke-width="2"/>
|
||||
<circle cx="45" cy="32" r="3" fill="#898989" stroke="white" stroke-width="2"/>
|
||||
<circle cx="28" cy="45" r="3" fill="#898989" stroke="white" stroke-width="2"/>
|
||||
</svg>
|
||||
|
||||
|
Before Width: | Height: | Size: 686 B After Width: | Height: | Size: 695 B |
@@ -1,18 +1,18 @@
|
||||
<svg width="60" height="60" viewBox="0 0 60 60" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||
<rect width="60" height="60" fill="#898989"/>
|
||||
<path d="M30.5 6.04878H35.2195" stroke="#BFBFBF"/>
|
||||
<path d="M27.9024 4.00303C25.2115 4.10008 24.2403 6.24494 24 7.41767H32.0488C31.8486 6.16406 30.5934 3.90598 27.9024 4.00303Z" fill="black"/>
|
||||
<path d="M33.0244 29.6688V5.47793V4.68292H34.4878V5.47793V56.5854H33.0244V32.5H27.5V28.5V28.0163L28.5 28V31.5L31.9268 31.5447H33.0244V29.6688Z" fill="#BFBFBF"/>
|
||||
<path d="M28.1463 29.2683C30.8373 29.1712 31.8085 27.0264 32.0488 25.8537H24C24.2002 27.1073 25.4554 29.3654 28.1463 29.2683Z" fill="black"/>
|
||||
<path d="M32.0488 25.8537V7.86993V7.41464H24V25.8537H32.0488Z" fill="black"/>
|
||||
<path d="M25 26V29.5L33.8781 44.9756" stroke="black"/>
|
||||
<rect x="33.0244" y="31.5447" width="1.46341" height="25.0407" fill="white"/>
|
||||
<rect x="33.0244" y="31.5447" width="1.46341" height="5.69106" fill="#FF0000"/>
|
||||
<rect x="33.0244" y="42.9268" width="1.46341" height="5.69106" fill="#FF0000"/>
|
||||
<rect x="33.0244" y="54.3089" width="1.46341" height="5.69106" fill="#FF0000"/>
|
||||
<ellipse cx="27.9024" cy="7.40022" rx="1.46341" ry="1.40022" fill="#212121"/>
|
||||
<ellipse cx="27.9024" cy="11.8343" rx="1.46341" ry="1.40022" fill="#212121"/>
|
||||
<ellipse cx="27.9024" cy="16.2683" rx="1.46341" ry="1.40022" fill="#FF0000"/>
|
||||
<ellipse cx="27.9024" cy="20.7023" rx="1.46341" ry="1.40022" fill="#212121"/>
|
||||
<ellipse cx="27.9024" cy="25.1364" rx="1.46341" ry="1.40022" fill="#212121"/>
|
||||
</svg>
|
||||
<svg width="60" height="60" viewBox="0 0 60 60" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||
<rect width="60" height="60" fill="#898989"/>
|
||||
<path d="M30.5 6.04878H35.2195" stroke="#BFBFBF"/>
|
||||
<path d="M27.9024 4.00303C25.2115 4.10008 24.2403 6.24494 24 7.41767H32.0488C31.8486 6.16406 30.5934 3.90598 27.9024 4.00303Z" fill="black"/>
|
||||
<path d="M33.0244 29.6688V5.47793V4.68292H34.4878V5.47793V56.5854H33.0244V32.5H27.5V28.5V28.0163L28.5 28V31.5L31.9268 31.5447H33.0244V29.6688Z" fill="#BFBFBF"/>
|
||||
<path d="M28.1463 29.2683C30.8373 29.1712 31.8085 27.0264 32.0488 25.8537H24C24.2002 27.1073 25.4554 29.3654 28.1463 29.2683Z" fill="black"/>
|
||||
<path d="M32.0488 25.8537V7.86993V7.41464H24V25.8537H32.0488Z" fill="black"/>
|
||||
<path d="M25 26V29.5L33.8781 44.9756" stroke="black"/>
|
||||
<rect x="33.0244" y="31.5447" width="1.46341" height="25.0407" fill="white"/>
|
||||
<rect x="33.0244" y="31.5447" width="1.46341" height="5.69106" fill="#FF0000"/>
|
||||
<rect x="33.0244" y="42.9268" width="1.46341" height="5.69106" fill="#FF0000"/>
|
||||
<rect x="33.0244" y="54.3089" width="1.46341" height="5.69106" fill="#FF0000"/>
|
||||
<ellipse cx="27.9024" cy="7.40022" rx="1.46341" ry="1.40022" fill="#212121"/>
|
||||
<ellipse cx="27.9024" cy="11.8343" rx="1.46341" ry="1.40022" fill="#212121"/>
|
||||
<ellipse cx="27.9024" cy="16.2683" rx="1.46341" ry="1.40022" fill="#FF0000"/>
|
||||
<ellipse cx="27.9024" cy="20.7023" rx="1.46341" ry="1.40022" fill="#212121"/>
|
||||
<ellipse cx="27.9024" cy="25.1364" rx="1.46341" ry="1.40022" fill="#212121"/>
|
||||
</svg>
|
||||
|
||||
|
Before Width: | Height: | Size: 1.5 KiB After Width: | Height: | Size: 1.5 KiB |
@@ -1,10 +1,10 @@
|
||||
<svg width="60" height="60" viewBox="0 0 60 60" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||
<rect width="60" height="60" fill="#898989"/>
|
||||
<path d="M12.4561 16.8624V11.525H41.0602V16.8624H12.4561Z" fill="#FF0000"/>
|
||||
<path d="M13.9818 15.3374V13.05H40.6789V15.3374H13.9818Z" fill="white"/>
|
||||
<ellipse cx="43.3485" cy="14.1937" rx="4.19527" ry="4.19367" fill="#FF0000"/>
|
||||
<ellipse cx="43.3486" cy="14.1937" rx="2.66972" ry="2.6687" fill="white"/>
|
||||
<rect x="18" y="16" width="3" height="44" fill="#FF0000"/>
|
||||
<rect x="18" y="26" width="3" height="9" fill="white"/>
|
||||
<rect x="18" y="44" width="3" height="9" fill="white"/>
|
||||
</svg>
|
||||
<svg width="60" height="60" viewBox="0 0 60 60" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||
<rect width="60" height="60" fill="#898989"/>
|
||||
<path d="M12.4561 16.8624V11.525H41.0602V16.8624H12.4561Z" fill="#FF0000"/>
|
||||
<path d="M13.9818 15.3374V13.05H40.6789V15.3374H13.9818Z" fill="white"/>
|
||||
<ellipse cx="43.3485" cy="14.1937" rx="4.19527" ry="4.19367" fill="#FF0000"/>
|
||||
<ellipse cx="43.3486" cy="14.1937" rx="2.66972" ry="2.6687" fill="white"/>
|
||||
<rect x="18" y="16" width="3" height="44" fill="#FF0000"/>
|
||||
<rect x="18" y="26" width="3" height="9" fill="white"/>
|
||||
<rect x="18" y="44" width="3" height="9" fill="white"/>
|
||||
</svg>
|
||||
|
||||
|
Before Width: | Height: | Size: 622 B After Width: | Height: | Size: 632 B |
@@ -1,4 +1,4 @@
|
||||
<svg width="31" height="30" viewBox="0 0 31 30" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||
<rect width="30.3072" height="30" rx="6" fill="#7B7B7B"/>
|
||||
<path d="M26.7965 15.5303C27.0894 15.2374 27.0894 14.7626 26.7965 14.4697L22.0236 9.6967C21.7307 9.40381 21.2558 9.40381 20.9629 9.6967C20.67 9.98959 20.67 10.4645 20.9629 10.7574L25.2056 15L20.9629 19.2426C20.67 19.5355 20.67 20.0104 20.9629 20.3033C21.2558 20.5962 21.7307 20.5962 22.0236 20.3033L26.7965 15.5303ZM3.51062 14.4697C3.21773 14.7626 3.21773 15.2374 3.51062 15.5303L8.2836 20.3033C8.57649 20.5962 9.05136 20.5962 9.34426 20.3033C9.63715 20.0104 9.63715 19.5355 9.34426 19.2426L5.10161 15L9.34426 10.7574C9.63715 10.4645 9.63715 9.98959 9.34426 9.6967C9.05136 9.40381 8.57649 9.40381 8.2836 9.6967L3.51062 14.4697ZM4.92996 15.75H25.3772V14.25H4.92996V15.75ZM25.3772 15.75H26.2662V14.25H25.3772V15.75ZM4.92996 14.25H4.04095V15.75H4.92996V14.25Z" fill="white"/>
|
||||
</svg>
|
||||
<svg width="31" height="30" viewBox="0 0 31 30" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||
<rect width="30.3072" height="30" rx="6" fill="#7B7B7B"/>
|
||||
<path d="M26.7965 15.5303C27.0894 15.2374 27.0894 14.7626 26.7965 14.4697L22.0236 9.6967C21.7307 9.40381 21.2558 9.40381 20.9629 9.6967C20.67 9.98959 20.67 10.4645 20.9629 10.7574L25.2056 15L20.9629 19.2426C20.67 19.5355 20.67 20.0104 20.9629 20.3033C21.2558 20.5962 21.7307 20.5962 22.0236 20.3033L26.7965 15.5303ZM3.51062 14.4697C3.21773 14.7626 3.21773 15.2374 3.51062 15.5303L8.2836 20.3033C8.57649 20.5962 9.05136 20.5962 9.34426 20.3033C9.63715 20.0104 9.63715 19.5355 9.34426 19.2426L5.10161 15L9.34426 10.7574C9.63715 10.4645 9.63715 9.98959 9.34426 9.6967C9.05136 9.40381 8.57649 9.40381 8.2836 9.6967L3.51062 14.4697ZM4.92996 15.75H25.3772V14.25H4.92996V15.75ZM25.3772 15.75H26.2662V14.25H25.3772V15.75ZM4.92996 14.25H4.04095V15.75H4.92996V14.25Z" fill="white"/>
|
||||
</svg>
|
||||
|
||||
|
Before Width: | Height: | Size: 934 B After Width: | Height: | Size: 938 B |
@@ -1,6 +1,6 @@
|
||||
<svg width="64" height="64" viewBox="0 0 64 64" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||
<rect width="64" height="64" fill="#898989"/>
|
||||
<path fill-rule="evenodd" clip-rule="evenodd" d="M23.5571 24.571C23.5571 21.906 24.5611 20.0553 25.984 18.8523C27.4412 17.6202 29.442 16.9838 31.5119 17.0003C33.5826 17.0168 35.6013 17.6863 37.0744 18.9083C38.5148 20.1034 39.4905 21.8673 39.4905 24.2699V31.0524H23.5571V24.571ZM20.5571 31.3205V24.571C20.5571 21.0634 21.9198 18.36 24.047 16.5614C26.1398 14.7919 28.8723 13.9792 31.5357 14.0004C34.1984 14.0216 36.913 14.8764 38.9899 16.5995C41.0994 18.3496 42.4905 20.9516 42.4905 24.2699V31.3205C43.9866 31.8994 45.0476 33.352 45.0476 35.0524V45.9857C45.0476 48.1948 43.2568 49.9857 41.0476 49.9857H22C19.7909 49.9857 18 48.1948 18 45.9857V35.0524C18 33.352 19.061 31.8994 20.5571 31.3205Z" fill="white"/>
|
||||
<path d="M33.2143 39.1667C33.2143 40.1003 32.4574 40.8571 31.5238 40.8571C30.5902 40.8571 29.8333 40.1003 29.8333 39.1667C29.8333 38.233 30.5902 37.4762 31.5238 37.4762C32.4574 37.4762 33.2143 38.233 33.2143 39.1667Z" fill="#898989"/>
|
||||
<path d="M30.6786 43.3929V40.0119C30.6786 39.5451 31.057 39.1667 31.5238 39.1667C31.9906 39.1667 32.369 39.5451 32.369 40.0119V43.3929C32.369 43.8597 31.9906 44.2381 31.5238 44.2381C31.057 44.2381 30.6786 43.8597 30.6786 43.3929Z" fill="#898989"/>
|
||||
</svg>
|
||||
<svg width="64" height="64" viewBox="0 0 64 64" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||
<rect width="64" height="64" fill="#898989"/>
|
||||
<path fill-rule="evenodd" clip-rule="evenodd" d="M23.5571 24.571C23.5571 21.906 24.5611 20.0553 25.984 18.8523C27.4412 17.6202 29.442 16.9838 31.5119 17.0003C33.5826 17.0168 35.6013 17.6863 37.0744 18.9083C38.5148 20.1034 39.4905 21.8673 39.4905 24.2699V31.0524H23.5571V24.571ZM20.5571 31.3205V24.571C20.5571 21.0634 21.9198 18.36 24.047 16.5614C26.1398 14.7919 28.8723 13.9792 31.5357 14.0004C34.1984 14.0216 36.913 14.8764 38.9899 16.5995C41.0994 18.3496 42.4905 20.9516 42.4905 24.2699V31.3205C43.9866 31.8994 45.0476 33.352 45.0476 35.0524V45.9857C45.0476 48.1948 43.2568 49.9857 41.0476 49.9857H22C19.7909 49.9857 18 48.1948 18 45.9857V35.0524C18 33.352 19.061 31.8994 20.5571 31.3205Z" fill="white"/>
|
||||
<path d="M33.2143 39.1667C33.2143 40.1003 32.4574 40.8571 31.5238 40.8571C30.5902 40.8571 29.8333 40.1003 29.8333 39.1667C29.8333 38.233 30.5902 37.4762 31.5238 37.4762C32.4574 37.4762 33.2143 38.233 33.2143 39.1667Z" fill="#898989"/>
|
||||
<path d="M30.6786 43.3929V40.0119C30.6786 39.5451 31.057 39.1667 31.5238 39.1667C31.9906 39.1667 32.369 39.5451 32.369 40.0119V43.3929C32.369 43.8597 31.9906 44.2381 31.5238 44.2381C31.057 44.2381 30.6786 43.8597 30.6786 43.3929Z" fill="#898989"/>
|
||||
</svg>
|
||||
|
||||
|
Before Width: | Height: | Size: 1.3 KiB After Width: | Height: | Size: 1.3 KiB |
@@ -1,4 +1,4 @@
|
||||
<svg width="31" height="30" viewBox="0 0 31 30" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||
<rect width="30.3072" height="30" rx="6" fill="#7B7B7B"/>
|
||||
<path d="M11.8852 9.32496C12.5388 3.65327 17.7683 3.4642 18.422 9.32496M21.9331 9.70309L26.2662 24.0714H4.04095L8.54741 9.70309H15.1536H21.9331Z" stroke="white" stroke-width="2" stroke-linejoin="round"/>
|
||||
</svg>
|
||||
<svg width="31" height="30" viewBox="0 0 31 30" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||
<rect width="30.3072" height="30" rx="6" fill="#7B7B7B"/>
|
||||
<path d="M11.8852 9.32496C12.5388 3.65327 17.7683 3.4642 18.422 9.32496M21.9331 9.70309L26.2662 24.0714H4.04095L8.54741 9.70309H15.1536H21.9331Z" stroke="white" stroke-width="2" stroke-linejoin="round"/>
|
||||
</svg>
|
||||
|
||||
|
Before Width: | Height: | Size: 365 B After Width: | Height: | Size: 369 B |
|
Before Width: | Height: | Size: 6.9 KiB After Width: | Height: | Size: 6.9 KiB |
@@ -1,4 +1,4 @@
|
||||
<svg width="60" height="60" viewBox="0 0 60 60" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||
<rect width="60" height="60" fill="#898989"/>
|
||||
<path d="M37.2076 8.103V21H35.6776V11.523C35.6776 11.397 35.6806 11.262 35.6866 11.118C35.6986 10.974 35.7106 10.827 35.7226 10.677L31.2946 18.741C31.1566 19.011 30.9466 19.146 30.6646 19.146H30.4126C30.1306 19.146 29.9206 19.011 29.7826 18.741L25.2646 10.641C25.3006 10.959 25.3186 11.253 25.3186 11.523V21H23.7886V8.103H25.0756C25.2316 8.103 25.3516 8.118 25.4356 8.148C25.5196 8.178 25.6006 8.262 25.6786 8.4L30.1336 16.338C30.2056 16.482 30.2746 16.632 30.3406 16.788C30.4126 16.944 30.4786 17.103 30.5386 17.265C30.5986 17.103 30.6616 16.944 30.7276 16.788C30.7936 16.626 30.8656 16.473 30.9436 16.329L35.3176 8.4C35.3896 8.262 35.4676 8.178 35.5516 8.148C35.6416 8.118 35.7646 8.103 35.9206 8.103H37.2076ZM34.8193 31.564H31.1473V35.434H29.8423V31.564H26.1883V30.349H29.8423V26.506H31.1473V30.349H34.8193V31.564ZM22.493 42.119C22.439 42.209 22.379 42.278 22.313 42.326C22.253 42.368 22.178 42.389 22.088 42.389C21.986 42.389 21.866 42.338 21.728 42.236C21.59 42.134 21.416 42.023 21.206 41.903C21.002 41.777 20.753 41.663 20.459 41.561C20.171 41.459 19.82 41.408 19.406 41.408C19.016 41.408 18.671 41.462 18.371 41.57C18.077 41.672 17.828 41.813 17.624 41.993C17.426 42.173 17.276 42.386 17.174 42.632C17.072 42.872 17.021 43.133 17.021 43.415C17.021 43.775 17.108 44.075 17.282 44.315C17.462 44.549 17.696 44.75 17.984 44.918C18.278 45.086 18.608 45.233 18.974 45.359C19.346 45.479 19.724 45.605 20.108 45.737C20.498 45.869 20.876 46.019 21.242 46.187C21.614 46.349 21.944 46.556 22.232 46.808C22.526 47.06 22.76 47.369 22.934 47.735C23.114 48.101 23.204 48.551 23.204 49.085C23.204 49.649 23.108 50.18 22.916 50.678C22.724 51.17 22.442 51.599 22.07 51.965C21.704 52.331 21.251 52.619 20.711 52.829C20.177 53.039 19.568 53.144 18.884 53.144C18.044 53.144 17.282 52.994 16.598 52.694C15.914 52.388 15.329 51.977 14.843 51.461L15.347 50.633C15.395 50.567 15.452 50.513 15.518 50.471C15.59 50.423 15.668 50.399 15.752 50.399C15.83 50.399 15.917 50.432 16.013 50.498C16.115 50.558 16.229 50.636 16.355 50.732C16.481 50.828 16.625 50.933 16.787 51.047C16.949 51.161 17.132 51.266 17.336 51.362C17.546 51.458 17.783 51.539 18.047 51.605C18.311 51.665 18.608 51.695 18.938 51.695C19.352 51.695 19.721 51.638 20.045 51.524C20.369 51.41 20.642 51.251 20.864 51.047C21.092 50.837 21.266 50.588 21.386 50.3C21.506 50.012 21.566 49.691 21.566 49.337C21.566 48.947 21.476 48.629 21.296 48.383C21.122 48.131 20.891 47.921 20.603 47.753C20.315 47.585 19.985 47.444 19.613 47.33C19.241 47.21 18.863 47.09 18.479 46.97C18.095 46.844 17.717 46.7 17.345 46.538C16.973 46.376 16.643 46.166 16.355 45.908C16.067 45.65 15.833 45.329 15.653 44.945C15.479 44.555 15.392 44.075 15.392 43.505C15.392 43.049 15.479 42.608 15.653 42.182C15.833 41.756 16.091 41.378 16.427 41.048C16.769 40.718 17.186 40.454 17.678 40.256C18.176 40.058 18.746 39.959 19.388 39.959C20.108 39.959 20.762 40.073 21.35 40.301C21.944 40.529 22.466 40.859 22.916 41.291L22.493 42.119ZM29.4765 46.79C29.9745 46.79 30.4125 46.724 30.7905 46.592C31.1745 46.46 31.4955 46.277 31.7535 46.043C32.0175 45.803 32.2155 45.518 32.3475 45.188C32.4795 44.858 32.5455 44.495 32.5455 44.099C32.5455 43.277 32.2905 42.635 31.7805 42.173C31.2765 41.711 30.5085 41.48 29.4765 41.48H27.4065V46.79H29.4765ZM29.4765 40.103C30.2925 40.103 31.0005 40.199 31.6005 40.391C32.2065 40.577 32.7075 40.844 33.1035 41.192C33.4995 41.54 33.7935 41.96 33.9855 42.452C34.1835 42.944 34.2825 43.493 34.2825 44.099C34.2825 44.699 34.1775 45.248 33.9675 45.746C33.7575 46.244 33.4485 46.673 33.0405 47.033C32.6385 47.393 32.1375 47.675 31.5375 47.879C30.9435 48.077 30.2565 48.176 29.4765 48.176H27.4065V53H25.6695V40.103H29.4765ZM38.217 45.755H38.874C39.102 45.755 39.285 45.728 39.423 45.674C39.561 45.614 39.687 45.515 39.801 45.377L44.094 40.517C44.214 40.361 44.34 40.253 44.472 40.193C44.604 40.133 44.766 40.103 44.958 40.103H46.434L41.52 45.656C41.4 45.8 41.283 45.92 41.169 46.016C41.061 46.106 40.944 46.181 40.818 46.241C40.98 46.295 41.127 46.376 41.259 46.484C41.391 46.586 41.52 46.721 41.646 46.889L46.776 53H45.264C45.15 53 45.051 52.994 44.967 52.982C44.889 52.964 44.82 52.94 44.76 52.91C44.7 52.874 44.646 52.835 44.598 52.793C44.556 52.745 44.514 52.691 44.472 52.631L40.026 47.51C39.906 47.36 39.777 47.255 39.639 47.195C39.501 47.129 39.291 47.096 39.009 47.096H38.217V53H36.48V40.103H38.217V45.755Z" fill="white"/>
|
||||
</svg>
|
||||
<svg width="60" height="60" viewBox="0 0 60 60" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||
<rect width="60" height="60" fill="#898989"/>
|
||||
<path d="M37.2076 8.103V21H35.6776V11.523C35.6776 11.397 35.6806 11.262 35.6866 11.118C35.6986 10.974 35.7106 10.827 35.7226 10.677L31.2946 18.741C31.1566 19.011 30.9466 19.146 30.6646 19.146H30.4126C30.1306 19.146 29.9206 19.011 29.7826 18.741L25.2646 10.641C25.3006 10.959 25.3186 11.253 25.3186 11.523V21H23.7886V8.103H25.0756C25.2316 8.103 25.3516 8.118 25.4356 8.148C25.5196 8.178 25.6006 8.262 25.6786 8.4L30.1336 16.338C30.2056 16.482 30.2746 16.632 30.3406 16.788C30.4126 16.944 30.4786 17.103 30.5386 17.265C30.5986 17.103 30.6616 16.944 30.7276 16.788C30.7936 16.626 30.8656 16.473 30.9436 16.329L35.3176 8.4C35.3896 8.262 35.4676 8.178 35.5516 8.148C35.6416 8.118 35.7646 8.103 35.9206 8.103H37.2076ZM34.8193 31.564H31.1473V35.434H29.8423V31.564H26.1883V30.349H29.8423V26.506H31.1473V30.349H34.8193V31.564ZM22.493 42.119C22.439 42.209 22.379 42.278 22.313 42.326C22.253 42.368 22.178 42.389 22.088 42.389C21.986 42.389 21.866 42.338 21.728 42.236C21.59 42.134 21.416 42.023 21.206 41.903C21.002 41.777 20.753 41.663 20.459 41.561C20.171 41.459 19.82 41.408 19.406 41.408C19.016 41.408 18.671 41.462 18.371 41.57C18.077 41.672 17.828 41.813 17.624 41.993C17.426 42.173 17.276 42.386 17.174 42.632C17.072 42.872 17.021 43.133 17.021 43.415C17.021 43.775 17.108 44.075 17.282 44.315C17.462 44.549 17.696 44.75 17.984 44.918C18.278 45.086 18.608 45.233 18.974 45.359C19.346 45.479 19.724 45.605 20.108 45.737C20.498 45.869 20.876 46.019 21.242 46.187C21.614 46.349 21.944 46.556 22.232 46.808C22.526 47.06 22.76 47.369 22.934 47.735C23.114 48.101 23.204 48.551 23.204 49.085C23.204 49.649 23.108 50.18 22.916 50.678C22.724 51.17 22.442 51.599 22.07 51.965C21.704 52.331 21.251 52.619 20.711 52.829C20.177 53.039 19.568 53.144 18.884 53.144C18.044 53.144 17.282 52.994 16.598 52.694C15.914 52.388 15.329 51.977 14.843 51.461L15.347 50.633C15.395 50.567 15.452 50.513 15.518 50.471C15.59 50.423 15.668 50.399 15.752 50.399C15.83 50.399 15.917 50.432 16.013 50.498C16.115 50.558 16.229 50.636 16.355 50.732C16.481 50.828 16.625 50.933 16.787 51.047C16.949 51.161 17.132 51.266 17.336 51.362C17.546 51.458 17.783 51.539 18.047 51.605C18.311 51.665 18.608 51.695 18.938 51.695C19.352 51.695 19.721 51.638 20.045 51.524C20.369 51.41 20.642 51.251 20.864 51.047C21.092 50.837 21.266 50.588 21.386 50.3C21.506 50.012 21.566 49.691 21.566 49.337C21.566 48.947 21.476 48.629 21.296 48.383C21.122 48.131 20.891 47.921 20.603 47.753C20.315 47.585 19.985 47.444 19.613 47.33C19.241 47.21 18.863 47.09 18.479 46.97C18.095 46.844 17.717 46.7 17.345 46.538C16.973 46.376 16.643 46.166 16.355 45.908C16.067 45.65 15.833 45.329 15.653 44.945C15.479 44.555 15.392 44.075 15.392 43.505C15.392 43.049 15.479 42.608 15.653 42.182C15.833 41.756 16.091 41.378 16.427 41.048C16.769 40.718 17.186 40.454 17.678 40.256C18.176 40.058 18.746 39.959 19.388 39.959C20.108 39.959 20.762 40.073 21.35 40.301C21.944 40.529 22.466 40.859 22.916 41.291L22.493 42.119ZM29.4765 46.79C29.9745 46.79 30.4125 46.724 30.7905 46.592C31.1745 46.46 31.4955 46.277 31.7535 46.043C32.0175 45.803 32.2155 45.518 32.3475 45.188C32.4795 44.858 32.5455 44.495 32.5455 44.099C32.5455 43.277 32.2905 42.635 31.7805 42.173C31.2765 41.711 30.5085 41.48 29.4765 41.48H27.4065V46.79H29.4765ZM29.4765 40.103C30.2925 40.103 31.0005 40.199 31.6005 40.391C32.2065 40.577 32.7075 40.844 33.1035 41.192C33.4995 41.54 33.7935 41.96 33.9855 42.452C34.1835 42.944 34.2825 43.493 34.2825 44.099C34.2825 44.699 34.1775 45.248 33.9675 45.746C33.7575 46.244 33.4485 46.673 33.0405 47.033C32.6385 47.393 32.1375 47.675 31.5375 47.879C30.9435 48.077 30.2565 48.176 29.4765 48.176H27.4065V53H25.6695V40.103H29.4765ZM38.217 45.755H38.874C39.102 45.755 39.285 45.728 39.423 45.674C39.561 45.614 39.687 45.515 39.801 45.377L44.094 40.517C44.214 40.361 44.34 40.253 44.472 40.193C44.604 40.133 44.766 40.103 44.958 40.103H46.434L41.52 45.656C41.4 45.8 41.283 45.92 41.169 46.016C41.061 46.106 40.944 46.181 40.818 46.241C40.98 46.295 41.127 46.376 41.259 46.484C41.391 46.586 41.52 46.721 41.646 46.889L46.776 53H45.264C45.15 53 45.051 52.994 44.967 52.982C44.889 52.964 44.82 52.94 44.76 52.91C44.7 52.874 44.646 52.835 44.598 52.793C44.556 52.745 44.514 52.691 44.472 52.631L40.026 47.51C39.906 47.36 39.777 47.255 39.639 47.195C39.501 47.129 39.291 47.096 39.009 47.096H38.217V53H36.48V40.103H38.217V45.755Z" fill="white"/>
|
||||
</svg>
|
||||
|
||||
|
Before Width: | Height: | Size: 4.4 KiB After Width: | Height: | Size: 4.4 KiB |
@@ -1,4 +1,4 @@
|
||||
<svg width="60" height="60" viewBox="0 0 60 60" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||
<rect width="60" height="60" fill="#898989"/>
|
||||
<path d="M39.088 22.804V40H37.048V27.364C37.048 27.196 37.052 27.016 37.06 26.824C37.076 26.632 37.092 26.436 37.108 26.236L31.204 36.988C31.02 37.348 30.74 37.528 30.364 37.528H30.028C29.652 37.528 29.372 37.348 29.188 36.988L23.164 26.188C23.212 26.612 23.236 27.004 23.236 27.364V40H21.196V22.804H22.912C23.12 22.804 23.28 22.824 23.392 22.864C23.504 22.904 23.612 23.016 23.716 23.2L29.656 33.784C29.752 33.976 29.844 34.176 29.932 34.384C30.028 34.592 30.116 34.804 30.196 35.02C30.276 34.804 30.36 34.592 30.448 34.384C30.536 34.168 30.632 33.964 30.736 33.772L36.568 23.2C36.664 23.016 36.768 22.904 36.88 22.864C37 22.824 37.164 22.804 37.372 22.804H39.088Z" fill="white"/>
|
||||
</svg>
|
||||
<svg width="60" height="60" viewBox="0 0 60 60" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||
<rect width="60" height="60" fill="#898989"/>
|
||||
<path d="M39.088 22.804V40H37.048V27.364C37.048 27.196 37.052 27.016 37.06 26.824C37.076 26.632 37.092 26.436 37.108 26.236L31.204 36.988C31.02 37.348 30.74 37.528 30.364 37.528H30.028C29.652 37.528 29.372 37.348 29.188 36.988L23.164 26.188C23.212 26.612 23.236 27.004 23.236 27.364V40H21.196V22.804H22.912C23.12 22.804 23.28 22.824 23.392 22.864C23.504 22.904 23.612 23.016 23.716 23.2L29.656 33.784C29.752 33.976 29.844 34.176 29.932 34.384C30.028 34.592 30.116 34.804 30.196 35.02C30.276 34.804 30.36 34.592 30.448 34.384C30.536 34.168 30.632 33.964 30.736 33.772L36.568 23.2C36.664 23.016 36.768 22.904 36.88 22.864C37 22.824 37.164 22.804 37.372 22.804H39.088Z" fill="white"/>
|
||||
</svg>
|
||||
|
||||
|
Before Width: | Height: | Size: 831 B After Width: | Height: | Size: 835 B |
@@ -1,26 +1,26 @@
|
||||
<svg width="60" height="60" viewBox="0 0 60 60" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||
<rect width="60" height="60" fill="#898989"/>
|
||||
<path d="M14 13.2939V10.732H27.1007V13.2939H14Z" fill="#FF0000"/>
|
||||
<path d="M14.6987 12.562V11.464H26.926V12.562H14.6987Z" fill="white"/>
|
||||
<ellipse cx="28.1487" cy="12.013" rx="1.92143" ry="2.01296" fill="#FF0000"/>
|
||||
<ellipse cx="28.1487" cy="12.013" rx="1.22273" ry="1.28098" fill="white"/>
|
||||
<rect x="16.5391" y="12.88" width="1.374" height="21.12" fill="#FF0000"/>
|
||||
<rect x="16.5391" y="17.68" width="1.374" height="4.32" fill="white"/>
|
||||
<rect x="16.5391" y="26.32" width="1.374" height="4.32" fill="white"/>
|
||||
<path d="M45.3661 27.061H47.8101" stroke="#BFBFBF"/>
|
||||
<path d="M44.0209 26.0016C42.6274 26.0518 42.1244 27.1626 42 27.7699H46.1681C46.0644 27.1207 45.4144 25.9513 44.0209 26.0016Z" fill="black"/>
|
||||
<path d="M46.6734 39.2928V26.7654V26.3537H47.4312V26.7654V53.2317H46.6734V40.7589H43.8125V38.6875V38.437L44.3304 38.4286V40.2411L46.105 40.2642H46.6734V39.2928Z" fill="#BFBFBF"/>
|
||||
<path d="M44.1472 39.0854C45.5407 39.0351 46.0437 37.9244 46.1681 37.3171H42C42.1037 37.9663 42.7537 39.1356 44.1472 39.0854Z" fill="black"/>
|
||||
<path d="M46.1681 37.3171V28.0041V27.7683H42V37.3171H46.1681Z" fill="black"/>
|
||||
<path d="M42.5179 37.3929V39.2054L47.1154 47.2195" stroke="black"/>
|
||||
<rect x="46.6733" y="40.2642" width="0.75784" height="12.9675" fill="white"/>
|
||||
<rect x="46.6733" y="40.2642" width="0.75784" height="2.94715" fill="#FF0000"/>
|
||||
<rect x="46.6733" y="46.1585" width="0.75784" height="2.94715" fill="#FF0000"/>
|
||||
<rect x="46.6733" y="52.0529" width="0.75784" height="2.94715" fill="#FF0000"/>
|
||||
<ellipse cx="44.0209" cy="27.7608" rx="0.75784" ry="0.725115" fill="#212121"/>
|
||||
<ellipse cx="44.0209" cy="30.057" rx="0.75784" ry="0.725115" fill="#212121"/>
|
||||
<ellipse cx="44.0209" cy="32.3532" rx="0.75784" ry="0.725115" fill="#FF0000"/>
|
||||
<ellipse cx="44.0209" cy="34.6494" rx="0.75784" ry="0.725115" fill="#212121"/>
|
||||
<ellipse cx="44.0209" cy="36.9456" rx="0.75784" ry="0.725115" fill="#212121"/>
|
||||
<path d="M14.2883 47.7888L46.4617 15.6154" stroke="white"/>
|
||||
</svg>
|
||||
<svg width="60" height="60" viewBox="0 0 60 60" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||
<rect width="60" height="60" fill="#898989"/>
|
||||
<path d="M14 13.2939V10.732H27.1007V13.2939H14Z" fill="#FF0000"/>
|
||||
<path d="M14.6987 12.562V11.464H26.926V12.562H14.6987Z" fill="white"/>
|
||||
<ellipse cx="28.1487" cy="12.013" rx="1.92143" ry="2.01296" fill="#FF0000"/>
|
||||
<ellipse cx="28.1487" cy="12.013" rx="1.22273" ry="1.28098" fill="white"/>
|
||||
<rect x="16.5391" y="12.88" width="1.374" height="21.12" fill="#FF0000"/>
|
||||
<rect x="16.5391" y="17.68" width="1.374" height="4.32" fill="white"/>
|
||||
<rect x="16.5391" y="26.32" width="1.374" height="4.32" fill="white"/>
|
||||
<path d="M45.3661 27.061H47.8101" stroke="#BFBFBF"/>
|
||||
<path d="M44.0209 26.0016C42.6274 26.0518 42.1244 27.1626 42 27.7699H46.1681C46.0644 27.1207 45.4144 25.9513 44.0209 26.0016Z" fill="black"/>
|
||||
<path d="M46.6734 39.2928V26.7654V26.3537H47.4312V26.7654V53.2317H46.6734V40.7589H43.8125V38.6875V38.437L44.3304 38.4286V40.2411L46.105 40.2642H46.6734V39.2928Z" fill="#BFBFBF"/>
|
||||
<path d="M44.1472 39.0854C45.5407 39.0351 46.0437 37.9244 46.1681 37.3171H42C42.1037 37.9663 42.7537 39.1356 44.1472 39.0854Z" fill="black"/>
|
||||
<path d="M46.1681 37.3171V28.0041V27.7683H42V37.3171H46.1681Z" fill="black"/>
|
||||
<path d="M42.5179 37.3929V39.2054L47.1154 47.2195" stroke="black"/>
|
||||
<rect x="46.6733" y="40.2642" width="0.75784" height="12.9675" fill="white"/>
|
||||
<rect x="46.6733" y="40.2642" width="0.75784" height="2.94715" fill="#FF0000"/>
|
||||
<rect x="46.6733" y="46.1585" width="0.75784" height="2.94715" fill="#FF0000"/>
|
||||
<rect x="46.6733" y="52.0529" width="0.75784" height="2.94715" fill="#FF0000"/>
|
||||
<ellipse cx="44.0209" cy="27.7608" rx="0.75784" ry="0.725115" fill="#212121"/>
|
||||
<ellipse cx="44.0209" cy="30.057" rx="0.75784" ry="0.725115" fill="#212121"/>
|
||||
<ellipse cx="44.0209" cy="32.3532" rx="0.75784" ry="0.725115" fill="#FF0000"/>
|
||||
<ellipse cx="44.0209" cy="34.6494" rx="0.75784" ry="0.725115" fill="#212121"/>
|
||||
<ellipse cx="44.0209" cy="36.9456" rx="0.75784" ry="0.725115" fill="#212121"/>
|
||||
<path d="M14.2883 47.7888L46.4617 15.6154" stroke="white"/>
|
||||
</svg>
|
||||
|
||||
|
Before Width: | Height: | Size: 2.0 KiB After Width: | Height: | Size: 2.1 KiB |
|
Before Width: | Height: | Size: 24 KiB After Width: | Height: | Size: 24 KiB |
@@ -1,4 +1,4 @@
|
||||
<svg width="39" height="23" viewBox="0 0 39 23" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||
<rect width="39" height="23" fill="#FF0F0F"/>
|
||||
<rect width="39" height="11.5" fill="white"/>
|
||||
</svg>
|
||||
<svg width="39" height="23" viewBox="0 0 39 23" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||
<rect width="39" height="23" fill="#FF0F0F"/>
|
||||
<rect width="39" height="11.5" fill="white"/>
|
||||
</svg>
|
||||
|
||||
|
Before Width: | Height: | Size: 195 B After Width: | Height: | Size: 199 B |
@@ -1,5 +1,5 @@
|
||||
<svg width="60" height="60" viewBox="0 0 60 60" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||
<rect width="60" height="60" fill="#898989"/>
|
||||
<rect x="8" y="19" width="44" height="22" fill="#FF0F0F"/>
|
||||
<rect x="8" y="19" width="44" height="11" fill="white"/>
|
||||
</svg>
|
||||
<svg width="60" height="60" viewBox="0 0 60 60" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||
<rect width="60" height="60" fill="#898989"/>
|
||||
<rect x="8" y="19" width="44" height="22" fill="#FF0F0F"/>
|
||||
<rect x="8" y="19" width="44" height="11" fill="white"/>
|
||||
</svg>
|
||||
|
||||
|
Before Width: | Height: | Size: 265 B After Width: | Height: | Size: 270 B |
@@ -1,5 +1,5 @@
|
||||
<svg width="25" height="40" viewBox="0 0 25 40" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||
<path d="M22.3239 23.2517L12.5 39.9451L2.67613 23.2517C-1.14806 16.7533 -3.04933 0.0257886 12.4963 2.9778e-05C28.0499 0.0205562 26.1487 16.7523 22.3239 23.2517Z" fill="#7B7B7B"/>
|
||||
<path d="M5 14.9412V14.0588V11.4118H12.9412V7L21.2745 14.5L12.9412 22V17.5882H5V14.9412Z" fill="#FF0F00"/>
|
||||
<path d="M12.9412 22V17.5882V11.4118V7L21.2745 14.5L12.9412 22Z" fill="#F9E429"/>
|
||||
</svg>
|
||||
<svg width="25" height="40" viewBox="0 0 25 40" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||
<path d="M22.3239 23.2517L12.5 39.9451L2.67613 23.2517C-1.14806 16.7533 -3.04933 0.0257886 12.4963 2.9778e-05C28.0499 0.0205562 26.1487 16.7523 22.3239 23.2517Z" fill="#7B7B7B"/>
|
||||
<path d="M5 14.9412V14.0588V11.4118H12.9412V7L21.2745 14.5L12.9412 22V17.5882H5V14.9412Z" fill="#FF0F00"/>
|
||||
<path d="M12.9412 22V17.5882V11.4118V7L21.2745 14.5L12.9412 22Z" fill="#F9E429"/>
|
||||
</svg>
|
||||
|
||||
|
Before Width: | Height: | Size: 471 B After Width: | Height: | Size: 476 B |
@@ -1,4 +1,4 @@
|
||||
<svg width="60" height="60" viewBox="0 0 60 60" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||
<rect width="60" height="60" fill="#898989"/>
|
||||
<path d="M30.0774 14.349C30.5814 14.349 31.0254 14.289 31.4094 14.169C31.7994 14.043 32.1234 13.869 32.3814 13.647C32.6454 13.419 32.8434 13.149 32.9754 12.837C33.1074 12.525 33.1734 12.18 33.1734 11.802C33.1734 11.034 32.9214 10.455 32.4174 10.065C31.9134 9.675 31.1574 9.48 30.1494 9.48H28.2414V14.349H30.0774ZM36.0354 21H34.4874C34.1694 21 33.9354 20.877 33.7854 20.631L30.4374 16.023C30.3354 15.879 30.2244 15.777 30.1044 15.717C29.9904 15.651 29.8104 15.618 29.5644 15.618H28.2414V21H26.5044V8.103H30.1494C30.9654 8.103 31.6704 8.187 32.2644 8.355C32.8584 8.517 33.3474 8.754 33.7314 9.066C34.1214 9.378 34.4094 9.756 34.5954 10.2C34.7814 10.638 34.8744 11.13 34.8744 11.676C34.8744 12.132 34.8024 12.558 34.6584 12.954C34.5144 13.35 34.3044 13.707 34.0284 14.025C33.7584 14.337 33.4254 14.604 33.0294 14.826C32.6394 15.048 32.1954 15.216 31.6974 15.33C31.9194 15.456 32.1114 15.639 32.2734 15.879L36.0354 21ZM34.8193 31.564H31.1473V35.434H29.8423V31.564H26.1883V30.349H29.8423V26.506H31.1473V30.349H34.8193V31.564ZM22.493 42.119C22.439 42.209 22.379 42.278 22.313 42.326C22.253 42.368 22.178 42.389 22.088 42.389C21.986 42.389 21.866 42.338 21.728 42.236C21.59 42.134 21.416 42.023 21.206 41.903C21.002 41.777 20.753 41.663 20.459 41.561C20.171 41.459 19.82 41.408 19.406 41.408C19.016 41.408 18.671 41.462 18.371 41.57C18.077 41.672 17.828 41.813 17.624 41.993C17.426 42.173 17.276 42.386 17.174 42.632C17.072 42.872 17.021 43.133 17.021 43.415C17.021 43.775 17.108 44.075 17.282 44.315C17.462 44.549 17.696 44.75 17.984 44.918C18.278 45.086 18.608 45.233 18.974 45.359C19.346 45.479 19.724 45.605 20.108 45.737C20.498 45.869 20.876 46.019 21.242 46.187C21.614 46.349 21.944 46.556 22.232 46.808C22.526 47.06 22.76 47.369 22.934 47.735C23.114 48.101 23.204 48.551 23.204 49.085C23.204 49.649 23.108 50.18 22.916 50.678C22.724 51.17 22.442 51.599 22.07 51.965C21.704 52.331 21.251 52.619 20.711 52.829C20.177 53.039 19.568 53.144 18.884 53.144C18.044 53.144 17.282 52.994 16.598 52.694C15.914 52.388 15.329 51.977 14.843 51.461L15.347 50.633C15.395 50.567 15.452 50.513 15.518 50.471C15.59 50.423 15.668 50.399 15.752 50.399C15.83 50.399 15.917 50.432 16.013 50.498C16.115 50.558 16.229 50.636 16.355 50.732C16.481 50.828 16.625 50.933 16.787 51.047C16.949 51.161 17.132 51.266 17.336 51.362C17.546 51.458 17.783 51.539 18.047 51.605C18.311 51.665 18.608 51.695 18.938 51.695C19.352 51.695 19.721 51.638 20.045 51.524C20.369 51.41 20.642 51.251 20.864 51.047C21.092 50.837 21.266 50.588 21.386 50.3C21.506 50.012 21.566 49.691 21.566 49.337C21.566 48.947 21.476 48.629 21.296 48.383C21.122 48.131 20.891 47.921 20.603 47.753C20.315 47.585 19.985 47.444 19.613 47.33C19.241 47.21 18.863 47.09 18.479 46.97C18.095 46.844 17.717 46.7 17.345 46.538C16.973 46.376 16.643 46.166 16.355 45.908C16.067 45.65 15.833 45.329 15.653 44.945C15.479 44.555 15.392 44.075 15.392 43.505C15.392 43.049 15.479 42.608 15.653 42.182C15.833 41.756 16.091 41.378 16.427 41.048C16.769 40.718 17.186 40.454 17.678 40.256C18.176 40.058 18.746 39.959 19.388 39.959C20.108 39.959 20.762 40.073 21.35 40.301C21.944 40.529 22.466 40.859 22.916 41.291L22.493 42.119ZM29.4765 46.79C29.9745 46.79 30.4125 46.724 30.7905 46.592C31.1745 46.46 31.4955 46.277 31.7535 46.043C32.0175 45.803 32.2155 45.518 32.3475 45.188C32.4795 44.858 32.5455 44.495 32.5455 44.099C32.5455 43.277 32.2905 42.635 31.7805 42.173C31.2765 41.711 30.5085 41.48 29.4765 41.48H27.4065V46.79H29.4765ZM29.4765 40.103C30.2925 40.103 31.0005 40.199 31.6005 40.391C32.2065 40.577 32.7075 40.844 33.1035 41.192C33.4995 41.54 33.7935 41.96 33.9855 42.452C34.1835 42.944 34.2825 43.493 34.2825 44.099C34.2825 44.699 34.1775 45.248 33.9675 45.746C33.7575 46.244 33.4485 46.673 33.0405 47.033C32.6385 47.393 32.1375 47.675 31.5375 47.879C30.9435 48.077 30.2565 48.176 29.4765 48.176H27.4065V53H25.6695V40.103H29.4765ZM38.217 45.755H38.874C39.102 45.755 39.285 45.728 39.423 45.674C39.561 45.614 39.687 45.515 39.801 45.377L44.094 40.517C44.214 40.361 44.34 40.253 44.472 40.193C44.604 40.133 44.766 40.103 44.958 40.103H46.434L41.52 45.656C41.4 45.8 41.283 45.92 41.169 46.016C41.061 46.106 40.944 46.181 40.818 46.241C40.98 46.295 41.127 46.376 41.259 46.484C41.391 46.586 41.52 46.721 41.646 46.889L46.776 53H45.264C45.15 53 45.051 52.994 44.967 52.982C44.889 52.964 44.82 52.94 44.76 52.91C44.7 52.874 44.646 52.835 44.598 52.793C44.556 52.745 44.514 52.691 44.472 52.631L40.026 47.51C39.906 47.36 39.777 47.255 39.639 47.195C39.501 47.129 39.291 47.096 39.009 47.096H38.217V53H36.48V40.103H38.217V45.755Z" fill="white"/>
|
||||
</svg>
|
||||
<svg width="60" height="60" viewBox="0 0 60 60" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||
<rect width="60" height="60" fill="#898989"/>
|
||||
<path d="M30.0774 14.349C30.5814 14.349 31.0254 14.289 31.4094 14.169C31.7994 14.043 32.1234 13.869 32.3814 13.647C32.6454 13.419 32.8434 13.149 32.9754 12.837C33.1074 12.525 33.1734 12.18 33.1734 11.802C33.1734 11.034 32.9214 10.455 32.4174 10.065C31.9134 9.675 31.1574 9.48 30.1494 9.48H28.2414V14.349H30.0774ZM36.0354 21H34.4874C34.1694 21 33.9354 20.877 33.7854 20.631L30.4374 16.023C30.3354 15.879 30.2244 15.777 30.1044 15.717C29.9904 15.651 29.8104 15.618 29.5644 15.618H28.2414V21H26.5044V8.103H30.1494C30.9654 8.103 31.6704 8.187 32.2644 8.355C32.8584 8.517 33.3474 8.754 33.7314 9.066C34.1214 9.378 34.4094 9.756 34.5954 10.2C34.7814 10.638 34.8744 11.13 34.8744 11.676C34.8744 12.132 34.8024 12.558 34.6584 12.954C34.5144 13.35 34.3044 13.707 34.0284 14.025C33.7584 14.337 33.4254 14.604 33.0294 14.826C32.6394 15.048 32.1954 15.216 31.6974 15.33C31.9194 15.456 32.1114 15.639 32.2734 15.879L36.0354 21ZM34.8193 31.564H31.1473V35.434H29.8423V31.564H26.1883V30.349H29.8423V26.506H31.1473V30.349H34.8193V31.564ZM22.493 42.119C22.439 42.209 22.379 42.278 22.313 42.326C22.253 42.368 22.178 42.389 22.088 42.389C21.986 42.389 21.866 42.338 21.728 42.236C21.59 42.134 21.416 42.023 21.206 41.903C21.002 41.777 20.753 41.663 20.459 41.561C20.171 41.459 19.82 41.408 19.406 41.408C19.016 41.408 18.671 41.462 18.371 41.57C18.077 41.672 17.828 41.813 17.624 41.993C17.426 42.173 17.276 42.386 17.174 42.632C17.072 42.872 17.021 43.133 17.021 43.415C17.021 43.775 17.108 44.075 17.282 44.315C17.462 44.549 17.696 44.75 17.984 44.918C18.278 45.086 18.608 45.233 18.974 45.359C19.346 45.479 19.724 45.605 20.108 45.737C20.498 45.869 20.876 46.019 21.242 46.187C21.614 46.349 21.944 46.556 22.232 46.808C22.526 47.06 22.76 47.369 22.934 47.735C23.114 48.101 23.204 48.551 23.204 49.085C23.204 49.649 23.108 50.18 22.916 50.678C22.724 51.17 22.442 51.599 22.07 51.965C21.704 52.331 21.251 52.619 20.711 52.829C20.177 53.039 19.568 53.144 18.884 53.144C18.044 53.144 17.282 52.994 16.598 52.694C15.914 52.388 15.329 51.977 14.843 51.461L15.347 50.633C15.395 50.567 15.452 50.513 15.518 50.471C15.59 50.423 15.668 50.399 15.752 50.399C15.83 50.399 15.917 50.432 16.013 50.498C16.115 50.558 16.229 50.636 16.355 50.732C16.481 50.828 16.625 50.933 16.787 51.047C16.949 51.161 17.132 51.266 17.336 51.362C17.546 51.458 17.783 51.539 18.047 51.605C18.311 51.665 18.608 51.695 18.938 51.695C19.352 51.695 19.721 51.638 20.045 51.524C20.369 51.41 20.642 51.251 20.864 51.047C21.092 50.837 21.266 50.588 21.386 50.3C21.506 50.012 21.566 49.691 21.566 49.337C21.566 48.947 21.476 48.629 21.296 48.383C21.122 48.131 20.891 47.921 20.603 47.753C20.315 47.585 19.985 47.444 19.613 47.33C19.241 47.21 18.863 47.09 18.479 46.97C18.095 46.844 17.717 46.7 17.345 46.538C16.973 46.376 16.643 46.166 16.355 45.908C16.067 45.65 15.833 45.329 15.653 44.945C15.479 44.555 15.392 44.075 15.392 43.505C15.392 43.049 15.479 42.608 15.653 42.182C15.833 41.756 16.091 41.378 16.427 41.048C16.769 40.718 17.186 40.454 17.678 40.256C18.176 40.058 18.746 39.959 19.388 39.959C20.108 39.959 20.762 40.073 21.35 40.301C21.944 40.529 22.466 40.859 22.916 41.291L22.493 42.119ZM29.4765 46.79C29.9745 46.79 30.4125 46.724 30.7905 46.592C31.1745 46.46 31.4955 46.277 31.7535 46.043C32.0175 45.803 32.2155 45.518 32.3475 45.188C32.4795 44.858 32.5455 44.495 32.5455 44.099C32.5455 43.277 32.2905 42.635 31.7805 42.173C31.2765 41.711 30.5085 41.48 29.4765 41.48H27.4065V46.79H29.4765ZM29.4765 40.103C30.2925 40.103 31.0005 40.199 31.6005 40.391C32.2065 40.577 32.7075 40.844 33.1035 41.192C33.4995 41.54 33.7935 41.96 33.9855 42.452C34.1835 42.944 34.2825 43.493 34.2825 44.099C34.2825 44.699 34.1775 45.248 33.9675 45.746C33.7575 46.244 33.4485 46.673 33.0405 47.033C32.6385 47.393 32.1375 47.675 31.5375 47.879C30.9435 48.077 30.2565 48.176 29.4765 48.176H27.4065V53H25.6695V40.103H29.4765ZM38.217 45.755H38.874C39.102 45.755 39.285 45.728 39.423 45.674C39.561 45.614 39.687 45.515 39.801 45.377L44.094 40.517C44.214 40.361 44.34 40.253 44.472 40.193C44.604 40.133 44.766 40.103 44.958 40.103H46.434L41.52 45.656C41.4 45.8 41.283 45.92 41.169 46.016C41.061 46.106 40.944 46.181 40.818 46.241C40.98 46.295 41.127 46.376 41.259 46.484C41.391 46.586 41.52 46.721 41.646 46.889L46.776 53H45.264C45.15 53 45.051 52.994 44.967 52.982C44.889 52.964 44.82 52.94 44.76 52.91C44.7 52.874 44.646 52.835 44.598 52.793C44.556 52.745 44.514 52.691 44.472 52.631L40.026 47.51C39.906 47.36 39.777 47.255 39.639 47.195C39.501 47.129 39.291 47.096 39.009 47.096H38.217V53H36.48V40.103H38.217V45.755Z" fill="white"/>
|
||||
</svg>
|
||||
|
||||
|
Before Width: | Height: | Size: 4.6 KiB After Width: | Height: | Size: 4.6 KiB |
@@ -1,4 +1,4 @@
|
||||
<svg width="60" height="60" viewBox="0 0 60 60" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||
<rect width="60" height="60" fill="#898989"/>
|
||||
<path d="M28.96 31.132C29.632 31.132 30.224 31.052 30.736 30.892C31.256 30.724 31.688 30.492 32.032 30.196C32.384 29.892 32.648 29.532 32.824 29.116C33 28.7 33.088 28.24 33.088 27.736C33.088 26.712 32.752 25.94 32.08 25.42C31.408 24.9 30.4 24.64 29.056 24.64H26.512V31.132H28.96ZM36.904 40H34.84C34.416 40 34.104 39.836 33.904 39.508L29.44 33.364C29.304 33.172 29.156 33.036 28.996 32.956C28.844 32.868 28.604 32.824 28.276 32.824H26.512V40H24.196V22.804H29.056C30.144 22.804 31.084 22.916 31.876 23.14C32.668 23.356 33.32 23.672 33.832 24.088C34.352 24.504 34.736 25.008 34.984 25.6C35.232 26.184 35.356 26.84 35.356 27.568C35.356 28.176 35.26 28.744 35.068 29.272C34.876 29.8 34.596 30.276 34.228 30.7C33.868 31.116 33.424 31.472 32.896 31.768C32.376 32.064 31.784 32.288 31.12 32.44C31.416 32.608 31.672 32.852 31.888 33.172L36.904 40Z" fill="white"/>
|
||||
</svg>
|
||||
<svg width="60" height="60" viewBox="0 0 60 60" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||
<rect width="60" height="60" fill="#898989"/>
|
||||
<path d="M28.96 31.132C29.632 31.132 30.224 31.052 30.736 30.892C31.256 30.724 31.688 30.492 32.032 30.196C32.384 29.892 32.648 29.532 32.824 29.116C33 28.7 33.088 28.24 33.088 27.736C33.088 26.712 32.752 25.94 32.08 25.42C31.408 24.9 30.4 24.64 29.056 24.64H26.512V31.132H28.96ZM36.904 40H34.84C34.416 40 34.104 39.836 33.904 39.508L29.44 33.364C29.304 33.172 29.156 33.036 28.996 32.956C28.844 32.868 28.604 32.824 28.276 32.824H26.512V40H24.196V22.804H29.056C30.144 22.804 31.084 22.916 31.876 23.14C32.668 23.356 33.32 23.672 33.832 24.088C34.352 24.504 34.736 25.008 34.984 25.6C35.232 26.184 35.356 26.84 35.356 27.568C35.356 28.176 35.26 28.744 35.068 29.272C34.876 29.8 34.596 30.276 34.228 30.7C33.868 31.116 33.424 31.472 32.896 31.768C32.376 32.064 31.784 32.288 31.12 32.44C31.416 32.608 31.672 32.852 31.888 33.172L36.904 40Z" fill="white"/>
|
||||
</svg>
|
||||
|
||||
|
Before Width: | Height: | Size: 1004 B After Width: | Height: | Size: 1008 B |
@@ -1,8 +1,8 @@
|
||||
<svg width="25" height="40" viewBox="0 0 25 40" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||
<path d="M22.3239 23.2517L12.5 39.9451L2.67613 23.2517C-1.14806 16.7533 -3.04933 0.0257886 12.4963 2.9778e-05C28.0499 0.0205562 26.1487 16.7523 22.3239 23.2517Z" fill="#7B7B7B"/>
|
||||
<path d="M2.8642 17.7283H21.9129V15.6226V11.7548H16.2556H10.5982C6.01511 11.7548 2.8642 15.4564 2.8642 17.7283Z" fill="white"/>
|
||||
<path d="M6.75992 15.5168H4.04358C5.78204 12.8673 8.31729 12.2049 9.36761 12.2049L6.75992 15.5168Z" fill="#7B7B7B"/>
|
||||
<path d="M3.53815 17.3719L21.3972 17.3719" stroke="#7B7B7B" stroke-width="0.0824053"/>
|
||||
<path d="M17.5221 12.0267L20.5548 10.8223V9.71045H19.4717" stroke="white" stroke-width="0.329621" stroke-linecap="round" stroke-linejoin="round"/>
|
||||
<rect x="10.6144" y="12.7394" width="11.7937" height="2.31626" rx="0.329621" fill="#7B7B7B"/>
|
||||
</svg>
|
||||
<svg width="25" height="40" viewBox="0 0 25 40" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||
<path d="M22.3239 23.2517L12.5 39.9451L2.67613 23.2517C-1.14806 16.7533 -3.04933 0.0257886 12.4963 2.9778e-05C28.0499 0.0205562 26.1487 16.7523 22.3239 23.2517Z" fill="#7B7B7B"/>
|
||||
<path d="M2.8642 17.7283H21.9129V15.6226V11.7548H16.2556H10.5982C6.01511 11.7548 2.8642 15.4564 2.8642 17.7283Z" fill="white"/>
|
||||
<path d="M6.75992 15.5168H4.04358C5.78204 12.8673 8.31729 12.2049 9.36761 12.2049L6.75992 15.5168Z" fill="#7B7B7B"/>
|
||||
<path d="M3.53815 17.3719L21.3972 17.3719" stroke="#7B7B7B" stroke-width="0.0824053"/>
|
||||
<path d="M17.5221 12.0267L20.5548 10.8223V9.71045H19.4717" stroke="white" stroke-width="0.329621" stroke-linecap="round" stroke-linejoin="round"/>
|
||||
<rect x="10.6144" y="12.7394" width="11.7937" height="2.31626" rx="0.329621" fill="#7B7B7B"/>
|
||||
</svg>
|
||||
|
||||
|
Before Width: | Height: | Size: 855 B After Width: | Height: | Size: 863 B |
@@ -1,18 +1,18 @@
|
||||
<svg width="25" height="40" viewBox="0 0 25 40" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||
<path d="M22.3239 23.2517L12.5 39.9451L2.67613 23.2517C-1.14806 16.7533 -3.04933 0.0257886 12.4963 2.9778e-05C28.0499 0.0205562 26.1487 16.7523 22.3239 23.2517Z" fill="#7B7B7B"/>
|
||||
<path d="M13.0118 4.94928H15.1986" stroke="#BFBFBF" stroke-width="0.463353"/>
|
||||
<path d="M11.8082 4.0014C10.5614 4.04637 10.1113 5.0402 10 5.58358H13.7294C13.6367 5.00272 13.0551 3.95643 11.8082 4.0014Z" fill="black"/>
|
||||
<path d="M14.1815 15.8937V4.68477V4.31641H14.8595V4.68477V28.3655H14.1815V17.2055H11.6217V15.3521V15.128L12.0851 15.1204V16.7422L13.6729 16.7629H14.1815V15.8937Z" fill="#BFBFBF"/>
|
||||
<path d="M11.9212 15.7081C13.1681 15.6632 13.6181 14.6693 13.7294 14.1259H10C10.0928 14.7068 10.6744 15.7531 11.9212 15.7081Z" fill="black"/>
|
||||
<path d="M13.7294 14.1259V5.79311V5.58215H10V14.1259H13.7294Z" fill="black"/>
|
||||
<path d="M10.4634 14.1937V15.8155L14.5771 22.9861" stroke="black" stroke-width="0.463353"/>
|
||||
<rect x="14.1815" y="16.7629" width="0.678077" height="11.6027" fill="#7B7B7B"/>
|
||||
<rect x="14.1815" y="16.7629" width="0.678077" height="2.63697" fill="#FF0000"/>
|
||||
<rect x="14.1815" y="22.0369" width="0.678077" height="2.63697" fill="#FF0000"/>
|
||||
<rect x="14.1815" y="27.3108" width="0.678077" height="2.63697" fill="#FF0000"/>
|
||||
<ellipse cx="11.8083" cy="5.57549" rx="0.678077" ry="0.648796" fill="#212121"/>
|
||||
<ellipse cx="11.8083" cy="7.63006" rx="0.678077" ry="0.648796" fill="#212121"/>
|
||||
<ellipse cx="11.8083" cy="9.68456" rx="0.678077" ry="0.648796" fill="#FF0000"/>
|
||||
<ellipse cx="11.8083" cy="11.7391" rx="0.678077" ry="0.648796" fill="#212121"/>
|
||||
<ellipse cx="11.8083" cy="13.7936" rx="0.678077" ry="0.648796" fill="#212121"/>
|
||||
</svg>
|
||||
<svg width="25" height="40" viewBox="0 0 25 40" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||
<path d="M22.3239 23.2517L12.5 39.9451L2.67613 23.2517C-1.14806 16.7533 -3.04933 0.0257886 12.4963 2.9778e-05C28.0499 0.0205562 26.1487 16.7523 22.3239 23.2517Z" fill="#7B7B7B"/>
|
||||
<path d="M13.0118 4.94928H15.1986" stroke="#BFBFBF" stroke-width="0.463353"/>
|
||||
<path d="M11.8082 4.0014C10.5614 4.04637 10.1113 5.0402 10 5.58358H13.7294C13.6367 5.00272 13.0551 3.95643 11.8082 4.0014Z" fill="black"/>
|
||||
<path d="M14.1815 15.8937V4.68477V4.31641H14.8595V4.68477V28.3655H14.1815V17.2055H11.6217V15.3521V15.128L12.0851 15.1204V16.7422L13.6729 16.7629H14.1815V15.8937Z" fill="#BFBFBF"/>
|
||||
<path d="M11.9212 15.7081C13.1681 15.6632 13.6181 14.6693 13.7294 14.1259H10C10.0928 14.7068 10.6744 15.7531 11.9212 15.7081Z" fill="black"/>
|
||||
<path d="M13.7294 14.1259V5.79311V5.58215H10V14.1259H13.7294Z" fill="black"/>
|
||||
<path d="M10.4634 14.1937V15.8155L14.5771 22.9861" stroke="black" stroke-width="0.463353"/>
|
||||
<rect x="14.1815" y="16.7629" width="0.678077" height="11.6027" fill="#7B7B7B"/>
|
||||
<rect x="14.1815" y="16.7629" width="0.678077" height="2.63697" fill="#FF0000"/>
|
||||
<rect x="14.1815" y="22.0369" width="0.678077" height="2.63697" fill="#FF0000"/>
|
||||
<rect x="14.1815" y="27.3108" width="0.678077" height="2.63697" fill="#FF0000"/>
|
||||
<ellipse cx="11.8083" cy="5.57549" rx="0.678077" ry="0.648796" fill="#212121"/>
|
||||
<ellipse cx="11.8083" cy="7.63006" rx="0.678077" ry="0.648796" fill="#212121"/>
|
||||
<ellipse cx="11.8083" cy="9.68456" rx="0.678077" ry="0.648796" fill="#FF0000"/>
|
||||
<ellipse cx="11.8083" cy="11.7391" rx="0.678077" ry="0.648796" fill="#212121"/>
|
||||
<ellipse cx="11.8083" cy="13.7936" rx="0.678077" ry="0.648796" fill="#212121"/>
|
||||
</svg>
|
||||
|
||||
|
Before Width: | Height: | Size: 1.7 KiB After Width: | Height: | Size: 1.7 KiB |
@@ -1,3 +1,3 @@
|
||||
<svg width="30" height="30" viewBox="0 0 30 30" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||
<path d="M15 15C13.625 15 12.5 13.875 12.5 12.5C12.5 11.125 13.625 10 15 10C16.375 10 17.5 11.125 17.5 12.5C17.5 13.875 16.375 15 15 15ZM22.5 12.75C22.5 8.2125 19.1875 5 15 5C10.8125 5 7.5 8.2125 7.5 12.75C7.5 15.675 9.9375 19.55 15 24.175C20.0625 19.55 22.5 15.675 22.5 12.75ZM15 2.5C20.25 2.5 25 6.525 25 12.75C25 16.9 21.6625 21.8125 15 27.5C8.3375 21.8125 5 16.9 5 12.75C5 6.525 9.75 2.5 15 2.5Z" fill="white"/>
|
||||
</svg>
|
||||
<svg width="30" height="30" viewBox="0 0 30 30" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||
<path d="M15 15C13.625 15 12.5 13.875 12.5 12.5C12.5 11.125 13.625 10 15 10C16.375 10 17.5 11.125 17.5 12.5C17.5 13.875 16.375 15 15 15ZM22.5 12.75C22.5 8.2125 19.1875 5 15 5C10.8125 5 7.5 8.2125 7.5 12.75C7.5 15.675 9.9375 19.55 15 24.175C20.0625 19.55 22.5 15.675 22.5 12.75ZM15 2.5C20.25 2.5 25 6.525 25 12.75C25 16.9 21.6625 21.8125 15 27.5C8.3375 21.8125 5 16.9 5 12.75C5 6.525 9.75 2.5 15 2.5Z" fill="white"/>
|
||||
</svg>
|
||||
|
||||
|
Before Width: | Height: | Size: 519 B After Width: | Height: | Size: 522 B |
@@ -1,18 +1,18 @@
|
||||
<svg width="31" height="30" viewBox="0 0 31 30" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||
<rect width="30.3072" height="30" rx="6" fill="#7B7B7B"/>
|
||||
<mask id="mask0" mask-type="alpha" maskUnits="userSpaceOnUse" x="5" y="8" width="21" height="12">
|
||||
<rect x="5.05118" y="8" width="20.2048" height="11.5" fill="#C4C4C4"/>
|
||||
</mask>
|
||||
<g mask="url(#mask0)">
|
||||
<ellipse cx="15.1536" cy="19" rx="10.1024" ry="10" fill="white"/>
|
||||
<rect width="3.02307" height="1.00257" transform="matrix(0.868217 -0.496185 -0.503825 -0.863806 21.5304 15.933)" fill="#4A4A4A"/>
|
||||
<rect x="5.05118" y="18.5" width="3.03072" height="1" fill="#4A4A4A"/>
|
||||
<rect width="3.03072" height="1" transform="matrix(1 0 0 -1 22.2253 19.5)" fill="#4A4A4A"/>
|
||||
<rect width="3.00771" height="1.00769" transform="matrix(-0.503825 -0.863806 -0.868217 0.496185 12.0552 12.6879)" fill="#4A4A4A"/>
|
||||
<rect width="3.00771" height="1.00769" transform="matrix(-0.503825 0.863806 -0.868217 -0.496185 20.6422 10.5897)" fill="#4A4A4A"/>
|
||||
<rect width="3" height="1.01024" transform="matrix(-4.41589e-08 -1 -1 4.32684e-08 15.6587 12)" fill="#4A4A4A"/>
|
||||
<rect width="3.02307" height="1.00257" transform="matrix(0.868217 0.496185 -0.503825 0.863806 6.6572 13.567)" fill="#4A4A4A"/>
|
||||
<ellipse cx="15.1536" cy="19.5" rx="1.01024" ry="1" fill="#474747"/>
|
||||
<path d="M18.4254 13.9298C18.3862 13.798 18.2465 13.7226 18.1134 13.7614L15.9439 14.393C15.8107 14.4318 15.7345 14.57 15.7737 14.7018C15.8129 14.8336 15.9525 14.909 16.0857 14.8702L18.0141 14.3088L18.5813 16.2177C18.6205 16.3495 18.7602 16.4249 18.8933 16.3862C19.0264 16.3474 19.1026 16.2092 19.0635 16.0774L18.4254 13.9298ZM15.3742 19.6191L18.4049 14.1191L17.9637 13.8809L14.933 19.3809L15.3742 19.6191Z" fill="#474747"/>
|
||||
</g>
|
||||
</svg>
|
||||
<svg width="31" height="30" viewBox="0 0 31 30" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||
<rect width="30.3072" height="30" rx="6" fill="#7B7B7B"/>
|
||||
<mask id="mask0" mask-type="alpha" maskUnits="userSpaceOnUse" x="5" y="8" width="21" height="12">
|
||||
<rect x="5.05118" y="8" width="20.2048" height="11.5" fill="#C4C4C4"/>
|
||||
</mask>
|
||||
<g mask="url(#mask0)">
|
||||
<ellipse cx="15.1536" cy="19" rx="10.1024" ry="10" fill="white"/>
|
||||
<rect width="3.02307" height="1.00257" transform="matrix(0.868217 -0.496185 -0.503825 -0.863806 21.5304 15.933)" fill="#4A4A4A"/>
|
||||
<rect x="5.05118" y="18.5" width="3.03072" height="1" fill="#4A4A4A"/>
|
||||
<rect width="3.03072" height="1" transform="matrix(1 0 0 -1 22.2253 19.5)" fill="#4A4A4A"/>
|
||||
<rect width="3.00771" height="1.00769" transform="matrix(-0.503825 -0.863806 -0.868217 0.496185 12.0552 12.6879)" fill="#4A4A4A"/>
|
||||
<rect width="3.00771" height="1.00769" transform="matrix(-0.503825 0.863806 -0.868217 -0.496185 20.6422 10.5897)" fill="#4A4A4A"/>
|
||||
<rect width="3" height="1.01024" transform="matrix(-4.41589e-08 -1 -1 4.32684e-08 15.6587 12)" fill="#4A4A4A"/>
|
||||
<rect width="3.02307" height="1.00257" transform="matrix(0.868217 0.496185 -0.503825 0.863806 6.6572 13.567)" fill="#4A4A4A"/>
|
||||
<ellipse cx="15.1536" cy="19.5" rx="1.01024" ry="1" fill="#474747"/>
|
||||
<path d="M18.4254 13.9298C18.3862 13.798 18.2465 13.7226 18.1134 13.7614L15.9439 14.393C15.8107 14.4318 15.7345 14.57 15.7737 14.7018C15.8129 14.8336 15.9525 14.909 16.0857 14.8702L18.0141 14.3088L18.5813 16.2177C18.6205 16.3495 18.7602 16.4249 18.8933 16.3862C19.0264 16.3474 19.1026 16.2092 19.0635 16.0774L18.4254 13.9298ZM15.3742 19.6191L18.4049 14.1191L17.9637 13.8809L14.933 19.3809L15.3742 19.6191Z" fill="#474747"/>
|
||||
</g>
|
||||
</svg>
|
||||
|
||||
|
Before Width: | Height: | Size: 1.7 KiB After Width: | Height: | Size: 1.7 KiB |
@@ -1,6 +1,6 @@
|
||||
<svg width="60" height="60" viewBox="0 0 60 60" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||
<rect width="60" height="60" fill="#898989"/>
|
||||
<rect x="8" y="8" width="44" height="44" rx="7" fill="#C4C4C4"/>
|
||||
<path d="M23.539 25.975H19.615V37H17.194V25.975H13.27V23.986H23.539V25.975ZM46.3153 34.93C46.5553 34.93 46.7443 34.999 46.8823 35.137C47.0263 35.269 47.0983 35.446 47.0983 35.668V37H38.1703V36.262C38.1703 36.112 38.2003 35.956 38.2603 35.794C38.3263 35.626 38.4283 35.476 38.5663 35.344L42.5173 31.384C42.8473 31.048 43.1413 30.727 43.3993 30.421C43.6633 30.115 43.8823 29.812 44.0563 29.512C44.2303 29.212 44.3623 28.909 44.4523 28.603C44.5483 28.291 44.5963 27.964 44.5963 27.622C44.5963 27.31 44.5513 27.037 44.4613 26.803C44.3713 26.563 44.2423 26.362 44.0743 26.2C43.9123 26.038 43.7143 25.918 43.4803 25.84C43.2523 25.756 42.9943 25.714 42.7063 25.714C42.4423 25.714 42.1963 25.753 41.9683 25.831C41.7463 25.903 41.5483 26.008 41.3743 26.146C41.2003 26.278 41.0533 26.434 40.9333 26.614C40.8133 26.794 40.7233 26.992 40.6633 27.208C40.5613 27.484 40.4293 27.667 40.2673 27.757C40.1053 27.847 39.8713 27.868 39.5653 27.82L38.3953 27.613C38.4853 26.989 38.6593 26.443 38.9173 25.975C39.1753 25.501 39.4963 25.108 39.8803 24.796C40.2703 24.478 40.7143 24.241 41.2123 24.085C41.7163 23.923 42.2563 23.842 42.8323 23.842C43.4323 23.842 43.9813 23.932 44.4793 24.112C44.9773 24.286 45.4033 24.535 45.7573 24.859C46.1113 25.183 46.3873 25.573 46.5853 26.029C46.7833 26.485 46.8823 26.992 46.8823 27.55C46.8823 28.03 46.8103 28.474 46.6663 28.882C46.5283 29.29 46.3393 29.68 46.0993 30.052C45.8653 30.424 45.5893 30.784 45.2713 31.132C44.9533 31.48 44.6203 31.834 44.2723 32.194L41.3383 35.191C41.6203 35.107 41.8993 35.044 42.1753 35.002C42.4573 34.954 42.7243 34.93 42.9763 34.93H46.3153Z" fill="black"/>
|
||||
<path d="M36.798 30.493C36.798 31.447 36.639 32.323 36.321 33.121C36.003 33.919 35.556 34.606 34.98 35.182C34.404 35.758 33.711 36.205 32.901 36.523C32.091 36.841 31.191 37 30.201 37H25.242V23.986H30.201C31.191 23.986 32.091 24.148 32.901 24.472C33.711 24.79 34.404 25.237 34.98 25.813C35.556 26.383 36.003 27.067 36.321 27.865C36.639 28.663 36.798 29.539 36.798 30.493ZM34.314 30.493C34.314 29.779 34.218 29.14 34.026 28.576C33.84 28.006 33.567 27.526 33.207 27.136C32.853 26.74 32.421 26.437 31.911 26.227C31.407 26.017 30.837 25.912 30.201 25.912H27.672V35.074H30.201C30.837 35.074 31.407 34.969 31.911 34.759C32.421 34.549 32.853 34.249 33.207 33.859C33.567 33.463 33.84 32.983 34.026 32.419C34.218 31.849 34.314 31.207 34.314 30.493Z" fill="#FF0000"/>
|
||||
</svg>
|
||||
<svg width="60" height="60" viewBox="0 0 60 60" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||
<rect width="60" height="60" fill="#898989"/>
|
||||
<rect x="8" y="8" width="44" height="44" rx="7" fill="#C4C4C4"/>
|
||||
<path d="M23.539 25.975H19.615V37H17.194V25.975H13.27V23.986H23.539V25.975ZM46.3153 34.93C46.5553 34.93 46.7443 34.999 46.8823 35.137C47.0263 35.269 47.0983 35.446 47.0983 35.668V37H38.1703V36.262C38.1703 36.112 38.2003 35.956 38.2603 35.794C38.3263 35.626 38.4283 35.476 38.5663 35.344L42.5173 31.384C42.8473 31.048 43.1413 30.727 43.3993 30.421C43.6633 30.115 43.8823 29.812 44.0563 29.512C44.2303 29.212 44.3623 28.909 44.4523 28.603C44.5483 28.291 44.5963 27.964 44.5963 27.622C44.5963 27.31 44.5513 27.037 44.4613 26.803C44.3713 26.563 44.2423 26.362 44.0743 26.2C43.9123 26.038 43.7143 25.918 43.4803 25.84C43.2523 25.756 42.9943 25.714 42.7063 25.714C42.4423 25.714 42.1963 25.753 41.9683 25.831C41.7463 25.903 41.5483 26.008 41.3743 26.146C41.2003 26.278 41.0533 26.434 40.9333 26.614C40.8133 26.794 40.7233 26.992 40.6633 27.208C40.5613 27.484 40.4293 27.667 40.2673 27.757C40.1053 27.847 39.8713 27.868 39.5653 27.82L38.3953 27.613C38.4853 26.989 38.6593 26.443 38.9173 25.975C39.1753 25.501 39.4963 25.108 39.8803 24.796C40.2703 24.478 40.7143 24.241 41.2123 24.085C41.7163 23.923 42.2563 23.842 42.8323 23.842C43.4323 23.842 43.9813 23.932 44.4793 24.112C44.9773 24.286 45.4033 24.535 45.7573 24.859C46.1113 25.183 46.3873 25.573 46.5853 26.029C46.7833 26.485 46.8823 26.992 46.8823 27.55C46.8823 28.03 46.8103 28.474 46.6663 28.882C46.5283 29.29 46.3393 29.68 46.0993 30.052C45.8653 30.424 45.5893 30.784 45.2713 31.132C44.9533 31.48 44.6203 31.834 44.2723 32.194L41.3383 35.191C41.6203 35.107 41.8993 35.044 42.1753 35.002C42.4573 34.954 42.7243 34.93 42.9763 34.93H46.3153Z" fill="black"/>
|
||||
<path d="M36.798 30.493C36.798 31.447 36.639 32.323 36.321 33.121C36.003 33.919 35.556 34.606 34.98 35.182C34.404 35.758 33.711 36.205 32.901 36.523C32.091 36.841 31.191 37 30.201 37H25.242V23.986H30.201C31.191 23.986 32.091 24.148 32.901 24.472C33.711 24.79 34.404 25.237 34.98 25.813C35.556 26.383 36.003 27.067 36.321 27.865C36.639 28.663 36.798 29.539 36.798 30.493ZM34.314 30.493C34.314 29.779 34.218 29.14 34.026 28.576C33.84 28.006 33.567 27.526 33.207 27.136C32.853 26.74 32.421 26.437 31.911 26.227C31.407 26.017 30.837 25.912 30.201 25.912H27.672V35.074H30.201C30.837 35.074 31.407 34.969 31.911 34.759C32.421 34.549 32.853 34.249 33.207 33.859C33.567 33.463 33.84 32.983 34.026 32.419C34.218 31.849 34.314 31.207 34.314 30.493Z" fill="#FF0000"/>
|
||||
</svg>
|
||||
|
||||
|
Before Width: | Height: | Size: 2.5 KiB After Width: | Height: | Size: 2.5 KiB |
@@ -1,3 +1,3 @@
|
||||
<svg width="30" height="30" viewBox="0 0 30 30" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||
<path d="M23.75 3.75H22.5V1.25H20V3.75H10V1.25H7.5V3.75H6.25C4.875 3.75 3.75 4.875 3.75 6.25V23.75C3.75 25.125 4.875 26.25 6.25 26.25H23.75C25.125 26.25 26.25 25.125 26.25 23.75V6.25C26.25 4.875 25.125 3.75 23.75 3.75ZM23.75 23.75H6.25V11.25H23.75V23.75ZM6.25 8.75V6.25H23.75V8.75H6.25ZM8.75 13.75H21.25V16.25H8.75V13.75ZM8.75 18.75H17.5V21.25H8.75V18.75Z" fill="white"/>
|
||||
</svg>
|
||||
<svg width="30" height="30" viewBox="0 0 30 30" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||
<path d="M23.75 3.75H22.5V1.25H20V3.75H10V1.25H7.5V3.75H6.25C4.875 3.75 3.75 4.875 3.75 6.25V23.75C3.75 25.125 4.875 26.25 6.25 26.25H23.75C25.125 26.25 26.25 25.125 26.25 23.75V6.25C26.25 4.875 25.125 3.75 23.75 3.75ZM23.75 23.75H6.25V11.25H23.75V23.75ZM6.25 8.75V6.25H23.75V8.75H6.25ZM8.75 13.75H21.25V16.25H8.75V13.75ZM8.75 18.75H17.5V21.25H8.75V18.75Z" fill="white"/>
|
||||
</svg>
|
||||
|
||||
|
Before Width: | Height: | Size: 475 B After Width: | Height: | Size: 478 B |
@@ -1,6 +1,6 @@
|
||||
<svg width="64" height="64" viewBox="0 0 64 64" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||
<rect width="64" height="64" fill="#898989"/>
|
||||
<path fill-rule="evenodd" clip-rule="evenodd" d="M23.5571 24.571C23.5571 21.906 24.5611 20.0553 25.984 18.8523C27.4412 17.6202 29.442 16.9838 31.5119 17.0003C33.5826 17.0168 35.6013 17.6863 37.0744 18.9083C38.5148 20.1034 39.4905 21.8673 39.4905 24.2699V31.0524H23.5571V24.571ZM20.5571 31.3205V24.571C20.5571 21.0634 21.9198 18.36 24.047 16.5614C26.1398 14.7919 28.8723 13.9792 31.5357 14.0004C34.1984 14.0216 36.913 14.8764 38.9899 16.5995C41.0994 18.3496 42.4905 20.9516 42.4905 24.2699V31.3205C43.9866 31.8994 45.0476 33.352 45.0476 35.0524V45.9857C45.0476 48.1948 43.2568 49.9857 41.0476 49.9857H22C19.7909 49.9857 18 48.1948 18 45.9857V35.0524C18 33.352 19.061 31.8994 20.5571 31.3205Z" fill="#C70000"/>
|
||||
<path d="M33.2143 39.1667C33.2143 40.1003 32.4574 40.8571 31.5238 40.8571C30.5902 40.8571 29.8333 40.1003 29.8333 39.1667C29.8333 38.233 30.5902 37.4762 31.5238 37.4762C32.4574 37.4762 33.2143 38.233 33.2143 39.1667Z" fill="#898989"/>
|
||||
<path d="M30.6786 43.3929V40.0119C30.6786 39.5451 31.057 39.1667 31.5238 39.1667C31.9906 39.1667 32.369 39.5451 32.369 40.0119V43.3929C32.369 43.8597 31.9906 44.2381 31.5238 44.2381C31.057 44.2381 30.6786 43.8597 30.6786 43.3929Z" fill="#898989"/>
|
||||
</svg>
|
||||
<svg width="64" height="64" viewBox="0 0 64 64" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||
<rect width="64" height="64" fill="#898989"/>
|
||||
<path fill-rule="evenodd" clip-rule="evenodd" d="M23.5571 24.571C23.5571 21.906 24.5611 20.0553 25.984 18.8523C27.4412 17.6202 29.442 16.9838 31.5119 17.0003C33.5826 17.0168 35.6013 17.6863 37.0744 18.9083C38.5148 20.1034 39.4905 21.8673 39.4905 24.2699V31.0524H23.5571V24.571ZM20.5571 31.3205V24.571C20.5571 21.0634 21.9198 18.36 24.047 16.5614C26.1398 14.7919 28.8723 13.9792 31.5357 14.0004C34.1984 14.0216 36.913 14.8764 38.9899 16.5995C41.0994 18.3496 42.4905 20.9516 42.4905 24.2699V31.3205C43.9866 31.8994 45.0476 33.352 45.0476 35.0524V45.9857C45.0476 48.1948 43.2568 49.9857 41.0476 49.9857H22C19.7909 49.9857 18 48.1948 18 45.9857V35.0524C18 33.352 19.061 31.8994 20.5571 31.3205Z" fill="#C70000"/>
|
||||
<path d="M33.2143 39.1667C33.2143 40.1003 32.4574 40.8571 31.5238 40.8571C30.5902 40.8571 29.8333 40.1003 29.8333 39.1667C29.8333 38.233 30.5902 37.4762 31.5238 37.4762C32.4574 37.4762 33.2143 38.233 33.2143 39.1667Z" fill="#898989"/>
|
||||
<path d="M30.6786 43.3929V40.0119C30.6786 39.5451 31.057 39.1667 31.5238 39.1667C31.9906 39.1667 32.369 39.5451 32.369 40.0119V43.3929C32.369 43.8597 31.9906 44.2381 31.5238 44.2381C31.057 44.2381 30.6786 43.8597 30.6786 43.3929Z" fill="#898989"/>
|
||||
</svg>
|
||||
|
||||
|
Before Width: | Height: | Size: 1.3 KiB After Width: | Height: | Size: 1.3 KiB |
@@ -1,3 +1,3 @@
|
||||
<svg width="30" height="30" viewBox="0 0 30 30" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||
<path d="M15 15C17.7625 15 20 12.7625 20 10C20 7.2375 17.7625 5 15 5C12.2375 5 10 7.2375 10 10C10 12.7625 12.2375 15 15 15ZM15 17.5C11.6625 17.5 5 19.175 5 22.5V25H25V22.5C25 19.175 18.3375 17.5 15 17.5Z" fill="white"/>
|
||||
</svg>
|
||||
<svg width="30" height="30" viewBox="0 0 30 30" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||
<path d="M15 15C17.7625 15 20 12.7625 20 10C20 7.2375 17.7625 5 15 5C12.2375 5 10 7.2375 10 10C10 12.7625 12.2375 15 15 15ZM15 17.5C11.6625 17.5 5 19.175 5 22.5V25H25V22.5C25 19.175 18.3375 17.5 15 17.5Z" fill="white"/>
|
||||
</svg>
|
||||
|
||||
|
Before Width: | Height: | Size: 323 B After Width: | Height: | Size: 326 B |
@@ -1,18 +1,18 @@
|
||||
<svg width="60" height="60" viewBox="0 0 60 60" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||
<rect width="60" height="60" fill="#898989"/>
|
||||
<path d="M30.5 6.04878H35.2195" stroke="#BFBFBF"/>
|
||||
<path d="M27.9024 4.00303C25.2115 4.10008 24.2403 6.24494 24 7.41767H32.0488C31.8486 6.16406 30.5934 3.90598 27.9024 4.00303Z" fill="black"/>
|
||||
<path d="M33.0244 29.6688V5.47793V4.68292H34.4878V5.47793V56.5854H33.0244V32.5H27.5V28.5V28.0163L28.5 28V31.5L31.9268 31.5447H33.0244V29.6688Z" fill="#BFBFBF"/>
|
||||
<path d="M28.1463 29.2683C30.8373 29.1712 31.8085 27.0264 32.0488 25.8537H24C24.2002 27.1073 25.4554 29.3654 28.1463 29.2683Z" fill="black"/>
|
||||
<path d="M32.0488 25.8537V7.86993V7.41464H24V25.8537H32.0488Z" fill="black"/>
|
||||
<path d="M25 26V29.5L33.8781 44.9756" stroke="black"/>
|
||||
<rect x="33.0244" y="31.5447" width="1.46341" height="25.0407" fill="white"/>
|
||||
<rect x="33.0244" y="31.5447" width="1.46341" height="5.69106" fill="#FF0000"/>
|
||||
<rect x="33.0244" y="42.9268" width="1.46341" height="5.69106" fill="#FF0000"/>
|
||||
<rect x="33.0244" y="54.3089" width="1.46341" height="5.69106" fill="#FF0000"/>
|
||||
<ellipse cx="27.9024" cy="7.40022" rx="1.46341" ry="1.40022" fill="#212121"/>
|
||||
<ellipse cx="27.9024" cy="11.8343" rx="1.46341" ry="1.40022" fill="#212121"/>
|
||||
<ellipse cx="27.9024" cy="16.2683" rx="1.46341" ry="1.40022" fill="#FF0000"/>
|
||||
<ellipse cx="27.9024" cy="20.7023" rx="1.46341" ry="1.40022" fill="#212121"/>
|
||||
<ellipse cx="27.9024" cy="25.1364" rx="1.46341" ry="1.40022" fill="#212121"/>
|
||||
</svg>
|
||||
<svg width="60" height="60" viewBox="0 0 60 60" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||
<rect width="60" height="60" fill="#898989"/>
|
||||
<path d="M30.5 6.04878H35.2195" stroke="#BFBFBF"/>
|
||||
<path d="M27.9024 4.00303C25.2115 4.10008 24.2403 6.24494 24 7.41767H32.0488C31.8486 6.16406 30.5934 3.90598 27.9024 4.00303Z" fill="black"/>
|
||||
<path d="M33.0244 29.6688V5.47793V4.68292H34.4878V5.47793V56.5854H33.0244V32.5H27.5V28.5V28.0163L28.5 28V31.5L31.9268 31.5447H33.0244V29.6688Z" fill="#BFBFBF"/>
|
||||
<path d="M28.1463 29.2683C30.8373 29.1712 31.8085 27.0264 32.0488 25.8537H24C24.2002 27.1073 25.4554 29.3654 28.1463 29.2683Z" fill="black"/>
|
||||
<path d="M32.0488 25.8537V7.86993V7.41464H24V25.8537H32.0488Z" fill="black"/>
|
||||
<path d="M25 26V29.5L33.8781 44.9756" stroke="black"/>
|
||||
<rect x="33.0244" y="31.5447" width="1.46341" height="25.0407" fill="white"/>
|
||||
<rect x="33.0244" y="31.5447" width="1.46341" height="5.69106" fill="#FF0000"/>
|
||||
<rect x="33.0244" y="42.9268" width="1.46341" height="5.69106" fill="#FF0000"/>
|
||||
<rect x="33.0244" y="54.3089" width="1.46341" height="5.69106" fill="#FF0000"/>
|
||||
<ellipse cx="27.9024" cy="7.40022" rx="1.46341" ry="1.40022" fill="#212121"/>
|
||||
<ellipse cx="27.9024" cy="11.8343" rx="1.46341" ry="1.40022" fill="#212121"/>
|
||||
<ellipse cx="27.9024" cy="16.2683" rx="1.46341" ry="1.40022" fill="#FF0000"/>
|
||||
<ellipse cx="27.9024" cy="20.7023" rx="1.46341" ry="1.40022" fill="#212121"/>
|
||||
<ellipse cx="27.9024" cy="25.1364" rx="1.46341" ry="1.40022" fill="#212121"/>
|
||||
</svg>
|
||||
|
||||
|
Before Width: | Height: | Size: 1.5 KiB After Width: | Height: | Size: 1.5 KiB |
@@ -1,37 +1,37 @@
|
||||
<template>
|
||||
<div class="clock">{{ computedDate }}</div>
|
||||
</template>
|
||||
|
||||
|
||||
<script lang="ts">
|
||||
import { computed, defineComponent, ref } from "vue";
|
||||
export default defineComponent({
|
||||
name: "clock",
|
||||
data: () => ({
|
||||
timestamp: Date.now(),
|
||||
}),
|
||||
setup() {
|
||||
let timestamp = ref(Date.now());
|
||||
|
||||
const computedDate = computed(() => new Date(timestamp.value).toLocaleString("pl-PL", {
|
||||
hour: "2-digit",
|
||||
minute: "2-digit",
|
||||
second: "2-digit",
|
||||
}));
|
||||
|
||||
setInterval(() => (timestamp.value = Date.now()), 1000);
|
||||
|
||||
return { computedDate }
|
||||
}
|
||||
});
|
||||
</script>
|
||||
|
||||
<style lang="scss" scoped>
|
||||
@import "../../styles/responsive.scss";
|
||||
|
||||
.clock {
|
||||
display: flex;
|
||||
justify-content: center;
|
||||
align-items: center;
|
||||
}
|
||||
<template>
|
||||
<div class="clock">{{ computedDate }}</div>
|
||||
</template>
|
||||
|
||||
|
||||
<script lang="ts">
|
||||
import { computed, defineComponent, ref } from "vue";
|
||||
export default defineComponent({
|
||||
name: "clock",
|
||||
data: () => ({
|
||||
timestamp: Date.now(),
|
||||
}),
|
||||
setup() {
|
||||
let timestamp = ref(Date.now());
|
||||
|
||||
const computedDate = computed(() => new Date(timestamp.value).toLocaleString("pl-PL", {
|
||||
hour: "2-digit",
|
||||
minute: "2-digit",
|
||||
second: "2-digit",
|
||||
}));
|
||||
|
||||
setInterval(() => (timestamp.value = Date.now()), 1000);
|
||||
|
||||
return { computedDate }
|
||||
}
|
||||
});
|
||||
</script>
|
||||
|
||||
<style lang="scss" scoped>
|
||||
@import "../../styles/responsive.scss";
|
||||
|
||||
.clock {
|
||||
display: flex;
|
||||
justify-content: center;
|
||||
align-items: center;
|
||||
}
|
||||
</style>
|
||||
@@ -1,31 +1,31 @@
|
||||
<template>
|
||||
<div class="loading">{{message}}</div>
|
||||
</template>
|
||||
|
||||
<script lang="ts">
|
||||
import { defineComponent } from "@vue/runtime-core";
|
||||
|
||||
export default defineComponent({
|
||||
props: ["message"],
|
||||
});
|
||||
</script>
|
||||
|
||||
<style lang="scss" scoped>
|
||||
.loading {
|
||||
display: flex;
|
||||
justify-content: center;
|
||||
align-items: center;
|
||||
|
||||
min-height: 100%;
|
||||
|
||||
position: absolute;
|
||||
top: 50%;
|
||||
left: 50%;
|
||||
|
||||
transform: translate(-50%, -50%);
|
||||
|
||||
font-size: calc(0.75rem + 1vw);
|
||||
|
||||
color: #fdc62f;
|
||||
}
|
||||
<template>
|
||||
<div class="loading">{{message}}</div>
|
||||
</template>
|
||||
|
||||
<script lang="ts">
|
||||
import { defineComponent } from "@vue/runtime-core";
|
||||
|
||||
export default defineComponent({
|
||||
props: ["message"],
|
||||
});
|
||||
</script>
|
||||
|
||||
<style lang="scss" scoped>
|
||||
.loading {
|
||||
display: flex;
|
||||
justify-content: center;
|
||||
align-items: center;
|
||||
|
||||
min-height: 100%;
|
||||
|
||||
position: absolute;
|
||||
top: 50%;
|
||||
left: 50%;
|
||||
|
||||
transform: translate(-50%, -50%);
|
||||
|
||||
font-size: calc(0.75rem + 1vw);
|
||||
|
||||
color: #fdc62f;
|
||||
}
|
||||
</style>
|
||||
@@ -1,47 +1,47 @@
|
||||
<template>
|
||||
<section
|
||||
class="updates card"
|
||||
v-if="cardOpen"
|
||||
>
|
||||
<h2>Ostatnie aktualizacje w Stacjowniku</h2>
|
||||
<p>Tutaj będą pojawiać się informacje o kolejnych nowościach na stronie :)</p>
|
||||
|
||||
<ul>
|
||||
<li
|
||||
v-for="(update, i) in updates"
|
||||
:key="i"
|
||||
>
|
||||
<div>{{update.date}}</div>
|
||||
|
||||
<div>
|
||||
<span
|
||||
v-for="(line, l) in content"
|
||||
:key="l"
|
||||
>{{line}}</span>
|
||||
</div>
|
||||
</li>
|
||||
</ul>
|
||||
</section>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import { defineComponent } from "@vue/runtime-core";
|
||||
|
||||
export default defineComponent({
|
||||
data() {
|
||||
return {
|
||||
updates: {
|
||||
date: "08/08/20",
|
||||
content: [
|
||||
"Lekko odświeżono wygląd strony, dodano nowy widok z pociągami online",
|
||||
"Dodano animacje zmieniania widoków (zakładek)",
|
||||
"Dodano przycisk zamykający kartę z filtrami",
|
||||
],
|
||||
},
|
||||
};
|
||||
},
|
||||
});
|
||||
</script>
|
||||
|
||||
<style lang="scss" scoped>
|
||||
<template>
|
||||
<section
|
||||
class="updates card"
|
||||
v-if="cardOpen"
|
||||
>
|
||||
<h2>Ostatnie aktualizacje w Stacjowniku</h2>
|
||||
<p>Tutaj będą pojawiać się informacje o kolejnych nowościach na stronie :)</p>
|
||||
|
||||
<ul>
|
||||
<li
|
||||
v-for="(update, i) in updates"
|
||||
:key="i"
|
||||
>
|
||||
<div>{{update.date}}</div>
|
||||
|
||||
<div>
|
||||
<span
|
||||
v-for="(line, l) in content"
|
||||
:key="l"
|
||||
>{{line}}</span>
|
||||
</div>
|
||||
</li>
|
||||
</ul>
|
||||
</section>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import { defineComponent } from "@vue/runtime-core";
|
||||
|
||||
export default defineComponent({
|
||||
data() {
|
||||
return {
|
||||
updates: {
|
||||
date: "08/08/20",
|
||||
content: [
|
||||
"Lekko odświeżono wygląd strony, dodano nowy widok z pociągami online",
|
||||
"Dodano animacje zmieniania widoków (zakładek)",
|
||||
"Dodano przycisk zamykający kartę z filtrami",
|
||||
],
|
||||
},
|
||||
};
|
||||
},
|
||||
});
|
||||
</script>
|
||||
|
||||
<style lang="scss" scoped>
|
||||
</style>
|
||||
@@ -1,61 +1,61 @@
|
||||
<template>
|
||||
<button class="action-btn">
|
||||
<slot></slot>
|
||||
</button>
|
||||
</template>
|
||||
|
||||
<script lang="ts">
|
||||
import { defineComponent } from "vue";
|
||||
|
||||
export default defineComponent({});
|
||||
</script>
|
||||
|
||||
<style lang="scss">
|
||||
@import "../../styles/variables";
|
||||
@import "../../styles/responsive";
|
||||
|
||||
.action-btn {
|
||||
display: flex;
|
||||
align-items: center;
|
||||
|
||||
background: #333;
|
||||
border: none;
|
||||
|
||||
color: #bdbdbd;
|
||||
|
||||
font-size: 1em;
|
||||
font-weight: 500;
|
||||
|
||||
outline: none;
|
||||
padding: 0.35em 0.65em;
|
||||
cursor: pointer;
|
||||
|
||||
transition: all 0.3s;
|
||||
|
||||
&.outlined {
|
||||
border: 1px solid white;
|
||||
}
|
||||
|
||||
img {
|
||||
width: 1.25em;
|
||||
vertical-align: middle;
|
||||
margin-right: 0.35em;
|
||||
}
|
||||
|
||||
p {
|
||||
font-size: 1em;
|
||||
overflow: hidden;
|
||||
}
|
||||
|
||||
&.open {
|
||||
color: $accentCol;
|
||||
border: none;
|
||||
}
|
||||
|
||||
&:hover,
|
||||
&:focus {
|
||||
color: $accentCol;
|
||||
background: #5c5c5c;
|
||||
}
|
||||
}
|
||||
<template>
|
||||
<button class="action-btn">
|
||||
<slot></slot>
|
||||
</button>
|
||||
</template>
|
||||
|
||||
<script lang="ts">
|
||||
import { defineComponent } from "vue";
|
||||
|
||||
export default defineComponent({});
|
||||
</script>
|
||||
|
||||
<style lang="scss">
|
||||
@import "../../styles/variables";
|
||||
@import "../../styles/responsive";
|
||||
|
||||
.action-btn {
|
||||
display: flex;
|
||||
align-items: center;
|
||||
|
||||
background: #333;
|
||||
border: none;
|
||||
|
||||
color: #bdbdbd;
|
||||
|
||||
font-size: 1em;
|
||||
font-weight: 500;
|
||||
|
||||
outline: none;
|
||||
padding: 0.35em 0.65em;
|
||||
cursor: pointer;
|
||||
|
||||
transition: all 0.3s;
|
||||
|
||||
&.outlined {
|
||||
border: 1px solid white;
|
||||
}
|
||||
|
||||
img {
|
||||
width: 1.25em;
|
||||
vertical-align: middle;
|
||||
margin-right: 0.35em;
|
||||
}
|
||||
|
||||
p {
|
||||
font-size: 1em;
|
||||
overflow: hidden;
|
||||
}
|
||||
|
||||
&.open {
|
||||
color: $accentCol;
|
||||
border: none;
|
||||
}
|
||||
|
||||
&:hover,
|
||||
&:focus {
|
||||
color: $accentCol;
|
||||
background: #5c5c5c;
|
||||
}
|
||||
}
|
||||
</style>
|
||||
@@ -1,23 +1,23 @@
|
||||
export const ACTIONS = {
|
||||
synchronizeData: "synchronizeData",
|
||||
fetchOnlineData: "fetchOnlineData",
|
||||
fetchTimetableData: "fetchTimetableData"
|
||||
}
|
||||
|
||||
export const MUTATIONS = {
|
||||
SET_SCENERY_DATA: "SET_SCENERY_DATA",
|
||||
SET_SCENERY_DATA_STATUS: "SET_SCENERY_DATA_STATUS",
|
||||
SET_DATA_CONNECTION_STATUS: "SET_DATA_CONNECTION_STATUS",
|
||||
UPDATE_STATIONS: "UPDATE_STATIONS",
|
||||
UPDATE_TRAINS: "UPDATE_TRAINS",
|
||||
UPDATE_TIMETABLES: "UPDATE_TIMETABLES"
|
||||
}
|
||||
|
||||
export const GETTERS = {
|
||||
stationList: "stationList",
|
||||
trainList: "trainList",
|
||||
allData: "allData",
|
||||
timetableDataStatus: "timetableDataStatus",
|
||||
sceneryDataStatus: "sceneryDataStatus",
|
||||
dataStatus: "dataStatus"
|
||||
export const ACTIONS = {
|
||||
synchronizeData: "synchronizeData",
|
||||
fetchOnlineData: "fetchOnlineData",
|
||||
fetchTimetableData: "fetchTimetableData"
|
||||
}
|
||||
|
||||
export const MUTATIONS = {
|
||||
SET_SCENERY_DATA: "SET_SCENERY_DATA",
|
||||
SET_SCENERY_DATA_STATUS: "SET_SCENERY_DATA_STATUS",
|
||||
SET_DATA_CONNECTION_STATUS: "SET_DATA_CONNECTION_STATUS",
|
||||
UPDATE_STATIONS: "UPDATE_STATIONS",
|
||||
UPDATE_TRAINS: "UPDATE_TRAINS",
|
||||
UPDATE_TIMETABLES: "UPDATE_TIMETABLES"
|
||||
}
|
||||
|
||||
export const GETTERS = {
|
||||
stationList: "stationList",
|
||||
trainList: "trainList",
|
||||
allData: "allData",
|
||||
timetableDataStatus: "timetableDataStatus",
|
||||
sceneryDataStatus: "sceneryDataStatus",
|
||||
dataStatus: "dataStatus"
|
||||
}
|
||||
@@ -1,27 +1,27 @@
|
||||
import { createI18n, LocaleMessages, VueMessageType } from 'vue-i18n'
|
||||
|
||||
/**
|
||||
* Load locale messages
|
||||
*
|
||||
* The loaded `JSON` locale messages is pre-compiled by `@intlify/vue-i18n-loader`, which is integrated into `vue-cli-plugin-i18n`.
|
||||
* See: https://github.com/intlify/vue-i18n-loader#rocket-i18n-resource-pre-compilation
|
||||
*/
|
||||
function loadLocaleMessages(): LocaleMessages<VueMessageType> {
|
||||
const locales = require.context('./locales', true, /[A-Za-z0-9-_,\s]+\.json$/i)
|
||||
const messages: LocaleMessages<VueMessageType> = {}
|
||||
locales.keys().forEach(key => {
|
||||
const matched = key.match(/([A-Za-z0-9-_]+)\./i)
|
||||
if (matched && matched.length > 1) {
|
||||
const locale = matched[1]
|
||||
messages[locale] = locales(key)
|
||||
}
|
||||
})
|
||||
return messages
|
||||
}
|
||||
|
||||
export default createI18n({
|
||||
legacy: false,
|
||||
locale: process.env.VUE_APP_I18N_LOCALE || 'en',
|
||||
fallbackLocale: process.env.VUE_APP_I18N_FALLBACK_LOCALE || 'en',
|
||||
messages: loadLocaleMessages()
|
||||
})
|
||||
import { createI18n, LocaleMessages, VueMessageType } from 'vue-i18n'
|
||||
|
||||
/**
|
||||
* Load locale messages
|
||||
*
|
||||
* The loaded `JSON` locale messages is pre-compiled by `@intlify/vue-i18n-loader`, which is integrated into `vue-cli-plugin-i18n`.
|
||||
* See: https://github.com/intlify/vue-i18n-loader#rocket-i18n-resource-pre-compilation
|
||||
*/
|
||||
function loadLocaleMessages(): LocaleMessages<VueMessageType> {
|
||||
const locales = require.context('./locales', true, /[A-Za-z0-9-_,\s]+\.json$/i)
|
||||
const messages: LocaleMessages<VueMessageType> = {}
|
||||
locales.keys().forEach(key => {
|
||||
const matched = key.match(/([A-Za-z0-9-_]+)\./i)
|
||||
if (matched && matched.length > 1) {
|
||||
const locale = matched[1]
|
||||
messages[locale] = locales(key)
|
||||
}
|
||||
})
|
||||
return messages
|
||||
}
|
||||
|
||||
export default createI18n({
|
||||
legacy: false,
|
||||
locale: process.env.VUE_APP_I18N_LOCALE || 'en',
|
||||
fallbackLocale: process.env.VUE_APP_I18N_FALLBACK_LOCALE || 'en',
|
||||
messages: loadLocaleMessages()
|
||||
})
|
||||
|
||||
@@ -1,142 +1,142 @@
|
||||
{
|
||||
"app": {
|
||||
"sceneries": "SCENERIES",
|
||||
"trains": "TRAINS",
|
||||
"journal": "JOURNAL",
|
||||
"loading": "Loading data...",
|
||||
"support": "Support the project"
|
||||
},
|
||||
"desc": {
|
||||
"control-type": "Control type: ",
|
||||
"signals-type": "Signals type: ",
|
||||
"SBL": "This scenery has automatic line blockade system on following routes: ",
|
||||
"default": "This scenery is available by default",
|
||||
"non-public": "This scenery is not public",
|
||||
"unavailable": "This scenery is unavailable",
|
||||
"real": "This scenery is real"
|
||||
},
|
||||
"signals": {
|
||||
"współczesna": "modern",
|
||||
"mieszana": "mixed",
|
||||
"kształtowa": "mechanical",
|
||||
"historyczna": "historyczna"
|
||||
},
|
||||
"controls": {
|
||||
"SPK": "SPK",
|
||||
"SCS": "SCS",
|
||||
"SCS-SPK": "SCS/SPK",
|
||||
"SPE": "SPE",
|
||||
"ręczne": "manual",
|
||||
"ręczne+SPK": "manual + SPK",
|
||||
"ręczne+SCS": "manual + SCS",
|
||||
"mechaniczne": "levers (mechanical)",
|
||||
"mechaniczne+SPK": "levers + SPK",
|
||||
"mechaniczne+SCS": "levers + SCS"
|
||||
},
|
||||
"status": {
|
||||
"online": "UNTIL ",
|
||||
"free": "FREE",
|
||||
"ending": "ENDS SOON",
|
||||
"not-signed": "NOT SIGNED IN",
|
||||
"no-limit": "NO LIMIT",
|
||||
"unavailable": "UNAVAILABLE",
|
||||
"brb": "AFK",
|
||||
"no-space": "NO SPACE"
|
||||
},
|
||||
"options": {
|
||||
"filters": "FILTERS",
|
||||
"donate": "DONATE"
|
||||
},
|
||||
"filters": {
|
||||
"title": "STATION FILTER",
|
||||
"default": "DEFAULT",
|
||||
"not-default": "OTHER",
|
||||
"real": "REAL",
|
||||
"fictional": "FICTIONAL",
|
||||
"SPK": "SPK",
|
||||
"SCS": "SCS",
|
||||
"SPE": "SPE",
|
||||
"manual": "MANUAL",
|
||||
"mechanical": "MECHANICAL",
|
||||
"modern": "MODERN",
|
||||
"semaphores": "SEMAPHORES",
|
||||
"mixed": "MIXED",
|
||||
"historical": "HISTORICAL",
|
||||
"free": "FREE",
|
||||
"occupied": "OCCUPIED",
|
||||
"sliders": {
|
||||
"min-lvl": "MIN. REQUIRED DISPATCHER LEVEL",
|
||||
"max-lvl": "MAX. REQUIRED DISPATCHER LEVEL",
|
||||
"routes-1t-cat": "MIN. CATENARY SINGLE TRACK ROUTES",
|
||||
"routes-1t-other": "MIN. OTHER SINGLE TRACK ROUTES",
|
||||
"routes-2t-cat": "MIN. CATENARY DOUBLE TRACK ROUTES",
|
||||
"routes-2t-other": "MIN. OTHER DOUBLE TRACK ROUTES"
|
||||
},
|
||||
"save": "SAVE FILTERS",
|
||||
"reset": "RESET FILTERS",
|
||||
"close": "CLOSE FILTERS"
|
||||
},
|
||||
"sceneries": {
|
||||
"station": "Station",
|
||||
"min-lvl": "Min. dispatcher\nlevel",
|
||||
"status": "Status",
|
||||
"dispatcher": "Dispatcher",
|
||||
"dispatcher-lvl": "Dispatcher\nlevel",
|
||||
"routes": "Routes\ndouble / single",
|
||||
"general": "General info",
|
||||
"users": "Drivers online",
|
||||
"spawns": "Spawns online",
|
||||
"timetables": "Active timetables",
|
||||
"no-stations": "No stations to show here!"
|
||||
},
|
||||
"trains": {
|
||||
"no-trains": "Oops! No trains online!",
|
||||
"loading": "Loading train data...",
|
||||
"stats": "TRAFFIC STATISTICS",
|
||||
"stats-speed": "TRAINS SPEED (MIN, AVG, MAX) [km/h]",
|
||||
"stats-length": "TIMETABLES LENGTH (MIN, AVG, MAX) [km]",
|
||||
"stats-categories": "TIMETABLE CATEGORIES",
|
||||
"stats-special-twr": "HIGH RISK",
|
||||
"stats-special-skr": "EXCEEDED STRUCT. GAUGE",
|
||||
"stats-locos": "MOST COMMON UNITS",
|
||||
"option-mass": "mass",
|
||||
"option-speed": "speed",
|
||||
"option-length": "length",
|
||||
"option-distance": "distance",
|
||||
"option-timetable": "train no.",
|
||||
"search-no": "Search for train no...",
|
||||
"search-driver": "Search for driver...",
|
||||
"detailed-timetable": "Detailed timetable for train no. ",
|
||||
"via-title": "Via: ",
|
||||
"no-timetable": "no current timetable",
|
||||
"distance-exceeded": "Attention! Due to an internal error, timetables with route distance greater than 200km might be incorrect!",
|
||||
"cars": "Cars"
|
||||
},
|
||||
"journal": {
|
||||
"title": "SCENERY ACTIVITY JOURNAL",
|
||||
"subtitle": "Shows all recent dispatchers on a selected scenery",
|
||||
"disclaimer": "<b>This functionality is unfinished!</b> \n Information shown here could be false or incorrect!",
|
||||
"select": "Select a scenery"
|
||||
},
|
||||
"scenery": {
|
||||
"users": "PLAYERS ONLINE",
|
||||
"spawns": "OPEN SPAWNS",
|
||||
"timetables": "ACTIVE TIMETABLES",
|
||||
"no-timetables": "No active timetables!",
|
||||
"no-users": "NO ACTIVE PLAYERS",
|
||||
"no-spawns": "NO OPEN SPAWNS",
|
||||
"no-scenery": "Oops! This scenery doesn't exist!",
|
||||
"return-btn": "Return to main site"
|
||||
},
|
||||
"timetables": {
|
||||
"timetable-only": "Switch to timetable-only view",
|
||||
"online": "At station",
|
||||
"departed": "Dispatched",
|
||||
"departed-away": "Departed",
|
||||
"arriving": "En route",
|
||||
"stopped": "Stopped",
|
||||
"terminated": "Terminated",
|
||||
"begins": "BEGINS HERE",
|
||||
"terminates": "TERMINATES\nHERE"
|
||||
}
|
||||
}
|
||||
{
|
||||
"app": {
|
||||
"sceneries": "SCENERIES",
|
||||
"trains": "TRAINS",
|
||||
"journal": "JOURNAL",
|
||||
"loading": "Loading data...",
|
||||
"support": "Support the project"
|
||||
},
|
||||
"desc": {
|
||||
"control-type": "Control type: ",
|
||||
"signals-type": "Signals type: ",
|
||||
"SBL": "This scenery has automatic line blockade system on following routes: ",
|
||||
"default": "This scenery is available by default",
|
||||
"non-public": "This scenery is not public",
|
||||
"unavailable": "This scenery is unavailable",
|
||||
"real": "This scenery is real"
|
||||
},
|
||||
"signals": {
|
||||
"współczesna": "modern",
|
||||
"mieszana": "mixed",
|
||||
"kształtowa": "mechanical",
|
||||
"historyczna": "historyczna"
|
||||
},
|
||||
"controls": {
|
||||
"SPK": "SPK",
|
||||
"SCS": "SCS",
|
||||
"SCS-SPK": "SCS/SPK",
|
||||
"SPE": "SPE",
|
||||
"ręczne": "manual",
|
||||
"ręczne+SPK": "manual + SPK",
|
||||
"ręczne+SCS": "manual + SCS",
|
||||
"mechaniczne": "levers (mechanical)",
|
||||
"mechaniczne+SPK": "levers + SPK",
|
||||
"mechaniczne+SCS": "levers + SCS"
|
||||
},
|
||||
"status": {
|
||||
"online": "UNTIL ",
|
||||
"free": "FREE",
|
||||
"ending": "ENDS SOON",
|
||||
"not-signed": "NOT SIGNED IN",
|
||||
"no-limit": "NO LIMIT",
|
||||
"unavailable": "UNAVAILABLE",
|
||||
"brb": "AFK",
|
||||
"no-space": "NO SPACE"
|
||||
},
|
||||
"options": {
|
||||
"filters": "FILTERS",
|
||||
"donate": "DONATE"
|
||||
},
|
||||
"filters": {
|
||||
"title": "STATION FILTER",
|
||||
"default": "DEFAULT",
|
||||
"not-default": "OTHER",
|
||||
"real": "REAL",
|
||||
"fictional": "FICTIONAL",
|
||||
"SPK": "SPK",
|
||||
"SCS": "SCS",
|
||||
"SPE": "SPE",
|
||||
"manual": "MANUAL",
|
||||
"mechanical": "MECHANICAL",
|
||||
"modern": "MODERN",
|
||||
"semaphores": "SEMAPHORES",
|
||||
"mixed": "MIXED",
|
||||
"historical": "HISTORICAL",
|
||||
"free": "FREE",
|
||||
"occupied": "OCCUPIED",
|
||||
"sliders": {
|
||||
"min-lvl": "MIN. REQUIRED DISPATCHER LEVEL",
|
||||
"max-lvl": "MAX. REQUIRED DISPATCHER LEVEL",
|
||||
"routes-1t-cat": "MIN. CATENARY SINGLE TRACK ROUTES",
|
||||
"routes-1t-other": "MIN. OTHER SINGLE TRACK ROUTES",
|
||||
"routes-2t-cat": "MIN. CATENARY DOUBLE TRACK ROUTES",
|
||||
"routes-2t-other": "MIN. OTHER DOUBLE TRACK ROUTES"
|
||||
},
|
||||
"save": "SAVE FILTERS",
|
||||
"reset": "RESET FILTERS",
|
||||
"close": "CLOSE FILTERS"
|
||||
},
|
||||
"sceneries": {
|
||||
"station": "Station",
|
||||
"min-lvl": "Min. dispatcher\nlevel",
|
||||
"status": "Status",
|
||||
"dispatcher": "Dispatcher",
|
||||
"dispatcher-lvl": "Dispatcher\nlevel",
|
||||
"routes": "Routes\ndouble / single",
|
||||
"general": "General info",
|
||||
"users": "Drivers online",
|
||||
"spawns": "Spawns online",
|
||||
"timetables": "Active timetables",
|
||||
"no-stations": "No stations to show here!"
|
||||
},
|
||||
"trains": {
|
||||
"no-trains": "Oops! No trains online!",
|
||||
"loading": "Loading train data...",
|
||||
"stats": "TRAFFIC STATISTICS",
|
||||
"stats-speed": "TRAINS SPEED (MIN, AVG, MAX) [km/h]",
|
||||
"stats-length": "TIMETABLES LENGTH (MIN, AVG, MAX) [km]",
|
||||
"stats-categories": "TIMETABLE CATEGORIES",
|
||||
"stats-special-twr": "HIGH RISK",
|
||||
"stats-special-skr": "EXCEEDED STRUCT. GAUGE",
|
||||
"stats-locos": "MOST COMMON UNITS",
|
||||
"option-mass": "mass",
|
||||
"option-speed": "speed",
|
||||
"option-length": "length",
|
||||
"option-distance": "distance",
|
||||
"option-timetable": "train no.",
|
||||
"search-no": "Search for train no...",
|
||||
"search-driver": "Search for driver...",
|
||||
"detailed-timetable": "Detailed timetable for train no. ",
|
||||
"via-title": "Via: ",
|
||||
"no-timetable": "no current timetable",
|
||||
"distance-exceeded": "Attention! Due to an internal error, timetables with route distance greater than 200km might be incorrect!",
|
||||
"cars": "Cars"
|
||||
},
|
||||
"journal": {
|
||||
"title": "SCENERY ACTIVITY JOURNAL",
|
||||
"subtitle": "Shows all recent dispatchers on a selected scenery",
|
||||
"disclaimer": "<b>This functionality is unfinished!</b> \n Information shown here could be false or incorrect!",
|
||||
"select": "Select a scenery"
|
||||
},
|
||||
"scenery": {
|
||||
"users": "PLAYERS ONLINE",
|
||||
"spawns": "OPEN SPAWNS",
|
||||
"timetables": "ACTIVE TIMETABLES",
|
||||
"no-timetables": "No active timetables!",
|
||||
"no-users": "NO ACTIVE PLAYERS",
|
||||
"no-spawns": "NO OPEN SPAWNS",
|
||||
"no-scenery": "Oops! This scenery doesn't exist!",
|
||||
"return-btn": "Return to main site"
|
||||
},
|
||||
"timetables": {
|
||||
"timetable-only": "Switch to timetable-only view",
|
||||
"online": "At station",
|
||||
"departed": "Dispatched",
|
||||
"departed-away": "Departed",
|
||||
"arriving": "En route",
|
||||
"stopped": "Stopped",
|
||||
"terminated": "Terminated",
|
||||
"begins": "BEGINS HERE",
|
||||
"terminates": "TERMINATES\nHERE"
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1,142 +1,142 @@
|
||||
{
|
||||
"app": {
|
||||
"sceneries": "SCENERIE",
|
||||
"trains": "POCIĄGI",
|
||||
"journal": "DZIENNIK",
|
||||
"loading": "Pobieranie danych...",
|
||||
"support": "Wspomóż projekt"
|
||||
},
|
||||
"desc": {
|
||||
"control-type": "Sterowanie: ",
|
||||
"signals-type": "Sygnalizacja: ",
|
||||
"SBL": "Sceneria posiada SBL na szlakach: ",
|
||||
"default": "Sceneria dostępna domyślnie w paczce z grą",
|
||||
"non-public": "Sceneria niepubliczna",
|
||||
"unavailable": "Sceneria niedostępna",
|
||||
"real": "Sceneria realna"
|
||||
},
|
||||
"signals": {
|
||||
"współczesna": "współczesna",
|
||||
"mieszana": "mieszana",
|
||||
"kształtowa": "kształtowa",
|
||||
"historyczna": "historyczna"
|
||||
},
|
||||
"controls": {
|
||||
"SPK": "SPK",
|
||||
"SCS": "SCS",
|
||||
"SCS-SPK": "SCS/SPK",
|
||||
"SPE": "SPE",
|
||||
"ręczne": "ręczne",
|
||||
"ręczne+SPK": "ręczne + SPK",
|
||||
"ręczne+SCS": "ręczne + SCS",
|
||||
"mechaniczne": "mechaniczne",
|
||||
"mechaniczne+SPK": "mechaniczne + SPK",
|
||||
"mechaniczne+SCS": "mechaniczne + SCS"
|
||||
},
|
||||
"status": {
|
||||
"online": "DO ",
|
||||
"free": "WOLNA",
|
||||
"ending": "KOŃCZY",
|
||||
"not-signed": "NIEZALOGOWANY",
|
||||
"no-limit": "BEZ LIMITU",
|
||||
"unavailable": "NIEDOSTĘPNY",
|
||||
"brb": "Z/W",
|
||||
"no-space": "BRAK MIEJSCA"
|
||||
},
|
||||
"options": {
|
||||
"filters": "FILTRY",
|
||||
"donate": "WESPRZYJ"
|
||||
},
|
||||
"filters": {
|
||||
"title": "FILTRUJ STACJE",
|
||||
"default": "DOMYŚLNA",
|
||||
"not-default": "POZA PACZKĄ",
|
||||
"real": "REALNA",
|
||||
"fictional": "FIKCYJNA",
|
||||
"SPK": "SPK",
|
||||
"SCS": "SCS",
|
||||
"SPE": "SPE",
|
||||
"manual": "RĘCZNE",
|
||||
"mechanical": "MECHANICZNE",
|
||||
"modern": "WSPÓŁCZESNA",
|
||||
"semaphores": "KSZTAŁTOWA",
|
||||
"mixed": "MIESZANA",
|
||||
"historical": "HISTORYCZNA",
|
||||
"free": "WOLNA",
|
||||
"occupied": "ZAJĘTA",
|
||||
"sliders": {
|
||||
"min-lvl": "MIN. WYMAGANY POZIOM DYŻURNEGO",
|
||||
"max-lvl": "MAKS. WYMAGANY POZIOM DYŻURNEGO",
|
||||
"routes-1t-cat": "SZLAKI JEDNOTOROWE ZELEKTR. (MINIMUM)",
|
||||
"routes-1t-other": "SZLAKI JEDNOTOROWE NIEZELEKTR. (MINIMUM)",
|
||||
"routes-2t-cat": "SZLAKI DWUTOROWE ZELEKTR. (MINIMUM)",
|
||||
"routes-2t-other": "SZLAKI DWUTOROWE NIEZELEKTR. (MINIMUM)"
|
||||
},
|
||||
"save": "ZAPISZ FILTRY",
|
||||
"reset": "RESETUJ FILTRY",
|
||||
"close": "ZAMKNIJ FILTRY"
|
||||
},
|
||||
"sceneries": {
|
||||
"station": "Stacja",
|
||||
"min-lvl": "Min. poziom\ndyżurnego",
|
||||
"status": "Status",
|
||||
"dispatcher": "Dyżurny",
|
||||
"dispatcher-lvl": "Poziom\ndyżurnego",
|
||||
"routes": "Szlaki\n2tor / 1tor",
|
||||
"general": "Informacje\nogólne",
|
||||
"users": "Maszyniści online",
|
||||
"spawns": "Otwarte spawny",
|
||||
"timetables": "Aktywne rozkłady jazdy",
|
||||
"no-stations": "Brak stacji do wyświetlenia!"
|
||||
},
|
||||
"trains": {
|
||||
"no-trains": "Brak pociągów online!",
|
||||
"loading": "Pobieranie danych o pociągach...",
|
||||
"stats": "STATYSTYKI RUCHU",
|
||||
"stats-speed": "PRĘDKOŚCI POCIĄGÓW (MIN, ŚR, MAX) [km/h]",
|
||||
"stats-length": "DŁUGOŚCI ROZKŁADÓW (MIN, ŚR, MAX) [km]",
|
||||
"stats-categories": "KATEGORIE RJ",
|
||||
"stats-special-twr": "WYSOKIEGO RYZYKA",
|
||||
"stats-special-skr": "PRZEKROCZONA SKRAJNIA",
|
||||
"stats-locos": "NAJCZĘSTSZE JEDNOSTKI",
|
||||
"option-mass": "masa",
|
||||
"option-speed": "prędkość",
|
||||
"option-length": "długość",
|
||||
"option-distance": "kilometraż",
|
||||
"option-timetable": "numer pociągu",
|
||||
"search-no": "Szukaj nr pociągu...",
|
||||
"search-driver": "Szukaj maszynisty...",
|
||||
"detailed-timetable": "Szczegółowy rozkład jazdy pociągu ",
|
||||
"via-title": "Przez: ",
|
||||
"no-timetable": "brak rozkładu jazdy",
|
||||
"distance-exceeded": "Uwaga! Z powodu wewnętrznego błędu serwera TD2, rozkłady jazdy o kilometrażu powyżej 200km mogą być niepoprawne!",
|
||||
"cars": "Wagony"
|
||||
},
|
||||
"journal": {
|
||||
"title": "DZIENNIK AKTYWNOŚCI SCENERII",
|
||||
"subtitle": "Pokazuje dyżurnych, którzy ostatnio byli aktywni na wybranej scenerii",
|
||||
"disclaimer": "<b>Ta funkcjonalność jest w testach beta!</b> \n Informacje pokazywane na ekranie mogą znikać, a ich zawartość może być fałszywa!",
|
||||
"select": "Wybierz scenerię"
|
||||
},
|
||||
"scenery": {
|
||||
"users": "GRACZE ONLINE",
|
||||
"spawns": "OTWARTE SPAWNY",
|
||||
"timetables": "AKTYWNE ROZKŁADY JAZDY",
|
||||
"no-timetables": "Brak aktywnych rozkładów!",
|
||||
"no-users": "BRAK AKTYWNYCH GRACZY",
|
||||
"no-spawns": "BRAK OTWARTYCH SPAWNÓW",
|
||||
"no-scenery": "Ups! Ta sceneria nie istnieje!",
|
||||
"return-btn": "Wróć na stronę główną"
|
||||
},
|
||||
"timetables": {
|
||||
"timetable-only": "Wyodrębnij rozkłady jazdy",
|
||||
"online": "Na stacji",
|
||||
"departed": "Odprawiony",
|
||||
"departed-away": "Odjechał",
|
||||
"arriving": "W drodze",
|
||||
"stopped": "Postój",
|
||||
"terminated": "Skończył bieg",
|
||||
"begins": "ROZPOCZYNA\nBIEG",
|
||||
"terminates": "KOŃCZY BIEG"
|
||||
}
|
||||
}
|
||||
{
|
||||
"app": {
|
||||
"sceneries": "SCENERIE",
|
||||
"trains": "POCIĄGI",
|
||||
"journal": "DZIENNIK",
|
||||
"loading": "Pobieranie danych...",
|
||||
"support": "Wspomóż projekt"
|
||||
},
|
||||
"desc": {
|
||||
"control-type": "Sterowanie: ",
|
||||
"signals-type": "Sygnalizacja: ",
|
||||
"SBL": "Sceneria posiada SBL na szlakach: ",
|
||||
"default": "Sceneria dostępna domyślnie w paczce z grą",
|
||||
"non-public": "Sceneria niepubliczna",
|
||||
"unavailable": "Sceneria niedostępna",
|
||||
"real": "Sceneria realna"
|
||||
},
|
||||
"signals": {
|
||||
"współczesna": "współczesna",
|
||||
"mieszana": "mieszana",
|
||||
"kształtowa": "kształtowa",
|
||||
"historyczna": "historyczna"
|
||||
},
|
||||
"controls": {
|
||||
"SPK": "SPK",
|
||||
"SCS": "SCS",
|
||||
"SCS-SPK": "SCS/SPK",
|
||||
"SPE": "SPE",
|
||||
"ręczne": "ręczne",
|
||||
"ręczne+SPK": "ręczne + SPK",
|
||||
"ręczne+SCS": "ręczne + SCS",
|
||||
"mechaniczne": "mechaniczne",
|
||||
"mechaniczne+SPK": "mechaniczne + SPK",
|
||||
"mechaniczne+SCS": "mechaniczne + SCS"
|
||||
},
|
||||
"status": {
|
||||
"online": "DO ",
|
||||
"free": "WOLNA",
|
||||
"ending": "KOŃCZY",
|
||||
"not-signed": "NIEZALOGOWANY",
|
||||
"no-limit": "BEZ LIMITU",
|
||||
"unavailable": "NIEDOSTĘPNY",
|
||||
"brb": "Z/W",
|
||||
"no-space": "BRAK MIEJSCA"
|
||||
},
|
||||
"options": {
|
||||
"filters": "FILTRY",
|
||||
"donate": "WESPRZYJ"
|
||||
},
|
||||
"filters": {
|
||||
"title": "FILTRUJ STACJE",
|
||||
"default": "DOMYŚLNA",
|
||||
"not-default": "POZA PACZKĄ",
|
||||
"real": "REALNA",
|
||||
"fictional": "FIKCYJNA",
|
||||
"SPK": "SPK",
|
||||
"SCS": "SCS",
|
||||
"SPE": "SPE",
|
||||
"manual": "RĘCZNE",
|
||||
"mechanical": "MECHANICZNE",
|
||||
"modern": "WSPÓŁCZESNA",
|
||||
"semaphores": "KSZTAŁTOWA",
|
||||
"mixed": "MIESZANA",
|
||||
"historical": "HISTORYCZNA",
|
||||
"free": "WOLNA",
|
||||
"occupied": "ZAJĘTA",
|
||||
"sliders": {
|
||||
"min-lvl": "MIN. WYMAGANY POZIOM DYŻURNEGO",
|
||||
"max-lvl": "MAKS. WYMAGANY POZIOM DYŻURNEGO",
|
||||
"routes-1t-cat": "SZLAKI JEDNOTOROWE ZELEKTR. (MINIMUM)",
|
||||
"routes-1t-other": "SZLAKI JEDNOTOROWE NIEZELEKTR. (MINIMUM)",
|
||||
"routes-2t-cat": "SZLAKI DWUTOROWE ZELEKTR. (MINIMUM)",
|
||||
"routes-2t-other": "SZLAKI DWUTOROWE NIEZELEKTR. (MINIMUM)"
|
||||
},
|
||||
"save": "ZAPISZ FILTRY",
|
||||
"reset": "RESETUJ FILTRY",
|
||||
"close": "ZAMKNIJ FILTRY"
|
||||
},
|
||||
"sceneries": {
|
||||
"station": "Stacja",
|
||||
"min-lvl": "Min. poziom\ndyżurnego",
|
||||
"status": "Status",
|
||||
"dispatcher": "Dyżurny",
|
||||
"dispatcher-lvl": "Poziom\ndyżurnego",
|
||||
"routes": "Szlaki\n2tor / 1tor",
|
||||
"general": "Informacje\nogólne",
|
||||
"users": "Maszyniści online",
|
||||
"spawns": "Otwarte spawny",
|
||||
"timetables": "Aktywne rozkłady jazdy",
|
||||
"no-stations": "Brak stacji do wyświetlenia!"
|
||||
},
|
||||
"trains": {
|
||||
"no-trains": "Brak pociągów online!",
|
||||
"loading": "Pobieranie danych o pociągach...",
|
||||
"stats": "STATYSTYKI RUCHU",
|
||||
"stats-speed": "PRĘDKOŚCI POCIĄGÓW (MIN, ŚR, MAX) [km/h]",
|
||||
"stats-length": "DŁUGOŚCI ROZKŁADÓW (MIN, ŚR, MAX) [km]",
|
||||
"stats-categories": "KATEGORIE RJ",
|
||||
"stats-special-twr": "WYSOKIEGO RYZYKA",
|
||||
"stats-special-skr": "PRZEKROCZONA SKRAJNIA",
|
||||
"stats-locos": "NAJCZĘSTSZE JEDNOSTKI",
|
||||
"option-mass": "masa",
|
||||
"option-speed": "prędkość",
|
||||
"option-length": "długość",
|
||||
"option-distance": "kilometraż",
|
||||
"option-timetable": "numer pociągu",
|
||||
"search-no": "Szukaj nr pociągu...",
|
||||
"search-driver": "Szukaj maszynisty...",
|
||||
"detailed-timetable": "Szczegółowy rozkład jazdy pociągu ",
|
||||
"via-title": "Przez: ",
|
||||
"no-timetable": "brak rozkładu jazdy",
|
||||
"distance-exceeded": "Uwaga! Z powodu wewnętrznego błędu serwera TD2, rozkłady jazdy o kilometrażu powyżej 200km mogą być niepoprawne!",
|
||||
"cars": "Wagony"
|
||||
},
|
||||
"journal": {
|
||||
"title": "DZIENNIK AKTYWNOŚCI SCENERII",
|
||||
"subtitle": "Pokazuje dyżurnych, którzy ostatnio byli aktywni na wybranej scenerii",
|
||||
"disclaimer": "<b>Ta funkcjonalność jest w testach beta!</b> \n Informacje pokazywane na ekranie mogą znikać, a ich zawartość może być fałszywa!",
|
||||
"select": "Wybierz scenerię"
|
||||
},
|
||||
"scenery": {
|
||||
"users": "GRACZE ONLINE",
|
||||
"spawns": "OTWARTE SPAWNY",
|
||||
"timetables": "AKTYWNE ROZKŁADY JAZDY",
|
||||
"no-timetables": "Brak aktywnych rozkładów!",
|
||||
"no-users": "BRAK AKTYWNYCH GRACZY",
|
||||
"no-spawns": "BRAK OTWARTYCH SPAWNÓW",
|
||||
"no-scenery": "Ups! Ta sceneria nie istnieje!",
|
||||
"return-btn": "Wróć na stronę główną"
|
||||
},
|
||||
"timetables": {
|
||||
"timetable-only": "Wyodrębnij rozkłady jazdy",
|
||||
"online": "Na stacji",
|
||||
"departed": "Odprawiony",
|
||||
"departed-away": "Odjechał",
|
||||
"arriving": "W drodze",
|
||||
"stopped": "Postój",
|
||||
"terminated": "Skończył bieg",
|
||||
"begins": "ROZPOCZYNA\nBIEG",
|
||||
"terminates": "KOŃCZY BIEG"
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1,25 +1,25 @@
|
||||
import { createApp } from 'vue'
|
||||
import App from './App.vue'
|
||||
import router from './router'
|
||||
import { store, key } from './store'
|
||||
|
||||
import enLang from '@/locales/en.json';
|
||||
import plLang from '@/locales/pl.json';
|
||||
|
||||
import { createI18n } from 'vue-i18n'
|
||||
|
||||
const i18n = createI18n({
|
||||
locale: 'pl',
|
||||
fallbackLocale: 'pl',
|
||||
messages: {
|
||||
en: enLang,
|
||||
pl: plLang,
|
||||
},
|
||||
enableLegacy: false
|
||||
})
|
||||
|
||||
createApp(App)
|
||||
.use(store, key)
|
||||
.use(router)
|
||||
.use(i18n)
|
||||
.mount('#app')
|
||||
import { createApp } from 'vue'
|
||||
import App from './App.vue'
|
||||
import router from './router'
|
||||
import { store, key } from './store'
|
||||
|
||||
import enLang from '@/locales/en.json';
|
||||
import plLang from '@/locales/pl.json';
|
||||
|
||||
import { createI18n } from 'vue-i18n'
|
||||
|
||||
const i18n = createI18n({
|
||||
locale: 'pl',
|
||||
fallbackLocale: 'pl',
|
||||
messages: {
|
||||
en: enLang,
|
||||
pl: plLang,
|
||||
},
|
||||
enableLegacy: false
|
||||
})
|
||||
|
||||
createApp(App)
|
||||
.use(store, key)
|
||||
.use(router)
|
||||
.use(i18n)
|
||||
.mount('#app')
|
||||
|
||||
@@ -1,46 +1,46 @@
|
||||
import { defineComponent } from 'vue';
|
||||
|
||||
export default defineComponent({
|
||||
methods: {
|
||||
calculateExpStyle(exp: string | number, isSupporter = false): string {
|
||||
const bgColor = exp > -1 ? (exp < 2 ? '#26B0D9' : `hsl(${-exp * 5 + 100}, 85%, 50%)`) : '#666';
|
||||
|
||||
const fontColor = exp > 15 || exp == -1 ? 'white' : 'black';
|
||||
const boxShadow = isSupporter ? `box-shadow: 0 0 10px 2px ${bgColor};` : '';
|
||||
|
||||
return `background-color: ${bgColor}; color: ${fontColor}; ${boxShadow}`;
|
||||
},
|
||||
|
||||
statusClasses(occupiedTo: string) {
|
||||
let className = '';
|
||||
|
||||
switch (occupiedTo) {
|
||||
case 'WOLNA':
|
||||
className = 'free';
|
||||
break;
|
||||
case 'KOŃCZY':
|
||||
className = 'ending';
|
||||
break;
|
||||
case 'NIEZALOGOWANY':
|
||||
className = 'not-signed';
|
||||
break;
|
||||
case 'BEZ LIMITU':
|
||||
className = 'no-limit';
|
||||
break;
|
||||
case 'NIEDOSTĘPNY':
|
||||
className = 'unavailable';
|
||||
break;
|
||||
case 'Z/W':
|
||||
className = 'brb';
|
||||
break;
|
||||
case 'BRAK MIEJSCA':
|
||||
className = 'no-space';
|
||||
break;
|
||||
default:
|
||||
break;
|
||||
}
|
||||
|
||||
return className;
|
||||
}
|
||||
}
|
||||
})
|
||||
import { defineComponent } from 'vue';
|
||||
|
||||
export default defineComponent({
|
||||
methods: {
|
||||
calculateExpStyle(exp: string | number, isSupporter = false): string {
|
||||
const bgColor = exp > -1 ? (exp < 2 ? '#26B0D9' : `hsl(${-exp * 5 + 100}, 85%, 50%)`) : '#666';
|
||||
|
||||
const fontColor = exp > 15 || exp == -1 ? 'white' : 'black';
|
||||
const boxShadow = isSupporter ? `box-shadow: 0 0 10px 2px ${bgColor};` : '';
|
||||
|
||||
return `background-color: ${bgColor}; color: ${fontColor}; ${boxShadow}`;
|
||||
},
|
||||
|
||||
statusClasses(occupiedTo: string) {
|
||||
let className = '';
|
||||
|
||||
switch (occupiedTo) {
|
||||
case 'WOLNA':
|
||||
className = 'free';
|
||||
break;
|
||||
case 'KOŃCZY':
|
||||
className = 'ending';
|
||||
break;
|
||||
case 'NIEZALOGOWANY':
|
||||
className = 'not-signed';
|
||||
break;
|
||||
case 'BEZ LIMITU':
|
||||
className = 'no-limit';
|
||||
break;
|
||||
case 'NIEDOSTĘPNY':
|
||||
className = 'unavailable';
|
||||
break;
|
||||
case 'Z/W':
|
||||
className = 'brb';
|
||||
break;
|
||||
case 'BRAK MIEJSCA':
|
||||
className = 'no-space';
|
||||
break;
|
||||
default:
|
||||
break;
|
||||
}
|
||||
|
||||
return className;
|
||||
}
|
||||
}
|
||||
})
|
||||
|
||||
@@ -1,31 +1,31 @@
|
||||
import { createRouter, createWebHashHistory, RouteRecordRaw } from 'vue-router'
|
||||
|
||||
import StationsView from "@/views/StationsView.vue";
|
||||
|
||||
const routes: Array<RouteRecordRaw> = [
|
||||
{
|
||||
path: '/',
|
||||
name: 'StationsView',
|
||||
component: StationsView
|
||||
},
|
||||
{
|
||||
path: "/trains",
|
||||
name: "TrainsView",
|
||||
component: () => import("@/views/TrainsView.vue"),
|
||||
props: true,
|
||||
|
||||
},
|
||||
{
|
||||
path: "/scenery",
|
||||
name: "SceneryView",
|
||||
component: () => import("@/views/SceneryView.vue"),
|
||||
props: true
|
||||
},
|
||||
]
|
||||
|
||||
const router = createRouter({
|
||||
history: createWebHashHistory(),
|
||||
routes,
|
||||
})
|
||||
|
||||
export default router
|
||||
import { createRouter, createWebHashHistory, RouteRecordRaw } from 'vue-router'
|
||||
|
||||
import StationsView from "@/views/StationsView.vue";
|
||||
|
||||
const routes: Array<RouteRecordRaw> = [
|
||||
{
|
||||
path: '/',
|
||||
name: 'StationsView',
|
||||
component: StationsView
|
||||
},
|
||||
{
|
||||
path: "/trains",
|
||||
name: "TrainsView",
|
||||
component: () => import("@/views/TrainsView.vue"),
|
||||
props: true,
|
||||
|
||||
},
|
||||
{
|
||||
path: "/scenery",
|
||||
name: "SceneryView",
|
||||
component: () => import("@/views/SceneryView.vue"),
|
||||
props: true
|
||||
},
|
||||
]
|
||||
|
||||
const router = createRouter({
|
||||
history: createWebHashHistory(),
|
||||
routes,
|
||||
})
|
||||
|
||||
export default router
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
export const enum DataStatus {
|
||||
Initialized = -1,
|
||||
Loading = 0,
|
||||
Error = 1,
|
||||
Loaded = 2
|
||||
}
|
||||
export const enum DataStatus {
|
||||
Initialized = -1,
|
||||
Loading = 0,
|
||||
Error = 1,
|
||||
Loaded = 2
|
||||
}
|
||||
|
||||
@@ -1,28 +1,28 @@
|
||||
export default interface Filter {
|
||||
[key: string]: (boolean | number),
|
||||
default: boolean;
|
||||
notDefault: boolean;
|
||||
real: boolean;
|
||||
fictional: boolean;
|
||||
"SPK": boolean;
|
||||
"SCS": boolean;
|
||||
"SPE": boolean;
|
||||
ręczne: boolean;
|
||||
mechaniczne: boolean;
|
||||
współczesna: boolean;
|
||||
kształtowa: boolean;
|
||||
historyczna: boolean;
|
||||
mieszana: boolean;
|
||||
minLevel: number;
|
||||
maxLevel: number;
|
||||
minOneWayCatenary: number;
|
||||
minOneWay: number;
|
||||
minTwoWayCatenary: number;
|
||||
minTwoWay: number;
|
||||
'no-1track': boolean;
|
||||
'no-2track': boolean;
|
||||
free: boolean;
|
||||
occupied: boolean;
|
||||
ending: boolean;
|
||||
nonPublic: boolean;
|
||||
}
|
||||
export default interface Filter {
|
||||
[key: string]: (boolean | number),
|
||||
default: boolean;
|
||||
notDefault: boolean;
|
||||
real: boolean;
|
||||
fictional: boolean;
|
||||
"SPK": boolean;
|
||||
"SCS": boolean;
|
||||
"SPE": boolean;
|
||||
ręczne: boolean;
|
||||
mechaniczne: boolean;
|
||||
współczesna: boolean;
|
||||
kształtowa: boolean;
|
||||
historyczna: boolean;
|
||||
mieszana: boolean;
|
||||
minLevel: number;
|
||||
maxLevel: number;
|
||||
minOneWayCatenary: number;
|
||||
minOneWay: number;
|
||||
minTwoWayCatenary: number;
|
||||
minTwoWay: number;
|
||||
'no-1track': boolean;
|
||||
'no-2track': boolean;
|
||||
free: boolean;
|
||||
occupied: boolean;
|
||||
ending: boolean;
|
||||
nonPublic: boolean;
|
||||
}
|
||||
|
||||
@@ -1,61 +1,61 @@
|
||||
import Train from "./Train";
|
||||
import ScheduledTrain from "./ScheduledTrain";
|
||||
|
||||
export default interface Station {
|
||||
stationName: string;
|
||||
stationHash: string;
|
||||
stationURL: string;
|
||||
|
||||
maxUsers: number;
|
||||
currentUsers: number;
|
||||
|
||||
spawns: { spawnName: string; spawnLength: number }[];
|
||||
|
||||
dispatcherRate: number;
|
||||
dispatcherName: string;
|
||||
dispatcherExp: number;
|
||||
dispatcherId: number;
|
||||
dispatcherIsSupporter: boolean;
|
||||
|
||||
stationLines: string;
|
||||
stationProject: string;
|
||||
|
||||
reqLevel: string;
|
||||
supportersOnly: boolean;
|
||||
|
||||
SBL: string;
|
||||
TWB: string;
|
||||
signalType: string;
|
||||
controlType: string;
|
||||
|
||||
default: boolean;
|
||||
nonPublic: boolean;
|
||||
unavailable: boolean;
|
||||
|
||||
routes: {
|
||||
oneWay: { catenary: number; noCatenary: number };
|
||||
twoWay: { catenary: number; noCatenary: number };
|
||||
};
|
||||
|
||||
checkpoints:
|
||||
| {
|
||||
checkpointName: string;
|
||||
scheduledTrains: ScheduledTrain[];
|
||||
}[]
|
||||
| null;
|
||||
|
||||
stops: string[] | null;
|
||||
|
||||
online: boolean;
|
||||
statusTimestamp: number;
|
||||
statusTimeString: string;
|
||||
statusID: string;
|
||||
|
||||
stationTrains: {
|
||||
driverName: number;
|
||||
trainNo: number;
|
||||
stopStatus?: string;
|
||||
}[];
|
||||
|
||||
scheduledTrains: ScheduledTrain[];
|
||||
}
|
||||
import Train from "./Train";
|
||||
import ScheduledTrain from "./ScheduledTrain";
|
||||
|
||||
export default interface Station {
|
||||
stationName: string;
|
||||
stationHash: string;
|
||||
stationURL: string;
|
||||
|
||||
maxUsers: number;
|
||||
currentUsers: number;
|
||||
|
||||
spawns: { spawnName: string; spawnLength: number }[];
|
||||
|
||||
dispatcherRate: number;
|
||||
dispatcherName: string;
|
||||
dispatcherExp: number;
|
||||
dispatcherId: number;
|
||||
dispatcherIsSupporter: boolean;
|
||||
|
||||
stationLines: string;
|
||||
stationProject: string;
|
||||
|
||||
reqLevel: string;
|
||||
supportersOnly: boolean;
|
||||
|
||||
SBL: string;
|
||||
TWB: string;
|
||||
signalType: string;
|
||||
controlType: string;
|
||||
|
||||
default: boolean;
|
||||
nonPublic: boolean;
|
||||
unavailable: boolean;
|
||||
|
||||
routes: {
|
||||
oneWay: { catenary: number; noCatenary: number };
|
||||
twoWay: { catenary: number; noCatenary: number };
|
||||
};
|
||||
|
||||
checkpoints:
|
||||
| {
|
||||
checkpointName: string;
|
||||
scheduledTrains: ScheduledTrain[];
|
||||
}[]
|
||||
| null;
|
||||
|
||||
stops: string[] | null;
|
||||
|
||||
online: boolean;
|
||||
statusTimestamp: number;
|
||||
statusTimeString: string;
|
||||
statusID: string;
|
||||
|
||||
stationTrains: {
|
||||
driverName: number;
|
||||
trainNo: number;
|
||||
stopStatus?: string;
|
||||
}[];
|
||||
|
||||
scheduledTrains: ScheduledTrain[];
|
||||
}
|
||||
|
||||
@@ -1,14 +1,14 @@
|
||||
import { DataStatus } from "../enums/DataStatus";
|
||||
import Station from "./Station";
|
||||
import Train from "./Train";
|
||||
|
||||
export interface StoreData {
|
||||
stationList: Station[];
|
||||
trainList: Train[];
|
||||
|
||||
activeTrainCount: number;
|
||||
activeStationCount: number;
|
||||
|
||||
dataConnectionStatus: DataStatus;
|
||||
timetableDataStatus: DataStatus;
|
||||
}
|
||||
import { DataStatus } from "../enums/DataStatus";
|
||||
import Station from "./Station";
|
||||
import Train from "./Train";
|
||||
|
||||
export interface StoreData {
|
||||
stationList: Station[];
|
||||
trainList: Train[];
|
||||
|
||||
activeTrainCount: number;
|
||||
activeStationCount: number;
|
||||
|
||||
dataConnectionStatus: DataStatus;
|
||||
timetableDataStatus: DataStatus;
|
||||
}
|
||||
|
||||
@@ -1,17 +1,17 @@
|
||||
import TrainStop from "./TrainStop";
|
||||
|
||||
export default interface Timetable {
|
||||
trainNo: number;
|
||||
driverName: string;
|
||||
driverId: number;
|
||||
currentStationName: string;
|
||||
currentStationHash: string;
|
||||
timetableId: number;
|
||||
category: string;
|
||||
route: string;
|
||||
TWR: boolean;
|
||||
SKR: boolean;
|
||||
routeDistance: number;
|
||||
followingStops: TrainStop[];
|
||||
followingSceneries: string[];
|
||||
}
|
||||
import TrainStop from "./TrainStop";
|
||||
|
||||
export default interface Timetable {
|
||||
trainNo: number;
|
||||
driverName: string;
|
||||
driverId: number;
|
||||
currentStationName: string;
|
||||
currentStationHash: string;
|
||||
timetableId: number;
|
||||
category: string;
|
||||
route: string;
|
||||
TWR: boolean;
|
||||
SKR: boolean;
|
||||
routeDistance: number;
|
||||
followingStops: TrainStop[];
|
||||
followingSceneries: string[];
|
||||
}
|
||||
|
||||
@@ -1,18 +1,18 @@
|
||||
export default interface StationAPIData {
|
||||
dispatcherId: number;
|
||||
dispatcherName: string;
|
||||
dispatcherIsSupporter: boolean;
|
||||
stationName: string;
|
||||
stationHash: string;
|
||||
region: string;
|
||||
maxUsers: number;
|
||||
currentUsers: number;
|
||||
spawn: number;
|
||||
lastSeen: number;
|
||||
dispatcherExp: number;
|
||||
nameFromHeader: string;
|
||||
spawnString: string;
|
||||
networkConnectionString: string;
|
||||
isOnline: number;
|
||||
dispatcherRate: number;
|
||||
export default interface StationAPIData {
|
||||
dispatcherId: number;
|
||||
dispatcherName: string;
|
||||
dispatcherIsSupporter: boolean;
|
||||
stationName: string;
|
||||
stationHash: string;
|
||||
region: string;
|
||||
maxUsers: number;
|
||||
currentUsers: number;
|
||||
spawn: number;
|
||||
lastSeen: number;
|
||||
dispatcherExp: number;
|
||||
nameFromHeader: string;
|
||||
spawnString: string;
|
||||
networkConnectionString: string;
|
||||
isOnline: number;
|
||||
dispatcherRate: number;
|
||||
}
|
||||
@@ -1,34 +1,34 @@
|
||||
export default interface TimetableAPIData {
|
||||
trainInfo: {
|
||||
timetableId: number;
|
||||
trainNo: number;
|
||||
trainCategoryCode: string;
|
||||
driverId: number;
|
||||
driverName: string;
|
||||
route: string;
|
||||
twr: boolean;
|
||||
skr: boolean;
|
||||
sceneries: string[];
|
||||
};
|
||||
|
||||
stopPoints: {
|
||||
arrivalLine: string | null;
|
||||
arrivalTime: string | null;
|
||||
arrivalDelay: number;
|
||||
arrivalRealTime: string | null;
|
||||
pointDistance: number;
|
||||
pointName: string;
|
||||
pointNameRAW: string;
|
||||
entryId: number;
|
||||
pointId: number;
|
||||
comments: string | null;
|
||||
confirmed: boolean;
|
||||
isStopped: boolean;
|
||||
pointStopTime: number | null;
|
||||
pointStopType: string;
|
||||
departureLine: string | null;
|
||||
departureTime: string | null;
|
||||
departureDelay: number;
|
||||
departureRealTime: string | null;
|
||||
}[];
|
||||
export default interface TimetableAPIData {
|
||||
trainInfo: {
|
||||
timetableId: number;
|
||||
trainNo: number;
|
||||
trainCategoryCode: string;
|
||||
driverId: number;
|
||||
driverName: string;
|
||||
route: string;
|
||||
twr: boolean;
|
||||
skr: boolean;
|
||||
sceneries: string[];
|
||||
};
|
||||
|
||||
stopPoints: {
|
||||
arrivalLine: string | null;
|
||||
arrivalTime: string | null;
|
||||
arrivalDelay: number;
|
||||
arrivalRealTime: string | null;
|
||||
pointDistance: number;
|
||||
pointName: string;
|
||||
pointNameRAW: string;
|
||||
entryId: number;
|
||||
pointId: number;
|
||||
comments: string | null;
|
||||
confirmed: boolean;
|
||||
isStopped: boolean;
|
||||
pointStopTime: number | null;
|
||||
pointStopType: string;
|
||||
departureLine: string | null;
|
||||
departureTime: string | null;
|
||||
departureDelay: number;
|
||||
departureRealTime: string | null;
|
||||
}[];
|
||||
}
|
||||
@@ -1,19 +1,19 @@
|
||||
import StationAPIData from "./StationAPIData";
|
||||
|
||||
export default interface TrainAPIData {
|
||||
trainNo: number;
|
||||
driverId: number;
|
||||
driverName: string;
|
||||
driverIsSupporter: boolean;
|
||||
station: StationAPIData;
|
||||
dataSignal: string;
|
||||
dataSceneryConnection: string;
|
||||
dataDistance: number;
|
||||
dataCon: string;
|
||||
dataSpeed: number;
|
||||
dataMass: number;
|
||||
dataLength: number;
|
||||
region: string;
|
||||
isOnline: boolean;
|
||||
lastSeen: number;
|
||||
}
|
||||
import StationAPIData from "./StationAPIData";
|
||||
|
||||
export default interface TrainAPIData {
|
||||
trainNo: number;
|
||||
driverId: number;
|
||||
driverName: string;
|
||||
driverIsSupporter: boolean;
|
||||
station: StationAPIData;
|
||||
dataSignal: string;
|
||||
dataSceneryConnection: string;
|
||||
dataDistance: number;
|
||||
dataCon: string;
|
||||
dataSpeed: number;
|
||||
dataMass: number;
|
||||
dataLength: number;
|
||||
region: string;
|
||||
isOnline: boolean;
|
||||
lastSeen: number;
|
||||
}
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
export const URLs = {
|
||||
stations: "https://api.td2.info.pl:9640/?method=getStationsOnline",
|
||||
trains: "https://api.td2.info.pl:9640/?method=getTrainsOnline",
|
||||
dispatchers: "https://api.td2.info.pl:9640/?method=readFromSWDR&value=getDispatcherStatusList%3B1",
|
||||
getTimetableURL: (trainNo: string | number) => `https://api.td2.info.pl:9640/?method=readFromSWDR&value=getTimetable%3B${trainNo}%3Beu`
|
||||
export const URLs = {
|
||||
stations: "https://api.td2.info.pl:9640/?method=getStationsOnline",
|
||||
trains: "https://api.td2.info.pl:9640/?method=getTrainsOnline",
|
||||
dispatchers: "https://api.td2.info.pl:9640/?method=readFromSWDR&value=getDispatcherStatusList%3B1",
|
||||
getTimetableURL: (trainNo: string | number) => `https://api.td2.info.pl:9640/?method=readFromSWDR&value=getTimetable%3B${trainNo}%3Beu`
|
||||
};
|
||||
@@ -1,113 +1,113 @@
|
||||
import Station from "../interfaces/Station";
|
||||
import TrainStop from "../interfaces/TrainStop";
|
||||
|
||||
export const getLocoURL = (locoType: string): string => (`https://rj.td2.info.pl/dist/img/thumbnails/${locoType.includes("EN") ? locoType + "rb" : locoType}.png`)
|
||||
|
||||
export const getStatusID = (stationStatus: any): string => {
|
||||
if (!stationStatus) return "not-signed";
|
||||
|
||||
const statusCode = stationStatus[2];
|
||||
const statusTimestamp = stationStatus[3];
|
||||
|
||||
switch (statusCode) {
|
||||
case 0:
|
||||
if (statusTimestamp - Date.now() > 21000000) return "no-limit";
|
||||
|
||||
return "online";
|
||||
|
||||
case 1:
|
||||
return "brb";
|
||||
|
||||
case 2:
|
||||
if (statusTimestamp == 0) return "ending";
|
||||
break;
|
||||
|
||||
case 3:
|
||||
return "no-space";
|
||||
|
||||
default:
|
||||
break;
|
||||
}
|
||||
|
||||
return "unavailable";
|
||||
};
|
||||
|
||||
export const getStatusTimestamp = (stationStatus: any): number => {
|
||||
if (!stationStatus) return -2;
|
||||
|
||||
const statusCode = stationStatus[2];
|
||||
const statusTimestamp = stationStatus[3];
|
||||
|
||||
switch (statusCode) {
|
||||
case 0:
|
||||
case 1:
|
||||
case 3:
|
||||
return statusTimestamp;
|
||||
|
||||
case 2:
|
||||
if (statusTimestamp == 0) return 0;
|
||||
break;
|
||||
|
||||
default:
|
||||
break;
|
||||
}
|
||||
|
||||
return -1;
|
||||
};
|
||||
|
||||
export const parseSpawns = (spawnString: string) => {
|
||||
if (!spawnString) return [];
|
||||
if (spawnString === "NO_SPAWN") return [];
|
||||
|
||||
return spawnString.split(";").map(spawn => {
|
||||
const spawnArray = spawn.split(",");
|
||||
const spawnName = spawnArray[6] ? spawnArray[6] : spawnArray[0];
|
||||
const spawnLength = parseInt(spawnArray[2]);
|
||||
|
||||
return { spawnName, spawnLength };
|
||||
});
|
||||
};
|
||||
|
||||
export const getTimestamp = (date: string | null): number => (date ? new Date(date).getTime() : 0);
|
||||
|
||||
export const timestampToString = (timestamp: number | null): string =>
|
||||
timestamp
|
||||
? new Date(timestamp).toLocaleTimeString("pl-PL", {
|
||||
hour: "2-digit",
|
||||
minute: "2-digit"
|
||||
})
|
||||
: "";
|
||||
|
||||
export const getTrainStopStatus = (stopInfo: TrainStop, timetableData: { currentStationName: string }, station: Station) => {
|
||||
let stopStatus = "",
|
||||
stopLabel = "",
|
||||
stopStatusID = -1;
|
||||
|
||||
if (stopInfo.terminatesHere && stopInfo.confirmed) {
|
||||
stopStatus = "terminated";
|
||||
stopLabel = "Skończył bieg";
|
||||
stopStatusID = 5;
|
||||
} else if (!stopInfo.terminatesHere && stopInfo.confirmed && timetableData.currentStationName == station.stationName) {
|
||||
stopStatus = "departed";
|
||||
stopLabel = "Odprawiony";
|
||||
stopStatusID = 2;
|
||||
} else if (!stopInfo.terminatesHere && stopInfo.confirmed && timetableData.currentStationName != station.stationName) {
|
||||
stopStatus = "departed-away";
|
||||
stopLabel = "Odjechał";
|
||||
stopStatusID = 4;
|
||||
} else if (timetableData.currentStationName == station.stationName && !stopInfo.stopped) {
|
||||
stopStatus = "online";
|
||||
stopLabel = "Na stacji";
|
||||
stopStatusID = 0;
|
||||
} else if (timetableData.currentStationName == station.stationName && stopInfo.stopped) {
|
||||
stopStatus = "stopped";
|
||||
stopLabel = "Postój";
|
||||
stopStatusID = 1;
|
||||
} else if (timetableData.currentStationName != station.stationName) {
|
||||
stopStatus = "arriving";
|
||||
stopLabel = "W drodze";
|
||||
stopStatusID = 3;
|
||||
}
|
||||
|
||||
return { stopStatus, stopLabel, stopStatusID };
|
||||
import Station from "../interfaces/Station";
|
||||
import TrainStop from "../interfaces/TrainStop";
|
||||
|
||||
export const getLocoURL = (locoType: string): string => (`https://rj.td2.info.pl/dist/img/thumbnails/${locoType.includes("EN") ? locoType + "rb" : locoType}.png`)
|
||||
|
||||
export const getStatusID = (stationStatus: any): string => {
|
||||
if (!stationStatus) return "not-signed";
|
||||
|
||||
const statusCode = stationStatus[2];
|
||||
const statusTimestamp = stationStatus[3];
|
||||
|
||||
switch (statusCode) {
|
||||
case 0:
|
||||
if (statusTimestamp - Date.now() > 21000000) return "no-limit";
|
||||
|
||||
return "online";
|
||||
|
||||
case 1:
|
||||
return "brb";
|
||||
|
||||
case 2:
|
||||
if (statusTimestamp == 0) return "ending";
|
||||
break;
|
||||
|
||||
case 3:
|
||||
return "no-space";
|
||||
|
||||
default:
|
||||
break;
|
||||
}
|
||||
|
||||
return "unavailable";
|
||||
};
|
||||
|
||||
export const getStatusTimestamp = (stationStatus: any): number => {
|
||||
if (!stationStatus) return -2;
|
||||
|
||||
const statusCode = stationStatus[2];
|
||||
const statusTimestamp = stationStatus[3];
|
||||
|
||||
switch (statusCode) {
|
||||
case 0:
|
||||
case 1:
|
||||
case 3:
|
||||
return statusTimestamp;
|
||||
|
||||
case 2:
|
||||
if (statusTimestamp == 0) return 0;
|
||||
break;
|
||||
|
||||
default:
|
||||
break;
|
||||
}
|
||||
|
||||
return -1;
|
||||
};
|
||||
|
||||
export const parseSpawns = (spawnString: string) => {
|
||||
if (!spawnString) return [];
|
||||
if (spawnString === "NO_SPAWN") return [];
|
||||
|
||||
return spawnString.split(";").map(spawn => {
|
||||
const spawnArray = spawn.split(",");
|
||||
const spawnName = spawnArray[6] ? spawnArray[6] : spawnArray[0];
|
||||
const spawnLength = parseInt(spawnArray[2]);
|
||||
|
||||
return { spawnName, spawnLength };
|
||||
});
|
||||
};
|
||||
|
||||
export const getTimestamp = (date: string | null): number => (date ? new Date(date).getTime() : 0);
|
||||
|
||||
export const timestampToString = (timestamp: number | null): string =>
|
||||
timestamp
|
||||
? new Date(timestamp).toLocaleTimeString("pl-PL", {
|
||||
hour: "2-digit",
|
||||
minute: "2-digit"
|
||||
})
|
||||
: "";
|
||||
|
||||
export const getTrainStopStatus = (stopInfo: TrainStop, timetableData: { currentStationName: string }, station: Station) => {
|
||||
let stopStatus = "",
|
||||
stopLabel = "",
|
||||
stopStatusID = -1;
|
||||
|
||||
if (stopInfo.terminatesHere && stopInfo.confirmed) {
|
||||
stopStatus = "terminated";
|
||||
stopLabel = "Skończył bieg";
|
||||
stopStatusID = 5;
|
||||
} else if (!stopInfo.terminatesHere && stopInfo.confirmed && timetableData.currentStationName == station.stationName) {
|
||||
stopStatus = "departed";
|
||||
stopLabel = "Odprawiony";
|
||||
stopStatusID = 2;
|
||||
} else if (!stopInfo.terminatesHere && stopInfo.confirmed && timetableData.currentStationName != station.stationName) {
|
||||
stopStatus = "departed-away";
|
||||
stopLabel = "Odjechał";
|
||||
stopStatusID = 4;
|
||||
} else if (timetableData.currentStationName == station.stationName && !stopInfo.stopped) {
|
||||
stopStatus = "online";
|
||||
stopLabel = "Na stacji";
|
||||
stopStatusID = 0;
|
||||
} else if (timetableData.currentStationName == station.stationName && stopInfo.stopped) {
|
||||
stopStatus = "stopped";
|
||||
stopLabel = "Postój";
|
||||
stopStatusID = 1;
|
||||
} else if (timetableData.currentStationName != station.stationName) {
|
||||
stopStatus = "arriving";
|
||||
stopLabel = "W drodze";
|
||||
stopStatusID = 3;
|
||||
}
|
||||
|
||||
return { stopStatus, stopLabel, stopStatusID };
|
||||
};
|
||||
@@ -1,6 +1,6 @@
|
||||
/* eslint-disable */
|
||||
declare module '*.vue' {
|
||||
import type { DefineComponent } from 'vue'
|
||||
const component: DefineComponent<{}, {}, any>
|
||||
export default component
|
||||
}
|
||||
/* eslint-disable */
|
||||
declare module '*.vue' {
|
||||
import type { DefineComponent } from 'vue'
|
||||
const component: DefineComponent<{}, {}, any>
|
||||
export default component
|
||||
}
|
||||
|
||||
@@ -1,458 +1,458 @@
|
||||
/* eslint-disable */
|
||||
|
||||
import { InjectionKey } from 'vue'
|
||||
import { createStore, useStore as baseUseStore, Store } from 'vuex'
|
||||
|
||||
import axios from "axios";
|
||||
|
||||
import JSONStationData from "@/data/stationData.json";
|
||||
|
||||
import Station from "@/scripts/interfaces/Station";
|
||||
import Train from "@/scripts/interfaces/Train";
|
||||
import TrainStop from "@/scripts/interfaces/TrainStop";
|
||||
|
||||
import { StoreData } from "@/scripts/interfaces/StoreData";
|
||||
|
||||
import TimetableAPIData from '@/scripts/interfaces/api/TimetableAPIData';
|
||||
import StationAPIData from '@/scripts/interfaces/api/StationAPIData';
|
||||
import TrainAPIData from '@/scripts/interfaces/api/TrainAPIData';
|
||||
import Timetable from '@/scripts/interfaces/Timetable';
|
||||
|
||||
import { ACTIONS, MUTATIONS } from "@/constants/storeConstants";
|
||||
import { DataStatus } from "@/scripts/enums/DataStatus";
|
||||
|
||||
import { getLocoURL, getStatusID, getStatusTimestamp, getTimestamp, getTrainStopStatus, parseSpawns, timestampToString } from "@/scripts/utils/storeUtils";
|
||||
import { URLs } from '@/scripts/utils/apiURLs';
|
||||
|
||||
|
||||
export interface State {
|
||||
stationList: Station[],
|
||||
trainList: Train[],
|
||||
|
||||
trainCount: number;
|
||||
stationCount: number;
|
||||
|
||||
dataConnectionStatus: DataStatus;
|
||||
sceneryDataStatus: DataStatus;
|
||||
timetableDataStatus: DataStatus;
|
||||
|
||||
listenerLaunched: boolean;
|
||||
}
|
||||
|
||||
export const key: InjectionKey<Store<State>> = Symbol()
|
||||
|
||||
export const store = createStore<State>({
|
||||
state: () => ({
|
||||
stationList: [],
|
||||
trainList: [],
|
||||
|
||||
trainCount: 0,
|
||||
stationCount: 0,
|
||||
|
||||
dataConnectionStatus: DataStatus.Loading,
|
||||
sceneryDataStatus: DataStatus.Loading,
|
||||
timetableDataStatus: DataStatus.Loading,
|
||||
|
||||
listenerLaunched: false
|
||||
}),
|
||||
|
||||
getters: {
|
||||
stationList: (state) => state.stationList,
|
||||
trainList: (state) => state.trainList,
|
||||
allData: (state): StoreData => ({
|
||||
stationList: state.stationList,
|
||||
trainList: state.trainList,
|
||||
|
||||
activeTrainCount: state.trainCount,
|
||||
activeStationCount: state.stationCount,
|
||||
|
||||
dataConnectionStatus: state.dataConnectionStatus,
|
||||
timetableDataStatus: state.timetableDataStatus
|
||||
}),
|
||||
timetableDataStatus: (state): DataStatus => state.timetableDataStatus,
|
||||
sceneryDataStatus: (state): DataStatus => state.sceneryDataStatus,
|
||||
dataStatus: (state): DataStatus => state.dataConnectionStatus
|
||||
},
|
||||
|
||||
actions: {
|
||||
async synchronizeData({ commit, dispatch, state }) {
|
||||
if(state.listenerLaunched) return;
|
||||
|
||||
commit(MUTATIONS.SET_SCENERY_DATA);
|
||||
commit(MUTATIONS.SET_SCENERY_DATA_STATUS, DataStatus.Loaded);
|
||||
|
||||
dispatch(ACTIONS.fetchOnlineData);
|
||||
|
||||
setInterval(() => dispatch(ACTIONS.fetchOnlineData), 30000);
|
||||
|
||||
},
|
||||
|
||||
async fetchOnlineData({ commit, dispatch }) {
|
||||
Promise.all([axios.get(URLs.stations), axios.get(URLs.trains), axios.get(URLs.dispatchers)])
|
||||
.then(async response => {
|
||||
const onlineStationsData: StationAPIData[] = response[0].data.message;
|
||||
const onlineTrainsData: TrainAPIData[] = await response[1].data.message;
|
||||
const onlineDispatchersData: string[][] = await response[2].data.message;
|
||||
|
||||
const updatedStationList = onlineStationsData.reduce((acc, station) => {
|
||||
if (station.region !== "eu" || !station.isOnline) return acc;
|
||||
|
||||
const stationStatus = onlineDispatchersData.find((status: string[]) => status[0] == station.stationHash && status[1] == "eu");
|
||||
|
||||
const statusTimestamp = getStatusTimestamp(stationStatus);
|
||||
const statusID = getStatusID(stationStatus);
|
||||
|
||||
const stationTrains = onlineTrainsData
|
||||
.filter(train => train.region === "eu" && train.isOnline && train.station.stationName === station.stationName)
|
||||
.map(train => ({ driverName: train.driverName, trainNo: train.trainNo }));
|
||||
|
||||
acc.push({
|
||||
stationName: station.stationName,
|
||||
stationHash: station.stationHash,
|
||||
maxUsers: station.maxUsers,
|
||||
currentUsers: station.currentUsers,
|
||||
spawns: parseSpawns(station.spawnString),
|
||||
dispatcherName: station.dispatcherName,
|
||||
dispatcherRate: station.dispatcherRate,
|
||||
dispatcherId: station.dispatcherId,
|
||||
dispatcherExp: station.dispatcherExp,
|
||||
dispatcherIsSupporter: station.dispatcherIsSupporter,
|
||||
stationTrains,
|
||||
statusTimestamp,
|
||||
statusID,
|
||||
statusTimeString: timestampToString(statusTimestamp)
|
||||
});
|
||||
|
||||
return acc;
|
||||
}, [] as any);
|
||||
|
||||
const updatedTrainList = await Promise.all(
|
||||
onlineTrainsData
|
||||
.filter(train => train.region === "eu")
|
||||
.map(async train => {
|
||||
const locoType = train.dataCon.split(";") ? train.dataCon.split(";")[0] : train.dataCon;
|
||||
|
||||
return {
|
||||
trainNo: train.trainNo,
|
||||
mass: train.dataMass,
|
||||
length: train.dataLength,
|
||||
speed: train.dataSpeed,
|
||||
distance: train.dataDistance,
|
||||
signal: train.dataSignal,
|
||||
online: train.isOnline,
|
||||
driverId: train.driverId,
|
||||
driverName: train.driverName,
|
||||
currentStationName: train.station.stationName,
|
||||
currentStationHash: train.station.stationHash,
|
||||
connectedTrack: train.dataSceneryConnection,
|
||||
locoType,
|
||||
locoURL: getLocoURL(locoType),
|
||||
cars: train.dataCon.split(";").filter((train, i) => i > 0) || []
|
||||
};
|
||||
})
|
||||
);
|
||||
|
||||
// Pass reduced lists to mutations
|
||||
commit(MUTATIONS.UPDATE_STATIONS, updatedStationList);
|
||||
commit(MUTATIONS.UPDATE_TRAINS, updatedTrainList);
|
||||
|
||||
dispatch(ACTIONS.fetchTimetableData);
|
||||
})
|
||||
.catch(() => {
|
||||
commit(MUTATIONS.SET_DATA_CONNECTION_STATUS, DataStatus.Error);
|
||||
});
|
||||
},
|
||||
|
||||
async fetchTimetableData({ commit }) {
|
||||
const reducedList = this.state.trainList.reduce(async (acc: Promise<Timetable[]>, train: Train) => {
|
||||
const timetable: TimetableAPIData = await (await axios.get(URLs.getTimetableURL(train.trainNo))).data.message;
|
||||
const trainInfo = timetable.trainInfo;
|
||||
|
||||
if (!timetable || !trainInfo) return acc;
|
||||
|
||||
const followingStops: TrainStop[] = timetable.stopPoints.reduce((stopsAcc: TrainStop[], point) => {
|
||||
if (point.pointNameRAW.toLowerCase().includes("sbl")) return stopsAcc;
|
||||
|
||||
const arrivalTimestamp = getTimestamp(point.arrivalTime);
|
||||
const arrivalRealTimestamp = getTimestamp(point.arrivalRealTime);
|
||||
|
||||
const departureTimestamp = getTimestamp(point.departureTime);
|
||||
const departureRealTimestamp = getTimestamp(point.departureRealTime);
|
||||
|
||||
stopsAcc.push({
|
||||
stopName: point.pointName,
|
||||
stopNameRAW: point.pointNameRAW,
|
||||
stopType: point.pointStopType,
|
||||
stopDistance: point.pointDistance,
|
||||
|
||||
mainStop: point.pointName.includes("strong"),
|
||||
|
||||
arrivalLine: point.arrivalLine,
|
||||
arrivalTimeString: timestampToString(arrivalTimestamp),
|
||||
arrivalTimestamp: arrivalTimestamp,
|
||||
arrivalRealTimeString: timestampToString(arrivalRealTimestamp),
|
||||
arrivalRealTimestamp: arrivalRealTimestamp,
|
||||
arrivalDelay: point.arrivalDelay,
|
||||
|
||||
departureLine: point.departureLine,
|
||||
departureTimeString: timestampToString(departureTimestamp),
|
||||
departureTimestamp: departureTimestamp,
|
||||
departureRealTimeString: timestampToString(departureRealTimestamp),
|
||||
departureRealTimestamp: departureRealTimestamp,
|
||||
departureDelay: point.departureDelay,
|
||||
|
||||
beginsHere: arrivalTimestamp == 0,
|
||||
terminatesHere: departureTimestamp == 0,
|
||||
|
||||
confirmed: point.confirmed,
|
||||
stopped: point.isStopped,
|
||||
stopTime: point.pointStopTime
|
||||
});
|
||||
|
||||
return stopsAcc;
|
||||
}, []);
|
||||
|
||||
(await acc).push({
|
||||
trainNo: train.trainNo,
|
||||
driverName: train.driverName,
|
||||
driverId: train.driverId,
|
||||
currentStationName: train.currentStationName,
|
||||
currentStationHash: train.currentStationHash,
|
||||
timetableId: trainInfo.timetableId,
|
||||
category: trainInfo.trainCategoryCode,
|
||||
route: trainInfo.route,
|
||||
TWR: trainInfo.twr,
|
||||
SKR: trainInfo.skr,
|
||||
routeDistance: timetable.stopPoints[timetable.stopPoints.length - 1].pointDistance,
|
||||
followingStops,
|
||||
followingSceneries: trainInfo.sceneries
|
||||
});
|
||||
|
||||
return acc;
|
||||
}, Promise.resolve([]));
|
||||
|
||||
commit(MUTATIONS.UPDATE_TIMETABLES, (await reducedList));
|
||||
}
|
||||
|
||||
},
|
||||
|
||||
mutations: {
|
||||
SET_SCENERY_DATA(state) {
|
||||
state.stationList = JSONStationData.map(station => ({
|
||||
stationName: station[0] as string,
|
||||
stationURL: station[1] as string,
|
||||
stationLines: station[2] as string,
|
||||
stationProject: station[3] as string,
|
||||
reqLevel: station[4] as string,
|
||||
supportersOnly: station[5] == "TAK",
|
||||
signalType: station[6] as string,
|
||||
controlType: station[7] as string,
|
||||
SBL: station[8] as string,
|
||||
TWB: station[9] as string,
|
||||
routes: {
|
||||
oneWay: {
|
||||
catenary: station[10] as number,
|
||||
noCatenary: station[11] as number
|
||||
},
|
||||
twoWay: {
|
||||
catenary: station[12] as number,
|
||||
noCatenary: station[13] as number
|
||||
}
|
||||
},
|
||||
checkpoints: station[14] ? (station[14] as string[]).map(sub => ({ checkpointName: sub, scheduledTrains: [] })) : null,
|
||||
stops: station[15] as string[],
|
||||
|
||||
default: station[16] as boolean,
|
||||
nonPublic: station[17] as boolean,
|
||||
unavailable: station[18] as boolean,
|
||||
|
||||
stationHash: "",
|
||||
maxUsers: 0,
|
||||
currentUsers: 0,
|
||||
dispatcherName: "",
|
||||
dispatcherRate: 0,
|
||||
dispatcherExp: -1,
|
||||
dispatcherId: 0,
|
||||
dispatcherIsSupporter: false,
|
||||
online: false,
|
||||
statusTimestamp: -3,
|
||||
statusID: "free",
|
||||
statusTimeString: "",
|
||||
stationTrains: [],
|
||||
scheduledTrains: [],
|
||||
spawns: []
|
||||
}));
|
||||
},
|
||||
|
||||
SET_SCENERY_DATA_STATUS(state, status: DataStatus) {
|
||||
state.sceneryDataStatus = status;
|
||||
},
|
||||
|
||||
SET_DATA_CONNECTION_STATUS(state, status: DataStatus) {
|
||||
state.dataConnectionStatus = status;
|
||||
},
|
||||
|
||||
UPDATE_STATIONS(state, updatedStationList: any[]) {
|
||||
state.stationList = state.stationList.reduce((acc: Station[], station) => {
|
||||
const onlineStationData = updatedStationList.find(updatedStation => updatedStation.stationName === station.stationName);
|
||||
const listedStationData = JSONStationData.find(data => data[0] === station.stationName);
|
||||
|
||||
if (onlineStationData)
|
||||
acc.push({
|
||||
...station,
|
||||
...onlineStationData,
|
||||
online: true
|
||||
});
|
||||
else if (listedStationData)
|
||||
acc.push({
|
||||
...station,
|
||||
stationProject: "",
|
||||
stationHash: "",
|
||||
maxUsers: 0,
|
||||
currentUsers: 0,
|
||||
dispatcherName: "",
|
||||
dispatcherRate: 0,
|
||||
dispatcherExp: -1,
|
||||
dispatcherId: 0,
|
||||
dispatcherIsSupporter: false,
|
||||
online: false,
|
||||
statusID: "free",
|
||||
statusTimestamp: -3,
|
||||
statusTimeString: "",
|
||||
stationTrains: [],
|
||||
scheduledTrains: [],
|
||||
checkpoints: null
|
||||
});
|
||||
|
||||
return acc;
|
||||
}, [] as Station[]);
|
||||
|
||||
updatedStationList
|
||||
.filter(uStation => !state.stationList.some(station => uStation.stationName === station.stationName))
|
||||
.forEach(uStation => {
|
||||
state.stationList.push({
|
||||
...uStation,
|
||||
scheduledTrains: [],
|
||||
stationTrains: uStation.stationTrains || [],
|
||||
subStations: [],
|
||||
online: true,
|
||||
reqLevel: "-1",
|
||||
nonPublic: true
|
||||
});
|
||||
});
|
||||
|
||||
state.stationCount = state.stationList.filter(station => station.online).length;
|
||||
state.dataConnectionStatus = DataStatus.Loaded;
|
||||
},
|
||||
|
||||
UPDATE_TRAINS(state, updatedTrainList: any[]) {
|
||||
state.trainList = updatedTrainList.reduce((acc, updatedTrain) => {
|
||||
const trainData = state.trainList.find(train => train.trainNo === updatedTrain.trainNo);
|
||||
|
||||
if (trainData) acc.push({ ...trainData, ...updatedTrain });
|
||||
else acc.push({ ...updatedTrain });
|
||||
|
||||
return acc;
|
||||
}, [] as Train[]);
|
||||
|
||||
state.trainCount = state.trainList.filter(train => train.online).length;
|
||||
state.dataConnectionStatus = DataStatus.Loaded;
|
||||
},
|
||||
|
||||
UPDATE_TIMETABLES(state, timetableList: Timetable[]) {
|
||||
state.stationList = state.stationList.map(station => {
|
||||
const stationName = station.stationName.toLowerCase();
|
||||
|
||||
const scheduledTrains: Station["scheduledTrains"] = timetableList.reduce((acc: Station["scheduledTrains"], timetable: Timetable) => {
|
||||
if (!timetable.followingSceneries.includes(station.stationHash)) return acc;
|
||||
|
||||
const stopInfoIndex = timetable.followingStops.findIndex(stop => {
|
||||
const stopName = stop.stopNameRAW.toLowerCase();
|
||||
|
||||
if (stationName === stopName) return true;
|
||||
if (stopName.includes(stationName) && !stop.stopName.includes("po.") && !stop.stopName.includes("podg.")) return true;
|
||||
if (stationName.includes(stopName) && !stop.stopName.includes("po.") && !stop.stopName.includes("podg.")) return true;
|
||||
if (stopName.includes("podg.") && stopName.split(", podg.")[0] && stationName.includes(stopName.split(", podg.")[0])) return true;
|
||||
|
||||
if (station.stops && station.stops.includes(stop.stopNameRAW)) return true;
|
||||
|
||||
return false;
|
||||
});
|
||||
|
||||
if (stopInfoIndex == -1) return acc;
|
||||
|
||||
const trainStop = timetable.followingStops[stopInfoIndex];
|
||||
const trainStopStatus = getTrainStopStatus(trainStop, timetable, station);
|
||||
|
||||
acc.push({
|
||||
trainNo: timetable.trainNo,
|
||||
driverName: timetable.driverName,
|
||||
driverId: timetable.driverId,
|
||||
currentStationName: timetable.currentStationName,
|
||||
currentStationHash: timetable.currentStationHash,
|
||||
category: timetable.category,
|
||||
beginsAt: timetable.followingStops[0].stopNameRAW,
|
||||
terminatesAt: timetable.followingStops[timetable.followingStops.length - 1].stopNameRAW,
|
||||
nearestStop: "",
|
||||
stopInfo: trainStop,
|
||||
stopLabel: trainStopStatus.stopLabel,
|
||||
stopStatus: trainStopStatus.stopStatus,
|
||||
stopStatusID: trainStopStatus.stopStatusID
|
||||
});
|
||||
|
||||
return acc;
|
||||
}, []);
|
||||
|
||||
if (station.checkpoints) {
|
||||
station.checkpoints.forEach(cp => (cp.scheduledTrains.length = 0));
|
||||
|
||||
for (const checkpoint of station.checkpoints) {
|
||||
timetableList.forEach(timetable => {
|
||||
timetable.followingStops
|
||||
.filter(trainStop => trainStop.stopNameRAW.toLowerCase() === checkpoint.checkpointName.toLowerCase())
|
||||
.forEach(trainStop => {
|
||||
const trainStopStatus = getTrainStopStatus(trainStop, timetable, station);
|
||||
|
||||
checkpoint.scheduledTrains.push({
|
||||
trainNo: timetable.trainNo,
|
||||
driverName: timetable.driverName,
|
||||
driverId: timetable.driverId,
|
||||
currentStationName: timetable.currentStationName,
|
||||
currentStationHash: timetable.currentStationHash,
|
||||
category: timetable.category,
|
||||
beginsAt: timetable.followingStops[0].stopNameRAW,
|
||||
terminatesAt: timetable.followingStops[timetable.followingStops.length - 1].stopNameRAW,
|
||||
nearestStop: "",
|
||||
stopInfo: trainStop,
|
||||
stopLabel: trainStopStatus.stopLabel,
|
||||
stopStatus: trainStopStatus.stopStatus,
|
||||
stopStatusID: trainStopStatus.stopStatusID
|
||||
});
|
||||
});
|
||||
});
|
||||
}
|
||||
}
|
||||
|
||||
return { ...station, scheduledTrains };
|
||||
});
|
||||
|
||||
state.trainList = state.trainList.reduce((acc, train) => {
|
||||
const timetableData = timetableList.find(data => data && data.trainNo === train.trainNo);
|
||||
|
||||
const trainStopData = state.stationList
|
||||
.find(station => station.stationName === train.currentStationName)
|
||||
?.scheduledTrains.find(stationTrain => stationTrain.trainNo === train.trainNo);
|
||||
|
||||
acc.push({ ...train, timetableData, stopStatus: trainStopData?.stopStatus || "", stopLabel: trainStopData?.stopLabel || "" });
|
||||
|
||||
return acc;
|
||||
}, [] as Train[]);
|
||||
|
||||
state.timetableDataStatus = DataStatus.Loaded;
|
||||
}
|
||||
}
|
||||
})
|
||||
|
||||
export function useStore(): Store<State> {
|
||||
return baseUseStore(key)
|
||||
/* eslint-disable */
|
||||
|
||||
import { InjectionKey } from 'vue'
|
||||
import { createStore, useStore as baseUseStore, Store } from 'vuex'
|
||||
|
||||
import axios from "axios";
|
||||
|
||||
import JSONStationData from "@/data/stationData.json";
|
||||
|
||||
import Station from "@/scripts/interfaces/Station";
|
||||
import Train from "@/scripts/interfaces/Train";
|
||||
import TrainStop from "@/scripts/interfaces/TrainStop";
|
||||
|
||||
import { StoreData } from "@/scripts/interfaces/StoreData";
|
||||
|
||||
import TimetableAPIData from '@/scripts/interfaces/api/TimetableAPIData';
|
||||
import StationAPIData from '@/scripts/interfaces/api/StationAPIData';
|
||||
import TrainAPIData from '@/scripts/interfaces/api/TrainAPIData';
|
||||
import Timetable from '@/scripts/interfaces/Timetable';
|
||||
|
||||
import { ACTIONS, MUTATIONS } from "@/constants/storeConstants";
|
||||
import { DataStatus } from "@/scripts/enums/DataStatus";
|
||||
|
||||
import { getLocoURL, getStatusID, getStatusTimestamp, getTimestamp, getTrainStopStatus, parseSpawns, timestampToString } from "@/scripts/utils/storeUtils";
|
||||
import { URLs } from '@/scripts/utils/apiURLs';
|
||||
|
||||
|
||||
export interface State {
|
||||
stationList: Station[],
|
||||
trainList: Train[],
|
||||
|
||||
trainCount: number;
|
||||
stationCount: number;
|
||||
|
||||
dataConnectionStatus: DataStatus;
|
||||
sceneryDataStatus: DataStatus;
|
||||
timetableDataStatus: DataStatus;
|
||||
|
||||
listenerLaunched: boolean;
|
||||
}
|
||||
|
||||
export const key: InjectionKey<Store<State>> = Symbol()
|
||||
|
||||
export const store = createStore<State>({
|
||||
state: () => ({
|
||||
stationList: [],
|
||||
trainList: [],
|
||||
|
||||
trainCount: 0,
|
||||
stationCount: 0,
|
||||
|
||||
dataConnectionStatus: DataStatus.Loading,
|
||||
sceneryDataStatus: DataStatus.Loading,
|
||||
timetableDataStatus: DataStatus.Loading,
|
||||
|
||||
listenerLaunched: false
|
||||
}),
|
||||
|
||||
getters: {
|
||||
stationList: (state) => state.stationList,
|
||||
trainList: (state) => state.trainList,
|
||||
allData: (state): StoreData => ({
|
||||
stationList: state.stationList,
|
||||
trainList: state.trainList,
|
||||
|
||||
activeTrainCount: state.trainCount,
|
||||
activeStationCount: state.stationCount,
|
||||
|
||||
dataConnectionStatus: state.dataConnectionStatus,
|
||||
timetableDataStatus: state.timetableDataStatus
|
||||
}),
|
||||
timetableDataStatus: (state): DataStatus => state.timetableDataStatus,
|
||||
sceneryDataStatus: (state): DataStatus => state.sceneryDataStatus,
|
||||
dataStatus: (state): DataStatus => state.dataConnectionStatus
|
||||
},
|
||||
|
||||
actions: {
|
||||
async synchronizeData({ commit, dispatch, state }) {
|
||||
if(state.listenerLaunched) return;
|
||||
|
||||
commit(MUTATIONS.SET_SCENERY_DATA);
|
||||
commit(MUTATIONS.SET_SCENERY_DATA_STATUS, DataStatus.Loaded);
|
||||
|
||||
dispatch(ACTIONS.fetchOnlineData);
|
||||
|
||||
setInterval(() => dispatch(ACTIONS.fetchOnlineData), 30000);
|
||||
|
||||
},
|
||||
|
||||
async fetchOnlineData({ commit, dispatch }) {
|
||||
Promise.all([axios.get(URLs.stations), axios.get(URLs.trains), axios.get(URLs.dispatchers)])
|
||||
.then(async response => {
|
||||
const onlineStationsData: StationAPIData[] = response[0].data.message;
|
||||
const onlineTrainsData: TrainAPIData[] = await response[1].data.message;
|
||||
const onlineDispatchersData: string[][] = await response[2].data.message;
|
||||
|
||||
const updatedStationList = onlineStationsData.reduce((acc, station) => {
|
||||
if (station.region !== "eu" || !station.isOnline) return acc;
|
||||
|
||||
const stationStatus = onlineDispatchersData.find((status: string[]) => status[0] == station.stationHash && status[1] == "eu");
|
||||
|
||||
const statusTimestamp = getStatusTimestamp(stationStatus);
|
||||
const statusID = getStatusID(stationStatus);
|
||||
|
||||
const stationTrains = onlineTrainsData
|
||||
.filter(train => train.region === "eu" && train.isOnline && train.station.stationName === station.stationName)
|
||||
.map(train => ({ driverName: train.driverName, trainNo: train.trainNo }));
|
||||
|
||||
acc.push({
|
||||
stationName: station.stationName,
|
||||
stationHash: station.stationHash,
|
||||
maxUsers: station.maxUsers,
|
||||
currentUsers: station.currentUsers,
|
||||
spawns: parseSpawns(station.spawnString),
|
||||
dispatcherName: station.dispatcherName,
|
||||
dispatcherRate: station.dispatcherRate,
|
||||
dispatcherId: station.dispatcherId,
|
||||
dispatcherExp: station.dispatcherExp,
|
||||
dispatcherIsSupporter: station.dispatcherIsSupporter,
|
||||
stationTrains,
|
||||
statusTimestamp,
|
||||
statusID,
|
||||
statusTimeString: timestampToString(statusTimestamp)
|
||||
});
|
||||
|
||||
return acc;
|
||||
}, [] as any);
|
||||
|
||||
const updatedTrainList = await Promise.all(
|
||||
onlineTrainsData
|
||||
.filter(train => train.region === "eu")
|
||||
.map(async train => {
|
||||
const locoType = train.dataCon.split(";") ? train.dataCon.split(";")[0] : train.dataCon;
|
||||
|
||||
return {
|
||||
trainNo: train.trainNo,
|
||||
mass: train.dataMass,
|
||||
length: train.dataLength,
|
||||
speed: train.dataSpeed,
|
||||
distance: train.dataDistance,
|
||||
signal: train.dataSignal,
|
||||
online: train.isOnline,
|
||||
driverId: train.driverId,
|
||||
driverName: train.driverName,
|
||||
currentStationName: train.station.stationName,
|
||||
currentStationHash: train.station.stationHash,
|
||||
connectedTrack: train.dataSceneryConnection,
|
||||
locoType,
|
||||
locoURL: getLocoURL(locoType),
|
||||
cars: train.dataCon.split(";").filter((train, i) => i > 0) || []
|
||||
};
|
||||
})
|
||||
);
|
||||
|
||||
// Pass reduced lists to mutations
|
||||
commit(MUTATIONS.UPDATE_STATIONS, updatedStationList);
|
||||
commit(MUTATIONS.UPDATE_TRAINS, updatedTrainList);
|
||||
|
||||
dispatch(ACTIONS.fetchTimetableData);
|
||||
})
|
||||
.catch(() => {
|
||||
commit(MUTATIONS.SET_DATA_CONNECTION_STATUS, DataStatus.Error);
|
||||
});
|
||||
},
|
||||
|
||||
async fetchTimetableData({ commit }) {
|
||||
const reducedList = this.state.trainList.reduce(async (acc: Promise<Timetable[]>, train: Train) => {
|
||||
const timetable: TimetableAPIData = await (await axios.get(URLs.getTimetableURL(train.trainNo))).data.message;
|
||||
const trainInfo = timetable.trainInfo;
|
||||
|
||||
if (!timetable || !trainInfo) return acc;
|
||||
|
||||
const followingStops: TrainStop[] = timetable.stopPoints.reduce((stopsAcc: TrainStop[], point) => {
|
||||
if (point.pointNameRAW.toLowerCase().includes("sbl")) return stopsAcc;
|
||||
|
||||
const arrivalTimestamp = getTimestamp(point.arrivalTime);
|
||||
const arrivalRealTimestamp = getTimestamp(point.arrivalRealTime);
|
||||
|
||||
const departureTimestamp = getTimestamp(point.departureTime);
|
||||
const departureRealTimestamp = getTimestamp(point.departureRealTime);
|
||||
|
||||
stopsAcc.push({
|
||||
stopName: point.pointName,
|
||||
stopNameRAW: point.pointNameRAW,
|
||||
stopType: point.pointStopType,
|
||||
stopDistance: point.pointDistance,
|
||||
|
||||
mainStop: point.pointName.includes("strong"),
|
||||
|
||||
arrivalLine: point.arrivalLine,
|
||||
arrivalTimeString: timestampToString(arrivalTimestamp),
|
||||
arrivalTimestamp: arrivalTimestamp,
|
||||
arrivalRealTimeString: timestampToString(arrivalRealTimestamp),
|
||||
arrivalRealTimestamp: arrivalRealTimestamp,
|
||||
arrivalDelay: point.arrivalDelay,
|
||||
|
||||
departureLine: point.departureLine,
|
||||
departureTimeString: timestampToString(departureTimestamp),
|
||||
departureTimestamp: departureTimestamp,
|
||||
departureRealTimeString: timestampToString(departureRealTimestamp),
|
||||
departureRealTimestamp: departureRealTimestamp,
|
||||
departureDelay: point.departureDelay,
|
||||
|
||||
beginsHere: arrivalTimestamp == 0,
|
||||
terminatesHere: departureTimestamp == 0,
|
||||
|
||||
confirmed: point.confirmed,
|
||||
stopped: point.isStopped,
|
||||
stopTime: point.pointStopTime
|
||||
});
|
||||
|
||||
return stopsAcc;
|
||||
}, []);
|
||||
|
||||
(await acc).push({
|
||||
trainNo: train.trainNo,
|
||||
driverName: train.driverName,
|
||||
driverId: train.driverId,
|
||||
currentStationName: train.currentStationName,
|
||||
currentStationHash: train.currentStationHash,
|
||||
timetableId: trainInfo.timetableId,
|
||||
category: trainInfo.trainCategoryCode,
|
||||
route: trainInfo.route,
|
||||
TWR: trainInfo.twr,
|
||||
SKR: trainInfo.skr,
|
||||
routeDistance: timetable.stopPoints[timetable.stopPoints.length - 1].pointDistance,
|
||||
followingStops,
|
||||
followingSceneries: trainInfo.sceneries
|
||||
});
|
||||
|
||||
return acc;
|
||||
}, Promise.resolve([]));
|
||||
|
||||
commit(MUTATIONS.UPDATE_TIMETABLES, (await reducedList));
|
||||
}
|
||||
|
||||
},
|
||||
|
||||
mutations: {
|
||||
SET_SCENERY_DATA(state) {
|
||||
state.stationList = JSONStationData.map(station => ({
|
||||
stationName: station[0] as string,
|
||||
stationURL: station[1] as string,
|
||||
stationLines: station[2] as string,
|
||||
stationProject: station[3] as string,
|
||||
reqLevel: station[4] as string,
|
||||
supportersOnly: station[5] == "TAK",
|
||||
signalType: station[6] as string,
|
||||
controlType: station[7] as string,
|
||||
SBL: station[8] as string,
|
||||
TWB: station[9] as string,
|
||||
routes: {
|
||||
oneWay: {
|
||||
catenary: station[10] as number,
|
||||
noCatenary: station[11] as number
|
||||
},
|
||||
twoWay: {
|
||||
catenary: station[12] as number,
|
||||
noCatenary: station[13] as number
|
||||
}
|
||||
},
|
||||
checkpoints: station[14] ? (station[14] as string[]).map(sub => ({ checkpointName: sub, scheduledTrains: [] })) : null,
|
||||
stops: station[15] as string[],
|
||||
|
||||
default: station[16] as boolean,
|
||||
nonPublic: station[17] as boolean,
|
||||
unavailable: station[18] as boolean,
|
||||
|
||||
stationHash: "",
|
||||
maxUsers: 0,
|
||||
currentUsers: 0,
|
||||
dispatcherName: "",
|
||||
dispatcherRate: 0,
|
||||
dispatcherExp: -1,
|
||||
dispatcherId: 0,
|
||||
dispatcherIsSupporter: false,
|
||||
online: false,
|
||||
statusTimestamp: -3,
|
||||
statusID: "free",
|
||||
statusTimeString: "",
|
||||
stationTrains: [],
|
||||
scheduledTrains: [],
|
||||
spawns: []
|
||||
}));
|
||||
},
|
||||
|
||||
SET_SCENERY_DATA_STATUS(state, status: DataStatus) {
|
||||
state.sceneryDataStatus = status;
|
||||
},
|
||||
|
||||
SET_DATA_CONNECTION_STATUS(state, status: DataStatus) {
|
||||
state.dataConnectionStatus = status;
|
||||
},
|
||||
|
||||
UPDATE_STATIONS(state, updatedStationList: any[]) {
|
||||
state.stationList = state.stationList.reduce((acc: Station[], station) => {
|
||||
const onlineStationData = updatedStationList.find(updatedStation => updatedStation.stationName === station.stationName);
|
||||
const listedStationData = JSONStationData.find(data => data[0] === station.stationName);
|
||||
|
||||
if (onlineStationData)
|
||||
acc.push({
|
||||
...station,
|
||||
...onlineStationData,
|
||||
online: true
|
||||
});
|
||||
else if (listedStationData)
|
||||
acc.push({
|
||||
...station,
|
||||
stationProject: "",
|
||||
stationHash: "",
|
||||
maxUsers: 0,
|
||||
currentUsers: 0,
|
||||
dispatcherName: "",
|
||||
dispatcherRate: 0,
|
||||
dispatcherExp: -1,
|
||||
dispatcherId: 0,
|
||||
dispatcherIsSupporter: false,
|
||||
online: false,
|
||||
statusID: "free",
|
||||
statusTimestamp: -3,
|
||||
statusTimeString: "",
|
||||
stationTrains: [],
|
||||
scheduledTrains: [],
|
||||
checkpoints: null
|
||||
});
|
||||
|
||||
return acc;
|
||||
}, [] as Station[]);
|
||||
|
||||
updatedStationList
|
||||
.filter(uStation => !state.stationList.some(station => uStation.stationName === station.stationName))
|
||||
.forEach(uStation => {
|
||||
state.stationList.push({
|
||||
...uStation,
|
||||
scheduledTrains: [],
|
||||
stationTrains: uStation.stationTrains || [],
|
||||
subStations: [],
|
||||
online: true,
|
||||
reqLevel: "-1",
|
||||
nonPublic: true
|
||||
});
|
||||
});
|
||||
|
||||
state.stationCount = state.stationList.filter(station => station.online).length;
|
||||
state.dataConnectionStatus = DataStatus.Loaded;
|
||||
},
|
||||
|
||||
UPDATE_TRAINS(state, updatedTrainList: any[]) {
|
||||
state.trainList = updatedTrainList.reduce((acc, updatedTrain) => {
|
||||
const trainData = state.trainList.find(train => train.trainNo === updatedTrain.trainNo);
|
||||
|
||||
if (trainData) acc.push({ ...trainData, ...updatedTrain });
|
||||
else acc.push({ ...updatedTrain });
|
||||
|
||||
return acc;
|
||||
}, [] as Train[]);
|
||||
|
||||
state.trainCount = state.trainList.filter(train => train.online).length;
|
||||
state.dataConnectionStatus = DataStatus.Loaded;
|
||||
},
|
||||
|
||||
UPDATE_TIMETABLES(state, timetableList: Timetable[]) {
|
||||
state.stationList = state.stationList.map(station => {
|
||||
const stationName = station.stationName.toLowerCase();
|
||||
|
||||
const scheduledTrains: Station["scheduledTrains"] = timetableList.reduce((acc: Station["scheduledTrains"], timetable: Timetable) => {
|
||||
if (!timetable.followingSceneries.includes(station.stationHash)) return acc;
|
||||
|
||||
const stopInfoIndex = timetable.followingStops.findIndex(stop => {
|
||||
const stopName = stop.stopNameRAW.toLowerCase();
|
||||
|
||||
if (stationName === stopName) return true;
|
||||
if (stopName.includes(stationName) && !stop.stopName.includes("po.") && !stop.stopName.includes("podg.")) return true;
|
||||
if (stationName.includes(stopName) && !stop.stopName.includes("po.") && !stop.stopName.includes("podg.")) return true;
|
||||
if (stopName.includes("podg.") && stopName.split(", podg.")[0] && stationName.includes(stopName.split(", podg.")[0])) return true;
|
||||
|
||||
if (station.stops && station.stops.includes(stop.stopNameRAW)) return true;
|
||||
|
||||
return false;
|
||||
});
|
||||
|
||||
if (stopInfoIndex == -1) return acc;
|
||||
|
||||
const trainStop = timetable.followingStops[stopInfoIndex];
|
||||
const trainStopStatus = getTrainStopStatus(trainStop, timetable, station);
|
||||
|
||||
acc.push({
|
||||
trainNo: timetable.trainNo,
|
||||
driverName: timetable.driverName,
|
||||
driverId: timetable.driverId,
|
||||
currentStationName: timetable.currentStationName,
|
||||
currentStationHash: timetable.currentStationHash,
|
||||
category: timetable.category,
|
||||
beginsAt: timetable.followingStops[0].stopNameRAW,
|
||||
terminatesAt: timetable.followingStops[timetable.followingStops.length - 1].stopNameRAW,
|
||||
nearestStop: "",
|
||||
stopInfo: trainStop,
|
||||
stopLabel: trainStopStatus.stopLabel,
|
||||
stopStatus: trainStopStatus.stopStatus,
|
||||
stopStatusID: trainStopStatus.stopStatusID
|
||||
});
|
||||
|
||||
return acc;
|
||||
}, []);
|
||||
|
||||
if (station.checkpoints) {
|
||||
station.checkpoints.forEach(cp => (cp.scheduledTrains.length = 0));
|
||||
|
||||
for (const checkpoint of station.checkpoints) {
|
||||
timetableList.forEach(timetable => {
|
||||
timetable.followingStops
|
||||
.filter(trainStop => trainStop.stopNameRAW.toLowerCase() === checkpoint.checkpointName.toLowerCase())
|
||||
.forEach(trainStop => {
|
||||
const trainStopStatus = getTrainStopStatus(trainStop, timetable, station);
|
||||
|
||||
checkpoint.scheduledTrains.push({
|
||||
trainNo: timetable.trainNo,
|
||||
driverName: timetable.driverName,
|
||||
driverId: timetable.driverId,
|
||||
currentStationName: timetable.currentStationName,
|
||||
currentStationHash: timetable.currentStationHash,
|
||||
category: timetable.category,
|
||||
beginsAt: timetable.followingStops[0].stopNameRAW,
|
||||
terminatesAt: timetable.followingStops[timetable.followingStops.length - 1].stopNameRAW,
|
||||
nearestStop: "",
|
||||
stopInfo: trainStop,
|
||||
stopLabel: trainStopStatus.stopLabel,
|
||||
stopStatus: trainStopStatus.stopStatus,
|
||||
stopStatusID: trainStopStatus.stopStatusID
|
||||
});
|
||||
});
|
||||
});
|
||||
}
|
||||
}
|
||||
|
||||
return { ...station, scheduledTrains };
|
||||
});
|
||||
|
||||
state.trainList = state.trainList.reduce((acc, train) => {
|
||||
const timetableData = timetableList.find(data => data && data.trainNo === train.trainNo);
|
||||
|
||||
const trainStopData = state.stationList
|
||||
.find(station => station.stationName === train.currentStationName)
|
||||
?.scheduledTrains.find(stationTrain => stationTrain.trainNo === train.trainNo);
|
||||
|
||||
acc.push({ ...train, timetableData, stopStatus: trainStopData?.stopStatus || "", stopLabel: trainStopData?.stopLabel || "" });
|
||||
|
||||
return acc;
|
||||
}, [] as Train[]);
|
||||
|
||||
state.timetableDataStatus = DataStatus.Loaded;
|
||||
}
|
||||
}
|
||||
})
|
||||
|
||||
export function useStore(): Store<State> {
|
||||
return baseUseStore(key)
|
||||
}
|
||||
@@ -1,18 +1,18 @@
|
||||
@mixin smallScreen() {
|
||||
@media only screen and (max-width: 700px) {
|
||||
@content;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@mixin midScreen() {
|
||||
@media only screen and (max-width: 950px) {
|
||||
@content;
|
||||
}
|
||||
}
|
||||
|
||||
@mixin bigScreen() {
|
||||
@media only screen and (min-width: 2000px) {
|
||||
@content;
|
||||
}
|
||||
@mixin smallScreen() {
|
||||
@media only screen and (max-width: 700px) {
|
||||
@content;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@mixin midScreen() {
|
||||
@media only screen and (max-width: 950px) {
|
||||
@content;
|
||||
}
|
||||
}
|
||||
|
||||
@mixin bigScreen() {
|
||||
@media only screen and (min-width: 2000px) {
|
||||
@content;
|
||||
}
|
||||
}
|
||||
@@ -1,17 +1,17 @@
|
||||
$primaryCol: #2c2c2c;
|
||||
$secondaryCol: #01e733;
|
||||
|
||||
$bgCol: #4d4d4d;
|
||||
$bgLigtherCol: #555;
|
||||
|
||||
$errorCol: #ff1919;
|
||||
$warningCol: #ffe15b;
|
||||
|
||||
$accentCol: #ffc014;
|
||||
$accent2Col: #ff3d5d;
|
||||
|
||||
$skr: #ff5100;
|
||||
$twr: #ffbb00;
|
||||
|
||||
$animDuration: 150ms;
|
||||
$primaryCol: #2c2c2c;
|
||||
$secondaryCol: #01e733;
|
||||
|
||||
$bgCol: #4d4d4d;
|
||||
$bgLigtherCol: #555;
|
||||
|
||||
$errorCol: #ff1919;
|
||||
$warningCol: #ffe15b;
|
||||
|
||||
$accentCol: #ffc014;
|
||||
$accent2Col: #ff3d5d;
|
||||
|
||||
$skr: #ff5100;
|
||||
$twr: #ffbb00;
|
||||
|
||||
$animDuration: 150ms;
|
||||
$animType: ease-in-out;
|
||||
@@ -1,14 +1,14 @@
|
||||
import { ComponentCustomProperties } from 'vue'
|
||||
import { Store } from 'vuex'
|
||||
|
||||
declare module '@vue/runtime-core' {
|
||||
// declare your own store states
|
||||
interface State {
|
||||
count: number
|
||||
}
|
||||
|
||||
// provide typings for `this.$store`
|
||||
interface ComponentCustomProperties {
|
||||
$store: Store<State>
|
||||
}
|
||||
import { ComponentCustomProperties } from 'vue'
|
||||
import { Store } from 'vuex'
|
||||
|
||||
declare module '@vue/runtime-core' {
|
||||
// declare your own store states
|
||||
interface State {
|
||||
count: number
|
||||
}
|
||||
|
||||
// provide typings for `this.$store`
|
||||
interface ComponentCustomProperties {
|
||||
$store: Store<State>
|
||||
}
|
||||
}
|
||||