@genome-spy/core 0.62.2 → 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.
Files changed (64) hide show
  1. package/dist/bundle/index.es.js +4568 -4301
  2. package/dist/bundle/index.js +371 -297
  3. package/dist/schema.json +84 -12
  4. package/dist/src/genomeSpy.d.ts +11 -0
  5. package/dist/src/genomeSpy.d.ts.map +1 -1
  6. package/dist/src/genomeSpy.js +98 -20
  7. package/dist/src/gl/includes/common.glsl.js +1 -1
  8. package/dist/src/gl/webGLHelper.d.ts +18 -14
  9. package/dist/src/gl/webGLHelper.d.ts.map +1 -1
  10. package/dist/src/gl/webGLHelper.js +65 -64
  11. package/dist/src/index.d.ts.map +1 -1
  12. package/dist/src/index.js +1 -0
  13. package/dist/src/marks/link.fragment.glsl.js +1 -1
  14. package/dist/src/marks/link.vertex.glsl.js +1 -1
  15. package/dist/src/marks/mark.d.ts +6 -1
  16. package/dist/src/marks/mark.d.ts.map +1 -1
  17. package/dist/src/marks/mark.js +10 -16
  18. package/dist/src/marks/point.fragment.glsl.js +1 -1
  19. package/dist/src/marks/point.vertex.glsl.js +1 -1
  20. package/dist/src/marks/rect.fragment.glsl.js +1 -1
  21. package/dist/src/marks/rect.vertex.glsl.js +1 -1
  22. package/dist/src/marks/rule.fragment.glsl.js +1 -1
  23. package/dist/src/marks/rule.vertex.glsl.js +1 -1
  24. package/dist/src/marks/text.d.ts.map +1 -1
  25. package/dist/src/marks/text.fragment.glsl.js +1 -1
  26. package/dist/src/marks/text.js +7 -15
  27. package/dist/src/marks/text.vertex.glsl.js +1 -1
  28. package/dist/src/selection/selection.d.ts +5 -0
  29. package/dist/src/selection/selection.d.ts.map +1 -1
  30. package/dist/src/selection/selection.js +43 -6
  31. package/dist/src/selection/selection.test.d.ts +2 -0
  32. package/dist/src/selection/selection.test.d.ts.map +1 -0
  33. package/dist/src/selection/selection.test.js +14 -0
  34. package/dist/src/spec/parameter.d.ts +28 -2
  35. package/dist/src/styles/{genome-spy.scss → genome-spy.css} +25 -21
  36. package/dist/src/styles/genome-spy.css.d.ts +1 -1
  37. package/dist/src/styles/genome-spy.css.d.ts.map +1 -1
  38. package/dist/src/styles/genome-spy.css.js +264 -195
  39. package/dist/src/styles/update.sh +14 -4
  40. package/dist/src/types/embedApi.d.ts +16 -0
  41. package/dist/src/types/viewContext.d.ts +0 -2
  42. package/dist/src/utils/expression.d.ts +5 -0
  43. package/dist/src/utils/expression.d.ts.map +1 -1
  44. package/dist/src/utils/expression.js +37 -0
  45. package/dist/src/utils/interactionEvent.d.ts +18 -1
  46. package/dist/src/utils/interactionEvent.d.ts.map +1 -1
  47. package/dist/src/utils/interactionEvent.js +101 -1
  48. package/dist/src/utils/interactionEvent.test.d.ts +2 -0
  49. package/dist/src/utils/interactionEvent.test.d.ts.map +1 -0
  50. package/dist/src/utils/interactionEvent.test.js +35 -0
  51. package/dist/src/view/facetView.d.ts +1 -1
  52. package/dist/src/view/facetView.d.ts.map +1 -1
  53. package/dist/src/view/gridView/gridView.js +1 -1
  54. package/dist/src/view/renderingContext/bufferedViewRenderingContext.d.ts +32 -17
  55. package/dist/src/view/renderingContext/bufferedViewRenderingContext.d.ts.map +1 -1
  56. package/dist/src/view/renderingContext/bufferedViewRenderingContext.js +85 -39
  57. package/dist/src/view/renderingContext/simpleViewRenderingContext.d.ts.map +1 -1
  58. package/dist/src/view/renderingContext/simpleViewRenderingContext.js +5 -1
  59. package/dist/src/view/renderingContext/viewRenderingContext.d.ts +1 -0
  60. package/dist/src/view/renderingContext/viewRenderingContext.d.ts.map +1 -1
  61. package/dist/src/view/renderingContext/viewRenderingContext.js +4 -0
  62. package/dist/src/view/unitView.d.ts.map +1 -1
  63. package/dist/src/view/unitView.js +45 -2
  64. 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
