|
1 | | -import { Fragment } from "react"; |
2 | 1 | import { Link } from "react-router"; |
3 | 2 | import { AddressLink } from "../utils"; |
4 | 3 | import { ScrambleText, Title, Subheader, Paragraph } from "../text"; |
@@ -159,17 +158,34 @@ export default function JamFAQPage() { |
159 | 158 |
|
160 | 159 | <FAQSection |
161 | 160 | question="What's the refund policy?" |
162 | | - answer="There are no refunds, but tickets will be transferable." |
| 161 | + answer="There are no refunds, but tickets are transferable." |
| 162 | + /> |
| 163 | + |
| 164 | + <FAQSection |
| 165 | + question="How do I get an invoice for tax purposes?" |
| 166 | + answer={ |
| 167 | + <Paragraph> |
| 168 | + Please email <JamEmail /> for invoice requests. |
| 169 | + </Paragraph> |
| 170 | + } |
163 | 171 | /> |
164 | 172 |
|
165 | 173 | <FAQSection |
166 | 174 | question="How do I transfer a ticket?" |
167 | | - answer="Ask Brooks!" |
| 175 | + answer={ |
| 176 | + <Paragraph> |
| 177 | + Please email <JamEmail /> for ticket transfer requests. |
| 178 | + </Paragraph> |
| 179 | + } |
168 | 180 | /> |
169 | 181 |
|
170 | 182 | <FAQSection |
171 | 183 | question="What if I have other questions?" |
172 | | - answer="You guessed it, ask Brooks!" |
| 184 | + answer={ |
| 185 | + <Paragraph> |
| 186 | + You guessed it, email <JamEmail />. |
| 187 | + </Paragraph> |
| 188 | + } |
173 | 189 | /> |
174 | 190 | </div> |
175 | 191 | </main> |
@@ -197,37 +213,15 @@ function FAQSection({ |
197 | 213 | {question} |
198 | 214 | </Link> |
199 | 215 | </Subheader> |
200 | | - {typeof answer === "string" ? ( |
201 | | - <Paragraph>{replaceBrooksWithLink(answer)}</Paragraph> |
202 | | - ) : ( |
203 | | - answer |
204 | | - )} |
| 216 | + {typeof answer === "string" ? <Paragraph>{answer}</Paragraph> : answer} |
205 | 217 | </section> |
206 | 218 | ); |
207 | 219 | } |
208 | 220 |
|
209 | | -// Really wanting RSC right now |
210 | | -function replaceBrooksWithLink(children: React.ReactNode): React.ReactNode { |
211 | | - if (typeof children !== "string") return children; |
212 | | - |
213 | | - const parts = children.split("Brooks"); |
214 | | - if (parts.length === 1) return children; |
215 | | - |
| 221 | +function JamEmail() { |
216 | 222 | return ( |
217 | | - <> |
218 | | - {parts.map((part, index) => ( |
219 | | - <Fragment key={index}> |
220 | | - {part} |
221 | | - {index < parts.length - 1 ? ( |
222 | | - <a |
223 | | - className="text-blue-400 hover:underline" |
224 | | - href="mailto:brooks.lybrand@shopify.com" |
225 | | - > |
226 | | - Brooks |
227 | | - </a> |
228 | | - ) : null} |
229 | | - </Fragment> |
230 | | - ))} |
231 | | - </> |
| 223 | + <a href="mailto:jam@remix.run" className="text-blue-400 hover:underline"> |
| 224 | + jam@remix.run |
| 225 | + </a> |
232 | 226 | ); |
233 | 227 | } |
0 commit comments