@matdata/yasgui 5.1.0 → 5.3.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.
@@ -0,0 +1,36 @@
1
+ declare module "sortablejs" {
2
+ interface SortableOptions {
3
+ animation?: number;
4
+ handle?: string;
5
+ draggable?: string;
6
+ ghostClass?: string;
7
+ chosenClass?: string;
8
+ dragClass?: string;
9
+ filter?: string;
10
+ preventOnFilter?: boolean;
11
+ onEnd?: (evt: SortableEvent) => void;
12
+ onStart?: (evt: SortableEvent) => void;
13
+ onUpdate?: (evt: SortableEvent) => void;
14
+ onSort?: (evt: SortableEvent) => void;
15
+ onMove?: (evt: SortableEvent, originalEvent: any) => boolean | -1 | 1 | undefined;
16
+ [key: string]: any;
17
+ }
18
+
19
+ interface SortableEvent {
20
+ oldIndex?: number;
21
+ newIndex?: number;
22
+ item: HTMLElement;
23
+ to: HTMLElement;
24
+ from: HTMLElement;
25
+ [key: string]: any;
26
+ }
27
+
28
+ class Sortable {
29
+ constructor(el: HTMLElement, options?: SortableOptions);
30
+ destroy(): void;
31
+ option(name: string, value?: any): any;
32
+ static create(el: HTMLElement, options?: SortableOptions): Sortable;
33
+ }
34
+
35
+ export default Sortable;
36
+ }
package/src/tab.scss CHANGED
@@ -18,9 +18,57 @@
18
18
  left: 0;
19
19
  right: 0;
20
20
  z-index: 9999;
21
- background: white;
22
- border-bottom: 1px solid #ddd;
21
+ background: var(--yasgui-bg-primary);
22
+ border-bottom: 1px solid var(--yasgui-border-color);
23
23
  padding: 5px;
24
+
25
+ // Hide the layout orientation toggle button in fullscreen mode
26
+ .orientationToggle {
27
+ display: none;
28
+ }
29
+ }
30
+
31
+ // Horizontal layout (side-by-side)
32
+ &.orientation-horizontal {
33
+ &.active {
34
+ display: flex;
35
+ flex-direction: row;
36
+ gap: 10px;
37
+ // Allow flexible height - can use 100vh or be constrained by parent
38
+ min-height: var(--yasgui-min-height);
39
+ height: calc(100vh - var(--yasgui-header-height));
40
+ }
41
+
42
+ .editorwrapper {
43
+ flex: 1;
44
+ min-width: 0;
45
+ display: flex;
46
+ flex-direction: column;
47
+ overflow: hidden;
48
+ }
49
+
50
+ // Make YASQE fill the vertical space in horizontal mode
51
+ .yasqe {
52
+ display: flex;
53
+ flex-direction: column;
54
+ flex: 1;
55
+ min-height: 0;
56
+
57
+ .CodeMirror {
58
+ height: 100% !important;
59
+ }
60
+ }
61
+
62
+ .yasrWrapperEl {
63
+ flex: 1;
64
+ min-width: 0;
65
+ overflow: hidden;
66
+ }
67
+
68
+ .yasr {
69
+ margin-top: 0;
70
+ height: 100%;
71
+ }
24
72
  }
25
73
  }
26
74
  .yasr {
package/src/themes.scss CHANGED
@@ -36,6 +36,18 @@
36
36
  --yasgui-fallback-border: #d1d1d1;
37
37
  --yasgui-resize-handle: #d1d1d1;
38
38
  --yasgui-nav-bg: #eee;
39
+ --yasgui-match-highlight-bg: #dbdeed;
40
+
41
+ // Layout dimensions (used for horizontal orientation)
42
+ --yasgui-header-height: 100px; // Height to subtract from viewport in horizontal layout
43
+ --yasgui-min-height: 400px; // Minimum height for horizontal layout panels
44
+
45
+ --yasgui-endpoint-button-bg: #337ab7;
46
+ --yasgui-endpoint-button-border: #337ab7;
47
+ --yasgui-endpoint-button-text: #ffffff;
48
+ --yasgui-endpoint-button-hover-bg: #286090;
49
+ --yasgui-endpoint-button-hover-border: #286090;
50
+ --yasgui-endpoint-button-focus: #5cb3fd;
39
51
  }
40
52
 
41
53
  [data-theme="dark"] {
@@ -73,6 +85,13 @@
73
85
  --yasgui-fallback-border: #3e3e42;
74
86
  --yasgui-resize-handle: #3e3e42;
75
87
  --yasgui-nav-bg: #2d2d30;
88
+ --yasgui-match-highlight-bg: #3a4a5a;
89
+ --yasgui-endpoint-button-bg: #4fc3f7;
90
+ --yasgui-endpoint-button-border: #4fc3f7;
91
+ --yasgui-endpoint-button-text: #1e1e1e;
92
+ --yasgui-endpoint-button-hover-bg: #81d4fa;
93
+ --yasgui-endpoint-button-hover-border: #81d4fa;
94
+ --yasgui-endpoint-button-focus: #81d4fa;
76
95
  }
77
96
 
78
97
  // Apply theme colors to Yasgui components
@@ -255,6 +274,10 @@
255
274
  fill: var(--yasgui-error-color);
256
275
  }
257
276
 
277
+ .cm-matchhighlight {
278
+ background-color: var(--yasgui-match-highlight-bg);
279
+ }
280
+
258
281
  // Yasqe buttons theming (share, query, fullscreen)
259
282
  .yasqe_buttons {
260
283
  svg {