@sbb-esta/lyne-elements-dev 4.11.0-dev.1776118232 → 4.11.0-dev.1776143908

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (2) hide show
  1. package/custom-elements.json +1387 -1387
  2. package/package.json +2 -2
@@ -43917,12 +43917,12 @@
43917
43917
  },
43918
43918
  {
43919
43919
  "kind": "javascript-module",
43920
- "path": "button/secondary-button-link/secondary-button-link.component.js",
43920
+ "path": "button/secondary-button/secondary-button.component.js",
43921
43921
  "declarations": [
43922
43922
  {
43923
43923
  "kind": "class",
43924
- "description": "It displays a button enhanced with the SBB Design in the 'primary' variant, which will behave as a link.",
43925
- "name": "SbbSecondaryButtonLinkElement",
43924
+ "description": "It displays a button enhanced with the SBB Design in the 'secondary' variant.",
43925
+ "name": "SbbSecondaryButtonElement",
43926
43926
  "cssProperties": [
43927
43927
  {
43928
43928
  "description": "The delay before the loading animation starts, when setting the button into loading state.",
@@ -43932,7 +43932,7 @@
43932
43932
  ],
43933
43933
  "slots": [
43934
43934
  {
43935
- "description": "Use the unnamed slot to add content to the secondary-button-link.",
43935
+ "description": "Use the unnamed slot to add content to the secondary-button.",
43936
43936
  "name": ""
43937
43937
  },
43938
43938
  {
@@ -43950,7 +43950,7 @@
43950
43950
  "privacy": "public",
43951
43951
  "static": true,
43952
43952
  "readonly": true,
43953
- "default": "'sbb-secondary-button-link'",
43953
+ "default": "'sbb-secondary-button'",
43954
43954
  "inheritedFrom": {
43955
43955
  "name": "SbbElement",
43956
43956
  "module": "core/base-elements/element.js"
@@ -44147,151 +44147,479 @@
44147
44147
  },
44148
44148
  {
44149
44149
  "kind": "field",
44150
- "name": "href",
44150
+ "name": "_elementsOnWhichEnterPressTriggersSubmit",
44151
+ "type": {
44152
+ "text": "array"
44153
+ },
44154
+ "privacy": "private",
44155
+ "readonly": true,
44156
+ "default": "[ 'input', 'sbb-date-input', 'sbb-time-input', ]",
44157
+ "inheritedFrom": {
44158
+ "name": "SbbButtonBaseElement",
44159
+ "module": "core/base-elements/button-base-element.js"
44160
+ }
44161
+ },
44162
+ {
44163
+ "kind": "field",
44164
+ "name": "value",
44151
44165
  "type": {
44152
44166
  "text": "string"
44153
44167
  },
44154
44168
  "privacy": "public",
44155
44169
  "default": "''",
44156
- "description": "The href value you want to link to.",
44157
- "attribute": "href",
44158
- "reflects": true,
44170
+ "description": "Value of the form element.",
44171
+ "attribute": "value",
44159
44172
  "inheritedFrom": {
44160
- "name": "SbbLinkBaseElement",
44161
- "module": "core/base-elements/link-base-element.js"
44173
+ "name": "SbbButtonBaseElement",
44174
+ "module": "core/base-elements/button-base-element.js"
44162
44175
  }
44163
44176
  },
44164
44177
  {
44165
44178
  "kind": "field",
44166
- "name": "target",
44179
+ "name": "type",
44180
+ "privacy": "public",
44181
+ "description": "The type attribute to use for the button.",
44182
+ "default": "'button'",
44167
44183
  "type": {
44168
- "text": "LinkTargetType | string"
44184
+ "text": "SbbButtonType"
44185
+ },
44186
+ "attribute": "type",
44187
+ "inheritedFrom": {
44188
+ "name": "SbbButtonBaseElement",
44189
+ "module": "core/base-elements/button-base-element.js"
44190
+ }
44191
+ },
44192
+ {
44193
+ "kind": "field",
44194
+ "name": "form",
44195
+ "type": {
44196
+ "text": "HTMLFormElement | null"
44169
44197
  },
44170
44198
  "privacy": "public",
44171
- "default": "''",
44172
- "description": "Where to display the linked URL.",
44173
- "attribute": "target",
44174
- "reflects": true,
44199
+ "description": "The `<form>` element to associate the button with.",
44200
+ "attribute": "form",
44175
44201
  "inheritedFrom": {
44176
- "name": "SbbLinkBaseElement",
44177
- "module": "core/base-elements/link-base-element.js"
44202
+ "name": "SbbButtonBaseElement",
44203
+ "module": "core/base-elements/button-base-element.js"
44178
44204
  }
44179
44205
  },
44180
44206
  {
44181
44207
  "kind": "field",
44182
- "name": "rel",
44208
+ "name": "_formId",
44183
44209
  "type": {
44184
44210
  "text": "string"
44185
44211
  },
44186
- "privacy": "public",
44212
+ "privacy": "private",
44187
44213
  "default": "''",
44188
- "description": "The relationship of the linked URL as space-separated link types.",
44189
- "attribute": "rel",
44190
- "reflects": true,
44191
44214
  "inheritedFrom": {
44192
- "name": "SbbLinkBaseElement",
44193
- "module": "core/base-elements/link-base-element.js"
44215
+ "name": "SbbButtonBaseElement",
44216
+ "module": "core/base-elements/button-base-element.js"
44194
44217
  }
44195
44218
  },
44196
44219
  {
44197
44220
  "kind": "field",
44198
- "name": "download",
44221
+ "name": "_handleButtonClick",
44222
+ "privacy": "private",
44223
+ "inheritedFrom": {
44224
+ "name": "SbbButtonBaseElement",
44225
+ "module": "core/base-elements/button-base-element.js"
44226
+ }
44227
+ },
44228
+ {
44229
+ "kind": "method",
44230
+ "name": "_requestSubmit",
44231
+ "privacy": "private",
44232
+ "return": {
44233
+ "type": {
44234
+ "text": "void"
44235
+ }
44236
+ },
44237
+ "parameters": [
44238
+ {
44239
+ "name": "form",
44240
+ "type": {
44241
+ "text": "HTMLFormElement"
44242
+ }
44243
+ }
44244
+ ],
44245
+ "inheritedFrom": {
44246
+ "name": "SbbButtonBaseElement",
44247
+ "module": "core/base-elements/button-base-element.js"
44248
+ }
44249
+ },
44250
+ {
44251
+ "kind": "field",
44252
+ "name": "_formKeyDown",
44253
+ "privacy": "private",
44254
+ "inheritedFrom": {
44255
+ "name": "SbbButtonBaseElement",
44256
+ "module": "core/base-elements/button-base-element.js"
44257
+ }
44258
+ },
44259
+ {
44260
+ "kind": "field",
44261
+ "name": "formAssociated",
44199
44262
  "type": {
44200
44263
  "text": "boolean"
44201
44264
  },
44202
44265
  "privacy": "public",
44203
- "default": "false",
44204
- "description": "Whether the browser will show the download dialog on click.",
44205
- "attribute": "download",
44206
- "reflects": true,
44266
+ "static": true,
44267
+ "default": "true",
44207
44268
  "inheritedFrom": {
44208
- "name": "SbbLinkBaseElement",
44209
- "module": "core/base-elements/link-base-element.js"
44269
+ "name": "SbbFormAssociatedMixin",
44270
+ "module": "core/mixins/form-associated-mixin.js"
44210
44271
  }
44211
44272
  },
44212
44273
  {
44213
44274
  "kind": "field",
44214
- "name": "accessibilityLabel",
44275
+ "name": "name",
44276
+ "privacy": "public",
44277
+ "description": "Name of the form element. Will be read from name attribute.",
44215
44278
  "type": {
44216
44279
  "text": "string"
44217
44280
  },
44281
+ "attribute": "name",
44282
+ "inheritedFrom": {
44283
+ "name": "SbbFormAssociatedMixin",
44284
+ "module": "core/mixins/form-associated-mixin.js"
44285
+ }
44286
+ },
44287
+ {
44288
+ "kind": "field",
44289
+ "name": "validity",
44290
+ "type": {
44291
+ "text": "ValidityState"
44292
+ },
44218
44293
  "privacy": "public",
44219
- "default": "''",
44220
- "description": "This will be forwarded as aria-label to the inner anchor element.",
44221
- "attribute": "accessibility-label",
44294
+ "description": "Returns the ValidityState object for this element.",
44295
+ "readonly": true,
44222
44296
  "inheritedFrom": {
44223
- "name": "SbbLinkBaseElement",
44224
- "module": "core/base-elements/link-base-element.js"
44297
+ "name": "SbbFormAssociatedMixin",
44298
+ "module": "core/mixins/form-associated-mixin.js"
44225
44299
  }
44226
44300
  },
44227
44301
  {
44228
44302
  "kind": "field",
44229
- "name": "accessibilityCurrent",
44303
+ "name": "validationMessage",
44230
44304
  "type": {
44231
44305
  "text": "string"
44232
44306
  },
44233
44307
  "privacy": "public",
44234
- "default": "''",
44235
- "description": "This will be forwarded as aria-current to the inner anchor element.",
44236
- "attribute": "accessibility-current",
44308
+ "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.",
44309
+ "readonly": true,
44237
44310
  "inheritedFrom": {
44238
- "name": "SbbLinkBaseElement",
44239
- "module": "core/base-elements/link-base-element.js"
44311
+ "name": "SbbFormAssociatedMixin",
44312
+ "module": "core/mixins/form-associated-mixin.js"
44240
44313
  }
44241
44314
  },
44242
44315
  {
44243
44316
  "kind": "field",
44244
- "name": "language",
44245
- "privacy": "protected",
44246
- "default": "new SbbLanguageController(this)",
44317
+ "name": "willValidate",
44318
+ "type": {
44319
+ "text": "boolean"
44320
+ },
44321
+ "privacy": "public",
44322
+ "description": "Returns true if this element will be validated\nwhen the form is submitted; false otherwise.",
44323
+ "readonly": true,
44247
44324
  "inheritedFrom": {
44248
- "name": "SbbLinkBaseElement",
44249
- "module": "core/base-elements/link-base-element.js"
44325
+ "name": "SbbFormAssociatedMixin",
44326
+ "module": "core/mixins/form-associated-mixin.js"
44250
44327
  }
44251
44328
  },
44252
44329
  {
44253
44330
  "kind": "field",
44254
- "name": "anchorRole",
44331
+ "name": "_validityStates",
44332
+ "privacy": "private",
44333
+ "default": "new Map< keyof ValidityStateFlags, { flagValue: unknown; message: string } >()",
44334
+ "inheritedFrom": {
44335
+ "name": "SbbFormAssociatedMixin",
44336
+ "module": "core/mixins/form-associated-mixin.js"
44337
+ }
44338
+ },
44339
+ {
44340
+ "kind": "field",
44341
+ "name": "formDisabled",
44255
44342
  "type": {
44256
- "text": "string | null"
44343
+ "text": "boolean"
44257
44344
  },
44258
44345
  "privacy": "protected",
44259
- "readonly": true,
44260
- "default": "null",
44346
+ "default": "false",
44347
+ "description": "Whenever a surrounding form or fieldset is changing its disabled state.",
44261
44348
  "inheritedFrom": {
44262
- "name": "SbbLinkBaseElement",
44263
- "module": "core/base-elements/link-base-element.js"
44349
+ "name": "SbbFormAssociatedMixin",
44350
+ "module": "core/mixins/form-associated-mixin.js"
44264
44351
  }
44265
44352
  },
44266
44353
  {
44267
- "kind": "field",
44268
- "name": "_evaluateRelAttribute",
44354
+ "kind": "method",
44355
+ "name": "checkValidity",
44356
+ "privacy": "public",
44357
+ "return": {
44358
+ "type": {
44359
+ "text": "boolean"
44360
+ }
44361
+ },
44362
+ "description": "Returns true if this element has no validity problems; false otherwise.\nFires an invalid event at the element in the latter case.",
44363
+ "inheritedFrom": {
44364
+ "name": "SbbFormAssociatedMixin",
44365
+ "module": "core/mixins/form-associated-mixin.js"
44366
+ }
44367
+ },
44368
+ {
44369
+ "kind": "method",
44370
+ "name": "reportValidity",
44371
+ "privacy": "public",
44372
+ "return": {
44373
+ "type": {
44374
+ "text": "boolean"
44375
+ }
44376
+ },
44377
+ "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.",
44378
+ "inheritedFrom": {
44379
+ "name": "SbbFormAssociatedMixin",
44380
+ "module": "core/mixins/form-associated-mixin.js"
44381
+ }
44382
+ },
44383
+ {
44384
+ "kind": "method",
44385
+ "name": "setCustomValidity",
44386
+ "privacy": "public",
44387
+ "return": {
44388
+ "type": {
44389
+ "text": "void"
44390
+ }
44391
+ },
44392
+ "parameters": [
44393
+ {
44394
+ "name": "message",
44395
+ "type": {
44396
+ "text": "string"
44397
+ }
44398
+ }
44399
+ ],
44400
+ "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.",
44401
+ "inheritedFrom": {
44402
+ "name": "SbbFormAssociatedMixin",
44403
+ "module": "core/mixins/form-associated-mixin.js"
44404
+ }
44405
+ },
44406
+ {
44407
+ "kind": "method",
44408
+ "name": "_hasDisabledAncestor",
44269
44409
  "privacy": "private",
44410
+ "return": {
44411
+ "type": {
44412
+ "text": "boolean"
44413
+ }
44414
+ },
44270
44415
  "inheritedFrom": {
44271
- "name": "SbbLinkBaseElement",
44272
- "module": "core/base-elements/link-base-element.js"
44416
+ "name": "SbbFormAssociatedMixin",
44417
+ "module": "core/mixins/form-associated-mixin.js"
44273
44418
  }
44274
44419
  },
44275
44420
  {
44276
44421
  "kind": "method",
44277
- "name": "renderLink",
44422
+ "name": "updateFormValue",
44278
44423
  "privacy": "protected",
44279
44424
  "return": {
44280
44425
  "type": {
44281
- "text": "TemplateResult"
44426
+ "text": "void"
44427
+ }
44428
+ },
44429
+ "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",
44430
+ "inheritedFrom": {
44431
+ "name": "SbbFormAssociatedMixin",
44432
+ "module": "core/mixins/form-associated-mixin.js"
44433
+ }
44434
+ },
44435
+ {
44436
+ "kind": "method",
44437
+ "name": "formState",
44438
+ "privacy": "protected",
44439
+ "return": {
44440
+ "type": {
44441
+ "text": "FormRestoreState"
44442
+ }
44443
+ },
44444
+ "inheritedFrom": {
44445
+ "name": "SbbFormAssociatedMixin",
44446
+ "module": "core/mixins/form-associated-mixin.js"
44447
+ }
44448
+ },
44449
+ {
44450
+ "kind": "method",
44451
+ "name": "setValidityFlag",
44452
+ "privacy": "protected",
44453
+ "return": {
44454
+ "type": {
44455
+ "text": "void"
44282
44456
  }
44283
44457
  },
44284
44458
  "parameters": [
44285
44459
  {
44286
- "name": "renderContent",
44460
+ "name": "flag",
44287
44461
  "type": {
44288
- "text": "TemplateResult"
44462
+ "text": "T"
44463
+ }
44464
+ },
44465
+ {
44466
+ "name": "message",
44467
+ "type": {
44468
+ "text": "string"
44469
+ }
44470
+ },
44471
+ {
44472
+ "name": "flagValue",
44473
+ "optional": true,
44474
+ "type": {
44475
+ "text": "ValidityStateFlags[T]"
44289
44476
  }
44290
44477
  }
44291
44478
  ],
44479
+ "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).",
44292
44480
  "inheritedFrom": {
44293
- "name": "SbbLinkBaseElement",
44294
- "module": "core/base-elements/link-base-element.js"
44481
+ "name": "SbbFormAssociatedMixin",
44482
+ "module": "core/mixins/form-associated-mixin.js"
44483
+ }
44484
+ },
44485
+ {
44486
+ "kind": "method",
44487
+ "name": "removeValidityFlag",
44488
+ "privacy": "protected",
44489
+ "return": {
44490
+ "type": {
44491
+ "text": "void"
44492
+ }
44493
+ },
44494
+ "parameters": [
44495
+ {
44496
+ "name": "flag",
44497
+ "type": {
44498
+ "text": "T"
44499
+ }
44500
+ }
44501
+ ],
44502
+ "description": "Removes the validity state flag entry and updates validity state.",
44503
+ "inheritedFrom": {
44504
+ "name": "SbbFormAssociatedMixin",
44505
+ "module": "core/mixins/form-associated-mixin.js"
44506
+ }
44507
+ },
44508
+ {
44509
+ "kind": "method",
44510
+ "name": "validate",
44511
+ "privacy": "protected",
44512
+ "return": {
44513
+ "type": {
44514
+ "text": "void"
44515
+ }
44516
+ },
44517
+ "description": "To be called whenever the current element needs to be validated.",
44518
+ "inheritedFrom": {
44519
+ "name": "SbbFormAssociatedMixin",
44520
+ "module": "core/mixins/form-associated-mixin.js"
44521
+ }
44522
+ },
44523
+ {
44524
+ "kind": "method",
44525
+ "name": "shouldValidate",
44526
+ "privacy": "protected",
44527
+ "return": {
44528
+ "type": {
44529
+ "text": "boolean"
44530
+ }
44531
+ },
44532
+ "parameters": [
44533
+ {
44534
+ "name": "name",
44535
+ "type": {
44536
+ "text": "PropertyKey | undefined"
44537
+ }
44538
+ }
44539
+ ],
44540
+ "description": "Whether validation should be run on a property change with the given name.",
44541
+ "inheritedFrom": {
44542
+ "name": "SbbFormAssociatedMixin",
44543
+ "module": "core/mixins/form-associated-mixin.js"
44544
+ }
44545
+ },
44546
+ {
44547
+ "kind": "method",
44548
+ "name": "_setInternalValidity",
44549
+ "privacy": "private",
44550
+ "return": {
44551
+ "type": {
44552
+ "text": "void"
44553
+ }
44554
+ },
44555
+ "inheritedFrom": {
44556
+ "name": "SbbFormAssociatedMixin",
44557
+ "module": "core/mixins/form-associated-mixin.js"
44558
+ }
44559
+ },
44560
+ {
44561
+ "kind": "field",
44562
+ "name": "role",
44563
+ "type": {
44564
+ "text": "ElementInternals['role']"
44565
+ },
44566
+ "privacy": "public",
44567
+ "static": true,
44568
+ "readonly": true,
44569
+ "default": "'button'",
44570
+ "inheritedFrom": {
44571
+ "name": "SbbButtonLikeBaseElement",
44572
+ "module": "core/base-elements/button-base-element.js"
44573
+ }
44574
+ },
44575
+ {
44576
+ "kind": "field",
44577
+ "name": "_preventScrollOnSpaceKeydown",
44578
+ "privacy": "private",
44579
+ "description": "Prevents scrolling from pressing Space, when the event target is an action element.\nAlso sets active state.",
44580
+ "parameters": [
44581
+ {
44582
+ "description": "The origin event.",
44583
+ "name": "event"
44584
+ }
44585
+ ],
44586
+ "inheritedFrom": {
44587
+ "name": "SbbButtonLikeBaseElement",
44588
+ "module": "core/base-elements/button-base-element.js"
44589
+ }
44590
+ },
44591
+ {
44592
+ "kind": "field",
44593
+ "name": "_removeActiveMarker",
44594
+ "privacy": "private",
44595
+ "inheritedFrom": {
44596
+ "name": "SbbButtonLikeBaseElement",
44597
+ "module": "core/base-elements/button-base-element.js"
44598
+ }
44599
+ },
44600
+ {
44601
+ "kind": "field",
44602
+ "name": "_dispatchClickEventOnSpaceKeyup",
44603
+ "privacy": "private",
44604
+ "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.",
44605
+ "parameters": [
44606
+ {
44607
+ "description": "The origin event.",
44608
+ "name": "event"
44609
+ }
44610
+ ],
44611
+ "inheritedFrom": {
44612
+ "name": "SbbButtonLikeBaseElement",
44613
+ "module": "core/base-elements/button-base-element.js"
44614
+ }
44615
+ },
44616
+ {
44617
+ "kind": "field",
44618
+ "name": "_dispatchClickEvent",
44619
+ "privacy": "private",
44620
+ "inheritedFrom": {
44621
+ "name": "SbbButtonLikeBaseElement",
44622
+ "module": "core/base-elements/button-base-element.js"
44295
44623
  }
44296
44624
  },
44297
44625
  {
@@ -44446,19 +44774,15 @@
44446
44774
  "module": "button/common/button-common.js"
44447
44775
  },
44448
44776
  {
44449
- "name": "SbbDisabledInteractiveMixin",
44450
- "module": "core/mixins.js"
44451
- },
44452
- {
44453
- "name": "SbbDisabledMixin",
44777
+ "name": "SbbDisabledTabIndexActionMixin",
44454
44778
  "module": "core/mixins.js"
44455
44779
  }
44456
44780
  ],
44457
44781
  "superclass": {
44458
- "name": "SbbLinkBaseElement",
44782
+ "name": "SbbButtonBaseElement",
44459
44783
  "module": "core/base-elements.js"
44460
44784
  },
44461
- "tagName": "sbb-secondary-button-link",
44785
+ "tagName": "sbb-secondary-button",
44462
44786
  "customElement": true,
44463
44787
  "attributes": [
44464
44788
  {
@@ -44540,81 +44864,53 @@
44540
44864
  }
44541
44865
  },
44542
44866
  {
44543
- "name": "href",
44867
+ "name": "value",
44544
44868
  "type": {
44545
44869
  "text": "string"
44546
44870
  },
44547
44871
  "default": "''",
44548
- "description": "The href value you want to link to.",
44549
- "fieldName": "href",
44872
+ "description": "Value of the form element.",
44873
+ "fieldName": "value",
44550
44874
  "inheritedFrom": {
44551
- "name": "SbbLinkBaseElement",
44552
- "module": "core/base-elements/link-base-element.js"
44875
+ "name": "SbbButtonBaseElement",
44876
+ "module": "core/base-elements/button-base-element.js"
44553
44877
  }
44554
44878
  },
44555
44879
  {
44556
- "name": "target",
44880
+ "name": "type",
44881
+ "description": "The type attribute to use for the button.",
44882
+ "default": "'button'",
44557
44883
  "type": {
44558
- "text": "LinkTargetType | string"
44884
+ "text": "SbbButtonType"
44559
44885
  },
44560
- "default": "''",
44561
- "description": "Where to display the linked URL.",
44562
- "fieldName": "target",
44886
+ "fieldName": "type",
44563
44887
  "inheritedFrom": {
44564
- "name": "SbbLinkBaseElement",
44565
- "module": "core/base-elements/link-base-element.js"
44888
+ "name": "SbbButtonBaseElement",
44889
+ "module": "core/base-elements/button-base-element.js"
44566
44890
  }
44567
44891
  },
44568
44892
  {
44569
- "name": "rel",
44893
+ "name": "form",
44894
+ "description": "The `<form>` element to associate the button with.",
44570
44895
  "type": {
44571
- "text": "string"
44896
+ "text": "HTMLFormElement | null"
44572
44897
  },
44573
- "default": "''",
44574
- "description": "The relationship of the linked URL as space-separated link types.",
44575
- "fieldName": "rel",
44898
+ "fieldName": "form",
44576
44899
  "inheritedFrom": {
44577
- "name": "SbbLinkBaseElement",
44578
- "module": "core/base-elements/link-base-element.js"
44900
+ "name": "SbbButtonBaseElement",
44901
+ "module": "core/base-elements/button-base-element.js"
44579
44902
  }
44580
44903
  },
44581
44904
  {
44582
- "name": "download",
44905
+ "name": "name",
44906
+ "description": "Name of the form element. Will be read from name attribute.",
44583
44907
  "type": {
44584
- "text": "boolean"
44908
+ "text": "string"
44585
44909
  },
44586
- "default": "false",
44587
- "description": "Whether the browser will show the download dialog on click.",
44588
- "fieldName": "download",
44589
- "inheritedFrom": {
44590
- "name": "SbbLinkBaseElement",
44591
- "module": "core/base-elements/link-base-element.js"
44592
- }
44593
- },
44594
- {
44595
- "name": "accessibility-label",
44596
- "type": {
44597
- "text": "string"
44598
- },
44599
- "default": "''",
44600
- "description": "This will be forwarded as aria-label to the inner anchor element.",
44601
- "fieldName": "accessibilityLabel",
44602
- "inheritedFrom": {
44603
- "name": "SbbLinkBaseElement",
44604
- "module": "core/base-elements/link-base-element.js"
44605
- }
44606
- },
44607
- {
44608
- "name": "accessibility-current",
44609
- "type": {
44610
- "text": "string"
44611
- },
44612
- "default": "''",
44613
- "description": "This will be forwarded as aria-current to the inner anchor element.",
44614
- "fieldName": "accessibilityCurrent",
44910
+ "fieldName": "name",
44615
44911
  "inheritedFrom": {
44616
- "name": "SbbLinkBaseElement",
44617
- "module": "core/base-elements/link-base-element.js"
44912
+ "name": "SbbFormAssociatedMixin",
44913
+ "module": "core/mixins/form-associated-mixin.js"
44618
44914
  }
44619
44915
  }
44620
44916
  ]
@@ -44623,22 +44919,22 @@
44623
44919
  "exports": [
44624
44920
  {
44625
44921
  "kind": "js",
44626
- "name": "SbbSecondaryButtonLinkElement",
44922
+ "name": "SbbSecondaryButtonElement",
44627
44923
  "declaration": {
44628
- "name": "SbbSecondaryButtonLinkElement",
44629
- "module": "button/secondary-button-link/secondary-button-link.component.js"
44924
+ "name": "SbbSecondaryButtonElement",
44925
+ "module": "button/secondary-button/secondary-button.component.js"
44630
44926
  }
44631
44927
  }
44632
44928
  ]
44633
44929
  },
44634
44930
  {
44635
44931
  "kind": "javascript-module",
44636
- "path": "button/secondary-button/secondary-button.component.js",
44932
+ "path": "button/secondary-button-link/secondary-button-link.component.js",
44637
44933
  "declarations": [
44638
44934
  {
44639
44935
  "kind": "class",
44640
- "description": "It displays a button enhanced with the SBB Design in the 'secondary' variant.",
44641
- "name": "SbbSecondaryButtonElement",
44936
+ "description": "It displays a button enhanced with the SBB Design in the 'primary' variant, which will behave as a link.",
44937
+ "name": "SbbSecondaryButtonLinkElement",
44642
44938
  "cssProperties": [
44643
44939
  {
44644
44940
  "description": "The delay before the loading animation starts, when setting the button into loading state.",
@@ -44648,7 +44944,7 @@
44648
44944
  ],
44649
44945
  "slots": [
44650
44946
  {
44651
- "description": "Use the unnamed slot to add content to the secondary-button.",
44947
+ "description": "Use the unnamed slot to add content to the secondary-button-link.",
44652
44948
  "name": ""
44653
44949
  },
44654
44950
  {
@@ -44666,7 +44962,7 @@
44666
44962
  "privacy": "public",
44667
44963
  "static": true,
44668
44964
  "readonly": true,
44669
- "default": "'sbb-secondary-button'",
44965
+ "default": "'sbb-secondary-button-link'",
44670
44966
  "inheritedFrom": {
44671
44967
  "name": "SbbElement",
44672
44968
  "module": "core/base-elements/element.js"
@@ -44863,479 +45159,151 @@
44863
45159
  },
44864
45160
  {
44865
45161
  "kind": "field",
44866
- "name": "_elementsOnWhichEnterPressTriggersSubmit",
44867
- "type": {
44868
- "text": "array"
44869
- },
44870
- "privacy": "private",
44871
- "readonly": true,
44872
- "default": "[ 'input', 'sbb-date-input', 'sbb-time-input', ]",
44873
- "inheritedFrom": {
44874
- "name": "SbbButtonBaseElement",
44875
- "module": "core/base-elements/button-base-element.js"
44876
- }
44877
- },
44878
- {
44879
- "kind": "field",
44880
- "name": "value",
45162
+ "name": "href",
44881
45163
  "type": {
44882
45164
  "text": "string"
44883
45165
  },
44884
45166
  "privacy": "public",
44885
45167
  "default": "''",
44886
- "description": "Value of the form element.",
44887
- "attribute": "value",
44888
- "inheritedFrom": {
44889
- "name": "SbbButtonBaseElement",
44890
- "module": "core/base-elements/button-base-element.js"
44891
- }
44892
- },
44893
- {
44894
- "kind": "field",
44895
- "name": "type",
44896
- "privacy": "public",
44897
- "description": "The type attribute to use for the button.",
44898
- "default": "'button'",
44899
- "type": {
44900
- "text": "SbbButtonType"
44901
- },
44902
- "attribute": "type",
45168
+ "description": "The href value you want to link to.",
45169
+ "attribute": "href",
45170
+ "reflects": true,
44903
45171
  "inheritedFrom": {
44904
- "name": "SbbButtonBaseElement",
44905
- "module": "core/base-elements/button-base-element.js"
45172
+ "name": "SbbLinkBaseElement",
45173
+ "module": "core/base-elements/link-base-element.js"
44906
45174
  }
44907
45175
  },
44908
45176
  {
44909
45177
  "kind": "field",
44910
- "name": "form",
45178
+ "name": "target",
44911
45179
  "type": {
44912
- "text": "HTMLFormElement | null"
45180
+ "text": "LinkTargetType | string"
44913
45181
  },
44914
45182
  "privacy": "public",
44915
- "description": "The `<form>` element to associate the button with.",
44916
- "attribute": "form",
45183
+ "default": "''",
45184
+ "description": "Where to display the linked URL.",
45185
+ "attribute": "target",
45186
+ "reflects": true,
44917
45187
  "inheritedFrom": {
44918
- "name": "SbbButtonBaseElement",
44919
- "module": "core/base-elements/button-base-element.js"
45188
+ "name": "SbbLinkBaseElement",
45189
+ "module": "core/base-elements/link-base-element.js"
44920
45190
  }
44921
45191
  },
44922
45192
  {
44923
45193
  "kind": "field",
44924
- "name": "_formId",
45194
+ "name": "rel",
44925
45195
  "type": {
44926
45196
  "text": "string"
44927
45197
  },
44928
- "privacy": "private",
45198
+ "privacy": "public",
44929
45199
  "default": "''",
45200
+ "description": "The relationship of the linked URL as space-separated link types.",
45201
+ "attribute": "rel",
45202
+ "reflects": true,
44930
45203
  "inheritedFrom": {
44931
- "name": "SbbButtonBaseElement",
44932
- "module": "core/base-elements/button-base-element.js"
44933
- }
44934
- },
44935
- {
44936
- "kind": "field",
44937
- "name": "_handleButtonClick",
44938
- "privacy": "private",
44939
- "inheritedFrom": {
44940
- "name": "SbbButtonBaseElement",
44941
- "module": "core/base-elements/button-base-element.js"
44942
- }
44943
- },
44944
- {
44945
- "kind": "method",
44946
- "name": "_requestSubmit",
44947
- "privacy": "private",
44948
- "return": {
44949
- "type": {
44950
- "text": "void"
44951
- }
44952
- },
44953
- "parameters": [
44954
- {
44955
- "name": "form",
44956
- "type": {
44957
- "text": "HTMLFormElement"
44958
- }
44959
- }
44960
- ],
44961
- "inheritedFrom": {
44962
- "name": "SbbButtonBaseElement",
44963
- "module": "core/base-elements/button-base-element.js"
44964
- }
44965
- },
44966
- {
44967
- "kind": "field",
44968
- "name": "_formKeyDown",
44969
- "privacy": "private",
44970
- "inheritedFrom": {
44971
- "name": "SbbButtonBaseElement",
44972
- "module": "core/base-elements/button-base-element.js"
45204
+ "name": "SbbLinkBaseElement",
45205
+ "module": "core/base-elements/link-base-element.js"
44973
45206
  }
44974
45207
  },
44975
45208
  {
44976
45209
  "kind": "field",
44977
- "name": "formAssociated",
45210
+ "name": "download",
44978
45211
  "type": {
44979
45212
  "text": "boolean"
44980
45213
  },
44981
45214
  "privacy": "public",
44982
- "static": true,
44983
- "default": "true",
45215
+ "default": "false",
45216
+ "description": "Whether the browser will show the download dialog on click.",
45217
+ "attribute": "download",
45218
+ "reflects": true,
44984
45219
  "inheritedFrom": {
44985
- "name": "SbbFormAssociatedMixin",
44986
- "module": "core/mixins/form-associated-mixin.js"
45220
+ "name": "SbbLinkBaseElement",
45221
+ "module": "core/base-elements/link-base-element.js"
44987
45222
  }
44988
45223
  },
44989
45224
  {
44990
45225
  "kind": "field",
44991
- "name": "name",
44992
- "privacy": "public",
44993
- "description": "Name of the form element. Will be read from name attribute.",
45226
+ "name": "accessibilityLabel",
44994
45227
  "type": {
44995
45228
  "text": "string"
44996
45229
  },
44997
- "attribute": "name",
44998
- "inheritedFrom": {
44999
- "name": "SbbFormAssociatedMixin",
45000
- "module": "core/mixins/form-associated-mixin.js"
45001
- }
45002
- },
45003
- {
45004
- "kind": "field",
45005
- "name": "validity",
45006
- "type": {
45007
- "text": "ValidityState"
45008
- },
45009
45230
  "privacy": "public",
45010
- "description": "Returns the ValidityState object for this element.",
45011
- "readonly": true,
45231
+ "default": "''",
45232
+ "description": "This will be forwarded as aria-label to the inner anchor element.",
45233
+ "attribute": "accessibility-label",
45012
45234
  "inheritedFrom": {
45013
- "name": "SbbFormAssociatedMixin",
45014
- "module": "core/mixins/form-associated-mixin.js"
45235
+ "name": "SbbLinkBaseElement",
45236
+ "module": "core/base-elements/link-base-element.js"
45015
45237
  }
45016
45238
  },
45017
45239
  {
45018
45240
  "kind": "field",
45019
- "name": "validationMessage",
45241
+ "name": "accessibilityCurrent",
45020
45242
  "type": {
45021
45243
  "text": "string"
45022
45244
  },
45023
45245
  "privacy": "public",
45024
- "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.",
45025
- "readonly": true,
45026
- "inheritedFrom": {
45027
- "name": "SbbFormAssociatedMixin",
45028
- "module": "core/mixins/form-associated-mixin.js"
45029
- }
45030
- },
45031
- {
45032
- "kind": "field",
45033
- "name": "willValidate",
45034
- "type": {
45035
- "text": "boolean"
45036
- },
45037
- "privacy": "public",
45038
- "description": "Returns true if this element will be validated\nwhen the form is submitted; false otherwise.",
45039
- "readonly": true,
45246
+ "default": "''",
45247
+ "description": "This will be forwarded as aria-current to the inner anchor element.",
45248
+ "attribute": "accessibility-current",
45040
45249
  "inheritedFrom": {
45041
- "name": "SbbFormAssociatedMixin",
45042
- "module": "core/mixins/form-associated-mixin.js"
45250
+ "name": "SbbLinkBaseElement",
45251
+ "module": "core/base-elements/link-base-element.js"
45043
45252
  }
45044
45253
  },
45045
45254
  {
45046
45255
  "kind": "field",
45047
- "name": "_validityStates",
45048
- "privacy": "private",
45049
- "default": "new Map< keyof ValidityStateFlags, { flagValue: unknown; message: string } >()",
45256
+ "name": "language",
45257
+ "privacy": "protected",
45258
+ "default": "new SbbLanguageController(this)",
45050
45259
  "inheritedFrom": {
45051
- "name": "SbbFormAssociatedMixin",
45052
- "module": "core/mixins/form-associated-mixin.js"
45260
+ "name": "SbbLinkBaseElement",
45261
+ "module": "core/base-elements/link-base-element.js"
45053
45262
  }
45054
45263
  },
45055
45264
  {
45056
45265
  "kind": "field",
45057
- "name": "formDisabled",
45266
+ "name": "anchorRole",
45058
45267
  "type": {
45059
- "text": "boolean"
45268
+ "text": "string | null"
45060
45269
  },
45061
45270
  "privacy": "protected",
45062
- "default": "false",
45063
- "description": "Whenever a surrounding form or fieldset is changing its disabled state.",
45064
- "inheritedFrom": {
45065
- "name": "SbbFormAssociatedMixin",
45066
- "module": "core/mixins/form-associated-mixin.js"
45067
- }
45068
- },
45069
- {
45070
- "kind": "method",
45071
- "name": "checkValidity",
45072
- "privacy": "public",
45073
- "return": {
45074
- "type": {
45075
- "text": "boolean"
45076
- }
45077
- },
45078
- "description": "Returns true if this element has no validity problems; false otherwise.\nFires an invalid event at the element in the latter case.",
45079
- "inheritedFrom": {
45080
- "name": "SbbFormAssociatedMixin",
45081
- "module": "core/mixins/form-associated-mixin.js"
45082
- }
45083
- },
45084
- {
45085
- "kind": "method",
45086
- "name": "reportValidity",
45087
- "privacy": "public",
45088
- "return": {
45089
- "type": {
45090
- "text": "boolean"
45091
- }
45092
- },
45093
- "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.",
45094
- "inheritedFrom": {
45095
- "name": "SbbFormAssociatedMixin",
45096
- "module": "core/mixins/form-associated-mixin.js"
45097
- }
45098
- },
45099
- {
45100
- "kind": "method",
45101
- "name": "setCustomValidity",
45102
- "privacy": "public",
45103
- "return": {
45104
- "type": {
45105
- "text": "void"
45106
- }
45107
- },
45108
- "parameters": [
45109
- {
45110
- "name": "message",
45111
- "type": {
45112
- "text": "string"
45113
- }
45114
- }
45115
- ],
45116
- "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.",
45271
+ "readonly": true,
45272
+ "default": "null",
45117
45273
  "inheritedFrom": {
45118
- "name": "SbbFormAssociatedMixin",
45119
- "module": "core/mixins/form-associated-mixin.js"
45274
+ "name": "SbbLinkBaseElement",
45275
+ "module": "core/base-elements/link-base-element.js"
45120
45276
  }
45121
45277
  },
45122
45278
  {
45123
- "kind": "method",
45124
- "name": "_hasDisabledAncestor",
45279
+ "kind": "field",
45280
+ "name": "_evaluateRelAttribute",
45125
45281
  "privacy": "private",
45126
- "return": {
45127
- "type": {
45128
- "text": "boolean"
45129
- }
45130
- },
45131
- "inheritedFrom": {
45132
- "name": "SbbFormAssociatedMixin",
45133
- "module": "core/mixins/form-associated-mixin.js"
45134
- }
45135
- },
45136
- {
45137
- "kind": "method",
45138
- "name": "updateFormValue",
45139
- "privacy": "protected",
45140
- "return": {
45141
- "type": {
45142
- "text": "void"
45143
- }
45144
- },
45145
- "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",
45146
- "inheritedFrom": {
45147
- "name": "SbbFormAssociatedMixin",
45148
- "module": "core/mixins/form-associated-mixin.js"
45149
- }
45150
- },
45151
- {
45152
- "kind": "method",
45153
- "name": "formState",
45154
- "privacy": "protected",
45155
- "return": {
45156
- "type": {
45157
- "text": "FormRestoreState"
45158
- }
45159
- },
45160
- "inheritedFrom": {
45161
- "name": "SbbFormAssociatedMixin",
45162
- "module": "core/mixins/form-associated-mixin.js"
45163
- }
45164
- },
45165
- {
45166
- "kind": "method",
45167
- "name": "setValidityFlag",
45168
- "privacy": "protected",
45169
- "return": {
45170
- "type": {
45171
- "text": "void"
45172
- }
45173
- },
45174
- "parameters": [
45175
- {
45176
- "name": "flag",
45177
- "type": {
45178
- "text": "T"
45179
- }
45180
- },
45181
- {
45182
- "name": "message",
45183
- "type": {
45184
- "text": "string"
45185
- }
45186
- },
45187
- {
45188
- "name": "flagValue",
45189
- "optional": true,
45190
- "type": {
45191
- "text": "ValidityStateFlags[T]"
45192
- }
45193
- }
45194
- ],
45195
- "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).",
45196
- "inheritedFrom": {
45197
- "name": "SbbFormAssociatedMixin",
45198
- "module": "core/mixins/form-associated-mixin.js"
45199
- }
45200
- },
45201
- {
45202
- "kind": "method",
45203
- "name": "removeValidityFlag",
45204
- "privacy": "protected",
45205
- "return": {
45206
- "type": {
45207
- "text": "void"
45208
- }
45209
- },
45210
- "parameters": [
45211
- {
45212
- "name": "flag",
45213
- "type": {
45214
- "text": "T"
45215
- }
45216
- }
45217
- ],
45218
- "description": "Removes the validity state flag entry and updates validity state.",
45219
- "inheritedFrom": {
45220
- "name": "SbbFormAssociatedMixin",
45221
- "module": "core/mixins/form-associated-mixin.js"
45222
- }
45223
- },
45224
- {
45225
- "kind": "method",
45226
- "name": "validate",
45227
- "privacy": "protected",
45228
- "return": {
45229
- "type": {
45230
- "text": "void"
45231
- }
45232
- },
45233
- "description": "To be called whenever the current element needs to be validated.",
45234
45282
  "inheritedFrom": {
45235
- "name": "SbbFormAssociatedMixin",
45236
- "module": "core/mixins/form-associated-mixin.js"
45283
+ "name": "SbbLinkBaseElement",
45284
+ "module": "core/base-elements/link-base-element.js"
45237
45285
  }
45238
45286
  },
45239
45287
  {
45240
45288
  "kind": "method",
45241
- "name": "shouldValidate",
45289
+ "name": "renderLink",
45242
45290
  "privacy": "protected",
45243
45291
  "return": {
45244
45292
  "type": {
45245
- "text": "boolean"
45293
+ "text": "TemplateResult"
45246
45294
  }
45247
45295
  },
45248
45296
  "parameters": [
45249
45297
  {
45250
- "name": "name",
45298
+ "name": "renderContent",
45251
45299
  "type": {
45252
- "text": "PropertyKey | undefined"
45300
+ "text": "TemplateResult"
45253
45301
  }
45254
45302
  }
45255
45303
  ],
45256
- "description": "Whether validation should be run on a property change with the given name.",
45257
- "inheritedFrom": {
45258
- "name": "SbbFormAssociatedMixin",
45259
- "module": "core/mixins/form-associated-mixin.js"
45260
- }
45261
- },
45262
- {
45263
- "kind": "method",
45264
- "name": "_setInternalValidity",
45265
- "privacy": "private",
45266
- "return": {
45267
- "type": {
45268
- "text": "void"
45269
- }
45270
- },
45271
- "inheritedFrom": {
45272
- "name": "SbbFormAssociatedMixin",
45273
- "module": "core/mixins/form-associated-mixin.js"
45274
- }
45275
- },
45276
- {
45277
- "kind": "field",
45278
- "name": "role",
45279
- "type": {
45280
- "text": "ElementInternals['role']"
45281
- },
45282
- "privacy": "public",
45283
- "static": true,
45284
- "readonly": true,
45285
- "default": "'button'",
45286
- "inheritedFrom": {
45287
- "name": "SbbButtonLikeBaseElement",
45288
- "module": "core/base-elements/button-base-element.js"
45289
- }
45290
- },
45291
- {
45292
- "kind": "field",
45293
- "name": "_preventScrollOnSpaceKeydown",
45294
- "privacy": "private",
45295
- "description": "Prevents scrolling from pressing Space, when the event target is an action element.\nAlso sets active state.",
45296
- "parameters": [
45297
- {
45298
- "description": "The origin event.",
45299
- "name": "event"
45300
- }
45301
- ],
45302
- "inheritedFrom": {
45303
- "name": "SbbButtonLikeBaseElement",
45304
- "module": "core/base-elements/button-base-element.js"
45305
- }
45306
- },
45307
- {
45308
- "kind": "field",
45309
- "name": "_removeActiveMarker",
45310
- "privacy": "private",
45311
- "inheritedFrom": {
45312
- "name": "SbbButtonLikeBaseElement",
45313
- "module": "core/base-elements/button-base-element.js"
45314
- }
45315
- },
45316
- {
45317
- "kind": "field",
45318
- "name": "_dispatchClickEventOnSpaceKeyup",
45319
- "privacy": "private",
45320
- "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.",
45321
- "parameters": [
45322
- {
45323
- "description": "The origin event.",
45324
- "name": "event"
45325
- }
45326
- ],
45327
- "inheritedFrom": {
45328
- "name": "SbbButtonLikeBaseElement",
45329
- "module": "core/base-elements/button-base-element.js"
45330
- }
45331
- },
45332
- {
45333
- "kind": "field",
45334
- "name": "_dispatchClickEvent",
45335
- "privacy": "private",
45336
45304
  "inheritedFrom": {
45337
- "name": "SbbButtonLikeBaseElement",
45338
- "module": "core/base-elements/button-base-element.js"
45305
+ "name": "SbbLinkBaseElement",
45306
+ "module": "core/base-elements/link-base-element.js"
45339
45307
  }
45340
45308
  },
45341
45309
  {
@@ -45490,15 +45458,19 @@
45490
45458
  "module": "button/common/button-common.js"
45491
45459
  },
45492
45460
  {
45493
- "name": "SbbDisabledTabIndexActionMixin",
45461
+ "name": "SbbDisabledInteractiveMixin",
45462
+ "module": "core/mixins.js"
45463
+ },
45464
+ {
45465
+ "name": "SbbDisabledMixin",
45494
45466
  "module": "core/mixins.js"
45495
45467
  }
45496
45468
  ],
45497
45469
  "superclass": {
45498
- "name": "SbbButtonBaseElement",
45470
+ "name": "SbbLinkBaseElement",
45499
45471
  "module": "core/base-elements.js"
45500
45472
  },
45501
- "tagName": "sbb-secondary-button",
45473
+ "tagName": "sbb-secondary-button-link",
45502
45474
  "customElement": true,
45503
45475
  "attributes": [
45504
45476
  {
@@ -45580,53 +45552,81 @@
45580
45552
  }
45581
45553
  },
45582
45554
  {
45583
- "name": "value",
45555
+ "name": "href",
45584
45556
  "type": {
45585
45557
  "text": "string"
45586
45558
  },
45587
45559
  "default": "''",
45588
- "description": "Value of the form element.",
45589
- "fieldName": "value",
45560
+ "description": "The href value you want to link to.",
45561
+ "fieldName": "href",
45590
45562
  "inheritedFrom": {
45591
- "name": "SbbButtonBaseElement",
45592
- "module": "core/base-elements/button-base-element.js"
45563
+ "name": "SbbLinkBaseElement",
45564
+ "module": "core/base-elements/link-base-element.js"
45593
45565
  }
45594
45566
  },
45595
45567
  {
45596
- "name": "type",
45597
- "description": "The type attribute to use for the button.",
45598
- "default": "'button'",
45568
+ "name": "target",
45599
45569
  "type": {
45600
- "text": "SbbButtonType"
45570
+ "text": "LinkTargetType | string"
45601
45571
  },
45602
- "fieldName": "type",
45572
+ "default": "''",
45573
+ "description": "Where to display the linked URL.",
45574
+ "fieldName": "target",
45603
45575
  "inheritedFrom": {
45604
- "name": "SbbButtonBaseElement",
45605
- "module": "core/base-elements/button-base-element.js"
45576
+ "name": "SbbLinkBaseElement",
45577
+ "module": "core/base-elements/link-base-element.js"
45606
45578
  }
45607
45579
  },
45608
45580
  {
45609
- "name": "form",
45610
- "description": "The `<form>` element to associate the button with.",
45581
+ "name": "rel",
45611
45582
  "type": {
45612
- "text": "HTMLFormElement | null"
45583
+ "text": "string"
45613
45584
  },
45614
- "fieldName": "form",
45585
+ "default": "''",
45586
+ "description": "The relationship of the linked URL as space-separated link types.",
45587
+ "fieldName": "rel",
45615
45588
  "inheritedFrom": {
45616
- "name": "SbbButtonBaseElement",
45617
- "module": "core/base-elements/button-base-element.js"
45589
+ "name": "SbbLinkBaseElement",
45590
+ "module": "core/base-elements/link-base-element.js"
45618
45591
  }
45619
45592
  },
45620
45593
  {
45621
- "name": "name",
45622
- "description": "Name of the form element. Will be read from name attribute.",
45594
+ "name": "download",
45595
+ "type": {
45596
+ "text": "boolean"
45597
+ },
45598
+ "default": "false",
45599
+ "description": "Whether the browser will show the download dialog on click.",
45600
+ "fieldName": "download",
45601
+ "inheritedFrom": {
45602
+ "name": "SbbLinkBaseElement",
45603
+ "module": "core/base-elements/link-base-element.js"
45604
+ }
45605
+ },
45606
+ {
45607
+ "name": "accessibility-label",
45623
45608
  "type": {
45624
45609
  "text": "string"
45625
45610
  },
45626
- "fieldName": "name",
45611
+ "default": "''",
45612
+ "description": "This will be forwarded as aria-label to the inner anchor element.",
45613
+ "fieldName": "accessibilityLabel",
45627
45614
  "inheritedFrom": {
45628
- "name": "SbbFormAssociatedMixin",
45629
- "module": "core/mixins/form-associated-mixin.js"
45615
+ "name": "SbbLinkBaseElement",
45616
+ "module": "core/base-elements/link-base-element.js"
45617
+ }
45618
+ },
45619
+ {
45620
+ "name": "accessibility-current",
45621
+ "type": {
45622
+ "text": "string"
45623
+ },
45624
+ "default": "''",
45625
+ "description": "This will be forwarded as aria-current to the inner anchor element.",
45626
+ "fieldName": "accessibilityCurrent",
45627
+ "inheritedFrom": {
45628
+ "name": "SbbLinkBaseElement",
45629
+ "module": "core/base-elements/link-base-element.js"
45630
45630
  }
45631
45631
  }
45632
45632
  ]
@@ -45635,10 +45635,10 @@
45635
45635
  "exports": [
45636
45636
  {
45637
45637
  "kind": "js",
45638
- "name": "SbbSecondaryButtonElement",
45638
+ "name": "SbbSecondaryButtonLinkElement",
45639
45639
  "declaration": {
45640
- "name": "SbbSecondaryButtonElement",
45641
- "module": "button/secondary-button/secondary-button.component.js"
45640
+ "name": "SbbSecondaryButtonLinkElement",
45641
+ "module": "button/secondary-button-link/secondary-button-link.component.js"
45642
45642
  }
45643
45643
  }
45644
45644
  ]
@@ -106279,23 +106279,27 @@
106279
106279
  },
106280
106280
  {
106281
106281
  "kind": "javascript-module",
106282
- "path": "menu/menu/menu.component.js",
106282
+ "path": "menu/menu-button/menu-button.component.js",
106283
106283
  "declarations": [
106284
106284
  {
106285
106285
  "kind": "class",
106286
- "description": "It displays a contextual menu with one or more action element.",
106287
- "name": "SbbMenuElement",
106286
+ "description": "It displays a button element that can be used in the `sbb-menu` component.",
106287
+ "name": "SbbMenuButtonElement",
106288
106288
  "cssProperties": [
106289
106289
  {
106290
- "description": "To specify a custom stack order, the `z-index` can be overridden by defining this CSS variable. The default `z-index` of the component is set to `var(--sbb-overlay-default-z-index)` with a value of `1000`.",
106291
- "name": "--sbb-menu-z-index",
106292
- "default": "var(--sbb-overlay-default-z-index)"
106290
+ "description": "Can be used to modify horizontal padding.",
106291
+ "name": "--sbb-menu-action-outer-horizontal-padding",
106292
+ "default": "var(--sbb-spacing-fixed-3x)"
106293
106293
  }
106294
106294
  ],
106295
106295
  "slots": [
106296
106296
  {
106297
- "description": "Use the unnamed slot to add `sbb-menu-button`/`sbb-menu-link` or other elements to the menu.",
106297
+ "description": "Use the unnamed slot to add content to the `sbb-menu-button`.",
106298
106298
  "name": ""
106299
+ },
106300
+ {
106301
+ "description": "Use this slot to provide an icon. If `icon-name` is set, a `sbb-icon` will be used.",
106302
+ "name": "icon"
106299
106303
  }
106300
106304
  ],
106301
106305
  "members": [
@@ -106312,189 +106316,417 @@
106312
106316
  "name": "SbbElement",
106313
106317
  "module": "core/base-elements/element.js"
106314
106318
  },
106315
- "default": "'sbb-menu'"
106319
+ "default": "'sbb-menu-button'"
106316
106320
  },
106317
106321
  {
106318
106322
  "kind": "field",
106319
106323
  "name": "role",
106320
106324
  "type": {
106321
- "text": "string"
106325
+ "text": "ElementInternals['role']"
106322
106326
  },
106323
106327
  "privacy": "public",
106324
106328
  "static": true,
106325
106329
  "readonly": true,
106326
- "default": "'menu'"
106330
+ "default": "'menuitem'",
106331
+ "inheritedFrom": {
106332
+ "name": "SbbButtonLikeBaseElement",
106333
+ "module": "core/base-elements/button-base-element.js"
106334
+ }
106327
106335
  },
106328
106336
  {
106329
106337
  "kind": "field",
106330
- "name": "trigger",
106338
+ "name": "disabledInteractive",
106331
106339
  "type": {
106332
- "text": "HTMLElement | null"
106340
+ "text": "boolean"
106333
106341
  },
106334
106342
  "privacy": "public",
106335
- "default": "null",
106336
- "description": "The element that will trigger the menu overlay.\n\nFor attribute usage, provide an id reference.",
106337
- "attribute": "trigger"
106343
+ "default": "false",
106344
+ "description": "Whether the button should be aria-disabled but stay interactive.",
106345
+ "attribute": "disabled-interactive",
106346
+ "reflects": true,
106347
+ "inheritedFrom": {
106348
+ "name": "SbbDisabledInteractiveMixin",
106349
+ "module": "core/mixins/disabled-mixin.js"
106350
+ }
106338
106351
  },
106339
106352
  {
106340
106353
  "kind": "field",
106341
- "name": "_menu",
106354
+ "name": "disabled",
106355
+ "privacy": "public",
106356
+ "description": "Whether the component is disabled.",
106357
+ "default": "false",
106342
106358
  "type": {
106343
- "text": "HTMLDivElement"
106359
+ "text": "boolean"
106344
106360
  },
106345
- "privacy": "private"
106361
+ "attribute": "disabled",
106362
+ "reflects": true,
106363
+ "inheritedFrom": {
106364
+ "name": "SbbDisabledMixin",
106365
+ "module": "core/mixins/disabled-mixin.js"
106366
+ }
106346
106367
  },
106347
106368
  {
106348
106369
  "kind": "field",
106349
- "name": "_triggerElement",
106370
+ "name": "#disabled",
106371
+ "privacy": "private",
106350
106372
  "type": {
106351
- "text": "HTMLElement | null"
106373
+ "text": "boolean"
106352
106374
  },
106353
- "privacy": "private",
106354
- "default": "null"
106375
+ "default": "false",
106376
+ "inheritedFrom": {
106377
+ "name": "SbbDisabledMixin",
106378
+ "module": "core/mixins/disabled-mixin.js"
106379
+ }
106380
+ },
106381
+ {
106382
+ "kind": "method",
106383
+ "name": "isDisabledExternally",
106384
+ "privacy": "protected",
106385
+ "return": {
106386
+ "type": {
106387
+ "text": "boolean"
106388
+ }
106389
+ },
106390
+ "description": "Will be used as 'or' check to the current disabled state.\nCan e.g. be used to read disabled state of a group.",
106391
+ "inheritedFrom": {
106392
+ "name": "SbbDisabledMixin",
106393
+ "module": "core/mixins/disabled-mixin.js"
106394
+ }
106355
106395
  },
106356
106396
  {
106357
106397
  "kind": "field",
106358
- "name": "_triggerAbortController",
106398
+ "name": "styles",
106359
106399
  "type": {
106360
- "text": "AbortController"
106400
+ "text": "CSSResultGroup"
106361
106401
  },
106362
- "privacy": "private"
106402
+ "privacy": "public",
106403
+ "static": true,
106404
+ "default": "[boxSizingStyles, unsafeCSS(style)]",
106405
+ "inheritedFrom": {
106406
+ "name": "SbbMenuActionCommonElementMixin",
106407
+ "module": "menu/common/menu-action-common.js"
106408
+ }
106409
+ },
106410
+ {
106411
+ "kind": "method",
106412
+ "name": "renderTemplate",
106413
+ "privacy": "protected",
106414
+ "return": {
106415
+ "type": {
106416
+ "text": "TemplateResult"
106417
+ }
106418
+ },
106419
+ "description": "Override this method to render the component template.",
106420
+ "inheritedFrom": {
106421
+ "name": "SbbActionBaseElement",
106422
+ "module": "core/base-elements/action-base-element.js"
106423
+ }
106363
106424
  },
106364
106425
  {
106365
106426
  "kind": "field",
106366
- "name": "_isPointerDownEventOnMenu",
106427
+ "name": "iconName",
106367
106428
  "type": {
106368
- "text": "boolean"
106429
+ "text": "string"
106430
+ },
106431
+ "privacy": "public",
106432
+ "default": "''",
106433
+ "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.",
106434
+ "attribute": "icon-name",
106435
+ "inheritedFrom": {
106436
+ "name": "SbbIconNameMixin",
106437
+ "module": "icon/icon-name-mixin.js"
106438
+ }
106439
+ },
106440
+ {
106441
+ "kind": "method",
106442
+ "name": "renderIconSlot",
106443
+ "privacy": "protected",
106444
+ "return": {
106445
+ "type": {
106446
+ "text": "TemplateResult"
106447
+ }
106448
+ },
106449
+ "parameters": [
106450
+ {
106451
+ "name": "classname",
106452
+ "optional": true,
106453
+ "type": {
106454
+ "text": "string"
106455
+ }
106456
+ }
106457
+ ],
106458
+ "inheritedFrom": {
106459
+ "name": "SbbIconNameMixin",
106460
+ "module": "icon/icon-name-mixin.js"
106461
+ }
106462
+ },
106463
+ {
106464
+ "kind": "method",
106465
+ "name": "renderIconName",
106466
+ "privacy": "protected",
106467
+ "return": {
106468
+ "type": {
106469
+ "text": "string"
106470
+ }
106369
106471
  },
106472
+ "inheritedFrom": {
106473
+ "name": "SbbIconNameMixin",
106474
+ "module": "icon/icon-name-mixin.js"
106475
+ }
106476
+ },
106477
+ {
106478
+ "kind": "method",
106479
+ "name": "_renderIconName",
106370
106480
  "privacy": "private",
106371
- "default": "false"
106481
+ "return": {
106482
+ "type": {
106483
+ "text": "string"
106484
+ }
106485
+ },
106486
+ "inheritedFrom": {
106487
+ "name": "SbbIconNameMixin",
106488
+ "module": "icon/icon-name-mixin.js"
106489
+ }
106372
106490
  },
106373
106491
  {
106374
106492
  "kind": "field",
106375
- "name": "_windowEventsController",
106493
+ "name": "_elementsOnWhichEnterPressTriggersSubmit",
106376
106494
  "type": {
106377
- "text": "AbortController"
106495
+ "text": "array"
106378
106496
  },
106379
- "privacy": "private"
106497
+ "privacy": "private",
106498
+ "readonly": true,
106499
+ "default": "[ 'input', 'sbb-date-input', 'sbb-time-input', ]",
106500
+ "inheritedFrom": {
106501
+ "name": "SbbButtonBaseElement",
106502
+ "module": "core/base-elements/button-base-element.js"
106503
+ }
106380
106504
  },
106381
106505
  {
106382
106506
  "kind": "field",
106383
- "name": "_escapableOverlayController",
106384
- "privacy": "private",
106385
- "default": "new SbbEscapableOverlayController(this)"
106507
+ "name": "value",
106508
+ "type": {
106509
+ "text": "string"
106510
+ },
106511
+ "privacy": "public",
106512
+ "inheritedFrom": {
106513
+ "name": "SbbButtonBaseElement",
106514
+ "module": "core/base-elements/button-base-element.js"
106515
+ },
106516
+ "default": "''",
106517
+ "description": "Value of the form element.",
106518
+ "attribute": "value"
106386
106519
  },
106387
106520
  {
106388
106521
  "kind": "field",
106389
- "name": "_focusTrapController",
106390
- "privacy": "private",
106391
- "default": "new SbbFocusTrapController(this)"
106522
+ "name": "type",
106523
+ "privacy": "public",
106524
+ "description": "The type attribute to use for the button.",
106525
+ "default": "'button'",
106526
+ "type": {
106527
+ "text": "SbbButtonType"
106528
+ },
106529
+ "attribute": "type",
106530
+ "inheritedFrom": {
106531
+ "name": "SbbButtonBaseElement",
106532
+ "module": "core/base-elements/button-base-element.js"
106533
+ }
106392
106534
  },
106393
106535
  {
106394
106536
  "kind": "field",
106395
- "name": "_scrollHandler",
106396
- "privacy": "private",
106397
- "default": "new SbbScrollHandler()"
106537
+ "name": "form",
106538
+ "type": {
106539
+ "text": "HTMLFormElement | null"
106540
+ },
106541
+ "privacy": "public",
106542
+ "description": "The `<form>` element to associate the button with.",
106543
+ "inheritedFrom": {
106544
+ "name": "SbbButtonBaseElement",
106545
+ "module": "core/base-elements/button-base-element.js"
106546
+ },
106547
+ "attribute": "form"
106398
106548
  },
106399
106549
  {
106400
106550
  "kind": "field",
106401
- "name": "_inertController",
106551
+ "name": "_formId",
106552
+ "type": {
106553
+ "text": "string"
106554
+ },
106402
106555
  "privacy": "private",
106403
- "default": "new SbbInertController(this)"
106556
+ "default": "''",
106557
+ "inheritedFrom": {
106558
+ "name": "SbbButtonBaseElement",
106559
+ "module": "core/base-elements/button-base-element.js"
106560
+ }
106404
106561
  },
106405
106562
  {
106406
106563
  "kind": "field",
106407
- "name": "_mobileBreakpoint",
106564
+ "name": "_handleButtonClick",
106408
106565
  "privacy": "private",
106409
- "default": "SbbMediaQueryBreakpointSmallAndBelow"
106566
+ "inheritedFrom": {
106567
+ "name": "SbbButtonBaseElement",
106568
+ "module": "core/base-elements/button-base-element.js"
106569
+ }
106410
106570
  },
106411
106571
  {
106412
- "kind": "field",
106413
- "name": "_mediaMatcher",
106572
+ "kind": "method",
106573
+ "name": "_requestSubmit",
106414
106574
  "privacy": "private",
106415
- "default": "new SbbMediaMatcherController(this, { [this._mobileBreakpoint]: (matches) => { if (matches && (this.state === 'opening' || this.state === 'opened')) { this._scrollHandler.disableScroll(); } else { this._scrollHandler.enableScroll(); } }, })"
106575
+ "return": {
106576
+ "type": {
106577
+ "text": "void"
106578
+ }
106579
+ },
106580
+ "parameters": [
106581
+ {
106582
+ "name": "form",
106583
+ "type": {
106584
+ "text": "HTMLFormElement"
106585
+ }
106586
+ }
106587
+ ],
106588
+ "inheritedFrom": {
106589
+ "name": "SbbButtonBaseElement",
106590
+ "module": "core/base-elements/button-base-element.js"
106591
+ }
106416
106592
  },
106417
106593
  {
106418
106594
  "kind": "field",
106419
- "name": "_darkModeController",
106595
+ "name": "_formKeyDown",
106420
106596
  "privacy": "private",
106421
- "default": "new SbbDarkModeController(this, () => this._syncNegative())"
106597
+ "inheritedFrom": {
106598
+ "name": "SbbButtonBaseElement",
106599
+ "module": "core/base-elements/button-base-element.js"
106600
+ }
106422
106601
  },
106423
106602
  {
106424
106603
  "kind": "field",
106425
- "name": "_language",
106426
- "privacy": "private",
106427
- "default": "new SbbLanguageController(this)"
106604
+ "name": "formAssociated",
106605
+ "type": {
106606
+ "text": "boolean"
106607
+ },
106608
+ "privacy": "public",
106609
+ "static": true,
106610
+ "default": "true",
106611
+ "inheritedFrom": {
106612
+ "name": "SbbFormAssociatedMixin",
106613
+ "module": "core/mixins/form-associated-mixin.js"
106614
+ }
106428
106615
  },
106429
106616
  {
106430
106617
  "kind": "field",
106431
- "name": "_nestedMenu",
106618
+ "name": "name",
106619
+ "privacy": "public",
106620
+ "description": "Name of the form element. Will be read from name attribute.",
106432
106621
  "type": {
106433
- "text": "SbbMenuElement | null"
106622
+ "text": "string"
106434
106623
  },
106435
- "privacy": "private",
106436
- "default": "null"
106624
+ "attribute": "name",
106625
+ "inheritedFrom": {
106626
+ "name": "SbbFormAssociatedMixin",
106627
+ "module": "core/mixins/form-associated-mixin.js"
106628
+ }
106437
106629
  },
106438
106630
  {
106439
- "kind": "method",
106440
- "name": "escapeStrategy",
106631
+ "kind": "field",
106632
+ "name": "validity",
106633
+ "type": {
106634
+ "text": "ValidityState"
106635
+ },
106441
106636
  "privacy": "public",
106442
- "return": {
106443
- "type": {
106444
- "text": "void"
106445
- }
106637
+ "description": "Returns the ValidityState object for this element.",
106638
+ "readonly": true,
106639
+ "inheritedFrom": {
106640
+ "name": "SbbFormAssociatedMixin",
106641
+ "module": "core/mixins/form-associated-mixin.js"
106642
+ }
106643
+ },
106644
+ {
106645
+ "kind": "field",
106646
+ "name": "validationMessage",
106647
+ "type": {
106648
+ "text": "string"
106446
106649
  },
106447
- "description": "The method which is called on escape key press. Defaults to calling close()",
106650
+ "privacy": "public",
106651
+ "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.",
106652
+ "readonly": true,
106448
106653
  "inheritedFrom": {
106449
- "name": "SbbOpenCloseBaseElement",
106450
- "module": "core/base-elements/open-close-base-element.js"
106654
+ "name": "SbbFormAssociatedMixin",
106655
+ "module": "core/mixins/form-associated-mixin.js"
106451
106656
  }
106452
106657
  },
106453
106658
  {
106454
- "kind": "method",
106455
- "name": "open",
106659
+ "kind": "field",
106660
+ "name": "willValidate",
106661
+ "type": {
106662
+ "text": "boolean"
106663
+ },
106456
106664
  "privacy": "public",
106457
- "return": {
106458
- "type": {
106459
- "text": "void"
106460
- }
106665
+ "description": "Returns true if this element will be validated\nwhen the form is submitted; false otherwise.",
106666
+ "readonly": true,
106667
+ "inheritedFrom": {
106668
+ "name": "SbbFormAssociatedMixin",
106669
+ "module": "core/mixins/form-associated-mixin.js"
106670
+ }
106671
+ },
106672
+ {
106673
+ "kind": "field",
106674
+ "name": "_validityStates",
106675
+ "privacy": "private",
106676
+ "default": "new Map< keyof ValidityStateFlags, { flagValue: unknown; message: string } >()",
106677
+ "inheritedFrom": {
106678
+ "name": "SbbFormAssociatedMixin",
106679
+ "module": "core/mixins/form-associated-mixin.js"
106680
+ }
106681
+ },
106682
+ {
106683
+ "kind": "field",
106684
+ "name": "formDisabled",
106685
+ "type": {
106686
+ "text": "boolean"
106461
106687
  },
106462
- "description": "Opens the menu on trigger click.",
106688
+ "privacy": "protected",
106689
+ "default": "false",
106690
+ "description": "Whenever a surrounding form or fieldset is changing its disabled state.",
106463
106691
  "inheritedFrom": {
106464
- "name": "SbbOpenCloseBaseElement",
106465
- "module": "core/base-elements/open-close-base-element.js"
106692
+ "name": "SbbFormAssociatedMixin",
106693
+ "module": "core/mixins/form-associated-mixin.js"
106466
106694
  }
106467
106695
  },
106468
106696
  {
106469
106697
  "kind": "method",
106470
- "name": "close",
106698
+ "name": "checkValidity",
106471
106699
  "privacy": "public",
106472
106700
  "return": {
106473
106701
  "type": {
106474
- "text": "void"
106702
+ "text": "boolean"
106475
106703
  }
106476
106704
  },
106477
- "description": "Closes the menu and all its nested menus.",
106705
+ "description": "Returns true if this element has no validity problems; false otherwise.\nFires an invalid event at the element in the latter case.",
106478
106706
  "inheritedFrom": {
106479
- "name": "SbbOpenCloseBaseElement",
106480
- "module": "core/base-elements/open-close-base-element.js"
106707
+ "name": "SbbFormAssociatedMixin",
106708
+ "module": "core/mixins/form-associated-mixin.js"
106481
106709
  }
106482
106710
  },
106483
106711
  {
106484
106712
  "kind": "method",
106485
- "name": "closeAll",
106713
+ "name": "reportValidity",
106486
106714
  "privacy": "public",
106487
106715
  "return": {
106488
106716
  "type": {
106489
- "text": "void"
106717
+ "text": "boolean"
106490
106718
  }
106491
106719
  },
106492
- "description": "Closes the menu and all related menus (nested and parent menus)."
106720
+ "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.",
106721
+ "inheritedFrom": {
106722
+ "name": "SbbFormAssociatedMixin",
106723
+ "module": "core/mixins/form-associated-mixin.js"
106724
+ }
106493
106725
  },
106494
106726
  {
106495
106727
  "kind": "method",
106496
- "name": "_close",
106497
- "privacy": "private",
106728
+ "name": "setCustomValidity",
106729
+ "privacy": "public",
106498
106730
  "return": {
106499
106731
  "type": {
106500
106732
  "text": "void"
@@ -106502,47 +106734,65 @@
106502
106734
  },
106503
106735
  "parameters": [
106504
106736
  {
106505
- "name": "closeAll",
106506
- "default": "false",
106507
- "description": "If true, it ensures animations are correct by toggling some states when closing all related menus at once.",
106508
- "optional": true
106737
+ "name": "message",
106738
+ "type": {
106739
+ "text": "string"
106740
+ }
106509
106741
  }
106510
- ]
106742
+ ],
106743
+ "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.",
106744
+ "inheritedFrom": {
106745
+ "name": "SbbFormAssociatedMixin",
106746
+ "module": "core/mixins/form-associated-mixin.js"
106747
+ }
106511
106748
  },
106512
106749
  {
106513
106750
  "kind": "method",
106514
- "name": "_isZeroAnimationDuration",
106751
+ "name": "_hasDisabledAncestor",
106515
106752
  "privacy": "private",
106516
106753
  "return": {
106517
106754
  "type": {
106518
106755
  "text": "boolean"
106519
106756
  }
106757
+ },
106758
+ "inheritedFrom": {
106759
+ "name": "SbbFormAssociatedMixin",
106760
+ "module": "core/mixins/form-associated-mixin.js"
106520
106761
  }
106521
106762
  },
106522
106763
  {
106523
106764
  "kind": "method",
106524
- "name": "_handleOpening",
106525
- "privacy": "private",
106765
+ "name": "updateFormValue",
106766
+ "privacy": "protected",
106526
106767
  "return": {
106527
106768
  "type": {
106528
106769
  "text": "void"
106529
106770
  }
106771
+ },
106772
+ "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",
106773
+ "inheritedFrom": {
106774
+ "name": "SbbFormAssociatedMixin",
106775
+ "module": "core/mixins/form-associated-mixin.js"
106530
106776
  }
106531
106777
  },
106532
106778
  {
106533
106779
  "kind": "method",
106534
- "name": "_handleClosing",
106535
- "privacy": "private",
106780
+ "name": "formState",
106781
+ "privacy": "protected",
106536
106782
  "return": {
106537
106783
  "type": {
106538
- "text": "void"
106784
+ "text": "FormRestoreState"
106539
106785
  }
106786
+ },
106787
+ "inheritedFrom": {
106788
+ "name": "SbbFormAssociatedMixin",
106789
+ "module": "core/mixins/form-associated-mixin.js"
106540
106790
  }
106541
106791
  },
106542
106792
  {
106543
106793
  "kind": "method",
106544
- "name": "_handleKeyDown",
106545
- "privacy": "private",
106794
+ "name": "setValidityFlag",
106795
+ "privacy": "protected",
106546
106796
  "return": {
106547
106797
  "type": {
106548
106798
  "text": "void"
@@ -106550,37 +106800,35 @@
106550
106800
  },
106551
106801
  "parameters": [
106552
106802
  {
106553
- "name": "evt",
106803
+ "name": "flag",
106554
106804
  "type": {
106555
- "text": "KeyboardEvent"
106805
+ "text": "T"
106806
+ }
106807
+ },
106808
+ {
106809
+ "name": "message",
106810
+ "type": {
106811
+ "text": "string"
106812
+ }
106813
+ },
106814
+ {
106815
+ "name": "flagValue",
106816
+ "optional": true,
106817
+ "type": {
106818
+ "text": "ValidityStateFlags[T]"
106556
106819
  }
106557
106820
  }
106558
- ]
106559
- },
106560
- {
106561
- "kind": "method",
106562
- "name": "_configureTrigger",
106563
- "privacy": "private",
106564
- "return": {
106565
- "type": {
106566
- "text": "void"
106567
- }
106568
- }
106569
- },
106570
- {
106571
- "kind": "method",
106572
- "name": "_attachWindowEvents",
106573
- "privacy": "private",
106574
- "return": {
106575
- "type": {
106576
- "text": "void"
106577
- }
106821
+ ],
106822
+ "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).",
106823
+ "inheritedFrom": {
106824
+ "name": "SbbFormAssociatedMixin",
106825
+ "module": "core/mixins/form-associated-mixin.js"
106578
106826
  }
106579
106827
  },
106580
106828
  {
106581
106829
  "kind": "method",
106582
- "name": "_interactiveElementClick",
106583
- "privacy": "private",
106830
+ "name": "removeValidityFlag",
106831
+ "privacy": "protected",
106584
106832
  "return": {
106585
106833
  "type": {
106586
106834
  "text": "void"
@@ -106588,250 +106836,158 @@
106588
106836
  },
106589
106837
  "parameters": [
106590
106838
  {
106591
- "name": "event",
106839
+ "name": "flag",
106592
106840
  "type": {
106593
- "text": "Event"
106841
+ "text": "T"
106594
106842
  }
106595
106843
  }
106596
- ]
106597
- },
106598
- {
106599
- "kind": "field",
106600
- "name": "_pointerDownListener",
106601
- "privacy": "private"
106602
- },
106603
- {
106604
- "kind": "field",
106605
- "name": "_closeOnBackdropClick",
106606
- "privacy": "private"
106607
- },
106608
- {
106609
- "kind": "method",
106610
- "name": "_nestedMenus",
106611
- "privacy": "private",
106612
- "return": {
106613
- "type": {
106614
- "text": "SbbMenuElement[]"
106615
- }
106616
- },
106617
- "description": "Converts the linked list into an array of SbbMenuElement."
106618
- },
106619
- {
106620
- "kind": "method",
106621
- "name": "_parentMenu",
106622
- "privacy": "private",
106623
- "return": {
106624
- "type": {
106625
- "text": "SbbMenuElement | null"
106626
- }
106627
- }
106628
- },
106629
- {
106630
- "kind": "method",
106631
- "name": "_mainMenu",
106632
- "privacy": "private",
106633
- "return": {
106634
- "type": {
106635
- "text": "SbbMenuElement"
106636
- }
106637
- },
106638
- "description": "The outermost menu."
106639
- },
106640
- {
106641
- "kind": "method",
106642
- "name": "_isNested",
106643
- "privacy": "private",
106644
- "return": {
106645
- "type": {
106646
- "text": "boolean"
106647
- }
106648
- }
106649
- },
106650
- {
106651
- "kind": "method",
106652
- "name": "_updateNestedInert",
106653
- "privacy": "private",
106654
- "return": {
106655
- "type": {
106656
- "text": "void"
106657
- }
106844
+ ],
106845
+ "description": "Removes the validity state flag entry and updates validity state.",
106846
+ "inheritedFrom": {
106847
+ "name": "SbbFormAssociatedMixin",
106848
+ "module": "core/mixins/form-associated-mixin.js"
106658
106849
  }
106659
106850
  },
106660
106851
  {
106661
106852
  "kind": "method",
106662
- "name": "_handleMouseOver",
106663
- "privacy": "private",
106853
+ "name": "validate",
106854
+ "privacy": "protected",
106664
106855
  "return": {
106665
106856
  "type": {
106666
106857
  "text": "void"
106667
106858
  }
106668
106859
  },
106669
- "parameters": [
106670
- {
106671
- "name": "event",
106672
- "type": {
106673
- "text": "MouseEvent"
106674
- }
106675
- }
106676
- ]
106860
+ "description": "To be called whenever the current element needs to be validated.",
106861
+ "inheritedFrom": {
106862
+ "name": "SbbFormAssociatedMixin",
106863
+ "module": "core/mixins/form-associated-mixin.js"
106864
+ }
106677
106865
  },
106678
106866
  {
106679
106867
  "kind": "method",
106680
- "name": "_onMenuAnimationEnd",
106681
- "privacy": "private",
106868
+ "name": "shouldValidate",
106869
+ "privacy": "protected",
106682
106870
  "return": {
106683
106871
  "type": {
106684
- "text": "void"
106872
+ "text": "boolean"
106685
106873
  }
106686
106874
  },
106687
106875
  "parameters": [
106688
106876
  {
106689
- "name": "event",
106877
+ "name": "name",
106690
106878
  "type": {
106691
- "text": "AnimationEvent"
106879
+ "text": "PropertyKey | undefined"
106692
106880
  }
106693
106881
  }
106694
- ]
106695
- },
106696
- {
106697
- "kind": "method",
106698
- "name": "_setMenuPosition",
106699
- "privacy": "private",
106700
- "return": {
106701
- "type": {
106702
- "text": "void"
106703
- }
106882
+ ],
106883
+ "description": "Whether validation should be run on a property change with the given name.",
106884
+ "inheritedFrom": {
106885
+ "name": "SbbFormAssociatedMixin",
106886
+ "module": "core/mixins/form-associated-mixin.js"
106704
106887
  }
106705
106888
  },
106706
106889
  {
106707
106890
  "kind": "method",
106708
- "name": "_syncNegative",
106891
+ "name": "_setInternalValidity",
106709
106892
  "privacy": "private",
106710
106893
  "return": {
106711
106894
  "type": {
106712
106895
  "text": "void"
106713
106896
  }
106897
+ },
106898
+ "inheritedFrom": {
106899
+ "name": "SbbFormAssociatedMixin",
106900
+ "module": "core/mixins/form-associated-mixin.js"
106714
106901
  }
106715
106902
  },
106716
106903
  {
106717
- "kind": "method",
106718
- "name": "_isMobile",
106904
+ "kind": "field",
106905
+ "name": "_preventScrollOnSpaceKeydown",
106719
106906
  "privacy": "private",
106720
- "return": {
106721
- "type": {
106722
- "text": "boolean"
106907
+ "description": "Prevents scrolling from pressing Space, when the event target is an action element.\nAlso sets active state.",
106908
+ "parameters": [
106909
+ {
106910
+ "description": "The origin event.",
106911
+ "name": "event"
106723
106912
  }
106913
+ ],
106914
+ "inheritedFrom": {
106915
+ "name": "SbbButtonLikeBaseElement",
106916
+ "module": "core/base-elements/button-base-element.js"
106724
106917
  }
106725
106918
  },
106726
106919
  {
106727
106920
  "kind": "field",
106728
- "name": "events",
106729
- "privacy": "public",
106730
- "static": true,
106731
- "readonly": true,
106732
- "default": "{ beforeopen: 'beforeopen', open: 'open', beforeclose: 'beforeclose', close: 'close', }",
106733
- "type": {
106734
- "text": "{\n beforeopen: 'beforeopen',\n open: 'open',\n beforeclose: 'beforeclose',\n close: 'close',\n }"
106735
- },
106921
+ "name": "_removeActiveMarker",
106922
+ "privacy": "private",
106736
106923
  "inheritedFrom": {
106737
- "name": "SbbOpenCloseBaseElement",
106738
- "module": "core/base-elements/open-close-base-element.js"
106924
+ "name": "SbbButtonLikeBaseElement",
106925
+ "module": "core/base-elements/button-base-element.js"
106739
106926
  }
106740
106927
  },
106741
106928
  {
106742
106929
  "kind": "field",
106743
- "name": "state",
106744
- "privacy": "protected",
106745
- "description": "The state of the component.",
106746
- "type": {
106747
- "text": "SbbOpenedClosedState"
106748
- },
106749
- "default": "'closed'",
106930
+ "name": "_dispatchClickEventOnSpaceKeyup",
106931
+ "privacy": "private",
106932
+ "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.",
106933
+ "parameters": [
106934
+ {
106935
+ "description": "The origin event.",
106936
+ "name": "event"
106937
+ }
106938
+ ],
106750
106939
  "inheritedFrom": {
106751
- "name": "SbbOpenCloseBaseElement",
106752
- "module": "core/base-elements/open-close-base-element.js"
106940
+ "name": "SbbButtonLikeBaseElement",
106941
+ "module": "core/base-elements/button-base-element.js"
106753
106942
  }
106754
106943
  },
106755
106944
  {
106756
106945
  "kind": "field",
106757
- "name": "_state",
106758
- "type": {
106759
- "text": "SbbOpenedClosedState"
106760
- },
106946
+ "name": "_dispatchClickEvent",
106761
106947
  "privacy": "private",
106762
106948
  "inheritedFrom": {
106763
- "name": "SbbOpenCloseBaseElement",
106764
- "module": "core/base-elements/open-close-base-element.js"
106949
+ "name": "SbbButtonLikeBaseElement",
106950
+ "module": "core/base-elements/button-base-element.js"
106765
106951
  }
106766
106952
  },
106767
106953
  {
106768
106954
  "kind": "field",
106769
- "name": "isOpen",
106955
+ "name": "maybeDisabled",
106770
106956
  "type": {
106771
- "text": "boolean"
106957
+ "text": "boolean | undefined"
106772
106958
  },
106773
- "privacy": "public",
106774
- "description": "Whether the element is open.",
106775
- "readonly": true,
106776
- "inheritedFrom": {
106777
- "name": "SbbOpenCloseBaseElement",
106778
- "module": "core/base-elements/open-close-base-element.js"
106779
- }
106780
- },
106781
- {
106782
- "kind": "method",
106783
- "name": "dispatchBeforeOpenEvent",
106784
106959
  "privacy": "protected",
106785
- "return": {
106786
- "type": {
106787
- "text": "boolean"
106788
- }
106789
- },
106960
+ "readonly": true,
106790
106961
  "inheritedFrom": {
106791
- "name": "SbbOpenCloseBaseElement",
106792
- "module": "core/base-elements/open-close-base-element.js"
106962
+ "name": "SbbActionBaseElement",
106963
+ "module": "core/base-elements/action-base-element.js"
106793
106964
  }
106794
106965
  },
106795
106966
  {
106796
- "kind": "method",
106797
- "name": "dispatchOpenEvent",
106798
- "privacy": "protected",
106799
- "return": {
106800
- "type": {
106801
- "text": "boolean"
106802
- }
106967
+ "kind": "field",
106968
+ "name": "maybeDisabledInteractive",
106969
+ "type": {
106970
+ "text": "boolean | undefined"
106803
106971
  },
106804
- "inheritedFrom": {
106805
- "name": "SbbOpenCloseBaseElement",
106806
- "module": "core/base-elements/open-close-base-element.js"
106807
- }
106808
- },
106809
- {
106810
- "kind": "method",
106811
- "name": "dispatchBeforeCloseEvent",
106812
106972
  "privacy": "protected",
106813
- "return": {
106814
- "type": {
106815
- "text": "boolean"
106816
- }
106817
- },
106973
+ "readonly": true,
106818
106974
  "inheritedFrom": {
106819
- "name": "SbbOpenCloseBaseElement",
106820
- "module": "core/base-elements/open-close-base-element.js"
106975
+ "name": "SbbActionBaseElement",
106976
+ "module": "core/base-elements/action-base-element.js"
106821
106977
  }
106822
106978
  },
106823
106979
  {
106824
106980
  "kind": "method",
106825
- "name": "dispatchCloseEvent",
106981
+ "name": "setupBaseEventHandlers",
106826
106982
  "privacy": "protected",
106827
106983
  "return": {
106828
106984
  "type": {
106829
- "text": "boolean"
106985
+ "text": "void"
106830
106986
  }
106831
106987
  },
106832
106988
  "inheritedFrom": {
106833
- "name": "SbbOpenCloseBaseElement",
106834
- "module": "core/base-elements/open-close-base-element.js"
106989
+ "name": "SbbActionBaseElement",
106990
+ "module": "core/base-elements/action-base-element.js"
106835
106991
  }
106836
106992
  },
106837
106993
  {
@@ -106940,66 +107096,110 @@
106940
107096
  }
106941
107097
  }
106942
107098
  ],
106943
- "attributes": [
107099
+ "mixins": [
106944
107100
  {
106945
- "name": "trigger",
106946
- "type": {
106947
- "text": "HTMLElement | null"
106948
- },
106949
- "default": "null",
106950
- "description": "The element that will trigger the menu overlay.\n\nFor attribute usage, provide an id reference.",
106951
- "fieldName": "trigger"
107101
+ "name": "SbbDisabledTabIndexActionMixin",
107102
+ "module": "core/mixins.js"
107103
+ },
107104
+ {
107105
+ "name": "SbbMenuActionCommonElementMixin",
107106
+ "module": "menu/common/menu-action-common.js"
106952
107107
  }
106953
107108
  ],
106954
107109
  "superclass": {
106955
- "name": "SbbOpenCloseBaseElement",
107110
+ "name": "SbbButtonBaseElement",
106956
107111
  "module": "core/base-elements.js"
106957
107112
  },
106958
- "tagName": "sbb-menu",
107113
+ "tagName": "sbb-menu-button",
106959
107114
  "customElement": true,
106960
- "events": [
107115
+ "attributes": [
106961
107116
  {
106962
- "name": "beforeopen",
107117
+ "name": "disabled-interactive",
106963
107118
  "type": {
106964
- "text": "Event"
107119
+ "text": "boolean"
106965
107120
  },
106966
- "description": "Emits whenever the component starts the opening transition. Can be canceled.",
107121
+ "default": "false",
107122
+ "description": "Whether the button should be aria-disabled but stay interactive.",
107123
+ "fieldName": "disabledInteractive",
106967
107124
  "inheritedFrom": {
106968
- "name": "SbbOpenCloseBaseElement",
106969
- "module": "core/base-elements/open-close-base-element.js"
107125
+ "name": "SbbDisabledInteractiveMixin",
107126
+ "module": "core/mixins/disabled-mixin.js"
106970
107127
  }
106971
107128
  },
106972
107129
  {
106973
- "name": "open",
107130
+ "name": "disabled",
107131
+ "description": "Whether the component is disabled.",
107132
+ "default": "false",
106974
107133
  "type": {
106975
- "text": "Event"
107134
+ "text": "boolean"
106976
107135
  },
106977
- "description": "Emits whenever the component is opened.",
107136
+ "fieldName": "disabled",
106978
107137
  "inheritedFrom": {
106979
- "name": "SbbOpenCloseBaseElement",
106980
- "module": "core/base-elements/open-close-base-element.js"
107138
+ "name": "SbbDisabledMixin",
107139
+ "module": "core/mixins/disabled-mixin.js"
106981
107140
  }
106982
107141
  },
106983
107142
  {
106984
- "name": "beforeclose",
107143
+ "name": "icon-name",
106985
107144
  "type": {
106986
- "text": "Event"
107145
+ "text": "string"
106987
107146
  },
106988
- "description": "Emits whenever the component begins the closing transition. Can be canceled.",
107147
+ "default": "''",
107148
+ "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.",
107149
+ "fieldName": "iconName",
106989
107150
  "inheritedFrom": {
106990
- "name": "SbbOpenCloseBaseElement",
106991
- "module": "core/base-elements/open-close-base-element.js"
107151
+ "name": "SbbIconNameMixin",
107152
+ "module": "icon/icon-name-mixin.js"
106992
107153
  }
106993
107154
  },
106994
107155
  {
106995
- "name": "close",
107156
+ "name": "value",
106996
107157
  "type": {
106997
- "text": "Event"
107158
+ "text": "string"
106998
107159
  },
106999
- "description": "Emits whenever the component is closed.",
107160
+ "default": "''",
107161
+ "description": "Value of the form element.",
107162
+ "fieldName": "value",
107000
107163
  "inheritedFrom": {
107001
- "name": "SbbOpenCloseBaseElement",
107002
- "module": "core/base-elements/open-close-base-element.js"
107164
+ "name": "SbbButtonBaseElement",
107165
+ "module": "core/base-elements/button-base-element.js"
107166
+ }
107167
+ },
107168
+ {
107169
+ "name": "type",
107170
+ "description": "The type attribute to use for the button.",
107171
+ "default": "'button'",
107172
+ "type": {
107173
+ "text": "SbbButtonType"
107174
+ },
107175
+ "fieldName": "type",
107176
+ "inheritedFrom": {
107177
+ "name": "SbbButtonBaseElement",
107178
+ "module": "core/base-elements/button-base-element.js"
107179
+ }
107180
+ },
107181
+ {
107182
+ "name": "form",
107183
+ "description": "The `<form>` element to associate the button with.",
107184
+ "type": {
107185
+ "text": "HTMLFormElement | null"
107186
+ },
107187
+ "fieldName": "form",
107188
+ "inheritedFrom": {
107189
+ "name": "SbbButtonBaseElement",
107190
+ "module": "core/base-elements/button-base-element.js"
107191
+ }
107192
+ },
107193
+ {
107194
+ "name": "name",
107195
+ "description": "Name of the form element. Will be read from name attribute.",
107196
+ "type": {
107197
+ "text": "string"
107198
+ },
107199
+ "fieldName": "name",
107200
+ "inheritedFrom": {
107201
+ "name": "SbbFormAssociatedMixin",
107202
+ "module": "core/mixins/form-associated-mixin.js"
107003
107203
  }
107004
107204
  }
107005
107205
  ]
@@ -107008,37 +107208,33 @@
107008
107208
  "exports": [
107009
107209
  {
107010
107210
  "kind": "js",
107011
- "name": "SbbMenuElement",
107211
+ "name": "SbbMenuButtonElement",
107012
107212
  "declaration": {
107013
- "name": "SbbMenuElement",
107014
- "module": "menu/menu/menu.component.js"
107213
+ "name": "SbbMenuButtonElement",
107214
+ "module": "menu/menu-button/menu-button.component.js"
107015
107215
  }
107016
107216
  }
107017
107217
  ]
107018
107218
  },
107019
107219
  {
107020
107220
  "kind": "javascript-module",
107021
- "path": "menu/menu-button/menu-button.component.js",
107221
+ "path": "menu/menu/menu.component.js",
107022
107222
  "declarations": [
107023
107223
  {
107024
107224
  "kind": "class",
107025
- "description": "It displays a button element that can be used in the `sbb-menu` component.",
107026
- "name": "SbbMenuButtonElement",
107225
+ "description": "It displays a contextual menu with one or more action element.",
107226
+ "name": "SbbMenuElement",
107027
107227
  "cssProperties": [
107028
107228
  {
107029
- "description": "Can be used to modify horizontal padding.",
107030
- "name": "--sbb-menu-action-outer-horizontal-padding",
107031
- "default": "var(--sbb-spacing-fixed-3x)"
107229
+ "description": "To specify a custom stack order, the `z-index` can be overridden by defining this CSS variable. The default `z-index` of the component is set to `var(--sbb-overlay-default-z-index)` with a value of `1000`.",
107230
+ "name": "--sbb-menu-z-index",
107231
+ "default": "var(--sbb-overlay-default-z-index)"
107032
107232
  }
107033
107233
  ],
107034
107234
  "slots": [
107035
107235
  {
107036
- "description": "Use the unnamed slot to add content to the `sbb-menu-button`.",
107236
+ "description": "Use the unnamed slot to add `sbb-menu-button`/`sbb-menu-link` or other elements to the menu.",
107037
107237
  "name": ""
107038
- },
107039
- {
107040
- "description": "Use this slot to provide an icon. If `icon-name` is set, a `sbb-icon` will be used.",
107041
- "name": "icon"
107042
107238
  }
107043
107239
  ],
107044
107240
  "members": [
@@ -107055,417 +107251,275 @@
107055
107251
  "name": "SbbElement",
107056
107252
  "module": "core/base-elements/element.js"
107057
107253
  },
107058
- "default": "'sbb-menu-button'"
107254
+ "default": "'sbb-menu'"
107059
107255
  },
107060
107256
  {
107061
107257
  "kind": "field",
107062
107258
  "name": "role",
107063
107259
  "type": {
107064
- "text": "ElementInternals['role']"
107260
+ "text": "string"
107065
107261
  },
107066
107262
  "privacy": "public",
107067
107263
  "static": true,
107068
107264
  "readonly": true,
107069
- "default": "'menuitem'",
107070
- "inheritedFrom": {
107071
- "name": "SbbButtonLikeBaseElement",
107072
- "module": "core/base-elements/button-base-element.js"
107073
- }
107265
+ "default": "'menu'"
107074
107266
  },
107075
107267
  {
107076
107268
  "kind": "field",
107077
- "name": "disabledInteractive",
107269
+ "name": "trigger",
107078
107270
  "type": {
107079
- "text": "boolean"
107271
+ "text": "HTMLElement | null"
107080
107272
  },
107081
107273
  "privacy": "public",
107082
- "default": "false",
107083
- "description": "Whether the button should be aria-disabled but stay interactive.",
107084
- "attribute": "disabled-interactive",
107085
- "reflects": true,
107086
- "inheritedFrom": {
107087
- "name": "SbbDisabledInteractiveMixin",
107088
- "module": "core/mixins/disabled-mixin.js"
107089
- }
107274
+ "default": "null",
107275
+ "description": "The element that will trigger the menu overlay.\n\nFor attribute usage, provide an id reference.",
107276
+ "attribute": "trigger"
107090
107277
  },
107091
107278
  {
107092
107279
  "kind": "field",
107093
- "name": "disabled",
107094
- "privacy": "public",
107095
- "description": "Whether the component is disabled.",
107096
- "default": "false",
107280
+ "name": "_menu",
107097
107281
  "type": {
107098
- "text": "boolean"
107282
+ "text": "HTMLDivElement"
107099
107283
  },
107100
- "attribute": "disabled",
107101
- "reflects": true,
107102
- "inheritedFrom": {
107103
- "name": "SbbDisabledMixin",
107104
- "module": "core/mixins/disabled-mixin.js"
107105
- }
107284
+ "privacy": "private"
107106
107285
  },
107107
107286
  {
107108
107287
  "kind": "field",
107109
- "name": "#disabled",
107110
- "privacy": "private",
107288
+ "name": "_triggerElement",
107111
107289
  "type": {
107112
- "text": "boolean"
107290
+ "text": "HTMLElement | null"
107113
107291
  },
107114
- "default": "false",
107115
- "inheritedFrom": {
107116
- "name": "SbbDisabledMixin",
107117
- "module": "core/mixins/disabled-mixin.js"
107118
- }
107292
+ "privacy": "private",
107293
+ "default": "null"
107119
107294
  },
107120
107295
  {
107121
- "kind": "method",
107122
- "name": "isDisabledExternally",
107123
- "privacy": "protected",
107124
- "return": {
107125
- "type": {
107126
- "text": "boolean"
107127
- }
107296
+ "kind": "field",
107297
+ "name": "_triggerAbortController",
107298
+ "type": {
107299
+ "text": "AbortController"
107128
107300
  },
107129
- "description": "Will be used as 'or' check to the current disabled state.\nCan e.g. be used to read disabled state of a group.",
107130
- "inheritedFrom": {
107131
- "name": "SbbDisabledMixin",
107132
- "module": "core/mixins/disabled-mixin.js"
107133
- }
107301
+ "privacy": "private"
107134
107302
  },
107135
107303
  {
107136
107304
  "kind": "field",
107137
- "name": "styles",
107305
+ "name": "_isPointerDownEventOnMenu",
107138
107306
  "type": {
107139
- "text": "CSSResultGroup"
107307
+ "text": "boolean"
107140
107308
  },
107141
- "privacy": "public",
107142
- "static": true,
107143
- "default": "[boxSizingStyles, unsafeCSS(style)]",
107144
- "inheritedFrom": {
107145
- "name": "SbbMenuActionCommonElementMixin",
107146
- "module": "menu/common/menu-action-common.js"
107147
- }
107148
- },
107149
- {
107150
- "kind": "method",
107151
- "name": "renderTemplate",
107152
- "privacy": "protected",
107153
- "return": {
107154
- "type": {
107155
- "text": "TemplateResult"
107156
- }
107157
- },
107158
- "description": "Override this method to render the component template.",
107159
- "inheritedFrom": {
107160
- "name": "SbbActionBaseElement",
107161
- "module": "core/base-elements/action-base-element.js"
107162
- }
107309
+ "privacy": "private",
107310
+ "default": "false"
107163
107311
  },
107164
107312
  {
107165
107313
  "kind": "field",
107166
- "name": "iconName",
107314
+ "name": "_windowEventsController",
107167
107315
  "type": {
107168
- "text": "string"
107316
+ "text": "AbortController"
107169
107317
  },
107170
- "privacy": "public",
107171
- "default": "''",
107172
- "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.",
107173
- "attribute": "icon-name",
107174
- "inheritedFrom": {
107175
- "name": "SbbIconNameMixin",
107176
- "module": "icon/icon-name-mixin.js"
107177
- }
107318
+ "privacy": "private"
107178
107319
  },
107179
107320
  {
107180
- "kind": "method",
107181
- "name": "renderIconSlot",
107182
- "privacy": "protected",
107183
- "return": {
107184
- "type": {
107185
- "text": "TemplateResult"
107186
- }
107187
- },
107188
- "parameters": [
107189
- {
107190
- "name": "classname",
107191
- "optional": true,
107192
- "type": {
107193
- "text": "string"
107194
- }
107195
- }
107196
- ],
107197
- "inheritedFrom": {
107198
- "name": "SbbIconNameMixin",
107199
- "module": "icon/icon-name-mixin.js"
107200
- }
107321
+ "kind": "field",
107322
+ "name": "_escapableOverlayController",
107323
+ "privacy": "private",
107324
+ "default": "new SbbEscapableOverlayController(this)"
107201
107325
  },
107202
107326
  {
107203
- "kind": "method",
107204
- "name": "renderIconName",
107205
- "privacy": "protected",
107206
- "return": {
107207
- "type": {
107208
- "text": "string"
107209
- }
107210
- },
107211
- "inheritedFrom": {
107212
- "name": "SbbIconNameMixin",
107213
- "module": "icon/icon-name-mixin.js"
107214
- }
107327
+ "kind": "field",
107328
+ "name": "_focusTrapController",
107329
+ "privacy": "private",
107330
+ "default": "new SbbFocusTrapController(this)"
107215
107331
  },
107216
107332
  {
107217
- "kind": "method",
107218
- "name": "_renderIconName",
107333
+ "kind": "field",
107334
+ "name": "_scrollHandler",
107219
107335
  "privacy": "private",
107220
- "return": {
107221
- "type": {
107222
- "text": "string"
107223
- }
107224
- },
107225
- "inheritedFrom": {
107226
- "name": "SbbIconNameMixin",
107227
- "module": "icon/icon-name-mixin.js"
107228
- }
107336
+ "default": "new SbbScrollHandler()"
107229
107337
  },
107230
107338
  {
107231
107339
  "kind": "field",
107232
- "name": "_elementsOnWhichEnterPressTriggersSubmit",
107233
- "type": {
107234
- "text": "array"
107235
- },
107340
+ "name": "_inertController",
107236
107341
  "privacy": "private",
107237
- "readonly": true,
107238
- "default": "[ 'input', 'sbb-date-input', 'sbb-time-input', ]",
107239
- "inheritedFrom": {
107240
- "name": "SbbButtonBaseElement",
107241
- "module": "core/base-elements/button-base-element.js"
107242
- }
107342
+ "default": "new SbbInertController(this)"
107243
107343
  },
107244
107344
  {
107245
107345
  "kind": "field",
107246
- "name": "value",
107247
- "type": {
107248
- "text": "string"
107249
- },
107250
- "privacy": "public",
107251
- "inheritedFrom": {
107252
- "name": "SbbButtonBaseElement",
107253
- "module": "core/base-elements/button-base-element.js"
107254
- },
107255
- "default": "''",
107256
- "description": "Value of the form element.",
107257
- "attribute": "value"
107346
+ "name": "_mobileBreakpoint",
107347
+ "privacy": "private",
107348
+ "default": "SbbMediaQueryBreakpointSmallAndBelow"
107258
107349
  },
107259
107350
  {
107260
107351
  "kind": "field",
107261
- "name": "type",
107262
- "privacy": "public",
107263
- "description": "The type attribute to use for the button.",
107264
- "default": "'button'",
107265
- "type": {
107266
- "text": "SbbButtonType"
107267
- },
107268
- "attribute": "type",
107269
- "inheritedFrom": {
107270
- "name": "SbbButtonBaseElement",
107271
- "module": "core/base-elements/button-base-element.js"
107272
- }
107352
+ "name": "_mediaMatcher",
107353
+ "privacy": "private",
107354
+ "default": "new SbbMediaMatcherController(this, { [this._mobileBreakpoint]: (matches) => { if (matches && (this.state === 'opening' || this.state === 'opened')) { this._scrollHandler.disableScroll(); } else { this._scrollHandler.enableScroll(); } }, })"
107273
107355
  },
107274
107356
  {
107275
107357
  "kind": "field",
107276
- "name": "form",
107277
- "type": {
107278
- "text": "HTMLFormElement | null"
107279
- },
107280
- "privacy": "public",
107281
- "description": "The `<form>` element to associate the button with.",
107282
- "inheritedFrom": {
107283
- "name": "SbbButtonBaseElement",
107284
- "module": "core/base-elements/button-base-element.js"
107285
- },
107286
- "attribute": "form"
107358
+ "name": "_darkModeController",
107359
+ "privacy": "private",
107360
+ "default": "new SbbDarkModeController(this, () => this._syncNegative())"
107287
107361
  },
107288
107362
  {
107289
107363
  "kind": "field",
107290
- "name": "_formId",
107291
- "type": {
107292
- "text": "string"
107293
- },
107364
+ "name": "_language",
107294
107365
  "privacy": "private",
107295
- "default": "''",
107296
- "inheritedFrom": {
107297
- "name": "SbbButtonBaseElement",
107298
- "module": "core/base-elements/button-base-element.js"
107299
- }
107366
+ "default": "new SbbLanguageController(this)"
107300
107367
  },
107301
107368
  {
107302
107369
  "kind": "field",
107303
- "name": "_handleButtonClick",
107370
+ "name": "_nestedMenu",
107371
+ "type": {
107372
+ "text": "SbbMenuElement | null"
107373
+ },
107304
107374
  "privacy": "private",
107305
- "inheritedFrom": {
107306
- "name": "SbbButtonBaseElement",
107307
- "module": "core/base-elements/button-base-element.js"
107308
- }
107375
+ "default": "null"
107309
107376
  },
107310
107377
  {
107311
107378
  "kind": "method",
107312
- "name": "_requestSubmit",
107313
- "privacy": "private",
107379
+ "name": "escapeStrategy",
107380
+ "privacy": "public",
107314
107381
  "return": {
107315
107382
  "type": {
107316
107383
  "text": "void"
107317
107384
  }
107318
107385
  },
107319
- "parameters": [
107320
- {
107321
- "name": "form",
107322
- "type": {
107323
- "text": "HTMLFormElement"
107324
- }
107325
- }
107326
- ],
107386
+ "description": "The method which is called on escape key press. Defaults to calling close()",
107327
107387
  "inheritedFrom": {
107328
- "name": "SbbButtonBaseElement",
107329
- "module": "core/base-elements/button-base-element.js"
107388
+ "name": "SbbOpenCloseBaseElement",
107389
+ "module": "core/base-elements/open-close-base-element.js"
107330
107390
  }
107331
107391
  },
107332
107392
  {
107333
- "kind": "field",
107334
- "name": "_formKeyDown",
107335
- "privacy": "private",
107393
+ "kind": "method",
107394
+ "name": "open",
107395
+ "privacy": "public",
107396
+ "return": {
107397
+ "type": {
107398
+ "text": "void"
107399
+ }
107400
+ },
107401
+ "description": "Opens the menu on trigger click.",
107336
107402
  "inheritedFrom": {
107337
- "name": "SbbButtonBaseElement",
107338
- "module": "core/base-elements/button-base-element.js"
107403
+ "name": "SbbOpenCloseBaseElement",
107404
+ "module": "core/base-elements/open-close-base-element.js"
107339
107405
  }
107340
107406
  },
107341
107407
  {
107342
- "kind": "field",
107343
- "name": "formAssociated",
107344
- "type": {
107345
- "text": "boolean"
107346
- },
107408
+ "kind": "method",
107409
+ "name": "close",
107347
107410
  "privacy": "public",
107348
- "static": true,
107349
- "default": "true",
107411
+ "return": {
107412
+ "type": {
107413
+ "text": "void"
107414
+ }
107415
+ },
107416
+ "description": "Closes the menu and all its nested menus.",
107350
107417
  "inheritedFrom": {
107351
- "name": "SbbFormAssociatedMixin",
107352
- "module": "core/mixins/form-associated-mixin.js"
107418
+ "name": "SbbOpenCloseBaseElement",
107419
+ "module": "core/base-elements/open-close-base-element.js"
107353
107420
  }
107354
107421
  },
107355
107422
  {
107356
- "kind": "field",
107357
- "name": "name",
107423
+ "kind": "method",
107424
+ "name": "closeAll",
107358
107425
  "privacy": "public",
107359
- "description": "Name of the form element. Will be read from name attribute.",
107360
- "type": {
107361
- "text": "string"
107426
+ "return": {
107427
+ "type": {
107428
+ "text": "void"
107429
+ }
107362
107430
  },
107363
- "attribute": "name",
107364
- "inheritedFrom": {
107365
- "name": "SbbFormAssociatedMixin",
107366
- "module": "core/mixins/form-associated-mixin.js"
107367
- }
107431
+ "description": "Closes the menu and all related menus (nested and parent menus)."
107368
107432
  },
107369
107433
  {
107370
- "kind": "field",
107371
- "name": "validity",
107372
- "type": {
107373
- "text": "ValidityState"
107434
+ "kind": "method",
107435
+ "name": "_close",
107436
+ "privacy": "private",
107437
+ "return": {
107438
+ "type": {
107439
+ "text": "void"
107440
+ }
107374
107441
  },
107375
- "privacy": "public",
107376
- "description": "Returns the ValidityState object for this element.",
107377
- "readonly": true,
107378
- "inheritedFrom": {
107379
- "name": "SbbFormAssociatedMixin",
107380
- "module": "core/mixins/form-associated-mixin.js"
107381
- }
107442
+ "parameters": [
107443
+ {
107444
+ "name": "closeAll",
107445
+ "default": "false",
107446
+ "description": "If true, it ensures animations are correct by toggling some states when closing all related menus at once.",
107447
+ "optional": true
107448
+ }
107449
+ ]
107382
107450
  },
107383
107451
  {
107384
- "kind": "field",
107385
- "name": "validationMessage",
107386
- "type": {
107387
- "text": "string"
107388
- },
107389
- "privacy": "public",
107390
- "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.",
107391
- "readonly": true,
107392
- "inheritedFrom": {
107393
- "name": "SbbFormAssociatedMixin",
107394
- "module": "core/mixins/form-associated-mixin.js"
107452
+ "kind": "method",
107453
+ "name": "_isZeroAnimationDuration",
107454
+ "privacy": "private",
107455
+ "return": {
107456
+ "type": {
107457
+ "text": "boolean"
107458
+ }
107395
107459
  }
107396
107460
  },
107397
107461
  {
107398
- "kind": "field",
107399
- "name": "willValidate",
107400
- "type": {
107401
- "text": "boolean"
107402
- },
107403
- "privacy": "public",
107404
- "description": "Returns true if this element will be validated\nwhen the form is submitted; false otherwise.",
107405
- "readonly": true,
107406
- "inheritedFrom": {
107407
- "name": "SbbFormAssociatedMixin",
107408
- "module": "core/mixins/form-associated-mixin.js"
107462
+ "kind": "method",
107463
+ "name": "_handleOpening",
107464
+ "privacy": "private",
107465
+ "return": {
107466
+ "type": {
107467
+ "text": "void"
107468
+ }
107409
107469
  }
107410
107470
  },
107411
107471
  {
107412
- "kind": "field",
107413
- "name": "_validityStates",
107472
+ "kind": "method",
107473
+ "name": "_handleClosing",
107414
107474
  "privacy": "private",
107415
- "default": "new Map< keyof ValidityStateFlags, { flagValue: unknown; message: string } >()",
107416
- "inheritedFrom": {
107417
- "name": "SbbFormAssociatedMixin",
107418
- "module": "core/mixins/form-associated-mixin.js"
107475
+ "return": {
107476
+ "type": {
107477
+ "text": "void"
107478
+ }
107419
107479
  }
107420
107480
  },
107421
107481
  {
107422
- "kind": "field",
107423
- "name": "formDisabled",
107424
- "type": {
107425
- "text": "boolean"
107482
+ "kind": "method",
107483
+ "name": "_handleKeyDown",
107484
+ "privacy": "private",
107485
+ "return": {
107486
+ "type": {
107487
+ "text": "void"
107488
+ }
107426
107489
  },
107427
- "privacy": "protected",
107428
- "default": "false",
107429
- "description": "Whenever a surrounding form or fieldset is changing its disabled state.",
107430
- "inheritedFrom": {
107431
- "name": "SbbFormAssociatedMixin",
107432
- "module": "core/mixins/form-associated-mixin.js"
107433
- }
107490
+ "parameters": [
107491
+ {
107492
+ "name": "evt",
107493
+ "type": {
107494
+ "text": "KeyboardEvent"
107495
+ }
107496
+ }
107497
+ ]
107434
107498
  },
107435
107499
  {
107436
107500
  "kind": "method",
107437
- "name": "checkValidity",
107438
- "privacy": "public",
107501
+ "name": "_configureTrigger",
107502
+ "privacy": "private",
107439
107503
  "return": {
107440
107504
  "type": {
107441
- "text": "boolean"
107505
+ "text": "void"
107442
107506
  }
107443
- },
107444
- "description": "Returns true if this element has no validity problems; false otherwise.\nFires an invalid event at the element in the latter case.",
107445
- "inheritedFrom": {
107446
- "name": "SbbFormAssociatedMixin",
107447
- "module": "core/mixins/form-associated-mixin.js"
107448
107507
  }
107449
107508
  },
107450
107509
  {
107451
107510
  "kind": "method",
107452
- "name": "reportValidity",
107453
- "privacy": "public",
107511
+ "name": "_attachWindowEvents",
107512
+ "privacy": "private",
107454
107513
  "return": {
107455
107514
  "type": {
107456
- "text": "boolean"
107515
+ "text": "void"
107457
107516
  }
107458
- },
107459
- "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.",
107460
- "inheritedFrom": {
107461
- "name": "SbbFormAssociatedMixin",
107462
- "module": "core/mixins/form-associated-mixin.js"
107463
107517
  }
107464
107518
  },
107465
107519
  {
107466
107520
  "kind": "method",
107467
- "name": "setCustomValidity",
107468
- "privacy": "public",
107521
+ "name": "_interactiveElementClick",
107522
+ "privacy": "private",
107469
107523
  "return": {
107470
107524
  "type": {
107471
107525
  "text": "void"
@@ -107473,65 +107527,79 @@
107473
107527
  },
107474
107528
  "parameters": [
107475
107529
  {
107476
- "name": "message",
107530
+ "name": "event",
107477
107531
  "type": {
107478
- "text": "string"
107532
+ "text": "Event"
107479
107533
  }
107480
107534
  }
107481
- ],
107482
- "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.",
107483
- "inheritedFrom": {
107484
- "name": "SbbFormAssociatedMixin",
107485
- "module": "core/mixins/form-associated-mixin.js"
107486
- }
107535
+ ]
107536
+ },
107537
+ {
107538
+ "kind": "field",
107539
+ "name": "_pointerDownListener",
107540
+ "privacy": "private"
107541
+ },
107542
+ {
107543
+ "kind": "field",
107544
+ "name": "_closeOnBackdropClick",
107545
+ "privacy": "private"
107487
107546
  },
107488
107547
  {
107489
107548
  "kind": "method",
107490
- "name": "_hasDisabledAncestor",
107549
+ "name": "_nestedMenus",
107491
107550
  "privacy": "private",
107492
107551
  "return": {
107493
107552
  "type": {
107494
- "text": "boolean"
107553
+ "text": "SbbMenuElement[]"
107495
107554
  }
107496
107555
  },
107497
- "inheritedFrom": {
107498
- "name": "SbbFormAssociatedMixin",
107499
- "module": "core/mixins/form-associated-mixin.js"
107556
+ "description": "Converts the linked list into an array of SbbMenuElement."
107557
+ },
107558
+ {
107559
+ "kind": "method",
107560
+ "name": "_parentMenu",
107561
+ "privacy": "private",
107562
+ "return": {
107563
+ "type": {
107564
+ "text": "SbbMenuElement | null"
107565
+ }
107500
107566
  }
107501
107567
  },
107502
107568
  {
107503
107569
  "kind": "method",
107504
- "name": "updateFormValue",
107505
- "privacy": "protected",
107570
+ "name": "_mainMenu",
107571
+ "privacy": "private",
107506
107572
  "return": {
107507
107573
  "type": {
107508
- "text": "void"
107574
+ "text": "SbbMenuElement"
107509
107575
  }
107510
107576
  },
107511
- "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",
107512
- "inheritedFrom": {
107513
- "name": "SbbFormAssociatedMixin",
107514
- "module": "core/mixins/form-associated-mixin.js"
107577
+ "description": "The outermost menu."
107578
+ },
107579
+ {
107580
+ "kind": "method",
107581
+ "name": "_isNested",
107582
+ "privacy": "private",
107583
+ "return": {
107584
+ "type": {
107585
+ "text": "boolean"
107586
+ }
107515
107587
  }
107516
107588
  },
107517
107589
  {
107518
107590
  "kind": "method",
107519
- "name": "formState",
107520
- "privacy": "protected",
107591
+ "name": "_updateNestedInert",
107592
+ "privacy": "private",
107521
107593
  "return": {
107522
107594
  "type": {
107523
- "text": "FormRestoreState"
107595
+ "text": "void"
107524
107596
  }
107525
- },
107526
- "inheritedFrom": {
107527
- "name": "SbbFormAssociatedMixin",
107528
- "module": "core/mixins/form-associated-mixin.js"
107529
107597
  }
107530
107598
  },
107531
107599
  {
107532
107600
  "kind": "method",
107533
- "name": "setValidityFlag",
107534
- "privacy": "protected",
107601
+ "name": "_handleMouseOver",
107602
+ "privacy": "private",
107535
107603
  "return": {
107536
107604
  "type": {
107537
107605
  "text": "void"
@@ -107539,35 +107607,17 @@
107539
107607
  },
107540
107608
  "parameters": [
107541
107609
  {
107542
- "name": "flag",
107543
- "type": {
107544
- "text": "T"
107545
- }
107546
- },
107547
- {
107548
- "name": "message",
107549
- "type": {
107550
- "text": "string"
107551
- }
107552
- },
107553
- {
107554
- "name": "flagValue",
107555
- "optional": true,
107610
+ "name": "event",
107556
107611
  "type": {
107557
- "text": "ValidityStateFlags[T]"
107612
+ "text": "MouseEvent"
107558
107613
  }
107559
107614
  }
107560
- ],
107561
- "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).",
107562
- "inheritedFrom": {
107563
- "name": "SbbFormAssociatedMixin",
107564
- "module": "core/mixins/form-associated-mixin.js"
107565
- }
107615
+ ]
107566
107616
  },
107567
107617
  {
107568
107618
  "kind": "method",
107569
- "name": "removeValidityFlag",
107570
- "privacy": "protected",
107619
+ "name": "_onMenuAnimationEnd",
107620
+ "privacy": "private",
107571
107621
  "return": {
107572
107622
  "type": {
107573
107623
  "text": "void"
@@ -107575,158 +107625,152 @@
107575
107625
  },
107576
107626
  "parameters": [
107577
107627
  {
107578
- "name": "flag",
107628
+ "name": "event",
107579
107629
  "type": {
107580
- "text": "T"
107630
+ "text": "AnimationEvent"
107581
107631
  }
107582
107632
  }
107583
- ],
107584
- "description": "Removes the validity state flag entry and updates validity state.",
107585
- "inheritedFrom": {
107586
- "name": "SbbFormAssociatedMixin",
107587
- "module": "core/mixins/form-associated-mixin.js"
107588
- }
107633
+ ]
107589
107634
  },
107590
107635
  {
107591
107636
  "kind": "method",
107592
- "name": "validate",
107593
- "privacy": "protected",
107637
+ "name": "_setMenuPosition",
107638
+ "privacy": "private",
107594
107639
  "return": {
107595
107640
  "type": {
107596
107641
  "text": "void"
107597
107642
  }
107598
- },
107599
- "description": "To be called whenever the current element needs to be validated.",
107600
- "inheritedFrom": {
107601
- "name": "SbbFormAssociatedMixin",
107602
- "module": "core/mixins/form-associated-mixin.js"
107603
107643
  }
107604
107644
  },
107605
107645
  {
107606
107646
  "kind": "method",
107607
- "name": "shouldValidate",
107608
- "privacy": "protected",
107647
+ "name": "_syncNegative",
107648
+ "privacy": "private",
107609
107649
  "return": {
107610
107650
  "type": {
107611
- "text": "boolean"
107612
- }
107613
- },
107614
- "parameters": [
107615
- {
107616
- "name": "name",
107617
- "type": {
107618
- "text": "PropertyKey | undefined"
107619
- }
107651
+ "text": "void"
107620
107652
  }
107621
- ],
107622
- "description": "Whether validation should be run on a property change with the given name.",
107623
- "inheritedFrom": {
107624
- "name": "SbbFormAssociatedMixin",
107625
- "module": "core/mixins/form-associated-mixin.js"
107626
107653
  }
107627
107654
  },
107628
107655
  {
107629
107656
  "kind": "method",
107630
- "name": "_setInternalValidity",
107657
+ "name": "_isMobile",
107631
107658
  "privacy": "private",
107632
107659
  "return": {
107633
107660
  "type": {
107634
- "text": "void"
107661
+ "text": "boolean"
107635
107662
  }
107636
- },
107637
- "inheritedFrom": {
107638
- "name": "SbbFormAssociatedMixin",
107639
- "module": "core/mixins/form-associated-mixin.js"
107640
107663
  }
107641
107664
  },
107642
107665
  {
107643
107666
  "kind": "field",
107644
- "name": "_preventScrollOnSpaceKeydown",
107645
- "privacy": "private",
107646
- "description": "Prevents scrolling from pressing Space, when the event target is an action element.\nAlso sets active state.",
107647
- "parameters": [
107648
- {
107649
- "description": "The origin event.",
107650
- "name": "event"
107651
- }
107652
- ],
107667
+ "name": "events",
107668
+ "privacy": "public",
107669
+ "static": true,
107670
+ "readonly": true,
107671
+ "default": "{ beforeopen: 'beforeopen', open: 'open', beforeclose: 'beforeclose', close: 'close', }",
107672
+ "type": {
107673
+ "text": "{\n beforeopen: 'beforeopen',\n open: 'open',\n beforeclose: 'beforeclose',\n close: 'close',\n }"
107674
+ },
107653
107675
  "inheritedFrom": {
107654
- "name": "SbbButtonLikeBaseElement",
107655
- "module": "core/base-elements/button-base-element.js"
107676
+ "name": "SbbOpenCloseBaseElement",
107677
+ "module": "core/base-elements/open-close-base-element.js"
107656
107678
  }
107657
107679
  },
107658
107680
  {
107659
107681
  "kind": "field",
107660
- "name": "_removeActiveMarker",
107661
- "privacy": "private",
107682
+ "name": "state",
107683
+ "privacy": "protected",
107684
+ "description": "The state of the component.",
107685
+ "type": {
107686
+ "text": "SbbOpenedClosedState"
107687
+ },
107688
+ "default": "'closed'",
107662
107689
  "inheritedFrom": {
107663
- "name": "SbbButtonLikeBaseElement",
107664
- "module": "core/base-elements/button-base-element.js"
107690
+ "name": "SbbOpenCloseBaseElement",
107691
+ "module": "core/base-elements/open-close-base-element.js"
107665
107692
  }
107666
107693
  },
107667
107694
  {
107668
107695
  "kind": "field",
107669
- "name": "_dispatchClickEventOnSpaceKeyup",
107696
+ "name": "_state",
107697
+ "type": {
107698
+ "text": "SbbOpenedClosedState"
107699
+ },
107670
107700
  "privacy": "private",
107671
- "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.",
107672
- "parameters": [
107673
- {
107674
- "description": "The origin event.",
107675
- "name": "event"
107676
- }
107677
- ],
107678
107701
  "inheritedFrom": {
107679
- "name": "SbbButtonLikeBaseElement",
107680
- "module": "core/base-elements/button-base-element.js"
107702
+ "name": "SbbOpenCloseBaseElement",
107703
+ "module": "core/base-elements/open-close-base-element.js"
107681
107704
  }
107682
107705
  },
107683
107706
  {
107684
107707
  "kind": "field",
107685
- "name": "_dispatchClickEvent",
107686
- "privacy": "private",
107708
+ "name": "isOpen",
107709
+ "type": {
107710
+ "text": "boolean"
107711
+ },
107712
+ "privacy": "public",
107713
+ "description": "Whether the element is open.",
107714
+ "readonly": true,
107687
107715
  "inheritedFrom": {
107688
- "name": "SbbButtonLikeBaseElement",
107689
- "module": "core/base-elements/button-base-element.js"
107716
+ "name": "SbbOpenCloseBaseElement",
107717
+ "module": "core/base-elements/open-close-base-element.js"
107690
107718
  }
107691
107719
  },
107692
107720
  {
107693
- "kind": "field",
107694
- "name": "maybeDisabled",
107695
- "type": {
107696
- "text": "boolean | undefined"
107697
- },
107721
+ "kind": "method",
107722
+ "name": "dispatchBeforeOpenEvent",
107698
107723
  "privacy": "protected",
107699
- "readonly": true,
107724
+ "return": {
107725
+ "type": {
107726
+ "text": "boolean"
107727
+ }
107728
+ },
107700
107729
  "inheritedFrom": {
107701
- "name": "SbbActionBaseElement",
107702
- "module": "core/base-elements/action-base-element.js"
107730
+ "name": "SbbOpenCloseBaseElement",
107731
+ "module": "core/base-elements/open-close-base-element.js"
107703
107732
  }
107704
107733
  },
107705
107734
  {
107706
- "kind": "field",
107707
- "name": "maybeDisabledInteractive",
107708
- "type": {
107709
- "text": "boolean | undefined"
107735
+ "kind": "method",
107736
+ "name": "dispatchOpenEvent",
107737
+ "privacy": "protected",
107738
+ "return": {
107739
+ "type": {
107740
+ "text": "boolean"
107741
+ }
107710
107742
  },
107743
+ "inheritedFrom": {
107744
+ "name": "SbbOpenCloseBaseElement",
107745
+ "module": "core/base-elements/open-close-base-element.js"
107746
+ }
107747
+ },
107748
+ {
107749
+ "kind": "method",
107750
+ "name": "dispatchBeforeCloseEvent",
107711
107751
  "privacy": "protected",
107712
- "readonly": true,
107752
+ "return": {
107753
+ "type": {
107754
+ "text": "boolean"
107755
+ }
107756
+ },
107713
107757
  "inheritedFrom": {
107714
- "name": "SbbActionBaseElement",
107715
- "module": "core/base-elements/action-base-element.js"
107758
+ "name": "SbbOpenCloseBaseElement",
107759
+ "module": "core/base-elements/open-close-base-element.js"
107716
107760
  }
107717
107761
  },
107718
107762
  {
107719
107763
  "kind": "method",
107720
- "name": "setupBaseEventHandlers",
107764
+ "name": "dispatchCloseEvent",
107721
107765
  "privacy": "protected",
107722
107766
  "return": {
107723
107767
  "type": {
107724
- "text": "void"
107768
+ "text": "boolean"
107725
107769
  }
107726
107770
  },
107727
107771
  "inheritedFrom": {
107728
- "name": "SbbActionBaseElement",
107729
- "module": "core/base-elements/action-base-element.js"
107772
+ "name": "SbbOpenCloseBaseElement",
107773
+ "module": "core/base-elements/open-close-base-element.js"
107730
107774
  }
107731
107775
  },
107732
107776
  {
@@ -107835,110 +107879,66 @@
107835
107879
  }
107836
107880
  }
107837
107881
  ],
107838
- "mixins": [
107839
- {
107840
- "name": "SbbDisabledTabIndexActionMixin",
107841
- "module": "core/mixins.js"
107842
- },
107882
+ "attributes": [
107843
107883
  {
107844
- "name": "SbbMenuActionCommonElementMixin",
107845
- "module": "menu/common/menu-action-common.js"
107884
+ "name": "trigger",
107885
+ "type": {
107886
+ "text": "HTMLElement | null"
107887
+ },
107888
+ "default": "null",
107889
+ "description": "The element that will trigger the menu overlay.\n\nFor attribute usage, provide an id reference.",
107890
+ "fieldName": "trigger"
107846
107891
  }
107847
107892
  ],
107848
107893
  "superclass": {
107849
- "name": "SbbButtonBaseElement",
107894
+ "name": "SbbOpenCloseBaseElement",
107850
107895
  "module": "core/base-elements.js"
107851
107896
  },
107852
- "tagName": "sbb-menu-button",
107897
+ "tagName": "sbb-menu",
107853
107898
  "customElement": true,
107854
- "attributes": [
107855
- {
107856
- "name": "disabled-interactive",
107857
- "type": {
107858
- "text": "boolean"
107859
- },
107860
- "default": "false",
107861
- "description": "Whether the button should be aria-disabled but stay interactive.",
107862
- "fieldName": "disabledInteractive",
107863
- "inheritedFrom": {
107864
- "name": "SbbDisabledInteractiveMixin",
107865
- "module": "core/mixins/disabled-mixin.js"
107866
- }
107867
- },
107868
- {
107869
- "name": "disabled",
107870
- "description": "Whether the component is disabled.",
107871
- "default": "false",
107872
- "type": {
107873
- "text": "boolean"
107874
- },
107875
- "fieldName": "disabled",
107876
- "inheritedFrom": {
107877
- "name": "SbbDisabledMixin",
107878
- "module": "core/mixins/disabled-mixin.js"
107879
- }
107880
- },
107881
- {
107882
- "name": "icon-name",
107883
- "type": {
107884
- "text": "string"
107885
- },
107886
- "default": "''",
107887
- "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.",
107888
- "fieldName": "iconName",
107889
- "inheritedFrom": {
107890
- "name": "SbbIconNameMixin",
107891
- "module": "icon/icon-name-mixin.js"
107892
- }
107893
- },
107899
+ "events": [
107894
107900
  {
107895
- "name": "value",
107901
+ "name": "beforeopen",
107896
107902
  "type": {
107897
- "text": "string"
107903
+ "text": "Event"
107898
107904
  },
107899
- "default": "''",
107900
- "description": "Value of the form element.",
107901
- "fieldName": "value",
107905
+ "description": "Emits whenever the component starts the opening transition. Can be canceled.",
107902
107906
  "inheritedFrom": {
107903
- "name": "SbbButtonBaseElement",
107904
- "module": "core/base-elements/button-base-element.js"
107907
+ "name": "SbbOpenCloseBaseElement",
107908
+ "module": "core/base-elements/open-close-base-element.js"
107905
107909
  }
107906
107910
  },
107907
107911
  {
107908
- "name": "type",
107909
- "description": "The type attribute to use for the button.",
107910
- "default": "'button'",
107912
+ "name": "open",
107911
107913
  "type": {
107912
- "text": "SbbButtonType"
107914
+ "text": "Event"
107913
107915
  },
107914
- "fieldName": "type",
107916
+ "description": "Emits whenever the component is opened.",
107915
107917
  "inheritedFrom": {
107916
- "name": "SbbButtonBaseElement",
107917
- "module": "core/base-elements/button-base-element.js"
107918
+ "name": "SbbOpenCloseBaseElement",
107919
+ "module": "core/base-elements/open-close-base-element.js"
107918
107920
  }
107919
107921
  },
107920
107922
  {
107921
- "name": "form",
107922
- "description": "The `<form>` element to associate the button with.",
107923
+ "name": "beforeclose",
107923
107924
  "type": {
107924
- "text": "HTMLFormElement | null"
107925
+ "text": "Event"
107925
107926
  },
107926
- "fieldName": "form",
107927
+ "description": "Emits whenever the component begins the closing transition. Can be canceled.",
107927
107928
  "inheritedFrom": {
107928
- "name": "SbbButtonBaseElement",
107929
- "module": "core/base-elements/button-base-element.js"
107929
+ "name": "SbbOpenCloseBaseElement",
107930
+ "module": "core/base-elements/open-close-base-element.js"
107930
107931
  }
107931
107932
  },
107932
107933
  {
107933
- "name": "name",
107934
- "description": "Name of the form element. Will be read from name attribute.",
107934
+ "name": "close",
107935
107935
  "type": {
107936
- "text": "string"
107936
+ "text": "Event"
107937
107937
  },
107938
- "fieldName": "name",
107938
+ "description": "Emits whenever the component is closed.",
107939
107939
  "inheritedFrom": {
107940
- "name": "SbbFormAssociatedMixin",
107941
- "module": "core/mixins/form-associated-mixin.js"
107940
+ "name": "SbbOpenCloseBaseElement",
107941
+ "module": "core/base-elements/open-close-base-element.js"
107942
107942
  }
107943
107943
  }
107944
107944
  ]
@@ -107947,10 +107947,10 @@
107947
107947
  "exports": [
107948
107948
  {
107949
107949
  "kind": "js",
107950
- "name": "SbbMenuButtonElement",
107950
+ "name": "SbbMenuElement",
107951
107951
  "declaration": {
107952
- "name": "SbbMenuButtonElement",
107953
- "module": "menu/menu-button/menu-button.component.js"
107952
+ "name": "SbbMenuElement",
107953
+ "module": "menu/menu/menu.component.js"
107954
107954
  }
107955
107955
  }
107956
107956
  ]