Skip to content

Commit 66c3711

Browse files
authored
more info (#253)
1 parent c7d91f1 commit 66c3711

File tree

4 files changed

+76
-55
lines changed

4 files changed

+76
-55
lines changed

src/components/ui/Pro.astro

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,7 @@
1+
---
2+
import { twMerge } from 'tailwind-merge';
3+
4+
const { tag = 'Pro', classes = {} } = Astro.props;
5+
---
6+
7+
<span class={twMerge("rounded-full text-xs text-white bg-amber-600 dark:text-neutral-200 dark:bg-amber-800 px-2 shadow-sm shadow-black/20 ml-2", classes)}><Fragment set:html={tag} /></span>

src/components/widgets/FeaturesList.astro

Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,7 @@ import WidgetWrapper from '~/components/ui/WidgetWrapper.astro';
44
import type { FeaturesList as Props } from '~/types';
55
import Tick from '../ui/Tick.astro';
66
import Soon from '../ui/Soon.astro';
7+
import Pro from '../ui/Pro.astro';
78
89
const {
910
title = await Astro.slots.render('title'),
@@ -38,13 +39,14 @@ const {
3839
</thead>
3940
<tbody>
4041
{
41-
specs.map(({ feature, isHeader, isSoon, values, available }) => (
42+
specs.map(({ feature, isHeader, isSoon, isPro, values, available }) => (
4243
<tr class={(isHeader && ' bg-neutral-50 dark:bg-neutral-800') || ''}>
43-
{isHeader && <td class="p-2 font-semibold"><Fragment set:html={feature} />{ isSoon && <Soon/> }</td>}
44+
{isHeader && <td class="p-2 font-semibold"><Fragment set:html={feature} />{ isSoon && <Soon/> }{ isPro && <Pro/> }</td>}
4445
{isHeader && products.map(() => <td class="p-2 text-center" />)}
4546
{!isHeader && <td class="px-2 text-muted"><Fragment set:html={feature} />{ isSoon && <Soon/> }</td> }
4647
{!isHeader && values && (values.map((val) => <td class="px-2 text-muted text-center">{val}</td>))}
47-
{!isHeader && available && available.map((yes) => <td class="px-2 text-muted text-center">{yes && <Tick />}</td>)}
48+
{!isHeader && available && !isPro && available.map((yes) => <td class="px-2 text-muted text-center">{yes && <Tick />}</td>)}
49+
{!isHeader && available && isPro && available.map((yes) => <td class="px-2 text-muted text-center">{yes && <Tick classes={{icon_bg: 'bg-amber-200/80 dark:bg-amber-800', icon: 'text-amber-600 dark:text-amber-100'}} />}</td>)}
4850
</tr>
4951
))
5052
}

src/pages/get-supporter-edition.astro

Lines changed: 63 additions & 52 deletions
Original file line numberDiff line numberDiff line change
@@ -101,14 +101,6 @@ const metadata = {
101101
description: 'Extended customizations.',
102102
icon: 'tabler:plus',
103103
},
104-
{
105-
description: 'Webshop integration.',
106-
icon: 'tabler:plus',
107-
classes: {
108-
icon_bg: 'bg-neutral-400',
109-
icon: 'text-white',
110-
},
111-
},
112104
{
113105
description: 'more to come...',
114106
icon: 'tabler:question-mark',
@@ -126,7 +118,7 @@ const metadata = {
126118
},
127119
hasRibbon: true,
128120
ribbonTitle: 'popular',
129-
}
121+
},
130122
]}
131123
/>
132124

@@ -136,7 +128,8 @@ const metadata = {
136128
products={['Free', 'Lychee <span class="text-sky-600 dark:text-sky-300">SE</span>']}
137129
extra="<sup>*</sup> This table is summary of Lychee's functionalities and does not represent the large amount of configurations available (250+).<br>\
138130
<sup>**</sup> Some languages are still untranslated. Any translations provided via <a class='text-sky-600 dark:text-sky-300 underline hover:text-sky-400 dark:hover:text-sky-500' href='https://weblate.lycheeorg.dev'>weblate</a> will be appreciated.<br>\
139-
<sup>***</sup> This option is not available on <span class='text-sky-600 dark:text-sky-300'>SE</span> as they are already hidden."
131+
<sup>***</sup> This option is not available on <span class='text-sky-600 dark:text-sky-300'>SE</span> as they are already hidden.<br>\
132+
<sup>****</sup> This option requires the <span class='text-sky-600 dark:text-sky-300'>Pro</span> edition of Lychee which is targeted to users who wish to sell their pictures."
140133
specs={[
141134
{
142135
feature: 'Global',
@@ -360,36 +353,6 @@ const metadata = {
360353
available: [false, true],
361354
},
362355

363-
{
364-
feature: 'Webshop integration',
365-
isHeader: true,
366-
isSoon: true,
367-
},
368-
{
369-
feature: 'Custom pricing (per size & license type)',
370-
available: [false, true],
371-
},
372-
{
373-
feature: 'Basket control flow',
374-
available: [false, true],
375-
},
376-
{
377-
feature: 'Mollie payment integration',
378-
available: [false, true],
379-
},
380-
{
381-
feature: 'Offline payment support',
382-
available: [false, true],
383-
},
384-
{
385-
feature: 'Order administration',
386-
available: [false, true],
387-
},
388-
{
389-
feature: 'Download links management',
390-
available: [false, true],
391-
},
392-
393356
{
394357
feature: 'Timeline',
395358
isHeader: true,
@@ -577,7 +540,49 @@ const metadata = {
577540
available: [false, true],
578541
isV6: true,
579542
},
580-
]}
543+
544+
{
545+
feature: 'Webshop integration ****',
546+
isHeader: true,
547+
isSoon: true,
548+
isPro: true,
549+
},
550+
{
551+
feature: 'Custom pricing (per size & license type)',
552+
available: [false, true],
553+
isPro: true,
554+
},
555+
{
556+
feature: 'Basket control flow',
557+
available: [false, true],
558+
isPro: true,
559+
},
560+
{
561+
feature: 'Mollie payment integration',
562+
available: [false, true],
563+
isPro: true,
564+
},
565+
{
566+
feature: 'PayPal payment integration',
567+
available: [false, true],
568+
isPro: true,
569+
},
570+
{
571+
feature: 'Offline payment support',
572+
available: [false, true],
573+
isPro: true,
574+
},
575+
{
576+
feature: 'Order administration',
577+
available: [false, true],
578+
isPro: true,
579+
},
580+
{
581+
feature: 'Download links management',
582+
available: [false, true],
583+
isPro: true,
584+
},
585+
]}
581586
/>
582587

583588
<FAQs
@@ -591,6 +596,12 @@ const metadata = {
591596
'The <span class="font-bold dark:text-neutral-200">Free</span> Edition is a great choice for personal use, offering unlimited albums, users, and photo uploads.<br/> \
592597
<span class="font-bold dark:text-neutral-200">Lychee</span> <span class="text-sky-600 dark:text-sky-300 font-bold">SE</span> includes all the features of the Free Edition, plus some exclusive features as a thank-you for supporting the development of Lychee.',
593598
},
599+
{
600+
title: 'What is the Pro edition mentioned in the feature comparison table?',
601+
description:
602+
'The <span class="font-bold dark:text-neutral-200">Pro</span> edition is a small addon on top of <span class="font-bold dark:text-neutral-200">Lychee</span> <span class="text-sky-600 dark:text-sky-300 font-bold">SE</span> that is targeted towards professional photographers and businesses who wish to sell their pictures via a webshop integration.\
603+
It includes all the features of the Supporter Edition plus few exclusive features to manage your webshop and sales. Depending on your support to Lychee, you may already have access to it.',
604+
},
594605
{
595606
title: 'I am running an old version of Lychee and I want to upgrade to version 6.<br>Will I be losing features if I do not use the Supporter Edition?',
596607
description:
@@ -605,7 +616,7 @@ const metadata = {
605616
{
606617
title: 'How do I get the Supporter Edition? How do I register it?',
607618
description:
608-
"Once you support us via GitHub, you will get a personal license key that you can use in your Lychee instance to unlock the exclusive features.\
619+
"Once you support us via GitHub, you will get a link to retrieve your personal license key that you can use in your Lychee instance to unlock the exclusive features.\
609620
If you support us directly via Open Collective, please contact us by mail or via discord to get your personal license key.<br/><br/>\
610621
Once you have your license key, just go into the <span class='font-semibold dark:text-neutral-300'>Left menu</span>, open the <span class='font-semibold dark:text-neutral-300'>About Lychee</span> dialog, and enter your license key in the dedicated field.",
611622
},
@@ -636,17 +647,17 @@ const metadata = {
636647
title: 'I no longer use Lychee, how do I stop my subscription?',
637648
description:
638649
'You can manage your sponsorship subscription directly on GitHub. Read more about it on the <a href="https://docs.github.com/en/billing/managing-billing-for-your-products/managing-billing-for-github-sponsors/downgrading-a-sponsorship" class="text-default hover:text-sky-600 hover:dark:text-sky-300">GitHub documentation</a>.',
650+
},
651+
{
652+
title: 'I lost my license key, how can I retrieve it?',
653+
description:
654+
'If you lost your license key, you can retrieve a new one at <a href="https://keygen.lycheeorg.dev" class="text-default hover:text-sky-600 hover:dark:text-sky-300">keygen.lycheeorg.dev</a>.',
655+
},
656+
{
657+
title: 'I had a lifetime license, but I deleted my account on keygen.lycheeorg.dev, how can I retrieve it?',
658+
description:
659+
'We are fully GDPR compliant. <span class="text-default">If you deleted your account on keygen.lycheeorg.dev, your data has been permanently erased</span>. That includes all the records of your transactions. You will need to contact us directly via mail or discord to verify your previous support and retrieve a new license key.',
639660
}
640-
// {
641-
// title: 'Do the plans come with customer support?',
642-
// description:
643-
// 'Absolutely, all plans include access to our dedicated customer support to assist you with any queries or concerns.',
644-
// },
645-
// {
646-
// title: 'What payment methods do you accept?',
647-
// description:
648-
// 'We accept major credit cards and online payment methods to ensure a convenient and secure transaction process.',
649-
// },
650661
]}
651662
/>
652663
</Layout>

src/types.d.ts

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -259,6 +259,7 @@ export interface Spec {
259259
isHeader?: boolean;
260260
isV6?: boolean;
261261
isSoon?: boolean;
262+
isPro?: boolean;
262263
values?: string[];
263264
available?: boolean[];
264265
}

0 commit comments

Comments
 (0)