Rocky_Mountain_Vending/.pnpm-store/v10/files/61/af670354f50d8007a5092da12267f8c3c3cf4f7cb84e218be61606b26b854a9952c00229fb23fb680ff89edac463f0fff7372c2aabea1ec6d2113a9443bcf5
DMleadgen 46d973904b
Initial commit: Rocky Mountain Vending website
Next.js website for Rocky Mountain Vending company featuring:
- Product catalog with Stripe integration
- Service areas and parts pages
- Admin dashboard with Clerk authentication
- SEO optimized pages with JSON-LD structured data

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-02-12 16:22:15 -07:00

17 lines
688 B
Text

// ResourceNamespace allows you to create nested resources, i.e. `stripe.issuing.cards`.
// It also works recursively, so you could do i.e. `stripe.billing.invoicing.pay`.
function ResourceNamespace(stripe, resources) {
for (const name in resources) {
if (!Object.prototype.hasOwnProperty.call(resources, name)) {
continue;
}
const camelCaseName = name[0].toLowerCase() + name.substring(1);
const resource = new resources[name](stripe);
this[camelCaseName] = resource;
}
}
export function resourceNamespace(namespace, resources) {
return function (stripe) {
return new ResourceNamespace(stripe, resources);
};
}