diff --git a/angular.json b/angular.json index 3302bef..0698c77 100644 --- a/angular.json +++ b/angular.json @@ -88,6 +88,10 @@ { "replace": "src/environments/environment.ts", "with": "src/environments/environment.novo.ts" + }, + { + "replace": "src/app/brands/brand-routes.ts", + "with": "src/app/brands/brand-routes.novo.ts" } ], "index": "src/index.novo.html", @@ -105,6 +109,10 @@ { "replace": "src/environments/environment.ts", "with": "src/environments/environment.novo.production.ts" + }, + { + "replace": "src/app/brands/brand-routes.ts", + "with": "src/app/brands/brand-routes.novo.ts" } ], "index": "src/index.novo.html", diff --git a/src/app/app.routes.ts b/src/app/app.routes.ts index 91e34f8..2d3417d 100644 --- a/src/app/app.routes.ts +++ b/src/app/app.routes.ts @@ -1,6 +1,8 @@ import { Routes } from '@angular/router'; +import { brandInfoRoutes, brandLegalRoutes } from './brands/brand-routes'; -export const routes: Routes = [ +// Core routes (same across all brands) +const coreRoutes: Routes = [ { path: '', loadComponent: () => import('./pages/home/home.component').then(m => m.HomeComponent) @@ -24,49 +26,16 @@ export const routes: Routes = [ { path: 'cart', loadComponent: () => import('./pages/cart/cart.component').then(m => m.CartComponent) - }, - { - path: 'company-details', - loadComponent: () => import('./pages/legal/company-details/company-details.component').then(m => m.CompanyDetailsComponent) - }, - { - path: 'payment-terms', - loadComponent: () => import('./pages/legal/payment-terms/payment-terms.component').then(m => m.PaymentTermsComponent) - }, - { - path: 'return-policy', - loadComponent: () => import('./pages/legal/return-policy/return-policy.component').then(m => m.ReturnPolicyComponent) - }, - { - path: 'public-offer', - loadComponent: () => import('./pages/legal/public-offer/public-offer.component').then(m => m.PublicOfferComponent) - }, - { - path: 'privacy-policy', - loadComponent: () => import('./pages/legal/privacy-policy/privacy-policy.component').then(m => m.PrivacyPolicyComponent) - }, - { - path: 'about', - loadComponent: () => import('./pages/info/about/about.component').then(m => m.AboutComponent) - }, - { - path: 'contacts', - loadComponent: () => import('./pages/info/contacts/contacts.component').then(m => m.ContactsComponent) - }, - { - path: 'faq', - loadComponent: () => import('./pages/info/faq/faq.component').then(m => m.FaqComponent) - }, - { - path: 'delivery', - loadComponent: () => import('./pages/info/delivery/delivery.component').then(m => m.DeliveryComponent) - }, - { - path: 'guarantee', - loadComponent: () => import('./pages/info/guarantee/guarantee.component').then(m => m.GuaranteeComponent) - }, + } +]; + +// Combine core routes with brand-specific routes +export const routes: Routes = [ + ...coreRoutes, + ...brandInfoRoutes, + ...brandLegalRoutes, { path: '**', redirectTo: '' } -]; +]; \ No newline at end of file diff --git a/src/app/brands/brand-routes.novo.ts b/src/app/brands/brand-routes.novo.ts new file mode 100644 index 0000000..afb37bc --- /dev/null +++ b/src/app/brands/brand-routes.novo.ts @@ -0,0 +1,49 @@ +// Novo brand routes +// Loaded via angular.json fileReplacements when building for novo +import { Routes } from '@angular/router'; + +export const brandInfoRoutes: Routes = [ + { + path: 'about', + loadComponent: () => import('./novo/pages/info/about/about.component').then(m => m.AboutNovoComponent) + }, + { + path: 'contacts', + loadComponent: () => import('./novo/pages/info/contacts/contacts.component').then(m => m.ContactsNovoComponent) + }, + { + path: 'faq', + loadComponent: () => import('./novo/pages/info/faq/faq.component').then(m => m.FaqNovoComponent) + }, + { + path: 'delivery', + loadComponent: () => import('./novo/pages/info/delivery/delivery.component').then(m => m.DeliveryNovoComponent) + }, + { + path: 'guarantee', + loadComponent: () => import('./novo/pages/info/guarantee/guarantee.component').then(m => m.GuaranteeNovoComponent) + } +]; + +export const brandLegalRoutes: Routes = [ + { + path: 'company-details', + loadComponent: () => import('./novo/pages/legal/company-details/company-details.component').then(m => m.CompanyDetailsNovoComponent) + }, + { + path: 'payment-terms', + loadComponent: () => import('./novo/pages/legal/payment-terms/payment-terms.component').then(m => m.PaymentTermsNovoComponent) + }, + { + path: 'return-policy', + loadComponent: () => import('./novo/pages/legal/return-policy/return-policy.component').then(m => m.ReturnPolicyNovoComponent) + }, + { + path: 'public-offer', + loadComponent: () => import('./novo/pages/legal/public-offer/public-offer.component').then(m => m.PublicOfferNovoComponent) + }, + { + path: 'privacy-policy', + loadComponent: () => import('./novo/pages/legal/privacy-policy/privacy-policy.component').then(m => m.PrivacyPolicyNovoComponent) + } +]; diff --git a/src/app/brands/brand-routes.ts b/src/app/brands/brand-routes.ts new file mode 100644 index 0000000..09382cb --- /dev/null +++ b/src/app/brands/brand-routes.ts @@ -0,0 +1,49 @@ +// Default brand routes (Dexar) +// This file is swapped via angular.json fileReplacements for each brand +import { Routes } from '@angular/router'; + +export const brandInfoRoutes: Routes = [ + { + path: 'about', + loadComponent: () => import('../pages/info/about/about.component').then(m => m.AboutComponent) + }, + { + path: 'contacts', + loadComponent: () => import('../pages/info/contacts/contacts.component').then(m => m.ContactsComponent) + }, + { + path: 'faq', + loadComponent: () => import('../pages/info/faq/faq.component').then(m => m.FaqComponent) + }, + { + path: 'delivery', + loadComponent: () => import('../pages/info/delivery/delivery.component').then(m => m.DeliveryComponent) + }, + { + path: 'guarantee', + loadComponent: () => import('../pages/info/guarantee/guarantee.component').then(m => m.GuaranteeComponent) + } +]; + +export const brandLegalRoutes: Routes = [ + { + path: 'company-details', + loadComponent: () => import('../pages/legal/company-details/company-details.component').then(m => m.CompanyDetailsComponent) + }, + { + path: 'payment-terms', + loadComponent: () => import('../pages/legal/payment-terms/payment-terms.component').then(m => m.PaymentTermsComponent) + }, + { + path: 'return-policy', + loadComponent: () => import('../pages/legal/return-policy/return-policy.component').then(m => m.ReturnPolicyComponent) + }, + { + path: 'public-offer', + loadComponent: () => import('../pages/legal/public-offer/public-offer.component').then(m => m.PublicOfferComponent) + }, + { + path: 'privacy-policy', + loadComponent: () => import('../pages/legal/privacy-policy/privacy-policy.component').then(m => m.PrivacyPolicyComponent) + } +]; diff --git a/src/app/brands/dexar/pages/info/about/about.component.html b/src/app/brands/dexar/pages/info/about/about.component.html new file mode 100644 index 0000000..5a7d436 --- /dev/null +++ b/src/app/brands/dexar/pages/info/about/about.component.html @@ -0,0 +1,74 @@ + diff --git a/src/app/brands/dexar/pages/info/contacts/contacts.component.html b/src/app/brands/dexar/pages/info/contacts/contacts.component.html new file mode 100644 index 0000000..4933fc4 --- /dev/null +++ b/src/app/brands/dexar/pages/info/contacts/contacts.component.html @@ -0,0 +1,46 @@ + diff --git a/src/app/brands/dexar/pages/info/delivery/delivery.component.html b/src/app/brands/dexar/pages/info/delivery/delivery.component.html new file mode 100644 index 0000000..4da78d5 --- /dev/null +++ b/src/app/brands/dexar/pages/info/delivery/delivery.component.html @@ -0,0 +1,60 @@ + diff --git a/src/app/brands/dexar/pages/info/faq/faq.component.html b/src/app/brands/dexar/pages/info/faq/faq.component.html new file mode 100644 index 0000000..9dac502 --- /dev/null +++ b/src/app/brands/dexar/pages/info/faq/faq.component.html @@ -0,0 +1,244 @@ + diff --git a/src/app/brands/dexar/pages/info/guarantee/guarantee.component.html b/src/app/brands/dexar/pages/info/guarantee/guarantee.component.html new file mode 100644 index 0000000..36c1cc0 --- /dev/null +++ b/src/app/brands/dexar/pages/info/guarantee/guarantee.component.html @@ -0,0 +1,158 @@ + diff --git a/src/app/brands/dexar/pages/legal/company-details/company-details.component.html b/src/app/brands/dexar/pages/legal/company-details/company-details.component.html new file mode 100644 index 0000000..7ae6a29 --- /dev/null +++ b/src/app/brands/dexar/pages/legal/company-details/company-details.component.html @@ -0,0 +1,102 @@ + diff --git a/src/app/brands/dexar/pages/legal/payment-terms/payment-terms.component.html b/src/app/brands/dexar/pages/legal/payment-terms/payment-terms.component.html new file mode 100644 index 0000000..a65e258 --- /dev/null +++ b/src/app/brands/dexar/pages/legal/payment-terms/payment-terms.component.html @@ -0,0 +1,119 @@ + diff --git a/src/app/brands/dexar/pages/legal/privacy-policy/privacy-policy.component.html b/src/app/brands/dexar/pages/legal/privacy-policy/privacy-policy.component.html new file mode 100644 index 0000000..cd47b3f --- /dev/null +++ b/src/app/brands/dexar/pages/legal/privacy-policy/privacy-policy.component.html @@ -0,0 +1,258 @@ + diff --git a/src/app/brands/dexar/pages/legal/public-offer/public-offer.component.html b/src/app/brands/dexar/pages/legal/public-offer/public-offer.component.html new file mode 100644 index 0000000..a5a61ee --- /dev/null +++ b/src/app/brands/dexar/pages/legal/public-offer/public-offer.component.html @@ -0,0 +1,467 @@ + diff --git a/src/app/brands/dexar/pages/legal/return-policy/return-policy.component.html b/src/app/brands/dexar/pages/legal/return-policy/return-policy.component.html new file mode 100644 index 0000000..7863b7c --- /dev/null +++ b/src/app/brands/dexar/pages/legal/return-policy/return-policy.component.html @@ -0,0 +1,134 @@ + diff --git a/src/app/brands/novo/pages/info/about/about.component.html b/src/app/brands/novo/pages/info/about/about.component.html new file mode 100644 index 0000000..ea57919 --- /dev/null +++ b/src/app/brands/novo/pages/info/about/about.component.html @@ -0,0 +1,99 @@ + diff --git a/src/app/brands/novo/pages/info/about/about.component.ts b/src/app/brands/novo/pages/info/about/about.component.ts new file mode 100644 index 0000000..fc1633f --- /dev/null +++ b/src/app/brands/novo/pages/info/about/about.component.ts @@ -0,0 +1,11 @@ +import { Component } from '@angular/core'; +import { CommonModule } from '@angular/common'; + +@Component({ + selector: 'app-about-novo', + standalone: true, + imports: [CommonModule], + templateUrl: './about.component.html', + styleUrls: ['../../../../../pages/info/about/about.component.scss'] +}) +export class AboutNovoComponent {} diff --git a/src/app/brands/novo/pages/info/contacts/contacts.component.html b/src/app/brands/novo/pages/info/contacts/contacts.component.html new file mode 100644 index 0000000..a6f6c98 --- /dev/null +++ b/src/app/brands/novo/pages/info/contacts/contacts.component.html @@ -0,0 +1,49 @@ + diff --git a/src/app/brands/novo/pages/info/contacts/contacts.component.ts b/src/app/brands/novo/pages/info/contacts/contacts.component.ts new file mode 100644 index 0000000..91c572e --- /dev/null +++ b/src/app/brands/novo/pages/info/contacts/contacts.component.ts @@ -0,0 +1,11 @@ +import { Component } from '@angular/core'; +import { CommonModule } from '@angular/common'; + +@Component({ + selector: 'app-contacts-novo', + standalone: true, + imports: [CommonModule], + templateUrl: './contacts.component.html', + styleUrls: ['../../../../../pages/info/contacts/contacts.component.scss'] +}) +export class ContactsNovoComponent {} diff --git a/src/app/brands/novo/pages/info/delivery/delivery.component.html b/src/app/brands/novo/pages/info/delivery/delivery.component.html new file mode 100644 index 0000000..4b86702 --- /dev/null +++ b/src/app/brands/novo/pages/info/delivery/delivery.component.html @@ -0,0 +1,78 @@ + diff --git a/src/app/brands/novo/pages/info/delivery/delivery.component.ts b/src/app/brands/novo/pages/info/delivery/delivery.component.ts new file mode 100644 index 0000000..c23b734 --- /dev/null +++ b/src/app/brands/novo/pages/info/delivery/delivery.component.ts @@ -0,0 +1,11 @@ +import { Component } from '@angular/core'; +import { CommonModule } from '@angular/common'; + +@Component({ + selector: 'app-delivery-novo', + standalone: true, + imports: [CommonModule], + templateUrl: './delivery.component.html', + styleUrls: ['../../../../../pages/info/delivery/delivery.component.scss'] +}) +export class DeliveryNovoComponent {} diff --git a/src/app/brands/novo/pages/info/faq/faq.component.html b/src/app/brands/novo/pages/info/faq/faq.component.html new file mode 100644 index 0000000..e8d3588 --- /dev/null +++ b/src/app/brands/novo/pages/info/faq/faq.component.html @@ -0,0 +1,93 @@ + diff --git a/src/app/brands/novo/pages/info/faq/faq.component.ts b/src/app/brands/novo/pages/info/faq/faq.component.ts new file mode 100644 index 0000000..849e2c5 --- /dev/null +++ b/src/app/brands/novo/pages/info/faq/faq.component.ts @@ -0,0 +1,11 @@ +import { Component } from '@angular/core'; +import { CommonModule } from '@angular/common'; + +@Component({ + selector: 'app-faq-novo', + standalone: true, + imports: [CommonModule], + templateUrl: './faq.component.html', + styleUrls: ['../../../../../pages/info/faq/faq.component.scss'] +}) +export class FaqNovoComponent {} diff --git a/src/app/brands/novo/pages/info/guarantee/guarantee.component.html b/src/app/brands/novo/pages/info/guarantee/guarantee.component.html new file mode 100644 index 0000000..8649d45 --- /dev/null +++ b/src/app/brands/novo/pages/info/guarantee/guarantee.component.html @@ -0,0 +1,92 @@ + diff --git a/src/app/brands/novo/pages/info/guarantee/guarantee.component.ts b/src/app/brands/novo/pages/info/guarantee/guarantee.component.ts new file mode 100644 index 0000000..891e764 --- /dev/null +++ b/src/app/brands/novo/pages/info/guarantee/guarantee.component.ts @@ -0,0 +1,11 @@ +import { Component } from '@angular/core'; +import { CommonModule } from '@angular/common'; + +@Component({ + selector: 'app-guarantee-novo', + standalone: true, + imports: [CommonModule], + templateUrl: './guarantee.component.html', + styleUrls: ['../../../../../pages/info/guarantee/guarantee.component.scss'] +}) +export class GuaranteeNovoComponent {} diff --git a/src/app/brands/novo/pages/legal/company-details/company-details.component.html b/src/app/brands/novo/pages/legal/company-details/company-details.component.html new file mode 100644 index 0000000..8613e72 --- /dev/null +++ b/src/app/brands/novo/pages/legal/company-details/company-details.component.html @@ -0,0 +1,113 @@ + diff --git a/src/app/brands/novo/pages/legal/company-details/company-details.component.ts b/src/app/brands/novo/pages/legal/company-details/company-details.component.ts new file mode 100644 index 0000000..b93417c --- /dev/null +++ b/src/app/brands/novo/pages/legal/company-details/company-details.component.ts @@ -0,0 +1,11 @@ +import { Component } from '@angular/core'; +import { CommonModule } from '@angular/common'; + +@Component({ + selector: 'app-company-details-novo', + standalone: true, + imports: [CommonModule], + templateUrl: './company-details.component.html', + styleUrls: ['../../../../../pages/legal/company-details/company-details.component.scss'] +}) +export class CompanyDetailsNovoComponent {} diff --git a/src/app/brands/novo/pages/legal/payment-terms/payment-terms.component.html b/src/app/brands/novo/pages/legal/payment-terms/payment-terms.component.html new file mode 100644 index 0000000..f8b68eb --- /dev/null +++ b/src/app/brands/novo/pages/legal/payment-terms/payment-terms.component.html @@ -0,0 +1,162 @@ + diff --git a/src/app/brands/novo/pages/legal/payment-terms/payment-terms.component.ts b/src/app/brands/novo/pages/legal/payment-terms/payment-terms.component.ts new file mode 100644 index 0000000..b6194ca --- /dev/null +++ b/src/app/brands/novo/pages/legal/payment-terms/payment-terms.component.ts @@ -0,0 +1,11 @@ +import { Component } from '@angular/core'; +import { CommonModule } from '@angular/common'; + +@Component({ + selector: 'app-payment-terms-novo', + standalone: true, + imports: [CommonModule], + templateUrl: './payment-terms.component.html', + styleUrls: ['../../../../../pages/legal/payment-terms/payment-terms.component.scss'] +}) +export class PaymentTermsNovoComponent {} diff --git a/src/app/brands/novo/pages/legal/privacy-policy/privacy-policy.component.html b/src/app/brands/novo/pages/legal/privacy-policy/privacy-policy.component.html new file mode 100644 index 0000000..c94d62a --- /dev/null +++ b/src/app/brands/novo/pages/legal/privacy-policy/privacy-policy.component.html @@ -0,0 +1,277 @@ + diff --git a/src/app/brands/novo/pages/legal/privacy-policy/privacy-policy.component.ts b/src/app/brands/novo/pages/legal/privacy-policy/privacy-policy.component.ts new file mode 100644 index 0000000..b1e74b8 --- /dev/null +++ b/src/app/brands/novo/pages/legal/privacy-policy/privacy-policy.component.ts @@ -0,0 +1,11 @@ +import { Component } from '@angular/core'; +import { CommonModule } from '@angular/common'; + +@Component({ + selector: 'app-privacy-policy-novo', + standalone: true, + imports: [CommonModule], + templateUrl: './privacy-policy.component.html', + styleUrls: ['../../../../../pages/legal/privacy-policy/privacy-policy.component.scss'] +}) +export class PrivacyPolicyNovoComponent {} diff --git a/src/app/brands/novo/pages/legal/public-offer/public-offer.component.html b/src/app/brands/novo/pages/legal/public-offer/public-offer.component.html new file mode 100644 index 0000000..99e2721 --- /dev/null +++ b/src/app/brands/novo/pages/legal/public-offer/public-offer.component.html @@ -0,0 +1,267 @@ + diff --git a/src/app/brands/novo/pages/legal/public-offer/public-offer.component.ts b/src/app/brands/novo/pages/legal/public-offer/public-offer.component.ts new file mode 100644 index 0000000..2af0725 --- /dev/null +++ b/src/app/brands/novo/pages/legal/public-offer/public-offer.component.ts @@ -0,0 +1,11 @@ +import { Component } from '@angular/core'; +import { CommonModule } from '@angular/common'; + +@Component({ + selector: 'app-public-offer-novo', + standalone: true, + imports: [CommonModule], + templateUrl: './public-offer.component.html', + styleUrls: ['../../../../../pages/legal/public-offer/public-offer.component.scss'] +}) +export class PublicOfferNovoComponent {} diff --git a/src/app/brands/novo/pages/legal/return-policy/return-policy.component.html b/src/app/brands/novo/pages/legal/return-policy/return-policy.component.html new file mode 100644 index 0000000..3b809ed --- /dev/null +++ b/src/app/brands/novo/pages/legal/return-policy/return-policy.component.html @@ -0,0 +1,175 @@ + diff --git a/src/app/brands/novo/pages/legal/return-policy/return-policy.component.ts b/src/app/brands/novo/pages/legal/return-policy/return-policy.component.ts new file mode 100644 index 0000000..5680bbe --- /dev/null +++ b/src/app/brands/novo/pages/legal/return-policy/return-policy.component.ts @@ -0,0 +1,11 @@ +import { Component } from '@angular/core'; +import { CommonModule } from '@angular/common'; + +@Component({ + selector: 'app-return-policy-novo', + standalone: true, + imports: [CommonModule], + templateUrl: './return-policy.component.html', + styleUrls: ['../../../../../pages/legal/return-policy/return-policy.component.scss'] +}) +export class ReturnPolicyNovoComponent {}