diff --git a/index-transition.html b/index-transition.html
deleted file mode 100644
index e08fef3..0000000
--- a/index-transition.html
+++ /dev/null
@@ -1,319 +0,0 @@
-
-
-
-
-
- Sweetpea · Signal and Web Component Enhanced Web Apps
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Configuration
-
-
- -
-
-
-
-
- - ...
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Parse Data
-
-
- -
-
- Data Parsing...
-
-
- - ...
-
-
-
-
-
-
diff --git a/index.html b/index.html
index ed5a7ea..7df25f0 100644
--- a/index.html
+++ b/index.html
@@ -86,20 +86,21 @@
-
+
+
+
-
-
+
diff --git a/menu.json b/menu.json
deleted file mode 100644
index b9dc7ce..0000000
--- a/menu.json
+++ /dev/null
@@ -1,203 +0,0 @@
-[
- {
- "title": "Introduction",
- "sections": [
- "Hello world",
- "Dynamic attributes",
- "Styling",
- "Nested components",
- "HTML tags"
- ]
- },
- {
- "title": "Reactivity",
- "sections": [
- "Reactive assignments",
- "Reactive declarations",
- "Reactive statements"
- ]
- },
- {
- "title": "Props",
- "sections": [
- "Declaring props",
- "Default values",
- "Spread props"
- ]
- },
- {
- "title": "Logic",
- "sections": [
- "If blocks",
- "Else blocks",
- "Else-if blocks",
- "Each blocks",
- "Keyed each blocks",
- "Await blocks"
- ]
- },
- {
- "title": "Events",
- "sections": [
- "DOM events",
- "Inline handlers",
- "Event modifiers",
- "Component events",
- "Event forwarding",
- "DOM event forwarding"
- ]
- },
- {
- "title": "Bindings",
- "sections": [
- "Text inputs",
- "Numeric inputs",
- "Checkbox inputs",
- "Group inputs",
- "Textarea inputs",
- "File inputs",
- "Select bindings",
- "Select multiple",
- "Each block bindings",
- "Media elements",
- "Dimensions",
- "bind:this={canvas}",
- "Component bindings"
- ]
- },
- {
- "title": "Lifecycle",
- "sections": [
- "onMount",
- "onDestroy",
- "beforeUpdate and afterUpdate",
- "tick"
- ]
- },
- {
- "title": "Stores",
- "sections": [
- "Writable stores",
- "Auto-subscriptions",
- "Readable stores",
- "Derived stores",
- "Custom stores"
- ]
- },
- {
- "title": "Motion",
- "sections": [
- "Tweened",
- "Spring"
- ]
- },
- {
- "title": "Transitions",
- "sections": [
- "The transition directive",
- "Adding parameters",
- "In and out",
- "Custom CSS transitions",
- "Custom JS transitions",
- "Transition events",
- "Deferred transitions"
- ]
- },
- {
- "title": "Animations",
- "sections": [
- "The animate directive"
- ]
- },
- {
- "title": "Easing",
- "sections": [
- "Ease Visualiser"
- ]
- },
- {
- "title": "SVG",
- "sections": [
- "Clock",
- "Bar chart",
- "Area chart",
- "Scatterplot",
- "SVG transitions"
- ]
- },
- {
- "title": "Actions",
- "sections": [
- "The use directive",
- "Adding parameters",
- "A more complex action"
- ]
- },
- {
- "title": "Classes",
- "sections": [
- "The class directive",
- "Shorthand class directive"
- ]
- },
- {
- "title": "Component composition",
- "sections": [
- "Slots",
- "Slot fallbacks",
- "Named slots",
- "Slot props",
- "Conditional Slots",
- "Modal"
- ]
- },
- {
- "title": "Context API",
- "sections": [
- "setContext and getContext"
- ]
- },
- {
- "title": "Special elements",
- "sections": [
- "",
- "",
- "",
- "",
- " bindings",
- "",
- "",
- ""
- ]
- },
- {
- "title": "Module context",
- "sections": [
- "Named exports"
- ]
- },
- {
- "title": "Debugging",
- "sections": [
- "The @debug tag"
- ]
- },
- {
- "title": "7GUIs",
- "sections": [
- "Counter",
- "Temperature Converter",
- "Flight booker",
- "Timer",
- "CRUD",
- "Circle Drawer"
- ]
- },
- {
- "title": "Miscellaneous",
- "sections": [
- "Hacker News",
- "Immutable data"
- ]
- }
-]
diff --git a/src/plug-ins/job-buffer/JobBuffer.js b/src/plug-ins/job-buffer/JobBuffer.js
index e35d92c..8a60beb 100644
--- a/src/plug-ins/job-buffer/JobBuffer.js
+++ b/src/plug-ins/job-buffer/JobBuffer.js
@@ -1,30 +1,27 @@
-import EventEmitter from 'event-emitter';
-import Signal from 'signal';
+import EventEmitter from "event-emitter";
+import Signal from "signal";
-export default class JobQueue extends EventEmitter {
+export default class JobBuffer extends EventEmitter {
count = new Signal(0);
total = new Signal(0);
#list = [];
constructor() {
- super()
+ super();
}
enbuffer(job) {
- if(!job) throw new Error('Job is a required prameter');
-
+ if (!job) throw new Error("Job is a required prameter");
this.#list.push(job);
this.count.set(this.#list.length);
- this.total.alter(v=>v+1);
- console.log('VVV JOB', job);
- console.log('VVV TOTAL', this.total.value);
- this.emit('enbuffer', job);
+ this.total.alter((v) => v + 1);
+ this.emit("enbuffer", job);
}
debuffer() {
this.#list.shift(job);
this.count.set(this.#list.length);
- this.emit('debuffer', job);
+ this.emit("debuffer", job);
}
- remove(id){
- this.#list.splice(this.#list.findIndex(o => o.id === id), 1);
+ remove(job) {
+ this.#list.splice(this.#list.indexOf(job), 1);
this.count.set(this.#list.length);
}
[Symbol.iterator]() {
diff --git a/src/plug-ins/water-closet/worker-support/WorkerSupport.js b/src/plug-ins/water-closet/worker-support/WorkerSupport.js
index 9037b9f..5ce80af 100644
--- a/src/plug-ins/water-closet/worker-support/WorkerSupport.js
+++ b/src/plug-ins/water-closet/worker-support/WorkerSupport.js
@@ -21,15 +21,14 @@ export default Inheritance => class WorkerSupport extends Inheritance {
async createWorker({attribute}={attribute:"worker"}){
this.gc = this.workerPath.subscribe(async workerPath=>this.WorkerClass.set((await import(`${location(window.location.href)}/src/worker/${workerPath}/index.js`)).default));
-
- // this.gc = this.workerPath.subscribe(workerPath=>console.log({workerPath}))
- // this.gc = this.WorkerClass.subscribe(WorkerClass=>console.log({WorkerClass}))
- // this.gc = this.workerInstance.subscribe(workerInstance=>console.log({workerInstance}))
-
this.gc = this.WorkerClass.subscribe(WorkerClass=>this.workerInstance.value = new WorkerClass({queue:this.queue, buffer:this.buffer, stage:this.getStage().emitter}) )
this.gc = this.workerInstance.subscribe(async workerInstance=>{ await workerInstance.connect(); await workerInstance.connected() });
this.gc = ()=>this.workerInstance.value.disconnected(); // .gc will clean up on removeal of element
+
+
+ await new Promise(resolve=>this.gc=this.workerInstance.subscribe(v=>Boolean(v)?resolve():null));
return this;
+
}
activateInputPort(selector = `[data-feature="standard-input"]`){