Skip to content

Commit

Permalink
slightly delay web component creation
Browse files Browse the repository at this point in the history
  • Loading branch information
Richard authored and Richard committed Mar 19, 2019
1 parent 789d211 commit 299de6c
Show file tree
Hide file tree
Showing 5 changed files with 199 additions and 187 deletions.
2 changes: 1 addition & 1 deletion package.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"name": "wasm-module",
"version": "0.0.10",
"version": "0.0.11",
"description": "A web component for making web assembly modules that can interat with dom easily",
"main": "wasm-module.js",
"directories": {
Expand Down
130 changes: 67 additions & 63 deletions src/webidl.js
Original file line number Diff line number Diff line change
Expand Up @@ -53,77 +53,81 @@ function createWebIDLContext() {
CustomElement_define: function(componentName) {
componentName = this.s(componentName);
let createElement = this.elementCreated;
customElements.define(
componentName,
class extends HTMLElement {
constructor() {
super();
var e = new CustomEvent("customelementcreated", {
detail: ALLOCATOR.a(this)
});
window.dispatchEvent(e);
window.setTimeout(() => {
customElements.define(
componentName,
class extends HTMLElement {
constructor() {
super();
var e = new CustomEvent("customelementcreated", {
detail: ALLOCATOR.a(this)
});
window.dispatchEvent(e);
}
connectedCallback() {
var e = new CustomEvent("connected");
this.dispatchEvent(e);
}
disconnectedCallback() {
debugger;
var e = new CustomEvent("disconnected");
this.dispatchEvent(e);
}
adoptedCallback() {
var e = new CustomEvent("adopted");
this.dispatchEvent(e);
}
attributeChangedCallback(name, oldValue, value) {
var e = new CustomEvent("attributechanged", {
detail: { name, oldValue, value }
});
this.dispatchEvent(e);
}
}
connectedCallback() {
var e = new CustomEvent("connected");
this.dispatchEvent(e);
}
disconnectedCallback() {
debugger;
var e = new CustomEvent("disconnected");
this.dispatchEvent(e);
}
adoptedCallback() {
var e = new CustomEvent("adopted");
this.dispatchEvent(e);
}
attributeChangedCallback(name, oldValue, value) {
var e = new CustomEvent("attributechanged", {
detail: { name, oldValue, value }
});
this.dispatchEvent(e);
}
}
);
);
}, 1);
},
CustomElement_defineWithAttributes: function(componentName, attributes) {
componentName = this.s(componentName);
attributes = this.s(attributes);
let createElement = this.elementCreated;
let observedAttributes = attributes.split(",").map(x => x.trim());
customElements.define(
componentName,
class extends HTMLElement {
constructor() {
super();
var e = new CustomEvent("customelementcreated", {
detail: ALLOCATOR.a(this)
});
window.dispatchEvent(e);
}
static get observedAttributes() {
return observedAttributes;
window.setTimeout(() => {
customElements.define(
componentName,
class extends HTMLElement {
constructor() {
super();
var e = new CustomEvent("customelementcreated", {
detail: ALLOCATOR.a(this)
});
window.dispatchEvent(e);
}
static get observedAttributes() {
return observedAttributes;
}
connectedCallback() {
var e = new CustomEvent("connected");
this.dispatchEvent(e);
}
disconnectedCallback() {
debugger;
var e = new CustomEvent("disconnected");
this.dispatchEvent(e);
}
adoptedCallback() {
var e = new CustomEvent("adopted");
this.dispatchEvent(e);
}
attributeChangedCallback(name, oldValue, value) {
var e = new CustomEvent("attributechanged", {
detail: { name, oldValue, value }
});
this.dispatchEvent(e);
}
}
connectedCallback() {
var e = new CustomEvent("connected");
this.dispatchEvent(e);
}
disconnectedCallback() {
debugger;
var e = new CustomEvent("disconnected");
this.dispatchEvent(e);
}
adoptedCallback() {
var e = new CustomEvent("adopted");
this.dispatchEvent(e);
}
attributeChangedCallback(name, oldValue, value) {
var e = new CustomEvent("attributechanged", {
detail: { name, oldValue, value }
});
this.dispatchEvent(e);
}
}
);
);
}, 1);
},

WasmWorker_onWorkerLoaded: function(instance, listener) {
Expand Down
122 changes: 63 additions & 59 deletions tools/generate_webidl.js
Original file line number Diff line number Diff line change
Expand Up @@ -271,73 +271,77 @@ function createWebIDLContext(){
CustomElement_define: function(componentName) {
componentName = this.s(componentName);
let createElement = this.elementCreated;
customElements.define(
componentName,
class extends HTMLElement {
constructor() {
super();
var e = new CustomEvent("customelementcreated",{detail:ALLOCATOR.a(this)});
window.dispatchEvent(e);
window.setTimeout(()=>{
customElements.define(
componentName,
class extends HTMLElement {
constructor() {
super();
var e = new CustomEvent("customelementcreated",{detail:ALLOCATOR.a(this)});
window.dispatchEvent(e);
}
connectedCallback() {
var e = new CustomEvent("connected");
this.dispatchEvent(e);
}
disconnectedCallback() {
debugger;
var e = new CustomEvent("disconnected");
this.dispatchEvent(e);
}
adoptedCallback() {
var e = new CustomEvent("adopted");
this.dispatchEvent(e);
}
attributeChangedCallback(name, oldValue, value) {
var e = new CustomEvent("attributechanged", {
detail: { name, oldValue, value }
});
this.dispatchEvent(e);
}
}
connectedCallback() {
var e = new CustomEvent("connected");
this.dispatchEvent(e);
}
disconnectedCallback() {
debugger;
var e = new CustomEvent("disconnected");
this.dispatchEvent(e);
}
adoptedCallback() {
var e = new CustomEvent("adopted");
this.dispatchEvent(e);
}
attributeChangedCallback(name, oldValue, value) {
var e = new CustomEvent("attributechanged", {
detail: { name, oldValue, value }
});
this.dispatchEvent(e);
}
}
);
);
},1);
},
CustomElement_defineWithAttributes: function(componentName, attributes) {
componentName = this.s(componentName);
attributes = this.s(attributes);
let createElement = this.elementCreated;
let observedAttributes = attributes.split(",").map(x => x.trim());
customElements.define(
componentName,
class extends HTMLElement {
constructor() {
super();
var e = new CustomEvent("customelementcreated",{detail:ALLOCATOR.a(this)});
window.dispatchEvent(e);
}
static get observedAttributes() {
return observedAttributes;
window.setTimeout(()=>{
customElements.define(
componentName,
class extends HTMLElement {
constructor() {
super();
var e = new CustomEvent("customelementcreated",{detail:ALLOCATOR.a(this)});
window.dispatchEvent(e);
}
static get observedAttributes() {
return observedAttributes;
}
connectedCallback() {
var e = new CustomEvent("connected");
this.dispatchEvent(e);
}
disconnectedCallback() {
debugger;
var e = new CustomEvent("disconnected");
this.dispatchEvent(e);
}
adoptedCallback() {
var e = new CustomEvent("adopted");
this.dispatchEvent(e);
}
attributeChangedCallback(name, oldValue, value) {
var e = new CustomEvent("attributechanged", {
detail: { name, oldValue, value }
});
this.dispatchEvent(e);
}
}
connectedCallback() {
var e = new CustomEvent("connected");
this.dispatchEvent(e);
}
disconnectedCallback() {
debugger;
var e = new CustomEvent("disconnected");
this.dispatchEvent(e);
}
adoptedCallback() {
var e = new CustomEvent("adopted");
this.dispatchEvent(e);
}
attributeChangedCallback(name, oldValue, value) {
var e = new CustomEvent("attributechanged", {
detail: { name, oldValue, value }
});
this.dispatchEvent(e);
}
}
);
);
},1);
},
WasmWorker_onWorkerLoaded: function(instance,listener){
Expand Down
Loading

0 comments on commit 299de6c

Please sign in to comment.