strapi-plugin-comments 2.1.0-beta.1 → 2.1.2

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 (407) hide show
  1. package/.husky/pre-commit +4 -0
  2. package/LICENSE.md +7 -0
  3. package/README.md +41 -5
  4. package/admin/src/components/ActionButton/styles.ts +11 -0
  5. package/admin/src/components/Avatar/index.tsx +31 -0
  6. package/admin/src/components/ConfirmationDialog/index.tsx +88 -0
  7. package/admin/src/components/DiscussionStatus/index.tsx +36 -0
  8. package/admin/src/components/DiscussionThread/index.tsx +97 -0
  9. package/admin/src/components/DiscussionThreadItem/index.tsx +71 -0
  10. package/admin/src/components/DiscussionThreadItem/styles.ts +15 -0
  11. package/admin/src/components/DiscussionThreadItemActions/index.tsx +365 -0
  12. package/admin/src/components/DiscussionThreadItemActions/styles.ts +9 -0
  13. package/admin/src/components/DiscussionThreadItemApprovalFlowActions/index.tsx +99 -0
  14. package/admin/src/components/DiscussionThreadItemApprovalFlowActions/styles.ts +8 -0
  15. package/admin/src/components/DiscussionThreadItemFooter/index.tsx +62 -0
  16. package/admin/src/components/DiscussionThreadItemFooter/styles.ts +15 -0
  17. package/admin/src/components/DiscussionThreadItemReviewAction/index.tsx +180 -0
  18. package/admin/src/components/FormSwitch/index.tsx +35 -0
  19. package/admin/src/components/FormSwitch/styles.ts +10 -0
  20. package/admin/src/components/IconButton/styles.ts +19 -0
  21. package/admin/src/components/Initializer/index.tsx +28 -0
  22. package/admin/src/components/LoadingIndicatorOverlay/index.tsx +19 -0
  23. package/admin/src/components/LoadingIndicatorOverlay/styles.ts +21 -0
  24. package/admin/src/components/Nav/index.tsx +61 -0
  25. package/admin/src/components/PluginIcon/index.tsx +14 -0
  26. package/admin/src/components/ReportsReviewModal/index.tsx +71 -0
  27. package/admin/src/components/ReportsReviewTable/index.tsx +233 -0
  28. package/admin/src/components/StatusBadge/index.tsx +21 -0
  29. package/admin/src/components/StatusBadge/styles.ts +19 -0
  30. package/admin/src/components/TableFilters/index.tsx +58 -0
  31. package/admin/src/components/TablePagination/index.tsx +37 -0
  32. package/admin/src/components/icons/comments.tsx +15 -0
  33. package/admin/src/components/icons/index.ts +6 -0
  34. package/admin/src/components/icons/lock.tsx +27 -0
  35. package/admin/src/components/icons/review.tsx +25 -0
  36. package/admin/src/components/icons/unlock.tsx +25 -0
  37. package/admin/src/hooks/useConfig.ts +58 -0
  38. package/admin/src/index.ts +98 -0
  39. package/admin/src/pages/App/index.tsx +67 -0
  40. package/admin/src/pages/App/reducer/actions.ts +10 -0
  41. package/admin/src/pages/App/reducer/constants.ts +4 -0
  42. package/admin/src/pages/App/reducer/index.ts +28 -0
  43. package/admin/src/pages/App/reducer/init.ts +9 -0
  44. package/admin/src/pages/App/reducer/selectors.ts +32 -0
  45. package/admin/src/pages/App/utils/api.ts +14 -0
  46. package/admin/src/pages/ComingSoonPage/index.tsx +31 -0
  47. package/admin/src/pages/Details/components/DetailsEntity/index.tsx +106 -0
  48. package/admin/src/pages/Details/components/DetailsFilters/index.tsx +43 -0
  49. package/admin/src/pages/Details/components/DetailsFilters/styles.ts +9 -0
  50. package/admin/src/pages/Details/index.tsx +169 -0
  51. package/admin/src/pages/Discover/components/DiscoverTableRow/index.tsx +252 -0
  52. package/admin/src/pages/Discover/components/DiscoverTableRow/styles.ts +9 -0
  53. package/admin/src/pages/Discover/index.tsx +230 -0
  54. package/admin/src/pages/Discover/utils/api.ts +22 -0
  55. package/admin/src/pages/Discover/utils/filtersSchema.ts +9 -0
  56. package/admin/src/pages/Settings/components/RestartAlert/styles.ts +10 -0
  57. package/admin/src/pages/Settings/index.tsx +602 -0
  58. package/admin/src/pages/Settings/utils/api.ts +71 -0
  59. package/admin/src/pages/utils/api.ts +70 -0
  60. package/admin/src/permissions.ts +30 -0
  61. package/admin/src/pluginId.ts +3 -0
  62. package/admin/src/reducers.ts +8 -0
  63. package/admin/src/translations/fr.json +132 -1
  64. package/admin/src/translations/pt-BR.json +130 -130
  65. package/admin/src/utils/axiosInstance.ts +38 -0
  66. package/admin/src/utils/constants.ts +25 -0
  67. package/admin/src/utils/getApiUrl.ts +5 -0
  68. package/admin/src/utils/getMessage.ts +29 -0
  69. package/admin/src/utils/getRelatedGroups.ts +6 -0
  70. package/admin/src/utils/getUrl.ts +5 -0
  71. package/admin/src/utils/handleAPIError.ts +21 -0
  72. package/admin/src/utils/index.ts +11 -0
  73. package/admin/src/utils/parseRegExp.ts +9 -0
  74. package/admin/src/utils/renderEntryTitle.ts +16 -0
  75. package/admin/src/utils/renderInitials.ts +10 -0
  76. package/admin/src/utils/resolveCommentStatus.ts +37 -0
  77. package/admin/src/utils/resolveCommentStatusColor.ts +22 -0
  78. package/{admin → build/admin}/src/components/ActionButton/styles.d.ts +0 -0
  79. package/{admin → build/admin}/src/components/ActionButton/styles.js +0 -0
  80. package/build/admin/src/components/Avatar/index.d.ts +12 -0
  81. package/build/admin/src/components/Avatar/index.js +26 -0
  82. package/{admin → build/admin}/src/components/ConfirmationDialog/index.d.ts +0 -0
  83. package/{admin → build/admin}/src/components/ConfirmationDialog/index.js +0 -0
  84. package/{admin → build/admin}/src/components/DiscussionStatus/index.d.ts +0 -0
  85. package/{admin → build/admin}/src/components/DiscussionStatus/index.js +0 -0
  86. package/{admin → build/admin}/src/components/DiscussionThread/index.d.ts +0 -0
  87. package/{admin → build/admin}/src/components/DiscussionThread/index.js +0 -0
  88. package/{admin → build/admin}/src/components/DiscussionThreadItem/index.d.ts +0 -0
  89. package/{admin → build/admin}/src/components/DiscussionThreadItem/index.js +0 -0
  90. package/{admin → build/admin}/src/components/DiscussionThreadItem/styles.d.ts +0 -0
  91. package/{admin → build/admin}/src/components/DiscussionThreadItem/styles.js +0 -0
  92. package/{admin → build/admin}/src/components/DiscussionThreadItemActions/index.d.ts +0 -0
  93. package/{admin → build/admin}/src/components/DiscussionThreadItemActions/index.js +0 -0
  94. package/{admin → build/admin}/src/components/DiscussionThreadItemActions/styles.d.ts +0 -0
  95. package/{admin → build/admin}/src/components/DiscussionThreadItemActions/styles.js +0 -0
  96. package/{admin → build/admin}/src/components/DiscussionThreadItemApprovalFlowActions/index.d.ts +0 -0
  97. package/{admin → build/admin}/src/components/DiscussionThreadItemApprovalFlowActions/index.js +0 -0
  98. package/{admin → build/admin}/src/components/DiscussionThreadItemApprovalFlowActions/styles.d.ts +0 -0
  99. package/{admin → build/admin}/src/components/DiscussionThreadItemApprovalFlowActions/styles.js +0 -0
  100. package/{admin → build/admin}/src/components/DiscussionThreadItemFooter/index.d.ts +0 -0
  101. package/{admin → build/admin}/src/components/DiscussionThreadItemFooter/index.js +3 -4
  102. package/{admin → build/admin}/src/components/DiscussionThreadItemFooter/styles.d.ts +0 -0
  103. package/{admin → build/admin}/src/components/DiscussionThreadItemFooter/styles.js +0 -0
  104. package/{admin → build/admin}/src/components/DiscussionThreadItemReviewAction/index.d.ts +0 -0
  105. package/{admin → build/admin}/src/components/DiscussionThreadItemReviewAction/index.js +0 -0
  106. package/{admin → build/admin}/src/components/FormSwitch/index.d.ts +0 -0
  107. package/{admin → build/admin}/src/components/FormSwitch/index.js +0 -0
  108. package/{admin → build/admin}/src/components/FormSwitch/styles.d.ts +0 -0
  109. package/{admin → build/admin}/src/components/FormSwitch/styles.js +0 -0
  110. package/{admin → build/admin}/src/components/IconButton/styles.d.ts +0 -0
  111. package/{admin → build/admin}/src/components/IconButton/styles.js +0 -0
  112. package/{admin → build/admin}/src/components/Initializer/index.d.ts +0 -0
  113. package/{admin → build/admin}/src/components/Initializer/index.js +0 -0
  114. package/{admin → build/admin}/src/components/LoadingIndicatorOverlay/index.d.ts +0 -0
  115. package/{admin → build/admin}/src/components/LoadingIndicatorOverlay/index.js +0 -0
  116. package/{admin → build/admin}/src/components/LoadingIndicatorOverlay/styles.d.ts +0 -0
  117. package/{admin → build/admin}/src/components/LoadingIndicatorOverlay/styles.js +0 -0
  118. package/{admin → build/admin}/src/components/Nav/index.d.ts +0 -0
  119. package/{admin → build/admin}/src/components/Nav/index.js +0 -0
  120. package/{admin → build/admin}/src/components/PluginIcon/index.d.ts +0 -0
  121. package/{admin → build/admin}/src/components/PluginIcon/index.js +0 -0
  122. package/{admin → build/admin}/src/components/ReportsReviewModal/index.d.ts +0 -0
  123. package/{admin → build/admin}/src/components/ReportsReviewModal/index.js +0 -0
  124. package/{admin → build/admin}/src/components/ReportsReviewTable/index.d.ts +0 -0
  125. package/{admin → build/admin}/src/components/ReportsReviewTable/index.js +0 -0
  126. package/{admin → build/admin}/src/components/StatusBadge/index.d.ts +0 -0
  127. package/{admin → build/admin}/src/components/StatusBadge/index.js +0 -0
  128. package/{admin → build/admin}/src/components/StatusBadge/styles.d.ts +0 -0
  129. package/{admin → build/admin}/src/components/StatusBadge/styles.js +0 -0
  130. package/{admin → build/admin}/src/components/TableFilters/index.d.ts +0 -0
  131. package/{admin → build/admin}/src/components/TableFilters/index.js +0 -0
  132. package/{admin → build/admin}/src/components/TablePagination/index.d.ts +0 -0
  133. package/{admin → build/admin}/src/components/TablePagination/index.js +0 -0
  134. package/{admin → build/admin}/src/components/icons/comments.d.ts +0 -0
  135. package/{admin → build/admin}/src/components/icons/comments.js +0 -0
  136. package/{admin → build/admin}/src/components/icons/index.d.ts +0 -0
  137. package/{admin → build/admin}/src/components/icons/index.js +0 -0
  138. package/{admin → build/admin}/src/components/icons/lock.d.ts +0 -0
  139. package/{admin → build/admin}/src/components/icons/lock.js +0 -0
  140. package/{admin → build/admin}/src/components/icons/review.d.ts +0 -0
  141. package/{admin → build/admin}/src/components/icons/review.js +0 -0
  142. package/{admin → build/admin}/src/components/icons/unlock.d.ts +0 -0
  143. package/{admin → build/admin}/src/components/icons/unlock.js +0 -0
  144. package/{admin → build/admin}/src/hooks/useConfig.d.ts +0 -0
  145. package/{admin → build/admin}/src/hooks/useConfig.js +0 -0
  146. package/{admin → build/admin}/src/index.d.ts +0 -0
  147. package/{admin → build/admin}/src/index.js +0 -0
  148. package/{admin → build/admin}/src/pages/App/index.d.ts +0 -0
  149. package/{admin → build/admin}/src/pages/App/index.js +0 -0
  150. package/{admin → build/admin}/src/pages/App/reducer/actions.d.ts +0 -0
  151. package/{admin → build/admin}/src/pages/App/reducer/actions.js +0 -0
  152. package/{admin → build/admin}/src/pages/App/reducer/constants.d.ts +0 -0
  153. package/{admin → build/admin}/src/pages/App/reducer/constants.js +0 -0
  154. package/{admin → build/admin}/src/pages/App/reducer/index.d.ts +0 -0
  155. package/{admin → build/admin}/src/pages/App/reducer/index.js +0 -0
  156. package/{admin → build/admin}/src/pages/App/reducer/init.d.ts +0 -0
  157. package/{admin → build/admin}/src/pages/App/reducer/init.js +0 -0
  158. package/{admin → build/admin}/src/pages/App/reducer/selectors.d.ts +0 -0
  159. package/{admin → build/admin}/src/pages/App/reducer/selectors.js +0 -0
  160. package/{admin → build/admin}/src/pages/App/utils/api.d.ts +0 -0
  161. package/{admin → build/admin}/src/pages/App/utils/api.js +0 -0
  162. package/{admin → build/admin}/src/pages/ComingSoonPage/index.d.ts +0 -0
  163. package/{admin → build/admin}/src/pages/ComingSoonPage/index.js +0 -0
  164. package/{admin → build/admin}/src/pages/Details/components/DetailsEntity/index.d.ts +0 -0
  165. package/{admin → build/admin}/src/pages/Details/components/DetailsEntity/index.js +0 -0
  166. package/{admin → build/admin}/src/pages/Details/components/DetailsFilters/index.d.ts +0 -0
  167. package/{admin → build/admin}/src/pages/Details/components/DetailsFilters/index.js +0 -0
  168. package/{admin → build/admin}/src/pages/Details/components/DetailsFilters/styles.d.ts +0 -0
  169. package/{admin → build/admin}/src/pages/Details/components/DetailsFilters/styles.js +0 -0
  170. package/{admin → build/admin}/src/pages/Details/index.d.ts +0 -0
  171. package/{admin → build/admin}/src/pages/Details/index.js +0 -0
  172. package/{admin → build/admin}/src/pages/Discover/components/DiscoverTableRow/index.d.ts +0 -0
  173. package/{admin → build/admin}/src/pages/Discover/components/DiscoverTableRow/index.js +2 -2
  174. package/{admin → build/admin}/src/pages/Discover/components/DiscoverTableRow/styles.d.ts +0 -0
  175. package/{admin → build/admin}/src/pages/Discover/components/DiscoverTableRow/styles.js +0 -0
  176. package/{admin → build/admin}/src/pages/Discover/index.d.ts +0 -0
  177. package/{admin → build/admin}/src/pages/Discover/index.js +0 -0
  178. package/{admin → build/admin}/src/pages/Discover/utils/api.d.ts +0 -0
  179. package/{admin → build/admin}/src/pages/Discover/utils/api.js +0 -0
  180. package/{admin → build/admin}/src/pages/Discover/utils/filtersSchema.d.ts +0 -0
  181. package/{admin → build/admin}/src/pages/Discover/utils/filtersSchema.js +0 -0
  182. package/{admin → build/admin}/src/pages/Settings/components/RestartAlert/styles.d.ts +0 -0
  183. package/{admin → build/admin}/src/pages/Settings/components/RestartAlert/styles.js +0 -0
  184. package/{admin → build/admin}/src/pages/Settings/index.d.ts +0 -0
  185. package/{admin → build/admin}/src/pages/Settings/index.js +0 -0
  186. package/{admin → build/admin}/src/pages/Settings/utils/api.d.ts +0 -0
  187. package/{admin → build/admin}/src/pages/Settings/utils/api.js +0 -0
  188. package/{admin → build/admin}/src/pages/utils/api.d.ts +0 -0
  189. package/{admin → build/admin}/src/pages/utils/api.js +0 -0
  190. package/{admin → build/admin}/src/permissions.d.ts +0 -0
  191. package/{admin → build/admin}/src/permissions.js +0 -0
  192. package/{admin → build/admin}/src/pluginId.d.ts +0 -0
  193. package/{admin → build/admin}/src/pluginId.js +0 -0
  194. package/{admin → build/admin}/src/reducers.d.ts +0 -0
  195. package/{admin → build/admin}/src/reducers.js +0 -0
  196. package/build/admin/src/translations/en.json +132 -0
  197. package/build/admin/src/translations/fr.json +132 -0
  198. package/build/admin/src/translations/pt-BR.json +132 -0
  199. package/{admin → build/admin}/src/utils/axiosInstance.d.ts +0 -0
  200. package/{admin → build/admin}/src/utils/axiosInstance.js +0 -0
  201. package/{admin → build/admin}/src/utils/constants.d.ts +0 -0
  202. package/{admin → build/admin}/src/utils/constants.js +0 -0
  203. package/{admin → build/admin}/src/utils/getApiUrl.d.ts +0 -0
  204. package/{admin → build/admin}/src/utils/getApiUrl.js +0 -0
  205. package/{admin → build/admin}/src/utils/getMessage.d.ts +0 -0
  206. package/{admin → build/admin}/src/utils/getMessage.js +0 -0
  207. package/{admin → build/admin}/src/utils/getRelatedGroups.d.ts +0 -0
  208. package/{admin → build/admin}/src/utils/getRelatedGroups.js +0 -0
  209. package/{admin → build/admin}/src/utils/getUrl.d.ts +0 -0
  210. package/{admin → build/admin}/src/utils/getUrl.js +0 -0
  211. package/{admin → build/admin}/src/utils/handleAPIError.d.ts +0 -0
  212. package/{admin → build/admin}/src/utils/handleAPIError.js +0 -0
  213. package/{admin → build/admin}/src/utils/index.d.ts +0 -0
  214. package/{admin → build/admin}/src/utils/index.js +0 -0
  215. package/{admin → build/admin}/src/utils/parseRegExp.d.ts +0 -0
  216. package/{admin → build/admin}/src/utils/parseRegExp.js +0 -0
  217. package/{admin → build/admin}/src/utils/renderEntryTitle.d.ts +0 -0
  218. package/{admin → build/admin}/src/utils/renderEntryTitle.js +0 -0
  219. package/{admin → build/admin}/src/utils/renderInitials.d.ts +0 -0
  220. package/{admin → build/admin}/src/utils/renderInitials.js +0 -0
  221. package/{admin → build/admin}/src/utils/resolveCommentStatus.d.ts +0 -0
  222. package/{admin → build/admin}/src/utils/resolveCommentStatus.js +0 -0
  223. package/{admin → build/admin}/src/utils/resolveCommentStatusColor.d.ts +0 -0
  224. package/{admin → build/admin}/src/utils/resolveCommentStatusColor.js +0 -0
  225. package/{content-types → build/content-types}/comment.d.ts +0 -0
  226. package/{content-types → build/content-types}/comment.js +0 -0
  227. package/{content-types → build/content-types}/index.d.ts +0 -0
  228. package/{content-types → build/content-types}/index.js +0 -0
  229. package/{content-types → build/content-types}/report.d.ts +0 -0
  230. package/{content-types → build/content-types}/report.js +0 -0
  231. package/build/package.json +94 -0
  232. package/{permissions.d.ts → build/permissions.d.ts} +0 -0
  233. package/{permissions.js → build/permissions.js} +0 -0
  234. package/{server → build/server}/bootstrap.d.ts +0 -0
  235. package/{server → build/server}/bootstrap.js +0 -0
  236. package/{server → build/server}/config/index.d.ts +0 -0
  237. package/{server → build/server}/config/index.js +0 -0
  238. package/{server → build/server}/controllers/admin.d.ts +0 -0
  239. package/{server → build/server}/controllers/admin.js +0 -0
  240. package/build/server/controllers/client.d.ts +4 -0
  241. package/{server → build/server}/controllers/client.js +38 -22
  242. package/{server → build/server}/controllers/index.d.ts +0 -0
  243. package/{server → build/server}/controllers/index.js +0 -0
  244. package/build/server/controllers/utils/functions.d.ts +7 -0
  245. package/{server → build/server}/controllers/utils/functions.js +0 -0
  246. package/build/server/controllers/utils/parsers.d.ts +10 -0
  247. package/build/server/controllers/utils/parsers.js +51 -0
  248. package/{server → build/server}/destroy.d.ts +0 -0
  249. package/{server → build/server}/destroy.js +0 -0
  250. package/{server → build/server}/graphql/index.d.ts +0 -0
  251. package/{server → build/server}/graphql/index.js +0 -0
  252. package/{server → build/server}/graphql/mutations/createAbuseReport.d.ts +0 -0
  253. package/{server → build/server}/graphql/mutations/createAbuseReport.js +0 -0
  254. package/{server → build/server}/graphql/mutations/createComment.d.ts +1 -1
  255. package/{server → build/server}/graphql/mutations/createComment.js +0 -0
  256. package/{server → build/server}/graphql/mutations/index.d.ts +0 -0
  257. package/{server → build/server}/graphql/mutations/index.js +0 -0
  258. package/{server → build/server}/graphql/mutations/removeComment.d.ts +1 -1
  259. package/{server → build/server}/graphql/mutations/removeComment.js +0 -0
  260. package/{server → build/server}/graphql/mutations/updateComment.d.ts +1 -1
  261. package/{server → build/server}/graphql/mutations/updateComment.js +0 -0
  262. package/{server → build/server}/graphql/queries/findAllFlat.d.ts +1 -1
  263. package/{server → build/server}/graphql/queries/findAllFlat.js +11 -6
  264. package/{server → build/server}/graphql/queries/findAllInHierarchy.d.ts +1 -2
  265. package/{server → build/server}/graphql/queries/findAllInHierarchy.js +5 -1
  266. package/{server → build/server}/graphql/queries/index.d.ts +0 -0
  267. package/{server → build/server}/graphql/queries/index.js +0 -0
  268. package/{server → build/server}/graphql/resolvers-config.d.ts +0 -0
  269. package/{server → build/server}/graphql/resolvers-config.js +0 -0
  270. package/{server → build/server}/graphql/types/comment-author.d.ts +0 -0
  271. package/{server → build/server}/graphql/types/comment-author.js +0 -0
  272. package/{server → build/server}/graphql/types/comment-nested.d.ts +0 -0
  273. package/{server → build/server}/graphql/types/comment-nested.js +0 -0
  274. package/{server → build/server}/graphql/types/comment.d.ts +0 -0
  275. package/{server → build/server}/graphql/types/comment.js +0 -0
  276. package/{server → build/server}/graphql/types/create-comment-author.d.ts +0 -0
  277. package/{server → build/server}/graphql/types/create-comment-author.js +0 -0
  278. package/{server → build/server}/graphql/types/create-comment.d.ts +0 -0
  279. package/{server → build/server}/graphql/types/create-comment.js +0 -0
  280. package/{server → build/server}/graphql/types/create-report.d.ts +0 -0
  281. package/{server → build/server}/graphql/types/create-report.js +0 -0
  282. package/{server → build/server}/graphql/types/id.d.ts +0 -0
  283. package/{server → build/server}/graphql/types/id.js +0 -0
  284. package/{server → build/server}/graphql/types/identify-comment-author.d.ts +0 -0
  285. package/{server → build/server}/graphql/types/identify-comment-author.js +0 -0
  286. package/{server → build/server}/graphql/types/index.d.ts +0 -0
  287. package/{server → build/server}/graphql/types/index.js +0 -0
  288. package/{server → build/server}/graphql/types/remove-comment.d.ts +0 -0
  289. package/{server → build/server}/graphql/types/remove-comment.js +0 -0
  290. package/{server → build/server}/graphql/types/report-reason.d.ts +0 -0
  291. package/{server → build/server}/graphql/types/report-reason.js +0 -0
  292. package/{server → build/server}/graphql/types/report.d.ts +0 -0
  293. package/{server → build/server}/graphql/types/report.js +0 -0
  294. package/{server → build/server}/graphql/types/response-find-all.d.ts +0 -0
  295. package/{server → build/server}/graphql/types/response-find-all.js +0 -0
  296. package/{server → build/server}/graphql/types/response-meta.d.ts +0 -0
  297. package/{server → build/server}/graphql/types/response-meta.js +0 -0
  298. package/{server → build/server}/graphql/types/response-pagination.d.ts +0 -0
  299. package/{server → build/server}/graphql/types/response-pagination.js +0 -0
  300. package/{server → build/server}/graphql/types/update-comment.d.ts +0 -0
  301. package/{server → build/server}/graphql/types/update-comment.js +0 -0
  302. package/{server → build/server}/index.d.ts +0 -0
  303. package/{server → build/server}/index.js +0 -0
  304. package/{server → build/server}/register.d.ts +0 -0
  305. package/{server → build/server}/register.js +0 -0
  306. package/{server → build/server}/routes/admin.d.ts +0 -0
  307. package/{server → build/server}/routes/admin.js +0 -0
  308. package/{server → build/server}/routes/client.d.ts +0 -0
  309. package/build/server/routes/client.js +90 -0
  310. package/{server → build/server}/routes/index.d.ts +0 -0
  311. package/{server → build/server}/routes/index.js +0 -0
  312. package/{server → build/server}/services/admin.d.ts +0 -0
  313. package/{server → build/server}/services/admin.js +10 -5
  314. package/{server → build/server}/services/client.d.ts +0 -0
  315. package/{server → build/server}/services/client.js +57 -45
  316. package/{server → build/server}/services/common.d.ts +0 -0
  317. package/{server → build/server}/services/common.js +32 -11
  318. package/{server → build/server}/services/graphql.d.ts +0 -0
  319. package/{server → build/server}/services/graphql.js +0 -0
  320. package/{server → build/server}/services/index.d.ts +0 -0
  321. package/{server → build/server}/services/index.js +0 -0
  322. package/{server → build/server}/services/utils/functions.d.ts +1 -1
  323. package/{server → build/server}/services/utils/functions.js +9 -4
  324. package/{server → build/server}/utils/constants.d.ts +0 -0
  325. package/{server → build/server}/utils/constants.js +0 -0
  326. package/{server → build/server}/utils/error.d.ts +0 -0
  327. package/{server → build/server}/utils/error.js +0 -0
  328. package/{server → build/server}/utils/functions.d.ts +0 -0
  329. package/{server → build/server}/utils/functions.js +0 -0
  330. package/{strapi-admin.d.ts → build/strapi-admin.d.ts} +0 -0
  331. package/{strapi-admin.js → build/strapi-admin.js} +0 -0
  332. package/{strapi-server.d.ts → build/strapi-server.d.ts} +0 -0
  333. package/{strapi-server.js → build/strapi-server.js} +0 -0
  334. package/build/tsconfig.tsbuildinfo +1 -0
  335. package/{types → build/types}/contentTypes.d.ts +13 -9
  336. package/{types → build/types}/contentTypes.js +0 -0
  337. package/content-types/comment.ts +93 -0
  338. package/content-types/index.ts +11 -0
  339. package/content-types/report.ts +50 -0
  340. package/jest.config.ts +22 -0
  341. package/package.json +36 -7
  342. package/permissions.ts +17 -0
  343. package/server/bootstrap.ts +66 -0
  344. package/server/config/index.ts +19 -0
  345. package/server/controllers/admin.ts +194 -0
  346. package/server/controllers/client.ts +220 -0
  347. package/server/controllers/index.ts +13 -0
  348. package/server/controllers/utils/functions.ts +27 -0
  349. package/server/controllers/utils/parsers.ts +59 -0
  350. package/server/destroy.ts +3 -0
  351. package/server/graphql/index.ts +27 -0
  352. package/server/graphql/mutations/createAbuseReport.ts +38 -0
  353. package/server/graphql/mutations/createComment.ts +41 -0
  354. package/server/graphql/mutations/index.ts +26 -0
  355. package/server/graphql/mutations/removeComment.ts +41 -0
  356. package/server/graphql/mutations/updateComment.ts +40 -0
  357. package/server/graphql/queries/findAllFlat.ts +58 -0
  358. package/server/graphql/queries/findAllInHierarchy.ts +47 -0
  359. package/server/graphql/queries/index.ts +22 -0
  360. package/server/graphql/resolvers-config.ts +13 -0
  361. package/server/graphql/types/comment-author.ts +12 -0
  362. package/server/graphql/types/comment-nested.ts +19 -0
  363. package/server/graphql/types/comment.ts +18 -0
  364. package/server/graphql/types/create-comment-author.ts +12 -0
  365. package/server/graphql/types/create-comment.ts +12 -0
  366. package/server/graphql/types/create-report.ts +12 -0
  367. package/server/graphql/types/id.ts +28 -0
  368. package/server/graphql/types/identify-comment-author.ts +9 -0
  369. package/server/graphql/types/index.ts +38 -0
  370. package/server/graphql/types/remove-comment.ts +11 -0
  371. package/server/graphql/types/report-reason.ts +12 -0
  372. package/server/graphql/types/report.ts +14 -0
  373. package/server/graphql/types/response-find-all.ts +10 -0
  374. package/server/graphql/types/response-meta.ts +9 -0
  375. package/server/graphql/types/response-pagination.ts +14 -0
  376. package/server/graphql/types/update-comment.ts +12 -0
  377. package/server/index.ts +20 -0
  378. package/server/register.ts +3 -0
  379. package/server/routes/admin.ts +118 -0
  380. package/server/routes/client.ts +95 -0
  381. package/server/routes/index.ts +25 -0
  382. package/server/services/admin.ts +406 -0
  383. package/server/services/client.ts +394 -0
  384. package/server/services/common.ts +501 -0
  385. package/server/services/graphql.ts +219 -0
  386. package/server/services/index.ts +13 -0
  387. package/server/services/utils/functions.ts +150 -0
  388. package/server/utils/constants.ts +23 -0
  389. package/server/utils/error.ts +44 -0
  390. package/server/utils/functions.ts +55 -0
  391. package/strapi-admin.ts +5 -0
  392. package/strapi-server.ts +77 -0
  393. package/tsconfig.json +38 -0
  394. package/types/common.d.ts +1 -0
  395. package/types/config.d.ts +35 -0
  396. package/types/constants.d.ts +3 -0
  397. package/types/contentTypes.ts +56 -0
  398. package/types/controllers.d.ts +125 -0
  399. package/types/graphql.d.ts +24 -0
  400. package/types/index.d.ts +7 -0
  401. package/types/services.d.ts +166 -0
  402. package/server/controllers/client.d.ts +0 -4
  403. package/server/controllers/utils/functions.d.ts +0 -7
  404. package/server/controllers/utils/parsers.d.ts +0 -15
  405. package/server/controllers/utils/parsers.js +0 -23
  406. package/server/routes/client.js +0 -54
  407. package/tsconfig.tsbuildinfo +0 -1
@@ -0,0 +1,70 @@
1
+ import { stringify } from "qs";
2
+ import { isEmpty } from "lodash";
3
+
4
+ import { getApiURL, axiosInstance, handleAPIError } from "../../utils";
5
+ import { Id } from "strapi-typed";
6
+ import { ToBeFixed } from "../../../../types";
7
+
8
+ // eslint-disable-next-line import/prefer-default-export
9
+ export const fetchDetailsData = async (
10
+ id: Id,
11
+ queryParams: ToBeFixed,
12
+ toggleNotification: Function
13
+ ) => {
14
+ try {
15
+ const stringifiedProps = !isEmpty(queryParams)
16
+ ? `?${stringify(queryParams, { encode: false })}`
17
+ : "";
18
+ const { data } = await axiosInstance.get(
19
+ getApiURL(`moderate/single/${id}${stringifiedProps}`)
20
+ );
21
+
22
+ return data;
23
+ } catch (err: ToBeFixed) {
24
+ handleAPIError(err, toggleNotification);
25
+ }
26
+ };
27
+
28
+ export const fetchContentTypeData = async (
29
+ uid: string,
30
+ toggleNotification: Function
31
+ ) => {
32
+ try {
33
+ const { data } = await axiosInstance.get(
34
+ `/content-type-builder/content-types/${uid}`
35
+ );
36
+ return data?.data;
37
+ } catch (err: ToBeFixed) {
38
+ handleAPIError(err, toggleNotification);
39
+ }
40
+ };
41
+
42
+ export const blockItem = (id: Id) => {
43
+ return axiosInstance.patch(getApiURL(`moderate/single/${id}/block`));
44
+ };
45
+
46
+ export const unblockItem = (id: Id) => {
47
+ return axiosInstance.patch(getApiURL(`moderate/single/${id}/unblock`));
48
+ };
49
+
50
+ export const approveItem = (id: Id) => {
51
+ return axiosInstance.patch(getApiURL(`moderate/single/${id}/approve`));
52
+ };
53
+
54
+ export const rejectItem = (id: Id) => {
55
+ return axiosInstance.patch(getApiURL(`moderate/single/${id}/reject`));
56
+ };
57
+
58
+ export const blockItemThread = (id: Id) => {
59
+ return axiosInstance.patch(getApiURL(`moderate/thread/${id}/block`));
60
+ };
61
+
62
+ export const unblockItemThread = (id: Id) => {
63
+ return axiosInstance.patch(getApiURL(`moderate/thread/${id}/unblock`));
64
+ };
65
+
66
+ export const resolveReport = ({ id, reportId }: ToBeFixed) => {
67
+ return axiosInstance.patch(
68
+ getApiURL(`moderate/single/${id}/report/${reportId}/resolve`)
69
+ );
70
+ };
@@ -0,0 +1,30 @@
1
+ import permissions from "./../../permissions";
2
+
3
+ export default {
4
+ access: [
5
+ { action: permissions.render(permissions.comments.read), subject: null },
6
+ { action: permissions.render(permissions.reports.read), subject: null },
7
+ // { action: 'plugin::comments.discover.read', subject: null },
8
+ { action: permissions.render(permissions.settings.read), subject: null },
9
+ { action: permissions.render(permissions.settings.read), subject: null },
10
+ ],
11
+ // discover: [{ action: 'plugin::comments.discover.read', subject: null }],
12
+ moderate: [
13
+ {
14
+ action: permissions.render(permissions.comments.moderate),
15
+ subject: null,
16
+ },
17
+ ],
18
+ reports: [
19
+ { action: permissions.render(permissions.reports.read), subject: null },
20
+ ],
21
+ reportsReview: [
22
+ { action: permissions.render(permissions.reports.action), subject: null },
23
+ ],
24
+ settings: [
25
+ { action: permissions.render(permissions.settings.read), subject: null },
26
+ ],
27
+ settingsChange: [
28
+ { action: permissions.render(permissions.settings.change), subject: null },
29
+ ],
30
+ };
@@ -0,0 +1,3 @@
1
+ import * as pluginPkg from "../../package.json";
2
+
3
+ export const pluginId = pluginPkg.name.replace(/^strapi-plugin-/i, "");
@@ -0,0 +1,8 @@
1
+ import appReducer from "./pages/App/reducer";
2
+ import { REDUCER_NAME } from "./pages/App/reducer/constants";
3
+
4
+ const reducers = {
5
+ [`${REDUCER_NAME}`]: appReducer,
6
+ };
7
+
8
+ export default reducers;
@@ -1 +1,132 @@
1
- {}
1
+ {
2
+ "plugin.name": "Commentaires",
3
+ "plugin.section": "Plugin de commentaires",
4
+ "plugin.section.item": "Configuration",
5
+ "common.button.back": "Retour",
6
+ "nav.header.moderation": "Modération",
7
+ "nav.header.settings": "Paramètres",
8
+ "nav.item.updates": "Mises à jour",
9
+ "nav.item.discover": "Découvrir",
10
+ "nav.item.reports": "Rapports",
11
+ "nav.item.settings": "Paramètres",
12
+ "page.common.item.status.OPEN": "Ouvert",
13
+ "page.common.item.status.PENDING": "En attente",
14
+ "page.common.item.status.BLOCKED": "Bloqué",
15
+ "page.common.item.status.APPROVED": "Approuvé",
16
+ "page.common.item.status.TO_REVIEW": "À examiner ({count, number})",
17
+ "page.common.item.status.REJECTED": "Rejeté",
18
+ "page.common.item.status.REMOVED": "Retiré par l'auteur",
19
+ "page.updates.header": "Mises à jour récentes",
20
+ "page.discover.header": "Découvrir les threads",
21
+ "page.discover.header.count": "entrées trouvées",
22
+ "page.discover.table.header.id": "ID",
23
+ "page.discover.table.header.author": "Auteur",
24
+ "page.discover.table.header.message": "Message",
25
+ "page.discover.table.header.thread": "Thread de",
26
+ "page.discover.table.header.entry": "Entrée",
27
+ "page.discover.table.header.lastUpdate": "Dernière mise à jour",
28
+ "page.discover.table.header.status": "Status",
29
+ "page.discover.table.header.actions": "Actions",
30
+ "page.discover.table.cell.thread": "Commentaire #{id}",
31
+ "page.discover.table.action.display": "Afficher",
32
+ "page.discover.table.action.reports": "Rapports",
33
+ "page.discover.table.empty": "Vous n'avez pas de encore de commentaires.",
34
+ "page.discover.table.empty.search": "Aucun commentaire ne correspond à votre recherche.",
35
+ "page.discover.table.filters": "Filtrage",
36
+ "page.discover.table.reports.review": "Consultation des rapports",
37
+ "page.details.header": "Panel de discussion",
38
+ "page.details.header.description": "Exploration et gestion de discussions relatives à l'entité",
39
+ "page.details.panel.discussion": "Discussion",
40
+ "page.details.panel.discussion.nav.drilldown": "Exploration",
41
+ "page.details.panel.discussion.nav.back": "Retour en haut",
42
+ "page.details.panel.discussion.warnings.reports.description": "rapports ouverts",
43
+ "page.details.panel.discussion.warnings.reports.review": "consultation",
44
+ "page.details.panel.discussion.warnings.reports.dialog.list": "Rapports",
45
+ "page.details.panel.discussion.warnings.reports.dialog.header": "Modération : Examiner les rapports ouverts",
46
+ "page.details.panel.discussion.warnings.reports.dialog.reason": "Raison",
47
+ "page.details.panel.discussion.warnings.reports.dialog.reason.BAD_LANGUAGE": "Langage inapproprié",
48
+ "page.details.panel.discussion.warnings.reports.dialog.reason.DISCRIMINATION": "Discrimination",
49
+ "page.details.panel.discussion.warnings.reports.dialog.reason.OTHER": "Autre",
50
+ "page.details.panel.discussion.warnings.reports.dialog.content": "Contenu",
51
+ "page.details.panel.discussion.warnings.reports.dialog.createdAt": "Date de création",
52
+ "page.details.panel.discussion.warnings.reports.dialog.status": "Status",
53
+ "page.details.panel.discussion.warnings.reports.dialog.status.OPEN": "Ouvert",
54
+ "page.details.panel.discussion.warnings.reports.dialog.status.RESOLVED": "Résolu",
55
+ "page.details.panel.discussion.warnings.reports.dialog.actions": "Actions",
56
+ "page.details.panel.discussion.warnings.reports.dialog.actions.resolve": "Résoudre",
57
+ "page.details.panel.discussion.warnings.reports.dialog.confirmation.success": "Le rapport ouvert a été résolu",
58
+ "page.details.panel.discussion.status.blocked": "Bloqué",
59
+ "page.details.panel.entity": "Détails de l'entité",
60
+ "page.details.panel.status": "La discussion est",
61
+ "page.details.panel.status.open": "Ouvert",
62
+ "page.details.panel.status.blocked": "Bloqué",
63
+ "page.details.panel.status.pending": "En attente",
64
+ "page.details.panel.loading": "Récupération de l'entité...",
65
+ "page.details.actions.comment.block": "Bloquer le commentaire",
66
+ "page.details.actions.comment.block.confirmation.header": "Modération : Bloquer le commentaire",
67
+ "page.details.actions.comment.block.confirmation.description": "Voulez-vous vraiment bloquer ce commentaire ?",
68
+ "page.details.actions.comment.block.confirmation.button.confirm": "Oui, bloqué le",
69
+ "page.details.actions.comment.block.confirmation.success": "Le commentaire a été bloqué",
70
+ "page.details.actions.comment.unblock": "Débloquer le commentaire",
71
+ "page.details.actions.comment.unblock.confirmation.success": "Le commentaire a été débloqué",
72
+ "page.details.actions.comment.reports.review": "Consulter",
73
+ "page.details.actions.thread.block": "Bloquer le thread",
74
+ "page.details.actions.thread.block.confirmation.header": "Moderation: Bloquer le thread",
75
+ "page.details.actions.thread.block.confirmation.description": "Voulez-vous vraiment bloquer tout le thread ? Aucune autre discussion ne sera autorisée.",
76
+ "page.details.actions.thread.block.confirmation.button.confirm": "Oui, bloqué le",
77
+ "page.details.actions.thread.block.confirmation.success": "Le thread a été bloqué",
78
+ "page.details.actions.thread.unblock": "Débloquer le thread",
79
+ "page.details.actions.thread.unblock.confirmation.success": "Le thread a été débloqué",
80
+ "page.details.actions.comment.approve.confirmation.success": "Le commentaire a été apprové",
81
+ "page.details.actions.comment.reject.confirmation.success": "Le commentaire a été rejeté",
82
+ "page.details.filters.label": "Voir",
83
+ "page.details.filters.removed.visibility": "Afficher les commentaires supprimés",
84
+ "page.coming.soon": "Attendez pour ce qui va bientôt arriver...",
85
+ "page.settings": "Paramètres",
86
+ "page.settings.header.title": "Commentaires",
87
+ "page.settings.header.description": "Configurez vos capacités de modération des commentaires",
88
+ "page.settings.actions.submit": "Enregistrer",
89
+ "page.settings.actions.restore": "Restaurer les paramètres par défaut",
90
+ "page.settings.actions.restart": "Redémarrer Strapi",
91
+ "page.settings.section.general": "Configuration générale",
92
+ "page.settings.section.additional": "Configuration supplémentaire",
93
+ "page.settings.section.restore": "Restaurer les paramètres par défaut",
94
+ "page.settings.section.restore.subtitle": "Suppression de tous les paramètres appliqués et retour aux paramètres par défaut du plugin. Utilisez-les raisonnablement",
95
+ "page.settings.form.enabledCollections.label": "Activer les commentaires uniquement pour",
96
+ "page.settings.form.enabledCollections.placeholder": "Sélectionnez une ou plusieurs collections",
97
+ "page.settings.form.enabledCollections.hint": "Si aucun n'est sélectionné, tous les types de contenu sont activés",
98
+ "page.settings.form.contentTypesSettings.label": "Types de contenu",
99
+ "page.settings.form.contentTypesSettings.tooltip": "Configuration personnalisée par type de contenu",
100
+ "page.settings.form.moderatorRoles.label": "Envoyer des notifications importantes à",
101
+ "page.settings.form.moderatorRoles.placeholder": "Sélectionnez un ou plusieurs rôles",
102
+ "page.settings.form.moderatorRoles.hint": "Rôles qui vont être notifiés par le plugin sur les actions significatives à effectuer",
103
+ "page.settings.form.badWords.label": "Filtrage des gros mots",
104
+ "page.settings.form.badWords.hint": "Si activé, chaque message / mise à jour de commentaire va être vérifié contre les gros mots",
105
+ "page.settings.form.gqlAuth.label": "Autorisation des requêtes GraphQL",
106
+ "page.settings.form.gqlAuth.hint": "Si elle est activée, les requêtes et mutations de l'API GraphQL ne peuvent être déclenchées que par les utilisateurs Strapi authentifiés. Sinon, l'API reste ouverte.",
107
+ "page.settings.form.approvalFlow.label": "Flux de validation",
108
+ "page.settings.form.approvalFlow.hint": "Les commentaires associés au type de contenu \"{nom}\" vont être soumis à un flux de vérification manuel",
109
+ "page.settings.form.entryLabel.label": "Champs de titre",
110
+ "page.settings.form.entryLabel.placeholder": "Sélectionnez au moins un champ ou laissez vide pour appliquer les valeurs par défaut",
111
+ "page.settings.form.entryLabel.hint": "Si vous laissez vide, le rendu du titre sera le suivant : \"Title\", \"Subject\" & \"Name\"",
112
+ "page.settings.actions.restore.confirmation.header": "Restaurer la configuration par défaut",
113
+ "page.settings.actions.restore.confirmation.description": "Vous êtes sur le point de restaurer la configuration du plugin à ses valeurs par défaut. Cela pourrait avoir un impact destructeur sur le contenu déjà collecté. Voulez-vous vraiment continuer ?",
114
+ "page.settings.actions.restore.confirmation.button.confirm": "Oui, je veux restaurer",
115
+ "page.settings.actions.restart.alert.title": "Strapi requiert un redémarrage",
116
+ "page.settings.actions.restart.alert.description": "Vous avez effectué un changement de configuration qui nécessite que votre application Strapi soit redémarrée pour prendre effet dans le schéma GraphQL. Faites-le manuellement ou en utilisant le déclencheur ci-dessous.",
117
+ "page.settings.actions.restart.alert.close": "Abandonner",
118
+ "page.settings.notification.fetch.error": "Impossible de récupérer la configuration. Nouvelle tentative en cours...",
119
+ "page.settings.notification.submit.success": "La configuration a été enregistrée avec succès",
120
+ "page.settings.notification.submit.error": "Échec de la sauvegarde de la configuration. Veuillez rééssayer plus tard.",
121
+ "page.settings.notification.restore.success": "La configuration a été restaurée avec succès",
122
+ "page.settings.notification.restore.error": "Impossible de restaurer la configuration. Veuillez rééssayer plus tard.",
123
+ "page.settings.notification.restart.success": "L'application a été redémarrée avec succès",
124
+ "page.settings.notification.restart.error": "Le redémarrage de votre application a échoué. Essayez de le faire manuellement.",
125
+ "page.settings.loading": "Récupération de la configuration...",
126
+ "compontents.confirmation.dialog.header": "Confirmation",
127
+ "compontents.confirmation.dialog.description": "Voulez-vous vraiment effectuer cette action ?",
128
+ "compontents.confirmation.dialog.button.confirm": "Oui, je le veux",
129
+ "compontents.confirmation.dialog.button.cancel": "Annuler",
130
+ "compontents.toogle.enabled": "Activé",
131
+ "compontents.toogle.disabled": "Désactivé"
132
+ }
@@ -1,132 +1,132 @@
1
1
  {
2
- "plugin.name": "Comentários",
3
- "plugin.section": "plugin de comentários",
4
- "plugin.section.item": "Configurações",
5
- "common.button.back": "Voltar",
6
- "nav.header.moderation": "Moderação",
7
- "nav.header.settings": "Configurações",
8
- "nav.item.updates": "Updates",
9
- "nav.item.discover": "Descobrir",
10
- "nav.item.reports": "Reports",
11
- "nav.item.settings": "Configurações",
12
- "page.common.item.status.OPEN": "Abrir",
13
- "page.common.item.status.PENDING": "Pendente",
14
- "page.common.item.status.BLOCKED": "Bloqueado",
15
- "page.common.item.status.APPROVED": "Aprovado",
16
- "page.common.item.status.TO_REVIEW": "Para revisar ({count, number})",
17
- "page.common.item.status.REJECTED": "Rejeitado",
18
- "page.common.item.status.REMOVED": "Removido pelo autor",
19
- "page.updates.header": "Atualizações recentes",
20
- "page.discover.header": "Descubra tópicos",
21
- "page.discover.header.count": "entries found",
22
- "page.discover.table.header.id": "ID",
23
- "page.discover.table.header.author": "Autor",
24
- "page.discover.table.header.message": "Messagem",
25
- "page.discover.table.header.thread": "Thread of",
26
- "page.discover.table.header.entry": "Entry",
27
- "page.discover.table.header.lastUpdate": "Ultima atualização",
28
- "page.discover.table.header.status": "Status",
29
- "page.discover.table.header.actions": "Actions",
30
- "page.discover.table.cell.thread": "Comentário #{id}",
31
- "page.discover.table.action.display": "Display",
32
- "page.discover.table.action.reports": "Reports",
33
- "page.discover.table.empty": "Você ainda não tem comentários.",
34
- "page.discover.table.empty.search": "Nenhum comentário corresponde à pesquisa.",
35
- "page.discover.table.filters": "Filtrando",
36
- "page.discover.table.reports.review": "Review reports",
37
- "page.details.header": "Painel de discussão",
38
- "page.details.header.description": "Pesquise e gerencie a discussão relacionada à entidade",
39
- "page.details.panel.discussion": "Discussão",
40
- "page.details.panel.discussion.nav.drilldown": "Pesquisa detalhada",
41
- "page.details.panel.discussion.nav.back": "Ir para o topo",
42
- "page.details.panel.discussion.warnings.reports.description": "Abrir reports",
43
- "page.details.panel.discussion.warnings.reports.review": "Review",
44
- "page.details.panel.discussion.warnings.reports.dialog.list": "Reports",
45
- "page.details.panel.discussion.warnings.reports.dialog.header": "Moderation: Review open reports",
46
- "page.details.panel.discussion.warnings.reports.dialog.reason": "Razão",
47
- "page.details.panel.discussion.warnings.reports.dialog.reason.BAD_LANGUAGE": "Linguagem imprópria",
48
- "page.details.panel.discussion.warnings.reports.dialog.reason.DISCRIMINATION": "Discrimination",
49
- "page.details.panel.discussion.warnings.reports.dialog.reason.OTHER": "Outros",
50
- "page.details.panel.discussion.warnings.reports.dialog.content": "Conteúdo",
51
- "page.details.panel.discussion.warnings.reports.dialog.createdAt": "Issue date",
52
- "page.details.panel.discussion.warnings.reports.dialog.status": "Status",
53
- "page.details.panel.discussion.warnings.reports.dialog.status.OPEN": "Aberto",
54
- "page.details.panel.discussion.warnings.reports.dialog.status.RESOLVED": "Resolvido",
55
- "page.details.panel.discussion.warnings.reports.dialog.actions": "Ações",
56
- "page.details.panel.discussion.warnings.reports.dialog.actions.resolve": "Resolver",
57
- "page.details.panel.discussion.warnings.reports.dialog.confirmation.success": "Open report has been resolved",
58
- "page.details.panel.discussion.status.blocked": "Bloqueado",
59
- "page.details.panel.entity": "Entity details",
60
- "page.details.panel.status": "Discussion is",
61
- "page.details.panel.status.open": "Open",
62
- "page.details.panel.status.blocked": "Bloqueado",
63
- "page.details.panel.status.pending": "Pendente",
64
- "page.details.panel.loading": "Fetching entity...",
65
- "page.details.actions.comment.block": "Bloquear comentário",
66
- "page.details.actions.comment.block.confirmation.header": "Moderação: Bloquear comentário",
67
- "page.details.actions.comment.block.confirmation.description": "Deseja mesmo bloquear este comentário?",
68
- "page.details.actions.comment.block.confirmation.button.confirm": "Sim, bloqueie",
69
- "page.details.actions.comment.block.confirmation.success": "O comentário foi bloqueado",
70
- "page.details.actions.comment.unblock": "Desbloquear comentário",
71
- "page.details.actions.comment.unblock.confirmation.success": "O comentário foi desbloqueado",
72
- "page.details.actions.comment.reports.review": "Análise",
73
- "page.details.actions.thread.block": "Bloquear thread",
74
- "page.details.actions.thread.block.confirmation.header": "Moderação: Bloquear thread",
75
- "page.details.actions.thread.block.confirmation.description": "Você realmente quer bloquear todo o thread? Nenhuma outra discussão será permitida.",
76
- "page.details.actions.thread.block.confirmation.button.confirm": "Sim, bloqueie",
77
- "page.details.actions.thread.block.confirmation.success": "A thread foi bloqueada",
78
- "page.details.actions.thread.unblock": "Desbloquear thread",
79
- "page.details.actions.thread.unblock.confirmation.success": "A Thread foi desbloqueado",
80
- "page.details.actions.comment.approve.confirmation.success": "O comentário foi aprovado",
81
- "page.details.actions.comment.reject.confirmation.success": "O comentário foi rejeitado",
82
- "page.details.filters.label": "View",
83
- "page.details.filters.removed.visibility": "Mostrar comentários removidos",
84
- "page.coming.soon": "Aguarde o que está por vir...",
85
- "page.settings": "Configurações",
86
- "page.settings.header.title": "Comentários",
87
- "page.settings.header.description": "Configure seus recursos de moderação de comentários",
88
- "page.settings.actions.submit": "Salvar",
89
- "page.settings.actions.restore": "Restaurar configurações originais",
90
- "page.settings.actions.restart": "Restart Strapi",
91
- "page.settings.section.general": "Configurações gerais",
92
- "page.settings.section.additional": "Configurações adicionais",
93
- "page.settings.section.restore": "Restaurar configurações originais",
94
- "page.settings.section.restore.subtitle": "Descartando todas as configurações aplicadas e voltando para as configurações padrão do plugin. Use razoável.",
95
- "page.settings.form.enabledCollections.label": "Ativar comentários apenas para",
96
- "page.settings.form.enabledCollections.placeholder": "Selecione uma ou mais collection",
97
- "page.settings.form.enabledCollections.hint": "Se nenhum for selecionado, todos os tipos de conteúdo serão habilitados",
98
- "page.settings.form.contentTypesSettings.label": "Tipos de conteúdo",
99
- "page.settings.form.contentTypesSettings.tooltip": "Configuração personalizada por tipo de conteúdo",
100
- "page.settings.form.moderatorRoles.label": "Envie notificações importantes para",
101
- "page.settings.form.moderatorRoles.placeholder": "Selecione um ou mais Roles",
102
- "page.settings.form.moderatorRoles.hint": "Roles que serão notificadas pelo plugin sobre ações significativas a serem executadas",
103
- "page.settings.form.badWords.label": "Filtragem de palavrões",
104
- "page.settings.form.badWords.hint": "Se ativado, todas as postagens/atualizações de comentários serão verificadas em relação a palavras impróprias",
105
- "page.settings.form.gqlAuth.label": "GraphQL queries authorization",
106
- "page.settings.form.gqlAuth.hint": "Se ativado, as queries e mutations da API GraphQL podem ser acionadas apenas por usuários autenticados do Strapi. Caso contrário, a API permanece aberta.",
107
- "page.settings.form.approvalFlow.label": "Fluxo de aprovação",
108
- "page.settings.form.approvalFlow.hint": "Os comentários associados ao tipo de conteúdo \"{name}\" passarão pelo fluxo de aprovação manual",
109
- "page.settings.form.entryLabel.label": "Campos de título",
110
- "page.settings.form.entryLabel.placeholder": "Selecione pelo menos um ou deixe em branco para aplicar os padrões",
111
- "page.settings.form.entryLabel.hint": "Se deixado em branco, a renderização do título terá os seguintes campos ordenados: \"Title\", \"Subject\" & \"Name\"",
112
- "page.settings.actions.restore.confirmation.header": "Restaurar a configuração padrão",
113
- "page.settings.actions.restore.confirmation.description": "Você está prestes a restaurar a configuração do plug-in para seus valores padrão. Pode ter um impacto destrutivo no conteúdo já coletado. Você realmente quer continuar?",
114
- "page.settings.actions.restore.confirmation.button.confirm": "Sim, quero restaurar",
115
- "page.settings.actions.restart.alert.title": "Strapi requer reinicialização",
116
- "page.settings.actions.restart.alert.description": "Você fez uma alteração de configuração que exige que seu aplicativo Strapi seja reiniciado para ter efeito no schema do GraphQL. Faça isso manualmente ou usando o trigger abaixo.",
117
- "page.settings.actions.restart.alert.close": "Descartar",
118
- "page.settings.notification.fetch.error": "Falha ao buscar a configuração. Tentando novamente...",
119
- "page.settings.notification.submit.success": "A configuração foi salva com sucesso",
120
- "page.settings.notification.submit.error": "Falha ao salvar a configuração. Tente novamente.",
121
- "page.settings.notification.restore.success": "A configuração foi restaurada com sucesso",
122
- "page.settings.notification.restore.error": "Falha ao restaurar a configuração. Tente novamente.",
123
- "page.settings.notification.restart.success": "O aplicativo foi reiniciado com sucesso",
124
- "page.settings.notification.restart.error": "Falha ao reiniciar seu aplicativo. Tente fazer manualmente.",
125
- "page.settings.loading": "Buscando configuração...",
126
- "compontents.confirmation.dialog.header": "Confirmação",
127
- "compontents.confirmation.dialog.description": "Você realmente deseja realizar esta ação?",
128
- "compontents.confirmation.dialog.button.confirm": "Sim eu quero",
129
- "compontents.confirmation.dialog.button.cancel": "Cancelar",
130
- "compontents.toogle.enabled": "Habilitado",
131
- "compontents.toogle.disabled": "Desabilitado"
2
+ "plugin.name": "Comentários",
3
+ "plugin.section": "plugin de comentários",
4
+ "plugin.section.item": "Configurações",
5
+ "common.button.back": "Voltar",
6
+ "nav.header.moderation": "Moderação",
7
+ "nav.header.settings": "Configurações",
8
+ "nav.item.updates": "Updates",
9
+ "nav.item.discover": "Descobrir",
10
+ "nav.item.reports": "Reports",
11
+ "nav.item.settings": "Configurações",
12
+ "page.common.item.status.OPEN": "Abrir",
13
+ "page.common.item.status.PENDING": "Pendente",
14
+ "page.common.item.status.BLOCKED": "Bloqueado",
15
+ "page.common.item.status.APPROVED": "Aprovado",
16
+ "page.common.item.status.TO_REVIEW": "Para revisar ({count, number})",
17
+ "page.common.item.status.REJECTED": "Rejeitado",
18
+ "page.common.item.status.REMOVED": "Removido pelo autor",
19
+ "page.updates.header": "Atualizações recentes",
20
+ "page.discover.header": "Descubra tópicos",
21
+ "page.discover.header.count": "entries found",
22
+ "page.discover.table.header.id": "ID",
23
+ "page.discover.table.header.author": "Autor",
24
+ "page.discover.table.header.message": "Messagem",
25
+ "page.discover.table.header.thread": "Thread of",
26
+ "page.discover.table.header.entry": "Entry",
27
+ "page.discover.table.header.lastUpdate": "Ultima atualização",
28
+ "page.discover.table.header.status": "Status",
29
+ "page.discover.table.header.actions": "Actions",
30
+ "page.discover.table.cell.thread": "Comentário #{id}",
31
+ "page.discover.table.action.display": "Display",
32
+ "page.discover.table.action.reports": "Reports",
33
+ "page.discover.table.empty": "Você ainda não tem comentários.",
34
+ "page.discover.table.empty.search": "Nenhum comentário corresponde à pesquisa.",
35
+ "page.discover.table.filters": "Filtrando",
36
+ "page.discover.table.reports.review": "Review reports",
37
+ "page.details.header": "Painel de discussão",
38
+ "page.details.header.description": "Pesquise e gerencie a discussão relacionada à entidade",
39
+ "page.details.panel.discussion": "Discussão",
40
+ "page.details.panel.discussion.nav.drilldown": "Pesquisa detalhada",
41
+ "page.details.panel.discussion.nav.back": "Ir para o topo",
42
+ "page.details.panel.discussion.warnings.reports.description": "Abrir reports",
43
+ "page.details.panel.discussion.warnings.reports.review": "Review",
44
+ "page.details.panel.discussion.warnings.reports.dialog.list": "Reports",
45
+ "page.details.panel.discussion.warnings.reports.dialog.header": "Moderation: Review open reports",
46
+ "page.details.panel.discussion.warnings.reports.dialog.reason": "Razão",
47
+ "page.details.panel.discussion.warnings.reports.dialog.reason.BAD_LANGUAGE": "Linguagem imprópria",
48
+ "page.details.panel.discussion.warnings.reports.dialog.reason.DISCRIMINATION": "Discrimination",
49
+ "page.details.panel.discussion.warnings.reports.dialog.reason.OTHER": "Outros",
50
+ "page.details.panel.discussion.warnings.reports.dialog.content": "Conteúdo",
51
+ "page.details.panel.discussion.warnings.reports.dialog.createdAt": "Issue date",
52
+ "page.details.panel.discussion.warnings.reports.dialog.status": "Status",
53
+ "page.details.panel.discussion.warnings.reports.dialog.status.OPEN": "Aberto",
54
+ "page.details.panel.discussion.warnings.reports.dialog.status.RESOLVED": "Resolvido",
55
+ "page.details.panel.discussion.warnings.reports.dialog.actions": "Ações",
56
+ "page.details.panel.discussion.warnings.reports.dialog.actions.resolve": "Resolver",
57
+ "page.details.panel.discussion.warnings.reports.dialog.confirmation.success": "Open report has been resolved",
58
+ "page.details.panel.discussion.status.blocked": "Bloqueado",
59
+ "page.details.panel.entity": "Entity details",
60
+ "page.details.panel.status": "Discussion is",
61
+ "page.details.panel.status.open": "Open",
62
+ "page.details.panel.status.blocked": "Bloqueado",
63
+ "page.details.panel.status.pending": "Pendente",
64
+ "page.details.panel.loading": "Fetching entity...",
65
+ "page.details.actions.comment.block": "Bloquear comentário",
66
+ "page.details.actions.comment.block.confirmation.header": "Moderação: Bloquear comentário",
67
+ "page.details.actions.comment.block.confirmation.description": "Deseja mesmo bloquear este comentário?",
68
+ "page.details.actions.comment.block.confirmation.button.confirm": "Sim, bloqueie",
69
+ "page.details.actions.comment.block.confirmation.success": "O comentário foi bloqueado",
70
+ "page.details.actions.comment.unblock": "Desbloquear comentário",
71
+ "page.details.actions.comment.unblock.confirmation.success": "O comentário foi desbloqueado",
72
+ "page.details.actions.comment.reports.review": "Análise",
73
+ "page.details.actions.thread.block": "Bloquear thread",
74
+ "page.details.actions.thread.block.confirmation.header": "Moderação: Bloquear thread",
75
+ "page.details.actions.thread.block.confirmation.description": "Você realmente quer bloquear todo o thread? Nenhuma outra discussão será permitida.",
76
+ "page.details.actions.thread.block.confirmation.button.confirm": "Sim, bloqueie",
77
+ "page.details.actions.thread.block.confirmation.success": "A thread foi bloqueada",
78
+ "page.details.actions.thread.unblock": "Desbloquear thread",
79
+ "page.details.actions.thread.unblock.confirmation.success": "A Thread foi desbloqueado",
80
+ "page.details.actions.comment.approve.confirmation.success": "O comentário foi aprovado",
81
+ "page.details.actions.comment.reject.confirmation.success": "O comentário foi rejeitado",
82
+ "page.details.filters.label": "View",
83
+ "page.details.filters.removed.visibility": "Mostrar comentários removidos",
84
+ "page.coming.soon": "Aguarde o que está por vir...",
85
+ "page.settings": "Configurações",
86
+ "page.settings.header.title": "Comentários",
87
+ "page.settings.header.description": "Configure seus recursos de moderação de comentários",
88
+ "page.settings.actions.submit": "Salvar",
89
+ "page.settings.actions.restore": "Restaurar configurações originais",
90
+ "page.settings.actions.restart": "Restart Strapi",
91
+ "page.settings.section.general": "Configurações gerais",
92
+ "page.settings.section.additional": "Configurações adicionais",
93
+ "page.settings.section.restore": "Restaurar configurações originais",
94
+ "page.settings.section.restore.subtitle": "Descartando todas as configurações aplicadas e voltando para as configurações padrão do plugin. Use razoável.",
95
+ "page.settings.form.enabledCollections.label": "Ativar comentários apenas para",
96
+ "page.settings.form.enabledCollections.placeholder": "Selecione uma ou mais collection",
97
+ "page.settings.form.enabledCollections.hint": "Se nenhum for selecionado, todos os tipos de conteúdo serão habilitados",
98
+ "page.settings.form.contentTypesSettings.label": "Tipos de conteúdo",
99
+ "page.settings.form.contentTypesSettings.tooltip": "Configuração personalizada por tipo de conteúdo",
100
+ "page.settings.form.moderatorRoles.label": "Envie notificações importantes para",
101
+ "page.settings.form.moderatorRoles.placeholder": "Selecione um ou mais Roles",
102
+ "page.settings.form.moderatorRoles.hint": "Roles que serão notificadas pelo plugin sobre ações significativas a serem executadas",
103
+ "page.settings.form.badWords.label": "Filtragem de palavrões",
104
+ "page.settings.form.badWords.hint": "Se ativado, todas as postagens/atualizações de comentários serão verificadas em relação a palavras impróprias",
105
+ "page.settings.form.gqlAuth.label": "GraphQL queries authorization",
106
+ "page.settings.form.gqlAuth.hint": "Se ativado, as queries e mutations da API GraphQL podem ser acionadas apenas por usuários autenticados do Strapi. Caso contrário, a API permanece aberta.",
107
+ "page.settings.form.approvalFlow.label": "Fluxo de aprovação",
108
+ "page.settings.form.approvalFlow.hint": "Os comentários associados ao tipo de conteúdo \"{name}\" passarão pelo fluxo de aprovação manual",
109
+ "page.settings.form.entryLabel.label": "Campos de título",
110
+ "page.settings.form.entryLabel.placeholder": "Selecione pelo menos um ou deixe em branco para aplicar os padrões",
111
+ "page.settings.form.entryLabel.hint": "Se deixado em branco, a renderização do título terá os seguintes campos ordenados: \"Title\", \"Subject\" & \"Name\"",
112
+ "page.settings.actions.restore.confirmation.header": "Restaurar a configuração padrão",
113
+ "page.settings.actions.restore.confirmation.description": "Você está prestes a restaurar a configuração do plug-in para seus valores padrão. Pode ter um impacto destrutivo no conteúdo já coletado. Você realmente quer continuar?",
114
+ "page.settings.actions.restore.confirmation.button.confirm": "Sim, quero restaurar",
115
+ "page.settings.actions.restart.alert.title": "Strapi requer reinicialização",
116
+ "page.settings.actions.restart.alert.description": "Você fez uma alteração de configuração que exige que seu aplicativo Strapi seja reiniciado para ter efeito no schema do GraphQL. Faça isso manualmente ou usando o trigger abaixo.",
117
+ "page.settings.actions.restart.alert.close": "Descartar",
118
+ "page.settings.notification.fetch.error": "Falha ao buscar a configuração. Tentando novamente...",
119
+ "page.settings.notification.submit.success": "A configuração foi salva com sucesso",
120
+ "page.settings.notification.submit.error": "Falha ao salvar a configuração. Tente novamente.",
121
+ "page.settings.notification.restore.success": "A configuração foi restaurada com sucesso",
122
+ "page.settings.notification.restore.error": "Falha ao restaurar a configuração. Tente novamente.",
123
+ "page.settings.notification.restart.success": "O aplicativo foi reiniciado com sucesso",
124
+ "page.settings.notification.restart.error": "Falha ao reiniciar seu aplicativo. Tente fazer manualmente.",
125
+ "page.settings.loading": "Buscando configuração...",
126
+ "compontents.confirmation.dialog.header": "Confirmação",
127
+ "compontents.confirmation.dialog.description": "Você realmente deseja realizar esta ação?",
128
+ "compontents.confirmation.dialog.button.confirm": "Sim eu quero",
129
+ "compontents.confirmation.dialog.button.cancel": "Cancelar",
130
+ "compontents.toogle.enabled": "Habilitado",
131
+ "compontents.toogle.disabled": "Desabilitado"
132
132
  }
