flowbite-svelte 1.28.2 → 1.29.0
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/command-palette/CommandPalette.svelte +1 -1
- package/dist/command-palette/CommandPalette.svelte.d.ts +1 -1
- package/dist/index.d.ts +1 -1
- package/dist/index.js +1 -1
- package/dist/kanban/KanbanCard.svelte +1 -1
- package/dist/kanban/KanbanCard.svelte.d.ts +1 -1
- package/dist/scroll-spy/ScrollSpy.svelte +1 -1
- package/dist/scroll-spy/ScrollSpy.svelte.d.ts +1 -1
- package/dist/split-pane/Divider.svelte +1 -1
- package/dist/split-pane/Divider.svelte.d.ts +1 -1
- package/dist/split-pane/Pane.svelte +1 -1
- package/dist/split-pane/Pane.svelte.d.ts +1 -1
- package/dist/split-pane/SplitPane.svelte +1 -1
- package/dist/split-pane/SplitPane.svelte.d.ts +1 -1
- package/dist/stepper/BreadcrumbStepper.svelte +118 -33
- package/dist/stepper/BreadcrumbStepper.svelte.d.ts +6 -3
- package/dist/stepper/CheckmarkIcon.svelte +92 -0
- package/dist/stepper/CheckmarkIcon.svelte.d.ts +18 -0
- package/dist/stepper/DetailedStepper.svelte +133 -27
- package/dist/stepper/DetailedStepper.svelte.d.ts +7 -4
- package/dist/stepper/DoubleArrowIcon.svelte +34 -0
- package/dist/stepper/DoubleArrowIcon.svelte.d.ts +15 -0
- package/dist/stepper/ProfileCardIcon.svelte +25 -0
- package/dist/stepper/ProfileCardIcon.svelte.d.ts +15 -0
- package/dist/stepper/ProgressStepper.svelte +135 -34
- package/dist/stepper/ProgressStepper.svelte.d.ts +7 -4
- package/dist/stepper/Stepper.svelte +87 -33
- package/dist/stepper/Stepper.svelte.d.ts +6 -3
- package/dist/stepper/TimelineStepper.svelte +95 -35
- package/dist/stepper/TimelineStepper.svelte.d.ts +6 -3
- package/dist/stepper/VerticalStepper.svelte +91 -29
- package/dist/stepper/VerticalStepper.svelte.d.ts +6 -3
- package/dist/stepper/index.d.ts +3 -0
- package/dist/stepper/index.js +3 -0
- package/dist/stepper/theme.d.ts +6 -18
- package/dist/stepper/theme.js +18 -23
- package/dist/table/Table.svelte +1 -1
- package/dist/table/Table.svelte.d.ts +1 -1
- package/dist/table/TableBody.svelte +1 -1
- package/dist/table/TableBody.svelte.d.ts +1 -1
- package/dist/table/TableBodyCell.svelte +1 -1
- package/dist/table/TableBodyCell.svelte.d.ts +1 -1
- package/dist/table/TableBodyRow.svelte +1 -1
- package/dist/table/TableBodyRow.svelte.d.ts +1 -1
- package/dist/table/TableHead.svelte +1 -1
- package/dist/table/TableHead.svelte.d.ts +1 -1
- package/dist/table/TableHeadCell.svelte +1 -1
- package/dist/table/TableHeadCell.svelte.d.ts +1 -1
- package/dist/table/TableSearch.svelte +1 -1
- package/dist/table/TableSearch.svelte.d.ts +1 -1
- package/dist/tabs/TabItem.svelte +1 -1
- package/dist/tabs/TabItem.svelte.d.ts +1 -1
- package/dist/tabs/Tabs.svelte +1 -1
- package/dist/tabs/Tabs.svelte.d.ts +1 -1
- package/dist/timeline/Activity.svelte +1 -1
- package/dist/timeline/Activity.svelte.d.ts +1 -1
- package/dist/timeline/ActivityItem.svelte +1 -1
- package/dist/timeline/ActivityItem.svelte.d.ts +1 -1
- package/dist/timeline/Group.svelte +1 -1
- package/dist/timeline/Group.svelte.d.ts +1 -1
- package/dist/timeline/GroupItem.svelte +1 -1
- package/dist/timeline/GroupItem.svelte.d.ts +1 -1
- package/dist/timeline/Timeline.svelte +1 -1
- package/dist/timeline/Timeline.svelte.d.ts +1 -1
- package/dist/timeline/TimelineItem.svelte +1 -1
- package/dist/timeline/TimelineItem.svelte.d.ts +1 -1
- package/dist/toast/Toast.svelte +1 -1
- package/dist/toast/Toast.svelte.d.ts +1 -1
- package/dist/toast/ToastContainer.svelte +1 -1
- package/dist/toast/ToastContainer.svelte.d.ts +1 -1
- package/dist/tooltip/Tooltip.svelte +1 -1
- package/dist/tooltip/Tooltip.svelte.d.ts +1 -1
- package/dist/types.d.ts +52 -14
- package/dist/typography/a/A.svelte +1 -1
- package/dist/typography/a/A.svelte.d.ts +1 -1
- package/dist/typography/blockquote/Blockquote.svelte +1 -1
- package/dist/typography/blockquote/Blockquote.svelte.d.ts +1 -1
- package/dist/typography/descriptionlist/DescriptionList.svelte +1 -1
- package/dist/typography/descriptionlist/DescriptionList.svelte.d.ts +1 -1
- package/dist/typography/heading/Heading.svelte +1 -1
- package/dist/typography/heading/Heading.svelte.d.ts +1 -1
- package/dist/typography/img/Img.svelte +1 -1
- package/dist/typography/img/Img.svelte.d.ts +1 -1
- package/dist/typography/layout/Layout.svelte +1 -1
- package/dist/typography/layout/Layout.svelte.d.ts +1 -1
- package/dist/typography/list/Li.svelte +1 -1
- package/dist/typography/list/Li.svelte.d.ts +1 -1
- package/dist/typography/list/List.svelte +1 -1
- package/dist/typography/list/List.svelte.d.ts +1 -1
- package/dist/typography/list/theme.js +1 -1
- package/dist/typography/mark/Mark.svelte +1 -1
- package/dist/typography/mark/Mark.svelte.d.ts +1 -1
- package/dist/typography/paragraph/P.svelte +1 -1
- package/dist/typography/paragraph/P.svelte.d.ts +1 -1
- package/dist/typography/secondary/Secondary.svelte +1 -1
- package/dist/typography/secondary/Secondary.svelte.d.ts +1 -1
- package/dist/typography/span/Span.svelte +1 -1
- package/dist/typography/span/Span.svelte.d.ts +1 -1
- package/dist/utils/Arrow.svelte +1 -1
- package/dist/utils/Arrow.svelte.d.ts +1 -1
- package/dist/utils/Popper.svelte +1 -1
- package/dist/utils/Popper.svelte.d.ts +1 -1
- package/dist/video/Video.svelte +1 -1
- package/dist/video/Video.svelte.d.ts +1 -1
- package/package.json +15 -3
|
@@ -1,65 +1,125 @@
|
|
|
1
1
|
<script lang="ts">
|
|
2
2
|
import { setContext } from "svelte";
|
|
3
|
+
import type { StepStatus, TimelineStep } from "../types";
|
|
4
|
+
import CheckmarkIcon from "./CheckmarkIcon.svelte";
|
|
5
|
+
import ProfileCardIcon from "./ProfileCardIcon.svelte";
|
|
3
6
|
import { timelineStepper } from "./theme";
|
|
4
7
|
import type { TimelineStepperProps } from "../types";
|
|
5
8
|
import clsx from "clsx";
|
|
6
9
|
import { getTheme } from "../theme/themeUtils";
|
|
7
10
|
|
|
8
|
-
let {
|
|
11
|
+
let { steps = [], class: className, classes, contentClass, current = $bindable(1), clickable = true, showCheckmarkForCompleted = true, onStepClick, ...restProps }: TimelineStepperProps = $props();
|
|
12
|
+
|
|
13
|
+
// Ensure current is within valid bounds
|
|
14
|
+
$effect(() => {
|
|
15
|
+
if (current < 0) current = 0;
|
|
16
|
+
if (current > steps.length && steps.length > 0) current = steps.length;
|
|
17
|
+
});
|
|
9
18
|
|
|
10
19
|
const theme = getTheme("timelineStepper");
|
|
11
20
|
|
|
12
21
|
setContext("stepperType", "timeline");
|
|
13
22
|
|
|
14
23
|
const { base, item, circle } = $derived(timelineStepper());
|
|
24
|
+
|
|
25
|
+
// Handle step click
|
|
26
|
+
function handleStepClick(stepIndex: number) {
|
|
27
|
+
if (clickable && stepIndex < steps.length) {
|
|
28
|
+
const last = current;
|
|
29
|
+
// Convert 0-based array index to 1-based current value
|
|
30
|
+
current = stepIndex + 1;
|
|
31
|
+
|
|
32
|
+
// Call custom onStepClick if provided
|
|
33
|
+
if (onStepClick) {
|
|
34
|
+
onStepClick({ current, last });
|
|
35
|
+
}
|
|
36
|
+
}
|
|
37
|
+
}
|
|
38
|
+
|
|
39
|
+
// Determine step status - reactive to current changes
|
|
40
|
+
function getStepStatus(stepIndex: number): "completed" | "current" | "pending" {
|
|
41
|
+
if (current === 0) {
|
|
42
|
+
return "pending";
|
|
43
|
+
}
|
|
44
|
+
if (stepIndex < current - 1) {
|
|
45
|
+
return "completed";
|
|
46
|
+
} else if (stepIndex === current - 1) {
|
|
47
|
+
return "current";
|
|
48
|
+
} else {
|
|
49
|
+
return "pending";
|
|
50
|
+
}
|
|
51
|
+
}
|
|
15
52
|
</script>
|
|
16
53
|
|
|
54
|
+
{#snippet stepIcon(status: StepStatus, step: TimelineStep)}
|
|
55
|
+
{#if status === "completed" && showCheckmarkForCompleted}
|
|
56
|
+
<CheckmarkIcon class="h-3.5 w-3.5 text-green-500 dark:text-green-400" />
|
|
57
|
+
{:else if step.icon}
|
|
58
|
+
<step.icon class={clsx(step.iconClass) || "h-3.5 w-3.5"} />
|
|
59
|
+
{:else}
|
|
60
|
+
<ProfileCardIcon />
|
|
61
|
+
{/if}
|
|
62
|
+
{/snippet}
|
|
63
|
+
|
|
17
64
|
<ol class={base({ class: clsx(theme?.base, className) })} {...restProps}>
|
|
18
|
-
{#
|
|
19
|
-
{@
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
<path
|
|
37
|
-
d="M18 0H2a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h16a2 2 0 0 0 2-2V2a2 2 0 0 0-2-2ZM6.5 3a2.5 2.5 0 1 1 0 5 2.5 2.5 0 0 1 0-5ZM3.014 13.021l.157-.625A3.427 3.427 0 0 1 6.5 9.571a3.426 3.426 0 0 1 3.322 2.805l.159.622-6.967.023ZM16 12h-3a1 1 0 0 1 0-2h3a1 1 0 0 1 0 2Zm0-3h-3a1 1 0 1 1 0-2h3a1 1 0 1 1 0 2Zm0-3h-3a1 1 0 1 1 0-2h3a1 1 0 1 1 0 2Z"
|
|
38
|
-
/>
|
|
39
|
-
</svg>
|
|
40
|
-
{/if}
|
|
65
|
+
{#each steps as step, index (step.id)}
|
|
66
|
+
{@const status = step.status ?? getStepStatus(index)}
|
|
67
|
+
<li class={item({ isLast: index === steps.length - 1, class: clsx(theme?.item, classes?.item) })}>
|
|
68
|
+
{#if clickable}
|
|
69
|
+
<button
|
|
70
|
+
type="button"
|
|
71
|
+
class="absolute -start-4 flex h-8 w-8 cursor-pointer items-center justify-center rounded-full ring-4 ring-white transition-opacity hover:opacity-75 dark:ring-gray-900 {circle({
|
|
72
|
+
status,
|
|
73
|
+
class: clsx(theme?.circle, classes?.circle)
|
|
74
|
+
})}"
|
|
75
|
+
onclick={() => handleStepClick(index)}
|
|
76
|
+
aria-current={status === "current" ? "step" : undefined}
|
|
77
|
+
>
|
|
78
|
+
{@render stepIcon(status, step)}
|
|
79
|
+
</button>
|
|
80
|
+
{:else}
|
|
81
|
+
<span class={circle({ status, class: clsx(theme?.circle, classes?.circle) })} aria-current={status === "current" ? "step" : undefined}>
|
|
82
|
+
{@render stepIcon(status, step)}
|
|
41
83
|
</span>
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
{
|
|
47
|
-
|
|
48
|
-
</
|
|
49
|
-
|
|
50
|
-
{/
|
|
84
|
+
{/if}
|
|
85
|
+
<div class={clsx(contentClass)}>
|
|
86
|
+
<h3 class="leading-tight font-medium">{step.label}</h3>
|
|
87
|
+
{#if step.description}
|
|
88
|
+
<p class="text-sm">{step.description}</p>
|
|
89
|
+
{/if}
|
|
90
|
+
</div>
|
|
91
|
+
</li>
|
|
92
|
+
{/each}
|
|
51
93
|
</ol>
|
|
52
94
|
|
|
95
|
+
<!--
|
|
96
|
+
## Features
|
|
97
|
+
- **Clickable navigation**: Click or press Enter/Space on steps to navigate
|
|
98
|
+
- **Auto status**: Automatically determines completed/current/pending status based on current index
|
|
99
|
+
- **Custom icons**: Support for custom icons on completed steps
|
|
100
|
+
- **Accessible**: Keyboard navigation with proper ARIA attributes
|
|
101
|
+
|
|
102
|
+
## Note
|
|
103
|
+
The `current` prop is 1-based:
|
|
104
|
+
- current=0 means no step is active (all pending)
|
|
105
|
+
- current=1 means first step is active
|
|
106
|
+
- current=2 means first step is completed, second step is active
|
|
107
|
+
- etc.
|
|
108
|
+
-->
|
|
109
|
+
|
|
53
110
|
<!--
|
|
54
111
|
@component
|
|
55
112
|
[Go to docs](https://flowbite-svelte.com/)
|
|
56
113
|
## Type
|
|
57
|
-
[TimelineStepperProps](https://github.com/themesberg/flowbite-svelte/blob/main/src/lib/types.ts#
|
|
114
|
+
[TimelineStepperProps](https://github.com/themesberg/flowbite-svelte/blob/main/src/lib/types.ts#L1687)
|
|
58
115
|
## Props
|
|
59
|
-
@prop children
|
|
60
116
|
@prop steps = []
|
|
61
117
|
@prop class: className
|
|
62
118
|
@prop classes
|
|
63
119
|
@prop contentClass
|
|
120
|
+
@prop current = $bindable(1)
|
|
121
|
+
@prop clickable = true
|
|
122
|
+
@prop showCheckmarkForCompleted = true
|
|
123
|
+
@prop onStepClick
|
|
64
124
|
@prop ...restProps
|
|
65
125
|
-->
|
|
@@ -2,15 +2,18 @@ import type { TimelineStepperProps } from "../types";
|
|
|
2
2
|
/**
|
|
3
3
|
* [Go to docs](https://flowbite-svelte.com/)
|
|
4
4
|
* ## Type
|
|
5
|
-
* [TimelineStepperProps](https://github.com/themesberg/flowbite-svelte/blob/main/src/lib/types.ts#
|
|
5
|
+
* [TimelineStepperProps](https://github.com/themesberg/flowbite-svelte/blob/main/src/lib/types.ts#L1687)
|
|
6
6
|
* ## Props
|
|
7
|
-
* @prop children
|
|
8
7
|
* @prop steps = []
|
|
9
8
|
* @prop class: className
|
|
10
9
|
* @prop classes
|
|
11
10
|
* @prop contentClass
|
|
11
|
+
* @prop current = $bindable(1)
|
|
12
|
+
* @prop clickable = true
|
|
13
|
+
* @prop showCheckmarkForCompleted = true
|
|
14
|
+
* @prop onStepClick
|
|
12
15
|
* @prop ...restProps
|
|
13
16
|
*/
|
|
14
|
-
declare const TimelineStepper: import("svelte").Component<TimelineStepperProps, {}, "">;
|
|
17
|
+
declare const TimelineStepper: import("svelte").Component<TimelineStepperProps, {}, "current">;
|
|
15
18
|
type TimelineStepper = ReturnType<typeof TimelineStepper>;
|
|
16
19
|
export default TimelineStepper;
|
|
@@ -1,63 +1,125 @@
|
|
|
1
1
|
<script lang="ts">
|
|
2
2
|
import { setContext } from "svelte";
|
|
3
|
+
import type { StepStatus, Step } from "../types";
|
|
4
|
+
import CheckmarkIcon from "./CheckmarkIcon.svelte";
|
|
3
5
|
import { verticalStepper } from "./theme";
|
|
4
6
|
import type { VerticalStepperProps } from "../types";
|
|
5
7
|
import clsx from "clsx";
|
|
6
8
|
import { getTheme } from "../theme/themeUtils";
|
|
7
9
|
|
|
8
|
-
let {
|
|
10
|
+
let { steps = [], liClass, class: className, classes, current = $bindable(1), clickable = true, showCheckmarkForCompleted = true, onStepClick, ...restProps }: VerticalStepperProps = $props();
|
|
11
|
+
|
|
12
|
+
// Ensure current is within valid bounds
|
|
13
|
+
$effect(() => {
|
|
14
|
+
if (current < 0) current = 0;
|
|
15
|
+
if (current > steps.length && steps.length > 0) current = steps.length;
|
|
16
|
+
});
|
|
9
17
|
|
|
10
18
|
const theme = getTheme("verticalStepper");
|
|
11
19
|
|
|
12
20
|
setContext("stepperType", "vertical");
|
|
13
21
|
|
|
14
22
|
const { base, card, content } = $derived(verticalStepper());
|
|
23
|
+
|
|
24
|
+
// Handle step click
|
|
25
|
+
function handleStepClick(stepIndex: number) {
|
|
26
|
+
if (clickable && stepIndex < steps.length) {
|
|
27
|
+
const last = current;
|
|
28
|
+
// Convert 0-based array index to 1-based current value
|
|
29
|
+
current = stepIndex + 1;
|
|
30
|
+
|
|
31
|
+
// Call custom onStepClick if provided
|
|
32
|
+
if (onStepClick) {
|
|
33
|
+
onStepClick({ current, last });
|
|
34
|
+
}
|
|
35
|
+
}
|
|
36
|
+
}
|
|
37
|
+
|
|
38
|
+
// Determine step status - reactive to current changes
|
|
39
|
+
function getStepStatus(stepIndex: number): "completed" | "current" | "pending" {
|
|
40
|
+
if (current === 0) {
|
|
41
|
+
return "pending";
|
|
42
|
+
}
|
|
43
|
+
if (stepIndex < current - 1) {
|
|
44
|
+
return "completed";
|
|
45
|
+
} else if (stepIndex === current - 1) {
|
|
46
|
+
return "current";
|
|
47
|
+
} else {
|
|
48
|
+
return "pending";
|
|
49
|
+
}
|
|
50
|
+
}
|
|
15
51
|
</script>
|
|
16
52
|
|
|
53
|
+
{#snippet stepIcon(status: StepStatus, step: Step)}
|
|
54
|
+
{#if status === "completed" && showCheckmarkForCompleted}
|
|
55
|
+
<CheckmarkIcon variant="simple" />
|
|
56
|
+
{:else if status === "current"}
|
|
57
|
+
{#if step.icon}
|
|
58
|
+
<step.icon class={step.iconClass || "h-4 w-4"} />
|
|
59
|
+
{:else}
|
|
60
|
+
<CheckmarkIcon variant="simple" />
|
|
61
|
+
{/if}
|
|
62
|
+
{/if}
|
|
63
|
+
{/snippet}
|
|
64
|
+
|
|
17
65
|
<ol class={base({ class: clsx(theme?.base, className) })} {...restProps}>
|
|
18
|
-
{#
|
|
19
|
-
{@
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
66
|
+
{#each steps as step, index (step.id)}
|
|
67
|
+
{@const status = step.status ?? getStepStatus(index)}
|
|
68
|
+
<li class={clsx(liClass)}>
|
|
69
|
+
{#if clickable}
|
|
70
|
+
<button
|
|
71
|
+
type="button"
|
|
72
|
+
class="w-full cursor-pointer text-left transition-opacity hover:opacity-75 {card({ status, class: clsx(theme?.card, classes?.card) })}"
|
|
73
|
+
aria-current={status === "current" ? "step" : undefined}
|
|
74
|
+
onclick={() => handleStepClick(index)}
|
|
75
|
+
>
|
|
24
76
|
<div class={content({ class: clsx(theme?.content, classes?.content) })}>
|
|
25
77
|
<span class="sr-only">{step.label}</span>
|
|
26
78
|
<h3 class="font-medium">{step.id}. {step.label}</h3>
|
|
27
|
-
{
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
{
|
|
36
|
-
{#if step.icon}
|
|
37
|
-
<step.icon class={step.iconClass || "h-4 w-4"} />
|
|
38
|
-
{:else}
|
|
39
|
-
<svg class="h-4 w-4 rtl:rotate-180" aria-hidden="true" xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 14 10">
|
|
40
|
-
<path stroke="currentColor" stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M1 5h12m0 0L9 1m4 4L9 9" />
|
|
41
|
-
</svg>
|
|
42
|
-
{/if}
|
|
43
|
-
{/if}
|
|
79
|
+
{@render stepIcon(status, step)}
|
|
80
|
+
</div>
|
|
81
|
+
</button>
|
|
82
|
+
{:else}
|
|
83
|
+
<div class={card({ status, class: clsx(theme?.card, classes?.card) })} aria-current={status === "current" ? "step" : undefined}>
|
|
84
|
+
<div class={content({ class: clsx(theme?.content, classes?.content) })}>
|
|
85
|
+
<span class="sr-only">{step.label}</span>
|
|
86
|
+
<h3 class="font-medium">{step.id}. {step.label}</h3>
|
|
87
|
+
{@render stepIcon(status, step)}
|
|
44
88
|
</div>
|
|
45
89
|
</div>
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
{/
|
|
90
|
+
{/if}
|
|
91
|
+
</li>
|
|
92
|
+
{/each}
|
|
49
93
|
</ol>
|
|
50
94
|
|
|
95
|
+
<!--
|
|
96
|
+
## Features
|
|
97
|
+
- **Clickable navigation**: Click or press Enter/Space on steps to navigate
|
|
98
|
+
- **Auto status**: Automatically determines completed/current/pending status based on current index
|
|
99
|
+
- **Custom icons**: Support for custom icons on completed steps
|
|
100
|
+
- **Accessible**: Keyboard navigation with proper ARIA attributes
|
|
101
|
+
|
|
102
|
+
## Note
|
|
103
|
+
The `current` prop is 1-based:
|
|
104
|
+
- current=0 means no step is active (all pending)
|
|
105
|
+
- current=1 means first step is active
|
|
106
|
+
- current=2 means first step is completed, second step is active
|
|
107
|
+
- etc.
|
|
108
|
+
-->
|
|
109
|
+
|
|
51
110
|
<!--
|
|
52
111
|
@component
|
|
53
112
|
[Go to docs](https://flowbite-svelte.com/)
|
|
54
113
|
## Type
|
|
55
|
-
[VerticalStepperProps](https://github.com/themesberg/flowbite-svelte/blob/main/src/lib/types.ts#
|
|
114
|
+
[VerticalStepperProps](https://github.com/themesberg/flowbite-svelte/blob/main/src/lib/types.ts#L1650)
|
|
56
115
|
## Props
|
|
57
|
-
@prop children
|
|
58
116
|
@prop steps = []
|
|
59
117
|
@prop liClass
|
|
60
118
|
@prop class: className
|
|
61
119
|
@prop classes
|
|
120
|
+
@prop current = $bindable(1)
|
|
121
|
+
@prop clickable = true
|
|
122
|
+
@prop showCheckmarkForCompleted = true
|
|
123
|
+
@prop onStepClick
|
|
62
124
|
@prop ...restProps
|
|
63
125
|
-->
|
|
@@ -2,15 +2,18 @@ import type { VerticalStepperProps } from "../types";
|
|
|
2
2
|
/**
|
|
3
3
|
* [Go to docs](https://flowbite-svelte.com/)
|
|
4
4
|
* ## Type
|
|
5
|
-
* [VerticalStepperProps](https://github.com/themesberg/flowbite-svelte/blob/main/src/lib/types.ts#
|
|
5
|
+
* [VerticalStepperProps](https://github.com/themesberg/flowbite-svelte/blob/main/src/lib/types.ts#L1650)
|
|
6
6
|
* ## Props
|
|
7
|
-
* @prop children
|
|
8
7
|
* @prop steps = []
|
|
9
8
|
* @prop liClass
|
|
10
9
|
* @prop class: className
|
|
11
10
|
* @prop classes
|
|
11
|
+
* @prop current = $bindable(1)
|
|
12
|
+
* @prop clickable = true
|
|
13
|
+
* @prop showCheckmarkForCompleted = true
|
|
14
|
+
* @prop onStepClick
|
|
12
15
|
* @prop ...restProps
|
|
13
16
|
*/
|
|
14
|
-
declare const VerticalStepper: import("svelte").Component<VerticalStepperProps, {}, "">;
|
|
17
|
+
declare const VerticalStepper: import("svelte").Component<VerticalStepperProps, {}, "current">;
|
|
15
18
|
type VerticalStepper = ReturnType<typeof VerticalStepper>;
|
|
16
19
|
export default VerticalStepper;
|
package/dist/stepper/index.d.ts
CHANGED
|
@@ -4,4 +4,7 @@ export { default as DetailedStepper } from "./DetailedStepper.svelte";
|
|
|
4
4
|
export { default as VerticalStepper } from "./VerticalStepper.svelte";
|
|
5
5
|
export { default as BreadcrumbStepper } from "./BreadcrumbStepper.svelte";
|
|
6
6
|
export { default as TimelineStepper } from "./TimelineStepper.svelte";
|
|
7
|
+
export { default as CheckmarkIcon } from "./CheckmarkIcon.svelte";
|
|
8
|
+
export { default as DoubleArrowIcon } from "./DoubleArrowIcon.svelte";
|
|
9
|
+
export { default as ProfileCardIcon } from "./ProfileCardIcon.svelte";
|
|
7
10
|
export { stepper, progressStepper, detailedStepper, verticalStepper, breadcrumbStepper, timelineStepper } from "./theme";
|
package/dist/stepper/index.js
CHANGED
|
@@ -4,4 +4,7 @@ export { default as DetailedStepper } from "./DetailedStepper.svelte";
|
|
|
4
4
|
export { default as VerticalStepper } from "./VerticalStepper.svelte";
|
|
5
5
|
export { default as BreadcrumbStepper } from "./BreadcrumbStepper.svelte";
|
|
6
6
|
export { default as TimelineStepper } from "./TimelineStepper.svelte";
|
|
7
|
+
export { default as CheckmarkIcon } from "./CheckmarkIcon.svelte";
|
|
8
|
+
export { default as DoubleArrowIcon } from "./DoubleArrowIcon.svelte";
|
|
9
|
+
export { default as ProfileCardIcon } from "./ProfileCardIcon.svelte";
|
|
7
10
|
export { stepper, progressStepper, detailedStepper, verticalStepper, breadcrumbStepper, timelineStepper } from "./theme";
|
package/dist/stepper/theme.d.ts
CHANGED
|
@@ -100,16 +100,12 @@ export declare const progressStepper: import("tailwind-variants").TVReturnType<{
|
|
|
100
100
|
circle: string;
|
|
101
101
|
};
|
|
102
102
|
};
|
|
103
|
-
isLast: {
|
|
104
|
-
true: {
|
|
105
|
-
item: string;
|
|
106
|
-
};
|
|
107
|
-
false: {};
|
|
108
|
-
};
|
|
109
103
|
}, {
|
|
110
104
|
base: string;
|
|
111
105
|
item: string;
|
|
112
106
|
circle: string;
|
|
107
|
+
line: string;
|
|
108
|
+
progressLine: string;
|
|
113
109
|
}, undefined, {
|
|
114
110
|
status: {
|
|
115
111
|
completed: {
|
|
@@ -125,16 +121,12 @@ export declare const progressStepper: import("tailwind-variants").TVReturnType<{
|
|
|
125
121
|
circle: string;
|
|
126
122
|
};
|
|
127
123
|
};
|
|
128
|
-
isLast: {
|
|
129
|
-
true: {
|
|
130
|
-
item: string;
|
|
131
|
-
};
|
|
132
|
-
false: {};
|
|
133
|
-
};
|
|
134
124
|
}, {
|
|
135
125
|
base: string;
|
|
136
126
|
item: string;
|
|
137
127
|
circle: string;
|
|
128
|
+
line: string;
|
|
129
|
+
progressLine: string;
|
|
138
130
|
}, import("tailwind-variants").TVReturnType<{
|
|
139
131
|
status: {
|
|
140
132
|
completed: {
|
|
@@ -150,16 +142,12 @@ export declare const progressStepper: import("tailwind-variants").TVReturnType<{
|
|
|
150
142
|
circle: string;
|
|
151
143
|
};
|
|
152
144
|
};
|
|
153
|
-
isLast: {
|
|
154
|
-
true: {
|
|
155
|
-
item: string;
|
|
156
|
-
};
|
|
157
|
-
false: {};
|
|
158
|
-
};
|
|
159
145
|
}, {
|
|
160
146
|
base: string;
|
|
161
147
|
item: string;
|
|
162
148
|
circle: string;
|
|
149
|
+
line: string;
|
|
150
|
+
progressLine: string;
|
|
163
151
|
}, undefined, unknown, unknown, undefined>>;
|
|
164
152
|
export declare const detailedStepper: import("tailwind-variants").TVReturnType<{
|
|
165
153
|
status: {
|
package/dist/stepper/theme.js
CHANGED
|
@@ -12,7 +12,7 @@ export const stepper = tv({
|
|
|
12
12
|
content: "after:content-['/'] sm:after:hidden after:mx-2 after:text-gray-200 dark:after:text-gray-500"
|
|
13
13
|
},
|
|
14
14
|
current: {
|
|
15
|
-
item: "md:w-full sm:after:content-[''] after:w-full after:h-1 after:border-b after:border-gray-200 after:border-1 after:hidden sm:after:inline-block after:mx-6 xl:after:mx-10 dark:after:border-gray-700",
|
|
15
|
+
item: "text-primary-600 dark:text-primary-500 md:w-full sm:after:content-[''] after:w-full after:h-1 after:border-b after:border-gray-200 after:border-1 after:hidden sm:after:inline-block after:mx-6 xl:after:mx-10 dark:after:border-gray-700",
|
|
16
16
|
content: "after:content-['/'] sm:after:hidden after:mx-2 after:text-gray-200 dark:after:text-gray-500"
|
|
17
17
|
},
|
|
18
18
|
pending: {
|
|
@@ -22,8 +22,8 @@ export const stepper = tv({
|
|
|
22
22
|
},
|
|
23
23
|
isLast: {
|
|
24
24
|
true: {
|
|
25
|
-
item: "after
|
|
26
|
-
content: "after
|
|
25
|
+
item: "after:!hidden",
|
|
26
|
+
content: "after:!hidden"
|
|
27
27
|
},
|
|
28
28
|
false: {}
|
|
29
29
|
}
|
|
@@ -36,35 +36,30 @@ export const stepper = tv({
|
|
|
36
36
|
// ProgressStepper
|
|
37
37
|
export const progressStepper = tv({
|
|
38
38
|
slots: {
|
|
39
|
-
base: "flex items-center w-full",
|
|
40
|
-
item: "flex items-center
|
|
41
|
-
circle: "flex items-center justify-center w-10 h-10 rounded-full lg:h-12 lg:w-12 shrink-0"
|
|
39
|
+
base: "flex items-center w-full relative",
|
|
40
|
+
item: "flex items-center justify-center z-10",
|
|
41
|
+
circle: "flex items-center justify-center w-10 h-10 rounded-full lg:h-12 lg:w-12 shrink-0",
|
|
42
|
+
line: "absolute h-1 top-1/2 -translate-y-1/2 bg-gray-200 dark:bg-gray-700",
|
|
43
|
+
progressLine: "absolute h-1 top-1/2 -translate-y-1/2 bg-primary-600 dark:bg-primary-500 transition-all duration-300 ease-in-out"
|
|
42
44
|
},
|
|
43
45
|
variants: {
|
|
44
46
|
status: {
|
|
45
47
|
completed: {
|
|
46
|
-
item: "text-primary-600 dark:text-primary-
|
|
47
|
-
circle: "bg-primary-
|
|
48
|
+
item: "text-primary-600 dark:text-primary-400 flex-1",
|
|
49
|
+
circle: "bg-primary-600 dark:bg-primary-500 text-white"
|
|
48
50
|
},
|
|
49
51
|
current: {
|
|
50
|
-
item: "
|
|
51
|
-
circle: "bg-
|
|
52
|
+
item: "flex-1",
|
|
53
|
+
circle: "bg-primary-600 dark:bg-primary-500 text-white"
|
|
52
54
|
},
|
|
53
55
|
pending: {
|
|
54
|
-
item: "
|
|
55
|
-
circle: "bg-gray-
|
|
56
|
+
item: "flex-1",
|
|
57
|
+
circle: "bg-gray-200 dark:bg-gray-700 text-gray-600 dark:text-gray-400"
|
|
56
58
|
}
|
|
57
|
-
},
|
|
58
|
-
isLast: {
|
|
59
|
-
true: {
|
|
60
|
-
item: "after:content-none"
|
|
61
|
-
},
|
|
62
|
-
false: {}
|
|
63
59
|
}
|
|
64
60
|
},
|
|
65
61
|
defaultVariants: {
|
|
66
|
-
status: "pending"
|
|
67
|
-
isLast: false
|
|
62
|
+
status: "pending"
|
|
68
63
|
}
|
|
69
64
|
});
|
|
70
65
|
// DetailedStepper
|
|
@@ -130,8 +125,8 @@ export const breadcrumbStepper = tv({
|
|
|
130
125
|
indicator: "border border-primary-600 dark:border-primary-500 bg-primary-600 dark:bg-primary-500 text-white"
|
|
131
126
|
},
|
|
132
127
|
current: {
|
|
133
|
-
item: "text-
|
|
134
|
-
indicator: "border border-
|
|
128
|
+
item: "text-primary-600 dark:text-primary-500",
|
|
129
|
+
indicator: "border border-primary-600 dark:border-primary-500 bg-primary-600 dark:bg-primary-500 text-white"
|
|
135
130
|
},
|
|
136
131
|
pending: {
|
|
137
132
|
item: "text-gray-500 dark:text-gray-400",
|
|
@@ -160,7 +155,7 @@ export const timelineStepper = tv({
|
|
|
160
155
|
circle: "bg-green-200 dark:bg-green-900"
|
|
161
156
|
},
|
|
162
157
|
current: {
|
|
163
|
-
circle: "bg-
|
|
158
|
+
circle: "bg-primary-200 dark:bg-primary-900"
|
|
164
159
|
},
|
|
165
160
|
pending: {
|
|
166
161
|
circle: "bg-gray-100 dark:bg-gray-700"
|
package/dist/table/Table.svelte
CHANGED
|
@@ -61,7 +61,7 @@
|
|
|
61
61
|
@component
|
|
62
62
|
[Go to docs](https://flowbite-svelte.com/)
|
|
63
63
|
## Type
|
|
64
|
-
[TableProps](https://github.com/themesberg/flowbite-svelte/blob/main/src/lib/types.ts#
|
|
64
|
+
[TableProps](https://github.com/themesberg/flowbite-svelte/blob/main/src/lib/types.ts#L1722)
|
|
65
65
|
## Props
|
|
66
66
|
@prop children
|
|
67
67
|
@prop footerSlot
|
|
@@ -2,7 +2,7 @@ import type { TableProps } from "../types";
|
|
|
2
2
|
/**
|
|
3
3
|
* [Go to docs](https://flowbite-svelte.com/)
|
|
4
4
|
* ## Type
|
|
5
|
-
* [TableProps](https://github.com/themesberg/flowbite-svelte/blob/main/src/lib/types.ts#
|
|
5
|
+
* [TableProps](https://github.com/themesberg/flowbite-svelte/blob/main/src/lib/types.ts#L1722)
|
|
6
6
|
* ## Props
|
|
7
7
|
* @prop children
|
|
8
8
|
* @prop footerSlot
|
|
@@ -33,7 +33,7 @@
|
|
|
33
33
|
@component
|
|
34
34
|
[Go to docs](https://flowbite-svelte.com/)
|
|
35
35
|
## Type
|
|
36
|
-
[TableBodyProps](https://github.com/themesberg/flowbite-svelte/blob/main/src/lib/types.ts#
|
|
36
|
+
[TableBodyProps](https://github.com/themesberg/flowbite-svelte/blob/main/src/lib/types.ts#L1754)
|
|
37
37
|
## Props
|
|
38
38
|
@prop children
|
|
39
39
|
@prop bodyItems
|
|
@@ -2,7 +2,7 @@ import type { TableBodyProps } from "../types";
|
|
|
2
2
|
/**
|
|
3
3
|
* [Go to docs](https://flowbite-svelte.com/)
|
|
4
4
|
* ## Type
|
|
5
|
-
* [TableBodyProps](https://github.com/themesberg/flowbite-svelte/blob/main/src/lib/types.ts#
|
|
5
|
+
* [TableBodyProps](https://github.com/themesberg/flowbite-svelte/blob/main/src/lib/types.ts#L1754)
|
|
6
6
|
* ## Props
|
|
7
7
|
* @prop children
|
|
8
8
|
* @prop bodyItems
|
|
@@ -25,7 +25,7 @@
|
|
|
25
25
|
@component
|
|
26
26
|
[Go to docs](https://flowbite-svelte.com/)
|
|
27
27
|
## Type
|
|
28
|
-
[TableBodyCellProps](https://github.com/themesberg/flowbite-svelte/blob/main/src/lib/types.ts#
|
|
28
|
+
[TableBodyCellProps](https://github.com/themesberg/flowbite-svelte/blob/main/src/lib/types.ts#L1743)
|
|
29
29
|
## Props
|
|
30
30
|
@prop children
|
|
31
31
|
@prop class: className
|
|
@@ -2,7 +2,7 @@ import type { TableBodyCellProps } from "../types";
|
|
|
2
2
|
/**
|
|
3
3
|
* [Go to docs](https://flowbite-svelte.com/)
|
|
4
4
|
* ## Type
|
|
5
|
-
* [TableBodyCellProps](https://github.com/themesberg/flowbite-svelte/blob/main/src/lib/types.ts#
|
|
5
|
+
* [TableBodyCellProps](https://github.com/themesberg/flowbite-svelte/blob/main/src/lib/types.ts#L1743)
|
|
6
6
|
* ## Props
|
|
7
7
|
* @prop children
|
|
8
8
|
* @prop class: className
|
|
@@ -29,7 +29,7 @@
|
|
|
29
29
|
@component
|
|
30
30
|
[Go to docs](https://flowbite-svelte.com/)
|
|
31
31
|
## Type
|
|
32
|
-
[TableBodyRowProps](https://github.com/themesberg/flowbite-svelte/blob/main/src/lib/types.ts#
|
|
32
|
+
[TableBodyRowProps](https://github.com/themesberg/flowbite-svelte/blob/main/src/lib/types.ts#L1735)
|
|
33
33
|
## Props
|
|
34
34
|
@prop children
|
|
35
35
|
@prop class: className
|
|
@@ -2,7 +2,7 @@ import type { TableBodyRowProps } from "../types";
|
|
|
2
2
|
/**
|
|
3
3
|
* [Go to docs](https://flowbite-svelte.com/)
|
|
4
4
|
* ## Type
|
|
5
|
-
* [TableBodyRowProps](https://github.com/themesberg/flowbite-svelte/blob/main/src/lib/types.ts#
|
|
5
|
+
* [TableBodyRowProps](https://github.com/themesberg/flowbite-svelte/blob/main/src/lib/types.ts#L1735)
|
|
6
6
|
* ## Props
|
|
7
7
|
* @prop children
|
|
8
8
|
* @prop class: className
|
|
@@ -53,7 +53,7 @@
|
|
|
53
53
|
@component
|
|
54
54
|
[Go to docs](https://flowbite-svelte.com/)
|
|
55
55
|
## Type
|
|
56
|
-
[TableHeadProps](https://github.com/themesberg/flowbite-svelte/blob/main/src/lib/types.ts#
|
|
56
|
+
[TableHeadProps](https://github.com/themesberg/flowbite-svelte/blob/main/src/lib/types.ts#L1710)
|
|
57
57
|
## Props
|
|
58
58
|
@prop children
|
|
59
59
|
@prop headerSlot
|
|
@@ -2,7 +2,7 @@ import type { TableHeadProps } from "../types";
|
|
|
2
2
|
/**
|
|
3
3
|
* [Go to docs](https://flowbite-svelte.com/)
|
|
4
4
|
* ## Type
|
|
5
|
-
* [TableHeadProps](https://github.com/themesberg/flowbite-svelte/blob/main/src/lib/types.ts#
|
|
5
|
+
* [TableHeadProps](https://github.com/themesberg/flowbite-svelte/blob/main/src/lib/types.ts#L1710)
|
|
6
6
|
* ## Props
|
|
7
7
|
* @prop children
|
|
8
8
|
* @prop headerSlot
|
|
@@ -19,7 +19,7 @@
|
|
|
19
19
|
@component
|
|
20
20
|
[Go to docs](https://flowbite-svelte.com/)
|
|
21
21
|
## Type
|
|
22
|
-
[TableHeadCellProps](https://github.com/themesberg/flowbite-svelte/blob/main/src/lib/types.ts#
|
|
22
|
+
[TableHeadCellProps](https://github.com/themesberg/flowbite-svelte/blob/main/src/lib/types.ts#L1759)
|
|
23
23
|
## Props
|
|
24
24
|
@prop children
|
|
25
25
|
@prop class: className
|
|
@@ -2,7 +2,7 @@ import type { TableHeadCellProps } from "../types";
|
|
|
2
2
|
/**
|
|
3
3
|
* [Go to docs](https://flowbite-svelte.com/)
|
|
4
4
|
* ## Type
|
|
5
|
-
* [TableHeadCellProps](https://github.com/themesberg/flowbite-svelte/blob/main/src/lib/types.ts#
|
|
5
|
+
* [TableHeadCellProps](https://github.com/themesberg/flowbite-svelte/blob/main/src/lib/types.ts#L1759)
|
|
6
6
|
* ## Props
|
|
7
7
|
* @prop children
|
|
8
8
|
* @prop class: className
|