@hyvor/design 0.0.67 → 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.
Files changed (184) hide show
  1. package/dist/components/ActionList/ActionList.svelte +21 -13
  2. package/dist/components/ActionList/ActionList.svelte.d.ts +8 -20
  3. package/dist/components/ActionList/ActionListGroup.svelte +40 -35
  4. package/dist/components/ActionList/ActionListGroup.svelte.d.ts +8 -20
  5. package/dist/components/ActionList/ActionListItem.svelte +129 -107
  6. package/dist/components/ActionList/ActionListItem.svelte.d.ts +27 -25
  7. package/dist/components/ActionList/Selected.svelte +27 -24
  8. package/dist/components/ActionList/Selected.svelte.d.ts +6 -17
  9. package/dist/components/Avatar/Avatar.svelte +22 -19
  10. package/dist/components/Avatar/Avatar.svelte.d.ts +7 -18
  11. package/dist/components/Avatar/AvatarStack.svelte +29 -27
  12. package/dist/components/Avatar/AvatarStack.svelte.d.ts +6 -18
  13. package/dist/components/Base/Base.svelte +16 -8
  14. package/dist/components/Base/Base.svelte.d.ts +6 -18
  15. package/dist/components/Box/Box.svelte +16 -9
  16. package/dist/components/Box/Box.svelte.d.ts +7 -19
  17. package/dist/components/Button/Button.svelte +65 -47
  18. package/dist/components/Button/Button.svelte.d.ts +16 -39
  19. package/dist/components/Button/ButtonGroup.svelte +14 -6
  20. package/dist/components/Button/ButtonGroup.svelte.d.ts +5 -27
  21. package/dist/components/Callout/Callout.svelte +110 -87
  22. package/dist/components/Callout/Callout.svelte.d.ts +11 -22
  23. package/dist/components/Checkbox/Checkbox.svelte +156 -144
  24. package/dist/components/Checkbox/Checkbox.svelte.d.ts +11 -34
  25. package/dist/components/CodeBlock/CodeBlock.svelte +45 -32
  26. package/dist/components/CodeBlock/CodeBlock.svelte.d.ts +6 -17
  27. package/dist/components/CodeBlock/getCode.js +8 -6
  28. package/dist/components/CodeBlock/hljs.scss +189 -191
  29. package/dist/components/CodeBlock/prism.scss +370 -7
  30. package/dist/components/ColorPicker/ColorPicker.svelte +75 -56
  31. package/dist/components/ColorPicker/ColorPicker.svelte.d.ts +25 -19
  32. package/dist/components/Dark/DarkProvider.svelte +16 -14
  33. package/dist/components/Dark/DarkProvider.svelte.d.ts +16 -12
  34. package/dist/components/Dark/DarkToggle.svelte +15 -16
  35. package/dist/components/Dark/DarkToggle.svelte.d.ts +16 -12
  36. package/dist/components/Divider/Divider.svelte +23 -13
  37. package/dist/components/Divider/Divider.svelte.d.ts +9 -20
  38. package/dist/components/Dropdown/Dropdown.svelte +58 -114
  39. package/dist/components/Dropdown/Dropdown.svelte.d.ts +13 -24
  40. package/dist/components/Dropdown/DropdownContent.svelte +152 -0
  41. package/dist/components/Dropdown/DropdownContent.svelte.d.ts +12 -0
  42. package/dist/components/FormControl/Caption.svelte +18 -11
  43. package/dist/components/FormControl/Caption.svelte.d.ts +7 -19
  44. package/dist/components/FormControl/FormControl.svelte +28 -19
  45. package/dist/components/FormControl/FormControl.svelte.d.ts +6 -27
  46. package/dist/components/FormControl/InputGroup.svelte +22 -15
  47. package/dist/components/FormControl/InputGroup.svelte.d.ts +7 -19
  48. package/dist/components/FormControl/Label.svelte +15 -6
  49. package/dist/components/FormControl/Label.svelte.d.ts +6 -27
  50. package/dist/components/FormControl/Validation.svelte +30 -19
  51. package/dist/components/FormControl/Validation.svelte.d.ts +9 -21
  52. package/dist/components/HyvorBar/BarProducts.svelte +71 -0
  53. package/dist/components/HyvorBar/BarProducts.svelte.d.ts +32 -0
  54. package/dist/components/HyvorBar/BarSupport.svelte +183 -0
  55. package/dist/components/HyvorBar/BarSupport.svelte.d.ts +8 -0
  56. package/dist/components/HyvorBar/BarUpdates.svelte +68 -0
  57. package/dist/components/HyvorBar/BarUpdates.svelte.d.ts +7 -0
  58. package/dist/components/HyvorBar/BarUpdatesList.svelte +159 -0
  59. package/dist/components/HyvorBar/BarUpdatesList.svelte.d.ts +7 -0
  60. package/dist/components/HyvorBar/BarUser.svelte +72 -0
  61. package/dist/components/HyvorBar/BarUser.svelte.d.ts +5 -0
  62. package/dist/components/HyvorBar/BarUserPreview.svelte +43 -0
  63. package/dist/components/HyvorBar/BarUserPreview.svelte.d.ts +18 -0
  64. package/dist/components/HyvorBar/HyvorBar.svelte +183 -0
  65. package/dist/components/HyvorBar/HyvorBar.svelte.d.ts +8 -0
  66. package/dist/components/HyvorBar/bar.d.ts +33 -0
  67. package/dist/components/HyvorBar/bar.js +74 -0
  68. package/dist/components/HyvorBar/img/G2.svelte +9 -0
  69. package/dist/components/HyvorBar/img/G2.svelte.d.ts +26 -0
  70. package/dist/components/HyvorBar/img/Trustpilot.svelte +11 -0
  71. package/dist/components/HyvorBar/img/Trustpilot.svelte.d.ts +26 -0
  72. package/dist/components/IconButton/IconButton.svelte +49 -32
  73. package/dist/components/IconButton/IconButton.svelte.d.ts +10 -33
  74. package/dist/components/IconMessage/IconMessage.svelte +157 -51
  75. package/dist/components/IconMessage/IconMessage.svelte.d.ts +19 -27
  76. package/dist/components/Internationalization/InternationalizationProvider.svelte +15 -8
  77. package/dist/components/Internationalization/InternationalizationProvider.svelte.d.ts +7 -19
  78. package/dist/components/Internationalization/LanguageToggle.svelte +80 -57
  79. package/dist/components/Internationalization/LanguageToggle.svelte.d.ts +11 -22
  80. package/dist/components/Internationalization/T.svelte +158 -114
  81. package/dist/components/Internationalization/T.svelte.d.ts +17 -15
  82. package/dist/components/Internationalization/i18n.d.ts +3 -5
  83. package/dist/components/Internationalization/i18n.js +13 -11
  84. package/dist/components/Internationalization/t.d.ts +2 -3
  85. package/dist/components/Internationalization/t.js +4 -4
  86. package/dist/components/Internationalization/types.d.ts +2 -1
  87. package/dist/components/Link/Link.svelte +68 -61
  88. package/dist/components/Link/Link.svelte.d.ts +11 -34
  89. package/dist/components/Loader/LoadButton.svelte +39 -38
  90. package/dist/components/Loader/LoadButton.svelte.d.ts +29 -42
  91. package/dist/components/Loader/Loader.svelte +121 -107
  92. package/dist/components/Loader/Loader.svelte.d.ts +15 -27
  93. package/dist/components/Modal/ConfirmModalProvider.svelte +41 -51
  94. package/dist/components/Modal/ConfirmModalProvider.svelte.d.ts +3 -14
  95. package/dist/components/Modal/Modal.svelte +202 -203
  96. package/dist/components/Modal/Modal.svelte.d.ts +31 -29
  97. package/dist/components/Modal/ModalFooter.svelte +36 -31
  98. package/dist/components/Modal/ModalFooter.svelte.d.ts +22 -18
  99. package/dist/components/Modal/confirm.d.ts +2 -2
  100. package/dist/components/Modal/confirm.js +4 -4
  101. package/dist/components/Modal/modal-types.d.ts +4 -4
  102. package/dist/components/NavLink/NavLink.svelte +94 -89
  103. package/dist/components/NavLink/NavLink.svelte.d.ts +11 -33
  104. package/dist/components/Radio/Radio.svelte +46 -35
  105. package/dist/components/Radio/Radio.svelte.d.ts +10 -33
  106. package/dist/components/Slider/Slider.svelte +129 -120
  107. package/dist/components/Slider/Slider.svelte.d.ts +24 -20
  108. package/dist/components/SplitControl/SplitControl.svelte +43 -48
  109. package/dist/components/SplitControl/SplitControl.svelte.d.ts +11 -24
  110. package/dist/components/Switch/Switch.svelte +77 -67
  111. package/dist/components/Switch/Switch.svelte.d.ts +8 -31
  112. package/dist/components/TabNav/TabNav.svelte +33 -23
  113. package/dist/components/TabNav/TabNav.svelte.d.ts +7 -19
  114. package/dist/components/TabNav/TabNavItem.svelte +65 -51
  115. package/dist/components/TabNav/TabNavItem.svelte.d.ts +10 -24
  116. package/dist/components/Table/Table.svelte +17 -7
  117. package/dist/components/Table/Table.svelte.d.ts +7 -19
  118. package/dist/components/Table/TableRow.svelte +32 -24
  119. package/dist/components/Table/TableRow.svelte.d.ts +7 -19
  120. package/dist/components/Tag/Tag.svelte +75 -49
  121. package/dist/components/Tag/Tag.svelte.d.ts +16 -39
  122. package/dist/components/Text/Text.svelte +33 -26
  123. package/dist/components/Text/Text.svelte.d.ts +10 -22
  124. package/dist/components/TextInput/TextInput.svelte +54 -33
  125. package/dist/components/TextInput/TextInput.svelte.d.ts +12 -36
  126. package/dist/components/Textarea/Textarea.svelte +68 -46
  127. package/dist/components/Textarea/Textarea.svelte.d.ts +13 -37
  128. package/dist/components/Toast/ToastIcon.svelte +55 -46
  129. package/dist/components/Toast/ToastIcon.svelte.d.ts +5 -16
  130. package/dist/components/Toast/ToastMessage.svelte +42 -41
  131. package/dist/components/Toast/ToastMessage.svelte.d.ts +5 -16
  132. package/dist/components/Toast/ToastProvider.svelte +22 -20
  133. package/dist/components/Toast/ToastProvider.svelte.d.ts +16 -12
  134. package/dist/components/Toast/cleaner.js +5 -5
  135. package/dist/components/Toast/toast.d.ts +3 -3
  136. package/dist/components/Toast/toast.js +10 -10
  137. package/dist/components/Tooltip/Tooltip.svelte +163 -148
  138. package/dist/components/Tooltip/Tooltip.svelte.d.ts +35 -23
  139. package/dist/components/directives/clickOutside.js +4 -4
  140. package/dist/components/directives/debounce.d.ts +1 -0
  141. package/dist/components/directives/debounce.js +8 -0
  142. package/dist/components/index.d.ts +1 -0
  143. package/dist/components/index.js +1 -0
  144. package/dist/index.css +31 -33
  145. package/dist/marketing/Container/Container.svelte +15 -9
  146. package/dist/marketing/Container/Container.svelte.d.ts +6 -18
  147. package/dist/marketing/Docs/Content/Content.svelte +48 -35
  148. package/dist/marketing/Docs/Content/Content.svelte.d.ts +5 -16
  149. package/dist/marketing/Docs/Content/DocsImage.svelte +67 -69
  150. package/dist/marketing/Docs/Content/DocsImage.svelte.d.ts +9 -20
  151. package/dist/marketing/Docs/Docs.svelte +28 -25
  152. package/dist/marketing/Docs/Docs.svelte.d.ts +6 -29
  153. package/dist/marketing/Docs/Nav/Nav.svelte +96 -70
  154. package/dist/marketing/Docs/Nav/Nav.svelte.d.ts +5 -16
  155. package/dist/marketing/Docs/Nav/NavCategory.svelte +39 -29
  156. package/dist/marketing/Docs/Nav/NavCategory.svelte.d.ts +8 -20
  157. package/dist/marketing/Docs/Nav/NavItem.svelte +30 -26
  158. package/dist/marketing/Docs/Nav/NavItem.svelte.d.ts +6 -18
  159. package/dist/marketing/Docs/Sidebar/Sidebar.svelte +22 -25
  160. package/dist/marketing/Docs/Sidebar/Sidebar.svelte.d.ts +22 -19
  161. package/dist/marketing/Docs/Toc.svelte +64 -56
  162. package/dist/marketing/Docs/Toc.svelte.d.ts +3 -14
  163. package/dist/marketing/Document/Document.svelte +15 -8
  164. package/dist/marketing/Document/Document.svelte.d.ts +7 -19
  165. package/dist/marketing/Document/DocumentTitle.svelte +65 -54
  166. package/dist/marketing/Document/DocumentTitle.svelte.d.ts +9 -20
  167. package/dist/marketing/Footer/Footer.svelte +154 -145
  168. package/dist/marketing/Footer/Footer.svelte.d.ts +8 -20
  169. package/dist/marketing/Footer/FooterLinkList.svelte +31 -27
  170. package/dist/marketing/Footer/FooterLinkList.svelte.d.ts +6 -18
  171. package/dist/marketing/Header/Header.svelte +47 -37
  172. package/dist/marketing/Header/Header.svelte.d.ts +10 -22
  173. package/dist/marketing/Logo/LogoBlogs.svelte +46 -0
  174. package/dist/marketing/Logo/LogoBlogs.svelte.d.ts +5 -0
  175. package/dist/marketing/Logo/LogoCore.svelte +46 -0
  176. package/dist/marketing/Logo/LogoCore.svelte.d.ts +5 -0
  177. package/dist/marketing/Logo/LogoFortguard.svelte +54 -0
  178. package/dist/marketing/Logo/LogoFortguard.svelte.d.ts +5 -0
  179. package/dist/marketing/Logo/LogoTalk.svelte +32 -0
  180. package/dist/marketing/Logo/LogoTalk.svelte.d.ts +5 -0
  181. package/dist/stores/dark.d.ts +0 -1
  182. package/dist/stores/dark.js +8 -8
  183. package/dist/variables.scss +41 -48
  184. package/package.json +59 -58
