Skip to content

refactor: extract infrastructure and config changes for pricing page - #428

Merged
vitormattos merged 1 commit into
mainfrom
refactor/extract-pricing-infrastructure
Jul 7, 2026
Merged

refactor: extract infrastructure and config changes for pricing page#428
vitormattos merged 1 commit into
mainfrom
refactor/extract-pricing-infrastructure

Conversation

@vitormattos

Copy link
Copy Markdown
Member

Problem

The feat/pricing-refactor-v2 branch contains both infrastructure/configuration changes and pricing page implementation changes. To deploy infrastructure changes independently without shipping the pricing page, these need to be separated.

Solution

Extracted all infrastructure and configuration changes into a separate PR:

Changes Included

Infrastructure & Configuration:

  • ✅ Docker nginx configuration updates
  • ✅ GitHub workflow/deployment pipeline updates
  • ✅ Application bootstrap and config changes
  • ✅ docker-compose configuration
  • ✅ Vite build tool configuration
  • ✅ Composer dependencies lock file

Structural Changes:

  • ✅ Layout refactoring (main, header, footer layouts)
  • ✅ Global JavaScript and SCSS updates
  • ✅ RemoveTranslationFiles listener updates
  • ✅ Robots.txt SEO optimization
  • ✅ Cleanup of fragment system (PushFragments listeners removed)

Benefits

  • Allows infrastructure changes to be deployed immediately to production
  • Keeps pricing page implementation separate for focused review
  • Enables testing of infrastructure in production environment
  • Cleaner git history with logical separation of concerns

Next Steps

After this PR merges, the feat/pricing-refactor-v2 branch can be rebased to keep only pricing-specific code:

  • Pricing page template (source/pricing.blade.php)
  • Pricing classes (support/Pricing/*)
  • Pricing styles (source/_assets/scss/_pricing.scss)
  • Pricing JavaScript (source/_assets/js/pages/pricing.js)
  • Pricing tests (tests/Unit/Support/Pricing/*)
  • Index page adjustments (source/index.blade.php)

@vitormattos
vitormattos force-pushed the refactor/extract-pricing-infrastructure branch 3 times, most recently from 461b27b to 5f8da66 Compare July 7, 2026 20:02
vitormattos added a commit that referenced this pull request Jul 7, 2026
Add pricing page user interface:

Templates:
- source/pricing.blade.php: Complete pricing page with product comparison table
  and sticky header for mobile responsiveness

Styles:
- source/_assets/scss/_pricing.scss: Pricing page responsive design
  with mobile-first approach and dynamic cell styling

JavaScript:
- source/_assets/js/pages/pricing.js: Pricing page interactions and logic

The pricing page uses WooCommerce API to fetch and display product information
with locale-aware pricing, product transformations, and dynamic styling.

Depends on infrastructure changes in PR #428.

Signed-off-by: Vitor Mattos <1079143+vitormattos@users.noreply.github.com>
@vitormattos
vitormattos force-pushed the refactor/extract-pricing-infrastructure branch from 5f8da66 to c69f5c6 Compare July 7, 2026 20:04
vitormattos added a commit that referenced this pull request Jul 7, 2026
Add pricing page user interface:

Templates:
- source/pricing.blade.php: Complete pricing page with product comparison table
  and sticky header for mobile responsiveness

Styles:
- source/_assets/scss/_pricing.scss: Pricing page responsive design
  with mobile-first approach and dynamic cell styling

JavaScript:
- source/_assets/js/pages/pricing.js: Pricing page interactions and logic

The pricing page uses WooCommerce API to fetch and display product information
with locale-aware pricing, product transformations, and dynamic styling.

Depends on infrastructure changes in PR #428.

Signed-off-by: Vitor Mattos <1079143+vitormattos@users.noreply.github.com>
Adds infrastructure required for pricing page deployment:

Configuration & Build:
- config.php: Wire pricing page data provider and WooCommerce services
- docker-compose.yml: Add WooCommerce environment variables (WC_CONSUMER_KEY, WC_CONSUMER_SECRET)

Core Pricing Classes:
- WooCommerceAuthHeadersBuilder: Construct authenticated API headers
- WooCommerceProductCollection: Fetch and manage product collections
- WooCommerceProductTransformer: Transform WooCommerce product data
- PricingPageBuilder: Orchestrate pricing page data preparation
- PricingStyleBuilder: Build dynamic pricing styles

Complete Test Suite:
- PricingPageBuilderTest
- PricingStyleBuilderTest
- WooCommerceAuthHeadersBuilderTest
- WooCommerceProductCollectionTest
- WooCommerceProductTransformerTest

This commit includes all infrastructure needed for pricing page deployment
but excludes the pricing page template (pricing.blade.php), pricing styles (_pricing.scss),
and pricing page JavaScript (pages/pricing.js), which are deployed separately.

Signed-off-by: Vitor Mattos <1079143+vitormattos@users.noreply.github.com>
@vitormattos
vitormattos force-pushed the refactor/extract-pricing-infrastructure branch from c69f5c6 to 9b01e4f Compare July 7, 2026 20:06
vitormattos added a commit that referenced this pull request Jul 7, 2026
Add pricing page user interface:

Templates:
- source/pricing.blade.php: Complete pricing page with product comparison table
  and sticky header for mobile responsiveness

Styles:
- source/_assets/scss/_pricing.scss: Pricing page responsive design
  with mobile-first approach and dynamic cell styling

JavaScript:
- source/_assets/js/pages/pricing.js: Pricing page interactions and logic

The pricing page uses WooCommerce API to fetch and display product information
with locale-aware pricing, product transformations, and dynamic styling.

Depends on infrastructure changes in PR #428.

Signed-off-by: Vitor Mattos <1079143+vitormattos@users.noreply.github.com>
@vitormattos
vitormattos merged commit c9a15ec into main Jul 7, 2026
4 checks passed
@vitormattos
vitormattos deleted the refactor/extract-pricing-infrastructure branch July 7, 2026 20:07
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant