@churchapps/apphelper 0.11.0 → 0.13.0

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.
Files changed (73) hide show
  1. package/dist/donations/components/BankForm.js.map +1 -1
  2. package/dist/donations/components/CardForm.js.map +1 -1
  3. package/dist/donations/components/DonationForm.js.map +1 -1
  4. package/dist/donations/components/KingdomFundingNonAuthDonationInner.d.ts +13 -0
  5. package/dist/donations/components/KingdomFundingNonAuthDonationInner.d.ts.map +1 -0
  6. package/dist/donations/components/KingdomFundingNonAuthDonationInner.js +282 -0
  7. package/dist/donations/components/KingdomFundingNonAuthDonationInner.js.map +1 -0
  8. package/dist/donations/components/KingdomFundingTokenForm.d.ts +19 -0
  9. package/dist/donations/components/KingdomFundingTokenForm.d.ts.map +1 -0
  10. package/dist/donations/components/KingdomFundingTokenForm.js +147 -0
  11. package/dist/donations/components/KingdomFundingTokenForm.js.map +1 -0
  12. package/dist/donations/components/MultiGatewayDonationForm.d.ts.map +1 -1
  13. package/dist/donations/components/MultiGatewayDonationForm.js +104 -108
  14. package/dist/donations/components/MultiGatewayDonationForm.js.map +1 -1
  15. package/dist/donations/components/NonAuthDonation.d.ts.map +1 -1
  16. package/dist/donations/components/NonAuthDonation.js +16 -48
  17. package/dist/donations/components/NonAuthDonation.js.map +1 -1
  18. package/dist/donations/components/PaymentMethods.d.ts.map +1 -1
  19. package/dist/donations/components/PaymentMethods.js +97 -16
  20. package/dist/donations/components/PaymentMethods.js.map +1 -1
  21. package/dist/donations/components/RecurringDonations.d.ts.map +1 -1
  22. package/dist/donations/components/RecurringDonations.js +29 -6
  23. package/dist/donations/components/RecurringDonations.js.map +1 -1
  24. package/dist/donations/components/index.d.ts +3 -0
  25. package/dist/donations/components/index.d.ts.map +1 -1
  26. package/dist/donations/components/index.js +2 -0
  27. package/dist/donations/components/index.js.map +1 -1
  28. package/dist/donations/helpers/DonationHelper.d.ts +2 -2
  29. package/dist/donations/helpers/DonationHelper.d.ts.map +1 -1
  30. package/dist/donations/helpers/DonationHelper.js +1 -1
  31. package/dist/donations/helpers/DonationHelper.js.map +1 -1
  32. package/dist/donations/helpers/DonationInterface.d.ts +1 -1
  33. package/dist/donations/helpers/DonationInterface.d.ts.map +1 -1
  34. package/dist/donations/helpers/Locale.d.ts.map +1 -1
  35. package/dist/donations/helpers/Locale.js +24 -0
  36. package/dist/donations/helpers/Locale.js.map +1 -1
  37. package/dist/donations/helpers/PaymentMethod.d.ts +4 -2
  38. package/dist/donations/helpers/PaymentMethod.d.ts.map +1 -1
  39. package/dist/donations/helpers/StripePaymentMethod.d.ts +1 -1
  40. package/dist/donations/helpers/StripePaymentMethod.d.ts.map +1 -1
  41. package/dist/donations/index.d.ts +1 -0
  42. package/dist/donations/index.d.ts.map +1 -1
  43. package/dist/donations/index.js +1 -0
  44. package/dist/donations/index.js.map +1 -1
  45. package/dist/donations/modals/DonationPreviewModal.d.ts.map +1 -1
  46. package/dist/donations/modals/DonationPreviewModal.js +3 -1
  47. package/dist/donations/modals/DonationPreviewModal.js.map +1 -1
  48. package/dist/donations/providers/KingdomFundingProvider.d.ts +3 -0
  49. package/dist/donations/providers/KingdomFundingProvider.d.ts.map +1 -0
  50. package/dist/donations/providers/KingdomFundingProvider.js +86 -0
  51. package/dist/donations/providers/KingdomFundingProvider.js.map +1 -0
  52. package/dist/donations/providers/PayPalProvider.d.ts +3 -0
  53. package/dist/donations/providers/PayPalProvider.d.ts.map +1 -0
  54. package/dist/donations/providers/PayPalProvider.js +81 -0
  55. package/dist/donations/providers/PayPalProvider.js.map +1 -0
  56. package/dist/donations/providers/StripeProvider.d.ts +34 -0
  57. package/dist/donations/providers/StripeProvider.d.ts.map +1 -0
  58. package/dist/donations/providers/StripeProvider.js +74 -0
  59. package/dist/donations/providers/StripeProvider.js.map +1 -0
  60. package/dist/donations/providers/index.d.ts +3 -0
  61. package/dist/donations/providers/index.d.ts.map +1 -0
  62. package/dist/donations/providers/index.js +6 -0
  63. package/dist/donations/providers/index.js.map +1 -0
  64. package/dist/donations/providers/registry.d.ts +6 -0
  65. package/dist/donations/providers/registry.d.ts.map +1 -0
  66. package/dist/donations/providers/registry.js +36 -0
  67. package/dist/donations/providers/registry.js.map +1 -0
  68. package/dist/donations/providers/types.d.ts +113 -0
  69. package/dist/donations/providers/types.d.ts.map +1 -0
  70. package/dist/donations/providers/types.js +2 -0
  71. package/dist/donations/providers/types.js.map +1 -0
  72. package/dist/public/locales/en.json +24 -0
  73. package/package.json +1 -1
