change(tracker): change attribute deprecation
This commit is contained in:
parent
74048b1ce3
commit
c8bd105c6c
2 changed files with 24 additions and 18 deletions
|
|
@ -26,40 +26,37 @@ export default class Sanitizer {
|
|||
obscureTextEmails: true,
|
||||
obscureTextNumbers: false,
|
||||
customCallback: false,
|
||||
domSanitizer: () => [false, false],
|
||||
domSanitizer: () => SanitizeLevel.Plain,
|
||||
},
|
||||
options,
|
||||
)
|
||||
}
|
||||
|
||||
handleNode(id: number, parentID: number, node: Node) {
|
||||
if (this.options.customCallback) {
|
||||
if (this.masked.has(parentID)) {
|
||||
this.masked.add(id)
|
||||
} else if (this.hiddenContainers.has(parentID)) {
|
||||
this.hiddenContainers.add(id)
|
||||
} else {
|
||||
const sanitizeLevel = this.options.domSanitizer(node)
|
||||
if (sanitizeLevel > 0) {
|
||||
const addMasked =
|
||||
sanitizeLevel === SanitizeLevel.Hidden ? this.hiddenContainers.add : this.masked.add
|
||||
addMasked(id)
|
||||
}
|
||||
}
|
||||
}
|
||||
if (
|
||||
this.masked.has(parentID) ||
|
||||
(isElementNode(node) && hasOpenreplayAttribute(node, 'masked'))
|
||||
(isElementNode(node) &&
|
||||
(hasOpenreplayAttribute(node, 'masked') || hasOpenreplayAttribute(node, 'obscured')))
|
||||
) {
|
||||
this.masked.add(id)
|
||||
}
|
||||
if (
|
||||
this.hiddenContainers.has(parentID) ||
|
||||
(isElementNode(node) &&
|
||||
(hasOpenreplayAttribute(node, 'htmlmasked') || hasOpenreplayAttribute(node, 'hidden')))
|
||||
(hasOpenreplayAttribute(node, 'htmlmasked') || hasOpenreplayAttribute(node, 'hidden-html')))
|
||||
) {
|
||||
this.hiddenContainers.add(id)
|
||||
}
|
||||
|
||||
if (this.options.customCallback) {
|
||||
const sanitizeLevel = this.options.domSanitizer(node)
|
||||
if (sanitizeLevel > 0) {
|
||||
const maskedSet =
|
||||
sanitizeLevel === SanitizeLevel.Hidden ? this.hiddenContainers : this.masked
|
||||
|
||||
maskedSet.add(id)
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
sanitize(id: number, data: string): string {
|
||||
|
|
|
|||
|
|
@ -52,9 +52,18 @@ export function getLabelAttribute(e: Element): string | null {
|
|||
}
|
||||
|
||||
export function hasOpenreplayAttribute(e: Element, name: string): boolean {
|
||||
const deprecatedNames = ['htmlmasked']
|
||||
const deprecatedNames = { htmlmasked: 'hidden-html', masked: 'obscured' }
|
||||
const newName = `data-openreplay-${name}`
|
||||
if (e.hasAttribute(newName)) {
|
||||
// @ts-ignore
|
||||
if (deprecatedNames[name]) {
|
||||
deprecationWarn(
|
||||
`"${newName}" attribute`,
|
||||
// @ts-ignore
|
||||
`"${deprecatedNames[name] as string}" attribute`,
|
||||
'/installation/sanitize-data',
|
||||
)
|
||||
}
|
||||
return true
|
||||
}
|
||||
const oldName = `data-asayer-${name}`
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue