@m3e/web 2.5.12 → 2.5.14

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 (218) hide show
  1. package/dist/all.js +20840 -16242
  2. package/dist/all.js.map +1 -1
  3. package/dist/all.min.js +174 -62
  4. package/dist/all.min.js.map +1 -1
  5. package/dist/avatar.js +1 -1
  6. package/dist/avatar.js.map +1 -1
  7. package/dist/avatar.min.js +1 -1
  8. package/dist/avatar.min.js.map +1 -1
  9. package/dist/badge.js +29 -8
  10. package/dist/badge.js.map +1 -1
  11. package/dist/badge.min.js +1 -1
  12. package/dist/badge.min.js.map +1 -1
  13. package/dist/bottom-sheet.js +1 -1
  14. package/dist/bottom-sheet.js.map +1 -1
  15. package/dist/bottom-sheet.min.js +1 -1
  16. package/dist/bottom-sheet.min.js.map +1 -1
  17. package/dist/calendar.js +46 -10
  18. package/dist/calendar.js.map +1 -1
  19. package/dist/calendar.min.js +5 -5
  20. package/dist/calendar.min.js.map +1 -1
  21. package/dist/checkbox.js +1 -1
  22. package/dist/checkbox.js.map +1 -1
  23. package/dist/checkbox.min.js +1 -1
  24. package/dist/checkbox.min.js.map +1 -1
  25. package/dist/core-anchoring.js +58 -25
  26. package/dist/core-anchoring.js.map +1 -1
  27. package/dist/core-anchoring.min.js +1 -1
  28. package/dist/core-anchoring.min.js.map +1 -1
  29. package/dist/core.js +105 -88
  30. package/dist/core.js.map +1 -1
  31. package/dist/core.min.js +1 -1
  32. package/dist/core.min.js.map +1 -1
  33. package/dist/css-custom-data.json +50 -50
  34. package/dist/custom-elements.json +1746 -935
  35. package/dist/datepicker.js +75 -34
  36. package/dist/datepicker.js.map +1 -1
  37. package/dist/datepicker.min.js +1 -1
  38. package/dist/datepicker.min.js.map +1 -1
  39. package/dist/dialog.js +1 -1
  40. package/dist/dialog.js.map +1 -1
  41. package/dist/dialog.min.js +1 -1
  42. package/dist/dialog.min.js.map +1 -1
  43. package/dist/divider.js +1 -1
  44. package/dist/divider.js.map +1 -1
  45. package/dist/divider.min.js +1 -1
  46. package/dist/divider.min.js.map +1 -1
  47. package/dist/drawer-container.js +2 -2
  48. package/dist/drawer-container.js.map +1 -1
  49. package/dist/drawer-container.min.js +1 -1
  50. package/dist/drawer-container.min.js.map +1 -1
  51. package/dist/expansion-panel.js +6 -3
  52. package/dist/expansion-panel.js.map +1 -1
  53. package/dist/expansion-panel.min.js +1 -1
  54. package/dist/expansion-panel.min.js.map +1 -1
  55. package/dist/fab-menu.js +116 -114
  56. package/dist/fab-menu.js.map +1 -1
  57. package/dist/fab-menu.min.js +1 -1
  58. package/dist/fab-menu.min.js.map +1 -1
  59. package/dist/form-field.js +9 -6
  60. package/dist/form-field.js.map +1 -1
  61. package/dist/form-field.min.js +1 -1
  62. package/dist/form-field.min.js.map +1 -1
  63. package/dist/html-custom-data.json +28 -13
  64. package/dist/icon.js +8 -9
  65. package/dist/icon.js.map +1 -1
  66. package/dist/icon.min.js +1 -1
  67. package/dist/icon.min.js.map +1 -1
  68. package/dist/menu.js +45 -25
  69. package/dist/menu.js.map +1 -1
  70. package/dist/menu.min.js +1 -1
  71. package/dist/menu.min.js.map +1 -1
  72. package/dist/nav-bar.js +2 -2
  73. package/dist/nav-bar.js.map +1 -1
  74. package/dist/nav-bar.min.js +1 -1
  75. package/dist/nav-bar.min.js.map +1 -1
  76. package/dist/nav-menu.js +2 -2
  77. package/dist/nav-menu.js.map +1 -1
  78. package/dist/nav-menu.min.js +1 -1
  79. package/dist/nav-menu.min.js.map +1 -1
  80. package/dist/nav-rail.js +1 -1
  81. package/dist/nav-rail.js.map +1 -1
  82. package/dist/nav-rail.min.js +1 -1
  83. package/dist/nav-rail.min.js.map +1 -1
  84. package/dist/radio-group.js +1 -1
  85. package/dist/radio-group.js.map +1 -1
  86. package/dist/radio-group.min.js +1 -1
  87. package/dist/radio-group.min.js.map +1 -1
  88. package/dist/search.js +31 -11
  89. package/dist/search.js.map +1 -1
  90. package/dist/search.min.js +1 -1
  91. package/dist/search.min.js.map +1 -1
  92. package/dist/skeleton.js +89 -44
  93. package/dist/skeleton.js.map +1 -1
  94. package/dist/skeleton.min.js +1 -1
  95. package/dist/skeleton.min.js.map +1 -1
  96. package/dist/slide-group.js +1 -1
  97. package/dist/slide-group.js.map +1 -1
  98. package/dist/slide-group.min.js +1 -1
  99. package/dist/slide-group.min.js.map +1 -1
  100. package/dist/slider.js +2 -2
  101. package/dist/slider.js.map +1 -1
  102. package/dist/slider.min.js +1 -1
  103. package/dist/slider.min.js.map +1 -1
  104. package/dist/snackbar.js +1 -1
  105. package/dist/snackbar.js.map +1 -1
  106. package/dist/snackbar.min.js +1 -1
  107. package/dist/snackbar.min.js.map +1 -1
  108. package/dist/split-pane.js +1 -1
  109. package/dist/split-pane.js.map +1 -1
  110. package/dist/split-pane.min.js +1 -1
  111. package/dist/split-pane.min.js.map +1 -1
  112. package/dist/src/avatar/AvatarElement.d.ts.map +1 -1
  113. package/dist/src/badge/BadgeElement.d.ts +1 -0
  114. package/dist/src/badge/BadgeElement.d.ts.map +1 -1
  115. package/dist/src/bottom-sheet/BottomSheetElement.d.ts.map +1 -1
  116. package/dist/src/calendar/CalendarElement.d.ts +2 -0
  117. package/dist/src/calendar/CalendarElement.d.ts.map +1 -1
  118. package/dist/src/calendar/CalendarViewElementBase.d.ts +2 -0
  119. package/dist/src/calendar/CalendarViewElementBase.d.ts.map +1 -1
  120. package/dist/src/calendar/MonthViewElement.d.ts +1 -0
  121. package/dist/src/calendar/MonthViewElement.d.ts.map +1 -1
  122. package/dist/src/calendar/MultiYearViewElement.d.ts.map +1 -1
  123. package/dist/src/calendar/YearViewElement.d.ts.map +1 -1
  124. package/dist/src/checkbox/CheckboxElement.d.ts.map +1 -1
  125. package/dist/src/core/anchoring/FloatingPanelElement.d.ts.map +1 -1
  126. package/dist/src/core/anchoring/positionAnchor.d.ts.map +1 -1
  127. package/dist/src/core/shared/controllers/ClickOutsideController.d.ts +24 -0
  128. package/dist/src/core/shared/controllers/ClickOutsideController.d.ts.map +1 -0
  129. package/dist/src/core/shared/controllers/FocusController.d.ts +5 -11
  130. package/dist/src/core/shared/controllers/FocusController.d.ts.map +1 -1
  131. package/dist/src/core/shared/controllers/HoverController.d.ts +2 -8
  132. package/dist/src/core/shared/controllers/HoverController.d.ts.map +1 -1
  133. package/dist/src/core/shared/controllers/IntersectionController.d.ts +2 -8
  134. package/dist/src/core/shared/controllers/IntersectionController.d.ts.map +1 -1
  135. package/dist/src/core/shared/controllers/LongPressController.d.ts +2 -8
  136. package/dist/src/core/shared/controllers/LongPressController.d.ts.map +1 -1
  137. package/dist/src/core/shared/controllers/MonitorControllerBase.d.ts +4 -0
  138. package/dist/src/core/shared/controllers/MonitorControllerBase.d.ts.map +1 -1
  139. package/dist/src/core/shared/controllers/PressedController.d.ts +6 -8
  140. package/dist/src/core/shared/controllers/PressedController.d.ts.map +1 -1
  141. package/dist/src/core/shared/controllers/ResizeController.d.ts +2 -8
  142. package/dist/src/core/shared/controllers/ResizeController.d.ts.map +1 -1
  143. package/dist/src/core/shared/controllers/index.d.ts +1 -0
  144. package/dist/src/core/shared/controllers/index.d.ts.map +1 -1
  145. package/dist/src/core/shared/mixins/AttachInternals.d.ts.map +1 -1
  146. package/dist/src/core/shared/primitives/FocusRingElement.d.ts.map +1 -1
  147. package/dist/src/core/shared/primitives/PseudoCheckboxElement.d.ts.map +1 -1
  148. package/dist/src/core/shared/primitives/PseudoRadioElement.d.ts.map +1 -1
  149. package/dist/src/core/shared/primitives/RippleElement.d.ts.map +1 -1
  150. package/dist/src/core/shared/primitives/StateLayerElement.d.ts.map +1 -1
  151. package/dist/src/datepicker/DatepickerElement.d.ts +1 -2
  152. package/dist/src/datepicker/DatepickerElement.d.ts.map +1 -1
  153. package/dist/src/dialog/DialogElement.d.ts.map +1 -1
  154. package/dist/src/divider/DividerElement.d.ts.map +1 -1
  155. package/dist/src/drawer-container/styles/DrawerContainerStyle.d.ts.map +1 -1
  156. package/dist/src/expansion-panel/ExpansionPanelElement.d.ts.map +1 -1
  157. package/dist/src/expansion-panel/styles/ExpansionHeaderStyle.d.ts.map +1 -1
  158. package/dist/src/expansion-panel/styles/ExpansionPanelStyle.d.ts.map +1 -1
  159. package/dist/src/fab-menu/FabMenuElement.d.ts.map +1 -1
  160. package/dist/src/form-field/FormFieldElement.d.ts +1 -0
  161. package/dist/src/form-field/FormFieldElement.d.ts.map +1 -1
  162. package/dist/src/menu/MenuElement.d.ts.map +1 -1
  163. package/dist/src/nav-bar/NavBarElement.d.ts.map +1 -1
  164. package/dist/src/nav-bar/NavItemElement.d.ts.map +1 -1
  165. package/dist/src/nav-menu/NavMenuElement.d.ts.map +1 -1
  166. package/dist/src/nav-menu/NavMenuItemElement.d.ts.map +1 -1
  167. package/dist/src/nav-rail/NavRailElement.d.ts.map +1 -1
  168. package/dist/src/radio-group/RadioElement.d.ts.map +1 -1
  169. package/dist/src/search/SearchViewElement.d.ts.map +1 -1
  170. package/dist/src/search/styles/SearchBarStyle.d.ts.map +1 -1
  171. package/dist/src/search/styles/SearchViewStyle.d.ts.map +1 -1
  172. package/dist/src/skeleton/SkeletonElement.d.ts +11 -1
  173. package/dist/src/skeleton/SkeletonElement.d.ts.map +1 -1
  174. package/dist/src/slide-group/SlideGroupElement.d.ts.map +1 -1
  175. package/dist/src/slider/SliderElement.d.ts.map +1 -1
  176. package/dist/src/slider/SliderThumbElement.d.ts.map +1 -1
  177. package/dist/src/snackbar/SnackbarElement.d.ts.map +1 -1
  178. package/dist/src/split-pane/SplitPaneElement.d.ts.map +1 -1
  179. package/dist/src/stepper/StepElement.d.ts.map +1 -1
  180. package/dist/src/stepper/StepPanelElement.d.ts.map +1 -1
  181. package/dist/src/stepper/StepperElement.d.ts.map +1 -1
  182. package/dist/src/switch/styles/SwitchStyle.d.ts.map +1 -1
  183. package/dist/src/switch/styles/SwitchTrackStyle.d.ts.map +1 -1
  184. package/dist/src/tabs/TabElement.d.ts.map +1 -1
  185. package/dist/src/tabs/TabPanelElement.d.ts.map +1 -1
  186. package/dist/src/tabs/TabsElement.d.ts.map +1 -1
  187. package/dist/src/toc/TocElement.d.ts.map +1 -1
  188. package/dist/src/toc/TocItemElement.d.ts.map +1 -1
  189. package/dist/src/tooltip/RichTooltipElement.d.ts.map +1 -1
  190. package/dist/src/tooltip/TooltipElement.d.ts +4 -0
  191. package/dist/src/tooltip/TooltipElement.d.ts.map +1 -1
  192. package/dist/src/tree/TreeElement.d.ts.map +1 -1
  193. package/dist/src/tree/TreeItemElement.d.ts.map +1 -1
  194. package/dist/stepper.js +3 -3
  195. package/dist/stepper.js.map +1 -1
  196. package/dist/stepper.min.js +1 -1
  197. package/dist/stepper.min.js.map +1 -1
  198. package/dist/switch.js +2 -2
  199. package/dist/switch.js.map +1 -1
  200. package/dist/switch.min.js +1 -1
  201. package/dist/switch.min.js.map +1 -1
  202. package/dist/tabs.js +3 -3
  203. package/dist/tabs.js.map +1 -1
  204. package/dist/tabs.min.js +1 -1
  205. package/dist/tabs.min.js.map +1 -1
  206. package/dist/toc.js +2 -2
  207. package/dist/toc.js.map +1 -1
  208. package/dist/toc.min.js +1 -1
  209. package/dist/toc.min.js.map +1 -1
  210. package/dist/tooltip.js +77 -38
  211. package/dist/tooltip.js.map +1 -1
  212. package/dist/tooltip.min.js +1 -1
  213. package/dist/tooltip.min.js.map +1 -1
  214. package/dist/tree.js +2 -2
  215. package/dist/tree.js.map +1 -1
  216. package/dist/tree.min.js +1 -1
  217. package/dist/tree.min.js.map +1 -1
  218. package/package.json +1 -1
@@ -126,6 +126,15 @@
126
126
  "description": "The targets being observed.",
127
127
  "readonly": true
128
128
  },
129
+ {
130
+ "kind": "field",
131
+ "name": "hasTargets",
132
+ "type": {
133
+ "text": "boolean"
134
+ },
135
+ "description": "Whether one or more targets are being monitored.",
136
+ "readonly": true
137
+ },
129
138
  {
130
139
  "kind": "method",
131
140
  "name": "hostConnected",
@@ -219,6 +228,16 @@
219
228
  ],
220
229
  "description": "Stops observing the specified element."
221
230
  },
231
+ {
232
+ "kind": "method",
233
+ "name": "unobserveAll",
234
+ "return": {
235
+ "type": {
236
+ "text": "void"
237
+ }
238
+ },
239
+ "description": "Stops observing all targets."
240
+ },
222
241
  {
223
242
  "kind": "method",
224
243
  "name": "_observe",
@@ -273,6 +292,325 @@
273
292
  }
274
293
  ]
275
294
  },
