New Case Study:See how Anthropic automated 95% of dependency reviews with Socket.Learn More
Socket
Sign inDemoInstall
Socket

@foxglove/rosbag2-web

Package Overview
Dependencies
Maintainers
4
Versions
26
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

@foxglove/rosbag2-web - npm Package Compare versions

Comparing version 0.2.1 to 1.0.0

18

dist/BlobReader.js

@@ -9,6 +9,4 @@ "use strict";

}
read(offset, length) {
return new Promise((resolve, reject) => {
offset ?? (offset = 0);
length ?? (length = Math.max(0, this.size_ - offset));
async read(offset = 0, length = Math.max(0, this.size_ - offset)) {
return await new Promise((resolve, reject) => {
const reader = new FileReader();

@@ -28,4 +26,4 @@ reader.onload = function () {

}
readAsText() {
return new Promise((resolve, reject) => {
async readAsText() {
return await new Promise((resolve, reject) => {
const reader = new FileReader();

@@ -45,7 +43,7 @@ reader.onload = function () {

}
size() {
return Promise.resolve(this.size_);
async size() {
return this.size_;
}
close() {
return Promise.resolve();
async close() {
// no-op
}

@@ -52,0 +50,0 @@ }

@@ -43,7 +43,7 @@ "use strict";

}
function getFolderEntries(folder) {
return new Promise((resolve, reject) => folder.createReader().readEntries(resolve, reject));
async function getFolderEntries(folder) {
return await new Promise((resolve, reject) => folder.createReader().readEntries(resolve, reject));
}
function getFile(fileEntry) {
return new Promise((resolve, reject) => fileEntry.file(resolve, reject));
async function getFile(fileEntry) {
return await new Promise((resolve, reject) => fileEntry.file(resolve, reject));
}

@@ -50,0 +50,0 @@ // FileSystemDirectoryHandle helpers

@@ -27,2 +27,6 @@ "use strict";

const data = await this.file.read();
if (data.length < 512) {
const size = await this.file.size();
throw new Error(`Did not read a valid Sqlite3 file. Reported size is ${size}, read ${data.length} bytes`);
}
const db = new SQL.Database(new Uint8Array(data));

@@ -42,3 +46,2 @@ // Retrieve all of the topics

this.context = { db, idToTopic, topicNameToId };
return Promise.resolve();
}

@@ -52,7 +55,7 @@ async close() {

}
readTopics() {
async readTopics() {
if (this.context == undefined) {
throw new Error(`Call open() before reading topics`);
}
return Promise.resolve(Array.from(this.context.idToTopic.values()));
return Array.from(this.context.idToTopic.values());
}

@@ -121,3 +124,3 @@ readMessages(opts = {}) {

}
timeRange() {
async timeRange() {
if (this.context == undefined) {

@@ -129,5 +132,5 @@ throw new Error(`Call open() before retrieving the time range`);

const [minNsec, maxNsec] = res;
return Promise.resolve([rostime_1.fromNanoSec(BigInt(minNsec)), rostime_1.fromNanoSec(BigInt(maxNsec))]);
return [rostime_1.fromNanoSec(BigInt(minNsec)), rostime_1.fromNanoSec(BigInt(maxNsec))];
}
messageCounts() {
async messageCounts() {
if (this.context == undefined) {

@@ -146,3 +149,3 @@ throw new Error(`Call open() before retrieving message counts`);

}
return Promise.resolve(counts);
return counts;
}

@@ -149,0 +152,0 @@ }

@@ -17,6 +17,6 @@ "use strict";

}
async read(offset, length) {
async read(offset = 0, length) {
// eslint-disable-next-line no-param-reassign
length ?? (length = Math.max(0, ((await this.size()) ?? 0) - offset));
const handle = this.handle_ ?? (await this.open());
offset ?? (offset = 0);
length ?? (length = Math.max(0, (this.size_ ?? 0) - offset));
if (length > this.buffer_.byteLength) {

@@ -32,3 +32,3 @@ const newSize = Math.max(this.buffer_.byteLength * 2, length);

async readAsText() {
return promises_1.readFile(this.filename, { encoding: "utf8" });
return await promises_1.readFile(this.filename, { encoding: "utf8" });
}

@@ -35,0 +35,0 @@ async size() {

{
"name": "@foxglove/rosbag2-web",
"version": "0.2.1",
"version": "1.0.0",
"description": "ROS2 (Robot Operating System) bag reader and writer for the browser",

@@ -25,4 +25,4 @@ "license": "MIT",

"author": {
"name": "Foxglove Technologies",
"email": "support@foxglove.dev"
"name": "Foxglove Technologies Inc",
"email": "contact@foxglove.dev"
},

@@ -45,27 +45,28 @@ "homepage": "https://github.com/foxglove/rosbag2-web",

"devDependencies": {
"@foxglove/eslint-plugin": "0.10.0",
"@types/eslint": "^7",
"@foxglove/eslint-plugin": "0.13.0",
"@types/eslint": "^7.28.0",
"@types/eslint-plugin-prettier": "^3",
"@types/jest": "^26.0.23",
"@types/prettier": "2.3.0",
"@types/prettier": "2.3.2",
"@types/sql.js": "^1.4.2",
"@types/wicg-entries-api": "^2020.8.0",
"@types/wicg-file-system-access": "^2020.9.2",
"@typescript-eslint/eslint-plugin": "4.28.0",
"@typescript-eslint/parser": "4.28.0",
"esbuild": "0.12.12",
"@typescript-eslint/eslint-plugin": "4.28.4",
"@typescript-eslint/parser": "4.28.4",
"esbuild": "0.12.15",
"esbuild-jest": "0.5.0",
"eslint": "7.29.0",
"eslint": "7.31.0",
"eslint-config-prettier": "8.3.0",
"eslint-plugin-filenames": "^1.3.2",
"eslint-plugin-import": "2.23.4",
"eslint-plugin-jest": "24.3.6",
"eslint-plugin-prettier": "3.4.0",
"jest": "27.0.5",
"prettier": "2.3.1",
"typescript": "4.3.4"
"jest": "27.0.6",
"prettier": "2.3.2",
"typescript": "4.3.5"
},
"dependencies": {
"@foxglove/rosbag2": "^0.3.0",
"@foxglove/rosbag2": "^1.0.0",
"sql.js": "^1.5.0"
}
}

@@ -12,7 +12,4 @@ import { Filelike } from "@foxglove/rosbag2";

read(offset?: number, length?: number): Promise<Uint8Array> {
return new Promise((resolve, reject) => {
offset ??= 0;
length ??= Math.max(0, this.size_ - offset);
async read(offset = 0, length = Math.max(0, this.size_ - offset)): Promise<Uint8Array> {
return await new Promise((resolve, reject) => {
const reader = new FileReader();

@@ -33,4 +30,4 @@ reader.onload = function () {

readAsText(): Promise<string> {
return new Promise((resolve, reject) => {
async readAsText(): Promise<string> {
return await new Promise((resolve, reject) => {
const reader = new FileReader();

@@ -51,9 +48,9 @@ reader.onload = function () {

size(): Promise<number> {
return Promise.resolve(this.size_);
async size(): Promise<number> {
return this.size_;
}
close(): Promise<void> {
return Promise.resolve();
async close(): Promise<void> {
// no-op
}
}

@@ -59,8 +59,8 @@ import { Rosbag2 } from "@foxglove/rosbag2";

function getFolderEntries(folder: FileSystemDirectoryEntry): Promise<FileSystemEntry[]> {
return new Promise((resolve, reject) => folder.createReader().readEntries(resolve, reject));
async function getFolderEntries(folder: FileSystemDirectoryEntry): Promise<FileSystemEntry[]> {
return await new Promise((resolve, reject) => folder.createReader().readEntries(resolve, reject));
}
function getFile(fileEntry: FileSystemFileEntry): Promise<File> {
return new Promise((resolve, reject) => fileEntry.file(resolve, reject));
async function getFile(fileEntry: FileSystemFileEntry): Promise<File> {
return await new Promise((resolve, reject) => fileEntry.file(resolve, reject));
}

@@ -67,0 +67,0 @@

@@ -27,6 +27,6 @@ import {

async read(offset?: number, length?: number): Promise<Uint8Array> {
async read(offset = 0, length?: number): Promise<Uint8Array> {
// eslint-disable-next-line no-param-reassign
length ??= Math.max(0, ((await this.size()) ?? 0) - offset);
const handle = this.handle_ ?? (await this.open());
offset ??= 0;
length ??= Math.max(0, (this.size_ ?? 0) - offset);

@@ -45,3 +45,3 @@ if (length > this.buffer_.byteLength) {

async readAsText(): Promise<string> {
return readFile(this.filename, { encoding: "utf8" });
return await readFile(this.filename, { encoding: "utf8" });
}

@@ -48,0 +48,0 @@

@@ -54,2 +54,8 @@ import {

const data = await this.file.read();
if (data.length < 512) {
const size = await this.file.size();
throw new Error(
`Did not read a valid Sqlite3 file. Reported size is ${size}, read ${data.length} bytes`,
);
}
const db = new SQL.Database(new Uint8Array(data));

@@ -73,3 +79,2 @@

this.context = { db, idToTopic, topicNameToId };
return Promise.resolve();
}

@@ -85,7 +90,7 @@

readTopics(): Promise<TopicDefinition[]> {
async readTopics(): Promise<TopicDefinition[]> {
if (this.context == undefined) {
throw new Error(`Call open() before reading topics`);
}
return Promise.resolve(Array.from(this.context.idToTopic.values()));
return Array.from(this.context.idToTopic.values());
}

@@ -153,3 +158,3 @@

timeRange(): Promise<[min: Time, max: Time]> {
async timeRange(): Promise<[min: Time, max: Time]> {
if (this.context == undefined) {

@@ -164,6 +169,6 @@ throw new Error(`Call open() before retrieving the time range`);

const [minNsec, maxNsec] = res as [string, string];
return Promise.resolve([fromNanoSec(BigInt(minNsec)), fromNanoSec(BigInt(maxNsec))]);
return [fromNanoSec(BigInt(minNsec)), fromNanoSec(BigInt(maxNsec))];
}
messageCounts(): Promise<Map<string, number>> {
async messageCounts(): Promise<Map<string, number>> {
if (this.context == undefined) {

@@ -184,3 +189,3 @@ throw new Error(`Call open() before retrieving message counts`);

}
return Promise.resolve(counts);
return counts;
}

@@ -187,0 +192,0 @@ }

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc