From 7ff69672a35e3c69916fc150404e8967a5dc8543 Mon Sep 17 00:00:00 2001 From: Ben Echols Date: Fri, 14 Apr 2023 12:49:59 -0600 Subject: [PATCH] updated some add/remove functions to work correctly after I broke them --- ui/core/components/gear_picker.ts | 2 +- .../components/individual_sim_ui/bulk_tab.ts | 20 +++++++++++-------- 2 files changed, 13 insertions(+), 9 deletions(-) diff --git a/ui/core/components/gear_picker.ts b/ui/core/components/gear_picker.ts index 9b1589c80a..6ce7ad3b45 100644 --- a/ui/core/components/gear_picker.ts +++ b/ui/core/components/gear_picker.ts @@ -1128,7 +1128,7 @@ export class ItemList { }); - simUI.bt.importItems(itemSpecs); + simUI.bt.addItems(itemSpecs); simUI.bt.setCombinations(false); // TODO: should we open the bulk sim UI or should we run in the background showing progress, and then sort the items in the picker? } diff --git a/ui/core/components/individual_sim_ui/bulk_tab.ts b/ui/core/components/individual_sim_ui/bulk_tab.ts index ff2fae4bcc..d9bc924980 100644 --- a/ui/core/components/individual_sim_ui/bulk_tab.ts +++ b/ui/core/components/individual_sim_ui/bulk_tab.ts @@ -54,7 +54,7 @@ export class BulkGearJsonImporter extends Importer { throw new Error("cannot find item with ID " + itemSpec.id); } } - this.bulkUI.importItems(items); + this.bulkUI.addItems(items); } } this.close(); @@ -161,7 +161,7 @@ export class BulkItemPicker extends Component { const otherItems = this.bulkUI.getItems(); otherItems[this.index] = equippedItem.asSpec(); this.item = equippedItem; - this.bulkUI.importItems(otherItems); + this.bulkUI.addItems(otherItems); changeEvent.emit(TypedEvent.nextEventID()); } }, @@ -173,11 +173,10 @@ export class BulkItemPicker extends Component { const removeButton = modal.body.querySelector('.selector-modal-remove-button'); if (removeButton && removeButton.parentNode) { const destroyItemButton = document.createElement('button'); - destroyItemButton.textContent = 'Destroy Item'; + destroyItemButton.textContent = 'Remove from Batch'; destroyItemButton.classList.add('btn', 'btn-danger'); destroyItemButton.onclick = () => { - const needle = this.item.asSpec(); - bulkUI.importItems(bulkUI.getItems().filter((spec) => { return !ItemSpec.equals(spec, needle); })); + bulkUI.setItems(bulkUI.getItems().filter((item, idx) => { return idx != this.index })); modal.close(); }; removeButton.parentNode.appendChild(destroyItemButton); @@ -311,7 +310,7 @@ export class BulkTab extends SimTab { return itemsDb; } - importItems(items: Array) { + addItems(items: Array) { if (this.items.length == 0) { this.items = items; } else { @@ -319,7 +318,12 @@ export class BulkTab extends SimTab { } this.itemsChangedEmitter.emit(TypedEvent.nextEventID()); } - + + setItems(items: Array) { + this.items = items; + this.itemsChangedEmitter.emit(TypedEvent.nextEventID()); + } + clearItems() { this.items = new Array(); this.itemsChangedEmitter.emit(TypedEvent.nextEventID()); @@ -490,7 +494,7 @@ export class BulkTab extends SimTab { const items = filters.favoriteItems.map((itemID) => { return ItemSpec.create({id: itemID}); }); - this.importItems(items); + this.addItems(items); }); settingsBlock.bodyElement.appendChild(importFavsButton);