From c7763ce11189fddd1b686b69d3e2fe46ea0e7083 Mon Sep 17 00:00:00 2001 From: Takuya Sakoda Date: Sat, 31 Aug 2024 16:09:22 +0900 Subject: [PATCH 1/3] =?UTF-8?q?feat(design-system):=20=E2=9C=A8=20impl=20L?= =?UTF-8?q?ist=20component?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/design-system/ui/List/List.css.ts | 17 +++++++++++ src/design-system/ui/List/List.stories.tsx | 28 +++++++++++++++++++ src/design-system/ui/List/List.test.tsx | 7 +++++ src/design-system/ui/List/List.tsx | 9 ++++++ src/design-system/ui/List/ListItem.tsx | 9 ++++++ .../ui/List/__snapshots__/List.test.tsx.snap | 27 ++++++++++++++++++ src/design-system/ui/List/index.ts | 11 ++++++++ 7 files changed, 108 insertions(+) create mode 100644 src/design-system/ui/List/List.css.ts create mode 100644 src/design-system/ui/List/List.stories.tsx create mode 100644 src/design-system/ui/List/List.test.tsx create mode 100644 src/design-system/ui/List/List.tsx create mode 100644 src/design-system/ui/List/ListItem.tsx create mode 100644 src/design-system/ui/List/__snapshots__/List.test.tsx.snap create mode 100644 src/design-system/ui/List/index.ts diff --git a/src/design-system/ui/List/List.css.ts b/src/design-system/ui/List/List.css.ts new file mode 100644 index 0000000..1c14518 --- /dev/null +++ b/src/design-system/ui/List/List.css.ts @@ -0,0 +1,17 @@ +import { style } from "@vanilla-extract/css"; + +import { theme } from "@/design-system/theme.css"; + +export const listStyles = { + root: style({ + listStyleType: "disc", + marginLeft: theme.space[300], + marginBlock: theme.space[100], + lineHeight: 1.8, + }), + item: style({ + "::marker": { + color: theme.color.text.secondary, + }, + }), +}; diff --git a/src/design-system/ui/List/List.stories.tsx b/src/design-system/ui/List/List.stories.tsx new file mode 100644 index 0000000..16e8cf8 --- /dev/null +++ b/src/design-system/ui/List/List.stories.tsx @@ -0,0 +1,28 @@ +import type { Meta, StoryObj } from "@storybook/react"; + +import { List } from "."; + +const meta = { + component: List, + parameters: { + layout: "fullscreen", + testLevel: "snapshot", + }, + tags: ["autodocs"], +} satisfies Meta; + +export default meta; + +type Story = StoryObj; +export const Sample: Story = { + args: { + children:
children
, + }, + render: (args) => ( + + List.Item + List.Item + List.Item + + ), +}; diff --git a/src/design-system/ui/List/List.test.tsx b/src/design-system/ui/List/List.test.tsx new file mode 100644 index 0000000..6d6bd26 --- /dev/null +++ b/src/design-system/ui/List/List.test.tsx @@ -0,0 +1,7 @@ +import { testStories } from "@/test/testStories"; + +import * as stories from "./List.stories"; + +describe("List", () => { + testStories(stories); +}); diff --git a/src/design-system/ui/List/List.tsx b/src/design-system/ui/List/List.tsx new file mode 100644 index 0000000..4383c0a --- /dev/null +++ b/src/design-system/ui/List/List.tsx @@ -0,0 +1,9 @@ +import { listStyles } from "./List.css"; + +type ListProps = { + children: React.ReactNode; +}; + +export const List: React.FC = ({ children }) => { + return
    {children}
; +}; diff --git a/src/design-system/ui/List/ListItem.tsx b/src/design-system/ui/List/ListItem.tsx new file mode 100644 index 0000000..465b20a --- /dev/null +++ b/src/design-system/ui/List/ListItem.tsx @@ -0,0 +1,9 @@ +import { listStyles } from "./List.css"; + +type ListItemProps = { + children: React.ReactNode; +}; + +export const ListItem: React.FC = ({ children }) => { + return
  • {children}
  • ; +}; diff --git a/src/design-system/ui/List/__snapshots__/List.test.tsx.snap b/src/design-system/ui/List/__snapshots__/List.test.tsx.snap new file mode 100644 index 0000000..49c954c --- /dev/null +++ b/src/design-system/ui/List/__snapshots__/List.test.tsx.snap @@ -0,0 +1,27 @@ +// Jest Snapshot v1, https://goo.gl/fbAQLP + +exports[`List スナップショット Sample 1`] = ` + +
    +
      +
    • + List.Item +
    • +
    • + List.Item +
    • +
    • + List.Item +
    • +
    +
    + +`; diff --git a/src/design-system/ui/List/index.ts b/src/design-system/ui/List/index.ts new file mode 100644 index 0000000..a3f7c9a --- /dev/null +++ b/src/design-system/ui/List/index.ts @@ -0,0 +1,11 @@ +import { List } from "./List"; +import { ListItem } from "./ListItem"; + +export type ListWithItem = typeof List & { + Item: typeof ListItem; +}; + +const ListWithItem = List as ListWithItem; +ListWithItem.Item = ListItem; + +export { ListWithItem as List }; From bd6b31a556ba8a5614a353134d47c56ee5218c27 Mon Sep 17 00:00:00 2001 From: Takuya Sakoda Date: Sat, 31 Aug 2024 16:10:26 +0900 Subject: [PATCH 2/3] =?UTF-8?q?feat(app):=20=E2=9C=A8=20add=20terms=20and?= =?UTF-8?q?=20update=20privacy-policy=20page?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/app/privacy-policy/page.tsx | 53 +++++++----------- src/app/terms/page.tsx | 95 +++++++++++++++++++++++++++++++++ 2 files changed, 114 insertions(+), 34 deletions(-) create mode 100644 src/app/terms/page.tsx diff --git a/src/app/privacy-policy/page.tsx b/src/app/privacy-policy/page.tsx index af371e3..7536b75 100644 --- a/src/app/privacy-policy/page.tsx +++ b/src/app/privacy-policy/page.tsx @@ -23,54 +23,39 @@ const PrivacyPolicyPage = () => {

    Privacy Policy

    - Effective as of February 19, 2023 + Last Updated: 2024/08/31

    -

    アクセス解析ツールについて

    +

    1. アクセス解析ツールについて

    - 当ブログでは、Googleによるアクセス解析ツール「Googleアナリティクス」を利用しています。 - このGoogleアナリティクスはトラフィックデータの収集のためにクッキー(Cookie)を使用しております。 - トラフィックデータは匿名で収集されており、個人を特定するものではありません。 - この機能はCookieを無効にすることで収集を拒否することが出来ますので、お使いのブラウザの設定をご確認ください。この規約に関して、詳しくは + 当サイトでは、Google によるアクセス解析ツール「Google + アナリティクス」を使用しています。この Google + アナリティクスはデータの収集のために Cookie + を使用しています。このデータは匿名で収集されており、個人を特定するものではありません。 + この機能は Cookie + を無効にすることで収集を拒否することが出来ますので、お使いのブラウザの設定をご確認ください。この規約に関しての詳細は - こちら + Google アナリティクスサービス利用規約 - をクリックしてください。 -

    -
    -
    -

    免責事項

    - -

    - 当ブログからのリンクやバナーなどで移動したサイトで提供される情報、 - サービス等について一切の責任を負いません。 -

    -

    - また当ブログのコンテンツ・情報について、 - できる限り正確な情報を提供するように努めておりますが、 - 正確性や安全性を保証するものではありません。情報が古くなっていることもございます。 - 当サイトに掲載された内容によって生じた損害等の一切の責任を負いかねますのでご了承ください。 -

    -
    -
    -

    著作権・肖像権

    - -

    - 当サイトの記事について、著作権は放棄しておりません。当サイトに存在する、文章・画像・動画等の著作物の情報を無断転載することを禁止します。 -

    -

    - また、当サイトは著作権の侵害を目的とするものではありません。使用している版権物の知的所有権はそれぞれの著作者・団体に帰属しております。著作権や肖像権に関して問題がありましたら御連絡下さい。著作権所有者様からの警告及び修正・撤去のご連絡があった場合は迅速に対処または削除致します。 + のページや + + Google ポリシーと規約ページ + + をご覧ください。

    -

    本プライバシーポリシーの変更

    +

    2. 本プライバシーポリシーの変更

    当サイトは、本プライバシーポリシーの内容を適宜見直し、その改善に努めます。 diff --git a/src/app/terms/page.tsx b/src/app/terms/page.tsx new file mode 100644 index 0000000..a4dfee2 --- /dev/null +++ b/src/app/terms/page.tsx @@ -0,0 +1,95 @@ +import type { Metadata } from "next"; + +import { HeaderFooterTemplate } from "@/components/HeaderFooterTemplate"; +import { formatPageTitle } from "@/config/pageTitle"; +import { Col, Container, Spacer } from "@/design-system/layout"; +import { H2, H3, P } from "@/design-system/ui"; +import { List } from "@/design-system/ui/List"; + +export const metadata: Metadata = { + title: formatPageTitle("Privacy Policy"), + robots: { + index: false, + }, + openGraph: { + type: "website", + images: "/logo.png", + url: `/privacy-policy`, + }, +}; + +const PrivacyPolicyPage = () => { + return ( + + +

    Terms of Use

    +

    + Last Updated: 2024/08/31 +

    + + + +
    +

    1. サービスの利用

    + +

    + 本サイトを利用するにあたり、ユーザーは以下の事項に同意するものとします: +

    + + 本サイトの利用は自己責任で行うこと + 不正アクセスや不正利用を行わないこと + 他のユーザーの権利を侵害しないこと + +
    +
    +

    2. 禁止事項

    + +

    ユーザーは以下の行為を行ってはいけません:

    + + 違法行為や公序良俗に反する行為 + サービスの運営を妨害する行為 + +
    +
    +

    3. 免責事項

    + +

    + 当ブログからのリンクやバナーなどで移動したサイトで提供される情報、 + サービス等について一切の責任を負いません。 +

    +

    + また当ブログのコンテンツ・情報について、 + できる限り正確な情報を提供するように努めておりますが、 + 正確性や安全性を保証するものではありません。情報が古くなっていることもございます。 + 当サイトに掲載された内容によって生じた損害等の一切の責任を負いかねますのでご了承ください。 +

    +
    +
    +

    4. 著作権・肖像権

    + +

    + 当サイトの記事について、著作権は放棄しておりません。当サイトに存在する、文章・画像・動画等の著作物の情報を無断転載することを禁止します。 +

    +

    + また、当サイトは著作権の侵害を目的とするものではありません。使用している版権物の知的所有権はそれぞれの著作者・団体に帰属しております。著作権や肖像権に関して問題がありましたら御連絡下さい。著作権所有者様からの警告及び修正・撤去のご連絡があった場合は迅速に対処または削除致します。 +

    +
    +
    +

    5. 利用規約の変更

    + +

    + 当サイトは、本利用規約の内容を適宜見直し、その改善に努めます。本利用規約は、事前の予告なく変更することがあります。本利用規約の変更は、当サイトに掲載された時点で有効になるものとします。 +

    +
    +
    +

    6. 準拠法と管轄裁判所

    + +

    本規約の解釈および適用は、日本法に準拠するものとします。

    +
    + + + + ); +}; + +export default PrivacyPolicyPage; From f16eedf4fede75e5e527193fb240054b270b6b2f Mon Sep 17 00:00:00 2001 From: Takuya Sakoda Date: Sat, 31 Aug 2024 16:12:11 +0900 Subject: [PATCH 3/3] =?UTF-8?q?feat(footer):=20=E2=9C=A8=20add=20terms=20p?= =?UTF-8?q?age=20link?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../HeaderFooterTemplate/Footer/Footer.tsx | 9 +++++++-- .../Footer/__snapshots__/Footer.test.tsx.snap | 14 ++++++++++++-- .../HeaderFooterTemplate.test.tsx.snap | 14 ++++++++++++-- 3 files changed, 31 insertions(+), 6 deletions(-) diff --git a/src/components/HeaderFooterTemplate/Footer/Footer.tsx b/src/components/HeaderFooterTemplate/Footer/Footer.tsx index a8ee054..9ef3bb4 100644 --- a/src/components/HeaderFooterTemplate/Footer/Footer.tsx +++ b/src/components/HeaderFooterTemplate/Footer/Footer.tsx @@ -11,12 +11,12 @@ export const Footer: React.FC = () => { paddingX="200" size="200" > - + © 2021 syakoo diff --git a/src/components/HeaderFooterTemplate/Footer/__snapshots__/Footer.test.tsx.snap b/src/components/HeaderFooterTemplate/Footer/__snapshots__/Footer.test.tsx.snap index 76a12ec..f4f0a52 100644 --- a/src/components/HeaderFooterTemplate/Footer/__snapshots__/Footer.test.tsx.snap +++ b/src/components/HeaderFooterTemplate/Footer/__snapshots__/Footer.test.tsx.snap @@ -10,7 +10,7 @@ exports[`Footer スナップショット Sample 1`] = ` class="Container_containerStyle__1b3ljla3 Container_containerStyle_size_200__1b3ljla6 Container_containerStyle_variants_size_200__1b3ljla2 Container_containerStyle_paddingBottom_200__1b3ljlaw padding_paddingBottomVariants_200__1i0pzy6o Container_containerStyle_paddingTop_300__1b3ljlaq padding_paddingTopVariants_300__1i0pzy6i Container_containerStyle_paddingX_200__1b3ljla13 padding_paddingXVariants_200__1i0pzy6v" > diff --git a/src/components/HeaderFooterTemplate/__snapshots__/HeaderFooterTemplate.test.tsx.snap b/src/components/HeaderFooterTemplate/__snapshots__/HeaderFooterTemplate.test.tsx.snap index 00626e2..7c5ef85 100644 --- a/src/components/HeaderFooterTemplate/__snapshots__/HeaderFooterTemplate.test.tsx.snap +++ b/src/components/HeaderFooterTemplate/__snapshots__/HeaderFooterTemplate.test.tsx.snap @@ -93,7 +93,7 @@ exports[`HeaderFooterTemplate スナップショット Sample 1`] = ` class="Container_containerStyle__1b3ljla3 Container_containerStyle_size_200__1b3ljla6 Container_containerStyle_variants_size_200__1b3ljla2 Container_containerStyle_paddingBottom_200__1b3ljlaw padding_paddingBottomVariants_200__1i0pzy6o Container_containerStyle_paddingTop_300__1b3ljlaq padding_paddingTopVariants_300__1i0pzy6i Container_containerStyle_paddingX_200__1b3ljla13 padding_paddingXVariants_200__1i0pzy6v" >