From 715e26a9eb219808d5c899d418e1d596f9318f61 Mon Sep 17 00:00:00 2001
From: Jake Vanderwerf <get@jakevanderwerf.ca>
Date: Mon, 22 Jun 2026 16:59:19 +0000
Subject: [PATCH] =Debugging and implementing the Checkout.js logic. Will be uploading to test integration with square next.

---
 assets/js/concise/Tabs.js |   14 ++++++++++++--
 1 files changed, 12 insertions(+), 2 deletions(-)

diff --git a/assets/js/concise/Tabs.js b/assets/js/concise/Tabs.js
index b93c083..3828671 100644
--- a/assets/js/concise/Tabs.js
+++ b/assets/js/concise/Tabs.js
@@ -61,6 +61,9 @@
 			console.error('No tab navigation or section found');
 			return false;
 		}
+		if (ui.nav.previousElementSibling && ui.nav.previousElementSibling.classList.contains('form-progress')) {
+
+		}
 		let tabsId = window.generateID('tab');
 
 		container.dataset.tabsId = tabsId;
@@ -82,6 +85,9 @@
 			ui: ui,
 			updateURL: options.updateURL ?? true
 		};
+		if (Object.hasOwn(options, 'preCheck')) {
+			config.preCheck = options.preCheck;
+		}
 
 		//Add listeners
 		ui.nav.addEventListener('click', this.clickHandler);
@@ -148,11 +154,15 @@
 		if (!config) return;
 		let activeTab = config.ui.sections.filter(section => section.classList.contains('active'));
 
-		if (Object.hasOwn(config, 'preCheck') && !config.preCheck(activeTab[0], config)) return;
+		if (Object.hasOwn(config, 'preCheck') && !config.preCheck(activeTab[0], tab, config)) return;
+
 		if (document.activeElement && this.isInTabs(document.activeElement, config)) document.activeElement.blur();
 
-		config.ui.buttons.forEach((btn, index) => {
+		config.ui.buttons.forEach(btn => {
 			btn.classList.remove('active', 'previous', 'next');
+		});
+
+		config.ui.buttons.forEach((btn, index) => {
 			let isActive = btn.dataset.tab === tab;
 			btn.setAttribute('aria-selected', isActive);
 			if (isActive) {

--
Gitblit v1.10.0