docs: fixes to github solutions componen (#13676)

* docs: fixes to github solutions componen

* remove octokit dependency
This commit is contained in:
Shahed Nasser
2025-10-03 14:09:43 +03:00
committed by GitHub
parent 6ea97443de
commit a4757d462d
4 changed files with 30 additions and 99 deletions

View File

@@ -62,7 +62,6 @@
"@medusajs/icons": "2.10.3",
"@medusajs/ui": "4.0.23",
"@next/third-parties": "15.3.5",
"@octokit/request": "^8.1.1",
"@react-hook/resize-observer": "^1.2.6",
"@segment/analytics-next": "^1.75.0",
"@uidotdev/usehooks": "^2.4.1",

View File

@@ -1,8 +1,7 @@
"use client"
import React, { useEffect, useState } from "react"
import { request } from "@octokit/request"
import { Link } from "@/components"
import { Link, MDXComponents } from "@/components"
export type SolutionsProps = {
feedback: boolean
@@ -16,6 +15,11 @@ export type GitHubSearchItem = {
[key: string]: unknown
}
const Ul = MDXComponents["ul"] as React.FC<
React.HTMLAttributes<HTMLUListElement>
>
const Li = MDXComponents["li"] as React.FC<React.HTMLAttributes<HTMLLIElement>>
export const Solutions = ({ feedback, message }: SolutionsProps) => {
const [possibleSolutionsQuery, setPossibleSolutionsQuery] =
useState<string>("")
@@ -28,11 +32,14 @@ export const Solutions = ({ feedback, message }: SolutionsProps) => {
}
async function searchGitHub(query: string) {
return request(`GET /search/issues`, {
q: query,
sort: "updated",
per_page: 3,
})
return fetch(
`https://api.github.com/search/issues?q=${encodeURIComponent(query)}&sort=updated&per_page=3&advanced_search=true`,
{
headers: {
Accept: "application/vnd.github.v3+json",
},
}
).then(async (res) => res.json() as Promise<{ items: GitHubSearchItem[] }>)
}
useEffect(() => {
@@ -43,13 +50,13 @@ export const Solutions = ({ feedback, message }: SolutionsProps) => {
)
searchGitHub(query)
.then(async (result) => {
if (!result.data.items.length && message) {
if (!result.items.length && message) {
query = constructQuery(document.title)
result = await searchGitHub(query)
}
setPossibleSolutionsQuery(query)
setPossibleSolutions(result.data.items)
setPossibleSolutions(result.items)
})
.catch((err) => console.error(err))
} else {
@@ -61,29 +68,35 @@ export const Solutions = ({ feedback, message }: SolutionsProps) => {
return (
<>
{possibleSolutions.length > 0 && (
<div className="text-compact-large-plus font-normal">
<div className="txt-medium">
<span className="my-docs_1 mx-0 inline-block">
If you faced a problem, here are some possible solutions from
GitHub:
</span>
<ul>
<Ul>
{possibleSolutions.map((solution) => (
<li key={solution.url} className="mb-docs_0.5 last:mb-0">
<Link href={solution.html_url} target="_blank" rel="noreferrer">
<Li key={solution.url}>
<Link
href={solution.html_url}
target="_blank"
rel="noreferrer"
variant="content"
>
{solution.title}
</Link>
</li>
</Li>
))}
</ul>
</Ul>
<span>
Explore more issues in{" "}
<a
<Link
href={`https://github.com/medusajs/medusa/issues?q=${possibleSolutionsQuery}`}
target="_blank"
rel="noreferrer"
variant="content"
>
the GitHub repository
</a>
</Link>
</span>
</div>
)}

View File

@@ -121,7 +121,6 @@ export const MDXComponents: MDXComponentsType = {
return <ZoomImg {...rest} />
},
a: (props) => <Link {...props} variant="content" />,
// a: Link,
strong: ({ className, ...props }: React.HTMLAttributes<HTMLElement>) => {
return <strong className={clsx("txt-medium-plus", className)} {...props} />
},

View File

@@ -1597,55 +1597,6 @@ __metadata:
languageName: node
linkType: hard
"@octokit/endpoint@npm:^9.0.0":
version: 9.0.4
resolution: "@octokit/endpoint@npm:9.0.4"
dependencies:
"@octokit/types": ^12.0.0
universal-user-agent: ^6.0.0
checksum: f1c857c5d85afa9d7e8857f7f97dbec28d3b6ab1dc21fe35172f1bc9e5512c8a3a26edabf6b2d83bb60d700f7ad290c96be960496aa83606095630edfad06db4
languageName: node
linkType: hard
"@octokit/openapi-types@npm:^20.0.0":
version: 20.0.0
resolution: "@octokit/openapi-types@npm:20.0.0"
checksum: 5176dcc3b9d182ede3d446750cfa5cf31139624785a73fcf3511e3102a802b4d7cc45e999c27ed91d73fe8b7d718c8c406facb48688926921a71fe603b7db95d
languageName: node
linkType: hard
"@octokit/request-error@npm:^5.0.0":
version: 5.0.1
resolution: "@octokit/request-error@npm:5.0.1"
dependencies:
"@octokit/types": ^12.0.0
deprecation: ^2.0.0
once: ^1.4.0
checksum: e72a4627120de345b54876a1f007664095e5be9d624fce2e14fccf7668cd8f5e4929d444d8fc085d48e1fb5cd548538453974aab129a669101110d6679dce6c6
languageName: node
linkType: hard
"@octokit/request@npm:^8.1.1":
version: 8.2.0
resolution: "@octokit/request@npm:8.2.0"
dependencies:
"@octokit/endpoint": ^9.0.0
"@octokit/request-error": ^5.0.0
"@octokit/types": ^12.0.0
universal-user-agent: ^6.0.0
checksum: 0789edd3b600c5b7ca74089e2842b7bb679a0ad1ec56e5dda54f052d2dd266ac8e6e2eb3c34ba57962066f0770444bf1e99805fd2d762a47776f567beafcf038
languageName: node
linkType: hard
"@octokit/types@npm:^12.0.0":
version: 12.6.0
resolution: "@octokit/types@npm:12.6.0"
dependencies:
"@octokit/openapi-types": ^20.0.0
checksum: 0bea58bda46c93287f5a80a0e52bc60e7dc7136b8a38c3569d63d073fb9df4a56acdb9d9bdba9978f37c374a4a6e3e52886ef5b08cace048adb0012cacef942c
languageName: node
linkType: hard
"@pkgjs/parseargs@npm:^0.11.0":
version: 0.11.0
resolution: "@pkgjs/parseargs@npm:0.11.0"
@@ -7056,13 +7007,6 @@ __metadata:
languageName: node
linkType: hard
"deprecation@npm:^2.0.0":
version: 2.3.1
resolution: "deprecation@npm:2.3.1"
checksum: 23d688ba66b74d09b908c40a76179418acbeeb0bfdf218c8075c58ad8d0c315130cb91aa3dffb623aa3a411a3569ce56c6460de6c8d69071c17fe6dd2442f032
languageName: node
linkType: hard
"dequal@npm:^2.0.0":
version: 2.0.3
resolution: "dequal@npm:2.0.3"
@@ -7163,7 +7107,6 @@ __metadata:
"@medusajs/icons": 2.10.3
"@medusajs/ui": 4.0.23
"@next/third-parties": 15.3.5
"@octokit/request": ^8.1.1
"@react-hook/resize-observer": ^1.2.6
"@segment/analytics-next": ^1.75.0
"@types/react": "npm:types-react@rc"
@@ -12018,15 +11961,6 @@ __metadata:
languageName: node
linkType: hard
"once@npm:^1.4.0":
version: 1.4.0
resolution: "once@npm:1.4.0"
dependencies:
wrappy: 1
checksum: 5d48aca287dfefabd756621c5dfce5c91a549a93e9fdb7b8246bc4c4790aa2ec17b34a260530474635147aeb631a2dcc8b32c613df0675f96041cbb8244517d0
languageName: node
linkType: hard
"onetime@npm:^5.1.2":
version: 5.1.2
resolution: "onetime@npm:5.1.2"
@@ -15378,13 +15312,6 @@ turbo@latest:
languageName: node
linkType: hard
"universal-user-agent@npm:^6.0.0":
version: 6.0.1
resolution: "universal-user-agent@npm:6.0.1"
checksum: 5c9c46ffe19a975e11e6443640ed4c9e0ce48fcc7203325757a8414ac49940ebb0f4667f2b1fa561489d1eb22cb2d05a0f7c82ec20c5cba42e58e188fb19b187
languageName: node
linkType: hard
"universalify@npm:^0.2.0":
version: 0.2.0
resolution: "universalify@npm:0.2.0"
@@ -15903,13 +15830,6 @@ turbo@latest:
languageName: node
linkType: hard
"wrappy@npm:1":
version: 1.0.2
resolution: "wrappy@npm:1.0.2"
checksum: 56fece1a4018c6a6c8e28fbc88c87e0fbf4ea8fd64fc6c63b18f4acc4bd13e0ad2515189786dd2c30d3eec9663d70f4ecf699330002f8ccb547e4a18231fc9f0
languageName: node
linkType: hard
"ws@npm:^7.3.1":
version: 7.5.9
resolution: "ws@npm:7.5.9"