@deriv-web-design/ui 0.1.13 → 0.1.15

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.
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "$comment": "Generated by scripts/generate-component-manifest.ts from the TypeScript types. Do not edit by hand. Props inherited from React HTMLAttributes are intentionally omitted. `default` is the value declared in the component's own parameter destructuring; a prop whose effective default is applied further down the tree (e.g. cards[].showLink) has no `default` here — see block-registry.json `fields` for documented effective defaults.",
3
3
  "package": "@deriv-web-design/ui",
4
- "componentCount": 52,
4
+ "componentCount": 55,
5
5
  "components": {
6
6
  "Accordion": {
7
7
  "name": "Accordion",
@@ -2338,6 +2338,12 @@
2338
2338
  "name": "ImageBanner",
2339
2339
  "source": "templates/ImageBanner/ImageBanner.tsx",
2340
2340
  "props": {
2341
+ "chips": {
2342
+ "type": "string[]",
2343
+ "required": false,
2344
+ "description": "Feature chips shown under the description for `chips-left` / `chips-right`. Each string becomes a pill with a leading checkmark icon.",
2345
+ "defaultExpression": "DEFAULT_CHIPS"
2346
+ },
2341
2347
  "className": {
2342
2348
  "type": "string",
2343
2349
  "required": false,
@@ -2351,7 +2357,7 @@
2351
2357
  "ctaLabel": {
2352
2358
  "type": "string",
2353
2359
  "required": false,
2354
- "description": "CTA link label",
2360
+ "description": "CTA link label — ignored for `chips-left` / `chips-right` (those variants have no CTA)",
2355
2361
  "default": "Trader's Hub"
2356
2362
  },
2357
2363
  "description": {
@@ -2369,7 +2375,7 @@
2369
2375
  "imageUrl": {
2370
2376
  "type": "string",
2371
2377
  "required": false,
2372
- "description": "URL of the photo. - `\"split-left\"`: fills the right-hand panel; stacks below text on mobile. - `\"split-right\"`: fills the left-hand panel; stacks above text on mobile. - `\"full-bg-left\"` / `\"full-bg-right\"`: covers the entire card as a background image."
2378
+ "description": "URL of the photo. - `\"split-left\"`: fills the right-hand panel; stacks below text on mobile. - `\"split-right\"`: fills the left-hand panel; stacks above text on mobile. - `\"full-bg-left\"` / `\"full-bg-right\"`: covers the entire card as a background image. - `\"chips-left\"` / `\"chips-right\"`: collage panel; banner height follows the image’s intrinsic aspect ratio (defaults to the partners tier-cover collage, 1920×1440). Prefer 4:3 assets so later images match this reference."
2373
2379
  },
2374
2380
  "onCtaClick": {
2375
2381
  "type": "(() => void)",
@@ -2383,9 +2389,9 @@
2383
2389
  "default": "Join our global community"
2384
2390
  },
2385
2391
  "variant": {
2386
- "type": "\"split-left\" | \"split-right\" | \"full-bg-left\" | \"full-bg-right\"",
2392
+ "type": "ImageBannerVariant",
2387
2393
  "required": false,
2388
- "description": "Layout variant. - `\"split-left\"` (default): text on the left; image fills the right-hand panel. - `\"split-right\"`: image fills the left-hand panel; text on the right. - `\"full-bg-left\"`: image covers the entire card as a background; text overlaid on the left. - `\"full-bg-right\"`: image covers the entire card as a background; text overlaid on the right.",
2394
+ "description": "Layout variant. - `\"split-left\"` (default): text on the left; image fills the right-hand panel. - `\"split-right\"`: image fills the left-hand panel; text on the right. - `\"full-bg-left\"`: image covers the entire card as a background; text overlaid on the left. - `\"full-bg-right\"`: image covers the entire card as a background; text overlaid on the right. - `\"chips-left\"`: title, description, and checkmark chips on the left; collage image on the right (matches the \"Everything you need to grow your network\" block on deriv.com/partners). - `\"chips-right\"`: mirror of `\"chips-left\"` — collage on the left; text and chips on the right.",
2389
2395
  "default": "split-left"
2390
2396
  }
2391
2397
  }
@@ -2465,6 +2471,81 @@
2465
2471
  }
2466
2472
  }
2467
2473
  },
2474
+ "MasterPartner": {
2475
+ "name": "MasterPartner",
2476
+ "source": "templates/MasterPartner/MasterPartner.tsx",
2477
+ "props": {
2478
+ "closingText": {
2479
+ "type": "string",
2480
+ "required": false,
2481
+ "description": "Optional closing paragraph rendered after `note`."
2482
+ },
2483
+ "ctaHref": {
2484
+ "type": "string",
2485
+ "required": false,
2486
+ "description": "CTA destination URL. Renders the button inside an anchor when set."
2487
+ },
2488
+ "ctaLabel": {
2489
+ "type": "string",
2490
+ "required": false,
2491
+ "description": "CTA button label. Rendered on desktop only; omit to hide the CTA entirely."
2492
+ },
2493
+ "description": {
2494
+ "type": "string",
2495
+ "required": true,
2496
+ "description": "Intro paragraph under the title."
2497
+ },
2498
+ "image": {
2499
+ "type": "string",
2500
+ "required": true,
2501
+ "description": "Foreground image URL (e.g. a partner working at a desk)."
2502
+ },
2503
+ "imageAlt": {
2504
+ "type": "string",
2505
+ "required": false,
2506
+ "description": "Accessible alt text for the image. Leave empty when purely decorative.",
2507
+ "default": ""
2508
+ },
2509
+ "note": {
2510
+ "type": "MasterPartnerNote",
2511
+ "required": false,
2512
+ "description": "Optional bold-led paragraph, e.g. a worked commission example."
2513
+ },
2514
+ "onCtaClick": {
2515
+ "type": "(() => void)",
2516
+ "required": false,
2517
+ "description": "CTA click handler, used whether or not `ctaHref` is set."
2518
+ },
2519
+ "steps": {
2520
+ "type": "MasterPartnerStep[]",
2521
+ "required": true,
2522
+ "description": "Ordered \"how it works\" steps (typically 4), each with a numbered icon.",
2523
+ "items": {
2524
+ "description": {
2525
+ "type": "string",
2526
+ "required": true,
2527
+ "description": "Step description copy."
2528
+ },
2529
+ "icon": {
2530
+ "type": "string",
2531
+ "required": true,
2532
+ "description": "Numbered icon image URL (e.g. a circled numeral graphic)."
2533
+ },
2534
+ "iconAlt": {
2535
+ "type": "string",
2536
+ "required": false,
2537
+ "description": "Accessible alt text for the icon. Leave empty — order is already conveyed by the list."
2538
+ }
2539
+ }
2540
+ },
2541
+ "title": {
2542
+ "type": "string",
2543
+ "required": true,
2544
+ "description": "Section headline (H2)."
2545
+ }
2546
+ },
2547
+ "description": "\"Master Partner programme\" section — headline and intro copy beside a foreground image, a desktop-only coral CTA placed after the copy and before the numbered steps, and a full-width row of numbered \"how it works\" steps underneath. Modeled after the \"Master Partner programme\" block on https://deriv.com/partners. Mobile/tablet (<992px): single column (content, then image), steps stack to 1-2 columns, and the CTA button is hidden. Desktop (≥992px): content and image sit side by side, the CTA button becomes visible right after the copy, and steps lay out in a single row."
2548
+ },
2468
2549
  "Navbar": {
2469
2550
  "name": "Navbar",
2470
2551
  "source": "components/Navbar/Navbar.tsx",
@@ -2641,6 +2722,51 @@
2641
2722
  }
2642
2723
  }