@@ -1,20 +1,9 @@
1
- import { SvelteComponent } from "svelte";
2
- declare const __propDef: {
3
- props: {
4
- title: string;
5
- subtitle?: string | undefined;
6
- icon?: string | null | undefined;
7
- h2Style?: string | undefined;
8
- wrapStyle?: string | undefined;
9
- };
10
- events: {
11
- [evt: string]: CustomEvent<any>;
12
- };
13
- slots: {};
14
- };
15
- export type DocumentTitleProps = typeof __propDef.props;
16
- export type DocumentTitleEvents = typeof __propDef.events;
17
- export type DocumentTitleSlots = typeof __propDef.slots;
18
- export default class DocumentTitle extends SvelteComponent<DocumentTitleProps, DocumentTitleEvents, DocumentTitleSlots> {
19
- }
20
- export {};
1
+ declare const DocumentTitle: import("svelte").Component<{
2
+ title: string;
3
+ subtitle?: string | undefined;
4
+ icon?: null | string;
5
+ h2Style?: string | undefined;
6
+ wrapStyle?: string | undefined;
7
+ }, {}, "">;
8
+ type DocumentTitle = ReturnType<typeof DocumentTitle>;
9
+ export default DocumentTitle;
@@ -1,159 +1,168 @@
1
- <script>import Container from "../Container/Container.svelte";
2
- import { IconCopy, IconDiscord, IconEnvelope, IconGithub, IconLinkedin, IconTwitterX, IconYoutube } from "@hyvor/icons";
3
- import Link from "../../components/Link/Link.svelte";
4
- import IconButton from "../../components/IconButton/IconButton.svelte";
5
- import Tooltip from "../../components/Tooltip/Tooltip.svelte";
6
- import LanguageToggle from "../../components/Internationalization/LanguageToggle.svelte";
7
- const year = (/* @__PURE__ */ new Date()).getFullYear();
8
- export let email = null;
9
- export let social = {};
10
- social = {
11
- ...{
12
- x: null,
13
- discord: "https://discord.com/invite/2WRJxQB",
14
- github: "https://github.com/hyvor",
15
- youtube: "https://www.youtube.com/@HYVOR",
16
- linkedin: "https://www.linkedin.com/company/30240435"
17
- },
18
- ...social
19
- };
20
- export let emailCopied = false;
21
- function handleCopy() {
22
- navigator.clipboard.writeText(email);
23
- emailCopied = true;
24
- setTimeout(() => {
25
- emailCopied = false;
26
- }, 1e3);
27
- }
1
+ <script lang="ts">
2
+ import Container from '../Container/Container.svelte';
3
+ import {
4
+ IconCopy,
5
+ IconDiscord,
6
+ IconEnvelope,
7
+ IconGithub,
8
+ IconLinkedin,
9
+ IconTwitterX,
10
+ IconYoutube
11
+ } from '@hyvor/icons';
12
+ import Link from '../../components/Link/Link.svelte';
13
+ import IconButton from '../../components/IconButton/IconButton.svelte';
14
+ import Tooltip from '../../components/Tooltip/Tooltip.svelte';
15
+ import LanguageToggle from '../../components/Internationalization/LanguageToggle.svelte';
16
+
17
+ const year = new Date().getFullYear();
18
+
19
+ interface Props {
20
+ email?: string | null;
21
+ social?: any;
22
+ emailCopied?: boolean;
23
+ center?: import('svelte').Snippet;
24
+ }
25
+
26
+ let {
27
+ email = null,
28
+ social = $bindable({} as Record<string, string | null>),
29
+ emailCopied = $bindable(false),
30
+ center
31
+ }: Props = $props();
32
+
33
+ social = {
34
+ ...{
35
+ x: null,
36
+ discord: 'https://discord.com/invite/2WRJxQB',
37
+ github: 'https://github.com/hyvor',
38
+ youtube: 'https://www.youtube.com/@HYVOR',
39
+ linkedin: 'https://www.linkedin.com/company/30240435'
40
+ },
41
+ ...social
42
+ };
43
+
44
+ function handleCopy() {
45
+ navigator.clipboard.writeText(email!);
46
+ emailCopied = true;
47
+ setTimeout(() => {
48
+ emailCopied = false;
49
+ }, 1000);
50
+ }
28
51
  </script>
