@vaadin/context-menu 25.1.0-alpha5 → 25.1.0-alpha7

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,1688 @@
1
+ {
2
+ "schemaVersion": "1.0.0",
3
+ "readme": "",
4
+ "modules": [
5
+ {
6
+ "kind": "javascript-module",
7
+ "path": "vaadin-context-menu.js",
8
+ "declarations": [],
9
+ "exports": [
10
+ {
11
+ "kind": "js",
12
+ "name": "*",
13
+ "declaration": {
14
+ "name": "*",
15
+ "module": "src/vaadin-context-menu.js"
16
+ }
17
+ }
18
+ ]
19
+ },
20
+ {
21
+ "kind": "javascript-module",
22
+ "path": "src/vaadin-context-menu-item.js",
23
+ "declarations": [
24
+ {
25
+ "kind": "class",
26
+ "description": "An element used internally by `<vaadin-context-menu>`. Not intended to be used separately.",
27
+ "name": "ContextMenuItem",
28
+ "members": [
29
+ {
30
+ "kind": "field",
31
+ "name": "selected",
32
+ "privacy": "public",
33
+ "type": {
34
+ "text": "boolean"
35
+ },
36
+ "description": "If true, the item is in selected state.",
37
+ "attribute": "selected",
38
+ "inheritedFrom": {
39
+ "name": "ItemMixin",
40
+ "package": "@vaadin/item/src/vaadin-item-mixin.js"
41
+ }
42
+ },
43
+ {
44
+ "kind": "field",
45
+ "name": "value",
46
+ "return": {
47
+ "type": {
48
+ "text": "string"
49
+ }
50
+ },
51
+ "parameters": [
52
+ {
53
+ "name": "value",
54
+ "type": {
55
+ "text": "string"
56
+ }
57
+ }
58
+ ],
59
+ "inheritedFrom": {
60
+ "name": "ItemMixin",
61
+ "package": "@vaadin/item/src/vaadin-item-mixin.js"
62
+ }
63
+ }
64
+ ],
65
+ "mixins": [
66
+ {
67
+ "name": "ItemMixin",
68
+ "package": "@vaadin/item/src/vaadin-item-mixin.js"
69
+ },
70
+ {
71
+ "name": "ThemableMixin",
72
+ "package": "@vaadin/vaadin-themable-mixin/vaadin-themable-mixin.js"
73
+ },
74
+ {
75
+ "name": "DirMixin",
76
+ "package": "@vaadin/component-base/src/dir-mixin.js"
77
+ },
78
+ {
79
+ "name": "PolylitMixin",
80
+ "package": "@vaadin/component-base/src/polylit-mixin.js"
81
+ },
82
+ {
83
+ "name": "LumoInjectionMixin",
84
+ "package": "@vaadin/vaadin-themable-mixin/lumo-injection-mixin.js"
85
+ }
86
+ ],
87
+ "superclass": {
88
+ "name": "LitElement",
89
+ "package": "lit"
90
+ },
91
+ "tagName": "vaadin-context-menu-item",
92
+ "customElement": true,
93
+ "attributes": [
94
+ {
95
+ "name": "selected",
96
+ "type": {
97
+ "text": "boolean"
98
+ },
99
+ "description": "If true, the item is in selected state.",
100
+ "fieldName": "selected",
101
+ "inheritedFrom": {
102
+ "name": "ItemMixin",
103
+ "package": "@vaadin/item/src/vaadin-item-mixin.js"
104
+ }
105
+ }
106
+ ],
107
+ "events": []
108
+ }
109
+ ],
110
+ "exports": [
111
+ {
112
+ "kind": "js",
113
+ "name": "ContextMenuItem",
114
+ "declaration": {
115
+ "name": "ContextMenuItem",
116
+ "module": "src/vaadin-context-menu-item.js"
117
+ }
118
+ }
119
+ ]
120
+ },
121
+ {
122
+ "kind": "javascript-module",
123
+ "path": "src/vaadin-context-menu-list-box.js",
124
+ "declarations": [
125
+ {
126
+ "kind": "class",
127
+ "description": "An element used internally by `<vaadin-context-menu>`. Not intended to be used separately.",
128
+ "name": "ContextMenuListBox",
129
+ "members": [
130
+ {
131
+ "kind": "field",
132
+ "name": "disabled",
133
+ "privacy": "public",
134
+ "type": {
135
+ "text": "boolean"
136
+ },
137
+ "description": "If true, the user cannot interact with this element.\nWhen the element is disabled, the selected item is\nnot updated when `selected` property is changed.",
138
+ "attribute": "disabled",
139
+ "inheritedFrom": {
140
+ "name": "ListMixin",
141
+ "package": "@vaadin/a11y-base/src/list-mixin.js"
142
+ }
143
+ },
144
+ {
145
+ "kind": "field",
146
+ "name": "items",
147
+ "privacy": "public",
148
+ "type": {
149
+ "text": "!Array<!Element> | undefined"
150
+ },
151
+ "description": "A read-only list of items from which a selection can be made.\nIt is populated from the elements passed to the light DOM,\nand updated dynamically when adding or removing items.",
152
+ "attribute": "items",
153
+ "inheritedFrom": {
154
+ "name": "ListMixin",
155
+ "package": "@vaadin/a11y-base/src/list-mixin.js"
156
+ }
157
+ },
158
+ {
159
+ "kind": "field",
160
+ "name": "orientation",
161
+ "privacy": "public",
162
+ "type": {
163
+ "text": "!ListOrientation"
164
+ },
165
+ "description": "Define how items are disposed in the dom.\nPossible values are: `horizontal|vertical`.\nIt also changes navigation keys from left/right to up/down.",
166
+ "attribute": "orientation",
167
+ "inheritedFrom": {
168
+ "name": "ListMixin",
169
+ "package": "@vaadin/a11y-base/src/list-mixin.js"
170
+ }
171
+ },
172
+ {
173
+ "kind": "field",
174
+ "name": "selected",
175
+ "privacy": "public",
176
+ "type": {
177
+ "text": "number"
178
+ },
179
+ "description": "The index of the item selected in the items array.\nNote: Not updated when used in `multiple` selection mode.",
180
+ "attribute": "selected",
181
+ "inheritedFrom": {
182
+ "name": "ListMixin",
183
+ "package": "@vaadin/a11y-base/src/list-mixin.js"
184
+ }
185
+ }
186
+ ],
187
+ "attributes": [
188
+ {
189
+ "name": "disabled",
190
+ "type": {
191
+ "text": "boolean"
192
+ },
193
+ "description": "If true, the user cannot interact with this element.\nWhen the element is disabled, the selected item is\nnot updated when `selected` property is changed.",
194
+ "fieldName": "disabled",
195
+ "inheritedFrom": {
196
+ "name": "ListMixin",
197
+ "package": "@vaadin/a11y-base/src/list-mixin.js"
198
+ }
199
+ },
200
+ {
201
+ "name": "orientation",
202
+ "type": {
203
+ "text": "!ListOrientation"
204
+ },
205
+ "description": "Define how items are disposed in the dom.\nPossible values are: `horizontal|vertical`.\nIt also changes navigation keys from left/right to up/down.",
206
+ "fieldName": "orientation",
207
+ "inheritedFrom": {
208
+ "name": "ListMixin",
209
+ "package": "@vaadin/a11y-base/src/list-mixin.js"
210
+ }
211
+ },
212
+ {
213
+ "name": "selected",
214
+ "type": {
215
+ "text": "number"
216
+ },
217
+ "description": "The index of the item selected in the items array.\nNote: Not updated when used in `multiple` selection mode.",
218
+ "fieldName": "selected",
219
+ "inheritedFrom": {
220
+ "name": "ListMixin",
221
+ "package": "@vaadin/a11y-base/src/list-mixin.js"
222
+ }
223
+ }
224
+ ],
225
+ "mixins": [
226
+ {
227
+ "name": "ListMixin",
228
+ "package": "@vaadin/a11y-base/src/list-mixin.js"
229
+ },
230
+ {
231
+ "name": "ThemableMixin",
232
+ "package": "@vaadin/vaadin-themable-mixin/vaadin-themable-mixin.js"
233
+ },
234
+ {
235
+ "name": "DirMixin",
236
+ "package": "@vaadin/component-base/src/dir-mixin.js"
237
+ },
238
+ {
239
+ "name": "PolylitMixin",
240
+ "package": "@vaadin/component-base/src/polylit-mixin.js"
241
+ },
242
+ {
243
+ "name": "LumoInjectionMixin",
244
+ "package": "@vaadin/vaadin-themable-mixin/lumo-injection-mixin.js"
245
+ }
246
+ ],
247
+ "superclass": {
248
+ "name": "LitElement",
249
+ "package": "lit"
250
+ },
251
+ "tagName": "vaadin-context-menu-list-box",
252
+ "customElement": true,
253
+ "events": []
254
+ }
255
+ ],
256
+ "exports": [
257
+ {
258
+ "kind": "js",
259
+ "name": "ContextMenuListBox",
260
+ "declaration": {
261
+ "name": "ContextMenuListBox",
262
+ "module": "src/vaadin-context-menu-list-box.js"
263
+ }
264
+ }
265
+ ]
266
+ },
267
+ {
268
+ "kind": "javascript-module",
269
+ "path": "src/vaadin-context-menu-mixin.js",
270
+ "declarations": [
271
+ {
272
+ "kind": "mixin",
273
+ "description": "",
274
+ "name": "ContextMenuMixin",
275
+ "members": [
276
+ {
277
+ "kind": "method",
278
+ "name": "close",
279
+ "description": "Closes the overlay."
280
+ },
281
+ {
282
+ "kind": "field",
283
+ "name": "closeOn",
284
+ "privacy": "public",
285
+ "type": {
286
+ "text": "string"
287
+ },
288
+ "description": "Event name to listen for closing the context menu.",
289
+ "attribute": "close-on"
290
+ },
291
+ {
292
+ "kind": "field",
293
+ "name": "items",
294
+ "privacy": "public",
295
+ "type": {
296
+ "text": "!Array<!ContextMenuItem> | undefined"
297
+ },
298
+ "description": "Defines a (hierarchical) menu structure for the component.\nIf a menu item has a non-empty `children` set, a sub-menu with the child items is opened\nnext to the parent menu on mouseover, tap or a right arrow keypress.\n\nThe items API can't be used together with a renderer!\n\n#### Example\n\n```javascript\ncontextMenu.items = [\n { text: 'Menu Item 1', theme: 'primary', className: 'first', children:\n [\n { text: 'Menu Item 1-1', checked: true, keepOpen: true },\n { text: 'Menu Item 1-2' }\n ]\n },\n { component: 'hr' },\n { text: 'Menu Item 2', children:\n [\n { text: 'Menu Item 2-1' },\n { text: 'Menu Item 2-2', disabled: true }\n ]\n },\n { text: 'Menu Item 3', disabled: true, className: 'last' }\n];\n```",
299
+ "attribute": "items",
300
+ "inheritedFrom": {
301
+ "name": "ItemsMixin",
302
+ "module": "src/vaadin-contextmenu-items-mixin.js"
303
+ }
304
+ },
305
+ {
306
+ "kind": "field",
307
+ "name": "listenOn",
308
+ "privacy": "public",
309
+ "type": {
310
+ "text": "!HTMLElement"
311
+ },
312
+ "description": "The target element that's listened to for context menu opening events.\nBy default the vaadin-context-menu listens to the target's `vaadin-contextmenu`\nevents.",
313
+ "default": "self",
314
+ "attribute": "listen-on"
315
+ },
316
+ {
317
+ "kind": "method",
318
+ "name": "open",
319
+ "parameters": [
320
+ {
321
+ "name": "e",
322
+ "description": "used as the context for the menu. Overlay coordinates are taken from this event.",
323
+ "type": {
324
+ "text": "!Event | undefined"
325
+ }
326
+ }
327
+ ],
328
+ "description": "Opens the overlay."
329
+ },
330
+ {
331
+ "kind": "field",
332
+ "name": "opened",
333
+ "privacy": "public",
334
+ "type": {
335
+ "text": "boolean"
336
+ },
337
+ "description": "True if the overlay is currently displayed.",
338
+ "attribute": "opened"
339
+ },
340
+ {
341
+ "kind": "field",
342
+ "name": "openOn",
343
+ "privacy": "public",
344
+ "type": {
345
+ "text": "string"
346
+ },
347
+ "description": "Event name to listen for opening the context menu.",
348
+ "attribute": "open-on"
349
+ },
350
+ {
351
+ "kind": "field",
352
+ "name": "renderer",
353
+ "privacy": "public",
354
+ "type": {
355
+ "text": "ContextMenuRenderer | undefined"
356
+ },
357
+ "description": "Custom function for rendering the content of the menu overlay.\nReceives three arguments:\n\n- `root` The root container DOM element. Append your content to it.\n- `contextMenu` The reference to the `<vaadin-context-menu>` element.\n- `context` The object with the menu context, contains:\n - `context.target` the target of the menu opening event,\n - `context.detail` the menu opening event detail.",
358
+ "attribute": "renderer"
359
+ },
360
+ {
361
+ "kind": "method",
362
+ "name": "requestContentUpdate",
363
+ "description": "Requests an update for the content of the menu overlay.\nWhile performing the update, it invokes the renderer passed in the `renderer` property.\n\nIt is not guaranteed that the update happens immediately (synchronously) after it is requested."
364
+ },
365
+ {
366
+ "kind": "field",
367
+ "name": "selector",
368
+ "privacy": "public",
369
+ "type": {
370
+ "text": "string"
371
+ },
372
+ "description": "CSS selector that can be used to target any child element\nof the context menu to listen for `openOn` events.",
373
+ "attribute": "selector"
374
+ }
375
+ ],
376
+ "events": [
377
+ {
378
+ "name": "close-all-menus",
379
+ "type": {
380
+ "text": "CustomEvent"
381
+ },
382
+ "inheritedFrom": {
383
+ "name": "ItemsMixin",
384
+ "module": "src/vaadin-contextmenu-items-mixin.js"
385
+ }
386
+ },
387
+ {
388
+ "name": "closed",
389
+ "type": {
390
+ "text": "CustomEvent"
391
+ }
392
+ },
393
+ {
394
+ "name": "item-selected",
395
+ "type": {
396
+ "text": "CustomEvent"
397
+ },
398
+ "inheritedFrom": {
399
+ "name": "ItemsMixin",
400
+ "module": "src/vaadin-contextmenu-items-mixin.js"
401
+ }
402
+ }
403
+ ],
404
+ "attributes": [
405
+ {
406
+ "name": "close-on",
407
+ "type": {
408
+ "text": "string"
409
+ },
410
+ "description": "Event name to listen for closing the context menu.",
411
+ "fieldName": "closeOn"
412
+ },
413
+ {
414
+ "name": "listen-on",
415
+ "type": {
416
+ "text": "!HTMLElement"
417
+ },
418
+ "description": "The target element that's listened to for context menu opening events.\nBy default the vaadin-context-menu listens to the target's `vaadin-contextmenu`\nevents.",
419
+ "default": "self",
420
+ "fieldName": "listenOn"
421
+ },
422
+ {
423
+ "name": "open-on",
424
+ "type": {
425
+ "text": "string"
426
+ },
427
+ "description": "Event name to listen for opening the context menu.",
428
+ "fieldName": "openOn"
429
+ },
430
+ {
431
+ "name": "opened",
432
+ "type": {
433
+ "text": "boolean"
434
+ },
435
+ "description": "True if the overlay is currently displayed.",
436
+ "fieldName": "opened"
437
+ },
438
+ {
439
+ "name": "renderer",
440
+ "type": {
441
+ "text": "ContextMenuRenderer | undefined"
442
+ },
443
+ "description": "Custom function for rendering the content of the menu overlay.\nReceives three arguments:\n\n- `root` The root container DOM element. Append your content to it.\n- `contextMenu` The reference to the `<vaadin-context-menu>` element.\n- `context` The object with the menu context, contains:\n - `context.target` the target of the menu opening event,\n - `context.detail` the menu opening event detail.",
444
+ "fieldName": "renderer"
445
+ },
446
+ {
447
+ "name": "selector",
448
+ "type": {
449
+ "text": "string"
450
+ },
451
+ "description": "CSS selector that can be used to target any child element\nof the context menu to listen for `openOn` events.",
452
+ "fieldName": "selector"
453
+ }
454
+ ],
455
+ "mixins": [
456
+ {
457
+ "name": "ItemsMixin",
458
+ "module": "src/vaadin-contextmenu-items-mixin.js"
459
+ }
460
+ ],
461
+ "parameters": [
462
+ {
463
+ "name": "superClass"
464
+ }
465
+ ]
466
+ }
467
+ ],
468
+ "exports": [
469
+ {
470
+ "kind": "js",
471
+ "name": "ContextMenuMixin",
472
+ "declaration": {
473
+ "name": "ContextMenuMixin",
474
+ "module": "src/vaadin-context-menu-mixin.js"
475
+ }
476
+ }
477
+ ]
478
+ },
479
+ {
480
+ "kind": "javascript-module",
481
+ "path": "src/vaadin-context-menu-overlay.js",
482
+ "declarations": [
483
+ {
484
+ "kind": "class",
485
+ "description": "An element used internally by `<vaadin-context-menu>`. Not intended to be used separately.",
486
+ "name": "ContextMenuOverlay",
487
+ "members": [
488
+ {
489
+ "kind": "method",
490
+ "name": "bringToFront",
491
+ "description": "Brings the overlay as visually the frontmost one.",
492
+ "inheritedFrom": {
493
+ "name": "OverlayStackMixin",
494
+ "package": "@vaadin/overlay/src/vaadin-overlay-stack-mixin.js"
495
+ }
496
+ },
497
+ {
498
+ "kind": "method",
499
+ "name": "close",
500
+ "parameters": [
501
+ {
502
+ "name": "sourceEvent",
503
+ "type": {
504
+ "text": "Event="
505
+ }
506
+ }
507
+ ],
508
+ "inheritedFrom": {
509
+ "name": "OverlayMixin",
510
+ "package": "@vaadin/overlay/src/vaadin-overlay-mixin.js"
511
+ }
512
+ },
513
+ {
514
+ "kind": "field",
515
+ "name": "focusTrap",
516
+ "privacy": "public",
517
+ "type": {
518
+ "text": "boolean"
519
+ },
520
+ "description": "When true, opening the overlay moves focus to the first focusable child,\nor to the overlay part with tabindex if there are no focusable children.",
521
+ "attribute": "focus-trap",
522
+ "inheritedFrom": {
523
+ "name": "OverlayFocusMixin",
524
+ "package": "@vaadin/overlay/src/vaadin-overlay-focus-mixin.js"
525
+ }
526
+ },
527
+ {
528
+ "kind": "method",
529
+ "name": "getBoundaries",
530
+ "description": "Returns the adjusted boundaries of the overlay.",
531
+ "return": {
532
+ "type": {
533
+ "text": "object"
534
+ }
535
+ },
536
+ "inheritedFrom": {
537
+ "name": "MenuOverlayMixin",
538
+ "module": "src/vaadin-menu-overlay-mixin.js"
539
+ }
540
+ },
541
+ {
542
+ "kind": "field",
543
+ "name": "hidden",
544
+ "privacy": "public",
545
+ "type": {
546
+ "text": "boolean"
547
+ },
548
+ "description": "When set to true, the overlay is hidden. This also closes the overlay\nimmediately in case there is a closing animation in progress.",
549
+ "attribute": "hidden",
550
+ "inheritedFrom": {
551
+ "name": "OverlayMixin",
552
+ "package": "@vaadin/overlay/src/vaadin-overlay-mixin.js"
553
+ }
554
+ },
555
+ {
556
+ "kind": "field",
557
+ "name": "horizontalAlign",
558
+ "privacy": "public",
559
+ "type": {
560
+ "text": "string"
561
+ },
562
+ "description": "When `positionTarget` is set, this property defines whether to align the overlay's\nleft or right side to the target element by default.\nPossible values are `start` and `end`.\nRTL is taken into account when interpreting the value.\nThe overlay is automatically flipped to the opposite side when it doesn't fit into\nthe default side defined by this property.",
563
+ "attribute": "horizontal-align",
564
+ "inheritedFrom": {
565
+ "name": "PositionMixin",
566
+ "package": "@vaadin/overlay/src/vaadin-overlay-position-mixin.js"
567
+ }
568
+ },
569
+ {
570
+ "kind": "field",
571
+ "name": "model",
572
+ "privacy": "public",
573
+ "type": {
574
+ "text": "object"
575
+ },
576
+ "description": "Object with properties that is passed to `renderer` function",
577
+ "attribute": "model",
578
+ "inheritedFrom": {
579
+ "name": "OverlayMixin",
580
+ "package": "@vaadin/overlay/src/vaadin-overlay-mixin.js"
581
+ }
582
+ },
583
+ {
584
+ "kind": "field",
585
+ "name": "modeless",
586
+ "privacy": "public",
587
+ "type": {
588
+ "text": "boolean"
589
+ },
590
+ "description": "When true the overlay won't disable the main content, showing\nit doesn't change the functionality of the user interface.",
591
+ "attribute": "modeless",
592
+ "inheritedFrom": {
593
+ "name": "OverlayMixin",
594
+ "package": "@vaadin/overlay/src/vaadin-overlay-mixin.js"
595
+ }
596
+ },
597
+ {
598
+ "kind": "field",
599
+ "name": "noHorizontalOverlap",
600
+ "privacy": "public",
601
+ "type": {
602
+ "text": "boolean"
603
+ },
604
+ "description": "When `positionTarget` is set, this property defines whether the overlay should overlap\nthe target element in the x-axis, or be positioned right next to it.",
605
+ "attribute": "no-horizontal-overlap",
606
+ "inheritedFrom": {
607
+ "name": "PositionMixin",
608
+ "package": "@vaadin/overlay/src/vaadin-overlay-position-mixin.js"
609
+ }
610
+ },
611
+ {
612
+ "kind": "field",
613
+ "name": "noVerticalOverlap",
614
+ "privacy": "public",
615
+ "type": {
616
+ "text": "boolean"
617
+ },
618
+ "description": "When `positionTarget` is set, this property defines whether the overlay should overlap\nthe target element in the y-axis, or be positioned right above/below it.",
619
+ "attribute": "no-vertical-overlap",
620
+ "inheritedFrom": {
621
+ "name": "PositionMixin",
622
+ "package": "@vaadin/overlay/src/vaadin-overlay-position-mixin.js"
623
+ }
624
+ },
625
+ {
626
+ "kind": "field",
627
+ "name": "opened",
628
+ "privacy": "public",
629
+ "type": {
630
+ "text": "boolean"
631
+ },
632
+ "description": "When true, the overlay is visible and attached to body.",
633
+ "attribute": "opened",
634
+ "inheritedFrom": {
635
+ "name": "OverlayMixin",
636
+ "package": "@vaadin/overlay/src/vaadin-overlay-mixin.js"
637
+ }
638
+ },
639
+ {
640
+ "kind": "field",
641
+ "name": "owner",
642
+ "privacy": "public",
643
+ "type": {
644
+ "text": "HTMLElement"
645
+ },
646
+ "description": "Owner element passed with renderer function",
647
+ "attribute": "owner",
648
+ "inheritedFrom": {
649
+ "name": "OverlayMixin",
650
+ "package": "@vaadin/overlay/src/vaadin-overlay-mixin.js"
651
+ }
652
+ },
653
+ {
654
+ "kind": "field",
655
+ "name": "position",
656
+ "privacy": "public",
657
+ "type": {
658
+ "text": "string"
659
+ },
660
+ "description": "Position of the overlay with respect to the target.\nSupported values: null, `top-start`, `top`, `top-end`,\n`bottom-start`, `bottom`, `bottom-end`, `start-top`,\n`start`, `start-bottom`, `end-top`, `end`, `end-bottom`.",
661
+ "attribute": "position"
662
+ },
663
+ {
664
+ "kind": "field",
665
+ "name": "positionTarget",
666
+ "privacy": "public",
667
+ "type": {
668
+ "text": "object"
669
+ },
670
+ "description": "The element next to which this overlay should be aligned.\nThe position of the overlay relative to the positionTarget can be adjusted\nwith properties `horizontalAlign`, `verticalAlign`, `noHorizontalOverlap`\nand `noVerticalOverlap`.",
671
+ "attribute": "position-target",
672
+ "inheritedFrom": {
673
+ "name": "PositionMixin",
674
+ "package": "@vaadin/overlay/src/vaadin-overlay-position-mixin.js"
675
+ }
676
+ },
677
+ {
678
+ "kind": "field",
679
+ "name": "renderer",
680
+ "privacy": "public",
681
+ "type": {
682
+ "text": "OverlayRenderer | null | undefined"
683
+ },
684
+ "description": "Custom function for rendering the content of the overlay.\nReceives three arguments:\n\n- `root` The root container DOM element. Append your content to it.\n- `owner` The host element of the renderer function.\n- `model` The object with the properties related with rendering.",
685
+ "attribute": "renderer",
686
+ "inheritedFrom": {
687
+ "name": "OverlayMixin",
688
+ "package": "@vaadin/overlay/src/vaadin-overlay-mixin.js"
689
+ }
690
+ },
691
+ {
692
+ "kind": "method",
693
+ "name": "requestContentUpdate",
694
+ "description": "Requests an update for the content of the overlay.\nWhile performing the update, it invokes the renderer passed in the `renderer` property.\n\nIt is not guaranteed that the update happens immediately (synchronously) after it is requested.",
695
+ "inheritedFrom": {
696
+ "name": "OverlayMixin",
697
+ "package": "@vaadin/overlay/src/vaadin-overlay-mixin.js"
698
+ }
699
+ },
700
+ {
701
+ "kind": "field",
702
+ "name": "requiredVerticalSpace",
703
+ "privacy": "public",
704
+ "type": {
705
+ "text": "number"
706
+ },
707
+ "description": "If the overlay content has no intrinsic height, this property can be used to set\nthe minimum vertical space (in pixels) required by the overlay. Setting a value to\nthe property effectively disables the content measurement in favor of using this\nfixed value for determining the open direction.",
708
+ "attribute": "required-vertical-space",
709
+ "inheritedFrom": {
710
+ "name": "PositionMixin",
711
+ "package": "@vaadin/overlay/src/vaadin-overlay-position-mixin.js"
712
+ }
713
+ },
714
+ {
715
+ "kind": "field",
716
+ "name": "restoreFocusNode",
717
+ "privacy": "public",
718
+ "type": {
719
+ "text": "HTMLElement"
720
+ },
721
+ "description": "Set to specify the element which should be focused on overlay close,\nif `restoreFocusOnClose` is set to true.",
722
+ "attribute": "restore-focus-node",
723
+ "inheritedFrom": {
724
+ "name": "OverlayFocusMixin",
725
+ "package": "@vaadin/overlay/src/vaadin-overlay-focus-mixin.js"
726
+ }
727
+ },
728
+ {
729
+ "kind": "field",
730
+ "name": "restoreFocusOnClose",
731
+ "privacy": "public",
732
+ "type": {
733
+ "text": "boolean"
734
+ },
735
+ "description": "Set to true to enable restoring of focus when overlay is closed.",
736
+ "attribute": "restore-focus-on-close",
737
+ "inheritedFrom": {
738
+ "name": "OverlayFocusMixin",
739
+ "package": "@vaadin/overlay/src/vaadin-overlay-focus-mixin.js"
740
+ }
741
+ },
742
+ {
743
+ "kind": "method",
744
+ "name": "setBounds",
745
+ "parameters": [
746
+ {
747
+ "name": "bounds",
748
+ "type": {
749
+ "text": "!OverlayBoundsParam"
750
+ }
751
+ },
752
+ {
753
+ "name": "absolute",
754
+ "default": "true",
755
+ "type": {
756
+ "text": "boolean"
757
+ }
758
+ }
759
+ ],
760
+ "description": "Updates the coordinates of the overlay.",
761
+ "inheritedFrom": {
762
+ "name": "OverlayMixin",
763
+ "package": "@vaadin/overlay/src/vaadin-overlay-mixin.js"
764
+ }
765
+ },
766
+ {
767
+ "kind": "field",
768
+ "name": "verticalAlign",
769
+ "privacy": "public",
770
+ "type": {
771
+ "text": "string"
772
+ },
773
+ "description": "When `positionTarget` is set, this property defines whether to align the overlay's\ntop or bottom side to the target element by default.\nPossible values are `top` and `bottom`.\nThe overlay is automatically flipped to the opposite side when it doesn't fit into\nthe default side defined by this property.",
774
+ "attribute": "vertical-align",
775
+ "inheritedFrom": {
776
+ "name": "PositionMixin",
777
+ "package": "@vaadin/overlay/src/vaadin-overlay-position-mixin.js"
778
+ }
779
+ },
780
+ {
781
+ "kind": "field",
782
+ "name": "withBackdrop",
783
+ "privacy": "public",
784
+ "type": {
785
+ "text": "boolean"
786
+ },
787
+ "description": "When true the overlay has backdrop on top of content when opened.",
788
+ "attribute": "with-backdrop",
789
+ "inheritedFrom": {
790
+ "name": "OverlayMixin",
791
+ "package": "@vaadin/overlay/src/vaadin-overlay-mixin.js"
792
+ }
793
+ }
794
+ ],
795
+ "attributes": [
796
+ {
797
+ "name": "focus-trap",
798
+ "type": {
799
+ "text": "boolean"
800
+ },
801
+ "description": "When true, opening the overlay moves focus to the first focusable child,\nor to the overlay part with tabindex if there are no focusable children.",
802
+ "fieldName": "focusTrap",
803
+ "inheritedFrom": {
804
+ "name": "OverlayFocusMixin",
805
+ "package": "@vaadin/overlay/src/vaadin-overlay-focus-mixin.js"
806
+ }
807
+ },
808
+ {
809
+ "name": "hidden",
810
+ "type": {
811
+ "text": "boolean"
812
+ },
813
+ "description": "When set to true, the overlay is hidden. This also closes the overlay\nimmediately in case there is a closing animation in progress.",
814
+ "fieldName": "hidden",
815
+ "inheritedFrom": {
816
+ "name": "OverlayMixin",
817
+ "package": "@vaadin/overlay/src/vaadin-overlay-mixin.js"
818
+ }
819
+ },
820
+ {
821
+ "name": "horizontal-align",
822
+ "type": {
823
+ "text": "string"
824
+ },
825
+ "description": "When `positionTarget` is set, this property defines whether to align the overlay's\nleft or right side to the target element by default.\nPossible values are `start` and `end`.\nRTL is taken into account when interpreting the value.\nThe overlay is automatically flipped to the opposite side when it doesn't fit into\nthe default side defined by this property.",
826
+ "fieldName": "horizontalAlign",
827
+ "inheritedFrom": {
828
+ "name": "PositionMixin",
829
+ "package": "@vaadin/overlay/src/vaadin-overlay-position-mixin.js"
830
+ }
831
+ },
832
+ {
833
+ "name": "modeless",
834
+ "type": {
835
+ "text": "boolean"
836
+ },
837
+ "description": "When true the overlay won't disable the main content, showing\nit doesn't change the functionality of the user interface.",
838
+ "fieldName": "modeless",
839
+ "inheritedFrom": {
840
+ "name": "OverlayMixin",
841
+ "package": "@vaadin/overlay/src/vaadin-overlay-mixin.js"
842
+ }
843
+ },
844
+ {
845
+ "name": "no-horizontal-overlap",
846
+ "type": {
847
+ "text": "boolean"
848
+ },
849
+ "description": "When `positionTarget` is set, this property defines whether the overlay should overlap\nthe target element in the x-axis, or be positioned right next to it.",
850
+ "fieldName": "noHorizontalOverlap",
851
+ "inheritedFrom": {
852
+ "name": "PositionMixin",
853
+ "package": "@vaadin/overlay/src/vaadin-overlay-position-mixin.js"
854
+ }
855
+ },
856
+ {
857
+ "name": "no-vertical-overlap",
858
+ "type": {
859
+ "text": "boolean"
860
+ },
861
+ "description": "When `positionTarget` is set, this property defines whether the overlay should overlap\nthe target element in the y-axis, or be positioned right above/below it.",
862
+ "fieldName": "noVerticalOverlap",
863
+ "inheritedFrom": {
864
+ "name": "PositionMixin",
865
+ "package": "@vaadin/overlay/src/vaadin-overlay-position-mixin.js"
866
+ }
867
+ },
868
+ {
869
+ "name": "opened",
870
+ "type": {
871
+ "text": "boolean"
872
+ },
873
+ "description": "When true, the overlay is visible and attached to body.",
874
+ "fieldName": "opened",
875
+ "inheritedFrom": {
876
+ "name": "OverlayMixin",
877
+ "package": "@vaadin/overlay/src/vaadin-overlay-mixin.js"
878
+ }
879
+ },
880
+ {
881
+ "name": "owner",
882
+ "type": {
883
+ "text": "HTMLElement"
884
+ },
885
+ "description": "Owner element passed with renderer function",
886
+ "fieldName": "owner",
887
+ "inheritedFrom": {
888
+ "name": "OverlayMixin",
889
+ "package": "@vaadin/overlay/src/vaadin-overlay-mixin.js"
890
+ }
891
+ },
892
+ {
893
+ "name": "position",
894
+ "type": {
895
+ "text": "string"
896
+ },
897
+ "description": "Position of the overlay with respect to the target.\nSupported values: null, `top-start`, `top`, `top-end`,\n`bottom-start`, `bottom`, `bottom-end`, `start-top`,\n`start`, `start-bottom`, `end-top`, `end`, `end-bottom`.",
898
+ "fieldName": "position"
899
+ },
900
+ {
901
+ "name": "renderer",
902
+ "type": {
903
+ "text": "OverlayRenderer | null | undefined"
904
+ },
905
+ "description": "Custom function for rendering the content of the overlay.\nReceives three arguments:\n\n- `root` The root container DOM element. Append your content to it.\n- `owner` The host element of the renderer function.\n- `model` The object with the properties related with rendering.",
906
+ "fieldName": "renderer",
907
+ "inheritedFrom": {
908
+ "name": "OverlayMixin",
909
+ "package": "@vaadin/overlay/src/vaadin-overlay-mixin.js"
910
+ }
911
+ },
912
+ {
913
+ "name": "required-vertical-space",
914
+ "type": {
915
+ "text": "number"
916
+ },
917
+ "description": "If the overlay content has no intrinsic height, this property can be used to set\nthe minimum vertical space (in pixels) required by the overlay. Setting a value to\nthe property effectively disables the content measurement in favor of using this\nfixed value for determining the open direction.",
918
+ "fieldName": "requiredVerticalSpace",
919
+ "inheritedFrom": {
920
+ "name": "PositionMixin",
921
+ "package": "@vaadin/overlay/src/vaadin-overlay-position-mixin.js"
922
+ }
923
+ },
924
+ {
925
+ "name": "restore-focus-node",
926
+ "type": {
927
+ "text": "HTMLElement"
928
+ },
929
+ "description": "Set to specify the element which should be focused on overlay close,\nif `restoreFocusOnClose` is set to true.",
930
+ "fieldName": "restoreFocusNode",
931
+ "inheritedFrom": {
932
+ "name": "OverlayFocusMixin",
933
+ "package": "@vaadin/overlay/src/vaadin-overlay-focus-mixin.js"
934
+ }
935
+ },
936
+ {
937
+ "name": "restore-focus-on-close",
938
+ "type": {
939
+ "text": "boolean"
940
+ },
941
+ "description": "Set to true to enable restoring of focus when overlay is closed.",
942
+ "fieldName": "restoreFocusOnClose",
943
+ "inheritedFrom": {
944
+ "name": "OverlayFocusMixin",
945
+ "package": "@vaadin/overlay/src/vaadin-overlay-focus-mixin.js"
946
+ }
947
+ },
948
+ {
949
+ "name": "vertical-align",
950
+ "type": {
951
+ "text": "string"
952
+ },
953
+ "description": "When `positionTarget` is set, this property defines whether to align the overlay's\ntop or bottom side to the target element by default.\nPossible values are `top` and `bottom`.\nThe overlay is automatically flipped to the opposite side when it doesn't fit into\nthe default side defined by this property.",
954
+ "fieldName": "verticalAlign",
955
+ "inheritedFrom": {
956
+ "name": "PositionMixin",
957
+ "package": "@vaadin/overlay/src/vaadin-overlay-position-mixin.js"
958
+ }
959
+ },
960
+ {
961
+ "name": "with-backdrop",
962
+ "type": {
963
+ "text": "boolean"
964
+ },
965
+ "description": "When true the overlay has backdrop on top of content when opened.",
966
+ "fieldName": "withBackdrop",
967
+ "inheritedFrom": {
968
+ "name": "OverlayMixin",
969
+ "package": "@vaadin/overlay/src/vaadin-overlay-mixin.js"
970
+ }
971
+ }
972
+ ],
973
+ "mixins": [
974
+ {
975
+ "name": "MenuOverlayMixin",
976
+ "module": "src/vaadin-menu-overlay-mixin.js"
977
+ },
978
+ {
979
+ "name": "OverlayMixin",
980
+ "package": "@vaadin/overlay/src/vaadin-overlay-mixin.js"
981
+ },
982
+ {
983
+ "name": "DirMixin",
984
+ "package": "@vaadin/component-base/src/dir-mixin.js"
985
+ },
986
+ {
987
+ "name": "ThemableMixin",
988
+ "package": "@vaadin/vaadin-themable-mixin/vaadin-themable-mixin.js"
989
+ },
990
+ {
991
+ "name": "PolylitMixin",
992
+ "package": "@vaadin/component-base/src/polylit-mixin.js"
993
+ },
994
+ {
995
+ "name": "LumoInjectionMixin",
996
+ "package": "@vaadin/vaadin-themable-mixin/lumo-injection-mixin.js"
997
+ }
998
+ ],
999
+ "superclass": {
1000
+ "name": "LitElement",
1001
+ "package": "lit"
1002
+ },
1003
+ "tagName": "vaadin-context-menu-overlay",
1004
+ "customElement": true,
1005
+ "events": [
1006
+ {
1007
+ "name": "vaadin-overlay-closed",
1008
+ "type": {
1009
+ "text": "CustomEvent"
1010
+ },
1011
+ "inheritedFrom": {
1012
+ "name": "OverlayMixin",
1013
+ "package": "@vaadin/overlay/src/vaadin-overlay-mixin.js"
1014
+ }
1015
+ },
1016
+ {
1017
+ "name": "vaadin-overlay-closing",
1018
+ "type": {
1019
+ "text": "CustomEvent"
1020
+ },
1021
+ "inheritedFrom": {
1022
+ "name": "OverlayMixin",
1023
+ "package": "@vaadin/overlay/src/vaadin-overlay-mixin.js"
1024
+ }
1025
+ }
1026
+ ]
1027
+ }
1028
+ ],
1029
+ "exports": [
1030
+ {
1031
+ "kind": "js",
1032
+ "name": "ContextMenuOverlay",
1033
+ "declaration": {
1034
+ "name": "ContextMenuOverlay",
1035
+ "module": "src/vaadin-context-menu-overlay.js"
1036
+ }
1037
+ }
1038
+ ]
1039
+ },
1040
+ {
1041
+ "kind": "javascript-module",
1042
+ "path": "src/vaadin-context-menu.js",
1043
+ "declarations": [
1044
+ {
1045
+ "kind": "class",
1046
+ "description": "`<vaadin-context-menu>` is a Web Component for creating context menus.\n\n### Items\n\nItems is a higher level convenience API for defining a (hierarchical) menu structure for the component.\nIf a menu item has a non-empty `children` set, a sub-menu with the child items is opened\nnext to the parent menu on mouseover, tap or a right arrow keypress.\n\nWhen an item is selected, `<vaadin-context-menu>` dispatches an \"item-selected\" event\nwith the selected item as `event.detail.value` property.\nIf item does not have `keepOpen` property the menu will be closed.\n\n```javascript\ncontextMenu.items = [\n { text: 'Menu Item 1', theme: 'primary', className: 'first', children:\n [\n { text: 'Menu Item 1-1', checked: true, keepOpen: true },\n { text: 'Menu Item 1-2' }\n ]\n },\n { component: 'hr' },\n { text: 'Menu Item 2', children:\n [\n { text: 'Menu Item 2-1' },\n { text: 'Menu Item 2-2', disabled: true }\n ]\n },\n { text: 'Menu Item 3', disabled: true, className: 'last' }\n];\n\ncontextMenu.addEventListener('item-selected', e => {\n const item = e.detail.value;\n console.log(`${item.text} selected`);\n});\n```\n\n**NOTE:** when the `items` array is defined, the renderer cannot be used.\n\n### Rendering\n\nThe content of the menu can be populated by using the renderer callback function.\n\nThe renderer function provides `root`, `contextMenu`, `model` arguments when applicable.\nGenerate DOM content by using `model` object properties if needed, append it to the `root`\nelement and control the state of the host element by accessing `contextMenu`. Before generating\nnew content, the renderer function should check if there is already content in `root` for reusing it.\n\n```html\n<vaadin-context-menu id=\"contextMenu\">\n <p>This paragraph has a context menu.</p>\n</vaadin-context-menu>\n```\n```js\nconst contextMenu = document.querySelector('#contextMenu');\ncontextMenu.renderer = (root, contextMenu, context) => {\n let listBox = root.firstElementChild;\n if (!listBox) {\n listBox = document.createElement('vaadin-list-box');\n root.appendChild(listBox);\n }\n\n let item = listBox.querySelector('vaadin-item');\n if (!item) {\n item = document.createElement('vaadin-item');\n listBox.appendChild(item);\n }\n item.textContent = 'Content of the selector: ' + context.target.textContent;\n};\n```\n\nYou can access the menu context inside the renderer using\n`context.target` and `context.detail`.\n\nRenderer is called on the opening of the context-menu and each time the related context is updated.\nDOM generated during the renderer call can be reused\nin the next renderer call and will be provided with the `root` argument.\nOn first call it will be empty.\n\n### `vaadin-contextmenu` Gesture Event\n\n`vaadin-contextmenu` is a gesture event (a custom event),\nwhich is dispatched after either `contextmenu` or long touch events.\nThis enables support for both mouse and touch environments in a uniform way.\n\n`<vaadin-context-menu>` opens the menu overlay on the `vaadin-contextmenu`\nevent by default.\n\n### Menu Listener\n\nBy default, the `<vaadin-context-menu>` element listens for the menu opening\nevent on itself. In case if you do not want to wrap the target, you can listen for\nevents on an element outside the `<vaadin-context-menu>` by setting the\n`listenOn` property:\n\n```html\n<vaadin-context-menu id=\"contextMenu\"></vaadin-context-menu>\n\n<div id=\"menuListener\">The element that listens for the contextmenu event.</div>\n```\n```javascript\nconst contextMenu = document.querySelector('#contextMenu');\ncontextMenu.listenOn = document.querySelector('#menuListener');\n```\n\n### Filtering Menu Targets\n\nBy default, the listener element and all its descendants open the context\nmenu. You can filter the menu targets to a smaller set of elements inside\nthe listener element by setting the `selector` property.\n\nIn the following example, only the elements matching `.has-menu` will open the context menu:\n\n```html\n<vaadin-context-menu selector=\".has-menu\">\n <p class=\"has-menu\">This paragraph opens the context menu</p>\n <p>This paragraph does not open the context menu</p>\n</vaadin-context-menu>\n```\n\n### Menu Context\n\nThe following properties are available in the `context` argument:\n\n- `target` is the menu opening event target, which is the element that\nthe user has called the context menu for\n- `detail` is the menu opening event detail\n\nIn the following example, the menu item text is composed with the contents\nof the element that opened the menu:\n\n```html\n<vaadin-context-menu selector=\"li\" id=\"contextMenu\">\n <ul>\n <li>Foo</li>\n <li>Bar</li>\n <li>Baz</li>\n </ul>\n</vaadin-context-menu>\n```\n```js\nconst contextMenu = document.querySelector('#contextMenu');\ncontextMenu.renderer = (root, contextMenu, context) => {\n let listBox = root.firstElementChild;\n if (!listBox) {\n listBox = document.createElement('vaadin-list-box');\n root.appendChild(listBox);\n }\n\n let item = listBox.querySelector('vaadin-item');\n if (!item) {\n item = document.createElement('vaadin-item');\n listBox.appendChild(item);\n }\n item.textContent = 'The menu target: ' + context.target.textContent;\n};\n```\n\n### Styling\n\nThe following shadow DOM parts are available for styling:\n\nPart name | Description\n-----------------|-------------------------------------------\n`backdrop` | Backdrop of the overlay\n`overlay` | The overlay container\n`content` | The overlay content\n\n### Custom CSS Properties\n\nThe following custom CSS properties are available for styling:\n\nCustom CSS property | Description\n--------------------------------------|-------------\n`--vaadin-context-menu-offset-top` | Used as an offset when using `position` and the context menu is aligned vertically below the target\n`--vaadin-context-menu-offset-bottom` | Used as an offset when using `position` and the context menu is aligned vertically above the target\n`--vaadin-context-menu-offset-start` | Used as an offset when using `position` and the context menu is aligned horizontally after the target\n`--vaadin-context-menu-offset-end` | Used as an offset when using `position` and the context menu is aligned horizontally before the target\n\nSee [Styling Components](https://vaadin.com/docs/latest/styling/styling-components) documentation.\n\n### Internal components\n\nWhen using `items` API the following internal components are themable:\n\n- `<vaadin-context-menu-item>` - has the same API as [`<vaadin-item>`](#/elements/vaadin-item).\n- `<vaadin-context-menu-list-box>` - has the same API as [`<vaadin-list-box>`](#/elements/vaadin-list-box).\n\nThe `<vaadin-context-menu-item>` sub-menu elements have the following additional state attributes\non top of the built-in `<vaadin-item>` state attributes:\n\nAttribute | Description\n---------- |-------------\n`expanded` | Expanded parent item.",
1047
+ "name": "ContextMenu",
1048
+ "members": [
1049
+ {
1050
+ "kind": "method",
1051
+ "name": "close",
1052
+ "description": "Closes the overlay.",
1053
+ "inheritedFrom": {
1054
+ "name": "ContextMenuMixin",
1055
+ "module": "src/vaadin-context-menu-mixin.js"
1056
+ }
1057
+ },
1058
+ {
1059
+ "kind": "field",
1060
+ "name": "closeOn",
1061
+ "privacy": "public",
1062
+ "type": {
1063
+ "text": "string"
1064
+ },
1065
+ "description": "Event name to listen for closing the context menu.",
1066
+ "attribute": "close-on",
1067
+ "inheritedFrom": {
1068
+ "name": "ContextMenuMixin",
1069
+ "module": "src/vaadin-context-menu-mixin.js"
1070
+ }
1071
+ },
1072
+ {
1073
+ "kind": "field",
1074
+ "name": "items",
1075
+ "privacy": "public",
1076
+ "type": {
1077
+ "text": "!Array<!ContextMenuItem> | undefined"
1078
+ },
1079
+ "description": "Defines a (hierarchical) menu structure for the component.\nIf a menu item has a non-empty `children` set, a sub-menu with the child items is opened\nnext to the parent menu on mouseover, tap or a right arrow keypress.\n\nThe items API can't be used together with a renderer!\n\n#### Example\n\n```javascript\ncontextMenu.items = [\n { text: 'Menu Item 1', theme: 'primary', className: 'first', children:\n [\n { text: 'Menu Item 1-1', checked: true, keepOpen: true },\n { text: 'Menu Item 1-2' }\n ]\n },\n { component: 'hr' },\n { text: 'Menu Item 2', children:\n [\n { text: 'Menu Item 2-1' },\n { text: 'Menu Item 2-2', disabled: true }\n ]\n },\n { text: 'Menu Item 3', disabled: true, className: 'last' }\n];\n```",
1080
+ "attribute": "items",
1081
+ "inheritedFrom": {
1082
+ "name": "ItemsMixin",
1083
+ "module": "src/vaadin-contextmenu-items-mixin.js"
1084
+ }
1085
+ },
1086
+ {
1087
+ "kind": "field",
1088
+ "name": "listenOn",
1089
+ "privacy": "public",
1090
+ "type": {
1091
+ "text": "!HTMLElement"
1092
+ },
1093
+ "description": "The target element that's listened to for context menu opening events.\nBy default the vaadin-context-menu listens to the target's `vaadin-contextmenu`\nevents.",
1094
+ "default": "self",
1095
+ "attribute": "listen-on",
1096
+ "inheritedFrom": {
1097
+ "name": "ContextMenuMixin",
1098
+ "module": "src/vaadin-context-menu-mixin.js"
1099
+ }
1100
+ },
1101
+ {
1102
+ "kind": "method",
1103
+ "name": "open",
1104
+ "parameters": [
1105
+ {
1106
+ "name": "e",
1107
+ "description": "used as the context for the menu. Overlay coordinates are taken from this event.",
1108
+ "type": {
1109
+ "text": "!Event | undefined"
1110
+ }
1111
+ }
1112
+ ],
1113
+ "description": "Opens the overlay.",
1114
+ "inheritedFrom": {
1115
+ "name": "ContextMenuMixin",
1116
+ "module": "src/vaadin-context-menu-mixin.js"
1117
+ }
1118
+ },
1119
+ {
1120
+ "kind": "field",
1121
+ "name": "opened",
1122
+ "privacy": "public",
1123
+ "type": {
1124
+ "text": "boolean"
1125
+ },
1126
+ "description": "True if the overlay is currently displayed.",
1127
+ "attribute": "opened",
1128
+ "inheritedFrom": {
1129
+ "name": "ContextMenuMixin",
1130
+ "module": "src/vaadin-context-menu-mixin.js"
1131
+ }
1132
+ },
1133
+ {
1134
+ "kind": "field",
1135
+ "name": "openOn",
1136
+ "privacy": "public",
1137
+ "type": {
1138
+ "text": "string"
1139
+ },
1140
+ "description": "Event name to listen for opening the context menu.",
1141
+ "attribute": "open-on",
1142
+ "inheritedFrom": {
1143
+ "name": "ContextMenuMixin",
1144
+ "module": "src/vaadin-context-menu-mixin.js"
1145
+ }
1146
+ },
1147
+ {
1148
+ "kind": "field",
1149
+ "name": "position",
1150
+ "privacy": "public",
1151
+ "type": {
1152
+ "text": "string"
1153
+ },
1154
+ "description": "Position of the overlay with respect to the target.\nSupported values: null, `top-start`, `top`, `top-end`,\n`bottom-start`, `bottom`, `bottom-end`, `start-top`,\n`start`, `start-bottom`, `end-top`, `end`, `end-bottom`.",
1155
+ "attribute": "position"
1156
+ },
1157
+ {
1158
+ "kind": "field",
1159
+ "name": "renderer",
1160
+ "privacy": "public",
1161
+ "type": {
1162
+ "text": "ContextMenuRenderer | undefined"
1163
+ },
1164
+ "description": "Custom function for rendering the content of the menu overlay.\nReceives three arguments:\n\n- `root` The root container DOM element. Append your content to it.\n- `contextMenu` The reference to the `<vaadin-context-menu>` element.\n- `context` The object with the menu context, contains:\n - `context.target` the target of the menu opening event,\n - `context.detail` the menu opening event detail.",
1165
+ "attribute": "renderer",
1166
+ "inheritedFrom": {
1167
+ "name": "ContextMenuMixin",
1168
+ "module": "src/vaadin-context-menu-mixin.js"
1169
+ }
1170
+ },
1171
+ {
1172
+ "kind": "method",
1173
+ "name": "requestContentUpdate",
1174
+ "description": "Requests an update for the content of the menu overlay.\nWhile performing the update, it invokes the renderer passed in the `renderer` property.\n\nIt is not guaranteed that the update happens immediately (synchronously) after it is requested.",
1175
+ "inheritedFrom": {
1176
+ "name": "ContextMenuMixin",
1177
+ "module": "src/vaadin-context-menu-mixin.js"
1178
+ }
1179
+ },
1180
+ {
1181
+ "kind": "field",
1182
+ "name": "selector",
1183
+ "privacy": "public",
1184
+ "type": {
1185
+ "text": "string"
1186
+ },
1187
+ "description": "CSS selector that can be used to target any child element\nof the context menu to listen for `openOn` events.",
1188
+ "attribute": "selector",
1189
+ "inheritedFrom": {
1190
+ "name": "ContextMenuMixin",
1191
+ "module": "src/vaadin-context-menu-mixin.js"
1192
+ }
1193
+ }
1194
+ ],
1195
+ "events": [
1196
+ {
1197
+ "name": "close-all-menus",
1198
+ "type": {
1199
+ "text": "CustomEvent"
1200
+ },
1201
+ "inheritedFrom": {
1202
+ "name": "ItemsMixin",
1203
+ "module": "src/vaadin-contextmenu-items-mixin.js"
1204
+ }
1205
+ },
1206
+ {
1207
+ "name": "closed",
1208
+ "type": {
1209
+ "text": "CustomEvent"
1210
+ },
1211
+ "description": "Fired when the context menu is closed.",
1212
+ "inheritedFrom": {
1213
+ "name": "ContextMenuMixin",
1214
+ "module": "src/vaadin-context-menu-mixin.js"
1215
+ }
1216
+ },
1217
+ {
1218
+ "name": "item-selected",
1219
+ "type": {
1220
+ "text": "CustomEvent"
1221
+ },
1222
+ "description": "Fired when an item is selected when the context menu is populated using the `items` API.",
1223
+ "inheritedFrom": {
1224
+ "name": "ItemsMixin",
1225
+ "module": "src/vaadin-contextmenu-items-mixin.js"
1226
+ }
1227
+ },
1228
+ {
1229
+ "type": {
1230
+ "text": "CustomEvent"
1231
+ },
1232
+ "description": "Fired when the `opened` property changes.",
1233
+ "name": "opened-changed"
1234
+ }
1235
+ ],
1236
+ "attributes": [
1237
+ {
1238
+ "name": "close-on",
1239
+ "type": {
1240
+ "text": "string"
1241
+ },
1242
+ "description": "Event name to listen for closing the context menu.",
1243
+ "fieldName": "closeOn",
1244
+ "inheritedFrom": {
1245
+ "name": "ContextMenuMixin",
1246
+ "module": "src/vaadin-context-menu-mixin.js"
1247
+ }
1248
+ },
1249
+ {
1250
+ "name": "listen-on",
1251
+ "type": {
1252
+ "text": "!HTMLElement"
1253
+ },
1254
+ "description": "The target element that's listened to for context menu opening events.\nBy default the vaadin-context-menu listens to the target's `vaadin-contextmenu`\nevents.",
1255
+ "default": "self",
1256
+ "fieldName": "listenOn",
1257
+ "inheritedFrom": {
1258
+ "name": "ContextMenuMixin",
1259
+ "module": "src/vaadin-context-menu-mixin.js"
1260
+ }
1261
+ },
1262
+ {
1263
+ "name": "open-on",
1264
+ "type": {
1265
+ "text": "string"
1266
+ },
1267
+ "description": "Event name to listen for opening the context menu.",
1268
+ "fieldName": "openOn",
1269
+ "inheritedFrom": {
1270
+ "name": "ContextMenuMixin",
1271
+ "module": "src/vaadin-context-menu-mixin.js"
1272
+ }
1273
+ },
1274
+ {
1275
+ "name": "opened",
1276
+ "type": {
1277
+ "text": "boolean"
1278
+ },
1279
+ "description": "True if the overlay is currently displayed.",
1280
+ "fieldName": "opened",
1281
+ "inheritedFrom": {
1282
+ "name": "ContextMenuMixin",
1283
+ "module": "src/vaadin-context-menu-mixin.js"
1284
+ }
1285
+ },
1286
+ {
1287
+ "name": "position",
1288
+ "type": {
1289
+ "text": "string"
1290
+ },
1291
+ "description": "Position of the overlay with respect to the target.\nSupported values: null, `top-start`, `top`, `top-end`,\n`bottom-start`, `bottom`, `bottom-end`, `start-top`,\n`start`, `start-bottom`, `end-top`, `end`, `end-bottom`.",
1292
+ "fieldName": "position"
1293
+ },
1294
+ {
1295
+ "name": "renderer",
1296
+ "type": {
1297
+ "text": "ContextMenuRenderer | undefined"
1298
+ },
1299
+ "description": "Custom function for rendering the content of the menu overlay.\nReceives three arguments:\n\n- `root` The root container DOM element. Append your content to it.\n- `contextMenu` The reference to the `<vaadin-context-menu>` element.\n- `context` The object with the menu context, contains:\n - `context.target` the target of the menu opening event,\n - `context.detail` the menu opening event detail.",
1300
+ "fieldName": "renderer",
1301
+ "inheritedFrom": {
1302
+ "name": "ContextMenuMixin",
1303
+ "module": "src/vaadin-context-menu-mixin.js"
1304
+ }
1305
+ },
1306
+ {
1307
+ "name": "selector",
1308
+ "type": {
1309
+ "text": "string"
1310
+ },
1311
+ "description": "CSS selector that can be used to target any child element\nof the context menu to listen for `openOn` events.",
1312
+ "fieldName": "selector",
1313
+ "inheritedFrom": {
1314
+ "name": "ContextMenuMixin",
1315
+ "module": "src/vaadin-context-menu-mixin.js"
1316
+ }
1317
+ }
1318
+ ],
1319
+ "mixins": [
1320
+ {
1321
+ "name": "ContextMenuMixin",
1322
+ "module": "src/vaadin-context-menu-mixin.js"
1323
+ },
1324
+ {
1325
+ "name": "ElementMixin",
1326
+ "package": "@vaadin/component-base/src/element-mixin.js"
1327
+ },
1328
+ {
1329
+ "name": "ThemePropertyMixin",
1330
+ "package": "@vaadin/vaadin-themable-mixin/vaadin-theme-property-mixin.js"
1331
+ },
1332
+ {
1333
+ "name": "PolylitMixin",
1334
+ "package": "@vaadin/component-base/src/polylit-mixin.js"
1335
+ }
1336
+ ],
1337
+ "superclass": {
1338
+ "name": "LitElement",
1339
+ "package": "lit"
1340
+ },
1341
+ "tagName": "vaadin-context-menu",
1342
+ "customElement": true
1343
+ }
1344
+ ],
1345
+ "exports": [
1346
+ {
1347
+ "kind": "js",
1348
+ "name": "ContextMenu",
1349
+ "declaration": {
1350
+ "name": "ContextMenu",
1351
+ "module": "src/vaadin-context-menu.js"
1352
+ }
1353
+ }
1354
+ ]
1355
+ },
1356
+ {
1357
+ "kind": "javascript-module",
1358
+ "path": "src/vaadin-contextmenu-event.js",
1359
+ "declarations": [],
1360
+ "exports": []
1361
+ },
1362
+ {
1363
+ "kind": "javascript-module",
1364
+ "path": "src/vaadin-contextmenu-items-mixin.js",
1365
+ "declarations": [
1366
+ {
1367
+ "kind": "mixin",
1368
+ "description": "",
1369
+ "name": "ItemsMixin",
1370
+ "members": [
1371
+ {
1372
+ "kind": "field",
1373
+ "name": "items",
1374
+ "privacy": "public",
1375
+ "type": {
1376
+ "text": "!Array<!ContextMenuItem> | undefined"
1377
+ },
1378
+ "description": "Defines a (hierarchical) menu structure for the component.\nIf a menu item has a non-empty `children` set, a sub-menu with the child items is opened\nnext to the parent menu on mouseover, tap or a right arrow keypress.\n\nThe items API can't be used together with a renderer!\n\n#### Example\n\n```javascript\ncontextMenu.items = [\n { text: 'Menu Item 1', theme: 'primary', className: 'first', children:\n [\n { text: 'Menu Item 1-1', checked: true, keepOpen: true },\n { text: 'Menu Item 1-2' }\n ]\n },\n { component: 'hr' },\n { text: 'Menu Item 2', children:\n [\n { text: 'Menu Item 2-1' },\n { text: 'Menu Item 2-2', disabled: true }\n ]\n },\n { text: 'Menu Item 3', disabled: true, className: 'last' }\n];\n```",
1379
+ "attribute": "items"
1380
+ }
1381
+ ],
1382
+ "events": [
1383
+ {
1384
+ "name": "close-all-menus",
1385
+ "type": {
1386
+ "text": "CustomEvent"
1387
+ }
1388
+ },
1389
+ {
1390
+ "name": "item-selected",
1391
+ "type": {
1392
+ "text": "CustomEvent"
1393
+ }
1394
+ }
1395
+ ],
1396
+ "attributes": [],
1397
+ "parameters": [
1398
+ {
1399
+ "name": "superClass"
1400
+ }
1401
+ ]
1402
+ }
1403
+ ],
1404
+ "exports": [
1405
+ {
1406
+ "kind": "js",
1407
+ "name": "ItemsMixin",
1408
+ "declaration": {
1409
+ "name": "ItemsMixin",
1410
+ "module": "src/vaadin-contextmenu-items-mixin.js"
1411
+ }
1412
+ }
1413
+ ]
1414
+ },
1415
+ {
1416
+ "kind": "javascript-module",
1417
+ "path": "src/vaadin-menu-overlay-mixin.js",
1418
+ "declarations": [
1419
+ {
1420
+ "kind": "mixin",
1421
+ "description": "",
1422
+ "name": "MenuOverlayMixin",
1423
+ "members": [
1424
+ {
1425
+ "kind": "field",
1426
+ "name": "focusTrap",
1427
+ "privacy": "public",
1428
+ "type": {
1429
+ "text": "boolean"
1430
+ },
1431
+ "description": "When true, opening the overlay moves focus to the first focusable child,\nor to the overlay part with tabindex if there are no focusable children.",
1432
+ "attribute": "focus-trap",
1433
+ "inheritedFrom": {
1434
+ "name": "OverlayFocusMixin",
1435
+ "package": "@vaadin/overlay/src/vaadin-overlay-focus-mixin.js"
1436
+ }
1437
+ },
1438
+ {
1439
+ "kind": "method",
1440
+ "name": "getBoundaries",
1441
+ "description": "Returns the adjusted boundaries of the overlay.",
1442
+ "return": {
1443
+ "type": {
1444
+ "text": "object"
1445
+ }
1446
+ }
1447
+ },
1448
+ {
1449
+ "kind": "field",
1450
+ "name": "horizontalAlign",
1451
+ "privacy": "public",
1452
+ "type": {
1453
+ "text": "string"
1454
+ },
1455
+ "description": "When `positionTarget` is set, this property defines whether to align the overlay's\nleft or right side to the target element by default.\nPossible values are `start` and `end`.\nRTL is taken into account when interpreting the value.\nThe overlay is automatically flipped to the opposite side when it doesn't fit into\nthe default side defined by this property.",
1456
+ "attribute": "horizontal-align",
1457
+ "inheritedFrom": {
1458
+ "name": "PositionMixin",
1459
+ "package": "@vaadin/overlay/src/vaadin-overlay-position-mixin.js"
1460
+ }
1461
+ },
1462
+ {
1463
+ "kind": "field",
1464
+ "name": "noHorizontalOverlap",
1465
+ "privacy": "public",
1466
+ "type": {
1467
+ "text": "boolean"
1468
+ },
1469
+ "description": "When `positionTarget` is set, this property defines whether the overlay should overlap\nthe target element in the x-axis, or be positioned right next to it.",
1470
+ "attribute": "no-horizontal-overlap",
1471
+ "inheritedFrom": {
1472
+ "name": "PositionMixin",
1473
+ "package": "@vaadin/overlay/src/vaadin-overlay-position-mixin.js"
1474
+ }
1475
+ },
1476
+ {
1477
+ "kind": "field",
1478
+ "name": "noVerticalOverlap",
1479
+ "privacy": "public",
1480
+ "type": {
1481
+ "text": "boolean"
1482
+ },
1483
+ "description": "When `positionTarget` is set, this property defines whether the overlay should overlap\nthe target element in the y-axis, or be positioned right above/below it.",
1484
+ "attribute": "no-vertical-overlap",
1485
+ "inheritedFrom": {
1486
+ "name": "PositionMixin",
1487
+ "package": "@vaadin/overlay/src/vaadin-overlay-position-mixin.js"
1488
+ }
1489
+ },
1490
+ {
1491
+ "kind": "field",
1492
+ "name": "positionTarget",
1493
+ "privacy": "public",
1494
+ "type": {
1495
+ "text": "object"
1496
+ },
1497
+ "description": "The element next to which this overlay should be aligned.\nThe position of the overlay relative to the positionTarget can be adjusted\nwith properties `horizontalAlign`, `verticalAlign`, `noHorizontalOverlap`\nand `noVerticalOverlap`.",
1498
+ "attribute": "position-target",
1499
+ "inheritedFrom": {
1500
+ "name": "PositionMixin",
1501
+ "package": "@vaadin/overlay/src/vaadin-overlay-position-mixin.js"
1502
+ }
1503
+ },
1504
+ {
1505
+ "kind": "field",
1506
+ "name": "requiredVerticalSpace",
1507
+ "privacy": "public",
1508
+ "type": {
1509
+ "text": "number"
1510
+ },
1511
+ "description": "If the overlay content has no intrinsic height, this property can be used to set\nthe minimum vertical space (in pixels) required by the overlay. Setting a value to\nthe property effectively disables the content measurement in favor of using this\nfixed value for determining the open direction.",
1512
+ "attribute": "required-vertical-space",
1513
+ "inheritedFrom": {
1514
+ "name": "PositionMixin",
1515
+ "package": "@vaadin/overlay/src/vaadin-overlay-position-mixin.js"
1516
+ }
1517
+ },
1518
+ {
1519
+ "kind": "field",
1520
+ "name": "restoreFocusNode",
1521
+ "privacy": "public",
1522
+ "type": {
1523
+ "text": "HTMLElement"
1524
+ },
1525
+ "description": "Set to specify the element which should be focused on overlay close,\nif `restoreFocusOnClose` is set to true.",
1526
+ "attribute": "restore-focus-node",
1527
+ "inheritedFrom": {
1528
+ "name": "OverlayFocusMixin",
1529
+ "package": "@vaadin/overlay/src/vaadin-overlay-focus-mixin.js"
1530
+ }
1531
+ },
1532
+ {
1533
+ "kind": "field",
1534
+ "name": "restoreFocusOnClose",
1535
+ "privacy": "public",
1536
+ "type": {
1537
+ "text": "boolean"
1538
+ },
1539
+ "description": "Set to true to enable restoring of focus when overlay is closed.",
1540
+ "attribute": "restore-focus-on-close",
1541
+ "inheritedFrom": {
1542
+ "name": "OverlayFocusMixin",
1543
+ "package": "@vaadin/overlay/src/vaadin-overlay-focus-mixin.js"
1544
+ }
1545
+ },
1546
+ {
1547
+ "kind": "field",
1548
+ "name": "verticalAlign",
1549
+ "privacy": "public",
1550
+ "type": {
1551
+ "text": "string"
1552
+ },
1553
+ "description": "When `positionTarget` is set, this property defines whether to align the overlay's\ntop or bottom side to the target element by default.\nPossible values are `top` and `bottom`.\nThe overlay is automatically flipped to the opposite side when it doesn't fit into\nthe default side defined by this property.",
1554
+ "attribute": "vertical-align",
1555
+ "inheritedFrom": {
1556
+ "name": "PositionMixin",
1557
+ "package": "@vaadin/overlay/src/vaadin-overlay-position-mixin.js"
1558
+ }
1559
+ }
1560
+ ],
1561
+ "attributes": [
1562
+ {
1563
+ "name": "focus-trap",
1564
+ "type": {
1565
+ "text": "boolean"
1566
+ },
1567
+ "description": "When true, opening the overlay moves focus to the first focusable child,\nor to the overlay part with tabindex if there are no focusable children.",
1568
+ "fieldName": "focusTrap",
1569
+ "inheritedFrom": {
1570
+ "name": "OverlayFocusMixin",
1571
+ "package": "@vaadin/overlay/src/vaadin-overlay-focus-mixin.js"
1572
+ }
1573
+ },
1574
+ {
1575
+ "name": "horizontal-align",
1576
+ "type": {
1577
+ "text": "string"
1578
+ },
1579
+ "description": "When `positionTarget` is set, this property defines whether to align the overlay's\nleft or right side to the target element by default.\nPossible values are `start` and `end`.\nRTL is taken into account when interpreting the value.\nThe overlay is automatically flipped to the opposite side when it doesn't fit into\nthe default side defined by this property.",
1580
+ "fieldName": "horizontalAlign",
1581
+ "inheritedFrom": {
1582
+ "name": "PositionMixin",
1583
+ "package": "@vaadin/overlay/src/vaadin-overlay-position-mixin.js"
1584
+ }
1585
+ },
1586
+ {
1587
+ "name": "no-horizontal-overlap",
1588
+ "type": {
1589
+ "text": "boolean"
1590
+ },
1591
+ "description": "When `positionTarget` is set, this property defines whether the overlay should overlap\nthe target element in the x-axis, or be positioned right next to it.",
1592
+ "fieldName": "noHorizontalOverlap",
1593
+ "inheritedFrom": {
1594
+ "name": "PositionMixin",
1595
+ "package": "@vaadin/overlay/src/vaadin-overlay-position-mixin.js"
1596
+ }
1597
+ },
1598
+ {
1599
+ "name": "no-vertical-overlap",
1600
+ "type": {
1601
+ "text": "boolean"
1602
+ },
1603
+ "description": "When `positionTarget` is set, this property defines whether the overlay should overlap\nthe target element in the y-axis, or be positioned right above/below it.",
1604
+ "fieldName": "noVerticalOverlap",
1605
+ "inheritedFrom": {
1606
+ "name": "PositionMixin",
1607
+ "package": "@vaadin/overlay/src/vaadin-overlay-position-mixin.js"
1608
+ }
1609
+ },
1610
+ {
1611
+ "name": "required-vertical-space",
1612
+ "type": {
1613
+ "text": "number"
1614
+ },
1615
+ "description": "If the overlay content has no intrinsic height, this property can be used to set\nthe minimum vertical space (in pixels) required by the overlay. Setting a value to\nthe property effectively disables the content measurement in favor of using this\nfixed value for determining the open direction.",
1616
+ "fieldName": "requiredVerticalSpace",
1617
+ "inheritedFrom": {
1618
+ "name": "PositionMixin",
1619
+ "package": "@vaadin/overlay/src/vaadin-overlay-position-mixin.js"
1620
+ }
1621
+ },
1622
+ {
1623
+ "name": "restore-focus-node",
1624
+ "type": {
1625
+ "text": "HTMLElement"
1626
+ },
1627
+ "description": "Set to specify the element which should be focused on overlay close,\nif `restoreFocusOnClose` is set to true.",
1628
+ "fieldName": "restoreFocusNode",
1629
+ "inheritedFrom": {
1630
+ "name": "OverlayFocusMixin",
1631
+ "package": "@vaadin/overlay/src/vaadin-overlay-focus-mixin.js"
1632
+ }
1633
+ },
1634
+ {
1635
+ "name": "restore-focus-on-close",
1636
+ "type": {
1637
+ "text": "boolean"
1638
+ },
1639
+ "description": "Set to true to enable restoring of focus when overlay is closed.",
1640
+ "fieldName": "restoreFocusOnClose",
1641
+ "inheritedFrom": {
1642
+ "name": "OverlayFocusMixin",
1643
+ "package": "@vaadin/overlay/src/vaadin-overlay-focus-mixin.js"
1644
+ }
1645
+ },
1646
+ {
1647
+ "name": "vertical-align",
1648
+ "type": {
1649
+ "text": "string"
1650
+ },
1651
+ "description": "When `positionTarget` is set, this property defines whether to align the overlay's\ntop or bottom side to the target element by default.\nPossible values are `top` and `bottom`.\nThe overlay is automatically flipped to the opposite side when it doesn't fit into\nthe default side defined by this property.",
1652
+ "fieldName": "verticalAlign",
1653
+ "inheritedFrom": {
1654
+ "name": "PositionMixin",
1655
+ "package": "@vaadin/overlay/src/vaadin-overlay-position-mixin.js"
1656
+ }
1657
+ }
1658
+ ],
1659
+ "mixins": [
1660
+ {
1661
+ "name": "OverlayFocusMixin",
1662
+ "package": "@vaadin/overlay/src/vaadin-overlay-focus-mixin.js"
1663
+ },
1664
+ {
1665
+ "name": "PositionMixin",
1666
+ "package": "@vaadin/overlay/src/vaadin-overlay-position-mixin.js"
1667
+ }
1668
+ ],
1669
+ "parameters": [
1670
+ {
1671
+ "name": "superClass"
1672
+ }
1673
+ ]
1674
+ }
1675
+ ],
1676
+ "exports": [
1677
+ {
1678
+ "kind": "js",
1679
+ "name": "MenuOverlayMixin",
1680
+ "declaration": {
1681
+ "name": "MenuOverlayMixin",
1682
+ "module": "src/vaadin-menu-overlay-mixin.js"
1683
+ }
1684
+ }
1685
+ ]
1686
+ }
1687
+ ]
1688
+ }