2643
2724
  },
2725
+ "PartnersPayout": {
2726
+ "name": "PartnersPayout",
2727
+ "source": "templates/PartnersPayout/PartnersPayout.tsx",
2728
+ "props": {
2729
+ "imageAlt": {
2730
+ "type": "string",
2731
+ "required": false,
2732
+ "description": "Accessible alt text. Leave empty when the globe is decorative.",
2733
+ "default": ""
2734
+ },
2735
+ "imageUrl": {
2736
+ "type": "string",
2737
+ "required": true,
2738
+ "description": "Globe image URL."
2739
+ },
2740
+ "payouts": {
2741
+ "type": "PartnerPayoutItem[]",
2742
+ "required": true,
2743
+ "description": "Regional payout figures.",
2744
+ "items": {
2745
+ "amount": {
2746
+ "type": "string",
2747
+ "required": true,
2748
+ "description": "Formatted payout amount, e.g. \"$ 1,237,927.70\"."
2749
+ },
2750
+ "region": {
2751
+ "type": "string",
2752
+ "required": true,
2753
+ "description": "Region or market label, e.g. \"Africa\"."
2754
+ }
2755
+ }
2756
+ },
2757
+ "period": {
2758
+ "type": "string",
2759
+ "required": true,
2760
+ "description": "Reporting period shown below the headline."
2761
+ },
2762
+ "title": {
2763
+ "type": "string",
2764
+ "required": true,
2765
+ "description": "Section headline."
2766
+ }
2767
+ },
2768
+ "description": "Dark partner-payout section with a responsive metric grid and globe image, modeled after the \"Top partner payouts\" section on deriv.com/partners."
2769
+ },
2644
2770
  "Stats": {
2645
2771
  "name": "Stats",
2646
2772
  "source": "templates/Stats/StatsV2.tsx",
@@ -3062,6 +3188,92 @@
3062
3188
  }
