Compare commits

..

No commits in common. "5768ac93d908a99bf0c5e030891cf7d240fe5359" and "edfde535d268a259ab50c7228ee00d7b73b53c56" have entirely different histories.

2 changed files with 12 additions and 35 deletions

View File

@ -77,9 +77,6 @@ export class StolenDataEntry extends EventEmitter {
}
static parseValue(value: unknown): string | Record<string, unknown> {
if (value === undefined) {
return "";
}
if (isJSONObject(value)) {
const object = parseToObject(value);
return object;
@ -103,24 +100,18 @@ export class StolenDataEntry extends EventEmitter {
);
}
}
const searchParams = Object.fromEntries(
((url.searchParams as unknown) as {
entries: () => Iterable<[string, string]>;
}).entries()
);
if (typeof hash !== "object" && Object.keys(searchParams).length === 0) {
return value; // just a string;
}
const object = {
[Symbol.for("originalString")]: value, // so it doesn't appear raw in the table but can be easily retrieved later
[Symbol.for("originalURL")]: value, // so it doesn't appear raw in the table but can be easily retrieved later
host: url.host,
path: url.pathname,
searchParams,
...Object.fromEntries(
((url.searchParams as unknown) as {
entries: () => Iterable<[string, string]>;
}).entries()
),
...(hash === "" ? {} : typeof hash === "string" ? { hash } : hash),
};
return object;
} else if (value === null) {
return "null";
} else {
return value.toString();
}
@ -190,21 +181,14 @@ export class StolenDataEntry extends EventEmitter {
}
getValuePreview(key = ""): string {
console.log("getValuePreview", key, this.getParsedValue(key));
const value = this.getParsedValue(key);
const str =
typeof value === "object" && value[Symbol.for("originalString")]
? (value[Symbol.for("originalString")] as string)
: value.toString();
const str = value.toString();
if (typeof value !== "object" && this.classification == "id") {
return (
str.slice(0, Math.min(str.length / 3, ID_PREVIEW_MAX_LENGTH)) + "(...)"
);
} else if (
typeof value === "object" &&
value[Symbol.for("originalString")]
) {
return value[Symbol.for("originalString")] as string;
} else if (typeof value === "object" && value[Symbol.for("originalURL")]) {
return value[Symbol.for("originalURL")] as string;
} else {
return str;
}

13
util.ts
View File

@ -74,19 +74,12 @@ export async function getTabByID(id: number) {
return tabs.find((tab) => tab.id == id);
}
export function parseToObject(str: unknown): Record<string | symbol, unknown> {
let result: Record<string | symbol, unknown>;
let original_string: string;
export function parseToObject(str: unknown): Record<string, unknown> {
if (typeof str === "string") {
original_string = str;
result = JSON.parse(str);
return JSON.parse(str);
} else if (typeof str == "object") {
result = str as Record<string | symbol, unknown>;
original_string =
(result[Symbol.for("originalString")] as string) || JSON.stringify(str);
return str as Record<string, unknown>;
}
result[Symbol.for("originalString")] = original_string;
return result;
}
export function isJSONObject(