Viewports حوالہ

Viewports یہ تعریف کرتے ہیں کہ Stripe Dashboard میں آپ کے Stripe App کے UI اجزاء کہاں ظاہر ہوتے ہیں۔ ہر viewport ایک مخصوص Dashboard صفحے یا مقام سے مطابقت رکھتا ہے جہاں آپ کی app ایک view render کر سکتی ہے۔

Viewports کیسے کام کرتے ہیں

جب آپ app manifest میں ایک view بیان کرتے ہیں، تو آپ ایک React component کو ایک viewport سے ملاتے ہیں:

{
"ui_extension": {
"views": [
{
"viewport": "stripe.dashboard.customer.detail",
"component": "CustomerDetailView"
}
]
}
}

جب صارف متعلقہ Dashboard صفحے پر جاتا ہے اور آپ کی app کھولتا ہے تو component app drawer (سائیڈ پینل) میں render ہوتا ہے۔

Dashboard-Wide بمقابلہ Page-Specific Viewports

Dashboard-Wide Viewports

یہ viewports Stripe Dashboard کے ہر صفحے پر دستیاب ہیں:

Viewport IDتفصیل
stripe.dashboard.drawer.defaultپہلے سے طے شدہ drawer view، app icon کے ذریعے کسی بھی Dashboard صفحے سے قابل رسائی
stripe.dashboard.home.overviewہوم صفحہ کا جائزہ، Dashboard landing صفحے پر دکھایا جاتا ہے
stripe.dashboard.settingsApp settings صفحہ، app کے settings menu سے قابل رسائی
stripe.dashboard.onboardingOnboarding فلو، app انسٹالیشن کے بعد دکھایا جاتا ہے

Tip

drawer.default viewport ایک fallback کے طور پر کام کرتا ہے۔ اگر صارف آپ کی app کسی ایسے صفحے پر کھولے جہاں آپ نے کوئی مخصوص viewport بیان نہیں کیا، تو drawer.default view اس کی جگہ render ہوگا۔

Page-Specific Viewports

یہ viewports صرف اس وقت render ہوتے ہیں جب صارف متعلقہ Dashboard صفحے پر ہو:

ادائیگیاں

Viewport IDصفحہURL PatternObject کی قسم
stripe.dashboard.payment.listادائیگیوں کی فہرست/payments,
stripe.dashboard.payment.detailادائیگی کی تفصیل/payments/:idPaymentIntent
stripe.dashboard.charge.detailCharge کی تفصیل/payments/:id (legacy)Charge

گاہک

Viewport IDصفحہURL PatternObject کی قسم
stripe.dashboard.customer.listگاہکوں کی فہرست/customers,
stripe.dashboard.customer.detailگاہک کی تفصیل/customers/:idCustomer

مصنوعات اور قیمتیں

Viewport IDصفحہURL PatternObject کی قسم
stripe.dashboard.product.listمصنوعات کی فہرست/products,
stripe.dashboard.product.detailمصنوع کی تفصیل/products/:idProduct
stripe.dashboard.price.detailقیمت کی تفصیل/prices/:idPrice

انوائسز

Viewport IDصفحہURL PatternObject کی قسم
stripe.dashboard.invoice.listانوائسز کی فہرست/invoices,
stripe.dashboard.invoice.detailانوائس کی تفصیل/invoices/:idInvoice

سبسکرپشنز

Viewport IDصفحہURL PatternObject کی قسم
stripe.dashboard.subscription.listسبسکرپشنز کی فہرست/subscriptions,
stripe.dashboard.subscription.detailسبسکرپشن کی تفصیل/subscriptions/:idSubscription

Checkout

Viewport IDصفحہURL PatternObject کی قسم
stripe.dashboard.checkout.session.listCheckout Sessions کی فہرست/checkout/sessions,
stripe.dashboard.checkout.session.detailCheckout Session کی تفصیل/checkout/sessions/:idCheckoutSession
stripe.dashboard.payment-link.listPayment Links کی فہرست/payment-links,
stripe.dashboard.payment-link.detailPayment Link کی تفصیل/payment-links/:idPaymentLink

Connect

Viewport IDصفحہURL PatternObject کی قسم
stripe.dashboard.connect.account.listمنسلک اکاؤنٹس کی فہرست/connect/accounts,
stripe.dashboard.connect.account.detailمنسلک اکاؤنٹ کی تفصیل/connect/accounts/:idAccount
stripe.dashboard.transfer.listTransfers کی فہرست/connect/transfers,
stripe.dashboard.transfer.detailTransfer کی تفصیل/connect/transfers/:idTransfer

بلنگ

Viewport IDصفحہURL PatternObject کی قسم
stripe.dashboard.coupon.listCoupons کی فہرست/coupons,
stripe.dashboard.coupon.detailCoupon کی تفصیل/coupons/:idCoupon
stripe.dashboard.quote.listQuotes کی فہرست/quotes,
stripe.dashboard.quote.detailQuote کی تفصیل/quotes/:idQuote
stripe.dashboard.credit-note.detailCredit note کی تفصیل/credit-notes/:idCreditNote

Payouts

Viewport IDصفحہURL PatternObject کی قسم
stripe.dashboard.payout.listPayouts کی فہرست/payouts,
stripe.dashboard.payout.detailPayout کی تفصیل/payouts/:idPayout

تنازعات

Viewport IDصفحہURL PatternObject کی قسم
stripe.dashboard.dispute.listتنازعات کی فہرست/disputes,
stripe.dashboard.dispute.detailتنازعہ کی تفصیل/disputes/:idDispute

Terminal

Viewport IDصفحہURL PatternObject کی قسم
stripe.dashboard.terminal.reader.listReaders کی فہرست/terminal/readers,
stripe.dashboard.terminal.reader.detailReader کی تفصیل/terminal/readers/:idTerminalReader
stripe.dashboard.terminal.location.listLocations کی فہرست/terminal/locations,
stripe.dashboard.terminal.location.detailLocation کی تفصیل/terminal/locations/:idTerminalLocation

Issuing

Viewport IDصفحہURL PatternObject کی قسم
stripe.dashboard.issuing.card.listکارڈز کی فہرست/issuing/cards,
stripe.dashboard.issuing.card.detailکارڈ کی تفصیل/issuing/cards/:idIssuingCard
stripe.dashboard.issuing.cardholder.listکارڈ ہولڈرز کی فہرست/issuing/cardholders,
stripe.dashboard.issuing.cardholder.detailکارڈ ہولڈر کی تفصیل/issuing/cardholders/:idIssuingCardholder
stripe.dashboard.issuing.transaction.listلین دین کی فہرست/issuing/transactions,
stripe.dashboard.issuing.authorization.listاجازتوں کی فہرست/issuing/authorizations,

Object Context تک رسائی

جب آپ کی app ایک detail viewport میں render ہوتی ہے، تو اسے متعلقہ Stripe object context کے طور پر ملتا ہے:

import type { ExtensionContextValue } from '@stripe/ui-extension-sdk/context';
const CustomerDetailView = ({ environment }: ExtensionContextValue) => {
const { objectContext } = environment;
// objectContext موجودہ Stripe object رکھتا ہے
const customerId = objectContext?.id; // "cus_xxxxx"
const customerEmail = objectContext?.email;
return (
<Box>
<Inline>Customer: {customerEmail}</Inline>
<Inline>Brevo Sync Status: checking...</Inline>
</Box>
);
};

List بمقابلہ Detail Context

Viewport کی قسمObject Contextاستعمال کا معاملہ
List (مثلاً customer.list)دستیاب نہیں, کوئی مخصوص object منتخب نہیںمجموعی ڈیٹا، خلاصہ views، یا batch actions دکھائیں
Detail (مثلاً customer.detail)موجودہ صفحے کے لیے مکمل Stripe objectobject-specific ڈیٹا، اعمال اور انٹیگریشنز دکھائیں

Tajo Brevo انٹیگریشن کے لیے تجویز کردہ Viewports

Tajo Brevo انٹیگریشن app کے لیے، یہ viewports سب سے زیادہ قیمت فراہم کرتے ہیں:

{
"ui_extension": {
"views": [
{
"viewport": "stripe.dashboard.customer.detail",
"component": "CustomerDetailView"
},
{
"viewport": "stripe.dashboard.customer.list",
"component": "CustomerListView"
},
{
"viewport": "stripe.dashboard.payment.detail",
"component": "PaymentDetailView"
},
{
"viewport": "stripe.dashboard.subscription.detail",
"component": "SubscriptionDetailView"
},
{
"viewport": "stripe.dashboard.home.overview",
"component": "OverviewView"
},
{
"viewport": "stripe.dashboard.drawer.default",
"component": "DrawerView"
},
{
"viewport": "stripe.dashboard.settings",
"component": "SettingsView"
},
{
"viewport": "stripe.dashboard.onboarding",
"component": "OnboardingView"
}
]
}
}
Componentمقصد
CustomerDetailViewایک مخصوص گاہک کے لیے Brevo contact معلومات، sync status اور engagement ڈیٹا دکھائیں
CustomerListViewBatch sync controls اور مجموعی Brevo sync اعداد و شمار دکھائیں
PaymentDetailViewدکھائیں کہ اس ادائیگی نے کون سے Brevo events ٹرگر کیے
SubscriptionDetailViewاس سبسکرپشن کے لیے Brevo automation status دکھائیں
OverviewViewsync health اور اہم Brevo metrics کے ساتھ Dashboard ہوم widget
DrawerViewعام app drawer با quick actions اور status کا جائزہ
SettingsViewBrevo API key، sync ترجیحات اور field mappings کنفیگر کریں
OnboardingViewنئے صارفین کو اپنا Brevo اکاؤنٹ منسلک کرنے میں رہنمائی کریں

Viewport کی دستیابی

تمام viewports تمام Stripe Dashboard modes میں دستیاب نہیں ہیں:

موڈدستیاب Viewports
Live موڈتمام viewports
Test موڈتمام viewports (test ڈیٹا استعمال کرتے ہیں)
Sandboxتمام viewports (اگر sandbox_install_compatible: true)

Caution

اگر آپ کا manifest کوئی ایسا viewport بیان کرے جو موجود نہیں تو app upload validation میں ناکام ہو جائے گی۔ ہمیشہ اس حوالے کے خلاف viewport IDs کی تصدیق کریں۔

Subscribe to updates

developer-docs

Drop your email or phone number — we'll send you what matters next.

AI معاون

السلام علیکم! دستاویزات کے بارے میں کچھ بھی پوچھیں۔

Brevo کے ساتھ مفت شروع کریں