@gi-tcg/assets-manager
v0.21.0
Published
Manage assets of GI-TCG for Web app
Readme
@gi-tcg/assets-manager Assets manager of GI-TCG for Web App
This package will fetch assets from the Static Data v5 API and manage them using Web API*.
*
fetchandBlobAPI must be presented in the running environment.AssetsManagerOptionis designed to be JSON-serializable so that can be safely passed through different runtime environment.
Per-ID versions
version may be a version string, or a per-ID version map. A map must contain
$base, which is used by datum requests whose ID has no explicit entry.
$category is optional and is used only for category requests:
import { AssetsManager } from "@gi-tcg/assets-manager";
import { createOfficialVersionResolver } from "@gi-tcg/core";
const resolver = createOfficialVersionResolver("v7.0.0", {
1101: "v4.2.0",
});
const assets = new AssetsManager({
version: {
...resolver.versionMap,
$category: "mixed-version-code",
},
});Without $category, category requests use $base as long as no per-ID version
or overrideData is configured. In those cases getCategory throws to avoid
returning inconsistent aggregate data. Pass { force: true } to explicitly use
$base anyway.
Data overrides
Use overrideData to shallowly replace properties of data with matching IDs.
Overrides apply to individual datum requests.
const assets = new AssetsManager({
overrideData: [{ id: 1101, name: "Custom name", hp: 12 }],
});Data overrides do not apply to customData and data returned from getCategory.
The skills field of characters and entities won't be override by an individual Skill-id overrideData.
