dompurify 3.4.2 → 3.4.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1 +1 @@
1
- {"version":3,"file":"purify.min.js","sources":["../src/utils.ts","../src/tags.ts","../src/attrs.ts","../src/regexp.ts","../src/purify.ts"],"sourcesContent":[null,null,null,null,null],"names":["entries","setPrototypeOf","isFrozen","getPrototypeOf","getOwnPropertyDescriptor","Object","freeze","seal","create","apply","construct","Reflect","x","func","thisArg","_len","arguments","length","args","Array","_key","Func","_len2","_key2","arrayForEach","unapply","prototype","forEach","arrayLastIndexOf","lastIndexOf","arrayPop","pop","arrayPush","push","arraySplice","splice","arrayIsArray","isArray","stringToLowerCase","String","toLowerCase","stringToString","toString","stringMatch","match","stringReplace","replace","stringIndexOf","indexOf","stringTrim","trim","numberToString","Number","booleanToString","Boolean","bigintToString","BigInt","symbolToString","Symbol","objectHasOwnProperty","hasOwnProperty","objectToString","regExpTest","RegExp","test","typeErrorCreate","TypeError","_len4","_key4","lastIndex","_len3","_key3","addToSet","set","array","transformCaseFunc","l","element","lcElement","cleanArray","index","clone","object","newObject","property","value","constructor","lookupGetter","prop","desc","get","html","svg","svgFilters","svgDisallowed","mathMl","mathMlDisallowed","text","xml","MUSTACHE_EXPR","ERB_EXPR","TMPLIT_EXPR","DATA_ATTR","ARIA_ATTR","IS_ALLOWED_URI","IS_SCRIPT_OR_DATA","ATTR_WHITESPACE","DOCTYPE_NAME","CUSTOM_ELEMENT","NODE_TYPE","getGlobal","window","purify","createDOMPurify","undefined","DOMPurify","root","version","VERSION","removed","document","nodeType","Element","isSupported","originalDocument","currentScript","DocumentFragment","HTMLTemplateElement","Node","NodeFilter","NamedNodeMap","MozNamedAttrMap","HTMLFormElement","DOMParser","trustedTypes","ElementPrototype","cloneNode","remove","getNextSibling","getChildNodes","getParentNode","template","createElement","content","ownerDocument","trustedTypesPolicy","emptyHTML","implementation","createNodeIterator","createDocumentFragment","getElementsByTagName","importNode","hooks","afterSanitizeAttributes","afterSanitizeElements","afterSanitizeShadowDOM","beforeSanitizeAttributes","beforeSanitizeElements","beforeSanitizeShadowDOM","uponSanitizeAttribute","uponSanitizeElement","uponSanitizeShadowNode","createHTMLDocument","EXPRESSIONS","ALLOWED_TAGS","DEFAULT_ALLOWED_TAGS","TAGS","ALLOWED_ATTR","DEFAULT_ALLOWED_ATTR","ATTRS","CUSTOM_ELEMENT_HANDLING","tagNameCheck","writable","configurable","enumerable","attributeNameCheck","allowCustomizedBuiltInElements","FORBID_TAGS","FORBID_ATTR","EXTRA_ELEMENT_HANDLING","tagCheck","attributeCheck","ALLOW_ARIA_ATTR","ALLOW_DATA_ATTR","ALLOW_UNKNOWN_PROTOCOLS","ALLOW_SELF_CLOSE_IN_ATTR","SAFE_FOR_TEMPLATES","SAFE_FOR_XML","WHOLE_DOCUMENT","SET_CONFIG","FORCE_BODY","RETURN_DOM","RETURN_DOM_FRAGMENT","RETURN_TRUSTED_TYPE","SANITIZE_DOM","SANITIZE_NAMED_PROPS","SANITIZE_NAMED_PROPS_PREFIX","KEEP_CONTENT","IN_PLACE","USE_PROFILES","FORBID_CONTENTS","DEFAULT_FORBID_CONTENTS","DATA_URI_TAGS","DEFAULT_DATA_URI_TAGS","URI_SAFE_ATTRIBUTES","DEFAULT_URI_SAFE_ATTRIBUTES","MATHML_NAMESPACE","SVG_NAMESPACE","HTML_NAMESPACE","NAMESPACE","IS_EMPTY_INPUT","ALLOWED_NAMESPACES","DEFAULT_ALLOWED_NAMESPACES","MATHML_TEXT_INTEGRATION_POINTS","HTML_INTEGRATION_POINTS","COMMON_SVG_AND_HTML_ELEMENTS","PARSER_MEDIA_TYPE","SUPPORTED_PARSER_MEDIA_TYPES","CONFIG","formElement","isRegexOrFunction","testValue","Function","_parseConfig","cfg","ADD_URI_SAFE_ATTR","ADD_DATA_URI_TAGS","_unused","isRegex","ALLOWED_URI_REGEXP","customElementHandling","ADD_TAGS","ADD_ATTR","ADD_FORBID_CONTENTS","table","tbody","TRUSTED_TYPES_POLICY","createHTML","createScriptURL","purifyHostElement","createPolicy","suffix","ATTR_NAME","hasAttribute","getAttribute","policyName","scriptUrl","_","console","warn","_createTrustedTypesPolicy","ALL_SVG_TAGS","ALL_MATHML_TAGS","_forceRemove","node","removeChild","_removeAttribute","name","attribute","getAttributeNode","from","removeAttribute","setAttribute","_initDocument","dirty","doc","leadingWhitespace","matches","dirtyPayload","parseFromString","documentElement","createDocument","innerHTML","body","insertBefore","createTextNode","childNodes","call","_createNodeIterator","SHOW_ELEMENT","SHOW_COMMENT","SHOW_TEXT","SHOW_PROCESSING_INSTRUCTION","SHOW_CDATA_SECTION","_isClobbered","nodeName","textContent","attributes","namespaceURI","hasChildNodes","_isNode","_executeHooks","currentNode","data","hook","_sanitizeElements","tagName","allowedTags","firstElementChild","_isBasicCustomElement","parentNode","i","childClone","parent","parentTagName","_checkValidNamespace","expr","_isValidAttribute","lcTag","lcName","nameIsPermitted","RESERVED_CUSTOM_ELEMENT_NAMES","_sanitizeAttributes","hookEvent","attrName","attrValue","keepAttr","allowedAttributes","forceKeepAttr","attr","initValue","getAttributeType","setAttributeNS","_sanitizeShadowDOM","fragment","shadowNode","shadowIterator","nextNode","sanitize","importedNode","returnNode","valueAsRecord","valueToString","stringified","stringifyValue","nn","appendChild","firstChild","nodeIterator","normalize","shadowroot","shadowrootmode","serializedHTML","outerHTML","doctype","setConfig","clearConfig","isValidAttribute","tag","addHook","entryPoint","hookFunction","removeHook","removeHooks","removeAllHooks"],"mappings":"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PL,EACAM,GAEA,KAAkB,OAAXN,GAAiB,CACtB,MAAMO,EAAOrF,EAAyB8E,EAAQM,GAE9C,GAAIC,EAAM,CACR,GAAIA,EAAKC,IACP,OAAOjE,EAAQgE,EAAKC,KAGtB,GAA0B,mBAAfD,EAAKJ,MACd,OAAO5D,EAAQgE,EAAKJ,MAExB,CAEAH,EAAS/E,EAAe+E,EAC1B,CAMA,OAJA,WACE,OAAO,IACT,CAGF,CC1RO,MAAMS,EAAOrF,EAAO,CACzB,IACA,OACA,UACA,UACA,OACA,UACA,QACA,QACA,IACA,MACA,MACA,MACA,QACA,aACA,OACA,KACA,SACA,SACA,UACA,SACA,OACA,OACA,MACA,WACA,UACA,OACA,WACA,KACA,YACA,MACA,UACA,MACA,SACA,MACA,MACA,KACA,KACA,UACA,KACA,WACA,aACA,SACA,OACA,SACA,OACA,KACA,KACA,KACA,KACA,KACA,KACA,OACA,SACA,SACA,KACA,OACA,IACA,MACA,QACA,MACA,MACA,QACA,SACA,KACA,OACA,MACA,OACA,UACA,OACA,WACA,QACA,MACA,OACA,KACA,WACA,SACA,SACA,IACA,UACA,MACA,WACA,IACA,KACA,KACA,OACA,IACA,OACA,SACA,UACA,SACA,SACA,OACA,QACA,SACA,SACA,OACA,SACA,SACA,QACA,MACA,UACA,MACA,QACA,QACA,KACA,WACA,WACA,QACA,KACA,QACA,OACA,KACA,QACA,KACA,IACA,KACA,MACA,QACA,QAGWsF,EAAMtF,EAAO,CACxB,MACA,IACA,WACA,cACA,eACA,eACA,gBACA,mBACA,SACA,WACA,OACA,OACA,UACA,eACA,cACA,SACA,OACA,IACA,QACA,WACA,QACA,QACA,YACA,OACA,iBACA,SACA,OACA,WACA,QACA,OACA,OACA,UACA,UACA,WACA,iBACA,OACA,OACA,QACA,SACA,SACA,OACA,WACA,QACA,OACA,QACA,OACA,UAGWuF,EAAavF,EAAO,CAC/B,UACA,gBACA,sBACA,cACA,mBACA,oBACA,oBACA,iBACA,eACA,UACA,UACA,UACA,UACA,UACA,iBACA,UACA,UACA,cACA,eACA,WACA,eACA,qBACA,cACA,SACA,iBAOWwF,EAAgBxF,EAAO,CAClC,UACA,gBACA,SACA,UACA,YACA,mBACA,iBACA,gBACA,gBACA,gBACA,QACA,YACA,OACA,eACA,YACA,UACA,gBACA,SACA,MACA,aACA,UACA,QAGWyF,EAASzF,EAAO,CAC3B,OACA,WACA,SACA,UACA,QACA,SACA,KACA,aACA,gBACA,KACA,KACA,QACA,UACA,WACA,QACA,OACA,KACA,SACA,QACA,SACA,OACA,OACA,UACA,SACA,MACA,QACA,MACA,SACA,aACA,gBAKW0F,EAAmB1F,EAAO,CACrC,UACA,cACA,aACA,WACA,YACA,UACA,UACA,SACA,SACA,QACA,YACA,aACA,iBACA,cACA,SAGW2F,EAAO3F,EAAO,CAAC,UC1RfqF,EAAOrF,EAAO,CACzB,SACA,SACA,QACA,MACA,iBACA,eACA,uBACA,WACA,aACA,UACA,SACA,UACA,cACA,cACA,UACA,OACA,QACA,QACA,QACA,OACA,UACA,WACA,eACA,SACA,cACA,WACA,WACA,UACA,MACA,WACA,0BACA,wBACA,WACA,YACA,UACA,eACA,cACA,OACA,MACA,UACA,SACA,SACA,OACA,OACA,WACA,KACA,QACA,YACA,YACA,QACA,OACA,QACA,OACA,OACA,UACA,OACA,MACA,MACA,YACA,QACA,SACA,MACA,YACA,WACA,QACA,OACA,QACA,UACA,aACA,SACA,OACA,UACA,OACA,UACA,cACA,cACA,UACA,gBACA,sBACA,SACA,UACA,UACA,aACA,WACA,MACA,WACA,MACA,WACA,OACA,OACA,UACA,aACA,QACA,WACA,QACA,OACA,QACA,OACA,OACA,UACA,QACA,MACA,SACA,OACA,QACA,UACA,WACA,QACA,YACA,OACA,SACA,SACA,QACA,QACA,OACA,UAGWsF,EAAMtF,EAAO,CACxB,gBACA,aACA,WACA,qBACA,YACA,SACA,gBACA,gBACA,UACA,gBACA,iBACA,QACA,OACA,KACA,QACA,OACA,gBACA,YACA,YACA,QACA,sBACA,8BACA,gBACA,kBACA,KACA,KACA,IACA,KACA,KACA,kBACA,YACA,UACA,UACA,MACA,WACA,YACA,MACA,WACA,OACA,eACA,YACA,SACA,cACA,cACA,gBACA,cACA,YACA,mBACA,eACA,aACA,eACA,cACA,KACA,KACA,KACA,KACA,aACA,WACA,gBACA,oBACA,SACA,OACA,KACA,kBACA,KACA,MACA,YACA,IACA,KACA,KACA,KACA,KACA,UACA,YACA,aACA,WACA,OACA,eACA,iBACA,eACA,mBACA,iBACA,QACA,aACA,aACA,eACA,eACA,cACA,cACA,mBACA,YACA,MACA,OACA,YACA,QACA,SACA,OACA,MACA,OACA,aACA,SACA,WACA,UACA,QACA,SACA,cACA,SACA,WACA,cACA,OACA,aACA,sBACA,mBACA,eACA,SACA,gBACA,sBACA,iBACA,IACA,KACA,KACA,SACA,OACA,OACA,cACA,YACA,UACA,SACA,SACA,QACA,OACA,kBACA,QACA,mBACA,mBACA,eACA,cACA,eACA,cACA,aACA,eACA,mBACA,oBACA,iBACA,kBACA,oBACA,iBACA,SACA,eACA,QACA,eACA,iBACA,WACA,cACA,UACA,UACA,YACA,mBACA,cACA,kBACA,iBACA,aACA,OACA,KACA,KACA,UACA,SACA,UACA,aACA,UACA,aACA,gBACA,gBACA,QACA,eACA,OACA,eACA,mBACA,mBACA,IACA,KACA,KACA,QACA,IACA,KACA,KACA,IACA,eAGWyF,EAASzF,EAAO,CAC3B,SACA,cACA,QACA,WACA,QACA,cACA,cACA,gBACA,aACA,aACA,QACA,MACA,UACA,eACA,WACA,QACA,QACA,SACA,OACA,KACA,UACA,SACA,gBACA,SACA,SACA,iBACA,YACA,WACA,cACA,UACA,UACA,gBACA,WACA,WACA,OACA,WACA,WACA,aACA,UACA,SACA,SACA,cACA,gBACA,uBACA,YACA,YACA,aACA,WACA,iBACA,iBACA,YACA,UA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"}
1
+ {"version":3,"file":"purify.min.js","sources":["../src/utils.ts","../src/tags.ts","../src/attrs.ts","../src/regexp.ts","../src/purify.ts"],"sourcesContent":[null,null,null,null,null],"names":["entries","Object","setPrototypeOf","isFrozen","getPrototypeOf","getOwnPropertyDescriptor","freeze","seal","create","_ref","Reflect","apply","construct","x","func","thisArg","_len","arguments","length","args","Array","_key","Func","_len2","_key2","arrayForEach","unapply","prototype","forEach","arrayLastIndexOf","lastIndexOf","arrayPop","pop","arrayPush","push","arraySplice","splice","arrayIsArray","isArray","stringToLowerCase","String","toLowerCase","stringToString","toString","stringMatch","match","stringReplace","replace","stringIndexOf","indexOf","stringTrim","trim","numberToString","Number","booleanToString","Boolean","bigintToString","BigInt","symbolToString","Symbol","objectHasOwnProperty","hasOwnProperty","objectToString","regExpTest","RegExp","test","typeErrorCreate","TypeError","_len4","_key4","lastIndex","_len3","_key3","addToSet","set","array","transformCaseFunc","l","element","lcElement","cleanArray","index","clone","object","newObject","_ref2","_ref3","_slicedToArray","property","value","constructor","lookupGetter","prop","desc","get","html","svg","svgFilters","svgDisallowed","mathMl","mathMlDisallowed","text","xml","MUSTACHE_EXPR","ERB_EXPR","TMPLIT_EXPR","DATA_ATTR","ARIA_ATTR","IS_ALLOWED_URI","IS_SCRIPT_OR_DATA","ATTR_WHITESPACE","DOCTYPE_NAME","CUSTOM_ELEMENT","NODE_TYPE","getGlobal","window","purify","createDOMPurify","undefined","DOMPurify","root","version","VERSION","removed","document","nodeType","Element","isSupported","originalDocument","currentScript","DocumentFragment","HTMLTemplateElement","Node","NodeFilter","_window$NamedNodeMap","NamedNodeMap","MozNamedAttrMap","HTMLFormElement","DOMParser","trustedTypes","ElementPrototype","cloneNode","remove","getNextSibling","getChildNodes","getParentNode","getNodeType","template","createElement","content","ownerDocument","trustedTypesPolicy","emptyHTML","_document","implementation","createNodeIterator","createDocumentFragment","getElementsByTagName","importNode","hooks","afterSanitizeAttributes","afterSanitizeElements","afterSanitizeShadowDOM","beforeSanitizeAttributes","beforeSanitizeElements","beforeSanitizeShadowDOM","uponSanitizeAttribute","uponSanitizeElement","uponSanitizeShadowNode","createHTMLDocument","EXPRESSIONS","ALLOWED_TAGS","DEFAULT_ALLOWED_TAGS","TAGS","ALLOWED_ATTR","DEFAULT_ALLOWED_ATTR","ATTRS","CUSTOM_ELEMENT_HANDLING","tagNameCheck","writable","configurable","enumerable","attributeNameCheck","allowCustomizedBuiltInElements","FORBID_TAGS","FORBID_ATTR","EXTRA_ELEMENT_HANDLING","tagCheck","attributeCheck","ALLOW_ARIA_ATTR","ALLOW_DATA_ATTR","ALLOW_UNKNOWN_PROTOCOLS","ALLOW_SELF_CLOSE_IN_ATTR","SAFE_FOR_TEMPLATES","SAFE_FOR_XML","WHOLE_DOCUMENT","SET_CONFIG","FORCE_BODY","RETURN_DOM","RETURN_DOM_FRAGMENT","RETURN_TRUSTED_TYPE","SANITIZE_DOM","SANITIZE_NAMED_PROPS","SANITIZE_NAMED_PROPS_PREFIX","KEEP_CONTENT","IN_PLACE","USE_PROFILES","FORBID_CONTENTS","DEFAULT_FORBID_CONTENTS","DATA_URI_TAGS","DEFAULT_DATA_URI_TAGS","URI_SAFE_ATTRIBUTES","DEFAULT_URI_SAFE_ATTRIBUTES","MATHML_NAMESPACE","SVG_NAMESPACE","HTML_NAMESPACE","NAMESPACE","IS_EMPTY_INPUT","ALLOWED_NAMESPACES","DEFAULT_ALLOWED_NAMESPACES","MATHML_TEXT_INTEGRATION_POINTS","HTML_INTEGRATION_POINTS","COMMON_SVG_AND_HTML_ELEMENTS","PARSER_MEDIA_TYPE","SUPPORTED_PARSER_MEDIA_TYPES","CONFIG","formElement","isRegexOrFunction","testValue","Function","_parseConfig","cfg","ADD_URI_SAFE_ATTR","ADD_DATA_URI_TAGS","_unused","isRegex","ALLOWED_URI_REGEXP","customElementHandling","ADD_TAGS","ADD_ATTR","ADD_FORBID_CONTENTS","table","tbody","TRUSTED_TYPES_POLICY","createHTML","createScriptURL","purifyHostElement","createPolicy","suffix","ATTR_NAME","hasAttribute","getAttribute","policyName","scriptUrl","_","console","warn","_createTrustedTypesPolicy","ALL_SVG_TAGS","ALL_MATHML_TAGS","_forceRemove","node","removeChild","_removeAttribute","name","attribute","getAttributeNode","from","removeAttribute","setAttribute","_initDocument","dirty","doc","leadingWhitespace","matches","dirtyPayload","parseFromString","documentElement","createDocument","innerHTML","body","insertBefore","createTextNode","childNodes","call","_createNodeIterator","SHOW_ELEMENT","SHOW_COMMENT","SHOW_TEXT","SHOW_PROCESSING_INSTRUCTION","SHOW_CDATA_SECTION","_scrubTemplateExpressions","normalize","walker","currentNode","nextNode","data","expr","_isClobbered","nodeName","textContent","attributes","namespaceURI","hasChildNodes","_isNode","_executeHooks","hook","_sanitizeElements","tagName","allowedTags","firstElementChild","_isBasicCustomElement","parentNode","i","childClone","parent","parentTagName","_checkValidNamespace","_isValidAttribute","lcTag","lcName","nameIsPermitted","RESERVED_CUSTOM_ELEMENT_NAMES","_sanitizeAttributes","hookEvent","attrName","attrValue","keepAttr","allowedAttributes","forceKeepAttr","attr","initValue","getAttributeType","setAttributeNS","_sanitizeShadowDOM","fragment","shadowNode","shadowIterator","_sanitizeAttachedShadowRoots","shadowRoot","sr","snapshot","child","sanitize","importedNode","returnNode","valueAsRecord","valueToString","stringified","stringifyValue","nn","appendChild","firstChild","nodeIterator","shadowroot","shadowrootmode","serializedHTML","outerHTML","doctype","setConfig","clearConfig","isValidAttribute","tag","addHook","entryPoint","hookFunction","removeHook","removeHooks","removeAllHooks"],"mappings":"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AEjCA,GACiB,iBAAVA,GACPA,EAAMC,cAAgBzF,OAEtBmF,EAAUI,GAAYN,EAAMO,GAE5BL,EAAUI,GAAYC,EAG5B,CAEA,OAAOL,CACT,CAmEA,SAASO,EACPR,EACAS,GAEA,KAAkB,OAAXT,GAAiB,CACtB,MAAMU,EAAOxF,EAAyB8E,EAAQS,GAE9C,GAAIC,EAAM,CACR,GAAIA,EAAKC,IACP,OAAOpE,EAAQmE,EAAKC,KAGtB,GAA0B,mBAAfD,EAAKJ,MACd,OAAO/D,EAAQmE,EAAKJ,MAExB,CAEAN,EAAS/E,EAAe+E,EAC1B,CAMA,OAJA,WACE,OAAO,IACT,CAGF,CC1RO,MAAMY,EAAOzF,EAAO,CACzB,IACA,OACA,UACA,UACA,OACA,UACA,QACA,QACA,IACA,MACA,MACA,MACA,QACA,aACA,OACA,KACA,SACA,SACA,UACA,SACA,OACA,OACA,MACA,WACA,UACA,OACA,WACA,KACA,YACA,MACA,UACA,MACA,SACA,MACA,MACA,KACA,KACA,UACA,KACA,WACA,aACA,SACA,OACA,SACA,OACA,KACA,KACA,KACA,KACA,KACA,KACA,OACA,SACA,SACA,KACA,OACA,IACA,MACA,QACA,MACA,MACA,QACA,SACA,KACA,OACA,MACA,OACA,UACA,OACA,WACA,QACA,MACA,OACA,KACA,WACA,SACA,SACA,IACA,UACA,MACA,WACA,IACA,KACA,KACA,OACA,IACA,OACA,SACA,UACA,SACA,kBACA,SACA,OACA,QACA,SACA,SACA,OACA,SACA,SACA,QACA,MACA,UACA,MACA,QACA,QACA,KACA,WACA,WACA,QACA,KACA,QACA,OACA,KACA,QACA,KACA,IACA,KACA,MACA,QACA,QAGW0F,EAAM1F,EAAO,CACxB,MACA,IACA,WACA,cACA,eACA,eACA,gBACA,mBACA,SACA,WACA,OACA,OACA,UACA,eACA,cACA,SACA,OACA,IACA,QACA,WACA,QACA,QACA,YACA,OACA,iBACA,SACA,OACA,WACA,QACA,OACA,OACA,UACA,UACA,WACA,iBACA,OACA,OACA,QACA,SACA,SACA,OACA,WACA,QACA,OACA,QACA,OACA,UAGW2F,EAAa3F,EAAO,CAC/B,UACA,gBACA,sBACA,cACA,mBACA,oBACA,oBACA,iBACA,eACA,UACA,UACA,UACA,UACA,UACA,iBACA,UACA,UACA,cACA,eACA,WACA,eACA,qBACA,cACA,SACA,iBAOW4F,EAAgB5F,EAAO,CAClC,UACA,gBACA,SACA,UACA,YACA,mBACA,iBACA,gBACA,gBACA,gBACA,QACA,YACA,OACA,eACA,YACA,UACA,gBACA,SACA,MACA,aACA,UACA,QAGW6F,EAAS7F,EAAO,CAC3B,OACA,WACA,SACA,UACA,QACA,SACA,KACA,aACA,gBACA,KACA,KACA,QACA,UACA,WACA,QACA,OACA,KACA,SACA,QACA,SACA,OACA,OACA,UACA,SACA,MACA,QACA,MACA,SACA,aACA,gBAKW8F,EAAmB9F,EAAO,CACrC,UACA,cACA,aACA,WACA,YACA,UACA,UACA,SACA,SACA,QACA,YACA,aACA,iBACA,cACA,SAGW+F,EAAO/F,EAAO,CAAC,UC3RfyF,EAAOzF,EAAO,CACzB,SACA,SACA,QACA,MACA,iBACA,eACA,uBACA,WACA,aACA,UACA,SACA,UACA,cACA,cACA,UACA,OACA,QACA,QACA,QACA,OACA,UACA,UACA,aACA,WACA,eACA,SACA,cACA,WACA,WACA,UACA,MACA,WACA,0BACA,wBACA,WACA,YACA,UACA,eACA,cACA,OACA,MACA,UACA,SACA,SACA,OACA,OACA,WACA,KACA,QACA,YACA,YACA,QACA,OACA,QACA,OACA,OACA,UACA,OACA,MACA,MACA,YACA,QACA,SACA,MACA,YACA,WACA,QACA,OACA,QACA,UACA,aACA,SACA,OACA,UACA,OACA,UACA,cACA,cACA,UACA,gBACA,sBACA,SACA,UACA,UACA,aACA,WACA,MACA,WACA,MACA,WACA,OACA,OACA,UACA,aACA,QACA,WACA,QACA,OACA,QACA,OACA,OACA,UACA,QACA,MACA,SACA,OACA,QACA,UACA,WACA,QACA,YACA,OACA,SACA,SACA,QACA,QACA,OACA,UAGW0F,EAAM1F,EAAO,CACxB,gBACA,aACA,WACA,qBACA,YACA,SACA,gBACA,gBACA,UACA,gBACA,iBACA,QACA,OACA,KACA,QACA,OACA,gBACA,YACA,YACA,QACA,sBACA,8BACA,gBACA,kBACA,KACA,KACA,IACA,KACA,KACA,kBACA,YACA,UACA,UACA,MACA,WACA,YACA,MACA,WACA,OACA,eACA,YACA,SACA,cACA,cACA,gBACA,cACA,YACA,mBACA,eACA,aACA,eACA,cACA,KACA,KACA,KACA,KACA,aACA,WACA,gBACA,oBACA,SACA,OACA,KACA,kBACA,KACA,MACA,YACA,IACA,KACA,KACA,KACA,KACA,UACA,YACA,aACA,WACA,OACA,eACA,iBACA,eACA,mBACA,iBACA,QACA,aACA,aACA,eACA,eACA,cACA,cACA,mBACA,YACA,MACA,OACA,YACA,QACA,SACA,OACA,MACA,OACA,aACA,SACA,WACA,UACA,QACA,SACA,cACA,SACA,WACA,cACA,OACA,aACA,sBACA,mBACA,eACA,SACA,gBACA,sBACA,iBACA,IACA,KACA,KACA,SACA,OACA,OACA,cACA,YACA,UACA,SACA,SACA,QACA,OACA,kBACA,QACA,mBACA,mBACA,eACA,cACA,eACA,cACA,aACA,eACA,mBACA,oBACA,iBACA,kBACA,oBACA,iBACA,SACA,eACA,QACA,eACA,iBACA,WACA,cACA,UACA,UACA,YACA,mBACA,cACA,kBACA,iBACA,aACA,OACA,KACA,KACA,UACA,SACA,UACA,aACA,UACA,aACA,gBACA,gBACA,QACA,eACA,OACA,eACA,mBACA,mBACA,IACA,KACA,KACA,QACA,IACA,KACA,KACA,IACA,eAGW6F,EAAS7F,EAAO,CAC3B,SACA,cACA,QACA,WACA,QACA,cACA,cACA,gBACA,aACA,aACA,QACA,MACA,UACA,eACA,WACA,QACA,QACA,SACA,OACA,KACA,UACA,SACA,gBACA,SACA,SACA,i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"}
package/package.json CHANGED
@@ -108,27 +108,27 @@
108
108
  },
