@lavalogic/scoria 0.31.0 → 0.31.2
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.
|
@@ -42,15 +42,17 @@
|
|
|
42
42
|
class:grow
|
|
43
43
|
>
|
|
44
44
|
<div class="tabs">
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
<
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
45
|
+
<div class="sticky">
|
|
46
|
+
{#if filterable}
|
|
47
|
+
<div class="searchbar">
|
|
48
|
+
<TextInput
|
|
49
|
+
bind:value={searchValue}
|
|
50
|
+
placeholder="Search any keyword to find matches{ellipses}"
|
|
51
|
+
rightIcon={{ name: 'search-1', colour: Colour['$ui-blue-4'] }}
|
|
52
|
+
/>
|
|
53
|
+
</div>
|
|
54
|
+
{/if}
|
|
55
|
+
</div>
|
|
54
56
|
{#if tabComponent}
|
|
55
57
|
{#each filteredTabs as option (option)}
|
|
56
58
|
{@render tabComponent(option, selected === option)}
|
|
@@ -86,6 +88,7 @@
|
|
|
86
88
|
border-radius: 4px;
|
|
87
89
|
display: flex;
|
|
88
90
|
flex-flow: row nowrap;
|
|
91
|
+
overflow: hidden;
|
|
89
92
|
}
|
|
90
93
|
.wrapper.no-radius {
|
|
91
94
|
border-radius: 0;
|
|
@@ -99,11 +102,18 @@
|
|
|
99
102
|
.wrapper.grow {
|
|
100
103
|
flex-grow: 1;
|
|
101
104
|
}
|
|
105
|
+
.wrapper:not(.grow) .tabs {
|
|
106
|
+
padding-top: 1px;
|
|
107
|
+
}
|
|
108
|
+
.wrapper .sticky {
|
|
109
|
+
position: sticky;
|
|
110
|
+
top: 0;
|
|
111
|
+
z-index: 2;
|
|
112
|
+
}
|
|
102
113
|
.wrapper .tabs {
|
|
103
114
|
border-radius: 4px 0 0 4px;
|
|
104
115
|
display: flex;
|
|
105
116
|
flex-flow: column nowrap;
|
|
106
|
-
padding-top: 1px;
|
|
107
117
|
gap: 1px;
|
|
108
118
|
min-width: 10rem;
|
|
109
119
|
background-color: #e9ecf1;
|
|
@@ -11,7 +11,7 @@
|
|
|
11
11
|
import StepButton from './StepButton.svelte';
|
|
12
12
|
import type { StepFormProps } from './StepFormProps.js';
|
|
13
13
|
|
|
14
|
-
let { name, steps, currentStep }: StepFormProps<CommonDenominator> = $props();
|
|
14
|
+
let { name, steps, currentStep, noscroll = false }: StepFormProps<CommonDenominator> = $props();
|
|
15
15
|
|
|
16
16
|
onMount(() => {
|
|
17
17
|
if (name) {
|
|
@@ -55,7 +55,10 @@
|
|
|
55
55
|
});
|
|
56
56
|
</script>
|
|
57
57
|
|
|
58
|
-
<div
|
|
58
|
+
<div
|
|
59
|
+
class:noscroll
|
|
60
|
+
class="wrapper"
|
|
61
|
+
>
|
|
59
62
|
<div class="tabs">
|
|
60
63
|
{#each steps as option, index (index)}
|
|
61
64
|
<StepButton
|
|
@@ -88,7 +91,10 @@
|
|
|
88
91
|
</div>
|
|
89
92
|
</div>
|
|
90
93
|
|
|
91
|
-
<div
|
|
94
|
+
<div
|
|
95
|
+
class:noscroll
|
|
96
|
+
class="content"
|
|
97
|
+
>
|
|
92
98
|
{#if currentStep}
|
|
93
99
|
{@render currentStep.content(currentStep.args)}
|
|
94
100
|
{:else}
|
|
@@ -123,6 +129,7 @@
|
|
|
123
129
|
flex-flow: column nowrap;
|
|
124
130
|
flex: 1;
|
|
125
131
|
overflow: auto;
|
|
132
|
+
flex-shrink: 1;
|
|
126
133
|
}
|
|
127
134
|
.wrapper.noscroll {
|
|
128
135
|
overflow: visible;
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import type { TabOption } from '../Types/Internal/TabOption.js';
|
|
2
2
|
export interface StepFormProps<CommonDenominator> {
|
|
3
|
-
name?: string;
|
|
4
3
|
steps: Array<TabOption<CommonDenominator>>;
|
|
5
4
|
currentStep: TabOption<CommonDenominator> | undefined;
|
|
5
|
+
name?: string;
|
|
6
|
+
noscroll?: boolean;
|
|
6
7
|
}
|