@momentum-design/components 0.92.1 → 0.92.3

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 +303 -297
  2. package/dist/browser/index.js.map +4 -4
  3. package/dist/components/menubar/menubar.component.d.ts +2 -1
  4. package/dist/components/menubar/menubar.component.js +23 -2
  5. package/dist/components/menusection/menusection.component.d.ts +9 -0
  6. package/dist/components/menusection/menusection.component.js +15 -1
  7. package/dist/components/menusection/menusection.constants.d.ts +4 -1
  8. package/dist/components/menusection/menusection.constants.js +4 -1
  9. package/dist/components/popover/popover.component.d.ts +35 -4
  10. package/dist/components/popover/popover.component.js +50 -5
  11. package/dist/components/popover/popover.constants.d.ts +3 -1
  12. package/dist/components/popover/popover.constants.js +3 -1
  13. package/dist/components/popover/popover.events.d.ts +12 -0
  14. package/dist/components/popover/popover.events.js +16 -0
  15. package/dist/components/popover/popover.utils.js +1 -1
  16. package/dist/components/select/select.component.d.ts +32 -37
  17. package/dist/components/select/select.component.js +132 -148
  18. package/dist/components/select/select.constants.d.ts +2 -1
  19. package/dist/components/select/select.constants.js +2 -1
  20. package/dist/components/select/select.styles.js +20 -17
  21. package/dist/components/select/select.types.d.ts +3 -1
  22. package/dist/components/selectlistbox/index.d.ts +7 -0
  23. package/dist/components/selectlistbox/index.js +4 -0
  24. package/dist/components/selectlistbox/selectlistbox.component.d.ts +18 -0
  25. package/dist/components/selectlistbox/selectlistbox.component.js +24 -0
  26. package/dist/components/selectlistbox/selectlistbox.constants.d.ts +2 -0
  27. package/dist/components/selectlistbox/selectlistbox.constants.js +3 -0
  28. package/dist/components/selectlistbox/selectlistbox.types.d.ts +3 -0
  29. package/dist/components/selectlistbox/selectlistbox.types.js +1 -0
  30. package/dist/custom-elements.json +1323 -1009
  31. package/dist/index.d.ts +2 -1
  32. package/dist/index.js +2 -1
  33. package/dist/react/index.d.ts +2 -1
  34. package/dist/react/index.js +2 -1
  35. package/dist/react/select/index.d.ts +2 -0
  36. package/dist/react/select/index.js +2 -0
  37. package/dist/react/selectlistbox/index.d.ts +15 -0
  38. package/dist/react/selectlistbox/index.js +24 -0
  39. package/package.json +1 -1
@@ -2263,75 +2263,189 @@
2263
2263
  },
2264
2264
  {
2265
2265
  "kind": "javascript-module",
2266
- "path": "components/button/button.component.js",
2266
+ "path": "components/buttongroup/buttongroup.component.js",
2267
2267
  "declarations": [
2268
2268
  {
2269
2269
  "kind": "class",
2270
- "description": "`mdc-button` is a component that can be configured in various ways to suit different use cases.\n\nButton Variants:\n- **Primary**: Solid background color.\n- **Secondary**: Transparent background with a solid border.\n- **Tertiary**: No background or border, appears as plain text but retains all button functionalities.\n\nButton Colors:\n- **Positive**: Green color.\n- **Negative**: Red color.\n- **Accent**: Blue color.\n- **Promotional**: Purple color.\n- **Default**: White color.\n\nButton Sizes (in REM units):\n- **Pill button**: 40, 32, 28, 24.\n- **Icon button**: 64, 52, 40, 32, 28, 24.\n- **Tertiary icon button**: 20.\n\nButton Types:\n- **Pill button**: A button that contains text value. Commonly used for call to action, tags, or filters.\n- **Pill button with icons**: A button containing an icon either on the left or right side of the button.\n- **Icon button**: A button represented by just an icon without any text.\nThe type of button is inferred based on the presence of slot and/or prefix and postfix icons.",
2271
- "name": "Button",
2270
+ "description": "buttongroup component, is a styled wrapper for multiple buttons.\nIt can support icon buttons, combination of icon and pill buttons, and text buttons.\nThey are available in horizontal and vertical orientation.",
2271
+ "name": "ButtonGroup",
2272
+ "cssProperties": [
2273
+ {
2274
+ "description": "The border radius of the buttongroup",
2275
+ "name": "--mdc-buttongroup-border-radius"
2276
+ },
2277
+ {
2278
+ "description": "The border color of the buttongroup",
2279
+ "name": "--mdc-buttongroup-border-color"
2280
+ },
2281
+ {
2282
+ "description": "The color of the divider between buttons within the buttongroup",
2283
+ "name": "--mdc-buttongroup-divider-color"
2284
+ }
2285
+ ],
2272
2286
  "slots": [
2273
2287
  {
2274
- "description": "Text label of the button.",
2275
- "name": ""
2288
+ "description": "This is a default/unnamed slot, which contains the buttons",
2289
+ "name": "default"
2276
2290
  }
2277
2291
  ],
2278
2292
  "members": [
2293
+ {
2294
+ "kind": "field",
2295
+ "name": "orientation",
2296
+ "type": {
2297
+ "text": "ButtonGroupOrientation"
2298
+ },
2299
+ "description": "Orientation of the buttongroup.",
2300
+ "default": "'horizontal'",
2301
+ "attribute": "orientation",
2302
+ "reflects": true
2303
+ },
2304
+ {
2305
+ "kind": "field",
2306
+ "name": "variant",
2307
+ "type": {
2308
+ "text": "ButtonGroupVariant"
2309
+ },
2310
+ "description": "Variant of the buttons within the buttongroup.",
2311
+ "default": "'primary'",
2312
+ "attribute": "variant",
2313
+ "reflects": true
2314
+ },
2279
2315
  {
2280
2316
  "kind": "field",
2281
2317
  "name": "size",
2282
2318
  "type": {
2283
- "text": "ButtonSize"
2319
+ "text": "ButtonGroupSize"
2284
2320
  },
2285
- "description": "Button sizing is based on the button type.\n- **Pill button**: 40, 32, 28, 24.\n- **Icon button**: 64, 52, 40, 32, 28, 24.\n- Tertiary icon button can also be 20.",
2286
- "default": "32",
2321
+ "description": "Size of the buttons within the buttongroup.",
2322
+ "default": "'28'",
2287
2323
  "attribute": "size",
2288
- "reflects": true,
2289
- "inheritedFrom": {
2290
- "name": "Buttonsimple",
2291
- "module": "components/buttonsimple/buttonsimple.component.js"
2292
- }
2324
+ "reflects": true
2293
2325
  },
2294
2326
  {
2295
2327
  "kind": "field",
2296
- "name": "inverted",
2328
+ "name": "compact",
2297
2329
  "type": {
2298
2330
  "text": "boolean"
2299
2331
  },
2300
- "description": "The button color can be inverted by setting the inverted attribute to true.\n\nOnly applies when variant is set to `primary`, color is set to `default`\nand button is not `active`.",
2301
2332
  "default": "false",
2302
- "attribute": "inverted",
2333
+ "description": "When this is true, the buttons within the buttongroup will be compact.\ni.e. Irrespective of the size of the buttons, they will have a height of 24px.",
2334
+ "attribute": "compact",
2335
+ "reflects": true
2336
+ }
2337
+ ],
2338
+ "attributes": [
2339
+ {
2340
+ "name": "orientation",
2341
+ "type": {
2342
+ "text": "ButtonGroupOrientation"
2343
+ },
2344
+ "description": "Orientation of the buttongroup.",
2345
+ "default": "'horizontal'",
2346
+ "fieldName": "orientation"
2347
+ },
2348
+ {
2349
+ "name": "variant",
2350
+ "type": {
2351
+ "text": "ButtonGroupVariant"
2352
+ },
2353
+ "description": "Variant of the buttons within the buttongroup.",
2354
+ "default": "'primary'",
2355
+ "fieldName": "variant"
2356
+ },
2357
+ {
2358
+ "name": "size",
2359
+ "type": {
2360
+ "text": "ButtonGroupSize"
2361
+ },
2362
+ "description": "Size of the buttons within the buttongroup.",
2363
+ "default": "'28'",
2364
+ "fieldName": "size"
2365
+ },
2366
+ {
2367
+ "name": "compact",
2368
+ "type": {
2369
+ "text": "boolean"
2370
+ },
2371
+ "default": "false",
2372
+ "description": "When this is true, the buttons within the buttongroup will be compact.\ni.e. Irrespective of the size of the buttons, they will have a height of 24px.",
2373
+ "fieldName": "compact"
2374
+ }
2375
+ ],
2376
+ "superclass": {
2377
+ "name": "Component",
2378
+ "module": "/src/models"
2379
+ },
2380
+ "tagName": "mdc-buttongroup",
2381
+ "jsDoc": "/**\n * buttongroup component, is a styled wrapper for multiple buttons.\n * It can support icon buttons, combination of icon and pill buttons, and text buttons.\n * They are available in horizontal and vertical orientation.\n *\n * @tagname mdc-buttongroup\n *\n * @slot default - This is a default/unnamed slot, which contains the buttons\n *\n * @cssproperty --mdc-buttongroup-border-radius - The border radius of the buttongroup\n * @cssproperty --mdc-buttongroup-border-color - The border color of the buttongroup\n * @cssproperty --mdc-buttongroup-divider-color - The color of the divider between buttons within the buttongroup\n */",
2382
+ "customElement": true
2383
+ }
2384
+ ],
2385
+ "exports": [
2386
+ {
2387
+ "kind": "js",
2388
+ "name": "default",
2389
+ "declaration": {
2390
+ "name": "ButtonGroup",
2391
+ "module": "components/buttongroup/buttongroup.component.js"
2392
+ }
2393
+ }
2394
+ ]
2395
+ },
2396
+ {
2397
+ "kind": "javascript-module",
2398
+ "path": "components/buttonlink/buttonlink.component.js",
2399
+ "declarations": [
2400
+ {
2401
+ "kind": "class",
2402
+ "description": "`mdc-buttonlink` combines the functional behavior of `mdc-linksimple` with the visual and structural\nfeatures of `mdc-button`. This includes support for variants, sizing, and optional\nprefix and postfix icons via slots.\n\n### Features:\n- Behaves like an link while visually resembling a button.\n- Supports slots for `prefix-icon` and `postfix-icon`.\n- Customizable size, color, and variant through attributes.\n- Inherits accessibility and keyboard interaction support from `mdc-linksimple`.",
2403
+ "name": "ButtonLink",
2404
+ "members": [
2405
+ {
2406
+ "kind": "field",
2407
+ "name": "size",
2408
+ "type": {
2409
+ "text": "PillButtonSize | IconButtonSize"
2410
+ },
2411
+ "description": "ButtonLink sizing is based on the buttonlink type.\n- **Pill buttonlink**: 40, 32, 28, 24.\n- **Icon buttonlink**: 64, 52, 40, 32, 28, 24.\n- Tertiary icon buttonlink can also be 20.",
2412
+ "default": "32",
2413
+ "attribute": "size",
2303
2414
  "reflects": true
2304
2415
  },
2305
2416
  {
2306
2417
  "kind": "field",
2307
- "name": "role",
2308
- "description": "This property defines the ARIA role for the element. By default, it is set to 'button'.\nConsumers should override this role when:\n- The element is being used in a context where a different role is more appropriate.\n- Custom behaviors are implemented that require a specific ARIA role for accessibility purposes.",
2309
- "default": "'button'",
2310
- "attribute": "role",
2311
- "reflects": true,
2418
+ "name": "softDisabled",
2312
2419
  "type": {
2313
- "text": "string"
2420
+ "text": "boolean | undefined"
2314
2421
  },
2315
- "inheritedFrom": {
2316
- "name": "Buttonsimple",
2317
- "module": "components/buttonsimple/buttonsimple.component.js"
2318
- }
2422
+ "description": "Indicates whether the buttonlink is soft disabled.\nWhen set to `true`, the buttonlink appears visually disabled but still allows\nfocus, click, and keyboard actions to be passed through.\n\n**Important:** When using soft disabled, consumers must ensure that\nthe buttonlink behaves like a disabled buttonlink, allowing only focus and\npreventing any interactions (clicks or keyboard actions) from triggering unintended actions.",
2423
+ "default": "undefined",
2424
+ "attribute": "soft-disabled",
2425
+ "reflects": true
2319
2426
  },
2320
2427
  {
2321
2428
  "kind": "method",
2322
- "name": "inferFilledIconName",
2429
+ "name": "setSoftDisabled",
2323
2430
  "privacy": "private",
2324
2431
  "parameters": [
2325
2432
  {
2326
- "name": "active",
2433
+ "name": "element",
2434
+ "type": {
2435
+ "text": "HTMLElement"
2436
+ },
2437
+ "description": "The buttonlink element."
2438
+ },
2439
+ {
2440
+ "name": "softDisabled",
2327
2441
  "optional": true,
2328
2442
  "type": {
2329
2443
  "text": "boolean"
2330
2444
  },
2331
- "description": "The active state."
2445
+ "description": "The soft-disabled state."
2332
2446
  }
2333
2447
  ],
2334
- "description": "Modifies the icon name based on the active state.\nIf the button is active, the icon name is suffixed with '-filled'.\nIf the button is inactive, the icon name is restored to its original value.\nIf '-filled' icon is not available, the icon name remains unchanged."
2448
+ "description": "Sets the soft-disabled attribute for the buttonlink.\nWhen soft-disabled, the buttonlink looks to be disabled but remains focusable and clickable.\nAlso sets/removes aria-disabled attribute."
2335
2449
  },
2336
2450
  {
2337
2451
  "kind": "field",
@@ -2464,17 +2578,17 @@
2464
2578
  },
2465
2579
  {
2466
2580
  "kind": "field",
2467
- "name": "autofocus",
2581
+ "name": "disabled",
2468
2582
  "type": {
2469
- "text": "boolean"
2583
+ "text": "boolean | undefined"
2470
2584
  },
2471
- "default": "false",
2472
- "description": "This property indicates whether the element should receive focus automatically when it is rendered.",
2473
- "attribute": "autofocus",
2585
+ "description": "Indicates whether the component is disabled.\nWhen the component is disabled for user interaction; it is not focusable or clickable.",
2586
+ "default": "undefined",
2587
+ "attribute": "disabled",
2474
2588
  "reflects": true,
2475
2589
  "inheritedFrom": {
2476
- "name": "AutoFocusMixin",
2477
- "module": "utils/mixins/AutoFocusMixin.js"
2590
+ "name": "DisabledMixin",
2591
+ "module": "utils/mixins/DisabledMixin.js"
2478
2592
  }
2479
2593
  },
2480
2594
  {
@@ -2494,140 +2608,85 @@
2494
2608
  },
2495
2609
  {
2496
2610
  "kind": "field",
2497
- "name": "disabled",
2611
+ "name": "inline",
2498
2612
  "type": {
2499
- "text": "boolean | undefined"
2613
+ "text": "boolean"
2500
2614
  },
2501
- "description": "Indicates whether the component is disabled.\nWhen the component is disabled for user interaction; it is not focusable or clickable.",
2502
- "default": "undefined",
2503
- "attribute": "disabled",
2615
+ "description": "The link can be inline or standalone.",
2616
+ "default": "false",
2617
+ "attribute": "inline",
2504
2618
  "reflects": true,
2505
2619
  "inheritedFrom": {
2506
- "name": "DisabledMixin",
2507
- "module": "utils/mixins/DisabledMixin.js"
2620
+ "name": "Linksimple",
2621
+ "module": "components/linksimple/linksimple.component.js"
2508
2622
  }
2509
2623
  },
2510
2624
  {
2511
2625
  "kind": "field",
2512
- "name": "active",
2626
+ "name": "inverted",
2513
2627
  "type": {
2514
- "text": "boolean | undefined"
2628
+ "text": "boolean"
2515
2629
  },
2516
- "description": "The button's active state indicates whether it is currently toggled on (active) or off (inactive).\nWhen the active state is true, the button is considered to be in an active state, meaning it is toggled on.\nConversely, when the active state is false, the button is in an inactive state, indicating it is toggled off.\n\nThis attribute is used to set the provided `ariaStateKey` to true or false.",
2517
- "default": "undefined",
2518
- "attribute": "active",
2630
+ "description": "The link color can be inverted by setting the inverted attribute to true.",
2631
+ "default": "false",
2632
+ "attribute": "inverted",
2519
2633
  "reflects": true,
2520
2634
  "inheritedFrom": {
2521
- "name": "Buttonsimple",
2522
- "module": "components/buttonsimple/buttonsimple.component.js"
2635
+ "name": "Linksimple",
2636
+ "module": "components/linksimple/linksimple.component.js"
2523
2637
  }
2524
2638
  },
2525
2639
  {
2526
2640
  "kind": "field",
2527
- "name": "softDisabled",
2641
+ "name": "href",
2528
2642
  "type": {
2529
- "text": "boolean | undefined"
2643
+ "text": "string"
2530
2644
  },
2531
- "description": "Indicates whether the button is soft disabled.\nWhen set to `true`, the button appears visually disabled but still allows\nfocus, click, and keyboard actions to be passed through.\n\n**Important:** When using soft disabled, consumers must ensure that\nthe button behaves like a disabled button, allowing only focus and\npreventing any interactions (clicks or keyboard actions) from triggering unintended actions.",
2532
- "default": "undefined",
2533
- "attribute": "soft-disabled",
2645
+ "default": "'#'",
2646
+ "description": "Href for navigation. The URL that the hyperlink points to",
2647
+ "attribute": "href",
2534
2648
  "reflects": true,
2535
2649
  "inheritedFrom": {
2536
- "name": "Buttonsimple",
2537
- "module": "components/buttonsimple/buttonsimple.component.js"
2650
+ "name": "Linksimple",
2651
+ "module": "components/linksimple/linksimple.component.js"
2538
2652
  }
2539
2653
  },
2540
2654
  {
2541
2655
  "kind": "field",
2542
- "name": "ariaStateKey",
2656
+ "name": "target",
2543
2657
  "type": {
2544
- "text": "string | undefined"
2658
+ "text": "string"
2545
2659
  },
2546
- "description": "This property defines the ARIA state key, which will be toggled when the\nButton is set to `active`.\nThe default value is 'aria-pressed', which is commonly used for toggle buttons.\n\nConsumers can override this property to use a different ARIA state key if needed.\nIn case multiple aria attributes should be toggled, they can be passed in as\na comma separated string.\nFor example: `aria-pressed,aria-expanded`",
2547
- "default": "'aria-pressed' (when)",
2548
- "attribute": "ariaStateKey",
2660
+ "default": "'_self'",
2661
+ "description": "Optional target: _blank, _self, _parent, _top and _unfencedTop",
2662
+ "attribute": "target",
2549
2663
  "reflects": true,
2550
2664
  "inheritedFrom": {
2551
- "name": "Buttonsimple",
2552
- "module": "components/buttonsimple/buttonsimple.component.js"
2665
+ "name": "Linksimple",
2666
+ "module": "components/linksimple/linksimple.component.js"
2553
2667
  }
2554
2668
  },
2555
2669
  {
2556
2670
  "kind": "field",
2557
- "name": "type",
2671
+ "name": "rel",
2558
2672
  "type": {
2559
- "text": "ButtonType"
2673
+ "text": "string | undefined"
2560
2674
  },
2561
- "description": "This property defines the type attribute for the button element.\nThe type attribute specifies the behavior of the button when it is clicked.\n- **submit**: The button submits the form data to the server.\n- **reset**: The button resets the form data to its initial state.\n- **button**: The button does nothing when clicked.",
2562
- "default": "button",
2563
- "attribute": "type",
2675
+ "description": "Optional rel attribute that defines the relationship of the linked URL as space-separated link types.",
2676
+ "attribute": "rel",
2564
2677
  "reflects": true,
2565
2678
  "inheritedFrom": {
2566
- "name": "Buttonsimple",
2567
- "module": "components/buttonsimple/buttonsimple.component.js"
2568
- }
2569
- },
2570
- {
2571
- "kind": "method",
2572
- "name": "executeAction",
2573
- "privacy": "protected",
2574
- "inheritedFrom": {
2575
- "name": "Buttonsimple",
2576
- "module": "components/buttonsimple/buttonsimple.component.js"
2577
- }
2578
- },
2579
- {
2580
- "kind": "method",
2581
- "name": "setActive",
2582
- "privacy": "protected",
2583
- "parameters": [
2584
- {
2585
- "name": "element",
2586
- "type": {
2587
- "text": "HTMLElement"
2588
- },
2589
- "description": "The button element"
2590
- },
2591
- {
2592
- "name": "active",
2593
- "optional": true,
2594
- "type": {
2595
- "text": "boolean"
2596
- },
2597
- "description": "The active state of the element"
2598
- }
2599
- ],
2600
- "description": "Sets the ariaStateKey attributes based on the active state of the button.",
2601
- "inheritedFrom": {
2602
- "name": "Buttonsimple",
2603
- "module": "components/buttonsimple/buttonsimple.component.js"
2679
+ "name": "Linksimple",
2680
+ "module": "components/linksimple/linksimple.component.js"
2604
2681
  }
2605
2682
  },
2606
2683
  {
2607
- "kind": "method",
2608
- "name": "setSoftDisabled",
2684
+ "kind": "field",
2685
+ "name": "handleNavigation",
2609
2686
  "privacy": "private",
2610
- "parameters": [
2611
- {
2612
- "name": "element",
2613
- "type": {
2614
- "text": "HTMLElement"
2615
- },
2616
- "description": "The button element."
2617
- },
2618
- {
2619
- "name": "softDisabled",
2620
- "optional": true,
2621
- "type": {
2622
- "text": "boolean"
2623
- },
2624
- "description": "The soft-disabled state."
2625
- }
2626
- ],
2627
- "description": "Sets the soft-disabled attribute for the button.\nWhen soft-disabled, the button looks to be disabled but remains focusable and clickable.\nAlso sets/removes aria-disabled attribute.",
2628
2687
  "inheritedFrom": {
2629
- "name": "Buttonsimple",
2630
- "module": "components/buttonsimple/buttonsimple.component.js"
2688
+ "name": "Linksimple",
2689
+ "module": "components/linksimple/linksimple.component.js"
2631
2690
  }
2632
2691
  },
2633
2692
  {
@@ -2635,82 +2694,56 @@
2635
2694
  "name": "setDisabled",
2636
2695
  "privacy": "private",
2637
2696
  "parameters": [
2638
- {
2639
- "name": "element",
2640
- "type": {
2641
- "text": "HTMLElement"
2642
- },
2643
- "description": "The button element."
2644
- },
2645
2697
  {
2646
2698
  "name": "disabled",
2647
2699
  "type": {
2648
2700
  "text": "boolean"
2649
2701
  },
2650
- "description": "The disabled state."
2702
+ "description": "Whether the element should be disabled"
2651
2703
  }
2652
2704
  ],
2653
- "description": "Sets the disabled attribute for the button.\nWhen disabled, the button is not focusable or clickable, and tabindex is set to -1.\nThe previous tabindex is stored and restored when enabled.\nAlso sets/removes aria-disabled attribute.",
2705
+ "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.",
2654
2706
  "inheritedFrom": {
2655
- "name": "Buttonsimple",
2656
- "module": "components/buttonsimple/buttonsimple.component.js"
2707
+ "name": "Linksimple",
2708
+ "module": "components/linksimple/linksimple.component.js"
2657
2709
  }
2658
- },
2710
+ }
2711
+ ],
2712
+ "events": [
2659
2713
  {
2660
- "kind": "method",
2661
- "name": "triggerClickEvent",
2662
- "privacy": "private",
2714
+ "description": "(React: onClick) Fired when the user activates the buttonLink using a mouse or assistive technology.",
2715
+ "name": "click",
2716
+ "reactName": "onClick",
2663
2717
  "inheritedFrom": {
2664
- "name": "Buttonsimple",
2665
- "module": "components/buttonsimple/buttonsimple.component.js"
2718
+ "name": "Linksimple",
2719
+ "module": "src/components/linksimple/linksimple.component.ts"
2666
2720
  }
2667
2721
  },
2668
2722
  {
2669
- "kind": "method",
2670
- "name": "handleBlur",
2671
- "privacy": "private",
2672
- "description": "In case the button is pressed and the focus is lost while pressing,\nthe pressed class is removed.",
2723
+ "description": "(React: onKeyDown) Fired when the user presses a key while the buttonLink has focus.",
2724
+ "name": "keydown",
2725
+ "reactName": "onKeyDown",
2673
2726
  "inheritedFrom": {
2674
- "name": "Buttonsimple",
2675
- "module": "components/buttonsimple/buttonsimple.component.js"
2727
+ "name": "Linksimple",
2728
+ "module": "src/components/linksimple/linksimple.component.ts"
2676
2729
  }
2677
2730
  },
2678
2731
  {
2679
- "kind": "method",
2680
- "name": "handleKeyDown",
2681
- "privacy": "private",
2682
- "parameters": [
2683
- {
2684
- "name": "event",
2685
- "type": {
2686
- "text": "KeyboardEvent"
2687
- },
2688
- "description": "The keyboard event."
2689
- }
2690
- ],
2691
- "description": "Handles the keydown event on the button.\nIf the key is 'Enter' or 'Space', the button is pressed.\nIf the key is 'Enter', the button is pressed. The native HTML button works in the same way.\nIf the key is 'Space', the button's default is prevent to avoid scrolling etc in the host application.",
2732
+ "description": "(React: onFocus) Fired when the buttonLink receives keyboard or mouse focus.",
2733
+ "name": "focus",
2734
+ "reactName": "onFocus",
2692
2735
  "inheritedFrom": {
2693
- "name": "Buttonsimple",
2694
- "module": "components/buttonsimple/buttonsimple.component.js"
2736
+ "name": "Linksimple",
2737
+ "module": "src/components/linksimple/linksimple.component.ts"
2695
2738
  }
2696
2739
  },
2697
2740
  {
2698
- "kind": "method",
2699
- "name": "handleKeyUp",
2700
- "privacy": "private",
2701
- "parameters": [
2702
- {
2703
- "name": "event",
2704
- "type": {
2705
- "text": "KeyboardEvent"
2706
- },
2707
- "description": "The keyboard event."
2708
- }
2709
- ],
2710
- "description": "Handles the keyup event on the button.\nIf the key is 'Enter' or 'Space', the button is clicked.\nIf the key is 'Space', the button is pressed. The native HTML button works in the same way.",
2741
+ "description": "(React: onBlur) Fired when the buttonLink loses keyboard or mouse focus.",
2742
+ "name": "blur",
2743
+ "reactName": "onBlur",
2711
2744
  "inheritedFrom": {
2712
- "name": "Buttonsimple",
2713
- "module": "components/buttonsimple/buttonsimple.component.js"
2745
+ "name": "Linksimple",
2746
+ "module": "src/components/linksimple/linksimple.component.ts"
2714
2747
  }
2715
2748
  }
2716
2749
  ],
@@ -2718,37 +2751,20 @@
2718
2751
  {
2719
2752
  "name": "size",
2720
2753
  "type": {
2721
- "text": "ButtonSize"
2754
+ "text": "PillButtonSize | IconButtonSize"
2722
2755
  },
2723
- "description": "Button sizing is based on the button type.\n- **Pill button**: 40, 32, 28, 24.\n- **Icon button**: 64, 52, 40, 32, 28, 24.\n- Tertiary icon button can also be 20.",
2756
+ "description": "ButtonLink sizing is based on the buttonlink type.\n- **Pill buttonlink**: 40, 32, 28, 24.\n- **Icon buttonlink**: 64, 52, 40, 32, 28, 24.\n- Tertiary icon buttonlink can also be 20.",
2724
2757
  "default": "32",
2725
- "fieldName": "size",
2726
- "inheritedFrom": {
2727
- "name": "Buttonsimple",
2728
- "module": "src/components/buttonsimple/buttonsimple.component.ts"
2729
- }
2730
- },
2731
- {
2732
- "name": "inverted",
2733
- "type": {
2734
- "text": "boolean"
2735
- },
2736
- "description": "The button color can be inverted by setting the inverted attribute to true.\n\nOnly applies when variant is set to `primary`, color is set to `default`\nand button is not `active`.",
2737
- "default": "false",
2738
- "fieldName": "inverted"
2758
+ "fieldName": "size"
2739
2759
  },
2740
2760
  {
2741
- "name": "role",
2742
- "description": "This property defines the ARIA role for the element. By default, it is set to 'button'.\nConsumers should override this role when:\n- The element is being used in a context where a different role is more appropriate.\n- Custom behaviors are implemented that require a specific ARIA role for accessibility purposes.",
2743
- "default": "'button'",
2744
- "fieldName": "role",
2761
+ "name": "soft-disabled",
2745
2762
  "type": {
2746
- "text": "string"
2763
+ "text": "boolean | undefined"
2747
2764
  },
2748
- "inheritedFrom": {
2749
- "name": "Buttonsimple",
2750
- "module": "src/components/buttonsimple/buttonsimple.component.ts"
2751
- }
2765
+ "description": "Indicates whether the buttonlink is soft disabled.\nWhen set to `true`, the buttonlink appears visually disabled but still allows\nfocus, click, and keyboard actions to be passed through.\n\n**Important:** When using soft disabled, consumers must ensure that\nthe buttonlink behaves like a disabled buttonlink, allowing only focus and\npreventing any interactions (clicks or keyboard actions) from triggering unintended actions.",
2766
+ "default": "undefined",
2767
+ "fieldName": "softDisabled"
2752
2768
  },
2753
2769
  {
2754
2770
  "name": "prefix-icon",
@@ -2801,16 +2817,16 @@
2801
2817
  }
2802
2818
  },
2803
2819
  {
2804
- "name": "autofocus",
2820
+ "name": "disabled",
2805
2821
  "type": {
2806
- "text": "boolean"
2822
+ "text": "boolean | undefined"
2807
2823
  },
2808
- "default": "false",
2809
- "description": "This property indicates whether the element should receive focus automatically when it is rendered.",
2810
- "fieldName": "autofocus",
2824
+ "description": "Indicates whether the component is disabled.\nWhen the component is disabled for user interaction; it is not focusable or clickable.",
2825
+ "default": "undefined",
2826
+ "fieldName": "disabled",
2811
2827
  "inheritedFrom": {
2812
- "name": "AutoFocusMixin",
2813
- "module": "src/utils/mixins/AutoFocusMixin.ts"
2828
+ "name": "DisabledMixin",
2829
+ "module": "src/utils/mixins/DisabledMixin.ts"
2814
2830
  }
2815
2831
  },
2816
2832
  {
@@ -2827,68 +2843,67 @@
2827
2843
  }
2828
2844
  },
