From b26da3f911b33722d639206267baa895652283ee Mon Sep 17 00:00:00 2001 From: Stefano Pigozzi Date: Sat, 4 Jun 2022 05:13:19 +0200 Subject: [PATCH] many many things --- components/ActionEventList.tsx | 4 +- components/EventCreate.tsx | 2 +- components/{EventList.tsx => ListEvents.tsx} | 4 +- components/Loading.tsx | 2 +- components/Postcard.tsx | 16 - components/editable/EditableMarkdown.tsx | 15 + components/editable/EditableText.tsx | 14 + components/{ => errors}/ErrorBlock.tsx | 11 +- components/errors/ErrorBoundary.tsx | 40 ++ components/{ => errors}/ErrorInline.tsx | 16 +- components/{ => extensions}/FestaIcon.tsx | 0 components/extensions/FestaMarkdown.tsx | 19 + components/postcard/Postcard.tsx | 28 + components/postcard/PostcardContext.tsx | 7 + components/postcard/PostcardRenderer.tsx | 14 + components/tools/ToolBar.tsx | 16 + components/tools/ToolToggleEditing.tsx | 19 + components/view/ViewContent.tsx | 20 + components/view/ViewLanding.tsx | 26 + components/view/ViewNotice.tsx | 14 + contexts/editing.tsx | 4 + contexts/postcard.tsx | 8 - next.config.js | 4 +- package.json | 1 + pages/_app.tsx | 20 +- pages/events/[slug].tsx | 57 +- pages/index.tsx | 65 +-- prisma/schema.prisma | 12 +- public/favicon.ico | Bin 25931 -> 0 bytes public/locales/it-IT/common.json | 4 +- ...markus-spiske-iar-afB0QQw-unsplash-red.jpg | 3 + public/vercel.svg | 4 - styles/color-schemes.css | 5 +- styles/components/icon.css | 3 + styles/components/list-events.css | 12 + styles/components/postcard.css | 15 + styles/components/telegram-login.css | 3 + styles/components/toolbar.css | 31 + styles/components/views/content.css | 20 + styles/components/views/landing.css | 46 ++ styles/components/views/notice.css | 6 + styles/elements.css | 71 +++ styles/globals.css | 182 +----- styles/mood.css | 15 + yarn.lock | 537 +++++++++++++++++- 45 files changed, 1122 insertions(+), 293 deletions(-) rename components/{EventList.tsx => ListEvents.tsx} (81%) delete mode 100644 components/Postcard.tsx create mode 100644 components/editable/EditableMarkdown.tsx create mode 100644 components/editable/EditableText.tsx rename components/{ => errors}/ErrorBlock.tsx (70%) create mode 100644 components/errors/ErrorBoundary.tsx rename components/{ => errors}/ErrorInline.tsx (61%) rename components/{ => extensions}/FestaIcon.tsx (100%) create mode 100644 components/extensions/FestaMarkdown.tsx create mode 100644 components/postcard/Postcard.tsx create mode 100644 components/postcard/PostcardContext.tsx create mode 100644 components/postcard/PostcardRenderer.tsx create mode 100644 components/tools/ToolBar.tsx create mode 100644 components/tools/ToolToggleEditing.tsx create mode 100644 components/view/ViewContent.tsx create mode 100644 components/view/ViewLanding.tsx create mode 100644 components/view/ViewNotice.tsx create mode 100644 contexts/editing.tsx delete mode 100644 contexts/postcard.tsx delete mode 100644 public/favicon.ico create mode 100644 public/postcards/markus-spiske-iar-afB0QQw-unsplash-red.jpg delete mode 100644 public/vercel.svg create mode 100644 styles/components/icon.css create mode 100644 styles/components/list-events.css create mode 100644 styles/components/postcard.css create mode 100644 styles/components/telegram-login.css create mode 100644 styles/components/toolbar.css create mode 100644 styles/components/views/content.css create mode 100644 styles/components/views/landing.css create mode 100644 styles/components/views/notice.css create mode 100644 styles/elements.css create mode 100644 styles/mood.css diff --git a/components/ActionEventList.tsx b/components/ActionEventList.tsx index be47f66..cc9720d 100644 --- a/components/ActionEventList.tsx +++ b/components/ActionEventList.tsx @@ -3,7 +3,7 @@ import { useTranslation } from "next-i18next"; import { HTMLProps } from "react"; import { useMyEventsSWR } from "../hooks/swr/useMyEventsSWR"; import { Loading } from "./Loading"; -import { EventList } from "./EventList"; +import { ListEvents } from "./ListEvents"; import { EventCreate } from "./EventCreate"; @@ -44,7 +44,7 @@ export function ActionEventList(props: HTMLProps) {

{t("eventListDescription")}

- +

{t("eventListCreateAnother")}

diff --git a/components/EventCreate.tsx b/components/EventCreate.tsx index 8945c50..de63264 100644 --- a/components/EventCreate.tsx +++ b/components/EventCreate.tsx @@ -5,7 +5,7 @@ import { useState } from "react" import { useAxiosRequest } from "../hooks/useAxiosRequest" import { Loading } from "./Loading" import { useEffect } from "react" -import { ErrorBlock } from "./ErrorBlock" +import { ErrorBlock } from "./errors/ErrorBlock" export function EventCreate() { const { t } = useTranslation() diff --git a/components/EventList.tsx b/components/ListEvents.tsx similarity index 81% rename from components/EventList.tsx rename to components/ListEvents.tsx index 60280a3..080a225 100644 --- a/components/EventList.tsx +++ b/components/ListEvents.tsx @@ -1,11 +1,11 @@ import { Event } from "@prisma/client" import { default as Link } from "next/link" -type EventListProps = { +type ListEventsProps = { data: Event[] } -export function EventList(props: EventListProps) { +export function ListEvents(props: ListEventsProps) { const contents = props.data.map(e => (
  • diff --git a/components/Loading.tsx b/components/Loading.tsx index 4b8e492..48be918 100644 --- a/components/Loading.tsx +++ b/components/Loading.tsx @@ -1,5 +1,5 @@ import { faAsterisk } from "@fortawesome/free-solid-svg-icons"; -import { FestaIcon } from "./FestaIcon"; +import { FestaIcon } from "./extensions/FestaIcon"; type LoadingProps = { text: string diff --git a/components/Postcard.tsx b/components/Postcard.tsx deleted file mode 100644 index fa35be2..0000000 --- a/components/Postcard.tsx +++ /dev/null @@ -1,16 +0,0 @@ -import { PostcardContext } from "../contexts/postcard"; -import { useDefinedContext } from "../utils/definedContext"; - -export function Postcard() { - const [postcard, _] = useDefinedContext(PostcardContext) - - const postcardUrl = typeof postcard === "string" ? postcard : postcard.src - - /* eslint-disable @next/next/no-img-element */ - return <> -
    - -} \ No newline at end of file diff --git a/components/editable/EditableMarkdown.tsx b/components/editable/EditableMarkdown.tsx new file mode 100644 index 0000000..fa4a535 --- /dev/null +++ b/components/editable/EditableMarkdown.tsx @@ -0,0 +1,15 @@ +import { HTMLProps } from "react"; +import { EditingContext } from "../../contexts/editing"; +import { useDefinedContext } from "../../utils/definedContext"; +import { FestaMarkdown } from "../extensions/FestaMarkdown"; + + +export function EditableMarkdown({value, ...props}: HTMLProps) { + const [editing,] = useDefinedContext(EditingContext) + + return editing ? ( +