strapi-plugin-comments 2.1.8 → 2.2.0-beta.0
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.
- package/README.md +11 -2
- package/admin/src/components/Avatar/index.d.ts +3 -2
- package/admin/src/components/CommentReviewModal/index.d.ts +11 -0
- package/admin/src/components/CommentReviewModal/index.js +19 -0
- package/admin/src/components/ConfirmationDialog/index.d.ts +12 -10
- package/admin/src/components/ConfirmationDialog/index.js +3 -3
- package/admin/src/components/DiscussionStatus/index.d.ts +2 -1
- package/admin/src/components/DiscussionThread/index.d.ts +11 -5
- package/admin/src/components/DiscussionThread/index.js +3 -3
- package/admin/src/components/DiscussionThreadItem/index.d.ts +2 -7
- package/admin/src/components/DiscussionThreadItem/index.js +3 -12
- package/admin/src/components/DiscussionThreadItemActions/index.d.ts +10 -6
- package/admin/src/components/DiscussionThreadItemActions/index.js +75 -53
- package/admin/src/components/DiscussionThreadItemApprovalFlowActions/index.d.ts +9 -6
- package/admin/src/components/DiscussionThreadItemApprovalFlowActions/index.js +6 -9
- package/admin/src/components/DiscussionThreadItemFooter/index.d.ts +14 -7
- package/admin/src/components/DiscussionThreadItemFooter/index.js +3 -3
- package/admin/src/components/DiscussionThreadItemReviewAction/index.d.ts +14 -18
- package/admin/src/components/DiscussionThreadItemReviewAction/index.js +71 -52
- package/admin/src/components/FormSwitch/index.d.ts +2 -1
- package/admin/src/components/Hint/index.d.ts +14 -0
- package/admin/src/components/Hint/index.js +22 -0
- package/admin/src/components/LoadingIndicatorOverlay/index.d.ts +2 -1
- package/admin/src/components/ModeratorResponse/index.d.ts +8 -0
- package/admin/src/components/ModeratorResponse/index.js +108 -0
- package/admin/src/components/ModeratorResponse/styles.d.ts +2 -0
- package/admin/src/components/ModeratorResponse/styles.js +12 -0
- package/admin/src/components/ModeratorResponseModal/ModeratorResponseModal.d.ts +11 -0
- package/admin/src/components/ModeratorResponseModal/ModeratorResponseModal.js +98 -0
- package/admin/src/components/Nav/index.d.ts +2 -1
- package/admin/src/components/Nav/index.js +6 -9
- package/admin/src/components/PluginIcon/index.d.ts +2 -1
- package/admin/src/components/PluginIcon/index.js +2 -6
- package/admin/src/components/PreviewWysiwyg/Wrapper.d.ts +3 -0
- package/admin/src/components/PreviewWysiwyg/Wrapper.js +162 -0
- package/admin/src/components/PreviewWysiwyg/index.d.ts +7 -0
- package/admin/src/components/PreviewWysiwyg/index.js +39 -0
- package/admin/src/components/PreviewWysiwyg/utils/mdRenderer.d.ts +3 -0
- package/admin/src/components/PreviewWysiwyg/utils/mdRenderer.js +88 -0
- package/admin/src/components/PreviewWysiwyg/utils/satinizeHtml.d.ts +3 -0
- package/admin/src/components/PreviewWysiwyg/utils/satinizeHtml.js +18 -0
- package/admin/src/components/ReportsActions/components/BlockMenu/index.d.ts +16 -0
- package/admin/src/components/ReportsActions/components/BlockMenu/index.js +51 -0
- package/admin/src/components/ReportsActions/index.d.ts +12 -0
- package/admin/src/components/ReportsActions/index.js +31 -0
- package/admin/src/components/ReportsReviewModal/index.d.ts +14 -8
- package/admin/src/components/ReportsReviewTable/index.d.ts +13 -24
- package/admin/src/components/ReportsReviewTable/index.js +11 -24
- package/admin/src/components/StatusBadge/index.d.ts +2 -1
- package/admin/src/components/TableFilters/index.d.ts +12 -2
- package/admin/src/components/TableFilters/index.js +2 -2
- package/admin/src/components/TablePagination/index.d.ts +9 -2
- package/admin/src/components/Wysiwyg/Editor.d.ts +17 -0
- package/admin/src/components/Wysiwyg/Editor.js +84 -0
- package/admin/src/components/Wysiwyg/EditorLayout.d.ts +12 -0
- package/admin/src/components/Wysiwyg/EditorLayout.js +99 -0
- package/admin/src/components/Wysiwyg/EditorStylesContainer.d.ts +2 -0
- package/admin/src/components/Wysiwyg/EditorStylesContainer.js +348 -0
- package/admin/src/components/Wysiwyg/WysiwygFooter.d.ts +7 -0
- package/admin/src/components/Wysiwyg/WysiwygFooter.js +25 -0
- package/admin/src/components/Wysiwyg/WysiwygNav.d.ts +13 -0
- package/admin/src/components/Wysiwyg/WysiwygNav.js +118 -0
- package/admin/src/components/Wysiwyg/WysiwygStyles.d.ts +8 -0
- package/admin/src/components/Wysiwyg/WysiwygStyles.js +59 -0
- package/admin/src/components/Wysiwyg/index.d.ts +28 -0
- package/admin/src/components/Wysiwyg/index.js +136 -0
- package/admin/src/components/Wysiwyg/tests/index.test.d.ts +2 -0
- package/admin/src/components/Wysiwyg/tests/index.test.js +1633 -0
- package/admin/src/components/Wysiwyg/utils/continueList.d.ts +3 -0
- package/admin/src/components/Wysiwyg/utils/continueList.js +83 -0
- package/admin/src/components/Wysiwyg/utils/utils.d.ts +15 -0
- package/admin/src/components/Wysiwyg/utils/utils.js +249 -0
- package/admin/src/components/icons/comments.d.ts +2 -1
- package/admin/src/components/icons/index.d.ts +2 -5
- package/admin/src/components/icons/index.js +24 -12
- package/admin/src/components/icons/lock.d.ts +2 -1
- package/admin/src/components/icons/review.d.ts +2 -1
- package/admin/src/components/icons/strapiIcons.d.ts +24 -0
- package/admin/src/components/icons/strapiIcons.js +35 -0
- package/admin/src/components/icons/unlock.d.ts +2 -1
- package/admin/src/custom-fields/comments/components/icon.d.ts +3 -0
- package/admin/src/custom-fields/comments/components/icon.js +14 -0
- package/admin/src/custom-fields/comments/components/index.d.ts +3 -0
- package/admin/src/custom-fields/comments/components/index.js +19 -0
- package/admin/src/custom-fields/comments/components/input/index.d.ts +3 -0
- package/admin/src/custom-fields/comments/components/input/index.js +5 -0
- package/admin/src/custom-fields/comments/components/input/input.d.ts +4 -0
- package/admin/src/custom-fields/comments/components/input/input.js +102 -0
- package/admin/src/custom-fields/comments/components/input/types.d.ts +10 -0
- package/admin/src/custom-fields/comments/components/input/types.js +3 -0
- package/admin/src/custom-fields/comments/components/input/utils.d.ts +35 -0
- package/admin/src/custom-fields/comments/components/input/utils.js +146 -0
- package/admin/src/custom-fields/comments/index.d.ts +3 -0
- package/admin/src/custom-fields/comments/index.js +53 -0
- package/admin/src/custom-fields/index.d.ts +3 -0
- package/admin/src/custom-fields/index.js +13 -0
- package/admin/src/hooks/useConfig.d.ts +4 -4
- package/admin/src/hooks/useConfig.js +3 -6
- package/admin/src/hooks/useReportsActionsHandlers.d.ts +19 -0
- package/admin/src/hooks/useReportsActionsHandlers.js +70 -0
- package/admin/src/index.d.ts +2 -1
- package/admin/src/index.js +4 -2
- package/admin/src/pages/App/index.js +8 -7
- package/admin/src/pages/App/reducer/index.d.ts +1 -1
- package/admin/src/pages/ComingSoonPage/index.d.ts +2 -1
- package/admin/src/pages/ComingSoonPage/index.js +2 -2
- package/admin/src/pages/Details/components/DetailsEntity/index.d.ts +8 -6
- package/admin/src/pages/Details/components/DetailsFilters/index.d.ts +5 -3
- package/admin/src/pages/Details/index.js +10 -7
- package/admin/src/pages/Discover/components/DiscoverTableRow/index.d.ts +11 -5
- package/admin/src/pages/Discover/components/DiscoverTableRow/index.js +7 -81
- package/admin/src/pages/Discover/index.js +14 -13
- package/admin/src/pages/NoAccessPage/index.d.ts +4 -0
- package/admin/src/pages/NoAccessPage/index.js +31 -0
- package/admin/src/pages/Reports/components/ReportsTableRow/index.d.ts +16 -0
- package/admin/src/pages/Reports/components/ReportsTableRow/index.js +91 -0
- package/admin/src/pages/Reports/components/ReportsTableRow/styles.d.ts +2 -0
- package/admin/src/pages/Reports/components/ReportsTableRow/styles.js +14 -0
- package/admin/src/pages/Reports/index.d.ts +4 -0
- package/admin/src/pages/Reports/index.js +196 -0
- package/admin/src/pages/Reports/utils/api.d.ts +2 -0
- package/admin/src/pages/Reports/utils/api.js +16 -0
- package/admin/src/pages/Reports/utils/filtersSchema.d.ts +11 -0
- package/admin/src/pages/Reports/utils/filtersSchema.js +11 -0
- package/admin/src/pages/Settings/index.d.ts +2 -1
- package/admin/src/pages/Settings/index.js +6 -7
- package/admin/src/pages/utils/api.d.ts +17 -10
- package/admin/src/pages/utils/api.js +25 -2
- package/admin/src/reducers.d.ts +1 -1
- package/admin/src/translations/en.json +49 -1
- package/admin/src/utils/axiosInstance.d.ts +1 -1
- package/admin/src/utils/constants.d.ts +9 -5
- package/admin/src/utils/constants.js +5 -3
- package/admin/src/utils/errors.d.ts +5 -0
- package/admin/src/utils/errors.js +10 -0
- package/admin/src/utils/functions.d.ts +2 -0
- package/admin/src/utils/functions.js +11 -0
- package/admin/src/utils/getMessage.d.ts +1 -1
- package/admin/src/utils/getMessage.js +1 -1
- package/admin/src/utils/getRelatedGroups.d.ts +6 -2
- package/admin/src/utils/handleAPIError.d.ts +1 -1
- package/admin/src/utils/index.d.ts +16 -11
- package/admin/src/utils/index.js +12 -1
- package/admin/src/utils/resolveCommentStatus.d.ts +8 -2
- package/admin/src/utils/resolveReportStatus.d.ts +4 -0
- package/admin/src/utils/resolveReportStatus.js +23 -0
- package/admin/src/utils/resolveReportStatusColor.d.ts +4 -0
- package/admin/src/utils/resolveReportStatusColor.js +17 -0
- package/package.json +6 -3
- package/server/controllers/admin.js +67 -2
- package/server/index.d.ts +1 -1
- package/server/register/custom-fields/comments.d.ts +6 -0
- package/server/register/custom-fields/comments.js +9 -0
- package/server/register/custom-fields/index.d.ts +3 -0
- package/server/register/custom-fields/index.js +14 -0
- package/server/register/index.d.ts +4 -0
- package/server/register/index.js +8 -0
- package/server/routes/admin.js +56 -0
- package/server/services/admin.d.ts +1 -1
- package/server/services/admin.js +196 -10
- package/server/utils/error.js +1 -1
- package/strapi-server.d.ts +1 -1
- package/tsconfig.tsbuildinfo +1 -1
- package/types/utils.d.ts +5 -0
- package/types/utils.js +10 -0
- package/server/register.d.ts +0 -3
- package/server/register.js +0 -4
|
@@ -0,0 +1,102 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
14
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
+
}) : function(o, v) {
|
|
16
|
+
o["default"] = v;
|
|
17
|
+
});
|
|
18
|
+
var __importStar = (this && this.__importStar) || function (mod) {
|
|
19
|
+
if (mod && mod.__esModule) return mod;
|
|
20
|
+
var result = {};
|
|
21
|
+
if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
|
|
22
|
+
__setModuleDefault(result, mod);
|
|
23
|
+
return result;
|
|
24
|
+
};
|
|
25
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
26
|
+
exports.CustomFieldInput = void 0;
|
|
27
|
+
const react_1 = __importStar(require("react"));
|
|
28
|
+
const Stack_1 = require("@strapi/design-system/Stack");
|
|
29
|
+
const Flex_1 = require("@strapi/design-system/Flex");
|
|
30
|
+
const Box_1 = require("@strapi/design-system/Box");
|
|
31
|
+
const Field_1 = require("@strapi/design-system/Field");
|
|
32
|
+
const Select_1 = require("@strapi/design-system/Select");
|
|
33
|
+
const NumberInput_1 = require("@strapi/design-system/NumberInput");
|
|
34
|
+
const Checkbox_1 = require("@strapi/design-system/Checkbox");
|
|
35
|
+
const DatePicker_1 = require("@strapi/design-system/DatePicker");
|
|
36
|
+
const Grid_1 = require("@strapi/design-system/Grid");
|
|
37
|
+
const utils_1 = require("./utils");
|
|
38
|
+
const utils_2 = require("../../../../utils");
|
|
39
|
+
const react_intl_1 = require("react-intl");
|
|
40
|
+
const DEFAULTS = {
|
|
41
|
+
commentsNumber: 30,
|
|
42
|
+
populate: [],
|
|
43
|
+
renderType: "FLAT",
|
|
44
|
+
};
|
|
45
|
+
const CustomFieldInput = ({ attribute, description, disabled, error, intlLabel, labelAction, name, onChange, required, value, }) => {
|
|
46
|
+
const { formatMessage } = (0, react_intl_1.useIntl)();
|
|
47
|
+
const [currentState, setCurrentState] = (0, react_1.useState)(value ? (0, utils_1.fromInput)(value) : DEFAULTS);
|
|
48
|
+
const onCommentsNumberChange = (0, react_1.useCallback)((0, utils_1.handleStateSliceChange)("commentsNumber", setCurrentState), [setCurrentState]);
|
|
49
|
+
const onRenderTypeChange = (0, react_1.useCallback)((0, utils_1.handleStateSliceChange)("renderType", setCurrentState), [setCurrentState]);
|
|
50
|
+
const onSortByDateChange = (0, react_1.useCallback)((0, utils_1.handleStateSliceChange)("sortByDate", setCurrentState), [setCurrentState]);
|
|
51
|
+
const onFilterByChange = (0, react_1.useCallback)((filterBy) => {
|
|
52
|
+
setCurrentState((current) => ({
|
|
53
|
+
...current,
|
|
54
|
+
filterBy,
|
|
55
|
+
filterByValue: undefined,
|
|
56
|
+
}));
|
|
57
|
+
}, [setCurrentState]);
|
|
58
|
+
const onFilterByValueChange = (0, react_1.useCallback)((0, utils_1.handleStateSliceChange)("filterByValue", setCurrentState), [setCurrentState]);
|
|
59
|
+
const onPopulateAuthorChange = (0, react_1.useCallback)((0, utils_1.handlePopulateChange)("author", setCurrentState), [setCurrentState]);
|
|
60
|
+
const onPopulateAvatarChange = (0, react_1.useCallback)((0, utils_1.handlePopulateChange)("avatar", setCurrentState), [setCurrentState]);
|
|
61
|
+
(0, react_1.useEffect)(() => {
|
|
62
|
+
const nextValue = (0, utils_1.toOutput)(currentState);
|
|
63
|
+
const initialValue = value ? (0, utils_1.toOutput)((0, utils_1.fromInput)(value)) : "";
|
|
64
|
+
if (initialValue !== nextValue && onChange) {
|
|
65
|
+
onChange({
|
|
66
|
+
target: {
|
|
67
|
+
name,
|
|
68
|
+
value: nextValue,
|
|
69
|
+
type: attribute.type,
|
|
70
|
+
},
|
|
71
|
+
});
|
|
72
|
+
}
|
|
73
|
+
}, [currentState, value]);
|
|
74
|
+
return (react_1.default.createElement(Field_1.Field, { name: name, id: name, error: error, hint: description && (0, utils_2.getMessage)(description) },
|
|
75
|
+
react_1.default.createElement(Stack_1.Stack, { spacing: 1 },
|
|
76
|
+
react_1.default.createElement(Flex_1.Flex, null,
|
|
77
|
+
react_1.default.createElement(Field_1.FieldLabel, { required: required }, formatMessage(intlLabel)),
|
|
78
|
+
labelAction && react_1.default.createElement(Box_1.Box, { paddingLeft: 1 }, labelAction)),
|
|
79
|
+
react_1.default.createElement(Grid_1.Grid, { gap: 4 },
|
|
80
|
+
react_1.default.createElement(Grid_1.GridItem, { col: 6 },
|
|
81
|
+
react_1.default.createElement(Box_1.Box, { paddingTop: 2 },
|
|
82
|
+
react_1.default.createElement(NumberInput_1.NumberInput, { disabled: disabled, label: (0, utils_2.getMessage)("customField.comments.input.commentsNumber.label", "Number of comments"), name: `${name}.commentsNumber`, value: currentState.commentsNumber, onValueChange: onCommentsNumberChange })),
|
|
83
|
+
react_1.default.createElement(Box_1.Box, { paddingTop: 2 },
|
|
84
|
+
react_1.default.createElement(Select_1.Select, { disabled: disabled, name: `${name}.renderType`, label: (0, utils_2.getMessage)("customField.comments.input.renderType.label", "Render comments as"), value: currentState.renderType, onChange: onRenderTypeChange }, (0, utils_1.getRenderTypeOptions)(utils_2.getMessage).map(({ value, label }) => (react_1.default.createElement(Select_1.Option, { key: value, value: value }, label))))),
|
|
85
|
+
react_1.default.createElement(Box_1.Box, { paddingTop: 2 },
|
|
86
|
+
react_1.default.createElement(Select_1.Select, { disabled: disabled, name: `${name}.sortByDate`, label: (0, utils_2.getMessage)("customField.comments.input.sortByDate.label", "Sort by creation date"), value: currentState.sortByDate, onChange: onSortByDateChange }, (0, utils_1.getSortByDateOptions)(utils_2.getMessage).map(({ value, label }) => (react_1.default.createElement(Select_1.Option, { key: value, value: value }, label)))))),
|
|
87
|
+
react_1.default.createElement(Grid_1.GridItem, { col: 6 },
|
|
88
|
+
react_1.default.createElement(Box_1.Box, { paddingTop: 2 },
|
|
89
|
+
react_1.default.createElement(Select_1.Select, { disabled: disabled, name: `${name}.filterBy`, label: (0, utils_2.getMessage)("customField.comments.input.filterBy.label", "Filter by"), value: currentState.filterBy, onChange: onFilterByChange }, (0, utils_1.getFilterByOptions)(utils_2.getMessage).map(({ value, label }) => (react_1.default.createElement(Select_1.Option, { key: value, value: value }, label)))),
|
|
90
|
+
react_1.default.createElement(Box_1.Box, { paddingTop: currentState.filterBy ? 2 : 0 },
|
|
91
|
+
currentState.filterBy === "APPROVAL_STATUS" ? (react_1.default.createElement(Select_1.Select, { label: (0, utils_2.getMessage)("customField.comments.input.filterBy.option.approvalStatus.label.details.label", "Specify date"), disabled: disabled, name: `${name}.filterBy.approvalStatus`, value: currentState.filterByValue, onChange: onFilterByValueChange }, (0, utils_1.getApprovalStatusOptions)(utils_2.getMessage).map(({ value, label }) => (react_1.default.createElement(Select_1.Option, { key: value, value: value }, label))))) : null,
|
|
92
|
+
currentState.filterBy === "DATE_CREATED" ? (react_1.default.createElement(DatePicker_1.DatePicker, { label: (0, utils_2.getMessage)("customField.comments.input.filterBy.option.dateCreated.label.details.label", "Specify date"), disabled: disabled, name: `${name}.filterBy.dateCreated`, onChange: onFilterByValueChange, selectedDate: currentState.filterByValue, selectedDateLabel: utils_1.asString })) : null)),
|
|
93
|
+
react_1.default.createElement(Box_1.Box, { paddingTop: 2 },
|
|
94
|
+
react_1.default.createElement(Field_1.FieldLabel, null, (0, utils_2.getMessage)("customField.comments.input.populate.label", "Populate")),
|
|
95
|
+
react_1.default.createElement(Box_1.Box, { paddingTop: 1 },
|
|
96
|
+
react_1.default.createElement(Checkbox_1.Checkbox, { disabled: disabled, children: (0, utils_2.getMessage)("customField.comments.input.populate.author.label", "Populate author field"), value: currentState.populate?.includes("author"), name: `${name}.populate.author`, onChange: onPopulateAuthorChange }),
|
|
97
|
+
react_1.default.createElement(Checkbox_1.Checkbox, { disabled: disabled, children: (0, utils_2.getMessage)("customField.comments.input.populate.avatar.label", "Populate avatar field"), value: currentState.populate?.includes("avatar"), name: `${name}.populate.avatar`, onChange: onPopulateAvatarChange }))))),
|
|
98
|
+
react_1.default.createElement(Field_1.FieldHint, null),
|
|
99
|
+
react_1.default.createElement(Field_1.FieldError, null))));
|
|
100
|
+
};
|
|
101
|
+
exports.CustomFieldInput = CustomFieldInput;
|
|
102
|
+
//# sourceMappingURL=input.js.map
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
export declare type PopulateField = "avatar" | "author";
|
|
2
|
+
export declare type CommentsFieldValue = {
|
|
3
|
+
commentsNumber: number;
|
|
4
|
+
renderType?: "FLAT" | "TREE";
|
|
5
|
+
sortByDate?: "ASC" | "DESC";
|
|
6
|
+
filterBy?: "DATE_CREATED" | "APPROVAL_STATUS";
|
|
7
|
+
filterByValue?: string | Date;
|
|
8
|
+
populate?: Array<PopulateField>;
|
|
9
|
+
};
|
|
10
|
+
//# sourceMappingURL=types.d.ts.map
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
import { SetStateAction, Dispatch } from "react";
|
|
2
|
+
import { getMessage } from "../../../../utils";
|
|
3
|
+
import { CommentsFieldValue, PopulateField } from "./types";
|
|
4
|
+
export declare const asString: () => string;
|
|
5
|
+
export declare const fromInput: (value: unknown) => CommentsFieldValue;
|
|
6
|
+
export declare const toOutput: (state: CommentsFieldValue) => string;
|
|
7
|
+
export declare function assertCorrectState(state: any): asserts state is CommentsFieldValue;
|
|
8
|
+
export declare const handleStateSliceChange: (key: keyof CommentsFieldValue, setState: Dispatch<SetStateAction<CommentsFieldValue>>) => (value: string | number | Date | PopulateField[] | undefined) => void;
|
|
9
|
+
export declare const handlePopulateChange: (key: PopulateField, setState: Dispatch<SetStateAction<CommentsFieldValue>>) => () => void;
|
|
10
|
+
export declare const getRenderTypeOptions: (translate: typeof getMessage) => {
|
|
11
|
+
value: string;
|
|
12
|
+
label: string;
|
|
13
|
+
}[];
|
|
14
|
+
export declare const getSortByDateOptions: (translate: typeof getMessage) => ({
|
|
15
|
+
value: undefined;
|
|
16
|
+
label: string;
|
|
17
|
+
} | {
|
|
18
|
+
value: string;
|
|
19
|
+
label: string;
|
|
20
|
+
})[];
|
|
21
|
+
export declare const getFilterByOptions: (translate: typeof getMessage) => ({
|
|
22
|
+
value: undefined;
|
|
23
|
+
label: string;
|
|
24
|
+
} | {
|
|
25
|
+
value: string;
|
|
26
|
+
label: string;
|
|
27
|
+
})[];
|
|
28
|
+
export declare const getApprovalStatusOptions: (translate: typeof getMessage) => ({
|
|
29
|
+
value: undefined;
|
|
30
|
+
label: string;
|
|
31
|
+
} | {
|
|
32
|
+
value: string;
|
|
33
|
+
label: string;
|
|
34
|
+
})[];
|
|
35
|
+
//# sourceMappingURL=utils.d.ts.map
|
|
@@ -0,0 +1,146 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.getApprovalStatusOptions = exports.getFilterByOptions = exports.getSortByDateOptions = exports.getRenderTypeOptions = exports.handlePopulateChange = exports.handleStateSliceChange = exports.assertCorrectState = exports.toOutput = exports.fromInput = exports.asString = void 0;
|
|
4
|
+
const lodash_1 = require("lodash");
|
|
5
|
+
const utils_1 = require("../../../../utils");
|
|
6
|
+
const asString = () => "";
|
|
7
|
+
exports.asString = asString;
|
|
8
|
+
const fromInput = (value) => {
|
|
9
|
+
(0, utils_1.assertString)(value);
|
|
10
|
+
const state = JSON.parse(value);
|
|
11
|
+
assertCorrectState(state);
|
|
12
|
+
if (state.filterBy === "DATE_CREATED" && state.filterByValue) {
|
|
13
|
+
state.filterByValue = new Date(state.filterByValue);
|
|
14
|
+
}
|
|
15
|
+
return state;
|
|
16
|
+
};
|
|
17
|
+
exports.fromInput = fromInput;
|
|
18
|
+
const toOutput = (state) => JSON.stringify(state);
|
|
19
|
+
exports.toOutput = toOutput;
|
|
20
|
+
function assertCorrectState(state) {
|
|
21
|
+
if (typeof state.commentsNumber !== "number") {
|
|
22
|
+
throw new utils_1.ValidationError("Comments number is not a number");
|
|
23
|
+
}
|
|
24
|
+
if (state.populate && !Array.isArray(state.populate)) {
|
|
25
|
+
throw new utils_1.ValidationError("Comments populate is not an array");
|
|
26
|
+
}
|
|
27
|
+
stringFields.forEach((field) => {
|
|
28
|
+
if (state[field] && typeof state[field] !== "string") {
|
|
29
|
+
(0, utils_1.assertString)(state[field]);
|
|
30
|
+
}
|
|
31
|
+
});
|
|
32
|
+
}
|
|
33
|
+
exports.assertCorrectState = assertCorrectState;
|
|
34
|
+
const handleStateSliceChange = (key, setState) => (value) => {
|
|
35
|
+
return setState((current) => ({
|
|
36
|
+
...current,
|
|
37
|
+
[key]: value,
|
|
38
|
+
}));
|
|
39
|
+
};
|
|
40
|
+
exports.handleStateSliceChange = handleStateSliceChange;
|
|
41
|
+
const handlePopulateChange = (key, setState) => () => {
|
|
42
|
+
return setState((current) => {
|
|
43
|
+
const populate = current.populate || [];
|
|
44
|
+
return {
|
|
45
|
+
...current,
|
|
46
|
+
populate: populate.includes(key)
|
|
47
|
+
? populate.filter((field) => field !== key)
|
|
48
|
+
: (0, lodash_1.uniq)(populate.concat(key)),
|
|
49
|
+
};
|
|
50
|
+
});
|
|
51
|
+
};
|
|
52
|
+
exports.handlePopulateChange = handlePopulateChange;
|
|
53
|
+
const getRenderTypeOptions = (translate) => [
|
|
54
|
+
{
|
|
55
|
+
value: "TREE",
|
|
56
|
+
label: translate({
|
|
57
|
+
id: "customField.comments.input.renderType.option.tree.label",
|
|
58
|
+
defaultMessage: "Tree",
|
|
59
|
+
}),
|
|
60
|
+
},
|
|
61
|
+
{
|
|
62
|
+
value: "FLAT",
|
|
63
|
+
label: translate({
|
|
64
|
+
id: "customField.comments.input.renderType.option.flat.label",
|
|
65
|
+
defaultMessage: "Flat list",
|
|
66
|
+
}),
|
|
67
|
+
},
|
|
68
|
+
];
|
|
69
|
+
exports.getRenderTypeOptions = getRenderTypeOptions;
|
|
70
|
+
const getSortByDateOptions = (translate) => [
|
|
71
|
+
{
|
|
72
|
+
value: undefined,
|
|
73
|
+
label: "",
|
|
74
|
+
},
|
|
75
|
+
{
|
|
76
|
+
value: "ASC",
|
|
77
|
+
label: translate({
|
|
78
|
+
id: "customField.comments.input.sortByDate.option.asc.label",
|
|
79
|
+
defaultMessage: "Ascending",
|
|
80
|
+
}),
|
|
81
|
+
},
|
|
82
|
+
{
|
|
83
|
+
value: "DESC",
|
|
84
|
+
label: translate({
|
|
85
|
+
id: "customField.comments.input.sortByDate.option.desc.label",
|
|
86
|
+
defaultMessage: "Descending",
|
|
87
|
+
}),
|
|
88
|
+
},
|
|
89
|
+
];
|
|
90
|
+
exports.getSortByDateOptions = getSortByDateOptions;
|
|
91
|
+
const getFilterByOptions = (translate) => [
|
|
92
|
+
{
|
|
93
|
+
value: undefined,
|
|
94
|
+
label: "",
|
|
95
|
+
},
|
|
96
|
+
{
|
|
97
|
+
value: "DATE_CREATED",
|
|
98
|
+
label: translate({
|
|
99
|
+
id: "customField.comments.input.filterBy.option.dateCreated.label",
|
|
100
|
+
defaultMessage: "Creation date",
|
|
101
|
+
}),
|
|
102
|
+
},
|
|
103
|
+
{
|
|
104
|
+
value: "APPROVAL_STATUS",
|
|
105
|
+
label: translate({
|
|
106
|
+
id: "customField.comments.input.filterBy.option.approvalStatus.label",
|
|
107
|
+
defaultMessage: "Approval Status",
|
|
108
|
+
}),
|
|
109
|
+
},
|
|
110
|
+
];
|
|
111
|
+
exports.getFilterByOptions = getFilterByOptions;
|
|
112
|
+
const getApprovalStatusOptions = (translate) => [
|
|
113
|
+
{
|
|
114
|
+
value: undefined,
|
|
115
|
+
label: "",
|
|
116
|
+
},
|
|
117
|
+
{
|
|
118
|
+
value: utils_1.APPROVAL_STATUS.APPROVED,
|
|
119
|
+
label: translate({
|
|
120
|
+
id: "customField.comments.input.filterBy.option.approvalStatus.option.approved.label",
|
|
121
|
+
defaultMessage: "Approved",
|
|
122
|
+
}),
|
|
123
|
+
},
|
|
124
|
+
{
|
|
125
|
+
value: utils_1.APPROVAL_STATUS.PENDING,
|
|
126
|
+
label: translate({
|
|
127
|
+
id: "customField.comments.input.filterBy.option.approvalStatus.option.pending.label",
|
|
128
|
+
defaultMessage: "Pending",
|
|
129
|
+
}),
|
|
130
|
+
},
|
|
131
|
+
{
|
|
132
|
+
value: utils_1.APPROVAL_STATUS.REJECTED,
|
|
133
|
+
label: translate({
|
|
134
|
+
id: "customField.comments.input.filterBy.option.approvalStatus.option.rejected.label",
|
|
135
|
+
defaultMessage: "Rejected",
|
|
136
|
+
}),
|
|
137
|
+
},
|
|
138
|
+
];
|
|
139
|
+
exports.getApprovalStatusOptions = getApprovalStatusOptions;
|
|
140
|
+
const stringFields = [
|
|
141
|
+
"renderType",
|
|
142
|
+
"sortByDate",
|
|
143
|
+
"filterBy",
|
|
144
|
+
"filterByValue",
|
|
145
|
+
];
|
|
146
|
+
//# sourceMappingURL=utils.js.map
|
|
@@ -0,0 +1,53 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
14
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
+
}) : function(o, v) {
|
|
16
|
+
o["default"] = v;
|
|
17
|
+
});
|
|
18
|
+
var __importStar = (this && this.__importStar) || function (mod) {
|
|
19
|
+
if (mod && mod.__esModule) return mod;
|
|
20
|
+
var result = {};
|
|
21
|
+
if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
|
|
22
|
+
__setModuleDefault(result, mod);
|
|
23
|
+
return result;
|
|
24
|
+
};
|
|
25
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
26
|
+
exports.commentsCustomField = void 0;
|
|
27
|
+
const pluginId_1 = require("../../pluginId");
|
|
28
|
+
const components_1 = require("./components");
|
|
29
|
+
exports.commentsCustomField = {
|
|
30
|
+
name: "comments",
|
|
31
|
+
pluginId: pluginId_1.pluginId,
|
|
32
|
+
type: "json",
|
|
33
|
+
icon: components_1.CustomFieldIcon,
|
|
34
|
+
intlLabel: {
|
|
35
|
+
defaultMessage: "Comments",
|
|
36
|
+
description: "",
|
|
37
|
+
id: `${pluginId_1.pluginId}.customField.comments.label`,
|
|
38
|
+
},
|
|
39
|
+
intlDescription: {
|
|
40
|
+
defaultMessage: "Specify comments query params",
|
|
41
|
+
description: "",
|
|
42
|
+
id: `${pluginId_1.pluginId}.customField.comments.description`,
|
|
43
|
+
},
|
|
44
|
+
components: {
|
|
45
|
+
Input: async () => Promise.resolve().then(() => __importStar(require("./components/input"))),
|
|
46
|
+
},
|
|
47
|
+
options: {
|
|
48
|
+
base: [],
|
|
49
|
+
advanced: [],
|
|
50
|
+
validator: () => ({}),
|
|
51
|
+
},
|
|
52
|
+
};
|
|
53
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.registerCustomFields = void 0;
|
|
4
|
+
const comments_1 = require("./comments");
|
|
5
|
+
const registerCustomFields = (app) => {
|
|
6
|
+
if (!canRegister(app)) {
|
|
7
|
+
return;
|
|
8
|
+
}
|
|
9
|
+
app.customFields.register(comments_1.commentsCustomField);
|
|
10
|
+
};
|
|
11
|
+
exports.registerCustomFields = registerCustomFields;
|
|
12
|
+
const canRegister = (app) => !!app.customFields;
|
|
13
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
declare const useConfig: (toggleNotification: any) => {
|
|
2
|
-
fetch: any
|
|
3
|
-
restartMutation: any
|
|
4
|
-
submitMutation: any
|
|
5
|
-
restoreMutation: any
|
|
2
|
+
fetch: import("react-query").UseQueryResult<any, unknown>;
|
|
3
|
+
restartMutation: import("react-query").UseMutationResult<any, unknown, any, unknown>;
|
|
4
|
+
submitMutation: import("react-query").UseMutationResult<any, unknown, any, unknown>;
|
|
5
|
+
restoreMutation: import("react-query").UseMutationResult<any, unknown, any, unknown>;
|
|
6
6
|
};
|
|
7
7
|
export default useConfig;
|
|
8
8
|
//# sourceMappingURL=useConfig.d.ts.map
|
|
@@ -1,18 +1,15 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
-
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
-
};
|
|
5
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
3
|
const react_query_1 = require("react-query");
|
|
7
4
|
const api_1 = require("../pages/Settings/utils/api");
|
|
8
|
-
const pluginId_1 =
|
|
5
|
+
const pluginId_1 = require("../pluginId");
|
|
9
6
|
const useConfig = (toggleNotification) => {
|
|
10
7
|
const queryClient = (0, react_query_1.useQueryClient)();
|
|
11
8
|
const fetch = (0, react_query_1.useQuery)("get-config", () => (0, api_1.fetchConfig)(toggleNotification));
|
|
12
9
|
const handleError = (type, callback = () => { }) => {
|
|
13
10
|
toggleNotification({
|
|
14
11
|
type: "warning",
|
|
15
|
-
message: `${pluginId_1.
|
|
12
|
+
message: `${pluginId_1.pluginId}.page.settings.notification.${type}.error`,
|
|
16
13
|
});
|
|
17
14
|
callback();
|
|
18
15
|
};
|
|
@@ -22,7 +19,7 @@ const useConfig = (toggleNotification) => {
|
|
|
22
19
|
}
|
|
23
20
|
toggleNotification({
|
|
24
21
|
type: "success",
|
|
25
|
-
message: `${pluginId_1.
|
|
22
|
+
message: `${pluginId_1.pluginId}.page.settings.notification.${type}.success`,
|
|
26
23
|
});
|
|
27
24
|
callback();
|
|
28
25
|
};
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
declare const useReportsActionsHandlers: ({ allowedActions, commentId, mutation, onSelectionChange, reports, selectedReports, updateReports, }: {
|
|
2
|
+
allowedActions: any;
|
|
3
|
+
commentId: any;
|
|
4
|
+
mutation: any;
|
|
5
|
+
onSelectionChange: any;
|
|
6
|
+
reports: any;
|
|
7
|
+
selectedReports: any;
|
|
8
|
+
updateReports: any;
|
|
9
|
+
}) => {
|
|
10
|
+
handleBlockItemClick: (id: number) => void;
|
|
11
|
+
handleBlockItemThreadClick: (id: number) => void;
|
|
12
|
+
handleClickResolve: (reportId: any) => Promise<void>;
|
|
13
|
+
handleResolveAllAbuseReportsForComment: (id: number) => void;
|
|
14
|
+
handleResolveAllAbuseReportsForThread: (id: number) => void;
|
|
15
|
+
handleUnblockItemClick: (id: number) => void;
|
|
16
|
+
handleUnblockThreadClick: (id: number) => void;
|
|
17
|
+
};
|
|
18
|
+
export default useReportsActionsHandlers;
|
|
19
|
+
//# sourceMappingURL=useReportsActionsHandlers.d.ts.map
|
|
@@ -0,0 +1,70 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
const react_query_1 = require("react-query");
|
|
4
|
+
const helper_plugin_1 = require("@strapi/helper-plugin");
|
|
5
|
+
const utils_1 = require("../utils");
|
|
6
|
+
const api_1 = require("../pages/utils/api");
|
|
7
|
+
const useReportsActionsHandlers = ({ allowedActions, commentId, mutation, onSelectionChange, reports, selectedReports, updateReports, }) => {
|
|
8
|
+
const { canModerate, canReviewReports } = allowedActions;
|
|
9
|
+
const { lockApp, unlockApp } = (0, helper_plugin_1.useOverlayBlocker)();
|
|
10
|
+
const queryClient = (0, react_query_1.useQueryClient)();
|
|
11
|
+
const toggleNotification = (0, helper_plugin_1.useNotification)();
|
|
12
|
+
const onSuccess = async () => {
|
|
13
|
+
await queryClient.invalidateQueries("get-data");
|
|
14
|
+
unlockApp();
|
|
15
|
+
};
|
|
16
|
+
const onError = (err) => {
|
|
17
|
+
(0, utils_1.handleAPIError)(err, toggleNotification);
|
|
18
|
+
};
|
|
19
|
+
const mutationConfig = {
|
|
20
|
+
onSuccess,
|
|
21
|
+
onError,
|
|
22
|
+
refetchActive: false,
|
|
23
|
+
};
|
|
24
|
+
const resolveAllAbuseReportsForCommentMutation = (0, react_query_1.useMutation)(api_1.resolveAllAbuseReportsForComment, mutationConfig);
|
|
25
|
+
const resolveAllAbuseReportsForThreadMutation = (0, react_query_1.useMutation)(api_1.resolveAllAbuseReportsForThread, mutationConfig);
|
|
26
|
+
const blockItemMutation = (0, react_query_1.useMutation)(api_1.blockItem, mutationConfig);
|
|
27
|
+
const unblockItemMutation = (0, react_query_1.useMutation)(api_1.unblockItem, mutationConfig);
|
|
28
|
+
const blockItemThreadMutation = (0, react_query_1.useMutation)(api_1.blockItemThread, mutationConfig);
|
|
29
|
+
const unblockItemThreadMutation = (0, react_query_1.useMutation)(api_1.unblockItemThread, mutationConfig);
|
|
30
|
+
const handleClickResolve = async (reportId) => {
|
|
31
|
+
if (canReviewReports) {
|
|
32
|
+
lockApp();
|
|
33
|
+
const item = await mutation.mutateAsync({
|
|
34
|
+
id: commentId,
|
|
35
|
+
reportId,
|
|
36
|
+
});
|
|
37
|
+
if (item) {
|
|
38
|
+
const updatedReports = reports.map((report) => ({
|
|
39
|
+
...report,
|
|
40
|
+
resolved: reportId === report.id ? true : report.resolved,
|
|
41
|
+
}));
|
|
42
|
+
updateReports(updatedReports);
|
|
43
|
+
onSelectionChange(selectedReports.filter((id) => id !== reportId));
|
|
44
|
+
}
|
|
45
|
+
}
|
|
46
|
+
};
|
|
47
|
+
const perform = (action) => (id) => {
|
|
48
|
+
if (canModerate) {
|
|
49
|
+
lockApp();
|
|
50
|
+
action(id);
|
|
51
|
+
}
|
|
52
|
+
};
|
|
53
|
+
const handleBlockItemClick = perform(blockItemMutation.mutate);
|
|
54
|
+
const handleUnblockItemClick = perform(unblockItemMutation.mutate);
|
|
55
|
+
const handleBlockItemThreadClick = perform(blockItemThreadMutation.mutate);
|
|
56
|
+
const handleUnblockThreadClick = perform(unblockItemThreadMutation.mutate);
|
|
57
|
+
const handleResolveAllAbuseReportsForComment = perform(resolveAllAbuseReportsForCommentMutation.mutate);
|
|
58
|
+
const handleResolveAllAbuseReportsForThread = perform(resolveAllAbuseReportsForThreadMutation.mutate);
|
|
59
|
+
return {
|
|
60
|
+
handleBlockItemClick,
|
|
61
|
+
handleBlockItemThreadClick,
|
|
62
|
+
handleClickResolve,
|
|
63
|
+
handleResolveAllAbuseReportsForComment,
|
|
64
|
+
handleResolveAllAbuseReportsForThread,
|
|
65
|
+
handleUnblockItemClick,
|
|
66
|
+
handleUnblockThreadClick,
|
|
67
|
+
};
|
|
68
|
+
};
|
|
69
|
+
exports.default = useReportsActionsHandlers;
|
|
70
|
+
//# sourceMappingURL=useReportsActionsHandlers.js.map
|
package/admin/src/index.d.ts
CHANGED
|
@@ -1,6 +1,7 @@
|
|
|
1
|
+
import { StrapiAdminInstance } from "strapi-typed";
|
|
1
2
|
import { ToBeFixed } from "../../types";
|
|
2
3
|
declare const _default: {
|
|
3
|
-
register(app:
|
|
4
|
+
register(app: StrapiAdminInstance): void;
|
|
4
5
|
registerTrads({ locales }: ToBeFixed): Promise<any[]>;
|
|
5
6
|
};
|
|
6
7
|
export default _default;
|
package/admin/src/index.js
CHANGED
|
@@ -33,11 +33,12 @@ const Initializer_1 = __importDefault(require("./components/Initializer"));
|
|
|
33
33
|
const PluginIcon_1 = __importDefault(require("./components/PluginIcon"));
|
|
34
34
|
const permissions_1 = __importDefault(require("./permissions"));
|
|
35
35
|
const reducers_1 = __importDefault(require("./reducers"));
|
|
36
|
+
const custom_fields_1 = require("./custom-fields");
|
|
36
37
|
const { name, displayName } = pluginPkg.strapi;
|
|
37
38
|
exports.default = {
|
|
38
39
|
register(app) {
|
|
39
40
|
app.addMenuLink({
|
|
40
|
-
to: `/plugins/${pluginId_1.pluginId}
|
|
41
|
+
to: `/plugins/${pluginId_1.pluginId}`,
|
|
41
42
|
badgeContent: 1,
|
|
42
43
|
icon: PluginIcon_1.default,
|
|
43
44
|
intlLabel: {
|
|
@@ -45,7 +46,7 @@ exports.default = {
|
|
|
45
46
|
defaultMessage: displayName,
|
|
46
47
|
},
|
|
47
48
|
Component: async () => {
|
|
48
|
-
const component = await Promise.resolve().then(() => __importStar(require(
|
|
49
|
+
const component = await Promise.resolve().then(() => __importStar(require('./pages/App')));
|
|
49
50
|
return component;
|
|
50
51
|
},
|
|
51
52
|
permissions: permissions_1.default.access,
|
|
@@ -78,6 +79,7 @@ exports.default = {
|
|
|
78
79
|
isReady: false,
|
|
79
80
|
name,
|
|
80
81
|
});
|
|
82
|
+
(0, custom_fields_1.registerCustomFields)(app);
|
|
81
83
|
},
|
|
82
84
|
async registerTrads({ locales }) {
|
|
83
85
|
const importedTrads = await Promise.all(locales.map((locale) => {
|
|
@@ -14,12 +14,13 @@ const ComingSoonPage_1 = __importDefault(require("../ComingSoonPage"));
|
|
|
14
14
|
const getUrl_1 = __importDefault(require("../../utils/getUrl"));
|
|
15
15
|
const Discover_1 = __importDefault(require("../Discover"));
|
|
16
16
|
const Details_1 = __importDefault(require("../Details"));
|
|
17
|
+
const Reports_1 = __importDefault(require("../Reports"));
|
|
17
18
|
const api_1 = require("./utils/api");
|
|
18
19
|
const actions_1 = require("./reducer/actions");
|
|
19
20
|
const selectors_1 = __importDefault(require("./reducer/selectors"));
|
|
20
21
|
const App = ({ setConfig }) => {
|
|
21
22
|
const toggleNotification = (0, helper_plugin_1.useNotification)();
|
|
22
|
-
const { isLoading, isFetching } = (0, react_query_1.useQuery)(
|
|
23
|
+
const { isLoading, isFetching } = (0, react_query_1.useQuery)('get-config', () => (0, api_1.fetchConfig)(toggleNotification), {
|
|
23
24
|
initialData: {},
|
|
24
25
|
onSuccess: (response) => {
|
|
25
26
|
setConfig(response);
|
|
@@ -30,12 +31,12 @@ const App = ({ setConfig }) => {
|
|
|
30
31
|
}
|
|
31
32
|
return (react_1.default.createElement("div", null,
|
|
32
33
|
react_1.default.createElement(react_router_dom_1.Switch, null,
|
|
33
|
-
react_1.default.createElement(react_router_dom_1.Route, { path: (0, getUrl_1.default)(
|
|
34
|
-
react_1.default.createElement(react_router_dom_1.Route, { path: (0, getUrl_1.default)(
|
|
35
|
-
react_1.default.createElement(react_router_dom_1.Route, { path: (0, getUrl_1.default)(
|
|
36
|
-
react_1.default.createElement(react_router_dom_1.Route, { path: (0, getUrl_1.default)(
|
|
37
|
-
react_1.default.createElement(react_router_dom_1.Route, { path: (0, getUrl_1.default)(
|
|
38
|
-
react_1.default.createElement(react_router_dom_1.Route, {
|
|
34
|
+
react_1.default.createElement(react_router_dom_1.Route, { path: (0, getUrl_1.default)('discover/:id'), component: Details_1.default }),
|
|
35
|
+
react_1.default.createElement(react_router_dom_1.Route, { path: (0, getUrl_1.default)('dashboard'), component: ComingSoonPage_1.default }),
|
|
36
|
+
react_1.default.createElement(react_router_dom_1.Route, { path: (0, getUrl_1.default)('discover'), component: Discover_1.default }),
|
|
37
|
+
react_1.default.createElement(react_router_dom_1.Route, { path: (0, getUrl_1.default)('settings'), component: ComingSoonPage_1.default }),
|
|
38
|
+
react_1.default.createElement(react_router_dom_1.Route, { path: (0, getUrl_1.default)('reports'), component: Reports_1.default }),
|
|
39
|
+
react_1.default.createElement(react_router_dom_1.Route, { path: (0, getUrl_1.default)(), exact: true, children: react_1.default.createElement(react_router_dom_1.Redirect, { to: (0, getUrl_1.default)('discover') }) }))));
|
|
39
40
|
};
|
|
40
41
|
const mapStateToProps = (0, selectors_1.default)();
|
|
41
42
|
function mapDispatchToProps(dispatch) {
|
|
@@ -30,14 +30,14 @@ const react_1 = __importStar(require("react"));
|
|
|
30
30
|
const Box_1 = require("@strapi/design-system/Box");
|
|
31
31
|
const EmptyStateLayout_1 = require("@strapi/design-system/EmptyStateLayout");
|
|
32
32
|
const Layout_1 = require("@strapi/design-system/Layout");
|
|
33
|
-
const icons_1 = require("
|
|
33
|
+
const icons_1 = require("../../components/icons");
|
|
34
34
|
const getMessage_1 = __importDefault(require("../../utils/getMessage"));
|
|
35
35
|
const Nav_1 = __importDefault(require("../../components/Nav"));
|
|
36
36
|
const ComingSoonPage = () => {
|
|
37
37
|
return (react_1.default.createElement(Box_1.Box, { background: "neutral100" },
|
|
38
38
|
react_1.default.createElement(Layout_1.Layout, { sideNav: react_1.default.createElement(Nav_1.default, null) },
|
|
39
39
|
react_1.default.createElement(Box_1.Box, { padding: 8, background: "neutral100" },
|
|
40
|
-
react_1.default.createElement(EmptyStateLayout_1.EmptyStateLayout, { icon:
|
|
40
|
+
react_1.default.createElement(EmptyStateLayout_1.EmptyStateLayout, { icon: icons_1.illo, content: (0, getMessage_1.default)("page.coming.soon") })))));
|
|
41
41
|
};
|
|
42
42
|
exports.default = (0, react_1.memo)(ComingSoonPage);
|
|
43
43
|
//# sourceMappingURL=index.js.map
|