2829
2845
  {
2830
- "name": "disabled",
2846
+ "name": "inline",
2831
2847
  "type": {
2832
- "text": "boolean | undefined"
2848
+ "text": "boolean"
2833
2849
  },
2834
- "description": "Indicates whether the component is disabled.\nWhen the component is disabled for user interaction; it is not focusable or clickable.",
2835
- "default": "undefined",
2836
- "fieldName": "disabled",
2850
+ "description": "The link can be inline or standalone.",
2851
+ "default": "false",
2852
+ "fieldName": "inline",
2837
2853
  "inheritedFrom": {
2838
- "name": "DisabledMixin",
2839
- "module": "src/utils/mixins/DisabledMixin.ts"
2854
+ "name": "Linksimple",
2855
+ "module": "src/components/linksimple/linksimple.component.ts"
2840
2856
  }
2841
2857
  },
2842
2858
  {
2843
- "name": "active",
2859
+ "name": "inverted",
2844
2860
  "type": {
2845
- "text": "boolean | undefined"
2861
+ "text": "boolean"
2846
2862
  },
2847
- "description": "The button's active state indicates whether it is currently toggled on (active) or off (inactive).\nWhen the active state is true, the button is considered to be in an active state, meaning it is toggled on.\nConversely, when the active state is false, the button is in an inactive state, indicating it is toggled off.\n\nThis attribute is used to set the provided `ariaStateKey` to true or false.",
2848
- "default": "undefined",
2849
- "fieldName": "active",
2863
+ "description": "The link color can be inverted by setting the inverted attribute to true.",
2864
+ "default": "false",
2865
+ "fieldName": "inverted",
2850
2866
  "inheritedFrom": {
2851
- "name": "Buttonsimple",
2852
- "module": "src/components/buttonsimple/buttonsimple.component.ts"
2867
+ "name": "Linksimple",
2868
+ "module": "src/components/linksimple/linksimple.component.ts"
2853
2869
  }
2854
2870
  },
2855
2871
  {
2856
- "name": "soft-disabled",
2872
+ "name": "href",
2857
2873
  "type": {
2858
- "text": "boolean | undefined"
2874
+ "text": "string"
2859
2875
  },
2860
- "description": "Indicates whether the button is soft disabled.\nWhen set to `true`, the button appears visually disabled but still allows\nfocus, click, and keyboard actions to be passed through.\n\n**Important:** When using soft disabled, consumers must ensure that\nthe button behaves like a disabled button, allowing only focus and\npreventing any interactions (clicks or keyboard actions) from triggering unintended actions.",
2861
- "default": "undefined",
2862
- "fieldName": "softDisabled",
2876
+ "default": "'#'",
2877
+ "description": "Href for navigation. The URL that the hyperlink points to",
2878
+ "fieldName": "href",
2863
2879
  "inheritedFrom": {
2864
- "name": "Buttonsimple",
2865
- "module": "src/components/buttonsimple/buttonsimple.component.ts"
2880
+ "name": "Linksimple",
2881
+ "module": "src/components/linksimple/linksimple.component.ts"
2866
2882
  }
2867
2883
  },
2868
2884
  {
2869
- "name": "ariaStateKey",
2885
+ "name": "target",
2870
2886
  "type": {
2871
- "text": "string | undefined"
2887
+ "text": "string"
2872
2888
  },
2873
- "description": "This property defines the ARIA state key, which will be toggled when the\nButton is set to `active`.\nThe default value is 'aria-pressed', which is commonly used for toggle buttons.\n\nConsumers can override this property to use a different ARIA state key if needed.\nIn case multiple aria attributes should be toggled, they can be passed in as\na comma separated string.\nFor example: `aria-pressed,aria-expanded`",
2874
- "default": "'aria-pressed' (when)",
2875
- "fieldName": "ariaStateKey",
2889
+ "default": "'_self'",
2890
+ "description": "Optional target: _blank, _self, _parent, _top and _unfencedTop",
2891
+ "fieldName": "target",
2876
2892
  "inheritedFrom": {
2877
- "name": "Buttonsimple",
2878
- "module": "src/components/buttonsimple/buttonsimple.component.ts"
2893
+ "name": "Linksimple",
2894
+ "module": "src/components/linksimple/linksimple.component.ts"
2879
2895
  }
2880
2896
  },
2881
2897
  {
2882
- "name": "type",
2898
+ "name": "rel",
2883
2899
  "type": {
2884
- "text": "ButtonType"
2900
+ "text": "string | undefined"
2885
2901
  },
2886
- "description": "This property defines the type attribute for the button element.\nThe type attribute specifies the behavior of the button when it is clicked.\n- **submit**: The button submits the form data to the server.\n- **reset**: The button resets the form data to its initial state.\n- **button**: The button does nothing when clicked.",
2887
- "default": "button",
2888
- "fieldName": "type",
2902
+ "description": "Optional rel attribute that defines the relationship of the linked URL as space-separated link types.",
2903
+ "fieldName": "rel",
2889
2904
  "inheritedFrom": {
2890
- "name": "Buttonsimple",
2891
- "module": "src/components/buttonsimple/buttonsimple.component.ts"
2905
+ "name": "Linksimple",
2906
+ "module": "src/components/linksimple/linksimple.component.ts"
2892
2907
  }
2893
2908
  }
2894
2909
  ],
@@ -2899,47 +2914,83 @@
2899
2914
  }
2900
2915
  ],
2901
2916
  "superclass": {
2902
- "name": "Buttonsimple",
2903
- "module": "/src/components/buttonsimple/buttonsimple.component"
2917
+ "name": "Linksimple",
2918
+ "module": "/src/components/linksimple/linksimple.component"
2904
2919
  },
