mirror of
https://github.com/jwetzell/psn-js.git
synced 2026-09-01 12:29:15 +00:00
format
This commit is contained in:
@@ -1,33 +1,38 @@
|
||||
import { Constants } from '../../constants.js';
|
||||
import type { DataTrackerListChunk, DataTrackerListChunkData } from '../../models/data/data-tracker-list-chunk.js';
|
||||
import type {
|
||||
DataTrackerListChunk,
|
||||
DataTrackerListChunkData,
|
||||
} from '../../models/data/data-tracker-list-chunk.js';
|
||||
import type { DataTrackerChunk } from '../../models/index.js';
|
||||
import { Decoders } from '../index.js';
|
||||
|
||||
export default (buffer: Uint8Array): DataTrackerListChunk => {
|
||||
const chunk = Decoders.Chunk(buffer);
|
||||
const trackers: DataTrackerChunk[] = [];
|
||||
const chunk = Decoders.Chunk(buffer);
|
||||
const trackers: DataTrackerChunk[] = [];
|
||||
|
||||
// TODO(jwetzell): add error handling
|
||||
if (chunk.chunkData) {
|
||||
let offset = 0;
|
||||
while (offset < chunk.chunkData.length) {
|
||||
const trackerChunk = Decoders.DataTrackerChunk(chunk.chunkData.subarray(offset));
|
||||
offset += Constants.CHUNK_HEADER_SIZE;
|
||||
if (trackerChunk.chunk.header.dataLen) {
|
||||
offset += trackerChunk.chunk.header.dataLen;
|
||||
}
|
||||
if (trackerChunk.chunk.header.id !== undefined) {
|
||||
trackers.push(trackerChunk);
|
||||
}
|
||||
}
|
||||
}
|
||||
// TODO(jwetzell): add error handling
|
||||
if (chunk.chunkData) {
|
||||
let offset = 0;
|
||||
while (offset < chunk.chunkData.length) {
|
||||
const trackerChunk = Decoders.DataTrackerChunk(
|
||||
chunk.chunkData.subarray(offset)
|
||||
);
|
||||
offset += Constants.CHUNK_HEADER_SIZE;
|
||||
if (trackerChunk.chunk.header.dataLen) {
|
||||
offset += trackerChunk.chunk.header.dataLen;
|
||||
}
|
||||
if (trackerChunk.chunk.header.id !== undefined) {
|
||||
trackers.push(trackerChunk);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
const data: DataTrackerListChunkData = {
|
||||
trackers,
|
||||
};
|
||||
const data: DataTrackerListChunkData = {
|
||||
trackers,
|
||||
};
|
||||
|
||||
return {
|
||||
chunk,
|
||||
data,
|
||||
};
|
||||
return {
|
||||
chunk,
|
||||
data,
|
||||
};
|
||||
};
|
||||
|
||||
Reference in New Issue
Block a user