Compare commits
4 Commits
Author | SHA1 | Date | |
---|---|---|---|
1c8f7fa59e | |||
a613c0aca2 | |||
127564cd71 | |||
e077bf5b25 |
2
package-lock.json
generated
2
package-lock.json
generated
@ -1,6 +1,6 @@
|
|||||||
{
|
{
|
||||||
"name": "@designestate/dees-domtools",
|
"name": "@designestate/dees-domtools",
|
||||||
"version": "1.0.70",
|
"version": "1.0.72",
|
||||||
"lockfileVersion": 1,
|
"lockfileVersion": 1,
|
||||||
"requires": true,
|
"requires": true,
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
|
@ -1,6 +1,6 @@
|
|||||||
{
|
{
|
||||||
"name": "@designestate/dees-domtools",
|
"name": "@designestate/dees-domtools",
|
||||||
"version": "1.0.70",
|
"version": "1.0.72",
|
||||||
"private": false,
|
"private": false,
|
||||||
"description": "tools to simplify complex css structures",
|
"description": "tools to simplify complex css structures",
|
||||||
"main": "dist_ts/index.js",
|
"main": "dist_ts/index.js",
|
||||||
|
@ -5,23 +5,20 @@ export class ElementInstrumenter {
|
|||||||
connectedElements = new plugins.lik.ObjectMap<LitElement>();
|
connectedElements = new plugins.lik.ObjectMap<LitElement>();
|
||||||
|
|
||||||
public instrumentElement(elementArg: LitElement) {
|
public instrumentElement(elementArg: LitElement) {
|
||||||
const originalConnectedCallback = elementArg.connectedCallback;
|
const addToConnectedElementsFunc = (eventArg: CustomEvent) => {
|
||||||
const originalDisconnectedCallback = elementArg.disconnectedCallback;
|
this.connectedElements.add(elementArg);
|
||||||
|
};
|
||||||
|
const removeFromConnectedElementsFunc = eventArg => {
|
||||||
|
this.connectedElements.remove(elementArg);
|
||||||
|
elementArg.removeEventListener('domtools-connected', addToConnectedElementsFunc);
|
||||||
|
elementArg.removeEventListener('domtools-disconnected', removeFromConnectedElementsFunc);
|
||||||
|
};
|
||||||
|
elementArg.addEventListener('domtools-connected', addToConnectedElementsFunc);
|
||||||
|
elementArg.addEventListener('domtools-disconnected', removeFromConnectedElementsFunc);
|
||||||
|
|
||||||
if (!elementArg.parentElement) {
|
if (elementArg.parentElement) {
|
||||||
elementArg.connectedCallback = () => {
|
|
||||||
this.connectedElements.add(elementArg);
|
|
||||||
originalConnectedCallback.apply(elementArg);
|
|
||||||
};
|
|
||||||
} else {
|
|
||||||
this.connectedElements.add(elementArg);
|
this.connectedElements.add(elementArg);
|
||||||
}
|
}
|
||||||
|
|
||||||
elementArg.disconnectedCallback = () => {
|
|
||||||
this.connectedElements.remove(elementArg);
|
|
||||||
originalDisconnectedCallback.apply(elementArg);
|
|
||||||
};
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
public async forEachelement(eachFuncArg: (elementArg: LitElement) => Promise<void>) {
|
public async forEachelement(eachFuncArg: (elementArg: LitElement) => Promise<void>) {
|
||||||
|
Reference in New Issue
Block a user