2905
- "tagName": "mdc-button",
2906
- "jsDoc": "/**\n * `mdc-button` is a component that can be configured in various ways to suit different use cases.\n *\n * Button Variants:\n * - **Primary**: Solid background color.\n * - **Secondary**: Transparent background with a solid border.\n * - **Tertiary**: No background or border, appears as plain text but retains all button functionalities.\n *\n * Button Colors:\n * - **Positive**: Green color.\n * - **Negative**: Red color.\n * - **Accent**: Blue color.\n * - **Promotional**: Purple color.\n * - **Default**: White color.\n *\n * Button Sizes (in REM units):\n * - **Pill button**: 40, 32, 28, 24.\n * - **Icon button**: 64, 52, 40, 32, 28, 24.\n * - **Tertiary icon button**: 20.\n *\n * Button Types:\n * - **Pill button**: A button that contains text value. Commonly used for call to action, tags, or filters.\n * - **Pill button with icons**: A button containing an icon either on the left or right side of the button.\n * - **Icon button**: A button represented by just an icon without any text.\n * The type of button is inferred based on the presence of slot and/or prefix and postfix icons.\n *\n * @dependency mdc-icon\n *\n * @tagname mdc-button\n *\n * @slot - Text label of the button.\n */",
2920
+ "tagName": "mdc-buttonlink",
2921
+ "jsDoc": "/**\n * `mdc-buttonlink` combines the functional behavior of `mdc-linksimple` with the visual and structural\n * features of `mdc-button`. This includes support for variants, sizing, and optional\n * prefix and postfix icons via slots.\n *\n * ### Features:\n * - Behaves like an link while visually resembling a button.\n * - Supports slots for `prefix-icon` and `postfix-icon`.\n * - Customizable size, color, and variant through attributes.\n * - Inherits accessibility and keyboard interaction support from `mdc-linksimple`.\n *\n * @dependency mdc-icon\n *\n * @tagname mdc-buttonlink\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 */",
2907
2922
  "customElement": true,
2908
- "events": [
2923
+ "cssProperties": [
2909
2924
  {
2910
- "description": "(React: onClick) This event is dispatched when the button is clicked.",
2911
- "name": "click",
2912
- "reactName": "onClick",
2925
+ "description": "Border radius of the link.",
2926
+ "name": "--mdc-link-border-radius",
2913
2927
  "inheritedFrom": {
2914
- "name": "Buttonsimple",
2915
- "module": "src/components/buttonsimple/buttonsimple.component.ts"
2928
+ "name": "Linksimple",
2929
+ "module": "src/components/linksimple/linksimple.component.ts"
2916
2930
  }
2917
2931
  },
2918
2932
  {
2919
- "description": "(React: onKeyDown) This event is dispatched when a key is pressed down on the button.",
2920
- "name": "keydown",
2921
- "reactName": "onKeyDown",
2933
+ "description": "Color of the link’s child content in the active state.",
2934
+ "name": "--mdc-link-color-active",
2922
2935
  "inheritedFrom": {
2923
- "name": "Buttonsimple",
2924
- "module": "src/components/buttonsimple/buttonsimple.component.ts"
2936
+ "name": "Linksimple",
2937
+ "module": "src/components/linksimple/linksimple.component.ts"
2925
2938
  }
2926
2939
  },
2927
2940
  {
2928
- "description": "(React: onKeyUp) This event is dispatched when a key is released on the button.",
2929
- "name": "keyup",
2930
- "reactName": "onKeyUp",
2941
+ "description": "Color of the link’s child content in the disabled state.",
2942
+ "name": "--mdc-link-color-disabled",
2931
2943
  "inheritedFrom": {
2932
- "name": "Buttonsimple",
2933
- "module": "src/components/buttonsimple/buttonsimple.component.ts"
2944
+ "name": "Linksimple",
2945
+ "module": "src/components/linksimple/linksimple.component.ts"
2934
2946
  }
2935
2947
  },
2936
2948
  {
2937
- "description": "(React: onFocus) This event is dispatched when the button receives focus.",
2938
- "name": "focus",
2939
- "reactName": "onFocus",
2949
+ "description": "Color of the link’s child content in the hover state.",
2950
+ "name": "--mdc-link-color-hover",
2940
2951
  "inheritedFrom": {
2941
- "name": "Buttonsimple",
2942
- "module": "src/components/buttonsimple/buttonsimple.component.ts"
2952
+ "name": "Linksimple",
2953
+ "module": "src/components/linksimple/linksimple.component.ts"
2954
+ }
2955
+ },
2956
+ {
2957
+ "description": "Color of the link’s child content in the normal state.",
2958
+ "name": "--mdc-link-color-normal",
2959
+ "inheritedFrom": {
2960
+ "name": "Linksimple",
2961
+ "module": "src/components/linksimple/linksimple.component.ts"
2962
+ }
2963
+ },
2964
+ {
2965
+ "description": "Color of the inverted link’s child content in the active state.",
2966
+ "name": "--mdc-link-inverted-color-active",
2967
+ "inheritedFrom": {
2968
+ "name": "Linksimple",
2969
+ "module": "src/components/linksimple/linksimple.component.ts"
2970
+ }
2971
+ },
2972
+ {
2973
+ "description": "Color of the inverted link’s child content in the disabled state.",
2974
+ "name": "--mdc-link-inverted-color-disabled",
2975
+ "inheritedFrom": {
2976
+ "name": "Linksimple",
2977
+ "module": "src/components/linksimple/linksimple.component.ts"
2978
+ }
2979
+ },
2980
+ {
2981
+ "description": "Color of the inverted link’s child content in the hover state.",
2982
+ "name": "--mdc-link-inverted-color-hover",
2983
+ "inheritedFrom": {
2984
+ "name": "Linksimple",
2985
+ "module": "src/components/linksimple/linksimple.component.ts"
2986
+ }
2987
+ },
2988
+ {
2989
+ "description": "Color of the inverted link’s child content in the normal state.",
2990
+ "name": "--mdc-link-inverted-color-normal",
2991
+ "inheritedFrom": {
2992
+ "name": "Linksimple",
2993
+ "module": "src/components/linksimple/linksimple.component.ts"
2943
2994
  }
2944
2995
  }
2945
2996
  ]
@@ -2950,130 +3001,378 @@
2950
3001
  "kind": "js",
2951
3002
  "name": "default",
2952
3003
  "declaration": {
2953
- "name": "Button",
2954
- "module": "components/button/button.component.js"
3004
+ "name": "ButtonLink",
3005
+ "module": "components/buttonlink/buttonlink.component.js"
2955
3006
  }
2956
3007
  }
2957
3008
  ]
2958
3009
  },
2959
3010
  {
2960
3011
  "kind": "javascript-module",
2961
- "path": "components/buttongroup/buttongroup.component.js",
3012
+ "path": "components/buttonsimple/buttonsimple.component.js",
2962
3013
  "declarations": [
2963
3014
  {
2964
3015
  "kind": "class",
2965
- "description": "buttongroup component, is a styled wrapper for multiple buttons.\nIt can support icon buttons, combination of icon and pill buttons, and text buttons.\nThey are available in horizontal and vertical orientation.",
2966
- "name": "ButtonGroup",
2967
- "cssProperties": [
3016
+ "description": "`mdc-buttonsimple` is a component that can be configured in various ways to suit different use cases.\nIt is used as an internal component and is not intended to be used directly by consumers.\nConsumers should use the `mdc-button` component instead.",
3017
+ "name": "Buttonsimple",
3018
+ "members": [
2968
3019
  {
2969
- "description": "The border radius of the buttongroup",
2970
- "name": "--mdc-buttongroup-border-radius"
3020
+ "kind": "field",
3021
+ "name": "active",
3022
+ "type": {
3023
+ "text": "boolean | undefined"
3024
+ },
3025
+ "description": "The button's active state indicates whether it is currently toggled on (active) or off (inactive).\nWhen the active state is true, the button is considered to be in an active state, meaning it is toggled on.\nConversely, when the active state is false, the button is in an inactive state, indicating it is toggled off.\n\nThis attribute is used to set the provided `ariaStateKey` to true or false.",
3026
+ "default": "undefined",
3027
+ "attribute": "active",
3028
+ "reflects": true
2971
3029
  },
2972
3030
  {
2973
- "description": "The border color of the buttongroup",
2974
- "name": "--mdc-buttongroup-border-color"
3031
+ "kind": "field",
3032
+ "name": "softDisabled",
3033
+ "type": {
3034
+ "text": "boolean | undefined"
3035
+ },
3036
+ "description": "Indicates whether the button is soft disabled.\nWhen set to `true`, the button appears visually disabled but still allows\nfocus, click, and keyboard actions to be passed through.\n\n**Important:** When using soft disabled, consumers must ensure that\nthe button behaves like a disabled button, allowing only focus and\npreventing any interactions (clicks or keyboard actions) from triggering unintended actions.",
3037
+ "default": "undefined",
3038
+ "attribute": "soft-disabled",
3039
+ "reflects": true
2975
3040
  },
2976
- {
2977
- "description": "The color of the divider between buttons within the buttongroup",
2978
- "name": "--mdc-buttongroup-divider-color"
2979
- }
2980
- ],
2981
- "slots": [
2982
- {
2983
- "description": "This is a default/unnamed slot, which contains the buttons",
2984
- "name": "default"
2985
- }
2986
- ],
2987
- "members": [
2988
3041
  {
2989
3042
  "kind": "field",
2990
- "name": "orientation",
3043
+ "name": "size",
2991
3044
  "type": {
2992
- "text": "ButtonGroupOrientation"
3045
+ "text": "ButtonSize"
2993
3046
  },
2994
- "description": "Orientation of the buttongroup.",
2995
- "default": "'horizontal'",
2996
- "attribute": "orientation",
3047
+ "description": "Simplebutton size is a super set of all the sizes supported by children components.",
3048
+ "default": "32",
3049
+ "attribute": "size",
2997
3050
  "reflects": true
2998
3051
  },
2999
3052
  {
3000
3053
  "kind": "field",
3001
- "name": "variant",
3054
+ "name": "role",
3055
+ "description": "This property defines the ARIA role for the element. By default, it is set to 'button'.\nConsumers should override this role when:\n- The element is being used in a context where a different role is more appropriate.\n- Custom behaviors are implemented that require a specific ARIA role for accessibility purposes.",
3056
+ "default": "button",
3057
+ "attribute": "role",
3058
+ "reflects": true
3059
+ },
3060
+ {
3061
+ "kind": "field",
3062
+ "name": "ariaStateKey",
3002
3063
  "type": {
3003
- "text": "ButtonGroupVariant"
3064
+ "text": "string | undefined"
3004
3065
  },
3005
- "description": "Variant of the buttons within the buttongroup.",
3006
- "default": "'primary'",
3007
- "attribute": "variant",
3066
+ "description": "This property defines the ARIA state key, which will be toggled when the\nButton is set to `active`.\nThe default value is 'aria-pressed', which is commonly used for toggle buttons.\n\nConsumers can override this property to use a different ARIA state key if needed.\nIn case multiple aria attributes should be toggled, they can be passed in as\na comma separated string.\nFor example: `aria-pressed,aria-expanded`",
3067
+ "default": "'aria-pressed' (when)",
3068
+ "attribute": "ariaStateKey",
3008
3069
  "reflects": true
3009
3070
  },
3010
3071
  {
3011
3072
  "kind": "field",
3012
- "name": "size",
3073
+ "name": "type",
3013
3074
  "type": {
3014
- "text": "ButtonGroupSize"
3075
+ "text": "ButtonType"
3015
3076
  },
3016
- "description": "Size of the buttons within the buttongroup.",
3017
- "default": "'28'",
3018
- "attribute": "size",
3077
+ "description": "This property defines the type attribute for the button element.\nThe type attribute specifies the behavior of the button when it is clicked.\n- **submit**: The button submits the form data to the server.\n- **reset**: The button resets the form data to its initial state.\n- **button**: The button does nothing when clicked.",
3078
+ "default": "button",
3079
+ "attribute": "type",
3019
3080
  "reflects": true
3020
3081
  },
3082
+ {
3083
+ "kind": "method",
3084
+ "name": "executeAction",
3085
+ "privacy": "protected"
3086
+ },
3087
+ {
3088
+ "kind": "method",
3089
+ "name": "setActive",
3090
+ "privacy": "protected",
3091
+ "parameters": [
3092
+ {
3093
+ "name": "element",
3094
+ "type": {
3095
+ "text": "HTMLElement"
3096
+ },
3097
+ "description": "The button element"
3098
+ },
3099
+ {
3100
+ "name": "active",
3101
+ "optional": true,
3102
+ "type": {
3103
+ "text": "boolean"
3104
+ },
3105
+ "description": "The active state of the element"
3106
+ }
3107
+ ],
3108
+ "description": "Sets the ariaStateKey attributes based on the active state of the button."
3109
+ },
3110
+ {
3111
+ "kind": "method",
3112
+ "name": "setSoftDisabled",
3113
+ "privacy": "private",
3114
+ "parameters": [
3115
+ {
3116
+ "name": "element",
3117
+ "type": {
3118
+ "text": "HTMLElement"
3119
+ },
3120
+ "description": "The button element."
3121
+ },
3122
+ {
3123
+ "name": "softDisabled",
3124
+ "optional": true,
3125
+ "type": {
3126
+ "text": "boolean"
3127
+ },
3128
+ "description": "The soft-disabled state."
3129
+ }
3130
+ ],
3131
+ "description": "Sets the soft-disabled attribute for the button.\nWhen soft-disabled, the button looks to be disabled but remains focusable and clickable.\nAlso sets/removes aria-disabled attribute."
3132
+ },
3133
+ {
3134
+ "kind": "method",
3135
+ "name": "setDisabled",
3136
+ "privacy": "private",
3137
+ "parameters": [
3138
+ {
3139
+ "name": "element",
3140
+ "type": {
3141
+ "text": "HTMLElement"
3142
+ },
3143
+ "description": "The button element."
3144
+ },
3145
+ {
3146
+ "name": "disabled",
3147
+ "type": {
3148
+ "text": "boolean"
3149
+ },
3150
+ "description": "The disabled state."
3151
+ }
3152
+ ],
3153
+ "description": "Sets the disabled attribute for the button.\nWhen disabled, the button is not focusable or clickable, and tabindex is set to -1.\nThe previous tabindex is stored and restored when enabled.\nAlso sets/removes aria-disabled attribute."
3154
+ },
3155
+ {
3156
+ "kind": "method",
3157
+ "name": "triggerClickEvent",
3158
+ "privacy": "private"
3159
+ },
3160
+ {
3161
+ "kind": "method",
3162
+ "name": "handleBlur",
3163
+ "privacy": "private",
3164
+ "description": "In case the button is pressed and the focus is lost while pressing,\nthe pressed class is removed."
3165
+ },
3166
+ {
3167
+ "kind": "method",
3168
+ "name": "handleKeyDown",
3169
+ "privacy": "private",
3170
+ "parameters": [
3171
+ {
3172
+ "name": "event",
3173
+ "type": {
3174
+ "text": "KeyboardEvent"
3175
+ },
3176
+ "description": "The keyboard event."
3177
+ }
3178
+ ],
3179
+ "description": "Handles the keydown event on the button.\nIf the key is 'Enter' or 'Space', the button is pressed.\nIf the key is 'Enter', the button is pressed. The native HTML button works in the same way.\nIf the key is 'Space', the button's default is prevent to avoid scrolling etc in the host application."
3180
+ },
3181
+ {
3182
+ "kind": "method",
3183
+ "name": "handleKeyUp",
3184
+ "privacy": "private",
3185
+ "parameters": [
3186
+ {
3187
+ "name": "event",
3188
+ "type": {
3189
+ "text": "KeyboardEvent"
3190
+ },
3191
+ "description": "The keyboard event."
3192
+ }
3193
+ ],
3194
+ "description": "Handles the keyup event on the button.\nIf the key is 'Enter' or 'Space', the button is clicked.\nIf the key is 'Space', the button is pressed. The native HTML button works in the same way."
3195
+ },
3021
3196
  {
3022
3197
  "kind": "field",
3023
- "name": "compact",
3198
+ "name": "autofocus",
3024
3199
  "type": {
3025
3200
  "text": "boolean"
3026
3201
  },
3027
3202
  "default": "false",
3028
- "description": "When this is true, the buttons within the buttongroup will be compact.\ni.e. Irrespective of the size of the buttons, they will have a height of 24px.",
3029
- "attribute": "compact",
3030
- "reflects": true
3203
+ "description": "This property indicates whether the element should receive focus automatically when it is rendered.",
3204
+ "attribute": "autofocus",
3205
+ "reflects": true,
3206
+ "inheritedFrom": {
3207
+ "name": "AutoFocusMixin",
3208
+ "module": "utils/mixins/AutoFocusMixin.js"
3209
+ }
3210
+ },
3211
+ {
3212
+ "kind": "field",
3213
+ "name": "tabIndex",
3214
+ "type": {
3215
+ "text": "number"
3216
+ },
3217
+ "default": "0",
3218
+ "description": "This property specifies the tab order of the element.",
3219
+ "attribute": "tabIndex",
3220
+ "reflects": true,
3221
+ "inheritedFrom": {
3222
+ "name": "TabIndexMixin",
3223
+ "module": "utils/mixins/TabIndexMixin.js"
3224
+ }
3225
+ },
3226
+ {
3227
+ "kind": "field",
3228
+ "name": "disabled",
3229
+ "type": {
3230
+ "text": "boolean | undefined"
3231
+ },
3232
+ "description": "Indicates whether the component is disabled.\nWhen the component is disabled for user interaction; it is not focusable or clickable.",
3233
+ "default": "undefined",
3234
+ "attribute": "disabled",
3235
+ "reflects": true,
3236
+ "inheritedFrom": {
3237
+ "name": "DisabledMixin",
3238
+ "module": "utils/mixins/DisabledMixin.js"
3239
+ }
3240
+ }
3241
+ ],
3242
+ "events": [
3243
+ {
3244
+ "description": "(React: onClick) This event is dispatched when the button is clicked.",
3245
+ "name": "click",
3246
+ "reactName": "onClick"
3247
+ },
3248
+ {
3249
+ "description": "(React: onKeyDown) This event is dispatched when a key is pressed down on the button.",
3250
+ "name": "keydown",
3251
+ "reactName": "onKeyDown"
3252
+ },
3253
+ {
3254
+ "description": "(React: onKeyUp) This event is dispatched when a key is released on the button.",
3255
+ "name": "keyup",
3256
+ "reactName": "onKeyUp"
3257
+ },
3258
+ {
3259
+ "description": "(React: onFocus) This event is dispatched when the button receives focus.",
3260
+ "name": "focus",
3261
+ "reactName": "onFocus"
3031
3262
  }
3032
3263
  ],
3033
3264
  "attributes": [
3034
3265
  {
3035
- "name": "orientation",
3266
+ "name": "active",
3036
3267
  "type": {
3037
- "text": "ButtonGroupOrientation"
3268
+ "text": "boolean | undefined"
3038
3269
  },
3039
- "description": "Orientation of the buttongroup.",
3040
- "default": "'horizontal'",
3041
- "fieldName": "orientation"
3270
+ "description": "The button's active state indicates whether it is currently toggled on (active) or off (inactive).\nWhen the active state is true, the button is considered to be in an active state, meaning it is toggled on.\nConversely, when the active state is false, the button is in an inactive state, indicating it is toggled off.\n\nThis attribute is used to set the provided `ariaStateKey` to true or false.",
3271
+ "default": "undefined",
3272
+ "fieldName": "active"
3042
3273
  },
3043
3274
  {
3044
- "name": "variant",
3275
+ "name": "soft-disabled",
3045
3276
  "type": {
3046
- "text": "ButtonGroupVariant"
3277
+ "text": "boolean | undefined"
3047
3278
  },
3048
- "description": "Variant of the buttons within the buttongroup.",
3049
- "default": "'primary'",
3050
- "fieldName": "variant"
3279
+ "description": "Indicates whether the button is soft disabled.\nWhen set to `true`, the button appears visually disabled but still allows\nfocus, click, and keyboard actions to be passed through.\n\n**Important:** When using soft disabled, consumers must ensure that\nthe button behaves like a disabled button, allowing only focus and\npreventing any interactions (clicks or keyboard actions) from triggering unintended actions.",
3280
+ "default": "undefined",
3281
+ "fieldName": "softDisabled"
3051
3282
  },
3052
3283
  {
3053
3284
  "name": "size",
3054
3285
  "type": {
3055
- "text": "ButtonGroupSize"
3286
+ "text": "ButtonSize"
3056
3287
  },
3057
- "description": "Size of the buttons within the buttongroup.",
3058
- "default": "'28'",
3288
+ "description": "Simplebutton size is a super set of all the sizes supported by children components.",
3289
+ "default": "32",
3059
3290
  "fieldName": "size"
3060
3291
  },
3061
3292
  {
3062
- "name": "compact",
3293
+ "name": "role",
3294
+ "description": "This property defines the ARIA role for the element. By default, it is set to 'button'.\nConsumers should override this role when:\n- The element is being used in a context where a different role is more appropriate.\n- Custom behaviors are implemented that require a specific ARIA role for accessibility purposes.",
3295
+ "default": "button",
3296
+ "fieldName": "role"
3297
+ },
3298
+ {
3299
+ "name": "ariaStateKey",
3300
+ "type": {
3301
+ "text": "string | undefined"
3302
+ },
3303
+ "description": "This property defines the ARIA state key, which will be toggled when the\nButton is set to `active`.\nThe default value is 'aria-pressed', which is commonly used for toggle buttons.\n\nConsumers can override this property to use a different ARIA state key if needed.\nIn case multiple aria attributes should be toggled, they can be passed in as\na comma separated string.\nFor example: `aria-pressed,aria-expanded`",
3304
+ "default": "'aria-pressed' (when)",
3305
+ "fieldName": "ariaStateKey"
3306
+ },
3307
+ {
3308
+ "name": "type",
3309
+ "type": {
3310
+ "text": "ButtonType"
3311
+ },
3312
+ "description": "This property defines the type attribute for the button element.\nThe type attribute specifies the behavior of the button when it is clicked.\n- **submit**: The button submits the form data to the server.\n- **reset**: The button resets the form data to its initial state.\n- **button**: The button does nothing when clicked.",
3313
+ "default": "button",
3314
+ "fieldName": "type"
3315
+ },
3316
+ {
3317
+ "name": "autofocus",
3063
3318
  "type": {
3064
3319
  "text": "boolean"
3065
3320
  },
3066
3321
  "default": "false",
3067
- "description": "When this is true, the buttons within the buttongroup will be compact.\ni.e. Irrespective of the size of the buttons, they will have a height of 24px.",
3068
- "fieldName": "compact"
3322
+ "description": "This property indicates whether the element should receive focus automatically when it is rendered.",
3323
+ "fieldName": "autofocus",
3324
+ "inheritedFrom": {
3325
+ "name": "AutoFocusMixin",
3326
+ "module": "src/utils/mixins/AutoFocusMixin.ts"
3327
+ }
3328
+ },
3329
+ {
3330
+ "name": "tabIndex",
3331
+ "type": {
3332
+ "text": "number"
3333
+ },
3334
+ "default": "0",
3335
+ "description": "This property specifies the tab order of the element.",
3336
+ "fieldName": "tabIndex",
3337
+ "inheritedFrom": {
3338
+ "name": "TabIndexMixin",
3339
+ "module": "src/utils/mixins/TabIndexMixin.ts"
3340
+ }
3341
+ },
3342
+ {
3343
+ "name": "disabled",
3344
+ "type": {
3345
+ "text": "boolean | undefined"
3346
+ },
3347
+ "description": "Indicates whether the component is disabled.\nWhen the component is disabled for user interaction; it is not focusable or clickable.",
3348
+ "default": "undefined",
3349
+ "fieldName": "disabled",
3350
+ "inheritedFrom": {
3351
+ "name": "DisabledMixin",
3352
+ "module": "src/utils/mixins/DisabledMixin.ts"
3353
+ }
3354
+ }
3355
+ ],
3356
+ "mixins": [
3357
+ {
3358
+ "name": "AutoFocusMixin",
3359
+ "module": "/src/utils/mixins/AutoFocusMixin"
3360
+ },
3361
+ {
3362
+ "name": "TabIndexMixin",
3363
+ "module": "/src/utils/mixins/TabIndexMixin"
3364
+ },
3365
+ {
3366
+ "name": "DisabledMixin",
3367
+ "module": "/src/utils/mixins/DisabledMixin"
3069
3368
  }
3070
3369
  ],
3071
3370
  "superclass": {
3072
3371
  "name": "Component",
3073
3372
  "module": "/src/models"
3074
3373
  },
3075
- "tagName": "mdc-buttongroup",
3076
- "jsDoc": "/**\n * buttongroup component, is a styled wrapper for multiple buttons.\n * It can support icon buttons, combination of icon and pill buttons, and text buttons.\n * They are available in horizontal and vertical orientation.\n *\n * @tagname mdc-buttongroup\n *\n * @slot default - This is a default/unnamed slot, which contains the buttons\n *\n * @cssproperty --mdc-buttongroup-border-radius - The border radius of the buttongroup\n * @cssproperty --mdc-buttongroup-border-color - The border color of the buttongroup\n * @cssproperty --mdc-buttongroup-divider-color - The color of the divider between buttons within the buttongroup\n */",
3374
+ "tagName": "mdc-buttonsimple",
3375
+ "jsDoc": "/**\n * `mdc-buttonsimple` is a component that can be configured in various ways to suit different use cases.\n * It is used as an internal component and is not intended to be used directly by consumers.\n * Consumers should use the `mdc-button` component instead.\n *\n * @event click - (React: onClick) This event is dispatched when the button is clicked.\n * @event keydown - (React: onKeyDown) This event is dispatched when a key is pressed down on the button.\n * @event keyup - (React: onKeyUp) This event is dispatched when a key is released on the button.\n * @event focus - (React: onFocus) This event is dispatched when the button receives focus.\n *\n * @tagname mdc-buttonsimple\n */",
3077
3376
  "customElement": true
3078
3377
  }
3079
3378
  ],
@@ -3082,65 +3381,83 @@
3082
3381
  "kind": "js",
3083
3382
  "name": "default",
3084
3383
  "declaration": {
3085
- "name": "ButtonGroup",
3086
- "module": "components/buttongroup/buttongroup.component.js"
3384
+ "name": "Buttonsimple",
3385
+ "module": "components/buttonsimple/buttonsimple.component.js"
3087
3386
  }
3088
3387
  }
3089
3388
  ]