@@ -0,0 +1,6 @@
1
+ import type { PaymentProvider } from "./types";
2
+ export declare function registerPaymentProvider(provider: PaymentProvider): void;
3
+ export declare function getPaymentProvider(provider: string | undefined | null): PaymentProvider;
4
+ export declare function hasPaymentProvider(provider: string | undefined | null): boolean;
5
+ export declare function listPaymentProviders(): PaymentProvider[];
6
+ //# sourceMappingURL=registry.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"registry.d.ts","sourceRoot":"","sources":["../../../src/donations/providers/registry.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,SAAS,CAAC;AAiB/C,wBAAgB,uBAAuB,CAAC,QAAQ,EAAE,eAAe,GAAG,IAAI,CAEvE;AAID,wBAAgB,kBAAkB,CAAC,QAAQ,EAAE,MAAM,GAAG,SAAS,GAAG,IAAI,GAAG,eAAe,CAIvF;AAED,wBAAgB,kBAAkB,CAAC,QAAQ,EAAE,MAAM,GAAG,SAAS,GAAG,IAAI,GAAG,OAAO,CAG/E;AAED,wBAAgB,oBAAoB,IAAI,eAAe,EAAE,CAExD"}
@@ -0,0 +1,36 @@
1
+ import { DonationHelper } from "../helpers";
2
+ import { StripeProvider } from "./StripeProvider";
3
+ import { KingdomFundingProvider } from "./KingdomFundingProvider";
4
+ import { PayPalProvider } from "./PayPalProvider";
5
+ // Built-ins are referenced directly (not registered via a module side-effect),
6
+ // so bundlers can't tree-shake the registration away. Built lazily on first
7
+ // access so the providers/components import cycle is fully resolved by call time.
8
+ const custom = new Map();
9
+ let builtins = null;
10
+ function getBuiltins() {
11
+ if (!builtins) {
12
+ builtins = new Map();
13
+ for (const p of [StripeProvider, KingdomFundingProvider, PayPalProvider])
14
+ builtins.set(p.key, p);
15
+ }
16
+ return builtins;
17
+ }
18
+ // Register an additional provider at runtime (e.g. a host app's custom gateway).
19
+ export function registerPaymentProvider(provider) {
20
+ custom.set(provider.key, provider);
21
+ }
22
+ // Resolves by normalized provider name. Falls back to Stripe so an unknown or
23
+ // misconfigured provider never hard-crashes the donor form.
24
+ export function getPaymentProvider(provider) {
25
+ const key = DonationHelper.normalizeProvider(provider || "");
26
+ const all = getBuiltins();
27
+ return custom.get(key) ?? all.get(key) ?? all.get("stripe");
28
+ }
29
+ export function hasPaymentProvider(provider) {
30
+ const key = DonationHelper.normalizeProvider(provider || "");
31
+ return custom.has(key) || getBuiltins().has(key);
32
+ }
33
+ export function listPaymentProviders() {
34
+ return [...getBuiltins().values(), ...custom.values()];
35
+ }
36
+ //# sourceMappingURL=registry.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"registry.js","sourceRoot":"","sources":["../../../src/donations/providers/registry.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;AAC5C,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAClD,OAAO,EAAE,sBAAsB,EAAE,MAAM,0BAA0B,CAAC;AAClE,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAGlD,+EAA+E;AAC/E,4EAA4E;AAC5E,kFAAkF;AAClF,MAAM,MAAM,GAAG,IAAI,GAAG,EAA2B,CAAC;AAClD,IAAI,QAAQ,GAAwC,IAAI,CAAC;AAEzD,SAAS,WAAW;IAClB,IAAI,CAAC,QAAQ,EAAE,CAAC;QACd,QAAQ,GAAG,IAAI,GAAG,EAA2B,CAAC;QAC9C,KAAK,MAAM,CAAC,IAAI,CAAC,cAAc,EAAE,sBAAsB,EAAE,cAAc,CAAC;YAAE,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC;IACnG,CAAC;IACD,OAAO,QAAQ,CAAC;AAClB,CAAC;AAED,iFAAiF;AACjF,MAAM,UAAU,uBAAuB,CAAC,QAAyB;IAC/D,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC,GAAG,EAAE,QAAQ,CAAC,CAAC;AACrC,CAAC;AAED,8EAA8E;AAC9E,4DAA4D;AAC5D,MAAM,UAAU,kBAAkB,CAAC,QAAmC;IACpE,MAAM,GAAG,GAAG,cAAc,CAAC,iBAAiB,CAAC,QAAQ,IAAI,EAAE,CAAC,CAAC;IAC7D,MAAM,GAAG,GAAG,WAAW,EAAE,CAAC;IAC1B,OAAO,MAAM,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,GAAG,CAAC,GAAG,CAAC,QAAQ,CAAE,CAAC;AAC/D,CAAC;AAED,MAAM,UAAU,kBAAkB,CAAC,QAAmC;IACpE,MAAM,GAAG,GAAG,cAAc,CAAC,iBAAiB,CAAC,QAAQ,IAAI,EAAE,CAAC,CAAC;IAC7D,OAAO,MAAM,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,WAAW,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;AACnD,CAAC;AAED,MAAM,UAAU,oBAAoB;IAClC,OAAO,CAAC,GAAG,WAAW,EAAE,CAAC,MAAM,EAAE,EAAE,GAAG,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC;AACzD,CAAC"}
@@ -0,0 +1,113 @@
1
+ import type { ReactNode, FC, ForwardRefExoticComponent, RefAttributes } from "react";
2
+ import type { Stripe } from "@stripe/stripe-js";
3
+ import type { PaymentGateway } from "../helpers";
4
+ import type { PaperProps } from "@mui/material/Paper";
5
+ export interface PaymentToken {
6
+ id: string;
7
+ type: "card" | "bank" | "paypal";
8
+ saved?: boolean;
9
+ brand?: string;
10
+ last4?: string;
11
+ expMonth?: string;
12
+ expYear?: string;
13
+ }
14
+ export interface ChargeContext {
15
+ provider: string;
16
+ gatewayId?: string;
17
+ churchId: string;
18
+ amount: number;
19
+ funds: {
20
+ id: string;
21
+ amount: number;
22
+ }[];
23
+ person: {
24
+ id: string;
25
+ email: string;
26
+ name: string;
27
+ };
28
+ notes?: string;
29
+ church: {
30
+ name: string;
31
+ subDomain: string;
32
+ churchURL: string;
33
+ logo: string;
34
+ };
35
+ recurring: boolean;
36
+ interval?: {
37
+ interval_count: number;
38
+ interval: string;
39
+ };
40
+ billingCycleAnchor?: number;
41
+ saveCard?: boolean;
42
+ customerId?: string;
43
+ currency?: string;
44
+ }
45
+ export interface ChargeRequest {
46
+ endpoint: "/donate/charge" | "/donate/subscribe";
47
+ body: any;
48
+ }
49
+ export interface FinalizeResult {
50
+ result: any;
51
+ requiresAction?: boolean;
52
+ success?: boolean;
53
+ error?: string;
54
+ }
55
+ export interface ProviderCapabilities {
56
+ savedCard: boolean;
57
+ savedBank: boolean;
58
+ guestAch: boolean;
59
+ memberNewCard: boolean;
60
+ recurring: boolean;
61
+ editRecurring: boolean;
62
+ }
63
+ export interface ProviderDescriptor {
64
+ adminValue: string;
65
+ label: string;
66
+ keyLabels: {
67
+ public: string;
68
+ private: string;
69
+ webhook?: string;
70
+ };
71
+ feeFields: ("card" | "ach" | "paypal" | "kf")[];
72
+ currencies: string[] | "all";
73
+ selectableInAdmin: boolean;
74
+ betaOnly?: boolean;
75
+ setupInstructionsKey?: string;
76
+ signupUrl?: (church: any, user: any) => string;
77
+ }
78
+ export interface MemberEntryHandle {
79
+ tokenize(): Promise<PaymentToken>;
80
+ }
81
+ export interface MemberEntryProps {
82
+ gateway: PaymentGateway;
83
+ getContext?: () => ChargeContext;
84
+ }
85
+ export interface GuestFormProps {
86
+ churchId: string;
87
+ gateway: PaymentGateway;
88
+ recaptchaSiteKey: string;
89
+ mainContainerCssProps?: PaperProps;
90
+ showHeader?: boolean;
91
+ churchLogo?: string;
92
+ allowSingleGift?: boolean;
93
+ allowRecurring?: boolean;
94
+ showFundSelector?: boolean;
95
+ allowedFundIds?: string[];
96
+ defaultFundId?: string;
97
+ }
98
+ export interface PaymentProvider {
99
+ readonly key: string;
100
+ readonly descriptor: ProviderDescriptor;
101
+ readonly capabilities: ProviderCapabilities;
102
+ MemberWrapper?: FC<{
103
+ stripePromise?: Promise<Stripe | null> | null;
104
+ children: ReactNode;
105
+ }>;
106
+ MemberEntry?: ForwardRefExoticComponent<MemberEntryProps & RefAttributes<MemberEntryHandle>>;
107
+ buildChargeRequest(ctx: ChargeContext, token: PaymentToken): ChargeRequest;
108
+ finalizeResult?(result: any, deps: {
109
+ stripe?: Stripe | null;
110
+ }): Promise<FinalizeResult>;
111
+ GuestForm: FC<GuestFormProps>;
112
+ }
113
+ //# sourceMappingURL=types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/donations/providers/types.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../src/donations/providers/types.ts"],"names":[],"mappings":""}
@@ -132,6 +132,30 @@
132
132
  "notFound": "Payment method not found.",
