diff --git a/SWFrontUI/.DS_Store b/SWFrontUI/.DS_Store deleted file mode 100644 index bf68576..0000000 Binary files a/SWFrontUI/.DS_Store and /dev/null differ diff --git a/SWFrontUI/ShopwiseFrontEndUI.xcodeproj/project.xcworkspace/xcuserdata/jchang.xcuserdatad/UserInterfaceState.xcuserstate b/SWFrontUI/ShopwiseFrontEndUI.xcodeproj/project.xcworkspace/xcuserdata/jchang.xcuserdatad/UserInterfaceState.xcuserstate deleted file mode 100644 index e983ceb..0000000 Binary files a/SWFrontUI/ShopwiseFrontEndUI.xcodeproj/project.xcworkspace/xcuserdata/jchang.xcuserdatad/UserInterfaceState.xcuserstate and /dev/null differ diff --git a/SWFrontUI/ShopwiseFrontEndUI.xcodeproj/project.xcworkspace/xcuserdata/jchang.xcuserdatad/WorkspaceSettings.xcsettings b/SWFrontUI/ShopwiseFrontEndUI.xcodeproj/project.xcworkspace/xcuserdata/jchang.xcuserdatad/WorkspaceSettings.xcsettings deleted file mode 100644 index 723a561..0000000 --- a/SWFrontUI/ShopwiseFrontEndUI.xcodeproj/project.xcworkspace/xcuserdata/jchang.xcuserdatad/WorkspaceSettings.xcsettings +++ /dev/null @@ -1,16 +0,0 @@ - - - - - BuildLocationStyle - UseAppPreferences - CompilationCachingSetting - Default - CustomBuildLocationType - RelativeToDerivedData - DerivedDataLocationStyle - Default - ShowSharedSchemesAutomaticallyEnabled - - - diff --git a/SWFrontUI/ShopwiseFrontEndUI.xcodeproj/project.xcworkspace/xcuserdata/nicholascastellanos.xcuserdatad/UserInterfaceState.xcuserstate b/SWFrontUI/ShopwiseFrontEndUI.xcodeproj/project.xcworkspace/xcuserdata/nicholascastellanos.xcuserdatad/UserInterfaceState.xcuserstate deleted file mode 100644 index d183f9d..0000000 Binary files a/SWFrontUI/ShopwiseFrontEndUI.xcodeproj/project.xcworkspace/xcuserdata/nicholascastellanos.xcuserdatad/UserInterfaceState.xcuserstate and /dev/null differ diff --git a/SWFrontUI/ShopwiseFrontEndUI.xcodeproj/xcuserdata/jchang.xcuserdatad/xcschemes/xcschememanagement.plist b/SWFrontUI/ShopwiseFrontEndUI.xcodeproj/xcuserdata/jchang.xcuserdatad/xcschemes/xcschememanagement.plist deleted file mode 100644 index 3f5f416..0000000 --- a/SWFrontUI/ShopwiseFrontEndUI.xcodeproj/xcuserdata/jchang.xcuserdatad/xcschemes/xcschememanagement.plist +++ /dev/null @@ -1,14 +0,0 @@ - - - - - SchemeUserState - - ShopwiseFrontEndUI.xcscheme_^#shared#^_ - - orderHint - 0 - - - - diff --git a/SWFrontUI/ShopwiseFrontEndUI.xcodeproj/xcuserdata/nicholascastellanos.xcuserdatad/xcdebugger/Breakpoints_v2.xcbkptlist b/SWFrontUI/ShopwiseFrontEndUI.xcodeproj/xcuserdata/nicholascastellanos.xcuserdatad/xcdebugger/Breakpoints_v2.xcbkptlist deleted file mode 100644 index eba31e8..0000000 --- a/SWFrontUI/ShopwiseFrontEndUI.xcodeproj/xcuserdata/nicholascastellanos.xcuserdatad/xcdebugger/Breakpoints_v2.xcbkptlist +++ /dev/null @@ -1,6 +0,0 @@ - - - diff --git a/SWFrontUI/ShopwiseFrontEndUI.xcodeproj/xcuserdata/nicholascastellanos.xcuserdatad/xcschemes/xcschememanagement.plist b/SWFrontUI/ShopwiseFrontEndUI.xcodeproj/xcuserdata/nicholascastellanos.xcuserdatad/xcschemes/xcschememanagement.plist deleted file mode 100644 index 3f5f416..0000000 --- a/SWFrontUI/ShopwiseFrontEndUI.xcodeproj/xcuserdata/nicholascastellanos.xcuserdatad/xcschemes/xcschememanagement.plist +++ /dev/null @@ -1,14 +0,0 @@ - - - - - SchemeUserState - - ShopwiseFrontEndUI.xcscheme_^#shared#^_ - - orderHint - 0 - - - - diff --git a/supabase_import.js b/supabase_import.js index a96cf2c..0563f4d 100644 --- a/supabase_import.js +++ b/supabase_import.js @@ -48,7 +48,10 @@ const supabase = createClient(SUPABASE_URL, SUPABASE_KEY); // Used for comma-separated classifiers and semicolon-separated store IDs/prices. function split(s, sep) { if (!s) return []; - return s.split(sep).map((x) => x.trim()).filter(Boolean); + return s + .split(sep) + .map((x) => x.trim()) + .filter(Boolean); } // Returns a float or null — null means the field was empty/unparseable, @@ -83,7 +86,10 @@ async function insertBatch(table, rows, dryRun) { // Rows missing a name or price are skipped since both are NOT NULL in the table. export async function importWalmart({ dryRun = false } = {}) { - const file = path.join(__dirname, 'WalmartPipeline/classified_ingredients.csv'); + const file = path.join( + __dirname, + 'WalmartPipeline/classified_ingredients.csv', + ); console.log(`\n Source: ${file}`); let batch = []; @@ -97,7 +103,9 @@ export async function importWalmart({ dryRun = false } = {}) { await insertBatch(TABLE_WALMART, batch, dryRun); totalInserted += batch.length; batch = []; - process.stdout.write(`\r Inserted ${totalInserted.toLocaleString()} rows...`); + process.stdout.write( + `\r Inserted ${totalInserted.toLocaleString()} rows...`, + ); } for await (const row of csvParser(file)) { @@ -133,8 +141,12 @@ export async function importWalmart({ dryRun = false } = {}) { console.log(`\n Done.`); console.log(` Inserted : ${totalInserted.toLocaleString()}`); - console.log(` Skipped (not ingredient): ${skippedNonIngredient.toLocaleString()}`); - console.log(` Skipped (no name/price) : ${skippedMissingFields.toLocaleString()}`); + console.log( + ` Skipped (not ingredient): ${skippedNonIngredient.toLocaleString()}`, + ); + console.log( + ` Skipped (no name/price) : ${skippedMissingFields.toLocaleString()}`, + ); } // ── Kroger ──────────────────────────────────────────────────────────────────── @@ -144,7 +156,10 @@ export async function importWalmart({ dryRun = false } = {}) { // and store all the store IDs as an array. export async function importKroger({ dryRun = false } = {}) { - const file = path.join(__dirname, 'kroger_output/catalogue/food_catalogue.csv'); + const file = path.join( + __dirname, + 'kroger_output/catalogue/food_catalogue.csv', + ); console.log(`\n Source: ${file}`); let batch = []; @@ -156,7 +171,9 @@ export async function importKroger({ dryRun = false } = {}) { await insertBatch(TABLE_KROGER, batch, dryRun); totalInserted += batch.length; batch = []; - process.stdout.write(`\r Inserted ${totalInserted.toLocaleString()} rows...`); + process.stdout.write( + `\r Inserted ${totalInserted.toLocaleString()} rows...`, + ); } for await (const row of csvParser(file)) { @@ -194,7 +211,9 @@ export async function importKroger({ dryRun = false } = {}) { console.log(`\n Done.`); console.log(` Inserted : ${totalInserted.toLocaleString()}`); - console.log(` Skipped (no name/price): ${skippedMissingFields.toLocaleString()}`); + console.log( + ` Skipped (no name/price): ${skippedMissingFields.toLocaleString()}`, + ); } // ── Entry point (when run directly) ──────────────────────────────────────────