@churchapps/apphelper 0.1.5 → 0.1.7

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 (218) hide show
  1. package/.eslintignore +3 -3
  2. package/.eslintrc.json +22 -22
  3. package/LICENSE +21 -21
  4. package/README.md +24 -22
  5. package/dist/components/FormSubmissionEdit.js +1 -1
  6. package/dist/components/FormSubmissionEdit.js.map +1 -1
  7. package/dist/components/markdownEditor/editor.css +787 -787
  8. package/dist/components/markdownEditor/images/icons/arrow-clockwise.svg +3 -3
  9. package/dist/components/markdownEditor/images/icons/arrow-counterclockwise.svg +3 -3
  10. package/dist/components/markdownEditor/images/icons/chat-square-quote.svg +3 -3
  11. package/dist/components/markdownEditor/images/icons/chevron-down.svg +2 -2
  12. package/dist/components/markdownEditor/images/icons/code.svg +2 -2
  13. package/dist/components/markdownEditor/images/icons/journal-code.svg +4 -4
  14. package/dist/components/markdownEditor/images/icons/journal-text.svg +4 -4
  15. package/dist/components/markdownEditor/images/icons/justify.svg +2 -2
  16. package/dist/components/markdownEditor/images/icons/link.svg +3 -3
  17. package/dist/components/markdownEditor/images/icons/list-ol.svg +3 -3
  18. package/dist/components/markdownEditor/images/icons/list-ul.svg +2 -2
  19. package/dist/components/markdownEditor/images/icons/pencil-fill.svg +2 -2
  20. package/dist/components/markdownEditor/images/icons/text-center.svg +2 -2
  21. package/dist/components/markdownEditor/images/icons/text-left.svg +2 -2
  22. package/dist/components/markdownEditor/images/icons/text-paragraph.svg +2 -2
  23. package/dist/components/markdownEditor/images/icons/text-right.svg +2 -2
  24. package/dist/components/markdownEditor/images/icons/type-bold.svg +2 -2
  25. package/dist/components/markdownEditor/images/icons/type-h1.svg +2 -2
  26. package/dist/components/markdownEditor/images/icons/type-h2.svg +2 -2
  27. package/dist/components/markdownEditor/images/icons/type-h3.svg +2 -2
  28. package/dist/components/markdownEditor/images/icons/type-h4.svg +12 -12
  29. package/dist/components/markdownEditor/images/icons/type-italic.svg +2 -2
  30. package/dist/components/markdownEditor/images/icons/type-strikethrough.svg +2 -2
  31. package/dist/components/markdownEditor/images/icons/type-underline.svg +2 -2
  32. package/dist/components/notes/Notes.d.ts +1 -0
  33. package/dist/components/notes/Notes.d.ts.map +1 -1
  34. package/dist/components/notes/Notes.js +1 -1
  35. package/dist/components/notes/Notes.js.map +1 -1
  36. package/dist/components/wrapper/NotificationMenu.d.ts.map +1 -1
  37. package/dist/components/wrapper/NotificationMenu.js +28 -11
  38. package/dist/components/wrapper/NotificationMenu.js.map +1 -1
  39. package/dist/components/wrapper/Notifications.d.ts +1 -0
  40. package/dist/components/wrapper/Notifications.d.ts.map +1 -1
  41. package/dist/components/wrapper/Notifications.js +2 -0
  42. package/dist/components/wrapper/Notifications.js.map +1 -1
  43. package/dist/components/wrapper/PrivateMessageDetails.d.ts +1 -0
  44. package/dist/components/wrapper/PrivateMessageDetails.d.ts.map +1 -1
  45. package/dist/components/wrapper/PrivateMessageDetails.js +1 -1
  46. package/dist/components/wrapper/PrivateMessageDetails.js.map +1 -1
  47. package/dist/components/wrapper/PrivateMessages.d.ts +2 -0
  48. package/dist/components/wrapper/PrivateMessages.d.ts.map +1 -1
  49. package/dist/components/wrapper/PrivateMessages.js +6 -3
  50. package/dist/components/wrapper/PrivateMessages.js.map +1 -1
  51. package/dist/components/wrapper/SiteWrapper.d.ts.map +1 -1
  52. package/dist/components/wrapper/SiteWrapper.js +1 -0
  53. package/dist/components/wrapper/SiteWrapper.js.map +1 -1
  54. package/dist/helpers/DateHelper.d.ts.map +1 -1
  55. package/dist/helpers/DateHelper.js +2 -0
  56. package/dist/helpers/DateHelper.js.map +1 -1
  57. package/dist/helpers/SocketHelper.d.ts.map +1 -1
  58. package/dist/helpers/SocketHelper.js +4 -2
  59. package/dist/helpers/SocketHelper.js.map +1 -1
  60. package/dist/interfaces/Messaging.d.ts +10 -1
  61. package/dist/interfaces/Messaging.d.ts.map +1 -1
  62. package/package.json +86 -85
  63. package/src/components/CreatePerson.tsx +80 -80
  64. package/src/components/DisplayBox.tsx +68 -68
  65. package/src/components/ErrorMessages.tsx +26 -26
  66. package/src/components/ExportLink.tsx +67 -67
  67. package/src/components/FloatingSupport.tsx +16 -16
  68. package/src/components/FormSubmissionEdit.tsx +120 -120
  69. package/src/components/HelpIcon.tsx +10 -10
  70. package/src/components/ImageEditor.tsx +126 -126
  71. package/src/components/InputBox.tsx +73 -73
  72. package/src/components/Loading.tsx +29 -29
  73. package/src/components/PersonAdd.tsx +75 -75
  74. package/src/components/QuestionEdit.tsx +63 -63
  75. package/src/components/SmallButton.tsx +39 -39
  76. package/src/components/SupportModal.tsx +26 -26
  77. package/src/components/TabPanel.tsx +34 -34
  78. package/src/components/gallery/GalleryModal.tsx +102 -102
  79. package/src/components/gallery/StockPhotos.tsx +74 -74
  80. package/src/components/gallery/index.ts +1 -1
  81. package/src/components/iconPicker/IconNamesList.ts +2240 -2240
  82. package/src/components/iconPicker/IconPicker.tsx +153 -153
  83. package/src/components/index.tsx +24 -24
  84. package/src/components/markdownEditor/Editor.tsx +132 -132
  85. package/src/components/markdownEditor/MarkdownEditor.tsx +16 -16
  86. package/src/components/markdownEditor/MarkdownModal.tsx +46 -46
  87. package/src/components/markdownEditor/MarkdownPreview.tsx +14 -14
  88. package/src/components/markdownEditor/editor.css +787 -787
  89. package/src/components/markdownEditor/images/icons/arrow-clockwise.svg +3 -3
  90. package/src/components/markdownEditor/images/icons/arrow-counterclockwise.svg +3 -3
  91. package/src/components/markdownEditor/images/icons/chat-square-quote.svg +3 -3
  92. package/src/components/markdownEditor/images/icons/chevron-down.svg +2 -2
  93. package/src/components/markdownEditor/images/icons/code.svg +2 -2
  94. package/src/components/markdownEditor/images/icons/journal-code.svg +4 -4
  95. package/src/components/markdownEditor/images/icons/journal-text.svg +4 -4
  96. package/src/components/markdownEditor/images/icons/justify.svg +2 -2
  97. package/src/components/markdownEditor/images/icons/link.svg +3 -3
  98. package/src/components/markdownEditor/images/icons/list-ol.svg +3 -3
  99. package/src/components/markdownEditor/images/icons/list-ul.svg +2 -2
  100. package/src/components/markdownEditor/images/icons/pencil-fill.svg +2 -2
  101. package/src/components/markdownEditor/images/icons/text-center.svg +2 -2
  102. package/src/components/markdownEditor/images/icons/text-left.svg +2 -2
  103. package/src/components/markdownEditor/images/icons/text-paragraph.svg +2 -2
  104. package/src/components/markdownEditor/images/icons/text-right.svg +2 -2
  105. package/src/components/markdownEditor/images/icons/type-bold.svg +2 -2
  106. package/src/components/markdownEditor/images/icons/type-h1.svg +2 -2
  107. package/src/components/markdownEditor/images/icons/type-h2.svg +2 -2
  108. package/src/components/markdownEditor/images/icons/type-h3.svg +2 -2
  109. package/src/components/markdownEditor/images/icons/type-h4.svg +12 -12
  110. package/src/components/markdownEditor/images/icons/type-italic.svg +2 -2
  111. package/src/components/markdownEditor/images/icons/type-strikethrough.svg +2 -2
  112. package/src/components/markdownEditor/images/icons/type-underline.svg +2 -2
  113. package/src/components/markdownEditor/index.ts +2 -2
  114. package/src/components/markdownEditor/plugins/AutoLinkPlugin.tsx +35 -35
  115. package/src/components/markdownEditor/plugins/ControlledEditorPlugin.tsx +24 -24
  116. package/src/components/markdownEditor/plugins/ListMaxIndentLevelPlugin.tsx +68 -68
  117. package/src/components/markdownEditor/plugins/MarkdownTransformers.ts +106 -106
  118. package/src/components/markdownEditor/plugins/ReadOnlyPlugin.tsx +15 -15
  119. package/src/components/markdownEditor/plugins/ToolbarPlugin.tsx +401 -401
  120. package/src/components/markdownEditor/plugins/customLink/CustomLinkNode.tsx +224 -224
  121. package/src/components/markdownEditor/plugins/customLink/CustomLinkNodePlugin.tsx +32 -32
  122. package/src/components/markdownEditor/plugins/customLink/CustomLinkNodeTransformer.tsx +102 -102
  123. package/src/components/markdownEditor/plugins/customLink/FloatingLinkEditor.tsx +243 -243
  124. package/src/components/markdownEditor/plugins/customLink/FloatingLinkEditor.types.ts +11 -11
  125. package/src/components/markdownEditor/plugins/emoji/EmojiNode.tsx +95 -95
  126. package/src/components/markdownEditor/plugins/emoji/EmojiNodeTransform.ts +41 -41
  127. package/src/components/markdownEditor/plugins/emoji/EmojiPickerPlugin.tsx +152 -152
  128. package/src/components/markdownEditor/plugins/emoji/EmojisPlugin.tsx +65 -65
  129. package/src/components/markdownEditor/plugins/index.ts +6 -6
  130. package/src/components/markdownEditor/theme.ts +65 -65
  131. package/src/components/notes/AddNote.tsx +90 -90
  132. package/src/components/notes/Conversation.tsx +82 -82
  133. package/src/components/notes/Conversations.tsx +58 -58
  134. package/src/components/notes/NewConversation.tsx +78 -78
  135. package/src/components/notes/Note.tsx +44 -44
  136. package/src/components/notes/Notes.tsx +69 -68
  137. package/src/components/notes/index.ts +5 -5
  138. package/src/components/reporting/ChartReport.tsx +98 -98
  139. package/src/components/reporting/ReportFilter.tsx +54 -54
  140. package/src/components/reporting/ReportFilterField.tsx +160 -160
  141. package/src/components/reporting/ReportOutput.tsx +79 -79
  142. package/src/components/reporting/ReportWithFilter.tsx +70 -70
  143. package/src/components/reporting/TableReport.tsx +57 -57
  144. package/src/components/reporting/TreeReport.tsx +111 -111
  145. package/src/components/reporting/index.ts +4 -4
  146. package/src/components/wrapper/AppList.tsx +20 -20
  147. package/src/components/wrapper/ChurchList.tsx +22 -22
  148. package/src/components/wrapper/Drawers.tsx +60 -60
  149. package/src/components/wrapper/NavItem.tsx +41 -41
  150. package/src/components/wrapper/NewPrivateMessage.tsx +103 -103
  151. package/src/components/wrapper/NotificationMenu.tsx +96 -85
  152. package/src/components/wrapper/Notifications.tsx +53 -50
  153. package/src/components/wrapper/PrivateMessageDetails.tsx +24 -23
  154. package/src/components/wrapper/PrivateMessages.tsx +92 -87
  155. package/src/components/wrapper/SiteWrapper.tsx +97 -96
  156. package/src/components/wrapper/TabPanel.tsx +30 -30
  157. package/src/components/wrapper/UserMenu.tsx +106 -106
  158. package/src/components/wrapper/index.tsx +5 -5
  159. package/src/donationComponents/DonationPage.tsx +136 -136
  160. package/src/donationComponents/components/BankForm.tsx +159 -159
  161. package/src/donationComponents/components/CardForm.tsx +104 -104
  162. package/src/donationComponents/components/DonationForm.tsx +235 -235
  163. package/src/donationComponents/components/FundDonation.tsx +49 -49
  164. package/src/donationComponents/components/FundDonations.tsx +39 -39
  165. package/src/donationComponents/components/NonAuthDonation.tsx +31 -31
  166. package/src/donationComponents/components/NonAuthDonationInner.tsx +259 -259
  167. package/src/donationComponents/components/PaymentMethods.tsx +135 -135
  168. package/src/donationComponents/components/RecurringDonations.tsx +121 -121
  169. package/src/donationComponents/components/RecurringDonationsEdit.tsx +93 -93
  170. package/src/donationComponents/components/index.tsx +9 -9
  171. package/src/donationComponents/index.ts +3 -3
  172. package/src/donationComponents/modals/DonationPreviewModal.tsx +66 -66
  173. package/src/helpers/AnalyticsHelper.ts +33 -33
  174. package/src/helpers/ApiHelper.ts +125 -125
  175. package/src/helpers/AppearanceHelper.ts +69 -69
  176. package/src/helpers/ArrayHelper.ts +81 -81
  177. package/src/helpers/CommonEnvironmentHelper.ts +80 -80
  178. package/src/helpers/CurrencyHelper.ts +10 -10
  179. package/src/helpers/DateHelper.ts +109 -108
  180. package/src/helpers/DonationHelper.ts +26 -26
  181. package/src/helpers/ErrorHelper.ts +36 -36
  182. package/src/helpers/EventHelper.ts +52 -52
  183. package/src/helpers/FileHelper.ts +31 -31
  184. package/src/helpers/PersonHelper.ts +60 -60
  185. package/src/helpers/SocketHelper.ts +78 -76
  186. package/src/helpers/Themes.ts +14 -14
  187. package/src/helpers/UniqueIdHelper.ts +36 -36
  188. package/src/helpers/UserHelper.ts +59 -59
  189. package/src/helpers/createEmotionCache.ts +17 -17
  190. package/src/helpers/index.ts +18 -18
  191. package/src/hooks/index.ts +1 -1
  192. package/src/hooks/useMountedState.ts +16 -16
  193. package/src/index.ts +6 -6
  194. package/src/interfaces/Access.ts +24 -24
  195. package/src/interfaces/Attendance.ts +8 -8
  196. package/src/interfaces/Content.ts +10 -10
  197. package/src/interfaces/Doing.ts +24 -24
  198. package/src/interfaces/Donation.ts +45 -45
  199. package/src/interfaces/Error.ts +17 -17
  200. package/src/interfaces/Membership.ts +51 -51
  201. package/src/interfaces/Messaging.ts +11 -21
  202. package/src/interfaces/Permissions.ts +68 -68
  203. package/src/interfaces/Reporting.ts +7 -7
  204. package/src/interfaces/UserContextInterface.ts +13 -13
  205. package/src/interfaces/index.ts +13 -13
  206. package/src/pageComponents/LoginPage.tsx +244 -244
  207. package/src/pageComponents/LogoutPage.tsx +28 -28
  208. package/src/pageComponents/components/Forgot.tsx +79 -79
  209. package/src/pageComponents/components/Login.tsx +54 -54
  210. package/src/pageComponents/components/LoginSetPassword.tsx +63 -63
  211. package/src/pageComponents/components/Register.tsx +107 -107
  212. package/src/pageComponents/components/SelectChurchModal.tsx +41 -41
  213. package/src/pageComponents/components/SelectChurchRegister.tsx +88 -88
  214. package/src/pageComponents/components/SelectChurchSearch.tsx +69 -69
  215. package/src/pageComponents/components/SelectableChurch.tsx +38 -38
  216. package/src/pageComponents/index.ts +3 -3
  217. package/tsconfig.json +34 -34
  218. package/tslint.json +14 -14