29
52
 
30
53
  <footer>
31
-
32
- <Container>
33
-
34
- <div class="footer-top">
35
-
36
- <div class="footer-top-left">
37
-
38
- {#if email}
39
- <div class="email-wrap">
40
- <Link href="mailto:{email}" underline={false} color="text" rel="nofollow">
41
- <IconEnvelope slot="start" />
42
- { email }
43
- </Link>
44
- <Tooltip text={emailCopied ? "Copied!" : "Copy email"} position="top">
45
- <IconButton
46
- size="small"
47
- variant="invisible"
48
- on:click={handleCopy}
49
- on:mouseleave={() => emailCopied = false}
50
- >
51
- <IconCopy size={12} />
52
- </IconButton>
53
- </Tooltip>
54
- </div>
55
- {/if}
56
-
57
- <div class="social-media">
58
- {#if social.github}
59
- <a href={social.github} target="_blank" rel="nofollow"><IconGithub /></a>
60
- {/if}
61
- {#if social.x}
62
- <a href={social.x} target="_blank" rel="nofollow"><IconTwitterX /></a>
63
- {/if}
64
- {#if social.discord}
65
- <a href={social.discord} target="_blank" rel="nofollow"><IconDiscord /></a>
66
- {/if}
67
- {#if social.youtube}
68
- <a href={social.discord} target="_blank" rel="nofollow"><IconYoutube /></a>
69
- {/if}
70
- {#if social.linkedin}
71
- <a href={social.linkedin} target="_blank" rel="nofollow"><IconLinkedin /></a>
72
- {/if}
73
- </div>
74
-
75
- </div>
76
-
77
- <div class="footer-top-right">
78
-
79
-
80
- <span class="language-toggle-wrap">
81
- <LanguageToggle />
82
- </span>
83
-
84
- </div>
85
-
86
- </div>
87
-
88
- <div class="footer-center">
89
- <slot name="center" />
90
- </div>
91
-
92
- <div class="footer-bottom">
93
- <div class="footer-bottom-left">
94
- HYVOR © {year}
95
- </div>
96
- <div class="footer-bottom-right">
97
- From France 🇫🇷
98
- </div>
99
- </div>
100
-
101
- </Container>
102
-
54
+ <Container>
55
+ <div class="footer-top">
56
+ <div class="footer-top-left">
57
+ {#if email}
58
+ <div class="email-wrap">
59
+ <Link href="mailto:{email}" underline={false} color="text" rel="nofollow">
60
+ {#snippet start()}
61
+ <IconEnvelope />
62
+ {/snippet}
63
+ {email}
64
+ </Link>
65
+ <Tooltip text={emailCopied ? 'Copied!' : 'Copy email'} position="top">
66
+ <IconButton
67
+ size="small"
68
+ variant="invisible"
69
+ on:click={handleCopy}
70
+ on:mouseleave={() => (emailCopied = false)}
71
+ >
72
+ <IconCopy size={12} />
73
+ </IconButton>
74
+ </Tooltip>
75
+ </div>
76
+ {/if}
77
+
78
+ <div class="social-media">
79
+ {#if social.github}
80
+ <a href={social.github} target="_blank" rel="nofollow"><IconGithub /></a>
81
+ {/if}
82
+ {#if social.x}
83
+ <a href={social.x} target="_blank" rel="nofollow"><IconTwitterX /></a>
84
+ {/if}
85
+ {#if social.discord}
86
+ <a href={social.discord} target="_blank" rel="nofollow"><IconDiscord /></a>
87
+ {/if}
88
+ {#if social.youtube}
89
+ <a href={social.youtube} target="_blank" rel="nofollow"><IconYoutube /></a>
90
+ {/if}
91
+ {#if social.linkedin}
92
+ <a href={social.linkedin} target="_blank" rel="nofollow"><IconLinkedin /></a>
93
+ {/if}
94
+ </div>
95
+ </div>
96
+
97
+ <div class="footer-top-right">
98
+ <span class="language-toggle-wrap">
99
+ <LanguageToggle />
100
+ </span>
101
+ </div>
102
+ </div>
103
+
104
+ <div class="footer-center">
105
+ {@render center?.()}
106
+ </div>
107
+
108
+ <div class="footer-bottom">
109
+ <div class="footer-bottom-left">
110
+ HYVOR © {year}
111
+ </div>
112
+ <div class="footer-bottom-right">From France 🇫🇷</div>
113
+ </div>
114
+ </Container>
103
115
  </footer>
104
116
 
105
117
  <style>
118
+ footer {
119
+ border-top: 1px solid var(--border);
120
+ }
106
121
 
107
- footer {
108
- border-top: 1px solid var(--border)
109
- }
110
-
111
- .footer-top {
112
- padding-top: 60px;
113
- display: flex;
114
- align-items: flex-start;
115
- }
116
- .footer-center {
117
- padding-top: 50px;
118
- }
119
- .footer-top-left {
120
- flex: 1;
121
- }
122
- .footer-top-right {
123
- display: flex;
124
- }
125
- .email-wrap {
126
- display: inline-flex;
127
- align-items: center;
128
- gap: 4px;
129
- margin-bottom: 15px;
130
- }
131
- .social-media a {
132
- display: inline-block;
133
- padding: 3px;
134
- margin-right: 8px;
135
- color: var(--text-light);
136
- }
137
- .social-media a:first-child {
138
- padding-left: 0;
139
- }
140
- .social-media a:hover {
141
- color: var(--accent);
142
- }
143
-
144
- .footer-bottom {
145
- padding-top: 50px;
146
- padding-bottom: 30px;
147
- display: flex;
148
- }
149
- .footer-bottom-left {
150
- flex: 1;
151
- }
122
+ .footer-top {
123
+ padding-top: 60px;
124
+ display: flex;
125
+ align-items: flex-start;
126
+ }
127
+ .footer-center {
128
+ padding-top: 50px;
129
+ }
130
+ .footer-top-left {
131
+ flex: 1;
132
+ }
133
+ .footer-top-right {
134
+ display: flex;
135
+ }
136
+ .email-wrap {
137
+ display: inline-flex;
138
+ align-items: center;
139
+ gap: 4px;
140
+ margin-bottom: 15px;
141
+ }
142
+ .social-media a {
143
+ display: inline-block;
144
+ padding: 3px;
145
+ margin-right: 8px;
146
+ color: var(--text-light);
147
+ }
148
+ .social-media a:first-child {
149
+ padding-left: 0;
150
+ }
151
+ .social-media a:hover {
152
+ color: var(--accent);
153
+ }
152
154
 
155
+ .footer-bottom {
156
+ padding-top: 50px;
157
+ padding-bottom: 30px;
158
+ display: flex;
159
+ }
160
+ .footer-bottom-left {
161
+ flex: 1;
162
+ }
153
163
 
154
164
  .language-toggle-wrap {
155
165
  margin-left: 8px;
156
166
  font-size: 18px;
157
167
  }
158
-
159
168
  </style>
@@ -1,20 +1,8 @@
1
- import { SvelteComponent } from "svelte";
2
- declare const __propDef: {
3
- props: {
4
- email?: string | null | undefined;
5
- social?: Record<string, string | null> | undefined;
6
- emailCopied?: boolean | undefined;
7
- };
8
- events: {
9
- [evt: string]: CustomEvent<any>;
10
- };
11
- slots: {
12
- center: {};
13
- };
14
- };
15
- export type FooterProps = typeof __propDef.props;
16
- export type FooterEvents = typeof __propDef.events;
17
- export type FooterSlots = typeof __propDef.slots;
18
- export default class Footer extends SvelteComponent<FooterProps, FooterEvents, FooterSlots> {
19
- }
20
- export {};
1
+ declare const Footer: import("svelte").Component<{
2
+ email?: string | null;
3
+ social?: any;
4
+ emailCopied?: boolean;
5
+ center?: import("svelte").Snippet;
6
+ }, {}, "social" | "emailCopied">;
7
+ type Footer = ReturnType<typeof Footer>;
8
+ export default Footer;
@@ -1,36 +1,40 @@
1
- <script>export let title;
1
+ <script lang="ts">
2
+ interface Props {
3
+ title: string;
4
+ children?: import('svelte').Snippet;
5
+ }
6
+
7
+ let { title, children }: Props = $props();
2
8
  </script>
3
9
 
4
10
  <div class="link-list">
5
- <div class="title">{title}</div>
6
- <div class="links">
7
- <slot />
8
- </div>
11
+ <div class="title">{title}</div>
12
+ <div class="links">
13
+ {@render children?.()}
14
+ </div>
9
15
  </div>
10
16
 
11
17
  <style>
18
+ .link-list {
19
+ flex: 1;
20
+ }
12
21
 
13
- .link-list {
14
- flex: 1;
15
- }
16
-
17
- .title {
18
- font-weight: 600;
19
- text-transform: uppercase;
20
- margin-bottom: 10px;
21
- }
22
-
23
- .links {
24
- display: flex;
25
- flex-direction: column;
26
- align-items: flex-start;
27
- }
22
+ .title {
23
+ font-weight: 600;
24
+ text-transform: uppercase;
25
+ margin-bottom: 10px;
26
+ }
28
27
 
29
- .links :global(a) {
30
- margin-top: 12px;
31
- }
32
- .links :global(a:hover) {
33
- text-decoration: underline;
34
- }
28
+ .links {
29
+ display: flex;
30
+ flex-direction: column;
31
+ align-items: flex-start;
32
+ }
35
33
 
36
- </style>
34
+ .links :global(a) {
35
+ margin-top: 12px;
36
+ }
37
+ .links :global(a:hover) {
38
+ text-decoration: underline;
39
+ }
40
+ </style>
@@ -1,18 +1,6 @@
1
- import { SvelteComponent } from "svelte";
2
- declare const __propDef: {
3
- props: {
4
- title: string;
5
- };
6
- events: {
7
- [evt: string]: CustomEvent<any>;
8
- };
9
- slots: {
10
- default: {};
11
- };
12
- };
13
- export type FooterLinkListProps = typeof __propDef.props;
14
- export type FooterLinkListEvents = typeof __propDef.events;
15
- export type FooterLinkListSlots = typeof __propDef.slots;
16
- export default class FooterLinkList extends SvelteComponent<FooterLinkListProps, FooterLinkListEvents, FooterLinkListSlots> {
17
- }
18
- export {};
1
+ declare const FooterLinkList: import("svelte").Component<{
2
+ title: string;
3
+ children?: import("svelte").Snippet;
4
+ }, {}, "">;
5
+ type FooterLinkList = ReturnType<typeof FooterLinkList>;
6
+ export default FooterLinkList;
@@ -1,41 +1,52 @@
1
- <script>import Container from "./../Container/Container.svelte";
2
- import DarkToggle from "../../components/Dark/DarkToggle.svelte";
3
- import IconButton from "../../components/IconButton/IconButton.svelte";
4
- import Dropdown from "../../components/Dropdown/Dropdown.svelte";
5
- import Tooltip from "../../components/Tooltip/Tooltip.svelte";
6
- import { IconList } from "@hyvor/icons";
7
- export let logo;
8
- export let name = "HYVOR";
9
- export let subName = void 0;
10
- export let darkToggle = true;
1
+ <script lang="ts">
2
+ import Container from './../Container/Container.svelte';
3
+ import DarkToggle from '../../components/Dark/DarkToggle.svelte';
4
+ import IconButton from '../../components/IconButton/IconButton.svelte';
5
+ import Dropdown from '../../components/Dropdown/Dropdown.svelte';
6
+ import { IconList } from '@hyvor/icons';
7
+
8
+ interface Props {
9
+ logo: string;
10
+ name?: string;
11
+ subName?: undefined | string;
12
+ darkToggle?: boolean;
13
+ center?: import('svelte').Snippet;
14
+ end?: import('svelte').Snippet;
15
+ }
16
+
17
+ let {
18
+ logo,
19
+ name = 'HYVOR',
20
+ subName = undefined,
21
+ darkToggle = true,
22
+ center,
23
+ end
24
+ }: Props = $props();
11
25
  </script>
12
26
 
13
27
  <header>
14
-
15
28
  <Container as="nav">
16
-
17
29
  <div class="nav-start">
18
- <a class="nav-brand" href="/">
19
- <img src={logo} alt="Hyvor Logo" width="30" height="30" />
30
+ <a class="nav-brand" href="/">
31
+ <img src={logo} alt="Hyvor Logo" width="30" height="30" />
20
32
  <span class="brand-product">
21
33
  <span class="brand">{name}</span>
22
34
  {#if subName}
23
35
  <span class="product">{subName}</span>
24
36
  {/if}
25
37
  </span>
26
- </a>
27
- </div>
38
+ </a>
39
+ </div>
28
40
 
29
41
  <div class="nav-center">
30
- <slot name="center" />
42
+ {@render center?.()}
31
43
  </div>
32
44
 
33
45
  <div class="nav-end">
34
- <slot name="end" />
46
+ {@render end?.()}
35
47
  </div>
36
48
 
37
49
  <div class="dark-mobile">
38
-
39
50
  {#if darkToggle}
40
51
  <span class="dark-toggle-wrap">
41
52
  <DarkToggle />
@@ -60,33 +71,31 @@ export let darkToggle = true;
60
71
  </div>
61
72
  </Dropdown>
62
73
  </span> -->
63
-
64
74
  </div>
65
75
 
66
76
  <span class="mobile-nav-wrap">
67
77
  <Dropdown align="end" width={300}>
68
- <IconButton
69
- variant="invisible"
70
- slot="trigger"
71
- >
72
- <IconList size={18} />
73
- </IconButton>
74
- <div slot="content" class="mobile-content">
75
- <div class="mobile-inner center">
76
- <slot name="center" />
77
- </div>
78
- <div class="mobile-inner end">
79
- <slot name="end" />
78
+ {#snippet trigger()}
79
+ <IconButton variant="invisible">
80
+ <IconList size={18} />
81
+ </IconButton>
82
+ {/snippet}
83
+ {#snippet content()}
84
+ <div class="mobile-content">
85
+ <div class="mobile-inner center">
86
+ {@render center?.()}
87
+ </div>
88
+ <div class="mobile-inner end">
89
+ {@render end?.()}
90
+ </div>
80
91
  </div>
81
- </div>
92
+ {/snippet}
82
93
  </Dropdown>
83
94
  </span>
84
-
85
95
  </Container>
86
-
87
96
  </header>
88
97
 
89
- <div class="header-space" />
98
+ <div class="header-space"></div>
90
99
 
91
100
  <style>.header-space {
92
101
  height: var(--header-height);
@@ -184,7 +193,8 @@ header :global(nav) {
184
193
  display: inline-block;
185
194
  }
186
195
  }
187
- .mobile-content, .mobile-inner {
196
+ .mobile-content,
197
+ .mobile-inner {
188
198
  display: flex;
189
199
  flex-direction: column;
190
200
  }
@@ -1,22 +1,10 @@
1
- import { SvelteComponent } from "svelte";
2
- declare const __propDef: {
3
- props: {
4
- logo: string;
5
- name?: string | undefined;
6
- subName?: undefined | string;
7
- darkToggle?: boolean | undefined;
8
- };
9
- events: {
10
- [evt: string]: CustomEvent<any>;
11
- };
12
- slots: {
13
- center: {};
14
- end: {};
15
- };
16
- };
17
- export type HeaderProps = typeof __propDef.props;
18
- export type HeaderEvents = typeof __propDef.events;
19
- export type HeaderSlots = typeof __propDef.slots;
20
- export default class Header extends SvelteComponent<HeaderProps, HeaderEvents, HeaderSlots> {
21
- }
22
- export {};
1
+ declare const Header: import("svelte").Component<{
2
+ logo: string;
3
+ name?: string;
4
+ subName?: undefined | string;
5
+ darkToggle?: boolean;
6
+ center?: import("svelte").Snippet;
7
+ end?: import("svelte").Snippet;
8
+ }, {}, "">;
9
+ type Header = ReturnType<typeof Header>;
10
+ export default Header;