mirror of
https://github.com/luxfi/financial.git
synced 2026-10-30 16:55:56 +00:00
- @luxbank/brand: add productName, urls, contactEmails, copyright surfaces to BrandConfig; resolve tenant overrides from LUX_BRAND_INLINE (JSON string, optionally base64) and LUX_BRAND_OVERRIDE (path to JSON file); domain-driven URL/email derivation when only `domains.primary` is set. - next.config.js: resolve LUX_BRAND_OVERRIDE at Node config time and pass through as LUX_BRAND_INLINE so the same JSON is visible to both server and client bundles (no fs in the browser). - layout.tsx: metadata reads from LUX_BRAND.name + urls.site. - Footer/Menu/NavDropdown/CommandPalette/ChatWidget/UserSteps: all brand-bearing URLs, emails, copyright, attribution, and product-name strings sourced from LUX_BRAND. - ~40 product/technology/solutions/contact/press/security pages: hardcoded docs.lux.financial / app.lux.financial / status.lux.financial / cal.com/luxfi / mailto:*@lux.financial swapped for LUX_BRAND.urls.* and LUX_BRAND.contactEmails.*. - examples/tenant-bank.example.json + tenant-psp.example.json: working fictitious tenant overrides demonstrating the full surface (name, legalName, productName, domains, urls, contactEmails, copyright, colors, social). Build the same code as a fully-rebranded site with LUX_BRAND_OVERRIDE=./examples/tenant-<x>.example.json pnpm build. - pkg/brand 1.0.2 -> 1.0.3; root 0.1.2 -> 0.1.3.
45 lines
1.4 KiB
JSON
45 lines
1.4 KiB
JSON
{
|
|
"$comment": "Fictitious tenant override for a payment service provider white-labeling the site. Apply with: LUX_BRAND_OVERRIDE=./examples/tenant-psp.example.json pnpm build",
|
|
"name": "Acme Pay",
|
|
"legalName": "Acme Pay Holdings Ltd.",
|
|
"productName": "Acme",
|
|
"tagline": "Global payments, one API.",
|
|
"description": "Acme Pay is a multi-rail payment service provider for marketplaces, platforms, and global merchants.",
|
|
"domains": {
|
|
"primary": "acme.pay",
|
|
"app": "dashboard.acme.pay",
|
|
"docs": "developers.acme.pay",
|
|
"status": "status.acme.pay",
|
|
"api": "api.acme.pay"
|
|
},
|
|
"contactEmails": {
|
|
"general": "[email protected]",
|
|
"support": "[email protected]",
|
|
"sales": "[email protected]",
|
|
"press": "[email protected]",
|
|
"security": "[email protected]",
|
|
"compliance": "[email protected]",
|
|
"legal": "[email protected]",
|
|
"careers": "[email protected]"
|
|
},
|
|
"urls": {
|
|
"schedule": "https://meet.acme.pay/sales",
|
|
"parent": "https://acme.pay"
|
|
},
|
|
"copyright": {
|
|
"holder": "Acme Pay Holdings Ltd.",
|
|
"attributionText": "By Acme Pay Holdings",
|
|
"startYear": 2021
|
|
},
|
|
"colors": {
|
|
"primary": "#FF5C00",
|
|
"primaryForeground": "#FFFFFF",
|
|
"ring": "#FF5C00"
|
|
},
|
|
"social": {
|
|
"twitter": "https://twitter.com/acmepay",
|
|
"linkedin": "https://linkedin.com/company/acmepay",
|
|
"github": "https://github.com/acmepay"
|
|
}
|
|
}
|