Installation
Setup
1. Provide the SDK
Register providers (standalone apps typically useapp.config.ts):
2. Initialize once
Callinitialize with your client key before using components (for example in APP_INITIALIZER, root component ngOnInit, or a dedicated setup service).
3. Global styles
Add SDK styles inangular.json:
Targets Angular 17, 18, and 19. Components are standalone (no
NgModule required).Widgets
CustomerPortal
[theme] input: partial CustomerPortalTheme, merged with MetrifoxService.initialize theme for this component instance.
Section configuration
Built-in section keys
Section anchors
PricingTable
Inputs
If both
plansOnly and singlePurchasesOnly are false or omitted, both plans and single purchases render.Styling
Global CSS import is required (see setup step 3). Without it, layout and components will not match the design system.Theme configuration (supported shape)
pricingTableTheme at the root of the config object, or the legacy flat customer portal / pricing table theme shapes from releases before 2.0.0.
The Angular theme types mirror the React SDK: use the same grouping (general, tabs, sections, buttons, lineItems, tables, modals, plans for portal; plans, tabs, checkoutBar for pricing table). See the React SDK styling reference for field-level tables and copy/paste examples—the object shapes are intentionally aligned.
Updating theme at runtime
MetrifoxService.updateTheme replaces the entire theme on the stored config. To adjust one area, merge with the previous value:
React ↔ Angular quick map
Changelog and support
SDK changelog — version history and breaking changes.npm:
@metrifox/angular-sdk.Product docs: docs.metrifox.com.