- font-family: system-ui, "Segoe UI", Roboto, Helvetica, Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";
4
- position: relative;
5
- display: flex;
6
- flex-direction: column;
7
- }
8
- .genome-spy .canvas-wrapper {
9
- position: relative;
10
- flex-grow: 1;
11
- overflow: hidden;
12
- }
13
- .genome-spy canvas {
14
- display: block;
15
- transform: scale(1, 1);
16
- opacity: 1;
17
- transition: transform 0.6s, opacity 0.6s;
18
- }
19
- .genome-spy canvas:focus, .genome-spy canvas:focus-visible {
20
- outline: none;
21
- }
22
- .genome-spy .loading-message {
23
- position: absolute;
24
- inset: 0;
25
- display: flex;
26
- align-items: center;
27
- justify-content: center;
28
- }
29
- .genome-spy .loading-message .message {
30
- color: #666;
31
- opacity: 0;
32
- transition: opacity 0.7s;
33
- }
34
- .genome-spy .loading > canvas {
35
- transform: scale(0.95, 0.95);
36
- opacity: 0;
37
- }
38
- .genome-spy .loading > .loading-message .message {
39
- opacity: 1;
40
- }
41
- .genome-spy .loading > .loading-message .message .ellipsis {
42
- animation: blinker 1s linear infinite;
43
- }
44
- @keyframes blinker {
45
- 50% {
46
- opacity: 0;
47
- }
48
- }
49
- .genome-spy .loading-indicators {
50
- position: absolute;
51
- inset: 0;
52
- user-select: none;
53
- pointer-events: none;
54
- }
55
- .genome-spy .loading-indicators div {
56
- position: absolute;
57
- display: flex;
58
- align-items: center;
59
- justify-content: center;
60
- }
61
- .genome-spy .loading-indicators div > div {
62
- font-size: 11px;
63
- transition: opacity 0.2s;
64
- background: white;
65
- padding: 2px 5px;
66
- display: flex;
67
- border-radius: 3px;
68
- gap: 0.5em;
69
- opacity: 0;
70
- }
71
- .genome-spy .loading-indicators div > div.loading {
72
- opacity: 0.5;
73
- }
74
- .genome-spy .loading-indicators div > div.error {
75
- opacity: 0.8;
76
- color: firebrick;
77
- }
78
- .genome-spy .loading-indicators div > div > * {
79
- display: block;
80
- }
81
- .genome-spy .loading-indicators div > div img {
82
- width: 1.5em;
83
- height: 1.5em;
84
- }
85
- .genome-spy .tooltip {
86
- position: absolute;
87
- max-width: 450px;
88
- overflow: hidden;
89
- background: #f6f6f6;
90
- padding: 10px;
91
- font-size: 12px;
92
- box-shadow: 0px 3px 15px 0px rgba(0, 0, 0, 0.21);
93
- transition: outline-color 0.3s ease-in-out, box-shadow 0.3s ease-in-out;
94
- outline: 0px solid transparent;
95
- z-index: 100;
96
- }
97
- .genome-spy .tooltip:not(.sticky) {
98
- pointer-events: none;
99
- }
100
- .genome-spy .tooltip.sticky {
101
- outline: 2px solid black;
102
- box-shadow: 0px 3px 18px 0px rgba(0, 0, 0, 0.3);
103
- }
104
- .genome-spy .tooltip > :last-child {
105
- margin-bottom: 0;
106
- }
107
- .genome-spy .tooltip > .title {
108
- padding-bottom: 5px;
109
- margin-bottom: 5px;
110
- border-bottom: 1px dashed #b6b6b6;
111
- }
112
- .genome-spy .tooltip .summary {
113
- font-size: 12px;
114
- }
115
- .genome-spy .tooltip table {
116
- border-collapse: collapse;
117
- }
118
- .genome-spy .tooltip table:first-child {
119
- margin-top: 0;
120
- }
121
- .genome-spy .tooltip table th,
122
- .genome-spy .tooltip table td {
123
- padding: 2px 0.4em;
124
- vertical-align: top;
125
- }
126
- .genome-spy .tooltip table th:first-child,
127
- .genome-spy .tooltip table td:first-child {
128
- padding-left: 0;
129
- }
130
- .genome-spy .tooltip table th {
131
- text-align: left;
132
- font-weight: bold;
133
- }
134
- .genome-spy .tooltip .color-legend {
135
- display: inline-block;
136
- width: 0.8em;
137
- height: 0.8em;
138
- margin-left: 0.4em;
139
- box-shadow: 0px 0px 3px 1px white;
140
- }
141
- .genome-spy .tooltip .attributes .hovered {
142
- background-color: #e0e0e0;
143
- }
144
- .genome-spy .tooltip .na {
145
- color: #aaa;
146
- font-style: italic;
147
- font-size: 80%;
148
- }
149
- .genome-spy .gene-track-tooltip .summary {
150
- font-size: 90%;
151
- }
152
- .genome-spy .message-box {
153
- display: flex;
154
- align-items: center;
155
- justify-content: center;
156
- position: absolute;
157
- top: 0;
158
- height: 100%;
159
- width: 100%;
160
- }
161
- .genome-spy .message-box > div {
162
- border: 1px solid red;
163
- padding: 10px;
164
- background: #fff0f0;
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
- display: grid;
169
- grid-template-columns: max-content max-content;
170
- column-gap: 1em;
171
- row-gap: 0.3em;
172
- justify-items: start;
173
- }
174
- .gs-input-binding > select,
175
- .gs-input-binding > input:not([type=checkbox]) {
176
- width: 100%;
177
- }
178
- .gs-input-binding input[type=range] + span {
179
- display: inline-block;
180
- margin-left: 0.3em;
181
- min-width: 2.2em;
182
- font-variant-numeric: tabular-nums;
183
- }
184
- .gs-input-binding input[type=range],
185
- .gs-input-binding input[type=radio] {
186
- vertical-align: text-bottom;
187
- }
188
- .gs-input-binding .radio-group {
189
- display: flex;
190
- align-items: center;
191
- }
192
- .gs-input-binding .description {
193
- max-width: 26em;
194
- grid-column: 1/-1;
195
- color: #777;
196
- font-size: 90%;
197
- margin-top: -0.5em;
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
- flex-basis: content;
202
- font-size: 14px;
203
- padding: 10px;
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
- echo "const css = \`" > genome-spy.css.js
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"
@@ -77,4 +77,20 @@ export interface EmbedResult {
77
77
  * @param data new data. If left undefined, the data is retrieved from a provider.
78
78
  */
79
79
  updateNamedData: (name: string, data?: any[]) => void;
80
+
81
+ /**
82
+ * Returns a PNG data URL of the current canvas.
83
+ *
84
+ * @param {number} [logicalWidth] Custom width, defaults to canvas width
85
+ * @param {number} [logicalHeight] Custom height, defaults to canvas height
86
+ * @param {number} [devicePixelRatio] Defaults to window.devicePixelRatio
87
+ * @param {string} [clearColor] Background color. A CSS color, null for transparent
88
+ * @returns A PNG data URL
89
+ */
90
+ exportCanvas: (
91
+ logicalWidth: number,
92
+ logicalHeight: number,
93
+ devicePixelRatio: number,
94
+ clearColor: string
95
+ ) => string;
80
96
  }
@@ -28,8 +28,6 @@ export default interface ViewContext {
28
28
  genomeStore?: GenomeStore;
29
29
  fontManager: BmFontManager;
30
30
 
31
- devicePixelRatio: number;
32
-
33
31
  requestLayoutReflow: () => void;
34
32
 
35
33
  updateTooltip: <T>(
@@ -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;;YAvCU,MAAM,EAAE;aACR,MAAM,EAAE;UACR,MAAM;;iCAEH,CAAC,CAAC,KAAK,CAAC,EAAE,OAAO,qBAAqB,EAAE,KAAK,KAAK,GAAG,CAAC,GAAG,eAAe"}
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":"AAAA;;;;GAIG;AACH;IACI;;;;;OAKG;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,mBAEC;IAED,6BAMC;CACJ"}
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"}