3090
3389
  },
3091
3390
  {
3092
3391
  "kind": "javascript-module",
3093
- "path": "components/buttonlink/buttonlink.component.js",
3392
+ "path": "components/button/button.component.js",
3094
3393
  "declarations": [
3095
3394
  {
3096
3395
  "kind": "class",
3097
- "description": "`mdc-buttonlink` combines the functional behavior of `mdc-linksimple` with the visual and structural\nfeatures of `mdc-button`. This includes support for variants, sizing, and optional\nprefix and postfix icons via slots.\n\n### Features:\n- Behaves like an link while visually resembling a button.\n- Supports slots for `prefix-icon` and `postfix-icon`.\n- Customizable size, color, and variant through attributes.\n- Inherits accessibility and keyboard interaction support from `mdc-linksimple`.",
3098
- "name": "ButtonLink",
3396
+ "description": "`mdc-button` is a component that can be configured in various ways to suit different use cases.\n\nButton Variants:\n- **Primary**: Solid background color.\n- **Secondary**: Transparent background with a solid border.\n- **Tertiary**: No background or border, appears as plain text but retains all button functionalities.\n\nButton Colors:\n- **Positive**: Green color.\n- **Negative**: Red color.\n- **Accent**: Blue color.\n- **Promotional**: Purple color.\n- **Default**: White color.\n\nButton Sizes (in REM units):\n- **Pill button**: 40, 32, 28, 24.\n- **Icon button**: 64, 52, 40, 32, 28, 24.\n- **Tertiary icon button**: 20.\n\nButton Types:\n- **Pill button**: A button that contains text value. Commonly used for call to action, tags, or filters.\n- **Pill button with icons**: A button containing an icon either on the left or right side of the button.\n- **Icon button**: A button represented by just an icon without any text.\nThe type of button is inferred based on the presence of slot and/or prefix and postfix icons.",
3397
+ "name": "Button",
3398
+ "slots": [
3399
+ {
3400
+ "description": "Text label of the button.",
3401
+ "name": ""
3402
+ }
3403
+ ],
3099
3404
  "members": [
3100
3405
  {
3101
3406
  "kind": "field",
3102
3407
  "name": "size",
3103
3408
  "type": {
3104
- "text": "PillButtonSize | IconButtonSize"
3409
+ "text": "ButtonSize"
3105
3410
  },
3106
- "description": "ButtonLink sizing is based on the buttonlink type.\n- **Pill buttonlink**: 40, 32, 28, 24.\n- **Icon buttonlink**: 64, 52, 40, 32, 28, 24.\n- Tertiary icon buttonlink can also be 20.",
3411
+ "description": "Button sizing is based on the button type.\n- **Pill button**: 40, 32, 28, 24.\n- **Icon button**: 64, 52, 40, 32, 28, 24.\n- Tertiary icon button can also be 20.",
3107
3412
  "default": "32",
3108
3413
  "attribute": "size",
3109
- "reflects": true
3414
+ "reflects": true,
3415
+ "inheritedFrom": {
3416
+ "name": "Buttonsimple",
3417
+ "module": "components/buttonsimple/buttonsimple.component.js"
3418
+ }
3110
3419
  },
3111
3420
  {
3112
3421
  "kind": "field",
3113
- "name": "softDisabled",
3422
+ "name": "inverted",
3114
3423
  "type": {
3115
- "text": "boolean | undefined"
3424
+ "text": "boolean"
3116
3425
  },
3117
- "description": "Indicates whether the buttonlink is soft disabled.\nWhen set to `true`, the buttonlink appears visually disabled but still allows\nfocus, click, and keyboard actions to be passed through.\n\n**Important:** When using soft disabled, consumers must ensure that\nthe buttonlink behaves like a disabled buttonlink, allowing only focus and\npreventing any interactions (clicks or keyboard actions) from triggering unintended actions.",
3118
- "default": "undefined",
3119
- "attribute": "soft-disabled",
3426
+ "description": "The button color can be inverted by setting the inverted attribute to true.\n\nOnly applies when variant is set to `primary`, color is set to `default`\nand button is not `active`.",
3427
+ "default": "false",
3428
+ "attribute": "inverted",
3120
3429
  "reflects": true
3121
3430
  },
3431
+ {
3432
+ "kind": "field",
3433
+ "name": "role",
3434
+ "description": "This property defines the ARIA role for the element. By default, it is set to 'button'.\nConsumers should override this role when:\n- The element is being used in a context where a different role is more appropriate.\n- Custom behaviors are implemented that require a specific ARIA role for accessibility purposes.",
3435
+ "default": "'button'",
3436
+ "attribute": "role",
3437
+ "reflects": true,
3438
+ "type": {
3439
+ "text": "string"
3440
+ },
3441
+ "inheritedFrom": {
3442
+ "name": "Buttonsimple",
3443
+ "module": "components/buttonsimple/buttonsimple.component.js"
3444
+ }
3445
+ },
3122
3446
  {
3123
3447
  "kind": "method",
3124
- "name": "setSoftDisabled",
3448
+ "name": "inferFilledIconName",
3125
3449
  "privacy": "private",
3126
3450
  "parameters": [
3127
3451
  {
3128
- "name": "element",
3129
- "type": {
3130
- "text": "HTMLElement"
3131
- },
3132
- "description": "The buttonlink element."
3133
- },
3134
- {
3135
- "name": "softDisabled",
3452
+ "name": "active",
3136
3453
  "optional": true,
3137
3454
  "type": {
3138
3455
  "text": "boolean"
3139
3456
  },
3140
- "description": "The soft-disabled state."
3457
+ "description": "The active state."
3141
3458
  }
3142
3459
  ],
3143
- "description": "Sets the soft-disabled attribute for the buttonlink.\nWhen soft-disabled, the buttonlink looks to be disabled but remains focusable and clickable.\nAlso sets/removes aria-disabled attribute."
3460
+ "description": "Modifies the icon name based on the active state.\nIf the button is active, the icon name is suffixed with '-filled'.\nIf the button is inactive, the icon name is restored to its original value.\nIf '-filled' icon is not available, the icon name remains unchanged."
3144
3461
  },
3145
3462
  {
3146
3463
  "kind": "field",
@@ -3273,17 +3590,17 @@
3273
3590
  },
3274
3591
  {
3275
3592
  "kind": "field",
3276
- "name": "disabled",
3593
+ "name": "autofocus",
3277
3594
  "type": {
3278
- "text": "boolean | undefined"
3595
+ "text": "boolean"
3279
3596
  },
3280
- "description": "Indicates whether the component is disabled.\nWhen the component is disabled for user interaction; it is not focusable or clickable.",
3281
- "default": "undefined",
3282
- "attribute": "disabled",
3597
+ "default": "false",
3598
+ "description": "This property indicates whether the element should receive focus automatically when it is rendered.",
3599
+ "attribute": "autofocus",
3283
3600
  "reflects": true,
3284
3601
  "inheritedFrom": {
3285
- "name": "DisabledMixin",
3286
- "module": "utils/mixins/DisabledMixin.js"
3602
+ "name": "Buttonsimple",
3603
+ "module": "components/buttonsimple/buttonsimple.component.js"
3287
3604
  }
3288
3605
  },
3289
3606
  {
@@ -3297,420 +3614,25 @@
3297
3614
  "attribute": "tabIndex",
3298
3615
  "reflects": true,
3299
3616
  "inheritedFrom": {
3300
- "name": "TabIndexMixin",
3301
- "module": "utils/mixins/TabIndexMixin.js"
3302
- }
3303
- },
3304
- {
3305
- "kind": "field",
3306
- "name": "inline",
3307
- "type": {
3308
- "text": "boolean"
3309
- },
3310
- "description": "The link can be inline or standalone.",
3311
- "default": "false",
3312
- "attribute": "inline",
3313
- "reflects": true,
3314
- "inheritedFrom": {
3315
- "name": "Linksimple",
3316
- "module": "components/linksimple/linksimple.component.js"
3317
- }
3318
- },
3319
- {
3320
- "kind": "field",
3321
- "name": "inverted",
3322
- "type": {
3323
- "text": "boolean"
3324
- },
3325
- "description": "The link color can be inverted by setting the inverted attribute to true.",
3326
- "default": "false",
3327
- "attribute": "inverted",
3328
- "reflects": true,
3329
- "inheritedFrom": {
3330
- "name": "Linksimple",
3331
- "module": "components/linksimple/linksimple.component.js"
3332
- }
3333
- },
3334
- {
3335
- "kind": "field",
3336
- "name": "href",
3337
- "type": {
3338
- "text": "string"
3339
- },
3340
- "default": "'#'",
3341
- "description": "Href for navigation. The URL that the hyperlink points to",
3342
- "attribute": "href",
3343
- "reflects": true,
3344
- "inheritedFrom": {
3345
- "name": "Linksimple",
3346
- "module": "components/linksimple/linksimple.component.js"
3347
- }
3348
- },
3349
- {
3350
- "kind": "field",
3351
- "name": "target",
3352
- "type": {
3353
- "text": "string"
3354
- },
3355
- "default": "'_self'",
3356
- "description": "Optional target: _blank, _self, _parent, _top and _unfencedTop",
3357
- "attribute": "target",
3358
- "reflects": true,
3359
- "inheritedFrom": {
3360
- "name": "Linksimple",
3361
- "module": "components/linksimple/linksimple.component.js"
3362
- }
3363
- },
3364
- {
3365
- "kind": "field",
3366
- "name": "rel",
3367
- "type": {
3368
- "text": "string | undefined"
3369
- },
3370
- "description": "Optional rel attribute that defines the relationship of the linked URL as space-separated link types.",
3371
- "attribute": "rel",
3372
- "reflects": true,
3373
- "inheritedFrom": {
3374
- "name": "Linksimple",
3375
- "module": "components/linksimple/linksimple.component.js"
3617
+ "name": "Buttonsimple",
3618
+ "module": "components/buttonsimple/buttonsimple.component.js"
3376
3619
  }
3377
3620
  },
3378
3621
  {
3379
3622
  "kind": "field",
3380
- "name": "handleNavigation",
3381
- "privacy": "private",
3382
- "inheritedFrom": {
3383
- "name": "Linksimple",
3384
- "module": "components/linksimple/linksimple.component.js"
3385
- }
3386
- },
3387
- {
3388
- "kind": "method",
3389
- "name": "setDisabled",
3390
- "privacy": "private",
3391
- "parameters": [
3392
- {
3393
- "name": "disabled",
3394
- "type": {
3395
- "text": "boolean"
3396
- },
3397
- "description": "Whether the element should be disabled"
3398
- }
3399
- ],
3400
- "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.",
3401
- "inheritedFrom": {
3402
- "name": "Linksimple",
3403
- "module": "components/linksimple/linksimple.component.js"
3404
- }
3405
- }
3406
- ],
3407
- "events": [
3408
- {
3409
- "description": "(React: onClick) Fired when the user activates the buttonLink using a mouse or assistive technology.",
3410
- "name": "click",
3411
- "reactName": "onClick",
3412
- "inheritedFrom": {
3413
- "name": "Linksimple",
3414
- "module": "src/components/linksimple/linksimple.component.ts"
3415
- }
3416
- },
3417
- {
3418
- "description": "(React: onKeyDown) Fired when the user presses a key while the buttonLink has focus.",
3419
- "name": "keydown",
3420
- "reactName": "onKeyDown",
3421
- "inheritedFrom": {
3422
- "name": "Linksimple",
3423
- "module": "src/components/linksimple/linksimple.component.ts"
3424
- }
3425
- },
3426
- {
3427
- "description": "(React: onFocus) Fired when the buttonLink receives keyboard or mouse focus.",
3428
- "name": "focus",
3429
- "reactName": "onFocus",
3430
- "inheritedFrom": {
3431
- "name": "Linksimple",
3432
- "module": "src/components/linksimple/linksimple.component.ts"
3433
- }
3434
- },
3435
- {
3436
- "description": "(React: onBlur) Fired when the buttonLink loses keyboard or mouse focus.",
3437
- "name": "blur",
3438
- "reactName": "onBlur",
3439
- "inheritedFrom": {
3440
- "name": "Linksimple",
3441
- "module": "src/components/linksimple/linksimple.component.ts"
3442
- }
3443
- }
3444
- ],
3445
- "attributes": [
3446
- {
3447
- "name": "size",
3448
- "type": {
3449
- "text": "PillButtonSize | IconButtonSize"
3450
- },
3451
- "description": "ButtonLink sizing is based on the buttonlink type.\n- **Pill buttonlink**: 40, 32, 28, 24.\n- **Icon buttonlink**: 64, 52, 40, 32, 28, 24.\n- Tertiary icon buttonlink can also be 20.",
3452
- "default": "32",
3453
- "fieldName": "size"
3454
- },
3455
- {
3456
- "name": "soft-disabled",
3457
- "type": {
3458
- "text": "boolean | undefined"
3459
- },
3460
- "description": "Indicates whether the buttonlink is soft disabled.\nWhen set to `true`, the buttonlink appears visually disabled but still allows\nfocus, click, and keyboard actions to be passed through.\n\n**Important:** When using soft disabled, consumers must ensure that\nthe buttonlink behaves like a disabled buttonlink, allowing only focus and\npreventing any interactions (clicks or keyboard actions) from triggering unintended actions.",
3461
- "default": "undefined",
3462
- "fieldName": "softDisabled"
3463
- },
3464
- {
3465
- "name": "prefix-icon",
3466
- "type": {
3467
- "text": "IconNames | undefined"
3468
- },
3469
- "description": "The name of the icon to display as a prefix.\nThe icon is displayed on the left side of the button.",
3470
- "fieldName": "prefixIcon",
3471
- "inheritedFrom": {
3472
- "name": "ButtonComponentMixin",
3473
- "module": "src/utils/mixins/ButtonComponentMixin.ts"
3474
- }
3475
- },
3476
- {
3477
- "name": "postfix-icon",
3478
- "type": {
3479
- "text": "IconNames | undefined"
3480
- },
3481
- "description": "The name of the icon to display as a postfix.\nThe icon is displayed on the right side of the button.",
3482
- "fieldName": "postfixIcon",
3483
- "inheritedFrom": {
3484
- "name": "ButtonComponentMixin",
3485
- "module": "src/utils/mixins/ButtonComponentMixin.ts"
3486
- }
3487
- },
3488
- {
3489
- "name": "variant",
3490
- "type": {
3491
- "text": "ButtonVariant"
3492
- },
3493
- "description": "There are 3 variants of button: primary, secondary, tertiary. They are styled differently.\n- **Primary**: Solid background color.\n- **Secondary**: Transparent background with a solid border.\n- **Tertiary**: No background or border, appears as plain text but retains all button functionalities.",
3494
- "default": "primary",
3495
- "fieldName": "variant",
3496
- "inheritedFrom": {
3497
- "name": "ButtonComponentMixin",
3498
- "module": "src/utils/mixins/ButtonComponentMixin.ts"
3499
- }
3500
- },
3501
- {
3502
- "name": "color",
3503
- "type": {
3504
- "text": "ButtonColor"
3505
- },
3506
- "description": "There are 5 colors for button: positive, negative, accent, promotional, default.",
3507
- "default": "default",
3508
- "fieldName": "color",
3509
- "inheritedFrom": {
3510
- "name": "ButtonComponentMixin",
3511
- "module": "src/utils/mixins/ButtonComponentMixin.ts"
3512
- }
3513
- },
3514
- {
3515
3623
  "name": "disabled",
3516
3624
  "type": {
3517
3625
  "text": "boolean | undefined"
3518
3626
  },
3519
3627
  "description": "Indicates whether the component is disabled.\nWhen the component is disabled for user interaction; it is not focusable or clickable.",
3520
3628
  "default": "undefined",
3521
- "fieldName": "disabled",
3522
- "inheritedFrom": {
3523
- "name": "DisabledMixin",
3524
- "module": "src/utils/mixins/DisabledMixin.ts"
3525
- }
3526
- },
3527
- {
3528
- "name": "tabIndex",
3529
- "type": {
3530
- "text": "number"
3531
- },
3532
- "default": "0",
3533
- "description": "This property specifies the tab order of the element.",
3534
- "fieldName": "tabIndex",
3535
- "inheritedFrom": {
3536
- "name": "TabIndexMixin",
3537
- "module": "src/utils/mixins/TabIndexMixin.ts"
3538
- }
3539
- },
3540
- {
3541
- "name": "inline",
3542
- "type": {
3543
- "text": "boolean"
3544
- },
3545
- "description": "The link can be inline or standalone.",
3546
- "default": "false",
3547
- "fieldName": "inline",
3548
- "inheritedFrom": {
3549
- "name": "Linksimple",
3550
- "module": "src/components/linksimple/linksimple.component.ts"
3551
- }
3552
- },
3553
- {
3554
- "name": "inverted",
3555
- "type": {
3556
- "text": "boolean"
3557
- },
3558
- "description": "The link color can be inverted by setting the inverted attribute to true.",
3559
- "default": "false",
3560
- "fieldName": "inverted",
3561
- "inheritedFrom": {
3562
- "name": "Linksimple",
3563
- "module": "src/components/linksimple/linksimple.component.ts"
3564
- }
3565
- },
3566
- {
3567
- "name": "href",
3568
- "type": {
3569
- "text": "string"
3570
- },
3571
- "default": "'#'",
3572
- "description": "Href for navigation. The URL that the hyperlink points to",
3573
- "fieldName": "href",
3574
- "inheritedFrom": {
3575
- "name": "Linksimple",
3576
- "module": "src/components/linksimple/linksimple.component.ts"
3577
- }
3578
- },
3579
- {
3580
- "name": "target",
3581
- "type": {
3582
- "text": "string"
3583
- },
3584
- "default": "'_self'",
3585
- "description": "Optional target: _blank, _self, _parent, _top and _unfencedTop",
3586
- "fieldName": "target",
3587
- "inheritedFrom": {
3588
- "name": "Linksimple",
3589
- "module": "src/components/linksimple/linksimple.component.ts"
3590
- }
3591
- },
3592
- {
3593
- "name": "rel",
3594
- "type": {
3595
- "text": "string | undefined"
3596
- },
3597
- "description": "Optional rel attribute that defines the relationship of the linked URL as space-separated link types.",
3598
- "fieldName": "rel",
3599
- "inheritedFrom": {
3600
- "name": "Linksimple",
3601
- "module": "src/components/linksimple/linksimple.component.ts"
3602
- }
3603
- }
3604
- ],
3605
- "mixins": [
3606
- {
3607
- "name": "ButtonComponentMixin",
3608
- "module": "/src/utils/mixins/ButtonComponentMixin"
3609
- }
3610
- ],
3611
- "superclass": {
3612
- "name": "Linksimple",
3613
- "module": "/src/components/linksimple/linksimple.component"
3614
- },
3615
- "tagName": "mdc-buttonlink",
3616
- "jsDoc": "/**\n * `mdc-buttonlink` combines the functional behavior of `mdc-linksimple` with the visual and structural\n * features of `mdc-button`. This includes support for variants, sizing, and optional\n * prefix and postfix icons via slots.\n *\n * ### Features:\n * - Behaves like an link while visually resembling a button.\n * - Supports slots for `prefix-icon` and `postfix-icon`.\n * - Customizable size, color, and variant through attributes.\n * - Inherits accessibility and keyboard interaction support from `mdc-linksimple`.\n *\n * @dependency mdc-icon\n *\n * @tagname mdc-buttonlink\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 */",
3617
- "customElement": true,
3618
- "cssProperties": [
3619
- {
3620
- "description": "Border radius of the link.",
3621
- "name": "--mdc-link-border-radius",
3622
- "inheritedFrom": {
3623
- "name": "Linksimple",
3624
- "module": "src/components/linksimple/linksimple.component.ts"
3625
- }
3626
- },
3627
- {
3628
- "description": "Color of the link’s child content in the active state.",
3629
- "name": "--mdc-link-color-active",
3630
- "inheritedFrom": {
3631
- "name": "Linksimple",
3632
- "module": "src/components/linksimple/linksimple.component.ts"
3633
- }
3634
- },
3635
- {
3636
- "description": "Color of the link’s child content in the disabled state.",
3637
- "name": "--mdc-link-color-disabled",
3638
- "inheritedFrom": {
3639
- "name": "Linksimple",
3640
- "module": "src/components/linksimple/linksimple.component.ts"
3641
- }
3642
- },
3643
- {
3644
- "description": "Color of the link’s child content in the hover state.",
3645
- "name": "--mdc-link-color-hover",
3646
- "inheritedFrom": {
3647
- "name": "Linksimple",
3648
- "module": "src/components/linksimple/linksimple.component.ts"
3649
- }
3650
- },
3651
- {
3652
- "description": "Color of the link’s child content in the normal state.",
3653
- "name": "--mdc-link-color-normal",
3654
- "inheritedFrom": {
3655
- "name": "Linksimple",
3656
- "module": "src/components/linksimple/linksimple.component.ts"
3657
- }
3658
- },
3659
- {
3660
- "description": "Color of the inverted link’s child content in the active state.",
3661
- "name": "--mdc-link-inverted-color-active",
3662
- "inheritedFrom": {
3663
- "name": "Linksimple",
3664
- "module": "src/components/linksimple/linksimple.component.ts"
3665
- }
3666
- },
3667
- {
3668
- "description": "Color of the inverted link’s child content in the disabled state.",
3669
- "name": "--mdc-link-inverted-color-disabled",
3670
- "inheritedFrom": {
3671
- "name": "Linksimple",
3672
- "module": "src/components/linksimple/linksimple.component.ts"
3673
- }
3674
- },
3675
- {
3676
- "description": "Color of the inverted link’s child content in the hover state.",
3677
- "name": "--mdc-link-inverted-color-hover",
3629
+ "attribute": "disabled",
3630
+ "reflects": true,
3678
3631
  "inheritedFrom": {
3679
- "name": "Linksimple",
3680
- "module": "src/components/linksimple/linksimple.component.ts"
3632
+ "name": "Buttonsimple",
3633
+ "module": "components/buttonsimple/buttonsimple.component.js"
3681
3634
  }
3682
3635
  },
3683
- {
3684
- "description": "Color of the inverted link’s child content in the normal state.",
3685
- "name": "--mdc-link-inverted-color-normal",
3686
- "inheritedFrom": {
3687
- "name": "Linksimple",
3688
- "module": "src/components/linksimple/linksimple.component.ts"
3689
- }
3690
- }
3691
- ]
3692
- }
3693
- ],
3694
- "exports": [
3695
- {
3696
- "kind": "js",
3697
- "name": "default",
3698
- "declaration": {
3699
- "name": "ButtonLink",
3700
- "module": "components/buttonlink/buttonlink.component.js"
3701
- }
3702
- }
3703
- ]
3704
- },
3705
- {
3706
- "kind": "javascript-module",
3707
- "path": "components/buttonsimple/buttonsimple.component.js",
3708
- "declarations": [
3709
- {
3710
- "kind": "class",
3711
- "description": "`mdc-buttonsimple` is a component that can be configured in various ways to suit different use cases.\nIt is used as an internal component and is not intended to be used directly by consumers.\nConsumers should use the `mdc-button` component instead.",
3712
- "name": "Buttonsimple",
3713
- "members": [
3714
3636
  {
3715
3637
  "kind": "field",
3716
3638
  "name": "active",
@@ -3720,7 +3642,11 @@
3720
3642
  "description": "The button's active state indicates whether it is currently toggled on (active) or off (inactive).\nWhen the active state is true, the button is considered to be in an active state, meaning it is toggled on.\nConversely, when the active state is false, the button is in an inactive state, indicating it is toggled off.\n\nThis attribute is used to set the provided `ariaStateKey` to true or false.",
3721
3643
  "default": "undefined",
3722
3644
  "attribute": "active",
3723
- "reflects": true
3645
+ "reflects": true,
3646
+ "inheritedFrom": {
3647
+ "name": "Buttonsimple",
3648
+ "module": "components/buttonsimple/buttonsimple.component.js"
3649
+ }
3724
3650
  },
3725
3651
  {
3726
3652
  "kind": "field",
@@ -3731,26 +3657,11 @@
3731
3657
  "description": "Indicates whether the button is soft disabled.\nWhen set to `true`, the button appears visually disabled but still allows\nfocus, click, and keyboard actions to be passed through.\n\n**Important:** When using soft disabled, consumers must ensure that\nthe button behaves like a disabled button, allowing only focus and\npreventing any interactions (clicks or keyboard actions) from triggering unintended actions.",
3732
3658
  "default": "undefined",
3733
3659
  "attribute": "soft-disabled",
3734
- "reflects": true
3735
- },
3736
- {
3737
- "kind": "field",
3738
- "name": "size",
3739
- "type": {
3740
- "text": "ButtonSize"
3741
- },
3742
- "description": "Simplebutton size is a super set of all the sizes supported by children components.",
3743
- "default": "32",
3744
- "attribute": "size",
3745
- "reflects": true
3746
- },
3747
- {
3748
- "kind": "field",
3749
- "name": "role",
3750
- "description": "This property defines the ARIA role for the element. By default, it is set to 'button'.\nConsumers should override this role when:\n- The element is being used in a context where a different role is more appropriate.\n- Custom behaviors are implemented that require a specific ARIA role for accessibility purposes.",
3751
- "default": "button",
3752
- "attribute": "role",
3753
- "reflects": true
3660
+ "reflects": true,
3661
+ "inheritedFrom": {
3662
+ "name": "Buttonsimple",
3663
+ "module": "components/buttonsimple/buttonsimple.component.js"
3664
+ }
3754
3665
  },
3755
3666
  {
3756
3667
  "kind": "field",
@@ -3761,7 +3672,11 @@
3761
3672
  "description": "This property defines the ARIA state key, which will be toggled when the\nButton is set to `active`.\nThe default value is 'aria-pressed', which is commonly used for toggle buttons.\n\nConsumers can override this property to use a different ARIA state key if needed.\nIn case multiple aria attributes should be toggled, they can be passed in as\na comma separated string.\nFor example: `aria-pressed,aria-expanded`",
3762
3673
  "default": "'aria-pressed' (when)",
3763
3674
  "attribute": "ariaStateKey",
3764
- "reflects": true
3675
+ "reflects": true,
3676
+ "inheritedFrom": {
3677
+ "name": "Buttonsimple",
3678
+ "module": "components/buttonsimple/buttonsimple.component.js"
3679
+ }
3765
3680
  },
3766
3681
  {
3767
3682
  "kind": "field",
@@ -3772,12 +3687,20 @@
3772
3687
  "description": "This property defines the type attribute for the button element.\nThe type attribute specifies the behavior of the button when it is clicked.\n- **submit**: The button submits the form data to the server.\n- **reset**: The button resets the form data to its initial state.\n- **button**: The button does nothing when clicked.",
3773
3688
  "default": "button",
3774
3689
  "attribute": "type",
3775
- "reflects": true
3690
+ "reflects": true,
3691
+ "inheritedFrom": {
3692
+ "name": "Buttonsimple",
3693
+ "module": "components/buttonsimple/buttonsimple.component.js"
3694
+ }
3776
3695
  },
3777
3696
  {
3778
3697
  "kind": "method",
3779
3698
  "name": "executeAction",
3780
- "privacy": "protected"
3699
+ "privacy": "protected",
3700
+ "inheritedFrom": {
3701
+ "name": "Buttonsimple",
3702
+ "module": "components/buttonsimple/buttonsimple.component.js"
3703
+ }
3781
3704
  },
3782
3705
  {
3783
3706
  "kind": "method",
@@ -3800,7 +3723,11 @@
3800
3723
  "description": "The active state of the element"
3801
3724
  }
3802
3725
  ],
3803
- "description": "Sets the ariaStateKey attributes based on the active state of the button."
3726
+ "description": "Sets the ariaStateKey attributes based on the active state of the button.",
3727
+ "inheritedFrom": {
3728
+ "name": "Buttonsimple",
3729
+ "module": "components/buttonsimple/buttonsimple.component.js"
3730
+ }
3804
3731
  },
3805
3732
  {
3806
3733
  "kind": "method",
@@ -3823,7 +3750,11 @@
3823
3750
  "description": "The soft-disabled state."
3824
3751
  }
3825
3752
  ],
3826
- "description": "Sets the soft-disabled attribute for the button.\nWhen soft-disabled, the button looks to be disabled but remains focusable and clickable.\nAlso sets/removes aria-disabled attribute."
3753
+ "description": "Sets the soft-disabled attribute for the button.\nWhen soft-disabled, the button looks to be disabled but remains focusable and clickable.\nAlso sets/removes aria-disabled attribute.",
3754
+ "inheritedFrom": {
3755
+ "name": "Buttonsimple",
3756
+ "module": "components/buttonsimple/buttonsimple.component.js"
3757
+ }
3827
3758
  },
3828
3759
  {
3829
3760
  "kind": "method",
@@ -3845,18 +3776,30 @@
3845
3776
  "description": "The disabled state."
3846
3777
  }
3847
3778
  ],
3848
- "description": "Sets the disabled attribute for the button.\nWhen disabled, the button is not focusable or clickable, and tabindex is set to -1.\nThe previous tabindex is stored and restored when enabled.\nAlso sets/removes aria-disabled attribute."
3779
+ "description": "Sets the disabled attribute for the button.\nWhen disabled, the button is not focusable or clickable, and tabindex is set to -1.\nThe previous tabindex is stored and restored when enabled.\nAlso sets/removes aria-disabled attribute.",
3780
+ "inheritedFrom": {
3781
+ "name": "Buttonsimple",
3782
+ "module": "components/buttonsimple/buttonsimple.component.js"
3783
+ }
3849
3784
  },
3850
3785
  {
3851
3786
  "kind": "method",
3852
3787
  "name": "triggerClickEvent",
3853
- "privacy": "private"
3788
+ "privacy": "private",
3789
+ "inheritedFrom": {
3790
+ "name": "Buttonsimple",
3791
+ "module": "components/buttonsimple/buttonsimple.component.js"
3792
+ }
3854
3793
  },
3855
3794
  {
3856
3795
  "kind": "method",
3857
3796
  "name": "handleBlur",
3858
3797
  "privacy": "private",
3859
- "description": "In case the button is pressed and the focus is lost while pressing,\nthe pressed class is removed."
3798
+ "description": "In case the button is pressed and the focus is lost while pressing,\nthe pressed class is removed.",
3799
+ "inheritedFrom": {
3800
+ "name": "Buttonsimple",
3801
+ "module": "components/buttonsimple/buttonsimple.component.js"
3802
+ }
3860
3803
  },
