@momentum-design/components 0.104.17 → 0.105.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (39) hide show
  1. package/dist/browser/index.js +292 -275
  2. package/dist/browser/index.js.map +4 -4
  3. package/dist/components/listbox/index.d.ts +7 -0
  4. package/dist/components/listbox/index.js +4 -0
  5. package/dist/components/listbox/listbox.component.d.ts +94 -0
  6. package/dist/components/listbox/listbox.component.js +198 -0
  7. package/dist/components/listbox/listbox.constants.d.ts +2 -0
  8. package/dist/components/listbox/listbox.constants.js +3 -0
  9. package/dist/components/listbox/listbox.styles.d.ts +2 -0
  10. package/dist/components/listbox/listbox.styles.js +20 -0
  11. package/dist/components/listbox/listbox.types.d.ts +7 -0
  12. package/dist/components/listbox/listbox.types.js +1 -0
  13. package/dist/components/listitem/listitem.component.d.ts +1 -2
  14. package/dist/components/listitem/listitem.component.js +4 -6
  15. package/dist/components/option/option.component.js +1 -0
  16. package/dist/custom-elements.json +1480 -707
  17. package/dist/index.d.ts +2 -1
  18. package/dist/index.js +2 -1
  19. package/dist/react/index.d.ts +3 -2
  20. package/dist/react/index.js +3 -2
  21. package/dist/react/listbox/index.d.ts +30 -0
  22. package/dist/react/listbox/index.js +38 -0
  23. package/dist/utils/controllers/ElementStore.d.ts +153 -0
  24. package/dist/utils/controllers/ElementStore.js +171 -0
  25. package/dist/utils/dom.d.ts +13 -0
  26. package/dist/utils/dom.js +14 -0
  27. package/dist/utils/mixins/ItemCollectionMixin.d.ts +68 -0
  28. package/dist/utils/mixins/ItemCollectionMixin.js +89 -0
  29. package/dist/utils/mixins/ListNavigationMixin.d.ts +28 -0
  30. package/dist/utils/mixins/ListNavigationMixin.js +199 -0
  31. package/dist/utils/mixins/lifecycle/CaptureDestroyEventForChildElement.d.ts +30 -0
  32. package/dist/utils/mixins/lifecycle/CaptureDestroyEventForChildElement.js +65 -0
  33. package/dist/utils/mixins/lifecycle/LifeCycleMixin.d.ts +33 -0
  34. package/dist/utils/mixins/lifecycle/LifeCycleMixin.js +41 -0
  35. package/dist/utils/mixins/lifecycle/LifeCycleModifiedEvent.d.ts +19 -0
  36. package/dist/utils/mixins/lifecycle/LifeCycleModifiedEvent.js +1 -0
  37. package/dist/utils/mixins/lifecycle/lifecycle.contants.d.ts +5 -0
  38. package/dist/utils/mixins/lifecycle/lifecycle.contants.js +5 -0
  39. package/package.json +1 -1
@@ -16311,295 +16311,6 @@
16311
16311
  }
16312
16312
  ]
16313
16313
  },
16314
- {
16315
- "kind": "javascript-module",
16316
- "path": "components/linksimple/linksimple.component.js",
16317
- "declarations": [
16318
- {
16319
- "kind": "class",
16320
- "description": "`mdc-linksimple` is a lightweight link component that can be used to navigate\nwithin the application or to an external URL. It does not have any predefined default size.\n\nThe `children` of the `mdc-linksimple` component can be customized to suit\ndifferent use cases, including text, icons, or other inline content. For the child to be an icon,\nthe `mdc-icon` component should be used to render.",
16321
- "name": "Linksimple",
16322
- "cssProperties": [
16323
- {
16324
- "description": "Border radius of the link.",
16325
- "name": "--mdc-link-border-radius"
16326
- },
16327
- {
16328
- "description": "Color of the link’s child content in the active state.",
16329
- "name": "--mdc-link-color-active"
16330
- },
16331
- {
16332
- "description": "Color of the link’s child content in the disabled state.",
16333
- "name": "--mdc-link-color-disabled"
16334
- },
16335
- {
16336
- "description": "Color of the link’s child content in the hover state.",
16337
- "name": "--mdc-link-color-hover"
16338
- },
16339
- {
16340
- "description": "Color of the link’s child content in the normal state.",
16341
- "name": "--mdc-link-color-normal"
16342
- },
16343
- {
16344
- "description": "Color of the inverted link’s child content in the active state.",
16345
- "name": "--mdc-link-inverted-color-active"
16346
- },
16347
- {
16348
- "description": "Color of the inverted link’s child content in the disabled state.",
16349
- "name": "--mdc-link-inverted-color-disabled"
16350
- },
16351
- {
16352
- "description": "Color of the inverted link’s child content in the hover state.",
16353
- "name": "--mdc-link-inverted-color-hover"
16354
- },
16355
- {
16356
- "description": "Color of the inverted link’s child content in the normal state.",
16357
- "name": "--mdc-link-inverted-color-normal"
16358
- }
16359
- ],
16360
- "members": [
16361
- {
16362
- "kind": "field",
16363
- "name": "inline",
16364
- "type": {
16365
- "text": "boolean"
16366
- },
16367
- "description": "The link can be inline or standalone.",
16368
- "default": "false",
16369
- "attribute": "inline",
16370
- "reflects": true
16371
- },
16372
- {
16373
- "kind": "field",
16374
- "name": "inverted",
16375
- "type": {
16376
- "text": "boolean"
16377
- },
16378
- "description": "The link color can be inverted by setting the inverted attribute to true.",
16379
- "default": "false",
16380
- "attribute": "inverted",
16381
- "reflects": true
16382
- },
16383
- {
16384
- "kind": "field",
16385
- "name": "href",
16386
- "type": {
16387
- "text": "string"
16388
- },
16389
- "default": "'#'",
16390
- "description": "Href for navigation. The URL that the hyperlink points to",
16391
- "attribute": "href",
16392
- "reflects": true
16393
- },
16394
- {
16395
- "kind": "field",
16396
- "name": "target",
16397
- "type": {
16398
- "text": "string"
16399
- },
16400
- "default": "'_self'",
16401
- "description": "Optional target: _blank, _self, _parent, _top and _unfencedTop",
16402
- "attribute": "target",
16403
- "reflects": true
16404
- },
16405
- {
16406
- "kind": "field",
16407
- "name": "rel",
16408
- "type": {
16409
- "text": "string | undefined"
16410
- },
16411
- "description": "Optional rel attribute that defines the relationship of the linked URL as space-separated link types.",
16412
- "attribute": "rel",
16413
- "reflects": true
16414
- },
16415
- {
16416
- "kind": "method",
16417
- "name": "handleNavigation",
16418
- "privacy": "private",
16419
- "return": {
16420
- "type": {
16421
- "text": "void"
16422
- }
16423
- },
16424
- "parameters": [
16425
- {
16426
- "name": "e",
16427
- "type": {
16428
- "text": "MouseEvent | KeyboardEvent"
16429
- }
16430
- }
16431
- ]
16432
- },
16433
- {
16434
- "kind": "method",
16435
- "name": "setDisabled",
16436
- "privacy": "private",
16437
- "parameters": [
16438
- {
16439
- "name": "disabled",
16440
- "type": {
16441
- "text": "boolean"
16442
- },
16443
- "description": "Whether the element should be disabled"
16444
- }
16445
- ],
16446
- "description": "Sets or removes `aria-disabled` and updates `tabIndex` to reflect\nthe disabled state. When disabled, the element becomes unfocusable;\nwhen enabled, the previous `tabIndex` is restored."
16447
- },
16448
- {
16449
- "kind": "field",
16450
- "name": "disabled",
16451
- "type": {
16452
- "text": "boolean | undefined"
16453
- },
16454
- "description": "Indicates whether the component is disabled.\nWhen the component is disabled for user interaction; it is not focusable or clickable.",
16455
- "default": "undefined",
16456
- "attribute": "disabled",
16457
- "reflects": true,
16458
- "inheritedFrom": {
16459
- "name": "DisabledMixin",
16460
- "module": "utils/mixins/DisabledMixin.js"
16461
- }
16462
- },
16463
- {
16464
- "kind": "field",
16465
- "name": "tabIndex",
16466
- "type": {
16467
- "text": "number"
16468
- },
16469
- "default": "0",
16470
- "description": "This property specifies the tab order of the element.",
16471
- "attribute": "tabIndex",
16472
- "reflects": true,
16473
- "inheritedFrom": {
16474
- "name": "TabIndexMixin",
16475
- "module": "utils/mixins/TabIndexMixin.js"
16476
- }
16477
- }
16478
- ],
16479
- "events": [
16480
- {
16481
- "description": "(React: onClick) Fired when the user activates the buttonLink using a mouse or assistive technology.",
16482
- "name": "click",
16483
- "reactName": "onClick"
16484
- },
16485
- {
16486
- "description": "(React: onKeyDown) Fired when the user presses a key while the buttonLink has focus.",
16487
- "name": "keydown",
16488
- "reactName": "onKeyDown"
16489
- },
16490
- {
16491
- "description": "(React: onFocus) Fired when the buttonLink receives keyboard or mouse focus.",
16492
- "name": "focus",
16493
- "reactName": "onFocus"
16494
- },
16495
- {
16496
- "description": "(React: onBlur) Fired when the buttonLink loses keyboard or mouse focus.",
16497
- "name": "blur",
16498
- "reactName": "onBlur"
16499
- }
16500
- ],
16501
- "attributes": [
16502
- {
16503
- "name": "inline",
16504
- "type": {
16505
- "text": "boolean"
16506
- },
16507
- "description": "The link can be inline or standalone.",
16508
- "default": "false",
16509
- "fieldName": "inline"
16510
- },
16511
- {
16512
- "name": "inverted",
16513
- "type": {
16514
- "text": "boolean"
16515
- },
16516
- "description": "The link color can be inverted by setting the inverted attribute to true.",
16517
- "default": "false",
16518
- "fieldName": "inverted"
16519
- },
16520
- {
16521
- "name": "href",
16522
- "type": {
16523
- "text": "string"
16524
- },
16525
- "default": "'#'",
16526
- "description": "Href for navigation. The URL that the hyperlink points to",
16527
- "fieldName": "href"
16528
- },
16529
- {
16530
- "name": "target",
16531
- "type": {
16532
- "text": "string"
16533
- },
16534
- "default": "'_self'",
16535
- "description": "Optional target: _blank, _self, _parent, _top and _unfencedTop",
16536
- "fieldName": "target"
16537
- },
16538
- {
16539
- "name": "rel",
16540
- "type": {
16541
- "text": "string | undefined"
16542
- },
16543
- "description": "Optional rel attribute that defines the relationship of the linked URL as space-separated link types.",
16544
- "fieldName": "rel"
16545
- },
16546
- {
16547
- "name": "disabled",
16548
- "type": {
16549
- "text": "boolean | undefined"
16550
- },
16551
- "description": "Indicates whether the component is disabled.\nWhen the component is disabled for user interaction; it is not focusable or clickable.",
16552
- "default": "undefined",
16553
- "fieldName": "disabled",
16554
- "inheritedFrom": {
16555
- "name": "DisabledMixin",
16556
- "module": "src/utils/mixins/DisabledMixin.ts"
16557
- }
16558
- },
16559
- {
16560
- "name": "tabIndex",
16561
- "type": {
16562
- "text": "number"
16563
- },
16564
- "default": "0",
16565
- "description": "This property specifies the tab order of the element.",
16566
- "fieldName": "tabIndex",
16567
- "inheritedFrom": {
16568
- "name": "TabIndexMixin",
16569
- "module": "src/utils/mixins/TabIndexMixin.ts"
16570
- }
16571
- }
16572
- ],
16573
- "mixins": [
16574
- {
16575
- "name": "DisabledMixin",
16576
- "module": "/src/utils/mixins/DisabledMixin"
16577
- },
16578
- {
16579
- "name": "TabIndexMixin",
16580
- "module": "/src/utils/mixins/TabIndexMixin"
16581
- }
16582
- ],
16583
- "superclass": {
16584
- "name": "Component",
16585
- "module": "/src/models"
16586
- },
16587
- "tagName": "mdc-linksimple",
16588
- "jsDoc": "/**\n * `mdc-linksimple` is a lightweight link component that can be used to navigate\n * within the application or to an external URL. It does not have any predefined default size.\n *\n * The `children` of the `mdc-linksimple` component can be customized to suit\n * different use cases, including text, icons, or other inline content. For the child to be an icon,\n * the `mdc-icon` component should be used to render.\n *\n * @tagname mdc-linksimple\n *\n * @event click - (React: onClick) Fired when the user activates the buttonLink using a mouse or assistive technology.\n * @event keydown - (React: onKeyDown) Fired when the user presses a key while the buttonLink has focus.\n * @event focus - (React: onFocus) Fired when the buttonLink receives keyboard or mouse focus.\n * @event blur - (React: onBlur) Fired when the buttonLink loses keyboard or mouse focus.\n *\n * @cssproperty --mdc-link-border-radius - Border radius of the link.\n * @cssproperty --mdc-link-color-active - Color of the link’s child content in the active state.\n * @cssproperty --mdc-link-color-disabled - Color of the link’s child content in the disabled state.\n * @cssproperty --mdc-link-color-hover - Color of the link’s child content in the hover state.\n * @cssproperty --mdc-link-color-normal - Color of the link’s child content in the normal state.\n * @cssproperty --mdc-link-inverted-color-active - Color of the inverted link’s child content in the active state.\n * @cssproperty --mdc-link-inverted-color-disabled - Color of the inverted link’s child content in the disabled state.\n * @cssproperty --mdc-link-inverted-color-hover - Color of the inverted link’s child content in the hover state.\n * @cssproperty --mdc-link-inverted-color-normal - Color of the inverted link’s child content in the normal state.\n */",
16589
- "customElement": true
16590
- }
16591
- ],
16592
- "exports": [
16593
- {
16594
- "kind": "js",
16595
- "name": "default",
16596
- "declaration": {
16597
- "name": "Linksimple",
16598
- "module": "components/linksimple/linksimple.component.js"
16599
- }
16600
- }
16601
- ]
16602
- },
16603
16314
  {
16604
16315
  "kind": "javascript-module",
16605
16316
  "path": "components/list/list.component.js",
@@ -16749,8 +16460,292 @@
16749
16460
  "kind": "js",
16750
16461
  "name": "default",
16751
16462
  "declaration": {
16752
- "name": "List",
16753
- "module": "components/list/list.component.js"
16463
+ "name": "List",
16464
+ "module": "components/list/list.component.js"
16465
+ }
16466
+ }
16467
+ ]
16468
+ },
16469
+ {
16470
+ "kind": "javascript-module",
16471
+ "path": "components/listbox/listbox.component.js",
16472
+ "declarations": [
16473
+ {
16474
+ "kind": "class",
16475
+ "description": "listbox component presents a list of options and allows a user to select one of them.\n\nNotes:\n- This is a standalone listbox component. Select has its own mdc-selectlistbox component.\n- this component has name and value attributes and also emits change event,\n but it is not a form control (yet).",
16476
+ "name": "ListBox",
16477
+ "cssProperties": [
16478
+ {
16479
+ "description": "max height of the listbox",
16480
+ "name": "--mdc-listbox-max-height"
16481
+ }
16482
+ ],
16483
+ "cssParts": [
16484
+ {
16485
+ "description": "The container of the listbox",
16486
+ "name": "container"
16487
+ }
16488
+ ],
16489
+ "slots": [
16490
+ {
16491
+ "description": "This is a default/unnamed slot, where options and optgroups are placed",
16492
+ "name": "default"
16493
+ }
16494
+ ],
16495
+ "members": [
16496
+ {
16497
+ "kind": "field",
16498
+ "name": "name",
16499
+ "type": {
16500
+ "text": "undefined | string | undefined"
16501
+ },
16502
+ "default": "undefined",
16503
+ "description": "The name attribute is used to identify the listbox",
16504
+ "attribute": "name",
16505
+ "reflects": true
16506
+ },
16507
+ {
16508
+ "kind": "field",
16509
+ "name": "value",
16510
+ "type": {
16511
+ "text": "undefined | string | undefined"
16512
+ },
16513
+ "default": "undefined",
16514
+ "description": "The value attribute is used to represent the last selected option's value in the listbox.",
16515
+ "attribute": "value",
16516
+ "reflects": true
16517
+ },
16518
+ {
16519
+ "kind": "method",
16520
+ "name": "setSelectedOption",
16521
+ "privacy": "private",
16522
+ "return": {
16523
+ "type": {
16524
+ "text": "void"
16525
+ }
16526
+ },
16527
+ "parameters": [
16528
+ {
16529
+ "name": "option",
16530
+ "optional": true,
16531
+ "type": {
16532
+ "text": "Option | null"
16533
+ },
16534
+ "description": "The option element in DOM which gets selected."
16535
+ },
16536
+ {
16537
+ "name": "fireEvent",
16538
+ "default": "true",
16539
+ "description": "A boolean flag to indicate whether to fire the change event or not."
16540
+ },
16541
+ {
16542
+ "name": "updateOptions",
16543
+ "default": "true",
16544
+ "description": "Whether update the other options or not"
16545
+ }
16546
+ ],
16547
+ "description": "When an option is selected, this method updates local and options' DOM state and fires the change event."
16548
+ },
16549
+ {
16550
+ "kind": "method",
16551
+ "name": "updateSelectedInChildOptions",
16552
+ "privacy": "private",
16553
+ "return": {
16554
+ "type": {
16555
+ "text": "void"
16556
+ }
16557
+ },
16558
+ "parameters": [
16559
+ {
16560
+ "name": "selectedOption",
16561
+ "optional": true,
16562
+ "type": {
16563
+ "text": "Option | null"
16564
+ },
16565
+ "description": "The option which gets selected"
16566
+ }
16567
+ ],
16568
+ "description": "Update all options selection state in the DDM."
16569
+ },
16570
+ {
16571
+ "kind": "method",
16572
+ "name": "fireEvents",
16573
+ "privacy": "private",
16574
+ "return": {
16575
+ "type": {
16576
+ "text": "void"
16577
+ }
16578
+ },
16579
+ "description": "Dispatch change event when an option is selected."
16580
+ },
16581
+ {
16582
+ "kind": "method",
16583
+ "name": "getCurrentIndex",
16584
+ "privacy": "private",
16585
+ "return": {
16586
+ "type": {
16587
+ "text": ""
16588
+ }
16589
+ },
16590
+ "parameters": [
16591
+ {
16592
+ "name": "target",
16593
+ "type": {
16594
+ "text": "EventTarget | null"
16595
+ },
16596
+ "description": "The target element that triggered the event."
16597
+ }
16598
+ ],
16599
+ "description": "Retrieves the current index of the item that triggered the event.",
16600
+ "inheritedFrom": {
16601
+ "name": "ListNavigationMixin",
16602
+ "module": "utils/mixins/ListNavigationMixin.js"
16603
+ }
16604
+ },
16605
+ {
16606
+ "kind": "method",
16607
+ "name": "resetTabIndexes",
16608
+ "privacy": "protected",
16609
+ "parameters": [
16610
+ {
16611
+ "name": "index",
16612
+ "type": {
16613
+ "text": "number"
16614
+ },
16615
+ "description": "The index of the currently focused item."
16616
+ }
16617
+ ],
16618
+ "description": "Reset all tabindex to -1 and set the tabindex of the current item to 0",
16619
+ "inheritedFrom": {
16620
+ "name": "ListNavigationMixin",
16621
+ "module": "utils/mixins/ListNavigationMixin.js"
16622
+ }
16623
+ },
16624
+ {
16625
+ "kind": "method",
16626
+ "name": "resetTabIndexAndSetFocus",
16627
+ "privacy": "protected",
16628
+ "parameters": [
16629
+ {
16630
+ "name": "newIndex",
16631
+ "type": {
16632
+ "text": "number"
16633
+ },
16634
+ "description": "The index of the new item to focus."
16635
+ },
16636
+ {
16637
+ "name": "oldIndex",
16638
+ "optional": true,
16639
+ "type": {
16640
+ "text": "number"
16641
+ },
16642
+ "description": "The index of the currently focused item."
16643
+ },
16644
+ {
16645
+ "name": "focusNewItem",
16646
+ "default": "true",
16647
+ "description": "Call focus() on the new item or not. It should be false during firstUpdate"
16648
+ }
16649
+ ],
16650
+ "description": "Resets the tabindex of the currently focused item and sets focus to a new item.",
16651
+ "return": {
16652
+ "type": {
16653
+ "text": ""
16654
+ }
16655
+ },
16656
+ "inheritedFrom": {
16657
+ "name": "ListNavigationMixin",
16658
+ "module": "utils/mixins/ListNavigationMixin.js"
16659
+ }
16660
+ },
16661
+ {
16662
+ "kind": "method",
16663
+ "name": "resolveDirectionKey",
16664
+ "privacy": "private",
16665
+ "parameters": [
16666
+ {
16667
+ "name": "key",
16668
+ "type": {
16669
+ "text": "string"
16670
+ },
16671
+ "description": "The key pressed by the user."
16672
+ },
16673
+ {
16674
+ "name": "isRtl",
16675
+ "type": {
16676
+ "text": "boolean"
16677
+ },
16678
+ "description": "A boolean indicating if the layout is right-to-left (RTL)."
16679
+ }
16680
+ ],
16681
+ "description": "Resolves the key pressed by the user based on the direction of the layout.\nThis method is used to handle keyboard navigation in a right-to-left (RTL) layout.\nIt checks if the layout is RTL and adjusts the arrow keys accordingly.\nFor example, in RTL, the left arrow key behaves like the right arrow key and vice versa.",
16682
+ "return": {
16683
+ "type": {
16684
+ "text": ""
16685
+ }
16686
+ },
16687
+ "inheritedFrom": {
16688
+ "name": "ListNavigationMixin",
16689
+ "module": "utils/mixins/ListNavigationMixin.js"
16690
+ }
16691
+ }
16692
+ ],
16693
+ "events": [
16694
+ {
16695
+ "name": "change",
16696
+ "type": {
16697
+ "text": "Event"
16698
+ },
16699
+ "description": "(React: onChange) This event is emitted when the selected item changed",
16700
+ "reactName": "onChange"
16701
+ }
16702
+ ],
16703
+ "attributes": [
16704
+ {
16705
+ "name": "name",
16706
+ "type": {
16707
+ "text": "undefined | string | undefined"
16708
+ },
16709
+ "default": "undefined",
16710
+ "description": "The name attribute is used to identify the listbox",
16711
+ "fieldName": "name"
16712
+ },
16713
+ {
16714
+ "name": "value",
16715
+ "type": {
16716
+ "text": "undefined | string | undefined"
16717
+ },
16718
+ "default": "undefined",
16719
+ "description": "The value attribute is used to represent the last selected option's value in the listbox.",
16720
+ "fieldName": "value"
16721
+ }
16722
+ ],
16723
+ "mixins": [
16724
+ {
16725
+ "name": "ListNavigationMixin",
16726
+ "module": "/src/utils/mixins/ListNavigationMixin"
16727
+ },
16728
+ {
16729
+ "name": "CaptureDestroyEventForChildElement",
16730
+ "module": "/src/utils/mixins/lifecycle/CaptureDestroyEventForChildElement"
16731
+ }
16732
+ ],
16733
+ "superclass": {
16734
+ "name": "Component",
16735
+ "module": "/src/models"
16736
+ },
16737
+ "tagName": "mdc-listbox",
16738
+ "jsDoc": "/**\n * listbox component presents a list of options and allows a user to select one of them.\n *\n * Notes:\n * - This is a standalone listbox component. Select has its own mdc-selectlistbox component.\n * - this component has name and value attributes and also emits change event,\n * but it is not a form control (yet).\n *\n * @dependency mdc-list\n * @dependency mdc-icon\n * @dependency mdc-text\n * @dependency mdc-option\n * @dependency mdc-optgroup\n *\n * @tagname mdc-listbox\n *\n * @cssproperty --mdc-listbox-max-height - max height of the listbox\n *\n * @slot default - This is a default/unnamed slot, where options and optgroups are placed\n *\n * @csspart container - The container of the listbox\n *\n * @event change - (React: onChange) This event is emitted when the selected item changed\n */",
16739
+ "customElement": true
16740
+ }
16741
+ ],
16742
+ "exports": [
16743
+ {
16744
+ "kind": "js",
16745
+ "name": "default",
16746
+ "declaration": {
16747
+ "name": "ListBox",
16748
+ "module": "components/listbox/listbox.component.js"
16754
16749
  }
16755
16750
  }
16756
16751
  ]
@@ -16803,67 +16798,356 @@
16803
16798
  "attribute": "postfix-icon"
16804
16799
  },
16805
16800
  {
16806
- "kind": "field",
16807
- "name": "headerText",
16801
+ "kind": "field",
16802
+ "name": "headerText",
16803
+ "type": {
16804
+ "text": "string | undefined"
16805
+ },
16806
+ "description": "Text to be rendered in the header",
16807
+ "attribute": "header-text"
16808
+ },
16809
+ {
16810
+ "kind": "field",
16811
+ "name": "disabled",
16812
+ "type": {
16813
+ "text": "boolean"
16814
+ },
16815
+ "default": "false",
16816
+ "description": "Disables the header, making it visually styled as disabled.\n\nNOTE: slot content will still be interactive unless individually disabled.\nMake sure to handle the disabled state of any actionable elements inside the slot.",
16817
+ "attribute": "disabled",
16818
+ "reflects": true
16819
+ }
16820
+ ],
16821
+ "attributes": [
16822
+ {
16823
+ "name": "prefix-icon",
16824
+ "type": {
16825
+ "text": "IconNames | undefined"
16826
+ },
16827
+ "description": "Name of the icon rendered before the text\n\nIf not provided, no icon will be rendered and text will be aligned to the start.",
16828
+ "fieldName": "prefixIcon"
16829
+ },
16830
+ {
16831
+ "name": "postfix-icon",
16832
+ "type": {
16833
+ "text": "IconNames | undefined"
16834
+ },
16835
+ "description": "Name of the icon rendered after the slot & text\n\nIf not provided, no icon will be rendered and content will be aligned to the end.",
16836
+ "fieldName": "postfixIcon"
16837
+ },
16838
+ {
16839
+ "name": "header-text",
16840
+ "type": {
16841
+ "text": "string | undefined"
16842
+ },
16843
+ "description": "Text to be rendered in the header",
16844
+ "fieldName": "headerText"
16845
+ },
16846
+ {
16847
+ "name": "disabled",
16848
+ "type": {
16849
+ "text": "boolean"
16850
+ },
16851
+ "default": "false",
16852
+ "description": "Disables the header, making it visually styled as disabled.\n\nNOTE: slot content will still be interactive unless individually disabled.\nMake sure to handle the disabled state of any actionable elements inside the slot.",
16853
+ "fieldName": "disabled"
16854
+ }
16855
+ ],
16856
+ "superclass": {
16857
+ "name": "Component",
16858
+ "module": "/src/models"
16859
+ },
16860
+ "tagName": "mdc-listheader",
16861
+ "jsDoc": "/**\n * Listheader component is used to display a header in a list.\n * It can include icons before and after the header text, and allows for additional content via slots.\n *\n * @tagname mdc-listheader\n *\n * @slot default - to pass in actionable content like buttons or links\n *\n * @cssproperty --mdc-listheader-height - height of the header\n * @cssproperty --mdc-listheader-padding - padding around the header content\n * @cssproperty --mdc-listheader-gap - gap between content\n */",
16862
+ "customElement": true
16863
+ }
16864
+ ],
16865
+ "exports": [
16866
+ {
16867
+ "kind": "js",
16868
+ "name": "default",
16869
+ "declaration": {
16870
+ "name": "Listheader",
16871
+ "module": "components/listheader/listheader.component.js"
16872
+ }
16873
+ }
16874
+ ]
16875
+ },
16876
+ {
16877
+ "kind": "javascript-module",
16878
+ "path": "components/linksimple/linksimple.component.js",
16879
+ "declarations": [
16880
+ {
16881
+ "kind": "class",
16882
+ "description": "`mdc-linksimple` is a lightweight link component that can be used to navigate\nwithin the application or to an external URL. It does not have any predefined default size.\n\nThe `children` of the `mdc-linksimple` component can be customized to suit\ndifferent use cases, including text, icons, or other inline content. For the child to be an icon,\nthe `mdc-icon` component should be used to render.",
16883
+ "name": "Linksimple",
16884
+ "cssProperties": [
16885
+ {
16886
+ "description": "Border radius of the link.",
16887
+ "name": "--mdc-link-border-radius"
16888
+ },
16889
+ {
16890
+ "description": "Color of the link’s child content in the active state.",
16891
+ "name": "--mdc-link-color-active"
16892
+ },
16893
+ {
16894
+ "description": "Color of the link’s child content in the disabled state.",
16895
+ "name": "--mdc-link-color-disabled"
16896
+ },
16897
+ {
16898
+ "description": "Color of the link’s child content in the hover state.",
16899
+ "name": "--mdc-link-color-hover"
16900
+ },
16901
+ {
16902
+ "description": "Color of the link’s child content in the normal state.",
16903
+ "name": "--mdc-link-color-normal"
16904
+ },
16905
+ {
16906
+ "description": "Color of the inverted link’s child content in the active state.",
16907
+ "name": "--mdc-link-inverted-color-active"
16908
+ },
16909
+ {
16910
+ "description": "Color of the inverted link’s child content in the disabled state.",
16911
+ "name": "--mdc-link-inverted-color-disabled"
16912
+ },
16913
+ {
16914
+ "description": "Color of the inverted link’s child content in the hover state.",
16915
+ "name": "--mdc-link-inverted-color-hover"
16916
+ },
16917
+ {
16918
+ "description": "Color of the inverted link’s child content in the normal state.",
16919
+ "name": "--mdc-link-inverted-color-normal"
16920
+ }
16921
+ ],
16922
+ "members": [
16923
+ {
16924
+ "kind": "field",
16925
+ "name": "inline",
16926
+ "type": {
16927
+ "text": "boolean"
16928
+ },
16929
+ "description": "The link can be inline or standalone.",
16930
+ "default": "false",
16931
+ "attribute": "inline",
16932
+ "reflects": true
16933
+ },
16934
+ {
16935
+ "kind": "field",
16936
+ "name": "inverted",
16937
+ "type": {
16938
+ "text": "boolean"
16939
+ },
16940
+ "description": "The link color can be inverted by setting the inverted attribute to true.",
16941
+ "default": "false",
16942
+ "attribute": "inverted",
16943
+ "reflects": true
16944
+ },
16945
+ {
16946
+ "kind": "field",
16947
+ "name": "href",
16948
+ "type": {
16949
+ "text": "string"
16950
+ },
16951
+ "default": "'#'",
16952
+ "description": "Href for navigation. The URL that the hyperlink points to",
16953
+ "attribute": "href",
16954
+ "reflects": true
16955
+ },
16956
+ {
16957
+ "kind": "field",
16958
+ "name": "target",
16959
+ "type": {
16960
+ "text": "string"
16961
+ },
16962
+ "default": "'_self'",
16963
+ "description": "Optional target: _blank, _self, _parent, _top and _unfencedTop",
16964
+ "attribute": "target",
16965
+ "reflects": true
16966
+ },
16967
+ {
16968
+ "kind": "field",
16969
+ "name": "rel",
16970
+ "type": {
16971
+ "text": "string | undefined"
16972
+ },
16973
+ "description": "Optional rel attribute that defines the relationship of the linked URL as space-separated link types.",
16974
+ "attribute": "rel",
16975
+ "reflects": true
16976
+ },
16977
+ {
16978
+ "kind": "method",
16979
+ "name": "handleNavigation",
16980
+ "privacy": "private",
16981
+ "return": {
16982
+ "type": {
16983
+ "text": "void"
16984
+ }
16985
+ },
16986
+ "parameters": [
16987
+ {
16988
+ "name": "e",
16989
+ "type": {
16990
+ "text": "MouseEvent | KeyboardEvent"
16991
+ }
16992
+ }
16993
+ ]
16994
+ },
16995
+ {
16996
+ "kind": "method",
16997
+ "name": "setDisabled",
16998
+ "privacy": "private",
16999
+ "parameters": [
17000
+ {
17001
+ "name": "disabled",
17002
+ "type": {
17003
+ "text": "boolean"
17004
+ },
17005
+ "description": "Whether the element should be disabled"
17006
+ }
17007
+ ],
17008
+ "description": "Sets or removes `aria-disabled` and updates `tabIndex` to reflect\nthe disabled state. When disabled, the element becomes unfocusable;\nwhen enabled, the previous `tabIndex` is restored."
17009
+ },
17010
+ {
17011
+ "kind": "field",
17012
+ "name": "disabled",
17013
+ "type": {
17014
+ "text": "boolean | undefined"
17015
+ },
17016
+ "description": "Indicates whether the component is disabled.\nWhen the component is disabled for user interaction; it is not focusable or clickable.",
17017
+ "default": "undefined",
17018
+ "attribute": "disabled",
17019
+ "reflects": true,
17020
+ "inheritedFrom": {
17021
+ "name": "DisabledMixin",
17022
+ "module": "utils/mixins/DisabledMixin.js"
17023
+ }
17024
+ },
17025
+ {
17026
+ "kind": "field",
17027
+ "name": "tabIndex",
17028
+ "type": {
17029
+ "text": "number"
17030
+ },
17031
+ "default": "0",
17032
+ "description": "This property specifies the tab order of the element.",
17033
+ "attribute": "tabIndex",
17034
+ "reflects": true,
17035
+ "inheritedFrom": {
17036
+ "name": "TabIndexMixin",
17037
+ "module": "utils/mixins/TabIndexMixin.js"
17038
+ }
17039
+ }
17040
+ ],
17041
+ "events": [
17042
+ {
17043
+ "description": "(React: onClick) Fired when the user activates the buttonLink using a mouse or assistive technology.",
17044
+ "name": "click",
17045
+ "reactName": "onClick"
17046
+ },
17047
+ {
17048
+ "description": "(React: onKeyDown) Fired when the user presses a key while the buttonLink has focus.",
17049
+ "name": "keydown",
17050
+ "reactName": "onKeyDown"
17051
+ },
17052
+ {
17053
+ "description": "(React: onFocus) Fired when the buttonLink receives keyboard or mouse focus.",
17054
+ "name": "focus",
17055
+ "reactName": "onFocus"
17056
+ },
17057
+ {
17058
+ "description": "(React: onBlur) Fired when the buttonLink loses keyboard or mouse focus.",
17059
+ "name": "blur",
17060
+ "reactName": "onBlur"
17061
+ }
17062
+ ],
17063
+ "attributes": [
17064
+ {
17065
+ "name": "inline",
16808
17066
  "type": {
16809
- "text": "string | undefined"
17067
+ "text": "boolean"
16810
17068
  },
16811
- "description": "Text to be rendered in the header",
16812
- "attribute": "header-text"
17069
+ "description": "The link can be inline or standalone.",
17070
+ "default": "false",
17071
+ "fieldName": "inline"
16813
17072
  },
16814
17073
  {
16815
- "kind": "field",
16816
- "name": "disabled",
17074
+ "name": "inverted",
16817
17075
  "type": {
16818
17076
  "text": "boolean"
16819
17077
  },
17078
+ "description": "The link color can be inverted by setting the inverted attribute to true.",
16820
17079
  "default": "false",
16821
- "description": "Disables the header, making it visually styled as disabled.\n\nNOTE: slot content will still be interactive unless individually disabled.\nMake sure to handle the disabled state of any actionable elements inside the slot.",
16822
- "attribute": "disabled",
16823
- "reflects": true
16824
- }
16825
- ],
16826
- "attributes": [
17080
+ "fieldName": "inverted"
17081
+ },
16827
17082
  {
16828
- "name": "prefix-icon",
17083
+ "name": "href",
16829
17084
  "type": {
16830
- "text": "IconNames | undefined"
17085
+ "text": "string"
16831
17086
  },
16832
- "description": "Name of the icon rendered before the text\n\nIf not provided, no icon will be rendered and text will be aligned to the start.",
16833
- "fieldName": "prefixIcon"
17087
+ "default": "'#'",
17088
+ "description": "Href for navigation. The URL that the hyperlink points to",
17089
+ "fieldName": "href"
16834
17090
  },
16835
17091
  {
16836
- "name": "postfix-icon",
17092
+ "name": "target",
16837
17093
  "type": {
16838
- "text": "IconNames | undefined"
17094
+ "text": "string"
16839
17095
  },
16840
- "description": "Name of the icon rendered after the slot & text\n\nIf not provided, no icon will be rendered and content will be aligned to the end.",
16841
- "fieldName": "postfixIcon"
17096
+ "default": "'_self'",
17097
+ "description": "Optional target: _blank, _self, _parent, _top and _unfencedTop",
17098
+ "fieldName": "target"
16842
17099
  },
16843
17100
  {
16844
- "name": "header-text",
17101
+ "name": "rel",
16845
17102
  "type": {
16846
17103
  "text": "string | undefined"
16847
17104
  },
16848
- "description": "Text to be rendered in the header",
16849
- "fieldName": "headerText"
17105
+ "description": "Optional rel attribute that defines the relationship of the linked URL as space-separated link types.",
17106
+ "fieldName": "rel"
16850
17107
  },
16851
17108
  {
16852
17109
  "name": "disabled",
16853
17110
  "type": {
16854
- "text": "boolean"
17111
+ "text": "boolean | undefined"
16855
17112
  },
16856
- "default": "false",
16857
- "description": "Disables the header, making it visually styled as disabled.\n\nNOTE: slot content will still be interactive unless individually disabled.\nMake sure to handle the disabled state of any actionable elements inside the slot.",
16858
- "fieldName": "disabled"
17113
+ "description": "Indicates whether the component is disabled.\nWhen the component is disabled for user interaction; it is not focusable or clickable.",
17114
+ "default": "undefined",
17115
+ "fieldName": "disabled",
17116
+ "inheritedFrom": {
17117
+ "name": "DisabledMixin",
17118
+ "module": "src/utils/mixins/DisabledMixin.ts"
17119
+ }
17120
+ },
17121
+ {
17122
+ "name": "tabIndex",
17123
+ "type": {
17124
+ "text": "number"
17125
+ },
17126
+ "default": "0",
17127
+ "description": "This property specifies the tab order of the element.",
17128
+ "fieldName": "tabIndex",
17129
+ "inheritedFrom": {
17130
+ "name": "TabIndexMixin",
17131
+ "module": "src/utils/mixins/TabIndexMixin.ts"
17132
+ }
17133
+ }
17134
+ ],
17135
+ "mixins": [
17136
+ {
17137
+ "name": "DisabledMixin",
17138
+ "module": "/src/utils/mixins/DisabledMixin"
17139
+ },
17140
+ {
17141
+ "name": "TabIndexMixin",
17142
+ "module": "/src/utils/mixins/TabIndexMixin"
16859
17143
  }
16860
17144
  ],
16861
17145
  "superclass": {
16862
17146
  "name": "Component",
16863
17147
  "module": "/src/models"
16864
17148
  },
16865
- "tagName": "mdc-listheader",
16866
- "jsDoc": "/**\n * Listheader component is used to display a header in a list.\n * It can include icons before and after the header text, and allows for additional content via slots.\n *\n * @tagname mdc-listheader\n *\n * @slot default - to pass in actionable content like buttons or links\n *\n * @cssproperty --mdc-listheader-height - height of the header\n * @cssproperty --mdc-listheader-padding - padding around the header content\n * @cssproperty --mdc-listheader-gap - gap between content\n */",
17149
+ "tagName": "mdc-linksimple",
17150
+ "jsDoc": "/**\n * `mdc-linksimple` is a lightweight link component that can be used to navigate\n * within the application or to an external URL. It does not have any predefined default size.\n *\n * The `children` of the `mdc-linksimple` component can be customized to suit\n * different use cases, including text, icons, or other inline content. For the child to be an icon,\n * the `mdc-icon` component should be used to render.\n *\n * @tagname mdc-linksimple\n *\n * @event click - (React: onClick) Fired when the user activates the buttonLink using a mouse or assistive technology.\n * @event keydown - (React: onKeyDown) Fired when the user presses a key while the buttonLink has focus.\n * @event focus - (React: onFocus) Fired when the buttonLink receives keyboard or mouse focus.\n * @event blur - (React: onBlur) Fired when the buttonLink loses keyboard or mouse focus.\n *\n * @cssproperty --mdc-link-border-radius - Border radius of the link.\n * @cssproperty --mdc-link-color-active - Color of the link’s child content in the active state.\n * @cssproperty --mdc-link-color-disabled - Color of the link’s child content in the disabled state.\n * @cssproperty --mdc-link-color-hover - Color of the link’s child content in the hover state.\n * @cssproperty --mdc-link-color-normal - Color of the link’s child content in the normal state.\n * @cssproperty --mdc-link-inverted-color-active - Color of the inverted link’s child content in the active state.\n * @cssproperty --mdc-link-inverted-color-disabled - Color of the inverted link’s child content in the disabled state.\n * @cssproperty --mdc-link-inverted-color-hover - Color of the inverted link’s child content in the hover state.\n * @cssproperty --mdc-link-inverted-color-normal - Color of the inverted link’s child content in the normal state.\n */",
16867
17151
  "customElement": true
16868
17152
  }
16869
17153
  ],
@@ -16872,8 +17156,8 @@
16872
17156
  "kind": "js",
16873
17157
  "name": "default",
16874
17158
  "declaration": {
16875
- "name": "Listheader",
16876
- "module": "components/listheader/listheader.component.js"
17159
+ "name": "Linksimple",
17160
+ "module": "components/linksimple/linksimple.component.js"
16877
17161
  }
16878
17162
  }
16879
17163
  ]
@@ -17413,6 +17697,10 @@
17413
17697
  {
17414
17698
  "name": "TabIndexMixin",
17415
17699
  "module": "/src/utils/mixins/TabIndexMixin"
17700
+ },
17701
+ {
17702
+ "name": "LifeCycleMixin",
17703
+ "module": "/src/utils/mixins/lifecycle/LifeCycleMixin"
17416
17704
  }
17417
17705
  ],
17418
17706
  "superclass": {
@@ -42014,100 +42302,234 @@
42014
42302
  }
42015
42303
  },
42016
42304
  {
42017
- "name": "role",
42305
+ "name": "role",
42306
+ "type": {
42307
+ "text": "HTMLElement['role']"
42308
+ },
42309
+ "description": "Role of the popover",
42310
+ "default": "dialog",
42311
+ "fieldName": "role",
42312
+ "inheritedFrom": {
42313
+ "name": "Popover",
42314
+ "module": "src/components/popover/popover.component.ts"
42315
+ }
42316
+ },
42317
+ {
42318
+ "name": "aria-labelledby",
42319
+ "type": {
42320
+ "text": "string | null"
42321
+ },
42322
+ "default": "null",
42323
+ "description": "aria-labelledby for an interactive popover only, defaults to the trigger component id.\nUsed in nested cases where the triggerComponent isn't the actual button.",
42324
+ "fieldName": "ariaLabelledby",
42325
+ "inheritedFrom": {
42326
+ "name": "Popover",
42327
+ "module": "src/components/popover/popover.component.ts"
42328
+ }
42329
+ },
42330
+ {
42331
+ "name": "aria-describedby",
42332
+ "type": {
42333
+ "text": "string | null"
42334
+ },
42335
+ "default": "null",
42336
+ "description": "aria-describedby of the popover.",
42337
+ "fieldName": "ariaDescribedby",
42338
+ "inheritedFrom": {
42339
+ "name": "Popover",
42340
+ "module": "src/components/popover/popover.component.ts"
42341
+ }
42342
+ },
42343
+ {
42344
+ "name": "disable-aria-expanded",
42345
+ "type": {
42346
+ "text": "boolean"
42347
+ },
42348
+ "description": "Disable setting the aria-expanded attribute on trigger element.\nMake sure to set this to false when the popover is interactive.",
42349
+ "default": "false",
42350
+ "fieldName": "disableAriaExpanded",
42351
+ "inheritedFrom": {
42352
+ "name": "Popover",
42353
+ "module": "src/components/popover/popover.component.ts"
42354
+ }
42355
+ },
42356
+ {
42357
+ "name": "disable-aria-haspopup",
42358
+ "type": {
42359
+ "text": "boolean"
42360
+ },
42361
+ "description": "Disable setting the aria-haspopup attribute on trigger element.\nMake sure to set this to true when the popover is extended and its role\nis not 'dialog' or 'alertdialog' i.e. listbox, menu, etc.",
42362
+ "default": "false",
42363
+ "fieldName": "disableAriaHasPopup",
42364
+ "inheritedFrom": {
42365
+ "name": "Popover",
42366
+ "module": "src/components/popover/popover.component.ts"
42367
+ }
42368
+ },
42369
+ {
42370
+ "name": "keep-connected-tooltip-closed",
42371
+ "type": {
42372
+ "text": "boolean"
42373
+ },
42374
+ "description": "If a tooltip is connected to the same trigger element,\nthis property will keep the connected tooltip closed if this popover is open.\nThis is useful when you want to show a popover with a tooltip\nbut you don't want the tooltip to be shown at the same time.",
42375
+ "fieldName": "keepConnectedTooltipClosed",
42376
+ "inheritedFrom": {
42377
+ "name": "Popover",
42378
+ "module": "src/components/popover/popover.component.ts"
42379
+ }
42380
+ }
42381
+ ],
42382
+ "superclass": {
42383
+ "name": "Popover",
42384
+ "module": "/src/components/popover/popover.component"
42385
+ },
42386
+ "tagName": "mdc-tooltip",
42387
+ "jsDoc": "/**\n * A tooltip is triggered by mouse hover or by keyboard focus\n * and will disappear upon mouse exit or focus change.\n *\n * Note: Tooltips cannot contain content that can be focused or interacted with.\n *\n * @tagname mdc-tooltip\n *\n * @event shown - (React: onShown) This event is dispatched when the tooltip is shown\n * @event hidden - (React: onHidden) This event is dispatched when the tooltip is hidden\n * @event created - (React: onCreated) This event is dispatched when the tooltip is created (added to the DOM)\n * @event destroyed - (React: onDestroyed) This event is dispatched when the tooltip is destroyed (removed from the DOM)\n *\n * @cssproperty --mdc-tooltip-max-width - The maximum width of the tooltip.\n * @cssproperty --mdc-tooltip-padding - The padding of the tooltip.\n * @cssproperty --mdc-tooltip-text-color - The text color of the tooltip.\n * @cssproperty --mdc-tooltip-text-color-contrast - The text color of the tooltip when the color is contrast.\n *\n */",
42388
+ "customElement": true,
42389
+ "slots": [
42390
+ {
42391
+ "description": "Default slot for the popover content",
42392
+ "name": "",
42393
+ "inheritedFrom": {
42394
+ "name": "Popover",
42395
+ "module": "src/components/popover/popover.component.ts"
42396
+ }
42397
+ }
42398
+ ]
42399
+ }
42400
+ ],
42401
+ "exports": [
42402
+ {
42403
+ "kind": "js",
42404
+ "name": "default",
42405
+ "declaration": {
42406
+ "name": "Tooltip",
42407
+ "module": "components/tooltip/tooltip.component.js"
42408
+ }
42409
+ }
42410
+ ]
42411
+ },
42412
+ {
42413
+ "kind": "javascript-module",
42414
+ "path": "components/virtualizedlist/virtualizedlist.component.js",
42415
+ "declarations": [
42416
+ {
42417
+ "kind": "class",
42418
+ "description": "`mdc-virtualizedlist` component for creating custom virtualized lists.\nIMPORTANT: This component does not create it's own list/list items.\nUse the setlistdata callback prop to update client state in order to\nPass list/listitems as a child of this component, which this will virtuailze\nThis implementation handles dynamic lists as well as fixed sized lists.\nPlease refer to [Tanstack Virtual Docs](https://tanstack.com/virtual/latest) for more in depth documentation.",
42419
+ "name": "VirtualizedList",
42420
+ "slots": [
42421
+ {
42422
+ "description": "Client side List with nested list items.",
42423
+ "name": ""
42424
+ }
42425
+ ],
42426
+ "members": [
42427
+ {
42428
+ "kind": "field",
42429
+ "name": "onscroll",
42430
+ "type": {
42431
+ "text": "((this: GlobalEventHandlers, ev: Event) => void) | null"
42432
+ },
42433
+ "description": "Callback that gets called when user scrolls inside of list. This gives access to the scroll container element\nas well via the event. Particularly useful for\nhandling logic related when the user scrolls to the top or bottom of a list.",
42434
+ "default": "null",
42435
+ "attribute": "onscroll"
42436
+ },
42437
+ {
42438
+ "kind": "field",
42439
+ "name": "virtualizerProps",
42440
+ "type": {
42441
+ "text": "VirtualizerProps"
42442
+ },
42443
+ "description": "Object that sets and updates the virtualizer with any relevant props.\nThere are two required object props in order to get virtualization to work properly.\ncount - The length of your list that you are virtualizing.\nAs your list grows/shrinks, this component must be updated with the appropriate value\n(Same with any other updated prop).\nestimateSize - A function that returns the estimated size of your items.\nIf your list is fixed, this will just be the size of your items.\nIf your list is dynamic, try to return approximate the size of each item.\n\nA full list of possible props can be in\n[Tanstack Virtualizer API Docs](https://tanstack.com/virtual/latest/docs/api/virtualizer)",
42444
+ "attribute": "virtualizerprops"
42445
+ },
42446
+ {
42447
+ "kind": "field",
42448
+ "name": "setlistdata",
42449
+ "type": {
42450
+ "text": "(({ virtualItems, measureElement, listStyle }: SetListDataProps) => void) | null"
42451
+ },
42452
+ "description": "Callback that gets envoked when updates to the virtualizer interally occur.\nThis must be implemented in such a way that this function will trigger update to parent.\n\nvirtualItems - Array that will be what the client displays on screen. Use this to render\na List of your choosing with these items nested inside as your ListItems.\nmeasureElement - Ref to pass to each ListItem rendered client side.\nEach ListItem should also be be passed key and a data-index (which can be found on the virtualItem).\nlistStyle - This should be passed as the style attribute to your List.",
42453
+ "default": "null",
42454
+ "attribute": "setlistdata"
42455
+ },
42456
+ {
42457
+ "kind": "field",
42458
+ "name": "scrollElementRef",
42459
+ "type": {
42460
+ "text": "Ref<HTMLDivElement>"
42461
+ },
42462
+ "privacy": "public"
42463
+ },
42464
+ {
42465
+ "kind": "field",
42466
+ "name": "virtualizer",
42018
42467
  "type": {
42019
- "text": "HTMLElement['role']"
42468
+ "text": "Virtualizer<Element, Element> | null"
42020
42469
  },
42021
- "description": "Role of the popover",
42022
- "default": "dialog",
42023
- "fieldName": "role",
42024
- "inheritedFrom": {
42025
- "name": "Popover",
42026
- "module": "src/components/popover/popover.component.ts"
42027
- }
42470
+ "privacy": "public",
42471
+ "default": "null"
42028
42472
  },
42029
42473
  {
42030
- "name": "aria-labelledby",
42474
+ "kind": "field",
42475
+ "name": "virtualItems",
42031
42476
  "type": {
42032
- "text": "string | null"
42477
+ "text": "Array<VirtualItem>"
42033
42478
  },
42034
- "default": "null",
42035
- "description": "aria-labelledby for an interactive popover only, defaults to the trigger component id.\nUsed in nested cases where the triggerComponent isn't the actual button.",
42036
- "fieldName": "ariaLabelledby",
42037
- "inheritedFrom": {
42038
- "name": "Popover",
42039
- "module": "src/components/popover/popover.component.ts"
42040
- }
42479
+ "privacy": "public",
42480
+ "default": "[]"
42041
42481
  },
42042
42482
  {
42043
- "name": "aria-describedby",
42483
+ "kind": "field",
42484
+ "name": "virtualizerController",
42044
42485
  "type": {
42045
- "text": "string | null"
42486
+ "text": "null"
42046
42487
  },
42047
- "default": "null",
42048
- "description": "aria-describedby of the popover.",
42049
- "fieldName": "ariaDescribedby",
42050
- "inheritedFrom": {
42051
- "name": "Popover",
42052
- "module": "src/components/popover/popover.component.ts"
42053
- }
42054
- },
42488
+ "default": "null"
42489
+ }
42490
+ ],
42491
+ "events": [
42055
42492
  {
42056
- "name": "disable-aria-expanded",
42493
+ "description": "(React: onScroll) Event that gets called when user scrolls inside of list.",
42494
+ "name": "onscroll",
42495
+ "reactName": "onScroll"
42496
+ }
42497
+ ],
42498
+ "attributes": [
42499
+ {
42500
+ "name": "onscroll",
42057
42501
  "type": {
42058
- "text": "boolean"
42502
+ "text": "((this: GlobalEventHandlers, ev: Event) => void) | null"
42059
42503
  },
42060
- "description": "Disable setting the aria-expanded attribute on trigger element.\nMake sure to set this to false when the popover is interactive.",
42061
- "default": "false",
42062
- "fieldName": "disableAriaExpanded",
42063
- "inheritedFrom": {
42064
- "name": "Popover",
42065
- "module": "src/components/popover/popover.component.ts"
42066
- }
42504
+ "description": "Callback that gets called when user scrolls inside of list. This gives access to the scroll container element\nas well via the event. Particularly useful for\nhandling logic related when the user scrolls to the top or bottom of a list.",
42505
+ "default": "null",
42506
+ "fieldName": "onscroll"
42067
42507
  },
42068
42508
  {
42069
- "name": "disable-aria-haspopup",
42509
+ "name": "virtualizerprops",
42070
42510
  "type": {
42071
- "text": "boolean"
42511
+ "text": "VirtualizerProps"
42072
42512
  },
42073
- "description": "Disable setting the aria-haspopup attribute on trigger element.\nMake sure to set this to true when the popover is extended and its role\nis not 'dialog' or 'alertdialog' i.e. listbox, menu, etc.",
42074
- "default": "false",
42075
- "fieldName": "disableAriaHasPopup",
42076
- "inheritedFrom": {
42077
- "name": "Popover",
42078
- "module": "src/components/popover/popover.component.ts"
42079
- }
42513
+ "description": "Object that sets and updates the virtualizer with any relevant props.\nThere are two required object props in order to get virtualization to work properly.\ncount - The length of your list that you are virtualizing.\nAs your list grows/shrinks, this component must be updated with the appropriate value\n(Same with any other updated prop).\nestimateSize - A function that returns the estimated size of your items.\nIf your list is fixed, this will just be the size of your items.\nIf your list is dynamic, try to return approximate the size of each item.\n\nA full list of possible props can be in\n[Tanstack Virtualizer API Docs](https://tanstack.com/virtual/latest/docs/api/virtualizer)",
42514
+ "fieldName": "virtualizerProps"
42080
42515
  },
42081
42516
  {
42082
- "name": "keep-connected-tooltip-closed",
42517
+ "name": "setlistdata",
42083
42518
  "type": {
42084
- "text": "boolean"
42519
+ "text": "(({ virtualItems, measureElement, listStyle }: SetListDataProps) => void) | null"
42085
42520
  },
42086
- "description": "If a tooltip is connected to the same trigger element,\nthis property will keep the connected tooltip closed if this popover is open.\nThis is useful when you want to show a popover with a tooltip\nbut you don't want the tooltip to be shown at the same time.",
42087
- "fieldName": "keepConnectedTooltipClosed",
42088
- "inheritedFrom": {
42089
- "name": "Popover",
42090
- "module": "src/components/popover/popover.component.ts"
42091
- }
42521
+ "description": "Callback that gets envoked when updates to the virtualizer interally occur.\nThis must be implemented in such a way that this function will trigger update to parent.\n\nvirtualItems - Array that will be what the client displays on screen. Use this to render\na List of your choosing with these items nested inside as your ListItems.\nmeasureElement - Ref to pass to each ListItem rendered client side.\nEach ListItem should also be be passed key and a data-index (which can be found on the virtualItem).\nlistStyle - This should be passed as the style attribute to your List.",
42522
+ "default": "null",
42523
+ "fieldName": "setlistdata"
42092
42524
  }
42093
42525
  ],
42094
42526
  "superclass": {
42095
- "name": "Popover",
42096
- "module": "/src/components/popover/popover.component"
42527
+ "name": "Component",
42528
+ "module": "/src/models"
42097
42529
  },
42098
- "tagName": "mdc-tooltip",
42099
- "jsDoc": "/**\n * A tooltip is triggered by mouse hover or by keyboard focus\n * and will disappear upon mouse exit or focus change.\n *\n * Note: Tooltips cannot contain content that can be focused or interacted with.\n *\n * @tagname mdc-tooltip\n *\n * @event shown - (React: onShown) This event is dispatched when the tooltip is shown\n * @event hidden - (React: onHidden) This event is dispatched when the tooltip is hidden\n * @event created - (React: onCreated) This event is dispatched when the tooltip is created (added to the DOM)\n * @event destroyed - (React: onDestroyed) This event is dispatched when the tooltip is destroyed (removed from the DOM)\n *\n * @cssproperty --mdc-tooltip-max-width - The maximum width of the tooltip.\n * @cssproperty --mdc-tooltip-padding - The padding of the tooltip.\n * @cssproperty --mdc-tooltip-text-color - The text color of the tooltip.\n * @cssproperty --mdc-tooltip-text-color-contrast - The text color of the tooltip when the color is contrast.\n *\n */",
42100
- "customElement": true,
42101
- "slots": [
42102
- {
42103
- "description": "Default slot for the popover content",
42104
- "name": "",
42105
- "inheritedFrom": {
42106
- "name": "Popover",
42107
- "module": "src/components/popover/popover.component.ts"
42108
- }
42109
- }
42110
- ]
42530
+ "tagName": "mdc-virtualizedlist",
42531
+ "jsDoc": "/**\n * `mdc-virtualizedlist` component for creating custom virtualized lists.\n * IMPORTANT: This component does not create it's own list/list items.\n * Use the setlistdata callback prop to update client state in order to\n * Pass list/listitems as a child of this component, which this will virtuailze\n * This implementation handles dynamic lists as well as fixed sized lists.\n * Please refer to [Tanstack Virtual Docs](https://tanstack.com/virtual/latest) for more in depth documentation.\n *\n * @tagname mdc-virtualizedlist\n *\n * @event onscroll - (React: onScroll) Event that gets called when user scrolls inside of list.\n *\n * @slot - Client side List with nested list items.\n */",
42532
+ "customElement": true
42111
42533
  }
42112
42534
  ],
42113
42535
  "exports": [
@@ -42115,8 +42537,8 @@
42115
42537
  "kind": "js",
42116
42538
  "name": "default",
42117
42539
  "declaration": {
42118
- "name": "Tooltip",
42119
- "module": "components/tooltip/tooltip.component.js"
42540
+ "name": "VirtualizedList",
42541
+ "module": "components/virtualizedlist/virtualizedlist.component.js"
42120
42542
  }
42121
42543
  }
42122
42544
  ]
@@ -42411,172 +42833,38 @@
42411
42833
  "fieldName": "type"
42412
42834
  },
42413
42835
  {
42414
- "name": "tagname",
42415
- "type": {
42416
- "text": "TagName | undefined"
42417
- },
42418
- "description": "Specifies the HTML tag name for the text element. The default tag name is `p`.\nThis attribute is optional. When set, it changes the tag name of the internal text element.\n\nAcceptable values include all valid tag names from the Text component.",
42419
- "fieldName": "tagname"
42420
- },
42421
- {
42422
- "name": "speed",
42423
- "type": {
42424
- "text": "TypewriterSpeed"
42425
- },
42426
- "description": "Speed of the typewriter effect in milliseconds per character.\nCan be a string preset or a numeric string in milliseconds.\n- 'very-slow' = 240ms per character\n- 'slow' = 120ms per character\n- 'normal' = 60ms per character (default)\n- 'fast' = 20ms per character\n- 'very-fast' = 1ms per character\n- Or any numeric string representing milliseconds (e.g., '100')",
42427
- "default": "'normal' (60ms per character)",
42428
- "fieldName": "speed"
42429
- },
42430
- {
42431
- "name": "max-queue-size",
42432
- "type": {
42433
- "text": "number"
42434
- },
42435
- "description": "Maximum number of text chunks that can be queued before oldest chunks are dropped.\nSet to prevent memory accumulation from excessive queuing.",
42436
- "default": "Number.MAX_SAFE_INTEGER (effectively unlimited)",
42437
- "fieldName": "maxQueueSize"
42438
- }
42439
- ],
42440
- "superclass": {
42441
- "name": "Component",
42442
- "module": "/src/models"
42443
- },
42444
- "tagName": "mdc-typewriter",
42445
- "jsDoc": "/**\n * Typewriter component that creates a typewriter effect on text content.\n * It uses the Text component internally, adding a progressive typing effect.\n *\n * The `type` attribute allows changing the text style (passed to the internal Text component).\n * The `tagname` attribute allows changing the tag name of the text element (passed to the internal Text component).\n * The default tag name is `p`.\n *\n * The `speed` attribute controls typing speed in milliseconds per character:\n * - 'very-slow' = 240ms per character\n * - 'slow' = 120ms per character\n * - 'normal' = 60ms per character (default)\n * - 'fast' = 20ms per character\n * - 'very-fast' = 1ms per character\n * - Or any numeric string representing milliseconds\n *\n * Advanced features:\n * - Dynamic speed adjustment during typing\n * - Chunked text addition via addTextChunk() method\n * - Instant text addition via addInstantTextChunk() method or instant parameter\n * - Mixed instant and animated chunks in queue\n * - Continues typing in background tabs\n * - Performance optimized for large text\n * - maxQueueSize to limit memory usage from excessive queuing\n * - event handling for typing completion and content changes\n *\n * The component includes accessibility features:\n * - Screen readers announce the complete text, not character by character\n * - Uses aria-live=\"polite\" for dynamic content updates\n * - Sets aria-busy during typing animation\n *\n * @dependency mdc-text\n *\n * @tagname mdc-typewriter\n * @slot - Default slot for text content\n *\n * @csspart container - Container for the text element\n * @csspart text - The text element (forwarded to mdc-text)\n *\n * @event typing-complete - (React: onTypingComplete) Fired when the typewriter finishes typing all content.\n * Detail: \\{ finalContent: string \\}\n * @event change - (React: onChange) Fired when the content of the typewriter changes.\n * Detail: \\{ content: string, isTyping: boolean \\}\n */",
42446
- "customElement": true
42447
- }
42448
- ],
42449
- "exports": [
42450
- {
42451
- "kind": "js",
42452
- "name": "default",
42453
- "declaration": {
42454
- "name": "Typewriter",
42455
- "module": "components/typewriter/typewriter.component.js"
42456
- }
42457
- }
42458
- ]
42459
- },
42460
- {
42461
- "kind": "javascript-module",
42462
- "path": "components/virtualizedlist/virtualizedlist.component.js",
42463
- "declarations": [
42464
- {
42465
- "kind": "class",
42466
- "description": "`mdc-virtualizedlist` component for creating custom virtualized lists.\nIMPORTANT: This component does not create it's own list/list items.\nUse the setlistdata callback prop to update client state in order to\nPass list/listitems as a child of this component, which this will virtuailze\nThis implementation handles dynamic lists as well as fixed sized lists.\nPlease refer to [Tanstack Virtual Docs](https://tanstack.com/virtual/latest) for more in depth documentation.",
42467
- "name": "VirtualizedList",
42468
- "slots": [
42469
- {
42470
- "description": "Client side List with nested list items.",
42471
- "name": ""
42472
- }
42473
- ],
42474
- "members": [
42475
- {
42476
- "kind": "field",
42477
- "name": "onscroll",
42478
- "type": {
42479
- "text": "((this: GlobalEventHandlers, ev: Event) => void) | null"
42480
- },
42481
- "description": "Callback that gets called when user scrolls inside of list. This gives access to the scroll container element\nas well via the event. Particularly useful for\nhandling logic related when the user scrolls to the top or bottom of a list.",
42482
- "default": "null",
42483
- "attribute": "onscroll"
42484
- },
42485
- {
42486
- "kind": "field",
42487
- "name": "virtualizerProps",
42488
- "type": {
42489
- "text": "VirtualizerProps"
42490
- },
42491
- "description": "Object that sets and updates the virtualizer with any relevant props.\nThere are two required object props in order to get virtualization to work properly.\ncount - The length of your list that you are virtualizing.\nAs your list grows/shrinks, this component must be updated with the appropriate value\n(Same with any other updated prop).\nestimateSize - A function that returns the estimated size of your items.\nIf your list is fixed, this will just be the size of your items.\nIf your list is dynamic, try to return approximate the size of each item.\n\nA full list of possible props can be in\n[Tanstack Virtualizer API Docs](https://tanstack.com/virtual/latest/docs/api/virtualizer)",
42492
- "attribute": "virtualizerprops"
42493
- },
42494
- {
42495
- "kind": "field",
42496
- "name": "setlistdata",
42497
- "type": {
42498
- "text": "(({ virtualItems, measureElement, listStyle }: SetListDataProps) => void) | null"
42499
- },
42500
- "description": "Callback that gets envoked when updates to the virtualizer interally occur.\nThis must be implemented in such a way that this function will trigger update to parent.\n\nvirtualItems - Array that will be what the client displays on screen. Use this to render\na List of your choosing with these items nested inside as your ListItems.\nmeasureElement - Ref to pass to each ListItem rendered client side.\nEach ListItem should also be be passed key and a data-index (which can be found on the virtualItem).\nlistStyle - This should be passed as the style attribute to your List.",
42501
- "default": "null",
42502
- "attribute": "setlistdata"
42503
- },
42504
- {
42505
- "kind": "field",
42506
- "name": "scrollElementRef",
42507
- "type": {
42508
- "text": "Ref<HTMLDivElement>"
42509
- },
42510
- "privacy": "public"
42511
- },
42512
- {
42513
- "kind": "field",
42514
- "name": "virtualizer",
42515
- "type": {
42516
- "text": "Virtualizer<Element, Element> | null"
42517
- },
42518
- "privacy": "public",
42519
- "default": "null"
42520
- },
42521
- {
42522
- "kind": "field",
42523
- "name": "virtualItems",
42524
- "type": {
42525
- "text": "Array<VirtualItem>"
42526
- },
42527
- "privacy": "public",
42528
- "default": "[]"
42529
- },
42530
- {
42531
- "kind": "field",
42532
- "name": "virtualizerController",
42533
- "type": {
42534
- "text": "null"
42535
- },
42536
- "default": "null"
42537
- }
42538
- ],
42539
- "events": [
42540
- {
42541
- "description": "(React: onScroll) Event that gets called when user scrolls inside of list.",
42542
- "name": "onscroll",
42543
- "reactName": "onScroll"
42544
- }
42545
- ],
42546
- "attributes": [
42547
- {
42548
- "name": "onscroll",
42836
+ "name": "tagname",
42549
42837
  "type": {
42550
- "text": "((this: GlobalEventHandlers, ev: Event) => void) | null"
42838
+ "text": "TagName | undefined"
42551
42839
  },
42552
- "description": "Callback that gets called when user scrolls inside of list. This gives access to the scroll container element\nas well via the event. Particularly useful for\nhandling logic related when the user scrolls to the top or bottom of a list.",
42553
- "default": "null",
42554
- "fieldName": "onscroll"
42840
+ "description": "Specifies the HTML tag name for the text element. The default tag name is `p`.\nThis attribute is optional. When set, it changes the tag name of the internal text element.\n\nAcceptable values include all valid tag names from the Text component.",
42841
+ "fieldName": "tagname"
42555
42842
  },
42556
42843
  {
42557
- "name": "virtualizerprops",
42844
+ "name": "speed",
42558
42845
  "type": {
42559
- "text": "VirtualizerProps"
42846
+ "text": "TypewriterSpeed"
42560
42847
  },
42561
- "description": "Object that sets and updates the virtualizer with any relevant props.\nThere are two required object props in order to get virtualization to work properly.\ncount - The length of your list that you are virtualizing.\nAs your list grows/shrinks, this component must be updated with the appropriate value\n(Same with any other updated prop).\nestimateSize - A function that returns the estimated size of your items.\nIf your list is fixed, this will just be the size of your items.\nIf your list is dynamic, try to return approximate the size of each item.\n\nA full list of possible props can be in\n[Tanstack Virtualizer API Docs](https://tanstack.com/virtual/latest/docs/api/virtualizer)",
42562
- "fieldName": "virtualizerProps"
42848
+ "description": "Speed of the typewriter effect in milliseconds per character.\nCan be a string preset or a numeric string in milliseconds.\n- 'very-slow' = 240ms per character\n- 'slow' = 120ms per character\n- 'normal' = 60ms per character (default)\n- 'fast' = 20ms per character\n- 'very-fast' = 1ms per character\n- Or any numeric string representing milliseconds (e.g., '100')",
42849
+ "default": "'normal' (60ms per character)",
42850
+ "fieldName": "speed"
42563
42851
  },
42564
42852
  {
42565
- "name": "setlistdata",
42853
+ "name": "max-queue-size",
42566
42854
  "type": {
42567
- "text": "(({ virtualItems, measureElement, listStyle }: SetListDataProps) => void) | null"
42855
+ "text": "number"
42568
42856
  },
42569
- "description": "Callback that gets envoked when updates to the virtualizer interally occur.\nThis must be implemented in such a way that this function will trigger update to parent.\n\nvirtualItems - Array that will be what the client displays on screen. Use this to render\na List of your choosing with these items nested inside as your ListItems.\nmeasureElement - Ref to pass to each ListItem rendered client side.\nEach ListItem should also be be passed key and a data-index (which can be found on the virtualItem).\nlistStyle - This should be passed as the style attribute to your List.",
42570
- "default": "null",
42571
- "fieldName": "setlistdata"
42857
+ "description": "Maximum number of text chunks that can be queued before oldest chunks are dropped.\nSet to prevent memory accumulation from excessive queuing.",
42858
+ "default": "Number.MAX_SAFE_INTEGER (effectively unlimited)",
42859
+ "fieldName": "maxQueueSize"
42572
42860
  }
42573
42861
  ],
42574
42862
  "superclass": {
42575
42863
  "name": "Component",
42576
42864
  "module": "/src/models"
42577
42865
  },
42578
- "tagName": "mdc-virtualizedlist",
42579
- "jsDoc": "/**\n * `mdc-virtualizedlist` component for creating custom virtualized lists.\n * IMPORTANT: This component does not create it's own list/list items.\n * Use the setlistdata callback prop to update client state in order to\n * Pass list/listitems as a child of this component, which this will virtuailze\n * This implementation handles dynamic lists as well as fixed sized lists.\n * Please refer to [Tanstack Virtual Docs](https://tanstack.com/virtual/latest) for more in depth documentation.\n *\n * @tagname mdc-virtualizedlist\n *\n * @event onscroll - (React: onScroll) Event that gets called when user scrolls inside of list.\n *\n * @slot - Client side List with nested list items.\n */",
42866
+ "tagName": "mdc-typewriter",
42867
+ "jsDoc": "/**\n * Typewriter component that creates a typewriter effect on text content.\n * It uses the Text component internally, adding a progressive typing effect.\n *\n * The `type` attribute allows changing the text style (passed to the internal Text component).\n * The `tagname` attribute allows changing the tag name of the text element (passed to the internal Text component).\n * The default tag name is `p`.\n *\n * The `speed` attribute controls typing speed in milliseconds per character:\n * - 'very-slow' = 240ms per character\n * - 'slow' = 120ms per character\n * - 'normal' = 60ms per character (default)\n * - 'fast' = 20ms per character\n * - 'very-fast' = 1ms per character\n * - Or any numeric string representing milliseconds\n *\n * Advanced features:\n * - Dynamic speed adjustment during typing\n * - Chunked text addition via addTextChunk() method\n * - Instant text addition via addInstantTextChunk() method or instant parameter\n * - Mixed instant and animated chunks in queue\n * - Continues typing in background tabs\n * - Performance optimized for large text\n * - maxQueueSize to limit memory usage from excessive queuing\n * - event handling for typing completion and content changes\n *\n * The component includes accessibility features:\n * - Screen readers announce the complete text, not character by character\n * - Uses aria-live=\"polite\" for dynamic content updates\n * - Sets aria-busy during typing animation\n *\n * @dependency mdc-text\n *\n * @tagname mdc-typewriter\n * @slot - Default slot for text content\n *\n * @csspart container - Container for the text element\n * @csspart text - The text element (forwarded to mdc-text)\n *\n * @event typing-complete - (React: onTypingComplete) Fired when the typewriter finishes typing all content.\n * Detail: \\{ finalContent: string \\}\n * @event change - (React: onChange) Fired when the content of the typewriter changes.\n * Detail: \\{ content: string, isTyping: boolean \\}\n */",
42580
42868
  "customElement": true
42581
42869
  }
42582
42870
  ],
@@ -42585,8 +42873,8 @@
42585
42873
  "kind": "js",
42586
42874
  "name": "default",
42587
42875
  "declaration": {
42588
- "name": "VirtualizedList",
42589
- "module": "components/virtualizedlist/virtualizedlist.component.js"
42876
+ "name": "Typewriter",
42877
+ "module": "components/typewriter/typewriter.component.js"
42590
42878
  }
42591
42879
  }
42592
42880
  ]
@@ -44292,15 +44580,242 @@
44292
44580
  "name": "FooterMixin",
44293
44581
  "members": [
44294
44582
  {
44295
- "kind": "method",
44296
- "name": "renderFooter",
44297
- "privacy": "protected",
44298
- "description": "Renders the footer of the card if footer-link,\nfooter-button-primary, or footer-button-secondary slots are provided",
44299
- "return": {
44300
- "type": {
44301
- "text": ""
44302
- }
44303
- }
44583
+ "kind": "method",
44584
+ "name": "renderFooter",
44585
+ "privacy": "protected",
44586
+ "description": "Renders the footer of the card if footer-link,\nfooter-button-primary, or footer-button-secondary slots are provided",
44587
+ "return": {
44588
+ "type": {
44589
+ "text": ""
44590
+ }
44591
+ }
44592
+ }
44593
+ ],
44594
+ "parameters": [
44595
+ {
44596
+ "name": "superClass",
44597
+ "type": {
44598
+ "text": "T"
44599
+ }
44600
+ }
44601
+ ]
44602
+ }
44603
+ ],
44604
+ "exports": [
44605
+ {
44606
+ "kind": "js",
44607
+ "name": "FooterMixinInterface",
44608
+ "declaration": {
44609
+ "name": "FooterMixinInterface",
44610
+ "module": "utils/mixins/FooterMixin.js"
44611
+ }
44612
+ },
44613
+ {
44614
+ "kind": "js",
44615
+ "name": "FooterMixin",
44616
+ "declaration": {
44617
+ "name": "FooterMixin",
44618
+ "module": "utils/mixins/FooterMixin.js"
44619
+ }
44620
+ }
44621
+ ]
44622
+ },
44623
+ {
44624
+ "kind": "javascript-module",
44625
+ "path": "utils/mixins/FormInternalsMixin.js",
44626
+ "declarations": [
44627
+ {
44628
+ "kind": "class",
44629
+ "description": "",
44630
+ "name": "FormInternalsMixinInterface",
44631
+ "members": [
44632
+ {
44633
+ "kind": "field",
44634
+ "name": "name",
44635
+ "type": {
44636
+ "text": "string"
44637
+ }
44638
+ },
44639
+ {
44640
+ "kind": "field",
44641
+ "name": "value",
44642
+ "type": {
44643
+ "text": "string"
44644
+ }
44645
+ },
44646
+ {
44647
+ "kind": "field",
44648
+ "name": "form",
44649
+ "type": {
44650
+ "text": "HTMLFormElement | null"
44651
+ }
44652
+ },
44653
+ {
44654
+ "kind": "field",
44655
+ "name": "validity",
44656
+ "type": {
44657
+ "text": "ValidityState"
44658
+ }
44659
+ },
44660
+ {
44661
+ "kind": "field",
44662
+ "name": "validationMessage",
44663
+ "type": {
44664
+ "text": "string"
44665
+ }
44666
+ },
44667
+ {
44668
+ "kind": "field",
44669
+ "name": "willValidate",
44670
+ "type": {
44671
+ "text": "boolean"
44672
+ }
44673
+ },
44674
+ {
44675
+ "kind": "field",
44676
+ "name": "internals",
44677
+ "type": {
44678
+ "text": "ElementInternals"
44679
+ },
44680
+ "privacy": "protected"
44681
+ },
44682
+ {
44683
+ "kind": "field",
44684
+ "name": "inputElement",
44685
+ "type": {
44686
+ "text": "HTMLInputElement | HTMLTextAreaElement"
44687
+ },
44688
+ "privacy": "protected"
44689
+ },
44690
+ {
44691
+ "kind": "method",
44692
+ "name": "setValidity",
44693
+ "return": {
44694
+ "type": {
44695
+ "text": "void"
44696
+ }
44697
+ }
44698
+ },
44699
+ {
44700
+ "kind": "method",
44701
+ "name": "checkValidity",
44702
+ "return": {
44703
+ "type": {
44704
+ "text": "boolean"
44705
+ }
44706
+ }
44707
+ },
44708
+ {
44709
+ "kind": "method",
44710
+ "name": "reportValidity",
44711
+ "return": {
44712
+ "type": {
44713
+ "text": "boolean"
44714
+ }
44715
+ }
44716
+ }
44717
+ ]
44718
+ },
44719
+ {
44720
+ "kind": "mixin",
44721
+ "description": "",
44722
+ "name": "FormInternalsMixin",
44723
+ "members": [
44724
+ {
44725
+ "kind": "field",
44726
+ "name": "name",
44727
+ "type": {
44728
+ "text": "string"
44729
+ },
44730
+ "default": "''",
44731
+ "description": "Indicates the name of the component group.\nThey are used to group elements in a form together.",
44732
+ "attribute": "name",
44733
+ "reflects": true
44734
+ },
44735
+ {
44736
+ "kind": "field",
44737
+ "name": "value",
44738
+ "type": {
44739
+ "text": "string"
44740
+ },
44741
+ "default": "''",
44742
+ "description": "Indicates the value of the component group (ex: input, checkbox, radio, select etc...)",
44743
+ "attribute": "value",
44744
+ "reflects": true
44745
+ },
44746
+ {
44747
+ "kind": "field",
44748
+ "name": "validationMessage",
44749
+ "type": {
44750
+ "text": "string | undefined"
44751
+ },
44752
+ "description": "Custom validation message that will override the default message and displayed when the input is invalid.\n\nTo display custom validation messages, you must listen for input events (or other relevant events)\non your component and update the `validationMessage` property with the desired message string.\nUpdating this property will ensure that new validation messages are shown to the user.\n- The `validationMessage` property overrides the default browser validation message when set.\n- Consumers are responsible for updating `validationMessage` in response to input or validation state changes.",
44753
+ "attribute": "validation-message",
44754
+ "reflects": true
44755
+ },
44756
+ {
44757
+ "kind": "field",
44758
+ "name": "validity",
44759
+ "type": {
44760
+ "text": "ValidityState"
44761
+ },
44762
+ "readonly": true
44763
+ },
44764
+ {
44765
+ "kind": "field",
44766
+ "name": "willValidate",
44767
+ "readonly": true
44768
+ },
44769
+ {
44770
+ "kind": "method",
44771
+ "name": "setValidity",
44772
+ "description": "Sets the validity of the input field based on the input field's validity.",
44773
+ "return": {
44774
+ "type": {
44775
+ "text": ""
44776
+ }
44777
+ }
44778
+ },
44779
+ {
44780
+ "kind": "method",
44781
+ "name": "checkValidity",
44782
+ "return": {
44783
+ "type": {
44784
+ "text": "boolean"
44785
+ }
44786
+ }
44787
+ },
44788
+ {
44789
+ "kind": "method",
44790
+ "name": "reportValidity"
44791
+ }
44792
+ ],
44793
+ "attributes": [
44794
+ {
44795
+ "name": "name",
44796
+ "type": {
44797
+ "text": "string"
44798
+ },
44799
+ "default": "''",
44800
+ "description": "Indicates the name of the component group.\nThey are used to group elements in a form together.",
44801
+ "fieldName": "name"
44802
+ },
44803
+ {
44804
+ "name": "value",
44805
+ "type": {
44806
+ "text": "string"
44807
+ },
44808
+ "default": "''",
44809
+ "description": "Indicates the value of the component group (ex: input, checkbox, radio, select etc...)",
44810
+ "fieldName": "value"
44811
+ },
44812
+ {
44813
+ "name": "validation-message",
44814
+ "type": {
44815
+ "text": "string | undefined"
44816
+ },
44817
+ "description": "Custom validation message that will override the default message and displayed when the input is invalid.\n\nTo display custom validation messages, you must listen for input events (or other relevant events)\non your component and update the `validationMessage` property with the desired message string.\nUpdating this property will ensure that new validation messages are shown to the user.\n- The `validationMessage` property overrides the default browser validation message when set.\n- Consumers are responsible for updating `validationMessage` in response to input or validation state changes.",
44818
+ "fieldName": "validationMessage"
44304
44819
  }
44305
44820
  ],
44306
44821
  "parameters": [
@@ -44316,218 +44831,308 @@
44316
44831
  "exports": [
44317
44832
  {
44318
44833
  "kind": "js",
44319
- "name": "FooterMixinInterface",
44834
+ "name": "FormInternalsMixinInterface",
44320
44835
  "declaration": {
44321
- "name": "FooterMixinInterface",
44322
- "module": "utils/mixins/FooterMixin.js"
44836
+ "name": "FormInternalsMixinInterface",
44837
+ "module": "utils/mixins/FormInternalsMixin.js"
44323
44838
  }
44324
44839
  },
44325
44840
  {
44326
44841
  "kind": "js",
44327
- "name": "FooterMixin",
44842
+ "name": "FormInternalsMixin",
44328
44843
  "declaration": {
44329
- "name": "FooterMixin",
44330
- "module": "utils/mixins/FooterMixin.js"
44844
+ "name": "FormInternalsMixin",
44845
+ "module": "utils/mixins/FormInternalsMixin.js"
44331
44846
  }
44332
44847
  }
44333
44848
  ]
44334
44849
  },
44335
44850
  {
44336
44851
  "kind": "javascript-module",
44337
- "path": "utils/mixins/FormInternalsMixin.js",
44852
+ "path": "utils/mixins/IconNameMixin.js",
44338
44853
  "declarations": [
44339
44854
  {
44340
- "kind": "class",
44855
+ "kind": "mixin",
44341
44856
  "description": "",
44342
- "name": "FormInternalsMixinInterface",
44857
+ "name": "IconNameMixin",
44343
44858
  "members": [
44344
44859
  {
44345
44860
  "kind": "field",
44346
- "name": "name",
44347
- "type": {
44348
- "text": "string"
44349
- }
44350
- },
44351
- {
44352
- "kind": "field",
44353
- "name": "value",
44354
- "type": {
44355
- "text": "string"
44356
- }
44357
- },
44358
- {
44359
- "kind": "field",
44360
- "name": "form",
44361
- "type": {
44362
- "text": "HTMLFormElement | null"
44363
- }
44364
- },
44365
- {
44366
- "kind": "field",
44367
- "name": "validity",
44861
+ "name": "iconName",
44368
44862
  "type": {
44369
- "text": "ValidityState"
44370
- }
44371
- },
44863
+ "text": "IconNames | undefined"
44864
+ },
44865
+ "description": "Name of the icon (= filename).\n\nIf no `icon-name` is provided, no icon will be rendered.",
44866
+ "attribute": "icon-name"
44867
+ }
44868
+ ],
44869
+ "attributes": [
44372
44870
  {
44373
- "kind": "field",
44374
- "name": "validationMessage",
44871
+ "name": "icon-name",
44375
44872
  "type": {
44376
- "text": "string"
44377
- }
44378
- },
44873
+ "text": "IconNames | undefined"
44874
+ },
44875
+ "description": "Name of the icon (= filename).\n\nIf no `icon-name` is provided, no icon will be rendered.",
44876
+ "fieldName": "iconName"
44877
+ }
44878
+ ],
44879
+ "parameters": [
44379
44880
  {
44380
- "kind": "field",
44381
- "name": "willValidate",
44881
+ "name": "superClass",
44382
44882
  "type": {
44383
- "text": "boolean"
44883
+ "text": "T"
44384
44884
  }
44385
- },
44885
+ }
44886
+ ]
44887
+ }
44888
+ ],
44889
+ "exports": [
44890
+ {
44891
+ "kind": "js",
44892
+ "name": "IconNameMixin",
44893
+ "declaration": {
44894
+ "name": "IconNameMixin",
44895
+ "module": "utils/mixins/IconNameMixin.js"
44896
+ }
44897
+ }
44898
+ ]
44899
+ },
44900
+ {
44901
+ "kind": "javascript-module",
44902
+ "path": "utils/mixins/ItemCollectionMixin.js",
44903
+ "declarations": [
44904
+ {
44905
+ "kind": "class",
44906
+ "description": "",
44907
+ "name": "ItemCollectionMixinInterface",
44908
+ "members": [
44386
44909
  {
44387
44910
  "kind": "field",
44388
- "name": "internals",
44911
+ "name": "items",
44389
44912
  "type": {
44390
- "text": "ElementInternals"
44913
+ "text": "TItem[]"
44391
44914
  },
44392
- "privacy": "protected"
44915
+ "privacy": "public",
44916
+ "description": "List of items (cached)",
44917
+ "readonly": true
44393
44918
  },
44394
44919
  {
44395
- "kind": "field",
44396
- "name": "inputElement",
44397
- "type": {
44398
- "text": "HTMLInputElement | HTMLTextAreaElement"
44920
+ "kind": "method",
44921
+ "name": "isValidItem",
44922
+ "privacy": "protected",
44923
+ "return": {
44924
+ "type": {
44925
+ "text": ""
44926
+ }
44399
44927
  },
44400
- "privacy": "protected"
44928
+ "parameters": [
44929
+ {
44930
+ "name": "item",
44931
+ "type": {
44932
+ "text": "Element"
44933
+ },
44934
+ "description": "The item to validate."
44935
+ }
44936
+ ],
44937
+ "description": "Checks if the item is valid.\nInvalid items will not be collected or processed.\nThis method can be overridden by subclasses to define custom validation logic."
44401
44938
  },
44402
44939
  {
44403
44940
  "kind": "method",
44404
- "name": "setValidity",
44941
+ "name": "addItemToCacheAt",
44942
+ "privacy": "protected",
44405
44943
  "return": {
44406
44944
  "type": {
44407
44945
  "text": "void"
44408
44946
  }
44409
- }
44947
+ },
44948
+ "parameters": [
44949
+ {
44950
+ "name": "item",
44951
+ "type": {
44952
+ "text": "Element"
44953
+ },
44954
+ "description": "The item to add to the cache."
44955
+ },
44956
+ {
44957
+ "name": "index",
44958
+ "optional": true,
44959
+ "type": {
44960
+ "text": "number"
44961
+ },
44962
+ "description": "The index at which to add the item. If -1, adds to the end."
44963
+ }
44964
+ ],
44965
+ "description": "Adds an item to the cache at the specified index.\nWhen the index\n is `undefined`, the item is added automatically keeping the DOM order.\n is `-1`, the item is added to the end of the cache.\n is `>= 0`, the item is added at that index.\n otherwise, do nothing."
44410
44966
  },
44411
44967
  {
44412
44968
  "kind": "method",
44413
- "name": "checkValidity",
44969
+ "name": "removeItemFromCache",
44970
+ "privacy": "protected",
44414
44971
  "return": {
44415
44972
  "type": {
44416
- "text": "boolean"
44973
+ "text": "void"
44417
44974
  }
44418
- }
44975
+ },
44976
+ "parameters": [
44977
+ {
44978
+ "name": "item",
44979
+ "type": {
44980
+ "text": "Element"
44981
+ },
44982
+ "description": "The item to remove from the cache."
44983
+ }
44984
+ ],
44985
+ "description": "Removes an item from the cache."
44419
44986
  },
44420
44987
  {
44421
44988
  "kind": "method",
44422
- "name": "reportValidity",
44989
+ "name": "setItemCache",
44990
+ "privacy": "protected",
44423
44991
  "return": {
44424
44992
  "type": {
44425
- "text": "boolean"
44993
+ "text": "void"
44426
44994
  }
44427
- }
44995
+ },
44996
+ "parameters": [
44997
+ {
44998
+ "name": "items",
44999
+ "optional": true,
45000
+ "type": {
45001
+ "text": "TItem[]"
45002
+ },
45003
+ "description": "The items to set in the cache."
45004
+ }
45005
+ ],
45006
+ "description": "Sets the item cache to the provided items.\nIf no items are provided, it clears the cache."
44428
45007
  }
44429
45008
  ]
44430
45009
  },
44431
45010
  {
44432
45011
  "kind": "mixin",
44433
- "description": "",
44434
- "name": "FormInternalsMixin",
45012
+ "description": "This mixin collects and cache items based on the `created` and `destroyed` lifecycle events.\nAlso provides methods to manage the item cache.",
45013
+ "name": "ItemCollectionMixin",
44435
45014
  "members": [
44436
45015
  {
44437
45016
  "kind": "field",
44438
- "name": "name",
45017
+ "name": "itemCache",
44439
45018
  "type": {
44440
- "text": "string"
45019
+ "text": "TItem[]"
44441
45020
  },
44442
- "default": "''",
44443
- "description": "Indicates the name of the component group.\nThey are used to group elements in a form together.",
44444
- "attribute": "name",
44445
- "reflects": true
45021
+ "privacy": "private",
45022
+ "default": "[]"
44446
45023
  },
44447
45024
  {
44448
45025
  "kind": "field",
44449
- "name": "value",
45026
+ "name": "items",
44450
45027
  "type": {
44451
- "text": "string"
45028
+ "text": "TItem[]"
44452
45029
  },
44453
- "default": "''",
44454
- "description": "Indicates the value of the component group (ex: input, checkbox, radio, select etc...)",
44455
- "attribute": "value",
44456
- "reflects": true
45030
+ "privacy": "protected",
45031
+ "readonly": true
44457
45032
  },
44458
45033
  {
44459
- "kind": "field",
44460
- "name": "validationMessage",
44461
- "type": {
44462
- "text": "string | undefined"
44463
- },
44464
- "description": "Custom validation message that will override the default message and displayed when the input is invalid.\n\nTo display custom validation messages, you must listen for input events (or other relevant events)\non your component and update the `validationMessage` property with the desired message string.\nUpdating this property will ensure that new validation messages are shown to the user.\n- The `validationMessage` property overrides the default browser validation message when set.\n- Consumers are responsible for updating `validationMessage` in response to input or validation state changes.",
44465
- "attribute": "validation-message",
44466
- "reflects": true
45034
+ "kind": "method",
45035
+ "name": "itemCreationHandler",
45036
+ "privacy": "protected",
45037
+ "parameters": [
45038
+ {
45039
+ "name": "event",
45040
+ "type": {
45041
+ "text": "Event"
45042
+ },
45043
+ "description": "The event triggered when an item is created."
45044
+ }
45045
+ ],
45046
+ "description": "Handles the item creation event."
44467
45047
  },
44468
45048
  {
44469
- "kind": "field",
44470
- "name": "validity",
44471
- "type": {
44472
- "text": "ValidityState"
45049
+ "kind": "method",
45050
+ "name": "itemDestroyHandler",
45051
+ "privacy": "protected",
45052
+ "parameters": [
45053
+ {
45054
+ "name": "event",
45055
+ "type": {
45056
+ "text": "Event"
45057
+ },
45058
+ "description": "The event triggered when an item is destroyed."
45059
+ }
45060
+ ],
45061
+ "description": "Handles the item destroy event."
45062
+ },
45063
+ {
45064
+ "kind": "method",
45065
+ "name": "isValidItem",
45066
+ "privacy": "protected",
45067
+ "return": {
45068
+ "type": {
45069
+ "text": "boolean"
45070
+ }
44473
45071
  },
44474
- "readonly": true
45072
+ "parameters": [
45073
+ {
45074
+ "name": "item",
45075
+ "type": {
45076
+ "text": "Element"
45077
+ }
45078
+ }
45079
+ ]
44475
45080
  },
44476
45081
  {
44477
- "kind": "field",
44478
- "name": "willValidate",
44479
- "readonly": true
45082
+ "kind": "method",
45083
+ "name": "addItemToCacheAt",
45084
+ "privacy": "protected",
45085
+ "parameters": [
45086
+ {
45087
+ "name": "newItem",
45088
+ "type": {
45089
+ "text": "Element"
45090
+ }
45091
+ },
45092
+ {
45093
+ "name": "index",
45094
+ "optional": true,
45095
+ "type": {
45096
+ "text": "number"
45097
+ }
45098
+ }
45099
+ ]
44480
45100
  },
44481
45101
  {
44482
45102
  "kind": "method",
44483
- "name": "setValidity",
44484
- "description": "Sets the validity of the input field based on the input field's validity.",
45103
+ "name": "removeItemFromCache",
45104
+ "privacy": "protected",
44485
45105
  "return": {
44486
45106
  "type": {
44487
- "text": ""
45107
+ "text": "void"
44488
45108
  }
44489
- }
45109
+ },
45110
+ "parameters": [
45111
+ {
45112
+ "name": "item",
45113
+ "type": {
45114
+ "text": "Element"
45115
+ }
45116
+ }
45117
+ ]
44490
45118
  },
44491
45119
  {
44492
45120
  "kind": "method",
44493
- "name": "checkValidity",
45121
+ "name": "setItemCache",
45122
+ "privacy": "protected",
44494
45123
  "return": {
44495
45124
  "type": {
44496
- "text": "boolean"
45125
+ "text": "void"
44497
45126
  }
44498
- }
44499
- },
44500
- {
44501
- "kind": "method",
44502
- "name": "reportValidity"
44503
- }
44504
- ],
44505
- "attributes": [
44506
- {
44507
- "name": "name",
44508
- "type": {
44509
- "text": "string"
44510
- },
44511
- "default": "''",
44512
- "description": "Indicates the name of the component group.\nThey are used to group elements in a form together.",
44513
- "fieldName": "name"
44514
- },
44515
- {
44516
- "name": "value",
44517
- "type": {
44518
- "text": "string"
44519
- },
44520
- "default": "''",
44521
- "description": "Indicates the value of the component group (ex: input, checkbox, radio, select etc...)",
44522
- "fieldName": "value"
44523
- },
44524
- {
44525
- "name": "validation-message",
44526
- "type": {
44527
- "text": "string | undefined"
44528
45127
  },
44529
- "description": "Custom validation message that will override the default message and displayed when the input is invalid.\n\nTo display custom validation messages, you must listen for input events (or other relevant events)\non your component and update the `validationMessage` property with the desired message string.\nUpdating this property will ensure that new validation messages are shown to the user.\n- The `validationMessage` property overrides the default browser validation message when set.\n- Consumers are responsible for updating `validationMessage` in response to input or validation state changes.",
44530
- "fieldName": "validationMessage"
45128
+ "parameters": [
45129
+ {
45130
+ "name": "items",
45131
+ "type": {
45132
+ "text": "TItem[]"
45133
+ }
45134
+ }
45135
+ ]
44531
45136
  }
44532
45137
  ],
44533
45138
  "parameters": [
@@ -44535,7 +45140,8 @@
44535
45140
  "name": "superClass",
44536
45141
  "type": {
44537
45142
  "text": "T"
44538
- }
45143
+ },
45144
+ "description": "The class to extend with the mixin."
44539
45145
  }
44540
45146
  ]
44541
45147
  }
@@ -44543,49 +45149,207 @@
44543
45149
  "exports": [
44544
45150
  {
44545
45151
  "kind": "js",
44546
- "name": "FormInternalsMixinInterface",
45152
+ "name": "ItemCollectionMixinInterface",
44547
45153
  "declaration": {
44548
- "name": "FormInternalsMixinInterface",
44549
- "module": "utils/mixins/FormInternalsMixin.js"
45154
+ "name": "ItemCollectionMixinInterface",
45155
+ "module": "utils/mixins/ItemCollectionMixin.js"
44550
45156
  }
44551
45157
  },
44552
45158
  {
44553
45159
  "kind": "js",
44554
- "name": "FormInternalsMixin",
45160
+ "name": "ItemCollectionMixin",
44555
45161
  "declaration": {
44556
- "name": "FormInternalsMixin",
44557
- "module": "utils/mixins/FormInternalsMixin.js"
45162
+ "name": "ItemCollectionMixin",
45163
+ "module": "utils/mixins/ItemCollectionMixin.js"
44558
45164
  }
44559
45165
  }
44560
45166
  ]
44561
45167
  },
44562
45168
  {
44563
45169
  "kind": "javascript-module",
44564
- "path": "utils/mixins/IconNameMixin.js",
45170
+ "path": "utils/mixins/ListNavigationMixin.js",
44565
45171
  "declarations": [
44566
45172
  {
44567
- "kind": "mixin",
45173
+ "kind": "class",
44568
45174
  "description": "",
44569
- "name": "IconNameMixin",
45175
+ "name": "ListNavigationMixinInterface",
44570
45176
  "members": [
44571
45177
  {
44572
45178
  "kind": "field",
44573
- "name": "iconName",
45179
+ "name": "loop",
44574
45180
  "type": {
44575
- "text": "IconNames | undefined"
45181
+ "text": "boolean"
44576
45182
  },
44577
- "description": "Name of the icon (= filename).\n\nIf no `icon-name` is provided, no icon will be rendered.",
44578
- "attribute": "icon-name"
44579
- }
44580
- ],
44581
- "attributes": [
45183
+ "privacy": "protected"
45184
+ },
44582
45185
  {
44583
- "name": "icon-name",
45186
+ "kind": "field",
45187
+ "name": "propagateAllKeyEvents",
44584
45188
  "type": {
44585
- "text": "IconNames | undefined"
45189
+ "text": "boolean"
44586
45190
  },
44587
- "description": "Name of the icon (= filename).\n\nIf no `icon-name` is provided, no icon will be rendered.",
44588
- "fieldName": "iconName"
45191
+ "privacy": "protected"
45192
+ },
45193
+ {
45194
+ "kind": "method",
45195
+ "name": "resetTabIndexes",
45196
+ "privacy": "protected",
45197
+ "return": {
45198
+ "type": {
45199
+ "text": "void"
45200
+ }
45201
+ },
45202
+ "parameters": [
45203
+ {
45204
+ "name": "index",
45205
+ "type": {
45206
+ "text": "number"
45207
+ }
45208
+ }
45209
+ ]
45210
+ },
45211
+ {
45212
+ "kind": "field",
45213
+ "name": "navItems",
45214
+ "type": {
45215
+ "text": "HTMLElement[]"
45216
+ },
45217
+ "privacy": "protected",
45218
+ "readonly": true
45219
+ },
45220
+ {
45221
+ "kind": "method",
45222
+ "name": "resetTabIndexAndSetFocus",
45223
+ "privacy": "protected",
45224
+ "return": {
45225
+ "type": {
45226
+ "text": "void"
45227
+ }
45228
+ },
45229
+ "parameters": [
45230
+ {
45231
+ "name": "newIndex",
45232
+ "type": {
45233
+ "text": "number"
45234
+ }
45235
+ },
45236
+ {
45237
+ "name": "oldIndex",
45238
+ "optional": true,
45239
+ "type": {
45240
+ "text": "number"
45241
+ }
45242
+ },
45243
+ {
45244
+ "name": "focusNewItem",
45245
+ "optional": true,
45246
+ "type": {
45247
+ "text": "boolean"
45248
+ }
45249
+ }
45250
+ ]
45251
+ }
45252
+ ]
45253
+ },
45254
+ {
45255
+ "kind": "mixin",
45256
+ "description": "This mixin extends the passed class with list like navigation capabilities.\n\nIt handles up and down arrow keys, home and end keys to navigate through a list of items.\nKey mapping aligned to reading direction (RTL or LTR).",
45257
+ "name": "ListNavigationMixin",
45258
+ "members": [
45259
+ {
45260
+ "kind": "method",
45261
+ "name": "getCurrentIndex",
45262
+ "privacy": "private",
45263
+ "return": {
45264
+ "type": {
45265
+ "text": ""
45266
+ }
45267
+ },
45268
+ "parameters": [
45269
+ {
45270
+ "name": "target",
45271
+ "type": {
45272
+ "text": "EventTarget | null"
45273
+ },
45274
+ "description": "The target element that triggered the event."
45275
+ }
45276
+ ],
45277
+ "description": "Retrieves the current index of the item that triggered the event."
45278
+ },
45279
+ {
45280
+ "kind": "method",
45281
+ "name": "resetTabIndexes",
45282
+ "privacy": "protected",
45283
+ "parameters": [
45284
+ {
45285
+ "name": "index",
45286
+ "type": {
45287
+ "text": "number"
45288
+ },
45289
+ "description": "The index of the currently focused item."
45290
+ }
45291
+ ],
45292
+ "description": "Reset all tabindex to -1 and set the tabindex of the current item to 0"
45293
+ },
45294
+ {
45295
+ "kind": "method",
45296
+ "name": "resetTabIndexAndSetFocus",
45297
+ "privacy": "protected",
45298
+ "parameters": [
45299
+ {
45300
+ "name": "newIndex",
45301
+ "type": {
45302
+ "text": "number"
45303
+ },
45304
+ "description": "The index of the new item to focus."
45305
+ },
45306
+ {
45307
+ "name": "oldIndex",
45308
+ "optional": true,
45309
+ "type": {
45310
+ "text": "number"
45311
+ },
45312
+ "description": "The index of the currently focused item."
45313
+ },
45314
+ {
45315
+ "name": "focusNewItem",
45316
+ "default": "true",
45317
+ "description": "Call focus() on the new item or not. It should be false during firstUpdate"
45318
+ }
45319
+ ],
45320
+ "description": "Resets the tabindex of the currently focused item and sets focus to a new item.",
45321
+ "return": {
45322
+ "type": {
45323
+ "text": ""
45324
+ }
45325
+ }
45326
+ },
45327
+ {
45328
+ "kind": "method",
45329
+ "name": "resolveDirectionKey",
45330
+ "privacy": "private",
45331
+ "parameters": [
45332
+ {
45333
+ "name": "key",
45334
+ "type": {
45335
+ "text": "string"
45336
+ },
45337
+ "description": "The key pressed by the user."
45338
+ },
45339
+ {
45340
+ "name": "isRtl",
45341
+ "type": {
45342
+ "text": "boolean"
45343
+ },
45344
+ "description": "A boolean indicating if the layout is right-to-left (RTL)."
45345
+ }
45346
+ ],
45347
+ "description": "Resolves the key pressed by the user based on the direction of the layout.\nThis method is used to handle keyboard navigation in a right-to-left (RTL) layout.\nIt checks if the layout is RTL and adjusts the arrow keys accordingly.\nFor example, in RTL, the left arrow key behaves like the right arrow key and vice versa.",
45348
+ "return": {
45349
+ "type": {
45350
+ "text": ""
45351
+ }
45352
+ }
44589
45353
  }
44590
45354
  ],
44591
45355
  "parameters": [
@@ -44593,7 +45357,8 @@
44593
45357
  "name": "superClass",
44594
45358
  "type": {
44595
45359
  "text": "T"
44596
- }
45360
+ },
45361
+ "description": "The class to extend with the mixin."
44597
45362
  }
44598
45363
  ]
44599
45364
  }
@@ -44601,10 +45366,18 @@
44601
45366
  "exports": [
44602
45367
  {
44603
45368
  "kind": "js",
44604
- "name": "IconNameMixin",
45369
+ "name": "ListNavigationMixinInterface",
44605
45370
  "declaration": {
44606
- "name": "IconNameMixin",
44607
- "module": "utils/mixins/IconNameMixin.js"
45371
+ "name": "ListNavigationMixinInterface",
45372
+ "module": "utils/mixins/ListNavigationMixin.js"
45373
+ }
45374
+ },
45375
+ {
45376
+ "kind": "js",
45377
+ "name": "ListNavigationMixin",
45378
+ "declaration": {
45379
+ "name": "ListNavigationMixin",
45380
+ "module": "utils/mixins/ListNavigationMixin.js"
44608
45381
  }
44609
45382
  }
44610
45383
  ]