From b0194e10a87e16797a568d8a30d53ebecd27d8a4 Mon Sep 17 00:00:00 2001
From: Jake Vanderwerf <get@jakevanderwerf.ca>
Date: Sat, 18 Oct 2025 15:04:51 +0000
Subject: [PATCH] =DataStore.js and UploaderManager.js overhaul
---
assets/js/concise/View.js | 35 ++++++++++++++++++++++-------------
1 files changed, 22 insertions(+), 13 deletions(-)
diff --git a/assets/js/concise/View.js b/assets/js/concise/View.js
index b31b782..70c8e2f 100644
--- a/assets/js/concise/View.js
+++ b/assets/js/concise/View.js
@@ -3,7 +3,6 @@
*/
class ViewController {
constructor(container, store) {
- console.log(container);
this.a11y = window.jvbA11y;
this.error = window.jvbError;
@@ -40,20 +39,25 @@
}
this.ui = window.uiFromSelectors(this.selectors, this.container);
- console.log(this.ui);
}
init() {
// Subscribe to store updates
this.store.subscribe((event, data) => {
switch(event) {
- case 'data-fetched':
- case 'data-cached':
+ case 'data-loaded':
+ case 'items-saved':
this.handleDataUpdate(data);
break;
case 'items-updated':
this.handleItemsUpdate(data.items);
break;
+ case 'item-saved':
+ // this.updateItem(data.item);
+ break;
+ case 'item-deleted':
+ // this.deleteItem(data.item);
+ break;
}
});
@@ -128,10 +132,10 @@
toggleColumns(column, show) {
let theColumn = this.ui.table.columns.filter(col => col.className === column);
- console.log(theColumn);
- console.log('Toggle Columns');
- console.log(column, show);
- console.log(this.ui.table.columns);
+ // console.log(theColumn);
+ // console.log('Toggle Columns');
+ // console.log(column, show);
+ // console.log(this.ui.table.columns);
}
setupViewSwitcher() {
@@ -201,11 +205,16 @@
items.forEach(item => {
let card;
- if (this.items.grid.has(item.id)) {
- card = this.items.grid.get(item.id);
- } else {
+ if (this.store.renderOrRetrieve) {
card = this.store.renderOrRetrieve(item, 'grid', this.renderGridItem.bind(this));
- this.items.grid.set(item.id, card);
+ } else {
+ // Fallback to local cache
+ if (this.items.grid.has(item.id)) {
+ card = this.items.grid.get(item.id);
+ } else {
+ card = this.renderGridItem(item);
+ this.items.grid.set(item.id, card);
+ }
}
fragment.appendChild(card);
@@ -368,7 +377,7 @@
if (!isEmpty) {
field.querySelector('input').checked = parseInt(value) === 1;
}
- field.querySelector('.toggle-label').hidden = true;
+ field.querySelector('.toggle-label')?.remove();
break;
case 'select':
label.remove();
--
Gitblit v1.10.0