Compare commits
No commits in common. "5768ac93d908a99bf0c5e030891cf7d240fe5359" and "edfde535d268a259ab50c7228ee00d7b73b53c56" have entirely different histories.
5768ac93d9
...
edfde535d2
@ -77,9 +77,6 @@ export class StolenDataEntry extends EventEmitter {
|
|||||||
}
|
}
|
||||||
|
|
||||||
static parseValue(value: unknown): string | Record<string, unknown> {
|
static parseValue(value: unknown): string | Record<string, unknown> {
|
||||||
if (value === undefined) {
|
|
||||||
return "";
|
|
||||||
}
|
|
||||||
if (isJSONObject(value)) {
|
if (isJSONObject(value)) {
|
||||||
const object = parseToObject(value);
|
const object = parseToObject(value);
|
||||||
return object;
|
return object;
|
||||||
@ -103,24 +100,18 @@ export class StolenDataEntry extends EventEmitter {
|
|||||||
);
|
);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
const searchParams = Object.fromEntries(
|
const object = {
|
||||||
|
[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,
|
||||||
|
...Object.fromEntries(
|
||||||
((url.searchParams as unknown) as {
|
((url.searchParams as unknown) as {
|
||||||
entries: () => Iterable<[string, string]>;
|
entries: () => Iterable<[string, string]>;
|
||||||
}).entries()
|
}).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
|
|
||||||
host: url.host,
|
|
||||||
path: url.pathname,
|
|
||||||
searchParams,
|
|
||||||
...(hash === "" ? {} : typeof hash === "string" ? { hash } : hash),
|
...(hash === "" ? {} : typeof hash === "string" ? { hash } : hash),
|
||||||
};
|
};
|
||||||
return object;
|
return object;
|
||||||
} else if (value === null) {
|
|
||||||
return "null";
|
|
||||||
} else {
|
} else {
|
||||||
return value.toString();
|
return value.toString();
|
||||||
}
|
}
|
||||||
@ -190,21 +181,14 @@ export class StolenDataEntry extends EventEmitter {
|
|||||||
}
|
}
|
||||||
|
|
||||||
getValuePreview(key = ""): string {
|
getValuePreview(key = ""): string {
|
||||||
console.log("getValuePreview", key, this.getParsedValue(key));
|
|
||||||
const value = this.getParsedValue(key);
|
const value = this.getParsedValue(key);
|
||||||
const str =
|
const str = value.toString();
|
||||||
typeof value === "object" && value[Symbol.for("originalString")]
|
|
||||||
? (value[Symbol.for("originalString")] as string)
|
|
||||||
: value.toString();
|
|
||||||
if (typeof value !== "object" && this.classification == "id") {
|
if (typeof value !== "object" && this.classification == "id") {
|
||||||
return (
|
return (
|
||||||
str.slice(0, Math.min(str.length / 3, ID_PREVIEW_MAX_LENGTH)) + "(...)"
|
str.slice(0, Math.min(str.length / 3, ID_PREVIEW_MAX_LENGTH)) + "(...)"
|
||||||
);
|
);
|
||||||
} else if (
|
} else if (typeof value === "object" && value[Symbol.for("originalURL")]) {
|
||||||
typeof value === "object" &&
|
return value[Symbol.for("originalURL")] as string;
|
||||||
value[Symbol.for("originalString")]
|
|
||||||
) {
|
|
||||||
return value[Symbol.for("originalString")] as string;
|
|
||||||
} else {
|
} else {
|
||||||
return str;
|
return str;
|
||||||
}
|
}
|
||||||
|
13
util.ts
13
util.ts
@ -74,19 +74,12 @@ export async function getTabByID(id: number) {
|
|||||||
return tabs.find((tab) => tab.id == id);
|
return tabs.find((tab) => tab.id == id);
|
||||||
}
|
}
|
||||||
|
|
||||||
export function parseToObject(str: unknown): Record<string | symbol, unknown> {
|
export function parseToObject(str: unknown): Record<string, unknown> {
|
||||||
let result: Record<string | symbol, unknown>;
|
|
||||||
let original_string: string;
|
|
||||||
if (typeof str === "string") {
|
if (typeof str === "string") {
|
||||||
original_string = str;
|
return JSON.parse(str);
|
||||||
result = JSON.parse(str);
|
|
||||||
} else if (typeof str == "object") {
|
} else if (typeof str == "object") {
|
||||||
result = str as Record<string | symbol, unknown>;
|
return str as Record<string, unknown>;
|
||||||
original_string =
|
|
||||||
(result[Symbol.for("originalString")] as string) || JSON.stringify(str);
|
|
||||||
}
|
}
|
||||||
result[Symbol.for("originalString")] = original_string;
|
|
||||||
return result;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
export function isJSONObject(
|
export function isJSONObject(
|
||||||
|
Loading…
Reference in New Issue
Block a user