mirror of
https://github.com/blitzkit/blitzkit.git
synced 2026-10-23 11:39:50 +02:00
feat: optimize awaitables
This commit is contained in:
1 parent
80fca2e53a
commit
74e85f82f1
54 files changed
+259
-190
No files matched your search
@@ -1,14 +1,11 @@
|
||||
import {
|
||||
fetchAverageDefinitions,
|
||||
fetchDiscoveredIdsDefinitions,
|
||||
} from '@blitzkit/core';
|
||||
import { awaitableAverageDefinitions } from '../core/awaitables/averageDefinitions';
|
||||
import { awaitableDiscoveredIdsDefinitions } from '../core/awaitables/discoveredIdsDefinitions';
|
||||
|
||||
const awaitedDiscoveredIdsDefinitions = await fetchDiscoveredIdsDefinitions();
|
||||
const awaitedAverageDefinitions = await fetchAverageDefinitions();
|
||||
const [discoveredIdsDefinitions, averageDefinitions] = await Promise.all([
|
||||
awaitableDiscoveredIdsDefinitions,
|
||||
awaitableAverageDefinitions,
|
||||
]);
|
||||
|
||||
export function useAveragesExclusionRatio() {
|
||||
return (
|
||||
awaitedDiscoveredIdsDefinitions.count /
|
||||
awaitedAverageDefinitions.samples.total
|
||||
);
|
||||
return discoveredIdsDefinitions.count / averageDefinitions.samples.total;
|
||||
}
|
||||
@@ -1,6 +1,7 @@
|
||||
import { fetchTankDefinitions, TankDefinition } from '@blitzkit/core';
|
||||
import { TankDefinition } from '@blitzkit/core';
|
||||
import { sumBy } from 'lodash-es';
|
||||
import { useMemo } from 'react';
|
||||
import { awaitableTankDefinitions } from '../core/awaitables/tankDefinitions';
|
||||
import { Duel } from '../stores/duel';
|
||||
|
||||
export enum UseEccentricityMode {
|
||||
@@ -8,7 +9,7 @@ export enum UseEccentricityMode {
|
||||
Class,
|
||||
}
|
||||
|
||||
const tankDefinitions = await fetchTankDefinitions();
|
||||
const tankDefinitions = await awaitableTankDefinitions;
|
||||
|
||||
export function useEccentricity(mode: UseEccentricityMode) {
|
||||
const tank = Duel.use((state) => state.protagonist.tank);
|
||||
|
||||
@@ -1,8 +1,8 @@
|
||||
import { fetchEquipmentDefinitions } from '@blitzkit/core';
|
||||
import { useMemo } from 'react';
|
||||
import { awaitableEquipmentDefinitions } from '../core/awaitables/equipmentDefinitions';
|
||||
import { Duel } from '../stores/duel';
|
||||
|
||||
const equipmentDefinitions = await fetchEquipmentDefinitions();
|
||||
const equipmentDefinitions = await awaitableEquipmentDefinitions;
|
||||
|
||||
export function useEquipment(id: number, antagonist = false) {
|
||||
const member = Duel.use(
|
||||
|
||||
Reference in new issue
Block a user