@deriv-web-design/ui 0.1.14 → 0.1.17
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/block-registry.json +545 -8
- package/components.manifest.json +253 -6
- package/dist/index.css +906 -0
- package/dist/index.css.map +1 -1
- package/dist/index.d.mts +207 -6
- package/dist/index.d.ts +207 -6
- package/dist/index.js +320 -14
- package/dist/index.js.map +1 -1
- package/dist/index.mjs +314 -14
- package/dist/index.mjs.map +1 -1
- package/package.json +1 -1
package/dist/index.d.mts
CHANGED
|
@@ -31,15 +31,17 @@ interface LinkProps extends AnchorHTMLAttributes<HTMLAnchorElement> {
|
|
|
31
31
|
colorScheme?: LinkColorScheme;
|
|
32
32
|
/** Link label text */
|
|
33
33
|
label?: string;
|
|
34
|
-
/** Optional
|
|
34
|
+
/** Optional icon. When provided, the chevron is hidden and the label underlines on hover/active. */
|
|
35
35
|
icon?: ReactNode;
|
|
36
|
+
/** Which side the `icon` sits on. Only takes effect when `icon` is provided. */
|
|
37
|
+
iconPosition?: "left" | "right";
|
|
36
38
|
/** Show trailing chevron arrow. Active only when no icon is provided. */
|
|
37
39
|
showChevron?: boolean;
|
|
38
40
|
/** Disabled state — prevents interaction and reduces opacity */
|
|
39
41
|
disabled?: boolean;
|
|
40
42
|
}
|
|
41
43
|
|
|
42
|
-
declare const Link: ({ colorScheme, label, icon, showChevron, disabled, children, className, onClick, ...props }: LinkProps) => react_jsx_runtime.JSX.Element;
|
|
44
|
+
declare const Link: ({ colorScheme, label, icon, iconPosition, showChevron, disabled, children, className, onClick, ...props }: LinkProps) => react_jsx_runtime.JSX.Element;
|
|
43
45
|
|
|
44
46
|
type ChipSize = "sm" | "md" | "lg";
|
|
45
47
|
interface ChipProps extends ButtonHTMLAttributes<HTMLButtonElement> {
|
|
@@ -1318,6 +1320,7 @@ declare const PeopleGrid: ({ title, description, items, initialVisibleCount, exp
|
|
|
1318
1320
|
/** @deprecated Use AvatarGrid instead */
|
|
1319
1321
|
declare const Leaders: ({ title, description, items, initialVisibleCount, expandText, collapseText, className, ...props }: AvatarGridProps) => react_jsx_runtime.JSX.Element;
|
|
1320
1322
|
|
|
1323
|
+
type ImageBannerVariant = "split-left" | "split-right" | "full-bg-left" | "full-bg-right" | "chips-left" | "chips-right";
|
|
1321
1324
|
interface ImageBannerProps extends HTMLAttributes<HTMLElement> {
|
|
1322
1325
|
/**
|
|
1323
1326
|
* Layout variant.
|
|
@@ -1325,23 +1328,34 @@ interface ImageBannerProps extends HTMLAttributes<HTMLElement> {
|
|
|
1325
1328
|
* - `"split-right"`: image fills the left-hand panel; text on the right.
|
|
1326
1329
|
* - `"full-bg-left"`: image covers the entire card as a background; text overlaid on the left.
|
|
1327
1330
|
* - `"full-bg-right"`: image covers the entire card as a background; text overlaid on the right.
|
|
1331
|
+
* - `"chips-left"`: title, description, and checkmark chips on the left; collage image on the right
|
|
1332
|
+
* (matches the "Everything you need to grow your network" block on deriv.com/partners).
|
|
1333
|
+
* - `"chips-right"`: mirror of `"chips-left"` — collage on the left; text and chips on the right.
|
|
1328
1334
|
*/
|
|
1329
|
-
variant?:
|
|
1335
|
+
variant?: ImageBannerVariant;
|
|
1330
1336
|
/** Section headline */
|
|
1331
1337
|
title?: string;
|
|
1332
1338
|
/** Supporting body copy beneath the title */
|
|
1333
1339
|
description?: string;
|
|
1334
|
-
/** CTA link label */
|
|
1340
|
+
/** CTA link label — ignored for `chips-left` / `chips-right` (those variants have no CTA) */
|
|
1335
1341
|
ctaLabel?: string;
|
|
1336
1342
|
/** CTA link href */
|
|
1337
1343
|
ctaHref?: string;
|
|
1338
1344
|
/** Callback fired when the CTA link is clicked */
|
|
1339
1345
|
onCtaClick?: () => void;
|
|
1346
|
+
/**
|
|
1347
|
+
* Feature chips shown under the description for `chips-left` / `chips-right`.
|
|
1348
|
+
* Each string becomes a pill with a leading checkmark icon.
|
|
1349
|
+
*/
|
|
1350
|
+
chips?: string[];
|
|
1340
1351
|
/**
|
|
1341
1352
|
* URL of the photo.
|
|
1342
1353
|
* - `"split-left"`: fills the right-hand panel; stacks below text on mobile.
|
|
1343
1354
|
* - `"split-right"`: fills the left-hand panel; stacks above text on mobile.
|
|
1344
1355
|
* - `"full-bg-left"` / `"full-bg-right"`: covers the entire card as a background image.
|
|
1356
|
+
* - `"chips-left"` / `"chips-right"`: collage panel; banner height follows the image’s
|
|
1357
|
+
* intrinsic aspect ratio (defaults to the partners tier-cover collage, 1920×1440).
|
|
1358
|
+
* Prefer 4:3 assets so later images match this reference.
|
|
1345
1359
|
*/
|
|
1346
1360
|
imageUrl?: string;
|
|
1347
1361
|
/** Accessible alt text for the image */
|
|
@@ -1350,7 +1364,9 @@ interface ImageBannerProps extends HTMLAttributes<HTMLElement> {
|
|
|
1350
1364
|
className?: string;
|
|
1351
1365
|
}
|
|
1352
1366
|
|
|
1353
|
-
|
|
1367
|
+
/** Reference collage for chips variants (1920×1440). Banner height follows this asset’s ratio. */
|
|
1368
|
+
declare const IMAGE_BANNER_CHIPS_DEFAULT_IMAGE = "https://cdn.prod.website-files.com/68da5c86c91c54f39c86c28a/69a13cf79748b347527dc74d_tier-cover.webp";
|
|
1369
|
+
declare const ImageBanner: ({ variant, title, description, ctaLabel, ctaHref, onCtaClick, chips, imageUrl, imageAlt, className, ...props }: ImageBannerProps) => react_jsx_runtime.JSX.Element;
|
|
1354
1370
|
|
|
1355
1371
|
interface TestimonialItem {
|
|
1356
1372
|
/** The testimonial quote text */
|
|
@@ -2136,4 +2152,189 @@ declare const FEATURE_OFFICES_TEXT_CONTENT: {
|
|
|
2136
2152
|
};
|
|
2137
2153
|
declare const FeatureOffices: ({ title, regions, activeRegionId, defaultActiveRegionId, onRegionChange, offices, linkText, className, ...props }: FeatureOfficesProps) => react_jsx_runtime.JSX.Element;
|
|
2138
2154
|
|
|
2139
|
-
|
|
2155
|
+
/** Visual accent used for the desktop connector line beside each medal. */
|
|
2156
|
+
type TierAccent = "bronze" | "silver" | "gold" | "platinum";
|
|
2157
|
+
interface TierItem {
|
|
2158
|
+
/** Medal / badge image URL */
|
|
2159
|
+
icon: string;
|
|
2160
|
+
/** Accessible alt text for the icon. Defaults to the tier `name` when omitted. */
|
|
2161
|
+
iconAlt?: string;
|
|
2162
|
+
/** Tier label shown under the icon, e.g. "Bronze" */
|
|
2163
|
+
name: string;
|
|
2164
|
+
/** Short stage label under the name, e.g. "Launch" */
|
|
2165
|
+
status: string;
|
|
2166
|
+
/** Benefit headline inside the card, e.g. "Commission + 4% bonus" */
|
|
2167
|
+
title: string;
|
|
2168
|
+
/**
|
|
2169
|
+
* Benefit body copy inside the card. Accepts a string or a ReactNode so
|
|
2170
|
+
* consumers can bold key phrases (as on the Platinum tier on
|
|
2171
|
+
* deriv.com/partners).
|
|
2172
|
+
*/
|
|
2173
|
+
description: ReactNode;
|
|
2174
|
+
/**
|
|
2175
|
+
* Optional qualification line under the card, e.g.
|
|
2176
|
+
* "3-month average commission:\\n$500+". Use `\\n` for the line break
|
|
2177
|
+
* shown on the reference page. Omit for the entry tier.
|
|
2178
|
+
*/
|
|
2179
|
+
requirement?: string;
|
|
2180
|
+
/**
|
|
2181
|
+
* Connector-line accent for this tier on desktop. Defaults by index when
|
|
2182
|
+
* omitted (bronze → silver → gold → platinum).
|
|
2183
|
+
*/
|
|
2184
|
+
accent?: TierAccent;
|
|
2185
|
+
}
|
|
2186
|
+
interface TiersProps {
|
|
2187
|
+
/** Section headline (H2) */
|
|
2188
|
+
title: string;
|
|
2189
|
+
/** Supporting copy under the title */
|
|
2190
|
+
description?: string;
|
|
2191
|
+
/** Ordered list of partnership tiers (typically 4) */
|
|
2192
|
+
tiers: TierItem[];
|
|
2193
|
+
/** Show the section-level CTA link under the tier grid (default: false) */
|
|
2194
|
+
showLink?: boolean;
|
|
2195
|
+
/** Label for the section-level link */
|
|
2196
|
+
linkText?: string;
|
|
2197
|
+
/** Destination for the section-level link */
|
|
2198
|
+
linkHref?: string;
|
|
2199
|
+
/** Click handler for the section-level link */
|
|
2200
|
+
onLinkClick?: () => void;
|
|
2201
|
+
}
|
|
2202
|
+
|
|
2203
|
+
/**
|
|
2204
|
+
* Partnership-tier comparison section — centred header, a responsive
|
|
2205
|
+
* track of medal tiers (with desktop connector lines), and an optional CTA.
|
|
2206
|
+
* Modeled after the "Growing rewards as you scale" block on
|
|
2207
|
+
* https://deriv.com/partners.
|
|
2208
|
+
*
|
|
2209
|
+
* Mobile (<768px): single column; each tier is a white outer card with
|
|
2210
|
+
* the medal, a horizontal name/status row, a slate benefit panel, and an
|
|
2211
|
+
* optional requirement. Desktop (≥992px): four equal columns with metallic
|
|
2212
|
+
* connector lines through the medals.
|
|
2213
|
+
*/
|
|
2214
|
+
declare const Tiers: ({ title, description, tiers, showLink, linkText, linkHref, onLinkClick, }: TiersProps) => react_jsx_runtime.JSX.Element;
|
|
2215
|
+
|
|
2216
|
+
interface PartnerPayoutItem {
|
|
2217
|
+
/** Region or market label, e.g. "Africa". */
|
|
2218
|
+
region: string;
|
|
2219
|
+
/** Formatted payout amount, e.g. "$ 1,237,927.70". */
|
|
2220
|
+
amount: string;
|
|
2221
|
+
}
|
|
2222
|
+
interface PartnersPayoutProps extends HTMLAttributes<HTMLElement> {
|
|
2223
|
+
/** Section headline. */
|
|
2224
|
+
title: string;
|
|
2225
|
+
/** Reporting period shown below the headline. */
|
|
2226
|
+
period: string;
|
|
2227
|
+
/** Regional payout figures. */
|
|
2228
|
+
payouts: PartnerPayoutItem[];
|
|
2229
|
+
/** Globe image URL. */
|
|
2230
|
+
imageUrl: string;
|
|
2231
|
+
/** Accessible alt text. Leave empty when the globe is decorative. */
|
|
2232
|
+
imageAlt?: string;
|
|
2233
|
+
}
|
|
2234
|
+
|
|
2235
|
+
/**
|
|
2236
|
+
* Dark partner-payout section with a responsive metric grid and globe image,
|
|
2237
|
+
* modeled after the "Top partner payouts" section on deriv.com/partners.
|
|
2238
|
+
*/
|
|
2239
|
+
declare const PartnersPayout: ({ title, period, payouts, imageUrl, imageAlt, className, ...props }: PartnersPayoutProps) => react_jsx_runtime.JSX.Element;
|
|
2240
|
+
|
|
2241
|
+
interface MasterPartnerStep {
|
|
2242
|
+
/** Numbered icon image URL (e.g. a circled numeral graphic). */
|
|
2243
|
+
icon: string;
|
|
2244
|
+
/** Accessible alt text for the icon. Leave empty — order is already conveyed by the list. */
|
|
2245
|
+
iconAlt?: string;
|
|
2246
|
+
/** Step description copy. */
|
|
2247
|
+
description: string;
|
|
2248
|
+
}
|
|
2249
|
+
interface MasterPartnerNote {
|
|
2250
|
+
/** Bold lead-in phrase, e.g. "Here's how it works:" */
|
|
2251
|
+
label: string;
|
|
2252
|
+
/** Remaining sentence rendered after the bold label. */
|
|
2253
|
+
text: string;
|
|
2254
|
+
}
|
|
2255
|
+
interface MasterPartnerProps {
|
|
2256
|
+
/** Section headline (H2). */
|
|
2257
|
+
title: string;
|
|
2258
|
+
/** Intro paragraph under the title. */
|
|
2259
|
+
description: string;
|
|
2260
|
+
/** Optional bold-led paragraph, e.g. a worked commission example. */
|
|
2261
|
+
note?: MasterPartnerNote;
|
|
2262
|
+
/** Optional closing paragraph rendered after `note`. */
|
|
2263
|
+
closingText?: string;
|
|
2264
|
+
/** CTA button label. Rendered on desktop only; omit to hide the CTA entirely. */
|
|
2265
|
+
ctaLabel?: string;
|
|
2266
|
+
/** CTA destination URL. Renders the button inside an anchor when set. */
|
|
2267
|
+
ctaHref?: string;
|
|
2268
|
+
/** CTA click handler, used whether or not `ctaHref` is set. */
|
|
2269
|
+
onCtaClick?: () => void;
|
|
2270
|
+
/** Foreground image URL (e.g. a partner working at a desk). */
|
|
2271
|
+
image: string;
|
|
2272
|
+
/** Accessible alt text for the image. Leave empty when purely decorative. */
|
|
2273
|
+
imageAlt?: string;
|
|
2274
|
+
/** Ordered "how it works" steps (typically 4), each with a numbered icon. */
|
|
2275
|
+
steps: MasterPartnerStep[];
|
|
2276
|
+
}
|
|
2277
|
+
|
|
2278
|
+
/**
|
|
2279
|
+
* "Master Partner programme" section — headline and intro copy beside a
|
|
2280
|
+
* foreground image, a desktop-only coral CTA placed after the copy and
|
|
2281
|
+
* before the numbered steps, and a full-width row of numbered "how it
|
|
2282
|
+
* works" steps underneath. Modeled after the "Master Partner programme"
|
|
2283
|
+
* block on https://deriv.com/partners.
|
|
2284
|
+
*
|
|
2285
|
+
* Mobile/tablet (<992px): single column (content, then image), steps stack
|
|
2286
|
+
* to 1-2 columns, and the CTA button is hidden.
|
|
2287
|
+
* Desktop (≥992px): content and image sit side by side, the CTA button
|
|
2288
|
+
* becomes visible right after the copy, and steps lay out in a single row.
|
|
2289
|
+
*/
|
|
2290
|
+
declare const MasterPartner: ({ title, description, note, closingText, ctaLabel, ctaHref, onCtaClick, image, imageAlt, steps, }: MasterPartnerProps) => react_jsx_runtime.JSX.Element;
|
|
2291
|
+
|
|
2292
|
+
type ResourceBannerHeadingLevel = "h2" | "h3" | "h4";
|
|
2293
|
+
interface ResourceBannerLink {
|
|
2294
|
+
/** Unique key for the link (falls back to array index) */
|
|
2295
|
+
id?: string | number;
|
|
2296
|
+
/** Link label text */
|
|
2297
|
+
label: string;
|
|
2298
|
+
/** Destination URL */
|
|
2299
|
+
href: string;
|
|
2300
|
+
/**
|
|
2301
|
+
* Opens in a new tab and shows the external-link icon.
|
|
2302
|
+
* The reference section (deriv.com/fraud-prevention) sets this on every link.
|
|
2303
|
+
* @default true
|
|
2304
|
+
*/
|
|
2305
|
+
external?: boolean;
|
|
2306
|
+
}
|
|
2307
|
+
interface ResourceBannerProps extends HTMLAttributes<HTMLElement> {
|
|
2308
|
+
/** Heading text */
|
|
2309
|
+
title?: string;
|
|
2310
|
+
/** Supporting paragraph below the heading */
|
|
2311
|
+
description?: string;
|
|
2312
|
+
/**
|
|
2313
|
+
* Resource links, rendered as a vertical stack on every breakpoint.
|
|
2314
|
+
* Any number is supported — there is no fixed maximum.
|
|
2315
|
+
*/
|
|
2316
|
+
links?: ResourceBannerLink[];
|
|
2317
|
+
/**
|
|
2318
|
+
* Heading tag to render. Use a lower level when the surrounding page
|
|
2319
|
+
* already owns the heading hierarchy.
|
|
2320
|
+
* @default "h2"
|
|
2321
|
+
*/
|
|
2322
|
+
headingLevel?: ResourceBannerHeadingLevel;
|
|
2323
|
+
}
|
|
2324
|
+
|
|
2325
|
+
/**
|
|
2326
|
+
* Real deriv.com copy, exported for consumers who want to reproduce the
|
|
2327
|
+
* exact reference section (deriv.com/fraud-prevention → `.section_fraud_resources`).
|
|
2328
|
+
*
|
|
2329
|
+
* Opt-in only — the component's defaults and the Storybook stories both use
|
|
2330
|
+
* generic placeholder copy (design-system Rule 6). Import this when you want
|
|
2331
|
+
* the reference content specifically; don't treat it as the template's content.
|
|
2332
|
+
*/
|
|
2333
|
+
declare const RESOURCE_BANNER_DERIV_CONTENT: {
|
|
2334
|
+
title: string;
|
|
2335
|
+
description: string;
|
|
2336
|
+
links: ResourceBannerLink[];
|
|
2337
|
+
};
|
|
2338
|
+
declare const ResourceBanner: ({ title, description, links, headingLevel: HeadingTag, className, ...props }: ResourceBannerProps) => react_jsx_runtime.JSX.Element;
|
|
2339
|
+
|
|
2340
|
+
export { AVATAR_DATA, Accordion, type AccordionProps, ArticleHero, type ArticleHeroArticle, type ArticleHeroColumn, type ArticleHeroProps, ArticleSection, type ArticleSectionItem, type ArticleSectionProps, type ArticleSectionVariant, AvatarGrid, type AvatarGridProps, type AvatarItem, type AvatarPosition, type AwardItem, BottomSheet, type BottomSheetAction, type BottomSheetProps, Breadcrumb, type BreadcrumbItem, type BreadcrumbProps, type BreadcrumbSize, Button, type ButtonColorScheme, type ButtonIconPosition, type ButtonProps, type ButtonVariant, COL_ONE_LOGOS, COL_TWO_LOGOS, CORAL_BANNER_DERIV_SLIDES, CTABanner, type CTABannerProps, type CalculationToken, Card, type CardPrimaryStyle, type CardProps, type CardTag, type CardThumbnailType, Chip, ChipDropdown, type ChipDropdownOption, type ChipDropdownProps, type ChipProps, type ChipSize, CoralBanner, type CoralBannerButton, type CoralBannerProps, type CoralBannerSlide, DEFAULT_AWARDS, DEFAULT_CULTURE_CARDS, DEFAULT_EXCHANGE_RATE_WS_URL, DEFAULT_SYMBOLS_ENDPOINT, DayNightTransition, type DayNightTransitionProps, DotLottieInView, type DotLottieInViewProps, DownloadBadge, type DownloadBadgeColorScheme, type DownloadBadgePlatform, type DownloadBadgeProps, DownloadBanner, type DownloadBannerProps, type DownloadBannerStyle, DynamicTable, type DynamicTableColumnDef, type DynamicTableProps, type DynamicTableRowData, type DynamicTableVariant, FEATURE_AWARDS_TEXT_CONTENT, FEATURE_BLOG_CATEGORIES_TEXT_CONTENT, FEATURE_BLOG_TEXT_CONTENT, FEATURE_OFFICES_TEXT_CONTENT, FEATURE_SCROLL_DATA, FaqAccordion, type FaqAccordionColorScheme, type FaqAccordionProps, type FaqItem, FeatureAwards, type FeatureAwardsProps, FeatureBlog, type FeatureBlogAuthor, FeatureBlogCategories, type FeatureBlogCategoriesProps, type FeatureBlogCategoryPost, type FeatureBlogCategoryTab, type FeatureBlogContentBlock, type FeatureBlogContentBlockType, FeatureBlogPage, type FeatureBlogPageProps, type FeatureBlogPost, type FeatureBlogProps, type FeatureBlogSharePlatform, FeatureBullets, type FeatureBulletsProps, type FeatureCardIconItem, type FeatureCardItem, FeatureCards, FeatureCardsIcon, type FeatureCardsIconProps, type FeatureCardsProps, type FeatureOffice, type FeatureOfficeRegion, FeatureOffices, type FeatureOfficesProps, FeatureScroll, type FeatureScrollItem, type FeatureScrollProps, FeatureSplit, type FeatureSplitImagePosition, type FeatureSplitProps, Footer, type FooterAiSummaryItem, type FooterAiSummaryProps, type FooterAppBadge, type FooterDerivGoProps, type FooterLinkItem, type FooterNavSection, type FooterProps, type FooterSocialLink, type FormulaBlock, Header, type HeaderButtonProps, type HeaderProps, type HeaderVariant, type HelpCenterContentBlock, type HelpCenterContentBlockType, HelpCenterPage, type HelpCenterPageProps, type HelpCenterQuestionItem, HelpCentreCategories, type HelpCentreCategoriesProps, type HelpCentreCategoryItem, HelpCentreSubCategories, type HelpCentreSubCategoriesProps, type HelpCentreSubCategoryItem, Hero, type HeroButtonProps, type HeroProps, type HeroVariant, IMAGE_BANNER_CHIPS_DEFAULT_IMAGE, ImageBanner, type ImageBannerProps, type ImageBannerVariant, type LanguageItem, type LeaderItem, Leaders, type LeadersProps, Link, type LinkColorScheme, type LinkProps, type LogoItem, LogoMarquee, type LogoMarqueeProps, MasterPartner, type MasterPartnerNote, type MasterPartnerProps, type MasterPartnerStep, type NavDropdownColumn, type NavDropdownFeature, type NavDropdownItem, type NavItem, Navbar, type NavbarProps, PARALLAX_BANNER_TEXT_CONTENT, Pagination, type PaginationProps, ParallaxBanner, type ParallaxBannerCultureCard, type ParallaxBannerProps, type PartnerPayoutItem, PartnersPayout, type PartnersPayoutProps, PeopleGrid, type PeopleGridProps, type PersonItem, RESOURCE_BANNER_DERIV_CONTENT, ResourceBanner, type ResourceBannerHeadingLevel, type ResourceBannerLink, type ResourceBannerProps, STEPS_DATA, SearchField, type SearchFieldProps, type SearchFieldStatus, type StatItem, Stats, type StatsAward, type StatsProps, StatsSimple, type StatsSimpleProps, type StepItem, Steps, type StepsImagePosition, type StepsProps, type StickyCardItem, type StickyCardTheme, type StickyMarketCardItem, type StickyMarketCardTheme, StickyMarketCards, type StickyMarketCardsProps, StickyStackedCards, type StickyStackedCardsProps, type SwapCalculationMode, TEXT_CONTENT, type TabItem, Table, type TableColumnDef, type TableColumnWidth, type TableProps, type TableRowData, Tabs, type TabsProps, Tag, type TagFontWeight, type TagProps, type TagSize, type TagVariant, Testimonial, type TestimonialItem, type TestimonialProps, TextField, type TextFieldProps, type TextFieldStatus, type TextFieldVariant, TextScroll, type TextScrollProps, type TierAccent, type TierItem, Tiers, type TiersProps, TradingCalculator, TradingCalculatorHowTo, type TradingCalculatorHowToProps, type TradingCalculatorHowToVariant, type TradingCalculatorProps, type TradingCalculatorResults, type TradingCalculatorVariant, type TradingSymbolSpec, dayNightTransitionV2Preset };
|
package/dist/index.d.ts
CHANGED
|
@@ -31,15 +31,17 @@ interface LinkProps extends AnchorHTMLAttributes<HTMLAnchorElement> {
|
|
|
31
31
|
colorScheme?: LinkColorScheme;
|
|
32
32
|
/** Link label text */
|
|
33
33
|
label?: string;
|
|
34
|
-
/** Optional
|
|
34
|
+
/** Optional icon. When provided, the chevron is hidden and the label underlines on hover/active. */
|
|
35
35
|
icon?: ReactNode;
|
|
36
|
+
/** Which side the `icon` sits on. Only takes effect when `icon` is provided. */
|
|
37
|
+
iconPosition?: "left" | "right";
|
|
36
38
|
/** Show trailing chevron arrow. Active only when no icon is provided. */
|
|
37
39
|
showChevron?: boolean;
|
|
38
40
|
/** Disabled state — prevents interaction and reduces opacity */
|
|
39
41
|
disabled?: boolean;
|
|
40
42
|
}
|
|
41
43
|
|
|
42
|
-
declare const Link: ({ colorScheme, label, icon, showChevron, disabled, children, className, onClick, ...props }: LinkProps) => react_jsx_runtime.JSX.Element;
|
|
44
|
+
declare const Link: ({ colorScheme, label, icon, iconPosition, showChevron, disabled, children, className, onClick, ...props }: LinkProps) => react_jsx_runtime.JSX.Element;
|
|
43
45
|
|
|
44
46
|
type ChipSize = "sm" | "md" | "lg";
|
|
45
47
|
interface ChipProps extends ButtonHTMLAttributes<HTMLButtonElement> {
|
|
@@ -1318,6 +1320,7 @@ declare const PeopleGrid: ({ title, description, items, initialVisibleCount, exp
|
|
|
1318
1320
|
/** @deprecated Use AvatarGrid instead */
|
|
1319
1321
|
declare const Leaders: ({ title, description, items, initialVisibleCount, expandText, collapseText, className, ...props }: AvatarGridProps) => react_jsx_runtime.JSX.Element;
|
|
1320
1322
|
|
|
1323
|
+
type ImageBannerVariant = "split-left" | "split-right" | "full-bg-left" | "full-bg-right" | "chips-left" | "chips-right";
|
|
1321
1324
|
interface ImageBannerProps extends HTMLAttributes<HTMLElement> {
|
|
1322
1325
|
/**
|
|
1323
1326
|
* Layout variant.
|
|
@@ -1325,23 +1328,34 @@ interface ImageBannerProps extends HTMLAttributes<HTMLElement> {
|
|
|
1325
1328
|
* - `"split-right"`: image fills the left-hand panel; text on the right.
|
|
1326
1329
|
* - `"full-bg-left"`: image covers the entire card as a background; text overlaid on the left.
|
|
1327
1330
|
* - `"full-bg-right"`: image covers the entire card as a background; text overlaid on the right.
|
|
1331
|
+
* - `"chips-left"`: title, description, and checkmark chips on the left; collage image on the right
|
|
1332
|
+
* (matches the "Everything you need to grow your network" block on deriv.com/partners).
|
|
1333
|
+
* - `"chips-right"`: mirror of `"chips-left"` — collage on the left; text and chips on the right.
|
|
1328
1334
|
*/
|
|
1329
|
-
variant?:
|
|
1335
|
+
variant?: ImageBannerVariant;
|
|
1330
1336
|
/** Section headline */
|
|
1331
1337
|
title?: string;
|
|
1332
1338
|
/** Supporting body copy beneath the title */
|
|
1333
1339
|
description?: string;
|
|
1334
|
-
/** CTA link label */
|
|
1340
|
+
/** CTA link label — ignored for `chips-left` / `chips-right` (those variants have no CTA) */
|
|
1335
1341
|
ctaLabel?: string;
|
|
1336
1342
|
/** CTA link href */
|
|
1337
1343
|
ctaHref?: string;
|
|
1338
1344
|
/** Callback fired when the CTA link is clicked */
|
|
1339
1345
|
onCtaClick?: () => void;
|
|
1346
|
+
/**
|
|
1347
|
+
* Feature chips shown under the description for `chips-left` / `chips-right`.
|
|
1348
|
+
* Each string becomes a pill with a leading checkmark icon.
|
|
1349
|
+
*/
|
|
1350
|
+
chips?: string[];
|
|
1340
1351
|
/**
|
|
1341
1352
|
* URL of the photo.
|
|
1342
1353
|
* - `"split-left"`: fills the right-hand panel; stacks below text on mobile.
|
|
1343
1354
|
* - `"split-right"`: fills the left-hand panel; stacks above text on mobile.
|
|
1344
1355
|
* - `"full-bg-left"` / `"full-bg-right"`: covers the entire card as a background image.
|
|
1356
|
+
* - `"chips-left"` / `"chips-right"`: collage panel; banner height follows the image’s
|
|
1357
|
+
* intrinsic aspect ratio (defaults to the partners tier-cover collage, 1920×1440).
|
|
1358
|
+
* Prefer 4:3 assets so later images match this reference.
|
|
1345
1359
|
*/
|
|
1346
1360
|
imageUrl?: string;
|
|
1347
1361
|
/** Accessible alt text for the image */
|
|
@@ -1350,7 +1364,9 @@ interface ImageBannerProps extends HTMLAttributes<HTMLElement> {
|
|
|
1350
1364
|
className?: string;
|
|
1351
1365
|
}
|
|
1352
1366
|
|
|
1353
|
-
|
|
1367
|
+
/** Reference collage for chips variants (1920×1440). Banner height follows this asset’s ratio. */
|
|
1368
|
+
declare const IMAGE_BANNER_CHIPS_DEFAULT_IMAGE = "https://cdn.prod.website-files.com/68da5c86c91c54f39c86c28a/69a13cf79748b347527dc74d_tier-cover.webp";
|
|
1369
|
+
declare const ImageBanner: ({ variant, title, description, ctaLabel, ctaHref, onCtaClick, chips, imageUrl, imageAlt, className, ...props }: ImageBannerProps) => react_jsx_runtime.JSX.Element;
|
|
1354
1370
|
|
|
1355
1371
|
interface TestimonialItem {
|
|
1356
1372
|
/** The testimonial quote text */
|
|
@@ -2136,4 +2152,189 @@ declare const FEATURE_OFFICES_TEXT_CONTENT: {
|
|
|
2136
2152
|
};
|
|
2137
2153
|
declare const FeatureOffices: ({ title, regions, activeRegionId, defaultActiveRegionId, onRegionChange, offices, linkText, className, ...props }: FeatureOfficesProps) => react_jsx_runtime.JSX.Element;
|
|
2138
2154
|
|
|
2139
|
-
|
|
2155
|
+
/** Visual accent used for the desktop connector line beside each medal. */
|
|
2156
|
+
type TierAccent = "bronze" | "silver" | "gold" | "platinum";
|
|
2157
|
+
interface TierItem {
|
|
2158
|
+
/** Medal / badge image URL */
|
|
2159
|
+
icon: string;
|
|
2160
|
+
/** Accessible alt text for the icon. Defaults to the tier `name` when omitted. */
|
|
2161
|
+
iconAlt?: string;
|
|
2162
|
+
/** Tier label shown under the icon, e.g. "Bronze" */
|
|
2163
|
+
name: string;
|
|
2164
|
+
/** Short stage label under the name, e.g. "Launch" */
|
|
2165
|
+
status: string;
|
|
2166
|
+
/** Benefit headline inside the card, e.g. "Commission + 4% bonus" */
|
|
2167
|
+
title: string;
|
|
2168
|
+
/**
|
|
2169
|
+
* Benefit body copy inside the card. Accepts a string or a ReactNode so
|
|
2170
|
+
* consumers can bold key phrases (as on the Platinum tier on
|
|
2171
|
+
* deriv.com/partners).
|
|
2172
|
+
*/
|
|
2173
|
+
description: ReactNode;
|
|
2174
|
+
/**
|
|
2175
|
+
* Optional qualification line under the card, e.g.
|
|
2176
|
+
* "3-month average commission:\\n$500+". Use `\\n` for the line break
|
|
2177
|
+
* shown on the reference page. Omit for the entry tier.
|
|
2178
|
+
*/
|
|
2179
|
+
requirement?: string;
|
|
2180
|
+
/**
|
|
2181
|
+
* Connector-line accent for this tier on desktop. Defaults by index when
|
|
2182
|
+
* omitted (bronze → silver → gold → platinum).
|
|
2183
|
+
*/
|
|
2184
|
+
accent?: TierAccent;
|
|
2185
|
+
}
|
|
2186
|
+
interface TiersProps {
|
|
2187
|
+
/** Section headline (H2) */
|
|
2188
|
+
title: string;
|
|
2189
|
+
/** Supporting copy under the title */
|
|
2190
|
+
description?: string;
|
|
2191
|
+
/** Ordered list of partnership tiers (typically 4) */
|
|
2192
|
+
tiers: TierItem[];
|
|
2193
|
+
/** Show the section-level CTA link under the tier grid (default: false) */
|
|
2194
|
+
showLink?: boolean;
|
|
2195
|
+
/** Label for the section-level link */
|
|
2196
|
+
linkText?: string;
|
|
2197
|
+
/** Destination for the section-level link */
|
|
2198
|
+
linkHref?: string;
|
|
2199
|
+
/** Click handler for the section-level link */
|
|
2200
|
+
onLinkClick?: () => void;
|
|
2201
|
+
}
|
|
2202
|
+
|
|
2203
|
+
/**
|
|
2204
|
+
* Partnership-tier comparison section — centred header, a responsive
|
|
2205
|
+
* track of medal tiers (with desktop connector lines), and an optional CTA.
|
|
2206
|
+
* Modeled after the "Growing rewards as you scale" block on
|
|
2207
|
+
* https://deriv.com/partners.
|
|
2208
|
+
*
|
|
2209
|
+
* Mobile (<768px): single column; each tier is a white outer card with
|
|
2210
|
+
* the medal, a horizontal name/status row, a slate benefit panel, and an
|
|
2211
|
+
* optional requirement. Desktop (≥992px): four equal columns with metallic
|
|
2212
|
+
* connector lines through the medals.
|
|
2213
|
+
*/
|
|
2214
|
+
declare const Tiers: ({ title, description, tiers, showLink, linkText, linkHref, onLinkClick, }: TiersProps) => react_jsx_runtime.JSX.Element;
|
|
2215
|
+
|
|
2216
|
+
interface PartnerPayoutItem {
|
|
2217
|
+
/** Region or market label, e.g. "Africa". */
|
|
2218
|
+
region: string;
|
|
2219
|
+
/** Formatted payout amount, e.g. "$ 1,237,927.70". */
|
|
2220
|
+
amount: string;
|
|
2221
|
+
}
|
|
2222
|
+
interface PartnersPayoutProps extends HTMLAttributes<HTMLElement> {
|
|
2223
|
+
/** Section headline. */
|
|
2224
|
+
title: string;
|
|
2225
|
+
/** Reporting period shown below the headline. */
|
|
2226
|
+
period: string;
|
|
2227
|
+
/** Regional payout figures. */
|
|
2228
|
+
payouts: PartnerPayoutItem[];
|
|
2229
|
+
/** Globe image URL. */
|
|
2230
|
+
imageUrl: string;
|
|
2231
|
+
/** Accessible alt text. Leave empty when the globe is decorative. */
|
|
2232
|
+
imageAlt?: string;
|
|
2233
|
+
}
|
|
2234
|
+
|
|
2235
|
+
/**
|
|
2236
|
+
* Dark partner-payout section with a responsive metric grid and globe image,
|
|
2237
|
+
* modeled after the "Top partner payouts" section on deriv.com/partners.
|
|
2238
|
+
*/
|
|
2239
|
+
declare const PartnersPayout: ({ title, period, payouts, imageUrl, imageAlt, className, ...props }: PartnersPayoutProps) => react_jsx_runtime.JSX.Element;
|
|
2240
|
+
|
|
2241
|
+
interface MasterPartnerStep {
|
|
2242
|
+
/** Numbered icon image URL (e.g. a circled numeral graphic). */
|
|
2243
|
+
icon: string;
|
|
2244
|
+
/** Accessible alt text for the icon. Leave empty — order is already conveyed by the list. */
|
|
2245
|
+
iconAlt?: string;
|
|
2246
|
+
/** Step description copy. */
|
|
2247
|
+
description: string;
|
|
2248
|
+
}
|
|
2249
|
+
interface MasterPartnerNote {
|
|
2250
|
+
/** Bold lead-in phrase, e.g. "Here's how it works:" */
|
|
2251
|
+
label: string;
|
|
2252
|
+
/** Remaining sentence rendered after the bold label. */
|
|
2253
|
+
text: string;
|
|
2254
|
+
}
|
|
2255
|
+
interface MasterPartnerProps {
|
|
2256
|
+
/** Section headline (H2). */
|
|
2257
|
+
title: string;
|
|
2258
|
+
/** Intro paragraph under the title. */
|
|
2259
|
+
description: string;
|
|
2260
|
+
/** Optional bold-led paragraph, e.g. a worked commission example. */
|
|
2261
|
+
note?: MasterPartnerNote;
|
|
2262
|
+
/** Optional closing paragraph rendered after `note`. */
|
|
2263
|
+
closingText?: string;
|
|
2264
|
+
/** CTA button label. Rendered on desktop only; omit to hide the CTA entirely. */
|
|
2265
|
+
ctaLabel?: string;
|
|
2266
|
+
/** CTA destination URL. Renders the button inside an anchor when set. */
|
|
2267
|
+
ctaHref?: string;
|
|
2268
|
+
/** CTA click handler, used whether or not `ctaHref` is set. */
|
|
2269
|
+
onCtaClick?: () => void;
|
|
2270
|
+
/** Foreground image URL (e.g. a partner working at a desk). */
|
|
2271
|
+
image: string;
|
|
2272
|
+
/** Accessible alt text for the image. Leave empty when purely decorative. */
|
|
2273
|
+
imageAlt?: string;
|
|
2274
|
+
/** Ordered "how it works" steps (typically 4), each with a numbered icon. */
|
|
2275
|
+
steps: MasterPartnerStep[];
|
|
2276
|
+
}
|
|
2277
|
+
|
|
2278
|
+
/**
|
|
2279
|
+
* "Master Partner programme" section — headline and intro copy beside a
|
|
2280
|
+
* foreground image, a desktop-only coral CTA placed after the copy and
|
|
2281
|
+
* before the numbered steps, and a full-width row of numbered "how it
|
|
2282
|
+
* works" steps underneath. Modeled after the "Master Partner programme"
|
|
2283
|
+
* block on https://deriv.com/partners.
|
|
2284
|
+
*
|
|
2285
|
+
* Mobile/tablet (<992px): single column (content, then image), steps stack
|
|
2286
|
+
* to 1-2 columns, and the CTA button is hidden.
|
|
2287
|
+
* Desktop (≥992px): content and image sit side by side, the CTA button
|
|
2288
|
+
* becomes visible right after the copy, and steps lay out in a single row.
|
|
2289
|
+
*/
|
|
2290
|
+
declare const MasterPartner: ({ title, description, note, closingText, ctaLabel, ctaHref, onCtaClick, image, imageAlt, steps, }: MasterPartnerProps) => react_jsx_runtime.JSX.Element;
|
|
2291
|
+
|
|
2292
|
+
type ResourceBannerHeadingLevel = "h2" | "h3" | "h4";
|
|
2293
|
+
interface ResourceBannerLink {
|
|
2294
|
+
/** Unique key for the link (falls back to array index) */
|
|
2295
|
+
id?: string | number;
|
|
2296
|
+
/** Link label text */
|
|
2297
|
+
label: string;
|
|
2298
|
+
/** Destination URL */
|
|
2299
|
+
href: string;
|
|
2300
|
+
/**
|
|
2301
|
+
* Opens in a new tab and shows the external-link icon.
|
|
2302
|
+
* The reference section (deriv.com/fraud-prevention) sets this on every link.
|
|
2303
|
+
* @default true
|
|
2304
|
+
*/
|
|
2305
|
+
external?: boolean;
|
|
2306
|
+
}
|
|
2307
|
+
interface ResourceBannerProps extends HTMLAttributes<HTMLElement> {
|
|
2308
|
+
/** Heading text */
|
|
2309
|
+
title?: string;
|
|
2310
|
+
/** Supporting paragraph below the heading */
|
|
2311
|
+
description?: string;
|
|
2312
|
+
/**
|
|
2313
|
+
* Resource links, rendered as a vertical stack on every breakpoint.
|
|
2314
|
+
* Any number is supported — there is no fixed maximum.
|
|
2315
|
+
*/
|
|
2316
|
+
links?: ResourceBannerLink[];
|
|
2317
|
+
/**
|
|
2318
|
+
* Heading tag to render. Use a lower level when the surrounding page
|
|
2319
|
+
* already owns the heading hierarchy.
|
|
2320
|
+
* @default "h2"
|
|
2321
|
+
*/
|
|
2322
|
+
headingLevel?: ResourceBannerHeadingLevel;
|
|
2323
|
+
}
|
|
2324
|
+
|
|
2325
|
+
/**
|
|
2326
|
+
* Real deriv.com copy, exported for consumers who want to reproduce the
|
|
2327
|
+
* exact reference section (deriv.com/fraud-prevention → `.section_fraud_resources`).
|
|
2328
|
+
*
|
|
2329
|
+
* Opt-in only — the component's defaults and the Storybook stories both use
|
|
2330
|
+
* generic placeholder copy (design-system Rule 6). Import this when you want
|
|
2331
|
+
* the reference content specifically; don't treat it as the template's content.
|
|
2332
|
+
*/
|
|
2333
|
+
declare const RESOURCE_BANNER_DERIV_CONTENT: {
|
|
2334
|
+
title: string;
|
|
2335
|
+
description: string;
|
|
2336
|
+
links: ResourceBannerLink[];
|
|
2337
|
+
};
|
|
2338
|
+
declare const ResourceBanner: ({ title, description, links, headingLevel: HeadingTag, className, ...props }: ResourceBannerProps) => react_jsx_runtime.JSX.Element;
|
|
2339
|
+
|
|
2340
|
+
export { AVATAR_DATA, Accordion, type AccordionProps, ArticleHero, type ArticleHeroArticle, type ArticleHeroColumn, type ArticleHeroProps, ArticleSection, type ArticleSectionItem, type ArticleSectionProps, type ArticleSectionVariant, AvatarGrid, type AvatarGridProps, type AvatarItem, type AvatarPosition, type AwardItem, BottomSheet, type BottomSheetAction, type BottomSheetProps, Breadcrumb, type BreadcrumbItem, type BreadcrumbProps, type BreadcrumbSize, Button, type ButtonColorScheme, type ButtonIconPosition, type ButtonProps, type ButtonVariant, COL_ONE_LOGOS, COL_TWO_LOGOS, CORAL_BANNER_DERIV_SLIDES, CTABanner, type CTABannerProps, type CalculationToken, Card, type CardPrimaryStyle, type CardProps, type CardTag, type CardThumbnailType, Chip, ChipDropdown, type ChipDropdownOption, type ChipDropdownProps, type ChipProps, type ChipSize, CoralBanner, type CoralBannerButton, type CoralBannerProps, type CoralBannerSlide, DEFAULT_AWARDS, DEFAULT_CULTURE_CARDS, DEFAULT_EXCHANGE_RATE_WS_URL, DEFAULT_SYMBOLS_ENDPOINT, DayNightTransition, type DayNightTransitionProps, DotLottieInView, type DotLottieInViewProps, DownloadBadge, type DownloadBadgeColorScheme, type DownloadBadgePlatform, type DownloadBadgeProps, DownloadBanner, type DownloadBannerProps, type DownloadBannerStyle, DynamicTable, type DynamicTableColumnDef, type DynamicTableProps, type DynamicTableRowData, type DynamicTableVariant, FEATURE_AWARDS_TEXT_CONTENT, FEATURE_BLOG_CATEGORIES_TEXT_CONTENT, FEATURE_BLOG_TEXT_CONTENT, FEATURE_OFFICES_TEXT_CONTENT, FEATURE_SCROLL_DATA, FaqAccordion, type FaqAccordionColorScheme, type FaqAccordionProps, type FaqItem, FeatureAwards, type FeatureAwardsProps, FeatureBlog, type FeatureBlogAuthor, FeatureBlogCategories, type FeatureBlogCategoriesProps, type FeatureBlogCategoryPost, type FeatureBlogCategoryTab, type FeatureBlogContentBlock, type FeatureBlogContentBlockType, FeatureBlogPage, type FeatureBlogPageProps, type FeatureBlogPost, type FeatureBlogProps, type FeatureBlogSharePlatform, FeatureBullets, type FeatureBulletsProps, type FeatureCardIconItem, type FeatureCardItem, FeatureCards, FeatureCardsIcon, type FeatureCardsIconProps, type FeatureCardsProps, type FeatureOffice, type FeatureOfficeRegion, FeatureOffices, type FeatureOfficesProps, FeatureScroll, type FeatureScrollItem, type FeatureScrollProps, FeatureSplit, type FeatureSplitImagePosition, type FeatureSplitProps, Footer, type FooterAiSummaryItem, type FooterAiSummaryProps, type FooterAppBadge, type FooterDerivGoProps, type FooterLinkItem, type FooterNavSection, type FooterProps, type FooterSocialLink, type FormulaBlock, Header, type HeaderButtonProps, type HeaderProps, type HeaderVariant, type HelpCenterContentBlock, type HelpCenterContentBlockType, HelpCenterPage, type HelpCenterPageProps, type HelpCenterQuestionItem, HelpCentreCategories, type HelpCentreCategoriesProps, type HelpCentreCategoryItem, HelpCentreSubCategories, type HelpCentreSubCategoriesProps, type HelpCentreSubCategoryItem, Hero, type HeroButtonProps, type HeroProps, type HeroVariant, IMAGE_BANNER_CHIPS_DEFAULT_IMAGE, ImageBanner, type ImageBannerProps, type ImageBannerVariant, type LanguageItem, type LeaderItem, Leaders, type LeadersProps, Link, type LinkColorScheme, type LinkProps, type LogoItem, LogoMarquee, type LogoMarqueeProps, MasterPartner, type MasterPartnerNote, type MasterPartnerProps, type MasterPartnerStep, type NavDropdownColumn, type NavDropdownFeature, type NavDropdownItem, type NavItem, Navbar, type NavbarProps, PARALLAX_BANNER_TEXT_CONTENT, Pagination, type PaginationProps, ParallaxBanner, type ParallaxBannerCultureCard, type ParallaxBannerProps, type PartnerPayoutItem, PartnersPayout, type PartnersPayoutProps, PeopleGrid, type PeopleGridProps, type PersonItem, RESOURCE_BANNER_DERIV_CONTENT, ResourceBanner, type ResourceBannerHeadingLevel, type ResourceBannerLink, type ResourceBannerProps, STEPS_DATA, SearchField, type SearchFieldProps, type SearchFieldStatus, type StatItem, Stats, type StatsAward, type StatsProps, StatsSimple, type StatsSimpleProps, type StepItem, Steps, type StepsImagePosition, type StepsProps, type StickyCardItem, type StickyCardTheme, type StickyMarketCardItem, type StickyMarketCardTheme, StickyMarketCards, type StickyMarketCardsProps, StickyStackedCards, type StickyStackedCardsProps, type SwapCalculationMode, TEXT_CONTENT, type TabItem, Table, type TableColumnDef, type TableColumnWidth, type TableProps, type TableRowData, Tabs, type TabsProps, Tag, type TagFontWeight, type TagProps, type TagSize, type TagVariant, Testimonial, type TestimonialItem, type TestimonialProps, TextField, type TextFieldProps, type TextFieldStatus, type TextFieldVariant, TextScroll, type TextScrollProps, type TierAccent, type TierItem, Tiers, type TiersProps, TradingCalculator, TradingCalculatorHowTo, type TradingCalculatorHowToProps, type TradingCalculatorHowToVariant, type TradingCalculatorProps, type TradingCalculatorResults, type TradingCalculatorVariant, type TradingSymbolSpec, dayNightTransitionV2Preset };
|