@churchapps/apphelper-login 0.4.13

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/README.md +104 -0
  2. package/dist/LoginPage.d.ts +25 -0
  3. package/dist/LoginPage.d.ts.map +1 -0
  4. package/dist/LoginPage.js +248 -0
  5. package/dist/LoginPage.js.map +1 -0
  6. package/dist/LogoutPage.d.ts +9 -0
  7. package/dist/LogoutPage.d.ts.map +1 -0
  8. package/dist/LogoutPage.js +33 -0
  9. package/dist/LogoutPage.js.map +1 -0
  10. package/dist/components/Forgot.d.ts +8 -0
  11. package/dist/components/Forgot.d.ts.map +1 -0
  12. package/dist/components/Forgot.js +127 -0
  13. package/dist/components/Forgot.js.map +1 -0
  14. package/dist/components/Login.d.ts +15 -0
  15. package/dist/components/Login.d.ts.map +1 -0
  16. package/dist/components/Login.js +126 -0
  17. package/dist/components/Login.js.map +1 -0
  18. package/dist/components/LoginSetPassword.d.ts +13 -0
  19. package/dist/components/LoginSetPassword.d.ts.map +1 -0
  20. package/dist/components/LoginSetPassword.js +167 -0
  21. package/dist/components/LoginSetPassword.js.map +1 -0
  22. package/dist/components/Register.d.ts +12 -0
  23. package/dist/components/Register.d.ts.map +1 -0
  24. package/dist/components/Register.js +217 -0
  25. package/dist/components/Register.js.map +1 -0
  26. package/dist/components/SelectChurchModal.d.ts +14 -0
  27. package/dist/components/SelectChurchModal.d.ts.map +1 -0
  28. package/dist/components/SelectChurchModal.js +39 -0
  29. package/dist/components/SelectChurchModal.js.map +1 -0
  30. package/dist/components/SelectChurchRegister.d.ts +11 -0
  31. package/dist/components/SelectChurchRegister.d.ts.map +1 -0
  32. package/dist/components/SelectChurchRegister.js +83 -0
  33. package/dist/components/SelectChurchRegister.js.map +1 -0
  34. package/dist/components/SelectChurchSearch.d.ts +10 -0
  35. package/dist/components/SelectChurchSearch.d.ts.map +1 -0
  36. package/dist/components/SelectChurchSearch.js +61 -0
  37. package/dist/components/SelectChurchSearch.js.map +1 -0
  38. package/dist/components/SelectableChurch.d.ts +9 -0
  39. package/dist/components/SelectableChurch.d.ts.map +1 -0
  40. package/dist/components/SelectableChurch.js +34 -0
  41. package/dist/components/SelectableChurch.js.map +1 -0
  42. package/dist/helpers/AnalyticsHelper.d.ts +7 -0
  43. package/dist/helpers/AnalyticsHelper.d.ts.map +1 -0
  44. package/dist/helpers/AnalyticsHelper.js +30 -0
  45. package/dist/helpers/AnalyticsHelper.js.map +1 -0
  46. package/dist/helpers/Locale.d.ts +13 -0
  47. package/dist/helpers/Locale.d.ts.map +1 -0
  48. package/dist/helpers/Locale.js +200 -0
  49. package/dist/helpers/Locale.js.map +1 -0
  50. package/dist/helpers/index.d.ts +3 -0
  51. package/dist/helpers/index.d.ts.map +1 -0
  52. package/dist/helpers/index.js +3 -0
  53. package/dist/helpers/index.js.map +1 -0
  54. package/dist/index.d.ts +11 -0
  55. package/dist/index.d.ts.map +1 -0
  56. package/dist/index.js +11 -0
  57. package/dist/index.js.map +1 -0
  58. package/package.json +57 -0
  59. package/src/LoginPage.tsx +283 -0
  60. package/src/LogoutPage.tsx +43 -0
  61. package/src/components/Forgot.tsx +247 -0
  62. package/src/components/Login.tsx +250 -0
  63. package/src/components/LoginSetPassword.tsx +298 -0
  64. package/src/components/Register.tsx +371 -0
  65. package/src/components/SelectChurchModal.tsx +82 -0
  66. package/src/components/SelectChurchRegister.tsx +88 -0
  67. package/src/components/SelectChurchSearch.tsx +85 -0
  68. package/src/components/SelectableChurch.tsx +72 -0
  69. package/src/helpers/AnalyticsHelper.ts +32 -0
  70. package/src/helpers/Locale.ts +233 -0
  71. package/src/helpers/index.ts +2 -0
  72. package/src/index.ts +10 -0
  73. package/tsconfig.json +30 -0