109
109
  "devDependencies": {
110
110
  "@babel/core": "^7.17.8",
111
- "@babel/preset-env": "^7.29.2",
112
- "@playwright/test": "^1.49.0",
111
+ "@babel/preset-env": "^7.29.5",
112
+ "@playwright/test": "^1.60.0",
113
113
  "@rollup/plugin-babel": "^7.0.0",
114
114
  "@rollup/plugin-node-resolve": "^16.0.3",
115
115
  "@rollup/plugin-replace": "^6.0.1",
116
116
  "@rollup/plugin-terser": "^1.0.0",
117
117
  "@rollup/plugin-typescript": "^12.3.0",
118
- "@types/estree": "^1.0.0",
119
- "@types/node": "^25.6.0",
118
+ "@types/estree": "^1.0.9",
119
+ "@types/node": "^25.8.0",
120
120
  "cross-env": "^10.1.0",
121
121
  "eslint-config-prettier": "^10.1.8",
122
122
  "eslint-plugin-prettier": "^5.2.1",
123
- "fast-check": "^4.7.0",
123
+ "fast-check": "^4.8.0",
124
124
  "husky": "^9.1.0",
125
125
  "jquery": "^3.6.0",
126
- "jsdom": "^29.1.0",
126
+ "jsdom": "^29.1.1",
127
127
  "prettier": "^3.3.3",
128
128
  "qunit": "^2.4.1",
129
129
  "qunit-tap": "^1.5.0",
130
130
  "rimraf": "^6.0.1",
131
- "rollup": "^4.60.2",
131
+ "rollup": "^4.60.4",
132
132
  "rollup-plugin-dts": "^6.4.1",
133
133
  "tslib": "^2.7.0",
134
134
  "typescript": "^5.6.3",
@@ -139,7 +139,7 @@
139
139
  },