@@ -0,0 +1,38 @@
1
+ // @ts-ignore
2
+ import axios from "axios";
3
+ // @ts-ignore
4
+ import { auth } from "@strapi/helper-plugin";
5
+ import { ToBeFixed } from "../../../types";
6
+
7
+ const instance = axios.create({
8
+ baseURL: process.env.STRAPI_ADMIN_BACKEND_URL,
9
+ });
10
+
11
+ instance.interceptors.request.use(
12
+ async (config: ToBeFixed) => {
13
+ config.headers = {
14
+ Authorization: `Bearer ${auth.getToken()}`,
15
+ Accept: "application/json",
16
+ "Content-Type": "application/json",
17
+ };
18
+
19
+ return config;
20
+ },
21
+ (error: ToBeFixed) => {
22
+ Promise.reject(error);
23
+ }
24
+ );
25
+
26
+ instance.interceptors.response.use(
27
+ (response: ToBeFixed) => response,
28
+ (error: ToBeFixed) => {
29
+ if (error.response?.status === 401) {
30
+ auth.clearAppStorage();
31
+ window.location.reload();
32
+ }
33
+
34
+ throw error;
35
+ }
36
+ );
37
+
38
+ export default instance;
@@ -0,0 +1,25 @@
1
+ export const APPROVAL_STATUS = {
2
+ PENDING: "PENDING",
3
+ APPROVED: "APPROVED",
4
+ REJECTED: "REJECTED",
5
+ };
6
+
7
+ export const REPORT_STATUS = {
8
+ RESOLVED: "RESOLVED",
9
+ OPEN: "OPEN",
10
+ };
11
+
12
+ export const REPORT_REASON = {
13
+ BAD_LANGUAGE: "BAD_LANGUAGE",
14
+ DISCRIMINATION: "DISCRIMINATION",
15
+ OTHER: "OTHER",
16
+ };
17
+
18
+ export const COMMENT_STATUS = {
19
+ UNKNOWN: "UNKNOWN",
20
+ BLOCKED: "BLOCKED",
21
+ OPEN: "OPEN",
22
+ REMOVED: "REMOVED",
23
+ TO_REVIEW: "TO_REVIEW",
24
+ ...APPROVAL_STATUS,
25
+ };
@@ -0,0 +1,5 @@
1
+ import { pluginId } from "../pluginId";
2
+
3
+ const getApiURL = (endPoint: string) => `/${pluginId}/${endPoint}`;
4
+
5
+ export default getApiURL;
@@ -0,0 +1,29 @@
1
+ // @ts-ignore
2
+ import { useIntl } from "react-intl";
3
+ import { isString } from "lodash";
4
+
5
+ import { pluginId } from "../pluginId";
6
+ import { ToBeFixed } from "../../../types";
7
+
8
+ const getMessage = (
9
+ input: ToBeFixed,
10
+ defaultMessage = "",
11
+ inPluginScope = true
12
+ ) => {
13
+ const { formatMessage } = useIntl();
14
+ let formattedId = "";
15
+ if (isString(input)) {
16
+ formattedId = input;
17
+ } else {
18
+ formattedId = input?.id;
19
+ }
20
+ return formatMessage(
21
+ {
22
+ id: `${inPluginScope ? pluginId : "app.components"}.${formattedId}`,
23
+ defaultMessage,
24
+ },
25
+ input?.props || undefined
26
+ );
27
+ };
28
+
29
+ export default getMessage;