dom-mutator
Advanced tools
Comparing version 0.2.1 to 0.2.2
@@ -16,4 +16,4 @@ 'use strict'; | ||
subtree: true, | ||
attributes: false, | ||
characterData: false | ||
attributes: true, | ||
characterData: true | ||
}; | ||
@@ -20,0 +20,0 @@ } |
@@ -1,2 +0,2 @@ | ||
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e,t,n={},r=new Map,a=1,u=/^([a-zA-Z:_][a-zA-Z0-9:_.-]*)\s*=\s*"([^"]*)"/;function i(e,t){var n=r.get(e);if(n||r.set(e,n={}),!n[t]){var a={externalValue:s(e,t),lastValue:"",observer:new MutationObserver((function(){var n=s(e,t);n!==a.lastValue&&(a.externalValue=n,l(e,t))})),mutations:[]};n[t]=a,a.observer.observe(e,function(e){return"html"===e?{childList:!0,subtree:!0,attributes:!1,characterData:!1}:{childList:!1,subtree:!1,attributes:!0,attributeFilter:[e]}}(t))}return n[t]}function s(e,t){return"html"===t?e.innerHTML:"className"===t?e.className:e.getAttribute(t)||""}function l(e,t){var r=i(e,t),a=r.externalValue;r.mutations.forEach((function(e){var t=n[e];t&&(a=function(e,t){if("addClass"===e.type){var n=t.split(" ");return e.value.split(" ").forEach((function(e){n.includes(e)||n.push(e)})),n.filter(Boolean).join(" ")}if("removeClass"===e.type){var r=t.split(" "),a=e.value.split(" ");return r.filter((function(e){return!a.includes(e)})).join(" ")}if("setHTML"===e.type)return e.value;if("appendHTML"===e.type)return t+e.value;if("setAttribute"===e.type){var i=u.exec(e.value);return(null==i?void 0:i[2])||""}return t}(t,a))}));var l=s(e,t);a!==l&&(r.lastValue=a,function(e,t,n){"html"===t?e.innerHTML=n:"className"===t?n?e.className=n:e.removeAttribute("class"):n?e.setAttribute(t,n):e.removeAttribute(t)}(e,t,a))}function o(e,t){if(["addClass","removeClass"].includes(e))return"className";if(["appendHTML","setHTML"].includes(e))return"html";if("setAttribute"===e){var n=u.exec(t);if(null!=n&&n[1]){var r=n[1];return"class"===r||"classname"===r?"className":r}}return""}function c(e,t){var a=n[e];if(a){a.elements.delete(t);var u=o(a.type,a.value),s=i(t,u),c=s.mutations.indexOf(e);-1!==c&&s.mutations.splice(c,1),l(t,u),s.mutations.length||function(e,t){var n=r.get(e);n&&(n[t]&&n[t].observer.disconnect(),delete n[t])}(t,u)}}function f(e){var t=n[e];if(t){var r=new Set(t.elements),a=new Set;document.body.querySelectorAll(t.selector).forEach((function(t){a.add(t),r.has(t)||function(e,t){var r=n[e];if(r){r.elements.add(t);var a=o(r.type,r.value);i(t,a).mutations.push(e),l(t,a)}}(e,t)})),r.forEach((function(t){a.has(t)||c(e,t)}))}}function v(){Object.keys(n).forEach((function(e){f(e)}))}function d(){"undefined"!=typeof document&&(t||(t=new MutationObserver((function(){v()}))),v(),t.observe(document.body,{childList:!0,subtree:!0,attributes:!1,characterData:!1}))}d(),exports.connectGlobalObserver=d,exports.default=function(t,r,u){if("undefined"==typeof document)return function(){};if(!o(r,u))return function(){};var i=function(t,r,u){var i;"appendHTML"!==r&&"setHTML"!==r||(i=u,e||(e=document.createElement("div")),e.innerHTML=i,u=e.innerHTML);var s=""+a++;return n[s]={selector:t,type:r,value:u,elements:new Set},f(s),s}(t,r,u);return function(){!function(e){var t=n[e];t&&(new Set(t.elements).forEach((function(t){c(e,t)})),n[e].elements.clear(),delete n[e])}(i)}},exports.disconnectGlobalObserver=function(){t&&t.disconnect()}; | ||
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e,t,n={},r=new Map,a=1,u=/^([a-zA-Z:_][a-zA-Z0-9:_.-]*)\s*=\s*"([^"]*)"/;function i(e,t){var n=r.get(e);if(n||r.set(e,n={}),!n[t]){var a={externalValue:s(e,t),lastValue:"",observer:new MutationObserver((function(){var n=s(e,t);n!==a.lastValue&&(a.externalValue=n,l(e,t))})),mutations:[]};n[t]=a,a.observer.observe(e,function(e){return"html"===e?{childList:!0,subtree:!0,attributes:!0,characterData:!0}:{childList:!1,subtree:!1,attributes:!0,attributeFilter:[e]}}(t))}return n[t]}function s(e,t){return"html"===t?e.innerHTML:"className"===t?e.className:e.getAttribute(t)||""}function l(e,t){var r=i(e,t),a=r.externalValue;r.mutations.forEach((function(e){var t=n[e];t&&(a=function(e,t){if("addClass"===e.type){var n=t.split(" ");return e.value.split(" ").forEach((function(e){n.includes(e)||n.push(e)})),n.filter(Boolean).join(" ")}if("removeClass"===e.type){var r=t.split(" "),a=e.value.split(" ");return r.filter((function(e){return!a.includes(e)})).join(" ")}if("setHTML"===e.type)return e.value;if("appendHTML"===e.type)return t+e.value;if("setAttribute"===e.type){var i=u.exec(e.value);return(null==i?void 0:i[2])||""}return t}(t,a))}));var l=s(e,t);a!==l&&(r.lastValue=a,function(e,t,n){"html"===t?e.innerHTML=n:"className"===t?n?e.className=n:e.removeAttribute("class"):n?e.setAttribute(t,n):e.removeAttribute(t)}(e,t,a))}function o(e,t){if(["addClass","removeClass"].includes(e))return"className";if(["appendHTML","setHTML"].includes(e))return"html";if("setAttribute"===e){var n=u.exec(t);if(null!=n&&n[1]){var r=n[1];return"class"===r||"classname"===r?"className":r}}return""}function c(e,t){var a=n[e];if(a){a.elements.delete(t);var u=o(a.type,a.value),s=i(t,u),c=s.mutations.indexOf(e);-1!==c&&s.mutations.splice(c,1),l(t,u),s.mutations.length||function(e,t){var n=r.get(e);n&&(n[t]&&n[t].observer.disconnect(),delete n[t])}(t,u)}}function f(e){var t=n[e];if(t){var r=new Set(t.elements),a=new Set;document.body.querySelectorAll(t.selector).forEach((function(t){a.add(t),r.has(t)||function(e,t){var r=n[e];if(r){r.elements.add(t);var a=o(r.type,r.value);i(t,a).mutations.push(e),l(t,a)}}(e,t)})),r.forEach((function(t){a.has(t)||c(e,t)}))}}function v(){Object.keys(n).forEach((function(e){f(e)}))}function d(){"undefined"!=typeof document&&(t||(t=new MutationObserver((function(){v()}))),v(),t.observe(document.body,{childList:!0,subtree:!0,attributes:!1,characterData:!1}))}d(),exports.connectGlobalObserver=d,exports.default=function(t,r,u){if("undefined"==typeof document)return function(){};if(!o(r,u))return function(){};var i=function(t,r,u){var i;"appendHTML"!==r&&"setHTML"!==r||(i=u,e||(e=document.createElement("div")),e.innerHTML=i,u=e.innerHTML);var s=""+a++;return n[s]={selector:t,type:r,value:u,elements:new Set},f(s),s}(t,r,u);return function(){!function(e){var t=n[e];t&&(new Set(t.elements).forEach((function(t){c(e,t)})),n[e].elements.clear(),delete n[e])}(i)}},exports.disconnectGlobalObserver=function(){t&&t.disconnect()}; | ||
//# sourceMappingURL=dom-mutator.cjs.production.min.js.map |
@@ -12,4 +12,4 @@ var mutations = {}; | ||
subtree: true, | ||
attributes: false, | ||
characterData: false | ||
attributes: true, | ||
characterData: true | ||
}; | ||
@@ -16,0 +16,0 @@ } |
{ | ||
"version": "0.2.1", | ||
"version": "0.2.2", | ||
"license": "MIT", | ||
@@ -4,0 +4,0 @@ "main": "dist/index.js", |
@@ -38,4 +38,4 @@ export type MutationType = | ||
subtree: true, | ||
attributes: false, | ||
characterData: false, | ||
attributes: true, | ||
characterData: true, | ||
}; | ||
@@ -42,0 +42,0 @@ } |
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
80478