poe-api-manager 1.2.23 → 2.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/Changelog.md +39 -0
- package/README.md +142 -21
- package/dist/index.d.ts +5 -0
- package/dist/index.js +12 -0
- package/dist/lib/AbstractClass/PoeNinja.js +1 -1
- package/dist/lib/AbstractClass/PoeNinjaLeaf.d.ts +8 -0
- package/dist/lib/AbstractClass/PoeNinjaLeaf.js +14 -0
- package/dist/lib/AbstractClass/PoeWatch.js +1 -1
- package/dist/lib/AbstractClass/PoeWatchLeaf.d.ts +8 -0
- package/dist/lib/AbstractClass/PoeWatchLeaf.js +14 -0
- package/dist/lib/NinjaAPI.js +2 -2
- package/dist/lib/Poe2NinjaAPI.d.ts +25 -0
- package/dist/lib/Poe2NinjaAPI.js +35 -0
- package/dist/lib/Poe2WatchAPI.d.ts +17 -0
- package/dist/lib/Poe2WatchAPI.js +26 -0
- package/dist/lib/Utils.d.ts +14 -0
- package/dist/lib/Utils.js +21 -12
- package/dist/lib/errors/CustomError.js +4 -1
- package/dist/lib/mainfunctions/propertyFilter.js +4 -7
- package/dist/lib/modules/poe.ninja/currencyView/{currencySubModules/submodules/CurrencyModule.d.ts → CurrencyModule.d.ts} +1 -1
- package/dist/lib/modules/poe.ninja/currencyView/{currencySubModules/submodules/CurrencyModule.js → CurrencyModule.js} +4 -4
- package/dist/lib/modules/poe.ninja/currencyView/CurrencyViewModule.d.ts +5 -5
- package/dist/lib/modules/poe.ninja/currencyView/CurrencyViewModule.js +8 -27
- package/dist/lib/modules/poe.ninja/fetch/fetchData.js +17 -8
- package/dist/lib/modules/poe.ninja/fetch/merge/mergeData.js +7 -7
- package/dist/lib/modules/poe.ninja/fetch/merge/mergeExchangeData.d.ts +10 -0
- package/dist/lib/modules/poe.ninja/fetch/merge/mergeExchangeData.js +32 -0
- package/dist/lib/modules/poe.ninja/func/getData.js +7 -12
- package/dist/lib/modules/poe.ninja/func/getQuickCurrency.js +14 -14
- package/dist/lib/modules/poe.ninja/func/urlGenerator.js +18 -2
- package/dist/lib/modules/poe.ninja/itemView/ItemViewModule.d.ts +58 -119
- package/dist/lib/modules/poe.ninja/itemView/ItemViewModule.js +71 -142
- package/dist/lib/modules/poe.ninja/poe2/Poe2ExchangeView.d.ts +26 -0
- package/dist/lib/modules/poe.ninja/poe2/Poe2ExchangeView.js +55 -0
- package/dist/lib/modules/poe.ninja/poe2/Poe2ItemView.d.ts +20 -0
- package/dist/lib/modules/poe.ninja/poe2/Poe2ItemView.js +45 -0
- package/dist/lib/modules/poe.ninja/poe2/PoeNinja2.d.ts +26 -0
- package/dist/lib/modules/poe.ninja/poe2/PoeNinja2.js +48 -0
- package/dist/lib/modules/poe.ninja/poe2/fetchData2.d.ts +12 -0
- package/dist/lib/modules/poe.ninja/poe2/fetchData2.js +57 -0
- package/dist/lib/modules/poe.ninja/poe2/getData2.d.ts +11 -0
- package/dist/lib/modules/poe.ninja/poe2/getData2.js +26 -0
- package/dist/lib/modules/poe.ninja/poe2/urlGenerator2.d.ts +9 -0
- package/dist/lib/modules/poe.ninja/poe2/urlGenerator2.js +21 -0
- package/dist/lib/modules/poe.watch/WatchViewModule.d.ts +46 -84
- package/dist/lib/modules/poe.watch/WatchViewModule.js +58 -108
- package/dist/lib/modules/poe.watch/allModules/subModules/AccessoryModule.js +1 -6
- package/dist/lib/modules/poe.watch/allModules/subModules/ArmourModule.js +1 -6
- package/dist/lib/modules/poe.watch/allModules/subModules/BaseModule.js +1 -6
- package/dist/lib/modules/poe.watch/allModules/subModules/GemModule.js +1 -6
- package/dist/lib/modules/poe.watch/allModules/subModules/WeaponModule.js +1 -6
- package/dist/lib/modules/poe.watch/fetch/watchFetch.js +2 -5
- package/dist/lib/modules/poe.watch/func/WatchUrlGenerator.js +2 -2
- package/dist/lib/modules/poe.watch/func/getCategory.js +6 -3
- package/dist/lib/modules/poe.watch/func/getData.js +8 -13
- package/dist/lib/modules/poe.watch/poe2/Poe2ExchangeModule.d.ts +30 -0
- package/dist/lib/modules/poe.watch/poe2/Poe2ExchangeModule.js +53 -0
- package/dist/lib/modules/poe.watch/poe2/filterByCategory.d.ts +9 -0
- package/dist/lib/modules/poe.watch/poe2/filterByCategory.js +14 -0
- package/dist/lib/modules/poe.watch/poe2/getCategory2.d.ts +9 -0
- package/dist/lib/modules/poe.watch/poe2/getCategory2.js +40 -0
- package/dist/lib/modules/poe.watch/poe2/getData2.d.ts +9 -0
- package/dist/lib/modules/poe.watch/poe2/getData2.js +24 -0
- package/dist/lib/modules/poe.watch/poe2/unwrapItems.d.ts +11 -0
- package/dist/lib/modules/poe.watch/poe2/unwrapItems.js +21 -0
- package/dist/lib/modules/poe.watch/poe2/watchFetch2.d.ts +8 -0
- package/dist/lib/modules/poe.watch/poe2/watchFetch2.js +43 -0
- package/dist/lib/modules/poe.watch/poe2/watchUrlGenerator2.d.ts +8 -0
- package/dist/lib/modules/poe.watch/poe2/watchUrlGenerator2.js +13 -0
- package/dist/lib/modules/utils/getLeagues.js +2 -2
- package/dist/lib/modules/utils/getNinjaLeagues.d.ts +8 -0
- package/dist/lib/modules/utils/getNinjaLeagues.js +36 -0
- package/dist/lib/modules/utils/httpGet.d.ts +9 -0
- package/dist/lib/modules/utils/httpGet.js +23 -0
- package/package.json +14 -9
- package/CODE_OF_CONDUCT.md +0 -77
- package/CONTRIBUTING.md +0 -56
- package/SECURITY.md +0 -14
- package/dist/index.min.js +0 -1
- package/dist/lib/modules/poe.ninja/currencyView/currencySubModules/CurrencySubModules.d.ts +0 -2
- package/dist/lib/modules/poe.ninja/currencyView/currencySubModules/CurrencySubModules.js +0 -18
- package/dist/lib/modules/poe.ninja/currencyView/currencySubModules/submodules/FragmentModule.d.ts +0 -14
- package/dist/lib/modules/poe.ninja/currencyView/currencySubModules/submodules/FragmentModule.js +0 -26
- package/dist/lib/modules/poe.ninja/itemView/itemSubmodules/itemSubModules.d.ts +0 -29
- package/dist/lib/modules/poe.ninja/itemView/itemSubmodules/itemSubModules.js +0 -45
- package/dist/lib/modules/poe.ninja/itemView/itemSubmodules/subModules/AllflameEmberModule.d.ts +0 -12
- package/dist/lib/modules/poe.ninja/itemView/itemSubmodules/subModules/AllflameEmberModule.js +0 -23
- package/dist/lib/modules/poe.ninja/itemView/itemSubmodules/subModules/BaseTypeModule.d.ts +0 -12
- package/dist/lib/modules/poe.ninja/itemView/itemSubmodules/subModules/BaseTypeModule.js +0 -23
- package/dist/lib/modules/poe.ninja/itemView/itemSubmodules/subModules/BeastModule.d.ts +0 -12
- package/dist/lib/modules/poe.ninja/itemView/itemSubmodules/subModules/BeastModule.js +0 -23
- package/dist/lib/modules/poe.ninja/itemView/itemSubmodules/subModules/BlightRavagedMapModule.d.ts +0 -12
- package/dist/lib/modules/poe.ninja/itemView/itemSubmodules/subModules/BlightRavagedMapModule.js +0 -23
- package/dist/lib/modules/poe.ninja/itemView/itemSubmodules/subModules/BlightedMapModule.d.ts +0 -12
- package/dist/lib/modules/poe.ninja/itemView/itemSubmodules/subModules/BlightedMapModule.js +0 -23
- package/dist/lib/modules/poe.ninja/itemView/itemSubmodules/subModules/ClusterJewelModule.d.ts +0 -12
- package/dist/lib/modules/poe.ninja/itemView/itemSubmodules/subModules/ClusterJewelModule.js +0 -23
- package/dist/lib/modules/poe.ninja/itemView/itemSubmodules/subModules/CoffinModule.d.ts +0 -12
- package/dist/lib/modules/poe.ninja/itemView/itemSubmodules/subModules/CoffinModule.js +0 -22
- package/dist/lib/modules/poe.ninja/itemView/itemSubmodules/subModules/DeliriumOrbsModule.d.ts +0 -12
- package/dist/lib/modules/poe.ninja/itemView/itemSubmodules/subModules/DeliriumOrbsModule.js +0 -22
- package/dist/lib/modules/poe.ninja/itemView/itemSubmodules/subModules/DivinationCardModule.d.ts +0 -12
- package/dist/lib/modules/poe.ninja/itemView/itemSubmodules/subModules/DivinationCardModule.js +0 -22
- package/dist/lib/modules/poe.ninja/itemView/itemSubmodules/subModules/EssenceModule.d.ts +0 -12
- package/dist/lib/modules/poe.ninja/itemView/itemSubmodules/subModules/EssenceModule.js +0 -22
- package/dist/lib/modules/poe.ninja/itemView/itemSubmodules/subModules/FossilModule.d.ts +0 -12
- package/dist/lib/modules/poe.ninja/itemView/itemSubmodules/subModules/FossilModule.js +0 -22
- package/dist/lib/modules/poe.ninja/itemView/itemSubmodules/subModules/HelmetEnchantModule.d.ts +0 -12
- package/dist/lib/modules/poe.ninja/itemView/itemSubmodules/subModules/HelmetEnchantModule.js +0 -22
- package/dist/lib/modules/poe.ninja/itemView/itemSubmodules/subModules/IncubatorModule.d.ts +0 -12
- package/dist/lib/modules/poe.ninja/itemView/itemSubmodules/subModules/IncubatorModule.js +0 -22
- package/dist/lib/modules/poe.ninja/itemView/itemSubmodules/subModules/InvitationModule.d.ts +0 -12
- package/dist/lib/modules/poe.ninja/itemView/itemSubmodules/subModules/InvitationModule.js +0 -22
- package/dist/lib/modules/poe.ninja/itemView/itemSubmodules/subModules/MapModule.d.ts +0 -12
- package/dist/lib/modules/poe.ninja/itemView/itemSubmodules/subModules/MapModule.js +0 -22
- package/dist/lib/modules/poe.ninja/itemView/itemSubmodules/subModules/MemoryModule.d.ts +0 -12
- package/dist/lib/modules/poe.ninja/itemView/itemSubmodules/subModules/MemoryModule.js +0 -22
- package/dist/lib/modules/poe.ninja/itemView/itemSubmodules/subModules/OilModule.d.ts +0 -12
- package/dist/lib/modules/poe.ninja/itemView/itemSubmodules/subModules/OilModule.js +0 -22
- package/dist/lib/modules/poe.ninja/itemView/itemSubmodules/subModules/OmenModule.d.ts +0 -12
- package/dist/lib/modules/poe.ninja/itemView/itemSubmodules/subModules/OmenModule.js +0 -22
- package/dist/lib/modules/poe.ninja/itemView/itemSubmodules/subModules/ResonatorModule.d.ts +0 -12
- package/dist/lib/modules/poe.ninja/itemView/itemSubmodules/subModules/ResonatorModule.js +0 -22
- package/dist/lib/modules/poe.ninja/itemView/itemSubmodules/subModules/ScarabModule.d.ts +0 -12
- package/dist/lib/modules/poe.ninja/itemView/itemSubmodules/subModules/ScarabModule.js +0 -22
- package/dist/lib/modules/poe.ninja/itemView/itemSubmodules/subModules/SkillGemModule.d.ts +0 -12
- package/dist/lib/modules/poe.ninja/itemView/itemSubmodules/subModules/SkillGemModule.js +0 -22
- package/dist/lib/modules/poe.ninja/itemView/itemSubmodules/subModules/UniqueAccessoryModule.d.ts +0 -12
- package/dist/lib/modules/poe.ninja/itemView/itemSubmodules/subModules/UniqueAccessoryModule.js +0 -22
- package/dist/lib/modules/poe.ninja/itemView/itemSubmodules/subModules/UniqueArmourModule.d.ts +0 -12
- package/dist/lib/modules/poe.ninja/itemView/itemSubmodules/subModules/UniqueArmourModule.js +0 -22
- package/dist/lib/modules/poe.ninja/itemView/itemSubmodules/subModules/UniqueFlaskModule.d.ts +0 -12
- package/dist/lib/modules/poe.ninja/itemView/itemSubmodules/subModules/UniqueFlaskModule.js +0 -22
- package/dist/lib/modules/poe.ninja/itemView/itemSubmodules/subModules/UniqueJewelModule.d.ts +0 -12
- package/dist/lib/modules/poe.ninja/itemView/itemSubmodules/subModules/UniqueJewelModule.js +0 -22
- package/dist/lib/modules/poe.ninja/itemView/itemSubmodules/subModules/UniqueMapModule.d.ts +0 -12
- package/dist/lib/modules/poe.ninja/itemView/itemSubmodules/subModules/UniqueMapModule.js +0 -22
- package/dist/lib/modules/poe.ninja/itemView/itemSubmodules/subModules/UniqueRelicModule.d.ts +0 -12
- package/dist/lib/modules/poe.ninja/itemView/itemSubmodules/subModules/UniqueRelicModule.js +0 -22
- package/dist/lib/modules/poe.ninja/itemView/itemSubmodules/subModules/UniqueWeaponModule.d.ts +0 -12
- package/dist/lib/modules/poe.ninja/itemView/itemSubmodules/subModules/UniqueWeaponModule.js +0 -22
- package/dist/lib/modules/poe.ninja/itemView/itemSubmodules/subModules/VialsModule.d.ts +0 -12
- package/dist/lib/modules/poe.ninja/itemView/itemSubmodules/subModules/VialsModule.js +0 -22
- package/dist/lib/modules/poe.watch/allModules/Modules.d.ts +0 -21
- package/dist/lib/modules/poe.watch/allModules/Modules.js +0 -37
- package/dist/lib/modules/poe.watch/allModules/subModules/BeastModule.d.ts +0 -11
- package/dist/lib/modules/poe.watch/allModules/subModules/BeastModule.js +0 -21
- package/dist/lib/modules/poe.watch/allModules/subModules/CurrencyModule.d.ts +0 -11
- package/dist/lib/modules/poe.watch/allModules/subModules/CurrencyModule.js +0 -21
- package/dist/lib/modules/poe.watch/allModules/subModules/DeliriumOrbModule.d.ts +0 -11
- package/dist/lib/modules/poe.watch/allModules/subModules/DeliriumOrbModule.js +0 -21
- package/dist/lib/modules/poe.watch/allModules/subModules/DivsModule.d.ts +0 -11
- package/dist/lib/modules/poe.watch/allModules/subModules/DivsModule.js +0 -21
- package/dist/lib/modules/poe.watch/allModules/subModules/EssenceModule.d.ts +0 -11
- package/dist/lib/modules/poe.watch/allModules/subModules/EssenceModule.js +0 -21
- package/dist/lib/modules/poe.watch/allModules/subModules/FlaskModule.d.ts +0 -11
- package/dist/lib/modules/poe.watch/allModules/subModules/FlaskModule.js +0 -21
- package/dist/lib/modules/poe.watch/allModules/subModules/FossilModule.d.ts +0 -11
- package/dist/lib/modules/poe.watch/allModules/subModules/FossilModule.js +0 -21
- package/dist/lib/modules/poe.watch/allModules/subModules/FragmentModule.d.ts +0 -11
- package/dist/lib/modules/poe.watch/allModules/subModules/FragmentModule.js +0 -21
- package/dist/lib/modules/poe.watch/allModules/subModules/InscribedModule.d.ts +0 -11
- package/dist/lib/modules/poe.watch/allModules/subModules/InscribedModule.js +0 -21
- package/dist/lib/modules/poe.watch/allModules/subModules/InvitationModule.d.ts +0 -11
- package/dist/lib/modules/poe.watch/allModules/subModules/InvitationModule.js +0 -21
- package/dist/lib/modules/poe.watch/allModules/subModules/JewelModule.d.ts +0 -11
- package/dist/lib/modules/poe.watch/allModules/subModules/JewelModule.js +0 -21
- package/dist/lib/modules/poe.watch/allModules/subModules/MapModule.d.ts +0 -11
- package/dist/lib/modules/poe.watch/allModules/subModules/MapModule.js +0 -21
- package/dist/lib/modules/poe.watch/allModules/subModules/OilModule.d.ts +0 -11
- package/dist/lib/modules/poe.watch/allModules/subModules/OilModule.js +0 -21
- package/dist/lib/modules/poe.watch/allModules/subModules/ScarabModule.d.ts +0 -11
- package/dist/lib/modules/poe.watch/allModules/subModules/ScarabModule.js +0 -21
- package/dist/lib/modules/poe.watch/allModules/subModules/SextantModule.d.ts +0 -11
- package/dist/lib/modules/poe.watch/allModules/subModules/SextantModule.js +0 -21
- package/dist/lib/modules/poe.watch/allModules/subModules/UniqueMapsModule.d.ts +0 -11
- package/dist/lib/modules/poe.watch/allModules/subModules/UniqueMapsModule.js +0 -21
- package/dist/lib/modules/utils/fetchData/fetchData.d.ts +0 -10
- package/dist/lib/modules/utils/fetchData/fetchData.js +0 -26
- package/tsconfig.json +0 -12
|
@@ -4,10 +4,10 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
4
4
|
};
|
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
6
|
exports.CurrencyModule = void 0;
|
|
7
|
-
const PoeNinja_1 = __importDefault(require("
|
|
8
|
-
const getQuickCurrency_1 = __importDefault(require("
|
|
9
|
-
const CustomError_1 = __importDefault(require("
|
|
10
|
-
const ApiError_1 = __importDefault(require("
|
|
7
|
+
const PoeNinja_1 = __importDefault(require("../../../AbstractClass/PoeNinja"));
|
|
8
|
+
const getQuickCurrency_1 = __importDefault(require("../func/getQuickCurrency"));
|
|
9
|
+
const CustomError_1 = __importDefault(require("../../../errors/CustomError"));
|
|
10
|
+
const ApiError_1 = __importDefault(require("../../../errors/ApiError"));
|
|
11
11
|
/**
|
|
12
12
|
* Represents a module for retrieving currency data from the PoeNinja API.
|
|
13
13
|
*/
|
|
@@ -1,4 +1,5 @@
|
|
|
1
|
-
import
|
|
1
|
+
import PoeNinja from "../../../AbstractClass/PoeNinja";
|
|
2
|
+
import { CurrencyModule } from "./CurrencyModule";
|
|
2
3
|
/**
|
|
3
4
|
* Represents a module for fetching currency overview data.
|
|
4
5
|
*/
|
|
@@ -6,15 +7,14 @@ export default class CurrencyViewModule {
|
|
|
6
7
|
/**
|
|
7
8
|
* Represents a module for fetching currency data.
|
|
8
9
|
*/
|
|
9
|
-
currency:
|
|
10
|
+
currency: CurrencyModule;
|
|
10
11
|
/**
|
|
11
12
|
* Represents a module for fetching fragment data.
|
|
12
13
|
*/
|
|
13
|
-
fragment:
|
|
14
|
+
fragment: PoeNinja;
|
|
14
15
|
/**
|
|
15
16
|
* Creates a new CurrencyViewModule instance.
|
|
16
17
|
* @param league The name of the Path of Exile league.
|
|
17
|
-
* @param typeName The type of data to retrieve.
|
|
18
18
|
*/
|
|
19
|
-
constructor(league: string
|
|
19
|
+
constructor(league: string);
|
|
20
20
|
}
|
|
@@ -1,29 +1,11 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
-
var
|
|
3
|
-
|
|
4
|
-
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
-
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
-
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
-
}
|
|
8
|
-
Object.defineProperty(o, k2, desc);
|
|
9
|
-
}) : (function(o, m, k, k2) {
|
|
10
|
-
if (k2 === undefined) k2 = k;
|
|
11
|
-
o[k2] = m[k];
|
|
12
|
-
}));
|
|
13
|
-
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
14
|
-
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
-
}) : function(o, v) {
|
|
16
|
-
o["default"] = v;
|
|
17
|
-
});
|
|
18
|
-
var __importStar = (this && this.__importStar) || function (mod) {
|
|
19
|
-
if (mod && mod.__esModule) return mod;
|
|
20
|
-
var result = {};
|
|
21
|
-
if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
|
|
22
|
-
__setModuleDefault(result, mod);
|
|
23
|
-
return result;
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
24
4
|
};
|
|
25
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
26
|
-
const
|
|
6
|
+
const PoeNinjaLeaf_1 = __importDefault(require("../../../AbstractClass/PoeNinjaLeaf"));
|
|
7
|
+
const CurrencyModule_1 = require("./CurrencyModule");
|
|
8
|
+
const TYPE_NAME = "currencyoverview";
|
|
27
9
|
/**
|
|
28
10
|
* Represents a module for fetching currency overview data.
|
|
29
11
|
*/
|
|
@@ -39,11 +21,10 @@ class CurrencyViewModule {
|
|
|
39
21
|
/**
|
|
40
22
|
* Creates a new CurrencyViewModule instance.
|
|
41
23
|
* @param league The name of the Path of Exile league.
|
|
42
|
-
* @param typeName The type of data to retrieve.
|
|
43
24
|
*/
|
|
44
|
-
constructor(league
|
|
45
|
-
this.currency = new
|
|
46
|
-
this.fragment = new
|
|
25
|
+
constructor(league) {
|
|
26
|
+
this.currency = new CurrencyModule_1.CurrencyModule(league, TYPE_NAME);
|
|
27
|
+
this.fragment = new PoeNinjaLeaf_1.default(league, TYPE_NAME, "Fragment");
|
|
47
28
|
}
|
|
48
29
|
}
|
|
49
30
|
exports.default = CurrencyViewModule;
|
|
@@ -5,8 +5,11 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
6
|
const axios_1 = __importDefault(require("axios"));
|
|
7
7
|
const mergeData_1 = __importDefault(require("./merge/mergeData"));
|
|
8
|
+
const mergeExchangeData_1 = __importDefault(require("./merge/mergeExchangeData"));
|
|
8
9
|
const urlGenerator_1 = __importDefault(require("../func/urlGenerator"));
|
|
9
10
|
const ApiError_1 = __importDefault(require("../../../errors/ApiError"));
|
|
11
|
+
const CustomError_1 = __importDefault(require("../../../errors/CustomError"));
|
|
12
|
+
const httpGet_1 = __importDefault(require("../../utils/httpGet"));
|
|
10
13
|
/**
|
|
11
14
|
* Fetches data from a specified API endpoint, merges relevant data, and returns the result.
|
|
12
15
|
* @param league The game league for which to fetch data.
|
|
@@ -19,12 +22,7 @@ async function fetchData(league, typeName, type) {
|
|
|
19
22
|
try {
|
|
20
23
|
// Generate the URL for the specified league, type name, and type
|
|
21
24
|
const url = (0, urlGenerator_1.default)(league, typeName, type);
|
|
22
|
-
|
|
23
|
-
const response = await axios_1.default.get(url, {
|
|
24
|
-
headers: {
|
|
25
|
-
"Accept-Encoding": "identity",
|
|
26
|
-
},
|
|
27
|
-
});
|
|
25
|
+
const response = await (0, httpGet_1.default)(url);
|
|
28
26
|
//typwName is either currencyoverview or itemoverview
|
|
29
27
|
if (typeName == "currencyoverview") {
|
|
30
28
|
//if the response has data and lines and currencyDetails
|
|
@@ -49,6 +47,17 @@ async function fetchData(league, typeName, type) {
|
|
|
49
47
|
throw new ApiError_1.default(`Invalid response format from POE Ninja API ItemView Type:${type}`, 400, { league, typeName, type });
|
|
50
48
|
}
|
|
51
49
|
}
|
|
50
|
+
else if (typeName == "exchangeoverview") {
|
|
51
|
+
// CAVEAT: unlike the other two endpoints, the exchange endpoint returns
|
|
52
|
+
// HTTP 200 with an empty lines[] for an unknown type instead of a 404
|
|
53
|
+
// (verified live), so a bad type yields [] here rather than an error.
|
|
54
|
+
if (response.data && response.data.lines && response.data.items) {
|
|
55
|
+
return (0, mergeExchangeData_1.default)(response.data.lines, response.data.items, response.data.core);
|
|
56
|
+
}
|
|
57
|
+
else {
|
|
58
|
+
throw new ApiError_1.default(`Invalid response format from POE Ninja API ExchangeView Type:${type}`, 400, { league, typeName, type });
|
|
59
|
+
}
|
|
60
|
+
}
|
|
52
61
|
else {
|
|
53
62
|
throw new ApiError_1.default(`Invalid type: ${type}`, 400, {
|
|
54
63
|
league,
|
|
@@ -58,8 +67,8 @@ async function fetchData(league, typeName, type) {
|
|
|
58
67
|
}
|
|
59
68
|
}
|
|
60
69
|
catch (error) {
|
|
61
|
-
// If it's already
|
|
62
|
-
if (error instanceof
|
|
70
|
+
// If it's already a typed error (ApiError/ValidationError), pass it through
|
|
71
|
+
if (error instanceof CustomError_1.default) {
|
|
63
72
|
throw error;
|
|
64
73
|
}
|
|
65
74
|
// Handle axios errors with more context
|
|
@@ -12,17 +12,17 @@ function mergeData(lines, currencyDetails) {
|
|
|
12
12
|
const currencyType = line.currencyTypeName;
|
|
13
13
|
// Find the corresponding currencyDetail based on currencyType
|
|
14
14
|
const currencyDetail = currencyDetails.find((detail) => detail.name === currencyType);
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
15
|
+
// Merge line and currencyDetail into a new object. Keep unmatched lines
|
|
16
|
+
// as-is instead of dropping them.
|
|
17
|
+
const mergedItem = currencyDetail
|
|
18
|
+
? {
|
|
18
19
|
...line,
|
|
19
20
|
id: currencyDetail.id,
|
|
20
21
|
icon: currencyDetail.icon,
|
|
21
22
|
name: currencyDetail.name,
|
|
22
|
-
}
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
}
|
|
23
|
+
}
|
|
24
|
+
: { ...line };
|
|
25
|
+
mergedData.push(mergedItem);
|
|
26
26
|
});
|
|
27
27
|
return mergedData;
|
|
28
28
|
}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Merges exchange endpoint lines with their join-table items, normalizing the
|
|
3
|
+
* result to the documented ["id","name","icon"] contract.
|
|
4
|
+
* @param lines The exchange lines to be merged.
|
|
5
|
+
* @param items The exchange join-table items (top-level `items[]`, not `core.items`).
|
|
6
|
+
* @param core The exchange `core` object; `core.primary` names the unit of `line.primaryValue`.
|
|
7
|
+
* @returns The merged data.
|
|
8
|
+
*/
|
|
9
|
+
declare function mergeExchangeData(lines: any[], items: any[], core: any): any[];
|
|
10
|
+
export default mergeExchangeData;
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
/**
|
|
4
|
+
* Merges exchange endpoint lines with their join-table items, normalizing the
|
|
5
|
+
* result to the documented ["id","name","icon"] contract.
|
|
6
|
+
* @param lines The exchange lines to be merged.
|
|
7
|
+
* @param items The exchange join-table items (top-level `items[]`, not `core.items`).
|
|
8
|
+
* @param core The exchange `core` object; `core.primary` names the unit of `line.primaryValue`.
|
|
9
|
+
* @returns The merged data.
|
|
10
|
+
*/
|
|
11
|
+
function mergeExchangeData(lines, items, core) {
|
|
12
|
+
const mergedData = [];
|
|
13
|
+
lines.forEach((line) => {
|
|
14
|
+
const item = items.find((candidate) => candidate.id === line.id);
|
|
15
|
+
const mergedItem = { ...line };
|
|
16
|
+
if (item) {
|
|
17
|
+
mergedItem.name = item.name;
|
|
18
|
+
mergedItem.icon = `https://web.poecdn.com${item.image}`;
|
|
19
|
+
mergedItem.detailsId = item.detailsId;
|
|
20
|
+
mergedItem.category = item.category;
|
|
21
|
+
}
|
|
22
|
+
if (core?.primary === "chaos") {
|
|
23
|
+
mergedItem.chaosValue = line.primaryValue;
|
|
24
|
+
}
|
|
25
|
+
else {
|
|
26
|
+
delete mergedItem.chaosValue;
|
|
27
|
+
}
|
|
28
|
+
mergedData.push(mergedItem);
|
|
29
|
+
});
|
|
30
|
+
return mergedData;
|
|
31
|
+
}
|
|
32
|
+
exports.default = mergeExchangeData;
|
|
@@ -16,19 +16,14 @@ const propertyFilter_1 = __importDefault(require("../../../mainfunctions/propert
|
|
|
16
16
|
* @throws If there is an error fetching the data.
|
|
17
17
|
*/
|
|
18
18
|
async function getData(league, typeName, type, requestedProperties) {
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
return result;
|
|
25
|
-
}
|
|
26
|
-
else {
|
|
27
|
-
return fetchedData;
|
|
28
|
-
}
|
|
19
|
+
const fetchedData = await (0, fetchData_1.default)(league, typeName, type);
|
|
20
|
+
//if requestedProperties use filterProperties to filter fetchedData
|
|
21
|
+
if (requestedProperties) {
|
|
22
|
+
const result = (0, propertyFilter_1.default)(fetchedData, requestedProperties);
|
|
23
|
+
return result;
|
|
29
24
|
}
|
|
30
|
-
|
|
31
|
-
|
|
25
|
+
else {
|
|
26
|
+
return fetchedData;
|
|
32
27
|
}
|
|
33
28
|
}
|
|
34
29
|
exports.default = getData;
|
|
@@ -4,6 +4,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
4
4
|
};
|
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
6
|
const fetchData_1 = __importDefault(require("../fetch/fetchData"));
|
|
7
|
+
const ValidationError_1 = __importDefault(require("../../../errors/ValidationError"));
|
|
7
8
|
/**
|
|
8
9
|
* Retrieves quick currency data for a specific currency in a given league and type.
|
|
9
10
|
* @param league - The league for which to fetch currency data.
|
|
@@ -14,21 +15,20 @@ const fetchData_1 = __importDefault(require("../fetch/fetchData"));
|
|
|
14
15
|
* @throws Throws an error if the currency data cannot be fetched or if the currency is not found.
|
|
15
16
|
*/
|
|
16
17
|
async function getQuickCurrency(league, typeName, type, currencyTypeName) {
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
};
|
|
26
|
-
}
|
|
18
|
+
const fetchedData = await (0, fetchData_1.default)(league, typeName, type);
|
|
19
|
+
//find the currencyTypeName in the fetchedData
|
|
20
|
+
for (const data of fetchedData) {
|
|
21
|
+
if (data.currencyTypeName === currencyTypeName) {
|
|
22
|
+
return {
|
|
23
|
+
currencyTypeName: data.currencyTypeName,
|
|
24
|
+
chaosEquivalent: data.chaosEquivalent,
|
|
25
|
+
};
|
|
27
26
|
}
|
|
28
|
-
throw new Error("Currency not found");
|
|
29
|
-
}
|
|
30
|
-
catch (error) {
|
|
31
|
-
throw new Error(`Error fetching currency data: ${error.message}`);
|
|
32
27
|
}
|
|
28
|
+
throw new ValidationError_1.default(`Currency not found: ${currencyTypeName}`, 404, {
|
|
29
|
+
league,
|
|
30
|
+
type,
|
|
31
|
+
currencyTypeName,
|
|
32
|
+
});
|
|
33
33
|
}
|
|
34
34
|
exports.default = getQuickCurrency;
|
|
@@ -1,5 +1,18 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
2
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
exports.default = urlGenerator;
|
|
7
|
+
const ValidationError_1 = __importDefault(require("../../../errors/ValidationError"));
|
|
8
|
+
/**
|
|
9
|
+
* Maps the internal typeName to its poe.ninja economy API path.
|
|
10
|
+
*/
|
|
11
|
+
const PATHS = {
|
|
12
|
+
currencyoverview: "/poe1/api/economy/stash/current/currency/overview",
|
|
13
|
+
itemoverview: "/poe1/api/economy/stash/current/item/overview",
|
|
14
|
+
exchangeoverview: "/poe1/api/economy/exchange/current/overview",
|
|
15
|
+
};
|
|
3
16
|
/**
|
|
4
17
|
* Generates a URL based on league and type. poe.ninja (currencyView) API is used.
|
|
5
18
|
* @param league The league for which the URL is generated.
|
|
@@ -8,6 +21,9 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
8
21
|
* @returns The generated URL.
|
|
9
22
|
*/
|
|
10
23
|
function urlGenerator(league, typeName, type) {
|
|
11
|
-
|
|
24
|
+
const path = PATHS[typeName];
|
|
25
|
+
if (!path) {
|
|
26
|
+
throw new ValidationError_1.default(`Invalid typeName: ${typeName}`, 400, { league, typeName, type });
|
|
27
|
+
}
|
|
28
|
+
return `https://poe.ninja${path}?league=${encodeURIComponent(league)}&type=${encodeURIComponent(type)}`;
|
|
12
29
|
}
|
|
13
|
-
exports.default = urlGenerator;
|
|
@@ -1,128 +1,67 @@
|
|
|
1
|
-
import
|
|
1
|
+
import PoeNinja from "../../../AbstractClass/PoeNinja";
|
|
2
2
|
/**
|
|
3
3
|
* Represents a module for viewing item-related information in a specific Path of Exile league.
|
|
4
4
|
*/
|
|
5
5
|
export default class ItemViewModule {
|
|
6
|
-
/**
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
/**
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
/**
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
/**
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
/**
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
/**
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
/**
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
/**
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
/**
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
/**
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
/**
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
/**
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
/**
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
/**
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
/**
|
|
63
|
-
* Represents a submodule for unique armour item information.
|
|
64
|
-
*/
|
|
65
|
-
uniqueArmour: Modules.UniqueArmourModule;
|
|
66
|
-
/**
|
|
67
|
-
* Represents a submodule for unique flask item information.
|
|
68
|
-
*/
|
|
69
|
-
uniqueFlask: Modules.UniqueFlaskModule;
|
|
70
|
-
/**
|
|
71
|
-
* Represents a submodule for unique jewel item information.
|
|
72
|
-
*/
|
|
73
|
-
uniqueJewel: Modules.UniqueJewelModule;
|
|
74
|
-
/**
|
|
75
|
-
* Represents a submodule for unique map item information.
|
|
76
|
-
*/
|
|
77
|
-
uniqueMap: Modules.UniqueMapModule;
|
|
78
|
-
/**
|
|
79
|
-
* Represents a submodule for unique weapon item information.
|
|
80
|
-
*/
|
|
81
|
-
uniqueWeapon: Modules.UniqueWeaponModule;
|
|
82
|
-
/**
|
|
83
|
-
* Represents a submodule for vials item information.
|
|
84
|
-
*/
|
|
85
|
-
vials: Modules.VialsModule;
|
|
86
|
-
/**
|
|
87
|
-
* Represents a submodule for omen item information.
|
|
88
|
-
*/
|
|
89
|
-
omen: Modules.OmenModule;
|
|
90
|
-
/**
|
|
91
|
-
* Represents a submodule for memory item information.
|
|
92
|
-
*/
|
|
93
|
-
memory: Modules.MemoryModule;
|
|
94
|
-
/**
|
|
95
|
-
* Represents a submodule for invitation item information.
|
|
96
|
-
*/
|
|
97
|
-
invitation: Modules.InvitationModule;
|
|
98
|
-
/**
|
|
99
|
-
* Represents a submodule for unique relics item information.
|
|
100
|
-
*/
|
|
101
|
-
uniqueRelics: Modules.UniqueRelicModule;
|
|
102
|
-
/**
|
|
103
|
-
* Represents a submodule for cluster jewel item information.
|
|
104
|
-
*/
|
|
105
|
-
clusterJewel: Modules.ClusterJewelModule;
|
|
106
|
-
/**
|
|
107
|
-
* Represents a submodule for blighted map item information.
|
|
108
|
-
*/
|
|
109
|
-
blightedMap: Modules.BlightedMapModule;
|
|
110
|
-
/**
|
|
111
|
-
* Represents a submodule for blight ravaged map item information.
|
|
112
|
-
*/
|
|
113
|
-
blightRavagedMap: Modules.BlightedRavagedMapModule;
|
|
114
|
-
/**
|
|
115
|
-
* Represents a submodule for coffin item information.
|
|
116
|
-
*/
|
|
117
|
-
coffin: Modules.CoffinModule;
|
|
118
|
-
/**
|
|
119
|
-
* Creates an instance of AllflameEmberModule.
|
|
120
|
-
*/
|
|
121
|
-
allflameEmber: Modules.AllflameEmberModule;
|
|
6
|
+
/** Represents a submodule for base type item information. */
|
|
7
|
+
baseType: PoeNinja;
|
|
8
|
+
/** Represents a submodule for beast item information. */
|
|
9
|
+
beast: PoeNinja;
|
|
10
|
+
/** Represents a submodule for delirium orbs item information. *(exchange)* */
|
|
11
|
+
deliriumOrbs: PoeNinja;
|
|
12
|
+
/** Represents a submodule for divination card item information. *(exchange)* */
|
|
13
|
+
divinationCard: PoeNinja;
|
|
14
|
+
/** Represents a submodule for essence item information. *(exchange)* */
|
|
15
|
+
essence: PoeNinja;
|
|
16
|
+
/** Represents a submodule for fossil item information. *(exchange)* */
|
|
17
|
+
fossil: PoeNinja;
|
|
18
|
+
/** Represents a submodule for incubator item information. */
|
|
19
|
+
incubator: PoeNinja;
|
|
20
|
+
/** Represents a submodule for map item information. */
|
|
21
|
+
map: PoeNinja;
|
|
22
|
+
/** Represents a submodule for oil item information. *(exchange)* */
|
|
23
|
+
oil: PoeNinja;
|
|
24
|
+
/** Represents a submodule for resonator item information. *(exchange)* */
|
|
25
|
+
resonator: PoeNinja;
|
|
26
|
+
/** Represents a submodule for scarab item information. *(exchange)* */
|
|
27
|
+
scarab: PoeNinja;
|
|
28
|
+
/** Represents a submodule for skill gem item information. */
|
|
29
|
+
skillGem: PoeNinja;
|
|
30
|
+
/** Represents a submodule for unique accessory item information. */
|
|
31
|
+
uniqueAccessory: PoeNinja;
|
|
32
|
+
/** Represents a submodule for unique armour item information. */
|
|
33
|
+
uniqueArmour: PoeNinja;
|
|
34
|
+
/** Represents a submodule for unique flask item information. */
|
|
35
|
+
uniqueFlask: PoeNinja;
|
|
36
|
+
/** Represents a submodule for unique jewel item information. */
|
|
37
|
+
uniqueJewel: PoeNinja;
|
|
38
|
+
/** Represents a submodule for unique map item information. */
|
|
39
|
+
uniqueMap: PoeNinja;
|
|
40
|
+
/** Represents a submodule for unique weapon item information. */
|
|
41
|
+
uniqueWeapon: PoeNinja;
|
|
42
|
+
/** Represents a submodule for vials item information. */
|
|
43
|
+
vials: PoeNinja;
|
|
44
|
+
/** Represents a submodule for omen item information. *(exchange)* */
|
|
45
|
+
omen: PoeNinja;
|
|
46
|
+
/** Represents a submodule for memory item information. */
|
|
47
|
+
memory: PoeNinja;
|
|
48
|
+
/** Represents a submodule for invitation item information. */
|
|
49
|
+
invitation: PoeNinja;
|
|
50
|
+
/** Represents a submodule for unique relics item information. */
|
|
51
|
+
uniqueRelics: PoeNinja;
|
|
52
|
+
/** Represents a submodule for cluster jewel item information. */
|
|
53
|
+
clusterJewel: PoeNinja;
|
|
54
|
+
/** Represents a submodule for blighted map item information. */
|
|
55
|
+
blightedMap: PoeNinja;
|
|
56
|
+
/** Represents a submodule for blight ravaged map item information. */
|
|
57
|
+
blightRavagedMap: PoeNinja;
|
|
58
|
+
/** Represents a submodule for coffin item information. */
|
|
59
|
+
coffin: PoeNinja;
|
|
60
|
+
/** Represents a submodule for allflame ember item information. *(exchange)* */
|
|
61
|
+
allflameEmber: PoeNinja;
|
|
122
62
|
/**
|
|
123
63
|
* Creates a new instance of ItemViewModule.
|
|
124
64
|
* @param league - The Path of Exile league for which the item information is retrieved.
|
|
125
|
-
* @param typeName - The type of item information to retrieve.
|
|
126
65
|
*/
|
|
127
|
-
constructor(league: string
|
|
66
|
+
constructor(league: string);
|
|
128
67
|
}
|