@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.
@@ -114,6 +114,7 @@ div.content {
114
114
  flex-flow: column nowrap;
115
115
  transition: max-height ease-out 0.15s 0s, opacity ease-out 0.15s 0.1s;
116
116
  max-height: var(--card-max-height, 100%);
117
+ overflow: auto;
117
118
  height: var(--card-max-height);
118
119
  opacity: 1;
119
120
  width: 100%;
@@ -42,15 +42,17 @@
42
42
  class:grow
43
43
  >
44
44
  <div class="tabs">
45
- {#if filterable}
46
- <div class="searchbar">
47
- <TextInput
48
- bind:value={searchValue}
49
- placeholder="Search any keyword to find matches{ellipses}"
50
- rightIcon={{ name: 'search-1', colour: Colour['$ui-blue-4'] }}
51
- />
52
- </div>
53
- {/if}
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 class="wrapper noscroll">
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 class="content noscroll">
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
  }
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@lavalogic/scoria",
3
3
  "description": "Svelte components used for the FloWMS Web Frontend",
4
- "version": "0.31.0",
4
+ "version": "0.31.2",
5
5
  "publishConfig": {
6
6
  "access": "restricted"
7
7
  },