mirror of
https://github.com/Kvan7/Exiled-Exchange-2.git
synced 2025-11-17 06:56:15 +00:00
Compare commits
6 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
7c62289019 | ||
|
|
7abeb85016 | ||
|
|
a6f6eb1d4f | ||
|
|
5a34b0f5f8 | ||
|
|
72c3a1a857 | ||
|
|
3732270de9 |
6
.github/ISSUE_TEMPLATE/bug-report.yml
vendored
6
.github/ISSUE_TEMPLATE/bug-report.yml
vendored
@@ -59,13 +59,13 @@ body:
|
||||
label: Version
|
||||
description: What version of EE2 are you running? You can see this in Settings -> About
|
||||
options:
|
||||
- 0.12.2
|
||||
- 0.12.1
|
||||
- 0.12.0
|
||||
- 0.11.x
|
||||
- 0.10.x
|
||||
- 0.9.x
|
||||
- 0.8.x
|
||||
- Other
|
||||
- Change me
|
||||
default: 5
|
||||
validations:
|
||||
required: true
|
||||
- type: textarea
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
#  Exiled Exchange 2
|
||||
|
||||

|
||||

|
||||

|
||||

|
||||
|
||||
|
||||
@@ -20,7 +20,7 @@ export default defineConfig({
|
||||
},
|
||||
themeConfig: {
|
||||
// logo: 'TODO', https://github.com/vuejs/vitepress/issues/1401
|
||||
appVersion: '0.12.1',
|
||||
appVersion: '0.12.2',
|
||||
github: {
|
||||
releasesUrl: 'https://github.com/Kvan7/Exiled-Exchange-2/releases'
|
||||
},
|
||||
|
||||
@@ -12,8 +12,7 @@ files:
|
||||
extraMetadata:
|
||||
main: "main.js"
|
||||
nsis:
|
||||
oneClick: false
|
||||
allowToChangeInstallationDirectory: true
|
||||
oneClick: true
|
||||
win:
|
||||
target:
|
||||
- "nsis"
|
||||
|
||||
4
main/package-lock.json
generated
4
main/package-lock.json
generated
@@ -1,12 +1,12 @@
|
||||
{
|
||||
"name": "exiled-exchange-2",
|
||||
"version": "0.12.1",
|
||||
"version": "0.12.2",
|
||||
"lockfileVersion": 3,
|
||||
"requires": true,
|
||||
"packages": {
|
||||
"": {
|
||||
"name": "exiled-exchange-2",
|
||||
"version": "0.12.1",
|
||||
"version": "0.12.2",
|
||||
"dependencies": {
|
||||
"electron-overlay-window": "3.3.1",
|
||||
"uiohook-napi": "1.5.x"
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
{
|
||||
"name": "exiled-exchange-2",
|
||||
"version": "0.12.1",
|
||||
"version": "0.12.2",
|
||||
"private": true,
|
||||
"scripts": {
|
||||
"dev": "node build/script.mjs",
|
||||
|
||||
@@ -321,7 +321,9 @@
|
||||
"getting_price_from": "來自 poe.ninja \u2026",
|
||||
"you_have": "您有",
|
||||
"stack": "堆疊",
|
||||
"fix_complex_query": "請在設定中禁用\"偽屬性\"選項,或通過內置瀏覽器登錄。"
|
||||
"fix_complex_query": "請在設定中禁用\"偽屬性\"選項,或通過內置瀏覽器登錄。",
|
||||
"likely_price_fixed": "Mostly non-standard currency: ",
|
||||
"filter_exalt_divine": "Filter by Exalt/Divine"
|
||||
},
|
||||
"settings": {
|
||||
"title": "設置 - 流亡交易所 2",
|
||||
@@ -439,4 +441,4 @@
|
||||
"tip_29": "你可以在設定中添加自定義聊天命令快捷鍵。",
|
||||
"tip_30": "我們不談論 Exiled Exchange 1。"
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -303,7 +303,9 @@
|
||||
"results_warn_tooltip": "Aktivieren Sie nur 'Exalted' im Online-Filter. Sie können diese Warnung in den Einstellungen deaktivieren.",
|
||||
"results_warn_title": "Preis wahrscheinlich zu hoch",
|
||||
"results_warn_message": "Handelsseite blendet Ergebnisse zwischen {0} und {1} Ex aus",
|
||||
"fix_complex_query": "Deaktiviere \"Pseudo-Mods verwenden\" in den Einstellungen oder melde dich mit dem integrierten Browser an"
|
||||
"fix_complex_query": "Deaktiviere \"Pseudo-Mods verwenden\" in den Einstellungen oder melde dich mit dem integrierten Browser an",
|
||||
"likely_price_fixed": "Mostly non-standard currency: ",
|
||||
"filter_exalt_divine": "Filter by Exalt/Divine"
|
||||
},
|
||||
"settings": {
|
||||
"title": "Einstellungen - Exiled Exchange 2",
|
||||
@@ -428,4 +430,4 @@
|
||||
"tip_29": "Du kannst in den Einstellungen benutzerdefinierte Chat-Befehl-Hotkeys hinzufügen.",
|
||||
"tip_30": "Wir reden nicht über Exiled Exchange 1."
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -330,7 +330,9 @@
|
||||
"results_warn_tooltip": "Enable Exalted Only in Online Filter. You can disable this alert in settings.",
|
||||
"results_warn_title": "Price likely too high",
|
||||
"results_warn_message": "Trade site hiding results between {0} and {1} ex",
|
||||
"fix_complex_query": "Disable \"Use pseudo mods\" in settings or log in with builtin browser"
|
||||
"fix_complex_query": "Disable \"Use pseudo mods\" in settings or log in with builtin browser",
|
||||
"likely_price_fixed": "Mostly non-standard currency: ",
|
||||
"filter_exalt_divine": "Filter by Exalt/Divine"
|
||||
},
|
||||
"settings": {
|
||||
"title": "Settings - Exiled Exchange 2",
|
||||
@@ -455,4 +457,4 @@
|
||||
"tip_29": "You can add custom chat command hotkeys in the settings",
|
||||
"tip_30": "We don't talk about Exiled Exchange 1"
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -330,7 +330,9 @@
|
||||
"results_warn_tooltip": "Habilitar solo Exaltados en el Filtro en línea. Puedes desactivar esta alerta en configuración.",
|
||||
"results_warn_title": "Precio probablemente demasiado alto",
|
||||
"results_warn_message": "El sitio de comercio oculta resultados entre {0} y {1} ex",
|
||||
"fix_complex_query": "Disable \"Use pseudo mods\" in settings or log in with builtin browser"
|
||||
"fix_complex_query": "Disable \"Use pseudo mods\" in settings or log in with builtin browser",
|
||||
"likely_price_fixed": "Mostly non-standard currency: ",
|
||||
"filter_exalt_divine": "Filter by Exalt/Divine"
|
||||
},
|
||||
"settings": {
|
||||
"title": "Configuración - Exiled Exchange 2",
|
||||
@@ -451,4 +453,4 @@
|
||||
"tip_29": "You can add custom chat command hotkeys in the settings",
|
||||
"tip_30": "We don't talk about Exiled Exchange 1"
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -321,7 +321,9 @@
|
||||
"getting_price_from": "poe.ninjaから\u2026",
|
||||
"you_have": "既に所持しています",
|
||||
"stack": "スタック",
|
||||
"fix_complex_query": "設定で\"Use pseudo mods\"を無効にするか、組み込みブラウザでログインしてください"
|
||||
"fix_complex_query": "設定で\"Use pseudo mods\"を無効にするか、組み込みブラウザでログインしてください",
|
||||
"likely_price_fixed": "Mostly non-standard currency: ",
|
||||
"filter_exalt_divine": "Filter by Exalt/Divine"
|
||||
},
|
||||
"settings": {
|
||||
"title": "設定 - Exiled Exchange 2",
|
||||
@@ -439,4 +441,4 @@
|
||||
"tip_29": "設定でカスタムチャットコマンドのホットキーを追加できます",
|
||||
"tip_30": "Exiled Exchange 1のことは話しません"
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -318,7 +318,9 @@
|
||||
"getting_price_from": "from poe.ninja \u2026",
|
||||
"you_have": "가진 갯수",
|
||||
"stack": "스택",
|
||||
"fix_complex_query": "Disable \"Use pseudo mods\" in settings or log in with builtin browser"
|
||||
"fix_complex_query": "Disable \"Use pseudo mods\" in settings or log in with builtin browser",
|
||||
"likely_price_fixed": "Mostly non-standard currency: ",
|
||||
"filter_exalt_divine": "Filter by Exalt/Divine"
|
||||
},
|
||||
"settings": {
|
||||
"title": "세팅 - Exiled Exchange 2",
|
||||
@@ -431,4 +433,4 @@
|
||||
"tip_29": "세팅에서 채팅 명령어를 추가할 수 있습니다.",
|
||||
"tip_30": "Exiled Exchange 1과 관련된 내용이 아닙니다."
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -318,7 +318,9 @@
|
||||
"stack": "Pilha",
|
||||
"results_warn_tooltip": "Habilitar apenas Exaltados no Filtro online. Você pode desativar este alerta nas configurações.",
|
||||
"results_warn_title": "Preço provavelmente muito alto",
|
||||
"results_warn_message": "O site de comércio oculta resultados entre {0} e {1} ex"
|
||||
"results_warn_message": "O site de comércio oculta resultados entre {0} e {1} ex",
|
||||
"likely_price_fixed": "Mostly non-standard currency: ",
|
||||
"filter_exalt_divine": "Filter by Exalt/Divine"
|
||||
},
|
||||
"settings": {
|
||||
"title": "Configurações - Exiled Exchange 2",
|
||||
@@ -389,4 +391,4 @@
|
||||
"parse_error3": "(Possivelmente um novo termo ou palavra modificada do poe1)",
|
||||
"bulk_exchange": "As taxas de troca em lote ainda não foram implementadas"
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -336,7 +336,9 @@
|
||||
"getting_price_from": "с poe.ninja \u2026",
|
||||
"you_have": "В наличии",
|
||||
"stack": "Стак",
|
||||
"fix_complex_query": "Отключите \"Use pseudo mods\" в настройках или залогиньтесь во встроенном браузере"
|
||||
"fix_complex_query": "Отключите \"Use pseudo mods\" в настройках или залогиньтесь во встроенном браузере",
|
||||
"likely_price_fixed": "Mostly non-standard currency: ",
|
||||
"filter_exalt_divine": "Filter by Exalt/Divine"
|
||||
},
|
||||
"settings": {
|
||||
"title": "Настройки - Exiled Exchange 2",
|
||||
@@ -454,4 +456,4 @@
|
||||
"tip_29": "Вы можете добавить горячие клавиши для пользовательских команд чата в настройках",
|
||||
"tip_30": "Мы не говорим о Exiled Exchange 1"
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -168,7 +168,8 @@ export function initUiModFilters(
|
||||
item.rarity === ItemRarity.Normal ? 100 : opts.searchStatRange,
|
||||
statsByType: item.statsByType.map((calc) => {
|
||||
if (
|
||||
calc.type === ModifierType.Fractured &&
|
||||
(calc.type === ModifierType.Fractured ||
|
||||
calc.type === ModifierType.Desecrated) &&
|
||||
calc.stat.trade.ids[ModifierType.Explicit]
|
||||
) {
|
||||
return { ...calc, type: ModifierType.Explicit };
|
||||
@@ -188,10 +189,16 @@ export function initUiModFilters(
|
||||
|
||||
if (itemIsModifiable(item)) {
|
||||
ctx.statsByType = ctx.statsByType.filter(
|
||||
(mod) => mod.type !== ModifierType.Fractured,
|
||||
(mod) =>
|
||||
mod.type !== ModifierType.Fractured &&
|
||||
mod.type !== ModifierType.Desecrated,
|
||||
);
|
||||
ctx.statsByType.push(
|
||||
...item.statsByType.filter((mod) => mod.type === ModifierType.Fractured),
|
||||
...item.statsByType.filter(
|
||||
(mod) =>
|
||||
mod.type === ModifierType.Fractured ||
|
||||
mod.type === ModifierType.Desecrated,
|
||||
),
|
||||
);
|
||||
}
|
||||
|
||||
@@ -562,12 +569,15 @@ export function finalFilterTweaks(ctx: FiltersCreationContext) {
|
||||
}
|
||||
|
||||
for (const filter of ctx.filters) {
|
||||
if (filter.tag === FilterTag.Fractured) {
|
||||
if (
|
||||
filter.tag === FilterTag.Fractured ||
|
||||
filter.tag === FilterTag.Desecrated
|
||||
) {
|
||||
const mod = ctx.item.statsByType.find(
|
||||
(mod) => mod.stat.ref === filter.statRef,
|
||||
)!;
|
||||
if (mod.stat.trade.ids[ModifierType.Explicit]) {
|
||||
// hide only if fractured mod has corresponding explicit variant
|
||||
// hide only if fractured or desecrated mod has corresponding explicit variant
|
||||
filter.hidden = "filters.hide_for_crafting";
|
||||
}
|
||||
}
|
||||
|
||||
@@ -79,6 +79,11 @@
|
||||
class="rounded px-1 bg-yellow-500 text-black ml-1"
|
||||
>{{ t("in demand") }}</span
|
||||
>
|
||||
<span
|
||||
v-if="!showSeller && result.gone"
|
||||
class="rounded border px-1 border-red-500 text-red-500 ml-1"
|
||||
>{{ t("Gone") }}</span
|
||||
>
|
||||
</td>
|
||||
<td v-if="showSeller" class="px-2 whitespace-nowrap">
|
||||
<span
|
||||
@@ -94,6 +99,11 @@
|
||||
class="rounded px-1 bg-yellow-500 text-black ml-1"
|
||||
>{{ t("in demand") }}</span
|
||||
>
|
||||
<span
|
||||
v-if="!showSeller && result.gone"
|
||||
class="rounded border-2 px-1 border-red-500 text-red-500 ml-1"
|
||||
>{{ t("Gone") }}</span
|
||||
>
|
||||
</td>
|
||||
</tr>
|
||||
</template>
|
||||
|
||||
@@ -6,12 +6,7 @@
|
||||
<span v-if="!list" class="text-gray-600">...</span>
|
||||
<span v-else>{{ list.total }}{{ list.inexact ? "+" : "" }}</span>
|
||||
</div>
|
||||
<online-filter
|
||||
v-if="list"
|
||||
:by-time="true"
|
||||
:filters="filters"
|
||||
:currency-ratio="true"
|
||||
/>
|
||||
<online-filter v-if="list" :by-time="true" :filters="filters" />
|
||||
<div class="flex-1"></div>
|
||||
<trade-links v-if="list" :get-link="makeTradeLink" />
|
||||
</div>
|
||||
@@ -82,6 +77,23 @@
|
||||
</template>
|
||||
</tbody>
|
||||
</table>
|
||||
<div
|
||||
v-if="isLikelyPriceFixed"
|
||||
class="p-2 border-2 border-gray-600 rounded mt-2"
|
||||
>
|
||||
<div class="flex text-gray-400 leading-none">
|
||||
<div class="mt-1">
|
||||
{{ t(":likely_price_fixed") }}
|
||||
</div>
|
||||
<div class="flex-1" />
|
||||
<div class="pl-2">
|
||||
<button class="btn" @click="execFilterExaltDivine">
|
||||
{{ t(":filter_exalt_divine") }}
|
||||
<i class="fas fa-history text-xs" />
|
||||
</button>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<ui-error-box v-else>
|
||||
@@ -208,6 +220,9 @@ export default defineComponent({
|
||||
execSearch: () => {
|
||||
search(props.filters, props.stats, props.item);
|
||||
},
|
||||
execFilterExaltDivine: () => {
|
||||
props.filters.trade.currency = "exalted_divine";
|
||||
},
|
||||
error,
|
||||
errorFix: computed(() => {
|
||||
console.log(error.value);
|
||||
@@ -225,6 +240,27 @@ export default defineComponent({
|
||||
// Shift key state and methods
|
||||
isShiftPressed,
|
||||
ItemCategory,
|
||||
isLikelyPriceFixed: computed(() => {
|
||||
// if it isn't filling listings it probably is fine
|
||||
if (groupedResults.value.length <= 15) {
|
||||
return false;
|
||||
}
|
||||
const commonCurrencyPrices = groupedResults.value.filter((res) => {
|
||||
return (
|
||||
// is a common currency
|
||||
/chaos|exalted|divine/i.test(res.priceCurrency) ||
|
||||
// is a common very low value currency (but not enhanced versions)
|
||||
res.priceCurrency === "aug" ||
|
||||
res.priceCurrency === "regal" ||
|
||||
res.priceCurrency === "transmute"
|
||||
);
|
||||
});
|
||||
if (commonCurrencyPrices.length < 5) {
|
||||
return true;
|
||||
}
|
||||
|
||||
return false;
|
||||
}),
|
||||
};
|
||||
},
|
||||
});
|
||||
|
||||
@@ -80,7 +80,7 @@ export function useTradeApi() {
|
||||
_searchResult.result.slice(0, 10),
|
||||
{ accountName: AppConfig().accountName },
|
||||
).then((results) => {
|
||||
_fetchResults.push(...results.filter((res) => !res.gone));
|
||||
_fetchResults.push(...results);
|
||||
})
|
||||
: Promise.resolve();
|
||||
const r2 =
|
||||
@@ -91,7 +91,7 @@ export function useTradeApi() {
|
||||
{ accountName: AppConfig().accountName },
|
||||
).then(async (results) => {
|
||||
await r1.then(() => {
|
||||
_fetchResults.push(...results.filter((res) => !res.gone));
|
||||
_fetchResults.push(...results);
|
||||
});
|
||||
})
|
||||
: Promise.resolve();
|
||||
@@ -116,7 +116,7 @@ export function useTradeApi() {
|
||||
_searchResult.result.slice(fetched, fetched + 10),
|
||||
{ accountName: AppConfig().accountName },
|
||||
).then((results) => {
|
||||
_fetchResults.push(...results.filter((res) => !res.gone));
|
||||
_fetchResults.push(...results);
|
||||
});
|
||||
fetched += 10;
|
||||
await fetchMore();
|
||||
|
||||
Reference in New Issue
Block a user