refactor(page-controller): remove viewportExpansion constants module
This commit is contained in:
@@ -14,7 +14,6 @@ import {
|
|||||||
scrollVertically,
|
scrollVertically,
|
||||||
selectOptionElement,
|
selectOptionElement,
|
||||||
} from './actions'
|
} from './actions'
|
||||||
import { resolveViewportExpansion } from './constants'
|
|
||||||
import * as dom from './dom'
|
import * as dom from './dom'
|
||||||
import type { FlatDomTree, InteractiveElementDomNode } from './dom/dom_tree/type'
|
import type { FlatDomTree, InteractiveElementDomNode } from './dom/dom_tree/type'
|
||||||
import { getPageInfo } from './dom/getPageInfo'
|
import { getPageInfo } from './dom/getPageInfo'
|
||||||
@@ -130,7 +129,7 @@ export class PageController extends EventTarget {
|
|||||||
const url = window.location.href
|
const url = window.location.href
|
||||||
const title = document.title
|
const title = document.title
|
||||||
const pi = getPageInfo()
|
const pi = getPageInfo()
|
||||||
const viewportExpansion = resolveViewportExpansion(this.config.viewportExpansion)
|
const viewportExpansion = dom.resolveViewportExpansion(this.config.viewportExpansion)
|
||||||
|
|
||||||
await this.updateTree()
|
await this.updateTree()
|
||||||
|
|
||||||
|
|||||||
@@ -1,20 +0,0 @@
|
|||||||
/**
|
|
||||||
* Copyright (C) 2025 Alibaba Group Holding Limited
|
|
||||||
* All rights reserved.
|
|
||||||
*/
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Viewport expansion for DOM tree extraction.
|
|
||||||
* -1 means full page (no viewport restriction)
|
|
||||||
* 0 means viewport only
|
|
||||||
* positive values expand the viewport by that many pixels
|
|
||||||
*
|
|
||||||
* @note Since isTopElement depends on elementFromPoint,
|
|
||||||
* it returns null when out of viewport, this feature has no practical use, only differ between -1 and 0
|
|
||||||
*/
|
|
||||||
// export const VIEWPORT_EXPANSION = 100
|
|
||||||
export const VIEWPORT_EXPANSION = -1
|
|
||||||
|
|
||||||
export function resolveViewportExpansion(viewportExpansion?: number): number {
|
|
||||||
return viewportExpansion ?? VIEWPORT_EXPANSION
|
|
||||||
}
|
|
||||||
@@ -1,4 +1,3 @@
|
|||||||
import { resolveViewportExpansion } from '../constants'
|
|
||||||
import domTree from './dom_tree/index.js'
|
import domTree from './dom_tree/index.js'
|
||||||
import {
|
import {
|
||||||
ElementDomNode,
|
ElementDomNode,
|
||||||
@@ -7,6 +6,21 @@ import {
|
|||||||
TextDomNode,
|
TextDomNode,
|
||||||
} from './dom_tree/type'
|
} from './dom_tree/type'
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Viewport expansion for DOM tree extraction.
|
||||||
|
* -1 means full page (no viewport restriction)
|
||||||
|
* 0 means viewport only
|
||||||
|
* positive values expand the viewport by that many pixels
|
||||||
|
*
|
||||||
|
* @note Since isTopElement depends on elementFromPoint,
|
||||||
|
* it returns null when out of viewport, this feature has no practical use, only differ between -1 and 0
|
||||||
|
*/
|
||||||
|
const DEFAULT_VIEWPORT_EXPANSION = -1
|
||||||
|
|
||||||
|
export function resolveViewportExpansion(viewportExpansion?: number): number {
|
||||||
|
return viewportExpansion ?? DEFAULT_VIEWPORT_EXPANSION
|
||||||
|
}
|
||||||
|
|
||||||
export interface DomConfig {
|
export interface DomConfig {
|
||||||
viewportExpansion?: number
|
viewportExpansion?: number
|
||||||
interactiveBlacklist?: (Element | (() => Element))[]
|
interactiveBlacklist?: (Element | (() => Element))[]
|
||||||
|
|||||||
Reference in New Issue
Block a user