@veracity/vui 2.5.0-beta.0 → 2.5.0
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/cjs/checkbox/checkbox.d.ts.map +1 -1
- package/dist/cjs/checkbox/checkbox.js +5 -5
- package/dist/cjs/checkbox/checkbox.types.d.ts +1 -1
- package/dist/cjs/checkbox/checkbox.types.d.ts.map +1 -1
- package/dist/cjs/checkbox/checkboxGroup.d.ts.map +1 -1
- package/dist/cjs/checkbox/checkboxGroup.js +2 -2
- package/dist/cjs/checkbox/checkboxGroup.types.d.ts +1 -1
- package/dist/cjs/checkbox/checkboxGroup.types.d.ts.map +1 -1
- package/dist/cjs/checkbox/consts.d.ts +6 -0
- package/dist/cjs/checkbox/consts.d.ts.map +1 -0
- package/dist/cjs/checkbox/consts.js +8 -0
- package/dist/cjs/checkbox/theme.d.ts +7 -13
- package/dist/cjs/checkbox/theme.d.ts.map +1 -1
- package/dist/cjs/checkbox/theme.js +8 -19
- package/dist/cjs/core/consts.d.ts +1 -0
- package/dist/cjs/core/consts.d.ts.map +1 -1
- package/dist/cjs/core/consts.js +2 -1
- package/dist/cjs/core/vuiProvider/fontFaces.d.ts.map +1 -1
- package/dist/cjs/core/vuiProvider/fontFaces.js +44 -4
- package/dist/cjs/core/vuiProvider/globalStyle.d.ts.map +1 -1
- package/dist/cjs/core/vuiProvider/globalStyle.js +5 -2
- package/dist/cjs/icons/baseIcons/fal/falClockRotateLeft.d.ts +4 -0
- package/dist/cjs/icons/baseIcons/fal/falClockRotateLeft.d.ts.map +1 -0
- package/dist/cjs/icons/baseIcons/fal/falClockRotateLeft.js +7 -0
- package/dist/cjs/icons/baseIcons/icons.d.ts +1 -0
- package/dist/cjs/icons/baseIcons/icons.d.ts.map +1 -1
- package/dist/cjs/icons/baseIcons/icons.js +7 -5
- package/dist/cjs/icons/baseIcons/types.d.ts +1 -1
- package/dist/cjs/icons/baseIcons/types.d.ts.map +1 -1
- package/dist/cjs/index.d.ts +1 -0
- package/dist/cjs/index.d.ts.map +1 -1
- package/dist/cjs/index.js +1 -0
- package/dist/cjs/input/inputInput.d.ts.map +1 -1
- package/dist/cjs/input/inputInput.js +0 -5
- package/dist/cjs/panel/theme.js +1 -1
- package/dist/cjs/progress/progress.d.ts +1 -1
- package/dist/cjs/progress/progress.d.ts.map +1 -1
- package/dist/cjs/progress/progress.js +10 -7
- package/dist/cjs/progress/progress.types.d.ts +0 -1
- package/dist/cjs/progress/progress.types.d.ts.map +1 -1
- package/dist/cjs/progress/theme.d.ts +15 -1
- package/dist/cjs/progress/theme.d.ts.map +1 -1
- package/dist/cjs/progress/theme.js +16 -2
- package/dist/cjs/progressCircular/consts.d.ts +12 -0
- package/dist/cjs/progressCircular/consts.d.ts.map +1 -0
- package/dist/cjs/progressCircular/consts.js +14 -0
- package/dist/cjs/progressCircular/index.d.ts +4 -0
- package/dist/cjs/progressCircular/index.d.ts.map +1 -0
- package/dist/cjs/progressCircular/index.js +24 -0
- package/dist/cjs/progressCircular/progressCircular.d.ts +6 -0
- package/dist/cjs/progressCircular/progressCircular.d.ts.map +1 -0
- package/dist/cjs/progressCircular/progressCircular.js +82 -0
- package/dist/cjs/progressCircular/progressCircular.types.d.ts +8 -0
- package/dist/cjs/progressCircular/progressCircular.types.d.ts.map +1 -0
- package/dist/cjs/progressCircular/progressCircular.types.js +2 -0
- package/dist/cjs/progressCircular/theme.d.ts +57 -0
- package/dist/cjs/progressCircular/theme.d.ts.map +1 -0
- package/dist/cjs/progressCircular/theme.js +47 -0
- package/dist/cjs/radio/consts.d.ts +6 -0
- package/dist/cjs/radio/consts.d.ts.map +1 -0
- package/dist/cjs/radio/consts.js +8 -0
- package/dist/cjs/radio/radio.d.ts.map +1 -1
- package/dist/cjs/radio/radio.js +5 -4
- package/dist/cjs/radio/radio.types.d.ts +1 -1
- package/dist/cjs/radio/radio.types.d.ts.map +1 -1
- package/dist/cjs/radio/radioGroup.d.ts.map +1 -1
- package/dist/cjs/radio/radioGroup.js +2 -3
- package/dist/cjs/radio/radioGroup.types.d.ts +1 -1
- package/dist/cjs/radio/radioGroup.types.d.ts.map +1 -1
- package/dist/cjs/radio/theme.d.ts +7 -13
- package/dist/cjs/radio/theme.d.ts.map +1 -1
- package/dist/cjs/radio/theme.js +8 -19
- package/dist/cjs/switch/consts.d.ts +9 -0
- package/dist/cjs/switch/consts.d.ts.map +1 -0
- package/dist/cjs/switch/consts.js +11 -0
- package/dist/cjs/switch/switch.types.d.ts +2 -2
- package/dist/cjs/switch/switch.types.d.ts.map +1 -1
- package/dist/cjs/switch/switchButton.d.ts.map +1 -1
- package/dist/cjs/switch/switchButton.js +19 -21
- package/dist/cjs/switch/switchMain.d.ts.map +1 -1
- package/dist/cjs/switch/switchMain.js +2 -3
- package/dist/cjs/switch/theme.d.ts +30 -14
- package/dist/cjs/switch/theme.d.ts.map +1 -1
- package/dist/cjs/switch/theme.js +33 -17
- package/dist/cjs/textarea/textarea.d.ts.map +1 -1
- package/dist/cjs/textarea/textarea.js +8 -17
- package/dist/cjs/textarea/textarea.types.d.ts +2 -2
- package/dist/cjs/textarea/textarea.types.d.ts.map +1 -1
- package/dist/cjs/textarea/theme.d.ts +29 -12
- package/dist/cjs/textarea/theme.d.ts.map +1 -1
- package/dist/cjs/textarea/theme.js +28 -17
- package/dist/cjs/theme/components.d.ts +132 -34
- package/dist/cjs/theme/components.d.ts.map +1 -1
- package/dist/cjs/theme/components.js +26 -24
- package/dist/cjs/theme/defaultTheme.d.ts +132 -34
- package/dist/cjs/theme/defaultTheme.d.ts.map +1 -1
- package/dist/cjs/tutorial/consts.d.ts +6 -0
- package/dist/cjs/tutorial/consts.d.ts.map +1 -0
- package/dist/cjs/tutorial/consts.js +8 -0
- package/dist/cjs/tutorial/tutorial.d.ts +1 -1
- package/dist/cjs/tutorial/tutorial.d.ts.map +1 -1
- package/dist/cjs/tutorial/tutorial.js +2 -2
- package/dist/cjs/tutorial/tutorial.types.d.ts +20 -12
- package/dist/cjs/tutorial/tutorial.types.d.ts.map +1 -1
- package/dist/cjs/tutorial/tutorialCard.d.ts +1 -1
- package/dist/cjs/tutorial/tutorialCard.d.ts.map +1 -1
- package/dist/cjs/tutorial/tutorialCard.js +19 -18
- package/dist/cjs/tutorial/tutorialStep.d.ts +1 -1
- package/dist/cjs/tutorial/tutorialStep.d.ts.map +1 -1
- package/dist/cjs/tutorial/tutorialStep.js +4 -5
- package/dist/esm/checkbox/checkbox.d.ts.map +1 -1
- package/dist/esm/checkbox/checkbox.js +5 -5
- package/dist/esm/checkbox/checkbox.types.d.ts +1 -1
- package/dist/esm/checkbox/checkbox.types.d.ts.map +1 -1
- package/dist/esm/checkbox/checkboxGroup.d.ts.map +1 -1
- package/dist/esm/checkbox/checkboxGroup.js +2 -2
- package/dist/esm/checkbox/checkboxGroup.types.d.ts +1 -1
- package/dist/esm/checkbox/checkboxGroup.types.d.ts.map +1 -1
- package/dist/esm/checkbox/consts.d.ts +6 -0
- package/dist/esm/checkbox/consts.d.ts.map +1 -0
- package/dist/esm/checkbox/consts.js +5 -0
- package/dist/esm/checkbox/theme.d.ts +7 -13
- package/dist/esm/checkbox/theme.d.ts.map +1 -1
- package/dist/esm/checkbox/theme.js +8 -19
- package/dist/esm/core/consts.d.ts +1 -0
- package/dist/esm/core/consts.d.ts.map +1 -1
- package/dist/esm/core/consts.js +1 -0
- package/dist/esm/core/vuiProvider/fontFaces.d.ts.map +1 -1
- package/dist/esm/core/vuiProvider/fontFaces.js +45 -5
- package/dist/esm/core/vuiProvider/globalStyle.d.ts.map +1 -1
- package/dist/esm/core/vuiProvider/globalStyle.js +5 -2
- package/dist/esm/icons/baseIcons/fal/falClockRotateLeft.d.ts +4 -0
- package/dist/esm/icons/baseIcons/fal/falClockRotateLeft.d.ts.map +1 -0
- package/dist/esm/icons/baseIcons/fal/falClockRotateLeft.js +5 -0
- package/dist/esm/icons/baseIcons/icons.d.ts +1 -0
- package/dist/esm/icons/baseIcons/icons.d.ts.map +1 -1
- package/dist/esm/icons/baseIcons/icons.js +1 -0
- package/dist/esm/icons/baseIcons/types.d.ts +1 -1
- package/dist/esm/icons/baseIcons/types.d.ts.map +1 -1
- package/dist/esm/index.d.ts +1 -0
- package/dist/esm/index.d.ts.map +1 -1
- package/dist/esm/index.js +1 -0
- package/dist/esm/input/inputInput.d.ts.map +1 -1
- package/dist/esm/input/inputInput.js +0 -5
- package/dist/esm/panel/theme.js +1 -1
- package/dist/esm/progress/progress.d.ts +1 -1
- package/dist/esm/progress/progress.d.ts.map +1 -1
- package/dist/esm/progress/progress.js +10 -7
- package/dist/esm/progress/progress.types.d.ts +0 -1
- package/dist/esm/progress/progress.types.d.ts.map +1 -1
- package/dist/esm/progress/theme.d.ts +15 -1
- package/dist/esm/progress/theme.d.ts.map +1 -1
- package/dist/esm/progress/theme.js +16 -2
- package/dist/esm/progressCircular/consts.d.ts +12 -0
- package/dist/esm/progressCircular/consts.d.ts.map +1 -0
- package/dist/esm/progressCircular/consts.js +11 -0
- package/dist/esm/progressCircular/index.d.ts +4 -0
- package/dist/esm/progressCircular/index.d.ts.map +1 -0
- package/dist/esm/progressCircular/index.js +3 -0
- package/dist/esm/progressCircular/progressCircular.d.ts +6 -0
- package/dist/esm/progressCircular/progressCircular.d.ts.map +1 -0
- package/dist/esm/progressCircular/progressCircular.js +45 -0
- package/dist/esm/progressCircular/progressCircular.types.d.ts +8 -0
- package/dist/esm/progressCircular/progressCircular.types.d.ts.map +1 -0
- package/dist/esm/progressCircular/progressCircular.types.js +1 -0
- package/dist/esm/progressCircular/theme.d.ts +57 -0
- package/dist/esm/progressCircular/theme.d.ts.map +1 -0
- package/dist/esm/progressCircular/theme.js +45 -0
- package/dist/esm/radio/consts.d.ts +6 -0
- package/dist/esm/radio/consts.d.ts.map +1 -0
- package/dist/esm/radio/consts.js +5 -0
- package/dist/esm/radio/radio.d.ts.map +1 -1
- package/dist/esm/radio/radio.js +5 -4
- package/dist/esm/radio/radio.types.d.ts +1 -1
- package/dist/esm/radio/radio.types.d.ts.map +1 -1
- package/dist/esm/radio/radioGroup.d.ts.map +1 -1
- package/dist/esm/radio/radioGroup.js +2 -3
- package/dist/esm/radio/radioGroup.types.d.ts +1 -1
- package/dist/esm/radio/radioGroup.types.d.ts.map +1 -1
- package/dist/esm/radio/theme.d.ts +7 -13
- package/dist/esm/radio/theme.d.ts.map +1 -1
- package/dist/esm/radio/theme.js +8 -19
- package/dist/esm/switch/consts.d.ts +9 -0
- package/dist/esm/switch/consts.d.ts.map +1 -0
- package/dist/esm/switch/consts.js +8 -0
- package/dist/esm/switch/switch.types.d.ts +2 -2
- package/dist/esm/switch/switch.types.d.ts.map +1 -1
- package/dist/esm/switch/switchButton.d.ts.map +1 -1
- package/dist/esm/switch/switchButton.js +19 -21
- package/dist/esm/switch/switchMain.d.ts.map +1 -1
- package/dist/esm/switch/switchMain.js +2 -3
- package/dist/esm/switch/theme.d.ts +30 -14
- package/dist/esm/switch/theme.d.ts.map +1 -1
- package/dist/esm/switch/theme.js +33 -17
- package/dist/esm/textarea/textarea.d.ts.map +1 -1
- package/dist/esm/textarea/textarea.js +8 -17
- package/dist/esm/textarea/textarea.types.d.ts +2 -2
- package/dist/esm/textarea/textarea.types.d.ts.map +1 -1
- package/dist/esm/textarea/theme.d.ts +29 -12
- package/dist/esm/textarea/theme.d.ts.map +1 -1
- package/dist/esm/textarea/theme.js +28 -17
- package/dist/esm/theme/components.d.ts +132 -34
- package/dist/esm/theme/components.d.ts.map +1 -1
- package/dist/esm/theme/components.js +2 -0
- package/dist/esm/theme/defaultTheme.d.ts +132 -34
- package/dist/esm/theme/defaultTheme.d.ts.map +1 -1
- package/dist/esm/tutorial/consts.d.ts +6 -0
- package/dist/esm/tutorial/consts.d.ts.map +1 -0
- package/dist/esm/tutorial/consts.js +5 -0
- package/dist/esm/tutorial/tutorial.d.ts +1 -1
- package/dist/esm/tutorial/tutorial.d.ts.map +1 -1
- package/dist/esm/tutorial/tutorial.js +2 -2
- package/dist/esm/tutorial/tutorial.types.d.ts +20 -12
- package/dist/esm/tutorial/tutorial.types.d.ts.map +1 -1
- package/dist/esm/tutorial/tutorialCard.d.ts +1 -1
- package/dist/esm/tutorial/tutorialCard.d.ts.map +1 -1
- package/dist/esm/tutorial/tutorialCard.js +20 -19
- package/dist/esm/tutorial/tutorialStep.d.ts +1 -1
- package/dist/esm/tutorial/tutorialStep.d.ts.map +1 -1
- package/dist/esm/tutorial/tutorialStep.js +5 -6
- package/package.json +1 -1
- package/src/checkbox/checkbox.tsx +5 -5
- package/src/checkbox/checkbox.types.ts +1 -1
- package/src/checkbox/checkboxGroup.tsx +3 -16
- package/src/checkbox/checkboxGroup.types.ts +1 -1
- package/src/checkbox/consts.ts +5 -0
- package/src/checkbox/theme.ts +7 -23
- package/src/core/consts.ts +1 -0
- package/src/core/vuiProvider/fontFaces.ts +46 -5
- package/src/core/vuiProvider/globalStyle.tsx +5 -2
- package/src/icons/baseIcons/fal/falClockRotateLeft.ts +8 -0
- package/src/icons/baseIcons/icons.ts +1 -0
- package/src/icons/baseIcons/types.ts +1 -0
- package/src/index.ts +1 -0
- package/src/input/inputInput.tsx +0 -5
- package/src/panel/theme.ts +1 -1
- package/src/progress/progress.tsx +11 -7
- package/src/progress/progress.types.ts +0 -1
- package/src/progress/theme.ts +16 -2
- package/src/progressCircular/consts.ts +13 -0
- package/src/progressCircular/index.ts +3 -0
- package/src/progressCircular/progressCircular.tsx +89 -0
- package/src/progressCircular/progressCircular.types.ts +9 -0
- package/src/progressCircular/theme.ts +50 -0
- package/src/radio/consts.ts +5 -0
- package/src/radio/radio.tsx +5 -5
- package/src/radio/radio.types.ts +1 -1
- package/src/radio/radioGroup.tsx +3 -17
- package/src/radio/radioGroup.types.ts +1 -1
- package/src/radio/theme.ts +7 -23
- package/src/switch/consts.ts +8 -0
- package/src/switch/switch.types.ts +2 -2
- package/src/switch/switchButton.tsx +20 -20
- package/src/switch/switchMain.tsx +1 -3
- package/src/switch/theme.ts +34 -22
- package/src/textarea/textarea.tsx +7 -17
- package/src/textarea/textarea.types.ts +2 -2
- package/src/textarea/theme.ts +28 -23
- package/src/theme/components.ts +2 -0
- package/src/tutorial/consts.ts +5 -0
- package/src/tutorial/tutorial.tsx +7 -5
- package/src/tutorial/tutorial.types.ts +20 -12
- package/src/tutorial/tutorialCard.tsx +71 -80
- package/src/tutorial/tutorialStep.tsx +5 -11
- package/dist/cjs/textarea/consts.d.ts +0 -4
- package/dist/cjs/textarea/consts.d.ts.map +0 -1
- package/dist/cjs/textarea/consts.js +0 -6
- package/dist/esm/textarea/consts.d.ts +0 -4
- package/dist/esm/textarea/consts.d.ts.map +0 -1
- package/dist/esm/textarea/consts.js +0 -3
- package/src/textarea/consts.ts +0 -3
package/src/theme/components.ts
CHANGED
|
@@ -28,6 +28,7 @@ import Pagination from '../pagination/theme'
|
|
|
28
28
|
import Panel from '../panel/theme'
|
|
29
29
|
import Popover from '../popover/theme'
|
|
30
30
|
import Progress from '../progress/theme'
|
|
31
|
+
import ProgressCircular from '../progressCircular/theme'
|
|
31
32
|
import Radio from '../radio/theme'
|
|
32
33
|
import Select from '../select/theme'
|
|
33
34
|
import Sidemenu from '../sidemenu/theme'
|
|
@@ -78,6 +79,7 @@ export default {
|
|
|
78
79
|
Pagination,
|
|
79
80
|
Panel,
|
|
80
81
|
Progress,
|
|
82
|
+
ProgressCircular,
|
|
81
83
|
Popover,
|
|
82
84
|
Radio,
|
|
83
85
|
Select,
|
|
@@ -8,16 +8,17 @@ import { useTutorial } from './useTutorial'
|
|
|
8
8
|
|
|
9
9
|
/** [Beta] Popover Tutorial is used to display information about a new, or existing feature. */
|
|
10
10
|
export function Tutorial({
|
|
11
|
+
actionLabel,
|
|
11
12
|
children,
|
|
12
13
|
className,
|
|
13
|
-
|
|
14
|
+
onAction,
|
|
14
15
|
onDismiss,
|
|
15
16
|
onFinish,
|
|
16
|
-
readMoreLink,
|
|
17
17
|
steps,
|
|
18
18
|
title,
|
|
19
19
|
id,
|
|
20
|
-
placement = 'right'
|
|
20
|
+
placement = 'right',
|
|
21
|
+
showSkipButton
|
|
21
22
|
}: TutorialProps) {
|
|
22
23
|
const { isVisible, setIsVisible, saveDisplayed } = useTutorial(id)
|
|
23
24
|
|
|
@@ -32,11 +33,12 @@ export function Tutorial({
|
|
|
32
33
|
<Tippy
|
|
33
34
|
content={
|
|
34
35
|
<TutorialCard
|
|
36
|
+
actionLabel={actionLabel}
|
|
35
37
|
className={cs('vui-tutorial', className)}
|
|
36
|
-
|
|
38
|
+
onAction={onAction}
|
|
37
39
|
onDismiss={() => onClose('dismissed')}
|
|
38
40
|
onFinish={() => onClose('finished')}
|
|
39
|
-
|
|
41
|
+
showSkipButton={showSkipButton}
|
|
40
42
|
steps={steps}
|
|
41
43
|
title={title}
|
|
42
44
|
/>
|
|
@@ -4,50 +4,58 @@ import { Placement } from 'tippy.js'
|
|
|
4
4
|
export type TutorialDataStep = {
|
|
5
5
|
/** title of step */
|
|
6
6
|
title: string
|
|
7
|
-
/**
|
|
8
|
-
|
|
9
|
-
/**
|
|
7
|
+
/** Content */
|
|
8
|
+
content?: string
|
|
9
|
+
/** Link to page where they can read more */
|
|
10
10
|
readMoreLink?: string
|
|
11
11
|
}
|
|
12
12
|
|
|
13
13
|
export type TutorialProps = {
|
|
14
|
+
/** Label for the action button @default `Action` */
|
|
15
|
+
actionLabel?: string
|
|
14
16
|
/** Target element for the tutorial */
|
|
15
17
|
children: React.ReactNode
|
|
16
18
|
/** Custom class name */
|
|
17
19
|
className?: string
|
|
18
20
|
/** An id for further handling with localStorage */
|
|
19
21
|
id: string
|
|
20
|
-
/**
|
|
21
|
-
|
|
22
|
+
/** Invoked once the action button clicked. */
|
|
23
|
+
onAction?: () => void
|
|
22
24
|
/** Invoked once the dismiss button clicked. */
|
|
23
25
|
onDismiss?: () => void
|
|
24
26
|
/** Invoked once the finish button clicked. */
|
|
25
27
|
onFinish?: () => void
|
|
26
28
|
/** Popover placement */
|
|
27
29
|
placement?: Placement
|
|
28
|
-
/** Link to page where user can read more */
|
|
29
|
-
readMoreLink?: string
|
|
30
30
|
/** An array of steps */
|
|
31
31
|
steps: TutorialDataStep[]
|
|
32
|
-
/**
|
|
32
|
+
/** Show the Skip button */
|
|
33
|
+
showSkipButton?: boolean
|
|
34
|
+
/** General tutorial title */
|
|
33
35
|
title: string
|
|
36
|
+
/** Link to page where they can read more */
|
|
37
|
+
readMoreLink?: string
|
|
34
38
|
}
|
|
35
39
|
|
|
36
40
|
export type TutorialCardProps = {
|
|
41
|
+
/** Label for the action button @default `Action` */
|
|
42
|
+
actionLabel?: string
|
|
37
43
|
/** Custom class name */
|
|
38
44
|
className?: string
|
|
39
45
|
/** The card title */
|
|
40
46
|
title: string
|
|
41
47
|
/** Steps of the card */
|
|
42
48
|
steps: TutorialDataStep[]
|
|
49
|
+
/** Invoked once the action button clicked. */
|
|
50
|
+
onAction?: () => void
|
|
43
51
|
/** Callback for the dismiss button click. */
|
|
44
52
|
onDismiss?: () => void
|
|
45
53
|
/** Callback for the finish button click. */
|
|
46
54
|
onFinish?: () => void
|
|
47
|
-
/** Description of feature */
|
|
48
|
-
description?: string
|
|
49
55
|
/** Link to page where they can read more */
|
|
50
56
|
readMoreLink?: string
|
|
57
|
+
/** Show the Skip button */
|
|
58
|
+
showSkipButton?: boolean
|
|
51
59
|
}
|
|
52
60
|
|
|
53
61
|
export type TutorialStepProps = {
|
|
@@ -55,8 +63,8 @@ export type TutorialStepProps = {
|
|
|
55
63
|
active: boolean
|
|
56
64
|
/** Title of step */
|
|
57
65
|
title: string
|
|
58
|
-
/**
|
|
59
|
-
|
|
66
|
+
/** Step content */
|
|
67
|
+
content?: string
|
|
60
68
|
/** Link to page where user can read more */
|
|
61
69
|
readMoreLink?: string
|
|
62
70
|
}
|
|
@@ -1,19 +1,21 @@
|
|
|
1
1
|
import React, { useEffect, useState } from 'react'
|
|
2
2
|
|
|
3
|
-
import { Box, Button, Card,
|
|
3
|
+
import { Box, Button, Card, H4, Icon } from '../index'
|
|
4
|
+
import { tutorialColors } from './consts'
|
|
4
5
|
import { TutorialCardProps, TutorialDataStep, TutorialStepWrapper } from './tutorial.types'
|
|
5
6
|
import { TutorialStep } from './tutorialStep'
|
|
6
7
|
|
|
7
8
|
export function TutorialCard({
|
|
9
|
+
actionLabel = 'Action',
|
|
8
10
|
className,
|
|
9
|
-
description,
|
|
10
11
|
title,
|
|
11
12
|
readMoreLink,
|
|
12
13
|
steps: propsSteps = [],
|
|
14
|
+
showSkipButton,
|
|
15
|
+
onAction,
|
|
13
16
|
onDismiss,
|
|
14
17
|
onFinish
|
|
15
18
|
}: TutorialCardProps) {
|
|
16
|
-
const [started, setStarted] = useState<boolean>(false)
|
|
17
19
|
const [steps, setSteps] = useState<TutorialStepWrapper[]>([])
|
|
18
20
|
const [activeStep, setActiveStep] = useState<number>(0)
|
|
19
21
|
|
|
@@ -23,7 +25,7 @@ export function TutorialCard({
|
|
|
23
25
|
|
|
24
26
|
const finalStep: TutorialDataStep = {
|
|
25
27
|
title: `Completed!`,
|
|
26
|
-
|
|
28
|
+
content: `${readMoreLink ? 'To learn more, please visit:' : 'Thank you!'}`
|
|
27
29
|
}
|
|
28
30
|
|
|
29
31
|
if (readMoreLink) finalStep.readMoreLink = readMoreLink
|
|
@@ -34,109 +36,98 @@ export function TutorialCard({
|
|
|
34
36
|
|
|
35
37
|
const isStartStep = activeStep === 0
|
|
36
38
|
const isFinalStep = activeStep === propsSteps.length
|
|
37
|
-
const decrementStep = () => setActiveStep(activeStep - 1)
|
|
38
|
-
const incrementStep = () => setActiveStep(activeStep + 1)
|
|
39
39
|
|
|
40
40
|
return (
|
|
41
|
-
<Card
|
|
41
|
+
<Card
|
|
42
|
+
bg={tutorialColors.bg}
|
|
43
|
+
className={className}
|
|
44
|
+
color={tutorialColors.color}
|
|
45
|
+
column
|
|
46
|
+
justifyContent="space-between"
|
|
47
|
+
minH={400}
|
|
48
|
+
p={2}
|
|
49
|
+
pt={1}
|
|
50
|
+
w={580}
|
|
51
|
+
>
|
|
42
52
|
<Box
|
|
43
53
|
alignContent="center"
|
|
44
54
|
alignItems="center"
|
|
45
|
-
display="flex"
|
|
46
55
|
flex={0}
|
|
47
56
|
flexDirection="row"
|
|
48
57
|
flexGrow={0}
|
|
49
58
|
justifyContent="space-between"
|
|
50
|
-
|
|
51
|
-
mb={1}
|
|
52
|
-
minH="48px"
|
|
59
|
+
minH={48}
|
|
53
60
|
row
|
|
54
61
|
style={{ WebkitFlexGrow: '0' }}
|
|
55
62
|
>
|
|
56
|
-
<
|
|
57
|
-
{!isFinalStep &&
|
|
58
|
-
<Button
|
|
59
|
-
color="white"
|
|
60
|
-
hoverColor="prussian.80"
|
|
61
|
-
icon="falTimes"
|
|
62
|
-
onClick={onDismiss}
|
|
63
|
-
scale={2}
|
|
64
|
-
variant="tertiaryDark"
|
|
65
|
-
/>
|
|
66
|
-
)}
|
|
67
|
-
</Box>
|
|
68
|
-
<Box column flex={5} hidden={started} mx={2}>
|
|
69
|
-
<T flexGrow={1}>{description}</T>
|
|
70
|
-
<Box alignItems="center" flexDirection="row-reverse" row>
|
|
71
|
-
<Button bg="white" color="prussian.80" float="right" mb={0} onClick={() => setStarted(true)} pb={0}>
|
|
72
|
-
Let's get started!
|
|
73
|
-
</Button>
|
|
74
|
-
</Box>
|
|
63
|
+
<H4 color={tutorialColors.color}>{title}</H4>
|
|
64
|
+
{!isFinalStep && <Button icon="falTimes" onClick={onDismiss} scale={2} variant="tertiaryLight" />}
|
|
75
65
|
</Box>
|
|
76
|
-
<Box flex={5}
|
|
66
|
+
<Box flex={5} row>
|
|
77
67
|
{steps?.map?.(s => (
|
|
78
68
|
<TutorialStep
|
|
79
69
|
active={s.key === activeStep}
|
|
80
|
-
|
|
70
|
+
content={s.step.content}
|
|
81
71
|
key={s.step.title}
|
|
82
72
|
readMoreLink={s.step.readMoreLink}
|
|
83
73
|
title={s.step.title}
|
|
84
74
|
/>
|
|
85
75
|
))}
|
|
86
76
|
</Box>
|
|
87
|
-
<Box
|
|
88
|
-
alignItems="center"
|
|
89
|
-
flex={0}
|
|
90
|
-
flexGrow={0}
|
|
91
|
-
hidden={!started}
|
|
92
|
-
justifyContent="space-between"
|
|
93
|
-
m={2}
|
|
94
|
-
mt={0}
|
|
95
|
-
row
|
|
96
|
-
style={{ WebkitFlexGrow: '0' }}
|
|
97
|
-
>
|
|
98
|
-
<Button
|
|
99
|
-
color="white"
|
|
100
|
-
disabled={isStartStep}
|
|
101
|
-
disabledBg="blue.100"
|
|
102
|
-
disabledBorderColor="blue.100"
|
|
103
|
-
disabledColor="prussian.80"
|
|
104
|
-
focusBorderColor="none"
|
|
105
|
-
hoverBg="none"
|
|
106
|
-
hoverBorder="none"
|
|
107
|
-
hoverBorderColor="blue.100"
|
|
108
|
-
icon="falArrowLeft"
|
|
109
|
-
onClick={decrementStep}
|
|
110
|
-
scale={2}
|
|
111
|
-
transition="none"
|
|
112
|
-
variant="tertiaryDark"
|
|
113
|
-
w="80"
|
|
114
|
-
/>
|
|
115
|
-
|
|
116
|
-
<Box className="vuiTutorialStepDots">
|
|
117
|
-
{steps?.map?.(s => (
|
|
118
|
-
<Icon color={s.key === activeStep ? 'white' : 'grey.70'} key={s.key} name="cusDotFull" />
|
|
119
|
-
))}
|
|
120
|
-
</Box>
|
|
121
|
-
|
|
122
|
-
{isFinalStep ? (
|
|
123
|
-
<Button bg="white" color="prussian.80" hoverBg="blue.30" hoverColor="prussian.80" onClick={onFinish}>
|
|
124
|
-
Finish
|
|
125
|
-
</Button>
|
|
126
|
-
) : (
|
|
77
|
+
<Box alignItems="center" justifyContent="space-between" mt={0}>
|
|
78
|
+
<Box alignItems="center" justifyContent="space-between" w="-webkit-fill-available">
|
|
127
79
|
<Button
|
|
128
|
-
color=
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
80
|
+
color={tutorialColors.buttonColor}
|
|
81
|
+
disabled={isStartStep}
|
|
82
|
+
icon="falArrowLeft"
|
|
83
|
+
onClick={() => setActiveStep(activeStep - 1)}
|
|
84
|
+
scale={2}
|
|
85
|
+
transition="none"
|
|
86
|
+
variant="tertiaryLight"
|
|
87
|
+
w="34"
|
|
88
|
+
/>
|
|
89
|
+
<Box className="vuiTutorialStepDots">
|
|
90
|
+
{steps?.map?.(s => (
|
|
91
|
+
<Icon
|
|
92
|
+
color={s.key === activeStep ? tutorialColors.color : 'darkBlue.30'}
|
|
93
|
+
cursor="pointer"
|
|
94
|
+
hoverColor={tutorialColors.buttonColor}
|
|
95
|
+
key={s.key}
|
|
96
|
+
name="cusDotFull"
|
|
97
|
+
onClick={() => setActiveStep(s.key)}
|
|
98
|
+
/>
|
|
99
|
+
))}
|
|
100
|
+
</Box>
|
|
101
|
+
<Button
|
|
102
|
+
color={tutorialColors.buttonColor}
|
|
103
|
+
disabled={isFinalStep}
|
|
133
104
|
icon="falArrowRight"
|
|
134
|
-
onClick={
|
|
105
|
+
onClick={() => setActiveStep(activeStep + 1)}
|
|
135
106
|
scale={2}
|
|
136
107
|
transition="none"
|
|
137
|
-
variant="
|
|
138
|
-
w="
|
|
108
|
+
variant="tertiaryLight"
|
|
109
|
+
w="34"
|
|
139
110
|
/>
|
|
111
|
+
</Box>
|
|
112
|
+
{(showSkipButton || isFinalStep || !!onAction) && (
|
|
113
|
+
<Box alignItems="center" justifyContent="space-between">
|
|
114
|
+
{showSkipButton && !isFinalStep && (
|
|
115
|
+
<Button mr={2} onClick={onDismiss} variant="primaryLight">
|
|
116
|
+
Skip
|
|
117
|
+
</Button>
|
|
118
|
+
)}
|
|
119
|
+
{isFinalStep && (
|
|
120
|
+
<Button mr={2} onClick={onFinish} variant="primaryLight">
|
|
121
|
+
Finish
|
|
122
|
+
</Button>
|
|
123
|
+
)}
|
|
124
|
+
{!!onAction && (
|
|
125
|
+
<Button mr={6} onClick={onAction} variant="primaryLight">
|
|
126
|
+
{actionLabel}
|
|
127
|
+
{onAction}
|
|
128
|
+
</Button>
|
|
129
|
+
)}
|
|
130
|
+
</Box>
|
|
140
131
|
)}
|
|
141
132
|
</Box>
|
|
142
133
|
</Card>
|
|
@@ -1,20 +1,14 @@
|
|
|
1
1
|
import React from 'react'
|
|
2
2
|
|
|
3
|
-
import {
|
|
3
|
+
import { Box, H5, v } from '../index'
|
|
4
|
+
import { tutorialColors } from './consts'
|
|
4
5
|
import { TutorialStepProps } from './tutorial.types'
|
|
5
6
|
|
|
6
|
-
export const TutorialStep = ({ active,
|
|
7
|
+
export const TutorialStep = ({ active, content, title }: TutorialStepProps) => (
|
|
7
8
|
<v.div className="vui-tutorialStep" hidden={!active} pb={2}>
|
|
8
|
-
<H5 fontWeight="medium" mb={1}>
|
|
9
|
+
<H5 color={tutorialColors.color} fontWeight="medium" mb={1}>
|
|
9
10
|
{title}
|
|
10
11
|
</H5>
|
|
11
|
-
<
|
|
12
|
-
{!!readMoreLink && (
|
|
13
|
-
<P>
|
|
14
|
-
<v.a href={readMoreLink} textDecoration="underline">
|
|
15
|
-
{readMoreLink}
|
|
16
|
-
</v.a>
|
|
17
|
-
</P>
|
|
18
|
-
)}
|
|
12
|
+
<Box>{content}</Box>
|
|
19
13
|
</v.div>
|
|
20
14
|
)
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"consts.d.ts","sourceRoot":"","sources":["../../../src/textarea/consts.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,cAAc,YAAY,CAAA;AACvC,eAAO,MAAM,SAAS,YAAY,CAAA;AAClC,eAAO,MAAM,QAAQ,WAAW,CAAA"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"consts.d.ts","sourceRoot":"","sources":["../../../src/textarea/consts.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,cAAc,YAAY,CAAA;AACvC,eAAO,MAAM,SAAS,YAAY,CAAA;AAClC,eAAO,MAAM,QAAQ,WAAW,CAAA"}
|
package/src/textarea/consts.ts
DELETED