@@ -1,16 +1,16 @@
1
- import { useEffect, useRef, useCallback } from "react";
2
-
3
- export const useMountedState = () => {
4
- const mountedRef = useRef(false)
5
- const isMounted = useCallback(() => mountedRef.current, [])
6
-
7
- useEffect(() => {
8
- mountedRef.current = true
9
-
10
- return () => {
11
- mountedRef.current = false
12
- }
13
- }, [])
14
-
15
- return isMounted
16
- }
1
+ import { useEffect, useRef, useCallback } from "react";
2
+
3
+ export const useMountedState = () => {
4
+ const mountedRef = useRef(false)
5
+ const isMounted = useCallback(() => mountedRef.current, [])
6
+
7
+ useEffect(() => {
8
+ mountedRef.current = true
9
+
10
+ return () => {
11
+ mountedRef.current = false
12
+ }
13
+ }, [])
14
+
15
+ return isMounted
16
+ }
package/src/index.ts CHANGED
@@ -1,6 +1,6 @@
1
- export * from "./helpers";
2
- export * from "./components";
3
- export * from "./donationComponents";
4
- export * from "./interfaces";
5
- export * from "./pageComponents";
6
- export * from "./hooks";
1
+ export * from "./helpers";
2
+ export * from "./components";
3
+ export * from "./donationComponents";
4
+ export * from "./interfaces";
5
+ export * from "./pageComponents";
6
+ export * from "./hooks";
@@ -1,24 +1,24 @@
1
- import { PersonInterface } from "./Membership";
2
-
3
- export interface ApiInterface { name: string, keyName?: string, permissions: RolePermissionInterface[], jwt: string }
4
- export interface ChurchInterface { id?: string, name?: string, registrationDate?: Date, address1?: string, address2?: string, city?: string, state?: string, zip?: string, country?: string, subDomain?: string, settings?: GenericSettingInterface[], archivedDate?: Date }
5
- export interface DomainInterface { id?: string, domainName?: string }
6
- export interface RegisterChurchRequestInterface extends ChurchInterface { appName?: string }
7
- export interface LoadCreateUserRequestInterface { userEmail: string, fromEmail?: string, subject?: string, body?: string, firstName: string, lastName: string }
8
- export interface LoginResponseInterface { user: UserInterface, userChurches: LoginUserChurchInterface[], errors: string[] }
9
- export interface LoginUserChurchInterface { person: PersonInterface, church: ChurchInterface, apis: ApiInterface[], jwt: string, groups: { id: string, name: string, leader:boolean }[] }
10
-
11
- export interface PermissionInterface { apiName?: string, section?: string, action?: string, displaySection?: string, displayAction?: string }
12
- export interface RegisterUserInterface { firstName?: string, lastName: string, email?: string, appName: string, appUrl: string }
13
- export interface RoleInterface { id?: string, churchId?: string, name?: string }
14
- export interface RolePermissionInterface { id?: string, churchId?: string, roleId?: string, apiName?: string, contentType?: string, contentId?: string, action?: string }
15
- export interface RoleMemberInterface { id?: string, churchId?: string, roleId?: string, userId?: string, user?: UserInterface, personId?: string }
16
- export interface ResetPasswordRequestInterface { userEmail: string }
17
- export interface ResetPasswordResponseInterface { emailed: boolean }
18
- export interface UserInterface { id?: string, email?: string, authGuid?: string, firstName?: string, lastName?: string, registrationDate?: Date, lastLogin?: Date, password?: string, jwt?: string }
19
- export interface GenericSettingInterface { id?: string, churchId?: string, keyName?: string, value?: string, public?: number }
20
- export interface UserChurchInterface { id?: string, userId?: string, churchId?: string, personId?: string }
21
-
22
- export interface ApiConfig { keyName: string, url: string, jwt: string, permisssions: RolePermissionInterface[] }
23
- export type ApiListType = "MembershipApi" | "AttendanceApi" | "GivingApi" | "DoingApi" | "MessagingApi" | "LessonsApi" | "ReportingApi" | "ContentApi";
24
- export interface IPermission { api: string, contentType: string, action: string }
1
+ import { PersonInterface } from "./Membership";
2
+
3
+ export interface ApiInterface { name: string, keyName?: string, permissions: RolePermissionInterface[], jwt: string }
4
+ export interface ChurchInterface { id?: string, name?: string, registrationDate?: Date, address1?: string, address2?: string, city?: string, state?: string, zip?: string, country?: string, subDomain?: string, settings?: GenericSettingInterface[], archivedDate?: Date }
5
+ export interface DomainInterface { id?: string, domainName?: string }
6
+ export interface RegisterChurchRequestInterface extends ChurchInterface { appName?: string }
7
+ export interface LoadCreateUserRequestInterface { userEmail: string, fromEmail?: string, subject?: string, body?: string, firstName: string, lastName: string }
8
+ export interface LoginResponseInterface { user: UserInterface, userChurches: LoginUserChurchInterface[], errors: string[] }
9
+ export interface LoginUserChurchInterface { person: PersonInterface, church: ChurchInterface, apis: ApiInterface[], jwt: string, groups: { id: string, name: string, leader:boolean }[] }
10
+
11
+ export interface PermissionInterface { apiName?: string, section?: string, action?: string, displaySection?: string, displayAction?: string }
12
+ export interface RegisterUserInterface { firstName?: string, lastName: string, email?: string, appName: string, appUrl: string }
13
+ export interface RoleInterface { id?: string, churchId?: string, name?: string }
14
+ export interface RolePermissionInterface { id?: string, churchId?: string, roleId?: string, apiName?: string, contentType?: string, contentId?: string, action?: string }
15
+ export interface RoleMemberInterface { id?: string, churchId?: string, roleId?: string, userId?: string, user?: UserInterface, personId?: string }
16
+ export interface ResetPasswordRequestInterface { userEmail: string }
17
+ export interface ResetPasswordResponseInterface { emailed: boolean }
18
+ export interface UserInterface { id?: string, email?: string, authGuid?: string, firstName?: string, lastName?: string, registrationDate?: Date, lastLogin?: Date, password?: string, jwt?: string }
19
+ export interface GenericSettingInterface { id?: string, churchId?: string, keyName?: string, value?: string, public?: number }
20
+ export interface UserChurchInterface { id?: string, userId?: string, churchId?: string, personId?: string }
21
+
22
+ export interface ApiConfig { keyName: string, url: string, jwt: string, permisssions: RolePermissionInterface[] }
23
+ export type ApiListType = "MembershipApi" | "AttendanceApi" | "GivingApi" | "DoingApi" | "MessagingApi" | "LessonsApi" | "ReportingApi" | "ContentApi";
24
+ export interface IPermission { api: string, contentType: string, action: string }
@@ -1,8 +1,8 @@
1
- import { CampusInterface, ServiceInterface, ServiceTimeInterface, PersonInterface } from "."
2
-
3
- export interface AttendanceInterface { campus: CampusInterface, service: ServiceInterface, serviceTime: ServiceTimeInterface, groupId: string }
4
- export interface AttendanceRecordInterface { serviceTime: ServiceTimeInterface, service: ServiceInterface, campus: CampusInterface, week: number, count: number, visitDate: Date, groupId: string }
5
- export interface VisitInterface { id?: string, personId?: string, serviceId?: string, groupId?: string, visitDate?: Date, visitSessions?: VisitSessionInterface[], person?: PersonInterface }
6
- export interface VisitSessionInterface { id?: string, visitId?: string, sessionId?: string, visit?: VisitInterface, session?: SessionInterface }
7
- export interface SessionInterface { id?: string, groupId: string, serviceTimeId: string, sessionDate?: Date, displayName: string }
8
- export interface SettingInterface { id?: string, keyName?: string, value?: string }
1
+ import { CampusInterface, ServiceInterface, ServiceTimeInterface, PersonInterface } from "."
2
+
3
+ export interface AttendanceInterface { campus: CampusInterface, service: ServiceInterface, serviceTime: ServiceTimeInterface, groupId: string }
4
+ export interface AttendanceRecordInterface { serviceTime: ServiceTimeInterface, service: ServiceInterface, campus: CampusInterface, week: number, count: number, visitDate: Date, groupId: string }
5
+ export interface VisitInterface { id?: string, personId?: string, serviceId?: string, groupId?: string, visitDate?: Date, visitSessions?: VisitSessionInterface[], person?: PersonInterface }
6
+ export interface VisitSessionInterface { id?: string, visitId?: string, sessionId?: string, visit?: VisitInterface, session?: SessionInterface }
7
+ export interface SessionInterface { id?: string, groupId: string, serviceTimeId: string, sessionDate?: Date, displayName: string }
8
+ export interface SettingInterface { id?: string, keyName?: string, value?: string }
@@ -1,10 +1,10 @@
1
- export interface LinkInterface { id?: string; churchId?: string; url?: string; text?: string; sort?: number; linkType: string; linkData: string; icon: string; category: string; parentId?: string; children?: any }
2
- export interface SermonInterface { id?: string, churchId?: string, playlistId?: string, videoType?: string, videoData?: string, videoUrl?: string, title?: string, description?: string, publishDate?: Date, thumbnail?: string, duration?: number, permanentUrl?: boolean }
3
- export interface PlaylistInterface { id?: string, churchId?: string, title?: string, description?: string, publishDate?: Date, thumbnail?: string }
4
- export interface StreamingServiceInterface { id?: string, churchId?: string, serviceTime?: Date, earlyStart?: number, duration: number, chatBefore: number, chatAfter: number, provider: string, providerKey: string, videoUrl: string, timezoneOffset: number, recurring: boolean, label: string, sermonId?: string }
5
- export interface EventInterface { id?: string; churchId?: string; groupId?: string; start?: Date; end?:Date, title?: string; description?: string; allDay?: boolean; visibility?:string; recurrenceRule?:string; exceptionDates?:Date[] }
6
- export interface EventExceptionInterface { id?: string; churchId?: string; eventId?: string; exceptionDate?: Date; }
7
- export interface CuratedCalendarInterface { id?: string, churchId?: string, name?:string }
8
- export interface CuratedEventInterface { id?: string, churchId?: string, curratedCalendarId?: string, groupId?: string, eventId?: string }
9
- export interface CuratedEventWithEventInterface extends EventInterface, CuratedEventInterface {}
10
- export type VisibilityOptions = "public" | "private" | "hidden";
1
+ export interface LinkInterface { id?: string; churchId?: string; url?: string; text?: string; sort?: number; linkType: string; linkData: string; icon: string; category: string; parentId?: string; children?: any }
2
+ export interface SermonInterface { id?: string, churchId?: string, playlistId?: string, videoType?: string, videoData?: string, videoUrl?: string, title?: string, description?: string, publishDate?: Date, thumbnail?: string, duration?: number, permanentUrl?: boolean }
3
+ export interface PlaylistInterface { id?: string, churchId?: string, title?: string, description?: string, publishDate?: Date, thumbnail?: string }
4
+ export interface StreamingServiceInterface { id?: string, churchId?: string, serviceTime?: Date, earlyStart?: number, duration: number, chatBefore: number, chatAfter: number, provider: string, providerKey: string, videoUrl: string, timezoneOffset: number, recurring: boolean, label: string, sermonId?: string }
5
+ export interface EventInterface { id?: string; churchId?: string; groupId?: string; start?: Date; end?:Date, title?: string; description?: string; allDay?: boolean; visibility?:string; recurrenceRule?:string; exceptionDates?:Date[] }
6
+ export interface EventExceptionInterface { id?: string; churchId?: string; eventId?: string; exceptionDate?: Date; }
7
+ export interface CuratedCalendarInterface { id?: string, churchId?: string, name?:string }
8
+ export interface CuratedEventInterface { id?: string, churchId?: string, curratedCalendarId?: string, groupId?: string, eventId?: string }
9
+ export interface CuratedEventWithEventInterface extends EventInterface, CuratedEventInterface {}
10
+ export type VisibilityOptions = "public" | "private" | "hidden";
@@ -1,24 +1,24 @@
1
- export interface ActionInterface { id?: string, automationId?: string, actionType?: string, actionData?: string }
2
- export interface AutomationInterface { id?: string, title: string, recurs: string, active: boolean }
3
- export interface ConditionInterface { id?: string, conjunctionId?: string, field?: string, fieldData?: string, operator?: string, value?: string, label?: string }
4
- export interface ConjunctionInterface { id?: string, automationId?: string, parentId?: string, groupType?: string, conjunctions?: ConjunctionInterface[], conditions?: ConditionInterface[] }
5
- export interface TaskInterface {
6
- id?: string,
7
- taskNumber?: number,
8
- taskType?: string,
9
- dateCreated?: Date,
10
- dateClosed?: Date,
11
- associatedWithType?: string,
12
- associatedWithId?: string,
13
- associatedWithLabel?: string,
14
- createdByType?: string,
15
- createdById?: string,
16
- createdByLabel?: string,
17
- assignedToType?: string,
18
- assignedToId?: string,
19
- assignedToLabel?: string,
20
- title?: string,
21
- status?: string,
22
- automationId?: string,
23
- conversationId?: string
24
- }
1
+ export interface ActionInterface { id?: string, automationId?: string, actionType?: string, actionData?: string }
2
+ export interface AutomationInterface { id?: string, title: string, recurs: string, active: boolean }
3
+ export interface ConditionInterface { id?: string, conjunctionId?: string, field?: string, fieldData?: string, operator?: string, value?: string, label?: string }
4
+ export interface ConjunctionInterface { id?: string, automationId?: string, parentId?: string, groupType?: string, conjunctions?: ConjunctionInterface[], conditions?: ConditionInterface[] }
5
+ export interface TaskInterface {
6
+ id?: string,
7
+ taskNumber?: number,
8
+ taskType?: string,
9
+ dateCreated?: Date,
10
+ dateClosed?: Date,
11
+ associatedWithType?: string,
12
+ associatedWithId?: string,
13
+ associatedWithLabel?: string,
14
+ createdByType?: string,
15
+ createdById?: string,
16
+ createdByLabel?: string,
17
+ assignedToType?: string,
18
+ assignedToId?: string,
19
+ assignedToLabel?: string,
20
+ title?: string,
21
+ status?: string,
22
+ automationId?: string,
23
+ conversationId?: string
24
+ }
@@ -1,45 +1,45 @@
1
- import { PersonInterface } from "."
2
-
3
- export interface DonationBatchInterface { id?: string, name?: string, batchDate?: Date, donationCount?: number, totalAmount?: number }
4
- export interface DonationInterface { id?: string, batchId?: string, personId?: string, donationDate?: Date, amount?: number, method?: string, methodDetails?: string, notes?: string, person?: PersonInterface, fund?: FundInterface }
5
- export interface DonationSummaryInterface { week: number, donations?: DonationSummaryDonation[] }
6
- export interface DonationSummaryDonation { totalAmount: number, fund?: FundInterface }
7
- export interface FundInterface { id: string, name: string, amount?: number }
8
- export interface FundDonationInterface { id?: string, donationId?: string, fundId?: string, amount?: number, donation?: DonationInterface }
9
- export interface PaymentMethodInterface { id?: string, churchId?: string, personId?: string, customerId?: string, email?: string, name?: string }
10
- export interface StripeCardUpdateInterface { paymentMethodId: string, cardData: StripeCardDataInterface, personId?: string }
11
- export interface StripeCardDataInterface { card: StripeCardExpirationInterface }
12
- export interface StripeCardExpirationInterface { exp_month: string, exp_year: string }
13
- export interface StripeBankAccountInterface { account_holder_name: any, account_holder_type: any, country: string, currency: string, account_number: any, routing_number: any }
14
- export interface StripeBankAccountUpdateInterface { paymentMethodId: string, customerId: string, personId?: string, bankData: StripeBankAccountHolderDataInterface }
15
- export interface StripeBankAccountHolderDataInterface { account_holder_name: string, account_holder_type: string }
16
- export interface StripeBankAccountVerifyInterface { customerId: string, paymentMethodId: string, amountData: { amounts: string[] } }
17
- export interface StripePersonDonationInterface { id: string, email: string, name: string };
18
- export interface StripeFundDonationInterface { id: string, amount: number, name?: string };
19
- export interface StripeDonationInterface { id?: string, type?: string, amount?: number, customerId?: string, billing_cycle_anchor?: number, proration_behavior?: string, interval?: StripeDonationIntervalInterface, person?: StripePersonDonationInterface, funds?: StripeFundDonationInterface[], notes?: string, churchId?: string };
20
- export interface StripeDonationIntervalInterface { interval: string, interval_count: number };
21
- export interface SubscriptionInterface { id: string, funds: [], billing_cycle_anchor: number, default_payment_method: string, default_source: string, plan: { amount: number, interval: string, interval_count: number }, customer: string };
22
-
23
- export class StripePaymentMethod {
24
- id: string;
25
- type: string;
26
- name: string;
27
- last4: string;
28
- exp_month?: string;
29
- exp_year?: string;
30
- status?: string;
31
- account_holder_name?: string;
32
- account_holder_type?: string;
33
-
34
- constructor(obj?: any) {
35
- this.id = obj?.id || null;
36
- this.type = obj?.type || (obj?.object && obj.object === "bank_account" ? "bank" : null);
37
- this.name = obj?.card?.brand || obj?.bank_name || null;
38
- this.last4 = obj?.last4 || obj?.card?.last4 || null;
39
- this.exp_month = obj?.exp_month || obj?.card?.exp_month || null;
40
- this.exp_year = obj?.exp_year || obj?.card?.exp_year || null;
41
- this.status = obj?.status || null;
42
- this.account_holder_name = obj?.account_holder_name || "";
43
- this.account_holder_type = obj?.account_holder_type || "individual";
44
- }
45
- }
1
+ import { PersonInterface } from "."
2
+
3
+ export interface DonationBatchInterface { id?: string, name?: string, batchDate?: Date, donationCount?: number, totalAmount?: number }
4
+ export interface DonationInterface { id?: string, batchId?: string, personId?: string, donationDate?: Date, amount?: number, method?: string, methodDetails?: string, notes?: string, person?: PersonInterface, fund?: FundInterface }
5
+ export interface DonationSummaryInterface { week: number, donations?: DonationSummaryDonation[] }
6
+ export interface DonationSummaryDonation { totalAmount: number, fund?: FundInterface }
7
+ export interface FundInterface { id: string, name: string, amount?: number }
8
+ export interface FundDonationInterface { id?: string, donationId?: string, fundId?: string, amount?: number, donation?: DonationInterface }
9
+ export interface PaymentMethodInterface { id?: string, churchId?: string, personId?: string, customerId?: string, email?: string, name?: string }
10
+ export interface StripeCardUpdateInterface { paymentMethodId: string, cardData: StripeCardDataInterface, personId?: string }
11
+ export interface StripeCardDataInterface { card: StripeCardExpirationInterface }
12
+ export interface StripeCardExpirationInterface { exp_month: string, exp_year: string }
13
+ export interface StripeBankAccountInterface { account_holder_name: any, account_holder_type: any, country: string, currency: string, account_number: any, routing_number: any }
14
+ export interface StripeBankAccountUpdateInterface { paymentMethodId: string, customerId: string, personId?: string, bankData: StripeBankAccountHolderDataInterface }
15
+ export interface StripeBankAccountHolderDataInterface { account_holder_name: string, account_holder_type: string }
16
+ export interface StripeBankAccountVerifyInterface { customerId: string, paymentMethodId: string, amountData: { amounts: string[] } }
17
+ export interface StripePersonDonationInterface { id: string, email: string, name: string };
18
+ export interface StripeFundDonationInterface { id: string, amount: number, name?: string };
19
+ export interface StripeDonationInterface { id?: string, type?: string, amount?: number, customerId?: string, billing_cycle_anchor?: number, proration_behavior?: string, interval?: StripeDonationIntervalInterface, person?: StripePersonDonationInterface, funds?: StripeFundDonationInterface[], notes?: string, churchId?: string };
20
+ export interface StripeDonationIntervalInterface { interval: string, interval_count: number };
21
+ export interface SubscriptionInterface { id: string, funds: [], billing_cycle_anchor: number, default_payment_method: string, default_source: string, plan: { amount: number, interval: string, interval_count: number }, customer: string };
22
+
23
+ export class StripePaymentMethod {
24
+ id: string;
25
+ type: string;
26
+ name: string;
27
+ last4: string;
28
+ exp_month?: string;
29
+ exp_year?: string;
30
+ status?: string;
31
+ account_holder_name?: string;
32
+ account_holder_type?: string;
33
+
34
+ constructor(obj?: any) {
35
+ this.id = obj?.id || null;
36
+ this.type = obj?.type || (obj?.object && obj.object === "bank_account" ? "bank" : null);
37
+ this.name = obj?.card?.brand || obj?.bank_name || null;
38
+ this.last4 = obj?.last4 || obj?.card?.last4 || null;
39
+ this.exp_month = obj?.exp_month || obj?.card?.exp_month || null;
40
+ this.exp_year = obj?.exp_year || obj?.card?.exp_year || null;
41
+ this.status = obj?.status || null;
42
+ this.account_holder_name = obj?.account_holder_name || "";
43
+ this.account_holder_type = obj?.account_holder_type || "individual";
44
+ }
45
+ }
@@ -1,17 +1,17 @@
1
- export interface ErrorLogInterface {
2
- application?: string,
3
- errorTime?: Date,
4
- userId?: string,
5
- churchId?: string,
6
- originUrl?: string,
7
- errorType?: string,
8
- message?: string,
9
- details?: string,
10
- };
11
-
12
- export interface ErrrorAppDataInterface {
13
- churchId: string,
14
- userId: string,
15
- originUrl: string,
16
- application: string
17
- }
1
+ export interface ErrorLogInterface {
2
+ application?: string,
3
+ errorTime?: Date,
4
+ userId?: string,
5
+ churchId?: string,
6
+ originUrl?: string,
7
+ errorType?: string,
8
+ message?: string,
9
+ details?: string,
10
+ };
11
+
12
+ export interface ErrrorAppDataInterface {
13
+ churchId: string,
14
+ userId: string,
15
+ originUrl: string,
16
+ application: string
17
+ }
@@ -1,51 +1,51 @@
1
- export interface AnswerInterface { id?: string, value?: string, questionId?: string, formSubmissionId?: string, required?: boolean }
2
- export interface CampusInterface { id?: string, name?: string }
3
- export interface ContactInfoInterface { address1?: string, address2?: string, city?: string, state?: string, zip?: string, homePhone?: string, mobilePhone?: string, workPhone?: string, email?: string, pager?: string, fax?: string, skype?: string, workEmail?: string }
4
- export interface FormInterface { id?: string, name?: string, contentType?: string, restricted?: boolean, accessStartTime?: Date, accessEndTime?: Date, archived: boolean, action?: string }
5
- export interface FormSubmissionInterface { id?: string, formId?: string, contentType?: string, contentId?: string, form?: FormInterface, answers?: AnswerInterface[], questions?: QuestionInterface[] }
6
- export interface GroupInterface { id?: string, name?: string, categoryName?: string, memberCount?: number, trackAttendance?: boolean, parentPickup?: boolean, about?: string, photoUrl?: string }
7
- export interface GroupMemberInterface { id?: string, personId: string, person?: PersonInterface, groupId: string, group?: GroupInterface, leader?: boolean }
8
- export interface GroupServiceTimeInterface { id?: string, groupId?: string, serviceTimeId?: string, serviceTime?: ServiceTimeInterface }
9
- export interface HouseholdInterface { id?: string, name?: string }
10
- export interface HouseholdMemberInterface { id?: string, householdId?: string, household?: HouseholdInterface, personId?: string, person?: PersonInterface, role?: string }
11
- export interface NameInterface { first?: string, middle?: string, last?: string, nick?: string, display?: string, title?: string, suffix?: string }
12
- export interface SearchCondition { field: string, operator: string, value: string }
13
-
14
- export interface PersonInterface {
15
- id?: string,
16
- name: NameInterface,
17
- contactInfo: ContactInfoInterface,
18
- membershipStatus?: string,
19
- gender?: string,
20
- birthDate?: Date,
21
- maritalStatus?: string,
22
- anniversary?: Date,
23
- photo?: string,
24
- photoUpdated?: Date,
25
- householdId?: string,
26
- householdRole?: string,
27
- userId?: string,
28
- school?: string,
29
- grade?: string,
30
- graduationDate?: string,
31
- employer?: string,
32
- formSubmissions?: [FormSubmissionInterface]
33
- child?: boolean,
34
- inactiveReason?: string,
35
- inactiveDate?: Date,
36
- servicesUser?: boolean,
37
- calendarUser?: boolean,
38
- checkInsUser?: boolean,
39
- registrationsUser?: boolean,
40
- givingUser?: boolean,
41
- groupsUser?: boolean,
42
- conversationId?: string,
43
- optedOut?: boolean,
44
- nametagNotes?: string
45
- }
46
- export interface QuestionInterface { id?: string, formId?: string, title?: string, fieldType?: string, placeholder?: string, description?: string, required?: boolean, choices?: [{ value?: string, text?: string }] }
47
- export interface ServiceInterface { id?: string, campusId?: string, name?: string, campus?: CampusInterface }
48
- export interface ServiceTimeInterface { id?: string, name?: string, longName?: string, serviceId?: string, groups?: GroupInterface[] }
49
- export interface MemberPermissionInterface { id?: string, churchId?: string, memberId?: string, contentType?: string, contentId?: string, action?: string, personName: string, formName?: string, emailNotification?: boolean }
50
- export interface FormMemberInterface { person?: PersonInterface, access?: string }
51
- export interface FormMemberListInterface { members?: FormMemberInterface[] }
1
+ export interface AnswerInterface { id?: string, value?: string, questionId?: string, formSubmissionId?: string, required?: boolean }
2
+ export interface CampusInterface { id?: string, name?: string }
3
+ export interface ContactInfoInterface { address1?: string, address2?: string, city?: string, state?: string, zip?: string, homePhone?: string, mobilePhone?: string, workPhone?: string, email?: string, pager?: string, fax?: string, skype?: string, workEmail?: string }
4
+ export interface FormInterface { id?: string, name?: string, contentType?: string, restricted?: boolean, accessStartTime?: Date, accessEndTime?: Date, archived: boolean, action?: string }
5
+ export interface FormSubmissionInterface { id?: string, formId?: string, contentType?: string, contentId?: string, form?: FormInterface, answers?: AnswerInterface[], questions?: QuestionInterface[] }
6
+ export interface GroupInterface { id?: string, name?: string, categoryName?: string, memberCount?: number, trackAttendance?: boolean, parentPickup?: boolean, about?: string, photoUrl?: string }
7
+ export interface GroupMemberInterface { id?: string, personId: string, person?: PersonInterface, groupId: string, group?: GroupInterface, leader?: boolean }
8
+ export interface GroupServiceTimeInterface { id?: string, groupId?: string, serviceTimeId?: string, serviceTime?: ServiceTimeInterface }
9
+ export interface HouseholdInterface { id?: string, name?: string }
10
+ export interface HouseholdMemberInterface { id?: string, householdId?: string, household?: HouseholdInterface, personId?: string, person?: PersonInterface, role?: string }
11
+ export interface NameInterface { first?: string, middle?: string, last?: string, nick?: string, display?: string, title?: string, suffix?: string }
12
+ export interface SearchCondition { field: string, operator: string, value: string }
13
+
14
+ export interface PersonInterface {
15
+ id?: string,
16
+ name: NameInterface,
17
+ contactInfo: ContactInfoInterface,
18
+ membershipStatus?: string,
19
+ gender?: string,
20
+ birthDate?: Date,
21
+ maritalStatus?: string,
22
+ anniversary?: Date,
23
+ photo?: string,
24
+ photoUpdated?: Date,
25
+ householdId?: string,
26
+ householdRole?: string,
27
+ userId?: string,
28
+ school?: string,
29
+ grade?: string,
30
+ graduationDate?: string,
31
+ employer?: string,
32
+ formSubmissions?: [FormSubmissionInterface]
33
+ child?: boolean,
34
+ inactiveReason?: string,
35
+ inactiveDate?: Date,
36
+ servicesUser?: boolean,
37
+ calendarUser?: boolean,
38
+ checkInsUser?: boolean,
39
+ registrationsUser?: boolean,
40
+ givingUser?: boolean,
41
+ groupsUser?: boolean,
42
+ conversationId?: string,
43
+ optedOut?: boolean,
44
+ nametagNotes?: string
45
+ }
46
+ export interface QuestionInterface { id?: string, formId?: string, title?: string, fieldType?: string, placeholder?: string, description?: string, required?: boolean, choices?: [{ value?: string, text?: string }] }
47
+ export interface ServiceInterface { id?: string, campusId?: string, name?: string, campus?: CampusInterface }
48
+ export interface ServiceTimeInterface { id?: string, name?: string, longName?: string, serviceId?: string, groups?: GroupInterface[] }
49
+ export interface MemberPermissionInterface { id?: string, churchId?: string, memberId?: string, contentType?: string, contentId?: string, action?: string, personName: string, formName?: string, emailNotification?: boolean }
50
+ export interface FormMemberInterface { person?: PersonInterface, access?: string }
51
+ export interface FormMemberListInterface { members?: FormMemberInterface[] }
@@ -1,21 +1,11 @@
1
- import { PersonInterface } from "./Membership";
2
-
3
- export interface ConnectionInterface { id?: string, churchId?: string, conversationId?: string, personId?: string, displayName?: string, timeJoined?: Date, socketId?: string }
4
- export interface ConversationInterface {
5
- id?: string, churchId?: string, contentType?: string, contentId?: string, title?: string, dateCreated?: Date, groupId?: string, visibility?: string, firstPostId?: string, lastPostId?: string, postCount?: number, allowAnonymousPosts?: boolean;
6
- messages?: MessageInterface[],
7
- }
8
- export interface MessageInterface {
9
- id?: string, churchId?: string, conversationId?: string, personId?: string, displayName?: string, timeSent?: Date, timeUpdated?: Date, messageType?: string, content?: string,
10
- person?: PersonInterface
11
- }
12
- export interface NotificationInterface { id?: string, churchId?: string, personId?: string, contentType?: string, contentId:string, timeSent?: Date, read:boolean, message?:string }
13
- export interface PrivateMessageInterface {
14
- id?: string, churchId?: string, fromPersonId?: string, toPersonId?: string, conversationId?: string, notifyPersonId?: string
15
- conversation?: ConversationInterface;
16
- person?: PersonInterface;
17
- }
18
-
19
- export interface SocketActionHandlerInterface { action:string, id:string, handleMessage:(data:any) => void }
20
- export type SocketPayloadAction = "message" | "deleteMessage" | "callout" | "attendance" | "prayerRequest" | "socketId" | "privateMessage" | "privateRoomAdded" | "videoChatInvite" | "reconnect";
21
- export interface SocketPayloadInterface { action: SocketPayloadAction, data: any }
1
+ import { PersonInterface } from "./Membership";
2
+
3
+ export interface ConnectionInterface { id?: string, churchId?: string, conversationId?: string, personId?: string, displayName?: string, timeJoined?: Date, socketId?: string }
4
+ export interface ConversationInterface { id?: string, churchId?: string, contentType?: string, contentId?: string, title?: string, dateCreated?: Date, groupId?: string, visibility?: string, firstPostId?: string, lastPostId?: string, postCount?: number, allowAnonymousPosts?: boolean, messages?: MessageInterface[] }
5
+ export interface MessageInterface { id?: string, churchId?: string, conversationId?: string, personId?: string, displayName?: string, timeSent?: Date, timeUpdated?: Date, messageType?: string, content?: string, person?: PersonInterface }
6
+ export interface NotificationInterface { id?: string, churchId?: string, personId?: string, contentType?: string, contentId:string, timeSent?: Date, isNew:boolean, message?:string, deliveryMethod?:string }
7
+ export interface NotificationPreferenceInterface { id?: string, churchId?: string, personId?: string, allowPush:boolean, emailFrequency:string }
8
+ export interface PrivateMessageInterface { id?: string, churchId?: string, fromPersonId?: string, toPersonId?: string, conversationId?: string, notifyPersonId?: string, conversation?: ConversationInterface, person?: PersonInterface, deliveryMethod?: string }
9
+ export interface SocketActionHandlerInterface { action:string, id:string, handleMessage:(data:any) => void }
10
+ export type SocketPayloadAction = "message" | "deleteMessage" | "callout" | "attendance" | "prayerRequest" | "socketId" | "privateMessage" | "privateRoomAdded" | "videoChatInvite" | "reconnect";
11
+ export interface SocketPayloadInterface { action: SocketPayloadAction, data: any }
@@ -1,68 +1,68 @@
1
- export class Permissions {
2
- static attendanceApi = {
3
- attendance: {
4
- view: { api: "AttendanceApi", contentType: "Attendance", action: "View" },
5
- viewSummary: { api: "AttendanceApi", contentType: "Attendance", action: "View Summary" },
6
- edit: { api: "AttendanceApi", contentType: "Attendance", action: "Edit" }
7
- },
8
- services: {
9
- edit: { api: "AttendanceApi", contentType: "Services", action: "Edit" }
10
- }
11
- };
12
-
13
- static membershipApi = {
14
- roles: {
15
- view: { api: "MembershipApi", contentType: "Roles", action: "View" },
16
- edit: { api: "MembershipApi", contentType: "Roles", action: "Edit" }
17
- },
18
- settings: {
19
- edit: { api: "MembershipApi", contentType: "Settings", action: "Edit" }
20
- },
21
- server: {
22
- admin: { api: "MembershipApi", contentType: "Server", action: "Admin" }
23
- },
24
- forms: {
25
- admin: { api: "MembershipApi", contentType: "Forms", action: "Admin" },
26
- edit: { api: "MembershipApi", contentType: "Forms", action: "Edit" }
27
- },
28
- groups: {
29
- edit: { api: "MembershipApi", contentType: "Groups", action: "Edit" }
30
- },
31
- people: {
32
- view: { api: "MembershipApi", contentType: "People", action: "View" },
33
- viewMembers: { api: "MembershipApi", contentType: "People", action: "View Members" },
34
- edit: { api: "MembershipApi", contentType: "People", action: "Edit" }
35
- },
36
- groupMembers: {
37
- edit: { api: "MembershipApi", contentType: "Group Members", action: "Edit" },
38
- view: { api: "MembershipApi", contentType: "Group Members", action: "View" }
39
- }
40
- };
41
-
42
- static givingApi = {
43
- donations: {
44
- viewSummary: { api: "GivingApi", contentType: "Donations", action: "View Summary" },
45
- view: { api: "GivingApi", contentType: "Donations", action: "View" },
46
- edit: { api: "GivingApi", contentType: "Donations", action: "Edit" }
47
- },
48
- settings: {
49
- view: { api: "GivingApi", contentType: "Settings", action: "View" },
50
- edit: { api: "GivingApi", contentType: "Settings", action: "Edit" }
51
- }
52
-
53
- }
54
-
55
- static contentApi = {
56
- chat: {
57
- host: { api: "ContentApi", contentType: "Chat", action: "Host" }
58
- },
59
- content: {
60
- edit: { api: "ContentApi", contentType: "Content", action: "Edit" }
61
- },
62
- streamingServices: {
63
- edit: { api: "ContentApi", contentType: "StreamingServices", action: "Edit" }
64
- },
65
-
66
- };
67
-
68
- }
1
+ export class Permissions {
2
+ static attendanceApi = {
3
+ attendance: {
4
+ view: { api: "AttendanceApi", contentType: "Attendance", action: "View" },
5
+ viewSummary: { api: "AttendanceApi", contentType: "Attendance", action: "View Summary" },
6
+ edit: { api: "AttendanceApi", contentType: "Attendance", action: "Edit" }
7
+ },
8
+ services: {
9
+ edit: { api: "AttendanceApi", contentType: "Services", action: "Edit" }
10
+ }
11
+ };
12
+
13
+ static membershipApi = {
14
+ roles: {
15
+ view: { api: "MembershipApi", contentType: "Roles", action: "View" },
16
+ edit: { api: "MembershipApi", contentType: "Roles", action: "Edit" }
17
+ },
18
+ settings: {
19
+ edit: { api: "MembershipApi", contentType: "Settings", action: "Edit" }
20
+ },
21
+ server: {
22
+ admin: { api: "MembershipApi", contentType: "Server", action: "Admin" }
23
+ },
24
+ forms: {
25
+ admin: { api: "MembershipApi", contentType: "Forms", action: "Admin" },
26
+ edit: { api: "MembershipApi", contentType: "Forms", action: "Edit" }
27
+ },
28
+ groups: {
29
+ edit: { api: "MembershipApi", contentType: "Groups", action: "Edit" }
30
+ },
31
+ people: {
32
+ view: { api: "MembershipApi", contentType: "People", action: "View" },
33
+ viewMembers: { api: "MembershipApi", contentType: "People", action: "View Members" },
34
+ edit: { api: "MembershipApi", contentType: "People", action: "Edit" }
35
+ },
36
+ groupMembers: {
37
+ edit: { api: "MembershipApi", contentType: "Group Members", action: "Edit" },
38
+ view: { api: "MembershipApi", contentType: "Group Members", action: "View" }
39
+ }
40
+ };
41
+
42
+ static givingApi = {
43
+ donations: {
44
+ viewSummary: { api: "GivingApi", contentType: "Donations", action: "View Summary" },
45
+ view: { api: "GivingApi", contentType: "Donations", action: "View" },
46
+ edit: { api: "GivingApi", contentType: "Donations", action: "Edit" }
47
+ },
48
+ settings: {
49
+ view: { api: "GivingApi", contentType: "Settings", action: "View" },
50
+ edit: { api: "GivingApi", contentType: "Settings", action: "Edit" }
51
+ }
52
+
53
+ }
54
+
55
+ static contentApi = {
56
+ chat: {
57
+ host: { api: "ContentApi", contentType: "Chat", action: "Host" }
58
+ },
59
+ content: {
60
+ edit: { api: "ContentApi", contentType: "Content", action: "Edit" }
61
+ },
62
+ streamingServices: {
63
+ edit: { api: "ContentApi", contentType: "StreamingServices", action: "Edit" }
64
+ },
65
+
66
+ };
67
+
68
+ }
@@ -1,7 +1,7 @@
1
- export interface ReportResultInterface { displayName: string, description: string, table: any[], outputs: ReportOutputInterface[] }
2
- export interface ReportInterface { keyName: string, displayName: string, description: string, parameters: ParameterInterface[], permissions: ReportPermissionGroupInterface[] }
3
- export interface ParameterInterface { keyName: string, displayName?: string, source: string, sourceKey: string, options: { value: string, text: string }[], value?: string, requiredParentIds?: string[], defaultValue: string }
4
- export interface ReportOutputInterface { outputType: string, columns: ColumnInterface[], groupings?: number[] }
5
- export interface ColumnInterface { header: string, value: string, formatter: string }
6
- export interface ReportPermissionGroupInterface { requireOne: ReportPermissionInterface[] }
7
- export interface ReportPermissionInterface { api: string, contentType: string, action: string }
1
+ export interface ReportResultInterface { displayName: string, description: string, table: any[], outputs: ReportOutputInterface[] }
2
+ export interface ReportInterface { keyName: string, displayName: string, description: string, parameters: ParameterInterface[], permissions: ReportPermissionGroupInterface[] }
3
+ export interface ParameterInterface { keyName: string, displayName?: string, source: string, sourceKey: string, options: { value: string, text: string }[], value?: string, requiredParentIds?: string[], defaultValue: string }
4
+ export interface ReportOutputInterface { outputType: string, columns: ColumnInterface[], groupings?: number[] }
5
+ export interface ColumnInterface { header: string, value: string, formatter: string }
6
+ export interface ReportPermissionGroupInterface { requireOne: ReportPermissionInterface[] }
7
+ export interface ReportPermissionInterface { api: string, contentType: string, action: string }