@genome-spy/core 0.63.0 → 0.64.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/bundle/index.es.js +3644 -3437
- package/dist/bundle/index.js +374 -300
- package/dist/schema.json +84 -12
- package/dist/src/gl/webGLHelper.d.ts.map +1 -1
- package/dist/src/gl/webGLHelper.js +8 -0
- package/dist/src/marks/link.fragment.glsl.js +1 -1
- package/dist/src/marks/link.vertex.glsl.js +1 -1
- package/dist/src/marks/point.fragment.glsl.js +1 -1
- package/dist/src/marks/point.vertex.glsl.js +1 -1
- package/dist/src/marks/rect.fragment.glsl.js +1 -1
- package/dist/src/marks/rect.vertex.glsl.js +1 -1
- package/dist/src/marks/rule.fragment.glsl.js +1 -1
- package/dist/src/marks/rule.vertex.glsl.js +1 -1
- package/dist/src/marks/text.fragment.glsl.js +1 -1
- package/dist/src/marks/text.vertex.glsl.js +1 -1
- package/dist/src/selection/selection.d.ts +5 -0
- package/dist/src/selection/selection.d.ts.map +1 -1
- package/dist/src/selection/selection.js +43 -6
- package/dist/src/selection/selection.test.d.ts +2 -0
- package/dist/src/selection/selection.test.d.ts.map +1 -0
- package/dist/src/selection/selection.test.js +14 -0
- package/dist/src/spec/parameter.d.ts +28 -2
- package/dist/src/styles/{genome-spy.scss → genome-spy.css} +25 -21
- package/dist/src/styles/genome-spy.css.d.ts +1 -1
- package/dist/src/styles/genome-spy.css.d.ts.map +1 -1
- package/dist/src/styles/genome-spy.css.js +264 -195
- package/dist/src/styles/update.sh +14 -4
- package/dist/src/utils/expression.d.ts +5 -0
- package/dist/src/utils/expression.d.ts.map +1 -1
- package/dist/src/utils/expression.js +37 -0
- package/dist/src/utils/interactionEvent.d.ts +18 -1
- package/dist/src/utils/interactionEvent.d.ts.map +1 -1
- package/dist/src/utils/interactionEvent.js +101 -1
- package/dist/src/utils/interactionEvent.test.d.ts +2 -0
- package/dist/src/utils/interactionEvent.test.d.ts.map +1 -0
- package/dist/src/utils/interactionEvent.test.js +35 -0
- package/dist/src/view/facetView.d.ts +1 -1
- package/dist/src/view/facetView.d.ts.map +1 -1
- package/dist/src/view/unitView.d.ts.map +1 -1
- package/dist/src/view/unitView.js +45 -2
- package/package.json +8 -8
|
@@ -1,206 +1,275 @@
|
|
|
1
1
|
const css = `
|
|
2
|
+
:root {
|
|
3
|
+
--genome-spy-basic-spacing: 10px;
|
|
4
|
+
--genome-spy-font-family: system-ui, "Segoe UI", Roboto, Helvetica, Arial,
|
|
5
|
+
sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";
|
|
6
|
+
}
|
|
7
|
+
|
|
8
|
+
@keyframes genome-spy-blinker {
|
|
9
|
+
50% {
|
|
10
|
+
opacity: 0;
|
|
11
|
+
}
|
|
12
|
+
}
|
|
13
|
+
|
|
2
14
|
.genome-spy {
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
}
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
.
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
}
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
}
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
.
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
|
|
157
|
-
|
|
158
|
-
|
|
159
|
-
|
|
160
|
-
|
|
161
|
-
|
|
162
|
-
|
|
163
|
-
|
|
164
|
-
|
|
15
|
+
font-family: var(--genome-spy-font-family);
|
|
16
|
+
|
|
17
|
+
position: relative;
|
|
18
|
+
|
|
19
|
+
display: flex;
|
|
20
|
+
flex-direction: column;
|
|
21
|
+
|
|
22
|
+
.canvas-wrapper {
|
|
23
|
+
position: relative;
|
|
24
|
+
flex-grow: 1;
|
|
25
|
+
overflow: hidden;
|
|
26
|
+
}
|
|
27
|
+
|
|
28
|
+
canvas {
|
|
29
|
+
display: block;
|
|
30
|
+
transform: scale(1, 1);
|
|
31
|
+
opacity: 1;
|
|
32
|
+
transition:
|
|
33
|
+
transform 0.6s,
|
|
34
|
+
opacity 0.6s;
|
|
35
|
+
|
|
36
|
+
&:focus,
|
|
37
|
+
&:focus-visible {
|
|
38
|
+
outline: none;
|
|
39
|
+
}
|
|
40
|
+
}
|
|
41
|
+
|
|
42
|
+
.loading-message {
|
|
43
|
+
position: absolute;
|
|
44
|
+
inset: 0;
|
|
45
|
+
display: flex;
|
|
46
|
+
|
|
47
|
+
align-items: center;
|
|
48
|
+
justify-content: center;
|
|
49
|
+
|
|
50
|
+
.message {
|
|
51
|
+
color: #666;
|
|
52
|
+
opacity: 0;
|
|
53
|
+
transition: opacity 0.7s;
|
|
54
|
+
}
|
|
55
|
+
}
|
|
56
|
+
|
|
57
|
+
.loading {
|
|
58
|
+
> canvas {
|
|
59
|
+
transform: scale(0.95, 0.95);
|
|
60
|
+
opacity: 0;
|
|
61
|
+
}
|
|
62
|
+
|
|
63
|
+
> .loading-message .message {
|
|
64
|
+
opacity: 1;
|
|
65
|
+
|
|
66
|
+
.ellipsis {
|
|
67
|
+
animation: genome-spy-blinker 1s linear infinite;
|
|
68
|
+
}
|
|
69
|
+
}
|
|
70
|
+
}
|
|
71
|
+
|
|
72
|
+
.loading-indicators {
|
|
73
|
+
position: absolute;
|
|
74
|
+
inset: 0;
|
|
75
|
+
|
|
76
|
+
user-select: none;
|
|
77
|
+
pointer-events: none;
|
|
78
|
+
|
|
79
|
+
div {
|
|
80
|
+
position: absolute;
|
|
81
|
+
display: flex;
|
|
82
|
+
align-items: center;
|
|
83
|
+
justify-content: center;
|
|
84
|
+
|
|
85
|
+
> div {
|
|
86
|
+
font-size: 11px;
|
|
87
|
+
transition: opacity 0.2s;
|
|
88
|
+
background: white;
|
|
89
|
+
padding: 2px 5px;
|
|
90
|
+
display: flex;
|
|
91
|
+
border-radius: 3px;
|
|
92
|
+
gap: 0.5em;
|
|
93
|
+
opacity: 0;
|
|
94
|
+
|
|
95
|
+
&.loading {
|
|
96
|
+
opacity: 0.5;
|
|
97
|
+
}
|
|
98
|
+
|
|
99
|
+
&.error {
|
|
100
|
+
opacity: 0.8;
|
|
101
|
+
color: firebrick;
|
|
102
|
+
}
|
|
103
|
+
|
|
104
|
+
> * {
|
|
105
|
+
display: block;
|
|
106
|
+
}
|
|
107
|
+
|
|
108
|
+
img {
|
|
109
|
+
width: 1.5em;
|
|
110
|
+
height: 1.5em;
|
|
111
|
+
}
|
|
112
|
+
}
|
|
113
|
+
}
|
|
114
|
+
}
|
|
115
|
+
|
|
116
|
+
.tooltip {
|
|
117
|
+
position: absolute;
|
|
118
|
+
|
|
119
|
+
max-width: 450px;
|
|
120
|
+
overflow: hidden;
|
|
121
|
+
|
|
122
|
+
--background-color: #f6f6f6;
|
|
123
|
+
background: var(--background-color);
|
|
124
|
+
padding: var(--genome-spy-basic-spacing);
|
|
125
|
+
|
|
126
|
+
--font-size: 12px;
|
|
127
|
+
font-size: var(--font-size);
|
|
128
|
+
|
|
129
|
+
box-shadow: 0px 3px 15px 0px rgba(0, 0, 0, 0.21);
|
|
130
|
+
|
|
131
|
+
&:not(.sticky) {
|
|
132
|
+
pointer-events: none;
|
|
133
|
+
}
|
|
134
|
+
|
|
135
|
+
transition:
|
|
136
|
+
outline-color 0.3s ease-in-out,
|
|
137
|
+
box-shadow 0.3s ease-in-out;
|
|
138
|
+
|
|
139
|
+
outline: 0px solid transparent;
|
|
140
|
+
&.sticky {
|
|
141
|
+
outline: 2px solid black;
|
|
142
|
+
box-shadow: 0px 3px 18px 0px rgba(0, 0, 0, 0.3);
|
|
143
|
+
}
|
|
144
|
+
|
|
145
|
+
z-index: 100;
|
|
146
|
+
|
|
147
|
+
> :last-child {
|
|
148
|
+
margin-bottom: 0;
|
|
149
|
+
}
|
|
150
|
+
|
|
151
|
+
> .title {
|
|
152
|
+
padding-bottom: calc(var(--genome-spy-basic-spacing) / 2);
|
|
153
|
+
margin-bottom: calc(var(--genome-spy-basic-spacing) / 2);
|
|
154
|
+
border-bottom: 1px dashed var(--background-color);
|
|
155
|
+
border-bottom: 1px dashed
|
|
156
|
+
color-mix(in srgb, black 25%, var(--background-color));
|
|
157
|
+
}
|
|
158
|
+
|
|
159
|
+
.summary {
|
|
160
|
+
font-size: 12px;
|
|
161
|
+
}
|
|
162
|
+
|
|
163
|
+
table {
|
|
164
|
+
&:first-child {
|
|
165
|
+
margin-top: 0;
|
|
166
|
+
}
|
|
167
|
+
|
|
168
|
+
border-collapse: collapse;
|
|
169
|
+
|
|
170
|
+
th,
|
|
171
|
+
td {
|
|
172
|
+
padding: 2px 0.4em;
|
|
173
|
+
vertical-align: top;
|
|
174
|
+
font-size: var(--font-size);
|
|
175
|
+
|
|
176
|
+
&:first-child {
|
|
177
|
+
padding-left: 0;
|
|
178
|
+
}
|
|
179
|
+
}
|
|
180
|
+
|
|
181
|
+
th {
|
|
182
|
+
text-align: left;
|
|
183
|
+
font-weight: bold;
|
|
184
|
+
}
|
|
185
|
+
}
|
|
186
|
+
|
|
187
|
+
.color-legend {
|
|
188
|
+
display: inline-block;
|
|
189
|
+
width: 0.8em;
|
|
190
|
+
height: 0.8em;
|
|
191
|
+
margin-left: 0.4em;
|
|
192
|
+
box-shadow: 0px 0px 3px 1px white;
|
|
193
|
+
}
|
|
194
|
+
|
|
195
|
+
.attributes {
|
|
196
|
+
.hovered {
|
|
197
|
+
background-color: #e0e0e0;
|
|
198
|
+
}
|
|
199
|
+
}
|
|
200
|
+
|
|
201
|
+
.na {
|
|
202
|
+
color: #aaa;
|
|
203
|
+
font-style: italic;
|
|
204
|
+
font-size: 80%;
|
|
205
|
+
}
|
|
206
|
+
}
|
|
207
|
+
|
|
208
|
+
.gene-track-tooltip {
|
|
209
|
+
.summary {
|
|
210
|
+
font-size: 90%;
|
|
211
|
+
}
|
|
212
|
+
}
|
|
213
|
+
|
|
214
|
+
.message-box {
|
|
215
|
+
display: flex;
|
|
216
|
+
align-items: center;
|
|
217
|
+
justify-content: center;
|
|
218
|
+
position: absolute;
|
|
219
|
+
top: 0;
|
|
220
|
+
height: 100%;
|
|
221
|
+
width: 100%;
|
|
222
|
+
|
|
223
|
+
> div {
|
|
224
|
+
border: 1px solid red;
|
|
225
|
+
padding: 10px;
|
|
226
|
+
background: #fff0f0;
|
|
227
|
+
}
|
|
228
|
+
}
|
|
165
229
|
}
|
|
166
230
|
|
|
167
231
|
.gs-input-binding {
|
|
168
|
-
|
|
169
|
-
|
|
170
|
-
|
|
171
|
-
|
|
172
|
-
|
|
173
|
-
|
|
174
|
-
|
|
175
|
-
|
|
176
|
-
|
|
177
|
-
}
|
|
178
|
-
|
|
179
|
-
|
|
180
|
-
|
|
181
|
-
|
|
182
|
-
|
|
183
|
-
|
|
184
|
-
|
|
185
|
-
|
|
186
|
-
|
|
187
|
-
|
|
188
|
-
|
|
189
|
-
|
|
190
|
-
|
|
191
|
-
|
|
192
|
-
|
|
193
|
-
|
|
194
|
-
|
|
195
|
-
|
|
196
|
-
|
|
197
|
-
|
|
232
|
+
display: grid;
|
|
233
|
+
grid-template-columns: max-content max-content;
|
|
234
|
+
column-gap: 1em;
|
|
235
|
+
row-gap: 0.3em;
|
|
236
|
+
justify-items: start;
|
|
237
|
+
|
|
238
|
+
> select,
|
|
239
|
+
> input:not([type="checkbox"]) {
|
|
240
|
+
width: 100%;
|
|
241
|
+
}
|
|
242
|
+
|
|
243
|
+
input[type="range"] + span {
|
|
244
|
+
display: inline-block;
|
|
245
|
+
margin-left: 0.3em;
|
|
246
|
+
min-width: 2.2em;
|
|
247
|
+
font-variant-numeric: tabular-nums;
|
|
248
|
+
}
|
|
249
|
+
|
|
250
|
+
input[type="range"],
|
|
251
|
+
input[type="radio"] {
|
|
252
|
+
vertical-align: text-bottom;
|
|
253
|
+
}
|
|
254
|
+
|
|
255
|
+
.radio-group {
|
|
256
|
+
display: flex;
|
|
257
|
+
align-items: center;
|
|
258
|
+
}
|
|
259
|
+
|
|
260
|
+
.description {
|
|
261
|
+
max-width: 26em;
|
|
262
|
+
grid-column: 1 / -1;
|
|
263
|
+
color: #777;
|
|
264
|
+
font-size: 90%;
|
|
265
|
+
margin-top: -0.5em;
|
|
266
|
+
}
|
|
198
267
|
}
|
|
199
268
|
|
|
200
269
|
.gs-input-bindings {
|
|
201
|
-
|
|
202
|
-
|
|
203
|
-
|
|
270
|
+
flex-basis: content;
|
|
271
|
+
font-size: 14px;
|
|
272
|
+
padding: var(--genome-spy-basic-spacing);
|
|
204
273
|
}
|
|
205
274
|
`;
|
|
206
275
|
export default css;
|
|
@@ -1,6 +1,16 @@
|
|
|
1
1
|
#!/bin/sh
|
|
2
|
-
|
|
3
|
-
sass genome-spy.scss >> genome-spy.css.js
|
|
4
|
-
echo "\`;" >> genome-spy.css.js
|
|
5
|
-
echo "export default css;" >> genome-spy.css.js
|
|
2
|
+
# Build helper: minify genome-spy.css (strip leading whitespace) and embed into a JS module
|
|
6
3
|
|
|
4
|
+
CSS_IN=genome-spy.css
|
|
5
|
+
JS_OUT=genome-spy.css.js
|
|
6
|
+
|
|
7
|
+
if [ ! -f "$CSS_IN" ]; then
|
|
8
|
+
echo "Missing $CSS_IN in $(pwd)"
|
|
9
|
+
exit 1
|
|
10
|
+
fi
|
|
11
|
+
|
|
12
|
+
|
|
13
|
+
echo "const css = \`" > "$JS_OUT"
|
|
14
|
+
sed -E 's/^[[:space:]]+//' "$CSS_IN" >> "$JS_OUT"
|
|
15
|
+
echo "\`;" >> "$JS_OUT"
|
|
16
|
+
echo "export default css;" >> "$JS_OUT"
|
|
@@ -10,6 +10,11 @@
|
|
|
10
10
|
* @returns {ExpressionFunction}
|
|
11
11
|
*/
|
|
12
12
|
export default function createFunction(expr: string, globalObject?: {}): ExpressionFunction;
|
|
13
|
+
/**
|
|
14
|
+
* @param {string} expr
|
|
15
|
+
* @returns {(event: UIEvent) => boolean}
|
|
16
|
+
*/
|
|
17
|
+
export function createEventFilterFunction(expr: string): (event: UIEvent) => boolean;
|
|
13
18
|
export type ExpressionProps = {
|
|
14
19
|
fields: string[];
|
|
15
20
|
globals: string[];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"expression.d.ts","sourceRoot":"","sources":["../../../src/utils/expression.js"],"names":[],"mappings":"AAuEA;;;;;;;;;;GAUG;AACH,6CAHW,MAAM,sBACJ,kBAAkB,CAgC9B;;
|
|
1
|
+
{"version":3,"file":"expression.d.ts","sourceRoot":"","sources":["../../../src/utils/expression.js"],"names":[],"mappings":"AAuEA;;;;;;;;;;GAUG;AACH,6CAHW,MAAM,sBACJ,kBAAkB,CAgC9B;AAQD;;;GAGG;AACH,gDAHW,MAAM,GACJ,CAAC,KAAK,EAAE,OAAO,KAAK,OAAO,CA2BvC;;YA5EU,MAAM,EAAE;aACR,MAAM,EAAE;UACR,MAAM;;iCAEH,CAAC,CAAC,KAAK,CAAC,EAAE,OAAO,qBAAqB,EAAE,KAAK,KAAK,GAAG,CAAC,GAAG,eAAe"}
|
|
@@ -111,3 +111,40 @@ export default function createFunction(expr, globalObject = {}) {
|
|
|
111
111
|
throw new Error(`Invalid expression: ${expr}, ${e.message}`);
|
|
112
112
|
}
|
|
113
113
|
}
|
|
114
|
+
|
|
115
|
+
const eventFilterCg = codegenExpression({
|
|
116
|
+
forbidden: [],
|
|
117
|
+
allowed: ["event"],
|
|
118
|
+
globalvar: "globalObject",
|
|
119
|
+
});
|
|
120
|
+
|
|
121
|
+
/**
|
|
122
|
+
* @param {string} expr
|
|
123
|
+
* @returns {(event: UIEvent) => boolean}
|
|
124
|
+
*/
|
|
125
|
+
export function createEventFilterFunction(expr) {
|
|
126
|
+
try {
|
|
127
|
+
const parsed = parseExpression(expr);
|
|
128
|
+
const generatedCode = eventFilterCg(parsed);
|
|
129
|
+
|
|
130
|
+
// eslint-disable-next-line no-new-func
|
|
131
|
+
const fn = Function(
|
|
132
|
+
"event",
|
|
133
|
+
"globalObject",
|
|
134
|
+
`"use strict";
|
|
135
|
+
try {
|
|
136
|
+
return !!(${generatedCode.code});
|
|
137
|
+
} catch (e) {
|
|
138
|
+
throw new Error("Error evaluating expression: " + ${JSON.stringify(
|
|
139
|
+
expr
|
|
140
|
+
)} + ", " + e.message, e);
|
|
141
|
+
}`
|
|
142
|
+
);
|
|
143
|
+
|
|
144
|
+
return /** @type {(event: UIEvent) => boolean} */ (
|
|
145
|
+
/** @type {any} */ (fn)
|
|
146
|
+
);
|
|
147
|
+
} catch (e) {
|
|
148
|
+
throw new Error(`Invalid expression: ${expr}, ${e.message}`);
|
|
149
|
+
}
|
|
150
|
+
}
|
|
@@ -1,3 +1,12 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Create a safe proxy for an event-like object that exposes only primitive
|
|
3
|
+
* (string, number, boolean, bigint, symbol, undefined) properties and null.
|
|
4
|
+
*
|
|
5
|
+
* @param {T} target The event-like object to wrap.
|
|
6
|
+
* @returns {T} A proxy exposing only primitive properties.
|
|
7
|
+
* @template T
|
|
8
|
+
*/
|
|
9
|
+
export function createPrimitiveEventProxy<T>(target: T): T;
|
|
1
10
|
/**
|
|
2
11
|
* This class wraps a MouseEvent (or similar) and allows for
|
|
3
12
|
* its propagation through the view hierarchy in a similar manner
|
|
@@ -5,7 +14,6 @@
|
|
|
5
14
|
*/
|
|
6
15
|
export default class InteractionEvent {
|
|
7
16
|
/**
|
|
8
|
-
*
|
|
9
17
|
* @param {import("../view/layout/point.js").default} point Event coordinates
|
|
10
18
|
* inside the visualization canvas.
|
|
11
19
|
* @param {UIEvent} uiEvent The event to be wrapped
|
|
@@ -21,7 +29,16 @@ export default class InteractionEvent {
|
|
|
21
29
|
*/
|
|
22
30
|
target: import("../view/view.js").default;
|
|
23
31
|
stopPropagation(): void;
|
|
32
|
+
/**
|
|
33
|
+
* The event type string of the underlying UI event (e.g. "click", "keydown").
|
|
34
|
+
*
|
|
35
|
+
* This getter proxies and returns the `type` property from the internal `UIEvent` instance (`this.uiEvent`).
|
|
36
|
+
*
|
|
37
|
+
* @returns {string} The UI event type.
|
|
38
|
+
*/
|
|
24
39
|
get type(): string;
|
|
40
|
+
get proxiedMouseEvent(): MouseEvent;
|
|
25
41
|
get mouseEvent(): MouseEvent;
|
|
42
|
+
#private;
|
|
26
43
|
}
|
|
27
44
|
//# sourceMappingURL=interactionEvent.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"interactionEvent.d.ts","sourceRoot":"","sources":["../../../src/utils/interactionEvent.js"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"interactionEvent.d.ts","sourceRoot":"","sources":["../../../src/utils/interactionEvent.js"],"names":[],"mappings":"AA6DA;;;;;;;GAOG;AACH,0CAFa,CAAC,UAFH,CAAC,GACC,CAAC,CA0Eb;AA5ID;;;;GAIG;AACH;IAII;;;;OAIG;IACH,mBAJW,OAAO,yBAAyB,EAAE,OAAO,WAEzC,OAAO,EAajB;IAVG,iDAAkB;IAClB,iBAAsB;IACtB,iBAAoB;IAEpB;;;;OAIG;IACH,QAFU,OAAO,iBAAiB,EAAE,OAAO,CAEpB;IAG3B,wBAEC;IAED;;;;;;OAMG;IACH,YAFa,MAAM,CAIlB;IAED,oCAQC;IAED,6BAMC;;CACJ"}
|