@drodil/backstage-plugin-qeta 3.59.2 → 3.59.6

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (78) hide show
  1. package/dist/alpha.d.ts +2 -3
  2. package/dist/alpha.esm.js +2 -2
  3. package/dist/alpha.esm.js.map +1 -1
  4. package/dist/components/ArticlePage/ArticlePage.esm.js.map +1 -1
  5. package/dist/components/ArticlesPage/ArticlesPage.esm.js.map +1 -1
  6. package/dist/components/AskPage/AskPage.esm.js.map +1 -1
  7. package/dist/components/CollectionCreatePage/CollectionCreatePage.esm.js.map +1 -1
  8. package/dist/components/CollectionPage/CollectionPage.esm.js.map +1 -1
  9. package/dist/components/CollectionsPage/CollectionsPage.esm.js.map +1 -1
  10. package/dist/components/ContentHealthCard/ContentHealthCard.esm.js.map +1 -1
  11. package/dist/components/ContentHealthCard/ReviewList.esm.js.map +1 -1
  12. package/dist/components/CreateLinkPage/CreateLinkPage.esm.js.map +1 -1
  13. package/dist/components/EntityCards/EntityPostsContainerCard.esm.js.map +1 -1
  14. package/dist/components/EntityCards/EntityPostsGridCard.esm.js.map +1 -1
  15. package/dist/components/EntityPage/EntityPage.esm.js.map +1 -1
  16. package/dist/components/EntityPostsContent/EntityPostsContent.esm.js.map +1 -1
  17. package/dist/components/FavoritePage/FavoritePage.esm.js.map +1 -1
  18. package/dist/components/HomePage/HomePage.esm.js +1 -1
  19. package/dist/components/HomePage/HomePage.esm.js.map +1 -1
  20. package/dist/components/HomeTimeline/HomeTimeline.esm.js.map +1 -1
  21. package/dist/components/HomeTimeline/index.esm.js +5 -1
  22. package/dist/components/HomeTimeline/index.esm.js.map +1 -1
  23. package/dist/components/LinkPage/LinkPage.esm.js +1 -1
  24. package/dist/components/LinkPage/LinkPage.esm.js.map +1 -1
  25. package/dist/components/LinksPage/LinksPage.esm.js.map +1 -1
  26. package/dist/components/ModeratorPage/ModeratorPage.esm.js.map +1 -1
  27. package/dist/components/PostsTableCard/Content.esm.js.map +1 -1
  28. package/dist/components/PostsTableCard/index.esm.js +5 -1
  29. package/dist/components/PostsTableCard/index.esm.js.map +1 -1
  30. package/dist/components/QetaPage/QetaPage.esm.js +1 -1
  31. package/dist/components/QetaPage/QetaPage.esm.js.map +1 -1
  32. package/dist/components/QetaPage/index.esm.js +5 -1
  33. package/dist/components/QetaPage/index.esm.js.map +1 -1
  34. package/dist/components/QetaSearchResultListItem/QetaSearchResultListItem.esm.js +2 -2
  35. package/dist/components/QetaSearchResultListItem/QetaSearchResultListItem.esm.js.map +1 -1
  36. package/dist/components/QetaSearchResultListItem/index.esm.js +5 -1
  37. package/dist/components/QetaSearchResultListItem/index.esm.js.map +1 -1
  38. package/dist/components/QuestionPage/QuestionPage.esm.js +1 -1
  39. package/dist/components/QuestionPage/QuestionPage.esm.js.map +1 -1
  40. package/dist/components/QuestionsPage/QuestionsPage.esm.js.map +1 -1
  41. package/dist/components/ReviewPage/ReviewPage.esm.js.map +1 -1
  42. package/dist/components/ReviewPage/index.esm.js +5 -1
  43. package/dist/components/ReviewPage/index.esm.js.map +1 -1
  44. package/dist/components/RightContent/ArticlesRightContent.esm.js.map +1 -1
  45. package/dist/components/RightContent/AskRightContent.esm.js.map +1 -1
  46. package/dist/components/RightContent/CollectionsRightContent.esm.js.map +1 -1
  47. package/dist/components/RightContent/DefaultRightContent.esm.js.map +1 -1
  48. package/dist/components/RightContent/EntitiesRightContent.esm.js.map +1 -1
  49. package/dist/components/RightContent/EntityRightContent.esm.js.map +1 -1
  50. package/dist/components/RightContent/FavoriteRightContent.esm.js.map +1 -1
  51. package/dist/components/RightContent/HomeRightContent.esm.js.map +1 -1
  52. package/dist/components/RightContent/LinkedPosts.esm.js.map +1 -1
  53. package/dist/components/RightContent/LinksRightContent.esm.js.map +1 -1
  54. package/dist/components/RightContent/PostRightContent.esm.js.map +1 -1
  55. package/dist/components/RightContent/QuestionsRightContent.esm.js.map +1 -1
  56. package/dist/components/RightContent/RightContent.esm.js +1 -1
  57. package/dist/components/RightContent/RightContent.esm.js.map +1 -1
  58. package/dist/components/RightContent/SimilarPosts.esm.js.map +1 -1
  59. package/dist/components/RightContent/SimilarQuestions.esm.js.map +1 -1
  60. package/dist/components/RightContent/TagRightContent.esm.js.map +1 -1
  61. package/dist/components/RightContent/TagsRightContent.esm.js.map +1 -1
  62. package/dist/components/RightContent/UsersRightContent.esm.js.map +1 -1
  63. package/dist/components/SettingsPage/SettingsPage.esm.js +1 -1
  64. package/dist/components/SettingsPage/SettingsPage.esm.js.map +1 -1
  65. package/dist/components/Statistics/GlobalStatsContent.esm.js.map +1 -1
  66. package/dist/components/Statistics/StatisticsPage.esm.js.map +1 -1
  67. package/dist/components/TagPage/TagPage.esm.js.map +1 -1
  68. package/dist/components/TechDocsAskQuestionAddon/TechDocsAskQuestionAddon.esm.js.map +1 -1
  69. package/dist/components/UserPage/UserPage.esm.js +1 -1
  70. package/dist/components/UserPage/UserPage.esm.js.map +1 -1
  71. package/dist/components/UserPage/UserStatsContent.esm.js.map +1 -1
  72. package/dist/components/UsersPage/UsersPage.esm.js.map +1 -1
  73. package/dist/components/WritePage/WritePage.esm.js.map +1 -1
  74. package/dist/hooks/useSidebarSettings.esm.js.map +1 -1
  75. package/dist/package.json.esm.js +5 -5
  76. package/dist/plugin.esm.js +1 -1
  77. package/dist/plugin.esm.js.map +1 -1
  78. package/package.json +26 -26
@@ -4,7 +4,7 @@ import { useParams, useSearchParams } from 'react-router-dom';
4
4
  import { useUserInfo, qetaTranslationRef, useIdentityApi, useQetaApi, RelativeTimeWithTooltip, ContentHeader, UserFollowButton, AskQuestionButton, WriteArticleButton, CreateLinkButton, PostsContainer, CollectionsContainer, AnswersContainer } from '@drodil/backstage-plugin-qeta-react';
5
5
  import { UserStatsContent } from './UserStatsContent.esm.js';
6
6
  import { TabContext, TabList, TabPanel } from '@material-ui/lab';
7
- import { makeStyles, Box, Avatar, Typography, Tab } from '@material-ui/core';
7
+ import { Box, Avatar, Typography, Tab, makeStyles } from '@material-ui/core';
8
8
  import { useTranslationRef } from '@backstage/core-plugin-api/alpha';
9
9
  import AssessmentIcon from '@material-ui/icons/Assessment';
10
10
  import HelpOutline from '@material-ui/icons/HelpOutline';
@@ -1 +1 @@
1
- {"version":3,"file":"UserPage.esm.js","sources":["../../../src/components/UserPage/UserPage.tsx"],"sourcesContent":["import { ChangeEvent, useState } from 'react';\nimport { useParams, useSearchParams } from 'react-router-dom';\nimport {\n AnswersContainer,\n AskQuestionButton,\n CollectionsContainer,\n ContentHeader,\n CreateLinkButton,\n PostsContainer,\n qetaTranslationRef,\n useIdentityApi,\n UserFollowButton,\n useUserInfo,\n WriteArticleButton,\n useQetaApi,\n RelativeTimeWithTooltip,\n} from '@drodil/backstage-plugin-qeta-react';\nimport { UserStatsContent } from './UserStatsContent';\nimport { TabContext, TabList, TabPanel } from '@material-ui/lab';\nimport { Avatar, Box, makeStyles, Tab, Typography } from '@material-ui/core';\nimport { useTranslationRef } from '@backstage/core-plugin-api/alpha';\nimport AssessmentIcon from '@material-ui/icons/Assessment';\nimport HelpOutlineIcon from '@material-ui/icons/HelpOutline';\nimport CollectionsBookmarkIcon from '@material-ui/icons/CollectionsBookmark';\nimport CollectionsIcon from '@material-ui/icons/Collections';\nimport QuestionAnswerIcon from '@material-ui/icons/QuestionAnswer';\nimport LinkIcon from '@material-ui/icons/Link';\n\nconst useStyles = makeStyles(theme => ({\n tabIcon: {\n marginRight: theme.spacing(1),\n },\n tabPanel: {\n padding: theme.spacing(3, 0),\n },\n avatar: {\n width: theme.spacing(12),\n height: theme.spacing(12),\n marginRight: theme.spacing(3),\n boxShadow: theme.shadows[2],\n },\n headerContent: {\n display: 'flex',\n alignItems: 'center',\n padding: theme.spacing(3, 0),\n },\n tabList: {},\n tabLabel: {\n display: 'flex',\n alignItems: 'center',\n justifyContent: 'flex-start',\n minWidth: 0,\n },\n}));\n\nexport const UserPage = () => {\n const identity = useParams()['*'] ?? 'unknown';\n const { name, initials, user, secondaryTitle } = useUserInfo(identity);\n const [tab, setTab] = useState('statistics');\n const { t } = useTranslationRef(qetaTranslationRef);\n const [_searchParams, setSearchParams] = useSearchParams();\n const classes = useStyles();\n const {\n value: currentUser,\n loading: loadingUser,\n error: userError,\n } = useIdentityApi(api => api.getBackstageIdentity(), []);\n const { value: userStats, loading: loadingUserStats } = useQetaApi(\n api => api.getUserStats(identity),\n [identity],\n );\n\n const handleChange = (_event: ChangeEvent<{}>, newValue: string) => {\n setSearchParams({});\n setTab(newValue);\n };\n\n const TabLabel = ({\n icon,\n label,\n }: {\n icon: React.ReactNode;\n label: string;\n }) => (\n <div className={classes.tabLabel}>\n {icon}\n <span>{label}</span>\n </div>\n );\n\n const title = (\n <Box\n className={classes.headerContent}\n role=\"banner\"\n aria-label={t('userPage.profileHeader', {})}\n >\n <Avatar\n src={user?.spec?.profile?.picture}\n alt={name}\n variant=\"rounded\"\n className={classes.avatar}\n aria-label={t('userPage.profilePicture', { name })}\n >\n {initials}\n </Avatar>\n <Box display=\"flex\" flexDirection=\"column\" justifyContent=\"center\">\n <Box display=\"flex\" alignItems=\"center\">\n <Typography\n variant=\"h4\"\n component=\"h2\"\n id=\"user-name\"\n style={{ fontWeight: 700 }}\n >\n {name}\n </Typography>\n </Box>\n {(secondaryTitle || user?.spec?.profile?.email) && (\n <Typography variant=\"h6\" color=\"textSecondary\">\n {secondaryTitle || user?.spec?.profile?.email}\n </Typography>\n )}\n {userStats?.summary?.lastSeen && (\n <Typography variant=\"body2\" color=\"textSecondary\">\n {t('stats.lastSeen')}:{' '}\n <RelativeTimeWithTooltip value={userStats.summary.lastSeen} />\n </Typography>\n )}\n </Box>\n </Box>\n );\n\n return (\n <>\n <ContentHeader titleComponent={title}>\n {!loadingUser &&\n !userError &&\n currentUser?.userEntityRef !== identity && (\n <UserFollowButton\n userRef={identity}\n aria-label={t('userPage.followUser', { name })}\n />\n )}\n <AskQuestionButton />\n <WriteArticleButton />\n <CreateLinkButton />\n </ContentHeader>\n <TabContext value={tab}>\n <Box className={classes.tabList}>\n <TabList\n onChange={handleChange}\n aria-label={t('userPage.profileTab', {})}\n aria-labelledby=\"user-name\"\n variant=\"scrollable\"\n scrollButtons=\"auto\"\n >\n <Tab\n value=\"statistics\"\n label={\n <TabLabel\n icon={<AssessmentIcon className={classes.tabIcon} />}\n label={t('userPage.statistics', {})}\n />\n }\n />\n <Tab\n value=\"questions\"\n label={\n <TabLabel\n icon={<HelpOutlineIcon className={classes.tabIcon} />}\n label={t('userPage.questions', {})}\n />\n }\n />\n <Tab\n value=\"articles\"\n label={\n <TabLabel\n icon={<CollectionsBookmarkIcon className={classes.tabIcon} />}\n label={t('userPage.articles', {})}\n />\n }\n />\n <Tab\n value=\"links\"\n label={\n <TabLabel\n icon={<LinkIcon className={classes.tabIcon} />}\n label={t('userPage.links', {})}\n />\n }\n />\n <Tab\n value=\"collections\"\n label={\n <TabLabel\n icon={<CollectionsIcon className={classes.tabIcon} />}\n label={t('userPage.collections', {})}\n />\n }\n />\n <Tab\n value=\"answers\"\n label={\n <TabLabel\n icon={<QuestionAnswerIcon className={classes.tabIcon} />}\n label={t('userPage.answers', {})}\n />\n }\n />\n </TabList>\n </Box>\n <TabPanel value=\"statistics\" className={classes.tabPanel}>\n <UserStatsContent\n userRef={identity ?? ''}\n stats={userStats}\n loading={loadingUserStats}\n />\n </TabPanel>\n <TabPanel value=\"questions\" className={classes.tabPanel}>\n <PostsContainer\n author={identity ?? ''}\n showNoQuestionsBtn={false}\n type=\"question\"\n prefix=\"user-questions\"\n />\n </TabPanel>\n <TabPanel value=\"articles\" className={classes.tabPanel}>\n <PostsContainer\n author={identity ?? ''}\n type=\"article\"\n showNoQuestionsBtn={false}\n prefix=\"user-articles\"\n />\n </TabPanel>\n <TabPanel value=\"links\" className={classes.tabPanel}>\n <PostsContainer\n author={identity ?? ''}\n type=\"link\"\n showNoQuestionsBtn={false}\n prefix=\"user-links\"\n />\n </TabPanel>\n <TabPanel value=\"collections\" className={classes.tabPanel}>\n <CollectionsContainer\n owner={identity ?? ''}\n prefix=\"user-collections\"\n />\n </TabPanel>\n <TabPanel value=\"answers\" className={classes.tabPanel}>\n <AnswersContainer\n author={identity ?? ''}\n title={t('userPage.answers', {})}\n prefix=\"user-answers\"\n />\n </TabPanel>\n </TabContext>\n </>\n );\n};\n"],"names":["HelpOutlineIcon"],"mappings":"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"}
1
+ {"version":3,"file":"UserPage.esm.js","sources":["../../../src/components/UserPage/UserPage.tsx"],"sourcesContent":["import { ChangeEvent, useState } from 'react';\nimport { useParams, useSearchParams } from 'react-router-dom';\nimport {\n AnswersContainer,\n AskQuestionButton,\n CollectionsContainer,\n ContentHeader,\n CreateLinkButton,\n PostsContainer,\n qetaTranslationRef,\n useIdentityApi,\n UserFollowButton,\n useUserInfo,\n WriteArticleButton,\n useQetaApi,\n RelativeTimeWithTooltip,\n} from '@drodil/backstage-plugin-qeta-react';\nimport { UserStatsContent } from './UserStatsContent';\nimport { TabContext, TabList, TabPanel } from '@material-ui/lab';\nimport { Avatar, Box, makeStyles, Tab, Typography } from '@material-ui/core';\nimport { useTranslationRef } from '@backstage/core-plugin-api/alpha';\nimport AssessmentIcon from '@material-ui/icons/Assessment';\nimport HelpOutlineIcon from '@material-ui/icons/HelpOutline';\nimport CollectionsBookmarkIcon from '@material-ui/icons/CollectionsBookmark';\nimport CollectionsIcon from '@material-ui/icons/Collections';\nimport QuestionAnswerIcon from '@material-ui/icons/QuestionAnswer';\nimport LinkIcon from '@material-ui/icons/Link';\n\nconst useStyles = makeStyles(theme => ({\n tabIcon: {\n marginRight: theme.spacing(1),\n },\n tabPanel: {\n padding: theme.spacing(3, 0),\n },\n avatar: {\n width: theme.spacing(12),\n height: theme.spacing(12),\n marginRight: theme.spacing(3),\n boxShadow: theme.shadows[2],\n },\n headerContent: {\n display: 'flex',\n alignItems: 'center',\n padding: theme.spacing(3, 0),\n },\n tabList: {},\n tabLabel: {\n display: 'flex',\n alignItems: 'center',\n justifyContent: 'flex-start',\n minWidth: 0,\n },\n}));\n\nexport const UserPage = () => {\n const identity = useParams()['*'] ?? 'unknown';\n const { name, initials, user, secondaryTitle } = useUserInfo(identity);\n const [tab, setTab] = useState('statistics');\n const { t } = useTranslationRef(qetaTranslationRef);\n const [_searchParams, setSearchParams] = useSearchParams();\n const classes = useStyles();\n const {\n value: currentUser,\n loading: loadingUser,\n error: userError,\n } = useIdentityApi(api => api.getBackstageIdentity(), []);\n const { value: userStats, loading: loadingUserStats } = useQetaApi(\n api => api.getUserStats(identity),\n [identity],\n );\n\n const handleChange = (_event: ChangeEvent<{}>, newValue: string) => {\n setSearchParams({});\n setTab(newValue);\n };\n\n const TabLabel = ({\n icon,\n label,\n }: {\n icon: React.ReactNode;\n label: string;\n }) => (\n <div className={classes.tabLabel}>\n {icon}\n <span>{label}</span>\n </div>\n );\n\n const title = (\n <Box\n className={classes.headerContent}\n role=\"banner\"\n aria-label={t('userPage.profileHeader', {})}\n >\n <Avatar\n src={user?.spec?.profile?.picture}\n alt={name}\n variant=\"rounded\"\n className={classes.avatar}\n aria-label={t('userPage.profilePicture', { name })}\n >\n {initials}\n </Avatar>\n <Box display=\"flex\" flexDirection=\"column\" justifyContent=\"center\">\n <Box display=\"flex\" alignItems=\"center\">\n <Typography\n variant=\"h4\"\n component=\"h2\"\n id=\"user-name\"\n style={{ fontWeight: 700 }}\n >\n {name}\n </Typography>\n </Box>\n {(secondaryTitle || user?.spec?.profile?.email) && (\n <Typography variant=\"h6\" color=\"textSecondary\">\n {secondaryTitle || user?.spec?.profile?.email}\n </Typography>\n )}\n {userStats?.summary?.lastSeen && (\n <Typography variant=\"body2\" color=\"textSecondary\">\n {t('stats.lastSeen')}:{' '}\n <RelativeTimeWithTooltip value={userStats.summary.lastSeen} />\n </Typography>\n )}\n </Box>\n </Box>\n );\n\n return (\n <>\n <ContentHeader titleComponent={title}>\n {!loadingUser &&\n !userError &&\n currentUser?.userEntityRef !== identity && (\n <UserFollowButton\n userRef={identity}\n aria-label={t('userPage.followUser', { name })}\n />\n )}\n <AskQuestionButton />\n <WriteArticleButton />\n <CreateLinkButton />\n </ContentHeader>\n <TabContext value={tab}>\n <Box className={classes.tabList}>\n <TabList\n onChange={handleChange}\n aria-label={t('userPage.profileTab', {})}\n aria-labelledby=\"user-name\"\n variant=\"scrollable\"\n scrollButtons=\"auto\"\n >\n <Tab\n value=\"statistics\"\n label={\n <TabLabel\n icon={<AssessmentIcon className={classes.tabIcon} />}\n label={t('userPage.statistics', {})}\n />\n }\n />\n <Tab\n value=\"questions\"\n label={\n <TabLabel\n icon={<HelpOutlineIcon className={classes.tabIcon} />}\n label={t('userPage.questions', {})}\n />\n }\n />\n <Tab\n value=\"articles\"\n label={\n <TabLabel\n icon={<CollectionsBookmarkIcon className={classes.tabIcon} />}\n label={t('userPage.articles', {})}\n />\n }\n />\n <Tab\n value=\"links\"\n label={\n <TabLabel\n icon={<LinkIcon className={classes.tabIcon} />}\n label={t('userPage.links', {})}\n />\n }\n />\n <Tab\n value=\"collections\"\n label={\n <TabLabel\n icon={<CollectionsIcon className={classes.tabIcon} />}\n label={t('userPage.collections', {})}\n />\n }\n />\n <Tab\n value=\"answers\"\n label={\n <TabLabel\n icon={<QuestionAnswerIcon className={classes.tabIcon} />}\n label={t('userPage.answers', {})}\n />\n }\n />\n </TabList>\n </Box>\n <TabPanel value=\"statistics\" className={classes.tabPanel}>\n <UserStatsContent\n userRef={identity ?? ''}\n stats={userStats}\n loading={loadingUserStats}\n />\n </TabPanel>\n <TabPanel value=\"questions\" className={classes.tabPanel}>\n <PostsContainer\n author={identity ?? ''}\n showNoQuestionsBtn={false}\n type=\"question\"\n prefix=\"user-questions\"\n />\n </TabPanel>\n <TabPanel value=\"articles\" className={classes.tabPanel}>\n <PostsContainer\n author={identity ?? ''}\n type=\"article\"\n showNoQuestionsBtn={false}\n prefix=\"user-articles\"\n />\n </TabPanel>\n <TabPanel value=\"links\" className={classes.tabPanel}>\n <PostsContainer\n author={identity ?? ''}\n type=\"link\"\n showNoQuestionsBtn={false}\n prefix=\"user-links\"\n />\n </TabPanel>\n <TabPanel value=\"collections\" className={classes.tabPanel}>\n <CollectionsContainer\n owner={identity ?? ''}\n prefix=\"user-collections\"\n />\n </TabPanel>\n <TabPanel value=\"answers\" className={classes.tabPanel}>\n <AnswersContainer\n author={identity ?? ''}\n title={t('userPage.answers', {})}\n prefix=\"user-answers\"\n />\n </TabPanel>\n </TabContext>\n </>\n );\n};\n"],"names":["HelpOutlineIcon"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"UserStatsContent.esm.js","sources":["../../../src/components/UserPage/UserStatsContent.tsx"],"sourcesContent":["import {\n StatsChart,\n useQetaApi,\n UserBadges,\n} from '@drodil/backstage-plugin-qeta-react';\nimport {\n StatisticsResponse,\n UserStat,\n} from '@drodil/backstage-plugin-qeta-common';\nimport { Card, CardContent, CircularProgress, Grid } from '@material-ui/core';\n\nexport const UserStatsContent = (props: {\n userRef: string;\n stats?: StatisticsResponse<UserStat>;\n loading?: boolean;\n}) => {\n const {\n value: response,\n loading,\n error,\n } = useQetaApi(\n api => {\n if (props.stats) {\n return Promise.resolve(props.stats);\n }\n return api.getUserStats(props.userRef);\n },\n [props.userRef, props.stats],\n );\n\n const stats = props.stats || response;\n const isLoading = props.loading || loading;\n\n if (error) {\n return null;\n }\n return (\n <Grid container spacing={3}>\n <Grid item xs={12}>\n <Card>\n <CardContent>\n <UserBadges entityRef={props.userRef} />\n </CardContent>\n </Card>\n </Grid>\n <Grid item xs={12}>\n <Card>\n <CardContent>\n {!isLoading && stats && (\n <StatsChart\n data={stats.statistics}\n summary={stats.summary as unknown as Record<string, number>}\n />\n )}\n {isLoading && !props.stats && <CircularProgress />}\n </CardContent>\n </Card>\n </Grid>\n </Grid>\n );\n};\n"],"names":[],"mappings":";;;;AAWa,MAAA,gBAAA,GAAmB,CAAC,KAI3B,KAAA;AACJ,EAAM,MAAA;AAAA,IACJ,KAAO,EAAA,QAAA;AAAA,IACP,OAAA;AAAA,IACA;AAAA,GACE,GAAA,UAAA;AAAA,IACF,CAAO,GAAA,KAAA;AACL,MAAA,IAAI,MAAM,KAAO,EAAA;AACf,QAAO,OAAA,OAAA,CAAQ,OAAQ,CAAA,KAAA,CAAM,KAAK,CAAA;AAAA;AAEpC,MAAO,OAAA,GAAA,CAAI,YAAa,CAAA,KAAA,CAAM,OAAO,CAAA;AAAA,KACvC;AAAA,IACA,CAAC,KAAA,CAAM,OAAS,EAAA,KAAA,CAAM,KAAK;AAAA,GAC7B;AAEA,EAAM,MAAA,KAAA,GAAQ,MAAM,KAAS,IAAA,QAAA;AAC7B,EAAM,MAAA,SAAA,GAAY,MAAM,OAAW,IAAA,OAAA;AAEnC,EAAA,IAAI,KAAO,EAAA;AACT,IAAO,OAAA,IAAA;AAAA;AAET,EAAA,uBACG,IAAA,CAAA,IAAA,EAAA,EAAK,SAAS,EAAA,IAAA,EAAC,SAAS,CACvB,EAAA,QAAA,EAAA;AAAA,oBAAA,GAAA,CAAC,QAAK,IAAI,EAAA,IAAA,EAAC,EAAI,EAAA,EAAA,EACb,8BAAC,IACC,EAAA,EAAA,QAAA,kBAAA,GAAA,CAAC,WACC,EAAA,EAAA,QAAA,kBAAA,GAAA,CAAC,cAAW,SAAW,EAAA,KAAA,CAAM,OAAS,EAAA,CAAA,EACxC,GACF,CACF,EAAA,CAAA;AAAA,oBACA,GAAA,CAAC,QAAK,IAAI,EAAA,IAAA,EAAC,IAAI,EACb,EAAA,QAAA,kBAAA,GAAA,CAAC,IACC,EAAA,EAAA,QAAA,kBAAA,IAAA,CAAC,WACE,EAAA,EAAA,QAAA,EAAA;AAAA,MAAA,CAAC,aAAa,KACb,oBAAA,GAAA;AAAA,QAAC,UAAA;AAAA,QAAA;AAAA,UACC,MAAM,KAAM,CAAA,UAAA;AAAA,UACZ,SAAS,KAAM,CAAA;AAAA;AAAA,OACjB;AAAA,MAED,SAAa,IAAA,CAAC,KAAM,CAAA,KAAA,wBAAU,gBAAiB,EAAA,EAAA;AAAA,KAAA,EAClD,GACF,CACF,EAAA;AAAA,GACF,EAAA,CAAA;AAEJ;;;;"}
1
+ {"version":3,"file":"UserStatsContent.esm.js","sources":["../../../src/components/UserPage/UserStatsContent.tsx"],"sourcesContent":["import {\n StatsChart,\n useQetaApi,\n UserBadges,\n} from '@drodil/backstage-plugin-qeta-react';\nimport {\n StatisticsResponse,\n UserStat,\n} from '@drodil/backstage-plugin-qeta-common';\nimport { Card, CardContent, CircularProgress, Grid } from '@material-ui/core';\n\nexport const UserStatsContent = (props: {\n userRef: string;\n stats?: StatisticsResponse<UserStat>;\n loading?: boolean;\n}) => {\n const {\n value: response,\n loading,\n error,\n } = useQetaApi(\n api => {\n if (props.stats) {\n return Promise.resolve(props.stats);\n }\n return api.getUserStats(props.userRef);\n },\n [props.userRef, props.stats],\n );\n\n const stats = props.stats || response;\n const isLoading = props.loading || loading;\n\n if (error) {\n return null;\n }\n return (\n <Grid container spacing={3}>\n <Grid item xs={12}>\n <Card>\n <CardContent>\n <UserBadges entityRef={props.userRef} />\n </CardContent>\n </Card>\n </Grid>\n <Grid item xs={12}>\n <Card>\n <CardContent>\n {!isLoading && stats && (\n <StatsChart\n data={stats.statistics}\n summary={stats.summary as unknown as Record<string, number>}\n />\n )}\n {isLoading && !props.stats && <CircularProgress />}\n </CardContent>\n </Card>\n </Grid>\n </Grid>\n );\n};\n"],"names":[],"mappings":";;;;AAWO,MAAM,gBAAA,GAAmB,CAAC,KAAA,KAI3B;AACJ,EAAA,MAAM;AAAA,IACJ,KAAA,EAAO,QAAA;AAAA,IACP,OAAA;AAAA,IACA;AAAA,GACF,GAAI,UAAA;AAAA,IACF,CAAA,GAAA,KAAO;AACL,MAAA,IAAI,MAAM,KAAA,EAAO;AACf,QAAA,OAAO,OAAA,CAAQ,OAAA,CAAQ,KAAA,CAAM,KAAK,CAAA;AAAA,MACpC;AACA,MAAA,OAAO,GAAA,CAAI,YAAA,CAAa,KAAA,CAAM,OAAO,CAAA;AAAA,IACvC,CAAA;AAAA,IACA,CAAC,KAAA,CAAM,OAAA,EAAS,KAAA,CAAM,KAAK;AAAA,GAC7B;AAEA,EAAA,MAAM,KAAA,GAAQ,MAAM,KAAA,IAAS,QAAA;AAC7B,EAAA,MAAM,SAAA,GAAY,MAAM,OAAA,IAAW,OAAA;AAEnC,EAAA,IAAI,KAAA,EAAO;AACT,IAAA,OAAO,IAAA;AAAA,EACT;AACA,EAAA,uBACE,IAAA,CAAC,IAAA,EAAA,EAAK,SAAA,EAAS,IAAA,EAAC,SAAS,CAAA,EACvB,QAAA,EAAA;AAAA,oBAAA,GAAA,CAAC,QAAK,IAAA,EAAI,IAAA,EAAC,EAAA,EAAI,EAAA,EACb,8BAAC,IAAA,EAAA,EACC,QAAA,kBAAA,GAAA,CAAC,WAAA,EAAA,EACC,QAAA,kBAAA,GAAA,CAAC,cAAW,SAAA,EAAW,KAAA,CAAM,OAAA,EAAS,CAAA,EACxC,GACF,CAAA,EACF,CAAA;AAAA,oBACA,GAAA,CAAC,QAAK,IAAA,EAAI,IAAA,EAAC,IAAI,EAAA,EACb,QAAA,kBAAA,GAAA,CAAC,IAAA,EAAA,EACC,QAAA,kBAAA,IAAA,CAAC,WAAA,EAAA,EACE,QAAA,EAAA;AAAA,MAAA,CAAC,aAAa,KAAA,oBACb,GAAA;AAAA,QAAC,UAAA;AAAA,QAAA;AAAA,UACC,MAAM,KAAA,CAAM,UAAA;AAAA,UACZ,SAAS,KAAA,CAAM;AAAA;AAAA,OACjB;AAAA,MAED,SAAA,IAAa,CAAC,KAAA,CAAM,KAAA,wBAAU,gBAAA,EAAA,EAAiB;AAAA,KAAA,EAClD,GACF,CAAA,EACF;AAAA,GAAA,EACF,CAAA;AAEJ;;;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"UsersPage.esm.js","sources":["../../../src/components/UsersPage/UsersPage.tsx"],"sourcesContent":["import {\n ContentHeader,\n qetaTranslationRef,\n UsersContainer,\n} from '@drodil/backstage-plugin-qeta-react';\nimport PeopleOutline from '@material-ui/icons/PeopleOutline';\nimport { useTranslationRef } from '@backstage/core-plugin-api/alpha';\n\nexport const UsersPage = () => {\n const { t } = useTranslationRef(qetaTranslationRef);\n\n return (\n <>\n <ContentHeader\n title={t('usersPage.title')}\n titleIcon={<PeopleOutline fontSize=\"large\" />}\n />\n <UsersContainer />\n </>\n );\n};\n"],"names":[],"mappings":";;;;;AAQO,MAAM,YAAY,MAAM;AAC7B,EAAA,MAAM,EAAE,CAAA,EAAM,GAAA,iBAAA,CAAkB,kBAAkB,CAAA;AAElD,EAAA,uBAEI,IAAA,CAAA,QAAA,EAAA,EAAA,QAAA,EAAA;AAAA,oBAAA,GAAA;AAAA,MAAC,aAAA;AAAA,MAAA;AAAA,QACC,KAAA,EAAO,EAAE,iBAAiB,CAAA;AAAA,QAC1B,SAAW,kBAAA,GAAA,CAAC,aAAc,EAAA,EAAA,QAAA,EAAS,OAAQ,EAAA;AAAA;AAAA,KAC7C;AAAA,wBACC,cAAe,EAAA,EAAA;AAAA,GAClB,EAAA,CAAA;AAEJ;;;;"}
1
+ {"version":3,"file":"UsersPage.esm.js","sources":["../../../src/components/UsersPage/UsersPage.tsx"],"sourcesContent":["import {\n ContentHeader,\n qetaTranslationRef,\n UsersContainer,\n} from '@drodil/backstage-plugin-qeta-react';\nimport PeopleOutline from '@material-ui/icons/PeopleOutline';\nimport { useTranslationRef } from '@backstage/core-plugin-api/alpha';\n\nexport const UsersPage = () => {\n const { t } = useTranslationRef(qetaTranslationRef);\n\n return (\n <>\n <ContentHeader\n title={t('usersPage.title')}\n titleIcon={<PeopleOutline fontSize=\"large\" />}\n />\n <UsersContainer />\n </>\n );\n};\n"],"names":[],"mappings":";;;;;AAQO,MAAM,YAAY,MAAM;AAC7B,EAAA,MAAM,EAAE,CAAA,EAAE,GAAI,iBAAA,CAAkB,kBAAkB,CAAA;AAElD,EAAA,uBACE,IAAA,CAAA,QAAA,EAAA,EACE,QAAA,EAAA;AAAA,oBAAA,GAAA;AAAA,MAAC,aAAA;AAAA,MAAA;AAAA,QACC,KAAA,EAAO,EAAE,iBAAiB,CAAA;AAAA,QAC1B,SAAA,kBAAW,GAAA,CAAC,aAAA,EAAA,EAAc,QAAA,EAAS,OAAA,EAAQ;AAAA;AAAA,KAC7C;AAAA,wBACC,cAAA,EAAA,EAAe;AAAA,GAAA,EAClB,CAAA;AAEJ;;;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"WritePage.esm.js","sources":["../../../src/components/WritePage/WritePage.tsx"],"sourcesContent":["import { useParams, useSearchParams } from 'react-router-dom';\nimport { filterTags } from '@drodil/backstage-plugin-qeta-common';\nimport {\n ContentHeader,\n PostForm,\n qetaTranslationRef,\n} from '@drodil/backstage-plugin-qeta-react';\nimport { useEntityPresentation } from '@backstage/plugin-catalog-react';\nimport { InfoCard } from '@backstage/core-components';\nimport { Grid } from '@material-ui/core';\nimport { useTranslationRef } from '@backstage/core-plugin-api/alpha';\n\nexport const WritePage = () => {\n const { id } = useParams();\n const [searchParams] = useSearchParams();\n const entity = searchParams.get('entity') ?? undefined;\n const entityPage = searchParams.get('entityPage') === 'true';\n const tags = filterTags(searchParams.get('tags'));\n const { t } = useTranslationRef(qetaTranslationRef);\n let title;\n if (id) {\n title = t('writePage.title.existingArticle');\n } else if (entity) {\n // eslint-disable-next-line react-hooks/rules-of-hooks\n const representation = useEntityPresentation(entity);\n title = t('writePage.title.entityArticle', {\n entity: representation.primaryTitle,\n });\n } else {\n title = t('writePage.title.newArticle');\n }\n\n return (\n <>\n <ContentHeader title={title} />\n <Grid container spacing={3} direction=\"column\">\n <Grid item>\n <InfoCard>\n <PostForm\n id={id}\n entity={entity}\n entityPage={entityPage}\n tags={tags}\n type=\"article\"\n />\n </InfoCard>\n </Grid>\n </Grid>\n </>\n );\n};\n"],"names":[],"mappings":";;;;;;;;;AAYO,MAAM,YAAY,MAAM;AAC7B,EAAM,MAAA,EAAE,EAAG,EAAA,GAAI,SAAU,EAAA;AACzB,EAAM,MAAA,CAAC,YAAY,CAAA,GAAI,eAAgB,EAAA;AACvC,EAAA,MAAM,MAAS,GAAA,YAAA,CAAa,GAAI,CAAA,QAAQ,CAAK,IAAA,KAAA,CAAA;AAC7C,EAAA,MAAM,UAAa,GAAA,YAAA,CAAa,GAAI,CAAA,YAAY,CAAM,KAAA,MAAA;AACtD,EAAA,MAAM,IAAO,GAAA,UAAA,CAAW,YAAa,CAAA,GAAA,CAAI,MAAM,CAAC,CAAA;AAChD,EAAA,MAAM,EAAE,CAAA,EAAM,GAAA,iBAAA,CAAkB,kBAAkB,CAAA;AAClD,EAAI,IAAA,KAAA;AACJ,EAAA,IAAI,EAAI,EAAA;AACN,IAAA,KAAA,GAAQ,EAAE,iCAAiC,CAAA;AAAA,aAClC,MAAQ,EAAA;AAEjB,IAAM,MAAA,cAAA,GAAiB,sBAAsB,MAAM,CAAA;AACnD,IAAA,KAAA,GAAQ,EAAE,+BAAiC,EAAA;AAAA,MACzC,QAAQ,cAAe,CAAA;AAAA,KACxB,CAAA;AAAA,GACI,MAAA;AACL,IAAA,KAAA,GAAQ,EAAE,4BAA4B,CAAA;AAAA;AAGxC,EAAA,uBAEI,IAAA,CAAA,QAAA,EAAA,EAAA,QAAA,EAAA;AAAA,oBAAA,GAAA,CAAC,iBAAc,KAAc,EAAA,CAAA;AAAA,oBAC5B,GAAA,CAAA,IAAA,EAAA,EAAK,SAAS,EAAA,IAAA,EAAC,OAAS,EAAA,CAAA,EAAG,SAAU,EAAA,QAAA,EACpC,QAAC,kBAAA,GAAA,CAAA,IAAA,EAAA,EAAK,IAAI,EAAA,IAAA,EACR,8BAAC,QACC,EAAA,EAAA,QAAA,kBAAA,GAAA;AAAA,MAAC,QAAA;AAAA,MAAA;AAAA,QACC,EAAA;AAAA,QACA,MAAA;AAAA,QACA,UAAA;AAAA,QACA,IAAA;AAAA,QACA,IAAK,EAAA;AAAA;AAAA,KACP,EACF,GACF,CACF,EAAA;AAAA,GACF,EAAA,CAAA;AAEJ;;;;"}
1
+ {"version":3,"file":"WritePage.esm.js","sources":["../../../src/components/WritePage/WritePage.tsx"],"sourcesContent":["import { useParams, useSearchParams } from 'react-router-dom';\nimport { filterTags } from '@drodil/backstage-plugin-qeta-common';\nimport {\n ContentHeader,\n PostForm,\n qetaTranslationRef,\n} from '@drodil/backstage-plugin-qeta-react';\nimport { useEntityPresentation } from '@backstage/plugin-catalog-react';\nimport { InfoCard } from '@backstage/core-components';\nimport { Grid } from '@material-ui/core';\nimport { useTranslationRef } from '@backstage/core-plugin-api/alpha';\n\nexport const WritePage = () => {\n const { id } = useParams();\n const [searchParams] = useSearchParams();\n const entity = searchParams.get('entity') ?? undefined;\n const entityPage = searchParams.get('entityPage') === 'true';\n const tags = filterTags(searchParams.get('tags'));\n const { t } = useTranslationRef(qetaTranslationRef);\n let title;\n if (id) {\n title = t('writePage.title.existingArticle');\n } else if (entity) {\n // eslint-disable-next-line react-hooks/rules-of-hooks\n const representation = useEntityPresentation(entity);\n title = t('writePage.title.entityArticle', {\n entity: representation.primaryTitle,\n });\n } else {\n title = t('writePage.title.newArticle');\n }\n\n return (\n <>\n <ContentHeader title={title} />\n <Grid container spacing={3} direction=\"column\">\n <Grid item>\n <InfoCard>\n <PostForm\n id={id}\n entity={entity}\n entityPage={entityPage}\n tags={tags}\n type=\"article\"\n />\n </InfoCard>\n </Grid>\n </Grid>\n </>\n );\n};\n"],"names":[],"mappings":";;;;;;;;;AAYO,MAAM,YAAY,MAAM;AAC7B,EAAA,MAAM,EAAE,EAAA,EAAG,GAAI,SAAA,EAAU;AACzB,EAAA,MAAM,CAAC,YAAY,CAAA,GAAI,eAAA,EAAgB;AACvC,EAAA,MAAM,MAAA,GAAS,YAAA,CAAa,GAAA,CAAI,QAAQ,CAAA,IAAK,MAAA;AAC7C,EAAA,MAAM,UAAA,GAAa,YAAA,CAAa,GAAA,CAAI,YAAY,CAAA,KAAM,MAAA;AACtD,EAAA,MAAM,IAAA,GAAO,UAAA,CAAW,YAAA,CAAa,GAAA,CAAI,MAAM,CAAC,CAAA;AAChD,EAAA,MAAM,EAAE,CAAA,EAAE,GAAI,iBAAA,CAAkB,kBAAkB,CAAA;AAClD,EAAA,IAAI,KAAA;AACJ,EAAA,IAAI,EAAA,EAAI;AACN,IAAA,KAAA,GAAQ,EAAE,iCAAiC,CAAA;AAAA,EAC7C,WAAW,MAAA,EAAQ;AAEjB,IAAA,MAAM,cAAA,GAAiB,sBAAsB,MAAM,CAAA;AACnD,IAAA,KAAA,GAAQ,EAAE,+BAAA,EAAiC;AAAA,MACzC,QAAQ,cAAA,CAAe;AAAA,KACxB,CAAA;AAAA,EACH,CAAA,MAAO;AACL,IAAA,KAAA,GAAQ,EAAE,4BAA4B,CAAA;AAAA,EACxC;AAEA,EAAA,uBACE,IAAA,CAAA,QAAA,EAAA,EACE,QAAA,EAAA;AAAA,oBAAA,GAAA,CAAC,iBAAc,KAAA,EAAc,CAAA;AAAA,oBAC7B,GAAA,CAAC,IAAA,EAAA,EAAK,SAAA,EAAS,IAAA,EAAC,OAAA,EAAS,CAAA,EAAG,SAAA,EAAU,QAAA,EACpC,QAAA,kBAAA,GAAA,CAAC,IAAA,EAAA,EAAK,IAAA,EAAI,IAAA,EACR,8BAAC,QAAA,EAAA,EACC,QAAA,kBAAA,GAAA;AAAA,MAAC,QAAA;AAAA,MAAA;AAAA,QACC,EAAA;AAAA,QACA,MAAA;AAAA,QACA,UAAA;AAAA,QACA,IAAA;AAAA,QACA,IAAA,EAAK;AAAA;AAAA,KACP,EACF,GACF,CAAA,EACF;AAAA,GAAA,EACF,CAAA;AAEJ;;;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"useSidebarSettings.esm.js","sources":["../../src/hooks/useSidebarSettings.ts"],"sourcesContent":["import { useLocalStorage } from 'react-use';\n\nexport const useSidebarSettings = () => {\n const [leftCompact, setLeftCompact] = useLocalStorage(\n 'qeta-left-menu-compact',\n false,\n );\n const [rightCompact, setRightCompact] = useLocalStorage(\n 'qeta-right-sidebar-compact',\n false,\n );\n\n const toggleLeft = () => setLeftCompact(!leftCompact);\n const toggleRight = () => setRightCompact(!rightCompact);\n\n return {\n leftCompact: !!leftCompact,\n rightCompact: !!rightCompact,\n toggleLeft,\n toggleRight,\n };\n};\n"],"names":[],"mappings":";;AAEO,MAAM,qBAAqB,MAAM;AACtC,EAAM,MAAA,CAAC,WAAa,EAAA,cAAc,CAAI,GAAA,eAAA;AAAA,IACpC,wBAAA;AAAA,IACA;AAAA,GACF;AACA,EAAM,MAAA,CAAC,YAAc,EAAA,eAAe,CAAI,GAAA,eAAA;AAAA,IACtC,4BAAA;AAAA,IACA;AAAA,GACF;AAEA,EAAA,MAAM,UAAa,GAAA,MAAM,cAAe,CAAA,CAAC,WAAW,CAAA;AACpD,EAAA,MAAM,WAAc,GAAA,MAAM,eAAgB,CAAA,CAAC,YAAY,CAAA;AAEvD,EAAO,OAAA;AAAA,IACL,WAAA,EAAa,CAAC,CAAC,WAAA;AAAA,IACf,YAAA,EAAc,CAAC,CAAC,YAAA;AAAA,IAChB,UAAA;AAAA,IACA;AAAA,GACF;AACF;;;;"}
1
+ {"version":3,"file":"useSidebarSettings.esm.js","sources":["../../src/hooks/useSidebarSettings.ts"],"sourcesContent":["import { useLocalStorage } from 'react-use';\n\nexport const useSidebarSettings = () => {\n const [leftCompact, setLeftCompact] = useLocalStorage(\n 'qeta-left-menu-compact',\n false,\n );\n const [rightCompact, setRightCompact] = useLocalStorage(\n 'qeta-right-sidebar-compact',\n false,\n );\n\n const toggleLeft = () => setLeftCompact(!leftCompact);\n const toggleRight = () => setRightCompact(!rightCompact);\n\n return {\n leftCompact: !!leftCompact,\n rightCompact: !!rightCompact,\n toggleLeft,\n toggleRight,\n };\n};\n"],"names":[],"mappings":";;AAEO,MAAM,qBAAqB,MAAM;AACtC,EAAA,MAAM,CAAC,WAAA,EAAa,cAAc,CAAA,GAAI,eAAA;AAAA,IACpC,wBAAA;AAAA,IACA;AAAA,GACF;AACA,EAAA,MAAM,CAAC,YAAA,EAAc,eAAe,CAAA,GAAI,eAAA;AAAA,IACtC,4BAAA;AAAA,IACA;AAAA,GACF;AAEA,EAAA,MAAM,UAAA,GAAa,MAAM,cAAA,CAAe,CAAC,WAAW,CAAA;AACpD,EAAA,MAAM,WAAA,GAAc,MAAM,eAAA,CAAgB,CAAC,YAAY,CAAA;AAEvD,EAAA,OAAO;AAAA,IACL,WAAA,EAAa,CAAC,CAAC,WAAA;AAAA,IACf,YAAA,EAAc,CAAC,CAAC,YAAA;AAAA,IAChB,UAAA;AAAA,IACA;AAAA,GACF;AACF;;;;"}
@@ -6,7 +6,7 @@ var keywords = [
6
6
  "frontend",
7
7
  "backstage.io"
8
8
  ];
9
- var version = "3.59.2";
9
+ var version = "3.59.6";
10
10
  var main = "src/index.ts";
11
11
  var types = "src/index.ts";
12
12
  var prepublishOnly = "yarn tsc && yarn build";
@@ -15,7 +15,7 @@ var homepage = "https://github.com/drodil/backstage-plugin-qeta";
15
15
  var bugs = {
16
16
  url: "https://github.com/drodil/backstage-plugin-qeta/issues"
17
17
  };
18
- var exports = {
18
+ var exports$1 = {
19
19
  ".": "./src/index.ts",
20
20
  "./alpha": "./src/alpha.tsx",
21
21
  "./package.json": "./package.json"
@@ -83,7 +83,7 @@ var dependencies = {
83
83
  unified: "^11.0.5"
84
84
  };
85
85
  var peerDependencies = {
86
- "@backstage/catalog-client": "^1.13.0",
86
+ "@backstage/catalog-client": "^1.15.0",
87
87
  react: " ^18.0.0 || ^19.0.0",
88
88
  "react-dom": "^18.0.0 || ^19.0.0",
89
89
  "react-router-dom": "6.0.0-beta.0 || ^6.3.0"
@@ -125,7 +125,7 @@ var _package = {
125
125
  license: license,
126
126
  homepage: homepage,
127
127
  bugs: bugs,
128
- exports: exports,
128
+ exports: exports$1,
129
129
  typesVersions: typesVersions,
130
130
  repository: repository,
131
131
  publishConfig: publishConfig,
@@ -140,5 +140,5 @@ var _package = {
140
140
  configSchema: configSchema
141
141
  };
142
142
 
143
- export { backstage, bugs, configSchema, _package as default, dependencies, description, devDependencies, exports, files, homepage, keywords, license, main, name, peerDependencies, prepublishOnly, publishConfig, repository, resolutions, scripts, sideEffects, types, typesVersions, version };
143
+ export { backstage, bugs, configSchema, _package as default, dependencies, description, devDependencies, exports$1 as exports, files, homepage, keywords, license, main, name, peerDependencies, prepublishOnly, publishConfig, repository, resolutions, scripts, sideEffects, types, typesVersions, version };
144
144
  //# sourceMappingURL=package.json.esm.js.map
@@ -1,4 +1,4 @@
1
- import { createPlugin, createApiFactory, fetchApiRef, discoveryApiRef, createRoutableExtension } from '@backstage/core-plugin-api';
1
+ import { createPlugin, createApiFactory, discoveryApiRef, fetchApiRef, createRoutableExtension } from '@backstage/core-plugin-api';
2
2
  import { createCardExtension } from '@backstage/plugin-home-react';
3
3
  import { createSearchResultListItemExtension } from '@backstage/plugin-search-react';
4
4
  import { qetaRouteRef, qetaApiRef } from '@drodil/backstage-plugin-qeta-react';
@@ -1 +1 @@
1
- {"version":3,"file":"plugin.esm.js","sources":["../src/plugin.ts"],"sourcesContent":["import {\n createApiFactory,\n createPlugin,\n createRoutableExtension,\n discoveryApiRef,\n fetchApiRef,\n} from '@backstage/core-plugin-api';\nimport { createCardExtension } from '@backstage/plugin-home-react';\nimport { createSearchResultListItemExtension } from '@backstage/plugin-search-react';\nimport { qetaApiRef, qetaRouteRef } from '@drodil/backstage-plugin-qeta-react';\nimport { PostType, QetaClient } from '@drodil/backstage-plugin-qeta-common';\nimport type { QetaSearchResultListItemProps } from './components/QetaSearchResultListItem';\n\nexport const qetaPlugin = createPlugin({\n id: 'qeta',\n routes: {\n root: qetaRouteRef,\n },\n apis: [\n createApiFactory({\n api: qetaApiRef,\n deps: { fetchApi: fetchApiRef, discoveryApi: discoveryApiRef },\n factory: ({ fetchApi, discoveryApi }) =>\n new QetaClient({ fetchApi, discoveryApi }),\n }),\n ],\n});\n\nexport const QetaPage = qetaPlugin.provide(\n createRoutableExtension({\n name: 'QetaPage',\n component: () => import('./components/QetaPage').then(m => m.QetaPage),\n mountPoint: qetaRouteRef,\n }),\n);\n\nexport const QetaReviewPage = qetaPlugin.provide(\n createRoutableExtension({\n name: 'QetaReviewPage',\n component: () => import('./components/ReviewPage').then(m => m.ReviewPage),\n mountPoint: qetaRouteRef,\n }),\n);\n\nexport const PostsTableCard = qetaPlugin.provide(\n createCardExtension<{\n postType?: PostType;\n rowsPerPage?: number;\n quickFilter?: string;\n }>({\n name: 'PostsTableCard',\n title: 'Q&A',\n description: 'Shows Q&A posts',\n components: () => import('./components/PostsTableCard'),\n layout: {\n height: { minRows: 6 },\n width: { minColumns: 6 },\n },\n settings: {\n schema: {\n title: 'Q&A',\n type: 'object',\n properties: {\n postType: {\n title: 'Post type',\n type: 'string',\n enum: ['question', 'article', 'link'],\n default: undefined,\n },\n rowsPerPage: {\n title: 'Rows per page',\n type: 'number',\n enum: [5, 10, 20, 30, 40, 50],\n default: 10,\n },\n quickFilter: {\n title: 'Default filter',\n type: 'string',\n enum: ['latest', 'favorites', 'most_viewed'],\n default: 'latest',\n },\n },\n },\n },\n }),\n);\n\n/**\n * @deprecated Use PostsTableCard instead\n */\nexport const QuestionsTableCard = PostsTableCard;\n\n/**\n * React extension used to render results on Search page or modal\n *\n * @public\n */\nexport const QetaSearchResultListItem: (\n props: QetaSearchResultListItemProps,\n) => JSX.Element | null = qetaPlugin.provide(\n createSearchResultListItemExtension({\n name: 'QetaSearchResultListItem',\n component: () =>\n import('./components/QetaSearchResultListItem').then(\n m => m.QetaSearchResultListItem,\n ),\n predicate: result => result.type === 'qeta',\n }),\n);\n"],"names":[],"mappings":";;;;;;AAaO,MAAM,aAAa,YAAa,CAAA;AAAA,EACrC,EAAI,EAAA,MAAA;AAAA,EACJ,MAAQ,EAAA;AAAA,IACN,IAAM,EAAA;AAAA,GACR;AAAA,EACA,IAAM,EAAA;AAAA,IACJ,gBAAiB,CAAA;AAAA,MACf,GAAK,EAAA,UAAA;AAAA,MACL,IAAM,EAAA,EAAE,QAAU,EAAA,WAAA,EAAa,cAAc,eAAgB,EAAA;AAAA,MAC7D,OAAA,EAAS,CAAC,EAAE,QAAU,EAAA,YAAA,EACpB,KAAA,IAAI,UAAW,CAAA,EAAE,QAAU,EAAA,YAAA,EAAc;AAAA,KAC5C;AAAA;AAEL,CAAC;AAEM,MAAM,WAAW,UAAW,CAAA,OAAA;AAAA,EACjC,uBAAwB,CAAA;AAAA,IACtB,IAAM,EAAA,UAAA;AAAA,IACN,SAAA,EAAW,MAAM,OAAO,oCAAuB,EAAE,IAAK,CAAA,CAAA,CAAA,KAAK,EAAE,QAAQ,CAAA;AAAA,IACrE,UAAY,EAAA;AAAA,GACb;AACH;AAEO,MAAM,iBAAiB,UAAW,CAAA,OAAA;AAAA,EACvC,uBAAwB,CAAA;AAAA,IACtB,IAAM,EAAA,gBAAA;AAAA,IACN,SAAA,EAAW,MAAM,OAAO,sCAAyB,EAAE,IAAK,CAAA,CAAA,CAAA,KAAK,EAAE,UAAU,CAAA;AAAA,IACzE,UAAY,EAAA;AAAA,GACb;AACH;AAEO,MAAM,iBAAiB,UAAW,CAAA,OAAA;AAAA,EACvC,mBAIG,CAAA;AAAA,IACD,IAAM,EAAA,gBAAA;AAAA,IACN,KAAO,EAAA,KAAA;AAAA,IACP,WAAa,EAAA,iBAAA;AAAA,IACb,UAAA,EAAY,MAAM,OAAO,0CAA6B,CAAA;AAAA,IACtD,MAAQ,EAAA;AAAA,MACN,MAAA,EAAQ,EAAE,OAAA,EAAS,CAAE,EAAA;AAAA,MACrB,KAAA,EAAO,EAAE,UAAA,EAAY,CAAE;AAAA,KACzB;AAAA,IACA,QAAU,EAAA;AAAA,MACR,MAAQ,EAAA;AAAA,QACN,KAAO,EAAA,KAAA;AAAA,QACP,IAAM,EAAA,QAAA;AAAA,QACN,UAAY,EAAA;AAAA,UACV,QAAU,EAAA;AAAA,YACR,KAAO,EAAA,WAAA;AAAA,YACP,IAAM,EAAA,QAAA;AAAA,YACN,IAAM,EAAA,CAAC,UAAY,EAAA,SAAA,EAAW,MAAM,CAAA;AAAA,YACpC,OAAS,EAAA,KAAA;AAAA,WACX;AAAA,UACA,WAAa,EAAA;AAAA,YACX,KAAO,EAAA,eAAA;AAAA,YACP,IAAM,EAAA,QAAA;AAAA,YACN,MAAM,CAAC,CAAA,EAAG,IAAI,EAAI,EAAA,EAAA,EAAI,IAAI,EAAE,CAAA;AAAA,YAC5B,OAAS,EAAA;AAAA,WACX;AAAA,UACA,WAAa,EAAA;AAAA,YACX,KAAO,EAAA,gBAAA;AAAA,YACP,IAAM,EAAA,QAAA;AAAA,YACN,IAAM,EAAA,CAAC,QAAU,EAAA,WAAA,EAAa,aAAa,CAAA;AAAA,YAC3C,OAAS,EAAA;AAAA;AACX;AACF;AACF;AACF,GACD;AACH;AAKO,MAAM,kBAAqB,GAAA;AAO3B,MAAM,2BAEa,UAAW,CAAA,OAAA;AAAA,EACnC,mCAAoC,CAAA;AAAA,IAClC,IAAM,EAAA,0BAAA;AAAA,IACN,SAAW,EAAA,MACT,OAAO,oDAAuC,CAAE,CAAA,IAAA;AAAA,MAC9C,OAAK,CAAE,CAAA;AAAA,KACT;AAAA,IACF,SAAA,EAAW,CAAU,MAAA,KAAA,MAAA,CAAO,IAAS,KAAA;AAAA,GACtC;AACH;;;;"}
1
+ {"version":3,"file":"plugin.esm.js","sources":["../src/plugin.ts"],"sourcesContent":["import {\n createApiFactory,\n createPlugin,\n createRoutableExtension,\n discoveryApiRef,\n fetchApiRef,\n} from '@backstage/core-plugin-api';\nimport { createCardExtension } from '@backstage/plugin-home-react';\nimport { createSearchResultListItemExtension } from '@backstage/plugin-search-react';\nimport { qetaApiRef, qetaRouteRef } from '@drodil/backstage-plugin-qeta-react';\nimport { PostType, QetaClient } from '@drodil/backstage-plugin-qeta-common';\nimport type { QetaSearchResultListItemProps } from './components/QetaSearchResultListItem';\n\nexport const qetaPlugin = createPlugin({\n id: 'qeta',\n routes: {\n root: qetaRouteRef,\n },\n apis: [\n createApiFactory({\n api: qetaApiRef,\n deps: { fetchApi: fetchApiRef, discoveryApi: discoveryApiRef },\n factory: ({ fetchApi, discoveryApi }) =>\n new QetaClient({ fetchApi, discoveryApi }),\n }),\n ],\n});\n\nexport const QetaPage = qetaPlugin.provide(\n createRoutableExtension({\n name: 'QetaPage',\n component: () => import('./components/QetaPage').then(m => m.QetaPage),\n mountPoint: qetaRouteRef,\n }),\n);\n\nexport const QetaReviewPage = qetaPlugin.provide(\n createRoutableExtension({\n name: 'QetaReviewPage',\n component: () => import('./components/ReviewPage').then(m => m.ReviewPage),\n mountPoint: qetaRouteRef,\n }),\n);\n\nexport const PostsTableCard = qetaPlugin.provide(\n createCardExtension<{\n postType?: PostType;\n rowsPerPage?: number;\n quickFilter?: string;\n }>({\n name: 'PostsTableCard',\n title: 'Q&A',\n description: 'Shows Q&A posts',\n components: () => import('./components/PostsTableCard'),\n layout: {\n height: { minRows: 6 },\n width: { minColumns: 6 },\n },\n settings: {\n schema: {\n title: 'Q&A',\n type: 'object',\n properties: {\n postType: {\n title: 'Post type',\n type: 'string',\n enum: ['question', 'article', 'link'],\n default: undefined,\n },\n rowsPerPage: {\n title: 'Rows per page',\n type: 'number',\n enum: [5, 10, 20, 30, 40, 50],\n default: 10,\n },\n quickFilter: {\n title: 'Default filter',\n type: 'string',\n enum: ['latest', 'favorites', 'most_viewed'],\n default: 'latest',\n },\n },\n },\n },\n }),\n);\n\n/**\n * @deprecated Use PostsTableCard instead\n */\nexport const QuestionsTableCard = PostsTableCard;\n\n/**\n * React extension used to render results on Search page or modal\n *\n * @public\n */\nexport const QetaSearchResultListItem: (\n props: QetaSearchResultListItemProps,\n) => JSX.Element | null = qetaPlugin.provide(\n createSearchResultListItemExtension({\n name: 'QetaSearchResultListItem',\n component: () =>\n import('./components/QetaSearchResultListItem').then(\n m => m.QetaSearchResultListItem,\n ),\n predicate: result => result.type === 'qeta',\n }),\n);\n"],"names":[],"mappings":";;;;;;AAaO,MAAM,aAAa,YAAA,CAAa;AAAA,EACrC,EAAA,EAAI,MAAA;AAAA,EACJ,MAAA,EAAQ;AAAA,IACN,IAAA,EAAM;AAAA,GACR;AAAA,EACA,IAAA,EAAM;AAAA,IACJ,gBAAA,CAAiB;AAAA,MACf,GAAA,EAAK,UAAA;AAAA,MACL,IAAA,EAAM,EAAE,QAAA,EAAU,WAAA,EAAa,cAAc,eAAA,EAAgB;AAAA,MAC7D,OAAA,EAAS,CAAC,EAAE,QAAA,EAAU,YAAA,EAAa,KACjC,IAAI,UAAA,CAAW,EAAE,QAAA,EAAU,YAAA,EAAc;AAAA,KAC5C;AAAA;AAEL,CAAC;AAEM,MAAM,WAAW,UAAA,CAAW,OAAA;AAAA,EACjC,uBAAA,CAAwB;AAAA,IACtB,IAAA,EAAM,UAAA;AAAA,IACN,SAAA,EAAW,MAAM,OAAO,oCAAuB,EAAE,IAAA,CAAK,CAAA,CAAA,KAAK,EAAE,QAAQ,CAAA;AAAA,IACrE,UAAA,EAAY;AAAA,GACb;AACH;AAEO,MAAM,iBAAiB,UAAA,CAAW,OAAA;AAAA,EACvC,uBAAA,CAAwB;AAAA,IACtB,IAAA,EAAM,gBAAA;AAAA,IACN,SAAA,EAAW,MAAM,OAAO,sCAAyB,EAAE,IAAA,CAAK,CAAA,CAAA,KAAK,EAAE,UAAU,CAAA;AAAA,IACzE,UAAA,EAAY;AAAA,GACb;AACH;AAEO,MAAM,iBAAiB,UAAA,CAAW,OAAA;AAAA,EACvC,mBAAA,CAIG;AAAA,IACD,IAAA,EAAM,gBAAA;AAAA,IACN,KAAA,EAAO,KAAA;AAAA,IACP,WAAA,EAAa,iBAAA;AAAA,IACb,UAAA,EAAY,MAAM,OAAO,0CAA6B,CAAA;AAAA,IACtD,MAAA,EAAQ;AAAA,MACN,MAAA,EAAQ,EAAE,OAAA,EAAS,CAAA,EAAE;AAAA,MACrB,KAAA,EAAO,EAAE,UAAA,EAAY,CAAA;AAAE,KACzB;AAAA,IACA,QAAA,EAAU;AAAA,MACR,MAAA,EAAQ;AAAA,QACN,KAAA,EAAO,KAAA;AAAA,QACP,IAAA,EAAM,QAAA;AAAA,QACN,UAAA,EAAY;AAAA,UACV,QAAA,EAAU;AAAA,YACR,KAAA,EAAO,WAAA;AAAA,YACP,IAAA,EAAM,QAAA;AAAA,YACN,IAAA,EAAM,CAAC,UAAA,EAAY,SAAA,EAAW,MAAM,CAAA;AAAA,YACpC,OAAA,EAAS;AAAA,WACX;AAAA,UACA,WAAA,EAAa;AAAA,YACX,KAAA,EAAO,eAAA;AAAA,YACP,IAAA,EAAM,QAAA;AAAA,YACN,MAAM,CAAC,CAAA,EAAG,IAAI,EAAA,EAAI,EAAA,EAAI,IAAI,EAAE,CAAA;AAAA,YAC5B,OAAA,EAAS;AAAA,WACX;AAAA,UACA,WAAA,EAAa;AAAA,YACX,KAAA,EAAO,gBAAA;AAAA,YACP,IAAA,EAAM,QAAA;AAAA,YACN,IAAA,EAAM,CAAC,QAAA,EAAU,WAAA,EAAa,aAAa,CAAA;AAAA,YAC3C,OAAA,EAAS;AAAA;AACX;AACF;AACF;AACF,GACD;AACH;AAKO,MAAM,kBAAA,GAAqB;AAO3B,MAAM,2BAEa,UAAA,CAAW,OAAA;AAAA,EACnC,mCAAA,CAAoC;AAAA,IAClC,IAAA,EAAM,0BAAA;AAAA,IACN,SAAA,EAAW,MACT,OAAO,oDAAuC,CAAA,CAAE,IAAA;AAAA,MAC9C,OAAK,CAAA,CAAE;AAAA,KACT;AAAA,IACF,SAAA,EAAW,CAAA,MAAA,KAAU,MAAA,CAAO,IAAA,KAAS;AAAA,GACtC;AACH;;;;"}
package/package.json CHANGED
@@ -7,7 +7,7 @@
7
7
  "frontend",
8
8
  "backstage.io"
9
9
  ],
10
- "version": "3.59.2",
10
+ "version": "3.59.6",
11
11
  "main": "./dist/index.esm.js",
12
12
  "types": "./dist/index.d.ts",
13
13
  "prepublishOnly": "yarn tsc && yarn build",
@@ -73,19 +73,19 @@
73
73
  "tsc": "tsc"
74
74
  },
75
75
  "dependencies": {
76
- "@backstage/catalog-model": "^1.7.6",
77
- "@backstage/core-compat-api": "^0.5.8",
78
- "@backstage/core-components": "^0.18.7",
79
- "@backstage/core-plugin-api": "^1.12.3",
80
- "@backstage/frontend-plugin-api": "^0.14.1",
81
- "@backstage/plugin-catalog-react": "^2.0.0",
82
- "@backstage/plugin-home-react": "^0.1.35",
83
- "@backstage/plugin-search-common": "^1.2.22",
84
- "@backstage/plugin-search-react": "^1.10.4",
85
- "@backstage/plugin-signals-react": "^0.0.19",
86
- "@backstage/plugin-techdocs-react": "^1.3.8",
87
- "@drodil/backstage-plugin-qeta-common": "^3.59.2",
88
- "@drodil/backstage-plugin-qeta-react": "^3.59.2",
76
+ "@backstage/catalog-model": "^1.8.0",
77
+ "@backstage/core-compat-api": "^0.5.10",
78
+ "@backstage/core-components": "^0.18.9",
79
+ "@backstage/core-plugin-api": "^1.12.5",
80
+ "@backstage/frontend-plugin-api": "^0.16.0",
81
+ "@backstage/plugin-catalog-react": "^2.1.2",
82
+ "@backstage/plugin-home-react": "^0.1.37",
83
+ "@backstage/plugin-search-common": "^1.2.23",
84
+ "@backstage/plugin-search-react": "^1.11.1",
85
+ "@backstage/plugin-signals-react": "^0.0.21",
86
+ "@backstage/plugin-techdocs-react": "^1.3.10",
87
+ "@drodil/backstage-plugin-qeta-common": "^3.59.6",
88
+ "@drodil/backstage-plugin-qeta-react": "^3.59.6",
89
89
  "@material-ui/core": "^4.12.2",
90
90
  "@material-ui/icons": "^4.11.3",
91
91
  "@material-ui/lab": "4.0.0-alpha.61",
@@ -96,7 +96,7 @@
96
96
  "unified": "^11.0.5"
97
97
  },
98
98
  "peerDependencies": {
99
- "@backstage/catalog-client": "^1.13.0",
99
+ "@backstage/catalog-client": "^1.15.0",
100
100
  "react": " ^18.0.0 || ^19.0.0",
101
101
  "react-dom": "^18.0.0 || ^19.0.0",
102
102
  "react-router-dom": "6.0.0-beta.0 || ^6.3.0"
@@ -105,17 +105,17 @@
105
105
  "react-markdown": "8.0.7"
106
106
  },
107
107
  "devDependencies": {
108
- "@backstage/cli": "^0.35.4",
109
- "@backstage/frontend-defaults": "^0.4.0",
110
- "@backstage/plugin-catalog": "^1.33.1",
111
- "@backstage/plugin-home": "^0.9.2",
112
- "@backstage/plugin-notifications": "^0.5.14",
113
- "@backstage/plugin-search": "^1.6.1",
114
- "@backstage/plugin-search-react": "^1.10.4",
115
- "@backstage/plugin-signals": "^0.0.28",
116
- "@backstage/plugin-techdocs": "^1.17.0",
117
- "@backstage/plugin-user-settings": "^0.9.0",
118
- "@backstage/ui": "^0.12.0",
108
+ "@backstage/cli": "^0.36.1",
109
+ "@backstage/frontend-defaults": "^0.5.1",
110
+ "@backstage/plugin-catalog": "^2.0.2",
111
+ "@backstage/plugin-home": "^0.9.4",
112
+ "@backstage/plugin-notifications": "^0.5.16",
113
+ "@backstage/plugin-search": "^1.7.1",
114
+ "@backstage/plugin-search-react": "^1.11.1",
115
+ "@backstage/plugin-signals": "^0.0.30",
116
+ "@backstage/plugin-techdocs": "^1.17.3",
117
+ "@backstage/plugin-user-settings": "^0.9.2",
118
+ "@backstage/ui": "^0.14.0",
119
119
  "@testing-library/jest-dom": "^6.1.3",
120
120
  "@types/lodash": "^4.14.199",
121
121
  "@types/luxon": "^3",