@qualityunit/liveagent-help 0.0.1 → 0.0.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/assets/ar-SA-BAGi-X54.js +1 -0
- package/dist/assets/bg-BG-BCITVy7V.js +1 -0
- package/dist/assets/bs-BA-CwieP_6Q.js +1 -0
- package/dist/assets/ca-ES-BkO3OQJp.js +1 -0
- package/dist/assets/cs-CZ-DdU8wu93.js +1 -0
- package/dist/assets/da-DK-BTDwvW9j.js +1 -0
- package/dist/assets/de-DE-IdTC_9hY.js +1 -0
- package/dist/assets/el-GR-DbTDCUnW.js +1 -0
- package/dist/assets/en-US-BiQuI_NB.js +1 -0
- package/dist/assets/en-VPmnwx-g.js +1 -0
- package/dist/assets/es-ES-C-BMis-f.js +1 -0
- package/dist/assets/et-EE-BYsL_7OC.js +1 -0
- package/dist/assets/fa-IR-DV05Ugvl.js +1 -0
- package/dist/assets/fi-FI-BxTY62gn.js +1 -0
- package/dist/assets/fil-PH-CzKKBvvx.js +1 -0
- package/dist/assets/fr-FR-CkALAUu_.js +1 -0
- package/dist/assets/he-IL-DGZ75XTm.js +1 -0
- package/dist/assets/hr-HR-CwieP_6Q.js +1 -0
- package/dist/assets/hu-HU-YnPqsV9m.js +1 -0
- package/dist/assets/id-ID-D1wNedlR.js +1 -0
- package/dist/assets/index-DMBaNfOP.js +10 -0
- package/dist/assets/index-DYty2IsF.css +1 -0
- package/dist/assets/it-IT-VhGcWe9v.js +1 -0
- package/dist/assets/ja-JP-Ce2blzX5.js +1 -0
- package/dist/assets/ko-KR-Da4QE7WU.js +1 -0
- package/dist/assets/lt-LT-Bg5Jzpit.js +1 -0
- package/dist/assets/lv-LV-FoFJ46S8.js +1 -0
- package/dist/assets/me-ME-Biy_oEN5.js +1 -0
- package/dist/assets/mk-MK-FmFgRqLi.js +1 -0
- package/dist/assets/ms-MY-BzBcFmOB.js +1 -0
- package/dist/assets/nl-NL-VNsaxY_S.js +1 -0
- package/dist/assets/no-NO-DbRgS8bY.js +1 -0
- package/dist/assets/pl-PL-BC_RNqOr.js +1 -0
- package/dist/assets/pt-BR-5RSzKrVs.js +1 -0
- package/dist/assets/ro-RO-Ds7w-arH.js +1 -0
- package/dist/assets/ru-RU-BE28ttmw.js +1 -0
- package/dist/assets/sk-SK-CjyQlNTr.js +1 -0
- package/dist/assets/sl-SI-Cgcni0mk.js +1 -0
- package/dist/assets/sr-CS-Biy_oEN5.js +1 -0
- package/dist/assets/sv-SE-C_mID3a-.js +1 -0
- package/dist/assets/th-TH-bbKk5NF4.js +1 -0
- package/dist/assets/tl-PH-DTTjGOfJ.js +1 -0
- package/dist/assets/tr-TR-BtU8XX02.js +1 -0
- package/dist/assets/uk-UA-C0wZTWK2.js +1 -0
- package/dist/assets/vi-VN-Bw_8ONxP.js +1 -0
- package/dist/assets/vls-BE-DynNaS0c.js +1 -0
- package/dist/assets/zh-CN-CD3mCoN0.js +1 -0
- package/dist/assets/zh-TW-B02B3zJt.js +1 -0
- package/{index.html → dist/index.html} +2 -3
- package/package.json +4 -1
- package/.github/workflows/npm-check-help.yml +0 -13
- package/.github/workflows/npm-publish-help.yml +0 -48
- package/crowdin.yml +0 -3
- package/src/app.css +0 -27
- package/src/lib/HelpCenter.svelte +0 -280
- package/src/lib/HelpCenterWrapper.svelte +0 -48
- package/src/lib/Themes/Dark.js +0 -189
- package/src/lib/Themes/Light.js +0 -189
- package/src/lib/Themes/palette.json +0 -175
- package/src/lib/components/common/AgentsTag.svelte +0 -73
- package/src/lib/components/common/Button.svelte +0 -60
- package/src/lib/components/common/Heading.svelte +0 -21
- package/src/lib/components/common/Link.svelte +0 -27
- package/src/lib/components/common/Paragraph.svelte +0 -30
- package/src/lib/components/common/ProgressTag.svelte +0 -33
- package/src/lib/components/common/ShortcutKey.svelte +0 -39
- package/src/lib/components/common/ShortcutKeys.svelte +0 -35
- package/src/lib/components/common/ThemeSwitcher.svelte +0 -24
- package/src/lib/components/containers/Card.svelte +0 -80
- package/src/lib/components/containers/ContactButton.svelte +0 -64
- package/src/lib/components/containers/ContactRow.svelte +0 -59
- package/src/lib/components/containers/LinkCard.svelte +0 -136
- package/src/lib/components/containers/Office.svelte +0 -44
- package/src/lib/components/containers/Page.svelte +0 -36
- package/src/lib/components/containers/Point.svelte +0 -43
- package/src/lib/components/containers/Tooltip.svelte +0 -143
- package/src/lib/components/containers/Widget.svelte +0 -79
- package/src/lib/components/nav/Menu.svelte +0 -283
- package/src/lib/components/nav/Progress.svelte +0 -249
- package/src/lib/pages/ContactUs.svelte +0 -372
- package/src/lib/pages/ImproveLaSkills.svelte +0 -117
- package/src/lib/pages/Shortcuts.svelte +0 -334
- package/src/lib/pages/steps/AddAgents.svelte +0 -175
- package/src/lib/pages/steps/AddDepartments.svelte +0 -81
- package/src/lib/pages/steps/ConfigureCustomerPortal.svelte +0 -171
- package/src/lib/pages/steps/ConnectEmailAccounts.svelte +0 -204
- package/src/lib/pages/steps/ConnectMessagingApps.svelte +0 -86
- package/src/lib/pages/steps/ConnectSocialMedia.svelte +0 -124
- package/src/lib/pages/steps/CreateCallCenter.svelte +0 -170
- package/src/lib/pages/steps/CreateContactWidget.svelte +0 -131
- package/src/lib/pages/steps/LearnTheBasics.svelte +0 -77
- package/src/lib/pages/steps/Step.svelte +0 -223
- package/src/lib/pages/steps/Summary.svelte +0 -106
- package/src/lib/utils/MockBackend.ts +0 -202
- package/src/lib/utils/menuStore.ts +0 -11
- package/src/lib/utils/progressStore.ts +0 -71
- package/src/lib/utils/themeStore.ts +0 -126
- package/src/lib/utils/types.ts +0 -50
- package/src/locales/ar-SA.json +0 -5
- package/src/locales/bg-BG.json +0 -5
- package/src/locales/bs-BA.json +0 -5
- package/src/locales/ca-ES.json +0 -3
- package/src/locales/cs-CZ.json +0 -5
- package/src/locales/da-DK.json +0 -5
- package/src/locales/de-DE.json +0 -5
- package/src/locales/el-GR.json +0 -5
- package/src/locales/en-US.json +0 -5
- package/src/locales/en.json +0 -16
- package/src/locales/es-ES.json +0 -5
- package/src/locales/et-EE.json +0 -5
- package/src/locales/fa-IR.json +0 -5
- package/src/locales/fi-FI.json +0 -5
- package/src/locales/fil-PH.json +0 -5
- package/src/locales/fr-FR.json +0 -5
- package/src/locales/he-IL.json +0 -3
- package/src/locales/hr-HR.json +0 -5
- package/src/locales/hu-HU.json +0 -5
- package/src/locales/id-ID.json +0 -5
- package/src/locales/it-IT.json +0 -5
- package/src/locales/ja-JP.json +0 -5
- package/src/locales/ko-KR.json +0 -4
- package/src/locales/lt-LT.json +0 -5
- package/src/locales/lv-LV.json +0 -5
- package/src/locales/me-ME.json +0 -5
- package/src/locales/mk-MK.json +0 -1
- package/src/locales/ms-MY.json +0 -3
- package/src/locales/nl-NL.json +0 -5
- package/src/locales/no-NO.json +0 -5
- package/src/locales/pl-PL.json +0 -5
- package/src/locales/pt-BR.json +0 -15
- package/src/locales/ro-RO.json +0 -5
- package/src/locales/ru-RU.json +0 -5
- package/src/locales/sk-SK.json +0 -5
- package/src/locales/sl-SI.json +0 -5
- package/src/locales/sr-CS.json +0 -5
- package/src/locales/sv-SE.json +0 -5
- package/src/locales/th-TH.json +0 -3
- package/src/locales/tl-PH.json +0 -5
- package/src/locales/tr-TR.json +0 -5
- package/src/locales/uk-UA.json +0 -4
- package/src/locales/vi-VN.json +0 -5
- package/src/locales/vls-BE.json +0 -3
- package/src/locales/zh-CN.json +0 -5
- package/src/locales/zh-TW.json +0 -5
- package/src/main.ts +0 -1
- package/src/vite-env.d.ts +0 -2
- package/svelte.config.js +0 -7
- package/tsconfig.json +0 -21
- package/tsconfig.node.json +0 -9
- package/vite.config.js +0 -16
- /package/{public → dist}/assets/icons/add-agents.svg +0 -0
- /package/{public → dist}/assets/icons/add-chat-button.svg +0 -0
- /package/{public → dist}/assets/icons/add-departments.svg +0 -0
- /package/{public → dist}/assets/icons/add-voice-support.svg +0 -0
- /package/{public → dist}/assets/icons/admin.svg +0 -0
- /package/{public → dist}/assets/icons/arrow-right.svg +0 -0
- /package/{public → dist}/assets/icons/at-symbol.svg +0 -0
- /package/{public → dist}/assets/icons/brush.svg +0 -0
- /package/{public → dist}/assets/icons/calls.svg +0 -0
- /package/{public → dist}/assets/icons/chat-with-us.svg +0 -0
- /package/{public → dist}/assets/icons/chat_buttons.svg +0 -0
- /package/{public → dist}/assets/icons/checkmark.svg +0 -0
- /package/{public → dist}/assets/icons/connect-email-account.svg +0 -0
- /package/{public → dist}/assets/icons/connect-messaging-apps.svg +0 -0
- /package/{public → dist}/assets/icons/connect-social-media.svg +0 -0
- /package/{public → dist}/assets/icons/edit.svg +0 -0
- /package/{public → dist}/assets/icons/facebook_logo.svg +0 -0
- /package/{public → dist}/assets/icons/form.svg +0 -0
- /package/{public → dist}/assets/icons/goal.svg +0 -0
- /package/{public → dist}/assets/icons/incoming.svg +0 -0
- /package/{public → dist}/assets/icons/info.svg +0 -0
- /package/{public → dist}/assets/icons/instagram_logo.svg +0 -0
- /package/{public → dist}/assets/icons/invitations.svg +0 -0
- /package/{public → dist}/assets/icons/key_command.svg +0 -0
- /package/{public → dist}/assets/icons/key_down.svg +0 -0
- /package/{public → dist}/assets/icons/key_left_click.svg +0 -0
- /package/{public → dist}/assets/icons/key_middle_click.svg +0 -0
- /package/{public → dist}/assets/icons/key_shift.svg +0 -0
- /package/{public → dist}/assets/icons/key_up.svg +0 -0
- /package/{public → dist}/assets/icons/learn-the-basics.svg +0 -0
- /package/{public → dist}/assets/icons/learn.svg +0 -0
- /package/{public → dist}/assets/icons/messenger_logo.svg +0 -0
- /package/{public → dist}/assets/icons/next.svg +0 -0
- /package/{public → dist}/assets/icons/open_in_new.svg +0 -0
- /package/{public → dist}/assets/icons/outgoing.svg +0 -0
- /package/{public → dist}/assets/icons/owner.svg +0 -0
- /package/{public → dist}/assets/icons/palette.svg +0 -0
- /package/{public → dist}/assets/icons/progress-submenu.svg +0 -0
- /package/{public → dist}/assets/icons/progress.svg +0 -0
- /package/{public → dist}/assets/icons/questionmark.svg +0 -0
- /package/{public → dist}/assets/icons/resolve.svg +0 -0
- /package/{public → dist}/assets/icons/rocket.svg +0 -0
- /package/{public → dist}/assets/icons/sent.svg +0 -0
- /package/{public → dist}/assets/icons/setup-customer-portal.svg +0 -0
- /package/{public → dist}/assets/icons/shortcuts.svg +0 -0
- /package/{public → dist}/assets/icons/show.svg +0 -0
- /package/{public → dist}/assets/icons/smiley-face.svg +0 -0
- /package/{public → dist}/assets/icons/ticket.svg +0 -0
- /package/{public → dist}/assets/icons/unfinished.svg +0 -0
- /package/{public → dist}/assets/icons/viber_logo.svg +0 -0
- /package/{public → dist}/assets/icons/videocall.svg +0 -0
- /package/{public → dist}/assets/icons/warning.svg +0 -0
- /package/{public → dist}/assets/icons/whatsapp_logo.svg +0 -0
- /package/{public → dist}/assets/icons/winky-face.svg +0 -0
- /package/{public → dist}/assets/icons/x_logo.svg +0 -0
- /package/{public → dist}/assets/icons/youtube_logo.svg +0 -0
- /package/{public → dist}/assets/images/all-done.svg +0 -0
- /package/{public → dist}/assets/images/bratislava.png +0 -0
- /package/{public → dist}/assets/images/card_background.svg +0 -0
- /package/{public → dist}/assets/images/configure_customer_portal.svg +0 -0
- /package/{public → dist}/assets/images/connect-email-accounts.svg +0 -0
- /package/{public → dist}/assets/images/connect-social-media.svg +0 -0
- /package/{public → dist}/assets/images/contact-widgets.svg +0 -0
- /package/{public → dist}/assets/images/create-chat-button.svg +0 -0
- /package/{public → dist}/assets/images/create_call_center.svg +0 -0
- /package/{public → dist}/assets/images/departments.svg +0 -0
- /package/{public → dist}/assets/images/facebook-background.png +0 -0
- /package/{public → dist}/assets/images/instagram-background.png +0 -0
- /package/{public → dist}/assets/images/kyiv.png +0 -0
- /package/{public → dist}/assets/images/liveagent.svg +0 -0
- /package/{public → dist}/assets/images/new-york.png +0 -0
- /package/{public → dist}/assets/images/reply_background.svg +0 -0
- /package/{public → dist}/assets/images/status-page-background.png +0 -0
- /package/{public → dist}/assets/images/support-portal-background.png +0 -0
- /package/{public → dist}/assets/images/tags.svg +0 -0
- /package/{public → dist}/assets/images/x-background.png +0 -0
- /package/{public → dist}/assets/images/youtube-background.png +0 -0
@@ -1,106 +0,0 @@
|
|
1
|
-
<script>
|
2
|
-
import Progress from "../../components/nav/Progress.svelte";
|
3
|
-
import Heading from "../../components/common/Heading.svelte";
|
4
|
-
import Paragraph from "../../components/common/Paragraph.svelte";
|
5
|
-
import Highlight from "../../components/common/Link.svelte";
|
6
|
-
</script>
|
7
|
-
|
8
|
-
<div class="Summary">
|
9
|
-
<Progress />
|
10
|
-
<div class="wrapper">
|
11
|
-
<section>
|
12
|
-
<img src='public/assets/images/all-done.svg' alt="all done">
|
13
|
-
<Heading text="You are all set! 😎" />
|
14
|
-
<Paragraph text="You've successfully completed all the steps in setting up your LiveAgent Helpdesk software." />
|
15
|
-
<Paragraph text="Make sure to experiment with all the various features and tools available. Remember, the key to success with software like this is to make full use of its capabilities. Stay curious, innovative, and always ready for meaningful customer interactions.We're thrilled to see how this platform will help you boost your customer interactions, improve response times, and enhance overall customer satisfaction." />
|
16
|
-
<Paragraph text="In case you need any assistance or have queries, our support is just a click away. Never hesitate to " >
|
17
|
-
<Highlight text="reach out" punctuation="!" href="/#/contact-us" />
|
18
|
-
</Paragraph>
|
19
|
-
</section>
|
20
|
-
<div class="Block Shortcuts">
|
21
|
-
<h3 class="heading">Shortcuts</h3>
|
22
|
-
<Paragraph text="Would you like to navigate through LiveAgent more quickly and efficiently? Familiarizing yourself with available shortcuts will certainly speed up your tasks and enhance your productivity. Visit our dedicated shortcuts page. "/>
|
23
|
-
<Highlight text="Check out shortcuts" href="/#/windows-shortcuts"/>
|
24
|
-
</div>
|
25
|
-
<div class="Block Secrets">
|
26
|
-
<h3 class="heading">Discover the secrets of LiveAgent</h3>
|
27
|
-
<Paragraph text="And for those eager to delve deeper and truly master LiveAgent, we've gathered a collection of how-to articles and guides covering a wide range of topics. So go ahead and start exploring." />
|
28
|
-
<Highlight text="Improve your LiveAgent skills" href="/#/improve-la-skills"/>
|
29
|
-
</div>
|
30
|
-
</div>
|
31
|
-
</div>
|
32
|
-
|
33
|
-
<style>
|
34
|
-
.Summary {
|
35
|
-
width: 100%;
|
36
|
-
}
|
37
|
-
|
38
|
-
.wrapper {
|
39
|
-
margin-top: 12px;
|
40
|
-
padding: 20px 36px;
|
41
|
-
background-color: var(--background-secondary);
|
42
|
-
border: 1px solid var(--border-color-primary);
|
43
|
-
overflow-y: auto;
|
44
|
-
border-radius: 6px;
|
45
|
-
}
|
46
|
-
|
47
|
-
.Block {
|
48
|
-
margin-top: 10px;
|
49
|
-
padding: 16px 24px;
|
50
|
-
border-radius: 6px;
|
51
|
-
}
|
52
|
-
|
53
|
-
.Shortcuts {
|
54
|
-
background-color: var(--event-yellow-surface);
|
55
|
-
}
|
56
|
-
|
57
|
-
.Secrets {
|
58
|
-
background-color: var(--event-pink-surface);
|
59
|
-
}
|
60
|
-
|
61
|
-
.heading {
|
62
|
-
color: var(--text-color-primary);
|
63
|
-
margin-top: 0;
|
64
|
-
font-family: Roboto;
|
65
|
-
font-size: 13px;
|
66
|
-
font-weight: 700;
|
67
|
-
line-height: 20px;
|
68
|
-
}
|
69
|
-
|
70
|
-
.heading::before {
|
71
|
-
content: "";
|
72
|
-
display: inline-block;
|
73
|
-
margin-right: 8px;
|
74
|
-
margin-top: -3px;
|
75
|
-
height: 16px;
|
76
|
-
width: 16px;
|
77
|
-
background-size: contain;
|
78
|
-
background-repeat: no-repeat;
|
79
|
-
vertical-align: middle;
|
80
|
-
}
|
81
|
-
|
82
|
-
.Shortcuts .heading::before {
|
83
|
-
content: url("public/assets/icons/shortcuts.svg");
|
84
|
-
}
|
85
|
-
|
86
|
-
.Secrets .heading::before {
|
87
|
-
content: url("public/assets/icons/learn.svg");
|
88
|
-
}
|
89
|
-
|
90
|
-
section {
|
91
|
-
padding: 0 24px;
|
92
|
-
margin-bottom: 24px;
|
93
|
-
}
|
94
|
-
|
95
|
-
img {
|
96
|
-
width: 100%;
|
97
|
-
margin: 24px 0;
|
98
|
-
}
|
99
|
-
|
100
|
-
@media (min-width: 768px) {
|
101
|
-
.Summary {
|
102
|
-
max-width: 615px;
|
103
|
-
}
|
104
|
-
}
|
105
|
-
</style>
|
106
|
-
|
@@ -1,202 +0,0 @@
|
|
1
|
-
let mockBackendState = {
|
2
|
-
agentManaged: false,
|
3
|
-
departmentManaged: false,
|
4
|
-
incomingEmailConnected: false,
|
5
|
-
outgoingEmailConnected: false,
|
6
|
-
facebookConnected: false,
|
7
|
-
instagramConnected: false,
|
8
|
-
twitterConnected: false,
|
9
|
-
whatsappConnected: false,
|
10
|
-
viberConnected: false,
|
11
|
-
chatButtonCreated: false,
|
12
|
-
chatInvitationCreated: false,
|
13
|
-
contactFormCreated: false,
|
14
|
-
callButtonCreated: false,
|
15
|
-
videoCallButtonCreated: false,
|
16
|
-
callCenterConnected: false,
|
17
|
-
themeChanged: false,
|
18
|
-
colorsChanged: false,
|
19
|
-
articleCreated: false,
|
20
|
-
KBCreated: false
|
21
|
-
};
|
22
|
-
|
23
|
-
|
24
|
-
function logStateChange(feature: string, result: boolean): void {
|
25
|
-
console.log(` ${feature} was changed to: ${result ? 'true' : 'false'}`);
|
26
|
-
}
|
27
|
-
|
28
|
-
export async function isAgentManaged(result?: boolean): Promise<{completionStatus: boolean}> {
|
29
|
-
await new Promise(resolve => setTimeout(resolve, 500));
|
30
|
-
if (result !== undefined) {
|
31
|
-
mockBackendState.agentManaged = result;
|
32
|
-
logStateChange('agent managed', result);
|
33
|
-
}
|
34
|
-
return { completionStatus: mockBackendState.agentManaged }
|
35
|
-
}
|
36
|
-
|
37
|
-
export async function isDepartmentManaged(result?: boolean): Promise<{completionStatus: boolean}> {
|
38
|
-
await new Promise(resolve => setTimeout(resolve, 500));
|
39
|
-
if (result !== undefined) {
|
40
|
-
mockBackendState.departmentManaged = result;
|
41
|
-
logStateChange('department managed', result);
|
42
|
-
}
|
43
|
-
return { completionStatus: mockBackendState.departmentManaged }
|
44
|
-
}
|
45
|
-
|
46
|
-
export async function isIncomingEmailAccConnected(result?: boolean): Promise<{completionStatus: boolean}> {
|
47
|
-
await new Promise(resolve => setTimeout(resolve, 500));
|
48
|
-
if (result !== undefined) {
|
49
|
-
mockBackendState.incomingEmailConnected = result;
|
50
|
-
logStateChange('incoming email', result);
|
51
|
-
}
|
52
|
-
return { completionStatus: mockBackendState.incomingEmailConnected }
|
53
|
-
}
|
54
|
-
|
55
|
-
export async function isOutgoingEmailAccConnected(result?: boolean): Promise<{completionStatus: boolean}> {
|
56
|
-
await new Promise(resolve => setTimeout(resolve, 500));
|
57
|
-
if (result !== undefined) {
|
58
|
-
mockBackendState.outgoingEmailConnected = result;
|
59
|
-
logStateChange('outgoing email', result);
|
60
|
-
}
|
61
|
-
return { completionStatus: mockBackendState.outgoingEmailConnected }
|
62
|
-
}
|
63
|
-
|
64
|
-
export async function isFacebookConnected(result?: boolean): Promise<{completionStatus: boolean}> {
|
65
|
-
await new Promise(resolve => setTimeout(resolve, 500));
|
66
|
-
if (result !== undefined) {
|
67
|
-
mockBackendState.facebookConnected = result;
|
68
|
-
logStateChange('facebook', result);
|
69
|
-
}
|
70
|
-
return { completionStatus: mockBackendState.facebookConnected }
|
71
|
-
}
|
72
|
-
|
73
|
-
export async function isInstagramConnected(result?: boolean): Promise<{completionStatus: boolean}> {
|
74
|
-
await new Promise(resolve => setTimeout(resolve, 500));
|
75
|
-
if (result !== undefined) {
|
76
|
-
mockBackendState.instagramConnected = result;
|
77
|
-
logStateChange('instagram', result);
|
78
|
-
}
|
79
|
-
return { completionStatus: mockBackendState.instagramConnected }
|
80
|
-
}
|
81
|
-
|
82
|
-
export async function isTwitterConnected(result?: boolean): Promise<{completionStatus: boolean}> {
|
83
|
-
await new Promise(resolve => setTimeout(resolve, 500));
|
84
|
-
if (result !== undefined) {
|
85
|
-
mockBackendState.twitterConnected = result;
|
86
|
-
logStateChange('twitter', result);
|
87
|
-
}
|
88
|
-
return { completionStatus: mockBackendState.twitterConnected }
|
89
|
-
}
|
90
|
-
|
91
|
-
export async function isWhatsappConnected(result?: boolean): Promise<{completionStatus: boolean}> {
|
92
|
-
await new Promise(resolve => setTimeout(resolve, 500));
|
93
|
-
if (result !== undefined) {
|
94
|
-
mockBackendState.whatsappConnected = result;
|
95
|
-
logStateChange('whatsapp', result);
|
96
|
-
}
|
97
|
-
return { completionStatus: mockBackendState.whatsappConnected }
|
98
|
-
}
|
99
|
-
|
100
|
-
export async function isViberConnected(result?: boolean): Promise<{completionStatus: boolean}> {
|
101
|
-
await new Promise(resolve => setTimeout(resolve, 500));
|
102
|
-
if (result !== undefined) {
|
103
|
-
mockBackendState.viberConnected = result;
|
104
|
-
logStateChange('viber', result);
|
105
|
-
}
|
106
|
-
return { completionStatus: mockBackendState.viberConnected }
|
107
|
-
}
|
108
|
-
|
109
|
-
export async function isChatButtonCreated(result?: boolean): Promise<{completionStatus: boolean}> {
|
110
|
-
await new Promise(resolve => setTimeout(resolve, 500));
|
111
|
-
if (result === true) {
|
112
|
-
mockBackendState.chatButtonCreated = result;
|
113
|
-
logStateChange('chat button', result);
|
114
|
-
}
|
115
|
-
return { completionStatus: mockBackendState.chatButtonCreated };
|
116
|
-
}
|
117
|
-
|
118
|
-
export async function isChatInvitationCreated(result?: boolean): Promise<{completionStatus: boolean}> {
|
119
|
-
await new Promise(resolve => setTimeout(resolve, 500));
|
120
|
-
if (result === true) {
|
121
|
-
mockBackendState.chatInvitationCreated = result;
|
122
|
-
logStateChange('chat invitation', result);
|
123
|
-
}
|
124
|
-
return { completionStatus: mockBackendState.chatInvitationCreated };
|
125
|
-
}
|
126
|
-
|
127
|
-
export async function isContactFormCreated(result?: boolean): Promise<{completionStatus: boolean}> {
|
128
|
-
await new Promise(resolve => setTimeout(resolve, 500));
|
129
|
-
if (result === true) {
|
130
|
-
mockBackendState.contactFormCreated = result;
|
131
|
-
logStateChange('contact form', result);
|
132
|
-
}
|
133
|
-
return { completionStatus: mockBackendState.contactFormCreated };
|
134
|
-
}
|
135
|
-
|
136
|
-
export async function isCallButtonCreated(result?: boolean): Promise<{completionStatus: boolean}> {
|
137
|
-
await new Promise(resolve => setTimeout(resolve, 500));
|
138
|
-
if (result === true) {
|
139
|
-
mockBackendState.callButtonCreated = result;
|
140
|
-
logStateChange('call button', result);
|
141
|
-
}
|
142
|
-
return { completionStatus: mockBackendState.callButtonCreated };
|
143
|
-
}
|
144
|
-
|
145
|
-
export async function isVideoCallButtonCreated(result?: boolean): Promise<{completionStatus: boolean}> {
|
146
|
-
await new Promise(resolve => setTimeout(resolve, 500));
|
147
|
-
if (result === true) {
|
148
|
-
mockBackendState.videoCallButtonCreated = result;
|
149
|
-
logStateChange('video call button', result);
|
150
|
-
}
|
151
|
-
return { completionStatus: mockBackendState.videoCallButtonCreated };
|
152
|
-
}
|
153
|
-
|
154
|
-
export async function isCallCenterConnected(result?: boolean): Promise<{completionStatus: boolean}> {
|
155
|
-
await new Promise(resolve => setTimeout(resolve, 500));
|
156
|
-
if (result !== undefined) {
|
157
|
-
mockBackendState.callCenterConnected = result;
|
158
|
-
logStateChange('call center', result);
|
159
|
-
}
|
160
|
-
return { completionStatus: mockBackendState.callCenterConnected };
|
161
|
-
}
|
162
|
-
|
163
|
-
export async function isThemeChanged(result?: boolean): Promise<{completionStatus: boolean}> {
|
164
|
-
await new Promise(resolve => setTimeout(resolve, 500));
|
165
|
-
if (result !== undefined) {
|
166
|
-
mockBackendState.themeChanged = result;
|
167
|
-
logStateChange('theme', result);
|
168
|
-
}
|
169
|
-
return { completionStatus: mockBackendState.themeChanged };
|
170
|
-
}
|
171
|
-
|
172
|
-
export async function isColorChanged(result?: boolean): Promise<{completionStatus: boolean}> {
|
173
|
-
await new Promise(resolve => setTimeout(resolve, 500));
|
174
|
-
if (result !== undefined) {
|
175
|
-
mockBackendState.colorsChanged = result;
|
176
|
-
logStateChange('color', result);
|
177
|
-
}
|
178
|
-
return { completionStatus: mockBackendState.colorsChanged };
|
179
|
-
}
|
180
|
-
|
181
|
-
export async function isArticleCreated(result?: boolean): Promise<{completionStatus: boolean}> {
|
182
|
-
await new Promise(resolve => setTimeout(resolve, 500));
|
183
|
-
if (result !== undefined) {
|
184
|
-
mockBackendState.articleCreated = result;
|
185
|
-
logStateChange('article', result);
|
186
|
-
}
|
187
|
-
return { completionStatus: mockBackendState.articleCreated };
|
188
|
-
}
|
189
|
-
|
190
|
-
export async function isKBCreated(result?: boolean): Promise<{completionStatus: boolean}> {
|
191
|
-
await new Promise(resolve => setTimeout(resolve, 500));
|
192
|
-
if (result !== undefined) {
|
193
|
-
mockBackendState.KBCreated = result;
|
194
|
-
logStateChange('Knowledge base', result);
|
195
|
-
}
|
196
|
-
return { completionStatus: mockBackendState.KBCreated };
|
197
|
-
}
|
198
|
-
|
199
|
-
export async function getBuildInEmail(): Promise<{message: string}> {
|
200
|
-
await new Promise(resolve => setTimeout(resolve, 1000));
|
201
|
-
return { message: "email@ladesk.com" };
|
202
|
-
}
|
@@ -1,11 +0,0 @@
|
|
1
|
-
import {writable} from "svelte/store";
|
2
|
-
|
3
|
-
export const isMenuOpened = writable<boolean>(false);
|
4
|
-
|
5
|
-
export function changeMenuOpenStatus(status: boolean | undefined = undefined): void {
|
6
|
-
if (status === undefined) {
|
7
|
-
isMenuOpened.update((value: boolean) => !value);
|
8
|
-
return;
|
9
|
-
}
|
10
|
-
isMenuOpened.set(status);
|
11
|
-
}
|
@@ -1,71 +0,0 @@
|
|
1
|
-
import {type Writable, writable, get} from 'svelte/store';
|
2
|
-
import { push } from 'svelte-spa-router';
|
3
|
-
|
4
|
-
interface Step {
|
5
|
-
path: string;
|
6
|
-
state: 'c' | 'u' | 's'; // c = completed, u = unfinished, s = skipped
|
7
|
-
}
|
8
|
-
|
9
|
-
function createProgressStore() {
|
10
|
-
const savedState: string | null = localStorage.getItem('LA_GettingStartedProgress');
|
11
|
-
const initialValue: Step[] = savedState ? JSON.parse(savedState) : [];
|
12
|
-
const { subscribe, set, update } = writable<Step[]>(initialValue);
|
13
|
-
|
14
|
-
function useLocalStorage(): void {
|
15
|
-
subscribe((newValue: Step[]): void => {
|
16
|
-
console.log('Updated progress:', newValue);
|
17
|
-
localStorage.setItem('LA_GettingStartedProgress', JSON.stringify(newValue));
|
18
|
-
});
|
19
|
-
}
|
20
|
-
|
21
|
-
useLocalStorage();
|
22
|
-
|
23
|
-
return { subscribe, set, update };
|
24
|
-
}
|
25
|
-
|
26
|
-
export const progress = createProgressStore();
|
27
|
-
export const hideGettingStarted: Writable<boolean> = writable<boolean>(false);
|
28
|
-
|
29
|
-
function updateStepState(path: string, newState: Step['state']): void {
|
30
|
-
progress.update((steps: Step[]) => {
|
31
|
-
const index: number = steps.findIndex(step => step.path === path);
|
32
|
-
if (index !== -1) {
|
33
|
-
steps[index].state = newState;
|
34
|
-
}
|
35
|
-
return steps;
|
36
|
-
});
|
37
|
-
goToNextStep();
|
38
|
-
}
|
39
|
-
|
40
|
-
export function goToNextStep(): void {
|
41
|
-
const steps: Step[] = get(progress);
|
42
|
-
const firstIncompleteIndex: number = steps.findIndex(step => step.state === 'u');
|
43
|
-
if (firstIncompleteIndex !== -1) {
|
44
|
-
const firstIncompletePath: string = steps[firstIncompleteIndex].path;
|
45
|
-
push(firstIncompletePath);
|
46
|
-
} else {
|
47
|
-
const firstSkippedIndex: number = steps.findIndex(step => step.state === 's');
|
48
|
-
if (firstSkippedIndex !== -1) {
|
49
|
-
const firstSkippedPath: string = steps[firstSkippedIndex].path;
|
50
|
-
push(firstSkippedPath);
|
51
|
-
} else {
|
52
|
-
push('/summary');
|
53
|
-
}
|
54
|
-
}
|
55
|
-
}
|
56
|
-
|
57
|
-
export function areSteps0To7Completed(): boolean {
|
58
|
-
let result: boolean = false;
|
59
|
-
progress.subscribe((steps: Step[]): void => {
|
60
|
-
result = steps.slice(0, 7).every(step => step.state === 'c');
|
61
|
-
})();
|
62
|
-
return result;
|
63
|
-
}
|
64
|
-
|
65
|
-
export function skipStep(path: string): void {
|
66
|
-
updateStepState(path, 's');
|
67
|
-
}
|
68
|
-
|
69
|
-
export function completeStep(path: string): void {
|
70
|
-
updateStepState(path, 'c');
|
71
|
-
}
|
@@ -1,126 +0,0 @@
|
|
1
|
-
import { derived, type Readable, type Writable, writable } from 'svelte/store';
|
2
|
-
import Dark from "../Themes/Dark";
|
3
|
-
import Light from "../Themes/Light";
|
4
|
-
|
5
|
-
export const darkThemeEnabled: Writable<boolean> = writable(false);
|
6
|
-
|
7
|
-
export const currentTheme: Readable<Theme> = derived(
|
8
|
-
darkThemeEnabled,
|
9
|
-
($darkModeEnabled: boolean) => $darkModeEnabled ? Dark : Light
|
10
|
-
);
|
11
|
-
|
12
|
-
type WhiteOpacityKeys = "20" | "40" | "60";
|
13
|
-
type OtherEventKeys = {
|
14
|
-
opacity?: string;
|
15
|
-
primary: string;
|
16
|
-
secondary: string;
|
17
|
-
stroke: string;
|
18
|
-
surfacePrimary: string;
|
19
|
-
surfaceSecondary: string;
|
20
|
-
text?: string;
|
21
|
-
};
|
22
|
-
|
23
|
-
interface Events {
|
24
|
-
blue: OtherEventKeys;
|
25
|
-
callChat: OtherEventKeys;
|
26
|
-
coral: OtherEventKeys;
|
27
|
-
green: OtherEventKeys;
|
28
|
-
grey: OtherEventKeys;
|
29
|
-
orange: OtherEventKeys;
|
30
|
-
pink: OtherEventKeys;
|
31
|
-
purple: OtherEventKeys;
|
32
|
-
red: OtherEventKeys;
|
33
|
-
whiteOpacity: { [key in WhiteOpacityKeys]: string };
|
34
|
-
yellow: OtherEventKeys;
|
35
|
-
}
|
36
|
-
|
37
|
-
interface Theme {
|
38
|
-
borderDivider: {
|
39
|
-
primary: string;
|
40
|
-
secondary: string;
|
41
|
-
tertiary: string;
|
42
|
-
};
|
43
|
-
buttonsSwitchesTabs: {
|
44
|
-
borderless: string;
|
45
|
-
borderlessHoverActive: string;
|
46
|
-
darkGrey: string;
|
47
|
-
darkGreyHoverActive: string;
|
48
|
-
callChat: {
|
49
|
-
borderless: string;
|
50
|
-
borderlessHoverActive: string;
|
51
|
-
red: string;
|
52
|
-
redHover: string;
|
53
|
-
};
|
54
|
-
primaryButtons: {
|
55
|
-
active: string;
|
56
|
-
blue: string;
|
57
|
-
blueDisabled: string;
|
58
|
-
blueHoverClick: string;
|
59
|
-
borderless: string;
|
60
|
-
grey: string;
|
61
|
-
greyHoverClick: string;
|
62
|
-
};
|
63
|
-
textsIcons: {
|
64
|
-
buttonTextIconsBlack: string;
|
65
|
-
buttonTextIconsBlue: string;
|
66
|
-
buttonTextIconsHover: string;
|
67
|
-
buttonTextIconsPrimary: string;
|
68
|
-
buttonTextIconsPrimaryDisabled: string;
|
69
|
-
buttonTextIconsSecondary: string;
|
70
|
-
buttonTextIconsSecondaryDisabled: string;
|
71
|
-
};
|
72
|
-
};
|
73
|
-
events: Events;
|
74
|
-
notifications: {
|
75
|
-
greenPrimary: string;
|
76
|
-
greenSecondary: string;
|
77
|
-
redPrimary: string;
|
78
|
-
redSecondary: string;
|
79
|
-
surfacePrimary: string;
|
80
|
-
surfaceSecondary: string;
|
81
|
-
textIcons: string;
|
82
|
-
};
|
83
|
-
surface: {
|
84
|
-
behindPopups: string;
|
85
|
-
hover: string;
|
86
|
-
primary: string;
|
87
|
-
replySection: string;
|
88
|
-
secondary: string;
|
89
|
-
tertiary: string;
|
90
|
-
};
|
91
|
-
systemTags: {
|
92
|
-
blue: string;
|
93
|
-
coral: string;
|
94
|
-
green: string;
|
95
|
-
greyAnswered: string;
|
96
|
-
greyEmpty: string;
|
97
|
-
greyThat150: string;
|
98
|
-
greyToDo: string;
|
99
|
-
orangeNew: string;
|
100
|
-
pink: string;
|
101
|
-
purplePostponed: string;
|
102
|
-
redOverdue: string;
|
103
|
-
yellowOpen: string;
|
104
|
-
};
|
105
|
-
textsIcons: {
|
106
|
-
blue: string;
|
107
|
-
blueHover: string;
|
108
|
-
orange: string;
|
109
|
-
orangeHover: string;
|
110
|
-
primary: string;
|
111
|
-
primaryHover: string;
|
112
|
-
secondary: string;
|
113
|
-
secondaryHover: string;
|
114
|
-
white: string;
|
115
|
-
whiteHover: string;
|
116
|
-
};
|
117
|
-
toSolve: {
|
118
|
-
icon: string;
|
119
|
-
iconHover: string;
|
120
|
-
orange: string;
|
121
|
-
orangeHover: string;
|
122
|
-
stroke: string;
|
123
|
-
surfaceWhite: string;
|
124
|
-
text: string;
|
125
|
-
};
|
126
|
-
};
|
package/src/lib/utils/types.ts
DELETED
@@ -1,50 +0,0 @@
|
|
1
|
-
export interface ChildRoute {
|
2
|
-
name: string;
|
3
|
-
path: string;
|
4
|
-
component: any;
|
5
|
-
completed: boolean;
|
6
|
-
}
|
7
|
-
|
8
|
-
export interface Route {
|
9
|
-
name: string;
|
10
|
-
path: string;
|
11
|
-
component: any
|
12
|
-
children?: ChildRoute[];
|
13
|
-
}
|
14
|
-
|
15
|
-
export interface WidgetTypeInterface {
|
16
|
-
id: string;
|
17
|
-
heading: string;
|
18
|
-
text: string;
|
19
|
-
iconPath: string;
|
20
|
-
buttonAction: (completed?: boolean) => Promise<{ completionStatus: boolean }>;
|
21
|
-
redirectPath: string;
|
22
|
-
completed: boolean;
|
23
|
-
buttonTextCompleted?: string;
|
24
|
-
buttonTextUncompleted?: string;
|
25
|
-
backgroundColor?: string;
|
26
|
-
padding?: string;
|
27
|
-
}
|
28
|
-
|
29
|
-
export interface ShortcutKey {
|
30
|
-
text?: string;
|
31
|
-
iconPath?: string;
|
32
|
-
}
|
33
|
-
|
34
|
-
export interface ShortcutRow {
|
35
|
-
text: string;
|
36
|
-
shortcutKeys: ShortcutKey[];
|
37
|
-
}
|
38
|
-
|
39
|
-
export interface Tooltip {
|
40
|
-
className: string;
|
41
|
-
text: string;
|
42
|
-
shortcut: ShortcutKey[];
|
43
|
-
shortcutAlt?: ShortcutKey[];
|
44
|
-
}
|
45
|
-
|
46
|
-
export interface CardTypeInterface {
|
47
|
-
heading: string;
|
48
|
-
text: string;
|
49
|
-
link: string;
|
50
|
-
}
|
package/src/locales/ar-SA.json
DELETED
package/src/locales/bg-BG.json
DELETED
package/src/locales/bs-BA.json
DELETED
package/src/locales/ca-ES.json
DELETED
package/src/locales/cs-CZ.json
DELETED
package/src/locales/da-DK.json
DELETED
package/src/locales/de-DE.json
DELETED
package/src/locales/el-GR.json
DELETED
package/src/locales/en-US.json
DELETED
package/src/locales/en.json
DELETED
@@ -1,16 +0,0 @@
|
|
1
|
-
{
|
2
|
-
"Getting started": "Getting started",
|
3
|
-
"Learn the basics": "Learn the basics",
|
4
|
-
"Add agents": "Add agents",
|
5
|
-
"Add departments": "Add departments",
|
6
|
-
"Connect email accounts": "Connect email accounts",
|
7
|
-
"Connect social media": "Connect social media",
|
8
|
-
"Connect messaging apps": "Connect messaging apps",
|
9
|
-
"Create contact widget": "Create contact widget",
|
10
|
-
"Create call center": "Create call center",
|
11
|
-
"Configure customer portal": "Configure customer portal",
|
12
|
-
"Keyboard Shortcuts": "Keyboard Shortcuts",
|
13
|
-
"Improve your LA Skills": "Improve your LA Skills",
|
14
|
-
"Contact Us": "Contact Us",
|
15
|
-
"Manage": "Manage"
|
16
|
-
}
|
package/src/locales/es-ES.json
DELETED
package/src/locales/et-EE.json
DELETED
package/src/locales/fa-IR.json
DELETED
package/src/locales/fi-FI.json
DELETED