295
+ {
296
+ "kind": "javascript-module",
297
+ "path": "src/core/shared/controllers/ClickOutsideController.ts",
298
+ "declarations": [
299
+ {
300
+ "kind": "class",
301
+ "description": "A `ReactiveController` used to monitor whether the user clicks outside all observed elements.",
302
+ "name": "ClickOutsideController",
303
+ "members": [
304
+ {
305
+ "kind": "field",
306
+ "name": "#callback",
307
+ "privacy": "private",
308
+ "type": {
309
+ "text": "ClickOutsideControllerCallback"
310
+ },
311
+ "readonly": true,
312
+ "parsedType": {
313
+ "text": "{ }"
314
+ }
315
+ },
316
+ {
317
+ "kind": "field",
318
+ "name": "#documentClickHandler",
319
+ "privacy": "private",
320
+ "readonly": true
321
+ },
322
+ {
323
+ "kind": "field",
324
+ "name": "#listening",
325
+ "privacy": "private",
326
+ "type": {
327
+ "text": "boolean"
328
+ },
329
+ "default": "false"
330
+ },
331
+ {
332
+ "kind": "method",
333
+ "name": "_observe",
334
+ "privacy": "protected",
335
+ "return": {
336
+ "type": {
337
+ "text": "void"
338
+ }
339
+ },
340
+ "parameters": [
341
+ {
342
+ "name": "target",
343
+ "type": {
344
+ "text": "HTMLElement"
345
+ },
346
+ "description": "The element to start observing."
347
+ }
348
+ ],
349
+ "description": "When implemented by a derived class, starts observing the specified element.",
350
+ "inheritedFrom": {
351
+ "name": "MonitorControllerBase",
352
+ "module": "src/core/shared/controllers/MonitorControllerBase.ts"
353
+ }
354
+ },
355
+ {
356
+ "kind": "method",
357
+ "name": "_unobserve",
358
+ "privacy": "protected",
359
+ "return": {
360
+ "type": {
361
+ "text": "void"
362
+ }
363
+ },
364
+ "parameters": [
365
+ {
366
+ "name": "target",
367
+ "type": {
368
+ "text": "HTMLElement"
369
+ },
370
+ "description": "The element to stop observing."
371
+ }
372
+ ],
373
+ "description": "When implemented by a derived class, stops observing the specified element.",
374
+ "inheritedFrom": {
375
+ "name": "MonitorControllerBase",
376
+ "module": "src/core/shared/controllers/MonitorControllerBase.ts"
377
+ }
378
+ },
379
+ {
380
+ "kind": "method",
381
+ "name": "#handleDocumentClick",
382
+ "privacy": "private",
383
+ "return": {
384
+ "type": {
385
+ "text": "void"
386
+ }
387
+ },
388
+ "parameters": [
389
+ {
390
+ "name": "e",
391
+ "type": {
392
+ "text": "MouseEvent"
393
+ }
394
+ }
395
+ ]
396
+ },
397
+ {
398
+ "kind": "field",
399
+ "name": "#host",
400
+ "privacy": "private",
401
+ "type": {
402
+ "text": "ReactiveControllerHost & HTMLElement"
403
+ },
404
+ "readonly": true,
405
+ "default": "host",
406
+ "inheritedFrom": {
407
+ "name": "MonitorControllerBase",
408
+ "module": "src/core/shared/controllers/MonitorControllerBase.ts"
409
+ }
410
+ },
411
+ {
412
+ "kind": "field",
413
+ "name": "#target",
414
+ "privacy": "private",
415
+ "type": {
416
+ "text": "HTMLElement | null | undefined"
417
+ },
418
+ "readonly": true,
419
+ "inheritedFrom": {
420
+ "name": "MonitorControllerBase",
421
+ "module": "src/core/shared/controllers/MonitorControllerBase.ts"
422
+ }
423
+ },
424
+ {
425
+ "kind": "field",
426
+ "name": "#targets",
427
+ "privacy": "private",
428
+ "readonly": true,
429
+ "default": "new Set<HTMLElement>()",
430
+ "inheritedFrom": {
431
+ "name": "MonitorControllerBase",
432
+ "module": "src/core/shared/controllers/MonitorControllerBase.ts"
433
+ }
434
+ },
435
+ {
436
+ "kind": "field",
437
+ "name": "targets",
438
+ "type": {
439
+ "text": "Iterable<HTMLElement>"
440
+ },
441
+ "description": "The targets being observed.",
442
+ "readonly": true,
443
+ "inheritedFrom": {
444
+ "name": "MonitorControllerBase",
445
+ "module": "src/core/shared/controllers/MonitorControllerBase.ts"
446
+ }
447
+ },
448
+ {
449
+ "kind": "field",
450
+ "name": "hasTargets",
451
+ "type": {
452
+ "text": "boolean"
453
+ },
454
+ "description": "Whether one or more targets are being monitored.",
455
+ "readonly": true,
456
+ "inheritedFrom": {
457
+ "name": "MonitorControllerBase",
458
+ "module": "src/core/shared/controllers/MonitorControllerBase.ts"
459
+ }
460
+ },
461
+ {
462
+ "kind": "method",
463
+ "name": "hostConnected",
464
+ "return": {
465
+ "type": {
466
+ "text": "void"
467
+ }
468
+ },
469
+ "inheritedFrom": {
470
+ "name": "MonitorControllerBase",
471
+ "module": "src/core/shared/controllers/MonitorControllerBase.ts"
472
+ }
473
+ },
474
+ {
475
+ "kind": "method",
476
+ "name": "hostDisconnected",
477
+ "return": {
478
+ "type": {
479
+ "text": "void"
480
+ }
481
+ },
482
+ "inheritedFrom": {
483
+ "name": "MonitorControllerBase",
484
+ "module": "src/core/shared/controllers/MonitorControllerBase.ts"
485
+ }
486
+ },
487
+ {
488
+ "kind": "method",
489
+ "name": "hostUpdate",
490
+ "return": {
491
+ "type": {
492
+ "text": "void"
493
+ }
494
+ },
495
+ "inheritedFrom": {
496
+ "name": "MonitorControllerBase",
497
+ "module": "src/core/shared/controllers/MonitorControllerBase.ts"
498
+ }
499
+ },
500
+ {
501
+ "kind": "method",
502
+ "name": "hostUpdated",
503
+ "return": {
504
+ "type": {
505
+ "text": "void"
506
+ }
507
+ },
508
+ "inheritedFrom": {
509
+ "name": "MonitorControllerBase",
510
+ "module": "src/core/shared/controllers/MonitorControllerBase.ts"
511
+ }
512
+ },
513
+ {
514
+ "kind": "method",
515
+ "name": "observe",
516
+ "return": {
517
+ "type": {
518
+ "text": "void"
519
+ }
520
+ },
521
+ "parameters": [
522
+ {
523
+ "name": "target",
524
+ "type": {
525
+ "text": "HTMLElement"
526
+ },
527
+ "description": "The element to start observing."
528
+ }
529
+ ],
530
+ "description": "Starts observing the specified element.",
531
+ "inheritedFrom": {
532
+ "name": "MonitorControllerBase",
533
+ "module": "src/core/shared/controllers/MonitorControllerBase.ts"
534
+ }
535
+ },
536
+ {
537
+ "kind": "method",
538
+ "name": "isObserving",
539
+ "return": {
540
+ "type": {
541
+ "text": "boolean"
542
+ }
543
+ },
544
+ "parameters": [
545
+ {
546
+ "name": "target",
547
+ "type": {
548
+ "text": "HTMLElement"
549
+ },
550
+ "description": "The element to test."
551
+ }
552
+ ],
553
+ "description": "Determines whether the specified element is being observed.",
554
+ "inheritedFrom": {
555
+ "name": "MonitorControllerBase",
556
+ "module": "src/core/shared/controllers/MonitorControllerBase.ts"
557
+ }
558
+ },
559
+ {
560
+ "kind": "method",
561
+ "name": "unobserve",
562
+ "return": {
563
+ "type": {
564
+ "text": "void"
565
+ }
566
+ },
567
+ "parameters": [
568
+ {
569
+ "name": "target",
570
+ "type": {
571
+ "text": "HTMLElement"
572
+ },
573
+ "description": "The element to stop observing."
574
+ }
575
+ ],
576
+ "description": "Stops observing the specified element.",
577
+ "inheritedFrom": {
578
+ "name": "MonitorControllerBase",
579
+ "module": "src/core/shared/controllers/MonitorControllerBase.ts"
580
+ }
581
+ },
582
+ {
583
+ "kind": "method",
584
+ "name": "unobserveAll",
585
+ "return": {
586
+ "type": {
587
+ "text": "void"
588
+ }
589
+ },
590
+ "description": "Stops observing all targets.",
591
+ "inheritedFrom": {
592
+ "name": "MonitorControllerBase",
593
+ "module": "src/core/shared/controllers/MonitorControllerBase.ts"
594
+ }
595
+ }
596
+ ],
597
+ "superclass": {
598
+ "name": "MonitorControllerBase",
599
+ "module": "/src/core/shared/controllers/MonitorControllerBase"
600
+ }
601
+ }
602
+ ],
603
+ "exports": [
604
+ {
605
+ "kind": "js",
606
+ "name": "ClickOutsideController",
607
+ "declaration": {
608
+ "name": "ClickOutsideController",
609
+ "module": "src/core/shared/controllers/ClickOutsideController.ts"
610
+ }
611
+ }
612
+ ]
613
+ },
276
614
  {
277
615
  "kind": "javascript-module",
278
616
  "path": "src/core/shared/utils/computeCssSize.ts",
@@ -1136,6 +1474,18 @@
1136
1474
  "text": "{ }"
1137
1475
  }
1138
1476
  },
1477
+ {
1478
+ "kind": "field",
1479
+ "name": "#filter",
1480
+ "privacy": "private",
1481
+ "type": {
1482
+ "text": "FocusControllerFilterCallback | undefined"
1483
+ },
1484
+ "readonly": true,
1485
+ "parsedType": {
1486
+ "text": "{ } | undefined"
1487
+ }
1488
+ },
1139
1489
  {
1140
1490
  "kind": "field",
1141
1491
  "name": "#keyDownHandler",
@@ -1173,46 +1523,9 @@
1173
1523
  "type": {
1174
1524
  "text": "boolean"
1175
1525
  },
1526
+ "static": true,
1176
1527
  "default": "false"
1177
1528
  },
1178
- {
1179
- "kind": "field",
1180
- "name": "#windowKeyDownHandler",
1181
- "privacy": "private",
1182
- "readonly": true
1183
- },
1184
- {
1185
- "kind": "field",
1186
- "name": "#windowPointerDownHandler",
1187
- "privacy": "private",
1188
- "readonly": true
1189
- },
1190
- {
1191
- "kind": "method",
1192
- "name": "hostConnected",
1193
- "return": {
1194
- "type": {
1195
- "text": "void"
1196
- }
1197
- },
1198
- "inheritedFrom": {
1199
- "name": "MonitorControllerBase",
1200
- "module": "src/core/shared/controllers/MonitorControllerBase.ts"
1201
- }
1202
- },
1203
- {
1204
- "kind": "method",
1205
- "name": "hostDisconnected",
1206
- "return": {
1207
- "type": {
1208
- "text": "void"
1209
- }
1210
- },
1211
- "inheritedFrom": {
1212
- "name": "MonitorControllerBase",
1213
- "module": "src/core/shared/controllers/MonitorControllerBase.ts"
1214
- }
1215
- },
1216
1529
  {
1217
1530
  "kind": "method",
1218
1531
  "name": "_observe",
@@ -1227,11 +1540,10 @@
1227
1540
  "name": "target",
1228
1541
  "type": {
1229
1542
  "text": "HTMLElement"
1230
- },
1231
- "description": "The element to start observing."
1543
+ }
1232
1544
  }
1233
1545
  ],
1234
- "description": "Starts observing the specified element.",
1546
+ "description": "When implemented by a derived class, starts observing the specified element.",
1235
1547
  "inheritedFrom": {
1236
1548
  "name": "MonitorControllerBase",
1237
1549
  "module": "src/core/shared/controllers/MonitorControllerBase.ts"
@@ -1251,11 +1563,10 @@
1251
1563
  "name": "target",
1252
1564
  "type": {
1253
1565
  "text": "HTMLElement"
1254
- },
1255
- "description": "The element to stop observing."
1566
+ }
1256
1567
  }
1257
1568
  ],
1258
- "description": "Stops observing the specified element.",
1569
+ "description": "When implemented by a derived class, stops observing the specified element.",
1259
1570
  "inheritedFrom": {
1260
1571
  "name": "MonitorControllerBase",
1261
1572
  "module": "src/core/shared/controllers/MonitorControllerBase.ts"
@@ -1366,6 +1677,45 @@
1366
1677
  "module": "src/core/shared/controllers/MonitorControllerBase.ts"
1367
1678
  }
1368
1679
  },
1680
+ {
1681
+ "kind": "field",
1682
+ "name": "hasTargets",
1683
+ "type": {
1684
+ "text": "boolean"
1685
+ },
1686
+ "description": "Whether one or more targets are being monitored.",
1687
+ "readonly": true,
1688
+ "inheritedFrom": {
1689
+ "name": "MonitorControllerBase",
1690
+ "module": "src/core/shared/controllers/MonitorControllerBase.ts"
1691
+ }
1692
+ },
1693
+ {
1694
+ "kind": "method",
1695
+ "name": "hostConnected",
1696
+ "return": {
1697
+ "type": {
1698
+ "text": "void"
1699
+ }
1700
+ },
1701
+ "inheritedFrom": {
1702
+ "name": "MonitorControllerBase",
1703
+ "module": "src/core/shared/controllers/MonitorControllerBase.ts"
1704
+ }
1705
+ },
1706
+ {
1707
+ "kind": "method",
1708
+ "name": "hostDisconnected",
1709
+ "return": {
1710
+ "type": {
1711
+ "text": "void"
1712
+ }
1713
+ },
1714
+ "inheritedFrom": {
1715
+ "name": "MonitorControllerBase",
1716
+ "module": "src/core/shared/controllers/MonitorControllerBase.ts"
1717
+ }
1718
+ },
1369
1719
  {
1370
1720
  "kind": "method",
1371
1721
  "name": "hostUpdate",
@@ -1460,6 +1810,20 @@
1460
1810
  "name": "MonitorControllerBase",
1461
1811
  "module": "src/core/shared/controllers/MonitorControllerBase.ts"
1462
1812
  }
1813
+ },
1814
+ {
1815
+ "kind": "method",
1816
+ "name": "unobserveAll",
1817
+ "return": {
1818
+ "type": {
1819
+ "text": "void"
1820
+ }
1821
+ },
1822
+ "description": "Stops observing all targets.",
1823
+ "inheritedFrom": {
1824
+ "name": "MonitorControllerBase",
1825
+ "module": "src/core/shared/controllers/MonitorControllerBase.ts"
1826
+ }
1463
1827
  }
1464
1828
  ],
1465
1829
  "superclass": {
@@ -1566,11 +1930,10 @@
1566
1930
  "name": "target",
1567
1931
  "type": {
1568
1932
  "text": "HTMLElement"
1569
- },
1570
- "description": "The element to start observing."
1933
+ }
1571
1934
  }
1572
1935
  ],
1573
- "description": "Starts observing the specified element.",
1936
+ "description": "When implemented by a derived class, starts observing the specified element.",
1574
1937
  "inheritedFrom": {
1575
1938
  "name": "MonitorControllerBase",
1576
1939
  "module": "src/core/shared/controllers/MonitorControllerBase.ts"
@@ -1590,11 +1953,10 @@
1590
1953
  "name": "target",
1591
1954
  "type": {
1592
1955
  "text": "HTMLElement"
1593
- },
1594
- "description": "The element to stop observing."
1956
+ }
1595
1957
  }
1596
1958
  ],
1597
- "description": "Stops observing the specified element.",
1959
+ "description": "When implemented by a derived class, stops observing the specified element.",
1598
1960
  "inheritedFrom": {
1599
1961
  "name": "MonitorControllerBase",
1600
1962
  "module": "src/core/shared/controllers/MonitorControllerBase.ts"
@@ -1741,6 +2103,19 @@
1741
2103
  "module": "src/core/shared/controllers/MonitorControllerBase.ts"
1742
2104
  }
1743
2105
  },
2106
+ {
2107
+ "kind": "field",
2108
+ "name": "hasTargets",
2109
+ "type": {
2110
+ "text": "boolean"
2111
+ },
2112
+ "description": "Whether one or more targets are being monitored.",
2113
+ "readonly": true,
2114
+ "inheritedFrom": {
2115
+ "name": "MonitorControllerBase",
2116
+ "module": "src/core/shared/controllers/MonitorControllerBase.ts"
2117
+ }
2118
+ },
1744
2119
  {
1745
2120
  "kind": "method",
1746
2121
  "name": "hostConnected",
@@ -1861,6 +2236,20 @@
1861
2236
  "name": "MonitorControllerBase",
1862
2237
  "module": "src/core/shared/controllers/MonitorControllerBase.ts"
1863
2238
  }
2239
+ },
2240
+ {
2241
+ "kind": "method",
2242
+ "name": "unobserveAll",
2243
+ "return": {
2244
+ "type": {
2245
+ "text": "void"
2246
+ }
2247
+ },
2248
+ "description": "Stops observing all targets.",
2249
+ "inheritedFrom": {
2250
+ "name": "MonitorControllerBase",
2251
+ "module": "src/core/shared/controllers/MonitorControllerBase.ts"
2252
+ }
1864
2253
  }
1865
2254
  ],
1866
2255
  "superclass": {
@@ -2008,11 +2397,10 @@
2008
2397
  "name": "target",
2009
2398
  "type": {
2010
2399
  "text": "HTMLElement"
2011
- },
2012
- "description": "The element to start observing."
2400
+ }
2013
2401
  }
2014
2402
  ],
2015
- "description": "Starts observing the specified element.",
2403
+ "description": "When implemented by a derived class, starts observing the specified element.",
2016
2404
  "inheritedFrom": {
2017
2405
  "name": "MonitorControllerBase",
2018
2406
  "module": "src/core/shared/controllers/MonitorControllerBase.ts"
@@ -2032,11 +2420,10 @@
2032
2420
  "name": "target",
2033
2421
  "type": {
2034
2422
  "text": "HTMLElement"
2035
- },
2036
- "description": "The element to stop observing."
2423
+ }
2037
2424
  }
2038
2425
  ],
2039
- "description": "Stops observing the specified element.",
2426
+ "description": "When implemented by a derived class, stops observing the specified element.",
2040
2427
  "inheritedFrom": {
2041
2428
  "name": "MonitorControllerBase",
2042
2429
  "module": "src/core/shared/controllers/MonitorControllerBase.ts"
@@ -2093,6 +2480,19 @@
2093
2480
  "module": "src/core/shared/controllers/MonitorControllerBase.ts"
2094
2481
  }
2095
2482
  },
2483
+ {
2484
+ "kind": "field",
2485
+ "name": "hasTargets",
2486
+ "type": {
2487
+ "text": "boolean"
2488
+ },
2489
+ "description": "Whether one or more targets are being monitored.",
2490
+ "readonly": true,
2491
+ "inheritedFrom": {
2492
+ "name": "MonitorControllerBase",
2493
+ "module": "src/core/shared/controllers/MonitorControllerBase.ts"
2494
+ }
2495
+ },
2096
2496
  {
2097
2497
  "kind": "method",
2098
2498
  "name": "hostConnected",
@@ -2200,6 +2600,20 @@
2200
2600
  "name": "MonitorControllerBase",
2201
2601
  "module": "src/core/shared/controllers/MonitorControllerBase.ts"
2202
2602
  }
2603
+ },
2604
+ {
2605
+ "kind": "method",
2606
+ "name": "unobserveAll",
2607
+ "return": {
2608
+ "type": {
2609
+ "text": "void"
2610
+ }
2611
+ },
2612
+ "description": "Stops observing all targets.",
2613
+ "inheritedFrom": {
2614
+ "name": "MonitorControllerBase",
2615
+ "module": "src/core/shared/controllers/MonitorControllerBase.ts"
2616
+ }
2203
2617
  }
2204
2618
  ],
2205
2619
  "superclass": {
@@ -2289,11 +2703,10 @@
2289
2703
  "name": "target",
2290
2704
  "type": {
2291
2705
  "text": "HTMLElement"
2292
- },
2293
- "description": "The element to start observing."
2706
+ }
2294
2707
  }
2295
2708
  ],
2296
- "description": "Starts observing the specified element.",
2709
+ "description": "When implemented by a derived class, starts observing the specified element.",
2297
2710
  "inheritedFrom": {
2298
2711
  "name": "MonitorControllerBase",
2299
2712
  "module": "src/core/shared/controllers/MonitorControllerBase.ts"
@@ -2313,11 +2726,10 @@
2313
2726
  "name": "target",
2314
2727
  "type": {
2315
2728
  "text": "HTMLElement"
2316
- },
2317
- "description": "The element to stop observing."
2729
+ }
2318
2730
  }
2319
2731
  ],
2320
- "description": "Stops observing the specified element.",
2732
+ "description": "When implemented by a derived class, stops observing the specified element.",
2321
2733
  "inheritedFrom": {
2322
2734
  "name": "MonitorControllerBase",
2323
2735
  "module": "src/core/shared/controllers/MonitorControllerBase.ts"
@@ -2410,6 +2822,19 @@
2410
2822
  "module": "src/core/shared/controllers/MonitorControllerBase.ts"
2411
2823
  }
2412
2824
  },
2825
+ {
2826
+ "kind": "field",
2827
+ "name": "hasTargets",
2828
+ "type": {
2829
+ "text": "boolean"
2830
+ },
2831
+ "description": "Whether one or more targets are being monitored.",
2832
+ "readonly": true,
2833
+ "inheritedFrom": {
2834
+ "name": "MonitorControllerBase",
2835
+ "module": "src/core/shared/controllers/MonitorControllerBase.ts"
2836
+ }
2837
+ },
2413
2838
  {
2414
2839
  "kind": "method",
2415
2840
  "name": "hostConnected",
@@ -2530,6 +2955,20 @@
2530
2955
  "name": "MonitorControllerBase",
2531
2956
  "module": "src/core/shared/controllers/MonitorControllerBase.ts"
2532
2957
  }
2958
+ },
2959
+ {
2960
+ "kind": "method",
2961
+ "name": "unobserveAll",
2962
+ "return": {
2963
+ "type": {
2964
+ "text": "void"
2965
+ }
2966
+ },
2967
+ "description": "Stops observing all targets.",
2968
+ "inheritedFrom": {
2969
+ "name": "MonitorControllerBase",
2970
+ "module": "src/core/shared/controllers/MonitorControllerBase.ts"
2971
+ }
2533
2972
  }
2534
2973
  ],
2535
2974
  "superclass": {
@@ -2725,6 +3164,19 @@
2725
3164
  "module": "src/core/shared/controllers/MonitorControllerBase.ts"
2726
3165
  }
2727
3166
  },
3167
+ {
3168
+ "kind": "field",
3169
+ "name": "hasTargets",
3170
+ "type": {
3171
+ "text": "boolean"
3172
+ },
3173
+ "description": "Whether one or more targets are being monitored.",
3174
+ "readonly": true,
3175
+ "inheritedFrom": {
3176
+ "name": "MonitorControllerBase",
3177
+ "module": "src/core/shared/controllers/MonitorControllerBase.ts"
3178
+ }
3179
+ },
2728
3180
  {
2729
3181
  "kind": "method",
2730
3182
  "name": "hostConnected",
@@ -2819,6 +3271,20 @@
2819
3271
  "name": "MonitorControllerBase",
2820
3272
  "module": "src/core/shared/controllers/MonitorControllerBase.ts"
2821
3273
  }
3274
+ },
3275
+ {
3276
+ "kind": "method",
3277
+ "name": "unobserveAll",
3278
+ "return": {
3279
+ "type": {
3280
+ "text": "void"
3281
+ }
3282
+ },
3283
+ "description": "Stops observing all targets.",
3284
+ "inheritedFrom": {
3285
+ "name": "MonitorControllerBase",
3286
+ "module": "src/core/shared/controllers/MonitorControllerBase.ts"
3287
+ }
2822
3288
  }
2823
3289
  ],
2824
3290
  "superclass": {
@@ -2868,6 +3334,18 @@
2868
3334
  "text": "{ }"
2869
3335
  }
2870
3336
  },
3337
+ {
3338
+ "kind": "field",
3339
+ "name": "#filter",
3340
+ "privacy": "private",
3341
+ "type": {
3342
+ "text": "PressedControllerFilterCallback | undefined"
3343
+ },
3344
+ "readonly": true,
3345
+ "parsedType": {
3346
+ "text": "{ } | undefined"
3347
+ }
3348
+ },
2871
3349
  {
2872
3350
  "kind": "field",
2873
3351
  "name": "#isPressedKey",
@@ -2963,11 +3441,10 @@
2963
3441
  "name": "target",
2964
3442
  "type": {
2965
3443
  "text": "HTMLElement"
2966
- },
2967
- "description": "The element to start observing."
3444
+ }
2968
3445
  }
2969
3446
  ],
2970
- "description": "Starts observing the specified element.",
3447
+ "description": "When implemented by a derived class, starts observing the specified element.",
2971
3448
  "inheritedFrom": {
2972
3449
  "name": "MonitorControllerBase",
2973
3450
  "module": "src/core/shared/controllers/MonitorControllerBase.ts"
@@ -2987,11 +3464,10 @@
2987
3464
  "name": "target",
2988
3465
  "type": {
2989
3466
  "text": "HTMLElement"
2990
- },
2991
- "description": "The element to stop observing."
3467
+ }
2992
3468
  }
2993
3469
  ],
2994
- "description": "Stops observing the specified element.",
3470
+ "description": "When implemented by a derived class, stops observing the specified element.",
2995
3471
  "inheritedFrom": {
2996
3472
  "name": "MonitorControllerBase",
2997
3473
  "module": "src/core/shared/controllers/MonitorControllerBase.ts"
@@ -3162,6 +3638,19 @@
3162
3638
  "module": "src/core/shared/controllers/MonitorControllerBase.ts"
3163
3639
  }
3164
3640
  },
3641
+ {
3642
+ "kind": "field",
3643
+ "name": "hasTargets",
3644
+ "type": {
3645
+ "text": "boolean"
3646
+ },
3647
+ "description": "Whether one or more targets are being monitored.",
3648
+ "readonly": true,
3649
+ "inheritedFrom": {
3650
+ "name": "MonitorControllerBase",
3651
+ "module": "src/core/shared/controllers/MonitorControllerBase.ts"
3652
+ }
3653
+ },
3165
3654
  {
3166
3655
  "kind": "method",
3167
3656
  "name": "hostUpdate",
@@ -3256,6 +3745,20 @@
3256
3745
  "name": "MonitorControllerBase",
3257
3746
  "module": "src/core/shared/controllers/MonitorControllerBase.ts"
3258
3747
  }
3748
+ },
3749
+ {
3750
+ "kind": "method",
3751
+ "name": "unobserveAll",
3752
+ "return": {
3753
+ "type": {
3754
+ "text": "void"
3755
+ }
3756
+ },
3757
+ "description": "Stops observing all targets.",
3758
+ "inheritedFrom": {
3759
+ "name": "MonitorControllerBase",
3760
+ "module": "src/core/shared/controllers/MonitorControllerBase.ts"
3761
+ }
3259
3762
  }
3260
3763
  ],
3261
3764
  "superclass": {
@@ -3360,11 +3863,10 @@
3360
3863
  "name": "target",
3361
3864
  "type": {
3362
3865
  "text": "HTMLElement"
3363
- },
3364
- "description": "The element to start observing."
3866
+ }
3365
3867
  }
3366
3868
  ],
3367
- "description": "Starts observing the specified element.",
3869
+ "description": "When implemented by a derived class, starts observing the specified element.",
3368
3870
  "inheritedFrom": {
3369
3871
  "name": "MonitorControllerBase",
3370
3872
  "module": "src/core/shared/controllers/MonitorControllerBase.ts"
@@ -3384,11 +3886,10 @@
3384
3886
  "name": "target",
3385
3887
  "type": {
3386
3888
  "text": "HTMLElement"
3387
- },
3388
- "description": "The element to stop observing."
3889
+ }
3389
3890
  }
3390
3891
  ],
3391
- "description": "Stops observing the specified element.",
3892
+ "description": "When implemented by a derived class, stops observing the specified element.",
3392
3893
  "inheritedFrom": {
3393
3894
  "name": "MonitorControllerBase",
3394
3895
  "module": "src/core/shared/controllers/MonitorControllerBase.ts"
@@ -3445,6 +3946,19 @@
3445
3946
  "module": "src/core/shared/controllers/MonitorControllerBase.ts"
3446
3947
  }
3447
3948
  },
3949
+ {
3950
+ "kind": "field",
3951
+ "name": "hasTargets",
3952
+ "type": {
3953
+ "text": "boolean"
3954
+ },
3955
+ "description": "Whether one or more targets are being monitored.",
3956
+ "readonly": true,
3957
+ "inheritedFrom": {
3958
+ "name": "MonitorControllerBase",
3959
+ "module": "src/core/shared/controllers/MonitorControllerBase.ts"
3960
+ }
3961
+ },
3448
3962
  {
3449
3963
  "kind": "method",
3450
3964
  "name": "hostConnected",
@@ -3552,6 +4066,20 @@
3552
4066
  "name": "MonitorControllerBase",
3553
4067
  "module": "src/core/shared/controllers/MonitorControllerBase.ts"
3554
4068
  }
4069
+ },
4070
+ {
4071
+ "kind": "method",
4072
+ "name": "unobserveAll",
4073
+ "return": {
4074
+ "type": {
4075
+ "text": "void"
4076
+ }
4077
+ },
4078
+ "description": "Stops observing all targets.",
4079
+ "inheritedFrom": {
4080
+ "name": "MonitorControllerBase",
4081
+ "module": "src/core/shared/controllers/MonitorControllerBase.ts"
4082
+ }
3555
4083
  }
3556
4084
  ],
3557
4085
  "superclass": {
@@ -3921,6 +4449,19 @@
3921
4449
  "module": "src/core/shared/controllers/MonitorControllerBase.ts"
3922
4450
  }
3923
4451
  },
4452
+ {
4453
+ "kind": "field",
4454
+ "name": "hasTargets",
4455
+ "type": {
4456
+ "text": "boolean"
4457
+ },
4458
+ "description": "Whether one or more targets are being monitored.",
4459
+ "readonly": true,
4460
+ "inheritedFrom": {
4461
+ "name": "MonitorControllerBase",
4462
+ "module": "src/core/shared/controllers/MonitorControllerBase.ts"
4463
+ }
4464
+ },
3924
4465
  {
3925
4466
  "kind": "method",
3926
4467
  "name": "hostConnected",
@@ -4041,6 +4582,20 @@
4041
4582
  "name": "MonitorControllerBase",
4042
4583
  "module": "src/core/shared/controllers/MonitorControllerBase.ts"
4043
4584
  }
4585
+ },
4586
+ {
4587
+ "kind": "method",
4588
+ "name": "unobserveAll",
4589
+ "return": {
4590
+ "type": {
4591
+ "text": "void"
4592
+ }
4593
+ },
4594
+ "description": "Stops observing all targets.",
4595
+ "inheritedFrom": {
4596
+ "name": "MonitorControllerBase",
4597
+ "module": "src/core/shared/controllers/MonitorControllerBase.ts"
4598
+ }
4044
4599
  }
4045
4600
  ],
4046
4601
  "superclass": {
@@ -4161,6 +4716,14 @@
4161
4716
  "module": "src/core/shared/controllers/AnimationLoopController"
4162
4717
  }
4163
4718
  },
4719
+ {
4720
+ "kind": "js",
4721
+ "name": "*",
4722
+ "declaration": {
4723
+ "name": "*",
4724
+ "module": "src/core/shared/controllers/ClickOutsideController"
4725
+ }
4726
+ },
4164
4727
  {
4165
4728
  "kind": "js",
4166
4729
  "name": "*",
@@ -16769,9 +17332,21 @@
16769
17332
  },
16770
17333
  {
16771
17334
  "kind": "field",
16772
- "name": "#documentClickHandler",
17335
+ "name": "#anchorLastPosition",
16773
17336
  "privacy": "private",
16774
- "readonly": true
17337
+ "type": {
17338
+ "text": "{ x: number; y: number; dir: Direction } | undefined"
17339
+ },
17340
+ "parsedType": {
17341
+ "text": "{ x: number; y: number; dir: 'ltr' | 'rtl' } | undefined"
17342
+ }
17343
+ },
17344
+ {
17345
+ "kind": "field",
17346
+ "name": "#clickOutsideController",
17347
+ "privacy": "private",
17348
+ "readonly": true,
17349
+ "default": "new ClickOutsideController(this, { target: null, callback: () => this.hide(), })"
16775
17350
  },
16776
17351
  {
16777
17352
  "kind": "field",
@@ -16916,24 +17491,6 @@
16916
17491
  ],
16917
17492
  "description": "Toggles the panel."
16918
17493
  },
16919
- {
16920
- "kind": "method",
16921
- "name": "#handleDocumentClick",
16922
- "privacy": "private",
16923
- "return": {
16924
- "type": {
16925
- "text": "void"
16926
- }
16927
- },
16928
- "parameters": [
16929
- {
16930
- "name": "e",
16931
- "type": {
16932
- "text": "MouseEvent"
16933
- }
16934
- }
16935
- ]
16936
- },
16937
17494
  {
16938
17495
  "kind": "field",
16939
17496
  "name": "formAssociated",
@@ -17384,9 +17941,25 @@
17384
17941
  },
17385
17942
  {
17386
17943
  "kind": "field",
17387
- "name": "#documentClickHandler",
17944
+ "name": "#anchorLastPosition",
17945
+ "privacy": "private",
17946
+ "type": {
17947
+ "text": "{ x: number; y: number; dir: Direction } | undefined"
17948
+ },
17949
+ "parsedType": {
17950
+ "text": "{ x: number; y: number; dir: 'ltr' | 'rtl' } | undefined"
17951
+ },
17952
+ "inheritedFrom": {
17953
+ "name": "M3eFloatingPanelElement",
17954
+ "module": "src/core/anchoring/FloatingPanelElement.ts"
17955
+ }
17956
+ },
17957
+ {
17958
+ "kind": "field",
17959
+ "name": "#clickOutsideController",
17388
17960
  "privacy": "private",
17389
17961
  "readonly": true,
17962
+ "default": "new ClickOutsideController(this, { target: null, callback: () => this.hide(), })",
17390
17963
  "inheritedFrom": {
17391
17964
  "name": "M3eFloatingPanelElement",
17392
17965
  "module": "src/core/anchoring/FloatingPanelElement.ts"
@@ -17578,28 +18151,6 @@
17578
18151
  "name": "M3eFloatingPanelElement",
17579
18152
  "module": "src/core/anchoring/FloatingPanelElement.ts"
17580
18153
  }
17581
- },
17582
- {
17583
- "kind": "method",
17584
- "name": "#handleDocumentClick",
17585
- "privacy": "private",
17586
- "return": {
17587
- "type": {
17588
- "text": "void"
17589
- }
17590
- },
17591
- "parameters": [
17592
- {
17593
- "name": "e",
17594
- "type": {
17595
- "text": "MouseEvent"
17596
- }
17597
- }
17598
- ],
17599
- "inheritedFrom": {
17600
- "name": "M3eFloatingPanelElement",
17601
- "module": "src/core/anchoring/FloatingPanelElement.ts"
17602
- }
17603
18154
  }
17604
18155
  ],
17605
18156
  "events": [
@@ -18025,7 +18576,7 @@
18025
18576
  "name": "#focusController",
18026
18577
  "privacy": "private",
18027
18578
  "readonly": true,
18028
- "default": "new FocusController(this, { target: null, callback: (focused) => { focused = focused && !(this.#control?.disabled ?? true); setCustomState(this, \"--no-animate\", false); this.#focused = focused; if (focused) { setCustomState(this, \"--float-label\", true); } else { this._invalid = !(this.#control?.checkValidity?.() ?? true); this.notifyControlStateChange(); } }, })"
18579
+ "default": "new FocusController(this, { target: null, filter: (e) => this.#ignoreEvent(e), callback: (focused) => { focused = focused && !(this.#control?.disabled ?? true); setCustomState(this, \"--no-animate\", false); this.#focused = focused; if (focused) { setCustomState(this, \"--float-label\", true); } else { this._invalid = !(this.#control?.checkValidity?.() ?? true); this.notifyControlStateChange(); } }, })"
18029
18580
  },
18030
18581
  {
18031
18582
  "kind": "field",
@@ -18045,6 +18596,15 @@
18045
18596
  "privacy": "private",
18046
18597
  "readonly": true
18047
18598
  },
18599
+ {
18600
+ "kind": "field",
18601
+ "name": "_suffix",
18602
+ "type": {
18603
+ "text": "HTMLElement"
18604
+ },
18605
+ "privacy": "private",
18606
+ "readonly": true
18607
+ },
18048
18608
  {
18049
18609
  "kind": "field",
18050
18610
  "name": "_error",
@@ -18082,7 +18642,7 @@
18082
18642
  "name": "#pressedController",
18083
18643
  "privacy": "private",
18084
18644
  "readonly": true,
18085
- "default": "new PressedController(this, { target: null, callback: (pressed) => setCustomState(this, \"--pressed\", pressed && !(this.#control?.disabled ?? true)), })"
18645
+ "default": "new PressedController(this, { target: null, filter: (e) => this.#ignoreEvent(e), callback: (pressed) => setCustomState(this, \"--pressed\", pressed && !(this.#control?.disabled ?? true)), })"
18086
18646
  },
18087
18647
  {
18088
18648
  "kind": "field",
@@ -18265,24 +18825,6 @@
18265
18825
  }
18266
18826
  }
18267
18827
  },
18268
- {
18269
- "kind": "method",
18270
- "name": "#stopPropagation",
18271
- "privacy": "private",
18272
- "return": {
18273
- "type": {
18274
- "text": "void"
18275
- }
18276
- },
18277
- "parameters": [
18278
- {
18279
- "name": "e",
18280
- "type": {
18281
- "text": "Event"
18282
- }
18283
- }
18284
- ]
18285
- },
18286
18828
  {
18287
18829
  "kind": "method",
18288
18830
  "name": "#handleLabelSlotChange",
@@ -18413,6 +18955,24 @@
18413
18955
  }
18414
18956
  }
18415
18957
  },
18958
+ {
18959
+ "kind": "method",
18960
+ "name": "#ignoreEvent",
18961
+ "privacy": "private",
18962
+ "return": {
18963
+ "type": {
18964
+ "text": "boolean"
18965
+ }
18966
+ },
18967
+ "parameters": [
18968
+ {
18969
+ "name": "e",
18970
+ "type": {
18971
+ "text": "Event"
18972
+ }
18973
+ }
18974
+ ]
18975
+ },
18416
18976
  {
18417
18977
  "kind": "method",
18418
18978
  "name": "#changeControl",
@@ -19973,6 +20533,14 @@
19973
20533
  "text": "() => void | undefined"
19974
20534
  }
19975
20535
  },
20536
+ {
20537
+ "kind": "field",
20538
+ "name": "#anchorLastPosition",
20539
+ "privacy": "private",
20540
+ "type": {
20541
+ "text": "{ x: number; y: number } | undefined"
20542
+ }
20543
+ },
19976
20544
  {
19977
20545
  "kind": "field",
19978
20546
  "name": "size",
@@ -20037,6 +20605,11 @@
20037
20605
  "module": "src/core/shared/mixins/HtmlFor.ts"
20038
20606
  }
20039
20607
  },
20608
+ {
20609
+ "kind": "method",
20610
+ "name": "#updatePadding",
20611
+ "privacy": "private"
20612
+ },
20040
20613
  {
20041
20614
  "kind": "method",
20042
20615
  "name": "#detach",
@@ -28294,6 +28867,17 @@
28294
28867
  },
28295
28868
  "default": "false"
28296
28869
  },
28870
+ {
28871
+ "kind": "field",
28872
+ "name": "#anchorLastPosition",
28873
+ "privacy": "private",
28874
+ "type": {
28875
+ "text": "{ x: number; y: number; dir: Direction } | undefined"
28876
+ },
28877
+ "parsedType": {
28878
+ "text": "{ x: number; y: number; dir: 'ltr' | 'rtl' } | undefined"
28879
+ }
28880
+ },
28297
28881
  {
28298
28882
  "kind": "field",
28299
28883
  "name": "_hasSubhead",
@@ -28314,9 +28898,10 @@
28314
28898
  },
28315
28899
  {
28316
28900
  "kind": "field",
28317
- "name": "#documentClickHandler",
28901
+ "name": "#clickOutsideController",
28318
28902
  "privacy": "private",
28319
- "readonly": true
28903
+ "readonly": true,
28904
+ "default": "new ClickOutsideController(this, { target: null, callback: () => this.hide(), })"
28320
28905
  },
28321
28906
  {
28322
28907
  "kind": "field",
@@ -28473,24 +29058,6 @@
28473
29058
  }
28474
29059
  ]
28475
29060
  },
28476
- {
28477
- "kind": "method",
28478
- "name": "#handleDocumentClick",
28479
- "privacy": "private",
28480
- "return": {
28481
- "type": {
28482
- "text": "void"
28483
- }
28484
- },
28485
- "parameters": [
28486
- {
28487
- "name": "e",
28488
- "type": {
28489
- "text": "MouseEvent"
28490
- }
28491
- }
28492
- ]
28493
- },
28494
29061
  {
28495
29062
  "kind": "method",
28496
29063
  "name": "#handleKeyDown",
@@ -28885,12 +29452,18 @@
28885
29452
  ],
28886
29453
  "events": [
28887
29454
  {
28888
- "description": "Dispatched before the toggle state changes.",
28889
- "name": "beforetoggle"
29455
+ "name": "beforetoggle",
29456
+ "type": {
29457
+ "text": "ToggleEvent"
29458
+ },
29459
+ "description": "Dispatched before the toggle state changes."
28890
29460
  },
28891
29461
  {
28892
- "description": "Dispatched after the toggle state has changed.",
28893
- "name": "toggle"
29462
+ "name": "toggle",
29463
+ "type": {
29464
+ "text": "ToggleEvent"
29465
+ },
29466
+ "description": "Dispatched after the toggle state has changed."
28894
29467
  }
28895
29468
  ],
28896
29469
  "attributes": [
@@ -29081,6 +29654,17 @@
29081
29654
  "text": "string | null | undefined"
29082
29655
  }
29083
29656
  },
29657
+ {
29658
+ "kind": "field",
29659
+ "name": "#anchorLastPosition",
29660
+ "privacy": "private",
29661
+ "type": {
29662
+ "text": "{ x: number; y: number; dir: Direction } | undefined"
29663
+ },
29664
+ "parsedType": {
29665
+ "text": "{ x: number; y: number; dir: 'ltr' | 'rtl' } | undefined"
29666
+ }
29667
+ },
29084
29668
  {
29085
29669
  "kind": "field",
29086
29670
  "name": "position",
@@ -29142,6 +29726,34 @@
29142
29726
  "module": "src/tooltip/TooltipElementBase.ts"
29143
29727
  }
29144
29728
  },
29729
+ {
29730
+ "kind": "method",
29731
+ "name": "show",
29732
+ "return": {
29733
+ "type": {
29734
+ "text": "Promise<void>"
29735
+ }
29736
+ },
29737
+ "description": "Manually shows the tooltip.",
29738
+ "inheritedFrom": {
29739
+ "name": "TooltipElementBase",
29740
+ "module": "src/tooltip/TooltipElementBase.ts"
29741
+ }
29742
+ },
29743
+ {
29744
+ "kind": "method",
29745
+ "name": "hide",
29746
+ "return": {
29747
+ "type": {
29748
+ "text": "void"
29749
+ }
29750
+ },
29751
+ "description": "Manually hides the tooltip.",
29752
+ "inheritedFrom": {
29753
+ "name": "TooltipElementBase",
29754
+ "module": "src/tooltip/TooltipElementBase.ts"
29755
+ }
29756
+ },
29145
29757
  {
29146
29758
  "kind": "method",
29147
29759
  "name": "_updatePosition",
@@ -29485,34 +30097,6 @@
29485
30097
  "module": "src/tooltip/TooltipElementBase.ts"
29486
30098
  }
29487
30099
  },
29488
- {
29489
- "kind": "method",
29490
- "name": "show",
29491
- "return": {
29492
- "type": {
29493
- "text": "Promise<void>"
29494
- }
29495
- },
29496
- "description": "Manually shows the tooltip.",
29497
- "inheritedFrom": {
29498
- "name": "TooltipElementBase",
29499
- "module": "src/tooltip/TooltipElementBase.ts"
29500
- }
29501
- },
29502
- {
29503
- "kind": "method",
29504
- "name": "hide",
29505
- "return": {
29506
- "type": {
29507
- "text": "void"
29508
- }
29509
- },
29510
- "description": "Manually hides the tooltip.",
29511
- "inheritedFrom": {
29512
- "name": "TooltipElementBase",
29513
- "module": "src/tooltip/TooltipElementBase.ts"
29514
- }
29515
- },
29516
30100
  {
29517
30101
  "kind": "method",
29518
30102
  "name": "#handleControlClick",
@@ -29905,6 +30489,20 @@
29905
30489
  "module": "src/calendar/CalendarViewElementBase.ts"
29906
30490
  }
29907
30491
  },
30492
+ {
30493
+ "kind": "field",
30494
+ "name": "active",
30495
+ "type": {
30496
+ "text": "boolean"
30497
+ },
30498
+ "default": "false",
30499
+ "description": "Whether the view is active.",
30500
+ "attribute": "active",
30501
+ "inheritedFrom": {
30502
+ "name": "CalendarViewElementBase",
30503
+ "module": "src/calendar/CalendarViewElementBase.ts"
30504
+ }
30505
+ },
29908
30506
  {
29909
30507
  "kind": "field",
29910
30508
  "name": "today",
@@ -30027,6 +30625,19 @@
30027
30625
  "description": "End of a date range.",
30028
30626
  "fieldName": "rangeEnd"
30029
30627
  },
30628
+ {
30629
+ "name": "active",
30630
+ "type": {
30631
+ "text": "boolean"
30632
+ },
30633
+ "default": "false",
30634
+ "description": "Whether the view is active.",
30635
+ "fieldName": "active",
30636
+ "inheritedFrom": {
30637
+ "name": "CalendarViewElementBase",
30638
+ "module": "src/calendar/CalendarViewElementBase.ts"
30639
+ }
30640
+ },
30030
30641
  {
30031
30642
  "name": "today",
30032
30643
  "type": {
@@ -30190,264 +30801,305 @@
30190
30801
  },
30191
30802
  {
30192
30803
  "kind": "field",
30193
- "name": "today",
30194
- "type": {
30195
- "text": "Date"
30196
- },
30197
- "default": "new Date()",
30198
- "description": "Today's date.",
30199
- "attribute": "today",
30200
- "inheritedFrom": {
30201
- "name": "CalendarViewElementBase",
30202
- "module": "src/calendar/CalendarViewElementBase.ts"
30203
- }
30204
- },
30205
- {
30206
- "kind": "field",
30207
- "name": "date",
30208
- "type": {
30209
- "text": "Date | null"
30210
- },
30211
- "default": "null",
30212
- "description": "The selected date.",
30213
- "attribute": "date",
30214
- "inheritedFrom": {
30215
- "name": "CalendarViewElementBase",
30216
- "module": "src/calendar/CalendarViewElementBase.ts"
30217
- }
30218
- },
30219
- {
30220
- "kind": "field",
30221
- "name": "activeDate",
30222
- "type": {
30223
- "text": "Date"
30224
- },
30225
- "default": "new Date()",
30226
- "description": "The active date.",
30227
- "attribute": "active-date",
30228
- "inheritedFrom": {
30229
- "name": "CalendarViewElementBase",
30230
- "module": "src/calendar/CalendarViewElementBase.ts"
30231
- }
30232
- },
30233
- {
30234
- "kind": "field",
30235
- "name": "minDate",
30804
+ "name": "active",
30236
30805
  "type": {
30237
- "text": "Date | null"
30238
- },
30239
- "default": "null",
30240
- "description": "The minimum date that can be selected.",
30241
- "attribute": "min-date",
30242
- "inheritedFrom": {
30243
- "name": "CalendarViewElementBase",
30244
- "module": "src/calendar/CalendarViewElementBase.ts"
30245
- }
30246
- },
30247
- {
30248
- "kind": "field",
30249
- "name": "maxDate",
30250
- "type": {
30251
- "text": "Date | null"
30252
- },
30253
- "default": "null",
30254
- "description": "The maximum date that can be selected.",
30255
- "attribute": "max-date",
30256
- "inheritedFrom": {
30257
- "name": "CalendarViewElementBase",
30258
- "module": "src/calendar/CalendarViewElementBase.ts"
30259
- }
30260
- },
30261
- {
30262
- "kind": "method",
30263
- "name": "focusActiveCell",
30264
- "return": {
30265
- "type": {
30266
- "text": "Promise<void>"
30267
- }
30268
- },
30269
- "description": "Asynchronously focuses the active date.",
30270
- "inheritedFrom": {
30271
- "name": "CalendarViewElementBase",
30272
- "module": "src/calendar/CalendarViewElementBase.ts"
30273
- }
30274
- }
30275
- ],
30276
- "events": [
30277
- {
30278
- "name": "change",
30279
- "type": {
30280
- "text": "Event"
30281
- }
30282
- },
30283
- {
30284
- "name": "active-change",
30285
- "type": {
30286
- "text": "Event"
30287
- },
30288
- "inheritedFrom": {
30289
- "name": "CalendarViewElementBase",
30290
- "module": "src/calendar/CalendarViewElementBase.ts"
30291
- }
30292
- }
30293
- ],
30294
- "superclass": {
30295
- "name": "CalendarViewElementBase",
30296
- "module": "/src/calendar/CalendarViewElementBase"
30297
- },
30298
- "tagName": "m3e-multi-year-view",
30299
- "customElement": true,
30300
- "attributes": [
30301
- {
30302
- "name": "today",
30303
- "type": {
30304
- "text": "Date"
30305
- },
30306
- "default": "new Date()",
30307
- "description": "Today's date.",
30308
- "fieldName": "today",
30309
- "inheritedFrom": {
30310
- "name": "CalendarViewElementBase",
30311
- "module": "src/calendar/CalendarViewElementBase.ts"
30312
- }
30313
- },
30314
- {
30315
- "name": "date",
30316
- "type": {
30317
- "text": "Date | null"
30318
- },
30319
- "default": "null",
30320
- "description": "The selected date.",
30321
- "fieldName": "date",
30322
- "inheritedFrom": {
30323
- "name": "CalendarViewElementBase",
30324
- "module": "src/calendar/CalendarViewElementBase.ts"
30325
- }
30326
- },
30327
- {
30328
- "name": "active-date",
30329
- "type": {
30330
- "text": "Date"
30331
- },
30332
- "default": "new Date()",
30333
- "description": "The active date.",
30334
- "fieldName": "activeDate",
30335
- "inheritedFrom": {
30336
- "name": "CalendarViewElementBase",
30337
- "module": "src/calendar/CalendarViewElementBase.ts"
30338
- }
30339
- },
30340
- {
30341
- "name": "min-date",
30342
- "type": {
30343
- "text": "Date | null"
30344
- },
30345
- "default": "null",
30346
- "description": "The minimum date that can be selected.",
30347
- "fieldName": "minDate",
30348
- "inheritedFrom": {
30349
- "name": "CalendarViewElementBase",
30350
- "module": "src/calendar/CalendarViewElementBase.ts"
30351
- }
30352
- },
30353
- {
30354
- "name": "max-date",
30355
- "type": {
30356
- "text": "Date | null"
30357
- },
30358
- "default": "null",
30359
- "description": "The maximum date that can be selected.",
30360
- "fieldName": "maxDate",
30361
- "inheritedFrom": {
30362
- "name": "CalendarViewElementBase",
30363
- "module": "src/calendar/CalendarViewElementBase.ts"
30364
- }
30365
- }
30366
- ]
30367
- }
30368
- ],
30369
- "exports": [
30370
- {
30371
- "kind": "custom-element-definition",
30372
- "name": "m3e-multi-year-view",
30373
- "declaration": {
30374
- "name": "M3eMultiYearViewElement",
30375
- "module": "src/calendar/MultiYearViewElement.ts"
30376
- }
30377
- }
30378
- ]
30379
- },
30380
- {
30381
- "kind": "javascript-module",
30382
- "path": "src/calendar/YearViewElement.ts",
30383
- "declarations": [
30384
- {
30385
- "kind": "class",
30386
- "description": "An internal component used to display a single year in a calendar.",
30387
- "name": "M3eYearViewElement",
30388
- "members": [
30389
- {
30390
- "kind": "method",
30391
- "name": "#renderItem",
30392
- "privacy": "private",
30393
- "return": {
30394
- "type": {
30395
- "text": "unknown"
30396
- }
30397
- },
30398
- "parameters": [
30399
- {
30400
- "name": "month",
30401
- "type": {
30402
- "text": "{ date: Date; long: string; narrow: string }"
30403
- }
30404
- }
30405
- ]
30406
- },
30407
- {
30408
- "kind": "method",
30409
- "name": "#handleItemClick",
30410
- "privacy": "private",
30411
- "return": {
30412
- "type": {
30413
- "text": "void"
30414
- }
30415
- },
30416
- "parameters": [
30417
- {
30418
- "name": "e",
30419
- "type": {
30420
- "text": "Event"
30421
- }
30422
- }
30423
- ]
30424
- },
30425
- {
30426
- "kind": "method",
30427
- "name": "#handleItemKeyDown",
30428
- "privacy": "private",
30429
- "return": {
30430
- "type": {
30431
- "text": "void"
30432
- }
30433
- },
30434
- "parameters": [
30435
- {
30436
- "name": "e",
30437
- "type": {
30438
- "text": "KeyboardEvent"
30439
- }
30440
- }
30441
- ]
30442
- },
30443
- {
30444
- "kind": "field",
30445
- "name": "_activeItem",
30446
- "type": {
30447
- "text": "HTMLElement | undefined"
30806
+ "text": "boolean"
30448
30807
  },
30449
- "privacy": "private",
30450
- "readonly": true,
30808
+ "default": "false",
30809
+ "description": "Whether the view is active.",
30810
+ "attribute": "active",
30811
+ "inheritedFrom": {
30812
+ "name": "CalendarViewElementBase",
30813
+ "module": "src/calendar/CalendarViewElementBase.ts"
30814
+ }
30815
+ },
30816
+ {
30817
+ "kind": "field",
30818
+ "name": "today",
30819
+ "type": {
30820
+ "text": "Date"
30821
+ },
30822
+ "default": "new Date()",
30823
+ "description": "Today's date.",
30824
+ "attribute": "today",
30825
+ "inheritedFrom": {
30826
+ "name": "CalendarViewElementBase",
30827
+ "module": "src/calendar/CalendarViewElementBase.ts"
30828
+ }
30829
+ },
30830
+ {
30831
+ "kind": "field",
30832
+ "name": "date",
30833
+ "type": {
30834
+ "text": "Date | null"
30835
+ },
30836
+ "default": "null",
30837
+ "description": "The selected date.",
30838
+ "attribute": "date",
30839
+ "inheritedFrom": {
30840
+ "name": "CalendarViewElementBase",
30841
+ "module": "src/calendar/CalendarViewElementBase.ts"
30842
+ }
30843
+ },
30844
+ {
30845
+ "kind": "field",
30846
+ "name": "activeDate",
30847
+ "type": {
30848
+ "text": "Date"
30849
+ },
30850
+ "default": "new Date()",
30851
+ "description": "The active date.",
30852
+ "attribute": "active-date",
30853
+ "inheritedFrom": {
30854
+ "name": "CalendarViewElementBase",
30855
+ "module": "src/calendar/CalendarViewElementBase.ts"
30856
+ }
30857
+ },
30858
+ {
30859
+ "kind": "field",
30860
+ "name": "minDate",
30861
+ "type": {
30862
+ "text": "Date | null"
30863
+ },
30864
+ "default": "null",
30865
+ "description": "The minimum date that can be selected.",
30866
+ "attribute": "min-date",
30867
+ "inheritedFrom": {
30868
+ "name": "CalendarViewElementBase",
30869
+ "module": "src/calendar/CalendarViewElementBase.ts"
30870
+ }
30871
+ },
30872
+ {
30873
+ "kind": "field",
30874
+ "name": "maxDate",
30875
+ "type": {
30876
+ "text": "Date | null"
30877
+ },
30878
+ "default": "null",
30879
+ "description": "The maximum date that can be selected.",
30880
+ "attribute": "max-date",
30881
+ "inheritedFrom": {
30882
+ "name": "CalendarViewElementBase",
30883
+ "module": "src/calendar/CalendarViewElementBase.ts"
30884
+ }
30885
+ },
30886
+ {
30887
+ "kind": "method",
30888
+ "name": "focusActiveCell",
30889
+ "return": {
30890
+ "type": {
30891
+ "text": "Promise<void>"
30892
+ }
30893
+ },
30894
+ "description": "Asynchronously focuses the active date.",
30895
+ "inheritedFrom": {
30896
+ "name": "CalendarViewElementBase",
30897
+ "module": "src/calendar/CalendarViewElementBase.ts"
30898
+ }
30899
+ }
30900
+ ],
30901
+ "events": [
30902
+ {
30903
+ "name": "change",
30904
+ "type": {
30905
+ "text": "Event"
30906
+ }
30907
+ },
30908
+ {
30909
+ "name": "active-change",
30910
+ "type": {
30911
+ "text": "Event"
30912
+ },
30913
+ "inheritedFrom": {
30914
+ "name": "CalendarViewElementBase",
30915
+ "module": "src/calendar/CalendarViewElementBase.ts"
30916
+ }
30917
+ }
30918
+ ],
30919
+ "superclass": {
30920
+ "name": "CalendarViewElementBase",
30921
+ "module": "/src/calendar/CalendarViewElementBase"
30922
+ },
30923
+ "tagName": "m3e-multi-year-view",
30924
+ "customElement": true,
30925
+ "attributes": [
30926
+ {
30927
+ "name": "active",
30928
+ "type": {
30929
+ "text": "boolean"
30930
+ },
30931
+ "default": "false",
30932
+ "description": "Whether the view is active.",
30933
+ "fieldName": "active",
30934
+ "inheritedFrom": {
30935
+ "name": "CalendarViewElementBase",
30936
+ "module": "src/calendar/CalendarViewElementBase.ts"
30937
+ }
30938
+ },
30939
+ {
30940
+ "name": "today",
30941
+ "type": {
30942
+ "text": "Date"
30943
+ },
30944
+ "default": "new Date()",
30945
+ "description": "Today's date.",
30946
+ "fieldName": "today",
30947
+ "inheritedFrom": {
30948
+ "name": "CalendarViewElementBase",
30949
+ "module": "src/calendar/CalendarViewElementBase.ts"
30950
+ }
30951
+ },
30952
+ {
30953
+ "name": "date",
30954
+ "type": {
30955
+ "text": "Date | null"
30956
+ },
30957
+ "default": "null",
30958
+ "description": "The selected date.",
30959
+ "fieldName": "date",
30960
+ "inheritedFrom": {
30961
+ "name": "CalendarViewElementBase",
30962
+ "module": "src/calendar/CalendarViewElementBase.ts"
30963
+ }
30964
+ },
30965
+ {
30966
+ "name": "active-date",
30967
+ "type": {
30968
+ "text": "Date"
30969
+ },
30970
+ "default": "new Date()",
30971
+ "description": "The active date.",
30972
+ "fieldName": "activeDate",
30973
+ "inheritedFrom": {
30974
+ "name": "CalendarViewElementBase",
30975
+ "module": "src/calendar/CalendarViewElementBase.ts"
30976
+ }
30977
+ },
30978
+ {
30979
+ "name": "min-date",
30980
+ "type": {
30981
+ "text": "Date | null"
30982
+ },
30983
+ "default": "null",
30984
+ "description": "The minimum date that can be selected.",
30985
+ "fieldName": "minDate",
30986
+ "inheritedFrom": {
30987
+ "name": "CalendarViewElementBase",
30988
+ "module": "src/calendar/CalendarViewElementBase.ts"
30989
+ }
30990
+ },
30991
+ {
30992
+ "name": "max-date",
30993
+ "type": {
30994
+ "text": "Date | null"
30995
+ },
30996
+ "default": "null",
30997
+ "description": "The maximum date that can be selected.",
30998
+ "fieldName": "maxDate",
30999
+ "inheritedFrom": {
31000
+ "name": "CalendarViewElementBase",
31001
+ "module": "src/calendar/CalendarViewElementBase.ts"
31002
+ }
31003
+ }
31004
+ ]
31005
+ }
31006
+ ],
31007
+ "exports": [
31008
+ {
31009
+ "kind": "custom-element-definition",
31010
+ "name": "m3e-multi-year-view",
31011
+ "declaration": {
31012
+ "name": "M3eMultiYearViewElement",
31013
+ "module": "src/calendar/MultiYearViewElement.ts"
31014
+ }
31015
+ }
31016
+ ]
31017
+ },
31018
+ {
31019
+ "kind": "javascript-module",
31020
+ "path": "src/calendar/YearViewElement.ts",
31021
+ "declarations": [
31022
+ {
31023
+ "kind": "class",
31024
+ "description": "An internal component used to display a single year in a calendar.",
31025
+ "name": "M3eYearViewElement",
31026
+ "members": [
31027
+ {
31028
+ "kind": "method",
31029
+ "name": "#renderItem",
31030
+ "privacy": "private",
31031
+ "return": {
31032
+ "type": {
31033
+ "text": "unknown"
31034
+ }
31035
+ },
31036
+ "parameters": [
31037
+ {
31038
+ "name": "month",
31039
+ "type": {
31040
+ "text": "{ date: Date; long: string; narrow: string }"
31041
+ }
31042
+ }
31043
+ ]
31044
+ },
31045
+ {
31046
+ "kind": "method",
31047
+ "name": "#handleItemClick",
31048
+ "privacy": "private",
31049
+ "return": {
31050
+ "type": {
31051
+ "text": "void"
31052
+ }
31053
+ },
31054
+ "parameters": [
31055
+ {
31056
+ "name": "e",
31057
+ "type": {
31058
+ "text": "Event"
31059
+ }
31060
+ }
31061
+ ]
31062
+ },
31063
+ {
31064
+ "kind": "method",
31065
+ "name": "#handleItemKeyDown",
31066
+ "privacy": "private",
31067
+ "return": {
31068
+ "type": {
31069
+ "text": "void"
31070
+ }
31071
+ },
31072
+ "parameters": [
31073
+ {
31074
+ "name": "e",
31075
+ "type": {
31076
+ "text": "KeyboardEvent"
31077
+ }
31078
+ }
31079
+ ]
31080
+ },
31081
+ {
31082
+ "kind": "field",
31083
+ "name": "_activeItem",
31084
+ "type": {
31085
+ "text": "HTMLElement | undefined"
31086
+ },
31087
+ "privacy": "private",
31088
+ "readonly": true,
31089
+ "inheritedFrom": {
31090
+ "name": "CalendarViewElementBase",
31091
+ "module": "src/calendar/CalendarViewElementBase.ts"
31092
+ }
31093
+ },
31094
+ {
31095
+ "kind": "field",
31096
+ "name": "active",
31097
+ "type": {
31098
+ "text": "boolean"
31099
+ },
31100
+ "default": "false",
31101
+ "description": "Whether the view is active.",
31102
+ "attribute": "active",
30451
31103
  "inheritedFrom": {
30452
31104
  "name": "CalendarViewElementBase",
30453
31105
  "module": "src/calendar/CalendarViewElementBase.ts"
@@ -30563,6 +31215,19 @@
30563
31215
  "tagName": "m3e-year-view",
30564
31216
  "customElement": true,
30565
31217
  "attributes": [
31218
+ {
31219
+ "name": "active",
31220
+ "type": {
31221
+ "text": "boolean"
31222
+ },
31223
+ "default": "false",
31224
+ "description": "Whether the view is active.",
31225
+ "fieldName": "active",
31226
+ "inheritedFrom": {
31227
+ "name": "CalendarViewElementBase",
31228
+ "module": "src/calendar/CalendarViewElementBase.ts"
31229
+ }
31230
+ },
30566
31231
  {
30567
31232
  "name": "today",
30568
31233
  "type": {
@@ -31054,6 +31719,16 @@
31054
31719
  },
31055
31720
  "description": "Updates today's date."
31056
31721
  },
31722
+ {
31723
+ "kind": "method",
31724
+ "name": "resetActiveView",
31725
+ "return": {
31726
+ "type": {
31727
+ "text": "void"
31728
+ }
31729
+ },
31730
+ "description": "Resets the active view."
31731
+ },
31057
31732
  {
31058
31733
  "kind": "method",
31059
31734
  "name": "movePreviousPeriod",
@@ -39378,6 +40053,24 @@
39378
40053
  }
39379
40054
  ],
39380
40055
  "members": [
40056
+ {
40057
+ "kind": "field",
40058
+ "name": "#closeTimeout",
40059
+ "privacy": "private",
40060
+ "type": {
40061
+ "text": "number"
40062
+ },
40063
+ "default": "-1"
40064
+ },
40065
+ {
40066
+ "kind": "field",
40067
+ "name": "_open",
40068
+ "type": {
40069
+ "text": "boolean"
40070
+ },
40071
+ "privacy": "private",
40072
+ "default": "false"
40073
+ },
39381
40074
  {
39382
40075
  "kind": "field",
39383
40076
  "name": "_date",
@@ -39451,6 +40144,17 @@
39451
40144
  "text": "() => void | undefined"
39452
40145
  }
39453
40146
  },
40147
+ {
40148
+ "kind": "field",
40149
+ "name": "#anchorLastPosition",
40150
+ "privacy": "private",
40151
+ "type": {
40152
+ "text": "{ x: number; y: number; dir: Direction } | undefined"
40153
+ },
40154
+ "parsedType": {
40155
+ "text": "{ x: number; y: number; dir: 'ltr' | 'rtl' } | undefined"
40156
+ }
40157
+ },
39454
40158
  {
39455
40159
  "kind": "field",
39456
40160
  "name": "#scrollLockController",
@@ -39820,6 +40524,26 @@
39820
40524
  }
39821
40525
  }
39822
40526
  },
40527
+ {
40528
+ "kind": "method",
40529
+ "name": "#renderCalendar",
40530
+ "privacy": "private",
40531
+ "return": {
40532
+ "type": {
40533
+ "text": "unknown"
40534
+ }
40535
+ }
40536
+ },
40537
+ {
40538
+ "kind": "method",
40539
+ "name": "#renderActions",
40540
+ "privacy": "private",
40541
+ "return": {
40542
+ "type": {
40543
+ "text": "unknown"
40544
+ }
40545
+ }
40546
+ },
39823
40547
  {
39824
40548
  "kind": "method",
39825
40549
  "name": "#handleDocumentClick",
@@ -39846,7 +40570,15 @@
39846
40570
  "type": {
39847
40571
  "text": "void"
39848
40572
  }
39849
- }
40573
+ },
40574
+ "parameters": [
40575
+ {
40576
+ "name": "e",
40577
+ "type": {
40578
+ "text": "Event"
40579
+ }
40580
+ }
40581
+ ]
39850
40582
  },
39851
40583
  {
39852
40584
  "kind": "method",
@@ -45309,203 +46041,187 @@
45309
46041
  },
45310
46042
  {
45311
46043
  "kind": "javascript-module",
45312
- "path": "src/fab-menu/FabMenuItemElement.ts",
46044
+ "path": "src/fab-menu/FabMenuElement.ts",
45313
46045
  "declarations": [
45314
46046
  {
45315
46047
  "kind": "class",
45316
- "description": "An item of a floating action button (FAB) menu.",
45317
- "name": "M3eFabMenuItemElement",
46048
+ "description": "A menu, opened from a floating action button (FAB), used to display multiple related actions.",
46049
+ "name": "M3eFabMenuElement",
45318
46050
  "cssProperties": [
45319
46051
  {
45320
- "description": "Height of the menu item.",
45321
- "name": "--m3e-fab-menu-item-height"
46052
+ "description": "Vertical gap between menu items.",
46053
+ "name": "--m3e-fab-menu-spacing"
45322
46054
  },
45323
46055
  {
45324
- "description": "Font size of the menu item label.",
45325
- "name": "--m3e-fab-menu-item-font-size"
46056
+ "description": "Maximum width of the menu.",
46057
+ "name": "--m3e-fab-menu-max-width"
45326
46058
  },
45327
46059
  {
45328
- "description": "Font weight of the menu item label.",
45329
- "name": "--m3e-fab-menu-item-font-weight"
46060
+ "description": "Foreground color for primary variant items.",
46061
+ "name": "--m3e-primary-fab-color"
45330
46062
  },
45331
46063
  {
45332
- "description": "Line height of the menu item label.",
45333
- "name": "--m3e-fab-menu-item-line-height"
46064
+ "description": "Container color for primary variant items.",
46065
+ "name": "--m3e-primary-fab-container-color"
45334
46066
  },
45335
46067
  {
45336
- "description": "Letter spacing of the menu item label.",
45337
- "name": "--m3e-fab-menu-item-tracking"
46068
+ "description": "Hover background color for primary variant items.",
46069
+ "name": "--m3e-primary-fab-hover-color"
45338
46070
  },
45339
46071
  {
45340
- "description": "Border radius of the menu item.",
45341
- "name": "--m3e-fab-menu-item-shape"
46072
+ "description": "Focus background color for primary variant items.",
46073
+ "name": "--m3e-primary-fab-focus-color"
45342
46074
  },
45343
46075
  {
45344
- "description": "Padding at the start of the menu item.",
45345
- "name": "--m3e-fab-menu-item-leading-space"
46076
+ "description": "Ripple color for primary variant items.",
46077
+ "name": "--m3e-primary-fab-ripple-color"
45346
46078
  },
45347
46079
  {
45348
- "description": "Padding at the end of the menu item.",
45349
- "name": "--m3e-fab-menu-item-trailing-space"
46080
+ "description": "Foreground color for secondary variant items.",
46081
+ "name": "--m3e-secondary-fab-color"
45350
46082
  },
45351
46083
  {
45352
- "description": "Gap between icon and label.",
45353
- "name": "--m3e-fab-menu-item-spacing"
46084
+ "description": "Container color for secondary variant items.",
46085
+ "name": "--m3e-secondary-fab-container-color"
45354
46086
  },
45355
46087
  {
45356
- "description": "Size of the icon in the menu item.",
45357
- "name": "--m3e-fab-menu-item-icon-size"
46088
+ "description": "Hover background color for secondary variant items.",
46089
+ "name": "--m3e-secondary-fab-hover-color"
46090
+ },
46091
+ {
46092
+ "description": "Focus background color for secondary variant items.",
46093
+ "name": "--m3e-secondary-fab-focus-color"
46094
+ },
46095
+ {
46096
+ "description": "Ripple color for secondary variant items.",
46097
+ "name": "--m3e-secondary-fab-ripple-color"
46098
+ },
46099
+ {
46100
+ "description": "Foreground color for tertiary variant items.",
46101
+ "name": "--m3e-tertiary-fab-color"
46102
+ },
46103
+ {
46104
+ "description": "Container color for tertiary variant items.",
46105
+ "name": "--m3e-tertiary-fab-container-color"
46106
+ },
46107
+ {
46108
+ "description": "Hover background color for tertiary variant items.",
46109
+ "name": "--m3e-tertiary-fab-hover-color"
46110
+ },
46111
+ {
46112
+ "description": "Focus background color for tertiary variant items.",
46113
+ "name": "--m3e-tertiary-fab-focus-color"
46114
+ },
46115
+ {
46116
+ "description": "Ripple color for tertiary variant items.",
46117
+ "name": "--m3e-tertiary-fab-ripple-color"
45358
46118
  }
45359
46119
  ],
45360
46120
  "slots": [
45361
46121
  {
45362
- "description": "Renders the label of the item.",
46122
+ "description": "Renders the contents of the menu.",
45363
46123
  "name": ""
45364
- },
45365
- {
45366
- "description": "Renders an icon before the items's label.",
45367
- "name": "icon"
45368
46124
  }
45369
46125
  ],
45370
46126
  "members": [
45371
46127
  {
45372
46128
  "kind": "field",
45373
- "name": "_elevation",
45374
- "type": {
45375
- "text": "M3eElevationElement | undefined"
45376
- },
46129
+ "name": "#fabTabIndex",
45377
46130
  "privacy": "private",
45378
- "readonly": true
46131
+ "type": {
46132
+ "text": "number | undefined"
46133
+ }
45379
46134
  },
45380
46135
  {
45381
46136
  "kind": "field",
45382
- "name": "_focusRing",
45383
- "type": {
45384
- "text": "M3eFocusRingElement | undefined"
45385
- },
46137
+ "name": "#trigger",
45386
46138
  "privacy": "private",
45387
- "readonly": true
46139
+ "type": {
46140
+ "text": "HTMLElement | undefined"
46141
+ }
45388
46142
  },
45389
46143
  {
45390
46144
  "kind": "field",
45391
- "name": "_stateLayer",
45392
- "type": {
45393
- "text": "M3eStateLayerElement | undefined"
45394
- },
46145
+ "name": "#anchoringCleanup",
45395
46146
  "privacy": "private",
45396
- "readonly": true
46147
+ "type": {
46148
+ "text": "() => void | undefined"
46149
+ }
45397
46150
  },
45398
46151
  {
45399
46152
  "kind": "field",
45400
- "name": "_ripple",
45401
- "type": {
45402
- "text": "M3eRippleElement | undefined"
45403
- },
46153
+ "name": "#listManager",
45404
46154
  "privacy": "private",
45405
46155
  "readonly": true
45406
46156
  },
45407
46157
  {
45408
46158
  "kind": "field",
45409
- "name": "#clickHandler",
46159
+ "name": "#keyDownHandler",
45410
46160
  "privacy": "private",
45411
46161
  "readonly": true
45412
46162
  },
45413
46163
  {
45414
46164
  "kind": "field",
45415
- "name": "menu",
45416
- "type": {
45417
- "text": "M3eFabMenuElement | null"
45418
- },
45419
- "description": "The floating action button (FAB) menu to which this item belongs.",
45420
- "readonly": true
45421
- },
45422
- {
45423
- "kind": "method",
45424
- "name": "#handleClick",
46165
+ "name": "#scrollController",
45425
46166
  "privacy": "private",
45426
- "return": {
45427
- "type": {
45428
- "text": "void"
45429
- }
45430
- },
45431
- "parameters": [
45432
- {
45433
- "name": "e",
45434
- "type": {
45435
- "text": "Event"
45436
- }
45437
- }
45438
- ]
46167
+ "readonly": true,
46168
+ "default": "new ScrollController(this, { target: null, callback: () => this.hide() })"
45439
46169
  },
45440
46170
  {
45441
46171
  "kind": "field",
45442
- "name": "#keyPressed",
46172
+ "name": "#clickOutsideController",
45443
46173
  "privacy": "private",
45444
- "type": {
45445
- "text": "boolean"
45446
- },
45447
- "default": "false",
45448
- "inheritedFrom": {
45449
- "name": "KeyboardClick",
45450
- "module": "src/core/shared/mixins/KeyboardClick.ts"
45451
- }
46174
+ "readonly": true,
46175
+ "default": "new ClickOutsideController(this, { target: null, callback: () => this.hide(), })"
45452
46176
  },
45453
46177
  {
45454
46178
  "kind": "field",
45455
- "name": "#keyDownHandler",
46179
+ "name": "#toggleHandler",
45456
46180
  "privacy": "private",
45457
- "readonly": true,
45458
- "inheritedFrom": {
45459
- "name": "KeyboardClick",
45460
- "module": "src/core/shared/mixins/KeyboardClick.ts"
45461
- }
46181
+ "readonly": true
45462
46182
  },
45463
46183
  {
45464
46184
  "kind": "field",
45465
- "name": "#keyUpHandler",
45466
- "privacy": "private",
45467
- "readonly": true,
45468
- "inheritedFrom": {
45469
- "name": "KeyboardClick",
45470
- "module": "src/core/shared/mixins/KeyboardClick.ts"
46185
+ "name": "variant",
46186
+ "type": {
46187
+ "text": "FabMenuVariant"
46188
+ },
46189
+ "default": "\"primary\"",
46190
+ "description": "The appearance variant of the menu.",
46191
+ "attribute": "variant",
46192
+ "reflects": true,
46193
+ "parsedType": {
46194
+ "text": "'primary' | 'secondary' | 'tertiary'"
45471
46195
  }
45472
46196
  },
45473
46197
  {
45474
46198
  "kind": "field",
45475
- "name": "#focusOutHandler",
45476
- "privacy": "private",
45477
- "readonly": true,
45478
- "inheritedFrom": {
45479
- "name": "KeyboardClick",
45480
- "module": "src/core/shared/mixins/KeyboardClick.ts"
45481
- }
46199
+ "name": "isOpen",
46200
+ "description": "Whether the menu is open.",
46201
+ "readonly": true
45482
46202
  },
45483
46203
  {
45484
46204
  "kind": "method",
45485
- "name": "#handleKeyDown",
45486
- "privacy": "private",
46205
+ "name": "show",
45487
46206
  "return": {
45488
46207
  "type": {
45489
- "text": "void"
46208
+ "text": "Promise<void>"
45490
46209
  }
45491
46210
  },
45492
46211
  "parameters": [
45493
46212
  {
45494
- "name": "e",
46213
+ "name": "trigger",
45495
46214
  "type": {
45496
- "text": "KeyboardEvent"
45497
- }
46215
+ "text": "HTMLElement"
46216
+ },
46217
+ "description": "The element that triggered the menu."
45498
46218
  }
45499
46219
  ],
45500
- "inheritedFrom": {
45501
- "name": "KeyboardClick",
45502
- "module": "src/core/shared/mixins/KeyboardClick.ts"
45503
- }
46220
+ "description": "Opens the menu."
45504
46221
  },
45505
46222
  {
45506
46223
  "kind": "method",
45507
- "name": "#handleKeyUp",
45508
- "privacy": "private",
46224
+ "name": "hide",
45509
46225
  "return": {
45510
46226
  "type": {
45511
46227
  "text": "void"
@@ -45513,129 +46229,49 @@
45513
46229
  },
45514
46230
  "parameters": [
45515
46231
  {
45516
- "name": "e",
46232
+ "name": "restoreFocus",
46233
+ "default": "false",
45517
46234
  "type": {
45518
- "text": "KeyboardEvent"
45519
- }
46235
+ "text": "boolean"
46236
+ },
46237
+ "description": "A value indicating whether to restore focus to the menu's trigger.",
46238
+ "optional": true
45520
46239
  }
45521
46240
  ],
45522
- "inheritedFrom": {
45523
- "name": "KeyboardClick",
45524
- "module": "src/core/shared/mixins/KeyboardClick.ts"
45525
- }
45526
- },
45527
- {
45528
- "kind": "field",
45529
- "name": "[_clickHandler]",
45530
- "privacy": "private",
45531
- "inheritedFrom": {
45532
- "name": "LinkButton",
45533
- "module": "src/core/shared/mixins/LinkButton.ts"
45534
- }
45535
- },
45536
- {
45537
- "kind": "field",
45538
- "name": "href",
45539
- "type": {
45540
- "text": "string"
45541
- },
45542
- "default": "\"\"",
45543
- "description": "The URL to which the link button points.",
45544
- "attribute": "href",
45545
- "inheritedFrom": {
45546
- "name": "LinkButton",
45547
- "module": "src/core/shared/mixins/LinkButton.ts"
45548
- }
45549
- },
45550
- {
45551
- "kind": "field",
45552
- "name": "target",
45553
- "type": {
45554
- "text": "LinkTarget"
45555
- },
45556
- "default": "\"\"",
45557
- "description": "The target of the link button.",
45558
- "attribute": "target",
45559
- "inheritedFrom": {
45560
- "name": "LinkButton",
45561
- "module": "src/core/shared/mixins/LinkButton.ts"
45562
- }
45563
- },
45564
- {
45565
- "kind": "field",
45566
- "name": "rel",
45567
- "type": {
45568
- "text": "string"
45569
- },
45570
- "default": "\"\"",
45571
- "description": "The relationship between the `target` of the link button and the document.",
45572
- "attribute": "rel",
45573
- "inheritedFrom": {
45574
- "name": "LinkButton",
45575
- "module": "src/core/shared/mixins/LinkButton.ts"
45576
- }
45577
- },
45578
- {
45579
- "kind": "field",
45580
- "name": "download",
45581
- "type": {
45582
- "text": "string | null"
45583
- },
45584
- "description": "A value indicating whether the `target` of the link button will be downloaded,\r\noptionally specifying the new name of the file.",
45585
- "default": "null",
45586
- "attribute": "download",
45587
- "inheritedFrom": {
45588
- "name": "LinkButton",
45589
- "module": "src/core/shared/mixins/LinkButton.ts"
45590
- }
46241
+ "description": "Hides the menu."
45591
46242
  },
45592
46243
  {
45593
46244
  "kind": "method",
45594
- "name": "#handleLinkPointerDown",
45595
- "privacy": "private",
46245
+ "name": "toggle",
45596
46246
  "return": {
45597
46247
  "type": {
45598
- "text": "void"
46248
+ "text": "Promise<void>"
45599
46249
  }
45600
46250
  },
45601
46251
  "parameters": [
45602
46252
  {
45603
- "name": "e",
46253
+ "name": "trigger",
45604
46254
  "type": {
45605
- "text": "PointerEvent"
45606
- }
46255
+ "text": "HTMLElement"
46256
+ },
46257
+ "description": "The element that triggered the menu."
45607
46258
  }
45608
46259
  ],
45609
- "inheritedFrom": {
45610
- "name": "LinkButton",
45611
- "module": "src/core/shared/mixins/LinkButton.ts"
45612
- }
46260
+ "description": "Toggles the menu."
45613
46261
  },
45614
46262
  {
45615
46263
  "kind": "method",
45616
- "name": "#handleLinkFocus",
46264
+ "name": "#handleSlotChange",
45617
46265
  "privacy": "private",
45618
46266
  "return": {
45619
46267
  "type": {
45620
46268
  "text": "void"
45621
46269
  }
45622
- },
45623
- "parameters": [
45624
- {
45625
- "name": "e",
45626
- "type": {
45627
- "text": "Event"
45628
- }
45629
- }
45630
- ],
45631
- "inheritedFrom": {
45632
- "name": "LinkButton",
45633
- "module": "src/core/shared/mixins/LinkButton.ts"
45634
46270
  }
45635
46271
  },
45636
46272
  {
45637
46273
  "kind": "method",
45638
- "name": "#handleLinkBlur",
46274
+ "name": "#handleKeyDown",
45639
46275
  "privacy": "private",
45640
46276
  "return": {
45641
46277
  "type": {
@@ -45646,27 +46282,29 @@
45646
46282
  {
45647
46283
  "name": "e",
45648
46284
  "type": {
45649
- "text": "Event"
46285
+ "text": "KeyboardEvent"
45650
46286
  }
45651
46287
  }
45652
- ],
45653
- "inheritedFrom": {
45654
- "name": "LinkButton",
45655
- "module": "src/core/shared/mixins/LinkButton.ts"
46288
+ ]
46289
+ },
46290
+ {
46291
+ "kind": "method",
46292
+ "name": "#attachFab",
46293
+ "privacy": "private",
46294
+ "return": {
46295
+ "type": {
46296
+ "text": "void"
46297
+ }
45656
46298
  }
45657
46299
  },
45658
46300
  {
45659
- "kind": "field",
45660
- "name": "disabled",
45661
- "type": {
45662
- "text": "boolean"
45663
- },
45664
- "default": "false",
45665
- "description": "Whether the element is disabled.",
45666
- "attribute": "disabled",
45667
- "inheritedFrom": {
45668
- "name": "Disabled",
45669
- "module": "src/core/shared/mixins/Disabled.ts"
46301
+ "kind": "method",
46302
+ "name": "#detachFab",
46303
+ "privacy": "private",
46304
+ "return": {
46305
+ "type": {
46306
+ "text": "void"
46307
+ }
45670
46308
  }
45671
46309
  },
45672
46310
  {
@@ -45706,95 +46344,31 @@
45706
46344
  ],
45707
46345
  "events": [
45708
46346
  {
45709
- "name": "click",
45710
- "type": {
45711
- "text": "MouseEvent"
45712
- },
45713
- "description": "Dispatched when the element is clicked.",
45714
- "inheritedFrom": {
45715
- "name": "KeyboardClick",
45716
- "module": "src/core/shared/mixins/KeyboardClick.ts"
45717
- }
46347
+ "description": "Dispatched before the toggle state changes.",
46348
+ "name": "beforetoggle"
46349
+ },
46350
+ {
46351
+ "description": "Dispatched after the toggle state has changed.",
46352
+ "name": "toggle"
45718
46353
  }
45719
46354
  ],
45720
46355
  "attributes": [
45721
46356
  {
45722
- "name": "disabled",
45723
- "type": {
45724
- "text": "boolean"
45725
- },
45726
- "default": "false",
45727
- "description": "Whether the element is disabled.",
45728
- "fieldName": "disabled",
45729
- "inheritedFrom": {
45730
- "name": "Disabled",
45731
- "module": "src/core/shared/mixins/Disabled.ts"
45732
- }
45733
- },
45734
- {
45735
- "name": "download",
45736
- "type": {
45737
- "text": "string | null"
45738
- },
45739
- "description": "A value indicating whether the `target` of the link button will be downloaded, optionally specifying the new name of the file.",
45740
- "default": "null",
45741
- "fieldName": "download",
45742
- "inheritedFrom": {
45743
- "name": "LinkButton",
45744
- "module": "src/core/shared/mixins/LinkButton.ts"
45745
- }
45746
- },
45747
- {
45748
- "name": "href",
45749
- "type": {
45750
- "text": "string"
45751
- },
45752
- "default": "\"\"",
45753
- "description": "The URL to which the link button points.",
45754
- "fieldName": "href",
45755
- "inheritedFrom": {
45756
- "name": "LinkButton",
45757
- "module": "src/core/shared/mixins/LinkButton.ts"
45758
- }
45759
- },
45760
- {
45761
- "name": "rel",
45762
- "type": {
45763
- "text": "string"
45764
- },
45765
- "default": "\"\"",
45766
- "description": "The relationship between the `target` of the link button and the document.",
45767
- "fieldName": "rel",
45768
- "inheritedFrom": {
45769
- "name": "LinkButton",
45770
- "module": "src/core/shared/mixins/LinkButton.ts"
45771
- }
45772
- },
45773
- {
45774
- "name": "target",
46357
+ "description": "The appearance variant of the menu.",
46358
+ "name": "variant",
45775
46359
  "type": {
45776
- "text": "LinkTarget"
46360
+ "text": "FabMenuVariant"
45777
46361
  },
45778
- "default": "\"\"",
45779
- "description": "The target of the link button.",
45780
- "fieldName": "target",
45781
- "inheritedFrom": {
45782
- "name": "LinkButton",
45783
- "module": "src/core/shared/mixins/LinkButton.ts"
46362
+ "default": "\"primary\"",
46363
+ "fieldName": "variant",
46364
+ "parsedType": {
46365
+ "text": "'primary' | 'secondary' | 'tertiary'"
45784
46366
  }
45785
46367
  }
45786
46368
  ],
45787
46369
  "mixins": [
45788
46370
  {
45789
- "name": "KeyboardClick",
45790
- "package": "@m3e/web/core"
45791
- },
45792
- {
45793
- "name": "LinkButton",
45794
- "package": "@m3e/web/core"
45795
- },
45796
- {
45797
- "name": "Disabled",
46371
+ "name": "SuppressInitialAnimation",
45798
46372
  "package": "@m3e/web/core"
45799
46373
  },
45800
46374
  {
@@ -45810,211 +46384,206 @@
45810
46384
  "name": "LitElement",
45811
46385
  "package": "lit"
45812
46386
  },
45813
- "tagName": "m3e-menu-item",
46387
+ "tagName": "m3e-fab-menu",
45814
46388
  "customElement": true
45815
46389
  }
45816
46390
  ],
45817
46391
  "exports": [
45818
46392
  {
45819
46393
  "kind": "js",
45820
- "name": "M3eFabMenuItemElement",
46394
+ "name": "M3eFabMenuElement",
45821
46395
  "declaration": {
45822
- "name": "M3eFabMenuItemElement",
45823
- "module": "src/fab-menu/FabMenuItemElement.ts"
46396
+ "name": "M3eFabMenuElement",
46397
+ "module": "src/fab-menu/FabMenuElement.ts"
45824
46398
  }
45825
46399
  },
45826
46400
  {
45827
46401
  "kind": "custom-element-definition",
45828
- "name": "m3e-fab-menu-item",
46402
+ "name": "m3e-fab-menu",
45829
46403
  "declaration": {
45830
- "name": "M3eFabMenuItemElement",
45831
- "module": "src/fab-menu/FabMenuItemElement.ts"
46404
+ "name": "M3eFabMenuElement",
46405
+ "module": "src/fab-menu/FabMenuElement.ts"
45832
46406
  }
45833
46407
  }
45834
46408
  ]
45835
46409
  },
45836
46410
  {
45837
46411
  "kind": "javascript-module",
45838
- "path": "src/fab-menu/FabMenuElement.ts",
46412
+ "path": "src/fab-menu/FabMenuItemElement.ts",
45839
46413
  "declarations": [
45840
46414
  {
45841
46415
  "kind": "class",
45842
- "description": "A menu, opened from a floating action button (FAB), used to display multiple related actions.",
45843
- "name": "M3eFabMenuElement",
46416
+ "description": "An item of a floating action button (FAB) menu.",
46417
+ "name": "M3eFabMenuItemElement",
45844
46418
  "cssProperties": [
45845
46419
  {
45846
- "description": "Vertical gap between menu items.",
45847
- "name": "--m3e-fab-menu-spacing"
45848
- },
45849
- {
45850
- "description": "Maximum width of the menu.",
45851
- "name": "--m3e-fab-menu-max-width"
45852
- },
45853
- {
45854
- "description": "Foreground color for primary variant items.",
45855
- "name": "--m3e-primary-fab-color"
45856
- },
45857
- {
45858
- "description": "Container color for primary variant items.",
45859
- "name": "--m3e-primary-fab-container-color"
45860
- },
45861
- {
45862
- "description": "Hover background color for primary variant items.",
45863
- "name": "--m3e-primary-fab-hover-color"
45864
- },
45865
- {
45866
- "description": "Focus background color for primary variant items.",
45867
- "name": "--m3e-primary-fab-focus-color"
45868
- },
45869
- {
45870
- "description": "Ripple color for primary variant items.",
45871
- "name": "--m3e-primary-fab-ripple-color"
45872
- },
45873
- {
45874
- "description": "Foreground color for secondary variant items.",
45875
- "name": "--m3e-secondary-fab-color"
46420
+ "description": "Height of the menu item.",
46421
+ "name": "--m3e-fab-menu-item-height"
45876
46422
  },
45877
46423
  {
45878
- "description": "Container color for secondary variant items.",
45879
- "name": "--m3e-secondary-fab-container-color"
46424
+ "description": "Font size of the menu item label.",
46425
+ "name": "--m3e-fab-menu-item-font-size"
45880
46426
  },
45881
46427
  {
45882
- "description": "Hover background color for secondary variant items.",
45883
- "name": "--m3e-secondary-fab-hover-color"
46428
+ "description": "Font weight of the menu item label.",
46429
+ "name": "--m3e-fab-menu-item-font-weight"
45884
46430
  },
45885
46431
  {
45886
- "description": "Focus background color for secondary variant items.",
45887
- "name": "--m3e-secondary-fab-focus-color"
46432
+ "description": "Line height of the menu item label.",
46433
+ "name": "--m3e-fab-menu-item-line-height"
45888
46434
  },
45889
46435
  {
45890
- "description": "Ripple color for secondary variant items.",
45891
- "name": "--m3e-secondary-fab-ripple-color"
46436
+ "description": "Letter spacing of the menu item label.",
46437
+ "name": "--m3e-fab-menu-item-tracking"
45892
46438
  },
45893
46439
  {
45894
- "description": "Foreground color for tertiary variant items.",
45895
- "name": "--m3e-tertiary-fab-color"
46440
+ "description": "Border radius of the menu item.",
46441
+ "name": "--m3e-fab-menu-item-shape"
45896
46442
  },
45897
46443
  {
45898
- "description": "Container color for tertiary variant items.",
45899
- "name": "--m3e-tertiary-fab-container-color"
46444
+ "description": "Padding at the start of the menu item.",
46445
+ "name": "--m3e-fab-menu-item-leading-space"
45900
46446
  },
45901
46447
  {
45902
- "description": "Hover background color for tertiary variant items.",
45903
- "name": "--m3e-tertiary-fab-hover-color"
46448
+ "description": "Padding at the end of the menu item.",
46449
+ "name": "--m3e-fab-menu-item-trailing-space"
45904
46450
  },
45905
46451
  {
45906
- "description": "Focus background color for tertiary variant items.",
45907
- "name": "--m3e-tertiary-fab-focus-color"
46452
+ "description": "Gap between icon and label.",
46453
+ "name": "--m3e-fab-menu-item-spacing"
45908
46454
  },
45909
46455
  {
45910
- "description": "Ripple color for tertiary variant items.",
45911
- "name": "--m3e-tertiary-fab-ripple-color"
46456
+ "description": "Size of the icon in the menu item.",
46457
+ "name": "--m3e-fab-menu-item-icon-size"
45912
46458
  }
45913
46459
  ],
45914
46460
  "slots": [
45915
46461
  {
45916
- "description": "Renders the contents of the menu.",
46462
+ "description": "Renders the label of the item.",
45917
46463
  "name": ""
46464
+ },
46465
+ {
46466
+ "description": "Renders an icon before the items's label.",
46467
+ "name": "icon"
45918
46468
  }
45919
46469
  ],
45920
46470
  "members": [
45921
46471
  {
45922
46472
  "kind": "field",
45923
- "name": "#fabTabIndex",
45924
- "privacy": "private",
46473
+ "name": "_elevation",
45925
46474
  "type": {
45926
- "text": "number | undefined"
45927
- }
45928
- },
45929
- {
45930
- "kind": "field",
45931
- "name": "#trigger",
46475
+ "text": "M3eElevationElement | undefined"
46476
+ },
45932
46477
  "privacy": "private",
45933
- "type": {
45934
- "text": "HTMLElement | undefined"
45935
- }
46478
+ "readonly": true
45936
46479
  },
45937
46480
  {
45938
46481
  "kind": "field",
45939
- "name": "#anchoringCleanup",
45940
- "privacy": "private",
46482
+ "name": "_focusRing",
45941
46483
  "type": {
45942
- "text": "() => void | undefined"
45943
- }
45944
- },
45945
- {
45946
- "kind": "field",
45947
- "name": "#listManager",
46484
+ "text": "M3eFocusRingElement | undefined"
46485
+ },
45948
46486
  "privacy": "private",
45949
46487
  "readonly": true
45950
46488
  },
45951
46489
  {
45952
46490
  "kind": "field",
45953
- "name": "#keyDownHandler",
46491
+ "name": "_stateLayer",
46492
+ "type": {
46493
+ "text": "M3eStateLayerElement | undefined"
46494
+ },
45954
46495
  "privacy": "private",
45955
46496
  "readonly": true
45956
46497
  },
45957
46498
  {
45958
46499
  "kind": "field",
45959
- "name": "#documentClickHandler",
46500
+ "name": "_ripple",
46501
+ "type": {
46502
+ "text": "M3eRippleElement | undefined"
46503
+ },
45960
46504
  "privacy": "private",
45961
46505
  "readonly": true
45962
46506
  },
45963
46507
  {
45964
46508
  "kind": "field",
45965
- "name": "#scrollController",
45966
- "privacy": "private",
45967
- "readonly": true,
45968
- "default": "new ScrollController(this, { target: null, callback: () => this.hide() })"
45969
- },
45970
- {
45971
- "kind": "field",
45972
- "name": "#toggleHandler",
46509
+ "name": "#clickHandler",
45973
46510
  "privacy": "private",
45974
46511
  "readonly": true
45975
46512
  },
45976
46513
  {
45977
46514
  "kind": "field",
45978
- "name": "variant",
46515
+ "name": "menu",
45979
46516
  "type": {
45980
- "text": "FabMenuVariant"
46517
+ "text": "M3eFabMenuElement | null"
45981
46518
  },
45982
- "default": "\"primary\"",
45983
- "description": "The appearance variant of the menu.",
45984
- "attribute": "variant",
45985
- "reflects": true,
45986
- "parsedType": {
45987
- "text": "'primary' | 'secondary' | 'tertiary'"
45988
- }
45989
- },
45990
- {
45991
- "kind": "field",
45992
- "name": "isOpen",
45993
- "description": "Whether the menu is open.",
46519
+ "description": "The floating action button (FAB) menu to which this item belongs.",
45994
46520
  "readonly": true
45995
46521
  },
45996
46522
  {
45997
46523
  "kind": "method",
45998
- "name": "show",
46524
+ "name": "#handleClick",
46525
+ "privacy": "private",
45999
46526
  "return": {
46000
46527
  "type": {
46001
- "text": "Promise<void>"
46528
+ "text": "void"
46002
46529
  }
46003
46530
  },
46004
46531
  "parameters": [
46005
46532
  {
46006
- "name": "trigger",
46533
+ "name": "e",
46007
46534
  "type": {
46008
- "text": "HTMLElement"
46009
- },
46010
- "description": "The element that triggered the menu."
46535
+ "text": "Event"
46536
+ }
46011
46537
  }
46012
- ],
46013
- "description": "Opens the menu."
46538
+ ]
46539
+ },
46540
+ {
46541
+ "kind": "field",
46542
+ "name": "#keyPressed",
46543
+ "privacy": "private",
46544
+ "type": {
46545
+ "text": "boolean"
46546
+ },
46547
+ "default": "false",
46548
+ "inheritedFrom": {
46549
+ "name": "KeyboardClick",
46550
+ "module": "src/core/shared/mixins/KeyboardClick.ts"
46551
+ }
46552
+ },
46553
+ {
46554
+ "kind": "field",
46555
+ "name": "#keyDownHandler",
46556
+ "privacy": "private",
46557
+ "readonly": true,
46558
+ "inheritedFrom": {
46559
+ "name": "KeyboardClick",
46560
+ "module": "src/core/shared/mixins/KeyboardClick.ts"
46561
+ }
46562
+ },
46563
+ {
46564
+ "kind": "field",
46565
+ "name": "#keyUpHandler",
46566
+ "privacy": "private",
46567
+ "readonly": true,
46568
+ "inheritedFrom": {
46569
+ "name": "KeyboardClick",
46570
+ "module": "src/core/shared/mixins/KeyboardClick.ts"
46571
+ }
46572
+ },
46573
+ {
46574
+ "kind": "field",
46575
+ "name": "#focusOutHandler",
46576
+ "privacy": "private",
46577
+ "readonly": true,
46578
+ "inheritedFrom": {
46579
+ "name": "KeyboardClick",
46580
+ "module": "src/core/shared/mixins/KeyboardClick.ts"
46581
+ }
46014
46582
  },
46015
46583
  {
46016
46584
  "kind": "method",
46017
- "name": "hide",
46585
+ "name": "#handleKeyDown",
46586
+ "privacy": "private",
46018
46587
  "return": {
46019
46588
  "type": {
46020
46589
  "text": "void"
@@ -46022,49 +46591,107 @@
46022
46591
  },
46023
46592
  "parameters": [
46024
46593
  {
46025
- "name": "restoreFocus",
46026
- "default": "false",
46594
+ "name": "e",
46027
46595
  "type": {
46028
- "text": "boolean"
46029
- },
46030
- "description": "A value indicating whether to restore focus to the menu's trigger.",
46031
- "optional": true
46596
+ "text": "KeyboardEvent"
46597
+ }
46032
46598
  }
46033
46599
  ],
46034
- "description": "Hides the menu."
46600
+ "inheritedFrom": {
46601
+ "name": "KeyboardClick",
46602
+ "module": "src/core/shared/mixins/KeyboardClick.ts"
46603
+ }
46035
46604
  },
46036
46605
  {
46037
46606
  "kind": "method",
46038
- "name": "toggle",
46607
+ "name": "#handleKeyUp",
46608
+ "privacy": "private",
46039
46609
  "return": {
46040
46610
  "type": {
46041
- "text": "Promise<void>"
46611
+ "text": "void"
46042
46612
  }
46043
46613
  },
46044
46614
  "parameters": [
46045
46615
  {
46046
- "name": "trigger",
46616
+ "name": "e",
46047
46617
  "type": {
46048
- "text": "HTMLElement"
46049
- },
46050
- "description": "The element that triggered the menu."
46618
+ "text": "KeyboardEvent"
46619
+ }
46051
46620
  }
46052
46621
  ],
46053
- "description": "Toggles the menu."
46622
+ "inheritedFrom": {
46623
+ "name": "KeyboardClick",
46624
+ "module": "src/core/shared/mixins/KeyboardClick.ts"
46625
+ }
46054
46626
  },
46055
46627
  {
46056
- "kind": "method",
46057
- "name": "#handleSlotChange",
46628
+ "kind": "field",
46629
+ "name": "[_clickHandler]",
46058
46630
  "privacy": "private",
46059
- "return": {
46060
- "type": {
46061
- "text": "void"
46062
- }
46631
+ "inheritedFrom": {
46632
+ "name": "LinkButton",
46633
+ "module": "src/core/shared/mixins/LinkButton.ts"
46634
+ }
46635
+ },
46636
+ {
46637
+ "kind": "field",
46638
+ "name": "href",
46639
+ "type": {
46640
+ "text": "string"
46641
+ },
46642
+ "default": "\"\"",
46643
+ "description": "The URL to which the link button points.",
46644
+ "attribute": "href",
46645
+ "inheritedFrom": {
46646
+ "name": "LinkButton",
46647
+ "module": "src/core/shared/mixins/LinkButton.ts"
46648
+ }
46649
+ },
46650
+ {
46651
+ "kind": "field",
46652
+ "name": "target",
46653
+ "type": {
46654
+ "text": "LinkTarget"
46655
+ },
46656
+ "default": "\"\"",
46657
+ "description": "The target of the link button.",
46658
+ "attribute": "target",
46659
+ "inheritedFrom": {
46660
+ "name": "LinkButton",
46661
+ "module": "src/core/shared/mixins/LinkButton.ts"
46662
+ }
46663
+ },
46664
+ {
46665
+ "kind": "field",
46666
+ "name": "rel",
46667
+ "type": {
46668
+ "text": "string"
46669
+ },
46670
+ "default": "\"\"",
46671
+ "description": "The relationship between the `target` of the link button and the document.",
46672
+ "attribute": "rel",
46673
+ "inheritedFrom": {
46674
+ "name": "LinkButton",
46675
+ "module": "src/core/shared/mixins/LinkButton.ts"
46676
+ }
46677
+ },
46678
+ {
46679
+ "kind": "field",
46680
+ "name": "download",
46681
+ "type": {
46682
+ "text": "string | null"
46683
+ },
46684
+ "description": "A value indicating whether the `target` of the link button will be downloaded,\r\noptionally specifying the new name of the file.",
46685
+ "default": "null",
46686
+ "attribute": "download",
46687
+ "inheritedFrom": {
46688
+ "name": "LinkButton",
46689
+ "module": "src/core/shared/mixins/LinkButton.ts"
46063
46690
  }
46064
46691
  },
46065
46692
  {
46066
46693
  "kind": "method",
46067
- "name": "#handleKeyDown",
46694
+ "name": "#handleLinkPointerDown",
46068
46695
  "privacy": "private",
46069
46696
  "return": {
46070
46697
  "type": {
@@ -46075,14 +46702,18 @@
46075
46702
  {
46076
46703
  "name": "e",
46077
46704
  "type": {
46078
- "text": "KeyboardEvent"
46705
+ "text": "PointerEvent"
46079
46706
  }
46080
46707
  }
46081
- ]
46708
+ ],
46709
+ "inheritedFrom": {
46710
+ "name": "LinkButton",
46711
+ "module": "src/core/shared/mixins/LinkButton.ts"
46712
+ }
46082
46713
  },
46083
46714
  {
46084
46715
  "kind": "method",
46085
- "name": "#handleDocumentClick",
46716
+ "name": "#handleLinkFocus",
46086
46717
  "privacy": "private",
46087
46718
  "return": {
46088
46719
  "type": {
@@ -46093,29 +46724,49 @@
46093
46724
  {
46094
46725
  "name": "e",
46095
46726
  "type": {
46096
- "text": "MouseEvent"
46727
+ "text": "Event"
46097
46728
  }
46098
46729
  }
46099
- ]
46730
+ ],
46731
+ "inheritedFrom": {
46732
+ "name": "LinkButton",
46733
+ "module": "src/core/shared/mixins/LinkButton.ts"
46734
+ }
46100
46735
  },
46101
46736
  {
46102
46737
  "kind": "method",
46103
- "name": "#attachFab",
46738
+ "name": "#handleLinkBlur",
46104
46739
  "privacy": "private",
46105
46740
  "return": {
46106
46741
  "type": {
46107
46742
  "text": "void"
46108
46743
  }
46744
+ },
46745
+ "parameters": [
46746
+ {
46747
+ "name": "e",
46748
+ "type": {
46749
+ "text": "Event"
46750
+ }
46751
+ }
46752
+ ],
46753
+ "inheritedFrom": {
46754
+ "name": "LinkButton",
46755
+ "module": "src/core/shared/mixins/LinkButton.ts"
46109
46756
  }
46110
46757
  },
46111
46758
  {
46112
- "kind": "method",
46113
- "name": "#detachFab",
46114
- "privacy": "private",
46115
- "return": {
46116
- "type": {
46117
- "text": "void"
46118
- }
46759
+ "kind": "field",
46760
+ "name": "disabled",
46761
+ "type": {
46762
+ "text": "boolean"
46763
+ },
46764
+ "default": "false",
46765
+ "description": "Whether the element is disabled.",
46766
+ "attribute": "disabled",
46767
+ "inheritedFrom": {
46768
+ "name": "Disabled",
46769
+ "module": "src/core/shared/mixins/Disabled.ts"
46119
46770
  }
46120
46771
  },
46121
46772
  {
@@ -46155,31 +46806,95 @@
46155
46806
  ],
46156
46807
  "events": [
46157
46808
  {
46158
- "description": "Dispatched before the toggle state changes.",
46159
- "name": "beforetoggle"
46160
- },
46161
- {
46162
- "description": "Dispatched after the toggle state has changed.",
46163
- "name": "toggle"
46809
+ "name": "click",
46810
+ "type": {
46811
+ "text": "MouseEvent"
46812
+ },
46813
+ "description": "Dispatched when the element is clicked.",
46814
+ "inheritedFrom": {
46815
+ "name": "KeyboardClick",
46816
+ "module": "src/core/shared/mixins/KeyboardClick.ts"
46817
+ }
46164
46818
  }
46165
46819
  ],
46166
46820
  "attributes": [
46167
46821
  {
46168
- "description": "The appearance variant of the menu.",
46169
- "name": "variant",
46822
+ "name": "disabled",
46170
46823
  "type": {
46171
- "text": "FabMenuVariant"
46824
+ "text": "boolean"
46172
46825
  },
46173
- "default": "\"primary\"",
46174
- "fieldName": "variant",
46175
- "parsedType": {
46176
- "text": "'primary' | 'secondary' | 'tertiary'"
46826
+ "default": "false",
46827
+ "description": "Whether the element is disabled.",
46828
+ "fieldName": "disabled",
46829
+ "inheritedFrom": {
46830
+ "name": "Disabled",
46831
+ "module": "src/core/shared/mixins/Disabled.ts"
46832
+ }
46833
+ },
46834
+ {
46835
+ "name": "download",
46836
+ "type": {
46837
+ "text": "string | null"
46838
+ },
46839
+ "description": "A value indicating whether the `target` of the link button will be downloaded, optionally specifying the new name of the file.",
46840
+ "default": "null",
46841
+ "fieldName": "download",
46842
+ "inheritedFrom": {
46843
+ "name": "LinkButton",
46844
+ "module": "src/core/shared/mixins/LinkButton.ts"
46845
+ }
46846
+ },
46847
+ {
46848
+ "name": "href",
46849
+ "type": {
46850
+ "text": "string"
46851
+ },
46852
+ "default": "\"\"",
46853
+ "description": "The URL to which the link button points.",
46854
+ "fieldName": "href",
46855
+ "inheritedFrom": {
46856
+ "name": "LinkButton",
46857
+ "module": "src/core/shared/mixins/LinkButton.ts"
46858
+ }
46859
+ },
46860
+ {
46861
+ "name": "rel",
46862
+ "type": {
46863
+ "text": "string"
46864
+ },
46865
+ "default": "\"\"",
46866
+ "description": "The relationship between the `target` of the link button and the document.",
46867
+ "fieldName": "rel",
46868
+ "inheritedFrom": {
46869
+ "name": "LinkButton",
46870
+ "module": "src/core/shared/mixins/LinkButton.ts"
46871
+ }
46872
+ },
46873
+ {
46874
+ "name": "target",
46875
+ "type": {
46876
+ "text": "LinkTarget"
46877
+ },
46878
+ "default": "\"\"",
46879
+ "description": "The target of the link button.",
46880
+ "fieldName": "target",
46881
+ "inheritedFrom": {
46882
+ "name": "LinkButton",
46883
+ "module": "src/core/shared/mixins/LinkButton.ts"
46177
46884
  }
46178
46885
  }
46179
46886
  ],
46180
46887
  "mixins": [
46181
46888
  {
46182
- "name": "SuppressInitialAnimation",
46889
+ "name": "KeyboardClick",
46890
+ "package": "@m3e/web/core"
46891
+ },
46892
+ {
46893
+ "name": "LinkButton",
46894
+ "package": "@m3e/web/core"
46895
+ },
46896
+ {
46897
+ "name": "Disabled",
46183
46898
  "package": "@m3e/web/core"
46184
46899
  },
46185
46900
  {
@@ -46195,25 +46910,25 @@
46195
46910
  "name": "LitElement",
46196
46911
  "package": "lit"
46197
46912
  },
46198
- "tagName": "m3e-fab-menu",
46913
+ "tagName": "m3e-menu-item",
46199
46914
  "customElement": true
46200
46915
  }
46201
46916
  ],
46202
46917
  "exports": [
46203
46918
  {
46204
46919
  "kind": "js",
46205
- "name": "M3eFabMenuElement",
46920
+ "name": "M3eFabMenuItemElement",
46206
46921
  "declaration": {
46207
- "name": "M3eFabMenuElement",
46208
- "module": "src/fab-menu/FabMenuElement.ts"
46922
+ "name": "M3eFabMenuItemElement",
46923
+ "module": "src/fab-menu/FabMenuItemElement.ts"
46209
46924
  }
46210
46925
  },
46211
46926
  {
46212
46927
  "kind": "custom-element-definition",
46213
- "name": "m3e-fab-menu",
46928
+ "name": "m3e-fab-menu-item",
46214
46929
  "declaration": {
46215
- "name": "M3eFabMenuElement",
46216
- "module": "src/fab-menu/FabMenuElement.ts"
46930
+ "name": "M3eFabMenuItemElement",
46931
+ "module": "src/fab-menu/FabMenuItemElement.ts"
46217
46932
  }
46218
46933
  }
46219
46934
  ]
@@ -54648,6 +55363,17 @@
54648
55363
  "text": "() => void | undefined"
54649
55364
  }
54650
55365
  },
55366
+ {
55367
+ "kind": "field",
55368
+ "name": "#anchorLastPosition",
55369
+ "privacy": "private",
55370
+ "type": {
55371
+ "text": "{ x: number; y: number; dir: Direction } | undefined"
55372
+ },
55373
+ "parsedType": {
55374
+ "text": "{ x: number; y: number; dir: 'ltr' | 'rtl' } | undefined"
55375
+ }
55376
+ },
54651
55377
  {
54652
55378
  "kind": "field",
54653
55379
  "name": "#listManager",
@@ -54668,16 +55394,17 @@
54668
55394
  },
54669
55395
  {
54670
55396
  "kind": "field",
54671
- "name": "#documentClickHandler",
55397
+ "name": "#scrollController",
54672
55398
  "privacy": "private",
54673
- "readonly": true
55399
+ "readonly": true,
55400
+ "default": "new ScrollController(this, { target: null, callback: (target) => target instanceof M3eMenuElement ? target.items.filter((x) => x instanceof M3eMenuItemElement).forEach((x) => x.submenu?.hide()) : this.hideAll(), })"
54674
55401
  },
54675
55402
  {
54676
55403
  "kind": "field",
54677
- "name": "#scrollController",
55404
+ "name": "#clickOutsideController",
54678
55405
  "privacy": "private",
54679
55406
  "readonly": true,
54680
- "default": "new ScrollController(this, { target: null, callback: (target) => target instanceof M3eMenuElement ? target.items.filter((x) => x instanceof M3eMenuItemElement).forEach((x) => x.submenu?.hide()) : this.hideAll(), })"
55407
+ "default": "new ClickOutsideController(this, { target: null, callback: (composedPath) => { // If the menu isn't a submenu and no submenu is being clicked, close the entire menu if (!this.submenu && !composedPath.some((x) => x instanceof M3eMenuElement)) { this.hide(); } }, })"
54681
55408
  },
54682
55409
  {
54683
55410
  "kind": "field",
@@ -54869,24 +55596,6 @@
54869
55596
  }
54870
55597
  }
54871
55598
  },
54872
- {
54873
- "kind": "method",
54874
- "name": "#handleDocumentClick",
54875
- "privacy": "private",
54876
- "return": {
54877
- "type": {
54878
- "text": "void"
54879
- }
54880
- },
54881
- "parameters": [
54882
- {
54883
- "name": "e",
54884
- "type": {
54885
- "text": "MouseEvent"
54886
- }
54887
- }
54888
- ]
54889
- },
54890
55599
  {
54891
55600
  "kind": "method",
54892
55601
  "name": "#getAbsolutePosition",
@@ -64027,6 +64736,17 @@
64027
64736
  "text": "() => void | undefined"
64028
64737
  }
64029
64738
  },
64739
+ {
64740
+ "kind": "field",
64741
+ "name": "#anchorLastPosition",
64742
+ "privacy": "private",
64743
+ "type": {
64744
+ "text": "{ x: number; y: number; width: number; dir: Direction } | undefined"
64745
+ },
64746
+ "parsedType": {
64747
+ "text": "{ x: number; y: number; width: number; dir: 'ltr' | 'rtl' } | undefined"
64748
+ }
64749
+ },
64030
64750
  {
64031
64751
  "kind": "field",
64032
64752
  "name": "#breakpointUnobserve",
@@ -65857,6 +66577,56 @@
65857
66577
  }
65858
66578
  ],
65859
66579
  "members": [
66580
+ {
66581
+ "kind": "field",
66582
+ "name": "__pulseLoading",
66583
+ "privacy": "private",
66584
+ "static": true,
66585
+ "default": "new Set<M3eSkeletonElement>()"
66586
+ },
66587
+ {
66588
+ "kind": "field",
66589
+ "name": "__pulseAnimation",
66590
+ "type": {
66591
+ "text": "Animation"
66592
+ },
66593
+ "privacy": "private",
66594
+ "static": true
66595
+ },
66596
+ {
66597
+ "kind": "field",
66598
+ "name": "__waveLoading",
66599
+ "privacy": "private",
66600
+ "static": true,
66601
+ "default": "new Set<M3eSkeletonElement>()"
66602
+ },
66603
+ {
66604
+ "kind": "field",
66605
+ "name": "__waveAnimation",
66606
+ "type": {
66607
+ "text": "Animation"
66608
+ },
66609
+ "privacy": "private",
66610
+ "static": true
66611
+ },
66612
+ {
66613
+ "kind": "field",
66614
+ "name": "__reducedMediaQuery",
66615
+ "type": {
66616
+ "text": "MediaQueryList"
66617
+ },
66618
+ "privacy": "private",
66619
+ "static": true
66620
+ },
66621
+ {
66622
+ "kind": "field",
66623
+ "name": "__forcedColorsMediaQuery",
66624
+ "type": {
66625
+ "text": "MediaQueryList"
66626
+ },
66627
+ "privacy": "private",
66628
+ "static": true
66629
+ },
65860
66630
  {
65861
66631
  "kind": "field",
65862
66632
  "name": "#anchoringCleanupMap",
@@ -65964,6 +66734,47 @@
65964
66734
  }
65965
66735
  ]
65966
66736
  },
66737
+ {
66738
+ "kind": "method",
66739
+ "name": "#updateLoading",
66740
+ "privacy": "private",
66741
+ "return": {
66742
+ "type": {
66743
+ "text": "void"
66744
+ }
66745
+ }
66746
+ },
66747
+ {
66748
+ "kind": "method",
66749
+ "name": "#registerLoading",
66750
+ "privacy": "private",
66751
+ "return": {
66752
+ "type": {
66753
+ "text": "void"
66754
+ }
66755
+ }
66756
+ },
66757
+ {
66758
+ "kind": "method",
66759
+ "name": "#unregisterLoading",
66760
+ "privacy": "private",
66761
+ "return": {
66762
+ "type": {
66763
+ "text": "void"
66764
+ }
66765
+ }
66766
+ },
66767
+ {
66768
+ "kind": "method",
66769
+ "name": "__updateAnimations",
66770
+ "static": true,
66771
+ "return": {
66772
+ "type": {
66773
+ "text": "void"
66774
+ }
66775
+ },
66776
+ "privacy": "private"
66777
+ },
65967
66778
  {
65968
66779
  "kind": "field",
65969
66780
  "name": "[_wasConnected]",