lightning-auth-and-payment
Version:
Lightning Network authentication and payment processing library for modern web applications
223 lines • 21.8 kB
JavaScript
;
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
if (k2 === undefined) k2 = k;
var desc = Object.getOwnPropertyDescriptor(m, k);
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
desc = { enumerable: true, get: function() { return m[k]; } };
}
Object.defineProperty(o, k2, desc);
}) : (function(o, m, k, k2) {
if (k2 === undefined) k2 = k;
o[k2] = m[k];
}));
var __exportStar = (this && this.__exportStar) || function(m, exports) {
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
};
Object.defineProperty(exports, "__esModule", { value: true });
exports.CardHeader = exports.Card = exports.Badge = exports.Button = exports.ThemeToggle = exports.LightningPaymentInput = exports.LightningWalletInput = exports.LightningPubkeyInput = exports.LightningAddressInput = exports.LightningInput = exports.ExpiredBadge = exports.FailedBadge = exports.CompletedBadge = exports.PendingBadge = exports.DisconnectedBadge = exports.ConnectedBadge = exports.LightningNetworkBadgeComponent = exports.LightningWalletBadge = exports.LightningUserBadge = exports.LightningPaymentBadge = exports.LightningStatusBadge = exports.LightningBadge = exports.LightningWalletCard = exports.LightningUserCard = exports.LightningPaymentCard = exports.LightningCard = exports.LightningExternalButton = exports.LightningDownloadButton = exports.LightningCopyButton = exports.LightningSendButton = exports.LightningWalletButton = exports.LightningPayButton = exports.LightningButton = exports.LightningPaymentModal = exports.LightningAuthModal = exports.LightningLogin = exports.AuthHeader = exports.AuthModal = exports.BTCPayPaymentModal = exports.PaymentModal = exports.LnurlAuthQRCode = exports.LightningQRCode = exports.QRCode = exports.HybridLnurlStore = exports.DatabaseLnurlStore = exports.MemoryLnurlStore = exports.createBTCPayClientFromEnv = exports.createBTCPayClient = exports.BTCPayClient = exports.LightningAuth = void 0;
exports.handleUserRequestWithAdapter = exports.handleUserRequest = exports.handleAuthStatusRequest = exports.handleAuthCallbackRequest = exports.handleLnurlRequest = exports.createBTCPayService = exports.BTCPayService = exports.createPrismaAdapter = exports.PrismaDatabaseAdapter = exports.useThemeClass = exports.useThemeMode = exports.useTheme = exports.ThemeProvider = exports.useAuth = exports.useLightningContext = exports.LightningProvider = exports.useBTCPayPayment = exports.useLightningPayment = exports.useLightningAuth = exports.requireAuth = exports.isAuthenticated = exports.getCurrentUserId = exports.verifySession = exports.createSession = exports.clearSession = exports.setSessionCookie = exports.getSession = exports.createSessionAuth = exports.handleLogout = exports.handleAuthStatus = exports.handleAuthCallback = exports.getBaseUrl = exports.createAuthInstance = exports.formatBTC = exports.formatSats = exports.btcToSats = exports.satsToBTC = exports.generateClientSeed = exports.formatDate = exports.formatNumber = exports.cn = exports.DialogDescription = exports.DialogTitle = exports.DialogHeader = exports.DialogContent = exports.Dialog = exports.CardFooter = exports.CardContent = exports.CardDescription = exports.CardTitle = void 0;
exports.handleBTCPayWebhookRequest = exports.handleBTCPayInvoiceStatus = exports.handleBTCPayInvoiceCreation = exports.getBTCPayCorsHeaders = exports.getAuthCorsHeaders = exports.getCorsHeaders = exports.handleLogoutRequest = void 0;
// Main exports for the Lightning Auth package
var auth_1 = require("./auth");
Object.defineProperty(exports, "LightningAuth", { enumerable: true, get: function () { return auth_1.LightningAuth; } });
var btcpay_1 = require("./btcpay");
Object.defineProperty(exports, "BTCPayClient", { enumerable: true, get: function () { return btcpay_1.BTCPayClient; } });
Object.defineProperty(exports, "createBTCPayClient", { enumerable: true, get: function () { return btcpay_1.createBTCPayClient; } });
Object.defineProperty(exports, "createBTCPayClientFromEnv", { enumerable: true, get: function () { return btcpay_1.createBTCPayClientFromEnv; } });
var memory_1 = require("./stores/memory");
Object.defineProperty(exports, "MemoryLnurlStore", { enumerable: true, get: function () { return memory_1.MemoryLnurlStore; } });
var database_1 = require("./stores/database");
Object.defineProperty(exports, "DatabaseLnurlStore", { enumerable: true, get: function () { return database_1.DatabaseLnurlStore; } });
var hybrid_1 = require("./stores/hybrid");
Object.defineProperty(exports, "HybridLnurlStore", { enumerable: true, get: function () { return hybrid_1.HybridLnurlStore; } });
// React components
var QRCode_1 = require("./components/QRCode");
Object.defineProperty(exports, "QRCode", { enumerable: true, get: function () { return QRCode_1.QRCode; } });
Object.defineProperty(exports, "LightningQRCode", { enumerable: true, get: function () { return QRCode_1.LightningQRCode; } });
Object.defineProperty(exports, "LnurlAuthQRCode", { enumerable: true, get: function () { return QRCode_1.LnurlAuthQRCode; } });
var PaymentModal_1 = require("./components/PaymentModal");
Object.defineProperty(exports, "PaymentModal", { enumerable: true, get: function () { return PaymentModal_1.PaymentModal; } });
var BTCPayPaymentModal_1 = require("./components/BTCPayPaymentModal");
Object.defineProperty(exports, "BTCPayPaymentModal", { enumerable: true, get: function () { return BTCPayPaymentModal_1.BTCPayPaymentModal; } });
var AuthModal_1 = require("./components/AuthModal");
Object.defineProperty(exports, "AuthModal", { enumerable: true, get: function () { return AuthModal_1.AuthModal; } });
var AuthHeader_1 = require("./components/AuthHeader");
Object.defineProperty(exports, "AuthHeader", { enumerable: true, get: function () { return AuthHeader_1.AuthHeader; } });
// Enhanced Lightning UI Components
var components_1 = require("./components");
Object.defineProperty(exports, "LightningLogin", { enumerable: true, get: function () { return components_1.LightningLogin; } });
Object.defineProperty(exports, "LightningAuthModal", { enumerable: true, get: function () { return components_1.LightningAuthModal; } });
Object.defineProperty(exports, "LightningPaymentModal", { enumerable: true, get: function () { return components_1.LightningPaymentModal; } });
Object.defineProperty(exports, "LightningButton", { enumerable: true, get: function () { return components_1.LightningButton; } });
Object.defineProperty(exports, "LightningPayButton", { enumerable: true, get: function () { return components_1.LightningPayButton; } });
Object.defineProperty(exports, "LightningWalletButton", { enumerable: true, get: function () { return components_1.LightningWalletButton; } });
Object.defineProperty(exports, "LightningSendButton", { enumerable: true, get: function () { return components_1.LightningSendButton; } });
Object.defineProperty(exports, "LightningCopyButton", { enumerable: true, get: function () { return components_1.LightningCopyButton; } });
Object.defineProperty(exports, "LightningDownloadButton", { enumerable: true, get: function () { return components_1.LightningDownloadButton; } });
Object.defineProperty(exports, "LightningExternalButton", { enumerable: true, get: function () { return components_1.LightningExternalButton; } });
Object.defineProperty(exports, "LightningCard", { enumerable: true, get: function () { return components_1.LightningCard; } });
Object.defineProperty(exports, "LightningPaymentCard", { enumerable: true, get: function () { return components_1.LightningPaymentCard; } });
Object.defineProperty(exports, "LightningUserCard", { enumerable: true, get: function () { return components_1.LightningUserCard; } });
Object.defineProperty(exports, "LightningWalletCard", { enumerable: true, get: function () { return components_1.LightningWalletCard; } });
Object.defineProperty(exports, "LightningBadge", { enumerable: true, get: function () { return components_1.LightningBadge; } });
Object.defineProperty(exports, "LightningStatusBadge", { enumerable: true, get: function () { return components_1.LightningStatusBadge; } });
Object.defineProperty(exports, "LightningPaymentBadge", { enumerable: true, get: function () { return components_1.LightningPaymentBadge; } });
Object.defineProperty(exports, "LightningUserBadge", { enumerable: true, get: function () { return components_1.LightningUserBadge; } });
Object.defineProperty(exports, "LightningWalletBadge", { enumerable: true, get: function () { return components_1.LightningWalletBadge; } });
Object.defineProperty(exports, "LightningNetworkBadgeComponent", { enumerable: true, get: function () { return components_1.LightningNetworkBadgeComponent; } });
Object.defineProperty(exports, "ConnectedBadge", { enumerable: true, get: function () { return components_1.ConnectedBadge; } });
Object.defineProperty(exports, "DisconnectedBadge", { enumerable: true, get: function () { return components_1.DisconnectedBadge; } });
Object.defineProperty(exports, "PendingBadge", { enumerable: true, get: function () { return components_1.PendingBadge; } });
Object.defineProperty(exports, "CompletedBadge", { enumerable: true, get: function () { return components_1.CompletedBadge; } });
Object.defineProperty(exports, "FailedBadge", { enumerable: true, get: function () { return components_1.FailedBadge; } });
Object.defineProperty(exports, "ExpiredBadge", { enumerable: true, get: function () { return components_1.ExpiredBadge; } });
Object.defineProperty(exports, "LightningInput", { enumerable: true, get: function () { return components_1.LightningInput; } });
Object.defineProperty(exports, "LightningAddressInput", { enumerable: true, get: function () { return components_1.LightningAddressInput; } });
Object.defineProperty(exports, "LightningPubkeyInput", { enumerable: true, get: function () { return components_1.LightningPubkeyInput; } });
Object.defineProperty(exports, "LightningWalletInput", { enumerable: true, get: function () { return components_1.LightningWalletInput; } });
Object.defineProperty(exports, "LightningPaymentInput", { enumerable: true, get: function () { return components_1.LightningPaymentInput; } });
Object.defineProperty(exports, "ThemeToggle", { enumerable: true, get: function () { return components_1.ThemeToggle; } });
// UI components
var button_1 = require("./components/ui/button");
Object.defineProperty(exports, "Button", { enumerable: true, get: function () { return button_1.Button; } });
var badge_1 = require("./components/ui/badge");
Object.defineProperty(exports, "Badge", { enumerable: true, get: function () { return badge_1.Badge; } });
var card_1 = require("./components/ui/card");
Object.defineProperty(exports, "Card", { enumerable: true, get: function () { return card_1.Card; } });
Object.defineProperty(exports, "CardHeader", { enumerable: true, get: function () { return card_1.CardHeader; } });
Object.defineProperty(exports, "CardTitle", { enumerable: true, get: function () { return card_1.CardTitle; } });
Object.defineProperty(exports, "CardDescription", { enumerable: true, get: function () { return card_1.CardDescription; } });
Object.defineProperty(exports, "CardContent", { enumerable: true, get: function () { return card_1.CardContent; } });
Object.defineProperty(exports, "CardFooter", { enumerable: true, get: function () { return card_1.CardFooter; } });
var dialog_1 = require("./components/ui/dialog");
Object.defineProperty(exports, "Dialog", { enumerable: true, get: function () { return dialog_1.Dialog; } });
Object.defineProperty(exports, "DialogContent", { enumerable: true, get: function () { return dialog_1.DialogContent; } });
Object.defineProperty(exports, "DialogHeader", { enumerable: true, get: function () { return dialog_1.DialogHeader; } });
Object.defineProperty(exports, "DialogTitle", { enumerable: true, get: function () { return dialog_1.DialogTitle; } });
Object.defineProperty(exports, "DialogDescription", { enumerable: true, get: function () { return dialog_1.DialogDescription; } });
var formatting_1 = require("./utils/formatting");
Object.defineProperty(exports, "cn", { enumerable: true, get: function () { return formatting_1.cn; } });
Object.defineProperty(exports, "formatNumber", { enumerable: true, get: function () { return formatting_1.formatNumber; } });
Object.defineProperty(exports, "formatDate", { enumerable: true, get: function () { return formatting_1.formatDate; } });
Object.defineProperty(exports, "generateClientSeed", { enumerable: true, get: function () { return formatting_1.generateClientSeed; } });
Object.defineProperty(exports, "satsToBTC", { enumerable: true, get: function () { return formatting_1.satsToBTC; } });
Object.defineProperty(exports, "btcToSats", { enumerable: true, get: function () { return formatting_1.btcToSats; } });
Object.defineProperty(exports, "formatSats", { enumerable: true, get: function () { return formatting_1.formatSats; } });
Object.defineProperty(exports, "formatBTC", { enumerable: true, get: function () { return formatting_1.formatBTC; } });
__exportStar(require("./utils/constants"), exports);
// API Route Utilities (Legacy)
var api_routes_1 = require("./utils/api-routes");
Object.defineProperty(exports, "createAuthInstance", { enumerable: true, get: function () { return api_routes_1.createAuthInstance; } });
Object.defineProperty(exports, "getBaseUrl", { enumerable: true, get: function () { return api_routes_1.getBaseUrl; } });
Object.defineProperty(exports, "handleAuthCallback", { enumerable: true, get: function () { return api_routes_1.handleAuthCallback; } });
Object.defineProperty(exports, "handleAuthStatus", { enumerable: true, get: function () { return api_routes_1.handleAuthStatus; } });
Object.defineProperty(exports, "handleLogout", { enumerable: true, get: function () { return api_routes_1.handleLogout; } });
// Invoice Route Utilities - temporarily removed due to build issues
// export {
// handleInvoiceCreation,
// handleInvoiceStatus,
// getInvoiceCorsHeaders,
// handleInvoiceOptions,
// } from "./utils/invoice-routes";
// Session Management Utilities
var session_1 = require("./utils/session");
Object.defineProperty(exports, "createSessionAuth", { enumerable: true, get: function () { return session_1.createAuthInstance; } });
Object.defineProperty(exports, "getSession", { enumerable: true, get: function () { return session_1.getSession; } });
Object.defineProperty(exports, "setSessionCookie", { enumerable: true, get: function () { return session_1.setSessionCookie; } });
Object.defineProperty(exports, "clearSession", { enumerable: true, get: function () { return session_1.clearSession; } });
Object.defineProperty(exports, "createSession", { enumerable: true, get: function () { return session_1.createSession; } });
Object.defineProperty(exports, "verifySession", { enumerable: true, get: function () { return session_1.verifySession; } });
Object.defineProperty(exports, "getCurrentUserId", { enumerable: true, get: function () { return session_1.getCurrentUserId; } });
Object.defineProperty(exports, "isAuthenticated", { enumerable: true, get: function () { return session_1.isAuthenticated; } });
Object.defineProperty(exports, "requireAuth", { enumerable: true, get: function () { return session_1.requireAuth; } });
// Database Integration Utilities - Commented out to prevent client-side bundling issues
// export {
// DatabaseUtils,
// UserUtils,
// SessionUtils,
// LnurlUtils,
// TransactionUtils,
// } from "./utils/database";
// Testing Utilities - Commented out to prevent client-side bundling issues
// export {
// createTestAuth,
// createTestStore,
// createTestBTCPayClient,
// testUtils,
// mockUser,
// mockSession,
// mockInvoice,
// mockWebhookPayload,
// setupTestEnvironment,
// cleanupTestEnvironment,
// testDataFactories,
// } from "./utils/testing";
// React/Next.js Hooks
var use_auth_1 = require("./hooks/use-auth");
Object.defineProperty(exports, "useLightningAuth", { enumerable: true, get: function () { return use_auth_1.useLightningAuth; } });
var use_lightning_payment_1 = require("./hooks/use-lightning-payment");
Object.defineProperty(exports, "useLightningPayment", { enumerable: true, get: function () { return use_lightning_payment_1.useLightningPayment; } });
var use_btcpay_payment_1 = require("./hooks/use-btcpay-payment");
Object.defineProperty(exports, "useBTCPayPayment", { enumerable: true, get: function () { return use_btcpay_payment_1.useBTCPayPayment; } });
// React Context
var lightning_context_1 = require("./context/lightning-context");
Object.defineProperty(exports, "LightningProvider", { enumerable: true, get: function () { return lightning_context_1.LightningProvider; } });
Object.defineProperty(exports, "useLightningContext", { enumerable: true, get: function () { return lightning_context_1.useLightningContext; } });
Object.defineProperty(exports, "useAuth", { enumerable: true, get: function () { return lightning_context_1.useAuth; } });
// Theme System
var theme_1 = require("./theme");
Object.defineProperty(exports, "ThemeProvider", { enumerable: true, get: function () { return theme_1.ThemeProvider; } });
Object.defineProperty(exports, "useTheme", { enumerable: true, get: function () { return theme_1.useTheme; } });
Object.defineProperty(exports, "useThemeMode", { enumerable: true, get: function () { return theme_1.useThemeMode; } });
Object.defineProperty(exports, "useThemeClass", { enumerable: true, get: function () { return theme_1.useThemeClass; } });
// Note: API route handlers are available in the examples directory
// They can be copied and customized for each project
// Next.js utilities (only available when Next.js is installed)
// export { NextJSLightningAuth, createNextJSLightningAuth } from "./utils/nextjs";
// Database connection - Commented out to prevent client-side bundling issues
// export { db } from "./database/connection";
// Database Adapters
var adapters_1 = require("./adapters");
Object.defineProperty(exports, "PrismaDatabaseAdapter", { enumerable: true, get: function () { return adapters_1.PrismaDatabaseAdapter; } });
Object.defineProperty(exports, "createPrismaAdapter", { enumerable: true, get: function () { return adapters_1.createPrismaAdapter; } });
// Next.js Configuration Management (server-only)
// Note: These utilities are only available in server-side contexts
// They use Node.js modules like 'fs' and should not be bundled client-side
// BTCPay Services
var btcpay_service_1 = require("./services/btcpay-service");
Object.defineProperty(exports, "BTCPayService", { enumerable: true, get: function () { return btcpay_service_1.BTCPayService; } });
Object.defineProperty(exports, "createBTCPayService", { enumerable: true, get: function () { return btcpay_service_1.createBTCPayService; } });
// Session Services - temporarily removed due to build issues
// export {
// SessionService,
// sessionUtils,
// type SessionData,
// type SessionConfig,
// } from "./services/session-service";
// Development Server - Only available server-side
// Note: These exports should only be used in Node.js environments
// For client-side usage, import directly from the dev module
// Next.js API Route Handler Logic
var nextjs_routes_1 = require("./utils/nextjs-routes");
Object.defineProperty(exports, "handleLnurlRequest", { enumerable: true, get: function () { return nextjs_routes_1.handleLnurlRequest; } });
Object.defineProperty(exports, "handleAuthCallbackRequest", { enumerable: true, get: function () { return nextjs_routes_1.handleAuthCallbackRequest; } });
Object.defineProperty(exports, "handleAuthStatusRequest", { enumerable: true, get: function () { return nextjs_routes_1.handleAuthStatusRequest; } });
Object.defineProperty(exports, "handleUserRequest", { enumerable: true, get: function () { return nextjs_routes_1.handleUserRequest; } });
Object.defineProperty(exports, "handleUserRequestWithAdapter", { enumerable: true, get: function () { return nextjs_routes_1.handleUserRequestWithAdapter; } });
Object.defineProperty(exports, "handleLogoutRequest", { enumerable: true, get: function () { return nextjs_routes_1.handleLogoutRequest; } });
// CORS utilities
var cors_1 = require("./utils/cors");
Object.defineProperty(exports, "getCorsHeaders", { enumerable: true, get: function () { return cors_1.getCorsHeaders; } });
Object.defineProperty(exports, "getAuthCorsHeaders", { enumerable: true, get: function () { return cors_1.getAuthCorsHeaders; } });
Object.defineProperty(exports, "getBTCPayCorsHeaders", { enumerable: true, get: function () { return cors_1.getBTCPayCorsHeaders; } });
// Zero-config utilities (server-only)
// Note: These are only available in server-side contexts
// They use Node.js modules like 'fs' and 'child_process'
// Next.js BTCPay API Route Handler Logic
var btcpay_nextjs_routes_1 = require("./utils/btcpay-nextjs-routes");
Object.defineProperty(exports, "handleBTCPayInvoiceCreation", { enumerable: true, get: function () { return btcpay_nextjs_routes_1.handleBTCPayInvoiceCreation; } });
Object.defineProperty(exports, "handleBTCPayInvoiceStatus", { enumerable: true, get: function () { return btcpay_nextjs_routes_1.handleBTCPayInvoiceStatus; } });
Object.defineProperty(exports, "handleBTCPayWebhookRequest", { enumerable: true, get: function () { return btcpay_nextjs_routes_1.handleBTCPayWebhookRequest; } });
// Note: Next.js integration is available via separate import:
// const { withLightning, withLightningAuth, withLightningPayment } = require('lightning-auth-and-payment/nextjs');
//# sourceMappingURL=index.js.map