fix: layout change
(cherry picked from commit 0ad65be961ff70f069be78979004820d827a96d0)
This commit is contained in:
parent
c8d165593a
commit
e267445a80
@ -1,21 +1,30 @@
|
|||||||
<template>
|
<template>
|
||||||
<div>
|
<div>
|
||||||
<!-- header -->
|
<!-- header -->
|
||||||
<div class="flex items-center justify-between text-ink-gray-9">
|
<div class="flex justify-between">
|
||||||
<h2 class="flex gap-2 text-xl font-semibold leading-none h-5">
|
<div class="flex flex-col gap-1 w-9/12">
|
||||||
{{ __('Email Accounts') }}
|
<h2 class="flex gap-2 text-xl font-semibold leading-none h-5">
|
||||||
</h2>
|
{{ __('Email accounts') }}
|
||||||
<Button
|
</h2>
|
||||||
:label="__('Add Account')"
|
<p class="text-p-base text-ink-gray-6">
|
||||||
theme="gray"
|
{{
|
||||||
variant="solid"
|
__(
|
||||||
@click="emit('update:step', 'email-add')"
|
'Manage your email accounts to send and receive emails directly from CRM. You can add multiple accounts and set one as default for incoming and outgoing emails.',
|
||||||
>
|
)
|
||||||
<template #prefix>
|
}}
|
||||||
<LucidePlus class="w-4 h-4" />
|
</p>
|
||||||
</template>
|
</div>
|
||||||
</Button>
|
<div class="flex item-center space-x-2 w-3/12 justify-end">
|
||||||
|
<Button
|
||||||
|
:label="__('Add Account')"
|
||||||
|
theme="gray"
|
||||||
|
variant="solid"
|
||||||
|
icon-left="plus"
|
||||||
|
@click="emit('update:step', 'email-add')"
|
||||||
|
/>
|
||||||
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<!-- list accounts -->
|
<!-- list accounts -->
|
||||||
<div
|
<div
|
||||||
v-if="!emailAccounts.loading && Boolean(emailAccounts.data?.length)"
|
v-if="!emailAccounts.loading && Boolean(emailAccounts.data?.length)"
|
||||||
|
|||||||
@ -1,14 +1,29 @@
|
|||||||
<template>
|
<template>
|
||||||
<div class="flex h-full flex-col gap-8 p-8 text-ink-gray-9">
|
<div class="flex h-full flex-col gap-6 p-8 text-ink-gray-9">
|
||||||
<h2 class="flex gap-2 text-xl font-semibold leading-none h-5">
|
<div class="flex justify-between">
|
||||||
{{ __('General') }}
|
<div class="flex flex-col gap-1 w-9/12">
|
||||||
<Badge
|
<h2 class="flex gap-2 text-xl font-semibold leading-none h-5">
|
||||||
v-if="settings.isDirty"
|
{{ __('General') }}
|
||||||
:label="__('Not Saved')"
|
<Badge
|
||||||
variant="subtle"
|
v-if="settings.isDirty"
|
||||||
theme="orange"
|
:label="__('Not Saved')"
|
||||||
/>
|
variant="subtle"
|
||||||
</h2>
|
theme="orange"
|
||||||
|
/>
|
||||||
|
</h2>
|
||||||
|
<p class="text-p-base text-ink-gray-6">
|
||||||
|
{{ __('Configure general settings for your CRM') }}
|
||||||
|
</p>
|
||||||
|
</div>
|
||||||
|
<div class="flex item-center space-x-2 w-3/12 justify-end">
|
||||||
|
<Button
|
||||||
|
variant="solid"
|
||||||
|
:label="__('Update')"
|
||||||
|
:disabled="!settings.isDirty"
|
||||||
|
@click="updateSettings"
|
||||||
|
/>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
<div v-if="settings.doc" class="flex-1 flex flex-col gap-8 overflow-y-auto">
|
<div v-if="settings.doc" class="flex-1 flex flex-col gap-8 overflow-y-auto">
|
||||||
<div class="flex w-full">
|
<div class="flex w-full">
|
||||||
@ -16,7 +31,7 @@
|
|||||||
type="text"
|
type="text"
|
||||||
class="w-1/2"
|
class="w-1/2"
|
||||||
v-model="settings.doc.brand_name"
|
v-model="settings.doc.brand_name"
|
||||||
:label="__('Brand Name')"
|
:label="__('Brand name')"
|
||||||
/>
|
/>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
@ -107,15 +122,7 @@
|
|||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div class="flex justify-between flex-row-reverse">
|
<ErrorMessage :message="settings.save.error" />
|
||||||
<Button
|
|
||||||
variant="solid"
|
|
||||||
:label="__('Update')"
|
|
||||||
:disabled="!settings.isDirty"
|
|
||||||
@click="updateSettings"
|
|
||||||
/>
|
|
||||||
<ErrorMessage :message="settings.save.error" />
|
|
||||||
</div>
|
|
||||||
</div>
|
</div>
|
||||||
</template>
|
</template>
|
||||||
<script setup>
|
<script setup>
|
||||||
|
|||||||
@ -1,8 +1,28 @@
|
|||||||
<template>
|
<template>
|
||||||
<div class="flex h-full flex-col gap-8 p-8 text-ink-gray-9">
|
<div class="flex h-full flex-col gap-6 p-8 text-ink-gray-9">
|
||||||
<h2 class="flex gap-2 text-xl font-semibold leading-none h-5">
|
<div class="flex justify-between">
|
||||||
{{ __('Send Invites To') }}
|
<div class="flex flex-col gap-1 w-9/12">
|
||||||
</h2>
|
<h2 class="flex gap-2 text-xl font-semibold leading-none h-5">
|
||||||
|
{{ __('Send invites to') }}
|
||||||
|
</h2>
|
||||||
|
<p class="text-p-base text-ink-gray-6">
|
||||||
|
{{
|
||||||
|
__(
|
||||||
|
'Invite users to access CRM. Specify their roles to control access and permissions',
|
||||||
|
)
|
||||||
|
}}
|
||||||
|
</p>
|
||||||
|
</div>
|
||||||
|
<div class="flex item-center space-x-2 w-3/12 justify-end">
|
||||||
|
<Button
|
||||||
|
:label="__('Send Invites')"
|
||||||
|
variant="solid"
|
||||||
|
:disabled="!invitees.length"
|
||||||
|
@click="inviteByEmail.submit()"
|
||||||
|
:loading="inviteByEmail.loading"
|
||||||
|
/>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
<div class="flex-1 flex flex-col gap-8 overflow-y-auto">
|
<div class="flex-1 flex flex-col gap-8 overflow-y-auto">
|
||||||
<div>
|
<div>
|
||||||
<label class="block text-xs text-ink-gray-5 mb-1.5">
|
<label class="block text-xs text-ink-gray-5 mb-1.5">
|
||||||
@ -79,16 +99,7 @@
|
|||||||
</div>
|
</div>
|
||||||
</template>
|
</template>
|
||||||
</div>
|
</div>
|
||||||
<div class="flex justify-between items-center gap-2">
|
<ErrorMessage :message="error" />
|
||||||
<div><ErrorMessage v-if="error" :message="error" /></div>
|
|
||||||
<Button
|
|
||||||
:label="__('Send Invites')"
|
|
||||||
variant="solid"
|
|
||||||
:disabled="!invitees.length"
|
|
||||||
@click="inviteByEmail.submit()"
|
|
||||||
:loading="inviteByEmail.loading"
|
|
||||||
/>
|
|
||||||
</div>
|
|
||||||
</div>
|
</div>
|
||||||
</template>
|
</template>
|
||||||
<script setup>
|
<script setup>
|
||||||
|
|||||||
@ -1,16 +1,28 @@
|
|||||||
<template>
|
<template>
|
||||||
<div class="flex h-full flex-col gap-8">
|
<div class="flex h-full flex-col gap-6">
|
||||||
<h2
|
<div class="flex justify-between">
|
||||||
class="flex gap-2 text-xl font-semibold leading-none h-5 text-ink-gray-9"
|
<div class="flex flex-col gap-1 w-9/12">
|
||||||
>
|
<h2
|
||||||
<div>{{ title || __(doctype) }}</div>
|
class="flex gap-2 text-xl font-semibold leading-none h-5 text-ink-gray-9"
|
||||||
<Badge
|
>
|
||||||
v-if="data.isDirty"
|
{{ title || __(doctype) }}
|
||||||
:label="__('Not Saved')"
|
<Badge
|
||||||
variant="subtle"
|
v-if="data.isDirty"
|
||||||
theme="orange"
|
:label="__('Not Saved')"
|
||||||
/>
|
variant="subtle"
|
||||||
</h2>
|
theme="orange"
|
||||||
|
/>
|
||||||
|
</h2>
|
||||||
|
</div>
|
||||||
|
<div class="flex item-center space-x-2 w-3/12 justify-end">
|
||||||
|
<Button
|
||||||
|
:loading="data.save.loading"
|
||||||
|
:label="__('Update')"
|
||||||
|
variant="solid"
|
||||||
|
@click="data.save.submit()"
|
||||||
|
/>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
<div v-if="!data.get.loading" class="flex-1 overflow-y-auto">
|
<div v-if="!data.get.loading" class="flex-1 overflow-y-auto">
|
||||||
<FieldLayout
|
<FieldLayout
|
||||||
v-if="data?.doc && tabs"
|
v-if="data?.doc && tabs"
|
||||||
@ -22,17 +34,7 @@
|
|||||||
<div v-else class="flex flex-1 items-center justify-center">
|
<div v-else class="flex flex-1 items-center justify-center">
|
||||||
<Spinner class="size-8" />
|
<Spinner class="size-8" />
|
||||||
</div>
|
</div>
|
||||||
<div class="flex justify-between gap-2">
|
<ErrorMessage :message="data.save.error" />
|
||||||
<div>
|
|
||||||
<ErrorMessage class="mt-2" :message="data.save.error" />
|
|
||||||
</div>
|
|
||||||
<Button
|
|
||||||
:loading="data.save.loading"
|
|
||||||
:label="__('Update')"
|
|
||||||
variant="solid"
|
|
||||||
@click="data.save.submit()"
|
|
||||||
/>
|
|
||||||
</div>
|
|
||||||
</div>
|
</div>
|
||||||
</template>
|
</template>
|
||||||
<script setup>
|
<script setup>
|
||||||
|
|||||||
@ -1,16 +1,31 @@
|
|||||||
<template>
|
<template>
|
||||||
<div class="flex h-full flex-col gap-8 p-8">
|
<div class="flex h-full flex-col gap-6 p-8">
|
||||||
<h2
|
<div class="flex justify-between">
|
||||||
class="flex gap-2 text-xl font-semibold leading-none h-5 text-ink-gray-9"
|
<div class="flex flex-col gap-1 w-9/12">
|
||||||
>
|
<h2
|
||||||
<div>{{ __('Telephony Settings') }}</div>
|
class="flex gap-2 text-xl font-semibold leading-none h-5 text-ink-gray-9"
|
||||||
<Badge
|
>
|
||||||
v-if="twilio.isDirty || exotel.isDirty || mediumChanged"
|
{{ __('Telephony settings') }}
|
||||||
:label="__('Not Saved')"
|
<Badge
|
||||||
variant="subtle"
|
v-if="twilio.isDirty || exotel.isDirty || mediumChanged"
|
||||||
theme="orange"
|
:label="__('Not Saved')"
|
||||||
/>
|
variant="subtle"
|
||||||
</h2>
|
theme="orange"
|
||||||
|
/>
|
||||||
|
</h2>
|
||||||
|
<p class="text-p-base text-ink-gray-6">
|
||||||
|
{{ __('Configure telephony settings for your CRM') }}
|
||||||
|
</p>
|
||||||
|
</div>
|
||||||
|
<div class="flex item-center space-x-2 w-3/12 justify-end">
|
||||||
|
<Button
|
||||||
|
:loading="twilio.save.loading || exotel.save.loading"
|
||||||
|
:label="__('Update')"
|
||||||
|
variant="solid"
|
||||||
|
@click="update"
|
||||||
|
/>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
<div
|
<div
|
||||||
v-if="!twilio.get.loading || !exotel.get.loading"
|
v-if="!twilio.get.loading || !exotel.get.loading"
|
||||||
class="flex-1 flex flex-col gap-8 overflow-y-auto"
|
class="flex-1 flex flex-col gap-8 overflow-y-auto"
|
||||||
@ -58,20 +73,7 @@
|
|||||||
<div v-else class="flex flex-1 items-center justify-center">
|
<div v-else class="flex flex-1 items-center justify-center">
|
||||||
<Spinner class="size-8" />
|
<Spinner class="size-8" />
|
||||||
</div>
|
</div>
|
||||||
<div class="flex justify-between gap-2">
|
<ErrorMessage :message="twilio.save.error || exotel.save.error || error" />
|
||||||
<div>
|
|
||||||
<ErrorMessage
|
|
||||||
class="mt-2"
|
|
||||||
:message="twilio.save.error || exotel.save.error || error"
|
|
||||||
/>
|
|
||||||
</div>
|
|
||||||
<Button
|
|
||||||
:loading="twilio.save.loading || exotel.save.loading"
|
|
||||||
:label="__('Update')"
|
|
||||||
variant="solid"
|
|
||||||
@click="update"
|
|
||||||
/>
|
|
||||||
</div>
|
|
||||||
</div>
|
</div>
|
||||||
</template>
|
</template>
|
||||||
<script setup>
|
<script setup>
|
||||||
|
|||||||
@ -9,7 +9,7 @@
|
|||||||
<p class="text-p-base text-ink-gray-6">
|
<p class="text-p-base text-ink-gray-6">
|
||||||
{{
|
{{
|
||||||
__(
|
__(
|
||||||
'Manage users who can access CRM. Assign roles to control their access. Add/Remove existing users or invite new ones.',
|
'Manage CRM users by adding or inviting them, and assign roles to control their access and permissions',
|
||||||
)
|
)
|
||||||
}}
|
}}
|
||||||
</p>
|
</p>
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user