@churchapps/apphelper 0.0.8 → 0.0.10

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 (185) hide show
  1. package/.eslintignore +3 -3
  2. package/.eslintrc.json +22 -22
  3. package/LICENSE +21 -21
  4. package/README.md +16 -16
  5. package/dist/components/ExportLink.d.ts.map +1 -1
  6. package/dist/components/ExportLink.js +10 -7
  7. package/dist/components/ExportLink.js.map +1 -1
  8. package/dist/components/markdownEditor/editor.css +787 -787
  9. package/dist/components/markdownEditor/images/icons/arrow-clockwise.svg +3 -3
  10. package/dist/components/markdownEditor/images/icons/arrow-counterclockwise.svg +3 -3
  11. package/dist/components/markdownEditor/images/icons/chat-square-quote.svg +3 -3
  12. package/dist/components/markdownEditor/images/icons/chevron-down.svg +2 -2
  13. package/dist/components/markdownEditor/images/icons/code.svg +2 -2
  14. package/dist/components/markdownEditor/images/icons/journal-code.svg +4 -4
  15. package/dist/components/markdownEditor/images/icons/journal-text.svg +4 -4
  16. package/dist/components/markdownEditor/images/icons/justify.svg +2 -2
  17. package/dist/components/markdownEditor/images/icons/link.svg +3 -3
  18. package/dist/components/markdownEditor/images/icons/list-ol.svg +3 -3
  19. package/dist/components/markdownEditor/images/icons/list-ul.svg +2 -2
  20. package/dist/components/markdownEditor/images/icons/pencil-fill.svg +2 -2
  21. package/dist/components/markdownEditor/images/icons/text-center.svg +2 -2
  22. package/dist/components/markdownEditor/images/icons/text-left.svg +2 -2
  23. package/dist/components/markdownEditor/images/icons/text-paragraph.svg +2 -2
  24. package/dist/components/markdownEditor/images/icons/text-right.svg +2 -2
  25. package/dist/components/markdownEditor/images/icons/type-bold.svg +2 -2
  26. package/dist/components/markdownEditor/images/icons/type-h1.svg +2 -2
  27. package/dist/components/markdownEditor/images/icons/type-h2.svg +2 -2
  28. package/dist/components/markdownEditor/images/icons/type-h3.svg +2 -2
  29. package/dist/components/markdownEditor/images/icons/type-h4.svg +12 -12
  30. package/dist/components/markdownEditor/images/icons/type-italic.svg +2 -2
  31. package/dist/components/markdownEditor/images/icons/type-strikethrough.svg +2 -2
  32. package/dist/components/markdownEditor/images/icons/type-underline.svg +2 -2
  33. package/package.json +84 -84
  34. package/src/components/CreatePerson.tsx +80 -80
  35. package/src/components/DisplayBox.tsx +68 -68
  36. package/src/components/ErrorMessages.tsx +26 -26
  37. package/src/components/ExportLink.tsx +67 -61
  38. package/src/components/FloatingSupport.tsx +16 -16
  39. package/src/components/FormSubmissionEdit.tsx +120 -120
  40. package/src/components/HelpIcon.tsx +10 -10
  41. package/src/components/ImageEditor.tsx +126 -126
  42. package/src/components/InputBox.tsx +73 -73
  43. package/src/components/Loading.tsx +29 -29
  44. package/src/components/PersonAdd.tsx +75 -75
  45. package/src/components/QuestionEdit.tsx +62 -62
  46. package/src/components/SmallButton.tsx +39 -39
  47. package/src/components/SupportModal.tsx +26 -26
  48. package/src/components/TabPanel.tsx +34 -34
  49. package/src/components/gallery/GalleryModal.tsx +102 -102
  50. package/src/components/gallery/StockPhotos.tsx +74 -74
  51. package/src/components/gallery/index.ts +1 -1
  52. package/src/components/index.tsx +23 -23
  53. package/src/components/markdownEditor/Editor.tsx +132 -132
  54. package/src/components/markdownEditor/MarkdownEditor.tsx +16 -16
  55. package/src/components/markdownEditor/MarkdownModal.tsx +46 -46
  56. package/src/components/markdownEditor/MarkdownPreview.tsx +14 -14
  57. package/src/components/markdownEditor/editor.css +787 -787
  58. package/src/components/markdownEditor/images/icons/arrow-clockwise.svg +3 -3
  59. package/src/components/markdownEditor/images/icons/arrow-counterclockwise.svg +3 -3
  60. package/src/components/markdownEditor/images/icons/chat-square-quote.svg +3 -3
  61. package/src/components/markdownEditor/images/icons/chevron-down.svg +2 -2
  62. package/src/components/markdownEditor/images/icons/code.svg +2 -2
  63. package/src/components/markdownEditor/images/icons/journal-code.svg +4 -4
  64. package/src/components/markdownEditor/images/icons/journal-text.svg +4 -4
  65. package/src/components/markdownEditor/images/icons/justify.svg +2 -2
  66. package/src/components/markdownEditor/images/icons/link.svg +3 -3
  67. package/src/components/markdownEditor/images/icons/list-ol.svg +3 -3
  68. package/src/components/markdownEditor/images/icons/list-ul.svg +2 -2
  69. package/src/components/markdownEditor/images/icons/pencil-fill.svg +2 -2
  70. package/src/components/markdownEditor/images/icons/text-center.svg +2 -2
  71. package/src/components/markdownEditor/images/icons/text-left.svg +2 -2
  72. package/src/components/markdownEditor/images/icons/text-paragraph.svg +2 -2
  73. package/src/components/markdownEditor/images/icons/text-right.svg +2 -2
  74. package/src/components/markdownEditor/images/icons/type-bold.svg +2 -2
  75. package/src/components/markdownEditor/images/icons/type-h1.svg +2 -2
  76. package/src/components/markdownEditor/images/icons/type-h2.svg +2 -2
  77. package/src/components/markdownEditor/images/icons/type-h3.svg +2 -2
  78. package/src/components/markdownEditor/images/icons/type-h4.svg +12 -12
  79. package/src/components/markdownEditor/images/icons/type-italic.svg +2 -2
  80. package/src/components/markdownEditor/images/icons/type-strikethrough.svg +2 -2
  81. package/src/components/markdownEditor/images/icons/type-underline.svg +2 -2
  82. package/src/components/markdownEditor/index.ts +2 -2
  83. package/src/components/markdownEditor/plugins/AutoLinkPlugin.tsx +35 -35
  84. package/src/components/markdownEditor/plugins/ControlledEditorPlugin.tsx +24 -24
  85. package/src/components/markdownEditor/plugins/ListMaxIndentLevelPlugin.tsx +68 -68
  86. package/src/components/markdownEditor/plugins/MarkdownTransformers.ts +106 -106
  87. package/src/components/markdownEditor/plugins/ReadOnlyPlugin.tsx +15 -15
  88. package/src/components/markdownEditor/plugins/ToolbarPlugin.tsx +401 -401
  89. package/src/components/markdownEditor/plugins/customLink/CustomLinkNode.tsx +224 -224
  90. package/src/components/markdownEditor/plugins/customLink/CustomLinkNodePlugin.tsx +32 -32
  91. package/src/components/markdownEditor/plugins/customLink/CustomLinkNodeTransformer.tsx +102 -102
  92. package/src/components/markdownEditor/plugins/customLink/FloatingLinkEditor.tsx +243 -243
  93. package/src/components/markdownEditor/plugins/customLink/FloatingLinkEditor.types.ts +11 -11
  94. package/src/components/markdownEditor/plugins/emoji/EmojiNode.tsx +95 -95
  95. package/src/components/markdownEditor/plugins/emoji/EmojiNodeTransform.ts +41 -41
  96. package/src/components/markdownEditor/plugins/emoji/EmojiPickerPlugin.tsx +152 -152
  97. package/src/components/markdownEditor/plugins/emoji/EmojisPlugin.tsx +65 -65
  98. package/src/components/markdownEditor/plugins/index.ts +6 -6
  99. package/src/components/markdownEditor/theme.ts +65 -65
  100. package/src/components/material/AppList.tsx +20 -20
  101. package/src/components/material/ChurchList.tsx +22 -22
  102. package/src/components/material/NavItem.tsx +41 -41
  103. package/src/components/material/NewPrivateMessage.tsx +103 -103
  104. package/src/components/material/PrivateMessageDetails.tsx +23 -23
  105. package/src/components/material/PrivateMessages.tsx +87 -87
  106. package/src/components/material/SiteWrapper.tsx +140 -140
  107. package/src/components/material/UserMenu.tsx +141 -141
  108. package/src/components/material/iconPicker/IconNamesList.ts +2240 -2240
  109. package/src/components/material/iconPicker/IconPicker.tsx +153 -153
  110. package/src/components/material/index.tsx +6 -6
  111. package/src/components/notes/AddNote.tsx +90 -90
  112. package/src/components/notes/Conversation.tsx +82 -82
  113. package/src/components/notes/Conversations.tsx +58 -58
  114. package/src/components/notes/NewConversation.tsx +78 -78
  115. package/src/components/notes/Note.tsx +44 -44
  116. package/src/components/notes/Notes.tsx +52 -52
  117. package/src/components/notes/index.ts +5 -5
  118. package/src/components/reporting/ChartReport.tsx +98 -98
  119. package/src/components/reporting/ReportFilter.tsx +54 -54
  120. package/src/components/reporting/ReportFilterField.tsx +160 -160
  121. package/src/components/reporting/ReportOutput.tsx +79 -79
  122. package/src/components/reporting/ReportWithFilter.tsx +70 -70
  123. package/src/components/reporting/TableReport.tsx +57 -57
  124. package/src/components/reporting/TreeReport.tsx +111 -111
  125. package/src/components/reporting/index.ts +4 -4
  126. package/src/donationComponents/DonationPage.tsx +136 -136
  127. package/src/donationComponents/components/BankForm.tsx +159 -159
  128. package/src/donationComponents/components/CardForm.tsx +104 -104
  129. package/src/donationComponents/components/DonationForm.tsx +235 -235
  130. package/src/donationComponents/components/FundDonation.tsx +49 -49
  131. package/src/donationComponents/components/FundDonations.tsx +39 -39
  132. package/src/donationComponents/components/NonAuthDonation.tsx +31 -31
  133. package/src/donationComponents/components/NonAuthDonationInner.tsx +259 -259
  134. package/src/donationComponents/components/PaymentMethods.tsx +135 -135
  135. package/src/donationComponents/components/RecurringDonations.tsx +121 -121
  136. package/src/donationComponents/components/RecurringDonationsEdit.tsx +93 -93
  137. package/src/donationComponents/components/index.tsx +9 -9
  138. package/src/donationComponents/index.ts +3 -3
  139. package/src/donationComponents/modals/DonationPreviewModal.tsx +66 -66
  140. package/src/helpers/AnalyticsHelper.ts +33 -33
  141. package/src/helpers/ApiHelper.ts +125 -125
  142. package/src/helpers/AppearanceHelper.ts +69 -69
  143. package/src/helpers/ArrayHelper.ts +81 -81
  144. package/src/helpers/CommonEnvironmentHelper.ts +80 -80
  145. package/src/helpers/CurrencyHelper.ts +10 -10
  146. package/src/helpers/DateHelper.ts +108 -108
  147. package/src/helpers/DonationHelper.ts +26 -26
  148. package/src/helpers/ErrorHelper.ts +36 -36
  149. package/src/helpers/EventHelper.ts +52 -52
  150. package/src/helpers/FileHelper.ts +31 -31
  151. package/src/helpers/PersonHelper.ts +60 -60
  152. package/src/helpers/SocketHelper.ts +76 -76
  153. package/src/helpers/Themes.ts +14 -14
  154. package/src/helpers/UniqueIdHelper.ts +36 -36
  155. package/src/helpers/UserHelper.ts +59 -59
  156. package/src/helpers/createEmotionCache.ts +17 -17
  157. package/src/helpers/index.ts +18 -18
  158. package/src/hooks/index.ts +1 -1
  159. package/src/hooks/useMountedState.ts +16 -16
  160. package/src/index.ts +6 -6
  161. package/src/interfaces/Access.ts +24 -24
  162. package/src/interfaces/Attendance.ts +8 -8
  163. package/src/interfaces/Content.ts +10 -10
  164. package/src/interfaces/Doing.ts +24 -24
  165. package/src/interfaces/Donation.ts +45 -45
  166. package/src/interfaces/Error.ts +17 -17
  167. package/src/interfaces/Membership.ts +51 -51
  168. package/src/interfaces/Messaging.ts +20 -20
  169. package/src/interfaces/Permissions.ts +68 -68
  170. package/src/interfaces/Reporting.ts +7 -7
  171. package/src/interfaces/UserContextInterface.ts +13 -13
  172. package/src/interfaces/index.ts +13 -13
  173. package/src/pageComponents/LoginPage.tsx +244 -244
  174. package/src/pageComponents/LogoutPage.tsx +28 -28
  175. package/src/pageComponents/components/Forgot.tsx +79 -79
  176. package/src/pageComponents/components/Login.tsx +54 -54
  177. package/src/pageComponents/components/LoginSetPassword.tsx +63 -63
  178. package/src/pageComponents/components/Register.tsx +107 -107
  179. package/src/pageComponents/components/SelectChurchModal.tsx +41 -41
  180. package/src/pageComponents/components/SelectChurchRegister.tsx +88 -88
  181. package/src/pageComponents/components/SelectChurchSearch.tsx +69 -69
  182. package/src/pageComponents/components/SelectableChurch.tsx +38 -38
  183. package/src/pageComponents/index.ts +3 -3
  184. package/tsconfig.json +34 -34
  185. package/tslint.json +14 -14
@@ -1,4 +1,4 @@
1
- <svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" fill="currentColor" class="bi bi-arrow-clockwise" viewBox="0 0 16 16">
2
- <path fill-rule="evenodd" d="M8 3a5 5 0 1 0 4.546 2.914.5.5 0 0 1 .908-.417A6 6 0 1 1 8 2v1z"/>
3
- <path d="M8 4.466V.534a.25.25 0 0 1 .41-.192l2.36 1.966c.12.1.12.284 0 .384L8.41 4.658A.25.25 0 0 1 8 4.466z"/>
1
+ <svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" fill="currentColor" class="bi bi-arrow-clockwise" viewBox="0 0 16 16">
2
+ <path fill-rule="evenodd" d="M8 3a5 5 0 1 0 4.546 2.914.5.5 0 0 1 .908-.417A6 6 0 1 1 8 2v1z"/>
3
+ <path d="M8 4.466V.534a.25.25 0 0 1 .41-.192l2.36 1.966c.12.1.12.284 0 .384L8.41 4.658A.25.25 0 0 1 8 4.466z"/>
4
4
  </svg>
@@ -1,4 +1,4 @@
1
- <svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" fill="currentColor" class="bi bi-arrow-counterclockwise" viewBox="0 0 16 16">
2
- <path fill-rule="evenodd" d="M8 3a5 5 0 1 1-4.546 2.914.5.5 0 0 0-.908-.417A6 6 0 1 0 8 2v1z"/>
3
- <path d="M8 4.466V.534a.25.25 0 0 0-.41-.192L5.23 2.308a.25.25 0 0 0 0 .384l2.36 1.966A.25.25 0 0 0 8 4.466z"/>
1
+ <svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" fill="currentColor" class="bi bi-arrow-counterclockwise" viewBox="0 0 16 16">
2
+ <path fill-rule="evenodd" d="M8 3a5 5 0 1 1-4.546 2.914.5.5 0 0 0-.908-.417A6 6 0 1 0 8 2v1z"/>
3
+ <path d="M8 4.466V.534a.25.25 0 0 0-.41-.192L5.23 2.308a.25.25 0 0 0 0 .384l2.36 1.966A.25.25 0 0 0 8 4.466z"/>
4
4
  </svg>
@@ -1,4 +1,4 @@
1
- <svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" fill="currentColor" class="bi bi-chat-square-quote" viewBox="0 0 16 16">
2
- <path d="M14 1a1 1 0 0 1 1 1v8a1 1 0 0 1-1 1h-2.5a2 2 0 0 0-1.6.8L8 14.333 6.1 11.8a2 2 0 0 0-1.6-.8H2a1 1 0 0 1-1-1V2a1 1 0 0 1 1-1h12zM2 0a2 2 0 0 0-2 2v8a2 2 0 0 0 2 2h2.5a1 1 0 0 1 .8.4l1.9 2.533a1 1 0 0 0 1.6 0l1.9-2.533a1 1 0 0 1 .8-.4H14a2 2 0 0 0 2-2V2a2 2 0 0 0-2-2H2z"/>
3
- <path d="M7.066 4.76A1.665 1.665 0 0 0 4 5.668a1.667 1.667 0 0 0 2.561 1.406c-.131.389-.375.804-.777 1.22a.417.417 0 1 0 .6.58c1.486-1.54 1.293-3.214.682-4.112zm4 0A1.665 1.665 0 0 0 8 5.668a1.667 1.667 0 0 0 2.561 1.406c-.131.389-.375.804-.777 1.22a.417.417 0 1 0 .6.58c1.486-1.54 1.293-3.214.682-4.112z"/>
1
+ <svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" fill="currentColor" class="bi bi-chat-square-quote" viewBox="0 0 16 16">
2
+ <path d="M14 1a1 1 0 0 1 1 1v8a1 1 0 0 1-1 1h-2.5a2 2 0 0 0-1.6.8L8 14.333 6.1 11.8a2 2 0 0 0-1.6-.8H2a1 1 0 0 1-1-1V2a1 1 0 0 1 1-1h12zM2 0a2 2 0 0 0-2 2v8a2 2 0 0 0 2 2h2.5a1 1 0 0 1 .8.4l1.9 2.533a1 1 0 0 0 1.6 0l1.9-2.533a1 1 0 0 1 .8-.4H14a2 2 0 0 0 2-2V2a2 2 0 0 0-2-2H2z"/>
3
+ <path d="M7.066 4.76A1.665 1.665 0 0 0 4 5.668a1.667 1.667 0 0 0 2.561 1.406c-.131.389-.375.804-.777 1.22a.417.417 0 1 0 .6.58c1.486-1.54 1.293-3.214.682-4.112zm4 0A1.665 1.665 0 0 0 8 5.668a1.667 1.667 0 0 0 2.561 1.406c-.131.389-.375.804-.777 1.22a.417.417 0 1 0 .6.58c1.486-1.54 1.293-3.214.682-4.112z"/>
4
4
  </svg>
@@ -1,3 +1,3 @@
1
- <svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" fill="currentColor" class="bi bi-chevron-down" viewBox="0 0 16 16">
2
- <path fill-rule="evenodd" d="M1.646 4.646a.5.5 0 0 1 .708 0L8 10.293l5.646-5.647a.5.5 0 0 1 .708.708l-6 6a.5.5 0 0 1-.708 0l-6-6a.5.5 0 0 1 0-.708z"/>
1
+ <svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" fill="currentColor" class="bi bi-chevron-down" viewBox="0 0 16 16">
2
+ <path fill-rule="evenodd" d="M1.646 4.646a.5.5 0 0 1 .708 0L8 10.293l5.646-5.647a.5.5 0 0 1 .708.708l-6 6a.5.5 0 0 1-.708 0l-6-6a.5.5 0 0 1 0-.708z"/>
3
3
  </svg>
@@ -1,3 +1,3 @@
1
- <svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" fill="currentColor" class="bi bi-code" viewBox="0 0 16 16">
2
- <path d="M5.854 4.854a.5.5 0 1 0-.708-.708l-3.5 3.5a.5.5 0 0 0 0 .708l3.5 3.5a.5.5 0 0 0 .708-.708L2.707 8l3.147-3.146zm4.292 0a.5.5 0 0 1 .708-.708l3.5 3.5a.5.5 0 0 1 0 .708l-3.5 3.5a.5.5 0 0 1-.708-.708L13.293 8l-3.147-3.146z"/>
1
+ <svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" fill="currentColor" class="bi bi-code" viewBox="0 0 16 16">
2
+ <path d="M5.854 4.854a.5.5 0 1 0-.708-.708l-3.5 3.5a.5.5 0 0 0 0 .708l3.5 3.5a.5.5 0 0 0 .708-.708L2.707 8l3.147-3.146zm4.292 0a.5.5 0 0 1 .708-.708l3.5 3.5a.5.5 0 0 1 0 .708l-3.5 3.5a.5.5 0 0 1-.708-.708L13.293 8l-3.147-3.146z"/>
3
3
  </svg>
@@ -1,5 +1,5 @@
1
- <svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" fill="currentColor" class="bi bi-journal-code" viewBox="0 0 16 16">
2
- <path fill-rule="evenodd" d="M8.646 5.646a.5.5 0 0 1 .708 0l2 2a.5.5 0 0 1 0 .708l-2 2a.5.5 0 0 1-.708-.708L10.293 8 8.646 6.354a.5.5 0 0 1 0-.708zm-1.292 0a.5.5 0 0 0-.708 0l-2 2a.5.5 0 0 0 0 .708l2 2a.5.5 0 0 0 .708-.708L5.707 8l1.647-1.646a.5.5 0 0 0 0-.708z"/>
3
- <path d="M3 0h10a2 2 0 0 1 2 2v12a2 2 0 0 1-2 2H3a2 2 0 0 1-2-2v-1h1v1a1 1 0 0 0 1 1h10a1 1 0 0 0 1-1V2a1 1 0 0 0-1-1H3a1 1 0 0 0-1 1v1H1V2a2 2 0 0 1 2-2z"/>
4
- <path d="M1 5v-.5a.5.5 0 0 1 1 0V5h.5a.5.5 0 0 1 0 1h-2a.5.5 0 0 1 0-1H1zm0 3v-.5a.5.5 0 0 1 1 0V8h.5a.5.5 0 0 1 0 1h-2a.5.5 0 0 1 0-1H1zm0 3v-.5a.5.5 0 0 1 1 0v.5h.5a.5.5 0 0 1 0 1h-2a.5.5 0 0 1 0-1H1z"/>
1
+ <svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" fill="currentColor" class="bi bi-journal-code" viewBox="0 0 16 16">
2
+ <path fill-rule="evenodd" d="M8.646 5.646a.5.5 0 0 1 .708 0l2 2a.5.5 0 0 1 0 .708l-2 2a.5.5 0 0 1-.708-.708L10.293 8 8.646 6.354a.5.5 0 0 1 0-.708zm-1.292 0a.5.5 0 0 0-.708 0l-2 2a.5.5 0 0 0 0 .708l2 2a.5.5 0 0 0 .708-.708L5.707 8l1.647-1.646a.5.5 0 0 0 0-.708z"/>
3
+ <path d="M3 0h10a2 2 0 0 1 2 2v12a2 2 0 0 1-2 2H3a2 2 0 0 1-2-2v-1h1v1a1 1 0 0 0 1 1h10a1 1 0 0 0 1-1V2a1 1 0 0 0-1-1H3a1 1 0 0 0-1 1v1H1V2a2 2 0 0 1 2-2z"/>
4
+ <path d="M1 5v-.5a.5.5 0 0 1 1 0V5h.5a.5.5 0 0 1 0 1h-2a.5.5 0 0 1 0-1H1zm0 3v-.5a.5.5 0 0 1 1 0V8h.5a.5.5 0 0 1 0 1h-2a.5.5 0 0 1 0-1H1zm0 3v-.5a.5.5 0 0 1 1 0v.5h.5a.5.5 0 0 1 0 1h-2a.5.5 0 0 1 0-1H1z"/>
5
5
  </svg>
@@ -1,5 +1,5 @@
1
- <svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" fill="currentColor" class="bi bi-journal-text" viewBox="0 0 16 16">
2
- <path d="M5 10.5a.5.5 0 0 1 .5-.5h2a.5.5 0 0 1 0 1h-2a.5.5 0 0 1-.5-.5zm0-2a.5.5 0 0 1 .5-.5h5a.5.5 0 0 1 0 1h-5a.5.5 0 0 1-.5-.5zm0-2a.5.5 0 0 1 .5-.5h5a.5.5 0 0 1 0 1h-5a.5.5 0 0 1-.5-.5zm0-2a.5.5 0 0 1 .5-.5h5a.5.5 0 0 1 0 1h-5a.5.5 0 0 1-.5-.5z"/>
3
- <path d="M3 0h10a2 2 0 0 1 2 2v12a2 2 0 0 1-2 2H3a2 2 0 0 1-2-2v-1h1v1a1 1 0 0 0 1 1h10a1 1 0 0 0 1-1V2a1 1 0 0 0-1-1H3a1 1 0 0 0-1 1v1H1V2a2 2 0 0 1 2-2z"/>
4
- <path d="M1 5v-.5a.5.5 0 0 1 1 0V5h.5a.5.5 0 0 1 0 1h-2a.5.5 0 0 1 0-1H1zm0 3v-.5a.5.5 0 0 1 1 0V8h.5a.5.5 0 0 1 0 1h-2a.5.5 0 0 1 0-1H1zm0 3v-.5a.5.5 0 0 1 1 0v.5h.5a.5.5 0 0 1 0 1h-2a.5.5 0 0 1 0-1H1z"/>
1
+ <svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" fill="currentColor" class="bi bi-journal-text" viewBox="0 0 16 16">
2
+ <path d="M5 10.5a.5.5 0 0 1 .5-.5h2a.5.5 0 0 1 0 1h-2a.5.5 0 0 1-.5-.5zm0-2a.5.5 0 0 1 .5-.5h5a.5.5 0 0 1 0 1h-5a.5.5 0 0 1-.5-.5zm0-2a.5.5 0 0 1 .5-.5h5a.5.5 0 0 1 0 1h-5a.5.5 0 0 1-.5-.5zm0-2a.5.5 0 0 1 .5-.5h5a.5.5 0 0 1 0 1h-5a.5.5 0 0 1-.5-.5z"/>
3
+ <path d="M3 0h10a2 2 0 0 1 2 2v12a2 2 0 0 1-2 2H3a2 2 0 0 1-2-2v-1h1v1a1 1 0 0 0 1 1h10a1 1 0 0 0 1-1V2a1 1 0 0 0-1-1H3a1 1 0 0 0-1 1v1H1V2a2 2 0 0 1 2-2z"/>
4
+ <path d="M1 5v-.5a.5.5 0 0 1 1 0V5h.5a.5.5 0 0 1 0 1h-2a.5.5 0 0 1 0-1H1zm0 3v-.5a.5.5 0 0 1 1 0V8h.5a.5.5 0 0 1 0 1h-2a.5.5 0 0 1 0-1H1zm0 3v-.5a.5.5 0 0 1 1 0v.5h.5a.5.5 0 0 1 0 1h-2a.5.5 0 0 1 0-1H1z"/>
5
5
  </svg>
@@ -1,3 +1,3 @@
1
- <svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" fill="currentColor" class="bi bi-justify" viewBox="0 0 16 16">
2
- <path fill-rule="evenodd" d="M2 12.5a.5.5 0 0 1 .5-.5h11a.5.5 0 0 1 0 1h-11a.5.5 0 0 1-.5-.5zm0-3a.5.5 0 0 1 .5-.5h11a.5.5 0 0 1 0 1h-11a.5.5 0 0 1-.5-.5zm0-3a.5.5 0 0 1 .5-.5h11a.5.5 0 0 1 0 1h-11a.5.5 0 0 1-.5-.5zm0-3a.5.5 0 0 1 .5-.5h11a.5.5 0 0 1 0 1h-11a.5.5 0 0 1-.5-.5z"/>
1
+ <svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" fill="currentColor" class="bi bi-justify" viewBox="0 0 16 16">
2
+ <path fill-rule="evenodd" d="M2 12.5a.5.5 0 0 1 .5-.5h11a.5.5 0 0 1 0 1h-11a.5.5 0 0 1-.5-.5zm0-3a.5.5 0 0 1 .5-.5h11a.5.5 0 0 1 0 1h-11a.5.5 0 0 1-.5-.5zm0-3a.5.5 0 0 1 .5-.5h11a.5.5 0 0 1 0 1h-11a.5.5 0 0 1-.5-.5zm0-3a.5.5 0 0 1 .5-.5h11a.5.5 0 0 1 0 1h-11a.5.5 0 0 1-.5-.5z"/>
3
3
  </svg>
@@ -1,4 +1,4 @@
1
- <svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" fill="currentColor" class="bi bi-link" viewBox="0 0 16 16">
2
- <path d="M6.354 5.5H4a3 3 0 0 0 0 6h3a3 3 0 0 0 2.83-4H9c-.086 0-.17.01-.25.031A2 2 0 0 1 7 10.5H4a2 2 0 1 1 0-4h1.535c.218-.376.495-.714.82-1z"/>
3
- <path d="M9 5.5a3 3 0 0 0-2.83 4h1.098A2 2 0 0 1 9 6.5h3a2 2 0 1 1 0 4h-1.535a4.02 4.02 0 0 1-.82 1H12a3 3 0 1 0 0-6H9z"/>
1
+ <svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" fill="currentColor" class="bi bi-link" viewBox="0 0 16 16">
2
+ <path d="M6.354 5.5H4a3 3 0 0 0 0 6h3a3 3 0 0 0 2.83-4H9c-.086 0-.17.01-.25.031A2 2 0 0 1 7 10.5H4a2 2 0 1 1 0-4h1.535c.218-.376.495-.714.82-1z"/>
3
+ <path d="M9 5.5a3 3 0 0 0-2.83 4h1.098A2 2 0 0 1 9 6.5h3a2 2 0 1 1 0 4h-1.535a4.02 4.02 0 0 1-.82 1H12a3 3 0 1 0 0-6H9z"/>
4
4
  </svg>
@@ -1,4 +1,4 @@
1
- <svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" fill="currentColor" class="bi bi-list-ol" viewBox="0 0 16 16">
2
- <path fill-rule="evenodd" d="M5 11.5a.5.5 0 0 1 .5-.5h9a.5.5 0 0 1 0 1h-9a.5.5 0 0 1-.5-.5zm0-4a.5.5 0 0 1 .5-.5h9a.5.5 0 0 1 0 1h-9a.5.5 0 0 1-.5-.5zm0-4a.5.5 0 0 1 .5-.5h9a.5.5 0 0 1 0 1h-9a.5.5 0 0 1-.5-.5z"/>
3
- <path d="M1.713 11.865v-.474H2c.217 0 .363-.137.363-.317 0-.185-.158-.31-.361-.31-.223 0-.367.152-.373.31h-.59c.016-.467.373-.787.986-.787.588-.002.954.291.957.703a.595.595 0 0 1-.492.594v.033a.615.615 0 0 1 .569.631c.003.533-.502.8-1.051.8-.656 0-1-.37-1.008-.794h.582c.008.178.186.306.422.309.254 0 .424-.145.422-.35-.002-.195-.155-.348-.414-.348h-.3zm-.004-4.699h-.604v-.035c0-.408.295-.844.958-.844.583 0 .96.326.96.756 0 .389-.257.617-.476.848l-.537.572v.03h1.054V9H1.143v-.395l.957-.99c.138-.142.293-.304.293-.508 0-.18-.147-.32-.342-.32a.33.33 0 0 0-.342.338v.041zM2.564 5h-.635V2.924h-.031l-.598.42v-.567l.629-.443h.635V5z"/>
1
+ <svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" fill="currentColor" class="bi bi-list-ol" viewBox="0 0 16 16">
2
+ <path fill-rule="evenodd" d="M5 11.5a.5.5 0 0 1 .5-.5h9a.5.5 0 0 1 0 1h-9a.5.5 0 0 1-.5-.5zm0-4a.5.5 0 0 1 .5-.5h9a.5.5 0 0 1 0 1h-9a.5.5 0 0 1-.5-.5zm0-4a.5.5 0 0 1 .5-.5h9a.5.5 0 0 1 0 1h-9a.5.5 0 0 1-.5-.5z"/>
3
+ <path d="M1.713 11.865v-.474H2c.217 0 .363-.137.363-.317 0-.185-.158-.31-.361-.31-.223 0-.367.152-.373.31h-.59c.016-.467.373-.787.986-.787.588-.002.954.291.957.703a.595.595 0 0 1-.492.594v.033a.615.615 0 0 1 .569.631c.003.533-.502.8-1.051.8-.656 0-1-.37-1.008-.794h.582c.008.178.186.306.422.309.254 0 .424-.145.422-.35-.002-.195-.155-.348-.414-.348h-.3zm-.004-4.699h-.604v-.035c0-.408.295-.844.958-.844.583 0 .96.326.96.756 0 .389-.257.617-.476.848l-.537.572v.03h1.054V9H1.143v-.395l.957-.99c.138-.142.293-.304.293-.508 0-.18-.147-.32-.342-.32a.33.33 0 0 0-.342.338v.041zM2.564 5h-.635V2.924h-.031l-.598.42v-.567l.629-.443h.635V5z"/>
4
4
  </svg>
@@ -1,3 +1,3 @@
1
- <svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" fill="currentColor" class="bi bi-list-ul" viewBox="0 0 16 16">
2
- <path fill-rule="evenodd" d="M5 11.5a.5.5 0 0 1 .5-.5h9a.5.5 0 0 1 0 1h-9a.5.5 0 0 1-.5-.5zm0-4a.5.5 0 0 1 .5-.5h9a.5.5 0 0 1 0 1h-9a.5.5 0 0 1-.5-.5zm0-4a.5.5 0 0 1 .5-.5h9a.5.5 0 0 1 0 1h-9a.5.5 0 0 1-.5-.5zm-3 1a1 1 0 1 0 0-2 1 1 0 0 0 0 2zm0 4a1 1 0 1 0 0-2 1 1 0 0 0 0 2zm0 4a1 1 0 1 0 0-2 1 1 0 0 0 0 2z"/>
1
+ <svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" fill="currentColor" class="bi bi-list-ul" viewBox="0 0 16 16">
2
+ <path fill-rule="evenodd" d="M5 11.5a.5.5 0 0 1 .5-.5h9a.5.5 0 0 1 0 1h-9a.5.5 0 0 1-.5-.5zm0-4a.5.5 0 0 1 .5-.5h9a.5.5 0 0 1 0 1h-9a.5.5 0 0 1-.5-.5zm0-4a.5.5 0 0 1 .5-.5h9a.5.5 0 0 1 0 1h-9a.5.5 0 0 1-.5-.5zm-3 1a1 1 0 1 0 0-2 1 1 0 0 0 0 2zm0 4a1 1 0 1 0 0-2 1 1 0 0 0 0 2zm0 4a1 1 0 1 0 0-2 1 1 0 0 0 0 2z"/>
3
3
  </svg>
@@ -1,3 +1,3 @@
1
- <svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" fill="currentColor" class="bi bi-pencil-fill" viewBox="0 0 16 16">
2
- <path d="M12.854.146a.5.5 0 0 0-.707 0L10.5 1.793 14.207 5.5l1.647-1.646a.5.5 0 0 0 0-.708l-3-3zm.646 6.061L9.793 2.5 3.293 9H3.5a.5.5 0 0 1 .5.5v.5h.5a.5.5 0 0 1 .5.5v.5h.5a.5.5 0 0 1 .5.5v.5h.5a.5.5 0 0 1 .5.5v.207l6.5-6.5zm-7.468 7.468A.5.5 0 0 1 6 13.5V13h-.5a.5.5 0 0 1-.5-.5V12h-.5a.5.5 0 0 1-.5-.5V11h-.5a.5.5 0 0 1-.5-.5V10h-.5a.499.499 0 0 1-.175-.032l-.179.178a.5.5 0 0 0-.11.168l-2 5a.5.5 0 0 0 .65.65l5-2a.5.5 0 0 0 .168-.11l.178-.178z"/>
1
+ <svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" fill="currentColor" class="bi bi-pencil-fill" viewBox="0 0 16 16">
2
+ <path d="M12.854.146a.5.5 0 0 0-.707 0L10.5 1.793 14.207 5.5l1.647-1.646a.5.5 0 0 0 0-.708l-3-3zm.646 6.061L9.793 2.5 3.293 9H3.5a.5.5 0 0 1 .5.5v.5h.5a.5.5 0 0 1 .5.5v.5h.5a.5.5 0 0 1 .5.5v.5h.5a.5.5 0 0 1 .5.5v.207l6.5-6.5zm-7.468 7.468A.5.5 0 0 1 6 13.5V13h-.5a.5.5 0 0 1-.5-.5V12h-.5a.5.5 0 0 1-.5-.5V11h-.5a.5.5 0 0 1-.5-.5V10h-.5a.499.499 0 0 1-.175-.032l-.179.178a.5.5 0 0 0-.11.168l-2 5a.5.5 0 0 0 .65.65l5-2a.5.5 0 0 0 .168-.11l.178-.178z"/>
3
3
  </svg>
@@ -1,3 +1,3 @@
1
- <svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" fill="currentColor" class="bi bi-text-center" viewBox="0 0 16 16">
2
- <path fill-rule="evenodd" d="M4 12.5a.5.5 0 0 1 .5-.5h7a.5.5 0 0 1 0 1h-7a.5.5 0 0 1-.5-.5zm-2-3a.5.5 0 0 1 .5-.5h11a.5.5 0 0 1 0 1h-11a.5.5 0 0 1-.5-.5zm2-3a.5.5 0 0 1 .5-.5h7a.5.5 0 0 1 0 1h-7a.5.5 0 0 1-.5-.5zm-2-3a.5.5 0 0 1 .5-.5h11a.5.5 0 0 1 0 1h-11a.5.5 0 0 1-.5-.5z"/>
1
+ <svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" fill="currentColor" class="bi bi-text-center" viewBox="0 0 16 16">
2
+ <path fill-rule="evenodd" d="M4 12.5a.5.5 0 0 1 .5-.5h7a.5.5 0 0 1 0 1h-7a.5.5 0 0 1-.5-.5zm-2-3a.5.5 0 0 1 .5-.5h11a.5.5 0 0 1 0 1h-11a.5.5 0 0 1-.5-.5zm2-3a.5.5 0 0 1 .5-.5h7a.5.5 0 0 1 0 1h-7a.5.5 0 0 1-.5-.5zm-2-3a.5.5 0 0 1 .5-.5h11a.5.5 0 0 1 0 1h-11a.5.5 0 0 1-.5-.5z"/>
3
3
  </svg>
@@ -1,3 +1,3 @@
1
- <svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" fill="currentColor" class="bi bi-text-left" viewBox="0 0 16 16">
2
- <path fill-rule="evenodd" d="M2 12.5a.5.5 0 0 1 .5-.5h7a.5.5 0 0 1 0 1h-7a.5.5 0 0 1-.5-.5zm0-3a.5.5 0 0 1 .5-.5h11a.5.5 0 0 1 0 1h-11a.5.5 0 0 1-.5-.5zm0-3a.5.5 0 0 1 .5-.5h7a.5.5 0 0 1 0 1h-7a.5.5 0 0 1-.5-.5zm0-3a.5.5 0 0 1 .5-.5h11a.5.5 0 0 1 0 1h-11a.5.5 0 0 1-.5-.5z"/>
1
+ <svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" fill="currentColor" class="bi bi-text-left" viewBox="0 0 16 16">
2
+ <path fill-rule="evenodd" d="M2 12.5a.5.5 0 0 1 .5-.5h7a.5.5 0 0 1 0 1h-7a.5.5 0 0 1-.5-.5zm0-3a.5.5 0 0 1 .5-.5h11a.5.5 0 0 1 0 1h-11a.5.5 0 0 1-.5-.5zm0-3a.5.5 0 0 1 .5-.5h7a.5.5 0 0 1 0 1h-7a.5.5 0 0 1-.5-.5zm0-3a.5.5 0 0 1 .5-.5h11a.5.5 0 0 1 0 1h-11a.5.5 0 0 1-.5-.5z"/>
3
3
  </svg>
@@ -1,3 +1,3 @@
1
- <svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" fill="currentColor" class="bi bi-text-paragraph" viewBox="0 0 16 16">
2
- <path fill-rule="evenodd" d="M2 12.5a.5.5 0 0 1 .5-.5h7a.5.5 0 0 1 0 1h-7a.5.5 0 0 1-.5-.5zm0-3a.5.5 0 0 1 .5-.5h11a.5.5 0 0 1 0 1h-11a.5.5 0 0 1-.5-.5zm0-3a.5.5 0 0 1 .5-.5h11a.5.5 0 0 1 0 1h-11a.5.5 0 0 1-.5-.5zm4-3a.5.5 0 0 1 .5-.5h7a.5.5 0 0 1 0 1h-7a.5.5 0 0 1-.5-.5z"/>
1
+ <svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" fill="currentColor" class="bi bi-text-paragraph" viewBox="0 0 16 16">
2
+ <path fill-rule="evenodd" d="M2 12.5a.5.5 0 0 1 .5-.5h7a.5.5 0 0 1 0 1h-7a.5.5 0 0 1-.5-.5zm0-3a.5.5 0 0 1 .5-.5h11a.5.5 0 0 1 0 1h-11a.5.5 0 0 1-.5-.5zm0-3a.5.5 0 0 1 .5-.5h11a.5.5 0 0 1 0 1h-11a.5.5 0 0 1-.5-.5zm4-3a.5.5 0 0 1 .5-.5h7a.5.5 0 0 1 0 1h-7a.5.5 0 0 1-.5-.5z"/>
3
3
  </svg>
@@ -1,3 +1,3 @@
1
- <svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" fill="currentColor" class="bi bi-text-right" viewBox="0 0 16 16">
2
- <path fill-rule="evenodd" d="M6 12.5a.5.5 0 0 1 .5-.5h7a.5.5 0 0 1 0 1h-7a.5.5 0 0 1-.5-.5zm-4-3a.5.5 0 0 1 .5-.5h11a.5.5 0 0 1 0 1h-11a.5.5 0 0 1-.5-.5zm4-3a.5.5 0 0 1 .5-.5h7a.5.5 0 0 1 0 1h-7a.5.5 0 0 1-.5-.5zm-4-3a.5.5 0 0 1 .5-.5h11a.5.5 0 0 1 0 1h-11a.5.5 0 0 1-.5-.5z"/>
1
+ <svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" fill="currentColor" class="bi bi-text-right" viewBox="0 0 16 16">
2
+ <path fill-rule="evenodd" d="M6 12.5a.5.5 0 0 1 .5-.5h7a.5.5 0 0 1 0 1h-7a.5.5 0 0 1-.5-.5zm-4-3a.5.5 0 0 1 .5-.5h11a.5.5 0 0 1 0 1h-11a.5.5 0 0 1-.5-.5zm4-3a.5.5 0 0 1 .5-.5h7a.5.5 0 0 1 0 1h-7a.5.5 0 0 1-.5-.5zm-4-3a.5.5 0 0 1 .5-.5h11a.5.5 0 0 1 0 1h-11a.5.5 0 0 1-.5-.5z"/>
3
3
  </svg>
@@ -1,3 +1,3 @@
1
- <svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" fill="currentColor" class="bi bi-type-bold" viewBox="0 0 16 16">
2
- <path d="M8.21 13c2.106 0 3.412-1.087 3.412-2.823 0-1.306-.984-2.283-2.324-2.386v-.055a2.176 2.176 0 0 0 1.852-2.14c0-1.51-1.162-2.46-3.014-2.46H3.843V13H8.21zM5.908 4.674h1.696c.963 0 1.517.451 1.517 1.244 0 .834-.629 1.32-1.73 1.32H5.908V4.673zm0 6.788V8.598h1.73c1.217 0 1.88.492 1.88 1.415 0 .943-.643 1.449-1.832 1.449H5.907z"/>
1
+ <svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" fill="currentColor" class="bi bi-type-bold" viewBox="0 0 16 16">
2
+ <path d="M8.21 13c2.106 0 3.412-1.087 3.412-2.823 0-1.306-.984-2.283-2.324-2.386v-.055a2.176 2.176 0 0 0 1.852-2.14c0-1.51-1.162-2.46-3.014-2.46H3.843V13H8.21zM5.908 4.674h1.696c.963 0 1.517.451 1.517 1.244 0 .834-.629 1.32-1.73 1.32H5.908V4.673zm0 6.788V8.598h1.73c1.217 0 1.88.492 1.88 1.415 0 .943-.643 1.449-1.832 1.449H5.907z"/>
3
3
  </svg>
@@ -1,3 +1,3 @@
1
- <svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" fill="currentColor" class="bi bi-type-h1" viewBox="0 0 16 16">
2
- <path d="M8.637 13V3.669H7.379V7.62H2.758V3.67H1.5V13h1.258V8.728h4.62V13h1.259zm5.329 0V3.669h-1.244L10.5 5.316v1.265l2.16-1.565h.062V13h1.244z"/>
1
+ <svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" fill="currentColor" class="bi bi-type-h1" viewBox="0 0 16 16">
2
+ <path d="M8.637 13V3.669H7.379V7.62H2.758V3.67H1.5V13h1.258V8.728h4.62V13h1.259zm5.329 0V3.669h-1.244L10.5 5.316v1.265l2.16-1.565h.062V13h1.244z"/>
3
3
  </svg>
@@ -1,3 +1,3 @@
1
- <svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" fill="currentColor" class="bi bi-type-h2" viewBox="0 0 16 16">
2
- <path d="M7.638 13V3.669H6.38V7.62H1.759V3.67H.5V13h1.258V8.728h4.62V13h1.259zm3.022-6.733v-.048c0-.889.63-1.668 1.716-1.668.957 0 1.675.608 1.675 1.572 0 .855-.554 1.504-1.067 2.085l-3.513 3.999V13H15.5v-1.094h-4.245v-.075l2.481-2.844c.875-.998 1.586-1.784 1.586-2.953 0-1.463-1.155-2.556-2.919-2.556-1.941 0-2.966 1.326-2.966 2.74v.049h1.223z"/>
1
+ <svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" fill="currentColor" class="bi bi-type-h2" viewBox="0 0 16 16">
2
+ <path d="M7.638 13V3.669H6.38V7.62H1.759V3.67H.5V13h1.258V8.728h4.62V13h1.259zm3.022-6.733v-.048c0-.889.63-1.668 1.716-1.668.957 0 1.675.608 1.675 1.572 0 .855-.554 1.504-1.067 2.085l-3.513 3.999V13H15.5v-1.094h-4.245v-.075l2.481-2.844c.875-.998 1.586-1.784 1.586-2.953 0-1.463-1.155-2.556-2.919-2.556-1.941 0-2.966 1.326-2.966 2.74v.049h1.223z"/>
3
3
  </svg>
@@ -1,3 +1,3 @@
1
- <svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" fill="currentColor" class="bi bi-type-h3" viewBox="0 0 16 16">
2
- <path d="M7.637 13V3.669H6.379V7.62H1.758V3.67H.5V13h1.258V8.728h4.62V13h1.259zm3.625-4.272h1.018c1.142 0 1.935.67 1.949 1.674.013 1.005-.78 1.737-2.01 1.73-1.08-.007-1.853-.588-1.935-1.32H9.108c.069 1.327 1.224 2.386 3.083 2.386 1.935 0 3.343-1.155 3.309-2.789-.027-1.51-1.251-2.16-2.037-2.249v-.068c.704-.123 1.764-.91 1.723-2.229-.035-1.353-1.176-2.4-2.954-2.385-1.873.006-2.857 1.162-2.898 2.358h1.196c.062-.69.711-1.299 1.696-1.299.998 0 1.695.622 1.695 1.525.007.922-.718 1.592-1.695 1.592h-.964v1.074z"/>
1
+ <svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" fill="currentColor" class="bi bi-type-h3" viewBox="0 0 16 16">
2
+ <path d="M7.637 13V3.669H6.379V7.62H1.758V3.67H.5V13h1.258V8.728h4.62V13h1.259zm3.625-4.272h1.018c1.142 0 1.935.67 1.949 1.674.013 1.005-.78 1.737-2.01 1.73-1.08-.007-1.853-.588-1.935-1.32H9.108c.069 1.327 1.224 2.386 3.083 2.386 1.935 0 3.343-1.155 3.309-2.789-.027-1.51-1.251-2.16-2.037-2.249v-.068c.704-.123 1.764-.91 1.723-2.229-.035-1.353-1.176-2.4-2.954-2.385-1.873.006-2.857 1.162-2.898 2.358h1.196c.062-.69.711-1.299 1.696-1.299.998 0 1.695.622 1.695 1.525.007.922-.718 1.592-1.695 1.592h-.964v1.074z"/>
3
3
  </svg>
@@ -1,13 +1,13 @@
1
- <?xml version="1.0" encoding="utf-8"?>
2
- <svg width="800px" height="800px" viewBox="0 0 24 24"
3
- xmlns="http://www.w3.org/2000/svg">
4
-
5
- <rect x="0" fill="none" width="24" height="24"/>
6
-
7
- <g>
8
-
9
- <path d="M11 17H9v-4H5v4H3V7h2v4h4V7h2v10zm10-2h-1v2h-2v-2h-5v-2l4.05-6H20v6h1v2zm-3-2V9l-2.79 4H18z"/>
10
-
11
- </g>
12
-
1
+ <?xml version="1.0" encoding="utf-8"?>
2
+ <svg width="800px" height="800px" viewBox="0 0 24 24"
3
+ xmlns="http://www.w3.org/2000/svg">
4
+
5
+ <rect x="0" fill="none" width="24" height="24"/>
6
+
7
+ <g>
8
+
9
+ <path d="M11 17H9v-4H5v4H3V7h2v4h4V7h2v10zm10-2h-1v2h-2v-2h-5v-2l4.05-6H20v6h1v2zm-3-2V9l-2.79 4H18z"/>
10
+
11
+ </g>
12
+
13
13
  </svg>
@@ -1,3 +1,3 @@
1
- <svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" fill="currentColor" class="bi bi-type-italic" viewBox="0 0 16 16">
2
- <path d="M7.991 11.674 9.53 4.455c.123-.595.246-.71 1.347-.807l.11-.52H7.211l-.11.52c1.06.096 1.128.212 1.005.807L6.57 11.674c-.123.595-.246.71-1.346.806l-.11.52h3.774l.11-.52c-1.06-.095-1.129-.211-1.006-.806z"/>
1
+ <svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" fill="currentColor" class="bi bi-type-italic" viewBox="0 0 16 16">
2
+ <path d="M7.991 11.674 9.53 4.455c.123-.595.246-.71 1.347-.807l.11-.52H7.211l-.11.52c1.06.096 1.128.212 1.005.807L6.57 11.674c-.123.595-.246.71-1.346.806l-.11.52h3.774l.11-.52c-1.06-.095-1.129-.211-1.006-.806z"/>
3
3
  </svg>
@@ -1,3 +1,3 @@
1
- <svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" fill="currentColor" class="bi bi-type-strikethrough" viewBox="0 0 16 16">
2
- <path d="M6.333 5.686c0 .31.083.581.27.814H5.166a2.776 2.776 0 0 1-.099-.76c0-1.627 1.436-2.768 3.48-2.768 1.969 0 3.39 1.175 3.445 2.85h-1.23c-.11-1.08-.964-1.743-2.25-1.743-1.23 0-2.18.602-2.18 1.607zm2.194 7.478c-2.153 0-3.589-1.107-3.705-2.81h1.23c.144 1.06 1.129 1.703 2.544 1.703 1.34 0 2.31-.705 2.31-1.675 0-.827-.547-1.374-1.914-1.675L8.046 8.5H1v-1h14v1h-3.504c.468.437.675.994.675 1.697 0 1.826-1.436 2.967-3.644 2.967z"/>
1
+ <svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" fill="currentColor" class="bi bi-type-strikethrough" viewBox="0 0 16 16">
2
+ <path d="M6.333 5.686c0 .31.083.581.27.814H5.166a2.776 2.776 0 0 1-.099-.76c0-1.627 1.436-2.768 3.48-2.768 1.969 0 3.39 1.175 3.445 2.85h-1.23c-.11-1.08-.964-1.743-2.25-1.743-1.23 0-2.18.602-2.18 1.607zm2.194 7.478c-2.153 0-3.589-1.107-3.705-2.81h1.23c.144 1.06 1.129 1.703 2.544 1.703 1.34 0 2.31-.705 2.31-1.675 0-.827-.547-1.374-1.914-1.675L8.046 8.5H1v-1h14v1h-3.504c.468.437.675.994.675 1.697 0 1.826-1.436 2.967-3.644 2.967z"/>
3
3
  </svg>
