1- import {
2- ArrowTopRightOnSquareIcon ,
3- XMarkIcon ,
4- } from "@heroicons/react/16/solid" ;
1+ import { ArrowTopRightOnSquareIcon , XMarkIcon } from "@heroicons/react/16/solid" ;
52import { Button } from "@heroui/react" ;
63import { useMemo } from "react" ;
74// import { useCallback } from "react";
@@ -13,16 +10,8 @@ type Props = {
1310 repo ?: string ;
1411} ;
1512
16- export default function AboutModal ( {
17- isOpen,
18- onClose,
19- username = "omid" ,
20- repo = "calf" ,
21- } : Props ) {
22- useMemo (
23- ( ) => ( document . body . style . overflow = isOpen ? "hidden" : "auto" ) ,
24- [ isOpen ]
25- ) ;
13+ export default function AboutModal ( { isOpen, onClose, username = "omid" , repo = "calf" } : Props ) {
14+ useMemo ( ( ) => ( document . body . style . overflow = isOpen ? "hidden" : "auto" ) , [ isOpen ] ) ;
2615
2716 if ( ! isOpen ) return null ;
2817
@@ -48,77 +37,50 @@ export default function AboutModal({
4837
4938 < div
5039 className = { `relative w-[92vw] max-w-2xl max-h-[90vh] rounded-2xl bg-white p-6 shadow-xl transform transition-all duration-300 flex flex-col overflow-hidden ${
51- isOpen
52- ? "opacity-100 translate-y-0 scale-100"
53- : "opacity-0 translate-y-2 scale-95"
40+ isOpen ? "opacity-100 translate-y-0 scale-100" : "opacity-0 translate-y-2 scale-95"
5441 } `}
5542 >
5643 < div className = "flex items-start justify-between" >
5744 < h2 id = "about-title" className = "text-xl font-bold" >
58- Calf (Calendar Factory) — About & Disclaimer
45+ Calf (Calendar Factory) — About
5946 </ h2 >
6047
61- < Button
62- className = "bg-white min-w-auto"
63- onPress = { onClose }
64- aria-label = "Close"
65- >
48+ < Button className = "bg-white min-w-auto" onPress = { onClose } aria-label = "Close" >
6649 < XMarkIcon className = "h-6 w-6 text-gray-600" />
6750 </ Button >
6851 </ div >
6952
7053 < div className = "mt-4 flex-1 overflow-y-auto space-y-4 text-sm text-gray-700 dark:text-gray-300 text-left pr-1" >
7154 < p >
72- < strong > Calf</ strong > helps you create a calendar event and share it
73- with a single link. Anyone with the link can add the event to their
74- calendar or download an iCal (< code > .ics</ code > ) file. Everything
75- runs entirely in your browser — no accounts, no backend.
55+ < strong > Calf</ strong > helps you create a calendar event and share it with a single link. Anyone with the
56+ link can add the event to their calendar or download an iCal (< code > .ics</ code > ) file. Everything runs
57+ entirely in your browser — no accounts, no backend.
7658 </ p >
7759
7860 < div >
7961 < h3 className = "font-semibold" > Links</ h3 >
8062 < ul className = "ml-5 list-disc space-y-1" >
8163 < li >
8264 Repository:{ " " }
83- < a
84- className = "text-blue-600 underline"
85- href = { repoUrl }
86- target = "_blank"
87- rel = "noopener noreferrer"
88- >
65+ < a className = "text-blue-600 underline" href = { repoUrl } target = "_blank" rel = "noopener noreferrer" >
8966 { repoUrl }
9067 </ a >
9168 </ li >
9269 < li >
9370 Donate:{ " " }
94- < a
95- className = "text-blue-600 underline"
96- href = { donateUrl }
97- target = "_blank"
98- rel = "noopener noreferrer"
99- >
71+ < a className = "text-blue-600 underline" href = { donateUrl } target = "_blank" rel = "noopener noreferrer" >
10072 { donateUrl }
10173 </ a >
10274 </ li >
10375 < li >
10476 Bugs:{ " " }
105- < a
106- className = "text-blue-600 underline"
107- href = { reportBugUrl }
108- target = "_blank"
109- rel = "noopener noreferrer"
110- >
77+ < a className = "text-blue-600 underline" href = { reportBugUrl } target = "_blank" rel = "noopener noreferrer" >
11178 { reportBugUrl }
11279 </ a >
11380 </ li >
11481 < li >
11582 Changelog:{ " " }
116- < a
117- className = "text-blue-600 underline"
118- href = { changeLogUrl }
119- target = "_blank"
120- rel = "noopener noreferrer"
121- >
83+ < a className = "text-blue-600 underline" href = { changeLogUrl } target = "_blank" rel = "noopener noreferrer" >
12284 { changeLogUrl }
12385 </ a >
12486 </ li >
@@ -128,54 +90,36 @@ export default function AboutModal({
12890 < div >
12991 < h3 className = "font-semibold" > Privacy</ h3 >
13092 < ul className = "ml-5 list-disc space-y-1" >
93+ < li > All event generation happens locally in your browser; the iCal file is created client-side.</ li >
13194 < li >
132- All event generation happens locally in your browser; the iCal
133- file is created client-side.
134- </ li >
135- < li >
136- When searching for places, the app may query a geocoding service
137- (e.g., OpenStreetMap’s Nominatim) to fetch suggestions.
138- </ li >
139- < li >
140- GoatCounter is used as a privacy-friendly visit counter. No
141- personal data is collected.
142- </ li >
143- < li >
144- No cookies or local storage are used. The app does not track or
145- store any personal information.
146- </ li >
147- < li >
148- The source code is open and available for review on GitHub.
95+ When searching for places, the app may query a geocoding service (e.g., OpenStreetMap’s Nominatim) to
96+ fetch suggestions.
14997 </ li >
98+ < li > GoatCounter is used as a privacy-friendly visit counter. No personal data is collected.</ li >
99+ < li > No cookies or local storage are used. The app does not track or store any personal information.</ li >
100+ < li > The source code is open and available for review on GitHub.</ li >
150101 </ ul >
151102 </ div >
152103
153104 < div className = "rounded-lg border border-amber-300 bg-amber-50 dark:border-none dark:bg-amber-900 p-3 pb-5" >
154- < h3 className = "font-semibold text-amber-900 dark:text-amber-50" >
155- Disclaimer
156- </ h3 >
105+ < h3 className = "font-semibold text-amber-900 dark:text-amber-50" > Disclaimer</ h3 >
157106 < ul className = "ml-5 list-disc space-y-1 text-amber-900 dark:text-amber-50" >
158107 < li >
159- < strong > GitHub may track created links.</ strong > Links you open
160- via GitHub Pages can appear in repository traffic or analytics.
108+ < strong > GitHub may track created links.</ strong > Links you open via GitHub Pages can appear in
109+ repository traffic or analytics.
161110 </ li >
162111 < li >
163- < strong > Updates may break older links.</ strong > I aim to keep
164- things backward-compatible, but breaking changes can happen.
112+ < strong > Updates may break older links.</ strong > I aim to keep things backward-compatible, but breaking
113+ changes can happen.
165114 </ li >
166115 </ ul >
167116 </ div >
168117
169- < p className = "text-xs text-gray-500" >
170- MIT License. Feedback and contributions are welcome!
171- </ p >
118+ < p className = "text-xs text-gray-500" > MIT License. Feedback and contributions are welcome!</ p >
172119 </ div >
173120
174121 < div className = "mt-6 flex justify-end gap-2 flex-shrink-0" >
175- < Button
176- className = "rounded-lg border bg-white px-4 py-2 text-gray-800 hover:shadow-sm"
177- onPress = { onClose }
178- >
122+ < Button className = "rounded-lg border bg-white px-4 py-2 text-gray-800 hover:shadow-sm" onPress = { onClose } >
179123 Close
180124 </ Button >
181125 < a
0 commit comments