3063
3189
  }
3064
3190
  },
3191
+ "Tiers": {
3192
+ "name": "Tiers",
3193
+ "source": "templates/Tiers/Tiers.tsx",
3194
+ "props": {
3195
+ "description": {
3196
+ "type": "string",
3197
+ "required": false,
3198
+ "description": "Supporting copy under the title"
3199
+ },
3200
+ "linkHref": {
3201
+ "type": "string",
3202
+ "required": false,
3203
+ "description": "Destination for the section-level link"
3204
+ },
3205
+ "linkText": {
3206
+ "type": "string",
3207
+ "required": false,
3208
+ "description": "Label for the section-level link",
3209
+ "default": "Learn more about partner tiers"
3210
+ },
3211
+ "onLinkClick": {
3212
+ "type": "(() => void)",
3213
+ "required": false,
3214
+ "description": "Click handler for the section-level link"
3215
+ },
3216
+ "showLink": {
3217
+ "type": "boolean",
3218
+ "required": false,
3219
+ "description": "Show the section-level CTA link under the tier grid (default: false)",
3220
+ "default": false
3221
+ },
3222
+ "tiers": {
3223
+ "type": "TierItem[]",
3224
+ "required": true,
3225
+ "description": "Ordered list of partnership tiers (typically 4)",
3226
+ "items": {
3227
+ "accent": {
3228
+ "type": "TierAccent",
3229
+ "required": false,
3230
+ "description": "Connector-line accent for this tier on desktop. Defaults by index when omitted (bronze → silver → gold → platinum)."
3231
+ },
3232
+ "description": {
3233
+ "type": "ReactNode",
3234
+ "required": true,
3235
+ "description": "Benefit body copy inside the card. Accepts a string or a ReactNode so consumers can bold key phrases (as on the Platinum tier on deriv.com/partners)."
3236
+ },
3237
+ "icon": {
3238
+ "type": "string",
3239
+ "required": true,
3240
+ "description": "Medal / badge image URL"
3241
+ },
3242
+ "iconAlt": {
3243
+ "type": "string",
3244
+ "required": false,
3245
+ "description": "Accessible alt text for the icon. Defaults to the tier `name` when omitted."
3246
+ },
3247
+ "name": {
3248
+ "type": "string",
3249
+ "required": true,
3250
+ "description": "Tier label shown under the icon, e.g. \"Bronze\""
3251
+ },
3252
+ "requirement": {
3253
+ "type": "string",
3254
+ "required": false,
3255
+ "description": "Optional qualification line under the card, e.g. \"3-month average commission:\\\\n$500+\". Use `\\\\n` for the line break shown on the reference page. Omit for the entry tier."
3256
+ },
3257
+ "status": {
3258
+ "type": "string",
3259
+ "required": true,
3260
+ "description": "Short stage label under the name, e.g. \"Launch\""
3261
+ },
3262
+ "title": {
3263
+ "type": "string",
3264
+ "required": true,
3265
+ "description": "Benefit headline inside the card, e.g. \"Commission + 4% bonus\""
3266
+ }
3267
+ }
3268
+ },
3269
+ "title": {
3270
+ "type": "string",
3271
+ "required": true,
3272
+ "description": "Section headline (H2)"
3273
+ }
3274
+ },
3275
+ "description": "Partnership-tier comparison section — centred header, a responsive track of medal tiers (with desktop connector lines), and an optional CTA. Modeled after the \"Growing rewards as you scale\" block on https://deriv.com/partners. Mobile (<768px): single column; each tier is a white outer card with the medal, a horizontal name/status row, a slate benefit panel, and an optional requirement. Desktop (≥992px): four equal columns with metallic connector lines through the medals."
3276
+ },
3065
3277
  "TradingCalculator": {
3066
3278
  "name": "TradingCalculator",
3067
3279
  "source": "templates/TradingCalculator/TradingCalculator.tsx",