3861
3804
  {
3862
3805
  "kind": "method",
@@ -3871,7 +3814,11 @@
3871
3814
  "description": "The keyboard event."
3872
3815
  }
3873
3816
  ],
3874
- "description": "Handles the keydown event on the button.\nIf the key is 'Enter' or 'Space', the button is pressed.\nIf the key is 'Enter', the button is pressed. The native HTML button works in the same way.\nIf the key is 'Space', the button's default is prevent to avoid scrolling etc in the host application."
3817
+ "description": "Handles the keydown event on the button.\nIf the key is 'Enter' or 'Space', the button is pressed.\nIf the key is 'Enter', the button is pressed. The native HTML button works in the same way.\nIf the key is 'Space', the button's default is prevent to avoid scrolling etc in the host application.",
3818
+ "inheritedFrom": {
3819
+ "name": "Buttonsimple",
3820
+ "module": "components/buttonsimple/buttonsimple.component.js"
3821
+ }
3875
3822
  },
3876
3823
  {
3877
3824
  "kind": "method",
@@ -3886,77 +3833,138 @@
3886
3833
  "description": "The keyboard event."
3887
3834
  }
3888
3835
  ],
3889
- "description": "Handles the keyup event on the button.\nIf the key is 'Enter' or 'Space', the button is clicked.\nIf the key is 'Space', the button is pressed. The native HTML button works in the same way."
3836
+ "description": "Handles the keyup event on the button.\nIf the key is 'Enter' or 'Space', the button is clicked.\nIf the key is 'Space', the button is pressed. The native HTML button works in the same way.",
3837
+ "inheritedFrom": {
3838
+ "name": "Buttonsimple",
3839
+ "module": "components/buttonsimple/buttonsimple.component.js"
3840
+ }
3841
+ }
3842
+ ],
3843
+ "attributes": [
3844
+ {
3845
+ "name": "size",
3846
+ "type": {
3847
+ "text": "ButtonSize"
3848
+ },
3849
+ "description": "Button sizing is based on the button type.\n- **Pill button**: 40, 32, 28, 24.\n- **Icon button**: 64, 52, 40, 32, 28, 24.\n- Tertiary icon button can also be 20.",
3850
+ "default": "32",
3851
+ "fieldName": "size",
3852
+ "inheritedFrom": {
3853
+ "name": "Buttonsimple",
3854
+ "module": "src/components/buttonsimple/buttonsimple.component.ts"
3855
+ }
3856
+ },
3857
+ {
3858
+ "name": "inverted",
3859
+ "type": {
3860
+ "text": "boolean"
3861
+ },
3862
+ "description": "The button color can be inverted by setting the inverted attribute to true.\n\nOnly applies when variant is set to `primary`, color is set to `default`\nand button is not `active`.",
3863
+ "default": "false",
3864
+ "fieldName": "inverted"
3865
+ },
3866
+ {
3867
+ "name": "role",
3868
+ "description": "This property defines the ARIA role for the element. By default, it is set to 'button'.\nConsumers should override this role when:\n- The element is being used in a context where a different role is more appropriate.\n- Custom behaviors are implemented that require a specific ARIA role for accessibility purposes.",
3869
+ "default": "'button'",
3870
+ "fieldName": "role",
3871
+ "type": {
3872
+ "text": "string"
3873
+ },
3874
+ "inheritedFrom": {
3875
+ "name": "Buttonsimple",
3876
+ "module": "src/components/buttonsimple/buttonsimple.component.ts"
3877
+ }
3878
+ },
3879
+ {
3880
+ "name": "prefix-icon",
3881
+ "type": {
3882
+ "text": "IconNames | undefined"
3883
+ },
3884
+ "description": "The name of the icon to display as a prefix.\nThe icon is displayed on the left side of the button.",
3885
+ "fieldName": "prefixIcon",
3886
+ "inheritedFrom": {
3887
+ "name": "ButtonComponentMixin",
3888
+ "module": "src/utils/mixins/ButtonComponentMixin.ts"
3889
+ }
3890
+ },
3891
+ {
3892
+ "name": "postfix-icon",
3893
+ "type": {
3894
+ "text": "IconNames | undefined"
3895
+ },
3896
+ "description": "The name of the icon to display as a postfix.\nThe icon is displayed on the right side of the button.",
3897
+ "fieldName": "postfixIcon",
3898
+ "inheritedFrom": {
3899
+ "name": "ButtonComponentMixin",
3900
+ "module": "src/utils/mixins/ButtonComponentMixin.ts"
3901
+ }
3902
+ },
3903
+ {
3904
+ "name": "variant",
3905
+ "type": {
3906
+ "text": "ButtonVariant"
3907
+ },
3908
+ "description": "There are 3 variants of button: primary, secondary, tertiary. They are styled differently.\n- **Primary**: Solid background color.\n- **Secondary**: Transparent background with a solid border.\n- **Tertiary**: No background or border, appears as plain text but retains all button functionalities.",
3909
+ "default": "primary",
3910
+ "fieldName": "variant",
3911
+ "inheritedFrom": {
3912
+ "name": "ButtonComponentMixin",
3913
+ "module": "src/utils/mixins/ButtonComponentMixin.ts"
3914
+ }
3915
+ },
3916
+ {
3917
+ "name": "color",
3918
+ "type": {
3919
+ "text": "ButtonColor"
3920
+ },
3921
+ "description": "There are 5 colors for button: positive, negative, accent, promotional, default.",
3922
+ "default": "default",
3923
+ "fieldName": "color",
3924
+ "inheritedFrom": {
3925
+ "name": "ButtonComponentMixin",
3926
+ "module": "src/utils/mixins/ButtonComponentMixin.ts"
3927
+ }
3890
3928
  },
3891
3929
  {
3892
- "kind": "field",
3893
3930
  "name": "autofocus",
3894
3931
  "type": {
3895
3932
  "text": "boolean"
3896
3933
  },
3897
3934
  "default": "false",
3898
3935
  "description": "This property indicates whether the element should receive focus automatically when it is rendered.",
3899
- "attribute": "autofocus",
3900
- "reflects": true,
3936
+ "fieldName": "autofocus",
3901
3937
  "inheritedFrom": {
3902
- "name": "AutoFocusMixin",
3903
- "module": "utils/mixins/AutoFocusMixin.js"
3938
+ "name": "Buttonsimple",
3939
+ "module": "src/components/buttonsimple/buttonsimple.component.ts"
3904
3940
  }
3905
3941
  },
3906
3942
  {
3907
- "kind": "field",
3908
3943
  "name": "tabIndex",
3909
3944
  "type": {
3910
3945
  "text": "number"
3911
3946
  },
3912
3947
  "default": "0",
3913
3948
  "description": "This property specifies the tab order of the element.",
3914
- "attribute": "tabIndex",
3915
- "reflects": true,
3949
+ "fieldName": "tabIndex",
3916
3950
  "inheritedFrom": {
3917
- "name": "TabIndexMixin",
3918
- "module": "utils/mixins/TabIndexMixin.js"
3951
+ "name": "Buttonsimple",
3952
+ "module": "src/components/buttonsimple/buttonsimple.component.ts"
3919
3953
  }
3920
3954
  },
3921
3955
  {
3922
- "kind": "field",
3923
3956
  "name": "disabled",
3924
3957
  "type": {
3925
3958
  "text": "boolean | undefined"
3926
3959
  },
3927
3960
  "description": "Indicates whether the component is disabled.\nWhen the component is disabled for user interaction; it is not focusable or clickable.",
3928
3961
  "default": "undefined",
3929
- "attribute": "disabled",
3930
- "reflects": true,
3962
+ "fieldName": "disabled",
3931
3963
  "inheritedFrom": {
3932
- "name": "DisabledMixin",
3933
- "module": "utils/mixins/DisabledMixin.js"
3964
+ "name": "Buttonsimple",
3965
+ "module": "src/components/buttonsimple/buttonsimple.component.ts"
3934
3966
  }
3935
- }
3936
- ],
3937
- "events": [
3938
- {
3939
- "description": "(React: onClick) This event is dispatched when the button is clicked.",
3940
- "name": "click",
3941
- "reactName": "onClick"
3942
3967
  },
3943
- {
3944
- "description": "(React: onKeyDown) This event is dispatched when a key is pressed down on the button.",
3945
- "name": "keydown",
3946
- "reactName": "onKeyDown"
3947
- },
3948
- {
3949
- "description": "(React: onKeyUp) This event is dispatched when a key is released on the button.",
3950
- "name": "keyup",
3951
- "reactName": "onKeyUp"
3952
- },
3953
- {
3954
- "description": "(React: onFocus) This event is dispatched when the button receives focus.",
3955
- "name": "focus",
3956
- "reactName": "onFocus"
3957
- }
3958
- ],
3959
- "attributes": [
3960
3968
  {
3961
3969
  "name": "active",
3962
3970
  "type": {
@@ -3964,7 +3972,11 @@
3964
3972
  },
3965
3973
  "description": "The button's active state indicates whether it is currently toggled on (active) or off (inactive).\nWhen the active state is true, the button is considered to be in an active state, meaning it is toggled on.\nConversely, when the active state is false, the button is in an inactive state, indicating it is toggled off.\n\nThis attribute is used to set the provided `ariaStateKey` to true or false.",
3966
3974
  "default": "undefined",
3967
- "fieldName": "active"
3975
+ "fieldName": "active",
3976
+ "inheritedFrom": {
3977
+ "name": "Buttonsimple",
3978
+ "module": "src/components/buttonsimple/buttonsimple.component.ts"
3979
+ }
3968
3980
  },
3969
3981
  {
3970
3982
  "name": "soft-disabled",
@@ -3973,22 +3985,11 @@
3973
3985
  },
3974
3986
  "description": "Indicates whether the button is soft disabled.\nWhen set to `true`, the button appears visually disabled but still allows\nfocus, click, and keyboard actions to be passed through.\n\n**Important:** When using soft disabled, consumers must ensure that\nthe button behaves like a disabled button, allowing only focus and\npreventing any interactions (clicks or keyboard actions) from triggering unintended actions.",
3975
3987
  "default": "undefined",
3976
- "fieldName": "softDisabled"
3977
- },
3978
- {
3979
- "name": "size",
3980
- "type": {
3981
- "text": "ButtonSize"
3982
- },
3983
- "description": "Simplebutton size is a super set of all the sizes supported by children components.",
3984
- "default": "32",
3985
- "fieldName": "size"
3986
- },
3987
- {
3988
- "name": "role",
3989
- "description": "This property defines the ARIA role for the element. By default, it is set to 'button'.\nConsumers should override this role when:\n- The element is being used in a context where a different role is more appropriate.\n- Custom behaviors are implemented that require a specific ARIA role for accessibility purposes.",
3990
- "default": "button",
3991
- "fieldName": "role"
3988
+ "fieldName": "softDisabled",
3989
+ "inheritedFrom": {
3990
+ "name": "Buttonsimple",
3991
+ "module": "src/components/buttonsimple/buttonsimple.component.ts"
3992
+ }
3992
3993
  },
3993
3994
  {
3994
3995
  "name": "ariaStateKey",
@@ -3997,7 +3998,11 @@
3997
3998
  },
3998
3999
  "description": "This property defines the ARIA state key, which will be toggled when the\nButton is set to `active`.\nThe default value is 'aria-pressed', which is commonly used for toggle buttons.\n\nConsumers can override this property to use a different ARIA state key if needed.\nIn case multiple aria attributes should be toggled, they can be passed in as\na comma separated string.\nFor example: `aria-pressed,aria-expanded`",
3999
4000
  "default": "'aria-pressed' (when)",
4000
- "fieldName": "ariaStateKey"
4001
+ "fieldName": "ariaStateKey",
4002
+ "inheritedFrom": {
4003
+ "name": "Buttonsimple",
4004
+ "module": "src/components/buttonsimple/buttonsimple.component.ts"
4005
+ }
4001
4006
  },
4002
4007
  {
4003
4008
  "name": "type",
@@ -4006,69 +4011,64 @@
4006
4011
  },
4007
4012
  "description": "This property defines the type attribute for the button element.\nThe type attribute specifies the behavior of the button when it is clicked.\n- **submit**: The button submits the form data to the server.\n- **reset**: The button resets the form data to its initial state.\n- **button**: The button does nothing when clicked.",
4008
4013
  "default": "button",
4009
- "fieldName": "type"
4010
- },
4011
- {
4012
- "name": "autofocus",
4013
- "type": {
4014
- "text": "boolean"
4015
- },
4016
- "default": "false",
4017
- "description": "This property indicates whether the element should receive focus automatically when it is rendered.",
4018
- "fieldName": "autofocus",
4014
+ "fieldName": "type",
4019
4015
  "inheritedFrom": {
4020
- "name": "AutoFocusMixin",
4021
- "module": "src/utils/mixins/AutoFocusMixin.ts"
4016
+ "name": "Buttonsimple",
4017
+ "module": "src/components/buttonsimple/buttonsimple.component.ts"
4022
4018
  }
4023
- },
4019
+ }
4020
+ ],
4021
+ "mixins": [
4024
4022
  {
4025
- "name": "tabIndex",
4026
- "type": {
4027
- "text": "number"
4028
- },
4029
- "default": "0",
4030
- "description": "This property specifies the tab order of the element.",
4031
- "fieldName": "tabIndex",
4023
+ "name": "ButtonComponentMixin",
4024
+ "module": "/src/utils/mixins/ButtonComponentMixin"
4025
+ }
4026
+ ],
4027
+ "superclass": {
4028
+ "name": "Buttonsimple",
4029
+ "module": "/src/components/buttonsimple/buttonsimple.component"
4030
+ },
4031
+ "tagName": "mdc-button",
4032
+ "jsDoc": "/**\n * `mdc-button` is a component that can be configured in various ways to suit different use cases.\n *\n * Button Variants:\n * - **Primary**: Solid background color.\n * - **Secondary**: Transparent background with a solid border.\n * - **Tertiary**: No background or border, appears as plain text but retains all button functionalities.\n *\n * Button Colors:\n * - **Positive**: Green color.\n * - **Negative**: Red color.\n * - **Accent**: Blue color.\n * - **Promotional**: Purple color.\n * - **Default**: White color.\n *\n * Button Sizes (in REM units):\n * - **Pill button**: 40, 32, 28, 24.\n * - **Icon button**: 64, 52, 40, 32, 28, 24.\n * - **Tertiary icon button**: 20.\n *\n * Button Types:\n * - **Pill button**: A button that contains text value. Commonly used for call to action, tags, or filters.\n * - **Pill button with icons**: A button containing an icon either on the left or right side of the button.\n * - **Icon button**: A button represented by just an icon without any text.\n * The type of button is inferred based on the presence of slot and/or prefix and postfix icons.\n *\n * @dependency mdc-icon\n *\n * @tagname mdc-button\n *\n * @slot - Text label of the button.\n */",
4033
+ "customElement": true,
4034
+ "events": [
4035
+ {
4036
+ "description": "(React: onClick) This event is dispatched when the button is clicked.",
4037
+ "name": "click",
4038
+ "reactName": "onClick",
4032
4039
  "inheritedFrom": {
4033
- "name": "TabIndexMixin",
4034
- "module": "src/utils/mixins/TabIndexMixin.ts"
4040
+ "name": "Buttonsimple",
4041
+ "module": "src/components/buttonsimple/buttonsimple.component.ts"
4035
4042
  }
4036
4043
  },
4037
4044
  {
4038
- "name": "disabled",
4039
- "type": {
4040
- "text": "boolean | undefined"
4041
- },
4042
- "description": "Indicates whether the component is disabled.\nWhen the component is disabled for user interaction; it is not focusable or clickable.",
4043
- "default": "undefined",
4044
- "fieldName": "disabled",
4045
+ "description": "(React: onKeyDown) This event is dispatched when a key is pressed down on the button.",
4046
+ "name": "keydown",
4047
+ "reactName": "onKeyDown",
4045
4048
  "inheritedFrom": {
4046
- "name": "DisabledMixin",
4047
- "module": "src/utils/mixins/DisabledMixin.ts"
4049
+ "name": "Buttonsimple",
4050
+ "module": "src/components/buttonsimple/buttonsimple.component.ts"
4048
4051
  }
4049
- }
4050
- ],
4051
- "mixins": [
4052
- {
4053
- "name": "AutoFocusMixin",
4054
- "module": "/src/utils/mixins/AutoFocusMixin"
4055
4052
  },
4056
4053
  {
4057
- "name": "TabIndexMixin",
4058
- "module": "/src/utils/mixins/TabIndexMixin"
4054
+ "description": "(React: onKeyUp) This event is dispatched when a key is released on the button.",
4055
+ "name": "keyup",
4056
+ "reactName": "onKeyUp",
4057
+ "inheritedFrom": {
4058
+ "name": "Buttonsimple",
4059
+ "module": "src/components/buttonsimple/buttonsimple.component.ts"
4060
+ }
4059
4061
  },
4060
4062
  {
4061
- "name": "DisabledMixin",
4062
- "module": "/src/utils/mixins/DisabledMixin"
4063
+ "description": "(React: onFocus) This event is dispatched when the button receives focus.",
4064
+ "name": "focus",
4065
+ "reactName": "onFocus",
4066
+ "inheritedFrom": {
4067
+ "name": "Buttonsimple",
4068
+ "module": "src/components/buttonsimple/buttonsimple.component.ts"
4069
+ }
4063
4070
  }
4064
- ],
4065
- "superclass": {
4066
- "name": "Component",
4067
- "module": "/src/models"
4068
- },
4069
- "tagName": "mdc-buttonsimple",
4070
- "jsDoc": "/**\n * `mdc-buttonsimple` is a component that can be configured in various ways to suit different use cases.\n * It is used as an internal component and is not intended to be used directly by consumers.\n * Consumers should use the `mdc-button` component instead.\n *\n * @event click - (React: onClick) This event is dispatched when the button is clicked.\n * @event keydown - (React: onKeyDown) This event is dispatched when a key is pressed down on the button.\n * @event keyup - (React: onKeyUp) This event is dispatched when a key is released on the button.\n * @event focus - (React: onFocus) This event is dispatched when the button receives focus.\n *\n * @tagname mdc-buttonsimple\n */",
4071
- "customElement": true
4071
+ ]
4072
4072
  }