133
133
  "paymentMethod": "Payment Method",
134
134
  "startDate": "Start Date"
135
+ },
136
+ "kingdomFunding": {
137
+ "providerName": "Kingdom Funding",
138
+ "loadingPaymentForm": "Loading payment form...",
139
+ "paymentFormNotAvailable": "Payment form not available",
140
+ "paymentFormNotInitialized": "Payment form not initialized",
141
+ "failedToInitPaymentForm": "Failed to initialize payment form",
142
+ "failedToLoadPaymentForm": "Failed to load payment form",
143
+ "failedToTokenizeCard": "Failed to tokenize card",
144
+ "missingTokenizationKey": "Missing tokenization key",
145
+ "failedToProcessCard": "Failed to process card. Please check your card details and try again.",
146
+ "unexpectedError": "An unexpected error occurred. Please try again.",
147
+ "errorProcessingDonation": "Error processing donation",
148
+ "enterBankDetails": "Enter your bank account details",
149
+ "enterCardDetails": "Enter card details",
150
+ "gatewayConfigMissing": "Payment form not available. Gateway configuration missing.",
151
+ "paymentProvider": "Payment Provider",
152
+ "memo": "Memo (optional)",
153
+ "validate": {
154
+ "routingNumber": "Please enter a valid routing number",
155
+ "accountNumber": "Please enter a valid account number",
156
+ "captchaRequired": "Please complete the reCAPTCHA verification",
157
+ "captchaFailed": "reCAPTCHA verification failed. Please try again."
158
+ }
135
159
  }
136
160
  },
137
161
  "fileUpload": {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@churchapps/apphelper",
3
- "version": "0.11.0",
3
+ "version": "0.13.0",
4
4
  "description": "Library of helper functions, components, and feature modules (donations/forms/login/markdown/website) for React and NextJS ChurchApps",
5
5
  "type": "module",
6
6
  "main": "dist/index.js",