140
140
  "name": "dompurify",
141
141
  "description": "DOMPurify is a DOM-only, super-fast, uber-tolerant XSS sanitizer for HTML, MathML and SVG. It's written in JavaScript and works in all modern browsers (Safari, Opera (15+), Internet Explorer (10+), Firefox and Chrome - as well as almost anything else using Blink or WebKit). DOMPurify is written by security people who have vast background in web attacks and XSS. Fear not.",
142
- "version": "3.4.2",
142
+ "version": "3.4.4",
143
143
  "directories": {
144
144
  "test": "test"
145
145
  },
package/src/attrs.ts CHANGED
@@ -22,6 +22,8 @@ export const html = freeze([
22
22
  'color',
23
23
  'cols',
24
24
  'colspan',
25
+ 'command',
26
+ 'commandfor',
25
27
  'controls',
26
28
  'controlslist',
27
29
  'coords',
package/src/purify.ts CHANGED
@@ -166,6 +166,8 @@ function createDOMPurify(window: WindowLike = getGlobal()): DOMPurify {
166
166
  const getNextSibling = lookupGetter(ElementPrototype, 'nextSibling');
167
167
  const getChildNodes = lookupGetter(ElementPrototype, 'childNodes');
168
168
  const getParentNode = lookupGetter(ElementPrototype, 'parentNode');
169
+ const getNodeType =
170
+ Node && Node.prototype ? lookupGetter(Node.prototype, 'nodeType') : null;
169
171
 
170
172
  // As per issue #47, the web-components registry is inherited by a
171
173
  // new document created via createHTMLDocument. As per the spec
@@ -1063,6 +1065,49 @@ function createDOMPurify(window: WindowLike = getGlobal()): DOMPurify {
1063
1065
  );
1064
1066
  };
1065
1067
 
1068
+ /**
1069
+ * Strip template-engine expressions ({{...}}, ${...}, <%...%>) from the
1070
+ * character data of an element subtree. Used as the final safety net for
1071
+ * SAFE_FOR_TEMPLATES on every DOM-returning code path so that expressions
1072
+ * which only form after text-node normalization (e.g. fragments split across
1073
+ * stripped elements) cannot survive into a template-evaluating framework.
1074
+ *
1075
+ * Walks text/comment/CDATA/processing-instruction nodes and mutates `.data`
1076
+ * in place rather than round-tripping through innerHTML. This preserves
1077
+ * descendant node references (important for IN_PLACE callers), avoids a
1078
+ * serialize/reparse cycle, and reads literal character data — which means
1079
+ * `<%...%>` in text content matches the ERB regex against its real bytes
1080
+ * instead of the HTML-entity-escaped form innerHTML would produce.
1081
+ *
1082
+ * Attribute values are not visited here; SAFE_FOR_TEMPLATES handling for
1083
+ * attributes is performed during the per-node `_sanitizeAttributes` pass.
1084
+ *
1085
+ * @param node The root element whose character data should be scrubbed.
1086
+ */
1087
+ const _scrubTemplateExpressions = function (node: Element): void {
1088
+ node.normalize();
1089
+ const walker = createNodeIterator.call(
1090
+ node.ownerDocument || node,
1091
+ node,
1092
+ // eslint-disable-next-line no-bitwise
1093
+ NodeFilter.SHOW_TEXT |
1094
+ NodeFilter.SHOW_COMMENT |
1095
+ NodeFilter.SHOW_CDATA_SECTION |
1096
+ NodeFilter.SHOW_PROCESSING_INSTRUCTION,
1097
+ null
1098
+ );
1099
+
1100
+ let currentNode = walker.nextNode() as CharacterData | null;
1101
+ while (currentNode) {
1102
+ let data = currentNode.data;
1103
+ arrayForEach([MUSTACHE_EXPR, ERB_EXPR, TMPLIT_EXPR], (expr: RegExp) => {
1104
+ data = stringReplace(data, expr, ' ');
1105
+ });
1106
+ currentNode.data = data;
1107
+ currentNode = walker.nextNode() as CharacterData | null;
1108
+ }
1109
+ };
1110
+
1066
1111
  /**
1067
1112
  * _isClobbered
1068
1113
  *
@@ -1085,13 +1130,32 @@ function createDOMPurify(window: WindowLike = getGlobal()): DOMPurify {
1085
1130
  };
1086
1131
 
1087
1132
  /**
1088
- * Checks whether the given object is a DOM node.
1133
+ * Checks whether the given object is a DOM node, including nodes that
1134
+ * originate from a different window/realm (e.g. an iframe's
1135
+ * contentDocument). The previous `value instanceof Node` check was
1136
+ * realm-bound: nodes from a different window failed it, causing
1137
+ * sanitize() to silently stringify them and reset IN_PLACE to false,
1138
+ * returning the original node unsanitized. See GHSA-4w3q-35jp-p934.
1139
+ *
1140
+ * Implementation: call the cached `nodeType` getter from Node.prototype
1141
+ * directly on the value. This bypasses any clobbered instance property
1142
+ * (e.g. a child element named "nodeType") and works across realms
1143
+ * because the WebIDL `nodeType` getter reads an internal slot that
1144
+ * every real Node has, regardless of which window minted it.
1089
1145
  *
1090
1146
  * @param value object to check whether it's a DOM node
1091
- * @return true is object is a DOM node
1147
+ * @return true if value is a DOM node from any realm
1092
1148
  */
1093
1149
  const _isNode = function (value: unknown): value is Node {
1094
- return typeof Node === 'function' && value instanceof Node;
1150
+ if (!getNodeType || typeof value !== 'object' || value === null) {
1151
+ return false;
1152
+ }
1153
+
1154
+ try {
1155
+ return typeof getNodeType(value) === 'number';
1156
+ } catch (_) {
1157
+ return false;
1158
+ }
1095
1159
  };
1096
1160
 
1097
1161
  function _executeHooks<T extends HookFunction>(
@@ -1592,6 +1656,56 @@ function createDOMPurify(window: WindowLike = getGlobal()): DOMPurify {
1592
1656
  _executeHooks(hooks.afterSanitizeShadowDOM, fragment, null);
1593
1657
  };
1594
1658
 
1659
+ /**
1660
+ * _sanitizeAttachedShadowRoots
1661
+ *
1662
+ * Walks `root` and feeds every attached shadow root we encounter into
1663
+ * the existing _sanitizeShadowDOM pipeline. The default node iterator
1664
+ * does not descend into shadow trees, so nodes inside an attached
1665
+ * shadow root would otherwise be skipped entirely.
1666
+ *
1667
+ * Two real input paths put attached shadow roots in front of us:
1668
+ * 1. IN_PLACE on a DOM node that already has shadow roots attached.
1669
+ * 2. DOM-node input where importNode(dirty, true) deep-clones the
1670
+ * shadow root because it was created with `clonable: true`.
1671
+ *
1672
+ * This pass runs once, up front, so the main iteration loop (and the
1673
+ * existing _sanitizeShadowDOM template-content recursion) stay
1674
+ * untouched — string-input paths are not affected.
1675
+ *
1676
+ * @param root the subtree root to walk for attached shadow roots
1677
+ */
1678
+ const _sanitizeAttachedShadowRoots = function (root: Node): void {
1679
+ if (
1680
+ root.nodeType === NODE_TYPE.element &&
1681
+ (root as Element).shadowRoot instanceof DocumentFragment
1682
+ ) {
1683
+ const sr = (root as Element).shadowRoot as DocumentFragment;
1684
+ // Recurse first so that nested shadow roots are reached even if
1685
+ // _sanitizeShadowDOM removes hosts at this level.
1686
+ _sanitizeAttachedShadowRoots(sr);
1687
+ _sanitizeShadowDOM(sr);
1688
+ }
1689
+
1690
+ // Snapshot children before recursing. Sanitization of one subtree
1691
+ // (e.g. via an uponSanitizeShadowNode hook) may detach siblings,
1692
+ // and naive nextSibling traversal would silently skip the rest of
1693
+ // the list once a node is detached.
1694
+ const childNodes = root.childNodes;
1695
+ if (!childNodes) {
1696
+ return;
1697
+ }
1698
+
1699
+ const snapshot: Node[] = [];
1700
+ arrayForEach(childNodes, (child) => {
1701
+ arrayPush(snapshot, child);
1702
+ });
1703
+
1704
+ for (const child of snapshot) {
1705
+ _sanitizeAttachedShadowRoots(child);
1706
+ }
1707
+ };
1708
+
1595
1709
  // eslint-disable-next-line complexity
1596
1710
  DOMPurify.sanitize = function (dirty, cfg = {}) {
1597
1711
  let body = null;
@@ -1644,7 +1758,11 @@ function createDOMPurify(window: WindowLike = getGlobal()): DOMPurify {
1644
1758
  );
1645
1759
  }
1646
1760
  }
1647
- } else if (dirty instanceof Node) {
1761
+
1762
+ /* Sanitize attached shadow roots before the main iterator runs.
1763
+ The iterator does not descend into shadow trees. */
1764
+ _sanitizeAttachedShadowRoots(dirty as Node);
1765
+ } else if (_isNode(dirty)) {
1648
1766
  /* If dirty is a DOM element, append to an empty document to avoid
1649
1767
  elements being stripped by the parser */
1650
1768
  body = _initDocument('<!---->');
@@ -1661,6 +1779,11 @@ function createDOMPurify(window: WindowLike = getGlobal()): DOMPurify {
1661
1779
  // eslint-disable-next-line unicorn/prefer-dom-node-append
1662
1780
  body.appendChild(importedNode);
1663
1781
  }
1782
+
1783
+ /* Clonable shadow roots are deep-cloned by importNode(); sanitize
1784
+ them before the main iterator runs, since the iterator does not
1785
+ descend into shadow trees. */
1786
+ _sanitizeAttachedShadowRoots(importedNode);
1664
1787
  } else {
1665
1788
  /* Exit directly if we have nothing to do */
1666
1789
  if (
@@ -1708,18 +1831,17 @@ function createDOMPurify(window: WindowLike = getGlobal()): DOMPurify {
1708
1831
 
1709
1832
  /* If we sanitized `dirty` in-place, return it. */
1710
1833
  if (IN_PLACE) {
1834
+ if (SAFE_FOR_TEMPLATES) {
1835
+ _scrubTemplateExpressions(dirty as Element);
1836
+ }
1837
+
1711
1838
  return dirty;
1712
1839
  }
1713
1840
 
1714
1841
  /* Return sanitized string or DOM */
1715
1842
  if (RETURN_DOM) {
1716
1843
  if (SAFE_FOR_TEMPLATES) {
1717
- body.normalize();
1718
- let html = body.innerHTML;
1719
- arrayForEach([MUSTACHE_EXPR, ERB_EXPR, TMPLIT_EXPR], (expr: RegExp) => {
1720
- html = stringReplace(html, expr, ' ');
1721
- });
1722
- body.innerHTML = html;
1844
+ _scrubTemplateExpressions(body);
1723
1845
  }
1724
1846
 
1725
1847
  if (RETURN_DOM_FRAGMENT) {
package/src/regexp.ts CHANGED
@@ -1,9 +1,8 @@
1
1
  import { seal } from './utils.js';
2
2
 
3
- // eslint-disable-next-line unicorn/better-regex
4
- export const MUSTACHE_EXPR = seal(/\{\{[\w\W]*|[\w\W]*\}\}/gm); // Specify template detection regex for SAFE_FOR_TEMPLATES mode
5
- export const ERB_EXPR = seal(/<%[\w\W]*|[\w\W]*%>/gm);
6
- export const TMPLIT_EXPR = seal(/\$\{[\w\W]*/gm); // eslint-disable-line unicorn/better-regex
3
+ export const MUSTACHE_EXPR = seal(/{{[\w\W]*|^[\w\W]*}}/g);
4
+ export const ERB_EXPR = seal(/<%[\w\W]*|^[\w\W]*%>/g);
5
+ export const TMPLIT_EXPR = seal(/\${[\w\W]*/g);
7
6
  export const DATA_ATTR = seal(/^data-[\-\w.\u00B7-\uFFFF]+$/); // eslint-disable-line no-useless-escape
8
7
  export const ARIA_ATTR = seal(/^aria-[\-\w]+$/); // eslint-disable-line no-useless-escape
9
8
  export const IS_ALLOWED_URI = seal(
package/src/tags.ts CHANGED
@@ -91,6 +91,7 @@ export const html = freeze([
91
91
  'search',
92
92
  'section',
93
93
  'select',
94
+ 'selectedcontent',
94
95
  'shadow',
95
96
  'slot',
96
97
  'small',