From 8c306fbd230692a9ab434db55d9b35ac1e9afc9e Mon Sep 17 00:00:00 2001 From: syntaxbullet Date: Thu, 12 Feb 2026 12:15:17 +0100 Subject: [PATCH] refactor(inventory): flatten effects directory structure MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Move effect handlers from effects/ subdirectory to flat structure: - effects/handlers.ts → effect.handlers.ts - effects/registry.ts → effect.registry.ts - effects/types.ts → effect.types.ts Update import path in inventory.service.ts from '@/modules/inventory/effects/registry' to '@/modules/inventory/effect.registry'. This reduces directory nesting and follows the convention of keeping module files flat unless there are 5+ files. --- .../inventory/{effects/handlers.ts => effect.handlers.ts} | 2 +- .../inventory/{effects/registry.ts => effect.registry.ts} | 4 ++-- bot/modules/inventory/{effects/types.ts => effect.types.ts} | 1 - shared/modules/inventory/inventory.service.ts | 2 +- 4 files changed, 4 insertions(+), 5 deletions(-) rename bot/modules/inventory/{effects/handlers.ts => effect.handlers.ts} (99%) rename bot/modules/inventory/{effects/registry.ts => effect.registry.ts} (84%) rename bot/modules/inventory/{effects/types.ts => effect.types.ts} (99%) diff --git a/bot/modules/inventory/effects/handlers.ts b/bot/modules/inventory/effect.handlers.ts similarity index 99% rename from bot/modules/inventory/effects/handlers.ts rename to bot/modules/inventory/effect.handlers.ts index ba4aece..df3a99a 100644 --- a/bot/modules/inventory/effects/handlers.ts +++ b/bot/modules/inventory/effect.handlers.ts @@ -1,7 +1,7 @@ import { levelingService } from "@shared/modules/leveling/leveling.service"; import { economyService } from "@shared/modules/economy/economy.service"; import { userTimers } from "@db/schema"; -import type { EffectHandler } from "./types"; +import type { EffectHandler } from "./effect.types"; import type { LootTableItem } from "@shared/lib/types"; import { inventoryService } from "@shared/modules/inventory/inventory.service"; import { inventory, items } from "@db/schema"; diff --git a/bot/modules/inventory/effects/registry.ts b/bot/modules/inventory/effect.registry.ts similarity index 84% rename from bot/modules/inventory/effects/registry.ts rename to bot/modules/inventory/effect.registry.ts index 31165a5..99d8416 100644 --- a/bot/modules/inventory/effects/registry.ts +++ b/bot/modules/inventory/effect.registry.ts @@ -6,8 +6,8 @@ import { handleTempRole, handleColorRole, handleLootbox -} from "./handlers"; -import type { EffectHandler } from "./types"; +} from "./effect.handlers"; +import type { EffectHandler } from "./effect.types"; export const effectHandlers: Record = { 'ADD_XP': handleAddXp, diff --git a/bot/modules/inventory/effects/types.ts b/bot/modules/inventory/effect.types.ts similarity index 99% rename from bot/modules/inventory/effects/types.ts rename to bot/modules/inventory/effect.types.ts index 046cde5..b2e1e44 100644 --- a/bot/modules/inventory/effects/types.ts +++ b/bot/modules/inventory/effect.types.ts @@ -1,4 +1,3 @@ - import type { Transaction } from "@shared/lib/types"; export type EffectHandler = (userId: string, effect: any, txFn: Transaction) => Promise; diff --git a/shared/modules/inventory/inventory.service.ts b/shared/modules/inventory/inventory.service.ts index ba3d437..2c46d2b 100644 --- a/shared/modules/inventory/inventory.service.ts +++ b/shared/modules/inventory/inventory.service.ts @@ -171,7 +171,7 @@ export const inventoryService = { const results: any[] = []; // 2. Apply Effects - const { effectHandlers } = await import("@/modules/inventory/effects/registry"); + const { effectHandlers } = await import("@/modules/inventory/effect.registry"); for (const effect of usageData.effects) { const handler = effectHandlers[effect.type];