@sbb-esta/lyne-elements-dev 4.6.0-dev.1772463840 → 4.6.0-dev.1772464299

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.
@@ -87435,12 +87435,12 @@
87435
87435
  },
87436
87436
  {
87437
87437
  "kind": "javascript-module",
87438
- "path": "menu/menu-link/menu-link.component.js",
87438
+ "path": "menu/menu-button/menu-button.component.js",
87439
87439
  "declarations": [
87440
87440
  {
87441
87441
  "kind": "class",
87442
- "description": "It displays a link element that can be used in the `sbb-menu` component.",
87443
- "name": "SbbMenuLinkElement",
87442
+ "description": "It displays a button element that can be used in the `sbb-menu` component.",
87443
+ "name": "SbbMenuButtonElement",
87444
87444
  "cssProperties": [
87445
87445
  {
87446
87446
  "description": "Can be used to modify horizontal padding.",
@@ -87450,7 +87450,7 @@
87450
87450
  ],
87451
87451
  "slots": [
87452
87452
  {
87453
- "description": "Use the unnamed slot to add content to the `sbb-menu-link`.",
87453
+ "description": "Use the unnamed slot to add content to the `sbb-menu-button`.",
87454
87454
  "name": ""
87455
87455
  },
87456
87456
  {
@@ -87461,16 +87461,17 @@
87461
87461
  "members": [
87462
87462
  {
87463
87463
  "kind": "field",
87464
- "name": "anchorRole",
87464
+ "name": "role",
87465
87465
  "type": {
87466
- "text": "string"
87466
+ "text": "ElementInternals['role']"
87467
87467
  },
87468
- "privacy": "protected",
87468
+ "privacy": "public",
87469
+ "static": true,
87469
87470
  "readonly": true,
87470
87471
  "default": "'menuitem'",
87471
87472
  "inheritedFrom": {
87472
- "name": "SbbLinkBaseElement",
87473
- "module": "core/base-elements/link-base-element.js"
87473
+ "name": "SbbButtonLikeBaseElement",
87474
+ "module": "core/base-elements/button-base-element.js"
87474
87475
  }
87475
87476
  },
87476
87477
  {
@@ -87489,6 +87490,50 @@
87489
87490
  "module": "core/mixins/disabled-mixin.js"
87490
87491
  }
87491
87492
  },
87493
+ {
87494
+ "kind": "field",
87495
+ "name": "disabled",
87496
+ "privacy": "public",
87497
+ "description": "Whether the component is disabled.",
87498
+ "default": "false",
87499
+ "type": {
87500
+ "text": "boolean"
87501
+ },
87502
+ "attribute": "disabled",
87503
+ "reflects": true,
87504
+ "inheritedFrom": {
87505
+ "name": "SbbDisabledMixin",
87506
+ "module": "core/mixins/disabled-mixin.js"
87507
+ }
87508
+ },
87509
+ {
87510
+ "kind": "field",
87511
+ "name": "#disabled",
87512
+ "privacy": "private",
87513
+ "type": {
87514
+ "text": "boolean"
87515
+ },
87516
+ "default": "false",
87517
+ "inheritedFrom": {
87518
+ "name": "SbbDisabledMixin",
87519
+ "module": "core/mixins/disabled-mixin.js"
87520
+ }
87521
+ },
87522
+ {
87523
+ "kind": "method",
87524
+ "name": "isDisabledExternally",
87525
+ "privacy": "protected",
87526
+ "return": {
87527
+ "type": {
87528
+ "text": "boolean"
87529
+ }
87530
+ },
87531
+ "description": "Will be used as 'or' check to the current disabled state.\nCan e.g. be used to read disabled state of a group.",
87532
+ "inheritedFrom": {
87533
+ "name": "SbbDisabledMixin",
87534
+ "module": "core/mixins/disabled-mixin.js"
87535
+ }
87536
+ },
87492
87537
  {
87493
87538
  "kind": "field",
87494
87539
  "name": "styles",
@@ -87586,187 +87631,243 @@
87586
87631
  },
87587
87632
  {
87588
87633
  "kind": "field",
87589
- "name": "disabled",
87634
+ "name": "_elementsOnWhichEnterPressTriggersSubmit",
87635
+ "type": {
87636
+ "text": "array"
87637
+ },
87638
+ "privacy": "private",
87639
+ "readonly": true,
87640
+ "default": "[ 'input', 'sbb-date-input', 'sbb-time-input', ]",
87641
+ "inheritedFrom": {
87642
+ "name": "SbbButtonBaseElement",
87643
+ "module": "core/base-elements/button-base-element.js"
87644
+ }
87645
+ },
87646
+ {
87647
+ "kind": "field",
87648
+ "name": "value",
87649
+ "type": {
87650
+ "text": "string"
87651
+ },
87590
87652
  "privacy": "public",
87591
- "description": "Whether the component is disabled.",
87592
- "default": "false",
87653
+ "inheritedFrom": {
87654
+ "name": "SbbButtonBaseElement",
87655
+ "module": "core/base-elements/button-base-element.js"
87656
+ },
87657
+ "default": "''",
87658
+ "description": "Value of the form element.",
87659
+ "attribute": "value"
87660
+ },
87661
+ {
87662
+ "kind": "field",
87663
+ "name": "type",
87664
+ "privacy": "public",
87665
+ "description": "The type attribute to use for the button.",
87666
+ "default": "'button'",
87593
87667
  "type": {
87594
- "text": "boolean"
87668
+ "text": "SbbButtonType"
87595
87669
  },
87596
- "attribute": "disabled",
87597
- "reflects": true,
87670
+ "attribute": "type",
87598
87671
  "inheritedFrom": {
87599
- "name": "SbbDisabledMixin",
87600
- "module": "core/mixins/disabled-mixin.js"
87672
+ "name": "SbbButtonBaseElement",
87673
+ "module": "core/base-elements/button-base-element.js"
87601
87674
  }
87602
87675
  },
87603
87676
  {
87604
87677
  "kind": "field",
87605
- "name": "#disabled",
87606
- "privacy": "private",
87678
+ "name": "form",
87607
87679
  "type": {
87608
- "text": "boolean"
87680
+ "text": "HTMLFormElement | null"
87609
87681
  },
87610
- "default": "false",
87682
+ "privacy": "public",
87683
+ "description": "The `<form>` element to associate the button with.",
87611
87684
  "inheritedFrom": {
87612
- "name": "SbbDisabledMixin",
87613
- "module": "core/mixins/disabled-mixin.js"
87685
+ "name": "SbbButtonBaseElement",
87686
+ "module": "core/base-elements/button-base-element.js"
87687
+ },
87688
+ "attribute": "form"
87689
+ },
87690
+ {
87691
+ "kind": "field",
87692
+ "name": "_formId",
87693
+ "type": {
87694
+ "text": "string"
87695
+ },
87696
+ "privacy": "private",
87697
+ "default": "''",
87698
+ "inheritedFrom": {
87699
+ "name": "SbbButtonBaseElement",
87700
+ "module": "core/base-elements/button-base-element.js"
87701
+ }
87702
+ },
87703
+ {
87704
+ "kind": "field",
87705
+ "name": "_handleButtonClick",
87706
+ "privacy": "private",
87707
+ "inheritedFrom": {
87708
+ "name": "SbbButtonBaseElement",
87709
+ "module": "core/base-elements/button-base-element.js"
87614
87710
  }
87615
87711
  },
87616
87712
  {
87617
87713
  "kind": "method",
87618
- "name": "isDisabledExternally",
87619
- "privacy": "protected",
87714
+ "name": "_requestSubmit",
87715
+ "privacy": "private",
87620
87716
  "return": {
87621
87717
  "type": {
87622
- "text": "boolean"
87718
+ "text": "void"
87623
87719
  }
87624
87720
  },
87625
- "description": "Will be used as 'or' check to the current disabled state.\nCan e.g. be used to read disabled state of a group.",
87721
+ "parameters": [
87722
+ {
87723
+ "name": "form",
87724
+ "type": {
87725
+ "text": "HTMLFormElement"
87726
+ }
87727
+ }
87728
+ ],
87626
87729
  "inheritedFrom": {
87627
- "name": "SbbDisabledMixin",
87628
- "module": "core/mixins/disabled-mixin.js"
87730
+ "name": "SbbButtonBaseElement",
87731
+ "module": "core/base-elements/button-base-element.js"
87629
87732
  }
87630
87733
  },
87631
87734
  {
87632
87735
  "kind": "field",
87633
- "name": "href",
87634
- "type": {
87635
- "text": "string"
87636
- },
87637
- "privacy": "public",
87638
- "default": "''",
87639
- "description": "The href value you want to link to.",
87640
- "attribute": "href",
87641
- "reflects": true,
87736
+ "name": "_formKeyDown",
87737
+ "privacy": "private",
87642
87738
  "inheritedFrom": {
87643
- "name": "SbbLinkBaseElement",
87644
- "module": "core/base-elements/link-base-element.js"
87739
+ "name": "SbbButtonBaseElement",
87740
+ "module": "core/base-elements/button-base-element.js"
87645
87741
  }
87646
87742
  },
87647
87743
  {
87648
87744
  "kind": "field",
87649
- "name": "target",
87745
+ "name": "formAssociated",
87650
87746
  "type": {
87651
- "text": "LinkTargetType | string"
87747
+ "text": "boolean"
87652
87748
  },
87653
87749
  "privacy": "public",
87654
- "default": "''",
87655
- "description": "Where to display the linked URL.",
87656
- "attribute": "target",
87657
- "reflects": true,
87750
+ "static": true,
87751
+ "default": "true",
87658
87752
  "inheritedFrom": {
87659
- "name": "SbbLinkBaseElement",
87660
- "module": "core/base-elements/link-base-element.js"
87753
+ "name": "SbbFormAssociatedMixin",
87754
+ "module": "core/mixins/form-associated-mixin.js"
87661
87755
  }
87662
87756
  },
87663
87757
  {
87664
87758
  "kind": "field",
87665
- "name": "rel",
87759
+ "name": "name",
87760
+ "privacy": "public",
87761
+ "description": "Name of the form element. Will be read from name attribute.",
87666
87762
  "type": {
87667
87763
  "text": "string"
87668
87764
  },
87669
- "privacy": "public",
87670
- "default": "''",
87671
- "description": "The relationship of the linked URL as space-separated link types.",
87672
- "attribute": "rel",
87673
- "reflects": true,
87765
+ "attribute": "name",
87674
87766
  "inheritedFrom": {
87675
- "name": "SbbLinkBaseElement",
87676
- "module": "core/base-elements/link-base-element.js"
87767
+ "name": "SbbFormAssociatedMixin",
87768
+ "module": "core/mixins/form-associated-mixin.js"
87677
87769
  }
87678
87770
  },
87679
87771
  {
87680
87772
  "kind": "field",
87681
- "name": "download",
87773
+ "name": "validity",
87682
87774
  "type": {
87683
- "text": "boolean"
87775
+ "text": "ValidityState"
87684
87776
  },
87685
87777
  "privacy": "public",
87686
- "default": "false",
87687
- "description": "Whether the browser will show the download dialog on click.",
87688
- "attribute": "download",
87689
- "reflects": true,
87778
+ "description": "Returns the ValidityState object for this element.",
87779
+ "readonly": true,
87690
87780
  "inheritedFrom": {
87691
- "name": "SbbLinkBaseElement",
87692
- "module": "core/base-elements/link-base-element.js"
87781
+ "name": "SbbFormAssociatedMixin",
87782
+ "module": "core/mixins/form-associated-mixin.js"
87693
87783
  }
87694
87784
  },
87695
87785
  {
87696
87786
  "kind": "field",
87697
- "name": "accessibilityLabel",
87787
+ "name": "validationMessage",
87698
87788
  "type": {
87699
87789
  "text": "string"
87700
87790
  },
87701
87791
  "privacy": "public",
87702
- "default": "''",
87703
- "description": "This will be forwarded as aria-label to the inner anchor element.",
87704
- "attribute": "accessibility-label",
87792
+ "description": "Returns the current error message, if available, which corresponds\nto the current validation state.\nPlease note that only one message is returned at a time (e.g. if\nmultiple validity states are invalid, only the chronologically first one\nis returned until it is fixed, at which point the next message might be\nreturned, if it is still applicable). Also, a custom validity message\n(see below) has precedence over native validation messages.",
87793
+ "readonly": true,
87705
87794
  "inheritedFrom": {
87706
- "name": "SbbLinkBaseElement",
87707
- "module": "core/base-elements/link-base-element.js"
87795
+ "name": "SbbFormAssociatedMixin",
87796
+ "module": "core/mixins/form-associated-mixin.js"
87708
87797
  }
87709
87798
  },
87710
87799
  {
87711
87800
  "kind": "field",
87712
- "name": "accessibilityCurrent",
87801
+ "name": "willValidate",
87713
87802
  "type": {
87714
- "text": "string"
87803
+ "text": "boolean"
87715
87804
  },
87716
87805
  "privacy": "public",
87717
- "default": "''",
87718
- "description": "This will be forwarded as aria-current to the inner anchor element.",
87719
- "attribute": "accessibility-current",
87806
+ "description": "Returns true if this element will be validated\nwhen the form is submitted; false otherwise.",
87807
+ "readonly": true,
87720
87808
  "inheritedFrom": {
87721
- "name": "SbbLinkBaseElement",
87722
- "module": "core/base-elements/link-base-element.js"
87809
+ "name": "SbbFormAssociatedMixin",
87810
+ "module": "core/mixins/form-associated-mixin.js"
87723
87811
  }
87724
87812
  },
87725
87813
  {
87726
87814
  "kind": "field",
87727
- "name": "language",
87728
- "privacy": "protected",
87729
- "default": "new SbbLanguageController(this)",
87815
+ "name": "_validityStates",
87816
+ "privacy": "private",
87817
+ "default": "new Map< keyof ValidityStateFlags, { flagValue: unknown; message: string } >()",
87730
87818
  "inheritedFrom": {
87731
- "name": "SbbLinkBaseElement",
87732
- "module": "core/base-elements/link-base-element.js"
87819
+ "name": "SbbFormAssociatedMixin",
87820
+ "module": "core/mixins/form-associated-mixin.js"
87733
87821
  }
87734
87822
  },
87735
87823
  {
87736
87824
  "kind": "field",
87737
- "name": "_evaluateRelAttribute",
87738
- "privacy": "private",
87739
- "inheritedFrom": {
87740
- "name": "SbbLinkBaseElement",
87741
- "module": "core/base-elements/link-base-element.js"
87825
+ "name": "formDisabled",
87826
+ "type": {
87827
+ "text": "boolean"
87828
+ },
87829
+ "privacy": "protected",
87830
+ "default": "false",
87831
+ "description": "Whenever a surrounding form or fieldset is changing its disabled state.",
87832
+ "inheritedFrom": {
87833
+ "name": "SbbFormAssociatedMixin",
87834
+ "module": "core/mixins/form-associated-mixin.js"
87742
87835
  }
87743
87836
  },
87744
87837
  {
87745
87838
  "kind": "method",
87746
- "name": "renderLink",
87747
- "privacy": "protected",
87839
+ "name": "checkValidity",
87840
+ "privacy": "public",
87748
87841
  "return": {
87749
87842
  "type": {
87750
- "text": "TemplateResult"
87843
+ "text": "boolean"
87751
87844
  }
87752
87845
  },
87753
- "parameters": [
87754
- {
87755
- "name": "renderContent",
87756
- "type": {
87757
- "text": "TemplateResult"
87758
- }
87846
+ "description": "Returns true if this element has no validity problems; false otherwise.\nFires an invalid event at the element in the latter case.",
87847
+ "inheritedFrom": {
87848
+ "name": "SbbFormAssociatedMixin",
87849
+ "module": "core/mixins/form-associated-mixin.js"
87850
+ }
87851
+ },
87852
+ {
87853
+ "kind": "method",
87854
+ "name": "reportValidity",
87855
+ "privacy": "public",
87856
+ "return": {
87857
+ "type": {
87858
+ "text": "boolean"
87759
87859
  }
87760
- ],
87860
+ },
87861
+ "description": "Returns true if this element has no validity problems; otherwise,\nreturns false, fires an invalid event at the element,\nand (if the event isn't canceled) reports the problem to the user.",
87761
87862
  "inheritedFrom": {
87762
- "name": "SbbLinkBaseElement",
87763
- "module": "core/base-elements/link-base-element.js"
87863
+ "name": "SbbFormAssociatedMixin",
87864
+ "module": "core/mixins/form-associated-mixin.js"
87764
87865
  }
87765
87866
  },
87766
87867
  {
87767
87868
  "kind": "method",
87768
- "name": "toggleState",
87769
- "privacy": "protected",
87869
+ "name": "setCustomValidity",
87870
+ "privacy": "public",
87770
87871
  "return": {
87771
87872
  "type": {
87772
87873
  "text": "void"
@@ -87774,197 +87875,396 @@
87774
87875
  },
87775
87876
  "parameters": [
87776
87877
  {
87777
- "name": "value",
87878
+ "name": "message",
87778
87879
  "type": {
87779
87880
  "text": "string"
87780
87881
  }
87781
- },
87782
- {
87783
- "name": "force",
87784
- "optional": true,
87785
- "type": {
87786
- "text": "boolean"
87787
- }
87788
87882
  }
87789
87883
  ],
87884
+ "description": "Sets the custom validity message for this element. Use the empty string\nto indicate that the element does not have a custom validity error.",
87790
87885
  "inheritedFrom": {
87791
- "name": "SbbActionBaseElement",
87792
- "module": "core/base-elements/action-base-element.js"
87886
+ "name": "SbbFormAssociatedMixin",
87887
+ "module": "core/mixins/form-associated-mixin.js"
87793
87888
  }
87794
87889
  },
87795
87890
  {
87796
- "kind": "field",
87797
- "name": "maybeDisabled",
87798
- "type": {
87799
- "text": "boolean | undefined"
87891
+ "kind": "method",
87892
+ "name": "_hasDisabledAncestor",
87893
+ "privacy": "private",
87894
+ "return": {
87895
+ "type": {
87896
+ "text": "boolean"
87897
+ }
87800
87898
  },
87801
- "privacy": "protected",
87802
- "readonly": true,
87803
87899
  "inheritedFrom": {
87804
- "name": "SbbActionBaseElement",
87805
- "module": "core/base-elements/action-base-element.js"
87900
+ "name": "SbbFormAssociatedMixin",
87901
+ "module": "core/mixins/form-associated-mixin.js"
87806
87902
  }
87807
87903
  },
87808
87904
  {
87809
- "kind": "field",
87810
- "name": "maybeDisabledInteractive",
87811
- "type": {
87812
- "text": "boolean | undefined"
87813
- },
87905
+ "kind": "method",
87906
+ "name": "updateFormValue",
87814
87907
  "privacy": "protected",
87815
- "readonly": true,
87908
+ "return": {
87909
+ "type": {
87910
+ "text": "void"
87911
+ }
87912
+ },
87913
+ "description": "Should be called when form value is changed.\nAdapts and sets the formValue in the supported format (string | FormData | File | null)\nhttps://developer.mozilla.org/en-US/docs/Web/API/ElementInternals/setFormValue",
87816
87914
  "inheritedFrom": {
87817
- "name": "SbbActionBaseElement",
87818
- "module": "core/base-elements/action-base-element.js"
87915
+ "name": "SbbFormAssociatedMixin",
87916
+ "module": "core/mixins/form-associated-mixin.js"
87819
87917
  }
87820
87918
  },
87821
87919
  {
87822
87920
  "kind": "method",
87823
- "name": "setupBaseEventHandlers",
87921
+ "name": "formState",
87824
87922
  "privacy": "protected",
87825
87923
  "return": {
87826
87924
  "type": {
87827
- "text": "void"
87925
+ "text": "FormRestoreState"
87828
87926
  }
87829
87927
  },
87830
87928
  "inheritedFrom": {
87831
- "name": "SbbActionBaseElement",
87832
- "module": "core/base-elements/action-base-element.js"
87929
+ "name": "SbbFormAssociatedMixin",
87930
+ "module": "core/mixins/form-associated-mixin.js"
87833
87931
  }
87834
- }
87835
- ],
87836
- "mixins": [
87837
- {
87838
- "name": "SbbDisabledInteractiveMixin",
87839
- "module": "core/mixins.js"
87840
87932
  },
87841
87933
  {
87842
- "name": "SbbMenuActionCommonElementMixin",
87843
- "module": "menu/common.js"
87844
- }
87845
- ],
87846
- "superclass": {
87847
- "name": "SbbLinkBaseElement",
87848
- "module": "core/base-elements.js"
87849
- },
87850
- "tagName": "sbb-menu-link",
87851
- "customElement": true,
87852
- "attributes": [
87853
- {
87854
- "name": "disabled-interactive",
87855
- "type": {
87856
- "text": "boolean"
87934
+ "kind": "method",
87935
+ "name": "setValidityFlag",
87936
+ "privacy": "protected",
87937
+ "return": {
87938
+ "type": {
87939
+ "text": "void"
87940
+ }
87857
87941
  },
87858
- "default": "false",
87859
- "description": "Whether the button should be aria-disabled but stay interactive.",
87860
- "fieldName": "disabledInteractive",
87942
+ "parameters": [
87943
+ {
87944
+ "name": "flag",
87945
+ "type": {
87946
+ "text": "T"
87947
+ }
87948
+ },
87949
+ {
87950
+ "name": "message",
87951
+ "type": {
87952
+ "text": "string"
87953
+ }
87954
+ },
87955
+ {
87956
+ "name": "flagValue",
87957
+ "optional": true,
87958
+ "type": {
87959
+ "text": "ValidityStateFlags[T]"
87960
+ }
87961
+ }
87962
+ ],
87963
+ "description": "Marks this element as suffering from the constraint indicated by the\nflag argument and associates the given message to it.\nNote that only one message is displayed at a time and custom messages by\nconsumers are always displayed before internal messages and internal\nmessages are displayed in the order they were added.\nTo set/define custom validity state flags, you need to extend the\nValidityState prototype (and the CustomValidityState interface).",
87861
87964
  "inheritedFrom": {
87862
- "name": "SbbDisabledInteractiveMixin",
87863
- "module": "core/mixins/disabled-mixin.js"
87965
+ "name": "SbbFormAssociatedMixin",
87966
+ "module": "core/mixins/form-associated-mixin.js"
87864
87967
  }
87865
87968
  },
87866
87969
  {
87867
- "name": "icon-name",
87868
- "type": {
87869
- "text": "string"
87970
+ "kind": "method",
87971
+ "name": "removeValidityFlag",
87972
+ "privacy": "protected",
87973
+ "return": {
87974
+ "type": {
87975
+ "text": "void"
87976
+ }
87870
87977
  },
87871
- "default": "''",
87872
- "description": "The icon name we want to use, choose from the small icon variants\nfrom the ui-icons category from here\nhttps://icons.app.sbb.ch.",
87873
- "fieldName": "iconName",
87978
+ "parameters": [
87979
+ {
87980
+ "name": "flag",
87981
+ "type": {
87982
+ "text": "T"
87983
+ }
87984
+ }
87985
+ ],
87986
+ "description": "Removes the validity state flag entry and updates validity state.",
87874
87987
  "inheritedFrom": {
87875
- "name": "SbbIconNameMixin",
87876
- "module": "icon/icon-name-mixin.js"
87988
+ "name": "SbbFormAssociatedMixin",
87989
+ "module": "core/mixins/form-associated-mixin.js"
87877
87990
  }
87878
87991
  },
87879
87992
  {
87880
- "name": "disabled",
87881
- "description": "Whether the component is disabled.",
87882
- "default": "false",
87883
- "type": {
87884
- "text": "boolean"
87993
+ "kind": "method",
87994
+ "name": "validate",
87995
+ "privacy": "protected",
87996
+ "return": {
87997
+ "type": {
87998
+ "text": "void"
87999
+ }
87885
88000
  },
87886
- "fieldName": "disabled",
88001
+ "description": "To be called whenever the current element needs to be validated.",
87887
88002
  "inheritedFrom": {
87888
- "name": "SbbDisabledMixin",
87889
- "module": "core/mixins/disabled-mixin.js"
88003
+ "name": "SbbFormAssociatedMixin",
88004
+ "module": "core/mixins/form-associated-mixin.js"
87890
88005
  }
87891
88006
  },
87892
88007
  {
87893
- "name": "href",
87894
- "type": {
87895
- "text": "string"
88008
+ "kind": "method",
88009
+ "name": "shouldValidate",
88010
+ "privacy": "protected",
88011
+ "return": {
88012
+ "type": {
88013
+ "text": "boolean"
88014
+ }
87896
88015
  },
87897
- "default": "''",
87898
- "description": "The href value you want to link to.",
87899
- "fieldName": "href",
88016
+ "parameters": [
88017
+ {
88018
+ "name": "name",
88019
+ "type": {
88020
+ "text": "PropertyKey | undefined"
88021
+ }
88022
+ }
88023
+ ],
88024
+ "description": "Whether validation should be run on a property change with the given name.",
87900
88025
  "inheritedFrom": {
87901
- "name": "SbbLinkBaseElement",
87902
- "module": "core/base-elements/link-base-element.js"
88026
+ "name": "SbbFormAssociatedMixin",
88027
+ "module": "core/mixins/form-associated-mixin.js"
87903
88028
  }
87904
88029
  },
87905
88030
  {
87906
- "name": "target",
87907
- "type": {
87908
- "text": "LinkTargetType | string"
88031
+ "kind": "method",
88032
+ "name": "_setInternalValidity",
88033
+ "privacy": "private",
88034
+ "return": {
88035
+ "type": {
88036
+ "text": "void"
88037
+ }
87909
88038
  },
87910
- "default": "''",
87911
- "description": "Where to display the linked URL.",
87912
- "fieldName": "target",
87913
88039
  "inheritedFrom": {
87914
- "name": "SbbLinkBaseElement",
87915
- "module": "core/base-elements/link-base-element.js"
88040
+ "name": "SbbFormAssociatedMixin",
88041
+ "module": "core/mixins/form-associated-mixin.js"
87916
88042
  }
87917
88043
  },
87918
88044
  {
87919
- "name": "rel",
87920
- "type": {
87921
- "text": "string"
87922
- },
87923
- "default": "''",
87924
- "description": "The relationship of the linked URL as space-separated link types.",
87925
- "fieldName": "rel",
87926
- "inheritedFrom": {
87927
- "name": "SbbLinkBaseElement",
87928
- "module": "core/base-elements/link-base-element.js"
88045
+ "kind": "field",
88046
+ "name": "_preventScrollOnSpaceKeydown",
88047
+ "privacy": "private",
88048
+ "description": "Prevents scrolling from pressing Space, when the event target is an action element.\nAlso sets active state.",
88049
+ "parameters": [
88050
+ {
88051
+ "description": "The origin event.",
88052
+ "name": "event"
88053
+ }
88054
+ ],
88055
+ "inheritedFrom": {
88056
+ "name": "SbbButtonLikeBaseElement",
88057
+ "module": "core/base-elements/button-base-element.js"
87929
88058
  }
87930
88059
  },
87931
88060
  {
87932
- "name": "download",
88061
+ "kind": "field",
88062
+ "name": "_removeActiveMarker",
88063
+ "privacy": "private",
88064
+ "inheritedFrom": {
88065
+ "name": "SbbButtonLikeBaseElement",
88066
+ "module": "core/base-elements/button-base-element.js"
88067
+ }
88068
+ },
88069
+ {
88070
+ "kind": "field",
88071
+ "name": "_dispatchClickEventOnSpaceKeyup",
88072
+ "privacy": "private",
88073
+ "description": "Dispatches a 'click' PointerEvent if the original keyboard event is a 'Space' press.\nAs verified with the native button, when 'Space' is pressed, a 'click' event is dispatched\nafter the 'keyup' event.",
88074
+ "parameters": [
88075
+ {
88076
+ "description": "The origin event.",
88077
+ "name": "event"
88078
+ }
88079
+ ],
88080
+ "inheritedFrom": {
88081
+ "name": "SbbButtonLikeBaseElement",
88082
+ "module": "core/base-elements/button-base-element.js"
88083
+ }
88084
+ },
88085
+ {
88086
+ "kind": "field",
88087
+ "name": "_dispatchClickEvent",
88088
+ "privacy": "private",
88089
+ "inheritedFrom": {
88090
+ "name": "SbbButtonLikeBaseElement",
88091
+ "module": "core/base-elements/button-base-element.js"
88092
+ }
88093
+ },
88094
+ {
88095
+ "kind": "method",
88096
+ "name": "toggleState",
88097
+ "privacy": "protected",
88098
+ "return": {
88099
+ "type": {
88100
+ "text": "void"
88101
+ }
88102
+ },
88103
+ "parameters": [
88104
+ {
88105
+ "name": "value",
88106
+ "type": {
88107
+ "text": "string"
88108
+ }
88109
+ },
88110
+ {
88111
+ "name": "force",
88112
+ "optional": true,
88113
+ "type": {
88114
+ "text": "boolean"
88115
+ }
88116
+ }
88117
+ ],
88118
+ "inheritedFrom": {
88119
+ "name": "SbbActionBaseElement",
88120
+ "module": "core/base-elements/action-base-element.js"
88121
+ }
88122
+ },
88123
+ {
88124
+ "kind": "field",
88125
+ "name": "maybeDisabled",
88126
+ "type": {
88127
+ "text": "boolean | undefined"
88128
+ },
88129
+ "privacy": "protected",
88130
+ "readonly": true,
88131
+ "inheritedFrom": {
88132
+ "name": "SbbActionBaseElement",
88133
+ "module": "core/base-elements/action-base-element.js"
88134
+ }
88135
+ },
88136
+ {
88137
+ "kind": "field",
88138
+ "name": "maybeDisabledInteractive",
88139
+ "type": {
88140
+ "text": "boolean | undefined"
88141
+ },
88142
+ "privacy": "protected",
88143
+ "readonly": true,
88144
+ "inheritedFrom": {
88145
+ "name": "SbbActionBaseElement",
88146
+ "module": "core/base-elements/action-base-element.js"
88147
+ }
88148
+ },
88149
+ {
88150
+ "kind": "method",
88151
+ "name": "setupBaseEventHandlers",
88152
+ "privacy": "protected",
88153
+ "return": {
88154
+ "type": {
88155
+ "text": "void"
88156
+ }
88157
+ },
88158
+ "inheritedFrom": {
88159
+ "name": "SbbActionBaseElement",
88160
+ "module": "core/base-elements/action-base-element.js"
88161
+ }
88162
+ }
88163
+ ],
88164
+ "mixins": [
88165
+ {
88166
+ "name": "SbbDisabledTabIndexActionMixin",
88167
+ "module": "core/mixins.js"
88168
+ },
88169
+ {
88170
+ "name": "SbbMenuActionCommonElementMixin",
88171
+ "module": "menu/common.js"
88172
+ }
88173
+ ],
88174
+ "superclass": {
88175
+ "name": "SbbButtonBaseElement",
88176
+ "module": "core/base-elements.js"
88177
+ },
88178
+ "tagName": "sbb-menu-button",
88179
+ "customElement": true,
88180
+ "attributes": [
88181
+ {
88182
+ "name": "disabled-interactive",
87933
88183
  "type": {
87934
88184
  "text": "boolean"
87935
88185
  },
87936
88186
  "default": "false",
87937
- "description": "Whether the browser will show the download dialog on click.",
87938
- "fieldName": "download",
88187
+ "description": "Whether the button should be aria-disabled but stay interactive.",
88188
+ "fieldName": "disabledInteractive",
87939
88189
  "inheritedFrom": {
87940
- "name": "SbbLinkBaseElement",
87941
- "module": "core/base-elements/link-base-element.js"
88190
+ "name": "SbbDisabledInteractiveMixin",
88191
+ "module": "core/mixins/disabled-mixin.js"
87942
88192
  }
87943
88193
  },
87944
88194
  {
87945
- "name": "accessibility-label",
88195
+ "name": "disabled",
88196
+ "description": "Whether the component is disabled.",
88197
+ "default": "false",
88198
+ "type": {
88199
+ "text": "boolean"
88200
+ },
88201
+ "fieldName": "disabled",
88202
+ "inheritedFrom": {
88203
+ "name": "SbbDisabledMixin",
88204
+ "module": "core/mixins/disabled-mixin.js"
88205
+ }
88206
+ },
88207
+ {
88208
+ "name": "icon-name",
87946
88209
  "type": {
87947
88210
  "text": "string"
87948
88211
  },
87949
88212
  "default": "''",
87950
- "description": "This will be forwarded as aria-label to the inner anchor element.",
87951
- "fieldName": "accessibilityLabel",
88213
+ "description": "The icon name we want to use, choose from the small icon variants\nfrom the ui-icons category from here\nhttps://icons.app.sbb.ch.",
88214
+ "fieldName": "iconName",
87952
88215
  "inheritedFrom": {
87953
- "name": "SbbLinkBaseElement",
87954
- "module": "core/base-elements/link-base-element.js"
88216
+ "name": "SbbIconNameMixin",
88217
+ "module": "icon/icon-name-mixin.js"
87955
88218
  }
87956
88219
  },
87957
88220
  {
87958
- "name": "accessibility-current",
88221
+ "name": "value",
87959
88222
  "type": {
87960
88223
  "text": "string"
87961
88224
  },
87962
88225
  "default": "''",
87963
- "description": "This will be forwarded as aria-current to the inner anchor element.",
87964
- "fieldName": "accessibilityCurrent",
88226
+ "description": "Value of the form element.",
88227
+ "fieldName": "value",
87965
88228
  "inheritedFrom": {
87966
- "name": "SbbLinkBaseElement",
87967
- "module": "core/base-elements/link-base-element.js"
88229
+ "name": "SbbButtonBaseElement",
88230
+ "module": "core/base-elements/button-base-element.js"
88231
+ }
88232
+ },
88233
+ {
88234
+ "name": "type",
88235
+ "description": "The type attribute to use for the button.",
88236
+ "default": "'button'",
88237
+ "type": {
88238
+ "text": "SbbButtonType"
88239
+ },
88240
+ "fieldName": "type",
88241
+ "inheritedFrom": {
88242
+ "name": "SbbButtonBaseElement",
88243
+ "module": "core/base-elements/button-base-element.js"
88244
+ }
88245
+ },
88246
+ {
88247
+ "name": "form",
88248
+ "description": "The `<form>` element to associate the button with.",
88249
+ "type": {
88250
+ "text": "HTMLFormElement | null"
88251
+ },
88252
+ "fieldName": "form",
88253
+ "inheritedFrom": {
88254
+ "name": "SbbButtonBaseElement",
88255
+ "module": "core/base-elements/button-base-element.js"
88256
+ }
88257
+ },
88258
+ {
88259
+ "name": "name",
88260
+ "description": "Name of the form element. Will be read from name attribute.",
88261
+ "type": {
88262
+ "text": "string"
88263
+ },
88264
+ "fieldName": "name",
88265
+ "inheritedFrom": {
88266
+ "name": "SbbFormAssociatedMixin",
88267
+ "module": "core/mixins/form-associated-mixin.js"
87968
88268
  }
87969
88269
  }
87970
88270
  ]
@@ -87973,30 +88273,30 @@
87973
88273
  "exports": [
87974
88274
  {
87975
88275
  "kind": "js",
87976
- "name": "SbbMenuLinkElement",
88276
+ "name": "SbbMenuButtonElement",
87977
88277
  "declaration": {
87978
- "name": "SbbMenuLinkElement",
87979
- "module": "menu/menu-link/menu-link.component.js"
88278
+ "name": "SbbMenuButtonElement",
88279
+ "module": "menu/menu-button/menu-button.component.js"
87980
88280
  }
87981
88281
  },
87982
88282
  {
87983
88283
  "kind": "custom-element-definition",
87984
- "name": "sbb-menu-link",
88284
+ "name": "sbb-menu-button",
87985
88285
  "declaration": {
87986
- "name": "SbbMenuLinkElement",
87987
- "module": "menu/menu-link/menu-link.component.js"
88286
+ "name": "SbbMenuButtonElement",
88287
+ "module": "menu/menu-button/menu-button.component.js"
87988
88288
  }
87989
88289
  }
87990
88290
  ]
87991
88291
  },
87992
88292
  {
87993
88293
  "kind": "javascript-module",
87994
- "path": "menu/menu-button/menu-button.component.js",
88294
+ "path": "menu/menu-link/menu-link.component.js",
87995
88295
  "declarations": [
87996
88296
  {
87997
88297
  "kind": "class",
87998
- "description": "It displays a button element that can be used in the `sbb-menu` component.",
87999
- "name": "SbbMenuButtonElement",
88298
+ "description": "It displays a link element that can be used in the `sbb-menu` component.",
88299
+ "name": "SbbMenuLinkElement",
88000
88300
  "cssProperties": [
88001
88301
  {
88002
88302
  "description": "Can be used to modify horizontal padding.",
@@ -88006,7 +88306,7 @@
88006
88306
  ],
88007
88307
  "slots": [
88008
88308
  {
88009
- "description": "Use the unnamed slot to add content to the `sbb-menu-button`.",
88309
+ "description": "Use the unnamed slot to add content to the `sbb-menu-link`.",
88010
88310
  "name": ""
88011
88311
  },
88012
88312
  {
@@ -88017,17 +88317,16 @@
88017
88317
  "members": [
88018
88318
  {
88019
88319
  "kind": "field",
88020
- "name": "role",
88320
+ "name": "anchorRole",
88021
88321
  "type": {
88022
- "text": "ElementInternals['role']"
88322
+ "text": "string"
88023
88323
  },
88024
- "privacy": "public",
88025
- "static": true,
88324
+ "privacy": "protected",
88026
88325
  "readonly": true,
88027
88326
  "default": "'menuitem'",
88028
88327
  "inheritedFrom": {
88029
- "name": "SbbButtonLikeBaseElement",
88030
- "module": "core/base-elements/button-base-element.js"
88328
+ "name": "SbbLinkBaseElement",
88329
+ "module": "core/base-elements/link-base-element.js"
88031
88330
  }
88032
88331
  },
88033
88332
  {
@@ -88048,53 +88347,9 @@
88048
88347
  },
88049
88348
  {
88050
88349
  "kind": "field",
88051
- "name": "disabled",
88052
- "privacy": "public",
88053
- "description": "Whether the component is disabled.",
88054
- "default": "false",
88350
+ "name": "styles",
88055
88351
  "type": {
88056
- "text": "boolean"
88057
- },
88058
- "attribute": "disabled",
88059
- "reflects": true,
88060
- "inheritedFrom": {
88061
- "name": "SbbDisabledMixin",
88062
- "module": "core/mixins/disabled-mixin.js"
88063
- }
88064
- },
88065
- {
88066
- "kind": "field",
88067
- "name": "#disabled",
88068
- "privacy": "private",
88069
- "type": {
88070
- "text": "boolean"
88071
- },
88072
- "default": "false",
88073
- "inheritedFrom": {
88074
- "name": "SbbDisabledMixin",
88075
- "module": "core/mixins/disabled-mixin.js"
88076
- }
88077
- },
88078
- {
88079
- "kind": "method",
88080
- "name": "isDisabledExternally",
88081
- "privacy": "protected",
88082
- "return": {
88083
- "type": {
88084
- "text": "boolean"
88085
- }
88086
- },
88087
- "description": "Will be used as 'or' check to the current disabled state.\nCan e.g. be used to read disabled state of a group.",
88088
- "inheritedFrom": {
88089
- "name": "SbbDisabledMixin",
88090
- "module": "core/mixins/disabled-mixin.js"
88091
- }
88092
- },
88093
- {
88094
- "kind": "field",
88095
- "name": "styles",
88096
- "type": {
88097
- "text": "CSSResultGroup"
88352
+ "text": "CSSResultGroup"
88098
88353
  },
88099
88354
  "privacy": "public",
88100
88355
  "static": true,
@@ -88187,464 +88442,181 @@
88187
88442
  },
88188
88443
  {
88189
88444
  "kind": "field",
88190
- "name": "_elementsOnWhichEnterPressTriggersSubmit",
88191
- "type": {
88192
- "text": "array"
88193
- },
88194
- "privacy": "private",
88195
- "readonly": true,
88196
- "default": "[ 'input', 'sbb-date-input', 'sbb-time-input', ]",
88197
- "inheritedFrom": {
88198
- "name": "SbbButtonBaseElement",
88199
- "module": "core/base-elements/button-base-element.js"
88200
- }
88201
- },
88202
- {
88203
- "kind": "field",
88204
- "name": "value",
88205
- "type": {
88206
- "text": "string"
88207
- },
88208
- "privacy": "public",
88209
- "inheritedFrom": {
88210
- "name": "SbbButtonBaseElement",
88211
- "module": "core/base-elements/button-base-element.js"
88212
- },
88213
- "default": "''",
88214
- "description": "Value of the form element.",
88215
- "attribute": "value"
88216
- },
88217
- {
88218
- "kind": "field",
88219
- "name": "type",
88445
+ "name": "disabled",
88220
88446
  "privacy": "public",
88221
- "description": "The type attribute to use for the button.",
88222
- "default": "'button'",
88447
+ "description": "Whether the component is disabled.",
88448
+ "default": "false",
88223
88449
  "type": {
88224
- "text": "SbbButtonType"
88450
+ "text": "boolean"
88225
88451
  },
88226
- "attribute": "type",
88452
+ "attribute": "disabled",
88453
+ "reflects": true,
88227
88454
  "inheritedFrom": {
88228
- "name": "SbbButtonBaseElement",
88229
- "module": "core/base-elements/button-base-element.js"
88455
+ "name": "SbbDisabledMixin",
88456
+ "module": "core/mixins/disabled-mixin.js"
88230
88457
  }
88231
88458
  },
88232
88459
  {
88233
88460
  "kind": "field",
88234
- "name": "form",
88235
- "type": {
88236
- "text": "HTMLFormElement | null"
88237
- },
88238
- "privacy": "public",
88239
- "description": "The `<form>` element to associate the button with.",
88240
- "inheritedFrom": {
88241
- "name": "SbbButtonBaseElement",
88242
- "module": "core/base-elements/button-base-element.js"
88243
- },
88244
- "attribute": "form"
88245
- },
88246
- {
88247
- "kind": "field",
88248
- "name": "_formId",
88461
+ "name": "#disabled",
88462
+ "privacy": "private",
88249
88463
  "type": {
88250
- "text": "string"
88464
+ "text": "boolean"
88251
88465
  },
88252
- "privacy": "private",
88253
- "default": "''",
88254
- "inheritedFrom": {
88255
- "name": "SbbButtonBaseElement",
88256
- "module": "core/base-elements/button-base-element.js"
88257
- }
88258
- },
88259
- {
88260
- "kind": "field",
88261
- "name": "_handleButtonClick",
88262
- "privacy": "private",
88466
+ "default": "false",
88263
88467
  "inheritedFrom": {
88264
- "name": "SbbButtonBaseElement",
88265
- "module": "core/base-elements/button-base-element.js"
88468
+ "name": "SbbDisabledMixin",
88469
+ "module": "core/mixins/disabled-mixin.js"
88266
88470
  }
88267
88471
  },
88268
88472
  {
88269
88473
  "kind": "method",
88270
- "name": "_requestSubmit",
88271
- "privacy": "private",
88474
+ "name": "isDisabledExternally",
88475
+ "privacy": "protected",
88272
88476
  "return": {
88273
88477
  "type": {
88274
- "text": "void"
88478
+ "text": "boolean"
88275
88479
  }
88276
88480
  },
88277
- "parameters": [
88278
- {
88279
- "name": "form",
88280
- "type": {
88281
- "text": "HTMLFormElement"
88282
- }
88283
- }
88284
- ],
88481
+ "description": "Will be used as 'or' check to the current disabled state.\nCan e.g. be used to read disabled state of a group.",
88285
88482
  "inheritedFrom": {
88286
- "name": "SbbButtonBaseElement",
88287
- "module": "core/base-elements/button-base-element.js"
88483
+ "name": "SbbDisabledMixin",
88484
+ "module": "core/mixins/disabled-mixin.js"
88288
88485
  }
88289
88486
  },
88290
88487
  {
88291
88488
  "kind": "field",
88292
- "name": "_formKeyDown",
88293
- "privacy": "private",
88489
+ "name": "href",
88490
+ "type": {
88491
+ "text": "string"
88492
+ },
88493
+ "privacy": "public",
88494
+ "default": "''",
88495
+ "description": "The href value you want to link to.",
88496
+ "attribute": "href",
88497
+ "reflects": true,
88294
88498
  "inheritedFrom": {
88295
- "name": "SbbButtonBaseElement",
88296
- "module": "core/base-elements/button-base-element.js"
88499
+ "name": "SbbLinkBaseElement",
88500
+ "module": "core/base-elements/link-base-element.js"
88297
88501
  }
88298
88502
  },
88299
88503
  {
88300
88504
  "kind": "field",
88301
- "name": "formAssociated",
88505
+ "name": "target",
88302
88506
  "type": {
88303
- "text": "boolean"
88507
+ "text": "LinkTargetType | string"
88304
88508
  },
88305
88509
  "privacy": "public",
88306
- "static": true,
88307
- "default": "true",
88510
+ "default": "''",
88511
+ "description": "Where to display the linked URL.",
88512
+ "attribute": "target",
88513
+ "reflects": true,
88308
88514
  "inheritedFrom": {
88309
- "name": "SbbFormAssociatedMixin",
88310
- "module": "core/mixins/form-associated-mixin.js"
88515
+ "name": "SbbLinkBaseElement",
88516
+ "module": "core/base-elements/link-base-element.js"
88311
88517
  }
88312
88518
  },
88313
88519
  {
88314
88520
  "kind": "field",
88315
- "name": "name",
88316
- "privacy": "public",
88317
- "description": "Name of the form element. Will be read from name attribute.",
88521
+ "name": "rel",
88318
88522
  "type": {
88319
88523
  "text": "string"
88320
88524
  },
88321
- "attribute": "name",
88525
+ "privacy": "public",
88526
+ "default": "''",
88527
+ "description": "The relationship of the linked URL as space-separated link types.",
88528
+ "attribute": "rel",
88529
+ "reflects": true,
88322
88530
  "inheritedFrom": {
88323
- "name": "SbbFormAssociatedMixin",
88324
- "module": "core/mixins/form-associated-mixin.js"
88531
+ "name": "SbbLinkBaseElement",
88532
+ "module": "core/base-elements/link-base-element.js"
88325
88533
  }
88326
88534
  },
88327
88535
  {
88328
88536
  "kind": "field",
88329
- "name": "validity",
88537
+ "name": "download",
88330
88538
  "type": {
88331
- "text": "ValidityState"
88539
+ "text": "boolean"
88332
88540
  },
88333
88541
  "privacy": "public",
88334
- "description": "Returns the ValidityState object for this element.",
88335
- "readonly": true,
88542
+ "default": "false",
88543
+ "description": "Whether the browser will show the download dialog on click.",
88544
+ "attribute": "download",
88545
+ "reflects": true,
88336
88546
  "inheritedFrom": {
88337
- "name": "SbbFormAssociatedMixin",
88338
- "module": "core/mixins/form-associated-mixin.js"
88547
+ "name": "SbbLinkBaseElement",
88548
+ "module": "core/base-elements/link-base-element.js"
88339
88549
  }
88340
88550
  },
88341
88551
  {
88342
88552
  "kind": "field",
88343
- "name": "validationMessage",
88553
+ "name": "accessibilityLabel",
88344
88554
  "type": {
88345
88555
  "text": "string"
88346
88556
  },
88347
88557
  "privacy": "public",
88348
- "description": "Returns the current error message, if available, which corresponds\nto the current validation state.\nPlease note that only one message is returned at a time (e.g. if\nmultiple validity states are invalid, only the chronologically first one\nis returned until it is fixed, at which point the next message might be\nreturned, if it is still applicable). Also, a custom validity message\n(see below) has precedence over native validation messages.",
88349
- "readonly": true,
88558
+ "default": "''",
88559
+ "description": "This will be forwarded as aria-label to the inner anchor element.",
88560
+ "attribute": "accessibility-label",
88350
88561
  "inheritedFrom": {
88351
- "name": "SbbFormAssociatedMixin",
88352
- "module": "core/mixins/form-associated-mixin.js"
88562
+ "name": "SbbLinkBaseElement",
88563
+ "module": "core/base-elements/link-base-element.js"
88353
88564
  }
88354
88565
  },
88355
88566
  {
88356
88567
  "kind": "field",
88357
- "name": "willValidate",
88568
+ "name": "accessibilityCurrent",
88358
88569
  "type": {
88359
- "text": "boolean"
88570
+ "text": "string"
88360
88571
  },
88361
88572
  "privacy": "public",
88362
- "description": "Returns true if this element will be validated\nwhen the form is submitted; false otherwise.",
88363
- "readonly": true,
88573
+ "default": "''",
88574
+ "description": "This will be forwarded as aria-current to the inner anchor element.",
88575
+ "attribute": "accessibility-current",
88364
88576
  "inheritedFrom": {
88365
- "name": "SbbFormAssociatedMixin",
88366
- "module": "core/mixins/form-associated-mixin.js"
88577
+ "name": "SbbLinkBaseElement",
88578
+ "module": "core/base-elements/link-base-element.js"
88367
88579
  }
88368
88580
  },
88369
88581
  {
88370
88582
  "kind": "field",
88371
- "name": "_validityStates",
88372
- "privacy": "private",
88373
- "default": "new Map< keyof ValidityStateFlags, { flagValue: unknown; message: string } >()",
88583
+ "name": "language",
88584
+ "privacy": "protected",
88585
+ "default": "new SbbLanguageController(this)",
88374
88586
  "inheritedFrom": {
88375
- "name": "SbbFormAssociatedMixin",
88376
- "module": "core/mixins/form-associated-mixin.js"
88587
+ "name": "SbbLinkBaseElement",
88588
+ "module": "core/base-elements/link-base-element.js"
88377
88589
  }
88378
88590
  },
88379
88591
  {
88380
88592
  "kind": "field",
88381
- "name": "formDisabled",
88382
- "type": {
88383
- "text": "boolean"
88384
- },
88385
- "privacy": "protected",
88386
- "default": "false",
88387
- "description": "Whenever a surrounding form or fieldset is changing its disabled state.",
88593
+ "name": "_evaluateRelAttribute",
88594
+ "privacy": "private",
88388
88595
  "inheritedFrom": {
88389
- "name": "SbbFormAssociatedMixin",
88390
- "module": "core/mixins/form-associated-mixin.js"
88596
+ "name": "SbbLinkBaseElement",
88597
+ "module": "core/base-elements/link-base-element.js"
88391
88598
  }
88392
88599
  },
88393
88600
  {
88394
88601
  "kind": "method",
88395
- "name": "checkValidity",
88396
- "privacy": "public",
88602
+ "name": "renderLink",
88603
+ "privacy": "protected",
88397
88604
  "return": {
88398
88605
  "type": {
88399
- "text": "boolean"
88606
+ "text": "TemplateResult"
88400
88607
  }
88401
88608
  },
88402
- "description": "Returns true if this element has no validity problems; false otherwise.\nFires an invalid event at the element in the latter case.",
88609
+ "parameters": [
88610
+ {
88611
+ "name": "renderContent",
88612
+ "type": {
88613
+ "text": "TemplateResult"
88614
+ }
88615
+ }
88616
+ ],
88403
88617
  "inheritedFrom": {
88404
- "name": "SbbFormAssociatedMixin",
88405
- "module": "core/mixins/form-associated-mixin.js"
88406
- }
88407
- },
88408
- {
88409
- "kind": "method",
88410
- "name": "reportValidity",
88411
- "privacy": "public",
88412
- "return": {
88413
- "type": {
88414
- "text": "boolean"
88415
- }
88416
- },
88417
- "description": "Returns true if this element has no validity problems; otherwise,\nreturns false, fires an invalid event at the element,\nand (if the event isn't canceled) reports the problem to the user.",
88418
- "inheritedFrom": {
88419
- "name": "SbbFormAssociatedMixin",
88420
- "module": "core/mixins/form-associated-mixin.js"
88421
- }
88422
- },
88423
- {
88424
- "kind": "method",
88425
- "name": "setCustomValidity",
88426
- "privacy": "public",
88427
- "return": {
88428
- "type": {
88429
- "text": "void"
88430
- }
88431
- },
88432
- "parameters": [
88433
- {
88434
- "name": "message",
88435
- "type": {
88436
- "text": "string"
88437
- }
88438
- }
88439
- ],
88440
- "description": "Sets the custom validity message for this element. Use the empty string\nto indicate that the element does not have a custom validity error.",
88441
- "inheritedFrom": {
88442
- "name": "SbbFormAssociatedMixin",
88443
- "module": "core/mixins/form-associated-mixin.js"
88444
- }
88445
- },
88446
- {
88447
- "kind": "method",
88448
- "name": "_hasDisabledAncestor",
88449
- "privacy": "private",
88450
- "return": {
88451
- "type": {
88452
- "text": "boolean"
88453
- }
88454
- },
88455
- "inheritedFrom": {
88456
- "name": "SbbFormAssociatedMixin",
88457
- "module": "core/mixins/form-associated-mixin.js"
88458
- }
88459
- },
88460
- {
88461
- "kind": "method",
88462
- "name": "updateFormValue",
88463
- "privacy": "protected",
88464
- "return": {
88465
- "type": {
88466
- "text": "void"
88467
- }
88468
- },
88469
- "description": "Should be called when form value is changed.\nAdapts and sets the formValue in the supported format (string | FormData | File | null)\nhttps://developer.mozilla.org/en-US/docs/Web/API/ElementInternals/setFormValue",
88470
- "inheritedFrom": {
88471
- "name": "SbbFormAssociatedMixin",
88472
- "module": "core/mixins/form-associated-mixin.js"
88473
- }
88474
- },
88475
- {
88476
- "kind": "method",
88477
- "name": "formState",
88478
- "privacy": "protected",
88479
- "return": {
88480
- "type": {
88481
- "text": "FormRestoreState"
88482
- }
88483
- },
88484
- "inheritedFrom": {
88485
- "name": "SbbFormAssociatedMixin",
88486
- "module": "core/mixins/form-associated-mixin.js"
88487
- }
88488
- },
88489
- {
88490
- "kind": "method",
88491
- "name": "setValidityFlag",
88492
- "privacy": "protected",
88493
- "return": {
88494
- "type": {
88495
- "text": "void"
88496
- }
88497
- },
88498
- "parameters": [
88499
- {
88500
- "name": "flag",
88501
- "type": {
88502
- "text": "T"
88503
- }
88504
- },
88505
- {
88506
- "name": "message",
88507
- "type": {
88508
- "text": "string"
88509
- }
88510
- },
88511
- {
88512
- "name": "flagValue",
88513
- "optional": true,
88514
- "type": {
88515
- "text": "ValidityStateFlags[T]"
88516
- }
88517
- }
88518
- ],
88519
- "description": "Marks this element as suffering from the constraint indicated by the\nflag argument and associates the given message to it.\nNote that only one message is displayed at a time and custom messages by\nconsumers are always displayed before internal messages and internal\nmessages are displayed in the order they were added.\nTo set/define custom validity state flags, you need to extend the\nValidityState prototype (and the CustomValidityState interface).",
88520
- "inheritedFrom": {
88521
- "name": "SbbFormAssociatedMixin",
88522
- "module": "core/mixins/form-associated-mixin.js"
88523
- }
88524
- },
88525
- {
88526
- "kind": "method",
88527
- "name": "removeValidityFlag",
88528
- "privacy": "protected",
88529
- "return": {
88530
- "type": {
88531
- "text": "void"
88532
- }
88533
- },
88534
- "parameters": [
88535
- {
88536
- "name": "flag",
88537
- "type": {
88538
- "text": "T"
88539
- }
88540
- }
88541
- ],
88542
- "description": "Removes the validity state flag entry and updates validity state.",
88543
- "inheritedFrom": {
88544
- "name": "SbbFormAssociatedMixin",
88545
- "module": "core/mixins/form-associated-mixin.js"
88546
- }
88547
- },
88548
- {
88549
- "kind": "method",
88550
- "name": "validate",
88551
- "privacy": "protected",
88552
- "return": {
88553
- "type": {
88554
- "text": "void"
88555
- }
88556
- },
88557
- "description": "To be called whenever the current element needs to be validated.",
88558
- "inheritedFrom": {
88559
- "name": "SbbFormAssociatedMixin",
88560
- "module": "core/mixins/form-associated-mixin.js"
88561
- }
88562
- },
88563
- {
88564
- "kind": "method",
88565
- "name": "shouldValidate",
88566
- "privacy": "protected",
88567
- "return": {
88568
- "type": {
88569
- "text": "boolean"
88570
- }
88571
- },
88572
- "parameters": [
88573
- {
88574
- "name": "name",
88575
- "type": {
88576
- "text": "PropertyKey | undefined"
88577
- }
88578
- }
88579
- ],
88580
- "description": "Whether validation should be run on a property change with the given name.",
88581
- "inheritedFrom": {
88582
- "name": "SbbFormAssociatedMixin",
88583
- "module": "core/mixins/form-associated-mixin.js"
88584
- }
88585
- },
88586
- {
88587
- "kind": "method",
88588
- "name": "_setInternalValidity",
88589
- "privacy": "private",
88590
- "return": {
88591
- "type": {
88592
- "text": "void"
88593
- }
88594
- },
88595
- "inheritedFrom": {
88596
- "name": "SbbFormAssociatedMixin",
88597
- "module": "core/mixins/form-associated-mixin.js"
88598
- }
88599
- },
88600
- {
88601
- "kind": "field",
88602
- "name": "_preventScrollOnSpaceKeydown",
88603
- "privacy": "private",
88604
- "description": "Prevents scrolling from pressing Space, when the event target is an action element.\nAlso sets active state.",
88605
- "parameters": [
88606
- {
88607
- "description": "The origin event.",
88608
- "name": "event"
88609
- }
88610
- ],
88611
- "inheritedFrom": {
88612
- "name": "SbbButtonLikeBaseElement",
88613
- "module": "core/base-elements/button-base-element.js"
88614
- }
88615
- },
88616
- {
88617
- "kind": "field",
88618
- "name": "_removeActiveMarker",
88619
- "privacy": "private",
88620
- "inheritedFrom": {
88621
- "name": "SbbButtonLikeBaseElement",
88622
- "module": "core/base-elements/button-base-element.js"
88623
- }
88624
- },
88625
- {
88626
- "kind": "field",
88627
- "name": "_dispatchClickEventOnSpaceKeyup",
88628
- "privacy": "private",
88629
- "description": "Dispatches a 'click' PointerEvent if the original keyboard event is a 'Space' press.\nAs verified with the native button, when 'Space' is pressed, a 'click' event is dispatched\nafter the 'keyup' event.",
88630
- "parameters": [
88631
- {
88632
- "description": "The origin event.",
88633
- "name": "event"
88634
- }
88635
- ],
88636
- "inheritedFrom": {
88637
- "name": "SbbButtonLikeBaseElement",
88638
- "module": "core/base-elements/button-base-element.js"
88639
- }
88640
- },
88641
- {
88642
- "kind": "field",
88643
- "name": "_dispatchClickEvent",
88644
- "privacy": "private",
88645
- "inheritedFrom": {
88646
- "name": "SbbButtonLikeBaseElement",
88647
- "module": "core/base-elements/button-base-element.js"
88618
+ "name": "SbbLinkBaseElement",
88619
+ "module": "core/base-elements/link-base-element.js"
88648
88620
  }
88649
88621
  },
88650
88622
  {
@@ -88719,7 +88691,7 @@
88719
88691
  ],
88720
88692
  "mixins": [
88721
88693
  {
88722
- "name": "SbbDisabledTabIndexActionMixin",
88694
+ "name": "SbbDisabledInteractiveMixin",
88723
88695
  "module": "core/mixins.js"
88724
88696
  },
88725
88697
  {
@@ -88728,10 +88700,10 @@
88728
88700
  }
88729
88701
  ],
88730
88702
  "superclass": {
88731
- "name": "SbbButtonBaseElement",
88703
+ "name": "SbbLinkBaseElement",
88732
88704
  "module": "core/base-elements.js"
88733
88705
  },
88734
- "tagName": "sbb-menu-button",
88706
+ "tagName": "sbb-menu-link",
88735
88707
  "customElement": true,
88736
88708
  "attributes": [
88737
88709
  {
@@ -88748,9 +88720,22 @@
88748
88720
  }
88749
88721
  },
88750
88722
  {
88751
- "name": "disabled",
88752
- "description": "Whether the component is disabled.",
88753
- "default": "false",
88723
+ "name": "icon-name",
88724
+ "type": {
88725
+ "text": "string"
88726
+ },
88727
+ "default": "''",
88728
+ "description": "The icon name we want to use, choose from the small icon variants\nfrom the ui-icons category from here\nhttps://icons.app.sbb.ch.",
88729
+ "fieldName": "iconName",
88730
+ "inheritedFrom": {
88731
+ "name": "SbbIconNameMixin",
88732
+ "module": "icon/icon-name-mixin.js"
88733
+ }
88734
+ },
88735
+ {
88736
+ "name": "disabled",
88737
+ "description": "Whether the component is disabled.",
88738
+ "default": "false",
88754
88739
  "type": {
88755
88740
  "text": "boolean"
88756
88741
  },
@@ -88761,66 +88746,81 @@
88761
88746
  }
88762
88747
  },
88763
88748
  {
88764
- "name": "icon-name",
88749
+ "name": "href",
88765
88750
  "type": {
88766
88751
  "text": "string"
88767
88752
  },
88768
88753
  "default": "''",
88769
- "description": "The icon name we want to use, choose from the small icon variants\nfrom the ui-icons category from here\nhttps://icons.app.sbb.ch.",
88770
- "fieldName": "iconName",
88754
+ "description": "The href value you want to link to.",
88755
+ "fieldName": "href",
88771
88756
  "inheritedFrom": {
88772
- "name": "SbbIconNameMixin",
88773
- "module": "icon/icon-name-mixin.js"
88757
+ "name": "SbbLinkBaseElement",
88758
+ "module": "core/base-elements/link-base-element.js"
88774
88759
  }
88775
88760
  },
88776
88761
  {
88777
- "name": "value",
88762
+ "name": "target",
88763
+ "type": {
88764
+ "text": "LinkTargetType | string"
88765
+ },
88766
+ "default": "''",
88767
+ "description": "Where to display the linked URL.",
88768
+ "fieldName": "target",
88769
+ "inheritedFrom": {
88770
+ "name": "SbbLinkBaseElement",
88771
+ "module": "core/base-elements/link-base-element.js"
88772
+ }
88773
+ },
88774
+ {
88775
+ "name": "rel",
88778
88776
  "type": {
88779
88777
  "text": "string"
88780
88778
  },
88781
88779
  "default": "''",
88782
- "description": "Value of the form element.",
88783
- "fieldName": "value",
88780
+ "description": "The relationship of the linked URL as space-separated link types.",
88781
+ "fieldName": "rel",
88784
88782
  "inheritedFrom": {
88785
- "name": "SbbButtonBaseElement",
88786
- "module": "core/base-elements/button-base-element.js"
88783
+ "name": "SbbLinkBaseElement",
88784
+ "module": "core/base-elements/link-base-element.js"
88787
88785
  }
88788
88786
  },
88789
88787
  {
88790
- "name": "type",
88791
- "description": "The type attribute to use for the button.",
88792
- "default": "'button'",
88788
+ "name": "download",
88793
88789
  "type": {
88794
- "text": "SbbButtonType"
88790
+ "text": "boolean"
88795
88791
  },
88796
- "fieldName": "type",
88792
+ "default": "false",
88793
+ "description": "Whether the browser will show the download dialog on click.",
88794
+ "fieldName": "download",
88797
88795
  "inheritedFrom": {
88798
- "name": "SbbButtonBaseElement",
88799
- "module": "core/base-elements/button-base-element.js"
88796
+ "name": "SbbLinkBaseElement",
88797
+ "module": "core/base-elements/link-base-element.js"
88800
88798
  }
88801
88799
  },
88802
88800
  {
88803
- "name": "form",
88804
- "description": "The `<form>` element to associate the button with.",
88801
+ "name": "accessibility-label",
88805
88802
  "type": {
88806
- "text": "HTMLFormElement | null"
88803
+ "text": "string"
88807
88804
  },
88808
- "fieldName": "form",
88805
+ "default": "''",
88806
+ "description": "This will be forwarded as aria-label to the inner anchor element.",
88807
+ "fieldName": "accessibilityLabel",
88809
88808
  "inheritedFrom": {
88810
- "name": "SbbButtonBaseElement",
88811
- "module": "core/base-elements/button-base-element.js"
88809
+ "name": "SbbLinkBaseElement",
88810
+ "module": "core/base-elements/link-base-element.js"
88812
88811
  }
88813
88812
  },
88814
88813
  {
88815
- "name": "name",
88816
- "description": "Name of the form element. Will be read from name attribute.",
88814
+ "name": "accessibility-current",
88817
88815
  "type": {
88818
88816
  "text": "string"
88819
88817
  },
88820
- "fieldName": "name",
88818
+ "default": "''",
88819
+ "description": "This will be forwarded as aria-current to the inner anchor element.",
88820
+ "fieldName": "accessibilityCurrent",
88821
88821
  "inheritedFrom": {
88822
- "name": "SbbFormAssociatedMixin",
88823
- "module": "core/mixins/form-associated-mixin.js"
88822
+ "name": "SbbLinkBaseElement",
88823
+ "module": "core/base-elements/link-base-element.js"
88824
88824
  }
88825
88825
  }
88826
88826
  ]
@@ -88829,18 +88829,18 @@
88829
88829
  "exports": [
88830
88830
  {
88831
88831
  "kind": "js",
88832
- "name": "SbbMenuButtonElement",
88832
+ "name": "SbbMenuLinkElement",
88833
88833
  "declaration": {
88834
- "name": "SbbMenuButtonElement",
88835
- "module": "menu/menu-button/menu-button.component.js"
88834
+ "name": "SbbMenuLinkElement",
88835
+ "module": "menu/menu-link/menu-link.component.js"
88836
88836
  }
88837
88837
  },
88838
88838
  {
88839
88839
  "kind": "custom-element-definition",
88840
- "name": "sbb-menu-button",
88840
+ "name": "sbb-menu-link",
88841
88841
  "declaration": {
88842
- "name": "SbbMenuButtonElement",
88843
- "module": "menu/menu-button/menu-button.component.js"
88842
+ "name": "SbbMenuLinkElement",
88843
+ "module": "menu/menu-link/menu-link.component.js"
88844
88844
  }
88845
88845
  }
88846
88846
  ]
@@ -100241,230 +100241,283 @@
100241
100241
  },
100242
100242
  {
100243
100243
  "kind": "javascript-module",
100244
- "path": "radio-button/radio-button-group/radio-button-group.component.js",
100244
+ "path": "radio-button/radio-button-panel/radio-button-panel.component.js",
100245
100245
  "declarations": [
100246
100246
  {
100247
100247
  "kind": "class",
100248
- "description": "It can be used as a container for one or more `sbb-radio-button`.",
100249
- "name": "SbbRadioButtonGroupElement",
100248
+ "description": "/**\n It displays a radio button enhanced with the panel design.",
100249
+ "name": "SbbRadioButtonPanelElement",
100250
100250
  "slots": [
100251
100251
  {
100252
- "description": "Use the unnamed slot to add `sbb-radio-button` elements to the `sbb-radio-button-group`.",
100252
+ "description": "Use the unnamed slot to add content to the radio label.",
100253
100253
  "name": ""
100254
100254
  },
100255
100255
  {
100256
- "description": "Use this to provide a `sbb-error` to show an error message.",
100257
- "name": "error"
100256
+ "description": "Slot used to render a subtext under the label.",
100257
+ "name": "subtext"
100258
+ },
100259
+ {
100260
+ "description": "Slot used to render additional content after the label.",
100261
+ "name": "suffix"
100262
+ },
100263
+ {
100264
+ "description": "Use this slot to provide a `sbb-card-badge` (optional).",
100265
+ "name": "badge"
100258
100266
  }
100259
100267
  ],
100260
100268
  "members": [
100261
- {
100262
- "kind": "field",
100263
- "name": "role",
100264
- "type": {
100265
- "text": "string"
100266
- },
100267
- "privacy": "public",
100268
- "static": true,
100269
- "readonly": true,
100270
- "default": "'radiogroup'"
100271
- },
100272
100269
  {
100273
100270
  "kind": "field",
100274
100271
  "name": "events",
100275
100272
  "privacy": "public",
100276
100273
  "static": true,
100277
100274
  "readonly": true,
100278
- "default": "{ didChange: 'didChange', change: 'change', input: 'input', }",
100275
+ "default": "{ change: 'change', input: 'input', }",
100279
100276
  "type": {
100280
- "text": "{\n didChange: 'didChange',\n change: 'change',\n input: 'input',\n }"
100277
+ "text": "{\n change: 'change',\n input: 'input',\n }"
100278
+ },
100279
+ "inheritedFrom": {
100280
+ "name": "SbbRadioButtonCommonElementMixin",
100281
+ "module": "radio-button/common/radio-button-common.js"
100281
100282
  }
100282
100283
  },
100283
100284
  {
100284
100285
  "kind": "field",
100285
- "name": "allowEmptySelection",
100286
+ "name": "value",
100286
100287
  "type": {
100287
- "text": "boolean"
100288
+ "text": "(T = string) | null"
100288
100289
  },
100289
100290
  "privacy": "public",
100290
- "default": "false",
100291
- "description": "Whether the radios can be deselected.",
100292
- "attribute": "allow-empty-selection"
100291
+ "default": "null",
100292
+ "description": "The value of the form element",
100293
+ "attribute": "value",
100294
+ "inheritedFrom": {
100295
+ "name": "SbbFormAssociatedMixin",
100296
+ "module": "core/mixins/form-associated-mixin.js"
100297
+ }
100293
100298
  },
100294
100299
  {
100295
100300
  "kind": "field",
100296
- "name": "required",
100301
+ "name": "_hasSelectionPanelElement",
100297
100302
  "type": {
100298
100303
  "text": "boolean"
100299
100304
  },
100300
- "privacy": "public",
100301
- "default": "false",
100302
- "description": "Whether the radio group is required.",
100303
- "attribute": "required"
100305
+ "privacy": "private",
100306
+ "default": "false"
100304
100307
  },
100305
100308
  {
100306
- "kind": "field",
100307
- "name": "value",
100308
- "privacy": "public",
100309
- "description": "The value of the radio group.",
100310
- "type": {
100311
- "text": "(T = string) | null"
100309
+ "kind": "method",
100310
+ "name": "updateFocusableRadios",
100311
+ "privacy": "protected",
100312
+ "return": {
100313
+ "type": {
100314
+ "text": "void"
100315
+ }
100312
100316
  },
100313
- "attribute": "value"
100317
+ "description": "As an exception, panels with a selection-panel attached are always focusable",
100318
+ "inheritedFrom": {
100319
+ "name": "SbbFormAssociatedRadioButtonMixin",
100320
+ "module": "core/mixins/form-associated-radio-button-mixin.js"
100321
+ }
100314
100322
  },
100315
100323
  {
100316
- "kind": "field",
100317
- "name": "_fallbackValue",
100318
- "type": {
100319
- "text": "T | null"
100324
+ "kind": "method",
100325
+ "name": "navigateByKeyboard",
100326
+ "privacy": "protected",
100327
+ "return": {
100328
+ "type": {
100329
+ "text": "Promise<void>"
100330
+ }
100320
100331
  },
100321
- "privacy": "private",
100322
- "default": "null",
100323
- "description": "Used to preserve the `value` in case the radios are not yet 'loaded'"
100332
+ "parameters": [
100333
+ {
100334
+ "name": "next",
100335
+ "type": {
100336
+ "text": "SbbRadioButtonPanelElement"
100337
+ }
100338
+ }
100339
+ ],
100340
+ "description": "As an exception, radio-panels with a selection-panel attached are not checked automatically when navigating by keyboard",
100341
+ "inheritedFrom": {
100342
+ "name": "SbbFormAssociatedRadioButtonMixin",
100343
+ "module": "core/mixins/form-associated-radio-button-mixin.js"
100344
+ }
100324
100345
  },
100325
100346
  {
100326
100347
  "kind": "field",
100327
- "name": "size",
100348
+ "name": "color",
100328
100349
  "type": {
100329
- "text": "SbbRadioButtonSize"
100350
+ "text": "'white' | 'milk'"
100330
100351
  },
100331
100352
  "privacy": "public",
100332
- "description": "Size variant, either xs, s or m.",
100333
- "default": "'m' / 'xs' (lean)",
100334
- "attribute": "size"
100353
+ "default": "'white'",
100354
+ "description": "The background color of the panel.",
100355
+ "attribute": "color",
100356
+ "reflects": true,
100357
+ "inheritedFrom": {
100358
+ "name": "SbbPanelMixin",
100359
+ "module": "core/mixins/panel-mixin.js"
100360
+ }
100335
100361
  },
100336
100362
  {
100337
100363
  "kind": "field",
100338
- "name": "horizontalFrom",
100364
+ "name": "borderless",
100339
100365
  "type": {
100340
- "text": "SbbHorizontalFrom | null"
100366
+ "text": "boolean"
100341
100367
  },
100342
100368
  "privacy": "public",
100343
- "default": "null",
100344
- "description": "Overrides the behaviour of `orientation` property.",
100345
- "attribute": "horizontal-from",
100346
- "reflects": true
100369
+ "default": "false",
100370
+ "description": "Whether the unselected panel has a border.",
100371
+ "attribute": "borderless",
100372
+ "reflects": true,
100373
+ "inheritedFrom": {
100374
+ "name": "SbbPanelMixin",
100375
+ "module": "core/mixins/panel-mixin.js"
100376
+ }
100347
100377
  },
100348
100378
  {
100349
100379
  "kind": "field",
100350
- "name": "orientation",
100380
+ "name": "size",
100351
100381
  "type": {
100352
- "text": "SbbOrientation"
100382
+ "text": "SbbCheckboxSize | SbbRadioButtonSize"
100353
100383
  },
100354
100384
  "privacy": "public",
100355
- "default": "'horizontal'",
100356
- "description": "Radio group's orientation, either horizontal or vertical.",
100357
- "attribute": "orientation",
100358
- "reflects": true
100385
+ "description": "Size variant, either xs, s or m.",
100386
+ "default": "'m' / 'xs' (lean)",
100387
+ "attribute": "size",
100388
+ "reflects": true,
100389
+ "inheritedFrom": {
100390
+ "name": "SbbPanelMixin",
100391
+ "module": "core/mixins/panel-mixin.js"
100392
+ }
100359
100393
  },
100360
100394
  {
100361
100395
  "kind": "field",
100362
- "name": "name",
100396
+ "name": "allowEmptySelection",
100397
+ "privacy": "public",
100398
+ "description": "Whether the radio can be deselected.",
100363
100399
  "type": {
100364
- "text": "string"
100400
+ "text": "boolean"
100365
100401
  },
100366
- "privacy": "public",
100367
- "default": "`sbb-radio-button-group-${++nextId}`",
100368
- "attribute": "name"
100402
+ "attribute": "allow-empty-selection",
100403
+ "inheritedFrom": {
100404
+ "name": "SbbRadioButtonCommonElementMixin",
100405
+ "module": "radio-button/common/radio-button-common.js"
100406
+ },
100407
+ "default": "false"
100369
100408
  },
100370
100409
  {
100371
100410
  "kind": "field",
100372
- "name": "radioButtons",
100411
+ "name": "_allowEmptySelection",
100373
100412
  "type": {
100374
- "text": "(SbbRadioButtonElement<T> | SbbRadioButtonPanelElement<T>)[]"
100413
+ "text": "boolean"
100414
+ },
100415
+ "privacy": "private",
100416
+ "default": "false",
100417
+ "inheritedFrom": {
100418
+ "name": "SbbRadioButtonCommonElementMixin",
100419
+ "module": "radio-button/common/radio-button-common.js"
100420
+ }
100421
+ },
100422
+ {
100423
+ "kind": "field",
100424
+ "name": "group",
100425
+ "type": {
100426
+ "text": "SbbRadioButtonGroupElement | null"
100375
100427
  },
100376
100428
  "privacy": "public",
100377
- "description": "List of contained radio buttons.",
100378
- "readonly": true
100429
+ "description": "Reference to the connected radio button group.",
100430
+ "readonly": true,
100431
+ "inheritedFrom": {
100432
+ "name": "SbbRadioButtonCommonElementMixin",
100433
+ "module": "radio-button/common/radio-button-common.js"
100434
+ },
100435
+ "default": "null"
100379
100436
  },
100380
100437
  {
100381
- "kind": "method",
100382
- "name": "_onRadioChange",
100383
- "privacy": "private",
100384
- "return": {
100385
- "type": {
100386
- "text": "void"
100387
- }
100438
+ "kind": "field",
100439
+ "name": "_group",
100440
+ "type": {
100441
+ "text": "SbbRadioButtonGroupElement | null"
100388
100442
  },
100389
- "parameters": [
100390
- {
100391
- "name": "event",
100392
- "type": {
100393
- "text": "Event"
100394
- }
100395
- }
100396
- ]
100443
+ "privacy": "private",
100444
+ "default": "null",
100445
+ "inheritedFrom": {
100446
+ "name": "SbbRadioButtonCommonElementMixin",
100447
+ "module": "radio-button/common/radio-button-common.js"
100448
+ }
100397
100449
  },
100398
100450
  {
100399
100451
  "kind": "method",
100400
- "name": "_updateRadiosName",
100401
- "privacy": "private",
100452
+ "name": "select",
100453
+ "privacy": "public",
100402
100454
  "return": {
100403
100455
  "type": {
100404
100456
  "text": "void"
100405
100457
  }
100406
100458
  },
100407
- "description": "Proxy 'name' to child radio-buttons"
100459
+ "description": "Set the radio-button as 'checked'; if 'allowEmptySelection', toggle the checked property.\nIn both cases it emits the change events.",
100460
+ "inheritedFrom": {
100461
+ "name": "SbbRadioButtonCommonElementMixin",
100462
+ "module": "radio-button/common/radio-button-common.js"
100463
+ }
100408
100464
  },
100409
100465
  {
100410
100466
  "kind": "method",
100411
- "name": "_updateRadioState",
100412
- "privacy": "private",
100467
+ "name": "isDisabledExternally",
100468
+ "privacy": "protected",
100413
100469
  "return": {
100414
100470
  "type": {
100415
- "text": "void"
100471
+ "text": "boolean"
100416
100472
  }
100417
100473
  },
100418
- "description": "Re-trigger the setter and update the checked state of the radios.\nMainly used to cover cases where the setter is called before the radios are loaded"
100419
- },
100420
- {
100421
- "kind": "field",
100422
- "name": "disabled",
100423
- "privacy": "public",
100424
- "description": "Whether the component is disabled.",
100425
- "default": "false",
100426
- "type": {
100427
- "text": "boolean"
100428
- },
100429
- "attribute": "disabled",
100430
- "reflects": true,
100474
+ "description": "Will be used as 'or' check to the current disabled state.\nCan e.g. be used to read disabled state of a group.",
100431
100475
  "inheritedFrom": {
100432
100476
  "name": "SbbDisabledMixin",
100433
100477
  "module": "core/mixins/disabled-mixin.js"
100434
100478
  }
100435
100479
  },
100436
100480
  {
100437
- "kind": "field",
100438
- "name": "#disabled",
100439
- "privacy": "private",
100440
- "type": {
100441
- "text": "boolean"
100481
+ "kind": "method",
100482
+ "name": "isRequiredExternally",
100483
+ "privacy": "protected",
100484
+ "return": {
100485
+ "type": {
100486
+ "text": "boolean"
100487
+ }
100442
100488
  },
100443
- "default": "false",
100489
+ "description": "Will be used as 'or' check to the current required state.\nCan e.g. be used to read required state of a group.",
100444
100490
  "inheritedFrom": {
100445
- "name": "SbbDisabledMixin",
100446
- "module": "core/mixins/disabled-mixin.js"
100491
+ "name": "SbbRequiredMixin",
100492
+ "module": "core/mixins/required-mixin.js"
100447
100493
  }
100448
100494
  },
100449
100495
  {
100450
100496
  "kind": "method",
100451
- "name": "isDisabledExternally",
100452
- "privacy": "protected",
100497
+ "name": "_handleClick",
100498
+ "privacy": "private",
100453
100499
  "return": {
100454
100500
  "type": {
100455
- "text": "boolean"
100501
+ "text": "Promise<void>"
100456
100502
  }
100457
100503
  },
100458
- "description": "Will be used as 'or' check to the current disabled state.\nCan e.g. be used to read disabled state of a group.",
100504
+ "parameters": [
100505
+ {
100506
+ "name": "event",
100507
+ "type": {
100508
+ "text": "Event"
100509
+ }
100510
+ }
100511
+ ],
100459
100512
  "inheritedFrom": {
100460
- "name": "SbbDisabledMixin",
100461
- "module": "core/mixins/disabled-mixin.js"
100513
+ "name": "SbbRadioButtonCommonElementMixin",
100514
+ "module": "radio-button/common/radio-button-common.js"
100462
100515
  }
100463
100516
  },
100464
100517
  {
100465
100518
  "kind": "method",
100466
- "name": "toggleState",
100467
- "privacy": "protected",
100519
+ "name": "_handleKeyDown",
100520
+ "privacy": "private",
100468
100521
  "return": {
100469
100522
  "type": {
100470
100523
  "text": "void"
@@ -100472,225 +100525,282 @@
100472
100525
  },
100473
100526
  "parameters": [
100474
100527
  {
100475
- "name": "value",
100476
- "type": {
100477
- "text": "string"
100478
- }
100479
- },
100480
- {
100481
- "name": "force",
100482
- "optional": true,
100528
+ "name": "evt",
100483
100529
  "type": {
100484
- "text": "boolean"
100530
+ "text": "KeyboardEvent"
100485
100531
  }
100486
100532
  }
100487
100533
  ],
100488
100534
  "inheritedFrom": {
100489
- "name": "SbbElementInternalsMixin",
100490
- "module": "core/mixins/element-internals-mixin.js"
100535
+ "name": "SbbRadioButtonCommonElementMixin",
100536
+ "module": "radio-button/common/radio-button-common.js"
100491
100537
  }
100492
- }
100493
- ],
100494
- "events": [
100538
+ },
100495
100539
  {
100496
- "name": "didChange",
100540
+ "kind": "field",
100541
+ "name": "role",
100497
100542
  "type": {
100498
- "text": "Event"
100543
+ "text": "string"
100499
100544
  },
100500
- "description": "Deprecated. Mirrors change event for React. Will be removed once React properly supports change events.",
100501
- "deprecated": "true"
100502
- }
100503
- ],
100504
- "attributes": [
100545
+ "privacy": "public",
100546
+ "static": true,
100547
+ "readonly": true,
100548
+ "default": "'radio'",
100549
+ "inheritedFrom": {
100550
+ "name": "SbbFormAssociatedRadioButtonMixin",
100551
+ "module": "core/mixins/form-associated-radio-button-mixin.js"
100552
+ }
100553
+ },
100505
100554
  {
100506
- "name": "allow-empty-selection",
100555
+ "kind": "field",
100556
+ "name": "checked",
100557
+ "privacy": "public",
100558
+ "description": "Whether the radio button is checked.",
100507
100559
  "type": {
100508
100560
  "text": "boolean"
100509
100561
  },
100510
- "default": "false",
100511
- "description": "Whether the radios can be deselected.",
100512
- "fieldName": "allowEmptySelection"
100562
+ "attribute": "checked",
100563
+ "inheritedFrom": {
100564
+ "name": "SbbFormAssociatedRadioButtonMixin",
100565
+ "module": "core/mixins/form-associated-radio-button-mixin.js"
100566
+ },
100567
+ "default": "false"
100513
100568
  },
100514
100569
  {
100515
- "name": "required",
100570
+ "kind": "field",
100571
+ "name": "_checked",
100516
100572
  "type": {
100517
100573
  "text": "boolean"
100518
100574
  },
100575
+ "privacy": "private",
100519
100576
  "default": "false",
100520
- "description": "Whether the radio group is required.",
100521
- "fieldName": "required"
100577
+ "inheritedFrom": {
100578
+ "name": "SbbFormAssociatedRadioButtonMixin",
100579
+ "module": "core/mixins/form-associated-radio-button-mixin.js"
100580
+ }
100522
100581
  },
100523
100582
  {
100524
- "name": "value",
100525
- "description": "The value of the radio group.",
100583
+ "kind": "field",
100584
+ "name": "name",
100585
+ "privacy": "public",
100586
+ "description": "Name of the form element. Will be read from name attribute.",
100526
100587
  "type": {
100527
- "text": "T | null"
100588
+ "text": "string"
100528
100589
  },
100529
- "fieldName": "value"
100590
+ "attribute": "name",
100591
+ "inheritedFrom": {
100592
+ "name": "SbbFormAssociatedMixin",
100593
+ "module": "core/mixins/form-associated-mixin.js"
100594
+ }
100530
100595
  },
100531
100596
  {
100532
- "name": "size",
100597
+ "kind": "field",
100598
+ "name": "type",
100533
100599
  "type": {
100534
- "text": "SbbRadioButtonSize"
100600
+ "text": "string"
100535
100601
  },
100536
- "description": "Size variant, either xs, s or m.",
100537
- "default": "'m' / 'xs' (lean)",
100538
- "fieldName": "size"
100602
+ "privacy": "public",
100603
+ "description": "Form type of element.",
100604
+ "default": "'radio'",
100605
+ "readonly": true,
100606
+ "inheritedFrom": {
100607
+ "name": "SbbFormAssociatedRadioButtonMixin",
100608
+ "module": "core/mixins/form-associated-radio-button-mixin.js"
100609
+ }
100539
100610
  },
100540
100611
  {
100541
- "name": "horizontal-from",
100612
+ "kind": "field",
100613
+ "name": "associatedRadioButtons",
100542
100614
  "type": {
100543
- "text": "SbbHorizontalFrom | null"
100615
+ "text": "Set<SbbFormAssociatedRadioButtonElement> | undefined"
100544
100616
  },
100545
- "default": "null",
100546
- "description": "Overrides the behaviour of `orientation` property.",
100547
- "fieldName": "horizontalFrom"
100617
+ "privacy": "protected",
100618
+ "description": "Set of radio buttons that belongs to the same group of `this`.\nAssume them ordered in DOM order",
100619
+ "inheritedFrom": {
100620
+ "name": "SbbFormAssociatedRadioButtonMixin",
100621
+ "module": "core/mixins/form-associated-radio-button-mixin.js"
100622
+ }
100548
100623
  },
100549
100624
  {
100550
- "name": "orientation",
100625
+ "kind": "field",
100626
+ "name": "_radioButtonGroupsMap",
100551
100627
  "type": {
100552
- "text": "SbbOrientation"
100628
+ "text": "Map<string, Set<SbbFormAssociatedRadioButtonMixinType>> | undefined"
100553
100629
  },
100554
- "default": "'horizontal'",
100555
- "description": "Radio group's orientation, either horizontal or vertical.",
100556
- "fieldName": "orientation"
100630
+ "privacy": "private",
100631
+ "inheritedFrom": {
100632
+ "name": "SbbFormAssociatedRadioButtonMixin",
100633
+ "module": "core/mixins/form-associated-radio-button-mixin.js"
100634
+ }
100557
100635
  },
100558
100636
  {
100559
- "name": "name",
100560
- "type": {
100561
- "text": "string"
100562
- },
100563
- "default": "`sbb-radio-button-group-${++nextId}`",
100564
- "fieldName": "name"
100637
+ "kind": "field",
100638
+ "name": "_languageController",
100639
+ "privacy": "private",
100640
+ "default": "new SbbLanguageController(this)",
100641
+ "inheritedFrom": {
100642
+ "name": "SbbFormAssociatedRadioButtonMixin",
100643
+ "module": "core/mixins/form-associated-radio-button-mixin.js"
100644
+ }
100565
100645
  },
100566
100646
  {
100567
- "name": "disabled",
100568
- "description": "Whether the component is disabled.",
100569
- "default": "false",
100570
- "type": {
100571
- "text": "boolean"
100647
+ "kind": "method",
100648
+ "name": "_readFormData",
100649
+ "privacy": "private",
100650
+ "return": {
100651
+ "type": {
100652
+ "text": "Promise<unknown>"
100653
+ }
100572
100654
  },
100573
- "fieldName": "disabled",
100655
+ "parameters": [
100656
+ {
100657
+ "name": "formData",
100658
+ "type": {
100659
+ "text": "FormData"
100660
+ }
100661
+ }
100662
+ ],
100574
100663
  "inheritedFrom": {
100575
- "name": "SbbDisabledMixin",
100576
- "module": "core/mixins/disabled-mixin.js"
100664
+ "name": "SbbFormAssociatedRadioButtonMixin",
100665
+ "module": "core/mixins/form-associated-radio-button-mixin.js"
100577
100666
  }
100578
- }
100579
- ],
100580
- "mixins": [
100581
- {
100582
- "name": "SbbDisabledMixin",
100583
- "module": "core/mixins.js"
100584
100667
  },
100585
100668
  {
100586
- "name": "SbbElementInternalsMixin",
100587
- "module": "core/mixins.js"
100588
- }
100589
- ],
100590
- "superclass": {
100591
- "name": "LitElement",
100592
- "package": "lit"
100593
- },
100594
- "classGenerics": "T = string",
100595
- "tagName": "sbb-radio-button-group",
100596
- "customElement": true
100597
- }
100598
- ],
100599
- "exports": [
100600
- {
100601
- "kind": "js",
100602
- "name": "SbbRadioButtonGroupElement",
100603
- "declaration": {
100604
- "name": "SbbRadioButtonGroupElement",
100605
- "module": "radio-button/radio-button-group/radio-button-group.component.js"
100606
- }
100607
- },
100608
- {
100609
- "kind": "custom-element-definition",
100610
- "name": "sbb-radio-button-group",
100611
- "declaration": {
100612
- "name": "SbbRadioButtonGroupElement",
100613
- "module": "radio-button/radio-button-group/radio-button-group.component.js"
100614
- }
100615
- }
100616
- ]
100617
- },
100618
- {
100619
- "kind": "javascript-module",
100620
- "path": "radio-button/radio-button-panel/radio-button-panel.component.js",
100621
- "declarations": [
100622
- {
100623
- "kind": "class",
100624
- "description": "/**\n It displays a radio button enhanced with the panel design.",
100625
- "name": "SbbRadioButtonPanelElement",
100626
- "slots": [
100627
- {
100628
- "description": "Use the unnamed slot to add content to the radio label.",
100629
- "name": ""
100669
+ "kind": "method",
100670
+ "name": "updateFormValue",
100671
+ "privacy": "protected",
100672
+ "return": {
100673
+ "type": {
100674
+ "text": "void"
100675
+ }
100676
+ },
100677
+ "description": "Called on `value` change\nIf 'checked', update the value. Otherwise, do nothing.",
100678
+ "inheritedFrom": {
100679
+ "name": "SbbFormAssociatedMixin",
100680
+ "module": "core/mixins/form-associated-mixin.js"
100681
+ }
100630
100682
  },
100631
100683
  {
100632
- "description": "Slot used to render a subtext under the label.",
100633
- "name": "subtext"
100684
+ "kind": "method",
100685
+ "name": "shouldValidate",
100686
+ "privacy": "protected",
100687
+ "return": {
100688
+ "type": {
100689
+ "text": "boolean"
100690
+ }
100691
+ },
100692
+ "parameters": [
100693
+ {
100694
+ "name": "name",
100695
+ "type": {
100696
+ "text": "PropertyKey | undefined"
100697
+ }
100698
+ }
100699
+ ],
100700
+ "description": "Whether validation should be run on a property change with the given name.",
100701
+ "inheritedFrom": {
100702
+ "name": "SbbFormAssociatedMixin",
100703
+ "module": "core/mixins/form-associated-mixin.js"
100704
+ }
100634
100705
  },
100635
100706
  {
100636
- "description": "Slot used to render additional content after the label.",
100637
- "name": "suffix"
100707
+ "kind": "method",
100708
+ "name": "validate",
100709
+ "privacy": "protected",
100710
+ "return": {
100711
+ "type": {
100712
+ "text": "void"
100713
+ }
100714
+ },
100715
+ "description": "Sets the validity of all associated radio buttons.\nIf any radio button is required, all associated are required as well.",
100716
+ "inheritedFrom": {
100717
+ "name": "SbbFormAssociatedMixin",
100718
+ "module": "core/mixins/form-associated-mixin.js"
100719
+ }
100638
100720
  },
100639
100721
  {
100640
- "description": "Use this slot to provide a `sbb-card-badge` (optional).",
100641
- "name": "badge"
100642
- }
100643
- ],
100644
- "members": [
100722
+ "kind": "method",
100723
+ "name": "emitChangeEvents",
100724
+ "privacy": "protected",
100725
+ "return": {
100726
+ "type": {
100727
+ "text": "void"
100728
+ }
100729
+ },
100730
+ "inheritedFrom": {
100731
+ "name": "SbbFormAssociatedRadioButtonMixin",
100732
+ "module": "core/mixins/form-associated-radio-button-mixin.js"
100733
+ }
100734
+ },
100645
100735
  {
100646
- "kind": "field",
100647
- "name": "events",
100648
- "privacy": "public",
100649
- "static": true,
100650
- "readonly": true,
100651
- "default": "{ change: 'change', input: 'input', }",
100652
- "type": {
100653
- "text": "{\n change: 'change',\n input: 'input',\n }"
100736
+ "kind": "method",
100737
+ "name": "_synchronizeGroupState",
100738
+ "privacy": "private",
100739
+ "return": {
100740
+ "type": {
100741
+ "text": "void"
100742
+ }
100654
100743
  },
100655
100744
  "inheritedFrom": {
100656
- "name": "SbbRadioButtonCommonElementMixin",
100657
- "module": "radio-button/common/radio-button-common.js"
100745
+ "name": "SbbFormAssociatedRadioButtonMixin",
100746
+ "module": "core/mixins/form-associated-radio-button-mixin.js"
100658
100747
  }
100659
100748
  },
100660
100749
  {
100661
- "kind": "field",
100662
- "name": "value",
100663
- "type": {
100664
- "text": "(T = string) | null"
100750
+ "kind": "method",
100751
+ "name": "_connectToRegistry",
100752
+ "privacy": "private",
100753
+ "return": {
100754
+ "type": {
100755
+ "text": "void"
100756
+ }
100665
100757
  },
100666
- "privacy": "public",
100667
- "default": "null",
100668
- "description": "The value of the form element",
100669
- "attribute": "value",
100758
+ "description": "Add `this` to the radioButton registry",
100670
100759
  "inheritedFrom": {
100671
- "name": "SbbFormAssociatedMixin",
100672
- "module": "core/mixins/form-associated-mixin.js"
100760
+ "name": "SbbFormAssociatedRadioButtonMixin",
100761
+ "module": "core/mixins/form-associated-radio-button-mixin.js"
100673
100762
  }
100674
100763
  },
100675
100764
  {
100676
- "kind": "field",
100677
- "name": "_hasSelectionPanelElement",
100678
- "type": {
100679
- "text": "boolean"
100765
+ "kind": "method",
100766
+ "name": "_disconnectFromRegistry",
100767
+ "privacy": "private",
100768
+ "return": {
100769
+ "type": {
100770
+ "text": "void"
100771
+ }
100680
100772
  },
100773
+ "description": "Remove `this` from the radioButton registry and, if the group is empty, delete the entry from the groups Map",
100774
+ "inheritedFrom": {
100775
+ "name": "SbbFormAssociatedRadioButtonMixin",
100776
+ "module": "core/mixins/form-associated-radio-button-mixin.js"
100777
+ }
100778
+ },
100779
+ {
100780
+ "kind": "method",
100781
+ "name": "_interactableGroupedRadios",
100681
100782
  "privacy": "private",
100682
- "default": "false"
100783
+ "return": {
100784
+ "type": {
100785
+ "text": "SbbFormAssociatedRadioButtonElement[]"
100786
+ }
100787
+ },
100788
+ "description": "Return a list of 'interactable' grouped radios, ordered in DOM order",
100789
+ "inheritedFrom": {
100790
+ "name": "SbbFormAssociatedRadioButtonMixin",
100791
+ "module": "core/mixins/form-associated-radio-button-mixin.js"
100792
+ }
100683
100793
  },
100684
100794
  {
100685
100795
  "kind": "method",
100686
- "name": "updateFocusableRadios",
100687
- "privacy": "protected",
100796
+ "name": "_deselectGroupedRadios",
100797
+ "privacy": "private",
100688
100798
  "return": {
100689
100799
  "type": {
100690
100800
  "text": "void"
100691
100801
  }
100692
100802
  },
100693
- "description": "As an exception, panels with a selection-panel attached are always focusable",
100803
+ "description": "Deselect other radio of the same group",
100694
100804
  "inheritedFrom": {
100695
100805
  "name": "SbbFormAssociatedRadioButtonMixin",
100696
100806
  "module": "core/mixins/form-associated-radio-button-mixin.js"
@@ -100698,8 +100808,8 @@
100698
100808
  },
100699
100809
  {
100700
100810
  "kind": "method",
100701
- "name": "navigateByKeyboard",
100702
- "privacy": "protected",
100811
+ "name": "_handleArrowKeyDown",
100812
+ "privacy": "private",
100703
100813
  "return": {
100704
100814
  "type": {
100705
100815
  "text": "Promise<void>"
@@ -100707,13 +100817,12 @@
100707
100817
  },
100708
100818
  "parameters": [
100709
100819
  {
100710
- "name": "next",
100820
+ "name": "evt",
100711
100821
  "type": {
100712
- "text": "SbbRadioButtonPanelElement"
100822
+ "text": "KeyboardEvent"
100713
100823
  }
100714
100824
  }
100715
100825
  ],
100716
- "description": "As an exception, radio-panels with a selection-panel attached are not checked automatically when navigating by keyboard",
100717
100826
  "inheritedFrom": {
100718
100827
  "name": "SbbFormAssociatedRadioButtonMixin",
100719
100828
  "module": "core/mixins/form-associated-radio-button-mixin.js"
@@ -100721,179 +100830,277 @@
100721
100830
  },
100722
100831
  {
100723
100832
  "kind": "field",
100724
- "name": "color",
100833
+ "name": "disabled",
100834
+ "privacy": "public",
100835
+ "description": "Whether the component is disabled.",
100836
+ "default": "false",
100725
100837
  "type": {
100726
- "text": "'white' | 'milk'"
100838
+ "text": "boolean"
100727
100839
  },
100728
- "privacy": "public",
100729
- "default": "'white'",
100730
- "description": "The background color of the panel.",
100731
- "attribute": "color",
100840
+ "attribute": "disabled",
100732
100841
  "reflects": true,
100733
100842
  "inheritedFrom": {
100734
- "name": "SbbPanelMixin",
100735
- "module": "core/mixins/panel-mixin.js"
100843
+ "name": "SbbDisabledMixin",
100844
+ "module": "core/mixins/disabled-mixin.js"
100736
100845
  }
100737
100846
  },
100738
100847
  {
100739
100848
  "kind": "field",
100740
- "name": "borderless",
100849
+ "name": "#disabled",
100850
+ "privacy": "private",
100741
100851
  "type": {
100742
100852
  "text": "boolean"
100743
100853
  },
100744
- "privacy": "public",
100745
100854
  "default": "false",
100746
- "description": "Whether the unselected panel has a border.",
100747
- "attribute": "borderless",
100748
- "reflects": true,
100749
100855
  "inheritedFrom": {
100750
- "name": "SbbPanelMixin",
100751
- "module": "core/mixins/panel-mixin.js"
100856
+ "name": "SbbDisabledMixin",
100857
+ "module": "core/mixins/disabled-mixin.js"
100752
100858
  }
100753
100859
  },
100754
100860
  {
100755
100861
  "kind": "field",
100756
- "name": "size",
100862
+ "name": "required",
100863
+ "privacy": "public",
100864
+ "description": "Whether the component is required.",
100757
100865
  "type": {
100758
- "text": "SbbCheckboxSize | SbbRadioButtonSize"
100866
+ "text": "boolean"
100759
100867
  },
100760
- "privacy": "public",
100761
- "description": "Size variant, either xs, s or m.",
100762
- "default": "'m' / 'xs' (lean)",
100763
- "attribute": "size",
100868
+ "attribute": "required",
100764
100869
  "reflects": true,
100765
100870
  "inheritedFrom": {
100766
- "name": "SbbPanelMixin",
100767
- "module": "core/mixins/panel-mixin.js"
100768
- }
100871
+ "name": "SbbRequiredMixin",
100872
+ "module": "core/mixins/required-mixin.js"
100873
+ },
100874
+ "default": "false"
100769
100875
  },
100770
100876
  {
100771
100877
  "kind": "field",
100772
- "name": "allowEmptySelection",
100773
- "privacy": "public",
100774
- "description": "Whether the radio can be deselected.",
100878
+ "name": "_required",
100775
100879
  "type": {
100776
100880
  "text": "boolean"
100777
100881
  },
100778
- "attribute": "allow-empty-selection",
100882
+ "privacy": "private",
100883
+ "default": "false",
100779
100884
  "inheritedFrom": {
100780
- "name": "SbbRadioButtonCommonElementMixin",
100781
- "module": "radio-button/common/radio-button-common.js"
100782
- },
100783
- "default": "false"
100885
+ "name": "SbbRequiredMixin",
100886
+ "module": "core/mixins/required-mixin.js"
100887
+ }
100784
100888
  },
100785
100889
  {
100786
100890
  "kind": "field",
100787
- "name": "_allowEmptySelection",
100891
+ "name": "formAssociated",
100788
100892
  "type": {
100789
100893
  "text": "boolean"
100790
100894
  },
100791
- "privacy": "private",
100792
- "default": "false",
100895
+ "privacy": "public",
100896
+ "static": true,
100897
+ "default": "true",
100793
100898
  "inheritedFrom": {
100794
- "name": "SbbRadioButtonCommonElementMixin",
100795
- "module": "radio-button/common/radio-button-common.js"
100899
+ "name": "SbbFormAssociatedMixin",
100900
+ "module": "core/mixins/form-associated-mixin.js"
100796
100901
  }
100797
100902
  },
100798
100903
  {
100799
100904
  "kind": "field",
100800
- "name": "group",
100905
+ "name": "form",
100801
100906
  "type": {
100802
- "text": "SbbRadioButtonGroupElement | null"
100907
+ "text": "HTMLFormElement | null"
100803
100908
  },
100804
100909
  "privacy": "public",
100805
- "description": "Reference to the connected radio button group.",
100910
+ "description": "Returns the form owner of this element.",
100806
100911
  "readonly": true,
100807
100912
  "inheritedFrom": {
100808
- "name": "SbbRadioButtonCommonElementMixin",
100809
- "module": "radio-button/common/radio-button-common.js"
100913
+ "name": "SbbFormAssociatedMixin",
100914
+ "module": "core/mixins/form-associated-mixin.js"
100915
+ }
100916
+ },
100917
+ {
100918
+ "kind": "field",
100919
+ "name": "validity",
100920
+ "type": {
100921
+ "text": "ValidityState"
100810
100922
  },
100811
- "default": "null"
100923
+ "privacy": "public",
100924
+ "description": "Returns the ValidityState object for this element.",
100925
+ "readonly": true,
100926
+ "inheritedFrom": {
100927
+ "name": "SbbFormAssociatedMixin",
100928
+ "module": "core/mixins/form-associated-mixin.js"
100929
+ }
100812
100930
  },
100813
100931
  {
100814
100932
  "kind": "field",
100815
- "name": "_group",
100933
+ "name": "validationMessage",
100816
100934
  "type": {
100817
- "text": "SbbRadioButtonGroupElement | null"
100935
+ "text": "string"
100936
+ },
100937
+ "privacy": "public",
100938
+ "description": "Returns the current error message, if available, which corresponds\nto the current validation state.\nPlease note that only one message is returned at a time (e.g. if\nmultiple validity states are invalid, only the chronologically first one\nis returned until it is fixed, at which point the next message might be\nreturned, if it is still applicable). Also, a custom validity message\n(see below) has precedence over native validation messages.",
100939
+ "readonly": true,
100940
+ "inheritedFrom": {
100941
+ "name": "SbbFormAssociatedMixin",
100942
+ "module": "core/mixins/form-associated-mixin.js"
100943
+ }
100944
+ },
100945
+ {
100946
+ "kind": "field",
100947
+ "name": "willValidate",
100948
+ "type": {
100949
+ "text": "boolean"
100818
100950
  },
100951
+ "privacy": "public",
100952
+ "description": "Returns true if this element will be validated\nwhen the form is submitted; false otherwise.",
100953
+ "readonly": true,
100954
+ "inheritedFrom": {
100955
+ "name": "SbbFormAssociatedMixin",
100956
+ "module": "core/mixins/form-associated-mixin.js"
100957
+ }
100958
+ },
100959
+ {
100960
+ "kind": "field",
100961
+ "name": "_validityStates",
100819
100962
  "privacy": "private",
100820
- "default": "null",
100963
+ "default": "new Map< keyof ValidityStateFlags, { flagValue: unknown; message: string } >()",
100821
100964
  "inheritedFrom": {
100822
- "name": "SbbRadioButtonCommonElementMixin",
100823
- "module": "radio-button/common/radio-button-common.js"
100965
+ "name": "SbbFormAssociatedMixin",
100966
+ "module": "core/mixins/form-associated-mixin.js"
100967
+ }
100968
+ },
100969
+ {
100970
+ "kind": "field",
100971
+ "name": "formDisabled",
100972
+ "type": {
100973
+ "text": "boolean"
100974
+ },
100975
+ "privacy": "protected",
100976
+ "default": "false",
100977
+ "description": "Whenever a surrounding form or fieldset is changing its disabled state.",
100978
+ "inheritedFrom": {
100979
+ "name": "SbbFormAssociatedMixin",
100980
+ "module": "core/mixins/form-associated-mixin.js"
100824
100981
  }
100825
100982
  },
100826
100983
  {
100827
100984
  "kind": "method",
100828
- "name": "select",
100985
+ "name": "checkValidity",
100986
+ "privacy": "public",
100987
+ "return": {
100988
+ "type": {
100989
+ "text": "boolean"
100990
+ }
100991
+ },
100992
+ "description": "Returns true if this element has no validity problems; false otherwise.\nFires an invalid event at the element in the latter case.",
100993
+ "inheritedFrom": {
100994
+ "name": "SbbFormAssociatedMixin",
100995
+ "module": "core/mixins/form-associated-mixin.js"
100996
+ }
100997
+ },
100998
+ {
100999
+ "kind": "method",
101000
+ "name": "reportValidity",
101001
+ "privacy": "public",
101002
+ "return": {
101003
+ "type": {
101004
+ "text": "boolean"
101005
+ }
101006
+ },
101007
+ "description": "Returns true if this element has no validity problems; otherwise,\nreturns false, fires an invalid event at the element,\nand (if the event isn't canceled) reports the problem to the user.",
101008
+ "inheritedFrom": {
101009
+ "name": "SbbFormAssociatedMixin",
101010
+ "module": "core/mixins/form-associated-mixin.js"
101011
+ }
101012
+ },
101013
+ {
101014
+ "kind": "method",
101015
+ "name": "setCustomValidity",
100829
101016
  "privacy": "public",
100830
101017
  "return": {
100831
101018
  "type": {
100832
101019
  "text": "void"
100833
101020
  }
100834
101021
  },
100835
- "description": "Set the radio-button as 'checked'; if 'allowEmptySelection', toggle the checked property.\nIn both cases it emits the change events.",
101022
+ "parameters": [
101023
+ {
101024
+ "name": "message",
101025
+ "type": {
101026
+ "text": "string"
101027
+ }
101028
+ }
101029
+ ],
101030
+ "description": "Sets the custom validity message for this element. Use the empty string\nto indicate that the element does not have a custom validity error.",
100836
101031
  "inheritedFrom": {
100837
- "name": "SbbRadioButtonCommonElementMixin",
100838
- "module": "radio-button/common/radio-button-common.js"
101032
+ "name": "SbbFormAssociatedMixin",
101033
+ "module": "core/mixins/form-associated-mixin.js"
100839
101034
  }
100840
101035
  },
100841
101036
  {
100842
101037
  "kind": "method",
100843
- "name": "isDisabledExternally",
100844
- "privacy": "protected",
101038
+ "name": "_hasDisabledAncestor",
101039
+ "privacy": "private",
100845
101040
  "return": {
100846
101041
  "type": {
100847
101042
  "text": "boolean"
100848
101043
  }
100849
101044
  },
100850
- "description": "Will be used as 'or' check to the current disabled state.\nCan e.g. be used to read disabled state of a group.",
100851
101045
  "inheritedFrom": {
100852
- "name": "SbbDisabledMixin",
100853
- "module": "core/mixins/disabled-mixin.js"
101046
+ "name": "SbbFormAssociatedMixin",
101047
+ "module": "core/mixins/form-associated-mixin.js"
100854
101048
  }
100855
101049
  },
100856
101050
  {
100857
101051
  "kind": "method",
100858
- "name": "isRequiredExternally",
101052
+ "name": "formState",
100859
101053
  "privacy": "protected",
100860
101054
  "return": {
100861
101055
  "type": {
100862
- "text": "boolean"
101056
+ "text": "FormRestoreState"
100863
101057
  }
100864
101058
  },
100865
- "description": "Will be used as 'or' check to the current required state.\nCan e.g. be used to read required state of a group.",
100866
101059
  "inheritedFrom": {
100867
- "name": "SbbRequiredMixin",
100868
- "module": "core/mixins/required-mixin.js"
101060
+ "name": "SbbFormAssociatedMixin",
101061
+ "module": "core/mixins/form-associated-mixin.js"
100869
101062
  }
100870
101063
  },
100871
101064
  {
100872
101065
  "kind": "method",
100873
- "name": "_handleClick",
100874
- "privacy": "private",
101066
+ "name": "setValidityFlag",
101067
+ "privacy": "protected",
100875
101068
  "return": {
100876
101069
  "type": {
100877
- "text": "Promise<void>"
101070
+ "text": "void"
100878
101071
  }
100879
101072
  },
100880
101073
  "parameters": [
100881
101074
  {
100882
- "name": "event",
101075
+ "name": "flag",
100883
101076
  "type": {
100884
- "text": "Event"
101077
+ "text": "T"
101078
+ }
101079
+ },
101080
+ {
101081
+ "name": "message",
101082
+ "type": {
101083
+ "text": "string"
101084
+ }
101085
+ },
101086
+ {
101087
+ "name": "flagValue",
101088
+ "optional": true,
101089
+ "type": {
101090
+ "text": "ValidityStateFlags[T]"
100885
101091
  }
100886
101092
  }
100887
101093
  ],
101094
+ "description": "Marks this element as suffering from the constraint indicated by the\nflag argument and associates the given message to it.\nNote that only one message is displayed at a time and custom messages by\nconsumers are always displayed before internal messages and internal\nmessages are displayed in the order they were added.\nTo set/define custom validity state flags, you need to extend the\nValidityState prototype (and the CustomValidityState interface).",
100888
101095
  "inheritedFrom": {
100889
- "name": "SbbRadioButtonCommonElementMixin",
100890
- "module": "radio-button/common/radio-button-common.js"
101096
+ "name": "SbbFormAssociatedMixin",
101097
+ "module": "core/mixins/form-associated-mixin.js"
100891
101098
  }
100892
101099
  },
100893
101100
  {
100894
101101
  "kind": "method",
100895
- "name": "_handleKeyDown",
100896
- "privacy": "private",
101102
+ "name": "removeValidityFlag",
101103
+ "privacy": "protected",
100897
101104
  "return": {
100898
101105
  "type": {
100899
101106
  "text": "void"
@@ -100901,202 +101108,96 @@
100901
101108
  },
100902
101109
  "parameters": [
100903
101110
  {
100904
- "name": "evt",
101111
+ "name": "flag",
100905
101112
  "type": {
100906
- "text": "KeyboardEvent"
101113
+ "text": "T"
100907
101114
  }
100908
101115
  }
100909
101116
  ],
101117
+ "description": "Removes the validity state flag entry and updates validity state.",
100910
101118
  "inheritedFrom": {
100911
- "name": "SbbRadioButtonCommonElementMixin",
100912
- "module": "radio-button/common/radio-button-common.js"
101119
+ "name": "SbbFormAssociatedMixin",
101120
+ "module": "core/mixins/form-associated-mixin.js"
100913
101121
  }
100914
101122
  },
100915
101123
  {
100916
- "kind": "field",
100917
- "name": "role",
100918
- "type": {
100919
- "text": "string"
101124
+ "kind": "method",
101125
+ "name": "_setInternalValidity",
101126
+ "privacy": "private",
101127
+ "return": {
101128
+ "type": {
101129
+ "text": "void"
101130
+ }
100920
101131
  },
100921
- "privacy": "public",
100922
- "static": true,
100923
- "readonly": true,
100924
- "default": "'radio'",
100925
101132
  "inheritedFrom": {
100926
- "name": "SbbFormAssociatedRadioButtonMixin",
100927
- "module": "core/mixins/form-associated-radio-button-mixin.js"
100928
- }
100929
- },
100930
- {
100931
- "kind": "field",
100932
- "name": "checked",
100933
- "privacy": "public",
100934
- "description": "Whether the radio button is checked.",
100935
- "type": {
100936
- "text": "boolean"
100937
- },
100938
- "attribute": "checked",
100939
- "inheritedFrom": {
100940
- "name": "SbbFormAssociatedRadioButtonMixin",
100941
- "module": "core/mixins/form-associated-radio-button-mixin.js"
100942
- },
100943
- "default": "false"
100944
- },
100945
- {
100946
- "kind": "field",
100947
- "name": "_checked",
100948
- "type": {
100949
- "text": "boolean"
100950
- },
100951
- "privacy": "private",
100952
- "default": "false",
100953
- "inheritedFrom": {
100954
- "name": "SbbFormAssociatedRadioButtonMixin",
100955
- "module": "core/mixins/form-associated-radio-button-mixin.js"
100956
- }
100957
- },
100958
- {
100959
- "kind": "field",
100960
- "name": "name",
100961
- "privacy": "public",
100962
- "description": "Name of the form element. Will be read from name attribute.",
100963
- "type": {
100964
- "text": "string"
100965
- },
100966
- "attribute": "name",
100967
- "inheritedFrom": {
100968
- "name": "SbbFormAssociatedMixin",
100969
- "module": "core/mixins/form-associated-mixin.js"
100970
- }
100971
- },
100972
- {
100973
- "kind": "field",
100974
- "name": "type",
100975
- "type": {
100976
- "text": "string"
100977
- },
100978
- "privacy": "public",
100979
- "description": "Form type of element.",
100980
- "default": "'radio'",
100981
- "readonly": true,
100982
- "inheritedFrom": {
100983
- "name": "SbbFormAssociatedRadioButtonMixin",
100984
- "module": "core/mixins/form-associated-radio-button-mixin.js"
100985
- }
100986
- },
100987
- {
100988
- "kind": "field",
100989
- "name": "associatedRadioButtons",
100990
- "type": {
100991
- "text": "Set<SbbFormAssociatedRadioButtonElement> | undefined"
100992
- },
100993
- "privacy": "protected",
100994
- "description": "Set of radio buttons that belongs to the same group of `this`.\nAssume them ordered in DOM order",
100995
- "inheritedFrom": {
100996
- "name": "SbbFormAssociatedRadioButtonMixin",
100997
- "module": "core/mixins/form-associated-radio-button-mixin.js"
100998
- }
100999
- },
101000
- {
101001
- "kind": "field",
101002
- "name": "_radioButtonGroupsMap",
101003
- "type": {
101004
- "text": "Map<string, Set<SbbFormAssociatedRadioButtonMixinType>> | undefined"
101005
- },
101006
- "privacy": "private",
101007
- "inheritedFrom": {
101008
- "name": "SbbFormAssociatedRadioButtonMixin",
101009
- "module": "core/mixins/form-associated-radio-button-mixin.js"
101010
- }
101011
- },
101012
- {
101013
- "kind": "field",
101014
- "name": "_languageController",
101015
- "privacy": "private",
101016
- "default": "new SbbLanguageController(this)",
101017
- "inheritedFrom": {
101018
- "name": "SbbFormAssociatedRadioButtonMixin",
101019
- "module": "core/mixins/form-associated-radio-button-mixin.js"
101133
+ "name": "SbbFormAssociatedMixin",
101134
+ "module": "core/mixins/form-associated-mixin.js"
101020
101135
  }
101021
101136
  },
101022
101137
  {
101023
101138
  "kind": "method",
101024
- "name": "_readFormData",
101025
- "privacy": "private",
101139
+ "name": "toggleState",
101140
+ "privacy": "protected",
101026
101141
  "return": {
101027
101142
  "type": {
101028
- "text": "Promise<unknown>"
101143
+ "text": "void"
101029
101144
  }
101030
101145
  },
101031
101146
  "parameters": [
101032
101147
  {
101033
- "name": "formData",
101148
+ "name": "value",
101034
101149
  "type": {
101035
- "text": "FormData"
101150
+ "text": "string"
101151
+ }
101152
+ },
101153
+ {
101154
+ "name": "force",
101155
+ "optional": true,
101156
+ "type": {
101157
+ "text": "boolean"
101036
101158
  }
101037
101159
  }
101038
101160
  ],
101039
101161
  "inheritedFrom": {
101040
- "name": "SbbFormAssociatedRadioButtonMixin",
101041
- "module": "core/mixins/form-associated-radio-button-mixin.js"
101162
+ "name": "SbbElementInternalsMixin",
101163
+ "module": "core/mixins/element-internals-mixin.js"
101042
101164
  }
101043
101165
  },
101044
101166
  {
101045
- "kind": "method",
101046
- "name": "updateFormValue",
101047
- "privacy": "protected",
101048
- "return": {
101049
- "type": {
101050
- "text": "void"
101051
- }
101052
- },
101053
- "description": "Called on `value` change\nIf 'checked', update the value. Otherwise, do nothing.",
101167
+ "kind": "field",
101168
+ "name": "_updatePromise",
101169
+ "privacy": "private",
101054
101170
  "inheritedFrom": {
101055
- "name": "SbbFormAssociatedMixin",
101056
- "module": "core/mixins/form-associated-mixin.js"
101171
+ "name": "SbbUpdateSchedulerMixin",
101172
+ "module": "core/mixins/update-scheduler-mixin.js"
101057
101173
  }
101058
101174
  },
101059
101175
  {
101060
- "kind": "method",
101061
- "name": "shouldValidate",
101062
- "privacy": "protected",
101063
- "return": {
101064
- "type": {
101065
- "text": "boolean"
101066
- }
101067
- },
101068
- "parameters": [
101069
- {
101070
- "name": "name",
101071
- "type": {
101072
- "text": "PropertyKey | undefined"
101073
- }
101074
- }
101075
- ],
101076
- "description": "Whether validation should be run on a property change with the given name.",
101176
+ "kind": "field",
101177
+ "name": "_updateResolve",
101178
+ "privacy": "private",
101077
101179
  "inheritedFrom": {
101078
- "name": "SbbFormAssociatedMixin",
101079
- "module": "core/mixins/form-associated-mixin.js"
101180
+ "name": "SbbUpdateSchedulerMixin",
101181
+ "module": "core/mixins/update-scheduler-mixin.js"
101080
101182
  }
101081
101183
  },
101082
101184
  {
101083
101185
  "kind": "method",
101084
- "name": "validate",
101186
+ "name": "startUpdate",
101085
101187
  "privacy": "protected",
101086
101188
  "return": {
101087
101189
  "type": {
101088
101190
  "text": "void"
101089
101191
  }
101090
101192
  },
101091
- "description": "Sets the validity of all associated radio buttons.\nIf any radio button is required, all associated are required as well.",
101092
101193
  "inheritedFrom": {
101093
- "name": "SbbFormAssociatedMixin",
101094
- "module": "core/mixins/form-associated-mixin.js"
101194
+ "name": "SbbUpdateSchedulerMixin",
101195
+ "module": "core/mixins/update-scheduler-mixin.js"
101095
101196
  }
101096
101197
  },
101097
101198
  {
101098
101199
  "kind": "method",
101099
- "name": "emitChangeEvents",
101200
+ "name": "completeUpdate",
101100
101201
  "privacy": "protected",
101101
101202
  "return": {
101102
101203
  "type": {
@@ -101104,379 +101205,344 @@
101104
101205
  }
101105
101206
  },
101106
101207
  "inheritedFrom": {
101107
- "name": "SbbFormAssociatedRadioButtonMixin",
101108
- "module": "core/mixins/form-associated-radio-button-mixin.js"
101208
+ "name": "SbbUpdateSchedulerMixin",
101209
+ "module": "core/mixins/update-scheduler-mixin.js"
101109
101210
  }
101110
101211
  },
101111
101212
  {
101112
101213
  "kind": "method",
101113
- "name": "_synchronizeGroupState",
101114
- "privacy": "private",
101214
+ "name": "getUpdateComplete",
101215
+ "privacy": "protected",
101115
101216
  "return": {
101116
101217
  "type": {
101117
- "text": "void"
101218
+ "text": "Promise<boolean>"
101118
101219
  }
101119
101220
  },
101120
101221
  "inheritedFrom": {
101121
- "name": "SbbFormAssociatedRadioButtonMixin",
101122
- "module": "core/mixins/form-associated-radio-button-mixin.js"
101222
+ "name": "SbbUpdateSchedulerMixin",
101223
+ "module": "core/mixins/update-scheduler-mixin.js"
101123
101224
  }
101124
- },
101225
+ }
101226
+ ],
101227
+ "events": [
101125
101228
  {
101126
- "kind": "method",
101127
- "name": "_connectToRegistry",
101128
- "privacy": "private",
101129
- "return": {
101130
- "type": {
101131
- "text": "void"
101132
- }
101229
+ "name": "change",
101230
+ "type": {
101231
+ "text": "Event"
101133
101232
  },
101134
- "description": "Add `this` to the radioButton registry",
101233
+ "description": "The change event is fired when the user modifies the element's value. Unlike the input event, the change event is not necessarily fired for each alteration to an element's value.",
101135
101234
  "inheritedFrom": {
101136
101235
  "name": "SbbFormAssociatedRadioButtonMixin",
101137
101236
  "module": "core/mixins/form-associated-radio-button-mixin.js"
101138
101237
  }
101139
101238
  },
101140
101239
  {
101141
- "kind": "method",
101142
- "name": "_disconnectFromRegistry",
101143
- "privacy": "private",
101144
- "return": {
101145
- "type": {
101146
- "text": "void"
101147
- }
101240
+ "name": "input",
101241
+ "type": {
101242
+ "text": "InputEvent"
101148
101243
  },
101149
- "description": "Remove `this` from the radioButton registry and, if the group is empty, delete the entry from the groups Map",
101244
+ "description": "The input event fires when the value has been changed as a direct result of a user action.",
101150
101245
  "inheritedFrom": {
101151
101246
  "name": "SbbFormAssociatedRadioButtonMixin",
101152
101247
  "module": "core/mixins/form-associated-radio-button-mixin.js"
101153
101248
  }
101249
+ }
101250
+ ],
101251
+ "attributes": [
101252
+ {
101253
+ "name": "value",
101254
+ "type": {
101255
+ "text": "T | null"
101256
+ },
101257
+ "default": "null",
101258
+ "description": "The value of the form element",
101259
+ "fieldName": "value"
101154
101260
  },
101155
101261
  {
101156
- "kind": "method",
101157
- "name": "_interactableGroupedRadios",
101158
- "privacy": "private",
101159
- "return": {
101160
- "type": {
101161
- "text": "SbbFormAssociatedRadioButtonElement[]"
101162
- }
101262
+ "name": "color",
101263
+ "type": {
101264
+ "text": "'white' | 'milk'"
101163
101265
  },
101164
- "description": "Return a list of 'interactable' grouped radios, ordered in DOM order",
101266
+ "default": "'white'",
101267
+ "description": "The background color of the panel.",
101268
+ "fieldName": "color",
101165
101269
  "inheritedFrom": {
101166
- "name": "SbbFormAssociatedRadioButtonMixin",
101167
- "module": "core/mixins/form-associated-radio-button-mixin.js"
101270
+ "name": "SbbPanelMixin",
101271
+ "module": "core/mixins/panel-mixin.js"
101168
101272
  }
101169
101273
  },
101170
101274
  {
101171
- "kind": "method",
101172
- "name": "_deselectGroupedRadios",
101173
- "privacy": "private",
101174
- "return": {
101175
- "type": {
101176
- "text": "void"
101177
- }
101275
+ "name": "borderless",
101276
+ "type": {
101277
+ "text": "boolean"
101178
101278
  },
101179
- "description": "Deselect other radio of the same group",
101279
+ "default": "false",
101280
+ "description": "Whether the unselected panel has a border.",
101281
+ "fieldName": "borderless",
101180
101282
  "inheritedFrom": {
101181
- "name": "SbbFormAssociatedRadioButtonMixin",
101182
- "module": "core/mixins/form-associated-radio-button-mixin.js"
101283
+ "name": "SbbPanelMixin",
101284
+ "module": "core/mixins/panel-mixin.js"
101183
101285
  }
101184
101286
  },
101185
101287
  {
101186
- "kind": "method",
101187
- "name": "_handleArrowKeyDown",
101188
- "privacy": "private",
101189
- "return": {
101190
- "type": {
101191
- "text": "Promise<void>"
101192
- }
101288
+ "name": "size",
101289
+ "type": {
101290
+ "text": "SbbCheckboxSize | SbbRadioButtonSize"
101193
101291
  },
101194
- "parameters": [
101195
- {
101196
- "name": "evt",
101197
- "type": {
101198
- "text": "KeyboardEvent"
101199
- }
101200
- }
101201
- ],
101292
+ "description": "Size variant, either xs, s or m.",
101293
+ "default": "'m' / 'xs' (lean)",
101294
+ "fieldName": "size",
101202
101295
  "inheritedFrom": {
101203
- "name": "SbbFormAssociatedRadioButtonMixin",
101204
- "module": "core/mixins/form-associated-radio-button-mixin.js"
101296
+ "name": "SbbPanelMixin",
101297
+ "module": "core/mixins/panel-mixin.js"
101205
101298
  }
101206
101299
  },
101207
101300
  {
101208
- "kind": "field",
101209
- "name": "disabled",
101210
- "privacy": "public",
101211
- "description": "Whether the component is disabled.",
101212
- "default": "false",
101301
+ "name": "allow-empty-selection",
101302
+ "description": "Whether the radio can be deselected.",
101213
101303
  "type": {
101214
101304
  "text": "boolean"
101215
101305
  },
101216
- "attribute": "disabled",
101217
- "reflects": true,
101306
+ "fieldName": "allowEmptySelection",
101218
101307
  "inheritedFrom": {
101219
- "name": "SbbDisabledMixin",
101220
- "module": "core/mixins/disabled-mixin.js"
101308
+ "name": "SbbRadioButtonCommonElementMixin",
101309
+ "module": "radio-button/common/radio-button-common.js"
101221
101310
  }
101222
101311
  },
101223
101312
  {
101224
- "kind": "field",
101225
- "name": "#disabled",
101226
- "privacy": "private",
101313
+ "name": "checked",
101314
+ "description": "Whether the radio button is checked.",
101227
101315
  "type": {
101228
101316
  "text": "boolean"
101229
101317
  },
101230
- "default": "false",
101318
+ "fieldName": "checked",
101231
101319
  "inheritedFrom": {
101232
- "name": "SbbDisabledMixin",
101233
- "module": "core/mixins/disabled-mixin.js"
101320
+ "name": "SbbFormAssociatedRadioButtonMixin",
101321
+ "module": "core/mixins/form-associated-radio-button-mixin.js"
101234
101322
  }
101235
101323
  },
101236
101324
  {
101237
- "kind": "field",
101238
- "name": "required",
101239
- "privacy": "public",
101240
- "description": "Whether the component is required.",
101325
+ "name": "name",
101326
+ "description": "Name of the form element. Will be read from name attribute.",
101241
101327
  "type": {
101242
- "text": "boolean"
101328
+ "text": "string"
101243
101329
  },
101244
- "attribute": "required",
101245
- "reflects": true,
101330
+ "fieldName": "name",
101246
101331
  "inheritedFrom": {
101247
- "name": "SbbRequiredMixin",
101248
- "module": "core/mixins/required-mixin.js"
101249
- },
101250
- "default": "false"
101332
+ "name": "SbbFormAssociatedMixin",
101333
+ "module": "core/mixins/form-associated-mixin.js"
101334
+ }
101251
101335
  },
101252
101336
  {
101253
- "kind": "field",
101254
- "name": "_required",
101337
+ "name": "disabled",
101338
+ "description": "Whether the component is disabled.",
101339
+ "default": "false",
101255
101340
  "type": {
101256
101341
  "text": "boolean"
101257
101342
  },
101258
- "privacy": "private",
101259
- "default": "false",
101343
+ "fieldName": "disabled",
101260
101344
  "inheritedFrom": {
101261
- "name": "SbbRequiredMixin",
101262
- "module": "core/mixins/required-mixin.js"
101345
+ "name": "SbbDisabledMixin",
101346
+ "module": "core/mixins/disabled-mixin.js"
101263
101347
  }
101264
101348
  },
101265
101349
  {
101266
- "kind": "field",
101267
- "name": "formAssociated",
101350
+ "name": "required",
101351
+ "description": "Whether the component is required.",
101268
101352
  "type": {
101269
101353
  "text": "boolean"
101270
101354
  },
101271
- "privacy": "public",
101272
- "static": true,
101273
- "default": "true",
101355
+ "fieldName": "required",
101274
101356
  "inheritedFrom": {
101275
- "name": "SbbFormAssociatedMixin",
101276
- "module": "core/mixins/form-associated-mixin.js"
101357
+ "name": "SbbRequiredMixin",
101358
+ "module": "core/mixins/required-mixin.js"
101277
101359
  }
101360
+ }
101361
+ ],
101362
+ "mixins": [
101363
+ {
101364
+ "name": "SbbPanelMixin",
101365
+ "module": "core/mixins.js"
101278
101366
  },
101279
101367
  {
101280
- "kind": "field",
101281
- "name": "form",
101282
- "type": {
101283
- "text": "HTMLFormElement | null"
101284
- },
101285
- "privacy": "public",
101286
- "description": "Returns the form owner of this element.",
101287
- "readonly": true,
101288
- "inheritedFrom": {
101289
- "name": "SbbFormAssociatedMixin",
101290
- "module": "core/mixins/form-associated-mixin.js"
101291
- }
101368
+ "name": "SbbRadioButtonCommonElementMixin",
101369
+ "module": "radio-button/common.js"
101370
+ },
101371
+ {
101372
+ "name": "SbbUpdateSchedulerMixin",
101373
+ "module": "core/mixins.js"
101374
+ }
101375
+ ],
101376
+ "superclass": {
101377
+ "name": "LitElement",
101378
+ "package": "lit"
101379
+ },
101380
+ "classGenerics": "T = string",
101381
+ "tagName": "sbb-radio-button-panel",
101382
+ "customElement": true
101383
+ }
101384
+ ],
101385
+ "exports": [
101386
+ {
101387
+ "kind": "js",
101388
+ "name": "SbbRadioButtonPanelElement",
101389
+ "declaration": {
101390
+ "name": "SbbRadioButtonPanelElement",
101391
+ "module": "radio-button/radio-button-panel/radio-button-panel.component.js"
101392
+ }
101393
+ },
101394
+ {
101395
+ "kind": "custom-element-definition",
101396
+ "name": "sbb-radio-button-panel",
101397
+ "declaration": {
101398
+ "name": "SbbRadioButtonPanelElement",
101399
+ "module": "radio-button/radio-button-panel/radio-button-panel.component.js"
101400
+ }
101401
+ }
101402
+ ]
101403
+ },
101404
+ {
101405
+ "kind": "javascript-module",
101406
+ "path": "radio-button/radio-button-group/radio-button-group.component.js",
101407
+ "declarations": [
101408
+ {
101409
+ "kind": "class",
101410
+ "description": "It can be used as a container for one or more `sbb-radio-button`.",
101411
+ "name": "SbbRadioButtonGroupElement",
101412
+ "slots": [
101413
+ {
101414
+ "description": "Use the unnamed slot to add `sbb-radio-button` elements to the `sbb-radio-button-group`.",
101415
+ "name": ""
101292
101416
  },
101417
+ {
101418
+ "description": "Use this to provide a `sbb-error` to show an error message.",
101419
+ "name": "error"
101420
+ }
101421
+ ],
101422
+ "members": [
101293
101423
  {
101294
101424
  "kind": "field",
101295
- "name": "validity",
101425
+ "name": "role",
101296
101426
  "type": {
101297
- "text": "ValidityState"
101427
+ "text": "string"
101298
101428
  },
101299
101429
  "privacy": "public",
101300
- "description": "Returns the ValidityState object for this element.",
101430
+ "static": true,
101301
101431
  "readonly": true,
101302
- "inheritedFrom": {
101303
- "name": "SbbFormAssociatedMixin",
101304
- "module": "core/mixins/form-associated-mixin.js"
101305
- }
101432
+ "default": "'radiogroup'"
101306
101433
  },
101307
101434
  {
101308
101435
  "kind": "field",
101309
- "name": "validationMessage",
101310
- "type": {
101311
- "text": "string"
101312
- },
101436
+ "name": "events",
101313
101437
  "privacy": "public",
101314
- "description": "Returns the current error message, if available, which corresponds\nto the current validation state.\nPlease note that only one message is returned at a time (e.g. if\nmultiple validity states are invalid, only the chronologically first one\nis returned until it is fixed, at which point the next message might be\nreturned, if it is still applicable). Also, a custom validity message\n(see below) has precedence over native validation messages.",
101438
+ "static": true,
101315
101439
  "readonly": true,
101316
- "inheritedFrom": {
101317
- "name": "SbbFormAssociatedMixin",
101318
- "module": "core/mixins/form-associated-mixin.js"
101440
+ "default": "{ didChange: 'didChange', change: 'change', input: 'input', }",
101441
+ "type": {
101442
+ "text": "{\n didChange: 'didChange',\n change: 'change',\n input: 'input',\n }"
101319
101443
  }
101320
101444
  },
101321
101445
  {
101322
101446
  "kind": "field",
101323
- "name": "willValidate",
101447
+ "name": "allowEmptySelection",
101324
101448
  "type": {
101325
101449
  "text": "boolean"
101326
101450
  },
101327
101451
  "privacy": "public",
101328
- "description": "Returns true if this element will be validated\nwhen the form is submitted; false otherwise.",
101329
- "readonly": true,
101330
- "inheritedFrom": {
101331
- "name": "SbbFormAssociatedMixin",
101332
- "module": "core/mixins/form-associated-mixin.js"
101333
- }
101334
- },
101335
- {
101336
- "kind": "field",
101337
- "name": "_validityStates",
101338
- "privacy": "private",
101339
- "default": "new Map< keyof ValidityStateFlags, { flagValue: unknown; message: string } >()",
101340
- "inheritedFrom": {
101341
- "name": "SbbFormAssociatedMixin",
101342
- "module": "core/mixins/form-associated-mixin.js"
101343
- }
101452
+ "default": "false",
101453
+ "description": "Whether the radios can be deselected.",
101454
+ "attribute": "allow-empty-selection"
101344
101455
  },
101345
101456
  {
101346
101457
  "kind": "field",
101347
- "name": "formDisabled",
101458
+ "name": "required",
101348
101459
  "type": {
101349
101460
  "text": "boolean"
101350
101461
  },
101351
- "privacy": "protected",
101462
+ "privacy": "public",
101352
101463
  "default": "false",
101353
- "description": "Whenever a surrounding form or fieldset is changing its disabled state.",
101354
- "inheritedFrom": {
101355
- "name": "SbbFormAssociatedMixin",
101356
- "module": "core/mixins/form-associated-mixin.js"
101357
- }
101464
+ "description": "Whether the radio group is required.",
101465
+ "attribute": "required"
101358
101466
  },
101359
101467
  {
101360
- "kind": "method",
101361
- "name": "checkValidity",
101468
+ "kind": "field",
101469
+ "name": "value",
101362
101470
  "privacy": "public",
101363
- "return": {
101364
- "type": {
101365
- "text": "boolean"
101366
- }
101471
+ "description": "The value of the radio group.",
101472
+ "type": {
101473
+ "text": "(T = string) | null"
101367
101474
  },
101368
- "description": "Returns true if this element has no validity problems; false otherwise.\nFires an invalid event at the element in the latter case.",
101369
- "inheritedFrom": {
101370
- "name": "SbbFormAssociatedMixin",
101371
- "module": "core/mixins/form-associated-mixin.js"
101372
- }
101475
+ "attribute": "value"
101373
101476
  },
101374
101477
  {
101375
- "kind": "method",
101376
- "name": "reportValidity",
101377
- "privacy": "public",
101378
- "return": {
101379
- "type": {
101380
- "text": "boolean"
101381
- }
101478
+ "kind": "field",
101479
+ "name": "_fallbackValue",
101480
+ "type": {
101481
+ "text": "T | null"
101382
101482
  },
101383
- "description": "Returns true if this element has no validity problems; otherwise,\nreturns false, fires an invalid event at the element,\nand (if the event isn't canceled) reports the problem to the user.",
101384
- "inheritedFrom": {
101385
- "name": "SbbFormAssociatedMixin",
101386
- "module": "core/mixins/form-associated-mixin.js"
101387
- }
101483
+ "privacy": "private",
101484
+ "default": "null",
101485
+ "description": "Used to preserve the `value` in case the radios are not yet 'loaded'"
101388
101486
  },
101389
101487
  {
101390
- "kind": "method",
101391
- "name": "setCustomValidity",
101392
- "privacy": "public",
101393
- "return": {
101394
- "type": {
101395
- "text": "void"
101396
- }
101488
+ "kind": "field",
101489
+ "name": "size",
101490
+ "type": {
101491
+ "text": "SbbRadioButtonSize"
101397
101492
  },
101398
- "parameters": [
101399
- {
101400
- "name": "message",
101401
- "type": {
101402
- "text": "string"
101403
- }
101404
- }
101405
- ],
101406
- "description": "Sets the custom validity message for this element. Use the empty string\nto indicate that the element does not have a custom validity error.",
101407
- "inheritedFrom": {
101408
- "name": "SbbFormAssociatedMixin",
101409
- "module": "core/mixins/form-associated-mixin.js"
101410
- }
101493
+ "privacy": "public",
101494
+ "description": "Size variant, either xs, s or m.",
101495
+ "default": "'m' / 'xs' (lean)",
101496
+ "attribute": "size"
101411
101497
  },
101412
101498
  {
101413
- "kind": "method",
101414
- "name": "_hasDisabledAncestor",
101415
- "privacy": "private",
101416
- "return": {
101417
- "type": {
101418
- "text": "boolean"
101419
- }
101499
+ "kind": "field",
101500
+ "name": "horizontalFrom",
101501
+ "type": {
101502
+ "text": "SbbHorizontalFrom | null"
101420
101503
  },
101421
- "inheritedFrom": {
101422
- "name": "SbbFormAssociatedMixin",
101423
- "module": "core/mixins/form-associated-mixin.js"
101424
- }
101504
+ "privacy": "public",
101505
+ "default": "null",
101506
+ "description": "Overrides the behaviour of `orientation` property.",
101507
+ "attribute": "horizontal-from",
101508
+ "reflects": true
101425
101509
  },
101426
101510
  {
101427
- "kind": "method",
101428
- "name": "formState",
101429
- "privacy": "protected",
101430
- "return": {
101431
- "type": {
101432
- "text": "FormRestoreState"
101433
- }
101511
+ "kind": "field",
101512
+ "name": "orientation",
101513
+ "type": {
101514
+ "text": "SbbOrientation"
101434
101515
  },
101435
- "inheritedFrom": {
101436
- "name": "SbbFormAssociatedMixin",
101437
- "module": "core/mixins/form-associated-mixin.js"
101438
- }
101516
+ "privacy": "public",
101517
+ "default": "'horizontal'",
101518
+ "description": "Radio group's orientation, either horizontal or vertical.",
101519
+ "attribute": "orientation",
101520
+ "reflects": true
101439
101521
  },
101440
101522
  {
101441
- "kind": "method",
101442
- "name": "setValidityFlag",
101443
- "privacy": "protected",
101444
- "return": {
101445
- "type": {
101446
- "text": "void"
101447
- }
101523
+ "kind": "field",
101524
+ "name": "name",
101525
+ "type": {
101526
+ "text": "string"
101448
101527
  },
101449
- "parameters": [
101450
- {
101451
- "name": "flag",
101452
- "type": {
101453
- "text": "T"
101454
- }
101455
- },
101456
- {
101457
- "name": "message",
101458
- "type": {
101459
- "text": "string"
101460
- }
101461
- },
101462
- {
101463
- "name": "flagValue",
101464
- "optional": true,
101465
- "type": {
101466
- "text": "ValidityStateFlags[T]"
101467
- }
101468
- }
101469
- ],
101470
- "description": "Marks this element as suffering from the constraint indicated by the\nflag argument and associates the given message to it.\nNote that only one message is displayed at a time and custom messages by\nconsumers are always displayed before internal messages and internal\nmessages are displayed in the order they were added.\nTo set/define custom validity state flags, you need to extend the\nValidityState prototype (and the CustomValidityState interface).",
101471
- "inheritedFrom": {
101472
- "name": "SbbFormAssociatedMixin",
101473
- "module": "core/mixins/form-associated-mixin.js"
101474
- }
101528
+ "privacy": "public",
101529
+ "default": "`sbb-radio-button-group-${++nextId}`",
101530
+ "attribute": "name"
101531
+ },
101532
+ {
101533
+ "kind": "field",
101534
+ "name": "radioButtons",
101535
+ "type": {
101536
+ "text": "(SbbRadioButtonElement<T> | SbbRadioButtonPanelElement<T>)[]"
101537
+ },
101538
+ "privacy": "public",
101539
+ "description": "List of contained radio buttons.",
101540
+ "readonly": true
101475
101541
  },
101476
101542
  {
101477
101543
  "kind": "method",
101478
- "name": "removeValidityFlag",
101479
- "privacy": "protected",
101544
+ "name": "_onRadioChange",
101545
+ "privacy": "private",
101480
101546
  "return": {
101481
101547
  "type": {
101482
101548
  "text": "void"
@@ -101484,230 +101550,180 @@
101484
101550
  },
101485
101551
  "parameters": [
101486
101552
  {
101487
- "name": "flag",
101553
+ "name": "event",
101488
101554
  "type": {
101489
- "text": "T"
101555
+ "text": "Event"
101490
101556
  }
101491
101557
  }
101492
- ],
101493
- "description": "Removes the validity state flag entry and updates validity state.",
101494
- "inheritedFrom": {
101495
- "name": "SbbFormAssociatedMixin",
101496
- "module": "core/mixins/form-associated-mixin.js"
101497
- }
101558
+ ]
101498
101559
  },
101499
101560
  {
101500
101561
  "kind": "method",
101501
- "name": "_setInternalValidity",
101562
+ "name": "_updateRadiosName",
101502
101563
  "privacy": "private",
101503
101564
  "return": {
101504
101565
  "type": {
101505
101566
  "text": "void"
101506
101567
  }
101507
101568
  },
101508
- "inheritedFrom": {
101509
- "name": "SbbFormAssociatedMixin",
101510
- "module": "core/mixins/form-associated-mixin.js"
101511
- }
101569
+ "description": "Proxy 'name' to child radio-buttons"
101512
101570
  },
101513
101571
  {
101514
101572
  "kind": "method",
101515
- "name": "toggleState",
101516
- "privacy": "protected",
101573
+ "name": "_updateRadioState",
101574
+ "privacy": "private",
101517
101575
  "return": {
101518
101576
  "type": {
101519
101577
  "text": "void"
101520
101578
  }
101521
101579
  },
101522
- "parameters": [
101523
- {
101524
- "name": "value",
101525
- "type": {
101526
- "text": "string"
101527
- }
101528
- },
101529
- {
101530
- "name": "force",
101531
- "optional": true,
101532
- "type": {
101533
- "text": "boolean"
101534
- }
101535
- }
101536
- ],
101537
- "inheritedFrom": {
101538
- "name": "SbbElementInternalsMixin",
101539
- "module": "core/mixins/element-internals-mixin.js"
101540
- }
101580
+ "description": "Re-trigger the setter and update the checked state of the radios.\nMainly used to cover cases where the setter is called before the radios are loaded"
101541
101581
  },
101542
101582
  {
101543
101583
  "kind": "field",
101544
- "name": "_updatePromise",
101545
- "privacy": "private",
101584
+ "name": "disabled",
101585
+ "privacy": "public",
101586
+ "description": "Whether the component is disabled.",
101587
+ "default": "false",
101588
+ "type": {
101589
+ "text": "boolean"
101590
+ },
101591
+ "attribute": "disabled",
101592
+ "reflects": true,
101546
101593
  "inheritedFrom": {
101547
- "name": "SbbUpdateSchedulerMixin",
101548
- "module": "core/mixins/update-scheduler-mixin.js"
101594
+ "name": "SbbDisabledMixin",
101595
+ "module": "core/mixins/disabled-mixin.js"
101549
101596
  }
101550
101597
  },
101551
101598
  {
101552
101599
  "kind": "field",
101553
- "name": "_updateResolve",
101600
+ "name": "#disabled",
101554
101601
  "privacy": "private",
101602
+ "type": {
101603
+ "text": "boolean"
101604
+ },
101605
+ "default": "false",
101555
101606
  "inheritedFrom": {
101556
- "name": "SbbUpdateSchedulerMixin",
101557
- "module": "core/mixins/update-scheduler-mixin.js"
101607
+ "name": "SbbDisabledMixin",
101608
+ "module": "core/mixins/disabled-mixin.js"
101558
101609
  }
101559
101610
  },
101560
101611
  {
101561
101612
  "kind": "method",
101562
- "name": "startUpdate",
101613
+ "name": "isDisabledExternally",
101563
101614
  "privacy": "protected",
101564
101615
  "return": {
101565
101616
  "type": {
101566
- "text": "void"
101617
+ "text": "boolean"
101567
101618
  }
101568
101619
  },
101620
+ "description": "Will be used as 'or' check to the current disabled state.\nCan e.g. be used to read disabled state of a group.",
101569
101621
  "inheritedFrom": {
101570
- "name": "SbbUpdateSchedulerMixin",
101571
- "module": "core/mixins/update-scheduler-mixin.js"
101622
+ "name": "SbbDisabledMixin",
101623
+ "module": "core/mixins/disabled-mixin.js"
101572
101624
  }
101573
101625
  },
101574
101626
  {
101575
101627
  "kind": "method",
101576
- "name": "completeUpdate",
101628
+ "name": "toggleState",
101577
101629
  "privacy": "protected",
101578
101630
  "return": {
101579
101631
  "type": {
101580
101632
  "text": "void"
101581
101633
  }
101582
101634
  },
101583
- "inheritedFrom": {
101584
- "name": "SbbUpdateSchedulerMixin",
101585
- "module": "core/mixins/update-scheduler-mixin.js"
101586
- }
101587
- },
101588
- {
101589
- "kind": "method",
101590
- "name": "getUpdateComplete",
101591
- "privacy": "protected",
101592
- "return": {
101593
- "type": {
101594
- "text": "Promise<boolean>"
101635
+ "parameters": [
101636
+ {
101637
+ "name": "value",
101638
+ "type": {
101639
+ "text": "string"
101640
+ }
101641
+ },
101642
+ {
101643
+ "name": "force",
101644
+ "optional": true,
101645
+ "type": {
101646
+ "text": "boolean"
101647
+ }
101595
101648
  }
101596
- },
101649
+ ],
101597
101650
  "inheritedFrom": {
101598
- "name": "SbbUpdateSchedulerMixin",
101599
- "module": "core/mixins/update-scheduler-mixin.js"
101651
+ "name": "SbbElementInternalsMixin",
101652
+ "module": "core/mixins/element-internals-mixin.js"
101600
101653
  }
101601
101654
  }
101602
101655
  ],
101603
101656
  "events": [
101604
101657
  {
101605
- "name": "change",
101658
+ "name": "didChange",
101606
101659
  "type": {
101607
101660
  "text": "Event"
101608
101661
  },
101609
- "description": "The change event is fired when the user modifies the element's value. Unlike the input event, the change event is not necessarily fired for each alteration to an element's value.",
101610
- "inheritedFrom": {
101611
- "name": "SbbFormAssociatedRadioButtonMixin",
101612
- "module": "core/mixins/form-associated-radio-button-mixin.js"
101613
- }
101614
- },
101615
- {
101616
- "name": "input",
101617
- "type": {
101618
- "text": "InputEvent"
101619
- },
101620
- "description": "The input event fires when the value has been changed as a direct result of a user action.",
101621
- "inheritedFrom": {
101622
- "name": "SbbFormAssociatedRadioButtonMixin",
101623
- "module": "core/mixins/form-associated-radio-button-mixin.js"
101624
- }
101662
+ "description": "Deprecated. Mirrors change event for React. Will be removed once React properly supports change events.",
101663
+ "deprecated": "true"
101625
101664
  }
101626
101665
  ],
101627
101666
  "attributes": [
101628
101667
  {
101629
- "name": "value",
101668
+ "name": "allow-empty-selection",
101630
101669
  "type": {
101631
- "text": "T | null"
101670
+ "text": "boolean"
101632
101671
  },
101633
- "default": "null",
101634
- "description": "The value of the form element",
101635
- "fieldName": "value"
101672
+ "default": "false",
101673
+ "description": "Whether the radios can be deselected.",
101674
+ "fieldName": "allowEmptySelection"
101636
101675
  },
101637
101676
  {
101638
- "name": "color",
101677
+ "name": "required",
101639
101678
  "type": {
101640
- "text": "'white' | 'milk'"
101679
+ "text": "boolean"
101641
101680
  },
101642
- "default": "'white'",
101643
- "description": "The background color of the panel.",
101644
- "fieldName": "color",
101645
- "inheritedFrom": {
101646
- "name": "SbbPanelMixin",
101647
- "module": "core/mixins/panel-mixin.js"
101648
- }
101681
+ "default": "false",
101682
+ "description": "Whether the radio group is required.",
101683
+ "fieldName": "required"
101649
101684
  },
101650
101685
  {
101651
- "name": "borderless",
101686
+ "name": "value",
101687
+ "description": "The value of the radio group.",
101652
101688
  "type": {
101653
- "text": "boolean"
101689
+ "text": "T | null"
101654
101690
  },
101655
- "default": "false",
101656
- "description": "Whether the unselected panel has a border.",
101657
- "fieldName": "borderless",
101658
- "inheritedFrom": {
101659
- "name": "SbbPanelMixin",
101660
- "module": "core/mixins/panel-mixin.js"
101661
- }
101691
+ "fieldName": "value"
101662
101692
  },
101663
101693
  {
101664
101694
  "name": "size",
101665
101695
  "type": {
101666
- "text": "SbbCheckboxSize | SbbRadioButtonSize"
101696
+ "text": "SbbRadioButtonSize"
101667
101697
  },
101668
101698
  "description": "Size variant, either xs, s or m.",
101669
101699
  "default": "'m' / 'xs' (lean)",
101670
- "fieldName": "size",
101671
- "inheritedFrom": {
101672
- "name": "SbbPanelMixin",
101673
- "module": "core/mixins/panel-mixin.js"
101674
- }
101700
+ "fieldName": "size"
101675
101701
  },
101676
101702
  {
101677
- "name": "allow-empty-selection",
101678
- "description": "Whether the radio can be deselected.",
101703
+ "name": "horizontal-from",
101679
101704
  "type": {
101680
- "text": "boolean"
101705
+ "text": "SbbHorizontalFrom | null"
101681
101706
  },
101682
- "fieldName": "allowEmptySelection",
101683
- "inheritedFrom": {
101684
- "name": "SbbRadioButtonCommonElementMixin",
101685
- "module": "radio-button/common/radio-button-common.js"
101686
- }
101707
+ "default": "null",
101708
+ "description": "Overrides the behaviour of `orientation` property.",
101709
+ "fieldName": "horizontalFrom"
101687
101710
  },
101688
101711
  {
101689
- "name": "checked",
101690
- "description": "Whether the radio button is checked.",
101712
+ "name": "orientation",
101691
101713
  "type": {
101692
- "text": "boolean"
101714
+ "text": "SbbOrientation"
101693
101715
  },
101694
- "fieldName": "checked",
101695
- "inheritedFrom": {
101696
- "name": "SbbFormAssociatedRadioButtonMixin",
101697
- "module": "core/mixins/form-associated-radio-button-mixin.js"
101698
- }
101716
+ "default": "'horizontal'",
101717
+ "description": "Radio group's orientation, either horizontal or vertical.",
101718
+ "fieldName": "orientation"
101699
101719
  },
101700
101720
  {
101701
101721
  "name": "name",
101702
- "description": "Name of the form element. Will be read from name attribute.",
101703
101722
  "type": {
101704
101723
  "text": "string"
101705
101724
  },
101706
- "fieldName": "name",
101707
- "inheritedFrom": {
101708
- "name": "SbbFormAssociatedMixin",
101709
- "module": "core/mixins/form-associated-mixin.js"
101710
- }
101725
+ "default": "`sbb-radio-button-group-${++nextId}`",
101726
+ "fieldName": "name"
101711
101727
  },
101712
101728
  {
101713
101729
  "name": "disabled",
@@ -101721,31 +101737,15 @@
101721
101737
  "name": "SbbDisabledMixin",
101722
101738
  "module": "core/mixins/disabled-mixin.js"
101723
101739
  }
101724
- },
101725
- {
101726
- "name": "required",
101727
- "description": "Whether the component is required.",
101728
- "type": {
101729
- "text": "boolean"
101730
- },
101731
- "fieldName": "required",
101732
- "inheritedFrom": {
101733
- "name": "SbbRequiredMixin",
101734
- "module": "core/mixins/required-mixin.js"
101735
- }
101736
101740
  }
101737
101741
  ],
101738
101742
  "mixins": [
101739
101743
  {
101740
- "name": "SbbPanelMixin",
101744
+ "name": "SbbDisabledMixin",
101741
101745
  "module": "core/mixins.js"
101742
101746
  },
101743
101747
  {
101744
- "name": "SbbRadioButtonCommonElementMixin",
101745
- "module": "radio-button/common.js"
101746
- },
101747
- {
101748
- "name": "SbbUpdateSchedulerMixin",
101748
+ "name": "SbbElementInternalsMixin",
101749
101749
  "module": "core/mixins.js"
101750
101750
  }
101751
101751
  ],
@@ -101754,25 +101754,25 @@
101754
101754
  "package": "lit"
101755
101755
  },
101756
101756
  "classGenerics": "T = string",
101757
- "tagName": "sbb-radio-button-panel",
101757
+ "tagName": "sbb-radio-button-group",
101758
101758
  "customElement": true
101759
101759
  }
101760
101760
  ],
101761
101761
  "exports": [
101762
101762
  {
101763
101763
  "kind": "js",
101764
- "name": "SbbRadioButtonPanelElement",
101764
+ "name": "SbbRadioButtonGroupElement",
101765
101765
  "declaration": {
101766
- "name": "SbbRadioButtonPanelElement",
101767
- "module": "radio-button/radio-button-panel/radio-button-panel.component.js"
101766
+ "name": "SbbRadioButtonGroupElement",
101767
+ "module": "radio-button/radio-button-group/radio-button-group.component.js"
101768
101768
  }
101769
101769
  },
101770
101770
  {
101771
101771
  "kind": "custom-element-definition",
101772
- "name": "sbb-radio-button-panel",
101772
+ "name": "sbb-radio-button-group",
101773
101773
  "declaration": {
101774
- "name": "SbbRadioButtonPanelElement",
101775
- "module": "radio-button/radio-button-panel/radio-button-panel.component.js"
101774
+ "name": "SbbRadioButtonGroupElement",
101775
+ "module": "radio-button/radio-button-group/radio-button-group.component.js"
101776
101776
  }
101777
101777
  }
101778
101778
  ]
@@ -108215,6 +108215,261 @@
108215
108215
  }
108216
108216
  ]
108217
108217
  },
108218
+ {
108219
+ "kind": "javascript-module",
108220
+ "path": "teaser-product/teaser-product-static/teaser-product-static.component.js",
108221
+ "declarations": [
108222
+ {
108223
+ "kind": "class",
108224
+ "description": "Displays a text and a footnote, combined with an image, to tease a product.",
108225
+ "name": "SbbTeaserProductStaticElement",
108226
+ "cssProperties": [
108227
+ {
108228
+ "description": "At which percentage the background should start getting transparent.",
108229
+ "name": "--sbb-teaser-product-background-gradient-start",
108230
+ "default": "25%"
108231
+ },
108232
+ {
108233
+ "description": "At which percentage the background should be fully transparent.",
108234
+ "name": "--sbb-teaser-product-background-gradient-end",
108235
+ "default": "75%"
108236
+ }
108237
+ ],
108238
+ "slots": [
108239
+ {
108240
+ "description": "Use this slot to provide the main content.",
108241
+ "name": ""
108242
+ },
108243
+ {
108244
+ "description": "Use this slot to provide an image or a `sbb-image` as a background.",
108245
+ "name": "image"
108246
+ },
108247
+ {
108248
+ "description": "Use this slot to provide a footnote.",
108249
+ "name": "footnote"
108250
+ }
108251
+ ],
108252
+ "members": [
108253
+ {
108254
+ "kind": "field",
108255
+ "name": "imageAlignment",
108256
+ "type": {
108257
+ "text": "'after' | 'before'"
108258
+ },
108259
+ "privacy": "public",
108260
+ "default": "'after'",
108261
+ "description": "Whether the fully visible part of the image is aligned 'before' or 'after' the content.\nOnly relevant starting from large breakpoint.",
108262
+ "attribute": "image-alignment",
108263
+ "reflects": true,
108264
+ "inheritedFrom": {
108265
+ "name": "SbbTeaserProductCommonElementMixin",
108266
+ "module": "teaser-product/common/teaser-product-common.js"
108267
+ }
108268
+ },
108269
+ {
108270
+ "kind": "method",
108271
+ "name": "renderTemplate",
108272
+ "privacy": "protected",
108273
+ "return": {
108274
+ "type": {
108275
+ "text": "TemplateResult"
108276
+ }
108277
+ },
108278
+ "description": "Override this method to render the component template.",
108279
+ "inheritedFrom": {
108280
+ "name": "SbbActionBaseElement",
108281
+ "module": "core/base-elements/action-base-element.js"
108282
+ }
108283
+ },
108284
+ {
108285
+ "kind": "field",
108286
+ "name": "negative",
108287
+ "type": {
108288
+ "text": "boolean"
108289
+ },
108290
+ "privacy": "public",
108291
+ "default": "false",
108292
+ "description": "Negative coloring variant flag.",
108293
+ "attribute": "negative",
108294
+ "reflects": true,
108295
+ "inheritedFrom": {
108296
+ "name": "SbbNegativeMixin",
108297
+ "module": "core/mixins/negative-mixin.js"
108298
+ }
108299
+ },
108300
+ {
108301
+ "kind": "method",
108302
+ "name": "toggleState",
108303
+ "privacy": "protected",
108304
+ "return": {
108305
+ "type": {
108306
+ "text": "void"
108307
+ }
108308
+ },
108309
+ "parameters": [
108310
+ {
108311
+ "name": "value",
108312
+ "type": {
108313
+ "text": "string"
108314
+ }
108315
+ },
108316
+ {
108317
+ "name": "force",
108318
+ "optional": true,
108319
+ "type": {
108320
+ "text": "boolean"
108321
+ }
108322
+ }
108323
+ ],
108324
+ "inheritedFrom": {
108325
+ "name": "SbbActionBaseElement",
108326
+ "module": "core/base-elements/action-base-element.js"
108327
+ }
108328
+ },
108329
+ {
108330
+ "kind": "field",
108331
+ "name": "maybeDisabled",
108332
+ "type": {
108333
+ "text": "boolean | undefined"
108334
+ },
108335
+ "privacy": "protected",
108336
+ "readonly": true,
108337
+ "inheritedFrom": {
108338
+ "name": "SbbActionBaseElement",
108339
+ "module": "core/base-elements/action-base-element.js"
108340
+ }
108341
+ },
108342
+ {
108343
+ "kind": "field",
108344
+ "name": "maybeDisabledInteractive",
108345
+ "type": {
108346
+ "text": "boolean | undefined"
108347
+ },
108348
+ "privacy": "protected",
108349
+ "readonly": true,
108350
+ "inheritedFrom": {
108351
+ "name": "SbbActionBaseElement",
108352
+ "module": "core/base-elements/action-base-element.js"
108353
+ }
108354
+ },
108355
+ {
108356
+ "kind": "method",
108357
+ "name": "setupBaseEventHandlers",
108358
+ "privacy": "protected",
108359
+ "return": {
108360
+ "type": {
108361
+ "text": "void"
108362
+ }
108363
+ },
108364
+ "inheritedFrom": {
108365
+ "name": "SbbActionBaseElement",
108366
+ "module": "core/base-elements/action-base-element.js"
108367
+ }
108368
+ }
108369
+ ],
108370
+ "mixins": [
108371
+ {
108372
+ "name": "SbbTeaserProductCommonElementMixin",
108373
+ "module": "teaser-product/common.js"
108374
+ }
108375
+ ],
108376
+ "superclass": {
108377
+ "name": "SbbActionBaseElement",
108378
+ "module": "core/base-elements.js"
108379
+ },
108380
+ "tagName": "sbb-teaser-product-static",
108381
+ "customElement": true,
108382
+ "attributes": [
108383
+ {
108384
+ "name": "image-alignment",
108385
+ "type": {
108386
+ "text": "'after' | 'before'"
108387
+ },
108388
+ "default": "'after'",
108389
+ "description": "Whether the fully visible part of the image is aligned 'before' or 'after' the content.\nOnly relevant starting from large breakpoint.",
108390
+ "fieldName": "imageAlignment",
108391
+ "inheritedFrom": {
108392
+ "name": "SbbTeaserProductCommonElementMixin",
108393
+ "module": "teaser-product/common/teaser-product-common.js"
108394
+ }
108395
+ },
108396
+ {
108397
+ "name": "negative",
108398
+ "type": {
108399
+ "text": "boolean"
108400
+ },
108401
+ "default": "false",
108402
+ "description": "Negative coloring variant flag.",
108403
+ "fieldName": "negative",
108404
+ "inheritedFrom": {
108405
+ "name": "SbbNegativeMixin",
108406
+ "module": "core/mixins/negative-mixin.js"
108407
+ }
108408
+ }
108409
+ ]
108410
+ }
108411
+ ],
108412
+ "exports": [
108413
+ {
108414
+ "kind": "js",
108415
+ "name": "SbbTeaserProductStaticElement",
108416
+ "declaration": {
108417
+ "name": "SbbTeaserProductStaticElement",
108418
+ "module": "teaser-product/teaser-product-static/teaser-product-static.component.js"
108419
+ }
108420
+ },
108421
+ {
108422
+ "kind": "custom-element-definition",
108423
+ "name": "sbb-teaser-product-static",
108424
+ "declaration": {
108425
+ "name": "SbbTeaserProductStaticElement",
108426
+ "module": "teaser-product/teaser-product-static/teaser-product-static.component.js"
108427
+ }
108428
+ }
108429
+ ]
108430
+ },
108431
+ {
108432
+ "kind": "javascript-module",
108433
+ "path": "timetable-form/timetable-form/timetable-form.component.js",
108434
+ "declarations": [
108435
+ {
108436
+ "kind": "class",
108437
+ "description": "Serves as a building block of a sbb 'timetable-form'.\nIt automatically handles the styles and part of its behaviors",
108438
+ "name": "SbbTimetableFormElement",
108439
+ "slots": [
108440
+ {
108441
+ "description": "Use the unnamed slot to add content to the 'timetable-form'",
108442
+ "name": ""
108443
+ }
108444
+ ],
108445
+ "members": [],
108446
+ "superclass": {
108447
+ "name": "LitElement",
108448
+ "package": "lit"
108449
+ },
108450
+ "tagName": "sbb-timetable-form",
108451
+ "customElement": true
108452
+ }
108453
+ ],
108454
+ "exports": [
108455
+ {
108456
+ "kind": "js",
108457
+ "name": "SbbTimetableFormElement",
108458
+ "declaration": {
108459
+ "name": "SbbTimetableFormElement",
108460
+ "module": "timetable-form/timetable-form/timetable-form.component.js"
108461
+ }
108462
+ },
108463
+ {
108464
+ "kind": "custom-element-definition",
108465
+ "name": "sbb-timetable-form",
108466
+ "declaration": {
108467
+ "name": "SbbTimetableFormElement",
108468
+ "module": "timetable-form/timetable-form/timetable-form.component.js"
108469
+ }
108470
+ }
108471
+ ]
108472
+ },
108218
108473
  {
108219
108474
  "kind": "javascript-module",
108220
108475
  "path": "teaser-product/teaser-product/teaser-product.component.js",
@@ -108655,261 +108910,6 @@
108655
108910
  }
108656
108911
  ]
108657
108912
  },
108658
- {
108659
- "kind": "javascript-module",
108660
- "path": "teaser-product/teaser-product-static/teaser-product-static.component.js",
108661
- "declarations": [
108662
- {
108663
- "kind": "class",
108664
- "description": "Displays a text and a footnote, combined with an image, to tease a product.",
108665
- "name": "SbbTeaserProductStaticElement",
108666
- "cssProperties": [
108667
- {
108668
- "description": "At which percentage the background should start getting transparent.",
108669
- "name": "--sbb-teaser-product-background-gradient-start",
108670
- "default": "25%"
108671
- },
108672
- {
108673
- "description": "At which percentage the background should be fully transparent.",
108674
- "name": "--sbb-teaser-product-background-gradient-end",
108675
- "default": "75%"
108676
- }
108677
- ],
108678
- "slots": [
108679
- {
108680
- "description": "Use this slot to provide the main content.",
108681
- "name": ""
108682
- },
108683
- {
108684
- "description": "Use this slot to provide an image or a `sbb-image` as a background.",
108685
- "name": "image"
108686
- },
108687
- {
108688
- "description": "Use this slot to provide a footnote.",
108689
- "name": "footnote"
108690
- }
108691
- ],
108692
- "members": [
108693
- {
108694
- "kind": "field",
108695
- "name": "imageAlignment",
108696
- "type": {
108697
- "text": "'after' | 'before'"
108698
- },
108699
- "privacy": "public",
108700
- "default": "'after'",
108701
- "description": "Whether the fully visible part of the image is aligned 'before' or 'after' the content.\nOnly relevant starting from large breakpoint.",
108702
- "attribute": "image-alignment",
108703
- "reflects": true,
108704
- "inheritedFrom": {
108705
- "name": "SbbTeaserProductCommonElementMixin",
108706
- "module": "teaser-product/common/teaser-product-common.js"
108707
- }
108708
- },
108709
- {
108710
- "kind": "method",
108711
- "name": "renderTemplate",
108712
- "privacy": "protected",
108713
- "return": {
108714
- "type": {
108715
- "text": "TemplateResult"
108716
- }
108717
- },
108718
- "description": "Override this method to render the component template.",
108719
- "inheritedFrom": {
108720
- "name": "SbbActionBaseElement",
108721
- "module": "core/base-elements/action-base-element.js"
108722
- }
108723
- },
108724
- {
108725
- "kind": "field",
108726
- "name": "negative",
108727
- "type": {
108728
- "text": "boolean"
108729
- },
108730
- "privacy": "public",
108731
- "default": "false",
108732
- "description": "Negative coloring variant flag.",
108733
- "attribute": "negative",
108734
- "reflects": true,
108735
- "inheritedFrom": {
108736
- "name": "SbbNegativeMixin",
108737
- "module": "core/mixins/negative-mixin.js"
108738
- }
108739
- },
108740
- {
108741
- "kind": "method",
108742
- "name": "toggleState",
108743
- "privacy": "protected",
108744
- "return": {
108745
- "type": {
108746
- "text": "void"
108747
- }
108748
- },
108749
- "parameters": [
108750
- {
108751
- "name": "value",
108752
- "type": {
108753
- "text": "string"
108754
- }
108755
- },
108756
- {
108757
- "name": "force",
108758
- "optional": true,
108759
- "type": {
108760
- "text": "boolean"
108761
- }
108762
- }
108763
- ],
108764
- "inheritedFrom": {
108765
- "name": "SbbActionBaseElement",
108766
- "module": "core/base-elements/action-base-element.js"
108767
- }
108768
- },
108769
- {
108770
- "kind": "field",
108771
- "name": "maybeDisabled",
108772
- "type": {
108773
- "text": "boolean | undefined"
108774
- },
108775
- "privacy": "protected",
108776
- "readonly": true,
108777
- "inheritedFrom": {
108778
- "name": "SbbActionBaseElement",
108779
- "module": "core/base-elements/action-base-element.js"
108780
- }
108781
- },
108782
- {
108783
- "kind": "field",
108784
- "name": "maybeDisabledInteractive",
108785
- "type": {
108786
- "text": "boolean | undefined"
108787
- },
108788
- "privacy": "protected",
108789
- "readonly": true,
108790
- "inheritedFrom": {
108791
- "name": "SbbActionBaseElement",
108792
- "module": "core/base-elements/action-base-element.js"
108793
- }
108794
- },
108795
- {
108796
- "kind": "method",
108797
- "name": "setupBaseEventHandlers",
108798
- "privacy": "protected",
108799
- "return": {
108800
- "type": {
108801
- "text": "void"
108802
- }
108803
- },
108804
- "inheritedFrom": {
108805
- "name": "SbbActionBaseElement",
108806
- "module": "core/base-elements/action-base-element.js"
108807
- }
108808
- }
108809
- ],
108810
- "mixins": [
108811
- {
108812
- "name": "SbbTeaserProductCommonElementMixin",
108813
- "module": "teaser-product/common.js"
108814
- }
108815
- ],
108816
- "superclass": {
108817
- "name": "SbbActionBaseElement",
108818
- "module": "core/base-elements.js"
108819
- },
108820
- "tagName": "sbb-teaser-product-static",
108821
- "customElement": true,
108822
- "attributes": [
108823
- {
108824
- "name": "image-alignment",
108825
- "type": {
108826
- "text": "'after' | 'before'"
108827
- },
108828
- "default": "'after'",
108829
- "description": "Whether the fully visible part of the image is aligned 'before' or 'after' the content.\nOnly relevant starting from large breakpoint.",
108830
- "fieldName": "imageAlignment",
108831
- "inheritedFrom": {
108832
- "name": "SbbTeaserProductCommonElementMixin",
108833
- "module": "teaser-product/common/teaser-product-common.js"
108834
- }
108835
- },
108836
- {
108837
- "name": "negative",
108838
- "type": {
108839
- "text": "boolean"
108840
- },
108841
- "default": "false",
108842
- "description": "Negative coloring variant flag.",
108843
- "fieldName": "negative",
108844
- "inheritedFrom": {
108845
- "name": "SbbNegativeMixin",
108846
- "module": "core/mixins/negative-mixin.js"
108847
- }
108848
- }
108849
- ]
108850
- }
108851
- ],
108852
- "exports": [
108853
- {
108854
- "kind": "js",
108855
- "name": "SbbTeaserProductStaticElement",
108856
- "declaration": {
108857
- "name": "SbbTeaserProductStaticElement",
108858
- "module": "teaser-product/teaser-product-static/teaser-product-static.component.js"
108859
- }
108860
- },
108861
- {
108862
- "kind": "custom-element-definition",
108863
- "name": "sbb-teaser-product-static",
108864
- "declaration": {
108865
- "name": "SbbTeaserProductStaticElement",
108866
- "module": "teaser-product/teaser-product-static/teaser-product-static.component.js"
108867
- }
108868
- }
108869
- ]
108870
- },
108871
- {
108872
- "kind": "javascript-module",
108873
- "path": "timetable-form/timetable-form/timetable-form.component.js",
108874
- "declarations": [
108875
- {
108876
- "kind": "class",
108877
- "description": "Serves as a building block of a sbb 'timetable-form'.\nIt automatically handles the styles and part of its behaviors",
108878
- "name": "SbbTimetableFormElement",
108879
- "slots": [
108880
- {
108881
- "description": "Use the unnamed slot to add content to the 'timetable-form'",
108882
- "name": ""
108883
- }
108884
- ],
108885
- "members": [],
108886
- "superclass": {
108887
- "name": "LitElement",
108888
- "package": "lit"
108889
- },
108890
- "tagName": "sbb-timetable-form",
108891
- "customElement": true
108892
- }
108893
- ],
108894
- "exports": [
108895
- {
108896
- "kind": "js",
108897
- "name": "SbbTimetableFormElement",
108898
- "declaration": {
108899
- "name": "SbbTimetableFormElement",
108900
- "module": "timetable-form/timetable-form/timetable-form.component.js"
108901
- }
108902
- },
108903
- {
108904
- "kind": "custom-element-definition",
108905
- "name": "sbb-timetable-form",
108906
- "declaration": {
108907
- "name": "SbbTimetableFormElement",
108908
- "module": "timetable-form/timetable-form/timetable-form.component.js"
108909
- }
108910
- }
108911
- ]
108912
- },
108913
108913
  {
108914
108914
  "kind": "javascript-module",
108915
108915
  "path": "timetable-form/timetable-form-details/timetable-form-details.component.js",