4073
4073
  ],
4074
4074
  "exports": [
@@ -4076,8 +4076,8 @@
4076
4076
  "kind": "js",
4077
4077
  "name": "default",
4078
4078
  "declaration": {
4079
- "name": "Buttonsimple",
4080
- "module": "components/buttonsimple/buttonsimple.component.js"
4079
+ "name": "Button",
4080
+ "module": "components/button/button.component.js"
4081
4081
  }
4082
4082
  }
4083
4083
  ]
@@ -8554,14 +8554,44 @@
8554
8554
  "module": "components/popover/popover.component.js"
8555
8555
  }
8556
8556
  },
8557
+ {
8558
+ "kind": "field",
8559
+ "name": "boundary",
8560
+ "type": {
8561
+ "text": "'clippingAncestors' | string"
8562
+ },
8563
+ "description": "This describes the clipping element(s) or area that overflow will be checked relative to.\nThe default is 'clippingAncestors', which are the overflow ancestors which will cause the\nelement to be clipped.\n\nPossible values:\n - 'clippingAncestors'\n - any css selector",
8564
+ "default": "'clippingAncestors'",
8565
+ "attribute": "boundary",
8566
+ "reflects": true,
8567
+ "inheritedFrom": {
8568
+ "name": "Popover",
8569
+ "module": "components/popover/popover.component.js"
8570
+ }
8571
+ },
8572
+ {
8573
+ "kind": "field",
8574
+ "name": "boundaryRoot",
8575
+ "type": {
8576
+ "text": "'viewport' | 'document'"
8577
+ },
8578
+ "description": "This describes the root boundary that the element will be checked for overflow relative to.\nThe default is 'viewport', which is the area of the page the user can see on the screen.\n\nThe other string option is 'document', which is the entire page outside the viewport.",
8579
+ "default": "'viewport'",
8580
+ "attribute": "boundary-root",
8581
+ "reflects": true,
8582
+ "inheritedFrom": {
8583
+ "name": "Popover",
8584
+ "module": "components/popover/popover.component.js"
8585
+ }
8586
+ },
8557
8587
  {
8558
8588
  "kind": "field",
8559
8589
  "name": "boundaryPadding",
8560
8590
  "type": {
8561
- "text": "number"
8591
+ "text": "undefined | number"
8562
8592
  },
8563
- "description": "Virtual padding around the boundary to check for overflow.",
8564
- "default": "16",
8593
+ "description": "Virtual padding around the boundary to check for overflow.\nSo the popover will not be placed on top of the edge of the boundary.\n\nDefault works well for most cases, but you can set this to customise it when necessary.",
8594
+ "default": "undefined",
8565
8595
  "attribute": "boundary-padding",
8566
8596
  "reflects": true,
8567
8597
  "inheritedFrom": {
@@ -9250,13 +9280,39 @@
9250
9280
  "module": "src/components/popover/popover.component.ts"
9251
9281
  }
9252
9282
  },
9283
+ {
9284
+ "name": "boundary",
9285
+ "type": {
9286
+ "text": "'clippingAncestors' | string"
9287
+ },
9288
+ "description": "This describes the clipping element(s) or area that overflow will be checked relative to.\nThe default is 'clippingAncestors', which are the overflow ancestors which will cause the\nelement to be clipped.\n\nPossible values:\n - 'clippingAncestors'\n - any css selector",
9289
+ "default": "'clippingAncestors'",
9290
+ "fieldName": "boundary",
9291
+ "inheritedFrom": {
9292
+ "name": "Popover",
9293
+ "module": "src/components/popover/popover.component.ts"
9294
+ }
9295
+ },
9296
+ {
9297
+ "name": "boundary-root",
9298
+ "type": {
9299
+ "text": "'viewport' | 'document'"
9300
+ },
9301
+ "description": "This describes the root boundary that the element will be checked for overflow relative to.\nThe default is 'viewport', which is the area of the page the user can see on the screen.\n\nThe other string option is 'document', which is the entire page outside the viewport.",
9302
+ "default": "'viewport'",
9303
+ "fieldName": "boundaryRoot",
9304
+ "inheritedFrom": {
9305
+ "name": "Popover",
9306
+ "module": "src/components/popover/popover.component.ts"
9307
+ }
9308
+ },
9253
9309
  {
9254
9310
  "name": "boundary-padding",
9255
9311
  "type": {
9256
- "text": "number"
9312
+ "text": "undefined | number"
9257
9313
  },
9258
- "description": "Virtual padding around the boundary to check for overflow.",
9259
- "default": "16",
9314
+ "description": "Virtual padding around the boundary to check for overflow.\nSo the popover will not be placed on top of the edge of the boundary.\n\nDefault works well for most cases, but you can set this to customise it when necessary.",
9315
+ "default": "undefined",
9260
9316
  "fieldName": "boundaryPadding",
9261
9317
  "inheritedFrom": {
9262
9318
  "name": "Popover",
@@ -15388,6 +15444,13 @@
15388
15444
  }
15389
15445
  ],
15390
15446
  "members": [
15447
+ {
15448
+ "kind": "field",
15449
+ "name": "menusections",
15450
+ "type": {
15451
+ "text": "Array<HTMLElement>"
15452
+ }
15453
+ },
15391
15454
  {
15392
15455
  "kind": "field",
15393
15456
  "name": "menuItems",
@@ -19244,14 +19307,44 @@
19244
19307
  "module": "components/popover/popover.component.js"
19245
19308
  }
19246
19309
  },
19310
+ {
19311
+ "kind": "field",
19312
+ "name": "boundary",
19313
+ "type": {
19314
+ "text": "'clippingAncestors' | string"
19315
+ },
19316
+ "description": "This describes the clipping element(s) or area that overflow will be checked relative to.\nThe default is 'clippingAncestors', which are the overflow ancestors which will cause the\nelement to be clipped.\n\nPossible values:\n - 'clippingAncestors'\n - any css selector",
19317
+ "default": "'clippingAncestors'",
19318
+ "attribute": "boundary",
19319
+ "reflects": true,
19320
+ "inheritedFrom": {
19321
+ "name": "Popover",
19322
+ "module": "components/popover/popover.component.js"
19323
+ }
19324
+ },
19325
+ {
19326
+ "kind": "field",
19327
+ "name": "boundaryRoot",
19328
+ "type": {
19329
+ "text": "'viewport' | 'document'"
19330
+ },
19331
+ "description": "This describes the root boundary that the element will be checked for overflow relative to.\nThe default is 'viewport', which is the area of the page the user can see on the screen.\n\nThe other string option is 'document', which is the entire page outside the viewport.",
19332
+ "default": "'viewport'",
19333
+ "attribute": "boundary-root",
19334
+ "reflects": true,
19335
+ "inheritedFrom": {
19336
+ "name": "Popover",
19337
+ "module": "components/popover/popover.component.js"
19338
+ }
19339
+ },
19247
19340
  {
19248
19341
  "kind": "field",
19249
19342
  "name": "boundaryPadding",
19250
19343
  "type": {
19251
- "text": "number"
19344
+ "text": "undefined | number"
19252
19345
  },
19253
- "description": "Virtual padding around the boundary to check for overflow.",
19254
- "default": "16",
19346
+ "description": "Virtual padding around the boundary to check for overflow.\nSo the popover will not be placed on top of the edge of the boundary.\n\nDefault works well for most cases, but you can set this to customise it when necessary.",
19347
+ "default": "undefined",
19255
19348
  "attribute": "boundary-padding",
19256
19349
  "reflects": true,
19257
19350
  "inheritedFrom": {
@@ -19904,13 +19997,39 @@
19904
19997
  "module": "src/components/popover/popover.component.ts"
19905
19998
  }
19906
19999
  },
20000
+ {
20001
+ "name": "boundary",
20002
+ "type": {
20003
+ "text": "'clippingAncestors' | string"
20004
+ },
20005
+ "description": "This describes the clipping element(s) or area that overflow will be checked relative to.\nThe default is 'clippingAncestors', which are the overflow ancestors which will cause the\nelement to be clipped.\n\nPossible values:\n - 'clippingAncestors'\n - any css selector",
20006
+ "default": "'clippingAncestors'",
20007
+ "fieldName": "boundary",
20008
+ "inheritedFrom": {
20009
+ "name": "Popover",
20010
+ "module": "src/components/popover/popover.component.ts"
20011
+ }
20012
+ },
20013
+ {
20014
+ "name": "boundary-root",
20015
+ "type": {
20016
+ "text": "'viewport' | 'document'"
20017
+ },
20018
+ "description": "This describes the root boundary that the element will be checked for overflow relative to.\nThe default is 'viewport', which is the area of the page the user can see on the screen.\n\nThe other string option is 'document', which is the entire page outside the viewport.",
20019
+ "default": "'viewport'",
20020
+ "fieldName": "boundaryRoot",
20021
+ "inheritedFrom": {
20022
+ "name": "Popover",
20023
+ "module": "src/components/popover/popover.component.ts"
20024
+ }
20025
+ },
19907
20026
  {
19908
20027
  "name": "boundary-padding",
19909
20028
  "type": {
19910
- "text": "number"
20029
+ "text": "undefined | number"
19911
20030
  },
19912
- "description": "Virtual padding around the boundary to check for overflow.",
19913
- "default": "16",
20031
+ "description": "Virtual padding around the boundary to check for overflow.\nSo the popover will not be placed on top of the edge of the boundary.\n\nDefault works well for most cases, but you can set this to customise it when necessary.",
20032
+ "default": "undefined",
19914
20033
  "fieldName": "boundaryPadding",
19915
20034
  "inheritedFrom": {
19916
20035
  "name": "Popover",
@@ -20363,6 +20482,14 @@
20363
20482
  "attribute": "show-divider",
20364
20483
  "reflects": true
20365
20484
  },
20485
+ {
20486
+ "kind": "field",
20487
+ "name": "dividerVariant",
20488
+ "description": "The variant of the divider.\nCan be set to 'solid' or 'gradient'.\n\nKeep 'solid' if used in MenuPopovers, as it is the default style.",
20489
+ "default": "'solid'",
20490
+ "attribute": "divider-variant",
20491
+ "reflects": true
20492
+ },
20366
20493
  {
20367
20494
  "kind": "method",
20368
20495
  "name": "renderHeader",
@@ -20411,6 +20538,12 @@
20411
20538
  "default": "false",
20412
20539
  "description": "Whether to show a divider below the section header.\nThis is useful for visually separating sections in the menu.",
20413
20540
  "fieldName": "showDivider"
20541
+ },
20542
+ {
20543
+ "name": "divider-variant",
20544
+ "description": "The variant of the divider.\nCan be set to 'solid' or 'gradient'.\n\nKeep 'solid' if used in MenuPopovers, as it is the default style.",
20545
+ "default": "'solid'",
20546
+ "fieldName": "dividerVariant"
20414
20547
  }
20415
20548
  ],
20416
20549
  "superclass": {
@@ -23971,14 +24104,36 @@
23971
24104
  "attribute": "offset",
23972
24105
  "reflects": true
23973
24106
  },
24107
+ {
24108
+ "kind": "field",
24109
+ "name": "boundary",
24110
+ "type": {
24111
+ "text": "'clippingAncestors' | string"
24112
+ },
24113
+ "description": "This describes the clipping element(s) or area that overflow will be checked relative to.\nThe default is 'clippingAncestors', which are the overflow ancestors which will cause the\nelement to be clipped.\n\nPossible values:\n - 'clippingAncestors'\n - any css selector",
24114
+ "default": "'clippingAncestors'",
24115
+ "attribute": "boundary",
24116
+ "reflects": true
24117
+ },
24118
+ {
24119
+ "kind": "field",
24120
+ "name": "boundaryRoot",
24121
+ "type": {
24122
+ "text": "'viewport' | 'document'"
24123
+ },
24124
+ "description": "This describes the root boundary that the element will be checked for overflow relative to.\nThe default is 'viewport', which is the area of the page the user can see on the screen.\n\nThe other string option is 'document', which is the entire page outside the viewport.",
24125
+ "default": "'viewport'",
24126
+ "attribute": "boundary-root",
24127
+ "reflects": true
24128
+ },
23974
24129
  {
23975
24130
  "kind": "field",
23976
24131
  "name": "boundaryPadding",
23977
24132
  "type": {
23978
- "text": "number"
24133
+ "text": "undefined | number"
23979
24134
  },
23980
- "description": "Virtual padding around the boundary to check for overflow.",
23981
- "default": "16",
24135
+ "description": "Virtual padding around the boundary to check for overflow.\nSo the popover will not be placed on top of the edge of the boundary.\n\nDefault works well for most cases, but you can set this to customise it when necessary.",
24136
+ "default": "undefined",
23982
24137
  "attribute": "boundary-padding",
23983
24138
  "reflects": true
23984
24139
  },
@@ -25002,13 +25157,31 @@
25002
25157
  "default": "4",
25003
25158
  "fieldName": "offset"
25004
25159
  },
25160
+ {
25161
+ "name": "boundary",
25162
+ "type": {
25163
+ "text": "'clippingAncestors' | string"
25164
+ },
25165
+ "description": "This describes the clipping element(s) or area that overflow will be checked relative to.\nThe default is 'clippingAncestors', which are the overflow ancestors which will cause the\nelement to be clipped.\n\nPossible values:\n - 'clippingAncestors'\n - any css selector",
25166
+ "default": "'clippingAncestors'",
25167
+ "fieldName": "boundary"
25168
+ },
25169
+ {
25170
+ "name": "boundary-root",
25171
+ "type": {
25172
+ "text": "'viewport' | 'document'"
25173
+ },
25174
+ "description": "This describes the root boundary that the element will be checked for overflow relative to.\nThe default is 'viewport', which is the area of the page the user can see on the screen.\n\nThe other string option is 'document', which is the entire page outside the viewport.",
25175
+ "default": "'viewport'",
25176
+ "fieldName": "boundaryRoot"
25177
+ },
25005
25178
  {
25006
25179
  "name": "boundary-padding",
25007
25180
  "type": {
25008
- "text": "number"
25181
+ "text": "undefined | number"
25009
25182
  },
25010
- "description": "Virtual padding around the boundary to check for overflow.",
25011
- "default": "16",
25183
+ "description": "Virtual padding around the boundary to check for overflow.\nSo the popover will not be placed on top of the edge of the boundary.\n\nDefault works well for most cases, but you can set this to customise it when necessary.",
25184
+ "default": "undefined",
25012
25185
  "fieldName": "boundaryPadding"
25013
25186
  },
