triiiceratops 0.10.2 → 0.10.3
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.
|
@@ -539,6 +539,33 @@
|
|
|
539
539
|
/>
|
|
540
540
|
</label>
|
|
541
541
|
</li>
|
|
542
|
+
<li>
|
|
543
|
+
<label class="label cursor-pointer py-1 gap-2">
|
|
544
|
+
<span class="label-text"
|
|
545
|
+
>{m.settings_select_dock_position()}</span
|
|
546
|
+
>
|
|
547
|
+
<select
|
|
548
|
+
class="select select-bordered select-xs w-24"
|
|
549
|
+
value={config.search?.position ??
|
|
550
|
+
'right'}
|
|
551
|
+
onchange={(e) => {
|
|
552
|
+
if (!config.search)
|
|
553
|
+
config.search = {};
|
|
554
|
+
config.search.position = (
|
|
555
|
+
e.currentTarget as HTMLSelectElement
|
|
556
|
+
).value;
|
|
557
|
+
}}
|
|
558
|
+
onclick={(e) => e.stopPropagation()}
|
|
559
|
+
>
|
|
560
|
+
<option value="right"
|
|
561
|
+
>{m.settings_position_right()}</option
|
|
562
|
+
>
|
|
563
|
+
<option value="left"
|
|
564
|
+
>{m.settings_position_left()}</option
|
|
565
|
+
>
|
|
566
|
+
</select>
|
|
567
|
+
</label>
|
|
568
|
+
</li>
|
|
542
569
|
<li>
|
|
543
570
|
<label class="label cursor-pointer py-1 gap-2">
|
|
544
571
|
<span class="label-text"
|
|
@@ -40,6 +40,7 @@
|
|
|
40
40
|
}
|
|
41
41
|
}
|
|
42
42
|
let width = $derived(viewerState.config.search?.width ?? '320px');
|
|
43
|
+
let position = $derived(viewerState.config.search?.position ?? 'right');
|
|
43
44
|
</script>
|
|
44
45
|
|
|
45
46
|
<!-- Drawer / Panel -->
|
|
@@ -48,7 +49,9 @@
|
|
|
48
49
|
class="h-full bg-base-200 shadow-2xl z-100 flex flex-col transition-[width] duration-200 {viewerState
|
|
49
50
|
.config.transparentBackground
|
|
50
51
|
? ''
|
|
51
|
-
:
|
|
52
|
+
: position === 'left'
|
|
53
|
+
? 'border-r border-base-300'
|
|
54
|
+
: 'border-l border-base-300'}"
|
|
52
55
|
style="width: {width}"
|
|
53
56
|
role="dialog"
|
|
54
57
|
aria-label={m.search_panel_title()}
|
|
@@ -162,13 +162,16 @@
|
|
|
162
162
|
let isLeftSidebarVisible = $derived(
|
|
163
163
|
(internalViewerState.showThumbnailGallery &&
|
|
164
164
|
internalViewerState.dockSide === 'left') ||
|
|
165
|
+
(internalViewerState.showSearchPanel &&
|
|
166
|
+
internalViewerState.config.search?.position === 'left') ||
|
|
165
167
|
internalViewerState.pluginPanels.some(
|
|
166
168
|
(p) => p.position === 'left' && p.isVisible(),
|
|
167
169
|
),
|
|
168
170
|
);
|
|
169
171
|
|
|
170
172
|
let isRightSidebarVisible = $derived(
|
|
171
|
-
internalViewerState.showSearchPanel
|
|
173
|
+
(internalViewerState.showSearchPanel &&
|
|
174
|
+
internalViewerState.config.search?.position !== 'left') ||
|
|
172
175
|
(internalViewerState.showThumbnailGallery &&
|
|
173
176
|
internalViewerState.dockSide === 'right') ||
|
|
174
177
|
internalViewerState.pluginPanels.some(
|
|
@@ -373,6 +376,13 @@
|
|
|
373
376
|
? ''
|
|
374
377
|
: 'bg-base-200 border-r border-base-300'}"
|
|
375
378
|
>
|
|
379
|
+
<!-- Search Panel (when configured left) -->
|
|
380
|
+
{#if internalViewerState.showSearchPanel && internalViewerState.config.search?.position === 'left'}
|
|
381
|
+
<div class="h-full relative pointer-events-auto">
|
|
382
|
+
<SearchPanel />
|
|
383
|
+
</div>
|
|
384
|
+
{/if}
|
|
385
|
+
|
|
376
386
|
<!-- Gallery (when docked left) -->
|
|
377
387
|
{#if internalViewerState.showThumbnailGallery && internalViewerState.dockSide === 'left'}
|
|
378
388
|
<div class="h-full w-[140px] pointer-events-auto relative">
|
|
@@ -507,7 +517,7 @@
|
|
|
507
517
|
: 'bg-base-200 border-l border-base-300'}"
|
|
508
518
|
>
|
|
509
519
|
<!-- Search Panel -->
|
|
510
|
-
{#if internalViewerState.showSearchPanel}
|
|
520
|
+
{#if internalViewerState.showSearchPanel && internalViewerState.config.search?.position !== 'left'}
|
|
511
521
|
<div class="h-full relative pointer-events-auto">
|
|
512
522
|
<SearchPanel />
|
|
513
523
|
</div>
|