@hyvor/design 0.0.68 → 1.0.3
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/components/ActionList/ActionList.svelte +22 -9
- package/dist/components/ActionList/ActionList.svelte.d.ts +8 -20
- package/dist/components/ActionList/ActionListGroup.svelte +18 -8
- package/dist/components/ActionList/ActionListGroup.svelte.d.ts +8 -20
- package/dist/components/ActionList/ActionListItem.svelte +49 -25
- package/dist/components/ActionList/ActionListItem.svelte.d.ts +27 -25
- package/dist/components/ActionList/Selected.svelte +10 -4
- package/dist/components/ActionList/Selected.svelte.d.ts +6 -17
- package/dist/components/Avatar/Avatar.svelte +16 -9
- package/dist/components/Avatar/Avatar.svelte.d.ts +7 -18
- package/dist/components/Avatar/AvatarStack.svelte +14 -8
- package/dist/components/Avatar/AvatarStack.svelte.d.ts +6 -18
- package/dist/components/Base/Base.svelte +14 -6
- package/dist/components/Base/Base.svelte.d.ts +6 -18
- package/dist/components/Box/Box.svelte +10 -3
- package/dist/components/Box/Box.svelte.d.ts +7 -19
- package/dist/components/Button/Button.svelte +52 -25
- package/dist/components/Button/Button.svelte.d.ts +16 -39
- package/dist/components/Button/ButtonGroup.svelte +9 -1
- package/dist/components/Button/ButtonGroup.svelte.d.ts +5 -27
- package/dist/components/Callout/Callout.svelte +41 -20
- package/dist/components/Callout/Callout.svelte.d.ts +11 -23
- package/dist/components/Checkbox/Checkbox.svelte +58 -38
- package/dist/components/Checkbox/Checkbox.svelte.d.ts +11 -34
- package/dist/components/CodeBlock/CodeBlock.svelte +21 -11
- package/dist/components/CodeBlock/CodeBlock.svelte.d.ts +6 -17
- package/dist/components/CodeBlock/getCode.js +2 -0
- package/dist/components/ColorPicker/ColorPicker.svelte +34 -15
- package/dist/components/ColorPicker/ColorPicker.svelte.d.ts +25 -19
- package/dist/components/Dark/DarkProvider.svelte +7 -5
- package/dist/components/Dark/DarkProvider.svelte.d.ts +16 -12
- package/dist/components/Dark/DarkToggle.svelte +8 -6
- package/dist/components/Dark/DarkToggle.svelte.d.ts +16 -12
- package/dist/components/Divider/Divider.svelte +17 -6
- package/dist/components/Divider/Divider.svelte.d.ts +9 -20
- package/dist/components/Dropdown/Dropdown.svelte +33 -14
- package/dist/components/Dropdown/Dropdown.svelte.d.ts +13 -24
- package/dist/components/Dropdown/DropdownContent.svelte +124 -92
- package/dist/components/Dropdown/DropdownContent.svelte.d.ts +12 -24
- package/dist/components/FormControl/Caption.svelte +10 -3
- package/dist/components/FormControl/Caption.svelte.d.ts +7 -19
- package/dist/components/FormControl/FormControl.svelte +11 -2
- package/dist/components/FormControl/FormControl.svelte.d.ts +6 -27
- package/dist/components/FormControl/InputGroup.svelte +17 -9
- package/dist/components/FormControl/InputGroup.svelte.d.ts +7 -19
- package/dist/components/FormControl/Label.svelte +11 -2
- package/dist/components/FormControl/Label.svelte.d.ts +6 -27
- package/dist/components/FormControl/Validation.svelte +18 -9
- package/dist/components/FormControl/Validation.svelte.d.ts +8 -20
- package/dist/components/HyvorBar/BarProducts.svelte +44 -25
- package/dist/components/HyvorBar/BarProducts.svelte.d.ts +14 -21
- package/dist/components/HyvorBar/BarSupport.svelte +165 -101
- package/dist/components/HyvorBar/BarSupport.svelte.d.ts +7 -18
- package/dist/components/HyvorBar/BarUpdates.svelte +25 -15
- package/dist/components/HyvorBar/BarUpdates.svelte.d.ts +6 -17
- package/dist/components/HyvorBar/BarUpdatesList.svelte +73 -48
- package/dist/components/HyvorBar/BarUpdatesList.svelte.d.ts +6 -17
- package/dist/components/HyvorBar/BarUser.svelte +36 -24
- package/dist/components/HyvorBar/BarUser.svelte.d.ts +5 -16
- package/dist/components/HyvorBar/BarUserPreview.svelte +2 -1
- package/dist/components/HyvorBar/BarUserPreview.svelte.d.ts +16 -12
- package/dist/components/HyvorBar/HyvorBar.svelte +69 -36
- package/dist/components/HyvorBar/HyvorBar.svelte.d.ts +7 -18
- package/dist/components/HyvorBar/bar.d.ts +2 -2
- package/dist/components/HyvorBar/img/G2.svelte.d.ts +22 -19
- package/dist/components/HyvorBar/img/Trustpilot.svelte.d.ts +22 -19
- package/dist/components/IconButton/IconButton.svelte +43 -22
- package/dist/components/IconButton/IconButton.svelte.d.ts +10 -33
- package/dist/components/IconMessage/IconMessage.svelte +111 -56
- package/dist/components/IconMessage/IconMessage.svelte.d.ts +19 -35
- package/dist/components/Internationalization/InternationalizationProvider.svelte +14 -7
- package/dist/components/Internationalization/InternationalizationProvider.svelte.d.ts +6 -18
- package/dist/components/Internationalization/LanguageToggle.svelte +73 -47
- package/dist/components/Internationalization/LanguageToggle.svelte.d.ts +10 -21
- package/dist/components/Internationalization/T.svelte +158 -114
- package/dist/components/Internationalization/T.svelte.d.ts +17 -15
- package/dist/components/Internationalization/i18n.d.ts +1 -3
- package/dist/components/Internationalization/t.d.ts +1 -2
- package/dist/components/Internationalization/types.d.ts +1 -0
- package/dist/components/Link/Link.svelte +31 -19
- package/dist/components/Link/Link.svelte.d.ts +11 -34
- package/dist/components/Loader/LoadButton.svelte +24 -9
- package/dist/components/Loader/LoadButton.svelte.d.ts +29 -42
- package/dist/components/Loader/Loader.svelte +69 -42
- package/dist/components/Loader/Loader.svelte.d.ts +15 -27
- package/dist/components/Modal/ConfirmModalProvider.svelte +28 -20
- package/dist/components/Modal/ConfirmModalProvider.svelte.d.ts +3 -14
- package/dist/components/Modal/Modal.svelte +76 -47
- package/dist/components/Modal/Modal.svelte.d.ts +31 -29
- package/dist/components/Modal/ModalFooter.svelte +14 -6
- package/dist/components/Modal/ModalFooter.svelte.d.ts +22 -18
- package/dist/components/Modal/confirm.d.ts +2 -2
- package/dist/components/Modal/modal-types.d.ts +2 -2
- package/dist/components/NavLink/NavLink.svelte +31 -18
- package/dist/components/NavLink/NavLink.svelte.d.ts +11 -33
- package/dist/components/Radio/Radio.svelte +35 -16
- package/dist/components/Radio/Radio.svelte.d.ts +10 -33
- package/dist/components/Slider/Slider.svelte +53 -36
- package/dist/components/Slider/Slider.svelte.d.ts +24 -20
- package/dist/components/SplitControl/SplitControl.svelte +27 -18
- package/dist/components/SplitControl/SplitControl.svelte.d.ts +11 -24
- package/dist/components/Switch/Switch.svelte +30 -15
- package/dist/components/Switch/Switch.svelte.d.ts +8 -31
- package/dist/components/TabNav/TabNav.svelte +29 -15
- package/dist/components/TabNav/TabNav.svelte.d.ts +7 -19
- package/dist/components/TabNav/TabNavItem.svelte +36 -15
- package/dist/components/TabNav/TabNavItem.svelte.d.ts +10 -24
- package/dist/components/Table/Table.svelte +11 -4
- package/dist/components/Table/Table.svelte.d.ts +7 -19
- package/dist/components/Table/TableRow.svelte +11 -3
- package/dist/components/Table/TableRow.svelte.d.ts +7 -19
- package/dist/components/Tag/Tag.svelte +65 -31
- package/dist/components/Tag/Tag.svelte.d.ts +16 -39
- package/dist/components/Text/Text.svelte +20 -6
- package/dist/components/Text/Text.svelte.d.ts +10 -22
- package/dist/components/TextInput/TextInput.svelte +42 -21
- package/dist/components/TextInput/TextInput.svelte.d.ts +12 -36
- package/dist/components/Textarea/Textarea.svelte +46 -24
- package/dist/components/Textarea/Textarea.svelte.d.ts +13 -37
- package/dist/components/Toast/ToastIcon.svelte +26 -15
- package/dist/components/Toast/ToastIcon.svelte.d.ts +5 -16
- package/dist/components/Toast/ToastMessage.svelte +11 -4
- package/dist/components/Toast/ToastMessage.svelte.d.ts +5 -16
- package/dist/components/Toast/ToastProvider.svelte +6 -4
- package/dist/components/Toast/ToastProvider.svelte.d.ts +16 -12
- package/dist/components/Toast/toast.d.ts +2 -2
- package/dist/components/Tooltip/Tooltip.svelte +71 -55
- package/dist/components/Tooltip/Tooltip.svelte.d.ts +35 -23
- package/dist/marketing/Container/Container.svelte +8 -2
- package/dist/marketing/Container/Container.svelte.d.ts +6 -18
- package/dist/marketing/Docs/Content/Content.svelte +41 -29
- package/dist/marketing/Docs/Content/Content.svelte.d.ts +5 -16
- package/dist/marketing/Docs/Content/DocsImage.svelte +17 -9
- package/dist/marketing/Docs/Content/DocsImage.svelte.d.ts +9 -20
- package/dist/marketing/Docs/Docs.svelte +9 -3
- package/dist/marketing/Docs/Docs.svelte.d.ts +6 -29
- package/dist/marketing/Docs/Nav/Nav.svelte +77 -50
- package/dist/marketing/Docs/Nav/Nav.svelte.d.ts +5 -16
- package/dist/marketing/Docs/Nav/NavCategory.svelte +16 -6
- package/dist/marketing/Docs/Nav/NavCategory.svelte.d.ts +8 -20
- package/dist/marketing/Docs/Nav/NavItem.svelte +10 -3
- package/dist/marketing/Docs/Nav/NavItem.svelte.d.ts +6 -18
- package/dist/marketing/Docs/Sidebar/Sidebar.svelte.d.ts +22 -19
- package/dist/marketing/Docs/Toc.svelte +49 -39
- package/dist/marketing/Docs/Toc.svelte.d.ts +3 -14
- package/dist/marketing/Document/Document.svelte +11 -4
- package/dist/marketing/Document/Document.svelte.d.ts +7 -19
- package/dist/marketing/Document/DocumentTitle.svelte +16 -5
- package/dist/marketing/Document/DocumentTitle.svelte.d.ts +9 -20
- package/dist/marketing/Footer/Footer.svelte +55 -38
- package/dist/marketing/Footer/Footer.svelte.d.ts +8 -20
- package/dist/marketing/Footer/FooterLinkList.svelte +8 -2
- package/dist/marketing/Footer/FooterLinkList.svelte.d.ts +6 -18
- package/dist/marketing/Header/Header.svelte +41 -23
- package/dist/marketing/Header/Header.svelte.d.ts +10 -22
- package/dist/marketing/Logo/LogoBlogs.svelte +6 -1
- package/dist/marketing/Logo/LogoBlogs.svelte.d.ts +5 -16
- package/dist/marketing/Logo/LogoCore.svelte +6 -1
- package/dist/marketing/Logo/LogoCore.svelte.d.ts +5 -16
- package/dist/marketing/Logo/LogoFortguard.svelte +7 -2
- package/dist/marketing/Logo/LogoFortguard.svelte.d.ts +5 -16
- package/dist/marketing/Logo/LogoTalk.svelte +6 -1
- package/dist/marketing/Logo/LogoTalk.svelte.d.ts +5 -16
- package/dist/stores/dark.d.ts +0 -1
- package/package.json +8 -8
|
@@ -1,27 +1,6 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
[evt: string]: CustomEvent<any>;
|
|
8
|
-
}, {
|
|
9
|
-
default: {};
|
|
10
|
-
}> {
|
|
11
|
-
}
|
|
12
|
-
export type LabelProps = typeof __propDef.props;
|
|
13
|
-
export type LabelEvents = typeof __propDef.events;
|
|
14
|
-
export type LabelSlots = typeof __propDef.slots;
|
|
15
|
-
import { SvelteComponent } from "svelte";
|
|
16
|
-
declare const __propDef: {
|
|
17
|
-
props: {
|
|
18
|
-
[x: string]: any;
|
|
19
|
-
};
|
|
20
|
-
events: {
|
|
21
|
-
[evt: string]: CustomEvent<any>;
|
|
22
|
-
};
|
|
23
|
-
slots: {
|
|
24
|
-
default: {};
|
|
25
|
-
};
|
|
26
|
-
};
|
|
27
|
-
export {};
|
|
1
|
+
declare const Label: import("svelte").Component<{
|
|
2
|
+
[key: string]: any;
|
|
3
|
+
children?: import("svelte").Snippet;
|
|
4
|
+
}, {}, "">;
|
|
5
|
+
type Label = ReturnType<typeof Label>;
|
|
6
|
+
export default Label;
|
|
@@ -1,13 +1,22 @@
|
|
|
1
|
-
<script>
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
1
|
+
<script lang="ts">
|
|
2
|
+
import {
|
|
3
|
+
IconCheckCircleFill,
|
|
4
|
+
IconExclamationTriangleFill,
|
|
5
|
+
IconInfoCircleFill
|
|
6
|
+
} from '@hyvor/icons';
|
|
7
|
+
import type { AriaRole } from 'svelte/elements';
|
|
8
|
+
|
|
9
|
+
interface Props {
|
|
10
|
+
state?: 'error' | 'warning' | 'success';
|
|
11
|
+
role?: AriaRole | undefined;
|
|
12
|
+
children?: import('svelte').Snippet;
|
|
13
|
+
[key: string]: any;
|
|
14
|
+
}
|
|
15
|
+
|
|
16
|
+
let { state = 'error', role = 'alert', children, ...rest }: Props = $props();
|
|
8
17
|
</script>
|
|
9
18
|
|
|
10
|
-
<div class="validation {state}" {role} {
|
|
19
|
+
<div class="validation {state}" {role} {...rest}>
|
|
11
20
|
<div class="icon">
|
|
12
21
|
{#if state === 'error'}
|
|
13
22
|
<IconExclamationTriangleFill style="color:var(--red)" />
|
|
@@ -18,7 +27,7 @@ export let role = "alert";
|
|
|
18
27
|
{/if}
|
|
19
28
|
</div>
|
|
20
29
|
<div class="message">
|
|
21
|
-
|
|
30
|
+
{@render children?.()}
|
|
22
31
|
</div>
|
|
23
32
|
</div>
|
|
24
33
|
|
|
@@ -1,21 +1,9 @@
|
|
|
1
|
-
import { SvelteComponent } from "svelte";
|
|
2
1
|
import type { AriaRole } from 'svelte/elements';
|
|
3
|
-
declare const
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
};
|
|
12
|
-
slots: {
|
|
13
|
-
default: {};
|
|
14
|
-
};
|
|
15
|
-
};
|
|
16
|
-
export type ValidationProps = typeof __propDef.props;
|
|
17
|
-
export type ValidationEvents = typeof __propDef.events;
|
|
18
|
-
export type ValidationSlots = typeof __propDef.slots;
|
|
19
|
-
export default class Validation extends SvelteComponent<ValidationProps, ValidationEvents, ValidationSlots> {
|
|
20
|
-
}
|
|
21
|
-
export {};
|
|
2
|
+
declare const Validation: import("svelte").Component<{
|
|
3
|
+
[key: string]: any;
|
|
4
|
+
state?: "error" | "warning" | "success";
|
|
5
|
+
role?: AriaRole | undefined;
|
|
6
|
+
children?: import("svelte").Snippet;
|
|
7
|
+
}, {}, "">;
|
|
8
|
+
type Validation = ReturnType<typeof Validation>;
|
|
9
|
+
export default Validation;
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
<script
|
|
1
|
+
<script module>
|
|
2
2
|
const PRODUCTS = {
|
|
3
3
|
talk: {
|
|
4
4
|
name: 'Hyvor Talk',
|
|
@@ -22,31 +22,50 @@
|
|
|
22
22
|
export { PRODUCTS };
|
|
23
23
|
</script>
|
|
24
24
|
|
|
25
|
-
<script
|
|
26
|
-
import
|
|
27
|
-
import
|
|
28
|
-
import
|
|
29
|
-
import
|
|
30
|
-
|
|
25
|
+
<script lang="ts">
|
|
26
|
+
import LogoBlogs from '../../marketing/Logo/LogoBlogs.svelte';
|
|
27
|
+
import LogoCore from '../../marketing/Logo/LogoCore.svelte';
|
|
28
|
+
import LogoFortguard from '../../marketing/Logo/LogoFortguard.svelte';
|
|
29
|
+
import LogoTalk from '../../marketing/Logo/LogoTalk.svelte';
|
|
30
|
+
import { ActionList, ActionListItem, Button, Dropdown } from '../index.js';
|
|
31
|
+
import { IconCaretDownFill, IconBoxArrowUpRight } from '@hyvor/icons';
|
|
32
|
+
|
|
33
|
+
interface Props {
|
|
34
|
+
mobile?: boolean;
|
|
35
|
+
}
|
|
36
|
+
|
|
37
|
+
let { mobile = false }: Props = $props();
|
|
31
38
|
</script>
|
|
32
39
|
|
|
33
40
|
<Dropdown align={mobile ? 'center' : 'end'} width={325}>
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
<
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
41
|
+
{#snippet trigger()}
|
|
42
|
+
<Button variant="invisible" color="input" size="small">
|
|
43
|
+
Products
|
|
44
|
+
{#snippet end()}
|
|
45
|
+
<IconCaretDownFill size={10} />
|
|
46
|
+
{/snippet}
|
|
47
|
+
</Button>
|
|
48
|
+
{/snippet}
|
|
49
|
+
{#snippet content()}
|
|
50
|
+
<ActionList>
|
|
51
|
+
{#each Object.entries(PRODUCTS) as [key, product]}
|
|
52
|
+
<a href={`https://${product.url}`} target="_blank">
|
|
53
|
+
<ActionListItem>
|
|
54
|
+
{product.name}
|
|
55
|
+
{#snippet description()}
|
|
56
|
+
<div>
|
|
57
|
+
{product.description}
|
|
58
|
+
</div>
|
|
59
|
+
{/snippet}
|
|
60
|
+
{#snippet start()}
|
|
61
|
+
<product.logo size={20} />
|
|
62
|
+
{/snippet}
|
|
63
|
+
{#snippet end()}
|
|
64
|
+
<IconBoxArrowUpRight size={12} />
|
|
65
|
+
{/snippet}
|
|
66
|
+
</ActionListItem>
|
|
67
|
+
</a>
|
|
68
|
+
{/each}
|
|
69
|
+
</ActionList>
|
|
70
|
+
{/snippet}
|
|
52
71
|
</Dropdown>
|
|
@@ -1,39 +1,32 @@
|
|
|
1
|
-
import { SvelteComponent } from "svelte";
|
|
2
1
|
declare const PRODUCTS: {
|
|
3
2
|
talk: {
|
|
4
3
|
name: string;
|
|
5
|
-
logo:
|
|
4
|
+
logo: import("svelte").Component<{
|
|
5
|
+
size?: number;
|
|
6
|
+
}, {}, "">;
|
|
6
7
|
url: string;
|
|
7
8
|
description: string;
|
|
8
9
|
};
|
|
9
10
|
blogs: {
|
|
10
11
|
name: string;
|
|
11
|
-
logo:
|
|
12
|
+
logo: import("svelte").Component<{
|
|
13
|
+
size?: number;
|
|
14
|
+
}, {}, "">;
|
|
12
15
|
url: string;
|
|
13
16
|
description: string;
|
|
14
17
|
};
|
|
15
18
|
fortguard: {
|
|
16
19
|
name: string;
|
|
17
|
-
logo:
|
|
20
|
+
logo: import("svelte").Component<{
|
|
21
|
+
size?: number;
|
|
22
|
+
}, {}, "">;
|
|
18
23
|
url: string;
|
|
19
24
|
description: string;
|
|
20
25
|
};
|
|
21
26
|
};
|
|
22
27
|
export { PRODUCTS };
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
mobile?: boolean | undefined;
|
|
29
|
-
};
|
|
30
|
-
events: {
|
|
31
|
-
[evt: string]: CustomEvent<any>;
|
|
32
|
-
};
|
|
33
|
-
slots: {};
|
|
34
|
-
};
|
|
35
|
-
export type BarProductsProps = typeof __propDef.props;
|
|
36
|
-
export type BarProductsEvents = typeof __propDef.events;
|
|
37
|
-
export type BarProductsSlots = typeof __propDef.slots;
|
|
38
|
-
export default class BarProducts extends SvelteComponent<BarProductsProps, BarProductsEvents, BarProductsSlots> {
|
|
39
|
-
}
|
|
28
|
+
declare const BarProducts: import("svelte").Component<{
|
|
29
|
+
mobile?: boolean;
|
|
30
|
+
}, {}, "">;
|
|
31
|
+
type BarProducts = ReturnType<typeof BarProducts>;
|
|
32
|
+
export default BarProducts;
|
|
@@ -1,119 +1,183 @@
|
|
|
1
|
-
<script
|
|
2
|
-
import {
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
import
|
|
15
|
-
import
|
|
16
|
-
import
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
1
|
+
<script lang="ts">
|
|
2
|
+
import { ActionList, ActionListItem, Button, Dropdown } from '../index.js';
|
|
3
|
+
import {
|
|
4
|
+
IconCaretDownFill,
|
|
5
|
+
IconBoxArrowUpRight,
|
|
6
|
+
IconChat,
|
|
7
|
+
IconDiscord,
|
|
8
|
+
IconInfoCircle,
|
|
9
|
+
IconFileEarmark,
|
|
10
|
+
IconChatDots,
|
|
11
|
+
IconTwitterX,
|
|
12
|
+
IconLinkedin
|
|
13
|
+
} from '@hyvor/icons';
|
|
14
|
+
import ActionListGroup from '../ActionList/ActionListGroup.svelte';
|
|
15
|
+
import { PRODUCTS } from './BarProducts.svelte';
|
|
16
|
+
import type { BarConfig, BarProduct } from './bar.js';
|
|
17
|
+
import G2 from './img/G2.svelte';
|
|
18
|
+
import Trustpilot from './img/Trustpilot.svelte';
|
|
19
|
+
|
|
20
|
+
let supportDropdown = $state(false);
|
|
21
|
+
|
|
22
|
+
interface Props {
|
|
23
|
+
mobile?: boolean;
|
|
24
|
+
product: BarProduct;
|
|
25
|
+
config: BarConfig;
|
|
26
|
+
}
|
|
27
|
+
|
|
28
|
+
let { mobile = false, product, config }: Props = $props();
|
|
29
|
+
|
|
30
|
+
function openLiveChat(e: any) {
|
|
31
|
+
e.preventDefault();
|
|
32
|
+
if ((window as any).$crisp) {
|
|
33
|
+
(window as any).$crisp.push(['do', 'chat:open']);
|
|
34
|
+
}
|
|
35
|
+
supportDropdown = false;
|
|
36
|
+
}
|
|
37
|
+
|
|
38
|
+
function getName() {
|
|
39
|
+
if (config.name) {
|
|
40
|
+
return config.name;
|
|
41
|
+
}
|
|
42
|
+
return PRODUCTS[product as keyof typeof PRODUCTS]?.name || '';
|
|
43
|
+
}
|
|
28
44
|
</script>
|
|
29
45
|
|
|
30
46
|
<Dropdown align={mobile ? 'center' : 'end'} width={325} bind:show={supportDropdown}>
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
</ActionListItem>
|
|
43
|
-
</a>
|
|
44
|
-
{#if config.docs}
|
|
45
|
-
<a href="/docs" target="_blank">
|
|
46
|
-
<ActionListItem>
|
|
47
|
-
Documentation
|
|
48
|
-
<div slot="description">
|
|
49
|
-
Learn how to use {PRODUCTS[product].name}
|
|
50
|
-
</div>
|
|
51
|
-
<IconFileEarmark slot="start" />
|
|
52
|
-
<IconBoxArrowUpRight slot="end" size={12} />
|
|
53
|
-
</ActionListItem>
|
|
54
|
-
</a>
|
|
55
|
-
{/if}
|
|
56
|
-
<a href="https://hyvor.com/support" target="_blank">
|
|
57
|
-
<ActionListItem>
|
|
58
|
-
Support Form
|
|
59
|
-
<div slot="description">Get help from our team</div>
|
|
60
|
-
<IconInfoCircle slot="start" />
|
|
61
|
-
<IconBoxArrowUpRight slot="end" size={12} />
|
|
62
|
-
</ActionListItem>
|
|
63
|
-
</a>
|
|
64
|
-
{#if config.chat}
|
|
65
|
-
<a href="/chat" on:click={openLiveChat}>
|
|
47
|
+
{#snippet trigger()}
|
|
48
|
+
<Button variant="invisible" color="input" size="small">
|
|
49
|
+
Support
|
|
50
|
+
{#snippet end()}
|
|
51
|
+
<IconCaretDownFill size={10} />
|
|
52
|
+
{/snippet}
|
|
53
|
+
</Button>
|
|
54
|
+
{/snippet}
|
|
55
|
+
{#snippet content()}
|
|
56
|
+
<ActionList>
|
|
57
|
+
<a href="https://hyvor.community" target="_blank">
|
|
66
58
|
<ActionListItem>
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
59
|
+
Community Forum
|
|
60
|
+
{#snippet description()}
|
|
61
|
+
<div>hyvor.community</div>
|
|
62
|
+
{/snippet}
|
|
63
|
+
{#snippet start()}
|
|
64
|
+
<IconChat />
|
|
65
|
+
{/snippet}
|
|
66
|
+
{#snippet end()}
|
|
67
|
+
<IconBoxArrowUpRight size={12} />
|
|
68
|
+
{/snippet}
|
|
70
69
|
</ActionListItem>
|
|
71
70
|
</a>
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
<ActionListGroup title="Social">
|
|
75
|
-
<a href="https://hyvor.com/api/go/discord" target="_blank">
|
|
76
|
-
<ActionListItem>
|
|
77
|
-
Discord
|
|
78
|
-
<IconDiscord slot="start" />
|
|
79
|
-
<IconBoxArrowUpRight slot="end" size={12} />
|
|
80
|
-
</ActionListItem>
|
|
81
|
-
</a>
|
|
82
|
-
{#if config.twitter}
|
|
83
|
-
<a href={config.twitter} target="_blank">
|
|
71
|
+
{#if config.docs}
|
|
72
|
+
<a href="/docs" target="_blank">
|
|
84
73
|
<ActionListItem>
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
74
|
+
Documentation
|
|
75
|
+
{#snippet description()}
|
|
76
|
+
<div>
|
|
77
|
+
Learn how to use {getName()}
|
|
78
|
+
</div>
|
|
79
|
+
{/snippet}
|
|
80
|
+
{#snippet start()}
|
|
81
|
+
<IconFileEarmark />
|
|
82
|
+
{/snippet}
|
|
83
|
+
{#snippet end()}
|
|
84
|
+
<IconBoxArrowUpRight size={12} />
|
|
85
|
+
{/snippet}
|
|
88
86
|
</ActionListItem>
|
|
89
87
|
</a>
|
|
90
88
|
{/if}
|
|
91
|
-
<a href="https://
|
|
89
|
+
<a href="https://hyvor.com/support" target="_blank">
|
|
92
90
|
<ActionListItem>
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
91
|
+
Support Form
|
|
92
|
+
{#snippet description()}
|
|
93
|
+
<div>Get help from our team</div>
|
|
94
|
+
{/snippet}
|
|
95
|
+
{#snippet start()}
|
|
96
|
+
<IconInfoCircle />
|
|
97
|
+
{/snippet}
|
|
98
|
+
{#snippet end()}
|
|
99
|
+
<IconBoxArrowUpRight size={12} />
|
|
100
|
+
{/snippet}
|
|
96
101
|
</ActionListItem>
|
|
97
102
|
</a>
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
<ActionListGroup title="Rate us">
|
|
101
|
-
<a href="https://www.trustpilot.com/review/hyvor.com" target="_blank">
|
|
102
|
-
<ActionListItem>
|
|
103
|
-
<Trustpilot slot="start" />
|
|
104
|
-
Trustpilot
|
|
105
|
-
<IconBoxArrowUpRight slot="end" size={12} />
|
|
106
|
-
</ActionListItem>
|
|
107
|
-
</a>
|
|
108
|
-
{#if config.g2}
|
|
109
|
-
<a href="https://www.g2.com/products/hyvor-talk/reviews" target="_blank">
|
|
103
|
+
{#if config.chat}
|
|
104
|
+
<a href="/chat" onclick={openLiveChat}>
|
|
110
105
|
<ActionListItem>
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
106
|
+
Live Chat
|
|
107
|
+
{#snippet description()}
|
|
108
|
+
<div>Chat with our team</div>
|
|
109
|
+
{/snippet}
|
|
110
|
+
{#snippet start()}
|
|
111
|
+
<IconChatDots />
|
|
112
|
+
{/snippet}
|
|
114
113
|
</ActionListItem>
|
|
115
114
|
</a>
|
|
116
115
|
{/if}
|
|
117
|
-
|
|
118
|
-
|
|
116
|
+
|
|
117
|
+
<ActionListGroup title="Social">
|
|
118
|
+
<a href="https://hyvor.com/api/go/discord" target="_blank">
|
|
119
|
+
<ActionListItem>
|
|
120
|
+
Discord
|
|
121
|
+
{#snippet start()}
|
|
122
|
+
<IconDiscord />
|
|
123
|
+
{/snippet}
|
|
124
|
+
{#snippet end()}
|
|
125
|
+
<IconBoxArrowUpRight size={12} />
|
|
126
|
+
{/snippet}
|
|
127
|
+
</ActionListItem>
|
|
128
|
+
</a>
|
|
129
|
+
{#if config.twitter}
|
|
130
|
+
<a href={config.twitter} target="_blank">
|
|
131
|
+
<ActionListItem>
|
|
132
|
+
Twitter
|
|
133
|
+
{#snippet start()}
|
|
134
|
+
<IconTwitterX />
|
|
135
|
+
{/snippet}
|
|
136
|
+
{#snippet end()}
|
|
137
|
+
<IconBoxArrowUpRight size={12} />
|
|
138
|
+
{/snippet}
|
|
139
|
+
</ActionListItem>
|
|
140
|
+
</a>
|
|
141
|
+
{/if}
|
|
142
|
+
<a href="https://www.linkedin.com/company/hyvor" target="_blank">
|
|
143
|
+
<ActionListItem>
|
|
144
|
+
Linkedin
|
|
145
|
+
{#snippet start()}
|
|
146
|
+
<IconLinkedin />
|
|
147
|
+
{/snippet}
|
|
148
|
+
{#snippet end()}
|
|
149
|
+
<IconBoxArrowUpRight size={12} />
|
|
150
|
+
{/snippet}
|
|
151
|
+
</ActionListItem>
|
|
152
|
+
</a>
|
|
153
|
+
</ActionListGroup>
|
|
154
|
+
|
|
155
|
+
<ActionListGroup title="Rate us">
|
|
156
|
+
<a href="https://www.trustpilot.com/review/hyvor.com" target="_blank">
|
|
157
|
+
<ActionListItem>
|
|
158
|
+
{#snippet start()}
|
|
159
|
+
<Trustpilot />
|
|
160
|
+
{/snippet}
|
|
161
|
+
Trustpilot
|
|
162
|
+
{#snippet end()}
|
|
163
|
+
<IconBoxArrowUpRight size={12} />
|
|
164
|
+
{/snippet}
|
|
165
|
+
</ActionListItem>
|
|
166
|
+
</a>
|
|
167
|
+
{#if config.g2}
|
|
168
|
+
<a href="https://www.g2.com/products/hyvor-talk/reviews" target="_blank">
|
|
169
|
+
<ActionListItem>
|
|
170
|
+
{#snippet start()}
|
|
171
|
+
<G2 />
|
|
172
|
+
{/snippet}
|
|
173
|
+
G2
|
|
174
|
+
{#snippet end()}
|
|
175
|
+
<IconBoxArrowUpRight size={12} />
|
|
176
|
+
{/snippet}
|
|
177
|
+
</ActionListItem>
|
|
178
|
+
</a>
|
|
179
|
+
{/if}
|
|
180
|
+
</ActionListGroup>
|
|
181
|
+
</ActionList>
|
|
182
|
+
{/snippet}
|
|
119
183
|
</Dropdown>
|
|
@@ -1,19 +1,8 @@
|
|
|
1
|
-
import { SvelteComponent } from "svelte";
|
|
2
1
|
import type { BarConfig, BarProduct } from './bar.js';
|
|
3
|
-
declare const
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
[evt: string]: CustomEvent<any>;
|
|
11
|
-
};
|
|
12
|
-
slots: {};
|
|
13
|
-
};
|
|
14
|
-
export type BarSupportProps = typeof __propDef.props;
|
|
15
|
-
export type BarSupportEvents = typeof __propDef.events;
|
|
16
|
-
export type BarSupportSlots = typeof __propDef.slots;
|
|
17
|
-
export default class BarSupport extends SvelteComponent<BarSupportProps, BarSupportEvents, BarSupportSlots> {
|
|
18
|
-
}
|
|
19
|
-
export {};
|
|
2
|
+
declare const BarSupport: import("svelte").Component<{
|
|
3
|
+
mobile?: boolean;
|
|
4
|
+
product: BarProduct;
|
|
5
|
+
config: BarConfig;
|
|
6
|
+
}, {}, "">;
|
|
7
|
+
type BarSupport = ReturnType<typeof BarSupport>;
|
|
8
|
+
export default BarSupport;
|
|
@@ -1,24 +1,34 @@
|
|
|
1
|
-
<script
|
|
2
|
-
import {
|
|
3
|
-
import
|
|
4
|
-
import
|
|
5
|
-
|
|
6
|
-
|
|
1
|
+
<script lang="ts">
|
|
2
|
+
import { IconButton, Dropdown } from '../index.js';
|
|
3
|
+
import { IconMegaphone } from '@hyvor/icons';
|
|
4
|
+
import BarUpdatesList from './BarUpdatesList.svelte';
|
|
5
|
+
import { type BarProduct, barUnreadUpdates } from './bar.js';
|
|
6
|
+
|
|
7
|
+
interface Props {
|
|
8
|
+
instance: string;
|
|
9
|
+
product: BarProduct;
|
|
10
|
+
}
|
|
11
|
+
|
|
12
|
+
let { instance, product }: Props = $props();
|
|
7
13
|
</script>
|
|
8
14
|
|
|
9
15
|
<div class="updates">
|
|
10
16
|
<Dropdown align="end" width={525}>
|
|
11
|
-
|
|
12
|
-
<
|
|
17
|
+
{#snippet trigger()}
|
|
18
|
+
<IconButton color="input" variant="invisible">
|
|
19
|
+
<IconMegaphone size={14} />
|
|
13
20
|
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
21
|
+
{#if $barUnreadUpdates > 0}
|
|
22
|
+
<span class="unread">{$barUnreadUpdates}</span>
|
|
23
|
+
{/if}
|
|
24
|
+
</IconButton>
|
|
25
|
+
{/snippet}
|
|
18
26
|
|
|
19
|
-
|
|
20
|
-
<
|
|
21
|
-
|
|
27
|
+
{#snippet content()}
|
|
28
|
+
<div class="content-inner">
|
|
29
|
+
<BarUpdatesList {instance} {product} />
|
|
30
|
+
</div>
|
|
31
|
+
{/snippet}
|
|
22
32
|
</Dropdown>
|
|
23
33
|
</div>
|
|
24
34
|
|
|
@@ -1,18 +1,7 @@
|
|
|
1
|
-
import { SvelteComponent } from "svelte";
|
|
2
1
|
import { type BarProduct } from './bar.js';
|
|
3
|
-
declare const
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
[evt: string]: CustomEvent<any>;
|
|
10
|
-
};
|
|
11
|
-
slots: {};
|
|
12
|
-
};
|
|
13
|
-
export type BarUpdatesProps = typeof __propDef.props;
|
|
14
|
-
export type BarUpdatesEvents = typeof __propDef.events;
|
|
15
|
-
export type BarUpdatesSlots = typeof __propDef.slots;
|
|
16
|
-
export default class BarUpdates extends SvelteComponent<BarUpdatesProps, BarUpdatesEvents, BarUpdatesSlots> {
|
|
17
|
-
}
|
|
18
|
-
export {};
|
|
2
|
+
declare const BarUpdates: import("svelte").Component<{
|
|
3
|
+
instance: string;
|
|
4
|
+
product: BarProduct;
|
|
5
|
+
}, {}, "">;
|
|
6
|
+
type BarUpdates = ReturnType<typeof BarUpdates>;
|
|
7
|
+
export default BarUpdates;
|