diff --git a/src/ipc/types.ts b/src/ipc/types.ts index e3377951..739e27c5 100644 --- a/src/ipc/types.ts +++ b/src/ipc/types.ts @@ -141,7 +141,8 @@ export const defaultConfig: Config = { apiLatencySeconds: 2, collapseListings: 'api', smartInitialSearch: true, - lockedInitialSearch: true + lockedInitialSearch: true, + activateStockFilter: false } as PriceCheckWidget, { wmId: 3, diff --git a/src/main/config.ts b/src/main/config.ts index 975b0fc0..43457a11 100644 --- a/src/main/config.ts +++ b/src/main/config.ts @@ -151,6 +151,9 @@ export const config = (() => { config.widgets.find(w => w.wmType === 'price-check')! .lockedInitialSearch = true + config.widgets.find(w => w.wmType === 'price-check')! + .activateStockFilter = false + config.configVersion = 9 } diff --git a/src/web/overlay/interfaces.ts b/src/web/overlay/interfaces.ts index 6ef79afe..ff820df4 100644 --- a/src/web/overlay/interfaces.ts +++ b/src/web/overlay/interfaces.ts @@ -52,6 +52,7 @@ export interface PriceCheckWidget extends Widget { collapseListings: 'api' | 'app' smartInitialSearch: boolean lockedInitialSearch: boolean + activateStockFilter: boolean } export interface ItemCheckWidget extends Widget { diff --git a/src/web/price-check/CheckedItem.vue b/src/web/price-check/CheckedItem.vue index 6634bb1b..a56750d5 100644 --- a/src/web/price-check/CheckedItem.vue +++ b/src/web/price-check/CheckedItem.vue @@ -106,8 +106,8 @@ export default defineComponent({ itemFilters.value = createFilters(item) itemStats.value = initUiModFilters(item) - if ((!props.advancedCheck && !widgetCfg.smartInitialSearch) || - (props.advancedCheck && !widgetCfg.lockedInitialSearch)) { + if ((!props.advancedCheck && !widgetCfg.value.smartInitialSearch) || + (props.advancedCheck && !widgetCfg.value.lockedInitialSearch)) { interactedOnce.value = false } else { interactedOnce.value = Boolean( diff --git a/src/web/price-check/filters/create-item-filters.ts b/src/web/price-check/filters/create-item-filters.ts index 864a62b2..3a70b3ee 100644 --- a/src/web/price-check/filters/create-item-filters.ts +++ b/src/web/price-check/filters/create-item-filters.ts @@ -3,10 +3,14 @@ import { ParsedItem, ItemCategory, ItemRarity } from '@/parser' import { VEILED_STAT } from './veiled' import { selected as league } from '@/web/background/Leagues' import { tradeTag } from '../trade/common' +import { Config } from '@/web/Config' +import { PriceCheckWidget } from '@/web/overlay/interfaces' export const SPECIAL_SUPPORT_GEM = ['Empower Support', 'Enlighten Support', 'Enhance Support'] export function createFilters (item: ParsedItem): ItemFilters { + const cfg = Config.store.widgets.find(w => w.wmType === 'price-check') as PriceCheckWidget + const filters: ItemFilters = { trade: { offline: false, @@ -27,7 +31,7 @@ export function createFilters (item: ParsedItem): ItemFilters { if (item.stackSize || tradeTag(item)) { filters.stackSize = { value: item.stackSize?.value || 1, - disabled: true + disabled: !(item.stackSize && item.stackSize.value > 1 && cfg.activateStockFilter) } } if (item.category === ItemCategory.MavenInvitation) { diff --git a/src/web/settings/price-check.vue b/src/web/settings/price-check.vue index 3aae8703..d856d645 100644 --- a/src/web/settings/price-check.vue +++ b/src/web/settings/price-check.vue @@ -35,6 +35,13 @@ +
+
{{ t('Always select "Stock" filter') }}
+
+ {{ t('Yes') }} + {{ t('No') }} +
+
{{ t('Show memorized cursor position') }}
@@ -146,7 +153,8 @@ export default defineComponent({ "seconds": "секунды", "Settings below are a compromise between increasing load on PoE website and convenient price checking / more accurate search.": "Настройки ниже являются компромиссом между увеличенной нагрузкой на сайт PoE и удобством проверки цен / более точным поиском.", "Show indication on collapsed listings": "Показывать индикацию на сгруппированных результатах", - "Perform an auto search, when pressing": "Выполнять автоматический поиск при нажатии" + "Perform an auto search, when pressing": "Выполнять автоматический поиск при нажатии", + "Always select \"Stock\" filter": "Всегда активировать фильтр \"Запас\"" } }