package/README.md ADDED
@@ -0,0 +1,104 @@
1
+ # @churchapps/apphelper-login
2
+
3
+ Login and authentication components for ChurchApps applications.
4
+
5
+ ## Features
6
+
7
+ - **LoginPage** - Complete login page with tabs for login, register, and forgot password
8
+ - **Login** - Simple login form component
9
+ - **Register** - User registration form
10
+ - **Forgot** - Password recovery form
11
+ - **LoginSetPassword** - Password reset component
12
+ - **SelectChurchSearch** - Church search functionality
13
+ - **SelectChurchRegister** - New church registration
14
+ - **SelectChurchModal** - Church selection modal
15
+
16
+ ## Language Support
17
+
18
+ The components include built-in English fallback values for all labels, ensuring they work even without language files present.
19
+
20
+ ### Internationalization (i18n)
21
+
22
+ The components support full internationalization through language files. When language files are available, they will be used automatically. If no language files are found, the components fall back to English labels.
23
+
24
+ #### Supported Languages
25
+ - English (en) - Built-in fallbacks
26
+ - German (de)
27
+ - Spanish (es)
28
+ - French (fr)
29
+ - Hindi (hi)
30
+ - Italian (it)
31
+ - Korean (ko)
32
+ - Norwegian (no)
33
+ - Portuguese (pt)
34
+ - Russian (ru)
35
+ - Tagalog (tl)
36
+ - Chinese (zh)
37
+
38
+ #### Using with Language Files
39
+
40
+ ```javascript
41
+ import { Locale } from '@churchapps/apphelper-login';
42
+
43
+ // Initialize with language backends
44
+ await Locale.init([
45
+ '/locales/{{lng}}.json',
46
+ 'https://api.example.com/translations/{{lng}}.json'
47
+ ]);
48
+ ```
49
+
50
+ #### Using Without Language Files
51
+
52
+ The components work automatically without any setup - they use English fallbacks:
53
+
54
+ ```javascript
55
+ import { LoginPage } from '@churchapps/apphelper-login';
56
+
57
+ // No language initialization needed - fallbacks are automatic
58
+ <LoginPage {...props} />
59
+ ```
60
+
61
+ ## Installation
62
+
63
+ ```bash
64
+ npm install @churchapps/apphelper-login
65
+ ```
66
+
67
+ ## Dependencies
68
+
69
+ - `@churchapps/helpers` - Core utilities and interfaces
70
+ - `@churchapps/apphelper` - UI components (InputBox, ErrorMessages, etc.)
71
+ - React 19+
72
+ - Material-UI 7+
73
+ - i18next (for internationalization)
74
+
75
+ ## Usage
76
+
77
+ ```javascript
78
+ import { LoginPage, Login, Register } from '@churchapps/apphelper-login';
79
+
80
+ // Full login page
81
+ <LoginPage
82
+ context={userContext}
83
+ appName="My App"
84
+ appUrl={window.location.href}
85
+ handleRedirect={(url) => navigate(url)}
86
+ />
87
+
88
+ // Simple login form
89
+ <Login
90
+ context={userContext}
91
+ appName="My App"
92
+ onSuccess={() => console.log('Success')}
93
+ />
94
+ ```
95
+
96
+ ## Playground
97
+
98
+ A development playground is available for testing components:
99
+
100
+ ```bash
101
+ npm run test:login
102
+ ```
103
+
104
+ This will start a browser-based playground where you can interact with all components.
@@ -0,0 +1,25 @@
1
+ import * as React from "react";
2
+ import { UserContextInterface, ChurchInterface, UserInterface } from "@churchapps/helpers";
3
+ import { PaperProps } from "@mui/material";
4
+ interface Props {
5
+ context: UserContextInterface;
6
+ jwt: string;
7
+ auth: string;
8
+ keyName?: string;
9
+ logo?: string;
10
+ appName?: string;
11
+ appUrl?: string;
12
+ returnUrl?: string;
13
+ loginSuccessOverride?: () => void;
14
+ userRegisteredCallback?: (user: UserInterface) => Promise<void>;
15
+ churchRegisteredCallback?: (church: ChurchInterface) => Promise<void>;
16
+ callbackErrors?: string[];
17
+ showLogo?: boolean;
18
+ loginContainerCssProps?: PaperProps;
19
+ defaultEmail?: string;
20
+ defaultPassword?: string;
21
+ handleRedirect?: (url: string) => void;
22
+ }
23
+ export declare const LoginPage: React.FC<Props>;
24
+ export {};
25
+ //# sourceMappingURL=LoginPage.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"LoginPage.d.ts","sourceRoot":"","sources":["../src/LoginPage.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAE/B,OAAO,EAA0B,oBAAoB,EAAE,eAAe,EAAE,aAAa,EAA4B,MAAM,qBAAqB,CAAC;AAQ7I,OAAO,EAAc,UAAU,EAAc,MAAM,eAAe,CAAC;AAKnE,UAAU,KAAK;IACd,OAAO,EAAE,oBAAoB,CAAC;IAC9B,GAAG,EAAE,MAAM,CAAC;IACZ,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,oBAAoB,CAAC,EAAE,MAAM,IAAI,CAAC;IAClC,sBAAsB,CAAC,EAAE,CAAC,IAAI,EAAE,aAAa,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IAChE,wBAAwB,CAAC,EAAE,CAAC,MAAM,EAAE,eAAe,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IACtE,cAAc,CAAC,EAAE,MAAM,EAAE,CAAC;IAC1B,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,sBAAsB,CAAC,EAAE,UAAU,CAAC;IACpC,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,cAAc,CAAC,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,IAAI,CAAC;CACvC;AA4OD,eAAO,MAAM,SAAS,EAAE,KAAK,CAAC,EAAE,CAAC,KAAK,CAWrC,CAAC"}
@@ -0,0 +1,248 @@
1
+ "use client";
2
+ import { jsx as _jsx, Fragment as _Fragment, jsxs as _jsxs } from "react/jsx-runtime";
3
+ import * as React from "react";
4
+ import { ErrorMessages, FloatingSupport, Loading } from "@churchapps/apphelper";
5
+ import { ApiHelper, ArrayHelper, UserHelper, CommonEnvironmentHelper } from "@churchapps/helpers";
6
+ import { AnalyticsHelper, Locale } from "./helpers";
7
+ import { useCookies, CookiesProvider } from "react-cookie";
8
+ import { jwtDecode } from "jwt-decode";
9
+ import { Register } from "./components/Register";
10
+ import { SelectChurchModal } from "./components/SelectChurchModal";
11
+ import { Forgot } from "./components/Forgot";
12
+ import { Alert, Box, Typography } from "@mui/material";
13
+ import { Login } from "./components/Login";
14
+ import { LoginSetPassword } from "./components/LoginSetPassword";
15
+ import ga4 from "react-ga4";
16
+ const LoginPageContent = ({ showLogo = true, loginContainerCssProps, ...props }) => {
17
+ const [welcomeBackName, setWelcomeBackName] = React.useState("");
18
+ const [pendingAutoLogin, setPendingAutoLogin] = React.useState(false);
19
+ const [errors, setErrors] = React.useState([]);
20
+ const [cookies, setCookie] = useCookies(["jwt", "name", "email", "lastChurchId"]);
21
+ const [showForgot, setShowForgot] = React.useState(false);
22
+ const [showRegister, setShowRegister] = React.useState(false);
23
+ const [showSelectModal, setShowSelectModal] = React.useState(false);
24
+ const [loginResponse, setLoginResponse] = React.useState(null);
25
+ const [userJwt, setUserJwt] = React.useState("");
26
+ const [isSubmitting, setIsSubmitting] = React.useState(false);
27
+ const loginFormRef = React.useRef(null);
28
+ const location = typeof window !== "undefined" && window.location;
29
+ let selectedChurchId = "";
30
+ let registeredChurch = null;
31
+ let userJwtBackup = ""; //use state copy for storing between page updates. This copy for instant availability.
32
+ const cleanAppUrl = () => {
33
+ if (!props.appUrl)
34
+ return null;
35
+ else {
36
+ const index = props.appUrl.indexOf("/", 9);
37
+ if (index === -1)
38
+ return props.appUrl;
39
+ else
40
+ return props.appUrl.substring(0, index);
41
+ }
42
+ };
43
+ React.useEffect(() => {
44
+ if (props.callbackErrors?.length > 0) {
45
+ setErrors(props.callbackErrors);
46
+ }
47
+ }, [props.callbackErrors]);
48
+ const init = () => {
49
+ const search = new URLSearchParams(location?.search);
50
+ const action = search.get("action");
51
+ if (action === "forgot")
52
+ setShowForgot(true);
53
+ else if (action === "register")
54
+ setShowRegister(true);
55
+ else {
56
+ if (!props.auth && props.jwt) {
57
+ setWelcomeBackName(cookies.name);
58
+ login({ jwt: props.jwt });
59
+ setPendingAutoLogin(true);
60
+ }
61
+ else {
62
+ setPendingAutoLogin(false);
63
+ }
64
+ }
65
+ };
66
+ const handleLoginSuccess = async (resp) => {
67
+ userJwtBackup = resp.user.jwt;
68
+ setUserJwt(userJwtBackup);
69
+ ApiHelper.setDefaultPermissions(resp.user.jwt);
70
+ setLoginResponse(resp);
71
+ resp.userChurches.forEach(uc => { if (!uc.apis)
72
+ uc.apis = []; });
73
+ UserHelper.userChurches = resp.userChurches;
74
+ setCookie("name", `${resp.user.firstName} ${resp.user.lastName}`, { path: "/" });
75
+ setCookie("email", resp.user.email, { path: "/" });
76
+ UserHelper.user = resp.user;
77
+ if (props.jwt) {
78
+ const decoded = jwtDecode(userJwtBackup);
79
+ selectedChurchId = decoded.churchId;
80
+ }
81
+ const search = new URLSearchParams(location?.search);
82
+ const churchIdInParams = search.get("churchId");
83
+ if (props.keyName)
84
+ selectChurchByKeyName();
85
+ else if (selectedChurchId)
86
+ selectChurchById();
87
+ else if (churchIdInParams)
88
+ selectChurch(churchIdInParams);
89
+ else if (props.jwt && cookies.lastChurchId && ArrayHelper.getOne(resp.userChurches, "church.id", cookies.lastChurchId)) {
90
+ selectedChurchId = cookies.lastChurchId;
91
+ selectChurchById();
92
+ }
93
+ else
94
+ setShowSelectModal(true);
95
+ };
96
+ const selectChurchById = async () => {
97
+ await UserHelper.selectChurch(props.context, selectedChurchId, undefined);
98
+ setCookie("lastChurchId", selectedChurchId, { path: "/" });
99
+ if (registeredChurch) {
100
+ AnalyticsHelper.logEvent("Church", "Register", UserHelper.currentUserChurch.church.name);
101
+ try {
102
+ if (CommonEnvironmentHelper.GoogleAnalyticsTag && typeof (window) !== "undefined") {
103
+ ga4.gtag("event", "conversion", { send_to: "AW-427967381/Ba2qCLrXgJoYEJWHicwB" });
104
+ }
105
+ }
106
+ catch { }
107
+ }
108
+ else
109
+ AnalyticsHelper.logEvent("Church", "Select", UserHelper.currentUserChurch.church.name);
110
+ if (props.churchRegisteredCallback && registeredChurch) {
111
+ await props.churchRegisteredCallback(registeredChurch);
112
+ registeredChurch = null;
113
+ login({ jwt: userJwt || userJwtBackup });
114
+ }
115
+ else
116
+ await continueLoginProcess();
117
+ };
118
+ const selectChurchByKeyName = async () => {
119
+ if (!ArrayHelper.getOne(UserHelper.userChurches, "church.subDomain", props.keyName)) {
120
+ const userChurch = await ApiHelper.post("/churches/select", { subDomain: props.keyName }, "MembershipApi");
121
+ UserHelper.setupApiHelper(userChurch);
122
+ setCookie("lastChurchId", userChurch.church.id, { path: "/" });
123
+ //create/claim the person record and relogin
124
+ await ApiHelper.get("/people/claim/" + userChurch.church.id, "MembershipApi");
125
+ login({ jwt: userJwt || userJwtBackup });
126
+ return;
127
+ }
128
+ await UserHelper.selectChurch(props.context, undefined, props.keyName);
129
+ const selectedChurch = ArrayHelper.getOne(UserHelper.userChurches, "church.subDomain", props.keyName);
130
+ if (selectedChurch)
131
+ setCookie("lastChurchId", selectedChurch.church.id, { path: "/" });
132
+ await continueLoginProcess();
133
+ return;
134
+ };
135
+ async function continueLoginProcess() {
136
+ if (UserHelper.currentUserChurch) {
137
+ UserHelper.currentUserChurch.apis.forEach(api => {
138
+ if (api.keyName === "MembershipApi")
139
+ setCookie("jwt", api.jwt, { path: "/" });
140
+ });
141
+ try {
142
+ if (UserHelper.currentUserChurch.church.id)
143
+ ApiHelper.patch(`/userChurch/${UserHelper.user.id}`, { churchId: UserHelper.currentUserChurch.church.id, appName: props.appName, lastAccessed: new Date() }, "MembershipApi");
144
+ }
145
+ catch (e) {
146
+ console.log("Could not update user church accessed date");
147
+ }
148
+ }
149
+ if (props.loginSuccessOverride !== undefined)
150
+ props.loginSuccessOverride();
151
+ else {
152
+ props.context.setUser(UserHelper.user);
153
+ props.context.setUserChurches(UserHelper.userChurches);
154
+ props.context.setUserChurch(UserHelper.currentUserChurch);
155
+ try {
156
+ const p = await ApiHelper.get(`/people/${UserHelper.currentUserChurch.person?.id}`, "MembershipApi");
157
+ if (p)
158
+ props.context.setPerson(p);
159
+ }
160
+ catch {
161
+ console.log("claiming person");
162
+ const personClaim = await ApiHelper.get("/people/claim/" + UserHelper.currentUserChurch.church.id, "MembershipApi");
163
+ props.context.setPerson(personClaim);
164
+ }
165
+ const search = new URLSearchParams(location?.search);
166
+ const returnUrl = search.get("returnUrl") || props.returnUrl;
167
+ if (returnUrl && typeof window !== "undefined") {
168
+ // Use handleRedirect function if available, otherwise fallback to window.location
169
+ if (props.handleRedirect) {
170
+ props.handleRedirect(returnUrl);
171
+ }
172
+ else {
173
+ window.location.href = returnUrl;
174
+ }
175
+ }
176
+ }
177
+ }
178
+ async function selectChurch(churchId) {
179
+ try {
180
+ setErrors([]);
181
+ selectedChurchId = churchId;
182
+ setCookie("lastChurchId", churchId, { path: "/" });
183
+ if (!ArrayHelper.getOne(UserHelper.userChurches, "church.id", churchId)) {
184
+ const userChurch = await ApiHelper.post("/churches/select", { churchId: churchId }, "MembershipApi");
185
+ UserHelper.setupApiHelper(userChurch);
186
+ //create/claim the person record and relogin
187
+ await ApiHelper.get("/people/claim/" + churchId, "MembershipApi");
188
+ login({ jwt: userJwt || userJwtBackup });
189
+ return;
190
+ }
191
+ UserHelper.selectChurch(props.context, churchId, null).then(() => { continueLoginProcess(); });
192
+ }
193
+ catch (err) {
194
+ console.log("Error in selecting church: ", err);
195
+ setErrors([Locale.label("login.validate.selectingChurch")]);
196
+ loginFormRef?.current?.setSubmitting(false);
197
+ }
198
+ }
199
+ const handleLoginErrors = (errors) => {
200
+ setWelcomeBackName("");
201
+ console.log(errors);
202
+ setErrors([Locale.label("login.validate.invalid")]);
203
+ };
204
+ const login = async (data) => {
205
+ setErrors([]);
206
+ setIsSubmitting(true);
207
+ try {
208
+ const resp = await ApiHelper.postAnonymous("/users/login", data, "MembershipApi");
209
+ setIsSubmitting(false);
210
+ handleLoginSuccess(resp);
211
+ }
212
+ catch (e) {
213
+ setPendingAutoLogin(false);
214
+ if (!data.jwt)
215
+ handleLoginErrors([e.toString()]);
216
+ else
217
+ setWelcomeBackName("");
218
+ setIsSubmitting(false);
219
+ }
220
+ };
221
+ const getWelcomeBack = () => { if (welcomeBackName !== "")
222
+ return (_jsxs(_Fragment, { children: [_jsx(Alert, { severity: "info", children: _jsx("div", { dangerouslySetInnerHTML: { __html: Locale.label("login.welcomeName")?.replace("{}", welcomeBackName) } }) }), _jsx(Loading, {})] })); };
223
+ const getCheckEmail = () => { if (new URLSearchParams(location?.search).get("checkEmail") === "1")
224
+ return _jsx(Alert, { severity: "info", children: Locale.label("login.registerThankYou") }); };
225
+ const handleRegisterCallback = () => { setShowForgot(false); setShowRegister(true); };
226
+ const handleLoginCallback = () => { setShowForgot(false); setShowRegister(false); };
227
+ const handleChurchRegistered = (church) => { registeredChurch = church; setShowRegister(false); console.log("Updated VERSION********"); };
228
+ const getInputBox = () => {
229
+ if (showRegister)
230
+ return (_jsxs(Box, { id: "loginBox", sx: { backgroundColor: "#FFF", border: "1px solid #CCC", borderRadius: "5px", padding: "20px" }, children: [_jsx(Typography, { component: "h2", sx: { fontSize: "32px", fontWeight: 500, lineHeight: 1.2, margin: "0 0 8px 0" }, children: Locale.label("login.createAccount") }), _jsx(Register, { updateErrors: setErrors, appName: props.appName, appUrl: cleanAppUrl(), loginCallback: handleLoginCallback, userRegisteredCallback: props.userRegisteredCallback })] }));
231
+ else if (showForgot)
232
+ return (_jsx(Forgot, { registerCallback: handleRegisterCallback, loginCallback: handleLoginCallback }));
233
+ else if (props.auth)
234
+ return (_jsx(LoginSetPassword, { setErrors: setErrors, setShowForgot: setShowForgot, isSubmitting: isSubmitting, auth: props.auth, login: login, appName: props.appName, appUrl: cleanAppUrl() }));
235
+ else
236
+ return _jsx(Login, { setShowRegister: setShowRegister, setShowForgot: setShowForgot, setErrors: setErrors, isSubmitting: isSubmitting, login: login, mainContainerCssProps: loginContainerCssProps, defaultEmail: props.defaultEmail, defaultPassword: props.defaultPassword });
237
+ };
238
+ React.useEffect(init, []); //eslint-disable-line
239
+ return (_jsxs(_Fragment, { children: [_jsx(ErrorMessages, { errors: errors }), getWelcomeBack(), getCheckEmail(), !pendingAutoLogin && getInputBox(), _jsx(SelectChurchModal, { show: showSelectModal, userChurches: loginResponse?.userChurches, selectChurch: selectChurch, registeredChurchCallback: handleChurchRegistered, errors: errors, appName: props.appName }), _jsx(FloatingSupport, { appName: props.appName })] }));
240
+ };
241
+ export const LoginPage = (props) => {
242
+ // Try to detect if CookiesProvider is available
243
+ const CookiesContext = React.createContext(null);
244
+ const context = React.useContext(CookiesContext);
245
+ // Always wrap with CookiesProvider to ensure context is available
246
+ return (_jsx(CookiesProvider, { defaultSetOptions: { path: '/' }, children: _jsx(LoginPageContent, { ...props }) }));
247
+ };
248
+ //# sourceMappingURL=LoginPage.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"LoginPage.js","sourceRoot":"","sources":["../src/LoginPage.tsx"],"names":[],"mappings":"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"}
@@ -0,0 +1,9 @@
1
+ import React from "react";
2
+ import { UserContextInterface } from "@churchapps/helpers";
3
+ interface Props {
4
+ context?: UserContextInterface;
5
+ handleRedirect?: (url: string) => void;
6
+ }
7
+ export declare const LogoutPage: React.FC<Props>;
8
+ export {};
9
+ //# sourceMappingURL=LogoutPage.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"LogoutPage.d.ts","sourceRoot":"","sources":["../src/LogoutPage.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,OAAO,EAAa,oBAAoB,EAAE,MAAM,qBAAqB,CAAC;AAEtE,UAAU,KAAK;IAAG,OAAO,CAAC,EAAE,oBAAoB,CAAC;IAAC,cAAc,CAAC,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,IAAI,CAAA;CAAE;AA8B1F,eAAO,MAAM,UAAU,EAAE,KAAK,CAAC,EAAE,CAAC,KAAK,CAMtC,CAAA"}
@@ -0,0 +1,33 @@
1
+ "use client";
2
+ import { jsx as _jsx } from "react/jsx-runtime";
3
+ import { useCookies, CookiesProvider } from "react-cookie";
4
+ import { ApiHelper } from "@churchapps/helpers";
5
+ const LogoutPageContent = (props) => {
6
+ const [, , removeCookie] = useCookies(["jwt", "email", "name", "lastChurchId"]);
7
+ removeCookie("jwt");
8
+ removeCookie("email");
9
+ removeCookie("name");
10
+ removeCookie("lastChurchId");
11
+ ApiHelper.clearPermissions();
12
+ props.context?.setUser(null);
13
+ props.context?.setPerson(null);
14
+ props.context?.setUserChurches(null);
15
+ props.context?.setUserChurch(null);
16
+ setTimeout(() => {
17
+ // a must check for Nextjs
18
+ if (typeof window !== "undefined") {
19
+ // Use handleRedirect function if available, otherwise fallback to window.location
20
+ if (props.handleRedirect) {
21
+ props.handleRedirect("/");
22
+ }
23
+ else {
24
+ window.location.href = "/";
25
+ }
26
+ }
27
+ }, 300);
28
+ return null;
29
+ };
30
+ export const LogoutPage = (props) => {
31
+ return (_jsx(CookiesProvider, { defaultSetOptions: { path: '/' }, children: _jsx(LogoutPageContent, { ...props }) }));
32
+ };
33
+ //# sourceMappingURL=LogoutPage.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"LogoutPage.js","sourceRoot":"","sources":["../src/LogoutPage.tsx"],"names":[],"mappings":"AAAA,YAAY,CAAC;;AAGb,OAAO,EAAE,UAAU,EAAE,eAAe,EAAE,MAAM,cAAc,CAAA;AAC1D,OAAO,EAAE,SAAS,EAAwB,MAAM,qBAAqB,CAAC;AAItE,MAAM,iBAAiB,GAAoB,CAAC,KAAK,EAAE,EAAE;IACpD,MAAM,CAAC,EAAE,AAAD,EAAG,YAAY,CAAC,GAAG,UAAU,CAAC,CAAC,KAAK,EAAE,OAAO,EAAE,MAAM,EAAE,cAAc,CAAC,CAAC,CAAC;IAEhF,YAAY,CAAC,KAAK,CAAC,CAAC;IACpB,YAAY,CAAC,OAAO,CAAC,CAAC;IACtB,YAAY,CAAC,MAAM,CAAC,CAAC;IACrB,YAAY,CAAC,cAAc,CAAC,CAAC;IAE7B,SAAS,CAAC,gBAAgB,EAAE,CAAC;IAC7B,KAAK,CAAC,OAAO,EAAE,OAAO,CAAC,IAAI,CAAC,CAAC;IAC7B,KAAK,CAAC,OAAO,EAAE,SAAS,CAAC,IAAI,CAAC,CAAC;IAC/B,KAAK,CAAC,OAAO,EAAE,eAAe,CAAC,IAAI,CAAC,CAAC;IACrC,KAAK,CAAC,OAAO,EAAE,aAAa,CAAC,IAAI,CAAC,CAAC;IAEnC,UAAU,CAAC,GAAG,EAAE;QACf,0BAA0B;QAC1B,IAAI,OAAO,MAAM,KAAK,WAAW,EAAE,CAAC;YACnC,kFAAkF;YAClF,IAAI,KAAK,CAAC,cAAc,EAAE,CAAC;gBAC1B,KAAK,CAAC,cAAc,CAAC,GAAG,CAAC,CAAC;YAC3B,CAAC;iBAAM,CAAC;gBACP,MAAM,CAAC,QAAQ,CAAC,IAAI,GAAG,GAAG,CAAC;YAC5B,CAAC;QACF,CAAC;IACF,CAAC,EAAE,GAAG,CAAC,CAAC;IACR,OAAO,IAAI,CAAC;AACb,CAAC,CAAA;AAED,MAAM,CAAC,MAAM,UAAU,GAAoB,CAAC,KAAK,EAAE,EAAE;IACpD,OAAO,CACN,KAAC,eAAe,IAAC,iBAAiB,EAAE,EAAE,IAAI,EAAE,GAAG,EAAE,YAChD,KAAC,iBAAiB,OAAK,KAAK,GAAI,GACf,CAClB,CAAC;AACH,CAAC,CAAA"}
@@ -0,0 +1,8 @@
1
+ import React from "react";
2
+ interface Props {
3
+ registerCallback: () => void;
4
+ loginCallback: () => void;
5
+ }
6
+ export declare const Forgot: React.FC<Props>;
7
+ export {};
8
+ //# sourceMappingURL=Forgot.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Forgot.d.ts","sourceRoot":"","sources":["../../src/components/Forgot.tsx"],"names":[],"mappings":"AAEA,OAAO,KAA2B,MAAM,OAAO,CAAC;AAMhD,UAAU,KAAK;IACb,gBAAgB,EAAE,MAAM,IAAI,CAAC;IAC7B,aAAa,EAAE,MAAM,IAAI,CAAA;CAC1B;AAED,eAAO,MAAM,MAAM,EAAE,KAAK,CAAC,EAAE,CAAC,KAAK,CAyOlC,CAAA"}
@@ -0,0 +1,127 @@
1
+ "use client";
2
+ import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
3
+ import React from "react";
4
+ import { ApiHelper } from "@churchapps/helpers";
5
+ import { Locale } from "../helpers";
6
+ import { TextField, Typography, Card, CardContent, Button } from "@mui/material";
7
+ export const Forgot = props => {
8
+ const [errors, setErrors] = React.useState([]);
9
+ const [successMessage, setSuccessMessage] = React.useState(null);
10
+ const [email, setEmail] = React.useState("");
11
+ const [isSubmitting, setIsSubmitting] = React.useState(false);
12
+ const handleChange = (e) => {
13
+ setEmail(e.target.value);
14
+ };
15
+ const validateEmail = (email) => (/^\w+([.-]?\w+)*@\w+([.-]?\w+)*(\.\w{2,3})+$/.test(email));
16
+ const validate = () => {
17
+ const result = [];
18
+ if (!email)
19
+ result.push(Locale.label("login.validate.email"));
20
+ else if (!validateEmail(email))
21
+ result.push(Locale.label("login.validate.email"));
22
+ setErrors(result);
23
+ return result.length === 0;
24
+ };
25
+ const reset = (e) => {
26
+ e.preventDefault();
27
+ if (validate()) {
28
+ setIsSubmitting(true);
29
+ let req = { userEmail: email };
30
+ ApiHelper.postAnonymous("/users/forgot", req, "MembershipApi").then((resp) => {
31
+ if (resp.emailed) {
32
+ setErrors([]);
33
+ setSuccessMessage(_jsxs(Typography, { textAlign: "center", marginTop: "35px", children: [Locale.label("login.resetSent"), " ", _jsx("br", {}), _jsx("br", {}), _jsx("button", { style: {
34
+ background: 'none',
35
+ border: 'none',
36
+ color: '#3b82f6',
37
+ fontSize: '14px',
38
+ cursor: 'pointer',
39
+ textDecoration: 'none'
40
+ }, onMouseOver: (e) => e.currentTarget.style.textDecoration = 'underline', onMouseOut: (e) => e.currentTarget.style.textDecoration = 'none', onClick: (e) => { e.preventDefault(); props.loginCallback(); }, children: Locale.label("login.goLogin") })] }));
41
+ setEmail("");
42
+ }
43
+ else {
44
+ setErrors(["We could not find an account with this email address"]);
45
+ setSuccessMessage(_jsx(_Fragment, {}));
46
+ }
47
+ }).finally(() => { setIsSubmitting(false); });
48
+ }
49
+ };
50
+ return (_jsx("div", { style: { minHeight: '100vh', backgroundColor: 'white', display: 'flex', alignItems: 'center', justifyContent: 'center', padding: '16px' }, children: _jsx(Card, { sx: {
51
+ width: '100%',
52
+ maxWidth: { xs: '400px', sm: '500px' },
53
+ backgroundColor: 'white',
54
+ border: '1px solid #e5e7eb',
55
+ boxShadow: '0 10px 15px -3px rgba(0, 0, 0, 0.1), 0 4px 6px -2px rgba(0, 0, 0, 0.05)'
56
+ }, children: _jsxs(CardContent, { sx: { textAlign: 'center', padding: '32px' }, children: [_jsx("div", { style: { marginBottom: '32px' }, children: _jsx("img", { src: "/images/logo-login.png", alt: "Church Logo", style: {
57
+ maxWidth: '100%',
58
+ width: 'auto',
59
+ height: 'auto',
60
+ maxHeight: '80px',
61
+ marginBottom: '16px',
62
+ objectFit: 'contain'
63
+ } }) }), _jsx(Typography, { component: "h1", sx: {
64
+ fontSize: '24px',
65
+ fontWeight: 'bold',
66
+ color: '#111827',
67
+ marginBottom: '8px'
68
+ }, children: Locale.label("login.resetPassword") }), _jsx(Typography, { sx: {
69
+ color: '#6b7280',
70
+ marginBottom: '32px'
71
+ }, children: "Enter your email to receive password reset instructions" }), _jsxs("form", { onSubmit: reset, style: { display: 'flex', flexDirection: 'column', gap: '16px' }, children: [errors.length > 0 && (_jsx("div", { style: {
72
+ backgroundColor: '#fef2f2',
73
+ border: '1px solid #fecaca',
74
+ borderRadius: '6px',
75
+ padding: '12px',
76
+ textAlign: 'left'
77
+ }, children: errors.map((error, index) => (_jsx("div", { style: { color: '#dc2626', fontSize: '14px' }, children: error }, index))) })), successMessage ? (_jsx("div", { style: { textAlign: 'center', display: 'flex', flexDirection: 'column', gap: '16px' }, children: successMessage })) : (_jsxs(_Fragment, { children: [_jsx(Typography, { variant: "body2", sx: { color: '#6b7280', fontSize: '14px', textAlign: 'left' }, children: Locale.label("login.resetInstructions") }), _jsxs("div", { style: { display: 'flex', flexDirection: 'column', gap: '8px' }, children: [_jsx("label", { htmlFor: "forgot-email", style: { fontSize: '14px', fontWeight: 500, color: '#374151', textAlign: 'left' }, children: Locale.label("login.email") }), _jsx(TextField, { id: "forgot-email", name: "forgot-email", type: "email", placeholder: Locale.label("login.email"), value: email, onChange: handleChange, autoFocus: true, required: true, autoComplete: "email", variant: "outlined", fullWidth: true, onKeyDown: (e) => e.key === "Enter" && reset, sx: {
78
+ '& .MuiOutlinedInput-root': {
79
+ backgroundColor: 'white',
80
+ '& fieldset': {
81
+ borderColor: '#d1d5db'
82
+ },
83
+ '&:hover fieldset': {
84
+ borderColor: '#d1d5db'
85
+ },
86
+ '&.Mui-focused fieldset': {
87
+ borderColor: '#3b82f6'
88
+ },
89
+ '& input': {
90
+ color: '#111827',
91
+ fontSize: '16px'
92
+ }
93
+ },
94
+ '& .MuiInputLabel-root': {
95
+ display: 'none'
96
+ }
97
+ } })] }), _jsx(Button, { type: "submit", variant: "contained", fullWidth: true, disabled: isSubmitting, sx: {
98
+ backgroundColor: 'hsl(218, 85%, 55%)',
99
+ color: 'white',
100
+ padding: '12px',
101
+ textTransform: 'none',
102
+ fontSize: '16px',
103
+ fontWeight: 500,
104
+ borderRadius: '6px',
105
+ '&:hover': {
106
+ backgroundColor: 'hsl(218, 85%, 50%)'
107
+ },
108
+ '&:disabled': {
109
+ backgroundColor: '#9ca3af'
110
+ }
111
+ }, children: isSubmitting ? "Sending..." : Locale.label("login.reset") }), _jsxs("div", { style: { textAlign: 'center', display: 'flex', justifyContent: 'center', alignItems: 'center', gap: '8px' }, children: [_jsx("button", { type: "button", onClick: (e) => { e.preventDefault(); props.registerCallback(); }, style: {
112
+ background: 'none',
113
+ border: 'none',
114
+ color: '#3b82f6',
115
+ fontSize: '14px',
116
+ cursor: 'pointer',
117
+ textDecoration: 'none'
118
+ }, onMouseOver: (e) => e.currentTarget.style.textDecoration = 'underline', onMouseOut: (e) => e.currentTarget.style.textDecoration = 'none', children: Locale.label("login.register") }), _jsx("span", { style: { fontSize: '14px', color: '#6b7280' }, children: "|" }), _jsx("button", { type: "button", onClick: (e) => { e.preventDefault(); props.loginCallback(); }, style: {
119
+ background: 'none',
120
+ border: 'none',
121
+ color: '#3b82f6',
122
+ fontSize: '14px',
123
+ cursor: 'pointer',
124
+ textDecoration: 'none'
125
+ }, onMouseOver: (e) => e.currentTarget.style.textDecoration = 'underline', onMouseOut: (e) => e.currentTarget.style.textDecoration = 'none', children: Locale.label("login.login") })] })] }))] })] }) }) }));
126
+ };
127
+ //# sourceMappingURL=Forgot.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Forgot.js","sourceRoot":"","sources":["../../src/components/Forgot.tsx"],"names":[],"mappings":"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"}
@@ -0,0 +1,15 @@
1
+ import React from "react";
2
+ import { PaperProps } from "@mui/material";
3
+ interface Props {
4
+ login: (data: any) => void;
5
+ isSubmitting: boolean;
6
+ setShowRegister: (showRegister: boolean) => void;
7
+ setShowForgot: (showForgot: boolean) => void;
8
+ setErrors: (errors: string[]) => void;
9
+ mainContainerCssProps?: PaperProps;
10
+ defaultEmail?: string;
11
+ defaultPassword?: string;
12
+ }
13
+ export declare const Login: React.FC<Props>;
14
+ export {};
15
+ //# sourceMappingURL=Login.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Login.d.ts","sourceRoot":"","sources":["../../src/components/Login.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAmB,MAAM,OAAO,CAAC;AACxC,OAAO,EAAkB,UAAU,EAAqE,MAAM,eAAe,CAAC;AAI9H,UAAU,KAAK;IACb,KAAK,EAAE,CAAC,IAAI,EAAE,GAAG,KAAK,IAAI,CAAC;IAC3B,YAAY,EAAE,OAAO,CAAC;IACtB,eAAe,EAAE,CAAC,YAAY,EAAE,OAAO,KAAK,IAAI,CAAC;IACjD,aAAa,EAAE,CAAC,UAAU,EAAE,OAAO,KAAK,IAAI,CAAC;IAC7C,SAAS,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,IAAI,CAAC;IACtC,qBAAqB,CAAC,EAAE,UAAU,CAAC;IACnC,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,eAAe,CAAC,EAAE,MAAM,CAAC;CAC1B;AAED,eAAO,MAAM,KAAK,EAAE,KAAK,CAAC,EAAE,CAAC,KAAK,CAuOjC,CAAA"}