mirror of
https://github.com/blitzkit/blitzkit.git
synced 2026-10-21 18:57:03 +02:00
fix: port to core 4
This commit is contained in:
1 parent
de6a4d5675
commit
3d23ea1497
68 files changed
+122
-119
No files matched your search
@@ -1,13 +1,13 @@
|
||||
import { assertSecret } from '@blitzkit/core';
|
||||
import { mkdir, writeFile } from 'fs/promises';
|
||||
import { parse as parsePath } from 'path';
|
||||
import ProgressBar from 'progress';
|
||||
import { parse as parseYaml, stringify as stringifyYaml } from 'yaml';
|
||||
import { dvp } from '../../../submodules/blitzkit-closed/src/dvp';
|
||||
import { writeDVPL } from '../../website/src/core/blitz/writeDVPL';
|
||||
import { readStringDVPL } from '../src/core/blitz/readStringDVPL';
|
||||
import { DATA } from './buildAssets/constants';
|
||||
import { readYAMLDVPL } from './core/blitz/readYAMLDVPL';
|
||||
import { assertSecret } from '@blitzkit/core';
|
||||
import { writeDVPL } from './core/blitz/writeDVPL';
|
||||
|
||||
const versionTextFile = await readStringDVPL(`${DATA}/version.txt.dvpl`);
|
||||
const currentVersion = versionTextFile
|
||||
|
||||
@@ -10,6 +10,7 @@ import {
|
||||
EquipmentRow,
|
||||
GameDefinitions,
|
||||
GunDefinition,
|
||||
MapDefinitions,
|
||||
ModelArmor,
|
||||
ModelDefinitions,
|
||||
ProvisionDefinitions,
|
||||
@@ -22,14 +23,13 @@ import {
|
||||
TankFilterDefinitionCategory,
|
||||
TankPrice,
|
||||
Tier,
|
||||
toUniqueId,
|
||||
Unlock,
|
||||
} from '@blitzkit/core';
|
||||
import { readdir } from 'fs/promises';
|
||||
import { parse as parsePath } from 'path';
|
||||
import { Vector3Tuple } from 'three';
|
||||
import { parse as parseYaml } from 'yaml';
|
||||
import { toUniqueId } from '../../../website/src/core/blitz/toUniqueId';
|
||||
import { MapDefinitions } from '../../../website/src/core/blitzkit/mapDefinitions';
|
||||
import { readStringDVPL } from '../core/blitz/readStringDVPL';
|
||||
import { readXMLDVPL } from '../core/blitz/readXMLDVPL';
|
||||
import { readYAMLDVPL } from '../core/blitz/readYAMLDVPL';
|
||||
|
||||
@@ -1,12 +1,12 @@
|
||||
import { NodeIO } from '@gltf-transform/core';
|
||||
import { readdir } from 'fs/promises';
|
||||
import { toUniqueId } from '../../../website/src/core/blitz/toUniqueId';
|
||||
import { extractArmor } from '../core/blitz/extractArmor';
|
||||
import { readXMLDVPL } from '../core/blitz/readXMLDVPL';
|
||||
import { commitAssets } from '../core/github/commitAssets';
|
||||
import { FileChange } from '../core/github/commitMultipleFiles';
|
||||
import { DATA } from './constants';
|
||||
import { VehicleDefinitionList } from './definitions';
|
||||
import { toUniqueId } from '@blitzkit/core';
|
||||
|
||||
export async function tankArmors() {
|
||||
console.log('Building tank armors...');
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
import { toUniqueId } from '@blitzkit/core';
|
||||
import { NodeIO } from '@gltf-transform/core';
|
||||
import { readdir } from 'fs/promises';
|
||||
import { toUniqueId } from '../../../website/src/core/blitz/toUniqueId';
|
||||
import { extractModel } from '../core/blitz/extractModel';
|
||||
import { readXMLDVPL } from '../core/blitz/readXMLDVPL';
|
||||
import { readYAMLDVPL } from '../core/blitz/readYAMLDVPL';
|
||||
|
||||
@@ -6,6 +6,7 @@ import {
|
||||
CdonValue,
|
||||
CdonWriteStream,
|
||||
getAccountInfo,
|
||||
patientFetchJSON,
|
||||
RatingInfo,
|
||||
RatingNeighbors,
|
||||
RatingPlayer,
|
||||
@@ -15,7 +16,6 @@ import {
|
||||
} from '@blitzkit/core';
|
||||
import { chunk } from 'lodash';
|
||||
import { argv } from 'process';
|
||||
import { patientFetchJSON } from '../../website/src/core/blitzkit/patientFetchJSON';
|
||||
import { commitAssets } from './core/github/commitAssets';
|
||||
import { FileChange } from './core/github/commitMultipleFiles';
|
||||
|
||||
|
||||
@@ -0,0 +1,64 @@
|
||||
import { crc32 } from 'crc';
|
||||
import { compressBlock } from 'lz4js';
|
||||
|
||||
/**
|
||||
* Thanks Maddoxkkm! Modernized heavily.
|
||||
*
|
||||
* https://github.com/Maddoxkkm/dvpl_converter/
|
||||
*/
|
||||
export function writeDVPL(buffer: Buffer) {
|
||||
const source = new Uint8Array(buffer);
|
||||
const destination = new Uint8Array(buffer.length);
|
||||
const compressedBlockSize = compressBlock(
|
||||
source,
|
||||
destination,
|
||||
0,
|
||||
source.length,
|
||||
0,
|
||||
);
|
||||
let output = Buffer.from(destination);
|
||||
|
||||
if (compressedBlockSize === 0 || compressedBlockSize >= buffer.length) {
|
||||
const footerBuffer = toDVPLFooter(
|
||||
buffer.length,
|
||||
buffer.length,
|
||||
crc32(buffer),
|
||||
0,
|
||||
);
|
||||
|
||||
return Buffer.concat(
|
||||
[new Uint8Array(buffer), new Uint8Array(footerBuffer)],
|
||||
buffer.length + 20,
|
||||
);
|
||||
} else {
|
||||
output = output.subarray(0, compressedBlockSize);
|
||||
const footerBuffer = toDVPLFooter(
|
||||
buffer.length,
|
||||
compressedBlockSize,
|
||||
crc32(output),
|
||||
2,
|
||||
);
|
||||
|
||||
return Buffer.concat(
|
||||
[new Uint8Array(output), new Uint8Array(footerBuffer)],
|
||||
compressedBlockSize + 20,
|
||||
);
|
||||
}
|
||||
}
|
||||
|
||||
function toDVPLFooter(
|
||||
inputSize: number,
|
||||
compressedSize: number,
|
||||
crc32: number,
|
||||
type: number,
|
||||
) {
|
||||
const result = Buffer.alloc(20);
|
||||
|
||||
result.writeUInt32LE(inputSize, 0);
|
||||
result.writeUInt32LE(compressedSize, 4);
|
||||
result.writeUInt32LE(crc32, 8);
|
||||
result.writeUInt32LE(type, 12);
|
||||
result.write('DVPL', 16, 4, 'utf8');
|
||||
|
||||
return result;
|
||||
}
|
||||
@@ -1,6 +1,6 @@
|
||||
import { assertSecret } from '@blitzkit/core';
|
||||
import { octokit } from '../../../../website/src/core/blitzkit/octokit';
|
||||
import { GithubChangeBlob, createBlob } from './createBlob';
|
||||
import { octokit } from './octokit';
|
||||
|
||||
export class AssetCommit {
|
||||
constructor(public message: string) {}
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
import ProgressBar from 'progress';
|
||||
import { octokit } from '../../../../website/src/core/blitzkit/octokit';
|
||||
import { GithubChangeBlob, createBlob } from './createBlob';
|
||||
import { octokit } from './octokit';
|
||||
|
||||
export interface FileChange {
|
||||
path: string;
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
import { throttle } from 'lodash';
|
||||
import { octokit } from '../../../../website/src/core/blitzkit/octokit';
|
||||
import { FileChange } from './commitMultipleFiles';
|
||||
import { octokit } from './octokit';
|
||||
|
||||
export interface GithubChangeBlob {
|
||||
sha: string;
|
||||
|
||||
@@ -1,8 +1,11 @@
|
||||
import { asset, DidsReadStream } from '@blitzkit/core';
|
||||
import {
|
||||
asset,
|
||||
DidsReadStream,
|
||||
DiscoveredIdsDefinitions,
|
||||
} from '@blitzkit/core';
|
||||
import { times } from 'lodash';
|
||||
import { decompress } from 'lz4js';
|
||||
import ProgressBar from 'progress';
|
||||
import { DiscoveredIdsDefinitions } from '../../../../website/src/core/blitzkit/discoveredIdDefinitions';
|
||||
|
||||
export async function fetchPreDiscoveredIds() {
|
||||
const idChunks: number[][] = [];
|
||||
|
||||
@@ -0,0 +1,9 @@
|
||||
import { assertSecret } from '@blitzkit/core';
|
||||
import { throttling } from '@octokit/plugin-throttling';
|
||||
import { Octokit } from '@octokit/rest';
|
||||
|
||||
Octokit.plugin(throttling);
|
||||
|
||||
export const octokit = new Octokit({
|
||||
auth: assertSecret(process.env.GH_TOKEN),
|
||||
});
|
||||
@@ -1,6 +1,7 @@
|
||||
import {
|
||||
DidsReadStream,
|
||||
DidsWriteStream,
|
||||
DiscoveredIdsDefinitions,
|
||||
MIN_REGION_IDS,
|
||||
REGIONS,
|
||||
Region,
|
||||
@@ -11,7 +12,6 @@ import {
|
||||
} from '@blitzkit/core';
|
||||
import { chunk, times, uniq } from 'lodash';
|
||||
import { compress, decompress } from 'lz4js';
|
||||
import { DiscoveredIdsDefinitions } from '../../website/src/core/blitzkit/discoveredIdDefinitions';
|
||||
import { commitAssets } from './core/github/commitAssets';
|
||||
|
||||
const CHUNK_SIZE = 2 ** 21;
|
||||
|
||||
@@ -3,6 +3,7 @@ import {
|
||||
decodeProtobuf,
|
||||
encodeProtobufToBase64,
|
||||
Reviews,
|
||||
toUniqueId,
|
||||
Video,
|
||||
youtubers,
|
||||
} from '@blitzkit/core';
|
||||
@@ -10,7 +11,6 @@ import { readdir } from 'fs/promises';
|
||||
import { google } from 'googleapis';
|
||||
import { cloneDeep, uniqBy } from 'lodash';
|
||||
import { parse as parseYaml } from 'yaml';
|
||||
import { toUniqueId } from '../../website/src/core/blitz/toUniqueId';
|
||||
import { DATA } from './buildAssets/constants';
|
||||
import {
|
||||
BlitzStrings,
|
||||
|
||||
Reference in new issue
Block a user