@likable-hair/svelte 0.0.4 → 0.0.7
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/README.md +12 -24
- package/buttons/Button.svelte +102 -0
- package/buttons/Button.svelte.d.ts +25 -0
- package/forms/Textfield.svelte +1 -0
- package/index.d.ts +2 -0
- package/index.js +2 -0
- package/media/Icon.svelte +7 -3
- package/media/Icon.svelte.d.ts +2 -0
- package/navigation/HeaderMenu.svelte +21 -7
- package/navigation/HeaderMenu.svelte.d.ts +7 -1
- package/navigation/Navigator.svelte +3 -26
- package/navigation/Navigator.svelte.d.ts +8 -1
- package/navigation/TabSwitcher.svelte +86 -0
- package/navigation/TabSwitcher.svelte.d.ts +24 -0
- package/package.json +8 -3
- package/timeline/SimpleTimeLine.svelte +1 -0
- package/timeline/SimpleTimeLine.svelte.d.ts +19 -0
package/README.md
CHANGED
|
@@ -1,38 +1,26 @@
|
|
|
1
|
-
#
|
|
1
|
+
# Likablehair Svelte component library
|
|
2
2
|
|
|
3
|
-
|
|
3
|
+
A simple library that contains svelte components, used by likablehair frontend applications
|
|
4
4
|
|
|
5
|
-
##
|
|
5
|
+
## Developer guide
|
|
6
6
|
|
|
7
|
-
|
|
7
|
+
Install dependencies and start a local server to develop components:
|
|
8
8
|
|
|
9
9
|
```bash
|
|
10
|
-
#
|
|
11
|
-
npm
|
|
10
|
+
# Install deps
|
|
11
|
+
npm install
|
|
12
12
|
|
|
13
|
-
#
|
|
14
|
-
npm init svelte@next my-app
|
|
15
|
-
```
|
|
16
|
-
|
|
17
|
-
> Note: the `@next` is temporary
|
|
18
|
-
|
|
19
|
-
## Developing
|
|
20
|
-
|
|
21
|
-
Once you've created a project and installed dependencies with `npm install` (or `pnpm install` or `yarn`), start a development server:
|
|
22
|
-
|
|
23
|
-
```bash
|
|
13
|
+
# Start local server
|
|
24
14
|
npm run dev
|
|
25
15
|
|
|
26
16
|
# or start the server and open the app in a new browser tab
|
|
27
17
|
npm run dev -- --open
|
|
28
18
|
```
|
|
29
19
|
|
|
30
|
-
##
|
|
31
|
-
|
|
32
|
-
Before creating a production version of your app, install an [adapter](https://kit.svelte.dev/docs#adapters) for your target environment. Then:
|
|
20
|
+
## Publisher guide
|
|
33
21
|
|
|
34
|
-
|
|
35
|
-
npm run build
|
|
36
|
-
```
|
|
22
|
+
To publish the package make the following steps:
|
|
37
23
|
|
|
38
|
-
|
|
24
|
+
- edit the package.json version, then commit all the changes
|
|
25
|
+
- run `npm run package`, svelte will generate a package folder with all the necessary stuff inside
|
|
26
|
+
- make sure you're logged in with your npm account, then run `npm publish ./package --access=public`
|
|
@@ -0,0 +1,102 @@
|
|
|
1
|
+
<script >export let type = 'default';
|
|
2
|
+
export let icon = undefined;
|
|
3
|
+
export let iconSize = 15;
|
|
4
|
+
let clazz = '';
|
|
5
|
+
export { clazz as class };
|
|
6
|
+
$: position = !!$$slots.append ? 'relative' : undefined;
|
|
7
|
+
$: cssVariables = Object.entries({
|
|
8
|
+
'--icon-button-height': (iconSize + 15) + 'pt',
|
|
9
|
+
'--icon-button-width': (iconSize + 15) + 'pt',
|
|
10
|
+
'--button-position': position
|
|
11
|
+
}).filter(([key]) => key.startsWith('--'))
|
|
12
|
+
.reduce((css, [key, value]) => {
|
|
13
|
+
return `${css}${key}: ${value};`;
|
|
14
|
+
}, '');
|
|
15
|
+
import '$lib/common/tailwind.css';
|
|
16
|
+
import Icon from '../media/Icon.svelte';
|
|
17
|
+
</script>
|
|
18
|
+
|
|
19
|
+
<div
|
|
20
|
+
class="button {clazz}"
|
|
21
|
+
class:button-default={type === 'default'}
|
|
22
|
+
class:button-text={type === 'text'}
|
|
23
|
+
class:button-icon={type === 'icon'}
|
|
24
|
+
on:click
|
|
25
|
+
style={cssVariables}
|
|
26
|
+
>
|
|
27
|
+
{#if !!icon}
|
|
28
|
+
<Icon name={icon} size={iconSize}></Icon>
|
|
29
|
+
{:else}
|
|
30
|
+
<slot></slot>
|
|
31
|
+
{/if}
|
|
32
|
+
{#if $$slots.append}
|
|
33
|
+
<span class="append-item">
|
|
34
|
+
<slot name="append">
|
|
35
|
+
|
|
36
|
+
</slot>
|
|
37
|
+
</span>
|
|
38
|
+
{/if}
|
|
39
|
+
</div>
|
|
40
|
+
|
|
41
|
+
<style>
|
|
42
|
+
.append-item {
|
|
43
|
+
position: absolute;
|
|
44
|
+
right: 0px;
|
|
45
|
+
}
|
|
46
|
+
|
|
47
|
+
.button {
|
|
48
|
+
overflow: hidden;
|
|
49
|
+
position: var(--button-position);
|
|
50
|
+
width: var(--width, fit-content);
|
|
51
|
+
height: var(--height, fit-content);
|
|
52
|
+
text-align: var(--text-align, center);
|
|
53
|
+
cursor: var(--cursor, pointer);
|
|
54
|
+
padding: var(--padding, 5px);
|
|
55
|
+
font-size: var(--font-size);
|
|
56
|
+
}
|
|
57
|
+
|
|
58
|
+
.button-default {
|
|
59
|
+
transition: background-color 200ms;
|
|
60
|
+
color: var(--color);
|
|
61
|
+
background-color: var(--background-color);
|
|
62
|
+
outline: 0;
|
|
63
|
+
border: 0;
|
|
64
|
+
border-radius: var(--border-radius, 0.25rem);
|
|
65
|
+
box-shadow: var(--box-shadow, 0 0 0.5rem rgba(0, 0, 0, 0.3));
|
|
66
|
+
}
|
|
67
|
+
|
|
68
|
+
.button-default:hover {
|
|
69
|
+
background-color: var(--hover-background-color, var(--background-color));
|
|
70
|
+
}
|
|
71
|
+
|
|
72
|
+
.button-text {
|
|
73
|
+
color: var(--color);
|
|
74
|
+
transition: background-color 200ms;
|
|
75
|
+
text-transform: uppercase;
|
|
76
|
+
font-weight: 600;
|
|
77
|
+
outline: 0;
|
|
78
|
+
border: 0;
|
|
79
|
+
border-radius: var(--border-radius, 0.25rem);
|
|
80
|
+
}
|
|
81
|
+
|
|
82
|
+
.button-text:hover {
|
|
83
|
+
background-color: var(--hover-background-color, transparent);
|
|
84
|
+
}
|
|
85
|
+
|
|
86
|
+
.button-icon {
|
|
87
|
+
color: var(--color);
|
|
88
|
+
transition: background-color 200ms;
|
|
89
|
+
outline: 0;
|
|
90
|
+
border: 0;
|
|
91
|
+
border-radius: var(--border-radius, 50%);
|
|
92
|
+
height: var(--icon-button-height) !important;
|
|
93
|
+
width: var(--icon-button-width) !important;
|
|
94
|
+
display: flex;
|
|
95
|
+
align-items: center;
|
|
96
|
+
justify-content: center;
|
|
97
|
+
}
|
|
98
|
+
|
|
99
|
+
.button-icon:hover {
|
|
100
|
+
background-color: var(--hover-background-color, transparent);
|
|
101
|
+
}
|
|
102
|
+
</style>
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import { SvelteComponentTyped } from "svelte";
|
|
2
|
+
import '$lib/common/tailwind.css';
|
|
3
|
+
declare const __propDef: {
|
|
4
|
+
props: {
|
|
5
|
+
type?: 'default' | 'text' | 'icon';
|
|
6
|
+
icon?: string;
|
|
7
|
+
iconSize?: number;
|
|
8
|
+
class?: string;
|
|
9
|
+
};
|
|
10
|
+
events: {
|
|
11
|
+
click: MouseEvent;
|
|
12
|
+
} & {
|
|
13
|
+
[evt: string]: CustomEvent<any>;
|
|
14
|
+
};
|
|
15
|
+
slots: {
|
|
16
|
+
default: {};
|
|
17
|
+
append: {};
|
|
18
|
+
};
|
|
19
|
+
};
|
|
20
|
+
export declare type ButtonProps = typeof __propDef.props;
|
|
21
|
+
export declare type ButtonEvents = typeof __propDef.events;
|
|
22
|
+
export declare type ButtonSlots = typeof __propDef.slots;
|
|
23
|
+
export default class Button extends SvelteComponentTyped<ButtonProps, ButtonEvents, ButtonSlots> {
|
|
24
|
+
}
|
|
25
|
+
export {};
|
package/forms/Textfield.svelte
CHANGED
package/index.d.ts
ADDED
package/index.js
ADDED
package/media/Icon.svelte
CHANGED
|
@@ -1,6 +1,9 @@
|
|
|
1
|
-
<script >export let name, size = 15;
|
|
1
|
+
<script >export let name, size = 15, color = '';
|
|
2
|
+
let clazz = '';
|
|
3
|
+
export { clazz as class };
|
|
2
4
|
$: cssVariables = Object.entries({
|
|
3
|
-
'--size': size + 'pt'
|
|
5
|
+
'--size': size + 'pt',
|
|
6
|
+
'--color': color
|
|
4
7
|
}).filter(([key]) => key.startsWith('--'))
|
|
5
8
|
.reduce((css, [key, value]) => {
|
|
6
9
|
return `${css}${key}: ${value};`;
|
|
@@ -11,11 +14,12 @@ import '../common/materialDesign.css';
|
|
|
11
14
|
<style>
|
|
12
15
|
.icon {
|
|
13
16
|
font-size: var(--size);
|
|
17
|
+
color: var(--color);
|
|
14
18
|
}
|
|
15
19
|
</style>
|
|
16
20
|
|
|
17
21
|
<span
|
|
18
22
|
style={cssVariables}
|
|
19
|
-
class="icon mdi {name}"
|
|
23
|
+
class="icon mdi {name} {clazz}"
|
|
20
24
|
></span>
|
|
21
25
|
|
package/media/Icon.svelte.d.ts
CHANGED
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
<script >export let title = "";
|
|
2
|
+
export let items = [];
|
|
2
3
|
export let hideOnScroll = true;
|
|
3
4
|
let scrollY, lastScrollY, visible = true;
|
|
4
5
|
function handleScroll() {
|
|
@@ -23,21 +24,34 @@ import Navigator from './Navigator.svelte';
|
|
|
23
24
|
|
|
24
25
|
<nav
|
|
25
26
|
class="
|
|
26
|
-
shadow-md
|
|
27
|
+
shadow-md sticky h-12 -top-12 transition-all
|
|
27
28
|
flex flex-wrap items-center
|
|
29
|
+
header-menu-container
|
|
28
30
|
"
|
|
29
31
|
class:top-0={visible}
|
|
30
32
|
>
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
33
|
+
{#if $$slots.prepend}
|
|
34
|
+
<div class="h-12 flex-none">
|
|
35
|
+
<slot name="prepend"></slot>
|
|
36
|
+
</div>
|
|
37
|
+
{/if}
|
|
38
|
+
<div class="grow ml-1">
|
|
39
|
+
<slot name="title">
|
|
40
|
+
<span class="text-2xl">{title}</span>
|
|
41
|
+
</slot>
|
|
36
42
|
</div>
|
|
37
43
|
<div>
|
|
38
|
-
<Navigator
|
|
44
|
+
<Navigator
|
|
45
|
+
items={items}
|
|
46
|
+
></Navigator>
|
|
39
47
|
</div>
|
|
48
|
+
<slot name="append"></slot>
|
|
40
49
|
</nav>
|
|
41
50
|
|
|
42
51
|
<style>
|
|
52
|
+
.header-menu-container {
|
|
53
|
+
background-color: var(--background-color, white);
|
|
54
|
+
color: var(--color);
|
|
55
|
+
width: var(--width, 100vw)
|
|
56
|
+
}
|
|
43
57
|
</style>
|
|
@@ -1,14 +1,20 @@
|
|
|
1
1
|
import { SvelteComponentTyped } from "svelte";
|
|
2
|
+
import type { Item } from "./Navigator.svelte";
|
|
2
3
|
import '$lib/common/tailwind.css';
|
|
3
4
|
declare const __propDef: {
|
|
4
5
|
props: {
|
|
5
6
|
title?: string;
|
|
7
|
+
items?: Item[];
|
|
6
8
|
hideOnScroll?: boolean;
|
|
7
9
|
};
|
|
8
10
|
events: {
|
|
9
11
|
[evt: string]: CustomEvent<any>;
|
|
10
12
|
};
|
|
11
|
-
slots: {
|
|
13
|
+
slots: {
|
|
14
|
+
prepend: {};
|
|
15
|
+
title: {};
|
|
16
|
+
append: {};
|
|
17
|
+
};
|
|
12
18
|
};
|
|
13
19
|
export declare type HeaderMenuProps = typeof __propDef.props;
|
|
14
20
|
export declare type HeaderMenuEvents = typeof __propDef.events;
|
|
@@ -1,29 +1,6 @@
|
|
|
1
|
-
<script
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
name: 'works',
|
|
5
|
-
},
|
|
6
|
-
{
|
|
7
|
-
title: 'Biography',
|
|
8
|
-
name: 'biography',
|
|
9
|
-
},
|
|
10
|
-
{
|
|
11
|
-
title: 'Publications',
|
|
12
|
-
name: 'publications',
|
|
13
|
-
},
|
|
14
|
-
{
|
|
15
|
-
title: 'Blog',
|
|
16
|
-
name: 'blog',
|
|
17
|
-
},
|
|
18
|
-
{
|
|
19
|
-
title: 'News',
|
|
20
|
-
name: 'news',
|
|
21
|
-
},
|
|
22
|
-
{
|
|
23
|
-
title: 'Contact',
|
|
24
|
-
name: 'contact',
|
|
25
|
-
},
|
|
26
|
-
];
|
|
1
|
+
<script context="module" ></script>
|
|
2
|
+
|
|
3
|
+
<script >export let items = [];
|
|
27
4
|
</script>
|
|
28
5
|
|
|
29
6
|
<div class="flex">
|
|
@@ -1,6 +1,13 @@
|
|
|
1
1
|
import { SvelteComponentTyped } from "svelte";
|
|
2
|
+
export declare type Item = {
|
|
3
|
+
title: string;
|
|
4
|
+
name: string;
|
|
5
|
+
url?: string;
|
|
6
|
+
};
|
|
2
7
|
declare const __propDef: {
|
|
3
|
-
props: {
|
|
8
|
+
props: {
|
|
9
|
+
items?: Item[];
|
|
10
|
+
};
|
|
4
11
|
events: {
|
|
5
12
|
[evt: string]: CustomEvent<any>;
|
|
6
13
|
};
|
|
@@ -0,0 +1,86 @@
|
|
|
1
|
+
<script context="module"></script>
|
|
2
|
+
|
|
3
|
+
<script >import { onMount } from 'svelte';
|
|
4
|
+
export let tabs = [];
|
|
5
|
+
export let selected = undefined;
|
|
6
|
+
export let mandatory = true;
|
|
7
|
+
let tabButtons = {};
|
|
8
|
+
onMount(() => {
|
|
9
|
+
if (mandatory && !selected && tabs.length > 0)
|
|
10
|
+
selected = tabs[0].name;
|
|
11
|
+
if (!!selected) {
|
|
12
|
+
setBookmarkPosition();
|
|
13
|
+
}
|
|
14
|
+
});
|
|
15
|
+
let bookmarkWidth = 0, bookmarkLeft = 0;
|
|
16
|
+
function handleTabClick(clickedTab) {
|
|
17
|
+
selected = clickedTab.name;
|
|
18
|
+
setBookmarkPosition();
|
|
19
|
+
}
|
|
20
|
+
function setBookmarkPosition() {
|
|
21
|
+
let tabButton = tabButtons[selected];
|
|
22
|
+
bookmarkWidth = tabButton.offsetWidth - 10;
|
|
23
|
+
bookmarkLeft = tabButton.offsetLeft + 5;
|
|
24
|
+
}
|
|
25
|
+
$: cssVariables = Object.entries({
|
|
26
|
+
'--bookmark-left': bookmarkLeft + 'px',
|
|
27
|
+
'--bookmark-width': bookmarkWidth + 'px',
|
|
28
|
+
}).filter(([key]) => key.startsWith('--'))
|
|
29
|
+
.reduce((css, [key, value]) => {
|
|
30
|
+
return `${css}${key}: ${value};`;
|
|
31
|
+
}, '');
|
|
32
|
+
import '$lib/common/tailwind.css';
|
|
33
|
+
</script>
|
|
34
|
+
|
|
35
|
+
<div
|
|
36
|
+
class="tab-switcher-container flex relative"
|
|
37
|
+
style={cssVariables}
|
|
38
|
+
>
|
|
39
|
+
{#each tabs as tab}
|
|
40
|
+
<div
|
|
41
|
+
class="mx-3 p-2 cursor-pointer"
|
|
42
|
+
class:selected-tab={tab.name == selected}
|
|
43
|
+
on:click={() => handleTabClick(tab)}
|
|
44
|
+
bind:this={tabButtons[tab.name]}
|
|
45
|
+
>
|
|
46
|
+
{tab.label}
|
|
47
|
+
</div>
|
|
48
|
+
{/each}
|
|
49
|
+
<span
|
|
50
|
+
class="bookmark"
|
|
51
|
+
></span>
|
|
52
|
+
<span class="horizontal-guide"></span>
|
|
53
|
+
</div>
|
|
54
|
+
|
|
55
|
+
<style>
|
|
56
|
+
.tab-switcher-container {
|
|
57
|
+
width: var(--width)
|
|
58
|
+
}
|
|
59
|
+
|
|
60
|
+
.selected-tab {
|
|
61
|
+
color: var(--color, rgb(51 65 85));
|
|
62
|
+
}
|
|
63
|
+
|
|
64
|
+
.horizontal-guide {
|
|
65
|
+
position: absolute;
|
|
66
|
+
width: var(--width, 100%);
|
|
67
|
+
z-index: 5;
|
|
68
|
+
bottom: 0px;
|
|
69
|
+
height: 1px;
|
|
70
|
+
background-color: var(--color, rgb(51 65 85));
|
|
71
|
+
opacity: 20%;
|
|
72
|
+
}
|
|
73
|
+
|
|
74
|
+
.bookmark {
|
|
75
|
+
position: absolute;
|
|
76
|
+
bottom: 0px;
|
|
77
|
+
height: 2px;
|
|
78
|
+
border-radius: 0.125rem;
|
|
79
|
+
z-index: 10;
|
|
80
|
+
background-color: var(--bookmark-color, var(--color, rgb(51 65 85)));
|
|
81
|
+
transition: left 400ms, width 400ms;
|
|
82
|
+
left: var(--bookmark-left);
|
|
83
|
+
width: var(--bookmark-width)
|
|
84
|
+
}
|
|
85
|
+
|
|
86
|
+
</style>
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
import { SvelteComponentTyped } from "svelte";
|
|
2
|
+
export declare type Tab = {
|
|
3
|
+
name: string;
|
|
4
|
+
label: string;
|
|
5
|
+
icon?: string;
|
|
6
|
+
};
|
|
7
|
+
import '$lib/common/tailwind.css';
|
|
8
|
+
declare const __propDef: {
|
|
9
|
+
props: {
|
|
10
|
+
tabs?: Tab[];
|
|
11
|
+
selected?: string;
|
|
12
|
+
mandatory?: boolean;
|
|
13
|
+
};
|
|
14
|
+
events: {
|
|
15
|
+
[evt: string]: CustomEvent<any>;
|
|
16
|
+
};
|
|
17
|
+
slots: {};
|
|
18
|
+
};
|
|
19
|
+
export declare type TabSwitcherProps = typeof __propDef.props;
|
|
20
|
+
export declare type TabSwitcherEvents = typeof __propDef.events;
|
|
21
|
+
export declare type TabSwitcherSlots = typeof __propDef.slots;
|
|
22
|
+
export default class TabSwitcher extends SvelteComponentTyped<TabSwitcherProps, TabSwitcherEvents, TabSwitcherSlots> {
|
|
23
|
+
}
|
|
24
|
+
export {};
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@likable-hair/svelte",
|
|
3
3
|
"description": "A Svelte component for likablehair",
|
|
4
|
-
"version": "0.0.
|
|
4
|
+
"version": "0.0.7",
|
|
5
5
|
"devDependencies": {
|
|
6
6
|
"@sveltejs/adapter-auto": "next",
|
|
7
7
|
"@sveltejs/kit": "next",
|
|
@@ -25,6 +25,7 @@
|
|
|
25
25
|
},
|
|
26
26
|
"exports": {
|
|
27
27
|
"./package.json": "./package.json",
|
|
28
|
+
"./buttons/Button.svelte": "./buttons/Button.svelte",
|
|
28
29
|
"./common/Card.svelte": "./common/Card.svelte",
|
|
29
30
|
"./common/IntersectionObserver.svelte": "./common/IntersectionObserver.svelte",
|
|
30
31
|
"./common/materialDesign.css": "./common/materialDesign.css",
|
|
@@ -34,6 +35,7 @@
|
|
|
34
35
|
"./enums/elevation.enum": "./enums/elevation.enum.js",
|
|
35
36
|
"./enums": "./enums/index.js",
|
|
36
37
|
"./forms/Textfield.svelte": "./forms/Textfield.svelte",
|
|
38
|
+
".": "./index.js",
|
|
37
39
|
"./loaders/Skeleton.svelte": "./loaders/Skeleton.svelte",
|
|
38
40
|
"./loaders/sectionType": "./loaders/sectionType.js",
|
|
39
41
|
"./media/Carousel.svelte": "./media/Carousel.svelte",
|
|
@@ -42,8 +44,11 @@
|
|
|
42
44
|
"./media/ImageGrid.svelte": "./media/ImageGrid.svelte",
|
|
43
45
|
"./navigation/HeaderMenu.svelte": "./navigation/HeaderMenu.svelte",
|
|
44
46
|
"./navigation/Navigator.svelte": "./navigation/Navigator.svelte",
|
|
47
|
+
"./navigation/TabSwitcher.svelte": "./navigation/TabSwitcher.svelte",
|
|
45
48
|
"./shop/ProductCard.svelte": "./shop/ProductCard.svelte",
|
|
46
49
|
"./shop/ProductsGrid.svelte": "./shop/ProductsGrid.svelte",
|
|
47
|
-
"./timeline/ScrollTimeLine.svelte": "./timeline/ScrollTimeLine.svelte"
|
|
48
|
-
|
|
50
|
+
"./timeline/ScrollTimeLine.svelte": "./timeline/ScrollTimeLine.svelte",
|
|
51
|
+
"./timeline/SimpleTimeLine.svelte": "./timeline/SimpleTimeLine.svelte"
|
|
52
|
+
},
|
|
53
|
+
"svelte": "./index.js"
|
|
49
54
|
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
<div>Simple timeline</div>
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
/** @typedef {typeof __propDef.props} SimpleTimeLineProps */
|
|
2
|
+
/** @typedef {typeof __propDef.events} SimpleTimeLineEvents */
|
|
3
|
+
/** @typedef {typeof __propDef.slots} SimpleTimeLineSlots */
|
|
4
|
+
export default class SimpleTimeLine extends SvelteComponentTyped<{}, {
|
|
5
|
+
[evt: string]: CustomEvent<any>;
|
|
6
|
+
}, {}> {
|
|
7
|
+
}
|
|
8
|
+
export type SimpleTimeLineProps = typeof __propDef.props;
|
|
9
|
+
export type SimpleTimeLineEvents = typeof __propDef.events;
|
|
10
|
+
export type SimpleTimeLineSlots = typeof __propDef.slots;
|
|
11
|
+
import { SvelteComponentTyped } from "svelte";
|
|
12
|
+
declare const __propDef: {
|
|
13
|
+
props: {};
|
|
14
|
+
events: {
|
|
15
|
+
[evt: string]: CustomEvent<any>;
|
|
16
|
+
};
|
|
17
|
+
slots: {};
|
|
18
|
+
};
|
|
19
|
+
export {};
|