Skip to content

Commit

Permalink
🏷️ API呼び出し箇所の型定義更新に伴い、エラー判定箇所を修正
Browse files Browse the repository at this point in the history
  • Loading branch information
ZEKE320 committed Apr 7, 2024
1 parent 3e1565a commit b61fddd
Show file tree
Hide file tree
Showing 4 changed files with 21 additions and 15 deletions.
6 changes: 3 additions & 3 deletions astro/src/components/Client/bsky/buttons/PostButton.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -20,7 +20,7 @@ import resolveHandle, {
} from "@/utils/atproto_api/resolveHandle"

// backend api
import createPage from "@/lib/pagedbAPI/createPage"
import createPage, { pageCreationOutput } from "@/lib/pagedbAPI/createPage"
import browserImageCompression from "@/utils/browserImageCompression"
import { getOgpBlob, getOgpMeta } from "@/lib/getOgp"

Expand Down Expand Up @@ -303,7 +303,7 @@ export const Component = ({
accessJwt: session.accessJwt,
uri: createRecordResult.uri,
})
if (typeof createPageResult?.error !== "undefined") {
if ("error" in createPageResult && typeof createPageResult.error != "undefined") {
const e: Error = new Error(createPageResult.message)
e.name = createPageResult.error
throw e
Expand All @@ -312,7 +312,7 @@ export const Component = ({
msg: "Twitter用リンクを生成しました!",
isError: false,
})
const [id, rkey] = createPageResult.uri.split("/")
const [id, rkey] = (createPageResult as pageCreationOutput).uri.split("/")
const ogpUrl = new URL(`${pagesPrefix}/${id}@${rkey}/`, siteurl)
// 本文に生成URLを付与
callbackPostOptions.postText += `${
Expand Down
5 changes: 3 additions & 2 deletions astro/src/components/Client/pagedb/PageDeleteButton.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,7 @@ import deletePage from "@/lib/pagedbAPI/deletePage"
import ProcButton from "../common/ProcButton"
import { type Session_info } from "../common/contexts"
import { type msgInfo } from "../common/types"
import etype from "@/lib/pagedbAPI/models/error.json"

const Component = ({
id,
Expand All @@ -28,15 +29,15 @@ const Component = ({
did: session.did,
accessJwt: session.accessJwt
})
if (typeof resDeletePage?.error === "undefined" &&
if (!("error" in resDeletePage) &&
resDeletePage.result === "ok") {
setMsgInfo({
isError: false,
msg: "ページを削除しました!"
})
window.location.reload()
} else {
let e: Error = new Error(resDeletePage.message)
const e: Error = new Error((resDeletePage as typeof etype).message)
e.name = "pagedelete.tsx"
throw e
}
Expand Down
15 changes: 9 additions & 6 deletions astro/src/components/Client/pagedb/PageViewForm.tsx
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
import { useEffect, useContext, useState, ReactNode, Dispatch, SetStateAction } from "react"
import { pagesPrefix } from "@/env/envs"
import getIds from "@/lib/pagedbAPI/getIds"
import getIds, { idsFetchOutput } from "@/lib/pagedbAPI/getIds"
import { Session_context } from "../common/contexts"
import { load_circle, link } from "../common/tailwindVariants"
import ProfileCard from "./ProfileCard"
Expand Down Expand Up @@ -31,23 +31,26 @@ const Component = ({

const pageIds = async () => {
try {
const ids = await getIds({
const getIdsResult = await getIds({
handle: session.handle!
})
if (typeof ids?.error !== "undefined") {
let e: Error = new Error(ids.message)
e.name = ids.error
if ("error" in getIdsResult && typeof getIdsResult?.error !== "undefined") {
const e: Error = new Error(getIdsResult.message)
e.name = getIdsResult.error
throw e
}
setMsgInfo({
isError: false,
msg: "投稿一覧を読み込みました!"
})

const ids = getIdsResult as idsFetchOutput

setList(
<div className="mx-auto">
<div>OGP生成したページ一覧</div>
<div className="grid sm:grid-cols-3 grid-cols-1">
{ids?.ids.map((value) => {
{ids.ids.map((value) => {
return (
<div className=" bg-white rounded-lg px-2 py-1 m-1 border-2">
<a className={link()} target="_blank"
Expand Down
10 changes: 6 additions & 4 deletions astro/src/pages/posts/[slug].astro
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,7 @@
export const prerender = false
import Pagelayout from "@/layouts/Postlayout.astro"
import getPage from "@/lib/pagedbAPI/getPage"
import type { pageFetchOutput } from "@/lib/pagedbAPI/getPage"
import { servicename } from "@/env/vars"
import { baseurl } from "@/env/envs"
Expand All @@ -13,22 +14,23 @@ if (typeof slug === "undefined") {
})
}
const [author, _, rkey] = slug.split(/(_|@)/)
const getpage_res = await getPage({ id: slug })
const getPageResult = await getPage({ id: slug })
if (typeof getpage_res?.error !== "undefined" && getpage_res.error !== "") {
if ("error" in getPageResult && typeof getPageResult?.error !== "undefined" && getPageResult.error !== "") {
return new Response(null, {
status: 404,
statusText: "Not found",
})
}
const title = `${author} Post - ${servicename}`
const imgs = getpage_res.imgs
const getPageResponse = getPageResult as pageFetchOutput
const imgs = getPageResponse.imgs
const robots = ["noindex", "nofollow", "noarchive", "noimageindex"]
import Loadingcircle from "@/components/loadingcircle.astro"
---

<Pagelayout
cardPath={getpage_res.ogp}
cardPath={getPageResponse.ogp}
pageTitle={title}
robots={robots}
hideLoader={true}
Expand Down

0 comments on commit b61fddd

Please sign in to comment.