@churchapps/apphelper 0.2.35 → 0.2.37

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.
@@ -53,17 +53,17 @@ const QuestionEdit = (_a) => {
53
53
  let answerValue = (props.answer === null) ? "" : props.answer.value;
54
54
  switch (q.fieldType) {
55
55
  case "Textbox":
56
- input = react_1.default.createElement(material_1.TextField, { fullWidth: true, style: noBackground ? { backgroundColor: "white", borderRadius: "4px" } : {}, label: q.title, placeholder: q.placeholder, value: answerValue, onChange: handleChange });
56
+ input = react_1.default.createElement(material_1.TextField, { fullWidth: true, style: noBackground ? { backgroundColor: "white", borderRadius: "4px" } : {}, InputLabelProps: { sx: { fontWeight: "bold" } }, label: q.title, placeholder: q.placeholder, value: answerValue, onChange: handleChange });
57
57
  break;
58
58
  case "Multiple Choice": {
59
59
  input = (react_1.default.createElement(material_1.FormControl, { fullWidth: true, style: noBackground ? { backgroundColor: "white", borderRadius: "4px" } : {} },
60
- react_1.default.createElement(material_1.InputLabel, null, q.title),
60
+ react_1.default.createElement(material_1.InputLabel, { sx: { fontWeight: "bold" } }, q.title),
61
61
  react_1.default.createElement(material_1.Select, { fullWidth: true, label: q.title, value: answerValue, onChange: handleChange }, choiceOptions)));
62
62
  break;
63
63
  }
64
64
  case "Yes/No": {
65
65
  input = (react_1.default.createElement(material_1.FormControl, { fullWidth: true, style: noBackground ? { backgroundColor: "white", borderRadius: "4px" } : {} },
66
- react_1.default.createElement(material_1.InputLabel, null, q.title),
66
+ react_1.default.createElement(material_1.InputLabel, { sx: { fontWeight: "bold" } }, q.title),
67
67
  react_1.default.createElement(material_1.Select, { fullWidth: true, label: q.title, value: answerValue, onChange: handleChange },
68
68
  react_1.default.createElement(material_1.MenuItem, { value: "False" }, "No"),
69
69
  react_1.default.createElement(material_1.MenuItem, { value: "True" }, "Yes"))));
@@ -71,25 +71,25 @@ const QuestionEdit = (_a) => {
71
71
  }
72
72
  case "Checkbox": {
73
73
  input = (react_1.default.createElement(material_1.FormControl, { fullWidth: true, sx: { marginLeft: 1 } },
74
- react_1.default.createElement(material_1.FormLabel, null, q.title),
74
+ react_1.default.createElement(material_1.FormLabel, { sx: { fontWeight: "bold" } }, q.title),
75
75
  react_1.default.createElement(material_1.FormGroup, null, choiceOptions)));
76
76
  break;
77
77
  }
78
78
  case "Whole Number":
79
79
  case "Decimal":
80
- input = react_1.default.createElement(material_1.TextField, { fullWidth: true, style: noBackground ? { backgroundColor: "white", borderRadius: "4px" } : {}, type: "number", InputLabelProps: { shrink: true }, label: q.title, placeholder: q.placeholder, value: answerValue, onChange: handleChange });
80
+ input = react_1.default.createElement(material_1.TextField, { fullWidth: true, style: noBackground ? { backgroundColor: "white", borderRadius: "4px" } : {}, type: "number", InputLabelProps: { shrink: true, sx: { fontWeight: "bold" } }, label: q.title, placeholder: q.placeholder, value: answerValue, onChange: handleChange });
81
81
  break;
82
82
  case "Date":
83
- input = react_1.default.createElement(material_1.TextField, { fullWidth: true, style: noBackground ? { backgroundColor: "white", borderRadius: "4px" } : {}, type: "date", InputLabelProps: { shrink: true }, label: q.title, placeholder: q.placeholder, value: answerValue, onChange: handleChange });
83
+ input = react_1.default.createElement(material_1.TextField, { fullWidth: true, style: noBackground ? { backgroundColor: "white", borderRadius: "4px" } : {}, type: "date", InputLabelProps: { shrink: true, sx: { fontWeight: "bold" } }, label: q.title, placeholder: q.placeholder, value: answerValue, onChange: handleChange });
84
84
  break;
85
85
  case "Phone Number":
86
- input = react_1.default.createElement(mui_tel_input_1.MuiTelInput, { fullWidth: true, style: noBackground ? { backgroundColor: "white", borderRadius: "4px" } : {}, label: q.title, placeholder: "", value: answerValue, onChange: (value) => { props.changeFunction(props.question.id, value); }, defaultCountry: "US", focusOnSelectCountry: true, excludedCountries: ["TA", "AC"] });
86
+ input = react_1.default.createElement(mui_tel_input_1.MuiTelInput, { fullWidth: true, style: noBackground ? { backgroundColor: "white", borderRadius: "4px" } : {}, InputLabelProps: { sx: { fontWeight: "bold" } }, label: q.title, placeholder: "", value: answerValue, onChange: (value) => { props.changeFunction(props.question.id, value); }, defaultCountry: "US", focusOnSelectCountry: true, excludedCountries: ["TA", "AC"] });
87
87
  break;
88
88
  case "Email":
89
- input = react_1.default.createElement(material_1.TextField, { fullWidth: true, style: noBackground ? { backgroundColor: "white", borderRadius: "4px" } : {}, type: "email", label: q.title, placeholder: "john@doe.com", value: answerValue, onChange: handleChange });
89
+ input = react_1.default.createElement(material_1.TextField, { fullWidth: true, style: noBackground ? { backgroundColor: "white", borderRadius: "4px" } : {}, type: "email", InputLabelProps: { sx: { fontWeight: "bold" } }, label: q.title, placeholder: "john@doe.com", value: answerValue, onChange: handleChange });
90
90
  break;
91
91
  case "Text Area":
92
- input = react_1.default.createElement(material_1.TextField, { fullWidth: true, style: noBackground ? { backgroundColor: "white", borderRadius: "4px" } : {}, multiline: true, rows: 4, label: q.title, placeholder: q.placeholder, value: answerValue, onChange: handleChange });
92
+ input = react_1.default.createElement(material_1.TextField, { fullWidth: true, style: noBackground ? { backgroundColor: "white", borderRadius: "4px" } : {}, multiline: true, rows: 4, InputLabelProps: { sx: { fontWeight: "bold" } }, label: q.title, placeholder: q.placeholder, value: answerValue, onChange: handleChange });
93
93
  break;
94
94
  default: return null;
95
95
  }
@@ -1 +1 @@
1
- {"version":3,"file":"QuestionEdit.js","sourceRoot":"","sources":["../../src/components/QuestionEdit.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"QuestionEdit.js","sourceRoot":"","sources":["../../src/components/QuestionEdit.tsx"],"names":[],"mappings":"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"}
@@ -1,5 +1,6 @@
1
1
  import React from "react";
2
2
  interface Props {
3
+ badgeCount?: number;
3
4
  url?: string;
4
5
  target?: string;
5
6
  label: string;
@@ -1 +1 @@
1
- {"version":3,"file":"NavItem.d.ts","sourceRoot":"","sources":["../../../src/components/wrapper/NavItem.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAI1B,UAAU,KAAK;IACb,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,CAAC,EAAE,MAAM,IAAI,CAAC;IACrB,MAAM,CAAC,EAAE,GAAG,CAAC;IACb,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,cAAc,CAAC,EAAE,MAAM,IAAI,CAAC;CAC7B;AAQD,eAAO,MAAM,OAAO,EAAE,KAAK,CAAC,EAAE,CAAC,KAAK,CA4BnC,CAAC"}
1
+ {"version":3,"file":"NavItem.d.ts","sourceRoot":"","sources":["../../../src/components/wrapper/NavItem.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAI1B,UAAU,KAAK;IACd,UAAU,CAAC,EAAE,MAAM,CAAC;IACnB,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,CAAC,EAAE,MAAM,IAAI,CAAC;IACrB,MAAM,CAAC,EAAE,GAAG,CAAC;IACb,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,cAAc,CAAC,EAAE,MAAM,IAAI,CAAC;CAC7B;AAQD,eAAO,MAAM,OAAO,EAAE,KAAK,CAAC,EAAE,CAAC,KAAK,CA+BnC,CAAC"}
@@ -20,7 +20,13 @@ const NavItem = (props) => {
20
20
  isReact = true;
21
21
  }
22
22
  catch (_a) { }
23
- const getIcon = () => react_1.default.createElement(material_1.Icon, null, props.icon);
23
+ const getIcon = () => {
24
+ if (props.badgeCount && props.badgeCount > 0)
25
+ return react_1.default.createElement(material_1.Badge, { badgeContent: props.badgeCount, color: "error" },
26
+ react_1.default.createElement(material_1.Icon, null, props.icon));
27
+ else
28
+ return react_1.default.createElement(material_1.Icon, null, props.icon);
29
+ };
24
30
  const getLinkContents = () => (react_1.default.createElement(material_1.ListItemButton, null,
25
31
  react_1.default.createElement(material_1.Tooltip, { title: props.label || "", arrow: true, placement: "right" },
26
32
  react_1.default.createElement(material_1.ListItemIcon, { sx: { minWidth: "40px" } }, getIcon())),
@@ -1 +1 @@
1
- {"version":3,"file":"NavItem.js","sourceRoot":"","sources":["../../../src/components/wrapper/NavItem.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"NavItem.js","sourceRoot":"","sources":["../../../src/components/wrapper/NavItem.tsx"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"SiteWrapper.d.ts","sourceRoot":"","sources":["../../../src/components/wrapper/SiteWrapper.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAwB,MAAM,OAAO,CAAC;AAE7C,OAAO,EAA8C,mBAAmB,EAAa,MAAM,eAAe,CAAC;AAE3G,OAAO,EAAE,oBAAoB,EAAE,MAAM,qBAAqB,CAAC;AAM3D,UAAU,KAAK;IACb,UAAU,EAAE,GAAG,CAAC,OAAO,CAAC;IACxB,OAAO,EAAE,oBAAoB,CAAC;IAC9B,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;IAC1B,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,CAAC,EAAE,GAAG,CAAC;IACb,UAAU,CAAC,EAAE,mBAAmB,CAAC;IACjC,YAAY,CAAC,EAAE,OAAO,CAAA;CACvB;AAED,eAAO,MAAM,WAAW,EAAE,KAAK,CAAC,EAAE,CAAC,KAAK,CAiFvC,CAAC"}
1
+ {"version":3,"file":"SiteWrapper.d.ts","sourceRoot":"","sources":["../../../src/components/wrapper/SiteWrapper.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAwB,MAAM,OAAO,CAAC;AAE7C,OAAO,EAA8C,mBAAmB,EAAa,MAAM,eAAe,CAAC;AAE3G,OAAO,EAAE,oBAAoB,EAAE,MAAM,qBAAqB,CAAC;AAK3D,UAAU,KAAK;IACb,UAAU,EAAE,GAAG,CAAC,OAAO,CAAC;IACxB,OAAO,EAAE,oBAAoB,CAAC;IAC9B,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;IAC1B,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,CAAC,EAAE,GAAG,CAAC;IACb,UAAU,CAAC,EAAE,mBAAmB,CAAC;IACjC,YAAY,CAAC,EAAE,OAAO,CAAA;CACvB;AAED,eAAO,MAAM,WAAW,EAAE,KAAK,CAAC,EAAE,CAAC,KAAK,CAgFvC,CAAC"}
@@ -19,7 +19,6 @@ const helpers_1 = require("../../helpers");
19
19
  const UserMenu_1 = require("./UserMenu");
20
20
  const useMountedState_1 = require("../../hooks/useMountedState");
21
21
  const SocketHelper_1 = require("../../helpers/SocketHelper");
22
- const NotificationMenu_1 = require("./NotificationMenu");
23
22
  const Drawers_1 = require("./Drawers");
24
23
  const SiteWrapper = props => {
25
24
  var _a, _b, _c, _d, _e;
@@ -74,8 +73,7 @@ const SiteWrapper = props => {
74
73
  react_1.default.createElement(material_1.Icon, null, "menu")),
75
74
  react_1.default.createElement(material_1.Typography, { variant: "h6", noWrap: true }, ((_b = (_a = helpers_1.UserHelper.currentUserChurch) === null || _a === void 0 ? void 0 : _a.church) === null || _b === void 0 ? void 0 : _b.name) || ""),
76
75
  react_1.default.createElement("div", { style: { flex: 1 } }),
77
- helpers_1.UserHelper.user && react_1.default.createElement(NotificationMenu_1.NotificationMenu, { appName: props.appName, onUpdate: loadCounts, counts: notificationCounts, context: props.context, router: props.router }),
78
- helpers_1.UserHelper.user && react_1.default.createElement(UserMenu_1.UserMenu, { profilePicture: helpers_1.PersonHelper.getPhotoUrl((_c = props.context) === null || _c === void 0 ? void 0 : _c.person), userName: `${(_d = helpers_1.UserHelper.user) === null || _d === void 0 ? void 0 : _d.firstName} ${(_e = helpers_1.UserHelper.user) === null || _e === void 0 ? void 0 : _e.lastName}`, userChurches: helpers_1.UserHelper.userChurches, currentUserChurch: helpers_1.UserHelper.currentUserChurch, context: props.context, appName: props.appName, router: props.router }),
76
+ helpers_1.UserHelper.user && react_1.default.createElement(UserMenu_1.UserMenu, { profilePicture: helpers_1.PersonHelper.getPhotoUrl((_c = props.context) === null || _c === void 0 ? void 0 : _c.person), userName: `${(_d = helpers_1.UserHelper.user) === null || _d === void 0 ? void 0 : _d.firstName} ${(_e = helpers_1.UserHelper.user) === null || _e === void 0 ? void 0 : _e.lastName}`, userChurches: helpers_1.UserHelper.userChurches, currentUserChurch: helpers_1.UserHelper.currentUserChurch, context: props.context, appName: props.appName, router: props.router, loadCounts: loadCounts, notificationCounts: notificationCounts }),
79
77
  !helpers_1.UserHelper.user && react_1.default.createElement(material_1.Link, { href: "/login", color: "inherit", style: { textDecoration: "none" } }, "Login"))),
80
78
  react_1.default.createElement(CustomDrawer, { variant: "permanent", open: open, onMouseOver: () => setOpen(true), onMouseLeave: () => setOpen(false) },
81
79
  react_1.default.createElement(material_1.Toolbar, { sx: { display: "flex", alignItems: "center", width: "100%", px: [1] } },
@@ -1 +1 @@
1
- {"version":3,"file":"SiteWrapper.js","sourceRoot":"","sources":["../../../src/components/wrapper/SiteWrapper.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"SiteWrapper.js","sourceRoot":"","sources":["../../../src/components/wrapper/SiteWrapper.tsx"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA,kDAA6C;AAC7C,4CAA4F;AAC5F,2CAA2G;AAC3G,yCAAsC;AAEtC,iEAA8D;AAC9D,6DAA0D;AAC1D,uCAA2F;AAYpF,MAAM,WAAW,GAAoB,KAAK,CAAC,EAAE;;IAClD,MAAM,CAAC,UAAU,EAAE,aAAa,CAAC,GAAG,eAAK,CAAC,QAAQ,EAAU,CAAC;IAC7D,MAAM,CAAC,IAAI,EAAE,OAAO,CAAC,GAAG,eAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;IAC9C,MAAM,CAAC,kBAAkB,EAAE,qBAAqB,CAAC,GAAG,eAAK,CAAC,QAAQ,CAAC,EAAC,iBAAiB,EAAC,CAAC,EAAE,OAAO,EAAC,CAAC,EAAC,CAAC,CAAC;IACrG,MAAM,YAAY,GAAG,GAAG,EAAE,GAAG,OAAO,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;IAC/C,MAAM,SAAS,GAAG,IAAA,iCAAe,GAAE,CAAC;IAEpC,MAAM,YAAY,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,oBAAU,CAAC,CAAC,CAAC,sBAAY,CAAC;IACxD,MAAM,YAAY,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,0BAAgB,CAAC,CAAC,CAAC,4BAAkB,CAAC;IAEpE,MAAM,UAAU,GAAG,GAAG,EAAE;QACtB,mBAAS,CAAC,GAAG,CAAC,4BAA4B,EAAE,cAAc,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE;YACtE,IAAI,CAAC,kBAAkB,IAAI,IAAI,CAAC,SAAS,CAAC,kBAAkB,CAAC,KAAK,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC;gBAAE,qBAAqB,CAAC,IAAI,CAAC,CAAC;QACtH,CAAC,CAAC,CAAC;IACL,CAAC,CAAA;IAED,MAAM,kBAAkB,GAAG,GAAG,EAAE;QAC9B,kFAAkF;QAClF,OAAO,CAAC,GAAG,CAAC,yEAAyE,CAAC,CAAC;QACvF,UAAU,EAAE,CAAC;IACf,CAAC,CAAA;IAID,eAAK,CAAC,SAAS,CAAC,GAAG,EAAE;QACnB,MAAM,aAAa,GAAG,GAAS,EAAE;YAC/B,IAAI,oBAAU,CAAC,iBAAiB,EAAE;gBAChC,aAAa,CAAC,0BAAgB,CAAC,WAAW,CAAC,KAAK,CAAC,UAAU,EAAE,0BAA0B,CAAC,CAAC,CAAC;aAC3F;QACH,CAAC,CAAA,CAAA;QAED,IAAI,CAAC,SAAS,EAAE,EAAE;YAChB,aAAa,EAAE,CAAC;SACjB;IACH,CAAC,EAAE,CAAC,SAAS,EAAE,KAAK,CAAC,UAAU,CAAC,CAAC,CAAC;IAGlC,eAAK,CAAC,SAAS,CAAC,GAAG,EAAE;;QACnB,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,UAAU;YAAE,2BAAY,CAAC,eAAe,CAAC,EAAC,QAAQ,EAAC,IAAI,EAAE,QAAQ,EAAC,IAAI,EAAC,CAAC,CAAC;;YACvF,2BAAY,CAAC,eAAe,CAAC,EAAC,QAAQ,EAAC,MAAA,MAAA,KAAK,CAAC,OAAO,CAAC,UAAU,0CAAE,MAAM,0CAAE,EAAE,EAAE,QAAQ,EAAC,MAAA,MAAA,KAAK,CAAC,OAAO,CAAC,UAAU,0CAAE,MAAM,0CAAE,EAAE,EAAC,CAAC,CAAC;IACpI,CAAC,EAAE,CAAC,KAAK,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC,CAAC;IAE/B,eAAK,CAAC,SAAS,CAAC,GAAG,EAAE;QACnB,2BAAY,CAAC,UAAU,CAAC,cAAc,EAAE,kBAAkB,EAAE,kBAAkB,CAAC,CAAC;QAChF,2BAAY,CAAC,IAAI,EAAE,CAAC;QACpB,UAAU,EAAE,CAAC;QACb,OAAO,CAAC,GAAG,CAAC,uBAAuB,CAAC,CAAC;IACvC,CAAC,EAAE,EAAE,CAAC,CAAC;IAEP,MAAM,QAAQ,GAAkB,EAAE,QAAQ,EAAE,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE,SAAS,EAAE,MAAM,EAAE,CAAA;IAChF,IAAI,CAAC,KAAK,CAAC,YAAY;QAAE,QAAQ,CAAC,QAAQ,GAAG,MAAM,CAAC;IAEpD,OAAO;QACL,8BAAC,YAAY,IAAC,QAAQ,EAAC,UAAU;YAC/B,8BAAC,kBAAO,IAAC,EAAE,EAAE,EAAE,EAAE,EAAE,MAAM,EAAE;gBACzB,8BAAC,qBAAU,IAAC,IAAI,EAAC,OAAO,EAAC,KAAK,EAAC,SAAS,gBAAY,aAAa,EAAC,OAAO,EAAE,YAAY,EAAE,EAAE,kBAAI,WAAW,EAAE,MAAM,IAAK,CAAC,IAAI,IAAI,EAAE,OAAO,EAAE,MAAM,EAAE,CAAC;oBAClJ,8BAAC,eAAI,eAAY,CACN;gBACb,8BAAC,qBAAU,IAAC,OAAO,EAAC,IAAI,EAAC,MAAM,UAAE,CAAA,MAAA,MAAA,oBAAU,CAAC,iBAAiB,0CAAE,MAAM,0CAAE,IAAI,KAAI,EAAE,CAAc;gBAC/F,uCAAK,KAAK,EAAE,EAAE,IAAI,EAAE,CAAC,EAAE,GAAQ;gBAC9B,oBAAU,CAAC,IAAI,IAAI,8BAAC,mBAAQ,IAAC,cAAc,EAAE,sBAAY,CAAC,WAAW,CAAC,MAAA,KAAK,CAAC,OAAO,0CAAE,MAAM,CAAC,EAAE,QAAQ,EAAE,GAAG,MAAA,oBAAU,CAAC,IAAI,0CAAE,SAAS,IAAI,MAAA,oBAAU,CAAC,IAAI,0CAAE,QAAQ,EAAE,EAAE,YAAY,EAAE,oBAAU,CAAC,YAAY,EAAE,iBAAiB,EAAE,oBAAU,CAAC,iBAAiB,EAAE,OAAO,EAAE,KAAK,CAAC,OAAO,EAAE,OAAO,EAAE,KAAK,CAAC,OAAO,EAAE,MAAM,EAAE,KAAK,CAAC,MAAM,EAAE,UAAU,EAAE,UAAU,EAAE,kBAAkB,EAAE,kBAAkB,GAAI;gBACtY,CAAC,oBAAU,CAAC,IAAI,IAAI,8BAAC,eAAI,IAAC,IAAI,EAAC,QAAQ,EAAC,KAAK,EAAC,SAAS,EAAC,KAAK,EAAE,EAAE,cAAc,EAAE,MAAM,EAAE,YAAc,CAChG,CACG;QAEf,8BAAC,YAAY,IAAC,OAAO,EAAC,WAAW,EAAC,IAAI,EAAE,IAAI,EAAE,WAAW,EAAE,GAAG,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,YAAY,EAAE,GAAG,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC;YAChH,8BAAC,kBAAO,IAAC,EAAE,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,QAAQ,EAAE,KAAK,EAAE,MAAM,EAAE,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE;gBAC5E,uCAAK,GAAG,EAAE,UAAU,IAAI,0BAA0B,EAAE,GAAG,EAAC,MAAM,EAAC,KAAK,EAAE,EAAE,QAAQ,EAAE,GAAG,EAAE,GAAI;gBAC3F,uCAAK,KAAK,EAAE,EAAE,cAAc,EAAE,UAAU,EAAE,IAAI,EAAE,CAAC,EAAE,OAAO,EAAE,MAAM,EAAE;oBAClE,8BAAC,qBAAU,IAAC,OAAO,EAAE,YAAY;wBAAE,8BAAC,eAAI,IAAC,KAAK,EAAE,EAAE,KAAK,EAAE,SAAS,EAAE,mBAAqB,CAAa,CAClG,CACE;YACT,KAAK,CAAC,UAAU,CACJ;QACf,8BAAC,cAAG,IAAC,SAAS,EAAC,MAAM,EAAC,EAAE,EAAE,QAAQ;YAChC,8BAAC,oBAAS,IAAC,QAAQ,EAAE,KAAK,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,IAC7C,KAAK,CAAC,QAAQ,CACL,CACR,CACL,CAAA;AACL,CAAC,CAAC;AAhFW,QAAA,WAAW,eAgFtB"}
@@ -1,6 +1,11 @@
1
1
  import React from "react";
2
2
  import { LoginUserChurchInterface, UserContextInterface } from "@churchapps/helpers";
3
3
  interface Props {
4
+ notificationCounts: {
5
+ notificationCount: number;
6
+ pmCount: number;
7
+ };
8
+ loadCounts: () => void;
4
9
  userName: string;
5
10
  profilePicture: string;
6
11
  userChurches: LoginUserChurchInterface[];
@@ -1 +1 @@
1
- {"version":3,"file":"UserMenu.d.ts","sourceRoot":"","sources":["../../../src/components/wrapper/UserMenu.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAK1B,OAAO,EAAE,wBAAwB,EAAE,oBAAoB,EAAE,MAAM,qBAAqB,CAAC;AAOrF,UAAU,KAAK;IACb,QAAQ,EAAE,MAAM,CAAC;IACjB,cAAc,EAAE,MAAM,CAAC;IACvB,YAAY,EAAE,wBAAwB,EAAE,CAAC;IACzC,iBAAiB,EAAE,wBAAwB,CAAC;IAC5C,OAAO,EAAE,oBAAoB,CAAC;IAC9B,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,CAAC,EAAE,GAAG,CAAC;CACd;AAED,eAAO,MAAM,QAAQ,EAAE,KAAK,CAAC,EAAE,CAAC,KAAK,CAoFpC,CAAC"}
1
+ {"version":3,"file":"UserMenu.d.ts","sourceRoot":"","sources":["../../../src/components/wrapper/UserMenu.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAK1B,OAAO,EAAE,wBAAwB,EAAE,oBAAoB,EAAE,MAAM,qBAAqB,CAAC;AAUrF,UAAU,KAAK;IACd,kBAAkB,EAAE;QAAE,iBAAiB,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAA;KAAE,CAAC;IACnE,UAAU,EAAE,MAAM,IAAI,CAAC;IACtB,QAAQ,EAAE,MAAM,CAAC;IACjB,cAAc,EAAE,MAAM,CAAC;IACvB,YAAY,EAAE,wBAAwB,EAAE,CAAC;IACzC,iBAAiB,EAAE,wBAAwB,CAAC;IAC5C,OAAO,EAAE,oBAAoB,CAAC;IAC9B,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,CAAC,EAAE,GAAG,CAAC;CACd;AAED,eAAO,MAAM,QAAQ,EAAE,KAAK,CAAC,EAAE,CAAC,KAAK,CAwHpC,CAAC"}
@@ -14,10 +14,15 @@ const SupportModal_1 = require("../SupportModal");
14
14
  const CommonEnvironmentHelper_1 = require("../../helpers/CommonEnvironmentHelper");
15
15
  const TabPanel_1 = require("../TabPanel");
16
16
  const helpers_1 = require("../../helpers");
17
+ const PrivateMessages_1 = require("./PrivateMessages");
18
+ const Notifications_1 = require("./Notifications");
17
19
  const UserMenu = (props) => {
18
20
  const userName = props.userName;
19
21
  const [anchorEl, setAnchorEl] = react_1.default.useState(null);
20
22
  const [showSupport, setShowSupport] = react_1.default.useState(false);
23
+ const [showPM, setShowPM] = react_1.default.useState(false);
24
+ const [showNotifications, setShowNotifications] = react_1.default.useState(false);
25
+ const [refreshKey, setRefreshKey] = react_1.default.useState(0);
21
26
  const open = Boolean(anchorEl);
22
27
  const handleClick = (e) => {
23
28
  e.preventDefault();
@@ -31,6 +36,8 @@ const UserMenu = (props) => {
31
36
  const jwt = ApiHelper_1.ApiHelper.getConfig("MembershipApi").jwt;
32
37
  const churchId = UserHelper_1.UserHelper.currentUserChurch.church.id;
33
38
  let result = [];
39
+ result.push(react_1.default.createElement(_1.NavItem, { onClick: () => { setShowPM(true); }, label: helpers_1.Locale.label("wrapper.messages"), icon: "mail", key: "/messages", router: props.router, badgeCount: props.notificationCounts.pmCount }));
40
+ result.push(react_1.default.createElement(_1.NavItem, { onClick: () => { setShowNotifications(true); }, label: helpers_1.Locale.label("wrapper.notifications"), icon: "notifications", key: "/notifications", router: props.router, badgeCount: props.notificationCounts.notificationCount }));
34
41
  if (props.appName === "CHUMS")
35
42
  result.push(react_1.default.createElement(_1.NavItem, { url: "/profile", key: "/profile", label: helpers_1.Locale.label("wrapper.profile"), icon: "person", router: props.router }));
36
43
  else
@@ -72,12 +79,32 @@ const UserMenu = (props) => {
72
79
  react_1.default.createElement("div", { style: { maxHeight: '70vh', overflowY: "auto" } },
73
80
  react_1.default.createElement(_1.NavItem, { label: "Back", key: "ChurchBack", icon: "arrow_back", onClick: () => { setTabIndex(0); } }),
74
81
  react_1.default.createElement(ChurchList_1.ChurchList, { userChurches: props.userChurches, currentUserChurch: props.currentUserChurch, context: props.context, onDelete: handleClose })))));
82
+ const getModals = () => {
83
+ if (showPM)
84
+ return (react_1.default.createElement(material_1.Dialog, { open: true, onClose: () => setShowPM(false) },
85
+ react_1.default.createElement(material_1.DialogTitle, null, helpers_1.Locale.label("wrapper.messages")),
86
+ react_1.default.createElement(material_1.DialogContent, null,
87
+ react_1.default.createElement(PrivateMessages_1.PrivateMessages, { context: props.context, refreshKey: refreshKey, onUpdate: props.loadCounts }))));
88
+ else if (showNotifications)
89
+ return (react_1.default.createElement(material_1.Dialog, { open: true, onClose: () => setShowNotifications(false) },
90
+ react_1.default.createElement(material_1.DialogTitle, null, helpers_1.Locale.label("wrapper.notifications")),
91
+ react_1.default.createElement(material_1.DialogContent, null,
92
+ react_1.default.createElement(Notifications_1.Notifications, { context: props.context, appName: props.appName, onUpdate: props.loadCounts, router: props.router }))));
93
+ else
94
+ return react_1.default.createElement(react_1.default.Fragment, null);
95
+ };
96
+ const totalNotifcations = props.notificationCounts.notificationCount + props.notificationCounts.pmCount;
97
+ react_1.default.useEffect(() => {
98
+ console.log("THE COUNTS CHANGED");
99
+ setRefreshKey(Math.random());
100
+ }, [props.notificationCounts]);
75
101
  return (react_1.default.createElement(react_1.default.Fragment, null,
76
102
  showSupport && react_1.default.createElement(SupportModal_1.SupportModal, { onClose: () => setShowSupport(false), appName: props.appName }),
77
103
  react_1.default.createElement(material_1.Button, { onClick: handleClick, color: "inherit", "aria-controls": open ? "account-menu" : undefined, "aria-haspopup": "true", "aria-expanded": open ? "true" : undefined, style: { textTransform: "none" }, endIcon: react_1.default.createElement(material_1.Icon, null, "expand_more") },
78
- react_1.default.createElement(material_1.Avatar, { src: getProfilePic(), sx: { width: 32, height: 32, marginRight: 1 } }),
79
- react_1.default.createElement(material_1.Typography, { color: "inherit", noWrap: true }, userName)),
80
- react_1.default.createElement(material_1.Menu, { anchorEl: anchorEl, id: "account-menu", open: open, onClose: handleClose, onClick: (e) => { handleItemClick(e); }, slotProps: { paper: paperProps }, transformOrigin: { horizontal: "right", vertical: "top" }, anchorOrigin: { horizontal: "right", vertical: "bottom" }, sx: { "& .MuiBox-root": { borderBottom: 0 } } }, getTabs())));
104
+ react_1.default.createElement(material_1.Badge, { badgeContent: totalNotifcations, color: "error", invisible: totalNotifcations === 0 },
105
+ react_1.default.createElement(material_1.Avatar, { src: getProfilePic(), sx: { width: 32, height: 32, marginRight: 1 } }))),
106
+ react_1.default.createElement(material_1.Menu, { anchorEl: anchorEl, id: "account-menu", open: open, onClose: handleClose, onClick: (e) => { handleItemClick(e); }, slotProps: { paper: paperProps }, transformOrigin: { horizontal: "right", vertical: "top" }, anchorOrigin: { horizontal: "right", vertical: "bottom" }, sx: { "& .MuiBox-root": { borderBottom: 0 } } }, getTabs()),
107
+ getModals()));
81
108
  };
82
109
  exports.UserMenu = UserMenu;
83
110
  //# sourceMappingURL=UserMenu.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"UserMenu.js","sourceRoot":"","sources":["../../../src/components/wrapper/UserMenu.tsx"],"names":[],"mappings":";;;;;;AAAA,kDAA0B;AAC1B,uDAAoD;AACpD,yDAAsD;AACtD,4CAA4E;AAC5E,wBAAqC;AAErC,6CAA0C;AAC1C,kDAA+C;AAC/C,mFAAgF;AAChF,0CAAuC;AACvC,2CAAuC;AAYhC,MAAM,QAAQ,GAAoB,CAAC,KAAK,EAAE,EAAE;IACjD,MAAM,QAAQ,GAAG,KAAK,CAAC,QAAQ,CAAC;IAChC,MAAM,CAAC,QAAQ,EAAE,WAAW,CAAC,GAAG,eAAK,CAAC,QAAQ,CAAqB,IAAI,CAAC,CAAC;IACzE,MAAM,CAAC,WAAW,EAAE,cAAc,CAAC,GAAG,eAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;IAC5D,MAAM,IAAI,GAAG,OAAO,CAAC,QAAQ,CAAC,CAAC;IAE/B,MAAM,WAAW,GAAG,CAAC,CAAgC,EAAE,EAAE;QACvD,CAAC,CAAC,cAAc,EAAE,CAAC;QACnB,WAAW,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC;IAC/B,CAAC,CAAC;IAEF,MAAM,WAAW,GAAG,GAAG,EAAE;QACvB,WAAW,CAAC,CAAC,CAAC,CAAC;QACf,WAAW,CAAC,IAAI,CAAC,CAAC;IACpB,CAAC,CAAC;IAEF,MAAM,YAAY,GAAG,GAAG,EAAE;QACxB,MAAM,GAAG,GAAG,qBAAS,CAAC,SAAS,CAAC,eAAe,CAAC,CAAC,GAAG,CAAC;QACrD,MAAM,QAAQ,GAAG,uBAAU,CAAC,iBAAiB,CAAC,MAAM,CAAC,EAAE,CAAC;QACxD,IAAI,MAAM,GAAkB,EAAE,CAAC;QAC/B,IAAI,KAAK,CAAC,OAAO,KAAK,OAAO;YAAE,MAAM,CAAC,IAAI,CAAC,8BAAC,UAAO,IAAC,GAAG,EAAE,UAAU,EAAE,GAAG,EAAC,UAAU,EAAC,KAAK,EAAE,gBAAM,CAAC,KAAK,CAAC,iBAAiB,CAAC,EAAE,IAAI,EAAC,QAAQ,EAAC,MAAM,EAAE,KAAK,CAAC,MAAM,GAAI,CAAC,CAAC;;YAC/J,MAAM,CAAC,IAAI,CAAC,8BAAC,UAAO,IAAC,GAAG,EAAE,GAAG,iDAAuB,CAAC,SAAS,cAAc,GAAG,aAAa,QAAQ,qBAAqB,EAAE,GAAG,EAAC,UAAU,EAAC,KAAK,EAAE,gBAAM,CAAC,KAAK,CAAC,iBAAiB,CAAC,EAAE,IAAI,EAAC,QAAQ,EAAC,QAAQ,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,CAAC,MAAM,GAAI,CAAC,CAAC;QAC/O,MAAM,CAAC,IAAI,CAAC,8BAAC,UAAO,IAAC,GAAG,EAAC,SAAS,EAAC,KAAK,EAAE,gBAAM,CAAC,KAAK,CAAC,gBAAgB,CAAC,EAAE,IAAI,EAAC,QAAQ,EAAC,GAAG,EAAC,SAAS,EAAC,MAAM,EAAE,KAAK,CAAC,MAAM,GAAI,CAAC,CAAC;QAChI,MAAM,CAAC,IAAI,CAAC,8BAAC,UAAO,IAAC,KAAK,EAAC,SAAS,EAAC,GAAG,EAAE,gBAAM,CAAC,KAAK,CAAC,iBAAiB,CAAC,EAAE,IAAI,EAAC,MAAM,EAAC,OAAO,EAAE,GAAG,EAAE,GAAG,cAAc,CAAC,IAAI,CAAC,CAAA,CAAC,CAAC,GAAI,CAAC,CAAC;QACpI,MAAM,CAAC,IAAI,CAAC,uCAAK,KAAK,EAAE,EAAC,SAAS,EAAC,gBAAgB,EAAE,UAAU,EAAC,CAAC,EAAE,aAAa,EAAC,CAAC,EAAC,GAAQ,CAAC,CAAA;QAC5F,MAAM,CAAC,IAAI,CAAC,8BAAC,UAAO,IAAC,KAAK,EAAC,YAAY,EAAC,GAAG,EAAE,gBAAM,CAAC,KAAK,CAAC,mBAAmB,CAAC,EAAE,IAAI,EAAC,MAAM,EAAC,OAAO,EAAE,GAAG,EAAE,GAAG,WAAW,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAI,CAAC,CAAC;QACpI,IAAI,KAAK,CAAC,YAAY,CAAC,MAAM,GAAG,CAAC;YAAE,MAAM,CAAC,IAAI,CAAC,8BAAC,UAAO,IAAC,KAAK,EAAE,gBAAM,CAAC,KAAK,CAAC,sBAAsB,CAAC,EAAE,GAAG,EAAC,eAAe,EAAC,IAAI,EAAC,QAAQ,EAAC,OAAO,EAAE,GAAG,EAAE,GAAG,WAAW,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAI,CAAC,CAAC;QAC/K,OAAO,MAAM,CAAC;IAChB,CAAC,CAAA;IAED,MAAM,aAAa,GAAG,GAAG,EAAE;QACzB,IAAI,KAAK,CAAC,cAAc;YAAE,OAAO,KAAK,CAAC,cAAc,CAAA;;YAChD,OAAO,4BAA4B,CAAC;IAC3C,CAAC,CAAA;IAED,MAAM,UAAU,GAAG;QACjB,SAAS,EAAE,CAAC;QACZ,EAAE,EAAE;YACF,QAAQ,EAAE,SAAS;YACnB,MAAM,EAAE,2CAA2C;YACnD,EAAE,EAAE,GAAG;YACP,mBAAmB,EAAE,EAAE,KAAK,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,GAAG,EAAE,EAAE,EAAE,CAAC,EAAE;YAC/D,QAAQ,EAAE,GAAG;SACd;KACF,CAAC;IAEF,MAAM,eAAe,GAAG,CAAC,CAAmC,EAAE,EAAE;QAC9D,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;IACjB,CAAC,CAAA;IAED,MAAM,CAAC,QAAQ,EAAE,WAAW,CAAC,GAAG,eAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC;IAElD,MAAM,OAAO,GAAG,GAAG,EAAE,CAAC,CACpB,8BAAC,cAAG,IAAC,EAAE,EAAE,EAAE,YAAY,EAAE,CAAC,EAAE,WAAW,EAAE,SAAS,EAAE;QAClD,8BAAC,mBAAQ,IAAC,KAAK,EAAE,QAAQ,EAAE,KAAK,EAAE,CAAC,IAChC,YAAY,EAAE,CACN;QACX,8BAAC,mBAAQ,IAAC,KAAK,EAAE,QAAQ,EAAE,KAAK,EAAE,CAAC;YACjC,8BAAC,UAAO,IAAC,KAAK,EAAC,MAAM,EAAC,GAAG,EAAC,SAAS,EAAC,IAAI,EAAC,YAAY,EAAC,OAAO,EAAE,GAAG,EAAE,GAAG,WAAW,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAI;YAC5F,8BAAC,UAAO,IAAC,iBAAiB,EAAE,KAAK,CAAC,iBAAiB,EAAE,OAAO,EAAE,KAAK,CAAC,OAAO,GAAI,CACtE;QACV,KAAK,CAAC,YAAY,CAAC,MAAM,GAAG,CAAC,IAAI,8BAAC,mBAAQ,IAAC,KAAK,EAAE,QAAQ,EAAE,KAAK,EAAE,CAAC;YACnE,uCAAK,KAAK,EAAE,EAAE,SAAS,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE;gBAClD,8BAAC,UAAO,IAAC,KAAK,EAAC,MAAM,EAAC,GAAG,EAAC,YAAY,EAAC,IAAI,EAAC,YAAY,EAAC,OAAO,EAAE,GAAG,EAAE,GAAG,WAAW,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAI;gBAC/F,8BAAC,uBAAU,IAAC,YAAY,EAAE,KAAK,CAAC,YAAY,EAAE,iBAAiB,EAAE,KAAK,CAAC,iBAAiB,EAAE,OAAO,EAAE,KAAK,CAAC,OAAO,EAAE,QAAQ,EAAE,WAAW,GAAI,CACvI,CACG,CAEP,CACP,CAAC;IAEF,OAAO,CACL;QACG,WAAW,IAAI,8BAAC,2BAAY,IAAC,OAAO,EAAE,GAAG,EAAE,CAAC,cAAc,CAAC,KAAK,CAAC,EAAE,OAAO,EAAE,KAAK,CAAC,OAAO,GAAI;QAC9F,8BAAC,iBAAM,IAAC,OAAO,EAAE,WAAW,EAAE,KAAK,EAAC,SAAS,mBAAgB,IAAI,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC,SAAS,mBAAgB,MAAM,mBAAgB,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS,EAAE,KAAK,EAAE,EAAE,aAAa,EAAE,MAAM,EAAE,EAAE,OAAO,EAAE,8BAAC,eAAI,sBAAmB;YAChO,8BAAC,iBAAM,IAAC,GAAG,EAAE,aAAa,EAAE,EAAE,EAAE,EAAE,EAAE,KAAK,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,WAAW,EAAE,CAAC,EAAE,GAAW;YACtF,8BAAC,qBAAU,IAAC,KAAK,EAAC,SAAS,EAAC,MAAM,UAAE,QAAQ,CAAc,CACnD;QAET,8BAAC,eAAI,IAAC,QAAQ,EAAE,QAAQ,EAAE,EAAE,EAAC,cAAc,EAAC,IAAI,EAAE,IAAI,EAAE,OAAO,EAAE,WAAW,EAAE,OAAO,EAAE,CAAC,CAAC,EAAE,EAAE,GAAG,eAAe,CAAC,CAAC,CAAC,CAAA,CAAC,CAAC,EAAE,SAAS,EAAE,EAAE,KAAK,EAAE,UAAU,EAAE,EAAE,eAAe,EAAE,EAAE,UAAU,EAAE,OAAO,EAAE,QAAQ,EAAE,KAAK,EAAE,EAAE,YAAY,EAAE,EAAE,UAAU,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE,EAAE,EAAE,EAAE,gBAAgB,EAAE,EAAE,YAAY,EAAE,CAAC,EAAE,EAAE,IACxT,OAAO,EAAE,CACL,CACN,CACJ,CAAC;AACJ,CAAC,CAAC;AApFW,QAAA,QAAQ,YAoFnB"}
1
+ {"version":3,"file":"UserMenu.js","sourceRoot":"","sources":["../../../src/components/wrapper/UserMenu.tsx"],"names":[],"mappings":"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"}
@@ -259,7 +259,9 @@
259
259
  "chatWith": "Chat with",
260
260
  "deleteChurch": "Delete",
261
261
  "logout": "Logout",
262
+ "messages": "Messages",
262
263
  "newPrivateMessage": "New Private Message",
264
+ "notifications": "Notifications",
263
265
  "privateMessage": "Private Message",
264
266
  "profile": "Profile",
265
267
  "searchForPerson": "Search for a person",
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@churchapps/apphelper",
3
- "version": "0.2.35",
3
+ "version": "0.2.37",
4
4
  "description": "Library of helper functions for React and NextJS ChurchApps",
5
5
  "main": "dist/index.js",
6
6
  "scripts": {
@@ -259,7 +259,9 @@
259
259
  "chatWith": "Chat with",
260
260
  "deleteChurch": "Delete",
261
261
  "logout": "Logout",
262
+ "messages": "Messages",
262
263
  "newPrivateMessage": "New Private Message",
264
+ "notifications": "Notifications",
263
265
  "privateMessage": "Private Message",
264
266
  "profile": "Profile",
265
267
  "searchForPerson": "Search for a person",
@@ -42,11 +42,11 @@ export const QuestionEdit: React.FC<Props> = ({noBackground = false, ...props})
42
42
 
43
43
  let answerValue = (props.answer === null) ? "" : props.answer.value
44
44
  switch (q.fieldType) {
45
- case "Textbox": input = <TextField fullWidth style={noBackground ? {backgroundColor: "white", borderRadius: "4px"} : {}} label={q.title} placeholder={q.placeholder} value={answerValue} onChange={handleChange} />; break;
45
+ case "Textbox": input = <TextField fullWidth style={noBackground ? {backgroundColor: "white", borderRadius: "4px"} : {}} InputLabelProps={{ sx: { fontWeight: "bold" } }} label={q.title} placeholder={q.placeholder} value={answerValue} onChange={handleChange} />; break;
46
46
  case "Multiple Choice": {
47
47
  input = (
48
48
  <FormControl fullWidth style={noBackground ? {backgroundColor: "white", borderRadius: "4px"} : {}}>
49
- <InputLabel>{q.title}</InputLabel>
49
+ <InputLabel sx={{ fontWeight: "bold" }}>{q.title}</InputLabel>
50
50
  <Select fullWidth label={q.title} value={answerValue} onChange={handleChange}>{choiceOptions}</Select>
51
51
  </FormControl>);
52
52
  break;
@@ -54,7 +54,7 @@ export const QuestionEdit: React.FC<Props> = ({noBackground = false, ...props})
54
54
  case "Yes/No": {
55
55
  input = (
56
56
  <FormControl fullWidth style={noBackground ? {backgroundColor: "white", borderRadius: "4px"} : {}}>
57
- <InputLabel>{q.title}</InputLabel>
57
+ <InputLabel sx={{ fontWeight: "bold" }}>{q.title}</InputLabel>
58
58
  <Select fullWidth label={q.title} value={answerValue} onChange={handleChange}>
59
59
  <MenuItem value="False">No</MenuItem>
60
60
  <MenuItem value="True">Yes</MenuItem>
@@ -65,7 +65,7 @@ export const QuestionEdit: React.FC<Props> = ({noBackground = false, ...props})
65
65
  case "Checkbox": {
66
66
  input = (
67
67
  <FormControl fullWidth sx={{ marginLeft: 1 }}>
68
- <FormLabel>{q.title}</FormLabel>
68
+ <FormLabel sx={{ fontWeight: "bold" }}>{q.title}</FormLabel>
69
69
  <FormGroup>
70
70
  {choiceOptions}
71
71
  </FormGroup>
@@ -75,12 +75,12 @@ export const QuestionEdit: React.FC<Props> = ({noBackground = false, ...props})
75
75
  }
76
76
  case "Whole Number":
77
77
  case "Decimal":
78
- input = <TextField fullWidth style={noBackground ? {backgroundColor: "white", borderRadius: "4px"} : {}} type="number" InputLabelProps={{shrink: true}} label={q.title} placeholder={q.placeholder} value={answerValue} onChange={handleChange} />;
78
+ input = <TextField fullWidth style={noBackground ? {backgroundColor: "white", borderRadius: "4px"} : {}} type="number" InputLabelProps={{ shrink: true, sx: { fontWeight: "bold" } }} label={q.title} placeholder={q.placeholder} value={answerValue} onChange={handleChange} />;
79
79
  break;
80
- case "Date": input = <TextField fullWidth style={noBackground ? {backgroundColor: "white", borderRadius: "4px"} : {}} type="date" InputLabelProps={{shrink: true}} label={q.title} placeholder={q.placeholder} value={answerValue} onChange={handleChange} />; break;
81
- case "Phone Number": input = <MuiTelInput fullWidth style={noBackground ? {backgroundColor: "white", borderRadius: "4px"} : {}} label={q.title} placeholder="" value={answerValue} onChange={(value) => { props.changeFunction(props.question.id, value); }} defaultCountry="US" focusOnSelectCountry excludedCountries={["TA", "AC"]} />; break;
82
- case "Email": input = <TextField fullWidth style={noBackground ? {backgroundColor: "white", borderRadius: "4px"} : {}} type="email" label={q.title} placeholder="john@doe.com" value={answerValue} onChange={handleChange} />; break;
83
- case "Text Area": input = <TextField fullWidth style={noBackground ? {backgroundColor: "white", borderRadius: "4px"} : {}} multiline rows={4} label={q.title} placeholder={q.placeholder} value={answerValue} onChange={handleChange} />; break;
80
+ case "Date": input = <TextField fullWidth style={noBackground ? {backgroundColor: "white", borderRadius: "4px"} : {}} type="date" InputLabelProps={{ shrink: true, sx: { fontWeight: "bold" } }} label={q.title} placeholder={q.placeholder} value={answerValue} onChange={handleChange} />; break;
81
+ case "Phone Number": input = <MuiTelInput fullWidth style={noBackground ? {backgroundColor: "white", borderRadius: "4px"} : {}} InputLabelProps={{ sx: { fontWeight: "bold" } }} label={q.title} placeholder="" value={answerValue} onChange={(value) => { props.changeFunction(props.question.id, value); }} defaultCountry="US" focusOnSelectCountry excludedCountries={["TA", "AC"]} />; break;
82
+ case "Email": input = <TextField fullWidth style={noBackground ? {backgroundColor: "white", borderRadius: "4px"} : {}} type="email" InputLabelProps={{ sx: { fontWeight: "bold" } }} label={q.title} placeholder="john@doe.com" value={answerValue} onChange={handleChange} />; break;
83
+ case "Text Area": input = <TextField fullWidth style={noBackground ? {backgroundColor: "white", borderRadius: "4px"} : {}} multiline rows={4} InputLabelProps={{ sx: { fontWeight: "bold" } }} label={q.title} placeholder={q.placeholder} value={answerValue} onChange={handleChange} />; break;
84
84
  default: return null;
85
85
  }
86
86
  return input;
@@ -1,8 +1,9 @@
1
1
  import React from "react";
2
- import { Icon, IconButton, ListItemButton, ListItemIcon, ListItemText, styled, Tooltip } from "@mui/material";
2
+ import { Badge, Icon, IconButton, ListItemButton, ListItemIcon, ListItemText, styled, Tooltip } from "@mui/material";
3
3
  import { NavLink, useLocation } from "react-router-dom";
4
4
 
5
5
  interface Props {
6
+ badgeCount?: number;
6
7
  url?: string;
7
8
  target?: string;
8
9
  label: string;
@@ -29,7 +30,10 @@ export const NavItem: React.FC<Props> = (props) => {
29
30
  if (a !== null) isReact = true;
30
31
  } catch { }
31
32
 
32
- const getIcon = () => <Icon>{props.icon}</Icon>
33
+ const getIcon = () => {
34
+ if (props.badgeCount && props.badgeCount > 0) return <Badge badgeContent={props.badgeCount} color="error"><Icon>{props.icon}</Icon></Badge>
35
+ else return <Icon>{props.icon}</Icon>
36
+ }
33
37
 
34
38
  const getLinkContents = () => (<ListItemButton>
35
39
  <Tooltip title={props.label || ""} arrow placement="right">
@@ -5,7 +5,6 @@ import { UserMenu } from "./UserMenu";
5
5
  import { UserContextInterface } from "@churchapps/helpers";
6
6
  import { useMountedState } from "../../hooks/useMountedState";
7
7
  import { SocketHelper } from "../../helpers/SocketHelper";
8
- import { NotificationMenu } from "./NotificationMenu";
9
8
  import { ClosedDrawer, ClosedDrawerAppBar, OpenDrawer, OpenDrawerAppBar } from "./Drawers";
10
9
 
11
10
  interface Props {
@@ -78,8 +77,7 @@ export const SiteWrapper: React.FC<Props> = props => {
78
77
  </IconButton>
79
78
  <Typography variant="h6" noWrap>{UserHelper.currentUserChurch?.church?.name || ""}</Typography>
80
79
  <div style={{ flex: 1 }}></div>
81
- {UserHelper.user && <NotificationMenu appName={props.appName} onUpdate={loadCounts} counts={notificationCounts} context={props.context} router={props.router} />}
82
- {UserHelper.user && <UserMenu profilePicture={PersonHelper.getPhotoUrl(props.context?.person)} userName={`${UserHelper.user?.firstName} ${UserHelper.user?.lastName}`} userChurches={UserHelper.userChurches} currentUserChurch={UserHelper.currentUserChurch} context={props.context} appName={props.appName} router={props.router} />}
80
+ {UserHelper.user && <UserMenu profilePicture={PersonHelper.getPhotoUrl(props.context?.person)} userName={`${UserHelper.user?.firstName} ${UserHelper.user?.lastName}`} userChurches={UserHelper.userChurches} currentUserChurch={UserHelper.currentUserChurch} context={props.context} appName={props.appName} router={props.router} loadCounts={loadCounts} notificationCounts={notificationCounts} />}
83
81
  {!UserHelper.user && <Link href="/login" color="inherit" style={{ textDecoration: "none" }}>Login</Link>}
84
82
  </Toolbar>
85
83
  </CustomAppBar>
@@ -1,7 +1,7 @@
1
1
  import React from "react";
2
2
  import { ApiHelper } from "../../helpers/ApiHelper";
3
3
  import { UserHelper } from "../../helpers/UserHelper";
4
- import { Avatar, Menu, Typography, Icon, Button, Box } from "@mui/material";
4
+ import { Avatar, Menu, Typography, Icon, Button, Box, Badge, Modal, Dialog, DialogContent, DialogTitle } from "@mui/material";
5
5
  import { NavItem, AppList } from ".";
6
6
  import { LoginUserChurchInterface, UserContextInterface } from "@churchapps/helpers";
7
7
  import { ChurchList } from "./ChurchList";
@@ -9,8 +9,13 @@ import { SupportModal } from "../SupportModal";
9
9
  import { CommonEnvironmentHelper } from "../../helpers/CommonEnvironmentHelper";
10
10
  import { TabPanel } from "../TabPanel";
11
11
  import { Locale } from "../../helpers";
12
+ import { PrivateMessages } from "./PrivateMessages";
13
+ import { Notifications } from "./Notifications";
14
+
12
15
 
13
16
  interface Props {
17
+ notificationCounts: { notificationCount: number, pmCount: number };
18
+ loadCounts: () => void;
14
19
  userName: string;
15
20
  profilePicture: string;
16
21
  userChurches: LoginUserChurchInterface[];
@@ -24,8 +29,12 @@ export const UserMenu: React.FC<Props> = (props) => {
24
29
  const userName = props.userName;
25
30
  const [anchorEl, setAnchorEl] = React.useState<null | HTMLElement>(null);
26
31
  const [showSupport, setShowSupport] = React.useState(false);
32
+ const [showPM, setShowPM] = React.useState(false);
33
+ const [showNotifications, setShowNotifications] = React.useState(false);
34
+ const [refreshKey, setRefreshKey] = React.useState(0);
27
35
  const open = Boolean(anchorEl);
28
36
 
37
+
29
38
  const handleClick = (e: React.MouseEvent<HTMLElement>) => {
30
39
  e.preventDefault();
31
40
  setAnchorEl(e.currentTarget);
@@ -40,6 +49,12 @@ export const UserMenu: React.FC<Props> = (props) => {
40
49
  const jwt = ApiHelper.getConfig("MembershipApi").jwt;
41
50
  const churchId = UserHelper.currentUserChurch.church.id;
42
51
  let result: JSX.Element[] = [];
52
+
53
+
54
+ result.push(<NavItem onClick={() => {setShowPM(true)}} label={Locale.label("wrapper.messages")} icon="mail" key="/messages" router={props.router} badgeCount={props.notificationCounts.pmCount} />);
55
+
56
+ result.push(<NavItem onClick={() => {setShowNotifications(true)}} label={Locale.label("wrapper.notifications")} icon="notifications" key="/notifications" router={props.router} badgeCount={props.notificationCounts.notificationCount} />);
57
+
43
58
  if (props.appName === "CHUMS") result.push(<NavItem url={"/profile"} key="/profile" label={Locale.label("wrapper.profile")} icon="person" router={props.router} />);
44
59
  else result.push(<NavItem url={`${CommonEnvironmentHelper.ChumsRoot}/login?jwt=${jwt}&churchId=${churchId}&returnUrl=/profile`} key="/profile" label={Locale.label("wrapper.profile")} icon="person" external={true} router={props.router} />);
45
60
  result.push(<NavItem url="/logout" label={Locale.label("wrapper.logout")} icon="logout" key="/logout" router={props.router} />);
@@ -91,17 +106,43 @@ export const UserMenu: React.FC<Props> = (props) => {
91
106
  </Box>
92
107
  );
93
108
 
109
+ const getModals = () => {
110
+ if (showPM) return (
111
+ <Dialog open onClose={() => setShowPM(false)}>
112
+ <DialogTitle>{Locale.label("wrapper.messages")}</DialogTitle>
113
+ <DialogContent>
114
+ <PrivateMessages context={props.context} refreshKey={refreshKey} onUpdate={props.loadCounts} />
115
+ </DialogContent>
116
+ </Dialog>);
117
+ else if (showNotifications) return (<Dialog open onClose={() => setShowNotifications(false)}>
118
+ <DialogTitle>{Locale.label("wrapper.notifications")}</DialogTitle>
119
+ <DialogContent>
120
+ <Notifications context={props.context} appName={props.appName} onUpdate={props.loadCounts} router={props.router} />
121
+ </DialogContent>
122
+ </Dialog>);
123
+ else return <></>;
124
+ }
125
+
126
+ const totalNotifcations = props.notificationCounts.notificationCount + props.notificationCounts.pmCount;
127
+
128
+ React.useEffect(() => {
129
+ console.log("THE COUNTS CHANGED")
130
+ setRefreshKey(Math.random());
131
+ }, [props.notificationCounts]);
132
+
94
133
  return (
95
134
  <>
96
135
  {showSupport && <SupportModal onClose={() => setShowSupport(false)} appName={props.appName} />}
97
136
  <Button onClick={handleClick} color="inherit" aria-controls={open ? "account-menu" : undefined} aria-haspopup="true" aria-expanded={open ? "true" : undefined} style={{ textTransform: "none" }} endIcon={<Icon>expand_more</Icon>}>
98
- <Avatar src={getProfilePic()} sx={{ width: 32, height: 32, marginRight: 1 }}></Avatar>
99
- <Typography color="inherit" noWrap>{userName}</Typography>
137
+ <Badge badgeContent={totalNotifcations} color="error" invisible={totalNotifcations===0}>
138
+ <Avatar src={getProfilePic()} sx={{ width: 32, height: 32, marginRight: 1 }}></Avatar>
139
+ </Badge>
100
140
  </Button>
101
141
 
102
142
  <Menu anchorEl={anchorEl} id="account-menu" open={open} onClose={handleClose} onClick={(e) => { handleItemClick(e) }} slotProps={{ paper: paperProps }} transformOrigin={{ horizontal: "right", vertical: "top" }} anchorOrigin={{ horizontal: "right", vertical: "bottom" }} sx={{ "& .MuiBox-root": { borderBottom: 0 } }}>
103
143
  {getTabs()}
104
144
  </Menu>
145
+ {getModals()}
105
146
  </>
106
147
  );
107
148
  };
@@ -1,15 +0,0 @@
1
- import React from "react";
2
- import { UserContextInterface } from "@churchapps/helpers";
3
- interface Props {
4
- appName: string;
5
- counts: {
6
- notificationCount: number;
7
- pmCount: number;
8
- };
9
- context: UserContextInterface;
10
- router?: any;
11
- onUpdate: () => void;
12
- }
13
- export declare const NotificationMenu: React.FC<Props>;
14
- export {};
15
- //# sourceMappingURL=NotificationMenu.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"NotificationMenu.d.ts","sourceRoot":"","sources":["../../../src/components/wrapper/NotificationMenu.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,OAAO,EAAE,oBAAoB,EAAE,MAAM,qBAAqB,CAAC;AAK3D,UAAU,KAAK;IACb,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE;QAAE,iBAAiB,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAA;KAAE,CAAC;IACvD,OAAO,EAAE,oBAAoB,CAAC;IAC9B,MAAM,CAAC,EAAE,GAAG,CAAC;IACb,QAAQ,EAAE,MAAM,IAAI,CAAC;CACtB;AAED,eAAO,MAAM,gBAAgB,EAAE,KAAK,CAAC,EAAE,CAAC,KAAK,CA6E5C,CAAC"}
@@ -1,74 +0,0 @@
1
- "use strict";
2
- var __importDefault = (this && this.__importDefault) || function (mod) {
3
- return (mod && mod.__esModule) ? mod : { "default": mod };
4
- };
5
- Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.NotificationMenu = void 0;
7
- const react_1 = __importDefault(require("react"));
8
- const material_1 = require("@mui/material");
9
- const PrivateMessages_1 = require("./PrivateMessages");
10
- const Notifications_1 = require("./Notifications");
11
- const base_1 = require("@mui/base");
12
- const NotificationMenu = (props) => {
13
- const [anchorEl, setAnchorEl] = react_1.default.useState(null);
14
- const [refreshKey, setRefreshKey] = react_1.default.useState(0);
15
- const open = Boolean(anchorEl);
16
- const handleClick = (e) => {
17
- e.preventDefault();
18
- setAnchorEl(e.currentTarget);
19
- };
20
- const handleClose = () => {
21
- props.onUpdate();
22
- setAnchorEl(null);
23
- };
24
- const paperProps = {
25
- elevation: 0,
26
- sx: {
27
- overflow: "visible",
28
- filter: "drop-shadow(0px 2px 8px rgba(0,0,0,0.32))",
29
- mt: 1.5,
30
- "& .MuiAvatar-root": { width: 32, height: 32, ml: -0.5, mr: 1 },
31
- minWidth: 450
32
- }
33
- };
34
- const handleItemClick = (e) => {
35
- console.log(e);
36
- };
37
- const [tabIndex, setTabIndex] = react_1.default.useState(0);
38
- function handleChange(el, newValue) {
39
- console.log("SETTING TAB INDEX", newValue);
40
- setTabIndex(newValue);
41
- }
42
- const totalCount = props.counts.notificationCount + props.counts.pmCount;
43
- let icon = react_1.default.createElement(material_1.Icon, null, "notifications");
44
- if (totalCount > 0)
45
- icon = react_1.default.createElement(react_1.default.Fragment, null,
46
- icon,
47
- react_1.default.createElement(base_1.Badge, { style: { backgroundColor: "#FF0000", padding: "0px 5px 0px 5px", borderRadius: 5 }, badgeContent: totalCount, color: "error" }));
48
- react_1.default.useEffect(() => {
49
- console.log("THE COUNTS CHANGED");
50
- setRefreshKey(Math.random());
51
- }, [props.counts]);
52
- react_1.default.useEffect(() => {
53
- console.log("RELOADED NotificationMenu");
54
- }, []);
55
- /*
56
- <TabPanel value={tabIndex} index={0}>
57
- <PrivateMessages context={props.context} refreshKey={refreshKey} />
58
- </TabPanel>
59
- <TabPanel value={tabIndex} index={1}>
60
- <Notifications context={props.context} />
61
- </TabPanel>
62
- */
63
- return (react_1.default.createElement(react_1.default.Fragment, null,
64
- react_1.default.createElement(material_1.Button, { onClick: handleClick, color: "inherit", "aria-controls": open ? "account-menu" : undefined, "aria-haspopup": "true", "aria-expanded": open ? "true" : undefined, style: { textTransform: "none" } }, icon),
65
- react_1.default.createElement(material_1.Menu, { anchorEl: anchorEl, id: "account-menu", open: open, onClose: handleClose, onClick: (e) => { handleItemClick(e); }, PaperProps: paperProps, transformOrigin: { horizontal: "right", vertical: "top" }, anchorOrigin: { horizontal: "right", vertical: "bottom" }, sx: { "& .MuiBox-root": { borderBottom: 0 } } },
66
- react_1.default.createElement(material_1.Box, { sx: { borderBottom: 1, borderColor: "divider" } },
67
- react_1.default.createElement(material_1.Tabs, { variant: "fullWidth", value: tabIndex, onChange: handleChange },
68
- react_1.default.createElement(material_1.Tab, { label: "Messages", icon: (props.counts.pmCount > 0) ? react_1.default.createElement(material_1.Icon, { style: { color: "#FF0000" } }, "notifications") : react_1.default.createElement(react_1.default.Fragment, null), iconPosition: "end" }),
69
- react_1.default.createElement(material_1.Tab, { label: "Notifications", icon: (props.counts.notificationCount > 0) ? react_1.default.createElement(material_1.Icon, { style: { color: "#FF0000" } }, "notifications") : react_1.default.createElement(react_1.default.Fragment, null), iconPosition: "end" })),
70
- tabIndex === 0 && react_1.default.createElement(PrivateMessages_1.PrivateMessages, { context: props.context, refreshKey: refreshKey, onUpdate: props.onUpdate }),
71
- tabIndex === 1 && react_1.default.createElement(Notifications_1.Notifications, { context: props.context, appName: props.appName, onUpdate: props.onUpdate, router: props.router })))));
72
- };
73
- exports.NotificationMenu = NotificationMenu;
74
- //# sourceMappingURL=NotificationMenu.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"NotificationMenu.js","sourceRoot":"","sources":["../../../src/components/wrapper/NotificationMenu.tsx"],"names":[],"mappings":"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"}
@@ -1,93 +0,0 @@
1
- import React from "react";
2
- import { Menu, Icon, Button, Box, Tabs, Tab } from "@mui/material";
3
- import { UserContextInterface } from "@churchapps/helpers";
4
- import { PrivateMessages } from "./PrivateMessages";
5
- import { Notifications } from "./Notifications";
6
- import { Badge } from "@mui/base";
7
-
8
- interface Props {
9
- appName: string;
10
- counts: { notificationCount: number, pmCount: number };
11
- context: UserContextInterface;
12
- router?: any;
13
- onUpdate: () => void;
14
- }
15
-
16
- export const NotificationMenu: React.FC<Props> = (props) => {
17
- const [anchorEl, setAnchorEl] = React.useState<null | HTMLElement>(null);
18
- const [refreshKey, setRefreshKey] = React.useState(0);
19
- const open = Boolean(anchorEl);
20
-
21
- const handleClick = (e: React.MouseEvent<HTMLElement>) => {
22
- e.preventDefault();
23
- setAnchorEl(e.currentTarget);
24
- };
25
-
26
- const handleClose = () => {
27
- props.onUpdate();
28
- setAnchorEl(null);
29
- };
30
-
31
-
32
- const paperProps = {
33
- elevation: 0,
34
- sx: {
35
- overflow: "visible",
36
- filter: "drop-shadow(0px 2px 8px rgba(0,0,0,0.32))",
37
- mt: 1.5,
38
- "& .MuiAvatar-root": { width: 32, height: 32, ml: -0.5, mr: 1 },
39
- minWidth: 450
40
- }
41
- };
42
-
43
- const handleItemClick = (e: React.MouseEvent<HTMLDivElement>) => {
44
- console.log(e);
45
- }
46
-
47
- const [tabIndex, setTabIndex] = React.useState(0);
48
-
49
- function handleChange(el: any, newValue: any) {
50
- console.log("SETTING TAB INDEX", newValue)
51
- setTabIndex(newValue);
52
- }
53
-
54
- const totalCount = props.counts.notificationCount + props.counts.pmCount;
55
-
56
- let icon = <Icon>notifications</Icon>;
57
- if (totalCount>0) icon = <>{icon}<Badge style={{backgroundColor:"#FF0000", padding:"0px 5px 0px 5px", borderRadius:5}} badgeContent={totalCount} color="error" /></>
58
-
59
- React.useEffect(() => {
60
- console.log("THE COUNTS CHANGED")
61
- setRefreshKey(Math.random());
62
- }, [props.counts]);
63
-
64
- React.useEffect(() => {
65
- console.log("RELOADED NotificationMenu")
66
- }, []);
67
-
68
- /*
69
- <TabPanel value={tabIndex} index={0}>
70
- <PrivateMessages context={props.context} refreshKey={refreshKey} />
71
- </TabPanel>
72
- <TabPanel value={tabIndex} index={1}>
73
- <Notifications context={props.context} />
74
- </TabPanel>
75
- */
76
- return (
77
- <>
78
- <Button onClick={handleClick} color="inherit" aria-controls={open ? "account-menu" : undefined} aria-haspopup="true" aria-expanded={open ? "true" : undefined} style={{ textTransform: "none" }}>
79
- {icon}
80
- </Button>
81
- <Menu anchorEl={anchorEl} id="account-menu" open={open} onClose={handleClose} onClick={(e) => { handleItemClick(e) }} PaperProps={paperProps} transformOrigin={{ horizontal: "right", vertical: "top" }} anchorOrigin={{ horizontal: "right", vertical: "bottom" }} sx={{ "& .MuiBox-root": { borderBottom: 0 } }}>
82
- <Box sx={{ borderBottom: 1, borderColor: "divider" }}>
83
- <Tabs variant="fullWidth" value={tabIndex} onChange={handleChange}>
84
- <Tab label="Messages" icon={(props.counts.pmCount>0) ? <Icon style={{color:"#FF0000"}}>notifications</Icon> : <></>} iconPosition="end" />
85
- <Tab label="Notifications" icon={(props.counts.notificationCount>0) ? <Icon style={{color:"#FF0000"}}>notifications</Icon> : <></>} iconPosition="end" />
86
- </Tabs>
87
- {tabIndex === 0 && <PrivateMessages context={props.context} refreshKey={refreshKey} onUpdate={props.onUpdate} />}
88
- {tabIndex === 1 && <Notifications context={props.context} appName={props.appName} onUpdate={props.onUpdate} router={props.router} />}
89
- </Box>
90
- </Menu>
91
- </>
92
- );
93
- };