@@ -1,3 +1,3 @@
1
- <svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" fill="currentColor" class="bi bi-type-underline" viewBox="0 0 16 16">
2
- <path d="M5.313 3.136h-1.23V9.54c0 2.105 1.47 3.623 3.917 3.623s3.917-1.518 3.917-3.623V3.136h-1.23v6.323c0 1.49-.978 2.57-2.687 2.57-1.709 0-2.687-1.08-2.687-2.57V3.136zM12.5 15h-9v-1h9v1z"/>
1
+ <svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" fill="currentColor" class="bi bi-type-underline" viewBox="0 0 16 16">
2
+ <path d="M5.313 3.136h-1.23V9.54c0 2.105 1.47 3.623 3.917 3.623s3.917-1.518 3.917-3.623V3.136h-1.23v6.323c0 1.49-.978 2.57-2.687 2.57-1.709 0-2.687-1.08-2.687-2.57V3.136zM12.5 15h-9v-1h9v1z"/>
3
3
  </svg>
package/package.json CHANGED
@@ -1,84 +1,84 @@
1
- {
2
- "name": "@churchapps/apphelper",
3
- "version": "0.0.8",
4
- "description": "Library of helper functions for React and NextJS ChurchApps",
5
- "main": "dist/index.js",
6
- "scripts": {
7
- "test": "echo \"Error: no test specified\" && exit 1",
8
- "clean": "rimraf dist",
9
- "copy-css": "copyfiles -f src/components/markdownEditor/editor.css dist/components/markdownEditor",
10
- "copy-icons": "copyfiles -f src/components/markdownEditor/images/icons/* dist/components/markdownEditor/images/icons",
11
- "copy-emojis": "copyfiles -f src/components/markdownEditor/images/emoji/* dist/components/markdownEditor/images/emoji",
12
- "copy-assets": "npm-run-all copy-css copy-icons copy-emojis",
13
- "link": "link",
14
- "tsc": "tsc",
15
- "build": "npm-run-all clean tsc copy-assets"
16
- },
17
- "repository": {
18
- "type": "git",
19
- "url": "git+https://github.com/LiveChurchSolutions/AppHelper.git"
20
- },
21
- "keywords": [
22
- "ChurchApps"
23
- ],
24
- "author": "ChurchApps.org",
25
- "license": "MIT",
26
- "bugs": {
27
- "url": "https://github.com/LiveChurchSolutions/AppHelper/issues"
28
- },
29
- "homepage": "https://github.com/LiveChurchSolutions/AppHelper#readme",
30
- "peerDependencies": {
31
- "react": "^18.2.0",
32
- "react-dom": "^18.2.0",
33
- "react-router-dom": "^6.15.0"
34
- },
35
- "dependencies": {
36
- "@churchapps/helpers": "^1.0.6",
37
- "@emotion/cache": "^11.11.0",
38
- "@emotion/react": "^11.11.1",
39
- "@emotion/styled": "^11.11.0",
40
- "@lexical/code": "^0.12.0",
41
- "@lexical/link": "^0.12.0",
42
- "@lexical/list": "^0.12.0",
43
- "@lexical/markdown": "^0.12.0",
44
- "@lexical/react": "^0.12.0",
45
- "@lexical/rich-text": "^0.12.0",
46
- "@lexical/selection": "^0.12.0",
47
- "@lexical/table": "^0.12.0",
48
- "@lexical/utils": "^0.12.0",
49
- "@mui/lab": "^5.0.0-alpha.142",
50
- "@mui/material": "^5.14.7",
51
- "@stripe/react-stripe-js": "^2.1.2",
52
- "@stripe/stripe-js": "^2.1.1",
53
- "axios": "^1.5.0",
54
- "cropperjs": "^1.6.0",
55
- "date-fns": "^2.30.0",
56
- "flexsearch": "^0.7.31",
57
- "jwt-decode": "^3.1.2",
58
- "lexical": "^0.12.0",
59
- "material-symbols": "^0.11.0",
60
- "react-activity": "^2.1.3",
61
- "react-cookie": "^6.1.0",
62
- "react-cropper": "^2.3.3",
63
- "react-csv": "^2.2.2",
64
- "react-ga4": "^2.1.0",
65
- "react-google-charts": "^3.0.15",
66
- "react-google-recaptcha": "^3.1.0",
67
- "react-to-print": "^2.14.13",
68
- "rrule": "^2.7.2"
69
- },
70
- "devDependencies": {
71
- "@types/node": "^20.5.9",
72
- "@types/react": "^18.2.21",
73
- "@types/react-csv": "^1.1.3",
74
- "@types/react-dom": "^18.2.7",
75
- "@types/react-google-recaptcha": "^2.1.5",
76
- "copyfiles": "^2.4.1",
77
- "eslint-config-react-app": "^7.0.1",
78
- "eslint-plugin-react": "^7.33.2",
79
- "npm-run-all": "^4.1.5",
80
- "rimraf": "^5.0.1",
81
- "tslint": "^6.1.2",
82
- "typescript": "^5.2.2"
83
- }
84
- }
1
+ {
2
+ "name": "@churchapps/apphelper",
3
+ "version": "0.0.10",
4
+ "description": "Library of helper functions for React and NextJS ChurchApps",
5
+ "main": "dist/index.js",
6
+ "scripts": {
7
+ "test": "echo \"Error: no test specified\" && exit 1",
8
+ "clean": "rimraf dist",
9
+ "copy-css": "copyfiles -f src/components/markdownEditor/editor.css dist/components/markdownEditor",
10
+ "copy-icons": "copyfiles -f src/components/markdownEditor/images/icons/* dist/components/markdownEditor/images/icons",
11
+ "copy-emojis": "copyfiles -f src/components/markdownEditor/images/emoji/* dist/components/markdownEditor/images/emoji",
12
+ "copy-assets": "npm-run-all copy-css copy-icons copy-emojis",
13
+ "link": "link",
14
+ "tsc": "tsc",
15
+ "build": "npm-run-all clean tsc copy-assets"
16
+ },
17
+ "repository": {
18
+ "type": "git",
19
+ "url": "git+https://github.com/LiveChurchSolutions/AppHelper.git"
20
+ },
21
+ "keywords": [
22
+ "ChurchApps"
23
+ ],
24
+ "author": "ChurchApps.org",
25
+ "license": "MIT",
26
+ "bugs": {
27
+ "url": "https://github.com/LiveChurchSolutions/AppHelper/issues"
28
+ },
29
+ "homepage": "https://github.com/LiveChurchSolutions/AppHelper#readme",
30
+ "peerDependencies": {
31
+ "react": "^18.2.0",
32
+ "react-dom": "^18.2.0",
33
+ "react-router-dom": "^6.15.0"
34
+ },
35
+ "dependencies": {
36
+ "@churchapps/helpers": "^1.0.6",
37
+ "@emotion/cache": "^11.11.0",
38
+ "@emotion/react": "^11.11.1",
39
+ "@emotion/styled": "^11.11.0",
40
+ "@lexical/code": "^0.12.0",
41
+ "@lexical/link": "^0.12.0",
42
+ "@lexical/list": "^0.12.0",
43
+ "@lexical/markdown": "^0.12.0",
44
+ "@lexical/react": "^0.12.0",
45
+ "@lexical/rich-text": "^0.12.0",
46
+ "@lexical/selection": "^0.12.0",
47
+ "@lexical/table": "^0.12.0",
48
+ "@lexical/utils": "^0.12.0",
49
+ "@mui/lab": "^5.0.0-alpha.142",
50
+ "@mui/material": "^5.14.7",
51
+ "@stripe/react-stripe-js": "^2.1.2",
52
+ "@stripe/stripe-js": "^2.1.1",
53
+ "axios": "^1.5.0",
54
+ "cropperjs": "^1.6.0",
55
+ "date-fns": "^2.30.0",
56
+ "flexsearch": "^0.7.31",
57
+ "jwt-decode": "^3.1.2",
58
+ "lexical": "^0.12.0",
59
+ "material-symbols": "^0.11.0",
60
+ "react-activity": "^2.1.3",
61
+ "react-cookie": "^6.1.0",
62
+ "react-cropper": "^2.3.3",
63
+ "react-csv": "^2.2.2",
64
+ "react-ga4": "^2.1.0",
65
+ "react-google-charts": "^3.0.15",
66
+ "react-google-recaptcha": "^3.1.0",
67
+ "react-to-print": "^2.14.13",
68
+ "rrule": "^2.7.2"
69
+ },
70
+ "devDependencies": {
71
+ "@types/node": "^20.5.9",
72
+ "@types/react": "^18.2.21",
73
+ "@types/react-csv": "^1.1.3",
74
+ "@types/react-dom": "^18.2.7",
75
+ "@types/react-google-recaptcha": "^2.1.5",
76
+ "copyfiles": "^2.4.1",
77
+ "eslint-config-react-app": "^7.0.1",
78
+ "eslint-plugin-react": "^7.33.2",
79
+ "npm-run-all": "^4.1.5",
80
+ "rimraf": "^5.0.1",
81
+ "tslint": "^6.1.2",
82
+ "typescript": "^5.2.2"
83
+ }
84
+ }
@@ -1,80 +1,80 @@
1
- import React from "react"
2
- import { useNavigate } from "react-router-dom"
3
- import { UserHelper, ApiHelper } from "../helpers";
4
- import { Permissions, PersonInterface, HouseholdInterface } from "../interfaces";
5
- import { Button, Grid, TextField } from "@mui/material"
6
- import { ErrorMessages } from "./ErrorMessages"
7
- import { useMountedState } from "../hooks/useMountedState"
8
-
9
- interface Props {
10
- navigateOnCreate?: boolean;
11
- onCreate?: (person: PersonInterface) => void;
12
- }
13
-
14
- export function CreatePerson({ navigateOnCreate = true, onCreate = () => {} }: Props) {
15
- const navigate = useNavigate()
16
- const [person, setPerson] = React.useState<PersonInterface>({ name: { first: "", last: "" }, contactInfo: {} });
17
- const [errors, setErrors] = React.useState<string[]>([]);
18
- const [isSubmitting, setIsSubmitting] = React.useState(false);
19
- const isMounted = useMountedState()
20
-
21
- const validate = () => {
22
- const result = [];
23
- if (!person.name?.first) result.push("Please enter a first name.");
24
- if (!person.name?.last) result.push("Please enter a last name.");
25
- setErrors(result);
26
- return result.length === 0;
27
- }
28
-
29
- const handleChange = (e: React.ChangeEvent<HTMLInputElement | HTMLSelectElement | HTMLTextAreaElement>) => {
30
- setErrors([]);
31
- const p = { ...person } as PersonInterface;
32
- let value = e.target.value;
33
- switch (e.target.name) {
34
- case "first": p.name.first = value; break;
35
- case "last": p.name.last = value; break;
36
- }
37
- setPerson(p);
38
- }
39
-
40
- function handleSubmit() {
41
- let household = { name: person.name.last } as HouseholdInterface;
42
- if (validate()) {
43
- setIsSubmitting(true);
44
- ApiHelper.post("/households", [household], "MembershipApi").then(data => {
45
- household.id = data[0].id;
46
- person.householdId = household.id;
47
- person.name.display = [person.name.first, person.name.last].join(" ");
48
- ApiHelper.post("/people", [person], "MembershipApi").then(data => {
49
- person.id = data[0].id
50
- onCreate(person);
51
- setPerson({...person, name: { first: "", last: "" }});
52
- navigateOnCreate && navigate("/people/" + person.id);
53
- }).finally(() => {
54
- if (isMounted()) {
55
- setIsSubmitting(false);
56
- }
57
- });
58
- });
59
- }
60
- }
61
-
62
- if (!UserHelper.checkAccess(Permissions.membershipApi.people.edit)) return null;
63
- return (
64
- <div>
65
- <p className="pl-1 mb-3 text-dark"><b>Add a New Person</b></p>
66
- <ErrorMessages errors={errors} />
67
- <Grid container spacing={3} alignItems="center">
68
- <Grid item md={4} xs={12}>
69
- <TextField size="small" margin="none" fullWidth type="text" aria-label="firstName" label="First Name" name="first" value={person.name.first || ""} onChange={handleChange} onKeyDown={(e: React.KeyboardEvent<HTMLInputElement>) => e.key === "Enter" && handleSubmit} />
70
- </Grid>
71
- <Grid item md={4} xs={12}>
72
- <TextField size="small" margin="none" fullWidth type="text" aria-label="lastName" label="Last Name" name="last" value={person.name.last || ""} onChange={handleChange} onKeyDown={(e: React.KeyboardEvent<HTMLInputElement>) => e.key === "Enter" && handleSubmit} />
73
- </Grid>
74
- <Grid item md={4} xs={12}>
75
- <Button type="submit" fullWidth variant="contained" disabled={isSubmitting} onClick={handleSubmit}>Add</Button>
76
- </Grid>
77
- </Grid>
78
- </div>
79
- )
80
- }
1
+ import React from "react"
2
+ import { useNavigate } from "react-router-dom"
3
+ import { UserHelper, ApiHelper } from "../helpers";
4
+ import { Permissions, PersonInterface, HouseholdInterface } from "../interfaces";
5
+ import { Button, Grid, TextField } from "@mui/material"
6
+ import { ErrorMessages } from "./ErrorMessages"
7
+ import { useMountedState } from "../hooks/useMountedState"
8
+
9
+ interface Props {
10
+ navigateOnCreate?: boolean;
11
+ onCreate?: (person: PersonInterface) => void;
12
+ }
13
+
14
+ export function CreatePerson({ navigateOnCreate = true, onCreate = () => {} }: Props) {
15
+ const navigate = useNavigate()
16
+ const [person, setPerson] = React.useState<PersonInterface>({ name: { first: "", last: "" }, contactInfo: {} });
17
+ const [errors, setErrors] = React.useState<string[]>([]);
18
+ const [isSubmitting, setIsSubmitting] = React.useState(false);
19
+ const isMounted = useMountedState()
20
+
21
+ const validate = () => {
22
+ const result = [];
23
+ if (!person.name?.first) result.push("Please enter a first name.");
24
+ if (!person.name?.last) result.push("Please enter a last name.");
25
+ setErrors(result);
26
+ return result.length === 0;
27
+ }
28
+
29
+ const handleChange = (e: React.ChangeEvent<HTMLInputElement | HTMLSelectElement | HTMLTextAreaElement>) => {
30
+ setErrors([]);
31
+ const p = { ...person } as PersonInterface;
32
+ let value = e.target.value;
33
+ switch (e.target.name) {
34
+ case "first": p.name.first = value; break;
35
+ case "last": p.name.last = value; break;
36
+ }
37
+ setPerson(p);
38
+ }
39
+
40
+ function handleSubmit() {
41
+ let household = { name: person.name.last } as HouseholdInterface;
42
+ if (validate()) {
43
+ setIsSubmitting(true);
44
+ ApiHelper.post("/households", [household], "MembershipApi").then(data => {
45
+ household.id = data[0].id;
46
+ person.householdId = household.id;
47
+ person.name.display = [person.name.first, person.name.last].join(" ");
48
+ ApiHelper.post("/people", [person], "MembershipApi").then(data => {
49
+ person.id = data[0].id
50
+ onCreate(person);
51
+ setPerson({...person, name: { first: "", last: "" }});
52
+ navigateOnCreate && navigate("/people/" + person.id);
53
+ }).finally(() => {
54
+ if (isMounted()) {
55
+ setIsSubmitting(false);
56
+ }
57
+ });
58
+ });
59
+ }
60
+ }
61
+
62
+ if (!UserHelper.checkAccess(Permissions.membershipApi.people.edit)) return null;
63
+ return (
64
+ <div>
65
+ <p className="pl-1 mb-3 text-dark"><b>Add a New Person</b></p>
66
+ <ErrorMessages errors={errors} />
67
+ <Grid container spacing={3} alignItems="center">
68
+ <Grid item md={4} xs={12}>
69
+ <TextField size="small" margin="none" fullWidth type="text" aria-label="firstName" label="First Name" name="first" value={person.name.first || ""} onChange={handleChange} onKeyDown={(e: React.KeyboardEvent<HTMLInputElement>) => e.key === "Enter" && handleSubmit} />
70
+ </Grid>
71
+ <Grid item md={4} xs={12}>
72
+ <TextField size="small" margin="none" fullWidth type="text" aria-label="lastName" label="Last Name" name="last" value={person.name.last || ""} onChange={handleChange} onKeyDown={(e: React.KeyboardEvent<HTMLInputElement>) => e.key === "Enter" && handleSubmit} />
73
+ </Grid>
74
+ <Grid item md={4} xs={12}>
75
+ <Button type="submit" fullWidth variant="contained" disabled={isSubmitting} onClick={handleSubmit}>Add</Button>
76
+ </Grid>
77
+ </Grid>
78
+ </div>
79
+ )
80
+ }