puppeteer-extra-plugin-session
Version:
A puppeteer plugin to dump and inject session data.
72 lines • 2.6 kB
JavaScript
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.SessionDataSchema = exports.CDPCookieParam = exports.CDPCookieSchema = exports.IndexedDBDatabaseSchema = exports.IndexedDBSchema = exports.CDPIndexedDBDatabaseNames = void 0;
/* eslint-disable @rushstack/typedef-var */
const zod_1 = require("zod");
/**
* @see https://chromedevtools.github.io/devtools-protocol/tot/IndexedDB/#method-requestDatabaseNames
*/
exports.CDPIndexedDBDatabaseNames = zod_1.z.object({
databaseNames: zod_1.z.array(zod_1.z.string()),
});
/**
* IndexedDB schemas
*/
exports.IndexedDBSchema = zod_1.z.string();
exports.IndexedDBDatabaseSchema = zod_1.z.object({
name: zod_1.z.string(),
data: exports.IndexedDBSchema,
securityOrigin: zod_1.z.string(),
});
const CDPSameSite = zod_1.z.enum(['Strict', 'Lax', 'None']);
const CDPCookiePriority = zod_1.z.enum(['Low', 'Medium', 'High']);
const CDPSourceScheme = zod_1.z.enum(['Unset', 'NonSecure', 'Secure']);
/**
* CDP Network.Cookie schema
* @see https://chromedevtools.github.io/devtools-protocol/tot/Network/#type-Cookie
*/
exports.CDPCookieSchema = zod_1.z.object({
name: zod_1.z.string(),
value: zod_1.z.string(),
domain: zod_1.z.string(),
path: zod_1.z.string(),
expires: zod_1.z.number(),
size: zod_1.z.number(),
httpOnly: zod_1.z.boolean(),
secure: zod_1.z.boolean(),
session: zod_1.z.boolean(),
sameSite: CDPSameSite.optional(),
priority: CDPCookiePriority,
sameParty: zod_1.z.boolean(),
sourceScheme: CDPSourceScheme,
sourcePort: zod_1.z.number(),
});
/**
* CDP Network.CookieParam schema
* @see https://chromedevtools.github.io/devtools-protocol/tot/Network/#type-CookieParam
*/
exports.CDPCookieParam = zod_1.z.object({
name: zod_1.z.string(),
value: zod_1.z.string(),
url: zod_1.z.string().optional(),
domain: zod_1.z.string().optional(),
path: zod_1.z.string().optional(),
secure: zod_1.z.boolean().optional(),
httpOnly: zod_1.z.boolean().optional(),
sameSite: CDPSameSite.optional(),
/**
* Time since Epoch
*/
expires: zod_1.z.number().optional(),
priority: CDPCookiePriority.optional(),
sameParty: zod_1.z.boolean().optional(),
sourceScheme: CDPSourceScheme.optional(),
sourcePort: zod_1.z.number().optional(),
});
exports.SessionDataSchema = zod_1.z.object({
localStorage: zod_1.z.string().optional(),
sessionStorage: zod_1.z.string().optional(),
indexedDB: zod_1.z.string().optional(),
cookie: zod_1.z.string().optional(),
});
//# sourceMappingURL=schemas.js.map