All updates

Arabic right-to-left across every widget

Every custom widget renders right to left in Arabic, and the Earning Overview widget now runs its startup work during sign-in.

01 ·Arabic renders right to left in every widget

Every supported custom widget now flips to a right-to-left layout when the language is Arabic, on desktop and on mobile. Horizontal layout and component order mirror, and so do text alignment, navigation, controls, tables, arrows, steppers, connectors, and progress indicators. Dialogs, dropdowns, popovers, tooltips, and the loading, empty, and error states inherit the same direction. Logos, photographs, and non-directional icons stay as they are. Numbers, dates, URLs, usernames, handles, account IDs, and referral codes keep their own direction, so a referral code still reads exactly as a trader has to type it. A language set on the widget takes priority, and with none set the browser's language still decides.

Language: ArabicThe interface starts on the right and flows left
Mirrored

Direction carries meaning

LayoutComponent orderText alignmentNavigationControlsTablesArrowsSteppersConnectorsProgress
Held in place

Reversing would change the value

LogosPhotographsNon-directional iconsNumbersDatesURLsUsernamesHandlesAccount IDsReferral codes
Illustration · What mirrors in Arabic, and what holds its direction.
Why it matters

A loyalty programme that reads left to right inside a right-to-left client portal looks like an add-on. With the full widget set mirrored, the same programme sits natively in an Arabic client portal. The explicit language setting matters to a broker too, because it pins the widget to the portal's language when a trader's browser reports something else.

02 ·Earning Overview startup runs alongside sign-in

The Earning Overview widget now does most of its startup during authentication. Its startup files download while authentication is still running, though nothing executes or mounts until authentication succeeds. Community loading now depends on the authenticated token and community, and the full sign-in hydration call no longer holds it up. A minimum identity comes from the authentication data, and a safe palette resolves before the first paint, with full hydration continuing behind it. Sections past the first card no longer sit behind a fixed 1.2 second timer: visible ones start immediately, and offscreen work waits until it scrolls into view or the browser goes idle. Activity, journey, and expiry lookups now run once each.

Authentication

Runs to completion

Nothing mounts until it succeeds

At the same time

Startup files download

Bytes arrive, nothing executes yet

Authentication succeeds
First paint

A minimum identity and a safe palette resolve before the first paint. Full sign-in hydration continues behind it.

Then each section is scheduled on its own
In view

Starts immediately

Offscreen

Waits until it scrolls into view, or the browser goes idle

Illustration · Startup runs during authentication, then each section starts on its own schedule.
Why it matters

Startup is the part of an embedded widget a broker feels most directly, because a trader who opens the client portal and meets a spinner has already formed a view of the loyalty programme. When the startup work shares time with sign-in, and offscreen sections wait until they are wanted, a trader sees the earn-and-spend view sooner.

Also in this build
Improvement

XP and coin labels follow the names a broker configures, so a programme that calls XP "Points" reads that way across the widgets.

30 Jul
Improvement

Widget settings gained a Widget Display section for the socials panel, the activities page, and account settings.

30 Jul
Fix

The follow action on X shows a pending state until the confirmation comes back.

30 Jul
Fix

The streaks widget action section fills the available width as the screen narrows, like the sections around it.

30 Jul