mirror of
https://github.com/stashapp/stash.git
synced 2025-12-14 20:33:16 +01:00
325 lines
12 KiB
Go
325 lines
12 KiB
Go
// Package indexeddb provides the Chrome DevTools Protocol
|
|
// commands, types, and events for the IndexedDB domain.
|
|
//
|
|
// Generated by the cdproto-gen command.
|
|
package indexeddb
|
|
|
|
// Code generated by cdproto-gen. DO NOT EDIT.
|
|
|
|
import (
|
|
"context"
|
|
|
|
"github.com/chromedp/cdproto/cdp"
|
|
)
|
|
|
|
// ClearObjectStoreParams clears all entries from an object store.
|
|
type ClearObjectStoreParams struct {
|
|
SecurityOrigin string `json:"securityOrigin"` // Security origin.
|
|
DatabaseName string `json:"databaseName"` // Database name.
|
|
ObjectStoreName string `json:"objectStoreName"` // Object store name.
|
|
}
|
|
|
|
// ClearObjectStore clears all entries from an object store.
|
|
//
|
|
// See: https://chromedevtools.github.io/devtools-protocol/tot/IndexedDB#method-clearObjectStore
|
|
//
|
|
// parameters:
|
|
// securityOrigin - Security origin.
|
|
// databaseName - Database name.
|
|
// objectStoreName - Object store name.
|
|
func ClearObjectStore(securityOrigin string, databaseName string, objectStoreName string) *ClearObjectStoreParams {
|
|
return &ClearObjectStoreParams{
|
|
SecurityOrigin: securityOrigin,
|
|
DatabaseName: databaseName,
|
|
ObjectStoreName: objectStoreName,
|
|
}
|
|
}
|
|
|
|
// Do executes IndexedDB.clearObjectStore against the provided context.
|
|
func (p *ClearObjectStoreParams) Do(ctx context.Context) (err error) {
|
|
return cdp.Execute(ctx, CommandClearObjectStore, p, nil)
|
|
}
|
|
|
|
// DeleteDatabaseParams deletes a database.
|
|
type DeleteDatabaseParams struct {
|
|
SecurityOrigin string `json:"securityOrigin"` // Security origin.
|
|
DatabaseName string `json:"databaseName"` // Database name.
|
|
}
|
|
|
|
// DeleteDatabase deletes a database.
|
|
//
|
|
// See: https://chromedevtools.github.io/devtools-protocol/tot/IndexedDB#method-deleteDatabase
|
|
//
|
|
// parameters:
|
|
// securityOrigin - Security origin.
|
|
// databaseName - Database name.
|
|
func DeleteDatabase(securityOrigin string, databaseName string) *DeleteDatabaseParams {
|
|
return &DeleteDatabaseParams{
|
|
SecurityOrigin: securityOrigin,
|
|
DatabaseName: databaseName,
|
|
}
|
|
}
|
|
|
|
// Do executes IndexedDB.deleteDatabase against the provided context.
|
|
func (p *DeleteDatabaseParams) Do(ctx context.Context) (err error) {
|
|
return cdp.Execute(ctx, CommandDeleteDatabase, p, nil)
|
|
}
|
|
|
|
// DeleteObjectStoreEntriesParams delete a range of entries from an object
|
|
// store.
|
|
type DeleteObjectStoreEntriesParams struct {
|
|
SecurityOrigin string `json:"securityOrigin"`
|
|
DatabaseName string `json:"databaseName"`
|
|
ObjectStoreName string `json:"objectStoreName"`
|
|
KeyRange *KeyRange `json:"keyRange"` // Range of entry keys to delete
|
|
}
|
|
|
|
// DeleteObjectStoreEntries delete a range of entries from an object store.
|
|
//
|
|
// See: https://chromedevtools.github.io/devtools-protocol/tot/IndexedDB#method-deleteObjectStoreEntries
|
|
//
|
|
// parameters:
|
|
// securityOrigin
|
|
// databaseName
|
|
// objectStoreName
|
|
// keyRange - Range of entry keys to delete
|
|
func DeleteObjectStoreEntries(securityOrigin string, databaseName string, objectStoreName string, keyRange *KeyRange) *DeleteObjectStoreEntriesParams {
|
|
return &DeleteObjectStoreEntriesParams{
|
|
SecurityOrigin: securityOrigin,
|
|
DatabaseName: databaseName,
|
|
ObjectStoreName: objectStoreName,
|
|
KeyRange: keyRange,
|
|
}
|
|
}
|
|
|
|
// Do executes IndexedDB.deleteObjectStoreEntries against the provided context.
|
|
func (p *DeleteObjectStoreEntriesParams) Do(ctx context.Context) (err error) {
|
|
return cdp.Execute(ctx, CommandDeleteObjectStoreEntries, p, nil)
|
|
}
|
|
|
|
// DisableParams disables events from backend.
|
|
type DisableParams struct{}
|
|
|
|
// Disable disables events from backend.
|
|
//
|
|
// See: https://chromedevtools.github.io/devtools-protocol/tot/IndexedDB#method-disable
|
|
func Disable() *DisableParams {
|
|
return &DisableParams{}
|
|
}
|
|
|
|
// Do executes IndexedDB.disable against the provided context.
|
|
func (p *DisableParams) Do(ctx context.Context) (err error) {
|
|
return cdp.Execute(ctx, CommandDisable, nil, nil)
|
|
}
|
|
|
|
// EnableParams enables events from backend.
|
|
type EnableParams struct{}
|
|
|
|
// Enable enables events from backend.
|
|
//
|
|
// See: https://chromedevtools.github.io/devtools-protocol/tot/IndexedDB#method-enable
|
|
func Enable() *EnableParams {
|
|
return &EnableParams{}
|
|
}
|
|
|
|
// Do executes IndexedDB.enable against the provided context.
|
|
func (p *EnableParams) Do(ctx context.Context) (err error) {
|
|
return cdp.Execute(ctx, CommandEnable, nil, nil)
|
|
}
|
|
|
|
// RequestDataParams requests data from object store or index.
|
|
type RequestDataParams struct {
|
|
SecurityOrigin string `json:"securityOrigin"` // Security origin.
|
|
DatabaseName string `json:"databaseName"` // Database name.
|
|
ObjectStoreName string `json:"objectStoreName"` // Object store name.
|
|
IndexName string `json:"indexName"` // Index name, empty string for object store data requests.
|
|
SkipCount int64 `json:"skipCount"` // Number of records to skip.
|
|
PageSize int64 `json:"pageSize"` // Number of records to fetch.
|
|
KeyRange *KeyRange `json:"keyRange,omitempty"` // Key range.
|
|
}
|
|
|
|
// RequestData requests data from object store or index.
|
|
//
|
|
// See: https://chromedevtools.github.io/devtools-protocol/tot/IndexedDB#method-requestData
|
|
//
|
|
// parameters:
|
|
// securityOrigin - Security origin.
|
|
// databaseName - Database name.
|
|
// objectStoreName - Object store name.
|
|
// indexName - Index name, empty string for object store data requests.
|
|
// skipCount - Number of records to skip.
|
|
// pageSize - Number of records to fetch.
|
|
func RequestData(securityOrigin string, databaseName string, objectStoreName string, indexName string, skipCount int64, pageSize int64) *RequestDataParams {
|
|
return &RequestDataParams{
|
|
SecurityOrigin: securityOrigin,
|
|
DatabaseName: databaseName,
|
|
ObjectStoreName: objectStoreName,
|
|
IndexName: indexName,
|
|
SkipCount: skipCount,
|
|
PageSize: pageSize,
|
|
}
|
|
}
|
|
|
|
// WithKeyRange key range.
|
|
func (p RequestDataParams) WithKeyRange(keyRange *KeyRange) *RequestDataParams {
|
|
p.KeyRange = keyRange
|
|
return &p
|
|
}
|
|
|
|
// RequestDataReturns return values.
|
|
type RequestDataReturns struct {
|
|
ObjectStoreDataEntries []*DataEntry `json:"objectStoreDataEntries,omitempty"` // Array of object store data entries.
|
|
HasMore bool `json:"hasMore,omitempty"` // If true, there are more entries to fetch in the given range.
|
|
}
|
|
|
|
// Do executes IndexedDB.requestData against the provided context.
|
|
//
|
|
// returns:
|
|
// objectStoreDataEntries - Array of object store data entries.
|
|
// hasMore - If true, there are more entries to fetch in the given range.
|
|
func (p *RequestDataParams) Do(ctx context.Context) (objectStoreDataEntries []*DataEntry, hasMore bool, err error) {
|
|
// execute
|
|
var res RequestDataReturns
|
|
err = cdp.Execute(ctx, CommandRequestData, p, &res)
|
|
if err != nil {
|
|
return nil, false, err
|
|
}
|
|
|
|
return res.ObjectStoreDataEntries, res.HasMore, nil
|
|
}
|
|
|
|
// GetMetadataParams gets metadata of an object store.
|
|
type GetMetadataParams struct {
|
|
SecurityOrigin string `json:"securityOrigin"` // Security origin.
|
|
DatabaseName string `json:"databaseName"` // Database name.
|
|
ObjectStoreName string `json:"objectStoreName"` // Object store name.
|
|
}
|
|
|
|
// GetMetadata gets metadata of an object store.
|
|
//
|
|
// See: https://chromedevtools.github.io/devtools-protocol/tot/IndexedDB#method-getMetadata
|
|
//
|
|
// parameters:
|
|
// securityOrigin - Security origin.
|
|
// databaseName - Database name.
|
|
// objectStoreName - Object store name.
|
|
func GetMetadata(securityOrigin string, databaseName string, objectStoreName string) *GetMetadataParams {
|
|
return &GetMetadataParams{
|
|
SecurityOrigin: securityOrigin,
|
|
DatabaseName: databaseName,
|
|
ObjectStoreName: objectStoreName,
|
|
}
|
|
}
|
|
|
|
// GetMetadataReturns return values.
|
|
type GetMetadataReturns struct {
|
|
EntriesCount float64 `json:"entriesCount,omitempty"` // the entries count
|
|
KeyGeneratorValue float64 `json:"keyGeneratorValue,omitempty"` // the current value of key generator, to become the next inserted key into the object store. Valid if objectStore.autoIncrement is true.
|
|
}
|
|
|
|
// Do executes IndexedDB.getMetadata against the provided context.
|
|
//
|
|
// returns:
|
|
// entriesCount - the entries count
|
|
// keyGeneratorValue - the current value of key generator, to become the next inserted key into the object store. Valid if objectStore.autoIncrement is true.
|
|
func (p *GetMetadataParams) Do(ctx context.Context) (entriesCount float64, keyGeneratorValue float64, err error) {
|
|
// execute
|
|
var res GetMetadataReturns
|
|
err = cdp.Execute(ctx, CommandGetMetadata, p, &res)
|
|
if err != nil {
|
|
return 0, 0, err
|
|
}
|
|
|
|
return res.EntriesCount, res.KeyGeneratorValue, nil
|
|
}
|
|
|
|
// RequestDatabaseParams requests database with given name in given frame.
|
|
type RequestDatabaseParams struct {
|
|
SecurityOrigin string `json:"securityOrigin"` // Security origin.
|
|
DatabaseName string `json:"databaseName"` // Database name.
|
|
}
|
|
|
|
// RequestDatabase requests database with given name in given frame.
|
|
//
|
|
// See: https://chromedevtools.github.io/devtools-protocol/tot/IndexedDB#method-requestDatabase
|
|
//
|
|
// parameters:
|
|
// securityOrigin - Security origin.
|
|
// databaseName - Database name.
|
|
func RequestDatabase(securityOrigin string, databaseName string) *RequestDatabaseParams {
|
|
return &RequestDatabaseParams{
|
|
SecurityOrigin: securityOrigin,
|
|
DatabaseName: databaseName,
|
|
}
|
|
}
|
|
|
|
// RequestDatabaseReturns return values.
|
|
type RequestDatabaseReturns struct {
|
|
DatabaseWithObjectStores *DatabaseWithObjectStores `json:"databaseWithObjectStores,omitempty"` // Database with an array of object stores.
|
|
}
|
|
|
|
// Do executes IndexedDB.requestDatabase against the provided context.
|
|
//
|
|
// returns:
|
|
// databaseWithObjectStores - Database with an array of object stores.
|
|
func (p *RequestDatabaseParams) Do(ctx context.Context) (databaseWithObjectStores *DatabaseWithObjectStores, err error) {
|
|
// execute
|
|
var res RequestDatabaseReturns
|
|
err = cdp.Execute(ctx, CommandRequestDatabase, p, &res)
|
|
if err != nil {
|
|
return nil, err
|
|
}
|
|
|
|
return res.DatabaseWithObjectStores, nil
|
|
}
|
|
|
|
// RequestDatabaseNamesParams requests database names for given security
|
|
// origin.
|
|
type RequestDatabaseNamesParams struct {
|
|
SecurityOrigin string `json:"securityOrigin"` // Security origin.
|
|
}
|
|
|
|
// RequestDatabaseNames requests database names for given security origin.
|
|
//
|
|
// See: https://chromedevtools.github.io/devtools-protocol/tot/IndexedDB#method-requestDatabaseNames
|
|
//
|
|
// parameters:
|
|
// securityOrigin - Security origin.
|
|
func RequestDatabaseNames(securityOrigin string) *RequestDatabaseNamesParams {
|
|
return &RequestDatabaseNamesParams{
|
|
SecurityOrigin: securityOrigin,
|
|
}
|
|
}
|
|
|
|
// RequestDatabaseNamesReturns return values.
|
|
type RequestDatabaseNamesReturns struct {
|
|
DatabaseNames []string `json:"databaseNames,omitempty"` // Database names for origin.
|
|
}
|
|
|
|
// Do executes IndexedDB.requestDatabaseNames against the provided context.
|
|
//
|
|
// returns:
|
|
// databaseNames - Database names for origin.
|
|
func (p *RequestDatabaseNamesParams) Do(ctx context.Context) (databaseNames []string, err error) {
|
|
// execute
|
|
var res RequestDatabaseNamesReturns
|
|
err = cdp.Execute(ctx, CommandRequestDatabaseNames, p, &res)
|
|
if err != nil {
|
|
return nil, err
|
|
}
|
|
|
|
return res.DatabaseNames, nil
|
|
}
|
|
|
|
// Command names.
|
|
const (
|
|
CommandClearObjectStore = "IndexedDB.clearObjectStore"
|
|
CommandDeleteDatabase = "IndexedDB.deleteDatabase"
|
|
CommandDeleteObjectStoreEntries = "IndexedDB.deleteObjectStoreEntries"
|
|
CommandDisable = "IndexedDB.disable"
|
|
CommandEnable = "IndexedDB.enable"
|
|
CommandRequestData = "IndexedDB.requestData"
|
|
CommandGetMetadata = "IndexedDB.getMetadata"
|
|
CommandRequestDatabase = "IndexedDB.requestDatabase"
|
|
CommandRequestDatabaseNames = "IndexedDB.requestDatabaseNames"
|
|
)
|