-
Notifications
You must be signed in to change notification settings - Fork 0
STAGE 1 - Frontend auth testing fix 76 #77
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Merged
Merged
Conversation
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
…t deployed backend
…sponding frontend changes
…folder for massive refactor
…onal code for testing frontend locally against deployed backend API, and reoptimize Dashboard list retrieval code to asynchronously grab owned and shared lists at the same time
Velocities
added a commit
that referenced
this pull request
May 19, 2025
* Update build script for faulty npm run build command * Update UI to employ more reactive page * Start implementing Sign in with Google * Implement authentication as a service * Fix SQL script for sqlite usage; was using mysql syntax * Implement and test SQL-injection-safe querying and generify stream response with function * Remove previously used code in favor of SQL-injection code * Adjust naming scheme to use new name free of trademark issues * Adjust naming of API call in API JavaScript testing file * Update README with deployed link and updated architecture * Clean up unnecessary code * Clean up unnecessary PHP code * Update build script to use also updated JavaScript script for creating html pages of legal policy markdown files * Update Privacy Policy to indicate usage of HTTPS with warning that platform is still not completely robust * Update folder structure for documentation and JavaScript script for regenerating legal markdown docs in html format * Update sanitization of table name in database class and clean up more unused code in DataManager * Update document with new architecture link and document update log * Implement Issue #19 - API caller return results choice * Remove unnecessary type reconstruction from API call results * Comment out console logs that only work on associative array return type and testing database * Add better security for DELETE SQL command to protect against injection attacks * Create basic development procedural documents for SpeedCart team * Update React list component and API DELETE contact interaction * Reorganize React components into individual folders, implement barreling, and change slide transition effect to transform translate setting * Update database interactions in PHP code and way of calling DELETE method in JavaScript fetch code * Stash temporary ListManager.php file; not fully functional yet * Update CORS management and remove unnecessary portions of DataManager * Update logging path and add local symbolic link for new path, fix URL for proper CORS preflight call in JavaScript, and update UPDATE SQL command to use parameter binding and make corresponding changes to interface * Add new Laravel folder for integration testing * Start migrating PHP code to Laravel framework * Begin reCAPTCHA integration for site protection from bots * Fix deleteRecords method bug in Database class * Start migrating Google verification API endpoint to Laravel * Remove all unnecessary fields from Users table schema * Update React authentication call to use Laravel implementation * Save temporary debugging code for ShoppingList component * Adjust CORS policy to allow different variants of speedcartapp.com for requests; fixes deployment bug with Laravel endpoint contacts * Move Google Client ID secret to environment variables for security * Remove unnecessary CSS and adjust component names and placement for clarity * Move NewShoppingList page to pages folder; custom hook may be developed for reuse of component logic * Add custom quantity component for specifying quantity of a given item * Relocate Google authentication to Middleware and remove old version * Modify table usage and integrate Google authentication as middleware to force authentication with user actions * Add DEBUG_MODE condition for logging debug statements * Make quantity values usable by parent component and fix onChange infinite call bug * Modify usage of Authorization Header Bearer token for proper Laravel decoding * Fix production with new migration and remove old migrations, then changed incorrectly formed models for corresponding database interactions * Add list title retrieval and list deletion functionality to Dashboard and fix Navigation bar position with sticky positioning * Add list title retrieval and list deletion functionality on Laravel backend * Fix unnecessary scrollbar for navigation bar width * Remove unused CSS styles * Compartmentalize CSS for TransitionSection component * Remove old links for previous API endpoints that were used prior to Laravel migration * Start working on making footer positioning sticky * Adjust footer style and positioning for better visual design * Update look and feel of site for footer, home page and login page button * Remove unnecessary Footer element duplicate from pages * Remove unnecessary class modification for children elements in TransitionSection element * Remove unused code for previous site configurations * Make list items saveable and removeable with Laravel * Make lists saveable on front-end * Implement list item and title retrieval in Laravel project * Implement shopping list retrieval with React Router and new custom Hooks * Remove unnecessary Footer container and relocate associated CSS to footer class * Relocate background-gradient and other global site styles from Navigation.css to App.css * Make background-gradient fixed for Issue #23 * Remove necessity for extra container for Footer component for Issue #26 * Enhance error handling for Dashboard page for Issue #25 * Make fullHeightContainer class content height 92 to fill space, even if larger than necessary, so footer will stick to bottom of page * Update app architecture for Issue #27 * Create custom component for shopping list items for Issue #24 * Make ShoppingListItem component more modular and clarify its usage * Convert remaining component styles, except App and root (in index), to module CSS for Issue #28, make simplistic button style for IntegerQuantityValue component, and finish making modular ShoppingListItem component for Issue #24 * Implement Issue #32 * Implement Issue #29 * Implement Issue #31 and change default site title to more clearly represent purpose of SpeedCart * Make footer links vertically centered * Remove unused routes in Laravel web.php * Implement Issue #30 and #35 * Implement Issue #33 * Finish implementing Issue #20 and #21 * First container attempt for API folder * Dockerize Laravel Project for Issue #22 * Fix minimum quantity of 0 bug for Issue #37 * Implement Issue #36 * Remove unnecessary files and dependencies in React project * Add frontend CI/CD workflow file * Add temporary force npm installation for react-google-login problem workaround * Update version of React project * Update build script for CI/CD front end pipeline * Fix file paths for CI/CD front end pipeline * Third workflow attempt * Update build script again: * Remove ESLint check in front end workflow * Sync version number in env.test with env * Swap npm run build with running build script instead * Restore old build folder content removal command in build script * Update workflow for proper usage on GitHub Actions * Update build scripts for proper usage on GitHub Actions * Adjust workflow file again * Make updates to resolve npm build issues on workflow * Adjust file path for workflow generateHTML script * Remove unnecessary generateHTML script call in workflow * Move SpeedCart logo into assets/images folder and adjust corresponding access paths * Adjust environment variables for workflow run step * Make BASE_URL in custom hooks dynamic with existing environment variables * Update frontend.yml * Change siteLogoImg from id to class to allow for reuse of logo * Add echo for testing GitHub Actions secrets * Implement barreling for Home page component * Move echo statements * Implement barreling for Login component * Remove unnecessary laravelTesting script * Add build script run to ssh step * Bring back old functional scripts * Make build script call full path * Update old functional build script with comments * Force npm to work with CI workflow * Another change test for workflow * Add check for generateHTML script for workflow * Adjust file path for workflow execution * Make front end rebuild whenever legal docs change too * Start working on front end README for React project practices and conventions followed * Add starter field names for NewShoppingList component * Add basic field names and starter layout design for NewShoppingList component * Make database a volume so php containers are actually stateless (bug fix), adjust relevant file paths for context within API folder (fix for deployment command utility), and connect container images with Docker Hub (DevOps) * Implement Issue #40 * Add CI/CD workflow file for Backend Deployment * Backend workflow test 1 * Backend workflow test 2 * Update volumes for nginx container * Add debug flag and master version to ssh-action step in backend workflow (another test) * Another workflow test * Add dependency and cache handling for php build (DevOps bug fix attempt) * Debug workflow again * Remove cache clearing from backend workflow * One more test * Pinpoint composer image version to try fixing deployment bug for backend * Account for environment variables on automatic GitHub Actions backend deployment * Comment out phpinfo path for another test * Test without compose installation for backend workflow * Compose installation step needed in workflow (add back in) * Remove apiResource commented out code * Uninstall deprecated react-google-login package * Implement Issue #39 * Implement Issue #43 * Implement Issue #42 * Remove old logs symlink * First additions and attempts at Dashboard UI changes for Issue #44 implementations * Implement Issue #44 Back End changes * Make final front end changes for Issue #44 * First attempt at Issue #45 * Remove logging and database code that's been replaced by built-in Laravel classes for the same purpose * Turn off debugging for GoogleAuthentication Middleware logging * Comment out or remove unnecessary console logging, refactor Navigation component to use classes instead of ids, and finalize Issue #45 implementation with necessary refactors * Implement Issue #47 * Add npm dependency installation to build script * Create new layout styling and media queries for footer for smaller devices * Update REACT_APP_VERSION in .env file * Remove unnecessary BodyClassSetter component and fix semantics of page components * Update front end version numbers in package.json and package-lock.json * Adjust sizing of IntegerQuantityValue and trashBin buttons * Make new SaveButton modular component and use it in all relevant pages and remove unnecessary padding from ShoppingListDetail page component ul elements * Make modular AddShoppingListItemComponent and use in all relevant pages * Implement Issue #34 * Bring content of ShoppingListDetail page component more inward for better readability * Remove previous debugging code for Login jwt * Make SaveButton component have mouse be pointer/click on hover * Implement reset button for Issue #49 * Make form buttons and other header content sticky for Issue #49 via custom layout * Add multiple Add Items feature for Issue #49 * Refactor IntegerQuantityValue to follow React pattern of lifting state up (this fixes its problem with the Reset button which was recently introduced) * Remove unnecessary CSS from Dashboard module css * Implement Issue #41 on backend * Save progress on backend Issue #41 * Implement Issue #41 on frontend * Make aesthetic and usability improvements for Issue #41 (Dashboard component and related components) * Save progress on Issue #41 backend final changes * Implement Issue #50 on backend * Add migration command to automated backend deployment script to ensure any new migrations run * Migrate backend script to use docker compose instead of docker-compose for fixing GitHub deprecation bug * Comment out debug log for cookie setting * Implement Issue #50 on frontend * Cleanup old logging in frontend * Add redirect feature for successful login * Add timeout to fix Race condition bug with temporary message area for indicating redirect to user * Make first implementation for Issue #52 * Save progress for final permissions changes for Issue #41 * Add error messages to all current StatusModal instances for Issue #52 * Finish robust redirection for Issue #34 * Make first file and folder structure changes for Issue #53 * Implement Issue #53 * Update web build script and automated deployment for reorganized frontend * Update frontend script for missed mistake in previous commit * Add updated comment to web build script * Another mistake catch for previous commit * Update comment in build script for generateHTML step * Update GitHub Actions script to account for shared package * Update build script for using workspaces * Try fixing scripts * Workspace not found fix attempt * Update frontend version number for web * Adjust build script organization and related paths for updated Frontend organization * Remove build for React Native app from Frontend build script * Change path of build script directory in frontend workflow * Update jsconfig.json path for shared package * Finalize fixes for React Native app and testing shared package for Issue #53 * New Google Sessions (#55) * Save checkpoint * Save local testing checkpoint * Accomplish long-living sessions with Laravel Sanctum * Add hotfix to deleting long-lasting session cookies * Restore redirection behavior to frontend logins * Make final changes for PR #55 --------- Co-authored-by: Cameron <cdg1039@usnh.edu> * Improved Terms Enforcement (#58) * Save checkpoint * ToS and Privacy Policy Modal change for Issue #56 and clean up some other code * Last change to accomodate merge conflict * Restore to development version of mistakenly changed files from merge conflict resolution * Make changes for PR #58 --------- Co-authored-by: Cameron <cdg1039@usnh.edu> * Shared folder ts refactor (#60) * Save first checkpoint for TS refactor * First semi-working version of TypeScript in shared * Save good checkpoint in Issue #59 implementation * Save successful checkpoint for Intellisense with TypeScript for Issue #59 * Add more typing * Fix bug with await changes and SitePolicies CustomCheckbox component styling * Make PR review changes for Issue #59 --------- Co-authored-by: Cameron <cdg1039@usnh.edu> * Implement Issue #61 (#63) * Implement Issue #61 * Make PR changes for Issue #61 * Changes for Issue #64 (#65) * First attempt for backend workflow changes for Issue #64 * Modify comment to better reflect how new backend workflow changes work * Issue #66 Implementation (#67) * First initial tests for Laravel API backend * Make initial working Controller tests and adjust setup for proper automated testing on GitHub Actions * Modify event trigger for Issue #66 implementation * Fix name change of env test file * Try bug fix for workflow file test cd command * Remove unnecessary flag for php artisan test command in Laravel testing workflow file * Make backend tests workflow file only execute feature tests * Make ListPermissionsController tests and fix security vulnerability in createShareLink endpoint * Make comment changes for automated tests PR * Add remaining test changes for PR review * Optimize build script for Issue #62 (#69) * Optimize build script for Issue #62 * Remove unnecessary copy of ssh keys * Frontend Buildscript fix (#70) * Optimize build script for Issue #62 * Remove unnecessary copy of ssh keys * Fix directory for creating tarball * Add debugging statement for workflow fix * Field names final changes for issue 49 (#68) * Grocery Item Table CSS implementation temporary checkpoint * First semi-checkpoint for ShoppingListSection component/refactor * Working refactor changes * Remove functions that are no longer necessary in page component for ShoppingListDetail * Remove unnecessary code in ShoppingListDetailWithProvider * Tidy up NewShoppingListWithProvider changes * Adjust order of imports in NewShoppingListWithProvider * Move customHooks imports to be with constants in NewShoppingListWithProvider * Debug temp * Resect list title and corresponding setter function to ShoppingListContext * Finally fix location for tarball creation in Frontend build script * Add comment to explain loading check for NewShoppingListWithProvider page * Fix other areas of directory error in Frontend build script * Remove unhelpful executeAction function from ShoppingListContext * Add necessary EOF to end of Frontend build script deployment * Add comment explaining AuthProvider to index.tsx * Add temp debugging for Deploy step in Frontend build script * Add comment describing purpose of ShoppingListContext * Fix directory for scp command in Frontend build script * Fix import order in ShoppingListDetailWithProvider * Make modular ShoppingListContext function for ShoppingList creations and updates (but not deletions) * Adjust Frontend Deployment script to only run upon completing a PR merge * Remove unnecessary setter calls for toggling edit mode * Make final touches to major ShoppingListContext refactor --------- Co-authored-by: Cameron <cdg1039@usnh.edu> * Update deployment files for new arrangement of HTTPS certificates * Issue #71 Implementation (#73) * Make PageLayout component and use it in all existing page components * Make adjustable styling of CustomCheckbox component for better modularity and reuse across different components * Make PR final changes --------- Co-authored-by: Cameron <cdg1039@usnh.edu> * Bug fix for items to be deleted in ShoppingListDetailWithProvider * Issue #72 Implementation (#74) * Rename tests for Issue #72 * Update create valid test for ShoppingListController * Add prefix test_ to all existing tests so Laravel knows to run them --------- Co-authored-by: Cameron <cdg1039@usnh.edu> * Fix alignment of SitePolicies component content * STAGE 1 - Frontend auth testing fix 76 (#77) * First attempt at token-based authentication on backend changes * Update backend for first checkpoint on usable frontend testing against deployed backend * Update first checkpoint on usable issue #76 implementation with corresponding frontend changes * Add some basic improvements to tool documentation * First usable checkpoint for new callBackendAPI context refactor * First changes for local backend testing/running * Update remaining shared functions and their usage in speedcart-react folder for massive refactor * Remove previous testing code in ShoppingListContext, add some conditional code for testing frontend locally against deployed backend API, and reoptimize Dashboard list retrieval code to asynchronously grab owned and shared lists at the same time --------- Co-authored-by: Cameron <cdg1039@usnh.edu> * fix: Update necessary configurations for recent Frontend and backend changes with docker relocation and optional token method * Update backend build script to cd into new directory for docker-compose * Fix environment variables not copying into container properly * Modify frontend setup 78 (#79) * Migrate frontend build to vite * Change frontend GitHub Actions deployment script to direct to Cloudflare Pages * Frontend auth testing fix 76 stage2 (#80) * build fix: hot reload not occurring with vite * add: separate development setup for Laravel to run locally * fix: Laravel sharing tables incorrect foreign key type * fix: BaseUrl.ts should conditionally choose HTTP or HTTPS depending on dev or prod setup --------- Co-authored-by: Cameron <cdg1039@usnh.edu> * add: instructions for how to set up Laravel in WSL for faster Windows machine development (#81) * update: Laravel API setup for DigitalOcean hosting and Frontend usage now (#82) * fix: context directory for Laravel API so Docker can build properly (#83) --------- Co-authored-by: Cameron <cdg1039@usnh.edu>
Velocities
added a commit
that referenced
this pull request
May 20, 2025
* SpeedCart Beta (#84) * Update build script for faulty npm run build command * Update UI to employ more reactive page * Start implementing Sign in with Google * Implement authentication as a service * Fix SQL script for sqlite usage; was using mysql syntax * Implement and test SQL-injection-safe querying and generify stream response with function * Remove previously used code in favor of SQL-injection code * Adjust naming scheme to use new name free of trademark issues * Adjust naming of API call in API JavaScript testing file * Update README with deployed link and updated architecture * Clean up unnecessary code * Clean up unnecessary PHP code * Update build script to use also updated JavaScript script for creating html pages of legal policy markdown files * Update Privacy Policy to indicate usage of HTTPS with warning that platform is still not completely robust * Update folder structure for documentation and JavaScript script for regenerating legal markdown docs in html format * Update sanitization of table name in database class and clean up more unused code in DataManager * Update document with new architecture link and document update log * Implement Issue #19 - API caller return results choice * Remove unnecessary type reconstruction from API call results * Comment out console logs that only work on associative array return type and testing database * Add better security for DELETE SQL command to protect against injection attacks * Create basic development procedural documents for SpeedCart team * Update React list component and API DELETE contact interaction * Reorganize React components into individual folders, implement barreling, and change slide transition effect to transform translate setting * Update database interactions in PHP code and way of calling DELETE method in JavaScript fetch code * Stash temporary ListManager.php file; not fully functional yet * Update CORS management and remove unnecessary portions of DataManager * Update logging path and add local symbolic link for new path, fix URL for proper CORS preflight call in JavaScript, and update UPDATE SQL command to use parameter binding and make corresponding changes to interface * Add new Laravel folder for integration testing * Start migrating PHP code to Laravel framework * Begin reCAPTCHA integration for site protection from bots * Fix deleteRecords method bug in Database class * Start migrating Google verification API endpoint to Laravel * Remove all unnecessary fields from Users table schema * Update React authentication call to use Laravel implementation * Save temporary debugging code for ShoppingList component * Adjust CORS policy to allow different variants of speedcartapp.com for requests; fixes deployment bug with Laravel endpoint contacts * Move Google Client ID secret to environment variables for security * Remove unnecessary CSS and adjust component names and placement for clarity * Move NewShoppingList page to pages folder; custom hook may be developed for reuse of component logic * Add custom quantity component for specifying quantity of a given item * Relocate Google authentication to Middleware and remove old version * Modify table usage and integrate Google authentication as middleware to force authentication with user actions * Add DEBUG_MODE condition for logging debug statements * Make quantity values usable by parent component and fix onChange infinite call bug * Modify usage of Authorization Header Bearer token for proper Laravel decoding * Fix production with new migration and remove old migrations, then changed incorrectly formed models for corresponding database interactions * Add list title retrieval and list deletion functionality to Dashboard and fix Navigation bar position with sticky positioning * Add list title retrieval and list deletion functionality on Laravel backend * Fix unnecessary scrollbar for navigation bar width * Remove unused CSS styles * Compartmentalize CSS for TransitionSection component * Remove old links for previous API endpoints that were used prior to Laravel migration * Start working on making footer positioning sticky * Adjust footer style and positioning for better visual design * Update look and feel of site for footer, home page and login page button * Remove unnecessary Footer element duplicate from pages * Remove unnecessary class modification for children elements in TransitionSection element * Remove unused code for previous site configurations * Make list items saveable and removeable with Laravel * Make lists saveable on front-end * Implement list item and title retrieval in Laravel project * Implement shopping list retrieval with React Router and new custom Hooks * Remove unnecessary Footer container and relocate associated CSS to footer class * Relocate background-gradient and other global site styles from Navigation.css to App.css * Make background-gradient fixed for Issue #23 * Remove necessity for extra container for Footer component for Issue #26 * Enhance error handling for Dashboard page for Issue #25 * Make fullHeightContainer class content height 92 to fill space, even if larger than necessary, so footer will stick to bottom of page * Update app architecture for Issue #27 * Create custom component for shopping list items for Issue #24 * Make ShoppingListItem component more modular and clarify its usage * Convert remaining component styles, except App and root (in index), to module CSS for Issue #28, make simplistic button style for IntegerQuantityValue component, and finish making modular ShoppingListItem component for Issue #24 * Implement Issue #32 * Implement Issue #29 * Implement Issue #31 and change default site title to more clearly represent purpose of SpeedCart * Make footer links vertically centered * Remove unused routes in Laravel web.php * Implement Issue #30 and #35 * Implement Issue #33 * Finish implementing Issue #20 and #21 * First container attempt for API folder * Dockerize Laravel Project for Issue #22 * Fix minimum quantity of 0 bug for Issue #37 * Implement Issue #36 * Remove unnecessary files and dependencies in React project * Add frontend CI/CD workflow file * Add temporary force npm installation for react-google-login problem workaround * Update version of React project * Update build script for CI/CD front end pipeline * Fix file paths for CI/CD front end pipeline * Third workflow attempt * Update build script again: * Remove ESLint check in front end workflow * Sync version number in env.test with env * Swap npm run build with running build script instead * Restore old build folder content removal command in build script * Update workflow for proper usage on GitHub Actions * Update build scripts for proper usage on GitHub Actions * Adjust workflow file again * Make updates to resolve npm build issues on workflow * Adjust file path for workflow generateHTML script * Remove unnecessary generateHTML script call in workflow * Move SpeedCart logo into assets/images folder and adjust corresponding access paths * Adjust environment variables for workflow run step * Make BASE_URL in custom hooks dynamic with existing environment variables * Update frontend.yml * Change siteLogoImg from id to class to allow for reuse of logo * Add echo for testing GitHub Actions secrets * Implement barreling for Home page component * Move echo statements * Implement barreling for Login component * Remove unnecessary laravelTesting script * Add build script run to ssh step * Bring back old functional scripts * Make build script call full path * Update old functional build script with comments * Force npm to work with CI workflow * Another change test for workflow * Add check for generateHTML script for workflow * Adjust file path for workflow execution * Make front end rebuild whenever legal docs change too * Start working on front end README for React project practices and conventions followed * Add starter field names for NewShoppingList component * Add basic field names and starter layout design for NewShoppingList component * Make database a volume so php containers are actually stateless (bug fix), adjust relevant file paths for context within API folder (fix for deployment command utility), and connect container images with Docker Hub (DevOps) * Implement Issue #40 * Add CI/CD workflow file for Backend Deployment * Backend workflow test 1 * Backend workflow test 2 * Update volumes for nginx container * Add debug flag and master version to ssh-action step in backend workflow (another test) * Another workflow test * Add dependency and cache handling for php build (DevOps bug fix attempt) * Debug workflow again * Remove cache clearing from backend workflow * One more test * Pinpoint composer image version to try fixing deployment bug for backend * Account for environment variables on automatic GitHub Actions backend deployment * Comment out phpinfo path for another test * Test without compose installation for backend workflow * Compose installation step needed in workflow (add back in) * Remove apiResource commented out code * Uninstall deprecated react-google-login package * Implement Issue #39 * Implement Issue #43 * Implement Issue #42 * Remove old logs symlink * First additions and attempts at Dashboard UI changes for Issue #44 implementations * Implement Issue #44 Back End changes * Make final front end changes for Issue #44 * First attempt at Issue #45 * Remove logging and database code that's been replaced by built-in Laravel classes for the same purpose * Turn off debugging for GoogleAuthentication Middleware logging * Comment out or remove unnecessary console logging, refactor Navigation component to use classes instead of ids, and finalize Issue #45 implementation with necessary refactors * Implement Issue #47 * Add npm dependency installation to build script * Create new layout styling and media queries for footer for smaller devices * Update REACT_APP_VERSION in .env file * Remove unnecessary BodyClassSetter component and fix semantics of page components * Update front end version numbers in package.json and package-lock.json * Adjust sizing of IntegerQuantityValue and trashBin buttons * Make new SaveButton modular component and use it in all relevant pages and remove unnecessary padding from ShoppingListDetail page component ul elements * Make modular AddShoppingListItemComponent and use in all relevant pages * Implement Issue #34 * Bring content of ShoppingListDetail page component more inward for better readability * Remove previous debugging code for Login jwt * Make SaveButton component have mouse be pointer/click on hover * Implement reset button for Issue #49 * Make form buttons and other header content sticky for Issue #49 via custom layout * Add multiple Add Items feature for Issue #49 * Refactor IntegerQuantityValue to follow React pattern of lifting state up (this fixes its problem with the Reset button which was recently introduced) * Remove unnecessary CSS from Dashboard module css * Implement Issue #41 on backend * Save progress on backend Issue #41 * Implement Issue #41 on frontend * Make aesthetic and usability improvements for Issue #41 (Dashboard component and related components) * Save progress on Issue #41 backend final changes * Implement Issue #50 on backend * Add migration command to automated backend deployment script to ensure any new migrations run * Migrate backend script to use docker compose instead of docker-compose for fixing GitHub deprecation bug * Comment out debug log for cookie setting * Implement Issue #50 on frontend * Cleanup old logging in frontend * Add redirect feature for successful login * Add timeout to fix Race condition bug with temporary message area for indicating redirect to user * Make first implementation for Issue #52 * Save progress for final permissions changes for Issue #41 * Add error messages to all current StatusModal instances for Issue #52 * Finish robust redirection for Issue #34 * Make first file and folder structure changes for Issue #53 * Implement Issue #53 * Update web build script and automated deployment for reorganized frontend * Update frontend script for missed mistake in previous commit * Add updated comment to web build script * Another mistake catch for previous commit * Update comment in build script for generateHTML step * Update GitHub Actions script to account for shared package * Update build script for using workspaces * Try fixing scripts * Workspace not found fix attempt * Update frontend version number for web * Adjust build script organization and related paths for updated Frontend organization * Remove build for React Native app from Frontend build script * Change path of build script directory in frontend workflow * Update jsconfig.json path for shared package * Finalize fixes for React Native app and testing shared package for Issue #53 * New Google Sessions (#55) * Save checkpoint * Save local testing checkpoint * Accomplish long-living sessions with Laravel Sanctum * Add hotfix to deleting long-lasting session cookies * Restore redirection behavior to frontend logins * Make final changes for PR #55 --------- Co-authored-by: Cameron <cdg1039@usnh.edu> * Improved Terms Enforcement (#58) * Save checkpoint * ToS and Privacy Policy Modal change for Issue #56 and clean up some other code * Last change to accomodate merge conflict * Restore to development version of mistakenly changed files from merge conflict resolution * Make changes for PR #58 --------- Co-authored-by: Cameron <cdg1039@usnh.edu> * Shared folder ts refactor (#60) * Save first checkpoint for TS refactor * First semi-working version of TypeScript in shared * Save good checkpoint in Issue #59 implementation * Save successful checkpoint for Intellisense with TypeScript for Issue #59 * Add more typing * Fix bug with await changes and SitePolicies CustomCheckbox component styling * Make PR review changes for Issue #59 --------- Co-authored-by: Cameron <cdg1039@usnh.edu> * Implement Issue #61 (#63) * Implement Issue #61 * Make PR changes for Issue #61 * Changes for Issue #64 (#65) * First attempt for backend workflow changes for Issue #64 * Modify comment to better reflect how new backend workflow changes work * Issue #66 Implementation (#67) * First initial tests for Laravel API backend * Make initial working Controller tests and adjust setup for proper automated testing on GitHub Actions * Modify event trigger for Issue #66 implementation * Fix name change of env test file * Try bug fix for workflow file test cd command * Remove unnecessary flag for php artisan test command in Laravel testing workflow file * Make backend tests workflow file only execute feature tests * Make ListPermissionsController tests and fix security vulnerability in createShareLink endpoint * Make comment changes for automated tests PR * Add remaining test changes for PR review * Optimize build script for Issue #62 (#69) * Optimize build script for Issue #62 * Remove unnecessary copy of ssh keys * Frontend Buildscript fix (#70) * Optimize build script for Issue #62 * Remove unnecessary copy of ssh keys * Fix directory for creating tarball * Add debugging statement for workflow fix * Field names final changes for issue 49 (#68) * Grocery Item Table CSS implementation temporary checkpoint * First semi-checkpoint for ShoppingListSection component/refactor * Working refactor changes * Remove functions that are no longer necessary in page component for ShoppingListDetail * Remove unnecessary code in ShoppingListDetailWithProvider * Tidy up NewShoppingListWithProvider changes * Adjust order of imports in NewShoppingListWithProvider * Move customHooks imports to be with constants in NewShoppingListWithProvider * Debug temp * Resect list title and corresponding setter function to ShoppingListContext * Finally fix location for tarball creation in Frontend build script * Add comment to explain loading check for NewShoppingListWithProvider page * Fix other areas of directory error in Frontend build script * Remove unhelpful executeAction function from ShoppingListContext * Add necessary EOF to end of Frontend build script deployment * Add comment explaining AuthProvider to index.tsx * Add temp debugging for Deploy step in Frontend build script * Add comment describing purpose of ShoppingListContext * Fix directory for scp command in Frontend build script * Fix import order in ShoppingListDetailWithProvider * Make modular ShoppingListContext function for ShoppingList creations and updates (but not deletions) * Adjust Frontend Deployment script to only run upon completing a PR merge * Remove unnecessary setter calls for toggling edit mode * Make final touches to major ShoppingListContext refactor --------- Co-authored-by: Cameron <cdg1039@usnh.edu> * Update deployment files for new arrangement of HTTPS certificates * Issue #71 Implementation (#73) * Make PageLayout component and use it in all existing page components * Make adjustable styling of CustomCheckbox component for better modularity and reuse across different components * Make PR final changes --------- Co-authored-by: Cameron <cdg1039@usnh.edu> * Bug fix for items to be deleted in ShoppingListDetailWithProvider * Issue #72 Implementation (#74) * Rename tests for Issue #72 * Update create valid test for ShoppingListController * Add prefix test_ to all existing tests so Laravel knows to run them --------- Co-authored-by: Cameron <cdg1039@usnh.edu> * Fix alignment of SitePolicies component content * STAGE 1 - Frontend auth testing fix 76 (#77) * First attempt at token-based authentication on backend changes * Update backend for first checkpoint on usable frontend testing against deployed backend * Update first checkpoint on usable issue #76 implementation with corresponding frontend changes * Add some basic improvements to tool documentation * First usable checkpoint for new callBackendAPI context refactor * First changes for local backend testing/running * Update remaining shared functions and their usage in speedcart-react folder for massive refactor * Remove previous testing code in ShoppingListContext, add some conditional code for testing frontend locally against deployed backend API, and reoptimize Dashboard list retrieval code to asynchronously grab owned and shared lists at the same time --------- Co-authored-by: Cameron <cdg1039@usnh.edu> * fix: Update necessary configurations for recent Frontend and backend changes with docker relocation and optional token method * Update backend build script to cd into new directory for docker-compose * Fix environment variables not copying into container properly * Modify frontend setup 78 (#79) * Migrate frontend build to vite * Change frontend GitHub Actions deployment script to direct to Cloudflare Pages * Frontend auth testing fix 76 stage2 (#80) * build fix: hot reload not occurring with vite * add: separate development setup for Laravel to run locally * fix: Laravel sharing tables incorrect foreign key type * fix: BaseUrl.ts should conditionally choose HTTP or HTTPS depending on dev or prod setup --------- Co-authored-by: Cameron <cdg1039@usnh.edu> * add: instructions for how to set up Laravel in WSL for faster Windows machine development (#81) * update: Laravel API setup for DigitalOcean hosting and Frontend usage now (#82) * fix: context directory for Laravel API so Docker can build properly (#83) --------- Co-authored-by: Cameron <cdg1039@usnh.edu> * remove: unnecessary API_PORT from Frontend shared package code now that DigitalOcean hosts it on HTTPS automatically * add: necessary DocumentRoot setting for php apache Docker image that we base our Laravel API off of * update: Dockerfile setup for Laravel API to improve speed on deployment server via OPCache --------- Co-authored-by: Cameron <cdg1039@usnh.edu>
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
First stage of implementation for Issue #76.
This encompasses a major refactor to how the backend API is called via the frontend to increase verbosity, abstract away authentication for both deployment and development in the codebase, and normalize all API calls under one interface.