@hyvor/design 0.0.25 → 0.0.27
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/TabNav/TabNav.svelte +22 -0
- package/dist/components/TabNav/TabNav.svelte.d.ts +19 -0
- package/dist/components/TabNav/TabNavItem.svelte +55 -0
- package/dist/components/TabNav/TabNavItem.svelte.d.ts +22 -0
- package/dist/components/TextInput/TextInput.svelte +1 -0
- package/dist/components/TextInput/TextInput.svelte.d.ts +1 -0
- package/dist/components/Textarea/Textarea.svelte +1 -0
- package/dist/components/Textarea/Textarea.svelte.d.ts +1 -0
- package/dist/components/index.d.ts +2 -0
- package/dist/components/index.js +2 -0
- package/dist/index.css +2 -0
- package/package.json +1 -1
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
<script>import { setContext } from "svelte";
|
|
2
|
+
import { writable } from "svelte/store";
|
|
3
|
+
export let active;
|
|
4
|
+
const activeStore = writable(active);
|
|
5
|
+
setContext("tab-nav-active", activeStore);
|
|
6
|
+
$:
|
|
7
|
+
active = $activeStore;
|
|
8
|
+
</script>
|
|
9
|
+
|
|
10
|
+
<div
|
|
11
|
+
class="tab-nav"
|
|
12
|
+
{...$$restProps}
|
|
13
|
+
>
|
|
14
|
+
<slot />
|
|
15
|
+
</div>
|
|
16
|
+
|
|
17
|
+
|
|
18
|
+
<style>
|
|
19
|
+
div {
|
|
20
|
+
display: flex;
|
|
21
|
+
}
|
|
22
|
+
</style>
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import { SvelteComponent } from "svelte";
|
|
2
|
+
declare const __propDef: {
|
|
3
|
+
props: {
|
|
4
|
+
[x: string]: any;
|
|
5
|
+
active: string;
|
|
6
|
+
};
|
|
7
|
+
events: {
|
|
8
|
+
[evt: string]: CustomEvent<any>;
|
|
9
|
+
};
|
|
10
|
+
slots: {
|
|
11
|
+
default: {};
|
|
12
|
+
};
|
|
13
|
+
};
|
|
14
|
+
export type TabNavProps = typeof __propDef.props;
|
|
15
|
+
export type TabNavEvents = typeof __propDef.events;
|
|
16
|
+
export type TabNavSlots = typeof __propDef.slots;
|
|
17
|
+
export default class TabNav extends SvelteComponent<TabNavProps, TabNavEvents, TabNavSlots> {
|
|
18
|
+
}
|
|
19
|
+
export {};
|
|
@@ -0,0 +1,55 @@
|
|
|
1
|
+
<script>import { getContext } from "svelte";
|
|
2
|
+
export let active = false;
|
|
3
|
+
export let name;
|
|
4
|
+
const activeStore = getContext("tab-nav-active");
|
|
5
|
+
$:
|
|
6
|
+
isActive = $activeStore === name || active;
|
|
7
|
+
function handleClick() {
|
|
8
|
+
activeStore.set(name);
|
|
9
|
+
}
|
|
10
|
+
</script>
|
|
11
|
+
|
|
12
|
+
<button
|
|
13
|
+
class="tab"
|
|
14
|
+
class:active={isActive}
|
|
15
|
+
on:click={handleClick}
|
|
16
|
+
{...$$restProps}
|
|
17
|
+
>
|
|
18
|
+
{#if $$slots.start}
|
|
19
|
+
<span class="start">
|
|
20
|
+
<slot name="start" />
|
|
21
|
+
</span>
|
|
22
|
+
{/if}
|
|
23
|
+
<slot />
|
|
24
|
+
{#if $$slots.end}
|
|
25
|
+
<span class="end">
|
|
26
|
+
<slot name="end" />
|
|
27
|
+
</span>
|
|
28
|
+
{/if}
|
|
29
|
+
</button>
|
|
30
|
+
|
|
31
|
+
<style>
|
|
32
|
+
.tab {
|
|
33
|
+
position: relative;
|
|
34
|
+
padding: 10px 15px;
|
|
35
|
+
border-bottom: 3px solid #f1f1f1;
|
|
36
|
+
cursor: pointer;
|
|
37
|
+
font-weight: 600;
|
|
38
|
+
display: flex;
|
|
39
|
+
align-items: center;
|
|
40
|
+
}
|
|
41
|
+
.tab.active {
|
|
42
|
+
border-bottom-color: var(--accent);
|
|
43
|
+
color: var(--accent);
|
|
44
|
+
}
|
|
45
|
+
.start {
|
|
46
|
+
display: inline-flex;
|
|
47
|
+
margin-right: 7px;
|
|
48
|
+
align-items: center;
|
|
49
|
+
}
|
|
50
|
+
.end {
|
|
51
|
+
display: inline-flex;
|
|
52
|
+
margin-left: 4px;
|
|
53
|
+
align-items: center;
|
|
54
|
+
}
|
|
55
|
+
</style>
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import { SvelteComponent } from "svelte";
|
|
2
|
+
declare const __propDef: {
|
|
3
|
+
props: {
|
|
4
|
+
[x: string]: any;
|
|
5
|
+
active?: boolean | undefined;
|
|
6
|
+
name: string;
|
|
7
|
+
};
|
|
8
|
+
events: {
|
|
9
|
+
[evt: string]: CustomEvent<any>;
|
|
10
|
+
};
|
|
11
|
+
slots: {
|
|
12
|
+
start: {};
|
|
13
|
+
default: {};
|
|
14
|
+
end: {};
|
|
15
|
+
};
|
|
16
|
+
};
|
|
17
|
+
export type TabNavItemProps = typeof __propDef.props;
|
|
18
|
+
export type TabNavItemEvents = typeof __propDef.events;
|
|
19
|
+
export type TabNavItemSlots = typeof __propDef.slots;
|
|
20
|
+
export default class TabNavItem extends SvelteComponent<TabNavItemProps, TabNavItemEvents, TabNavItemSlots> {
|
|
21
|
+
}
|
|
22
|
+
export {};
|
|
@@ -28,6 +28,8 @@ export { default as SplitControl } from './SplitControl/SplitControl.svelte';
|
|
|
28
28
|
export { default as Switch } from './Switch/Switch.svelte';
|
|
29
29
|
export { default as Table } from './Table/Table.svelte';
|
|
30
30
|
export { default as TableRow } from './Table/TableRow.svelte';
|
|
31
|
+
export { default as TabNav } from './TabNav/TabNav.svelte';
|
|
32
|
+
export { default as TabNavItem } from './TabNav/TabNavItem.svelte';
|
|
31
33
|
export { default as Tag } from './Tag/Tag.svelte';
|
|
32
34
|
export { default as Textarea } from './Textarea/Textarea.svelte';
|
|
33
35
|
export { default as Text } from './Text/Text.svelte';
|
package/dist/components/index.js
CHANGED
|
@@ -28,6 +28,8 @@ export { default as SplitControl } from './SplitControl/SplitControl.svelte';
|
|
|
28
28
|
export { default as Switch } from './Switch/Switch.svelte';
|
|
29
29
|
export { default as Table } from './Table/Table.svelte';
|
|
30
30
|
export { default as TableRow } from './Table/TableRow.svelte';
|
|
31
|
+
export { default as TabNav } from './TabNav/TabNav.svelte';
|
|
32
|
+
export { default as TabNavItem } from './TabNav/TabNavItem.svelte';
|
|
31
33
|
export { default as Tag } from './Tag/Tag.svelte';
|
|
32
34
|
export { default as Textarea } from './Textarea/Textarea.svelte';
|
|
33
35
|
export { default as Text } from './Text/Text.svelte';
|
package/dist/index.css
CHANGED