25014
25187
  {
@@ -29159,7 +29332,7 @@
29159
29332
  "declarations": [
29160
29333
  {
29161
29334
  "kind": "class",
29162
- "description": "The mdc-select component is a dropdown selection control that allows users to pick an option from a predefined list.\nIt is designed to work with `mdc-option` for individual options and `mdc-optgroup` for grouping related options.\nThe component ensures accessibility and usability while handling various use cases,\nincluding long text truncation with tooltip support.\n\nTo set a default option, use the `selected` attribute on the `mdc-option` element.",
29335
+ "description": "The mdc-select component is a dropdown selection control that allows users to pick an option from a predefined list.\nIt is designed to work with `mdc-option` for individual options and `mdc-optgroup` for grouping related options.\nThe component ensures accessibility and usability while handling various use cases,\nincluding long text truncation with tooltip support.\n\nTo set a default option, use the `selected` attribute on the `mdc-option` element.\n\n**Note:** Make sure to add `mdc-selectlistbox` as a child of `mdc-select` and wrap options/optgroup in it to ensure proper accessibility functionality. Read more about it in SelectListBox documentation.",
29163
29336
  "name": "Select",
29164
29337
  "slots": [
29165
29338
  {
@@ -29198,30 +29371,36 @@
29198
29371
  "attribute": "height"
29199
29372
  },
29200
29373
  {
29201
- "kind": "method",
29202
- "name": "getAllValidOptions",
29203
- "privacy": "private",
29204
- "description": "A helper function which returns a flattened array of all valid options from the assigned slot.\nIt takes care of the edge cases where the option is either a direct child or a\nchild of an option group."
29374
+ "kind": "field",
29375
+ "name": "placement",
29376
+ "type": {
29377
+ "text": "Placement"
29378
+ },
29379
+ "description": "The placeholder text which will be shown on the text if provided.",
29380
+ "attribute": "placement",
29381
+ "reflects": true
29382
+ },
29383
+ {
29384
+ "kind": "field",
29385
+ "name": "softDisabled",
29386
+ "type": {
29387
+ "text": "boolean | undefined"
29388
+ },
29389
+ "description": "Indicates whether the select is soft disabled.\nWhen set to `true`, the select appears visually disabled but still allows\nfocus.",
29390
+ "default": "undefined",
29391
+ "attribute": "soft-disabled"
29205
29392
  },
29206
29393
  {
29207
29394
  "kind": "method",
29208
- "name": "handlePopoverOpen",
29395
+ "name": "modifyListBoxWrapper",
29209
29396
  "privacy": "private",
29210
- "return": {
29211
- "type": {
29212
- "text": "void"
29213
- }
29214
- }
29397
+ "description": "Modifies the listbox wrapper to ensure it has the correct attributes\nand IDs for accessibility.\n\nOnce [ariaOwnsElements](https://developer.mozilla.org/en-US/docs/Web/API/ElementInternals/ariaOwnsElements) is supported in browsers,\nthis an be removed and mdc-option can be used directly in the select component with a listbox in a different\nshadow root and aria-owns attribute to connect them."
29215
29398
  },
29216
29399
  {
29217
29400
  "kind": "method",
29218
- "name": "handlePopoverClose",
29401
+ "name": "getAllValidOptions",
29219
29402
  "privacy": "private",
29220
- "return": {
29221
- "type": {
29222
- "text": "void"
29223
- }
29224
- }
29403
+ "description": "A helper function which returns a flattened array of all valid options from within the slotted listbox.\nIt takes care of the edge cases where the option is either a direct child or a\nchild of an option group."
29225
29404
  },
29226
29405
  {
29227
29406
  "kind": "method",
@@ -29342,7 +29521,25 @@
29342
29521
  },
29343
29522
  {
29344
29523
  "kind": "method",
29345
- "name": "handlePopoverOnClose",
29524
+ "name": "handleClickCombobox",
29525
+ "privacy": "private",
29526
+ "return": {
29527
+ "type": {
29528
+ "text": "void"
29529
+ }
29530
+ },
29531
+ "parameters": [
29532
+ {
29533
+ "name": "event",
29534
+ "type": {
29535
+ "text": "MouseEvent"
29536
+ }
29537
+ }
29538
+ ]
29539
+ },
29540
+ {
29541
+ "kind": "method",
29542
+ "name": "handleKeydownCombobox",
29346
29543
  "privacy": "private",
29347
29544
  "return": {
29348
29545
  "type": {
@@ -29414,35 +29611,6 @@
29414
29611
  ],
29415
29612
  "description": "Calculates the new index based on the pressed navigation key.\nSupports ArrowUp, ArrowDown, PageUp, and PageDown keys for navigating options.\n- ArrowDown: Moves focus to the next option, if available.\n- ArrowUp: Moves focus to the previous option, if available.\n- PageDown: Moves focus 10 options down or to the last option.\n- PageUp: Moves focus 10 options up or to the first option."
29416
29613
  },
29417
- {
29418
- "kind": "method",
29419
- "name": "updateActivedescendant",
29420
- "privacy": "private",
29421
- "return": {
29422
- "type": {
29423
- "text": "void"
29424
- }
29425
- },
29426
- "parameters": [
29427
- {
29428
- "name": "target",
29429
- "optional": true,
29430
- "type": {
29431
- "text": "EventTarget | null"
29432
- }
29433
- }
29434
- ]
29435
- },
29436
- {
29437
- "kind": "method",
29438
- "name": "resetActivedescendant",
29439
- "privacy": "private",
29440
- "return": {
29441
- "type": {
29442
- "text": "void"
29443
- }
29444
- }
29445
- },
29446
29614
  {
29447
29615
  "kind": "method",
29448
29616
  "name": "setFocusAndTabIndex",
@@ -29483,36 +29651,13 @@
29483
29651
  },
29484
29652
  {
29485
29653
  "kind": "method",
29486
- "name": "getNativeSelect",
29487
- "privacy": "private",
29488
- "return": {
29489
- "type": {
29490
- "text": ""
29491
- }
29492
- },
29493
- "description": "Generates the native select element.\nThe native select element is not rendered directly and is not visible on the UI.\nIt's rendered only on the DOM for accessibility purposes.\nInstead, the overlay uses the native select element to generate the list of options."
29494
- },
29495
- {
29496
- "kind": "method",
29497
- "name": "getOptionsContentFromSlot",
29498
- "privacy": "private",
29499
- "return": {
29500
- "type": {
29501
- "text": ""
29502
- }
29503
- },
29504
- "description": "This method maps over all valid options and constructs their corresponding\nHTML `<option>` elements. The attributes such as `value`, `label`, `disabled`,\nand `selected` are extracted from the respective option elements.\nIf the attribute is not present, a default value or fallback is used.\nThe content of each `<option>` is set to the text content of the option element."
29505
- },
29506
- {
29507
- "kind": "method",
29508
- "name": "getPopoverContent",
29654
+ "name": "handleOnChange",
29509
29655
  "privacy": "private",
29510
29656
  "return": {
29511
29657
  "type": {
29512
- "text": "TemplateResult | typeof nothing"
29658
+ "text": "void"
29513
29659
  }
29514
- },
29515
- "description": "Generates the content for the popover associated with the select component.\nIf the component is disabled or readonly, returns `nothing`.\nOtherwise, returns a `TemplateResult` that renders a popover with various configurations\nsuch as visibility, interaction, and event handlers.\nThe popover acts as a dropdown list with options, allowing user interaction."
29660
+ }
29516
29661
  },
29517
29662
  {
29518
29663
  "kind": "field",
@@ -29894,6 +30039,23 @@
29894
30039
  "description": "height attribute of the select field. If set,\nthen a scroll bar will be visible when there more options than the adjusted height.",
29895
30040
  "fieldName": "height"
29896
30041
  },
30042
+ {
30043
+ "name": "placement",
30044
+ "type": {
30045
+ "text": "Placement"
30046
+ },
30047
+ "description": "The placeholder text which will be shown on the text if provided.",
30048
+ "fieldName": "placement"
30049
+ },
30050
+ {
30051
+ "name": "soft-disabled",
30052
+ "type": {
30053
+ "text": "boolean | undefined"
30054
+ },
30055
+ "description": "Indicates whether the select is soft disabled.\nWhen set to `true`, the select appears visually disabled but still allows\nfocus.",
30056
+ "default": "undefined",
30057
+ "fieldName": "softDisabled"
30058
+ },
29897
30059
  {
29898
30060
  "name": "name",
29899
30061
  "type": {
@@ -30073,7 +30235,7 @@
30073
30235
  "module": "/src/components/formfieldwrapper/formfieldwrapper.component"
30074
30236
  },
30075
30237
  "tagName": "mdc-select",
30076
- "jsDoc": "/**\n * The mdc-select component is a dropdown selection control that allows users to pick an option from a predefined list.\n * It is designed to work with `mdc-option` for individual options and `mdc-optgroup` for grouping related options.\n * The component ensures accessibility and usability while handling various use cases,\n * including long text truncation with tooltip support.\n *\n * To set a default option, use the `selected` attribute on the `mdc-option` element.\n *\n * @dependency mdc-button\n * @dependency mdc-icon\n * @dependency mdc-popover\n * @dependency mdc-text\n * @dependency mdc-toggletip\n *\n * @tagname mdc-select\n *\n * @slot default - This is a default/unnamed slot for options and/or option group.\n *\n * @event click - (React: onClick) This event is dispatched when the select is clicked.\n * @event change - (React: onChange) This event is dispatched when the select is changed.\n * @event input - (React: onInput) This event is dispatched when the select is changed.\n * @event keydown - (React: onKeyDown) This event is dispatched when a key is pressed down on the select.\n * @event focus - (React: onFocus) This event is dispatched when the select receives focus.\n */",
30238
+ "jsDoc": "/**\n * The mdc-select component is a dropdown selection control that allows users to pick an option from a predefined list.\n * It is designed to work with `mdc-option` for individual options and `mdc-optgroup` for grouping related options.\n * The component ensures accessibility and usability while handling various use cases,\n * including long text truncation with tooltip support.\n *\n * To set a default option, use the `selected` attribute on the `mdc-option` element.\n *\n * **Note:** Make sure to add `mdc-selectlistbox` as a child of `mdc-select` and wrap options/optgroup in it to ensure proper accessibility functionality. Read more about it in SelectListBox documentation.\n *\n * @dependency mdc-button\n * @dependency mdc-icon\n * @dependency mdc-popover\n * @dependency mdc-text\n * @dependency mdc-toggletip\n *\n * @tagname mdc-select\n *\n * @slot default - This is a default/unnamed slot for options and/or option group.\n *\n * @event click - (React: onClick) This event is dispatched when the select is clicked.\n * @event change - (React: onChange) This event is dispatched when the select is changed.\n * @event input - (React: onInput) This event is dispatched when the select is changed.\n * @event keydown - (React: onKeyDown) This event is dispatched when a key is pressed down on the select.\n * @event focus - (React: onFocus) This event is dispatched when the select receives focus.\n */",
30077
30239
  "customElement": true
30078
30240
  }
30079
30241
  ],
@@ -30088,6 +30250,46 @@
30088
30250
  }
30089
30251
  ]
30090
30252
  },
30253
+ {
30254
+ "kind": "javascript-module",
30255
+ "path": "components/selectlistbox/selectlistbox.component.js",
30256
+ "declarations": [
30257
+ {
30258
+ "kind": "class",
30259
+ "description": "Selectlistbox component as Light DOM component to act as a simple wrapper\nfor mdc-option components to ensure accessibility and proper role assignment.\n\nOnce [ariaOwnsElements](https://developer.mozilla.org/en-US/docs/Web/API/ElementInternals/ariaOwnsElements) is supported in browsers, this component can be removed\nand mdc-option can be used directly in the select component with a listbox in a different\nshadow root and aria-owns attribute to connect them.",
30260
+ "name": "Selectlistbox",
30261
+ "slots": [
30262
+ {
30263
+ "description": "This is a default/unnamed slot, which can be used to insert mdc-option components.",
30264
+ "name": "default"
30265
+ }
30266
+ ],
30267
+ "members": [
30268
+ {
30269
+ "kind": "field",
30270
+ "name": "role"
30271
+ }
30272
+ ],
30273
+ "superclass": {
30274
+ "name": "Component",
30275
+ "module": "/src/models"
30276
+ },
30277
+ "tagName": "mdc-selectlistbox",
30278
+ "jsDoc": "/**\n * Selectlistbox component as Light DOM component to act as a simple wrapper\n * for mdc-option components to ensure accessibility and proper role assignment.\n *\n * Once [ariaOwnsElements](https://developer.mozilla.org/en-US/docs/Web/API/ElementInternals/ariaOwnsElements) is supported in browsers, this component can be removed\n * and mdc-option can be used directly in the select component with a listbox in a different\n * shadow root and aria-owns attribute to connect them.\n *\n * @tagname mdc-selectlistbox\n *\n * @slot default - This is a default/unnamed slot, which can be used to insert mdc-option components.\n */",
30279
+ "customElement": true
30280
+ }
30281
+ ],
30282
+ "exports": [
30283
+ {
30284
+ "kind": "js",
30285
+ "name": "default",
30286
+ "declaration": {
30287
+ "name": "Selectlistbox",
30288
+ "module": "components/selectlistbox/selectlistbox.component.js"
30289
+ }
30290
+ }
30291
+ ]
30292
+ },
30091
30293
  {
30092
30294
  "kind": "javascript-module",
30093
30295
  "path": "components/sidenavigation/sidenavigation.component.js",
@@ -34505,14 +34707,44 @@
34505
34707
  "module": "components/popover/popover.component.js"
34506
34708
  }
34507
34709
  },
34710
+ {
34711
+ "kind": "field",
34712
+ "name": "boundary",
34713
+ "type": {
34714
+ "text": "'clippingAncestors' | string"
34715
+ },
34716
+ "description": "This describes the clipping element(s) or area that overflow will be checked relative to.\nThe default is 'clippingAncestors', which are the overflow ancestors which will cause the\nelement to be clipped.\n\nPossible values:\n - 'clippingAncestors'\n - any css selector",
34717
+ "default": "'clippingAncestors'",
34718
+ "attribute": "boundary",
34719
+ "reflects": true,
34720
+ "inheritedFrom": {
34721
+ "name": "Popover",
34722
+ "module": "components/popover/popover.component.js"
34723
+ }
34724
+ },
34725
+ {
34726
+ "kind": "field",
34727
+ "name": "boundaryRoot",
34728
+ "type": {
34729
+ "text": "'viewport' | 'document'"
34730
+ },
34731
+ "description": "This describes the root boundary that the element will be checked for overflow relative to.\nThe default is 'viewport', which is the area of the page the user can see on the screen.\n\nThe other string option is 'document', which is the entire page outside the viewport.",
34732
+ "default": "'viewport'",
34733
+ "attribute": "boundary-root",
34734
+ "reflects": true,
34735
+ "inheritedFrom": {
34736
+ "name": "Popover",
34737
+ "module": "components/popover/popover.component.js"
34738
+ }
34739
+ },
34508
34740
  {
34509
34741
  "kind": "field",
34510
34742
  "name": "boundaryPadding",
34511
34743
  "type": {
34512
- "text": "number"
34744
+ "text": "undefined | number"
34513
34745
  },
34514
- "description": "Virtual padding around the boundary to check for overflow.",
34515
- "default": "16",
34746
+ "description": "Virtual padding around the boundary to check for overflow.\nSo the popover will not be placed on top of the edge of the boundary.\n\nDefault works well for most cases, but you can set this to customise it when necessary.",
34747
+ "default": "undefined",
34516
34748
  "attribute": "boundary-padding",
34517
34749
  "reflects": true,
34518
34750
  "inheritedFrom": {
@@ -35215,13 +35447,39 @@
35215
35447
  "module": "src/components/popover/popover.component.ts"
35216
35448
  }
35217
35449
  },
35450
+ {
35451
+ "name": "boundary",
35452
+ "type": {
35453
+ "text": "'clippingAncestors' | string"
35454
+ },
35455
+ "description": "This describes the clipping element(s) or area that overflow will be checked relative to.\nThe default is 'clippingAncestors', which are the overflow ancestors which will cause the\nelement to be clipped.\n\nPossible values:\n - 'clippingAncestors'\n - any css selector",
35456
+ "default": "'clippingAncestors'",
35457
+ "fieldName": "boundary",
35458
+ "inheritedFrom": {
35459
+ "name": "Popover",
35460
+ "module": "src/components/popover/popover.component.ts"
35461
+ }
35462
+ },
35463
+ {
35464
+ "name": "boundary-root",
35465
+ "type": {
35466
+ "text": "'viewport' | 'document'"
35467
+ },
35468
+ "description": "This describes the root boundary that the element will be checked for overflow relative to.\nThe default is 'viewport', which is the area of the page the user can see on the screen.\n\nThe other string option is 'document', which is the entire page outside the viewport.",
35469
+ "default": "'viewport'",
35470
+ "fieldName": "boundaryRoot",
35471
+ "inheritedFrom": {
35472
+ "name": "Popover",
35473
+ "module": "src/components/popover/popover.component.ts"
35474
+ }
35475
+ },
35218
35476
  {
35219
35477
  "name": "boundary-padding",
35220
35478
  "type": {
35221
- "text": "number"
35479
+ "text": "undefined | number"
35222
35480
  },
35223
- "description": "Virtual padding around the boundary to check for overflow.",
35224
- "default": "16",
35481
+ "description": "Virtual padding around the boundary to check for overflow.\nSo the popover will not be placed on top of the edge of the boundary.\n\nDefault works well for most cases, but you can set this to customise it when necessary.",
35482
+ "default": "undefined",
35225
35483
  "fieldName": "boundaryPadding",
35226
35484
  "inheritedFrom": {
35227
35485
  "name": "Popover",
@@ -36384,14 +36642,44 @@
36384
36642
  "module": "components/popover/popover.component.js"
36385
36643
  }
36386
36644
  },
36645
+ {
36646
+ "kind": "field",
36647
+ "name": "boundary",
36648
+ "type": {
36649
+ "text": "'clippingAncestors' | string"
36650
+ },
36651
+ "description": "This describes the clipping element(s) or area that overflow will be checked relative to.\nThe default is 'clippingAncestors', which are the overflow ancestors which will cause the\nelement to be clipped.\n\nPossible values:\n - 'clippingAncestors'\n - any css selector",
36652
+ "default": "'clippingAncestors'",
36653
+ "attribute": "boundary",
36654
+ "reflects": true,
36655
+ "inheritedFrom": {
36656
+ "name": "Popover",
36657
+ "module": "components/popover/popover.component.js"
36658
+ }
36659
+ },
36660
+ {
36661
+ "kind": "field",
36662
+ "name": "boundaryRoot",
36663
+ "type": {
36664
+ "text": "'viewport' | 'document'"
36665
+ },
36666
+ "description": "This describes the root boundary that the element will be checked for overflow relative to.\nThe default is 'viewport', which is the area of the page the user can see on the screen.\n\nThe other string option is 'document', which is the entire page outside the viewport.",
36667
+ "default": "'viewport'",
36668
+ "attribute": "boundary-root",
36669
+ "reflects": true,
36670
+ "inheritedFrom": {
36671
+ "name": "Popover",
36672
+ "module": "components/popover/popover.component.js"
36673
+ }
36674
+ },
36387
36675
  {
36388
36676
  "kind": "field",
36389
36677
  "name": "boundaryPadding",
36390
36678
  "type": {
36391
- "text": "number"
36679
+ "text": "undefined | number"
36392
36680
  },
36393
- "description": "Virtual padding around the boundary to check for overflow.",
36394
- "default": "16",
36681
+ "description": "Virtual padding around the boundary to check for overflow.\nSo the popover will not be placed on top of the edge of the boundary.\n\nDefault works well for most cases, but you can set this to customise it when necessary.",
36682
+ "default": "undefined",
36395
36683
  "attribute": "boundary-padding",
36396
36684
  "reflects": true,
36397
36685
  "inheritedFrom": {
@@ -37095,13 +37383,39 @@
37095
37383
  "module": "src/components/popover/popover.component.ts"
37096
37384
  }
37097
37385
  },
37386
+ {
37387
+ "name": "boundary",
37388
+ "type": {
37389
+ "text": "'clippingAncestors' | string"
37390
+ },
37391
+ "description": "This describes the clipping element(s) or area that overflow will be checked relative to.\nThe default is 'clippingAncestors', which are the overflow ancestors which will cause the\nelement to be clipped.\n\nPossible values:\n - 'clippingAncestors'\n - any css selector",
37392
+ "default": "'clippingAncestors'",
37393
+ "fieldName": "boundary",
37394
+ "inheritedFrom": {
37395
+ "name": "Popover",
37396
+ "module": "src/components/popover/popover.component.ts"
37397
+ }
37398
+ },
37399
+ {
37400
+ "name": "boundary-root",
37401
+ "type": {
37402
+ "text": "'viewport' | 'document'"
37403
+ },
37404
+ "description": "This describes the root boundary that the element will be checked for overflow relative to.\nThe default is 'viewport', which is the area of the page the user can see on the screen.\n\nThe other string option is 'document', which is the entire page outside the viewport.",
37405
+ "default": "'viewport'",
37406
+ "fieldName": "boundaryRoot",
37407
+ "inheritedFrom": {
37408
+ "name": "Popover",
37409
+ "module": "src/components/popover/popover.component.ts"
37410
+ }
37411
+ },
37098
37412
  {
37099
37413
  "name": "boundary-padding",
37100
37414
  "type": {
37101
- "text": "number"
37415
+ "text": "undefined | number"
37102
37416
  },
37103
- "description": "Virtual padding around the boundary to check for overflow.",
37104
- "default": "16",
37417
+ "description": "Virtual padding around the boundary to check for overflow.\nSo the popover will not be placed on top of the edge of the boundary.\n\nDefault works well for most cases, but you can set this to customise it when necessary.",
37418
+ "default": "undefined",
37105
37419
  "fieldName": "boundaryPadding",
37106
37420
  "inheritedFrom": {
37107
37421
  "name": "Popover",