feat: Billing & Plans settings page

This commit is contained in:
Shariq Ansari 2024-10-25 14:38:38 +05:30
parent fd23d66ccd
commit bef7095be3
3 changed files with 61 additions and 2 deletions

View File

@ -0,0 +1,22 @@
<template>
<svg
xmlns="http://www.w3.org/2000/svg"
width="16"
height="16"
viewBox="0 0 24 24"
fill="none"
stroke="currentColor"
stroke-width="1.5"
stroke-linecap="round"
stroke-linejoin="round"
class="lucide lucide-circle-fading-arrow-up"
>
<path d="M12 2a10 10 0 0 1 7.38 16.75" />
<path d="m16 12-4-4-4 4" />
<path d="M12 16V8" />
<path d="M2.5 8.875a10 10 0 0 0-.5 3" />
<path d="M2.83 16a10 10 0 0 0 2.43 3.4" />
<path d="M4.636 5.235a10 10 0 0 1 .891-.857" />
<path d="M8.644 21.42a10 10 0 0 0 7.631-.38" />
</svg>
</template>

View File

@ -0,0 +1,20 @@
<template>
<svg
xmlns="http://www.w3.org/2000/svg"
width="16"
height="16"
viewBox="0 0 24 24"
fill="none"
stroke="currentColor"
stroke-width="1.5"
stroke-linecap="round"
stroke-linejoin="round"
class="lucide lucide-wallet-cards"
>
<rect width="18" height="18" x="3" y="3" rx="2" />
<path d="M3 9a2 2 0 0 1 2-2h14a2 2 0 0 1 2 2" />
<path
d="M3 11h3c.8 0 1.6.3 2.1.9l1.1.9c1.6 1.6 4.1 1.6 5.7 0l1.1-.9c.5-.5 1.3-.9 2.1-.9H21"
/>
</svg>
</template>

View File

@ -41,6 +41,8 @@ import ContactsIcon from '@/components/Icons/ContactsIcon.vue'
import WhatsAppIcon from '@/components/Icons/WhatsAppIcon.vue'
import ERPNextIcon from '@/components/Icons/ERPNextIcon.vue'
import PhoneIcon from '@/components/Icons/PhoneIcon.vue'
import UpgradeIcon from '@/components/Icons/UpgradeIcon.vue'
import WalletsIcon from '@/components/Icons/WalletsIcon.vue'
import InviteMemberPage from '@/components/Settings/InviteMemberPage.vue'
import ProfileSettings from '@/components/Settings/ProfileSettings.vue'
import WhatsAppSettings from '@/components/Settings/WhatsAppSettings.vue'
@ -48,8 +50,8 @@ import ERPNextSettings from '@/components/Settings/ERPNextSettings.vue'
import TwilioSettings from '@/components/Settings/TwilioSettings.vue'
import SidebarLink from '@/components/SidebarLink.vue'
import { isWhatsappInstalled } from '@/composables/settings'
import { Dialog } from 'frappe-ui'
import { ref, markRaw, computed, h } from 'vue'
import { Dialog, Plans, Billing } from 'frappe-ui'
import { ref, markRaw, computed } from 'vue'
const show = defineModel()
@ -71,6 +73,21 @@ const tabs = computed(() => {
},
],
},
{
label: __('Subscription'),
items: [
{
label: 'Plans',
icon: UpgradeIcon,
component: markRaw(Plans),
},
{
label: 'Billing',
icon: WalletsIcon,
component: markRaw(Billing),
},
],
},
{
label: __('Integrations'),
items: [