@hyvor/design 1.1.9 → 1.1.11
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/CodeBlock/getCode.js +8 -1
- package/dist/components/DetailCard/DetailCard.svelte +56 -0
- package/dist/components/DetailCard/DetailCard.svelte.d.ts +9 -0
- package/dist/components/DetailCard/DetailCards.svelte +25 -0
- package/dist/components/DetailCard/DetailCards.svelte.d.ts +8 -0
- package/dist/components/index.d.ts +2 -0
- package/dist/components/index.js +2 -0
- package/package.json +1 -1
|
@@ -36,6 +36,13 @@ export default function getCode(code, language) {
|
|
|
36
36
|
});
|
|
37
37
|
ret = lines.join('\n');
|
|
38
38
|
return language === null ?
|
|
39
|
-
ret :
|
|
39
|
+
encodeHtml(ret) :
|
|
40
40
|
hljs.highlight(ret, { language }).value;
|
|
41
41
|
}
|
|
42
|
+
function encodeHtml(str) {
|
|
43
|
+
return str.replace(/&/g, '&')
|
|
44
|
+
.replace(/</g, '<')
|
|
45
|
+
.replace(/>/g, '>')
|
|
46
|
+
.replace(/"/g, '"')
|
|
47
|
+
.replace(/'/g, ''');
|
|
48
|
+
}
|
|
@@ -0,0 +1,56 @@
|
|
|
1
|
+
<script lang="ts">
|
|
2
|
+
import type { Snippet } from "svelte";
|
|
3
|
+
|
|
4
|
+
interface Props {
|
|
5
|
+
label: string | Snippet;
|
|
6
|
+
content?: string;
|
|
7
|
+
children?: Snippet;
|
|
8
|
+
}
|
|
9
|
+
|
|
10
|
+
let { label, content, children }: Props = $props();
|
|
11
|
+
|
|
12
|
+
const labelId = `detail-card-${Math.random().toString(36).substring(2, 15)}`;
|
|
13
|
+
|
|
14
|
+
</script>
|
|
15
|
+
|
|
16
|
+
<div class="detail-card" role="region" aria-labelledby={labelId}>
|
|
17
|
+
|
|
18
|
+
<div class="label" id={labelId}>
|
|
19
|
+
{#if typeof label === "string"}
|
|
20
|
+
{label}
|
|
21
|
+
{:else}
|
|
22
|
+
{@render label()}
|
|
23
|
+
{/if}
|
|
24
|
+
</div>
|
|
25
|
+
|
|
26
|
+
<div class="content">
|
|
27
|
+
{#if children}
|
|
28
|
+
{@render children()}
|
|
29
|
+
{:else if content}
|
|
30
|
+
{content}
|
|
31
|
+
{/if}
|
|
32
|
+
</div>
|
|
33
|
+
|
|
34
|
+
</div>
|
|
35
|
+
|
|
36
|
+
<style>
|
|
37
|
+
.detail-card {
|
|
38
|
+
background: var(--hover);
|
|
39
|
+
padding: 15px 20px;
|
|
40
|
+
border-radius: var(--box-radius);
|
|
41
|
+
border: 1px solid var(--border);
|
|
42
|
+
}
|
|
43
|
+
.label {
|
|
44
|
+
display: block;
|
|
45
|
+
font-size: 12px;
|
|
46
|
+
font-weight: 600;
|
|
47
|
+
color: var(--text-light);
|
|
48
|
+
text-transform: uppercase;
|
|
49
|
+
letter-spacing: 0.5px;
|
|
50
|
+
margin-bottom: 6px;
|
|
51
|
+
}
|
|
52
|
+
.content {
|
|
53
|
+
font-size: 14px;
|
|
54
|
+
word-break: break-word;
|
|
55
|
+
}
|
|
56
|
+
</style>
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import type { Snippet } from "svelte";
|
|
2
|
+
interface Props {
|
|
3
|
+
label: string | Snippet;
|
|
4
|
+
content?: string;
|
|
5
|
+
children?: Snippet;
|
|
6
|
+
}
|
|
7
|
+
declare const DetailCard: import("svelte").Component<Props, {}, "">;
|
|
8
|
+
type DetailCard = ReturnType<typeof DetailCard>;
|
|
9
|
+
export default DetailCard;
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
<script lang="ts">
|
|
2
|
+
import type { Snippet } from "svelte";
|
|
3
|
+
|
|
4
|
+
interface Props {
|
|
5
|
+
children?: Snippet
|
|
6
|
+
min?: number;
|
|
7
|
+
}
|
|
8
|
+
|
|
9
|
+
let {
|
|
10
|
+
children,
|
|
11
|
+
min = 300
|
|
12
|
+
}: Props = $props();
|
|
13
|
+
</script>
|
|
14
|
+
|
|
15
|
+
<div class="cards" style="--min: {min}px">
|
|
16
|
+
{@render children?.()}
|
|
17
|
+
</div>
|
|
18
|
+
|
|
19
|
+
<style>
|
|
20
|
+
.cards {
|
|
21
|
+
display: grid;
|
|
22
|
+
grid-template-columns: repeat(auto-fit, minmax(var(--min), 1fr));
|
|
23
|
+
gap: 10px;
|
|
24
|
+
}
|
|
25
|
+
</style>
|
|
@@ -15,6 +15,8 @@ export { default as TabbedCodeBlock } from './CodeBlock/TabbedCodeBlock.svelte';
|
|
|
15
15
|
export { default as ColorPicker } from './ColorPicker/ColorPicker.svelte';
|
|
16
16
|
export { default as DarkProvider } from './Dark/DarkProvider.svelte';
|
|
17
17
|
export { default as DarkToggle } from './Dark/DarkToggle.svelte';
|
|
18
|
+
export { default as DetailCard } from './DetailCard/DetailCard.svelte';
|
|
19
|
+
export { default as DetailCards } from './DetailCard/DetailCards.svelte';
|
|
18
20
|
export { default as Dropdown } from './Dropdown/Dropdown.svelte';
|
|
19
21
|
export { default as Divider } from './Divider/Divider.svelte';
|
|
20
22
|
export { default as Caption } from './FormControl/Caption.svelte';
|
package/dist/components/index.js
CHANGED
|
@@ -15,6 +15,8 @@ export { default as TabbedCodeBlock } from './CodeBlock/TabbedCodeBlock.svelte';
|
|
|
15
15
|
export { default as ColorPicker } from './ColorPicker/ColorPicker.svelte';
|
|
16
16
|
export { default as DarkProvider } from './Dark/DarkProvider.svelte';
|
|
17
17
|
export { default as DarkToggle } from './Dark/DarkToggle.svelte';
|
|
18
|
+
export { default as DetailCard } from './DetailCard/DetailCard.svelte';
|
|
19
|
+
export { default as DetailCards } from './DetailCard/DetailCards.svelte';
|
|
18
20
|
export { default as Dropdown } from './Dropdown/Dropdown.svelte';
|
|
19
21
|
export { default as Divider } from './Divider/Divider.svelte';
|
|
20
22
|
export { default as Caption } from './FormControl/Caption.svelte';
|
package/package.json
CHANGED