-
Notifications
You must be signed in to change notification settings - Fork 7
Expand file tree
/
Copy pathGettingStarted.tsx
More file actions
71 lines (66 loc) · 2.96 KB
/
GettingStarted.tsx
File metadata and controls
71 lines (66 loc) · 2.96 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
/*
* Copyright (c) 2024. Devtron Inc.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
import { ComponentSizeType } from '@Shared/constants'
import GettingToast from '../../../Assets/Img/lifebuoy.png'
import updateLoginCount from './service'
import { LOGIN_COUNT, MAX_LOGIN_COUNT, POSTHOG_EVENT_ONBOARDING } from '../../../Common'
import { handlePostHogEventUpdate, setActionWithExpiry } from '../Header/utils'
import { GettingStartedType } from './types'
import './gettingStarted.scss'
import { Button, ButtonStyleType, ButtonVariantType } from '../Button'
const GettingStartedCard = ({ className, hideGettingStartedCard }: GettingStartedType) => {
const onClickedOkay = async () => {
setActionWithExpiry('clickedOkay', 1)
hideGettingStartedCard()
await handlePostHogEventUpdate(POSTHOG_EVENT_ONBOARDING.TOOLTIP_OKAY)
}
const onClickedDontShowAgain = async () => {
const updatedPayload = {
key: LOGIN_COUNT,
value: `${MAX_LOGIN_COUNT}`,
}
await updateLoginCount(updatedPayload)
hideGettingStartedCard(updatedPayload.value)
await handlePostHogEventUpdate(POSTHOG_EVENT_ONBOARDING.TOOLTIP_DONT_SHOW_AGAIN)
}
return (
<div className="getting_tippy__position">
<div className="arrow-up" />
<div className={`getting-started-card cn-0 p-20 br-8 fs-13 bg__overlay dc__border ${className}`}>
<img className="mb-12 icon-dim-32" src={GettingToast} alt="getting started icon" />
<div className="flex column left fw-6 cn-7">Getting started</div>
<div className="cn-7">You can always access the Getting Started guide from here.</div>
<div className="mt-12 lh-18 flex left dc__gap-12">
<Button
text="Okay"
size={ComponentSizeType.xs}
dataTestId="getting-started-okay"
onClick={onClickedOkay}
/>
<Button
text="Don't show again"
size={ComponentSizeType.xs}
dataTestId="getting-started-don't-show-again"
onClick={onClickedDontShowAgain}
style={ButtonStyleType.neutral}
variant={ButtonVariantType.secondary}
/>
</div>
</div>
</div>
)
}
export default GettingStartedCard