@drodil/backstage-plugin-qeta-react 3.24.5 → 3.25.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/dist/components/AIAnswerCard/AIAnswerCard.esm.js +54 -41
- package/dist/components/AIAnswerCard/AIAnswerCard.esm.js.map +1 -1
- package/dist/components/AnswerCard/AnswerCard.esm.js +96 -73
- package/dist/components/AnswerCard/AnswerCard.esm.js.map +1 -1
- package/dist/components/AnswerForm/AnswerForm.esm.js +52 -47
- package/dist/components/AnswerForm/AnswerForm.esm.js.map +1 -1
- package/dist/components/AnswersContainer/AnswerList.esm.js +31 -21
- package/dist/components/AnswersContainer/AnswerList.esm.js.map +1 -1
- package/dist/components/AnswersContainer/AnswerListItem.esm.js +74 -57
- package/dist/components/AnswersContainer/AnswerListItem.esm.js.map +1 -1
- package/dist/components/AnswersContainer/AnswersContainer.esm.js +70 -56
- package/dist/components/AnswersContainer/AnswersContainer.esm.js.map +1 -1
- package/dist/components/ArticleContent/ArticleButtons.esm.js +73 -52
- package/dist/components/ArticleContent/ArticleButtons.esm.js.map +1 -1
- package/dist/components/ArticleContent/ArticleContent.esm.js +60 -34
- package/dist/components/ArticleContent/ArticleContent.esm.js.map +1 -1
- package/dist/components/AuthorBox/AuthorBox.esm.js +49 -31
- package/dist/components/AuthorBox/AuthorBox.esm.js.map +1 -1
- package/dist/components/Buttons/AddToCollectionButton.esm.js +35 -24
- package/dist/components/Buttons/AddToCollectionButton.esm.js.map +1 -1
- package/dist/components/Buttons/AskQuestionButton.esm.js +18 -15
- package/dist/components/Buttons/AskQuestionButton.esm.js.map +1 -1
- package/dist/components/Buttons/ButtonContainer.esm.js +2 -2
- package/dist/components/Buttons/ButtonContainer.esm.js.map +1 -1
- package/dist/components/Buttons/CollectionFollowButton.esm.js +10 -6
- package/dist/components/Buttons/CollectionFollowButton.esm.js.map +1 -1
- package/dist/components/Buttons/CreateCollectionButton.esm.js +18 -15
- package/dist/components/Buttons/CreateCollectionButton.esm.js.map +1 -1
- package/dist/components/Buttons/EntityFollowButton.esm.js +10 -6
- package/dist/components/Buttons/EntityFollowButton.esm.js.map +1 -1
- package/dist/components/Buttons/FavoriteButton.esm.js +15 -11
- package/dist/components/Buttons/FavoriteButton.esm.js.map +1 -1
- package/dist/components/Buttons/LinkButton.esm.js +10 -6
- package/dist/components/Buttons/LinkButton.esm.js.map +1 -1
- package/dist/components/Buttons/TagFollowButton.esm.js +10 -6
- package/dist/components/Buttons/TagFollowButton.esm.js.map +1 -1
- package/dist/components/Buttons/UserFollowButton.esm.js +10 -6
- package/dist/components/Buttons/UserFollowButton.esm.js.map +1 -1
- package/dist/components/Buttons/VoteButtons.esm.js +41 -35
- package/dist/components/Buttons/VoteButtons.esm.js.map +1 -1
- package/dist/components/Buttons/WriteArticleButton.esm.js +18 -15
- package/dist/components/Buttons/WriteArticleButton.esm.js.map +1 -1
- package/dist/components/CollectionCard/CollectionCard.esm.js +59 -42
- package/dist/components/CollectionCard/CollectionCard.esm.js.map +1 -1
- package/dist/components/CollectionForm/CollectionForm.esm.js +73 -67
- package/dist/components/CollectionForm/CollectionForm.esm.js.map +1 -1
- package/dist/components/CollectionsGrid/CollectionsGrid.esm.js +61 -49
- package/dist/components/CollectionsGrid/CollectionsGrid.esm.js.map +1 -1
- package/dist/components/CollectionsGrid/CollectionsGridContent.esm.js +18 -14
- package/dist/components/CollectionsGrid/CollectionsGridContent.esm.js.map +1 -1
- package/dist/components/CollectionsGrid/CollectionsGridItem.esm.js +52 -32
- package/dist/components/CollectionsGrid/CollectionsGridItem.esm.js.map +1 -1
- package/dist/components/CollectionsGrid/NoCollectionsCard.esm.js +10 -6
- package/dist/components/CollectionsGrid/NoCollectionsCard.esm.js.map +1 -1
- package/dist/components/CommentSection/CommentForm.esm.js +42 -38
- package/dist/components/CommentSection/CommentForm.esm.js.map +1 -1
- package/dist/components/CommentSection/CommentList.esm.js +15 -12
- package/dist/components/CommentSection/CommentList.esm.js.map +1 -1
- package/dist/components/CommentSection/CommentListItem.esm.js +49 -28
- package/dist/components/CommentSection/CommentListItem.esm.js.map +1 -1
- package/dist/components/CommentSection/CommentSection.esm.js +46 -38
- package/dist/components/CommentSection/CommentSection.esm.js.map +1 -1
- package/dist/components/DeleteModal/DeleteModal.esm.js +32 -23
- package/dist/components/DeleteModal/DeleteModal.esm.js.map +1 -1
- package/dist/components/EntitiesGrid/EntitiesGrid.esm.js +39 -30
- package/dist/components/EntitiesGrid/EntitiesGrid.esm.js.map +1 -1
- package/dist/components/EntitiesGrid/EntitiesGridContent.esm.js +9 -5
- package/dist/components/EntitiesGrid/EntitiesGridContent.esm.js.map +1 -1
- package/dist/components/EntitiesGrid/EntitiesGridItem.esm.js +50 -38
- package/dist/components/EntitiesGrid/EntitiesGridItem.esm.js.map +1 -1
- package/dist/components/EntitiesGrid/NoEntitiesCard.esm.js +10 -6
- package/dist/components/EntitiesGrid/NoEntitiesCard.esm.js.map +1 -1
- package/dist/components/FilterPanel/DateRangeFilter.esm.js +71 -58
- package/dist/components/FilterPanel/DateRangeFilter.esm.js.map +1 -1
- package/dist/components/FilterPanel/FilterPanel.esm.js +262 -217
- package/dist/components/FilterPanel/FilterPanel.esm.js.map +1 -1
- package/dist/components/FollowedLists/FollowedCollectionsList.esm.js +6 -2
- package/dist/components/FollowedLists/FollowedCollectionsList.esm.js.map +1 -1
- package/dist/components/FollowedLists/FollowedEntitiesList.esm.js +6 -2
- package/dist/components/FollowedLists/FollowedEntitiesList.esm.js.map +1 -1
- package/dist/components/FollowedLists/FollowedTagsList.esm.js +6 -2
- package/dist/components/FollowedLists/FollowedTagsList.esm.js.map +1 -1
- package/dist/components/FollowedLists/FollowedUsersList.esm.js +6 -2
- package/dist/components/FollowedLists/FollowedUsersList.esm.js.map +1 -1
- package/dist/components/HeaderImageInput/HeaderImageInput.esm.js +51 -37
- package/dist/components/HeaderImageInput/HeaderImageInput.esm.js.map +1 -1
- package/dist/components/HomePageCards/ImpactCard.esm.js +15 -4
- package/dist/components/HomePageCards/ImpactCard.esm.js.map +1 -1
- package/dist/components/HomePageCards/PostsCard.esm.js +14 -7
- package/dist/components/HomePageCards/PostsCard.esm.js.map +1 -1
- package/dist/components/LeftMenu/LeftMenu.esm.js +68 -28
- package/dist/components/LeftMenu/LeftMenu.esm.js.map +1 -1
- package/dist/components/LeftMenu/LeftMenuButton.esm.js +52 -45
- package/dist/components/LeftMenu/LeftMenuButton.esm.js.map +1 -1
- package/dist/components/Links/Links.esm.js +12 -8
- package/dist/components/Links/Links.esm.js.map +1 -1
- package/dist/components/LoadingGrid/LoadingGrid.esm.js +5 -5
- package/dist/components/LoadingGrid/LoadingGrid.esm.js.map +1 -1
- package/dist/components/MarkdownEditor/MarkdownEditor.esm.js +5 -6
- package/dist/components/MarkdownEditor/MarkdownEditor.esm.js.map +1 -1
- package/dist/components/MarkdownRenderer/MarkdownRenderer.esm.js +42 -33
- package/dist/components/MarkdownRenderer/MarkdownRenderer.esm.js.map +1 -1
- package/dist/components/PostAnonymouslyCheckbox/PostAnonymouslyCheckbox.esm.js +10 -6
- package/dist/components/PostAnonymouslyCheckbox/PostAnonymouslyCheckbox.esm.js.map +1 -1
- package/dist/components/PostForm/AutocompleteListComponent.esm.js +18 -17
- package/dist/components/PostForm/AutocompleteListComponent.esm.js.map +1 -1
- package/dist/components/PostForm/EntitiesInput.esm.js +19 -9
- package/dist/components/PostForm/EntitiesInput.esm.js.map +1 -1
- package/dist/components/PostForm/PostForm.esm.js +109 -103
- package/dist/components/PostForm/PostForm.esm.js.map +1 -1
- package/dist/components/PostForm/TagInput.esm.js +13 -12
- package/dist/components/PostForm/TagInput.esm.js.map +1 -1
- package/dist/components/PostHighlightList/PostHighlightList.esm.js +26 -14
- package/dist/components/PostHighlightList/PostHighlightList.esm.js.map +1 -1
- package/dist/components/PostsContainer/NoPostsCard.esm.js +24 -18
- package/dist/components/PostsContainer/NoPostsCard.esm.js.map +1 -1
- package/dist/components/PostsContainer/PostList.esm.js +30 -20
- package/dist/components/PostsContainer/PostList.esm.js.map +1 -1
- package/dist/components/PostsContainer/PostListItem.esm.js +108 -86
- package/dist/components/PostsContainer/PostListItem.esm.js.map +1 -1
- package/dist/components/PostsContainer/PostsContainer.esm.js +100 -84
- package/dist/components/PostsContainer/PostsContainer.esm.js.map +1 -1
- package/dist/components/PostsGrid/PostsGrid.esm.js +100 -84
- package/dist/components/PostsGrid/PostsGrid.esm.js.map +1 -1
- package/dist/components/PostsGrid/PostsGridContent.esm.js +46 -39
- package/dist/components/PostsGrid/PostsGridContent.esm.js.map +1 -1
- package/dist/components/PostsGrid/PostsGridItem.esm.js +59 -34
- package/dist/components/PostsGrid/PostsGridItem.esm.js.map +1 -1
- package/dist/components/PostsTable/PostsTable.esm.js +96 -67
- package/dist/components/PostsTable/PostsTable.esm.js.map +1 -1
- package/dist/components/PostsTable/PostsTableRow.esm.js +21 -15
- package/dist/components/PostsTable/PostsTableRow.esm.js.map +1 -1
- package/dist/components/QetaPagination/QetaPagination.esm.js +39 -31
- package/dist/components/QetaPagination/QetaPagination.esm.js.map +1 -1
- package/dist/components/QuestionCard/QuestionCard.esm.js +90 -64
- package/dist/components/QuestionCard/QuestionCard.esm.js.map +1 -1
- package/dist/components/RelativeTimeWithTooltip/RelativeTimeWithTooltip.esm.js +4 -3
- package/dist/components/RelativeTimeWithTooltip/RelativeTimeWithTooltip.esm.js.map +1 -1
- package/dist/components/SearchBar/SearchBar.esm.js +44 -41
- package/dist/components/SearchBar/SearchBar.esm.js.map +1 -1
- package/dist/components/SelectTemplateList/SelectTemplateList.esm.js +46 -30
- package/dist/components/SelectTemplateList/SelectTemplateList.esm.js.map +1 -1
- package/dist/components/StatsChart/StatsChart.esm.js +149 -135
- package/dist/components/StatsChart/StatsChart.esm.js.map +1 -1
- package/dist/components/SuggestionsCard/SuggestionsCard.esm.js +42 -32
- package/dist/components/SuggestionsCard/SuggestionsCard.esm.js.map +1 -1
- package/dist/components/SummaryStatsGrid/SummaryStatsGrid.esm.js +75 -58
- package/dist/components/SummaryStatsGrid/SummaryStatsGrid.esm.js.map +1 -1
- package/dist/components/TagsAndEntities/CollectionChip.esm.js +50 -37
- package/dist/components/TagsAndEntities/CollectionChip.esm.js.map +1 -1
- package/dist/components/TagsAndEntities/EntityChip.esm.js +58 -40
- package/dist/components/TagsAndEntities/EntityChip.esm.js.map +1 -1
- package/dist/components/TagsAndEntities/TagChip.esm.js +52 -39
- package/dist/components/TagsAndEntities/TagChip.esm.js.map +1 -1
- package/dist/components/TagsAndEntities/TagsAndEntities.esm.js +5 -2
- package/dist/components/TagsAndEntities/TagsAndEntities.esm.js.map +1 -1
- package/dist/components/TagsAndEntities/UserChip.esm.js +55 -44
- package/dist/components/TagsAndEntities/UserChip.esm.js.map +1 -1
- package/dist/components/TagsGrid/CreateTagModal.esm.js +59 -46
- package/dist/components/TagsGrid/CreateTagModal.esm.js.map +1 -1
- package/dist/components/TagsGrid/EditTagModal.esm.js +45 -35
- package/dist/components/TagsGrid/EditTagModal.esm.js.map +1 -1
- package/dist/components/TagsGrid/NoTagsCard.esm.js +10 -6
- package/dist/components/TagsGrid/NoTagsCard.esm.js.map +1 -1
- package/dist/components/TagsGrid/TagGridItem.esm.js +87 -59
- package/dist/components/TagsGrid/TagGridItem.esm.js.map +1 -1
- package/dist/components/TagsGrid/TagsGrid.esm.js +68 -54
- package/dist/components/TagsGrid/TagsGrid.esm.js.map +1 -1
- package/dist/components/TagsGrid/TagsGridContent.esm.js +9 -5
- package/dist/components/TagsGrid/TagsGridContent.esm.js.map +1 -1
- package/dist/components/TemplateList/TemplateForm.esm.js +104 -94
- package/dist/components/TemplateList/TemplateForm.esm.js.map +1 -1
- package/dist/components/TemplateList/TemplateList.esm.js +50 -37
- package/dist/components/TemplateList/TemplateList.esm.js.map +1 -1
- package/dist/components/TopRankingUsersCard/TopRankingUsersCard.esm.js +75 -51
- package/dist/components/TopRankingUsersCard/TopRankingUsersCard.esm.js.map +1 -1
- package/dist/components/TopRankingUsersCard/TrophyIcon.esm.js +17 -14
- package/dist/components/TopRankingUsersCard/TrophyIcon.esm.js.map +1 -1
- package/dist/components/UsersGrid/NoUsersCard.esm.js +10 -6
- package/dist/components/UsersGrid/NoUsersCard.esm.js.map +1 -1
- package/dist/components/UsersGrid/UsersGrid.esm.js +34 -23
- package/dist/components/UsersGrid/UsersGrid.esm.js.map +1 -1
- package/dist/components/UsersGrid/UsersGridContent.esm.js +9 -5
- package/dist/components/UsersGrid/UsersGridContent.esm.js.map +1 -1
- package/dist/components/UsersGrid/UsersGridItem.esm.js +78 -58
- package/dist/components/UsersGrid/UsersGridItem.esm.js.map +1 -1
- package/dist/components/Utility/ModalContent.esm.js +4 -3
- package/dist/components/Utility/ModalContent.esm.js.map +1 -1
- package/dist/components/Utility/OptionalRequirePermission.esm.js +4 -4
- package/dist/components/Utility/OptionalRequirePermission.esm.js.map +1 -1
- package/dist/components/Utility/RightList.esm.js +13 -11
- package/dist/components/Utility/RightList.esm.js.map +1 -1
- package/dist/components/Utility/SmallAvatar.esm.js +2 -2
- package/dist/components/Utility/SmallAvatar.esm.js.map +1 -1
- package/dist/components/Utility/VoteButtonContainer.esm.js +2 -2
- package/dist/components/Utility/VoteButtonContainer.esm.js.map +1 -1
- package/dist/hooks/useAI.esm.js +7 -5
- package/dist/hooks/useAI.esm.js.map +1 -1
- package/dist/hooks/useCollectionsFollow.esm.js +3 -5
- package/dist/hooks/useCollectionsFollow.esm.js.map +1 -1
- package/dist/hooks/useEntityAuthor.esm.js +5 -5
- package/dist/hooks/useEntityAuthor.esm.js.map +1 -1
- package/dist/hooks/useEntityFollow.esm.js +3 -5
- package/dist/hooks/useEntityFollow.esm.js.map +1 -1
- package/dist/hooks/useEntityQueryParameter.esm.js +2 -2
- package/dist/hooks/useEntityQueryParameter.esm.js.map +1 -1
- package/dist/hooks/useIsModerator.esm.js +19 -4
- package/dist/hooks/useIsModerator.esm.js.map +1 -1
- package/dist/hooks/usePaginatedPosts.esm.js +7 -7
- package/dist/hooks/usePaginatedPosts.esm.js.map +1 -1
- package/dist/hooks/useTagsFollow.esm.js +3 -3
- package/dist/hooks/useTagsFollow.esm.js.map +1 -1
- package/dist/hooks/useUserFollow.esm.js +3 -3
- package/dist/hooks/useUserFollow.esm.js.map +1 -1
- package/dist/hooks/useVoting.esm.js +4 -3
- package/dist/hooks/useVoting.esm.js.map +1 -1
- package/dist/index.d.ts +64 -63
- package/dist/routes.esm.js +3 -3
- package/dist/routes.esm.js.map +1 -1
- package/dist/utils/utils.esm.js +3 -0
- package/dist/utils/utils.esm.js.map +1 -1
- package/package.json +16 -9
package/dist/index.d.ts
CHANGED
|
@@ -2,8 +2,9 @@ import * as _backstage_core_plugin_api from '@backstage/core-plugin-api';
|
|
|
2
2
|
import { IdentityApi } from '@backstage/core-plugin-api';
|
|
3
3
|
import * as _drodil_backstage_plugin_qeta_common from '@drodil/backstage-plugin-qeta-common';
|
|
4
4
|
import { QetaApi, PostType, PostResponse, Template, PostsResponse, AnswersResponse, AnswerResponse, Collection, PostsQuery, CollectionResponse, TagResponse, Post, Answer, Comment, Stat, StatisticsResponse, UserStat, GlobalStat, TemplatesResponse, Article, UserResponse, AIQuery } from '@drodil/backstage-plugin-qeta-common';
|
|
5
|
-
import
|
|
5
|
+
import * as react_jsx_runtime from 'react/jsx-runtime';
|
|
6
6
|
import { Entity, UserEntity } from '@backstage/catalog-model';
|
|
7
|
+
import { CSSProperties, ReactNode, KeyboardEvent, MouseEvent } from 'react';
|
|
7
8
|
import { LinkProps } from '@backstage/core-components';
|
|
8
9
|
import { SvgIconProps } from '@material-ui/core';
|
|
9
10
|
import * as _backstage_core_plugin_api_alpha from '@backstage/core-plugin-api/alpha';
|
|
@@ -59,7 +60,7 @@ type PostFormProps = {
|
|
|
59
60
|
template?: Template | null;
|
|
60
61
|
onFormChange?: (data: QuestionFormValues) => void;
|
|
61
62
|
};
|
|
62
|
-
declare const PostForm: (props: PostFormProps) =>
|
|
63
|
+
declare const PostForm: (props: PostFormProps) => react_jsx_runtime.JSX.Element;
|
|
63
64
|
|
|
64
65
|
type Filters = {
|
|
65
66
|
order?: 'asc' | 'desc';
|
|
@@ -98,7 +99,7 @@ interface FilterPanelProps<T extends Filters> extends CommonFilterPanelProps {
|
|
|
98
99
|
onChange: (changes: Change<T> | Change<T>[]) => void;
|
|
99
100
|
filters: T;
|
|
100
101
|
}
|
|
101
|
-
declare const FilterPanel: <T extends Filters>(props: FilterPanelProps<T>) =>
|
|
102
|
+
declare const FilterPanel: <T extends Filters>(props: FilterPanelProps<T>) => react_jsx_runtime.JSX.Element;
|
|
102
103
|
|
|
103
104
|
type PaginatedPostsProps = PostFilters & {
|
|
104
105
|
author?: string;
|
|
@@ -116,7 +117,7 @@ type PaginatedPostsProps = PostFilters & {
|
|
|
116
117
|
declare const PostsContainer: (props: PaginatedPostsProps & {
|
|
117
118
|
entity?: string;
|
|
118
119
|
filterPanelProps?: CommonFilterPanelProps;
|
|
119
|
-
}) =>
|
|
120
|
+
}) => react_jsx_runtime.JSX.Element;
|
|
120
121
|
|
|
121
122
|
declare const PostList: (props: {
|
|
122
123
|
loading: boolean;
|
|
@@ -132,14 +133,14 @@ declare const PostList: (props: {
|
|
|
132
133
|
showNoQuestionsBtn?: boolean;
|
|
133
134
|
entityPage?: boolean;
|
|
134
135
|
type?: PostType;
|
|
135
|
-
}) =>
|
|
136
|
+
}) => react_jsx_runtime.JSX.Element;
|
|
136
137
|
|
|
137
138
|
interface PostListItemProps {
|
|
138
139
|
post: PostResponse;
|
|
139
140
|
entity?: string;
|
|
140
141
|
type?: PostType;
|
|
141
142
|
}
|
|
142
|
-
declare const PostListItem: (props: PostListItemProps) =>
|
|
143
|
+
declare const PostListItem: (props: PostListItemProps) => react_jsx_runtime.JSX.Element;
|
|
143
144
|
|
|
144
145
|
declare const AnswerList: (props: {
|
|
145
146
|
loading: boolean;
|
|
@@ -152,7 +153,7 @@ declare const AnswerList: (props: {
|
|
|
152
153
|
entity?: string;
|
|
153
154
|
tags?: string[];
|
|
154
155
|
entityPage?: boolean;
|
|
155
|
-
}) =>
|
|
156
|
+
}) => react_jsx_runtime.JSX.Element;
|
|
156
157
|
|
|
157
158
|
interface AnswersContainerProps {
|
|
158
159
|
tags?: string[];
|
|
@@ -162,62 +163,62 @@ interface AnswersContainerProps {
|
|
|
162
163
|
showTitle?: boolean;
|
|
163
164
|
title?: string;
|
|
164
165
|
}
|
|
165
|
-
declare const AnswersContainer: (props: AnswersContainerProps) =>
|
|
166
|
+
declare const AnswersContainer: (props: AnswersContainerProps) => react_jsx_runtime.JSX.Element;
|
|
166
167
|
|
|
167
168
|
interface AnswerListItemProps {
|
|
168
169
|
answer: AnswerResponse;
|
|
169
170
|
entity?: string;
|
|
170
171
|
}
|
|
171
|
-
declare const AnswerListItem: (props: AnswerListItemProps) =>
|
|
172
|
+
declare const AnswerListItem: (props: AnswerListItemProps) => react_jsx_runtime.JSX.Element;
|
|
172
173
|
|
|
173
174
|
declare const AskQuestionButton: (props: {
|
|
174
175
|
entity?: string;
|
|
175
176
|
tags?: string[];
|
|
176
177
|
entityPage?: boolean;
|
|
177
|
-
}) =>
|
|
178
|
+
}) => react_jsx_runtime.JSX.Element;
|
|
178
179
|
|
|
179
180
|
declare const EntityFollowButton: (props: {
|
|
180
181
|
entityRef: string;
|
|
181
|
-
}) =>
|
|
182
|
+
}) => react_jsx_runtime.JSX.Element | null;
|
|
182
183
|
|
|
183
184
|
declare const TagFollowButton: (props: {
|
|
184
185
|
tag: string;
|
|
185
|
-
}) =>
|
|
186
|
+
}) => react_jsx_runtime.JSX.Element | null;
|
|
186
187
|
|
|
187
188
|
declare const WriteArticleButton: (props: {
|
|
188
189
|
entity?: string;
|
|
189
190
|
tags?: string[];
|
|
190
191
|
entityPage?: boolean;
|
|
191
|
-
}) =>
|
|
192
|
+
}) => react_jsx_runtime.JSX.Element;
|
|
192
193
|
|
|
193
|
-
declare const CreateCollectionButton: () =>
|
|
194
|
+
declare const CreateCollectionButton: () => react_jsx_runtime.JSX.Element;
|
|
194
195
|
|
|
195
196
|
declare const AddToCollectionButton: (props: {
|
|
196
197
|
post: PostResponse;
|
|
197
|
-
}) =>
|
|
198
|
+
}) => react_jsx_runtime.JSX.Element | null;
|
|
198
199
|
|
|
199
200
|
declare const UserFollowButton: (props: {
|
|
200
201
|
userRef: string;
|
|
201
202
|
style?: CSSProperties;
|
|
202
|
-
}) =>
|
|
203
|
+
}) => react_jsx_runtime.JSX.Element | null;
|
|
203
204
|
|
|
204
205
|
declare const CollectionFollowButton: (props: {
|
|
205
206
|
collection: Collection;
|
|
206
207
|
style?: CSSProperties;
|
|
207
|
-
}) =>
|
|
208
|
+
}) => react_jsx_runtime.JSX.Element | null;
|
|
208
209
|
|
|
209
210
|
declare const ButtonContainer: (props: {
|
|
210
|
-
children:
|
|
211
|
-
}) =>
|
|
211
|
+
children: ReactNode;
|
|
212
|
+
}) => react_jsx_runtime.JSX.Element;
|
|
212
213
|
|
|
213
214
|
declare const PostHighlightList: (props: {
|
|
214
215
|
type: string;
|
|
215
216
|
title: string;
|
|
216
217
|
noQuestionsLabel: string;
|
|
217
|
-
icon?:
|
|
218
|
+
icon?: ReactNode;
|
|
218
219
|
options?: PostsQuery;
|
|
219
220
|
postType?: PostType;
|
|
220
|
-
}) =>
|
|
221
|
+
}) => react_jsx_runtime.JSX.Element;
|
|
221
222
|
|
|
222
223
|
type QetaMarkdownContentClassKey = 'markdown' | 'header' | 'tocHeader' | 'toc' | 'tocList' | 'tocListItem' | 'tocLink';
|
|
223
224
|
declare const MarkdownRenderer: (props: {
|
|
@@ -225,66 +226,66 @@ declare const MarkdownRenderer: (props: {
|
|
|
225
226
|
className?: string;
|
|
226
227
|
showToc?: boolean;
|
|
227
228
|
useBlankLinks?: boolean;
|
|
228
|
-
}) =>
|
|
229
|
+
}) => react_jsx_runtime.JSX.Element;
|
|
229
230
|
|
|
230
231
|
declare const DeleteModal: (props: {
|
|
231
232
|
entity: PostResponse | AnswerResponse | CollectionResponse | TagResponse;
|
|
232
233
|
open: boolean;
|
|
233
234
|
onClose: () => void;
|
|
234
235
|
question?: PostResponse;
|
|
235
|
-
}) =>
|
|
236
|
+
}) => react_jsx_runtime.JSX.Element;
|
|
236
237
|
|
|
237
238
|
type AnswerCardClassKeys = 'root' | 'highlight' | 'buttons' | 'metadata' | 'markdownContainer' | 'contentContainer';
|
|
238
239
|
declare const AnswerCard: (props: {
|
|
239
240
|
answer: AnswerResponse;
|
|
240
241
|
question: PostResponse;
|
|
241
|
-
}) =>
|
|
242
|
+
}) => react_jsx_runtime.JSX.Element;
|
|
242
243
|
|
|
243
244
|
type QuestionCardClassKeys = 'root' | 'contentContainer' | 'markdownContainer' | 'buttons' | 'metadata';
|
|
244
245
|
declare const QuestionCard: (props: {
|
|
245
246
|
question: PostResponse;
|
|
246
|
-
}) =>
|
|
247
|
+
}) => react_jsx_runtime.JSX.Element;
|
|
247
248
|
|
|
248
249
|
declare const PostsCard: (props: {
|
|
249
250
|
title: string;
|
|
250
251
|
options?: PostsQuery;
|
|
251
|
-
icon?:
|
|
252
|
+
icon?: ReactNode;
|
|
252
253
|
postType?: PostType;
|
|
253
|
-
}) =>
|
|
254
|
+
}) => react_jsx_runtime.JSX.Element | null;
|
|
254
255
|
|
|
255
|
-
declare const ImpactCard: () =>
|
|
256
|
+
declare const ImpactCard: () => react_jsx_runtime.JSX.Element | null;
|
|
256
257
|
|
|
257
|
-
declare const FollowedEntitiesList: () =>
|
|
258
|
+
declare const FollowedEntitiesList: () => react_jsx_runtime.JSX.Element | null;
|
|
258
259
|
|
|
259
|
-
declare const FollowedTagsList: () =>
|
|
260
|
+
declare const FollowedTagsList: () => react_jsx_runtime.JSX.Element | null;
|
|
260
261
|
|
|
261
|
-
declare const FollowedCollectionsList: () =>
|
|
262
|
+
declare const FollowedCollectionsList: () => react_jsx_runtime.JSX.Element | null;
|
|
262
263
|
|
|
263
|
-
declare const FollowedUsersList: () =>
|
|
264
|
+
declare const FollowedUsersList: () => react_jsx_runtime.JSX.Element | null;
|
|
264
265
|
|
|
265
266
|
declare const AnswerForm: (props: {
|
|
266
267
|
post: PostResponse;
|
|
267
268
|
onPost: (answer: AnswerResponse) => void;
|
|
268
269
|
id?: number;
|
|
269
|
-
}) =>
|
|
270
|
+
}) => react_jsx_runtime.JSX.Element;
|
|
270
271
|
|
|
271
272
|
declare const RelativeTimeWithTooltip: (props: {
|
|
272
273
|
value: Date | string;
|
|
273
|
-
}) =>
|
|
274
|
+
}) => react_jsx_runtime.JSX.Element;
|
|
274
275
|
|
|
275
276
|
declare const UserLink: (props: {
|
|
276
277
|
entityRef: string;
|
|
277
278
|
anonymous?: boolean;
|
|
278
279
|
linkProps?: LinkProps;
|
|
279
|
-
}) =>
|
|
280
|
+
}) => react_jsx_runtime.JSX.Element;
|
|
280
281
|
declare const AuthorLink: (props: {
|
|
281
282
|
entity: Post | Answer | Comment;
|
|
282
283
|
linkProps?: LinkProps;
|
|
283
|
-
}) =>
|
|
284
|
+
}) => react_jsx_runtime.JSX.Element;
|
|
284
285
|
declare const UpdatedByLink: (props: {
|
|
285
286
|
entity: Post | Answer | Comment;
|
|
286
287
|
linkProps?: LinkProps;
|
|
287
|
-
}) =>
|
|
288
|
+
}) => react_jsx_runtime.JSX.Element | null;
|
|
288
289
|
|
|
289
290
|
type QuickFilterType = 'latest' | 'favorites' | 'most_viewed';
|
|
290
291
|
declare const PostsTable: (props: {
|
|
@@ -292,7 +293,7 @@ declare const PostsTable: (props: {
|
|
|
292
293
|
rowsPerPage?: number;
|
|
293
294
|
quickFilter?: QuickFilterType;
|
|
294
295
|
postType?: PostType;
|
|
295
|
-
}) =>
|
|
296
|
+
}) => react_jsx_runtime.JSX.Element;
|
|
296
297
|
/**
|
|
297
298
|
* @deprecated Use `PostsTable` instead
|
|
298
299
|
*/
|
|
@@ -301,75 +302,75 @@ declare const QuestionsTable: (props: {
|
|
|
301
302
|
rowsPerPage?: number;
|
|
302
303
|
quickFilter?: QuickFilterType;
|
|
303
304
|
postType?: PostType;
|
|
304
|
-
}) =>
|
|
305
|
+
}) => react_jsx_runtime.JSX.Element;
|
|
305
306
|
|
|
306
307
|
type QetaStatsChartClassKey = 'tooltipLabel' | 'tooltipWrapper' | 'xAxis' | 'lineChart' | 'barChart';
|
|
307
308
|
declare const StatsChart: (props: {
|
|
308
309
|
data: Stat[];
|
|
309
|
-
}) =>
|
|
310
|
+
}) => react_jsx_runtime.JSX.Element;
|
|
310
311
|
|
|
311
312
|
declare const SummaryStatsGrid: (props: {
|
|
312
313
|
stats: StatisticsResponse<UserStat | GlobalStat>;
|
|
313
|
-
}) =>
|
|
314
|
+
}) => react_jsx_runtime.JSX.Element;
|
|
314
315
|
|
|
315
316
|
declare const TopRankingUsers: (props: {
|
|
316
317
|
title?: string;
|
|
317
318
|
hideTitle?: boolean;
|
|
318
319
|
limit?: number;
|
|
319
|
-
}) =>
|
|
320
|
+
}) => react_jsx_runtime.JSX.Element;
|
|
320
321
|
|
|
321
|
-
declare const TrophyIcon: (props: SvgIconProps) =>
|
|
322
|
+
declare const TrophyIcon: (props: SvgIconProps) => react_jsx_runtime.JSX.Element;
|
|
322
323
|
|
|
323
|
-
declare const TagsGrid: () =>
|
|
324
|
+
declare const TagsGrid: () => react_jsx_runtime.JSX.Element;
|
|
324
325
|
|
|
325
|
-
declare const EntitiesGrid: () =>
|
|
326
|
+
declare const EntitiesGrid: () => react_jsx_runtime.JSX.Element;
|
|
326
327
|
|
|
327
|
-
declare const UsersGrid: () =>
|
|
328
|
+
declare const UsersGrid: () => react_jsx_runtime.JSX.Element;
|
|
328
329
|
|
|
329
330
|
type PostGridProps = PaginatedPostsProps & {
|
|
330
331
|
allowRanking?: boolean;
|
|
331
332
|
filterPanelProps?: CommonFilterPanelProps;
|
|
332
333
|
};
|
|
333
|
-
declare const PostsGrid: (props: PostGridProps) =>
|
|
334
|
+
declare const PostsGrid: (props: PostGridProps) => react_jsx_runtime.JSX.Element;
|
|
334
335
|
|
|
335
336
|
type QetaArticleContentClassKey = 'content' | 'headerImage' | 'commentSection';
|
|
336
337
|
declare const ArticleContent: (props: {
|
|
337
338
|
post: PostResponse;
|
|
338
339
|
views: number;
|
|
339
|
-
}) =>
|
|
340
|
+
}) => react_jsx_runtime.JSX.Element;
|
|
340
341
|
|
|
341
342
|
type CollectionFormProps = {
|
|
342
343
|
id?: string;
|
|
343
344
|
onPost?: (collection: CollectionResponse) => void;
|
|
344
345
|
};
|
|
345
|
-
declare const CollectionForm: (props: CollectionFormProps) =>
|
|
346
|
+
declare const CollectionForm: (props: CollectionFormProps) => react_jsx_runtime.JSX.Element;
|
|
346
347
|
|
|
347
348
|
type CollectionsGridProps = {
|
|
348
349
|
owner?: string;
|
|
349
350
|
showFilters?: boolean;
|
|
350
351
|
filterPanelProps?: CommonFilterPanelProps;
|
|
351
352
|
};
|
|
352
|
-
declare const CollectionsGrid: (props: CollectionsGridProps) =>
|
|
353
|
+
declare const CollectionsGrid: (props: CollectionsGridProps) => react_jsx_runtime.JSX.Element;
|
|
353
354
|
|
|
354
355
|
declare const CollectionCard: (props: {
|
|
355
356
|
collection: Collection;
|
|
356
|
-
}) =>
|
|
357
|
+
}) => react_jsx_runtime.JSX.Element;
|
|
357
358
|
|
|
358
359
|
declare const LeftMenu: (props: {
|
|
359
|
-
onKeyDown?: (event:
|
|
360
|
+
onKeyDown?: (event: KeyboardEvent) => void;
|
|
360
361
|
autoFocusItem?: boolean;
|
|
361
|
-
onClick?: (event:
|
|
362
|
+
onClick?: (event: MouseEvent<EventTarget>) => void;
|
|
362
363
|
inPopup?: boolean;
|
|
363
|
-
}) =>
|
|
364
|
+
}) => react_jsx_runtime.JSX.Element;
|
|
364
365
|
|
|
365
|
-
declare const LeftMenuButton: () =>
|
|
366
|
+
declare const LeftMenuButton: () => react_jsx_runtime.JSX.Element;
|
|
366
367
|
|
|
367
|
-
declare const TemplateList: () =>
|
|
368
|
+
declare const TemplateList: () => react_jsx_runtime.JSX.Element | null;
|
|
368
369
|
|
|
369
370
|
declare const SelectTemplateList: (props: {
|
|
370
371
|
templates: TemplatesResponse;
|
|
371
372
|
onTemplateSelect: (template: Template | null) => void;
|
|
372
|
-
}) =>
|
|
373
|
+
}) => react_jsx_runtime.JSX.Element | null;
|
|
373
374
|
|
|
374
375
|
type AIAnswerCardProps = {
|
|
375
376
|
question?: Post;
|
|
@@ -379,11 +380,11 @@ type AIAnswerCardProps = {
|
|
|
379
380
|
};
|
|
380
381
|
article?: Article;
|
|
381
382
|
debounceMs?: number;
|
|
382
|
-
style?:
|
|
383
|
+
style?: CSSProperties;
|
|
383
384
|
};
|
|
384
|
-
declare const AIAnswerCard: (props: AIAnswerCardProps) =>
|
|
385
|
+
declare const AIAnswerCard: (props: AIAnswerCardProps) => react_jsx_runtime.JSX.Element | null;
|
|
385
386
|
|
|
386
|
-
declare const SuggestionsCard: () =>
|
|
387
|
+
declare const SuggestionsCard: () => react_jsx_runtime.JSX.Element | null;
|
|
387
388
|
|
|
388
389
|
declare function useQetaApi<T>(f: (api: QetaApi) => Promise<T>, deps?: any[]): {
|
|
389
390
|
retry: () => void;
|
|
@@ -421,8 +422,6 @@ declare const useTranslation: () => {
|
|
|
421
422
|
readonly "link.answer": "Copy link to this answer to clipboard";
|
|
422
423
|
readonly "link.aria": "Copy link to clipboard";
|
|
423
424
|
readonly "link.copied": "Link copied to clipboard";
|
|
424
|
-
readonly "favorite.remove": "Remove this post from favorites";
|
|
425
|
-
readonly "favorite.add": "Mark this post as favorite";
|
|
426
425
|
readonly "statistics.ranking": "User ranking 🏆";
|
|
427
426
|
readonly "statistics.errorLoading": "Could not load statistics";
|
|
428
427
|
readonly "statistics.notAvailable": "Statistics are unavailable";
|
|
@@ -438,6 +437,8 @@ declare const useTranslation: () => {
|
|
|
438
437
|
readonly "statistics.topVotedCorrectAnswers.description": "People who have the highest rated correct answers";
|
|
439
438
|
readonly "answer.questionTitle": "Q: {{question}}";
|
|
440
439
|
readonly "answer.answeredTime": "answered";
|
|
440
|
+
readonly "favorite.remove": "Remove this post from favorites";
|
|
441
|
+
readonly "favorite.add": "Mark this post as favorite";
|
|
441
442
|
readonly "ranking.top": "Rank this question to the top in this collection";
|
|
442
443
|
readonly "ranking.bottom": "Rank this question to the bottom in this collection";
|
|
443
444
|
readonly "ranking.up": "Rank this question up in this collection";
|
|
@@ -705,10 +706,10 @@ declare const useTranslation: () => {
|
|
|
705
706
|
readonly "postsContainer.title.tagged": "{{itemType}} tagged with {{tags}}";
|
|
706
707
|
readonly "postsContainer.createButton": "Go ahead and create one!";
|
|
707
708
|
readonly "postsContainer.noItems": "No {{itemType}}s";
|
|
709
|
+
readonly "postsTable.favorites": "Favorites";
|
|
708
710
|
readonly "postsTable.errorLoading": "Could not load questions";
|
|
709
711
|
readonly "postsTable.latest": "Latest";
|
|
710
712
|
readonly "postsTable.mostViewed": "Most viewed";
|
|
711
|
-
readonly "postsTable.favorites": "Favorites";
|
|
712
713
|
readonly "postsTable.cells.title": "Title";
|
|
713
714
|
readonly "postsTable.cells.author": "Author";
|
|
714
715
|
readonly "postsTable.cells.type": "Type";
|
package/dist/routes.esm.js
CHANGED
|
@@ -6,12 +6,12 @@ const qetaRouteRef = createRouteRef({
|
|
|
6
6
|
const askRouteRef = createSubRouteRef({
|
|
7
7
|
id: "qeta.ask",
|
|
8
8
|
parent: qetaRouteRef,
|
|
9
|
-
path: "/ask"
|
|
9
|
+
path: "/questions/ask"
|
|
10
10
|
});
|
|
11
11
|
const favoriteQuestionsRouteRef = createSubRouteRef({
|
|
12
12
|
id: "qeta.favoriteQuestions",
|
|
13
13
|
parent: qetaRouteRef,
|
|
14
|
-
path: "/
|
|
14
|
+
path: "/favorites"
|
|
15
15
|
});
|
|
16
16
|
const statisticsRouteRef = createSubRouteRef({
|
|
17
17
|
id: "qeta.statistics",
|
|
@@ -51,7 +51,7 @@ const collectionEditRouteRef = createSubRouteRef({
|
|
|
51
51
|
const writeRouteRef = createSubRouteRef({
|
|
52
52
|
id: "qeta.write",
|
|
53
53
|
parent: qetaRouteRef,
|
|
54
|
-
path: "/write"
|
|
54
|
+
path: "/articles/write"
|
|
55
55
|
});
|
|
56
56
|
const articlesRouteRef = createSubRouteRef({
|
|
57
57
|
id: "qeta.articles",
|
package/dist/routes.esm.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"routes.esm.js","sources":["../src/routes.ts"],"sourcesContent":["import { createRouteRef, createSubRouteRef } from '@backstage/core-plugin-api';\n\nexport const qetaRouteRef = createRouteRef({\n id: 'qeta',\n});\n\nexport const askRouteRef = createSubRouteRef({\n id: 'qeta.ask',\n parent: qetaRouteRef,\n path: '/ask',\n});\n\nexport const favoriteQuestionsRouteRef = createSubRouteRef({\n id: 'qeta.favoriteQuestions',\n parent: qetaRouteRef,\n path: '/
|
|
1
|
+
{"version":3,"file":"routes.esm.js","sources":["../src/routes.ts"],"sourcesContent":["import { createRouteRef, createSubRouteRef } from '@backstage/core-plugin-api';\n\nexport const qetaRouteRef = createRouteRef({\n id: 'qeta',\n});\n\nexport const askRouteRef = createSubRouteRef({\n id: 'qeta.ask',\n parent: qetaRouteRef,\n path: '/questions/ask',\n});\n\nexport const favoriteQuestionsRouteRef = createSubRouteRef({\n id: 'qeta.favoriteQuestions',\n parent: qetaRouteRef,\n path: '/favorites',\n});\n\nexport const statisticsRouteRef = createSubRouteRef({\n id: 'qeta.statistics',\n parent: qetaRouteRef,\n path: '/statistics',\n});\n\nexport const questionsRouteRef = createSubRouteRef({\n id: 'qeta.questions',\n parent: qetaRouteRef,\n path: '/questions',\n});\n\nexport const questionRouteRef = createSubRouteRef({\n id: 'qeta.question',\n parent: qetaRouteRef,\n path: '/questions/:id',\n});\n\nexport const collectionsRouteRef = createSubRouteRef({\n id: 'qeta.collections',\n parent: qetaRouteRef,\n path: '/collections',\n});\n\nexport const collectionRouteRef = createSubRouteRef({\n id: 'qeta.collection',\n parent: qetaRouteRef,\n path: '/collections/:id',\n});\n\nexport const collectionCreateRouteRef = createSubRouteRef({\n id: 'qeta.collection.create',\n parent: qetaRouteRef,\n path: '/collections/create',\n});\n\nexport const collectionEditRouteRef = createSubRouteRef({\n id: 'qeta.collection.edit',\n parent: qetaRouteRef,\n path: '/collections/:id/edit',\n});\n\nexport const writeRouteRef = createSubRouteRef({\n id: 'qeta.write',\n parent: qetaRouteRef,\n path: '/articles/write',\n});\n\nexport const articlesRouteRef = createSubRouteRef({\n id: 'qeta.articles',\n parent: qetaRouteRef,\n path: '/articles',\n});\n\nexport const articleRouteRef = createSubRouteRef({\n id: 'qeta.article',\n parent: qetaRouteRef,\n path: '/articles/:id',\n});\n\nexport const usersRouteRef = createSubRouteRef({\n id: 'qeta.users',\n parent: qetaRouteRef,\n path: '/users',\n});\n\nexport const userRouteRef = createSubRouteRef({\n id: 'qeta.user',\n parent: qetaRouteRef,\n path: '/users/*',\n});\n\nexport const editQuestionRouteRef = createSubRouteRef({\n id: 'qeta.editQuestion',\n parent: qetaRouteRef,\n path: '/questions/:id/edit',\n});\n\nexport const editArticleRouteRef = createSubRouteRef({\n id: 'qeta.editArticle',\n parent: qetaRouteRef,\n path: '/articles/:id/edit',\n});\n\nexport const tagsRouteRef = createSubRouteRef({\n id: 'qeta.tags',\n parent: qetaRouteRef,\n path: '/tags',\n});\n\nexport const tagRouteRef = createSubRouteRef({\n id: 'qeta.tag',\n parent: qetaRouteRef,\n path: '/tags/:tag',\n});\n\nexport const entitiesRouteRef = createSubRouteRef({\n id: 'qeta.entities',\n parent: qetaRouteRef,\n path: '/entities',\n});\n\nexport const entityRouteRef = createSubRouteRef({\n id: 'qeta.entity',\n parent: qetaRouteRef,\n path: '/entities/:entityRef',\n});\n\nexport const moderatorRouteRef = createSubRouteRef({\n id: 'qeta.moderator',\n parent: qetaRouteRef,\n path: '/moderate',\n});\n"],"names":[],"mappings":"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"}
|
package/dist/utils/utils.esm.js
CHANGED
|
@@ -8,6 +8,9 @@ import { useTranslation } from '../hooks/useTranslation.esm.js';
|
|
|
8
8
|
import 'dataloader';
|
|
9
9
|
import '@backstage/plugin-catalog-react';
|
|
10
10
|
import 'react-use/lib/useAsync';
|
|
11
|
+
import '@backstage/plugin-permission-react';
|
|
12
|
+
import '@drodil/backstage-plugin-qeta-common';
|
|
13
|
+
import '@backstage/plugin-permission-common';
|
|
11
14
|
|
|
12
15
|
const imageUpload = (opts) => {
|
|
13
16
|
const { qetaApi, errorApi, onImageUpload, postId, answerId, collectionId } = opts;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"utils.esm.js","sources":["../../src/utils/utils.ts"],"sourcesContent":["import { Entity, stringifyEntityRef } from '@backstage/catalog-model';\nimport { Filters } from '../components/FilterPanel/FilterPanel';\nimport FileType from 'file-type';\nimport { ErrorApi } from '@backstage/core-plugin-api';\nimport { QetaApi } from '@drodil/backstage-plugin-qeta-common';\nimport { useEffect } from 'react';\nimport { useTranslation } from '../hooks';\n\nexport const imageUpload = (opts: {\n qetaApi: QetaApi;\n errorApi: ErrorApi;\n onImageUpload?: (id: number) => void;\n postId?: number;\n answerId?: number;\n collectionId?: number;\n}) => {\n const { qetaApi, errorApi, onImageUpload, postId, answerId, collectionId } =\n opts;\n // eslint-disable-next-line func-names\n return async function* (data: ArrayBuffer) {\n const fileType = await FileType.fromBuffer(data);\n\n const mimeType = fileType ? fileType.mime : 'text/plain';\n const attachment = await qetaApi.postAttachment(\n new Blob([data], { type: mimeType }),\n { postId, answerId, collectionId },\n );\n if ('errors' in attachment) {\n errorApi.post({\n name: 'Upload failed',\n message: attachment.errors?.map(e => e.message).join(', ') ?? '',\n });\n return false;\n }\n onImageUpload?.(attachment.id);\n yield attachment.locationUri;\n return true;\n };\n};\n\nexport const formatEntityName = (username?: string) => {\n if (!username) {\n return '';\n }\n const plainName = username.split(/[/:]+/).pop();\n return plainName\n ?.split(/[_.-]+/)\n .map(a => a.charAt(0).toUpperCase() + a.slice(1))\n .join(' ');\n};\n\nexport const getEntityTitle = (\n entity: Entity,\n opts?: { withType: boolean },\n): string => {\n const { withType } = opts || { withType: true };\n const stringified = stringifyEntityRef(entity);\n return `${\n entity.metadata.title ?? formatEntityName(stringified) ?? stringified\n }${withType && entity.spec?.type ? ` (${entity.spec.type})` : ''}`;\n};\n\nexport const formatDate = (localDate: Date) => {\n let date: any = localDate.getDate();\n let month: any = localDate.getMonth() + 1;\n if (date < 10) {\n date = `0${date}`;\n }\n\n if (month < 10) {\n month = `0${month}`;\n }\n return `${localDate.getFullYear()}-${month}-${date}`;\n};\n\nexport type FiltersWithDateRange = Filters & {\n fromDate: string;\n toDate: string;\n};\n\nexport const getFiltersWithDateRange = (filters: Filters) => {\n let filtersWithDateRange: FiltersWithDateRange;\n const to = new Date();\n const from = new Date(to);\n if (filters.dateRange) {\n let fromDate = '';\n let toDate = '';\n\n switch (filters.dateRange) {\n case '7-days':\n toDate = formatDate(to);\n from.setDate(to.getDate() - 6);\n fromDate = formatDate(from);\n break;\n\n case '30-days':\n toDate = formatDate(to);\n from.setDate(to.getDate() - 29);\n fromDate = formatDate(from);\n break;\n default:\n if (filters.dateRange.indexOf('--') > 0) {\n fromDate = filters.dateRange.split('--')[0];\n toDate = filters.dateRange.split('--')[1];\n }\n break;\n }\n if (fromDate && toDate) {\n filtersWithDateRange = { ...filters, fromDate, toDate };\n delete filtersWithDateRange.dateRange;\n return filtersWithDateRange;\n }\n }\n\n if ('dateRange' in filters) {\n delete filters.dateRange;\n }\n\n return filters;\n};\n\nexport const useConfirmNavigationIfEdited = (edited: boolean) => {\n const { t } = useTranslation();\n const msg = t('common.unsaved_changes');\n useEffect(() => {\n const handleBeforeUnload = (event: BeforeUnloadEvent) => {\n if (edited) {\n event.preventDefault();\n event.returnValue = msg; // Included for legacy support, e.g. Chrome/Edge < 119\n }\n };\n\n const handleLocationChange = (event: any) => {\n if (edited) {\n // eslint-disable-next-line no-alert\n const response = window.confirm(msg);\n if (!response) {\n event.preventDefault();\n }\n }\n };\n\n window.addEventListener('beforeunload', handleBeforeUnload);\n // @ts-ignore\n window.navigation.addEventListener('navigate', handleLocationChange);\n\n return () => {\n window.removeEventListener('beforeunload', handleBeforeUnload);\n // @ts-ignore\n window.navigation.removeEventListener('navigate', handleLocationChange);\n };\n }, [edited, msg]);\n};\n"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"utils.esm.js","sources":["../../src/utils/utils.ts"],"sourcesContent":["import { Entity, stringifyEntityRef } from '@backstage/catalog-model';\nimport { Filters } from '../components/FilterPanel/FilterPanel';\nimport FileType from 'file-type';\nimport { ErrorApi } from '@backstage/core-plugin-api';\nimport { QetaApi } from '@drodil/backstage-plugin-qeta-common';\nimport { useEffect } from 'react';\nimport { useTranslation } from '../hooks';\n\nexport const imageUpload = (opts: {\n qetaApi: QetaApi;\n errorApi: ErrorApi;\n onImageUpload?: (id: number) => void;\n postId?: number;\n answerId?: number;\n collectionId?: number;\n}) => {\n const { qetaApi, errorApi, onImageUpload, postId, answerId, collectionId } =\n opts;\n // eslint-disable-next-line func-names\n return async function* (data: ArrayBuffer) {\n const fileType = await FileType.fromBuffer(data);\n\n const mimeType = fileType ? fileType.mime : 'text/plain';\n const attachment = await qetaApi.postAttachment(\n new Blob([data], { type: mimeType }),\n { postId, answerId, collectionId },\n );\n if ('errors' in attachment) {\n errorApi.post({\n name: 'Upload failed',\n message: attachment.errors?.map(e => e.message).join(', ') ?? '',\n });\n return false;\n }\n onImageUpload?.(attachment.id);\n yield attachment.locationUri;\n return true;\n };\n};\n\nexport const formatEntityName = (username?: string) => {\n if (!username) {\n return '';\n }\n const plainName = username.split(/[/:]+/).pop();\n return plainName\n ?.split(/[_.-]+/)\n .map(a => a.charAt(0).toUpperCase() + a.slice(1))\n .join(' ');\n};\n\nexport const getEntityTitle = (\n entity: Entity,\n opts?: { withType: boolean },\n): string => {\n const { withType } = opts || { withType: true };\n const stringified = stringifyEntityRef(entity);\n return `${\n entity.metadata.title ?? formatEntityName(stringified) ?? stringified\n }${withType && entity.spec?.type ? ` (${entity.spec.type})` : ''}`;\n};\n\nexport const formatDate = (localDate: Date) => {\n let date: any = localDate.getDate();\n let month: any = localDate.getMonth() + 1;\n if (date < 10) {\n date = `0${date}`;\n }\n\n if (month < 10) {\n month = `0${month}`;\n }\n return `${localDate.getFullYear()}-${month}-${date}`;\n};\n\nexport type FiltersWithDateRange = Filters & {\n fromDate: string;\n toDate: string;\n};\n\nexport const getFiltersWithDateRange = (filters: Filters) => {\n let filtersWithDateRange: FiltersWithDateRange;\n const to = new Date();\n const from = new Date(to);\n if (filters.dateRange) {\n let fromDate = '';\n let toDate = '';\n\n switch (filters.dateRange) {\n case '7-days':\n toDate = formatDate(to);\n from.setDate(to.getDate() - 6);\n fromDate = formatDate(from);\n break;\n\n case '30-days':\n toDate = formatDate(to);\n from.setDate(to.getDate() - 29);\n fromDate = formatDate(from);\n break;\n default:\n if (filters.dateRange.indexOf('--') > 0) {\n fromDate = filters.dateRange.split('--')[0];\n toDate = filters.dateRange.split('--')[1];\n }\n break;\n }\n if (fromDate && toDate) {\n filtersWithDateRange = { ...filters, fromDate, toDate };\n delete filtersWithDateRange.dateRange;\n return filtersWithDateRange;\n }\n }\n\n if ('dateRange' in filters) {\n delete filters.dateRange;\n }\n\n return filters;\n};\n\nexport const useConfirmNavigationIfEdited = (edited: boolean) => {\n const { t } = useTranslation();\n const msg = t('common.unsaved_changes');\n useEffect(() => {\n const handleBeforeUnload = (event: BeforeUnloadEvent) => {\n if (edited) {\n event.preventDefault();\n event.returnValue = msg; // Included for legacy support, e.g. Chrome/Edge < 119\n }\n };\n\n const handleLocationChange = (event: any) => {\n if (edited) {\n // eslint-disable-next-line no-alert\n const response = window.confirm(msg);\n if (!response) {\n event.preventDefault();\n }\n }\n };\n\n window.addEventListener('beforeunload', handleBeforeUnload);\n // @ts-ignore\n window.navigation.addEventListener('navigate', handleLocationChange);\n\n return () => {\n window.removeEventListener('beforeunload', handleBeforeUnload);\n // @ts-ignore\n window.navigation.removeEventListener('navigate', handleLocationChange);\n };\n }, [edited, msg]);\n};\n"],"names":[],"mappings":";;;;;;;;;;;;;;AAQa,MAAA,WAAA,GAAc,CAAC,IAOtB,KAAA;AACJ,EAAA,MAAM,EAAE,OAAS,EAAA,QAAA,EAAU,eAAe,MAAQ,EAAA,QAAA,EAAU,cAC1D,GAAA,IAAA;AAEF,EAAA,OAAO,iBAAiB,IAAmB,EAAA;AACzC,IAAA,MAAM,QAAW,GAAA,MAAM,QAAS,CAAA,UAAA,CAAW,IAAI,CAAA;AAE/C,IAAM,MAAA,QAAA,GAAW,QAAW,GAAA,QAAA,CAAS,IAAO,GAAA,YAAA;AAC5C,IAAM,MAAA,UAAA,GAAa,MAAM,OAAQ,CAAA,cAAA;AAAA,MAC/B,IAAI,KAAK,CAAC,IAAI,GAAG,EAAE,IAAA,EAAM,UAAU,CAAA;AAAA,MACnC,EAAE,MAAQ,EAAA,QAAA,EAAU,YAAa;AAAA,KACnC;AACA,IAAA,IAAI,YAAY,UAAY,EAAA;AAC1B,MAAA,QAAA,CAAS,IAAK,CAAA;AAAA,QACZ,IAAM,EAAA,eAAA;AAAA,QACN,OAAA,EAAS,UAAW,CAAA,MAAA,EAAQ,GAAI,CAAA,CAAA,CAAA,KAAK,EAAE,OAAO,CAAA,CAAE,IAAK,CAAA,IAAI,CAAK,IAAA;AAAA,OAC/D,CAAA;AACD,MAAO,OAAA,KAAA;AAAA;AAET,IAAA,aAAA,GAAgB,WAAW,EAAE,CAAA;AAC7B,IAAA,MAAM,UAAW,CAAA,WAAA;AACjB,IAAO,OAAA,IAAA;AAAA,GACT;AACF;AAEa,MAAA,gBAAA,GAAmB,CAAC,QAAsB,KAAA;AACrD,EAAA,IAAI,CAAC,QAAU,EAAA;AACb,IAAO,OAAA,EAAA;AAAA;AAET,EAAA,MAAM,SAAY,GAAA,QAAA,CAAS,KAAM,CAAA,OAAO,EAAE,GAAI,EAAA;AAC9C,EAAA,OAAO,WACH,KAAM,CAAA,QAAQ,EACf,GAAI,CAAA,CAAA,CAAA,KAAK,EAAE,MAAO,CAAA,CAAC,CAAE,CAAA,WAAA,KAAgB,CAAE,CAAA,KAAA,CAAM,CAAC,CAAC,CAAA,CAC/C,KAAK,GAAG,CAAA;AACb;AAEa,MAAA,cAAA,GAAiB,CAC5B,MAAA,EACA,IACW,KAAA;AACX,EAAA,MAAM,EAAE,QAAS,EAAA,GAAI,IAAQ,IAAA,EAAE,UAAU,IAAK,EAAA;AAC9C,EAAM,MAAA,WAAA,GAAc,mBAAmB,MAAM,CAAA;AAC7C,EAAA,OAAO,GACL,MAAO,CAAA,QAAA,CAAS,SAAS,gBAAiB,CAAA,WAAW,KAAK,WAC5D,CAAA,EAAG,QAAY,IAAA,MAAA,CAAO,MAAM,IAAO,GAAA,CAAA,EAAA,EAAK,OAAO,IAAK,CAAA,IAAI,MAAM,EAAE,CAAA,CAAA;AAClE;AAEa,MAAA,UAAA,GAAa,CAAC,SAAoB,KAAA;AAC7C,EAAI,IAAA,IAAA,GAAY,UAAU,OAAQ,EAAA;AAClC,EAAI,IAAA,KAAA,GAAa,SAAU,CAAA,QAAA,EAAa,GAAA,CAAA;AACxC,EAAA,IAAI,OAAO,EAAI,EAAA;AACb,IAAA,IAAA,GAAO,IAAI,IAAI,CAAA,CAAA;AAAA;AAGjB,EAAA,IAAI,QAAQ,EAAI,EAAA;AACd,IAAA,KAAA,GAAQ,IAAI,KAAK,CAAA,CAAA;AAAA;AAEnB,EAAA,OAAO,GAAG,SAAU,CAAA,WAAA,EAAa,CAAI,CAAA,EAAA,KAAK,IAAI,IAAI,CAAA,CAAA;AACpD;AAOa,MAAA,uBAAA,GAA0B,CAAC,OAAqB,KAAA;AAC3D,EAAI,IAAA,oBAAA;AACJ,EAAM,MAAA,EAAA,uBAAS,IAAK,EAAA;AACpB,EAAM,MAAA,IAAA,GAAO,IAAI,IAAA,CAAK,EAAE,CAAA;AACxB,EAAA,IAAI,QAAQ,SAAW,EAAA;AACrB,IAAA,IAAI,QAAW,GAAA,EAAA;AACf,IAAA,IAAI,MAAS,GAAA,EAAA;AAEb,IAAA,QAAQ,QAAQ,SAAW;AAAA,MACzB,KAAK,QAAA;AACH,QAAA,MAAA,GAAS,WAAW,EAAE,CAAA;AACtB,QAAA,IAAA,CAAK,OAAQ,CAAA,EAAA,CAAG,OAAQ,EAAA,GAAI,CAAC,CAAA;AAC7B,QAAA,QAAA,GAAW,WAAW,IAAI,CAAA;AAC1B,QAAA;AAAA,MAEF,KAAK,SAAA;AACH,QAAA,MAAA,GAAS,WAAW,EAAE,CAAA;AACtB,QAAA,IAAA,CAAK,OAAQ,CAAA,EAAA,CAAG,OAAQ,EAAA,GAAI,EAAE,CAAA;AAC9B,QAAA,QAAA,GAAW,WAAW,IAAI,CAAA;AAC1B,QAAA;AAAA,MACF;AACE,QAAA,IAAI,OAAQ,CAAA,SAAA,CAAU,OAAQ,CAAA,IAAI,IAAI,CAAG,EAAA;AACvC,UAAA,QAAA,GAAW,OAAQ,CAAA,SAAA,CAAU,KAAM,CAAA,IAAI,EAAE,CAAC,CAAA;AAC1C,UAAA,MAAA,GAAS,OAAQ,CAAA,SAAA,CAAU,KAAM,CAAA,IAAI,EAAE,CAAC,CAAA;AAAA;AAE1C,QAAA;AAAA;AAEJ,IAAA,IAAI,YAAY,MAAQ,EAAA;AACtB,MAAA,oBAAA,GAAuB,EAAE,GAAG,OAAS,EAAA,QAAA,EAAU,MAAO,EAAA;AACtD,MAAA,OAAO,oBAAqB,CAAA,SAAA;AAC5B,MAAO,OAAA,oBAAA;AAAA;AACT;AAGF,EAAA,IAAI,eAAe,OAAS,EAAA;AAC1B,IAAA,OAAO,OAAQ,CAAA,SAAA;AAAA;AAGjB,EAAO,OAAA,OAAA;AACT;AAEa,MAAA,4BAAA,GAA+B,CAAC,MAAoB,KAAA;AAC/D,EAAM,MAAA,EAAE,CAAE,EAAA,GAAI,cAAe,EAAA;AAC7B,EAAM,MAAA,GAAA,GAAM,EAAE,wBAAwB,CAAA;AACtC,EAAA,SAAA,CAAU,MAAM;AACd,IAAM,MAAA,kBAAA,GAAqB,CAAC,KAA6B,KAAA;AACvD,MAAA,IAAI,MAAQ,EAAA;AACV,QAAA,KAAA,CAAM,cAAe,EAAA;AACrB,QAAA,KAAA,CAAM,WAAc,GAAA,GAAA;AAAA;AACtB,KACF;AAEA,IAAM,MAAA,oBAAA,GAAuB,CAAC,KAAe,KAAA;AAC3C,MAAA,IAAI,MAAQ,EAAA;AAEV,QAAM,MAAA,QAAA,GAAW,MAAO,CAAA,OAAA,CAAQ,GAAG,CAAA;AACnC,QAAA,IAAI,CAAC,QAAU,EAAA;AACb,UAAA,KAAA,CAAM,cAAe,EAAA;AAAA;AACvB;AACF,KACF;AAEA,IAAO,MAAA,CAAA,gBAAA,CAAiB,gBAAgB,kBAAkB,CAAA;AAE1D,IAAO,MAAA,CAAA,UAAA,CAAW,gBAAiB,CAAA,UAAA,EAAY,oBAAoB,CAAA;AAEnE,IAAA,OAAO,MAAM;AACX,MAAO,MAAA,CAAA,mBAAA,CAAoB,gBAAgB,kBAAkB,CAAA;AAE7D,MAAO,MAAA,CAAA,UAAA,CAAW,mBAAoB,CAAA,UAAA,EAAY,oBAAoB,CAAA;AAAA,KACxE;AAAA,GACC,EAAA,CAAC,MAAQ,EAAA,GAAG,CAAC,CAAA;AAClB;;;;"}
|
package/package.json
CHANGED
|
@@ -7,7 +7,7 @@
|
|
|
7
7
|
"frontend",
|
|
8
8
|
"backstage.io"
|
|
9
9
|
],
|
|
10
|
-
"version": "3.
|
|
10
|
+
"version": "3.25.0",
|
|
11
11
|
"main": "dist/index.esm.js",
|
|
12
12
|
"types": "dist/index.d.ts",
|
|
13
13
|
"prepublishOnly": "yarn tsc && yarn build",
|
|
@@ -51,13 +51,13 @@
|
|
|
51
51
|
"@backstage/catalog-client": "^1.9.1",
|
|
52
52
|
"@backstage/catalog-model": "^1.7.3",
|
|
53
53
|
"@backstage/config": "^1.3.2",
|
|
54
|
-
"@backstage/core-components": "^0.17.
|
|
55
|
-
"@backstage/core-plugin-api": "^1.10.
|
|
56
|
-
"@backstage/plugin-catalog-react": "^1.
|
|
54
|
+
"@backstage/core-components": "^0.17.1",
|
|
55
|
+
"@backstage/core-plugin-api": "^1.10.6",
|
|
56
|
+
"@backstage/plugin-catalog-react": "^1.17.0",
|
|
57
57
|
"@backstage/plugin-permission-common": "^0.8.4",
|
|
58
|
-
"@backstage/plugin-permission-react": "^0.4.
|
|
59
|
-
"@backstage/plugin-signals-react": "^0.0.
|
|
60
|
-
"@drodil/backstage-plugin-qeta-common": "^3.
|
|
58
|
+
"@backstage/plugin-permission-react": "^0.4.33",
|
|
59
|
+
"@backstage/plugin-signals-react": "^0.0.12",
|
|
60
|
+
"@drodil/backstage-plugin-qeta-common": "^3.25.0",
|
|
61
61
|
"@jsdevtools/rehype-toc": "^3.0.2",
|
|
62
62
|
"@material-ui/core": "^4.12.2",
|
|
63
63
|
"@material-ui/icons": "^4.11.3",
|
|
@@ -86,8 +86,8 @@
|
|
|
86
86
|
"react-router-dom": "6.0.0-beta.0 || ^6.3.0"
|
|
87
87
|
},
|
|
88
88
|
"devDependencies": {
|
|
89
|
-
"@backstage/cli": "^0.
|
|
90
|
-
"@backstage/test-utils": "^1.7.
|
|
89
|
+
"@backstage/cli": "^0.32.0",
|
|
90
|
+
"@backstage/test-utils": "^1.7.7",
|
|
91
91
|
"@testing-library/dom": "^10.4.0",
|
|
92
92
|
"@testing-library/jest-dom": "^5.10.1",
|
|
93
93
|
"@testing-library/react": "^16.0.1",
|
|
@@ -100,5 +100,12 @@
|
|
|
100
100
|
"files": [
|
|
101
101
|
"dist"
|
|
102
102
|
],
|
|
103
|
+
"typesVersions": {
|
|
104
|
+
"*": {
|
|
105
|
+
"package.json": [
|
|
106
|
+
"package.json"
|
|
107
|
+
]
|
|
108
|
+
}
|
|
109
|
+
},
|
|
103
110
|
"module": "./dist/index.esm.js"
|
|
104
111
|
}
|