@momentum-design/components 0.102.6 → 0.102.8

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.
@@ -4068,22 +4068,22 @@
4068
4068
  },
4069
4069
  {
4070
4070
  "kind": "javascript-module",
4071
- "path": "components/buttonsimple/buttonsimple.component.js",
4071
+ "path": "components/buttonlink/buttonlink.component.js",
4072
4072
  "declarations": [
4073
4073
  {
4074
4074
  "kind": "class",
4075
- "description": "`mdc-buttonsimple` is a component that can be configured in various ways to suit different use cases.\nIt is used as an internal component and is not intended to be used directly by consumers.\nConsumers should use the `mdc-button` component instead.",
4076
- "name": "Buttonsimple",
4075
+ "description": "`mdc-buttonlink` combines the functional behavior of `mdc-linksimple` with the visual and structural\nfeatures of `mdc-button`. This includes support for variants, sizing, and optional\nprefix and postfix icons via slots.\n\n### Features:\n- Behaves like an link while visually resembling a button.\n- Supports slots for `prefix-icon` and `postfix-icon`.\n- Customizable size, color, and variant through attributes.\n- Inherits accessibility and keyboard interaction support from `mdc-linksimple`.",
4076
+ "name": "ButtonLink",
4077
4077
  "members": [
4078
4078
  {
4079
4079
  "kind": "field",
4080
- "name": "active",
4080
+ "name": "size",
4081
4081
  "type": {
4082
- "text": "boolean | undefined"
4082
+ "text": "PillButtonSize | IconButtonSize"
4083
4083
  },
4084
- "description": "The button's active state indicates whether it is currently toggled on (active) or off (inactive).\nWhen the active state is true, the button is considered to be in an active state, meaning it is toggled on.\nConversely, when the active state is false, the button is in an inactive state, indicating it is toggled off.\n\nThis attribute is used to set the provided `ariaStateKey` to true or false.",
4085
- "default": "undefined",
4086
- "attribute": "active",
4084
+ "description": "ButtonLink sizing is based on the buttonlink type.\n- **Pill buttonlink**: 40, 32, 28, 24.\n- **Icon buttonlink**: 64, 52, 40, 32, 28, 24.\n- Tertiary icon buttonlink can also be 20.",
4085
+ "default": "32",
4086
+ "attribute": "size",
4087
4087
  "reflects": true
4088
4088
  },
4089
4089
  {
@@ -4092,182 +4092,176 @@
4092
4092
  "type": {
4093
4093
  "text": "boolean | undefined"
4094
4094
  },
4095
- "description": "Indicates whether the button is soft disabled.\nWhen set to `true`, the button appears visually disabled but still allows\nfocus, click, and keyboard actions to be passed through.\n\n**Important:** When using soft disabled, consumers must ensure that\nthe button behaves like a disabled button, allowing only focus and\npreventing any interactions (clicks or keyboard actions) from triggering unintended actions.",
4095
+ "description": "Indicates whether the buttonlink is soft disabled.\nWhen set to `true`, the buttonlink appears visually disabled but still allows\nfocus, click, and keyboard actions to be passed through.\n\n**Important:** When using soft disabled, consumers must ensure that\nthe buttonlink behaves like a disabled buttonlink, allowing only focus and\npreventing any interactions (clicks or keyboard actions) from triggering unintended actions.",
4096
4096
  "default": "undefined",
4097
4097
  "attribute": "soft-disabled",
4098
4098
  "reflects": true
4099
4099
  },
4100
+ {
4101
+ "kind": "method",
4102
+ "name": "setSoftDisabled",
4103
+ "privacy": "private",
4104
+ "parameters": [
4105
+ {
4106
+ "name": "element",
4107
+ "type": {
4108
+ "text": "HTMLElement"
4109
+ },
4110
+ "description": "The buttonlink element."
4111
+ },
4112
+ {
4113
+ "name": "softDisabled",
4114
+ "optional": true,
4115
+ "type": {
4116
+ "text": "boolean"
4117
+ },
4118
+ "description": "The soft-disabled state."
4119
+ }
4120
+ ],
4121
+ "description": "Sets the soft-disabled attribute for the buttonlink.\nWhen soft-disabled, the buttonlink looks to be disabled but remains focusable and clickable.\nAlso sets/removes aria-disabled attribute."
4122
+ },
4100
4123
  {
4101
4124
  "kind": "field",
4102
- "name": "size",
4125
+ "name": "prefixIcon",
4103
4126
  "type": {
4104
- "text": "ButtonSize"
4127
+ "text": "IconNames | undefined"
4105
4128
  },
4106
- "description": "Simplebutton size is a super set of all the sizes supported by children components.",
4107
- "default": "32",
4108
- "attribute": "size",
4109
- "reflects": true
4129
+ "description": "The name of the icon to display as a prefix.\nThe icon is displayed on the left side of the button.",
4130
+ "attribute": "prefix-icon",
4131
+ "reflects": true,
4132
+ "inheritedFrom": {
4133
+ "name": "ButtonComponentMixin",
4134
+ "module": "utils/mixins/ButtonComponentMixin.js"
4135
+ }
4110
4136
  },
4111
4137
  {
4112
4138
  "kind": "field",
4113
- "name": "role",
4139
+ "name": "postfixIcon",
4114
4140
  "type": {
4115
- "text": "RoleType"
4141
+ "text": "IconNames | undefined"
4116
4142
  },
4117
- "description": "This property defines the ARIA role for the element. By default, it is set to 'button'.\nConsumers should override this role when:\n- The element is being used in a context where a different role is more appropriate.\n- Custom behaviors are implemented that require a specific ARIA role for accessibility purposes.",
4118
- "default": "button",
4119
- "attribute": "role",
4120
- "reflects": true
4143
+ "description": "The name of the icon to display as a postfix.\nThe icon is displayed on the right side of the button.",
4144
+ "attribute": "postfix-icon",
4145
+ "reflects": true,
4146
+ "inheritedFrom": {
4147
+ "name": "ButtonComponentMixin",
4148
+ "module": "utils/mixins/ButtonComponentMixin.js"
4149
+ }
4121
4150
  },
4122
4151
  {
4123
4152
  "kind": "field",
4124
- "name": "ariaStateKey",
4153
+ "name": "variant",
4125
4154
  "type": {
4126
- "text": "string | undefined"
4155
+ "text": "ButtonVariant"
4127
4156
  },
4128
- "description": "This property defines the ARIA state key, which will be toggled when the\nButton is set to `active`.\nThe default value is 'aria-pressed', which is commonly used for toggle buttons.\n\nConsumers can override this property to use a different ARIA state key if needed.\nIn case multiple aria attributes should be toggled, they can be passed in as\na comma separated string.\nFor example: `aria-pressed,aria-expanded`",
4129
- "default": "'aria-pressed' (when)",
4130
- "attribute": "ariaStateKey",
4131
- "reflects": true
4157
+ "description": "There are 3 variants of button: primary, secondary, tertiary. They are styled differently.\n- **Primary**: Solid background color.\n- **Secondary**: Transparent background with a solid border.\n- **Tertiary**: No background or border, appears as plain text but retains all button functionalities.",
4158
+ "default": "primary",
4159
+ "attribute": "variant",
4160
+ "inheritedFrom": {
4161
+ "name": "ButtonComponentMixin",
4162
+ "module": "utils/mixins/ButtonComponentMixin.js"
4163
+ }
4132
4164
  },
4133
4165
  {
4134
4166
  "kind": "field",
4135
- "name": "type",
4167
+ "name": "color",
4136
4168
  "type": {
4137
- "text": "ButtonType"
4169
+ "text": "ButtonColor"
4138
4170
  },
4139
- "description": "This property defines the type attribute for the button element.\nThe type attribute specifies the behavior of the button when it is clicked.\n- **submit**: The button submits the form data to the server.\n- **reset**: The button resets the form data to its initial state.\n- **button**: The button does nothing when clicked.",
4140
- "default": "button",
4141
- "attribute": "type",
4142
- "reflects": true
4143
- },
4144
- {
4145
- "kind": "method",
4146
- "name": "executeAction",
4147
- "privacy": "protected"
4171
+ "description": "There are 5 colors for button: positive, negative, accent, promotional, default.",
4172
+ "default": "default",
4173
+ "attribute": "color",
4174
+ "inheritedFrom": {
4175
+ "name": "ButtonComponentMixin",
4176
+ "module": "utils/mixins/ButtonComponentMixin.js"
4177
+ }
4148
4178
  },
4149
4179
  {
4150
4180
  "kind": "method",
4151
- "name": "setActive",
4181
+ "name": "setVariant",
4152
4182
  "privacy": "protected",
4153
4183
  "parameters": [
4154
4184
  {
4155
- "name": "element",
4156
- "type": {
4157
- "text": "HTMLElement"
4158
- },
4159
- "description": "The button element"
4160
- },
4161
- {
4162
- "name": "active",
4163
- "optional": true,
4164
- "type": {
4165
- "text": "boolean"
4166
- },
4167
- "description": "The active state of the element"
4168
- }
4169
- ],
4170
- "description": "Sets the ariaStateKey attributes based on the active state of the button."
4171
- },
4172
- {
4173
- "kind": "method",
4174
- "name": "setSoftDisabled",
4175
- "privacy": "private",
4176
- "parameters": [
4177
- {
4178
- "name": "element",
4179
- "type": {
4180
- "text": "HTMLElement"
4181
- },
4182
- "description": "The button element."
4183
- },
4184
- {
4185
- "name": "softDisabled",
4186
- "optional": true,
4185
+ "name": "variant",
4187
4186
  "type": {
4188
- "text": "boolean"
4187
+ "text": "ButtonVariant"
4189
4188
  },
4190
- "description": "The soft-disabled state."
4189
+ "description": "The variant to set."
4191
4190
  }
4192
4191
  ],
4193
- "description": "Sets the soft-disabled attribute for the button.\nWhen soft-disabled, the button looks to be disabled but remains focusable and clickable.\nAlso sets/removes aria-disabled attribute."
4192
+ "description": "Sets the variant attribute for the button component.\nIf the provided variant is not included in the BUTTON_VARIANTS,\nit defaults to the value specified in DEFAULTS.VARIANT.",
4193
+ "inheritedFrom": {
4194
+ "name": "ButtonComponentMixin",
4195
+ "module": "utils/mixins/ButtonComponentMixin.js"
4196
+ }
4194
4197
  },
4195
4198
  {
4196
4199
  "kind": "method",
4197
- "name": "setDisabled",
4198
- "privacy": "private",
4200
+ "name": "setColor",
4201
+ "privacy": "protected",
4199
4202
  "parameters": [
4200
4203
  {
4201
- "name": "element",
4202
- "type": {
4203
- "text": "HTMLElement"
4204
- },
4205
- "description": "The button element."
4206
- },
4207
- {
4208
- "name": "disabled",
4204
+ "name": "color",
4209
4205
  "type": {
4210
- "text": "boolean"
4206
+ "text": "ButtonColor"
4211
4207
  },
4212
- "description": "The disabled state."
4208
+ "description": "The color to set."
4213
4209
  }
4214
4210
  ],
4215
- "description": "Sets the disabled attribute for the button.\nWhen disabled, the button is not focusable or clickable, and tabindex is set to -1.\nThe previous tabindex is stored and restored when enabled.\nAlso sets/removes aria-disabled attribute."
4216
- },
4217
- {
4218
- "kind": "method",
4219
- "name": "triggerClickEvent",
4220
- "privacy": "private"
4221
- },
4222
- {
4223
- "kind": "method",
4224
- "name": "handleBlur",
4225
- "privacy": "private",
4226
- "description": "In case the button is pressed and the focus is lost while pressing,\nthe pressed class is removed."
4211
+ "description": "Sets the color attribute for the button.\nDefaults to DEFAULTS.COLOR if invalid or for tertiary button.",
4212
+ "inheritedFrom": {
4213
+ "name": "ButtonComponentMixin",
4214
+ "module": "utils/mixins/ButtonComponentMixin.js"
4215
+ }
4227
4216
  },
4228
4217
  {
4229
4218
  "kind": "method",
4230
- "name": "handleKeyDown",
4231
- "privacy": "private",
4219
+ "name": "setSize",
4220
+ "privacy": "protected",
4232
4221
  "parameters": [
4233
4222
  {
4234
- "name": "event",
4223
+ "name": "size",
4235
4224
  "type": {
4236
- "text": "KeyboardEvent"
4225
+ "text": "PillButtonSize | IconButtonSize"
4237
4226
  },
4238
- "description": "The keyboard event."
4227
+ "description": "The size to set."
4239
4228
  }
4240
4229
  ],
4241
- "description": "Handles the keydown event on the button.\nIf the key is 'Enter' or 'Space', the button is pressed.\nIf the key is 'Enter', the button is pressed. The native HTML button works in the same way.\nIf the key is 'Space', the button's default is prevent to avoid scrolling etc in the host application."
4230
+ "description": "Sets the size attribute for the button component.\nValidates the size based on the button type (icon, pill, or tertiary).\nDefaults to DEFAULTS.SIZE if invalid.",
4231
+ "inheritedFrom": {
4232
+ "name": "ButtonComponentMixin",
4233
+ "module": "utils/mixins/ButtonComponentMixin.js"
4234
+ }
4242
4235
  },
4243
4236
  {
4244
4237
  "kind": "method",
4245
- "name": "handleKeyUp",
4246
- "privacy": "private",
4238
+ "name": "inferButtonType",
4239
+ "privacy": "protected",
4240
+ "description": "Infers the type of button based on the presence of slot and/or prefix and postfix icons.",
4247
4241
  "parameters": [
4248
4242
  {
4249
- "name": "event",
4250
- "type": {
4251
- "text": "KeyboardEvent"
4252
- },
4253
- "description": "The keyboard event."
4243
+ "description": "default slot of button",
4244
+ "name": "slot"
4254
4245
  }
4255
4246
  ],
4256
- "description": "Handles the keyup event on the button.\nIf the key is 'Enter' or 'Space', the button is clicked.\nIf the key is 'Space', the button is pressed. The native HTML button works in the same way."
4247
+ "inheritedFrom": {
4248
+ "name": "ButtonComponentMixin",
4249
+ "module": "utils/mixins/ButtonComponentMixin.js"
4250
+ }
4257
4251
  },
4258
4252
  {
4259
4253
  "kind": "field",
4260
- "name": "autofocus",
4254
+ "name": "disabled",
4261
4255
  "type": {
4262
- "text": "boolean"
4256
+ "text": "boolean | undefined"
4263
4257
  },
4264
- "default": "false",
4265
- "description": "This property indicates whether the element should receive focus automatically when it is rendered.",
4266
- "attribute": "autofocus",
4258
+ "description": "Indicates whether the component is disabled.\nWhen the component is disabled for user interaction; it is not focusable or clickable.",
4259
+ "default": "undefined",
4260
+ "attribute": "disabled",
4267
4261
  "reflects": true,
4268
4262
  "inheritedFrom": {
4269
- "name": "AutoFocusMixin",
4270
- "module": "utils/mixins/AutoFocusMixin.js"
4263
+ "name": "DisabledMixin",
4264
+ "module": "utils/mixins/DisabledMixin.js"
4271
4265
  }
4272
4266
  },
4273
4267
  {
@@ -4287,108 +4281,238 @@
4287
4281
  },
4288
4282
  {
4289
4283
  "kind": "field",
4290
- "name": "disabled",
4284
+ "name": "inline",
4291
4285
  "type": {
4292
- "text": "boolean | undefined"
4286
+ "text": "boolean"
4293
4287
  },
4294
- "description": "Indicates whether the component is disabled.\nWhen the component is disabled for user interaction; it is not focusable or clickable.",
4295
- "default": "undefined",
4296
- "attribute": "disabled",
4288
+ "description": "The link can be inline or standalone.",
4289
+ "default": "false",
4290
+ "attribute": "inline",
4297
4291
  "reflects": true,
4298
4292
  "inheritedFrom": {
4299
- "name": "DisabledMixin",
4300
- "module": "utils/mixins/DisabledMixin.js"
4293
+ "name": "Linksimple",
4294
+ "module": "components/linksimple/linksimple.component.js"
4295
+ }
4296
+ },
4297
+ {
4298
+ "kind": "field",
4299
+ "name": "inverted",
4300
+ "type": {
4301
+ "text": "boolean"
4302
+ },
4303
+ "description": "The link color can be inverted by setting the inverted attribute to true.",
4304
+ "default": "false",
4305
+ "attribute": "inverted",
4306
+ "reflects": true,
4307
+ "inheritedFrom": {
4308
+ "name": "Linksimple",
4309
+ "module": "components/linksimple/linksimple.component.js"
4310
+ }
4311
+ },
4312
+ {
4313
+ "kind": "field",
4314
+ "name": "href",
4315
+ "type": {
4316
+ "text": "string"
4317
+ },
4318
+ "default": "'#'",
4319
+ "description": "Href for navigation. The URL that the hyperlink points to",
4320
+ "attribute": "href",
4321
+ "reflects": true,
4322
+ "inheritedFrom": {
4323
+ "name": "Linksimple",
4324
+ "module": "components/linksimple/linksimple.component.js"
4325
+ }
4326
+ },
4327
+ {
4328
+ "kind": "field",
4329
+ "name": "target",
4330
+ "type": {
4331
+ "text": "string"
4332
+ },
4333
+ "default": "'_self'",
4334
+ "description": "Optional target: _blank, _self, _parent, _top and _unfencedTop",
4335
+ "attribute": "target",
4336
+ "reflects": true,
4337
+ "inheritedFrom": {
4338
+ "name": "Linksimple",
4339
+ "module": "components/linksimple/linksimple.component.js"
4340
+ }
4341
+ },
4342
+ {
4343
+ "kind": "field",
4344
+ "name": "rel",
4345
+ "type": {
4346
+ "text": "string | undefined"
4347
+ },
4348
+ "description": "Optional rel attribute that defines the relationship of the linked URL as space-separated link types.",
4349
+ "attribute": "rel",
4350
+ "reflects": true,
4351
+ "inheritedFrom": {
4352
+ "name": "Linksimple",
4353
+ "module": "components/linksimple/linksimple.component.js"
4354
+ }
4355
+ },
4356
+ {
4357
+ "kind": "method",
4358
+ "name": "handleNavigation",
4359
+ "privacy": "private",
4360
+ "return": {
4361
+ "type": {
4362
+ "text": "void"
4363
+ }
4364
+ },
4365
+ "parameters": [
4366
+ {
4367
+ "name": "e",
4368
+ "type": {
4369
+ "text": "MouseEvent | KeyboardEvent"
4370
+ }
4371
+ }
4372
+ ],
4373
+ "inheritedFrom": {
4374
+ "name": "Linksimple",
4375
+ "module": "components/linksimple/linksimple.component.js"
4376
+ }
4377
+ },
4378
+ {
4379
+ "kind": "method",
4380
+ "name": "setDisabled",
4381
+ "privacy": "private",
4382
+ "parameters": [
4383
+ {
4384
+ "name": "disabled",
4385
+ "type": {
4386
+ "text": "boolean"
4387
+ },
4388
+ "description": "Whether the element should be disabled"
4389
+ }
4390
+ ],
4391
+ "description": "Sets or removes `aria-disabled` and updates `tabIndex` to reflect\nthe disabled state. When disabled, the element becomes unfocusable;\nwhen enabled, the previous `tabIndex` is restored.",
4392
+ "inheritedFrom": {
4393
+ "name": "Linksimple",
4394
+ "module": "components/linksimple/linksimple.component.js"
4301
4395
  }
4302
4396
  }
4303
4397
  ],
4304
4398
  "events": [
4305
4399
  {
4306
- "description": "(React: onClick) This event is dispatched when the button is clicked.",
4400
+ "description": "(React: onClick) Fired when the user activates the buttonLink using a mouse or assistive technology.",
4307
4401
  "name": "click",
4308
- "reactName": "onClick"
4402
+ "reactName": "onClick",
4403
+ "inheritedFrom": {
4404
+ "name": "Linksimple",
4405
+ "module": "src/components/linksimple/linksimple.component.ts"
4406
+ }
4309
4407
  },
4310
4408
  {
4311
- "description": "(React: onKeyDown) This event is dispatched when a key is pressed down on the button.",
4409
+ "description": "(React: onKeyDown) Fired when the user presses a key while the buttonLink has focus.",
4312
4410
  "name": "keydown",
4313
- "reactName": "onKeyDown"
4411
+ "reactName": "onKeyDown",
4412
+ "inheritedFrom": {
4413
+ "name": "Linksimple",
4414
+ "module": "src/components/linksimple/linksimple.component.ts"
4415
+ }
4314
4416
  },
4315
4417
  {
4316
- "description": "(React: onKeyUp) This event is dispatched when a key is released on the button.",
4317
- "name": "keyup",
4318
- "reactName": "onKeyUp"
4418
+ "description": "(React: onFocus) Fired when the buttonLink receives keyboard or mouse focus.",
4419
+ "name": "focus",
4420
+ "reactName": "onFocus",
4421
+ "inheritedFrom": {
4422
+ "name": "Linksimple",
4423
+ "module": "src/components/linksimple/linksimple.component.ts"
4424
+ }
4319
4425
  },
4320
4426
  {
4321
- "description": "(React: onFocus) This event is dispatched when the button receives focus.",
4322
- "name": "focus",
4323
- "reactName": "onFocus"
4427
+ "description": "(React: onBlur) Fired when the buttonLink loses keyboard or mouse focus.",
4428
+ "name": "blur",
4429
+ "reactName": "onBlur",
4430
+ "inheritedFrom": {
4431
+ "name": "Linksimple",
4432
+ "module": "src/components/linksimple/linksimple.component.ts"
4433
+ }
4324
4434
  }
4325
4435
  ],
4326
4436
  "attributes": [
4327
4437
  {
4328
- "name": "active",
4438
+ "name": "size",
4329
4439
  "type": {
4330
- "text": "boolean | undefined"
4440
+ "text": "PillButtonSize | IconButtonSize"
4331
4441
  },
4332
- "description": "The button's active state indicates whether it is currently toggled on (active) or off (inactive).\nWhen the active state is true, the button is considered to be in an active state, meaning it is toggled on.\nConversely, when the active state is false, the button is in an inactive state, indicating it is toggled off.\n\nThis attribute is used to set the provided `ariaStateKey` to true or false.",
4333
- "default": "undefined",
4334
- "fieldName": "active"
4442
+ "description": "ButtonLink sizing is based on the buttonlink type.\n- **Pill buttonlink**: 40, 32, 28, 24.\n- **Icon buttonlink**: 64, 52, 40, 32, 28, 24.\n- Tertiary icon buttonlink can also be 20.",
4443
+ "default": "32",
4444
+ "fieldName": "size"
4335
4445
  },
4336
4446
  {
4337
4447
  "name": "soft-disabled",
4338
4448
  "type": {
4339
4449
  "text": "boolean | undefined"
4340
4450
  },
4341
- "description": "Indicates whether the button is soft disabled.\nWhen set to `true`, the button appears visually disabled but still allows\nfocus, click, and keyboard actions to be passed through.\n\n**Important:** When using soft disabled, consumers must ensure that\nthe button behaves like a disabled button, allowing only focus and\npreventing any interactions (clicks or keyboard actions) from triggering unintended actions.",
4451
+ "description": "Indicates whether the buttonlink is soft disabled.\nWhen set to `true`, the buttonlink appears visually disabled but still allows\nfocus, click, and keyboard actions to be passed through.\n\n**Important:** When using soft disabled, consumers must ensure that\nthe buttonlink behaves like a disabled buttonlink, allowing only focus and\npreventing any interactions (clicks or keyboard actions) from triggering unintended actions.",
4342
4452
  "default": "undefined",
4343
4453
  "fieldName": "softDisabled"
4344
4454
  },
4345
4455
  {
4346
- "name": "size",
4456
+ "name": "prefix-icon",
4347
4457
  "type": {
4348
- "text": "ButtonSize"
4458
+ "text": "IconNames | undefined"
4349
4459
  },
4350
- "description": "Simplebutton size is a super set of all the sizes supported by children components.",
4351
- "default": "32",
4352
- "fieldName": "size"
4460
+ "description": "The name of the icon to display as a prefix.\nThe icon is displayed on the left side of the button.",
4461
+ "fieldName": "prefixIcon",
4462
+ "inheritedFrom": {
4463
+ "name": "ButtonComponentMixin",
4464
+ "module": "src/utils/mixins/ButtonComponentMixin.ts"
4465
+ }
4353
4466
  },
4354
4467
  {
4355
- "name": "role",
4468
+ "name": "postfix-icon",
4356
4469
  "type": {
4357
- "text": "RoleType"
4470
+ "text": "IconNames | undefined"
4358
4471
  },
4359
- "description": "This property defines the ARIA role for the element. By default, it is set to 'button'.\nConsumers should override this role when:\n- The element is being used in a context where a different role is more appropriate.\n- Custom behaviors are implemented that require a specific ARIA role for accessibility purposes.",
4360
- "default": "button",
4361
- "fieldName": "role"
4472
+ "description": "The name of the icon to display as a postfix.\nThe icon is displayed on the right side of the button.",
4473
+ "fieldName": "postfixIcon",
4474
+ "inheritedFrom": {
4475
+ "name": "ButtonComponentMixin",
4476
+ "module": "src/utils/mixins/ButtonComponentMixin.ts"
4477
+ }
4362
4478
  },
4363
4479
  {
4364
- "name": "ariaStateKey",
4480
+ "name": "variant",
4365
4481
  "type": {
4366
- "text": "string | undefined"
4482
+ "text": "ButtonVariant"
4367
4483
  },
4368
- "description": "This property defines the ARIA state key, which will be toggled when the\nButton is set to `active`.\nThe default value is 'aria-pressed', which is commonly used for toggle buttons.\n\nConsumers can override this property to use a different ARIA state key if needed.\nIn case multiple aria attributes should be toggled, they can be passed in as\na comma separated string.\nFor example: `aria-pressed,aria-expanded`",
4369
- "default": "'aria-pressed' (when)",
4370
- "fieldName": "ariaStateKey"
4484
+ "description": "There are 3 variants of button: primary, secondary, tertiary. They are styled differently.\n- **Primary**: Solid background color.\n- **Secondary**: Transparent background with a solid border.\n- **Tertiary**: No background or border, appears as plain text but retains all button functionalities.",
4485
+ "default": "primary",
4486
+ "fieldName": "variant",
4487
+ "inheritedFrom": {
4488
+ "name": "ButtonComponentMixin",
4489
+ "module": "src/utils/mixins/ButtonComponentMixin.ts"
4490
+ }
4371
4491
  },
4372
4492
  {
4373
- "name": "type",
4493
+ "name": "color",
4374
4494
  "type": {
4375
- "text": "ButtonType"
4495
+ "text": "ButtonColor"
4376
4496
  },
4377
- "description": "This property defines the type attribute for the button element.\nThe type attribute specifies the behavior of the button when it is clicked.\n- **submit**: The button submits the form data to the server.\n- **reset**: The button resets the form data to its initial state.\n- **button**: The button does nothing when clicked.",
4378
- "default": "button",
4379
- "fieldName": "type"
4497
+ "description": "There are 5 colors for button: positive, negative, accent, promotional, default.",
4498
+ "default": "default",
4499
+ "fieldName": "color",
4500
+ "inheritedFrom": {
4501
+ "name": "ButtonComponentMixin",
4502
+ "module": "src/utils/mixins/ButtonComponentMixin.ts"
4503
+ }
4380
4504
  },
4381
4505
  {
4382
- "name": "autofocus",
4506
+ "name": "disabled",
4383
4507
  "type": {
4384
- "text": "boolean"
4508
+ "text": "boolean | undefined"
4385
4509
  },
4386
- "default": "false",
4387
- "description": "This property indicates whether the element should receive focus automatically when it is rendered.",
4388
- "fieldName": "autofocus",
4510
+ "description": "Indicates whether the component is disabled.\nWhen the component is disabled for user interaction; it is not focusable or clickable.",
4511
+ "default": "undefined",
4512
+ "fieldName": "disabled",
4389
4513
  "inheritedFrom": {
4390
- "name": "AutoFocusMixin",
4391
- "module": "src/utils/mixins/AutoFocusMixin.ts"
4514
+ "name": "DisabledMixin",
4515
+ "module": "src/utils/mixins/DisabledMixin.ts"
4392
4516
  }
4393
4517
  },
4394
4518
  {
@@ -4405,35 +4529,538 @@
4405
4529
  }
4406
4530
  },
4407
4531
  {
4408
- "name": "disabled",
4532
+ "name": "inline",
4409
4533
  "type": {
4410
- "text": "boolean | undefined"
4534
+ "text": "boolean"
4411
4535
  },
4412
- "description": "Indicates whether the component is disabled.\nWhen the component is disabled for user interaction; it is not focusable or clickable.",
4413
- "default": "undefined",
4414
- "fieldName": "disabled",
4536
+ "description": "The link can be inline or standalone.",
4537
+ "default": "false",
4538
+ "fieldName": "inline",
4415
4539
  "inheritedFrom": {
4416
- "name": "DisabledMixin",
4417
- "module": "src/utils/mixins/DisabledMixin.ts"
4540
+ "name": "Linksimple",
4541
+ "module": "src/components/linksimple/linksimple.component.ts"
4418
4542
  }
4419
- }
4420
- ],
4421
- "mixins": [
4543
+ },
4422
4544
  {
4423
- "name": "AutoFocusMixin",
4424
- "module": "/src/utils/mixins/AutoFocusMixin"
4545
+ "name": "inverted",
4546
+ "type": {
4547
+ "text": "boolean"
4548
+ },
4549
+ "description": "The link color can be inverted by setting the inverted attribute to true.",
4550
+ "default": "false",
4551
+ "fieldName": "inverted",
4552
+ "inheritedFrom": {
4553
+ "name": "Linksimple",
4554
+ "module": "src/components/linksimple/linksimple.component.ts"
4555
+ }
4425
4556
  },
4426
4557
  {
4427
- "name": "TabIndexMixin",
4428
- "module": "/src/utils/mixins/TabIndexMixin"
4558
+ "name": "href",
4559
+ "type": {
4560
+ "text": "string"
4561
+ },
4562
+ "default": "'#'",
4563
+ "description": "Href for navigation. The URL that the hyperlink points to",
4564
+ "fieldName": "href",
4565
+ "inheritedFrom": {
4566
+ "name": "Linksimple",
4567
+ "module": "src/components/linksimple/linksimple.component.ts"
4568
+ }
4429
4569
  },
4430
4570
  {
4431
- "name": "DisabledMixin",
4432
- "module": "/src/utils/mixins/DisabledMixin"
4433
- }
4434
- ],
4435
- "superclass": {
4436
- "name": "Component",
4571
+ "name": "target",
4572
+ "type": {
4573
+ "text": "string"
4574
+ },
4575
+ "default": "'_self'",
4576
+ "description": "Optional target: _blank, _self, _parent, _top and _unfencedTop",
4577
+ "fieldName": "target",
4578
+ "inheritedFrom": {
4579
+ "name": "Linksimple",
4580
+ "module": "src/components/linksimple/linksimple.component.ts"
4581
+ }
4582
+ },
4583
+ {
4584
+ "name": "rel",
4585
+ "type": {
4586
+ "text": "string | undefined"
4587
+ },
4588
+ "description": "Optional rel attribute that defines the relationship of the linked URL as space-separated link types.",
4589
+ "fieldName": "rel",
4590
+ "inheritedFrom": {
4591
+ "name": "Linksimple",
4592
+ "module": "src/components/linksimple/linksimple.component.ts"
4593
+ }
4594
+ }
4595
+ ],
4596
+ "mixins": [
4597
+ {
4598
+ "name": "ButtonComponentMixin",
4599
+ "module": "/src/utils/mixins/ButtonComponentMixin"
4600
+ }
4601
+ ],
4602
+ "superclass": {
4603
+ "name": "Linksimple",
4604
+ "module": "/src/components/linksimple/linksimple.component"
4605
+ },
4606
+ "tagName": "mdc-buttonlink",
4607
+ "jsDoc": "/**\n * `mdc-buttonlink` combines the functional behavior of `mdc-linksimple` with the visual and structural\n * features of `mdc-button`. This includes support for variants, sizing, and optional\n * prefix and postfix icons via slots.\n *\n * ### Features:\n * - Behaves like an link while visually resembling a button.\n * - Supports slots for `prefix-icon` and `postfix-icon`.\n * - Customizable size, color, and variant through attributes.\n * - Inherits accessibility and keyboard interaction support from `mdc-linksimple`.\n *\n * @dependency mdc-icon\n *\n * @tagname mdc-buttonlink\n *\n * @event click - (React: onClick) Fired when the user activates the buttonLink using a mouse or assistive technology.\n * @event keydown - (React: onKeyDown) Fired when the user presses a key while the buttonLink has focus.\n * @event focus - (React: onFocus) Fired when the buttonLink receives keyboard or mouse focus.\n * @event blur - (React: onBlur) Fired when the buttonLink loses keyboard or mouse focus.\n *\n */",
4608
+ "customElement": true,
4609
+ "cssProperties": [
4610
+ {
4611
+ "description": "Border radius of the link.",
4612
+ "name": "--mdc-link-border-radius",
4613
+ "inheritedFrom": {
4614
+ "name": "Linksimple",
4615
+ "module": "src/components/linksimple/linksimple.component.ts"
4616
+ }
4617
+ },
4618
+ {
4619
+ "description": "Color of the link’s child content in the active state.",
4620
+ "name": "--mdc-link-color-active",
4621
+ "inheritedFrom": {
4622
+ "name": "Linksimple",
4623
+ "module": "src/components/linksimple/linksimple.component.ts"
4624
+ }
4625
+ },
4626
+ {
4627
+ "description": "Color of the link’s child content in the disabled state.",
4628
+ "name": "--mdc-link-color-disabled",
4629
+ "inheritedFrom": {
4630
+ "name": "Linksimple",
4631
+ "module": "src/components/linksimple/linksimple.component.ts"
4632
+ }
4633
+ },
4634
+ {
4635
+ "description": "Color of the link’s child content in the hover state.",
4636
+ "name": "--mdc-link-color-hover",
4637
+ "inheritedFrom": {
4638
+ "name": "Linksimple",
4639
+ "module": "src/components/linksimple/linksimple.component.ts"
4640
+ }
4641
+ },
4642
+ {
4643
+ "description": "Color of the link’s child content in the normal state.",
4644
+ "name": "--mdc-link-color-normal",
4645
+ "inheritedFrom": {
4646
+ "name": "Linksimple",
4647
+ "module": "src/components/linksimple/linksimple.component.ts"
4648
+ }
4649
+ },
4650
+ {
4651
+ "description": "Color of the inverted link’s child content in the active state.",
4652
+ "name": "--mdc-link-inverted-color-active",
4653
+ "inheritedFrom": {
4654
+ "name": "Linksimple",
4655
+ "module": "src/components/linksimple/linksimple.component.ts"
4656
+ }
4657
+ },
4658
+ {
4659
+ "description": "Color of the inverted link’s child content in the disabled state.",
4660
+ "name": "--mdc-link-inverted-color-disabled",
4661
+ "inheritedFrom": {
4662
+ "name": "Linksimple",
4663
+ "module": "src/components/linksimple/linksimple.component.ts"
4664
+ }
4665
+ },
4666
+ {
4667
+ "description": "Color of the inverted link’s child content in the hover state.",
4668
+ "name": "--mdc-link-inverted-color-hover",
4669
+ "inheritedFrom": {
4670
+ "name": "Linksimple",
4671
+ "module": "src/components/linksimple/linksimple.component.ts"
4672
+ }
4673
+ },
4674
+ {
4675
+ "description": "Color of the inverted link’s child content in the normal state.",
4676
+ "name": "--mdc-link-inverted-color-normal",
4677
+ "inheritedFrom": {
4678
+ "name": "Linksimple",
4679
+ "module": "src/components/linksimple/linksimple.component.ts"
4680
+ }
4681
+ }
4682
+ ]
4683
+ }
4684
+ ],
4685
+ "exports": [
4686
+ {
4687
+ "kind": "js",
4688
+ "name": "default",
4689
+ "declaration": {
4690
+ "name": "ButtonLink",
4691
+ "module": "components/buttonlink/buttonlink.component.js"
4692
+ }
4693
+ }
4694
+ ]
4695
+ },
4696
+ {
4697
+ "kind": "javascript-module",
4698
+ "path": "components/buttonsimple/buttonsimple.component.js",
4699
+ "declarations": [
4700
+ {
4701
+ "kind": "class",
4702
+ "description": "`mdc-buttonsimple` is a component that can be configured in various ways to suit different use cases.\nIt is used as an internal component and is not intended to be used directly by consumers.\nConsumers should use the `mdc-button` component instead.",
4703
+ "name": "Buttonsimple",
4704
+ "members": [
4705
+ {
4706
+ "kind": "field",
4707
+ "name": "active",
4708
+ "type": {
4709
+ "text": "boolean | undefined"
4710
+ },
4711
+ "description": "The button's active state indicates whether it is currently toggled on (active) or off (inactive).\nWhen the active state is true, the button is considered to be in an active state, meaning it is toggled on.\nConversely, when the active state is false, the button is in an inactive state, indicating it is toggled off.\n\nThis attribute is used to set the provided `ariaStateKey` to true or false.",
4712
+ "default": "undefined",
4713
+ "attribute": "active",
4714
+ "reflects": true
4715
+ },
4716
+ {
4717
+ "kind": "field",
4718
+ "name": "softDisabled",
4719
+ "type": {
4720
+ "text": "boolean | undefined"
4721
+ },
4722
+ "description": "Indicates whether the button is soft disabled.\nWhen set to `true`, the button appears visually disabled but still allows\nfocus, click, and keyboard actions to be passed through.\n\n**Important:** When using soft disabled, consumers must ensure that\nthe button behaves like a disabled button, allowing only focus and\npreventing any interactions (clicks or keyboard actions) from triggering unintended actions.",
4723
+ "default": "undefined",
4724
+ "attribute": "soft-disabled",
4725
+ "reflects": true
4726
+ },
4727
+ {
4728
+ "kind": "field",
4729
+ "name": "size",
4730
+ "type": {
4731
+ "text": "ButtonSize"
4732
+ },
4733
+ "description": "Simplebutton size is a super set of all the sizes supported by children components.",
4734
+ "default": "32",
4735
+ "attribute": "size",
4736
+ "reflects": true
4737
+ },
4738
+ {
4739
+ "kind": "field",
4740
+ "name": "role",
4741
+ "type": {
4742
+ "text": "RoleType"
4743
+ },
4744
+ "description": "This property defines the ARIA role for the element. By default, it is set to 'button'.\nConsumers should override this role when:\n- The element is being used in a context where a different role is more appropriate.\n- Custom behaviors are implemented that require a specific ARIA role for accessibility purposes.",
4745
+ "default": "button",
4746
+ "attribute": "role",
4747
+ "reflects": true
4748
+ },
4749
+ {
4750
+ "kind": "field",
4751
+ "name": "ariaStateKey",
4752
+ "type": {
4753
+ "text": "string | undefined"
4754
+ },
4755
+ "description": "This property defines the ARIA state key, which will be toggled when the\nButton is set to `active`.\nThe default value is 'aria-pressed', which is commonly used for toggle buttons.\n\nConsumers can override this property to use a different ARIA state key if needed.\nIn case multiple aria attributes should be toggled, they can be passed in as\na comma separated string.\nFor example: `aria-pressed,aria-expanded`",
4756
+ "default": "'aria-pressed' (when)",
4757
+ "attribute": "ariaStateKey",
4758
+ "reflects": true
4759
+ },
4760
+ {
4761
+ "kind": "field",
4762
+ "name": "type",
4763
+ "type": {
4764
+ "text": "ButtonType"
4765
+ },
4766
+ "description": "This property defines the type attribute for the button element.\nThe type attribute specifies the behavior of the button when it is clicked.\n- **submit**: The button submits the form data to the server.\n- **reset**: The button resets the form data to its initial state.\n- **button**: The button does nothing when clicked.",
4767
+ "default": "button",
4768
+ "attribute": "type",
4769
+ "reflects": true
4770
+ },
4771
+ {
4772
+ "kind": "method",
4773
+ "name": "executeAction",
4774
+ "privacy": "protected"
4775
+ },
4776
+ {
4777
+ "kind": "method",
4778
+ "name": "setActive",
4779
+ "privacy": "protected",
4780
+ "parameters": [
4781
+ {
4782
+ "name": "element",
4783
+ "type": {
4784
+ "text": "HTMLElement"
4785
+ },
4786
+ "description": "The button element"
4787
+ },
4788
+ {
4789
+ "name": "active",
4790
+ "optional": true,
4791
+ "type": {
4792
+ "text": "boolean"
4793
+ },
4794
+ "description": "The active state of the element"
4795
+ }
4796
+ ],
4797
+ "description": "Sets the ariaStateKey attributes based on the active state of the button."
4798
+ },
4799
+ {
4800
+ "kind": "method",
4801
+ "name": "setSoftDisabled",
4802
+ "privacy": "private",
4803
+ "parameters": [
4804
+ {
4805
+ "name": "element",
4806
+ "type": {
4807
+ "text": "HTMLElement"
4808
+ },
4809
+ "description": "The button element."
4810
+ },
4811
+ {
4812
+ "name": "softDisabled",
4813
+ "optional": true,
4814
+ "type": {
4815
+ "text": "boolean"
4816
+ },
4817
+ "description": "The soft-disabled state."
4818
+ }
4819
+ ],
4820
+ "description": "Sets the soft-disabled attribute for the button.\nWhen soft-disabled, the button looks to be disabled but remains focusable and clickable.\nAlso sets/removes aria-disabled attribute."
4821
+ },
4822
+ {
4823
+ "kind": "method",
4824
+ "name": "setDisabled",
4825
+ "privacy": "private",
4826
+ "parameters": [
4827
+ {
4828
+ "name": "element",
4829
+ "type": {
4830
+ "text": "HTMLElement"
4831
+ },
4832
+ "description": "The button element."
4833
+ },
4834
+ {
4835
+ "name": "disabled",
4836
+ "type": {
4837
+ "text": "boolean"
4838
+ },
4839
+ "description": "The disabled state."
4840
+ }
4841
+ ],
4842
+ "description": "Sets the disabled attribute for the button.\nWhen disabled, the button is not focusable or clickable, and tabindex is set to -1.\nThe previous tabindex is stored and restored when enabled.\nAlso sets/removes aria-disabled attribute."
4843
+ },
4844
+ {
4845
+ "kind": "method",
4846
+ "name": "triggerClickEvent",
4847
+ "privacy": "private"
4848
+ },
4849
+ {
4850
+ "kind": "method",
4851
+ "name": "handleBlur",
4852
+ "privacy": "private",
4853
+ "description": "In case the button is pressed and the focus is lost while pressing,\nthe pressed class is removed."
4854
+ },
4855
+ {
4856
+ "kind": "method",
4857
+ "name": "handleKeyDown",
4858
+ "privacy": "private",
4859
+ "parameters": [
4860
+ {
4861
+ "name": "event",
4862
+ "type": {
4863
+ "text": "KeyboardEvent"
4864
+ },
4865
+ "description": "The keyboard event."
4866
+ }
4867
+ ],
4868
+ "description": "Handles the keydown event on the button.\nIf the key is 'Enter' or 'Space', the button is pressed.\nIf the key is 'Enter', the button is pressed. The native HTML button works in the same way.\nIf the key is 'Space', the button's default is prevent to avoid scrolling etc in the host application."
4869
+ },
4870
+ {
4871
+ "kind": "method",
4872
+ "name": "handleKeyUp",
4873
+ "privacy": "private",
4874
+ "parameters": [
4875
+ {
4876
+ "name": "event",
4877
+ "type": {
4878
+ "text": "KeyboardEvent"
4879
+ },
4880
+ "description": "The keyboard event."
4881
+ }
4882
+ ],
4883
+ "description": "Handles the keyup event on the button.\nIf the key is 'Enter' or 'Space', the button is clicked.\nIf the key is 'Space', the button is pressed. The native HTML button works in the same way."
4884
+ },
4885
+ {
4886
+ "kind": "field",
4887
+ "name": "autofocus",
4888
+ "type": {
4889
+ "text": "boolean"
4890
+ },
4891
+ "default": "false",
4892
+ "description": "This property indicates whether the element should receive focus automatically when it is rendered.",
4893
+ "attribute": "autofocus",
4894
+ "reflects": true,
4895
+ "inheritedFrom": {
4896
+ "name": "AutoFocusMixin",
4897
+ "module": "utils/mixins/AutoFocusMixin.js"
4898
+ }
4899
+ },
4900
+ {
4901
+ "kind": "field",
4902
+ "name": "tabIndex",
4903
+ "type": {
4904
+ "text": "number"
4905
+ },
4906
+ "default": "0",
4907
+ "description": "This property specifies the tab order of the element.",
4908
+ "attribute": "tabIndex",
4909
+ "reflects": true,
4910
+ "inheritedFrom": {
4911
+ "name": "TabIndexMixin",
4912
+ "module": "utils/mixins/TabIndexMixin.js"
4913
+ }
4914
+ },
4915
+ {
4916
+ "kind": "field",
4917
+ "name": "disabled",
4918
+ "type": {
4919
+ "text": "boolean | undefined"
4920
+ },
4921
+ "description": "Indicates whether the component is disabled.\nWhen the component is disabled for user interaction; it is not focusable or clickable.",
4922
+ "default": "undefined",
4923
+ "attribute": "disabled",
4924
+ "reflects": true,
4925
+ "inheritedFrom": {
4926
+ "name": "DisabledMixin",
4927
+ "module": "utils/mixins/DisabledMixin.js"
4928
+ }
4929
+ }
4930
+ ],
4931
+ "events": [
4932
+ {
4933
+ "description": "(React: onClick) This event is dispatched when the button is clicked.",
4934
+ "name": "click",
4935
+ "reactName": "onClick"
4936
+ },
4937
+ {
4938
+ "description": "(React: onKeyDown) This event is dispatched when a key is pressed down on the button.",
4939
+ "name": "keydown",
4940
+ "reactName": "onKeyDown"
4941
+ },
4942
+ {
4943
+ "description": "(React: onKeyUp) This event is dispatched when a key is released on the button.",
4944
+ "name": "keyup",
4945
+ "reactName": "onKeyUp"
4946
+ },
4947
+ {
4948
+ "description": "(React: onFocus) This event is dispatched when the button receives focus.",
4949
+ "name": "focus",
4950
+ "reactName": "onFocus"
4951
+ }
4952
+ ],
4953
+ "attributes": [
4954
+ {
4955
+ "name": "active",
4956
+ "type": {
4957
+ "text": "boolean | undefined"
4958
+ },
4959
+ "description": "The button's active state indicates whether it is currently toggled on (active) or off (inactive).\nWhen the active state is true, the button is considered to be in an active state, meaning it is toggled on.\nConversely, when the active state is false, the button is in an inactive state, indicating it is toggled off.\n\nThis attribute is used to set the provided `ariaStateKey` to true or false.",
4960
+ "default": "undefined",
4961
+ "fieldName": "active"
4962
+ },
4963
+ {
4964
+ "name": "soft-disabled",
4965
+ "type": {
4966
+ "text": "boolean | undefined"
4967
+ },
4968
+ "description": "Indicates whether the button is soft disabled.\nWhen set to `true`, the button appears visually disabled but still allows\nfocus, click, and keyboard actions to be passed through.\n\n**Important:** When using soft disabled, consumers must ensure that\nthe button behaves like a disabled button, allowing only focus and\npreventing any interactions (clicks or keyboard actions) from triggering unintended actions.",
4969
+ "default": "undefined",
4970
+ "fieldName": "softDisabled"
4971
+ },
4972
+ {
4973
+ "name": "size",
4974
+ "type": {
4975
+ "text": "ButtonSize"
4976
+ },
4977
+ "description": "Simplebutton size is a super set of all the sizes supported by children components.",
4978
+ "default": "32",
4979
+ "fieldName": "size"
4980
+ },
4981
+ {
4982
+ "name": "role",
4983
+ "type": {
4984
+ "text": "RoleType"
4985
+ },
4986
+ "description": "This property defines the ARIA role for the element. By default, it is set to 'button'.\nConsumers should override this role when:\n- The element is being used in a context where a different role is more appropriate.\n- Custom behaviors are implemented that require a specific ARIA role for accessibility purposes.",
4987
+ "default": "button",
4988
+ "fieldName": "role"
4989
+ },
4990
+ {
4991
+ "name": "ariaStateKey",
4992
+ "type": {
4993
+ "text": "string | undefined"
4994
+ },
4995
+ "description": "This property defines the ARIA state key, which will be toggled when the\nButton is set to `active`.\nThe default value is 'aria-pressed', which is commonly used for toggle buttons.\n\nConsumers can override this property to use a different ARIA state key if needed.\nIn case multiple aria attributes should be toggled, they can be passed in as\na comma separated string.\nFor example: `aria-pressed,aria-expanded`",
4996
+ "default": "'aria-pressed' (when)",
4997
+ "fieldName": "ariaStateKey"
4998
+ },
4999
+ {
5000
+ "name": "type",
5001
+ "type": {
5002
+ "text": "ButtonType"
5003
+ },
5004
+ "description": "This property defines the type attribute for the button element.\nThe type attribute specifies the behavior of the button when it is clicked.\n- **submit**: The button submits the form data to the server.\n- **reset**: The button resets the form data to its initial state.\n- **button**: The button does nothing when clicked.",
5005
+ "default": "button",
5006
+ "fieldName": "type"
5007
+ },
5008
+ {
5009
+ "name": "autofocus",
5010
+ "type": {
5011
+ "text": "boolean"
5012
+ },
5013
+ "default": "false",
5014
+ "description": "This property indicates whether the element should receive focus automatically when it is rendered.",
5015
+ "fieldName": "autofocus",
5016
+ "inheritedFrom": {
5017
+ "name": "AutoFocusMixin",
5018
+ "module": "src/utils/mixins/AutoFocusMixin.ts"
5019
+ }
5020
+ },
5021
+ {
5022
+ "name": "tabIndex",
5023
+ "type": {
5024
+ "text": "number"
5025
+ },
5026
+ "default": "0",
5027
+ "description": "This property specifies the tab order of the element.",
5028
+ "fieldName": "tabIndex",
5029
+ "inheritedFrom": {
5030
+ "name": "TabIndexMixin",
5031
+ "module": "src/utils/mixins/TabIndexMixin.ts"
5032
+ }
5033
+ },
5034
+ {
5035
+ "name": "disabled",
5036
+ "type": {
5037
+ "text": "boolean | undefined"
5038
+ },
5039
+ "description": "Indicates whether the component is disabled.\nWhen the component is disabled for user interaction; it is not focusable or clickable.",
5040
+ "default": "undefined",
5041
+ "fieldName": "disabled",
5042
+ "inheritedFrom": {
5043
+ "name": "DisabledMixin",
5044
+ "module": "src/utils/mixins/DisabledMixin.ts"
5045
+ }
5046
+ }
5047
+ ],
5048
+ "mixins": [
5049
+ {
5050
+ "name": "AutoFocusMixin",
5051
+ "module": "/src/utils/mixins/AutoFocusMixin"
5052
+ },
5053
+ {
5054
+ "name": "TabIndexMixin",
5055
+ "module": "/src/utils/mixins/TabIndexMixin"
5056
+ },
5057
+ {
5058
+ "name": "DisabledMixin",
5059
+ "module": "/src/utils/mixins/DisabledMixin"
5060
+ }
5061
+ ],
5062
+ "superclass": {
5063
+ "name": "Component",
4437
5064
  "module": "/src/models"
4438
5065
  },
4439
5066
  "tagName": "mdc-buttonsimple",
@@ -5743,633 +6370,6 @@
5743
6370
  }
5744
6371
  ]
5745
6372
  },
5746
- {
5747
- "kind": "javascript-module",
5748
- "path": "components/buttonlink/buttonlink.component.js",
5749
- "declarations": [
5750
- {
5751
- "kind": "class",
5752
- "description": "`mdc-buttonlink` combines the functional behavior of `mdc-linksimple` with the visual and structural\nfeatures of `mdc-button`. This includes support for variants, sizing, and optional\nprefix and postfix icons via slots.\n\n### Features:\n- Behaves like an link while visually resembling a button.\n- Supports slots for `prefix-icon` and `postfix-icon`.\n- Customizable size, color, and variant through attributes.\n- Inherits accessibility and keyboard interaction support from `mdc-linksimple`.",
5753
- "name": "ButtonLink",
5754
- "members": [
5755
- {
5756
- "kind": "field",
5757
- "name": "size",
5758
- "type": {
5759
- "text": "PillButtonSize | IconButtonSize"
5760
- },
5761
- "description": "ButtonLink sizing is based on the buttonlink type.\n- **Pill buttonlink**: 40, 32, 28, 24.\n- **Icon buttonlink**: 64, 52, 40, 32, 28, 24.\n- Tertiary icon buttonlink can also be 20.",
5762
- "default": "32",
5763
- "attribute": "size",
5764
- "reflects": true
5765
- },
5766
- {
5767
- "kind": "field",
5768
- "name": "softDisabled",
5769
- "type": {
5770
- "text": "boolean | undefined"
5771
- },
5772
- "description": "Indicates whether the buttonlink is soft disabled.\nWhen set to `true`, the buttonlink appears visually disabled but still allows\nfocus, click, and keyboard actions to be passed through.\n\n**Important:** When using soft disabled, consumers must ensure that\nthe buttonlink behaves like a disabled buttonlink, allowing only focus and\npreventing any interactions (clicks or keyboard actions) from triggering unintended actions.",
5773
- "default": "undefined",
5774
- "attribute": "soft-disabled",
5775
- "reflects": true
5776
- },
5777
- {
5778
- "kind": "method",
5779
- "name": "setSoftDisabled",
5780
- "privacy": "private",
5781
- "parameters": [
5782
- {
5783
- "name": "element",
5784
- "type": {
5785
- "text": "HTMLElement"
5786
- },
5787
- "description": "The buttonlink element."
5788
- },
5789
- {
5790
- "name": "softDisabled",
5791
- "optional": true,
5792
- "type": {
5793
- "text": "boolean"
5794
- },
5795
- "description": "The soft-disabled state."
5796
- }
5797
- ],
5798
- "description": "Sets the soft-disabled attribute for the buttonlink.\nWhen soft-disabled, the buttonlink looks to be disabled but remains focusable and clickable.\nAlso sets/removes aria-disabled attribute."
5799
- },
5800
- {
5801
- "kind": "field",
5802
- "name": "prefixIcon",
5803
- "type": {
5804
- "text": "IconNames | undefined"
5805
- },
5806
- "description": "The name of the icon to display as a prefix.\nThe icon is displayed on the left side of the button.",
5807
- "attribute": "prefix-icon",
5808
- "reflects": true,
5809
- "inheritedFrom": {
5810
- "name": "ButtonComponentMixin",
5811
- "module": "utils/mixins/ButtonComponentMixin.js"
5812
- }
5813
- },
5814
- {
5815
- "kind": "field",
5816
- "name": "postfixIcon",
5817
- "type": {
5818
- "text": "IconNames | undefined"
5819
- },
5820
- "description": "The name of the icon to display as a postfix.\nThe icon is displayed on the right side of the button.",
5821
- "attribute": "postfix-icon",
5822
- "reflects": true,
5823
- "inheritedFrom": {
5824
- "name": "ButtonComponentMixin",
5825
- "module": "utils/mixins/ButtonComponentMixin.js"
5826
- }
5827
- },
5828
- {
5829
- "kind": "field",
5830
- "name": "variant",
5831
- "type": {
5832
- "text": "ButtonVariant"
5833
- },
5834
- "description": "There are 3 variants of button: primary, secondary, tertiary. They are styled differently.\n- **Primary**: Solid background color.\n- **Secondary**: Transparent background with a solid border.\n- **Tertiary**: No background or border, appears as plain text but retains all button functionalities.",
5835
- "default": "primary",
5836
- "attribute": "variant",
5837
- "inheritedFrom": {
5838
- "name": "ButtonComponentMixin",
5839
- "module": "utils/mixins/ButtonComponentMixin.js"
5840
- }
5841
- },
5842
- {
5843
- "kind": "field",
5844
- "name": "color",
5845
- "type": {
5846
- "text": "ButtonColor"
5847
- },
5848
- "description": "There are 5 colors for button: positive, negative, accent, promotional, default.",
5849
- "default": "default",
5850
- "attribute": "color",
5851
- "inheritedFrom": {
5852
- "name": "ButtonComponentMixin",
5853
- "module": "utils/mixins/ButtonComponentMixin.js"
5854
- }
5855
- },
5856
- {
5857
- "kind": "method",
5858
- "name": "setVariant",
5859
- "privacy": "protected",
5860
- "parameters": [
5861
- {
5862
- "name": "variant",
5863
- "type": {
5864
- "text": "ButtonVariant"
5865
- },
5866
- "description": "The variant to set."
5867
- }
5868
- ],
5869
- "description": "Sets the variant attribute for the button component.\nIf the provided variant is not included in the BUTTON_VARIANTS,\nit defaults to the value specified in DEFAULTS.VARIANT.",
5870
- "inheritedFrom": {
5871
- "name": "ButtonComponentMixin",
5872
- "module": "utils/mixins/ButtonComponentMixin.js"
5873
- }
5874
- },
5875
- {
5876
- "kind": "method",
5877
- "name": "setColor",
5878
- "privacy": "protected",
5879
- "parameters": [
5880
- {
5881
- "name": "color",
5882
- "type": {
5883
- "text": "ButtonColor"
5884
- },
5885
- "description": "The color to set."
5886
- }
5887
- ],
5888
- "description": "Sets the color attribute for the button.\nDefaults to DEFAULTS.COLOR if invalid or for tertiary button.",
5889
- "inheritedFrom": {
5890
- "name": "ButtonComponentMixin",
5891
- "module": "utils/mixins/ButtonComponentMixin.js"
5892
- }
5893
- },
5894
- {
5895
- "kind": "method",
5896
- "name": "setSize",
5897
- "privacy": "protected",
5898
- "parameters": [
5899
- {
5900
- "name": "size",
5901
- "type": {
5902
- "text": "PillButtonSize | IconButtonSize"
5903
- },
5904
- "description": "The size to set."
5905
- }
5906
- ],
5907
- "description": "Sets the size attribute for the button component.\nValidates the size based on the button type (icon, pill, or tertiary).\nDefaults to DEFAULTS.SIZE if invalid.",
5908
- "inheritedFrom": {
5909
- "name": "ButtonComponentMixin",
5910
- "module": "utils/mixins/ButtonComponentMixin.js"
5911
- }
5912
- },
5913
- {
5914
- "kind": "method",
5915
- "name": "inferButtonType",
5916
- "privacy": "protected",
5917
- "description": "Infers the type of button based on the presence of slot and/or prefix and postfix icons.",
5918
- "parameters": [
5919
- {
5920
- "description": "default slot of button",
5921
- "name": "slot"
5922
- }
5923
- ],
5924
- "inheritedFrom": {
5925
- "name": "ButtonComponentMixin",
5926
- "module": "utils/mixins/ButtonComponentMixin.js"
5927
- }
5928
- },
5929
- {
5930
- "kind": "field",
5931
- "name": "disabled",
5932
- "type": {
5933
- "text": "boolean | undefined"
5934
- },
5935
- "description": "Indicates whether the component is disabled.\nWhen the component is disabled for user interaction; it is not focusable or clickable.",
5936
- "default": "undefined",
5937
- "attribute": "disabled",
5938
- "reflects": true,
5939
- "inheritedFrom": {
5940
- "name": "DisabledMixin",
5941
- "module": "utils/mixins/DisabledMixin.js"
5942
- }
5943
- },
5944
- {
5945
- "kind": "field",
5946
- "name": "tabIndex",
5947
- "type": {
5948
- "text": "number"
5949
- },
5950
- "default": "0",
5951
- "description": "This property specifies the tab order of the element.",
5952
- "attribute": "tabIndex",
5953
- "reflects": true,
5954
- "inheritedFrom": {
5955
- "name": "TabIndexMixin",
5956
- "module": "utils/mixins/TabIndexMixin.js"
5957
- }
5958
- },
5959
- {
5960
- "kind": "field",
5961
- "name": "inline",
5962
- "type": {
5963
- "text": "boolean"
5964
- },
5965
- "description": "The link can be inline or standalone.",
5966
- "default": "false",
5967
- "attribute": "inline",
5968
- "reflects": true,
5969
- "inheritedFrom": {
5970
- "name": "Linksimple",
5971
- "module": "components/linksimple/linksimple.component.js"
5972
- }
5973
- },
5974
- {
5975
- "kind": "field",
5976
- "name": "inverted",
5977
- "type": {
5978
- "text": "boolean"
5979
- },
5980
- "description": "The link color can be inverted by setting the inverted attribute to true.",
5981
- "default": "false",
5982
- "attribute": "inverted",
5983
- "reflects": true,
5984
- "inheritedFrom": {
5985
- "name": "Linksimple",
5986
- "module": "components/linksimple/linksimple.component.js"
5987
- }
5988
- },
5989
- {
5990
- "kind": "field",
5991
- "name": "href",
5992
- "type": {
5993
- "text": "string"
5994
- },
5995
- "default": "'#'",
5996
- "description": "Href for navigation. The URL that the hyperlink points to",
5997
- "attribute": "href",
5998
- "reflects": true,
5999
- "inheritedFrom": {
6000
- "name": "Linksimple",
6001
- "module": "components/linksimple/linksimple.component.js"
6002
- }
6003
- },
6004
- {
6005
- "kind": "field",
6006
- "name": "target",
6007
- "type": {
6008
- "text": "string"
6009
- },
6010
- "default": "'_self'",
6011
- "description": "Optional target: _blank, _self, _parent, _top and _unfencedTop",
6012
- "attribute": "target",
6013
- "reflects": true,
6014
- "inheritedFrom": {
6015
- "name": "Linksimple",
6016
- "module": "components/linksimple/linksimple.component.js"
6017
- }
6018
- },
6019
- {
6020
- "kind": "field",
6021
- "name": "rel",
6022
- "type": {
6023
- "text": "string | undefined"
6024
- },
6025
- "description": "Optional rel attribute that defines the relationship of the linked URL as space-separated link types.",
6026
- "attribute": "rel",
6027
- "reflects": true,
6028
- "inheritedFrom": {
6029
- "name": "Linksimple",
6030
- "module": "components/linksimple/linksimple.component.js"
6031
- }
6032
- },
6033
- {
6034
- "kind": "method",
6035
- "name": "handleNavigation",
6036
- "privacy": "private",
6037
- "return": {
6038
- "type": {
6039
- "text": "void"
6040
- }
6041
- },
6042
- "parameters": [
6043
- {
6044
- "name": "e",
6045
- "type": {
6046
- "text": "MouseEvent | KeyboardEvent"
6047
- }
6048
- }
6049
- ],
6050
- "inheritedFrom": {
6051
- "name": "Linksimple",
6052
- "module": "components/linksimple/linksimple.component.js"
6053
- }
6054
- },
6055
- {
6056
- "kind": "method",
6057
- "name": "setDisabled",
6058
- "privacy": "private",
6059
- "parameters": [
6060
- {
6061
- "name": "disabled",
6062
- "type": {
6063
- "text": "boolean"
6064
- },
6065
- "description": "Whether the element should be disabled"
6066
- }
6067
- ],
6068
- "description": "Sets or removes `aria-disabled` and updates `tabIndex` to reflect\nthe disabled state. When disabled, the element becomes unfocusable;\nwhen enabled, the previous `tabIndex` is restored.",
6069
- "inheritedFrom": {
6070
- "name": "Linksimple",
6071
- "module": "components/linksimple/linksimple.component.js"
6072
- }
6073
- }
6074
- ],
6075
- "events": [
6076
- {
6077
- "description": "(React: onClick) Fired when the user activates the buttonLink using a mouse or assistive technology.",
6078
- "name": "click",
6079
- "reactName": "onClick",
6080
- "inheritedFrom": {
6081
- "name": "Linksimple",
6082
- "module": "src/components/linksimple/linksimple.component.ts"
6083
- }
6084
- },
6085
- {
6086
- "description": "(React: onKeyDown) Fired when the user presses a key while the buttonLink has focus.",
6087
- "name": "keydown",
6088
- "reactName": "onKeyDown",
6089
- "inheritedFrom": {
6090
- "name": "Linksimple",
6091
- "module": "src/components/linksimple/linksimple.component.ts"
6092
- }
6093
- },
6094
- {
6095
- "description": "(React: onFocus) Fired when the buttonLink receives keyboard or mouse focus.",
6096
- "name": "focus",
6097
- "reactName": "onFocus",
6098
- "inheritedFrom": {
6099
- "name": "Linksimple",
6100
- "module": "src/components/linksimple/linksimple.component.ts"
6101
- }
6102
- },
6103
- {
6104
- "description": "(React: onBlur) Fired when the buttonLink loses keyboard or mouse focus.",
6105
- "name": "blur",
6106
- "reactName": "onBlur",
6107
- "inheritedFrom": {
6108
- "name": "Linksimple",
6109
- "module": "src/components/linksimple/linksimple.component.ts"
6110
- }
6111
- }
6112
- ],
6113
- "attributes": [
6114
- {
6115
- "name": "size",
6116
- "type": {
6117
- "text": "PillButtonSize | IconButtonSize"
6118
- },
6119
- "description": "ButtonLink sizing is based on the buttonlink type.\n- **Pill buttonlink**: 40, 32, 28, 24.\n- **Icon buttonlink**: 64, 52, 40, 32, 28, 24.\n- Tertiary icon buttonlink can also be 20.",
6120
- "default": "32",
6121
- "fieldName": "size"
6122
- },
6123
- {
6124
- "name": "soft-disabled",
6125
- "type": {
6126
- "text": "boolean | undefined"
6127
- },
6128
- "description": "Indicates whether the buttonlink is soft disabled.\nWhen set to `true`, the buttonlink appears visually disabled but still allows\nfocus, click, and keyboard actions to be passed through.\n\n**Important:** When using soft disabled, consumers must ensure that\nthe buttonlink behaves like a disabled buttonlink, allowing only focus and\npreventing any interactions (clicks or keyboard actions) from triggering unintended actions.",
6129
- "default": "undefined",
6130
- "fieldName": "softDisabled"
6131
- },
6132
- {
6133
- "name": "prefix-icon",
6134
- "type": {
6135
- "text": "IconNames | undefined"
6136
- },
6137
- "description": "The name of the icon to display as a prefix.\nThe icon is displayed on the left side of the button.",
6138
- "fieldName": "prefixIcon",
6139
- "inheritedFrom": {
6140
- "name": "ButtonComponentMixin",
6141
- "module": "src/utils/mixins/ButtonComponentMixin.ts"
6142
- }
6143
- },
6144
- {
6145
- "name": "postfix-icon",
6146
- "type": {
6147
- "text": "IconNames | undefined"
6148
- },
6149
- "description": "The name of the icon to display as a postfix.\nThe icon is displayed on the right side of the button.",
6150
- "fieldName": "postfixIcon",
6151
- "inheritedFrom": {
6152
- "name": "ButtonComponentMixin",
6153
- "module": "src/utils/mixins/ButtonComponentMixin.ts"
6154
- }
6155
- },
6156
- {
6157
- "name": "variant",
6158
- "type": {
6159
- "text": "ButtonVariant"
6160
- },
6161
- "description": "There are 3 variants of button: primary, secondary, tertiary. They are styled differently.\n- **Primary**: Solid background color.\n- **Secondary**: Transparent background with a solid border.\n- **Tertiary**: No background or border, appears as plain text but retains all button functionalities.",
6162
- "default": "primary",
6163
- "fieldName": "variant",
6164
- "inheritedFrom": {
6165
- "name": "ButtonComponentMixin",
6166
- "module": "src/utils/mixins/ButtonComponentMixin.ts"
6167
- }
6168
- },
6169
- {
6170
- "name": "color",
6171
- "type": {
6172
- "text": "ButtonColor"
6173
- },
6174
- "description": "There are 5 colors for button: positive, negative, accent, promotional, default.",
6175
- "default": "default",
6176
- "fieldName": "color",
6177
- "inheritedFrom": {
6178
- "name": "ButtonComponentMixin",
6179
- "module": "src/utils/mixins/ButtonComponentMixin.ts"
6180
- }
6181
- },
6182
- {
6183
- "name": "disabled",
6184
- "type": {
6185
- "text": "boolean | undefined"
6186
- },
6187
- "description": "Indicates whether the component is disabled.\nWhen the component is disabled for user interaction; it is not focusable or clickable.",
6188
- "default": "undefined",
6189
- "fieldName": "disabled",
6190
- "inheritedFrom": {
6191
- "name": "DisabledMixin",
6192
- "module": "src/utils/mixins/DisabledMixin.ts"
6193
- }
6194
- },
6195
- {
6196
- "name": "tabIndex",
6197
- "type": {
6198
- "text": "number"
6199
- },
6200
- "default": "0",
6201
- "description": "This property specifies the tab order of the element.",
6202
- "fieldName": "tabIndex",
6203
- "inheritedFrom": {
6204
- "name": "TabIndexMixin",
6205
- "module": "src/utils/mixins/TabIndexMixin.ts"
6206
- }
6207
- },
6208
- {
6209
- "name": "inline",
6210
- "type": {
6211
- "text": "boolean"
6212
- },
6213
- "description": "The link can be inline or standalone.",
6214
- "default": "false",
6215
- "fieldName": "inline",
6216
- "inheritedFrom": {
6217
- "name": "Linksimple",
6218
- "module": "src/components/linksimple/linksimple.component.ts"
6219
- }
6220
- },
6221
- {
6222
- "name": "inverted",
6223
- "type": {
6224
- "text": "boolean"
6225
- },
6226
- "description": "The link color can be inverted by setting the inverted attribute to true.",
6227
- "default": "false",
6228
- "fieldName": "inverted",
6229
- "inheritedFrom": {
6230
- "name": "Linksimple",
6231
- "module": "src/components/linksimple/linksimple.component.ts"
6232
- }
6233
- },
6234
- {
6235
- "name": "href",
6236
- "type": {
6237
- "text": "string"
6238
- },
6239
- "default": "'#'",
6240
- "description": "Href for navigation. The URL that the hyperlink points to",
6241
- "fieldName": "href",
6242
- "inheritedFrom": {
6243
- "name": "Linksimple",
6244
- "module": "src/components/linksimple/linksimple.component.ts"
6245
- }
6246
- },
6247
- {
6248
- "name": "target",
6249
- "type": {
6250
- "text": "string"
6251
- },
6252
- "default": "'_self'",
6253
- "description": "Optional target: _blank, _self, _parent, _top and _unfencedTop",
6254
- "fieldName": "target",
6255
- "inheritedFrom": {
6256
- "name": "Linksimple",
6257
- "module": "src/components/linksimple/linksimple.component.ts"
6258
- }
6259
- },
6260
- {
6261
- "name": "rel",
6262
- "type": {
6263
- "text": "string | undefined"
6264
- },
6265
- "description": "Optional rel attribute that defines the relationship of the linked URL as space-separated link types.",
6266
- "fieldName": "rel",
6267
- "inheritedFrom": {
6268
- "name": "Linksimple",
6269
- "module": "src/components/linksimple/linksimple.component.ts"
6270
- }
6271
- }
6272
- ],
6273
- "mixins": [
6274
- {
6275
- "name": "ButtonComponentMixin",
6276
- "module": "/src/utils/mixins/ButtonComponentMixin"
6277
- }
6278
- ],
6279
- "superclass": {
6280
- "name": "Linksimple",
6281
- "module": "/src/components/linksimple/linksimple.component"
6282
- },
6283
- "tagName": "mdc-buttonlink",
6284
- "jsDoc": "/**\n * `mdc-buttonlink` combines the functional behavior of `mdc-linksimple` with the visual and structural\n * features of `mdc-button`. This includes support for variants, sizing, and optional\n * prefix and postfix icons via slots.\n *\n * ### Features:\n * - Behaves like an link while visually resembling a button.\n * - Supports slots for `prefix-icon` and `postfix-icon`.\n * - Customizable size, color, and variant through attributes.\n * - Inherits accessibility and keyboard interaction support from `mdc-linksimple`.\n *\n * @dependency mdc-icon\n *\n * @tagname mdc-buttonlink\n *\n * @event click - (React: onClick) Fired when the user activates the buttonLink using a mouse or assistive technology.\n * @event keydown - (React: onKeyDown) Fired when the user presses a key while the buttonLink has focus.\n * @event focus - (React: onFocus) Fired when the buttonLink receives keyboard or mouse focus.\n * @event blur - (React: onBlur) Fired when the buttonLink loses keyboard or mouse focus.\n *\n */",
6285
- "customElement": true,
6286
- "cssProperties": [
6287
- {
6288
- "description": "Border radius of the link.",
6289
- "name": "--mdc-link-border-radius",
6290
- "inheritedFrom": {
6291
- "name": "Linksimple",
6292
- "module": "src/components/linksimple/linksimple.component.ts"
6293
- }
6294
- },
6295
- {
6296
- "description": "Color of the link’s child content in the active state.",
6297
- "name": "--mdc-link-color-active",
6298
- "inheritedFrom": {
6299
- "name": "Linksimple",
6300
- "module": "src/components/linksimple/linksimple.component.ts"
6301
- }
6302
- },
6303
- {
6304
- "description": "Color of the link’s child content in the disabled state.",
6305
- "name": "--mdc-link-color-disabled",
6306
- "inheritedFrom": {
6307
- "name": "Linksimple",
6308
- "module": "src/components/linksimple/linksimple.component.ts"
6309
- }
6310
- },
6311
- {
6312
- "description": "Color of the link’s child content in the hover state.",
6313
- "name": "--mdc-link-color-hover",
6314
- "inheritedFrom": {
6315
- "name": "Linksimple",
6316
- "module": "src/components/linksimple/linksimple.component.ts"
6317
- }
6318
- },
6319
- {
6320
- "description": "Color of the link’s child content in the normal state.",
6321
- "name": "--mdc-link-color-normal",
6322
- "inheritedFrom": {
6323
- "name": "Linksimple",
6324
- "module": "src/components/linksimple/linksimple.component.ts"
6325
- }
6326
- },
6327
- {
6328
- "description": "Color of the inverted link’s child content in the active state.",
6329
- "name": "--mdc-link-inverted-color-active",
6330
- "inheritedFrom": {
6331
- "name": "Linksimple",
6332
- "module": "src/components/linksimple/linksimple.component.ts"
6333
- }
6334
- },
6335
- {
6336
- "description": "Color of the inverted link’s child content in the disabled state.",
6337
- "name": "--mdc-link-inverted-color-disabled",
6338
- "inheritedFrom": {
6339
- "name": "Linksimple",
6340
- "module": "src/components/linksimple/linksimple.component.ts"
6341
- }
6342
- },
6343
- {
6344
- "description": "Color of the inverted link’s child content in the hover state.",
6345
- "name": "--mdc-link-inverted-color-hover",
6346
- "inheritedFrom": {
6347
- "name": "Linksimple",
6348
- "module": "src/components/linksimple/linksimple.component.ts"
6349
- }
6350
- },
6351
- {
6352
- "description": "Color of the inverted link’s child content in the normal state.",
6353
- "name": "--mdc-link-inverted-color-normal",
6354
- "inheritedFrom": {
6355
- "name": "Linksimple",
6356
- "module": "src/components/linksimple/linksimple.component.ts"
6357
- }
6358
- }
6359
- ]
6360
- }
6361
- ],
6362
- "exports": [
6363
- {
6364
- "kind": "js",
6365
- "name": "default",
6366
- "declaration": {
6367
- "name": "ButtonLink",
6368
- "module": "components/buttonlink/buttonlink.component.js"
6369
- }
6370
- }
6371
- ]
6372
- },
6373
6373
  {
6374
6374
  "kind": "javascript-module",
6375
6375
  "path": "components/cardcheckbox/cardcheckbox.component.js",
@@ -29315,25 +29315,6 @@
29315
29315
  },
29316
29316
  "description": "Returns all radios within the same group (name)."
29317
29317
  },
29318
- {
29319
- "kind": "method",
29320
- "name": "dispatchChangeEvent",
29321
- "privacy": "private",
29322
- "return": {
29323
- "type": {
29324
- "text": "void"
29325
- }
29326
- },
29327
- "parameters": [
29328
- {
29329
- "name": "event",
29330
- "type": {
29331
- "text": "Event"
29332
- }
29333
- }
29334
- ],
29335
- "description": "The 'change' event does not bubble up through the shadow DOM as it was not composed.\nTherefore, we need to re-dispatch the same event to ensure it is propagated correctly.\nRead more: https://developer.mozilla.org/en-US/docs/Web/API/Event/composed"
29336
- },
29337
29318
  {
29338
29319
  "kind": "method",
29339
29320
  "name": "setGroupValidity",
@@ -29371,14 +29352,6 @@
29371
29352
  "text": "void"
29372
29353
  }
29373
29354
  },
29374
- "parameters": [
29375
- {
29376
- "name": "event",
29377
- "type": {
29378
- "text": "Event"
29379
- }
29380
- }
29381
- ],
29382
29355
  "description": "Handles the change event on the radio element.\nThis will toggle the state of the radio element.\nDispatches the change event."
29383
29356
  },
29384
29357
  {
@@ -29399,13 +29372,6 @@
29399
29372
  "text": "number"
29400
29373
  },
29401
29374
  "description": "The index of the radio button to be updated within the enabled radios array."
29402
- },
29403
- {
29404
- "name": "event",
29405
- "type": {
29406
- "text": "Event"
29407
- },
29408
- "description": "The event that triggered the update."
29409
29375
  }
29410
29376
  ],
29411
29377
  "description": "Updates the state of the radio button at the specified index within the enabled radios.\nFocuses the radio button and triggers the change event if the radio button is not read-only."
@@ -29767,13 +29733,11 @@
29767
29733
  ],
29768
29734
  "events": [
29769
29735
  {
29736
+ "name": "change",
29770
29737
  "type": {
29771
- "text": "EventConstructor"
29772
- }
29773
- },
29774
- {
29738
+ "text": "Event"
29739
+ },
29775
29740
  "description": "(React: onChange) Event that gets dispatched when the radio state changes.",
29776
- "name": "change",
29777
29741
  "reactName": "onChange"
29778
29742
  },
29779
29743
  {
@@ -37301,28 +37265,24 @@
37301
37265
  },
37302
37266
  {
37303
37267
  "kind": "javascript-module",
37304
- "path": "components/tooltip/tooltip.component.js",
37268
+ "path": "components/toggletip/toggletip.component.js",
37305
37269
  "declarations": [
37306
37270
  {
37307
37271
  "kind": "class",
37308
- "description": "A tooltip is triggered by mouse hover or by keyboard focus\nand will disappear upon mouse exit or focus change.\n\nNote: Tooltips cannot contain content that can be focused or interacted with.",
37309
- "name": "Tooltip",
37272
+ "description": "A toggletip is triggered by clicking a trigger element.\n\nIt can contain interactive content and can be closed by\nclicking outside the toggletip or pressing the escape key.\n\nIt can have optional close button to close the toggletip.\n\nToggletip component uses `mdc-screenreaderannouncer` internally to\nannounce the toggletip text content with screen readers when the toggletip is shown.\n\n`screenreader-announcer-identity` attribute can be used to provide ID of an element\nin DOM to which announcement elements are added. If not set, a visually hidden\ndiv element is created in DOM to which announcement elements are added.\n\nPlease refer to the `mdc-screenreaderannouncer` component for more details.",
37273
+ "name": "ToggleTip",
37310
37274
  "cssProperties": [
37311
37275
  {
37312
- "description": "The maximum width of the tooltip.",
37313
- "name": "--mdc-tooltip-max-width"
37314
- },
37315
- {
37316
- "description": "The padding of the tooltip.",
37317
- "name": "--mdc-tooltip-padding"
37276
+ "description": "The maximum width of the toggletip.",
37277
+ "name": "--mdc-toggletip-max-width"
37318
37278
  },
37319
37279
  {
37320
- "description": "The text color of the tooltip.",
37321
- "name": "--mdc-tooltip-text-color"
37280
+ "description": "The text color of the toggletip.",
37281
+ "name": "--mdc-toggletip-text-color"
37322
37282
  },
37323
37283
  {
37324
- "description": "The text color of the tooltip when the color is contrast.",
37325
- "name": "--mdc-tooltip-text-color-contrast"
37284
+ "description": "The text color of the toggletip when the color is contrast.",
37285
+ "name": "--mdc-toggletip-text-color-contrast"
37326
37286
  },
37327
37287
  {
37328
37288
  "description": "radius of the arrow border",
@@ -37405,18 +37365,17 @@
37405
37365
  }
37406
37366
  }
37407
37367
  ],
37408
- "members": [
37368
+ "slots": [
37409
37369
  {
37410
- "kind": "field",
37411
- "name": "tooltipType",
37412
- "type": {
37413
- "text": "TooltipType"
37414
- },
37415
- "description": "The type of tooltip.\n- **description** sets aria-describedby on the trigger component which refers to the tooltip id.\n- **label** sets aria-labelledby on the trigger component which refers to the tooltip id.\n- **none** no aria props set on trigger component referring to the tooltip id.",
37416
- "default": "'description'",
37417
- "attribute": "tooltip-type",
37418
- "reflects": true
37419
- },
37370
+ "description": "Default slot for the toggletip content",
37371
+ "name": "",
37372
+ "inheritedFrom": {
37373
+ "name": "Popover",
37374
+ "module": "src/components/popover/popover.component.ts"
37375
+ }
37376
+ }
37377
+ ],
37378
+ "members": [
37420
37379
  {
37421
37380
  "kind": "field",
37422
37381
  "name": "defaultSlotNodes",
@@ -37426,76 +37385,50 @@
37426
37385
  "privacy": "private"
37427
37386
  },
37428
37387
  {
37429
- "kind": "method",
37430
- "name": "getTooltipText",
37431
- "privacy": "private",
37432
- "return": {
37433
- "type": {
37434
- "text": ""
37435
- }
37436
- }
37437
- },
37438
- {
37439
- "kind": "method",
37440
- "name": "setTooltipType",
37441
- "privacy": "private",
37442
- "return": {
37443
- "type": {
37444
- "text": "void"
37445
- }
37388
+ "kind": "field",
37389
+ "name": "screenreaderAnnouncerIdentity",
37390
+ "type": {
37391
+ "text": "string | undefined"
37446
37392
  },
37447
- "parameters": [
37448
- {
37449
- "name": "type",
37450
- "type": {
37451
- "text": "TooltipType"
37452
- },
37453
- "description": "The type to set."
37454
- }
37455
- ],
37456
- "description": "Sets the type attribute for the tooltip component.\nIf the provided type is not included in the TOOLTIP_TYPES,\nit defaults to the value specified in DEFAULTS.TOOLTIP_TYPE."
37393
+ "description": "Set this attribute with the id of the element in the DOM, to which announcement\nelements will be appended.\nIf an id is provided, the announcement elements will be appended to this element.\nIf id is not provided, a visually hidden div element will be created in the DOM.\n\nPlease refer to the `mdc-screenreaderannouncer` component for more details.",
37394
+ "attribute": "screenreader-announcer-identity",
37395
+ "reflects": true
37457
37396
  },
37458
37397
  {
37459
- "kind": "method",
37460
- "name": "onIdUpdated",
37461
- "privacy": "private",
37462
- "return": {
37463
- "type": {
37464
- "text": "Promise<void>"
37465
- }
37398
+ "kind": "field",
37399
+ "name": "placement",
37400
+ "type": {
37401
+ "text": "PopoverPlacement"
37466
37402
  },
37467
- "description": "Updates the tooltip id if it is empty."
37403
+ "description": "The placement of the popover.\n- **top**\n- **top-start**\n- **top-end**\n- **bottom**\n- **bottom-start**\n- **bottom-end**\n- **left**\n- **left-start**\n- **left-end**\n- **right**\n- **right-start**\n- **right-end**",
37404
+ "default": "bottom",
37405
+ "attribute": "placement",
37406
+ "reflects": true,
37407
+ "inheritedFrom": {
37408
+ "name": "Popover",
37409
+ "module": "components/popover/popover.component.js"
37410
+ }
37468
37411
  },
37469
37412
  {
37470
37413
  "kind": "method",
37471
- "name": "onPlacementUpdated",
37414
+ "name": "getToggleTipText",
37472
37415
  "privacy": "private",
37473
37416
  "return": {
37474
37417
  "type": {
37475
- "text": "void"
37418
+ "text": ""
37476
37419
  }
37477
- },
37478
- "description": "Updates the placement attribute if it is not a valid placement.\nOverriding the default from Popover"
37420
+ }
37479
37421
  },
37480
37422
  {
37481
37423
  "kind": "method",
37482
- "name": "onTooltipTypeUpdated",
37424
+ "name": "onPlacementUpdated",
37483
37425
  "privacy": "private",
37484
37426
  "return": {
37485
37427
  "type": {
37486
37428
  "text": "void"
37487
37429
  }
37488
37430
  },
37489
- "parameters": [
37490
- {
37491
- "name": "changedProperties",
37492
- "type": {
37493
- "text": "PropertyValues"
37494
- },
37495
- "description": "The changed properties."
37496
- }
37497
- ],
37498
- "description": "Updates the tooltip type attribute and sets the appropriate aria props on the trigger component."
37431
+ "description": "Updates the placement attribute if it is not a valid placement.\nDefault placement for toggle tip is top."
37499
37432
  },
37500
37433
  {
37501
37434
  "kind": "field",
@@ -38088,21 +38021,6 @@
38088
38021
  "module": "components/popover/popover.component.js"
38089
38022
  }
38090
38023
  },
38091
- {
38092
- "kind": "field",
38093
- "name": "placement",
38094
- "type": {
38095
- "text": "PopoverPlacement"
38096
- },
38097
- "description": "The placement of the popover.\n- **top**\n- **top-start**\n- **top-end**\n- **bottom**\n- **bottom-start**\n- **bottom-end**\n- **left**\n- **left-start**\n- **left-end**\n- **right**\n- **right-start**\n- **right-end**",
38098
- "default": "bottom",
38099
- "attribute": "placement",
38100
- "reflects": true,
38101
- "inheritedFrom": {
38102
- "name": "Popover",
38103
- "module": "components/popover/popover.component.js"
38104
- }
38105
- },
38106
38024
  {
38107
38025
  "kind": "field",
38108
38026
  "name": "color",
@@ -38731,1031 +38649,550 @@
38731
38649
  "description": "Hides the popover.",
38732
38650
  "inheritedFrom": {
38733
38651
  "name": "Popover",
38734
- "module": "components/popover/popover.component.js"
38735
- }
38736
- },
38737
- {
38738
- "kind": "field",
38739
- "name": "togglePopoverVisible",
38740
- "privacy": "public",
38741
- "description": "Toggles the popover visibility.",
38742
- "inheritedFrom": {
38743
- "name": "Popover",
38744
- "module": "components/popover/popover.component.js"
38745
- }
38746
- },
38747
- {
38748
- "kind": "field",
38749
- "name": "positionPopover",
38750
- "privacy": "private",
38751
- "description": "Positions the popover based on the trigger element.\nIt also handles the flip, size and arrow placement.\nIt uses the floating-ui/dom library to calculate the position.",
38752
- "inheritedFrom": {
38753
- "name": "Popover",
38754
- "module": "components/popover/popover.component.js"
38755
- }
38756
- },
38757
- {
38758
- "kind": "field",
38759
- "name": "findClosestPopover",
38760
- "privacy": "protected",
38761
- "description": "Finds the closest popover to the passed element in the DOM tree.\n\nUseful when need to find the parent popover in a nested popover scenario.",
38762
- "parameters": [
38763
- {
38764
- "description": "The element to start searching from.",
38765
- "name": "element"
38766
- }
38767
- ],
38768
- "inheritedFrom": {
38769
- "name": "Popover",
38770
- "module": "components/popover/popover.component.js"
38771
- }
38772
- },
38773
- {
38774
- "kind": "field",
38775
- "name": "utils",
38776
- "default": "new PopoverUtils(this)",
38777
- "inheritedFrom": {
38778
- "name": "Popover",
38779
- "module": "components/popover/popover.component.js"
38780
- }
38781
- }
38782
- ],
38783
- "events": [
38784
- {
38785
- "description": "(React: onShown) This event is dispatched when the tooltip is shown",
38786
- "name": "shown",
38787
- "reactName": "onShown",
38788
- "inheritedFrom": {
38789
- "name": "Popover",
38790
- "module": "src/components/popover/popover.component.ts"
38791
- }
38792
- },
38793
- {
38794
- "description": "(React: onHidden) This event is dispatched when the tooltip is hidden",
38795
- "name": "hidden",
38796
- "reactName": "onHidden",
38797
- "inheritedFrom": {
38798
- "name": "Popover",
38799
- "module": "src/components/popover/popover.component.ts"
38800
- }
38801
- },
38802
- {
38803
- "description": "(React: onCreated) This event is dispatched when the tooltip is created (added to the DOM)",
38804
- "name": "created",
38805
- "reactName": "onCreated",
38806
- "inheritedFrom": {
38807
- "name": "Popover",
38808
- "module": "src/components/popover/popover.component.ts"
38809
- }
38810
- },
38811
- {
38812
- "description": "(React: onDestroyed) This event is dispatched when the tooltip is destroyed (removed from the DOM)",
38813
- "name": "destroyed",
38814
- "reactName": "onDestroyed",
38815
- "inheritedFrom": {
38816
- "name": "Popover",
38817
- "module": "src/components/popover/popover.component.ts"
38818
- }
38819
- }
38820
- ],
38821
- "attributes": [
38822
- {
38823
- "name": "tooltip-type",
38824
- "type": {
38825
- "text": "TooltipType"
38826
- },
38827
- "description": "The type of tooltip.\n- **description** sets aria-describedby on the trigger component which refers to the tooltip id.\n- **label** sets aria-labelledby on the trigger component which refers to the tooltip id.\n- **none** no aria props set on trigger component referring to the tooltip id.",
38828
- "default": "'description'",
38829
- "fieldName": "tooltipType"
38830
- },
38831
- {
38832
- "name": "should-focus-trap-wrap",
38833
- "type": {
38834
- "text": "boolean"
38835
- },
38836
- "default": "true",
38837
- "description": "Determines whether focus should wrap around when reaching the first or last focusable element.\nIf true, focus will cycle from end to start and vice versa.\n\nThis only applies when `focusTrap` is true.",
38838
- "fieldName": "shouldFocusTrapWrap",
38839
- "inheritedFrom": {
38840
- "name": "Popover",
38841
- "module": "src/components/popover/popover.component.ts"
38842
- }
38843
- },
38844
- {
38845
- "name": "id",
38846
- "type": {
38847
- "text": "string"
38848
- },
38849
- "default": "''",
38850
- "description": "The unique ID of the popover.",
38851
- "fieldName": "id",
38852
- "inheritedFrom": {
38853
- "name": "Popover",
38854
- "module": "src/components/popover/popover.component.ts"
38855
- }
38856
- },
38857
- {
38858
- "name": "triggerID",
38859
- "type": {
38860
- "text": "string"
38861
- },
38862
- "default": "''",
38863
- "description": "The ID of the element that triggers the popover.\nThis attribute is required for the popover to work.",
38864
- "fieldName": "triggerID",
38865
- "inheritedFrom": {
38866
- "name": "Popover",
38867
- "module": "src/components/popover/popover.component.ts"
38868
- }
38869
- },
38870
- {
38871
- "name": "trigger",
38872
- "type": {
38873
- "text": "PopoverTrigger"
38874
- },
38875
- "description": "Determines the events that cause the Popover to show.\nMultiple event names should be separated by spaces.\nFor example to allow both click and hover, use 'click mouseenter' as the trigger.\n- **click**\n- **mouseenter**\n- **focusin**\n- **manual**",
38876
- "default": "click",
38877
- "fieldName": "trigger",
38878
- "inheritedFrom": {
38879
- "name": "Popover",
38880
- "module": "src/components/popover/popover.component.ts"
38881
- }
38882
- },
38883
- {
38884
- "name": "placement",
38885
- "type": {
38886
- "text": "PopoverPlacement"
38887
- },
38888
- "description": "The placement of the popover.\n- **top**\n- **top-start**\n- **top-end**\n- **bottom**\n- **bottom-start**\n- **bottom-end**\n- **left**\n- **left-start**\n- **left-end**\n- **right**\n- **right-start**\n- **right-end**",
38889
- "default": "bottom",
38890
- "fieldName": "placement",
38891
- "inheritedFrom": {
38892
- "name": "Popover",
38893
- "module": "src/components/popover/popover.component.ts"
38894
- }
38895
- },
38896
- {
38897
- "name": "color",
38898
- "type": {
38899
- "text": "PopoverColor"
38900
- },
38901
- "description": "Color of the popover\n- **tonal**\n- **contrast**",
38902
- "default": "tonal",
38903
- "fieldName": "color",
38904
- "inheritedFrom": {
38905
- "name": "Popover",
38906
- "module": "src/components/popover/popover.component.ts"
38907
- }
38908
- },
38909
- {
38910
- "name": "visible",
38911
- "type": {
38912
- "text": "boolean"
38913
- },
38914
- "description": "The visibility of the popover.",
38915
- "default": "false",
38916
- "fieldName": "visible",
38917
- "inheritedFrom": {
38918
- "name": "Popover",
38919
- "module": "src/components/popover/popover.component.ts"
38920
- }
38921
- },
38922
- {
38923
- "name": "offset",
38924
- "type": {
38925
- "text": "number"
38926
- },
38927
- "description": "The offset of the popover.",
38928
- "default": "4",
38929
- "fieldName": "offset",
38930
- "inheritedFrom": {
38931
- "name": "Popover",
38932
- "module": "src/components/popover/popover.component.ts"
38933
- }
38934
- },
38935
- {
38936
- "name": "boundary",
38937
- "type": {
38938
- "text": "'clippingAncestors' | string"
38939
- },
38940
- "description": "This describes the clipping element(s) or area that overflow will be checked relative to.\nThe default is 'clippingAncestors', which are the overflow ancestors which will cause the\nelement to be clipped.\n\nPossible values:\n - 'clippingAncestors'\n - any css selector",
38941
- "default": "'clippingAncestors'",
38942
- "fieldName": "boundary",
38943
- "inheritedFrom": {
38944
- "name": "Popover",
38945
- "module": "src/components/popover/popover.component.ts"
38946
- }
38947
- },
38948
- {
38949
- "name": "boundary-root",
38950
- "type": {
38951
- "text": "'viewport' | 'document'"
38952
- },
38953
- "description": "This describes the root boundary that the element will be checked for overflow relative to.\nThe default is 'viewport', which is the area of the page the user can see on the screen.\n\nThe other string option is 'document', which is the entire page outside the viewport.",
38954
- "default": "'viewport'",
38955
- "fieldName": "boundaryRoot",
38956
- "inheritedFrom": {
38957
- "name": "Popover",
38958
- "module": "src/components/popover/popover.component.ts"
38959
- }
38960
- },
38961
- {
38962
- "name": "boundary-padding",
38963
- "type": {
38964
- "text": "undefined | number"
38965
- },
38966
- "description": "Virtual padding around the boundary to check for overflow.\nSo the popover will not be placed on top of the edge of the boundary.\n\nDefault works well for most cases, but you can set this to customise it when necessary.",
38967
- "default": "undefined",
38968
- "fieldName": "boundaryPadding",
38969
- "inheritedFrom": {
38970
- "name": "Popover",
38971
- "module": "src/components/popover/popover.component.ts"
38972
- }
38973
- },
38974
- {
38975
- "name": "focus-trap",
38976
- "type": {
38977
- "text": "boolean"
38978
- },
38979
- "description": "Determines whether the focus trap is enabled.\nIf true, focus will be restricted to the content within this component.",
38980
- "default": "false",
38981
- "fieldName": "focusTrap",
38982
- "inheritedFrom": {
38983
- "name": "Popover",
38984
- "module": "src/components/popover/popover.component.ts"
38652
+ "module": "components/popover/popover.component.js"
38985
38653
  }
38986
38654
  },
38987
38655
  {
38988
- "name": "prevent-scroll",
38989
- "type": {
38990
- "text": "boolean"
38991
- },
38992
- "description": "Prevent outside scrolling when popover is shown.",
38993
- "default": "false",
38994
- "fieldName": "preventScroll",
38656
+ "kind": "field",
38657
+ "name": "togglePopoverVisible",
38658
+ "privacy": "public",
38659
+ "description": "Toggles the popover visibility.",
38995
38660
  "inheritedFrom": {
38996
38661
  "name": "Popover",
38997
- "module": "src/components/popover/popover.component.ts"
38662
+ "module": "components/popover/popover.component.js"
38998
38663
  }
38999
38664
  },
39000
38665
  {
39001
- "name": "show-arrow",
39002
- "type": {
39003
- "text": "boolean"
39004
- },
39005
- "description": "The arrow visibility of the popover.",
39006
- "default": "false",
39007
- "fieldName": "showArrow",
38666
+ "kind": "field",
38667
+ "name": "positionPopover",
38668
+ "privacy": "private",
38669
+ "description": "Positions the popover based on the trigger element.\nIt also handles the flip, size and arrow placement.\nIt uses the floating-ui/dom library to calculate the position.",
39008
38670
  "inheritedFrom": {
39009
38671
  "name": "Popover",
39010
- "module": "src/components/popover/popover.component.ts"
38672
+ "module": "components/popover/popover.component.js"
39011
38673
  }
39012
38674
  },
39013
38675
  {
39014
- "name": "close-button",
39015
- "type": {
39016
- "text": "boolean"
39017
- },
39018
- "description": "The close button visibility of the popover.",
39019
- "default": "false",
39020
- "fieldName": "closeButton",
38676
+ "kind": "field",
38677
+ "name": "findClosestPopover",
38678
+ "privacy": "protected",
38679
+ "description": "Finds the closest popover to the passed element in the DOM tree.\n\nUseful when need to find the parent popover in a nested popover scenario.",
38680
+ "parameters": [
38681
+ {
38682
+ "description": "The element to start searching from.",
38683
+ "name": "element"
38684
+ }
38685
+ ],
39021
38686
  "inheritedFrom": {
39022
38687
  "name": "Popover",
39023
- "module": "src/components/popover/popover.component.ts"
38688
+ "module": "components/popover/popover.component.js"
39024
38689
  }
39025
38690
  },
39026
38691
  {
39027
- "name": "interactive",
39028
- "type": {
39029
- "text": "boolean"
39030
- },
39031
- "description": "Determines whether the popover is interactive.\nMake sure to set focusTrap to true to keep the focus inside the popover in case necessary.\nSetting interactive to true will not automatically set focusTrap!",
39032
- "default": "false",
39033
- "fieldName": "interactive",
38692
+ "kind": "field",
38693
+ "name": "utils",
38694
+ "default": "new PopoverUtils(this)",
39034
38695
  "inheritedFrom": {
39035
38696
  "name": "Popover",
39036
- "module": "src/components/popover/popover.component.ts"
38697
+ "module": "components/popover/popover.component.js"
39037
38698
  }
39038
- },
38699
+ }
38700
+ ],
38701
+ "events": [
39039
38702
  {
39040
- "name": "delay",
39041
- "type": {
39042
- "text": "string"
39043
- },
39044
- "description": "The delay of the show/hide popover.",
39045
- "default": "0,0",
39046
- "fieldName": "delay",
38703
+ "description": "(React: onShown) This event is dispatched when the toggletip is shown",
38704
+ "name": "shown",
38705
+ "reactName": "onShown",
39047
38706
  "inheritedFrom": {
39048
38707
  "name": "Popover",
39049
38708
  "module": "src/components/popover/popover.component.ts"
39050
38709
  }
39051
38710
  },
39052
38711
  {
39053
- "name": "hide-on-escape",
39054
- "type": {
39055
- "text": "boolean"
39056
- },
39057
- "description": "Hide popover on escape key press.",
39058
- "default": "false",
39059
- "fieldName": "hideOnEscape",
38712
+ "description": "(React: onHidden) This event is dispatched when the toggletip is hidden",
38713
+ "name": "hidden",
38714
+ "reactName": "onHidden",
39060
38715
  "inheritedFrom": {
39061
38716
  "name": "Popover",
39062
38717
  "module": "src/components/popover/popover.component.ts"
39063
38718
  }
39064
38719
  },
39065
38720
  {
39066
- "name": "propagate-event-on-escape",
39067
- "type": {
39068
- "text": "boolean"
39069
- },
39070
- "description": "Propagates the event, when the escape key is pressed (only when pressed inside the popover)\nIf true, the escape key press close the popover and will propagate the keydown event.\nIf false, the escape key press will close the popover but will not propagate the keydown event.\n(set to false to prevent the event from bubbling up to the document).\n\nThis only works when `hideOnEscape` is true.",
39071
- "default": "false",
39072
- "fieldName": "propagateEventOnEscape",
38721
+ "description": "(React: onCreated) This event is dispatched when the toggletip is created (added to the DOM)",
38722
+ "name": "created",
38723
+ "reactName": "onCreated",
39073
38724
  "inheritedFrom": {
39074
38725
  "name": "Popover",
39075
38726
  "module": "src/components/popover/popover.component.ts"
39076
38727
  }
39077
38728
  },
39078
38729
  {
39079
- "name": "hide-on-blur",
39080
- "type": {
39081
- "text": "boolean"
39082
- },
39083
- "description": "Hide popover on blur.",
39084
- "default": "false",
39085
- "fieldName": "hideOnBlur",
38730
+ "description": "(React: onDestroyed) This event is dispatched when the toggletip is destroyed (removed from the DOM)",
38731
+ "name": "destroyed",
38732
+ "reactName": "onDestroyed",
39086
38733
  "inheritedFrom": {
39087
38734
  "name": "Popover",
39088
38735
  "module": "src/components/popover/popover.component.ts"
39089
38736
  }
38737
+ }
38738
+ ],
38739
+ "attributes": [
38740
+ {
38741
+ "name": "screenreader-announcer-identity",
38742
+ "type": {
38743
+ "text": "string | undefined"
38744
+ },
38745
+ "description": "Set this attribute with the id of the element in the DOM, to which announcement\nelements will be appended.\nIf an id is provided, the announcement elements will be appended to this element.\nIf id is not provided, a visually hidden div element will be created in the DOM.\n\nPlease refer to the `mdc-screenreaderannouncer` component for more details.",
38746
+ "fieldName": "screenreaderAnnouncerIdentity"
39090
38747
  },
39091
38748
  {
39092
- "name": "hide-on-outside-click",
38749
+ "name": "placement",
39093
38750
  "type": {
39094
- "text": "boolean"
38751
+ "text": "PopoverPlacement"
39095
38752
  },
39096
- "description": "Hide on outside click of the popover.",
39097
- "default": "false",
39098
- "fieldName": "hideOnOutsideClick",
38753
+ "description": "The placement of the popover.\n- **top**\n- **top-start**\n- **top-end**\n- **bottom**\n- **bottom-start**\n- **bottom-end**\n- **left**\n- **left-start**\n- **left-end**\n- **right**\n- **right-start**\n- **right-end**",
38754
+ "default": "bottom",
38755
+ "fieldName": "placement",
39099
38756
  "inheritedFrom": {
39100
38757
  "name": "Popover",
39101
38758
  "module": "src/components/popover/popover.component.ts"
39102
38759
  }
39103
38760
  },
39104
38761
  {
39105
- "name": "focus-back-to-trigger",
38762
+ "name": "should-focus-trap-wrap",
39106
38763
  "type": {
39107
38764
  "text": "boolean"
39108
38765
  },
39109
- "description": "The focus back to trigger after the popover hide.",
39110
- "default": "false",
39111
- "fieldName": "focusBackToTrigger",
38766
+ "default": "true",
38767
+ "description": "Determines whether focus should wrap around when reaching the first or last focusable element.\nIf true, focus will cycle from end to start and vice versa.\n\nThis only applies when `focusTrap` is true.",
38768
+ "fieldName": "shouldFocusTrapWrap",
39112
38769
  "inheritedFrom": {
39113
38770
  "name": "Popover",
39114
38771
  "module": "src/components/popover/popover.component.ts"
39115
38772
  }
39116
38773
  },
39117
38774
  {
39118
- "name": "backdrop",
38775
+ "name": "id",
39119
38776
  "type": {
39120
- "text": "boolean"
38777
+ "text": "string"
39121
38778
  },
39122
- "description": "Determines whether the popover with backdrop.\nOther than popover and trigger element, the rest of the screen will be covered with a backdrop.",
39123
- "default": "false",
39124
- "fieldName": "backdrop",
38779
+ "default": "''",
38780
+ "description": "The unique ID of the popover.",
38781
+ "fieldName": "id",
39125
38782
  "inheritedFrom": {
39126
38783
  "name": "Popover",
39127
38784
  "module": "src/components/popover/popover.component.ts"
39128
38785
  }
39129
38786
  },
39130
38787
  {
39131
- "name": "flip",
38788
+ "name": "triggerID",
39132
38789
  "type": {
39133
- "text": "boolean"
38790
+ "text": "string"
39134
38791
  },
39135
- "description": "Changes the placement of popover to keep it in view when scrolling.",
39136
- "default": "true",
39137
- "fieldName": "flip",
38792
+ "default": "''",
38793
+ "description": "The ID of the element that triggers the popover.\nThis attribute is required for the popover to work.",
38794
+ "fieldName": "triggerID",
39138
38795
  "inheritedFrom": {
39139
38796
  "name": "Popover",
39140
38797
  "module": "src/components/popover/popover.component.ts"
39141
38798
  }
39142
38799
  },
39143
38800
  {
39144
- "name": "size",
38801
+ "name": "trigger",
39145
38802
  "type": {
39146
- "text": "boolean"
38803
+ "text": "PopoverTrigger"
39147
38804
  },
39148
- "description": "Changes the size of popover to keep it in view when scrolling.",
39149
- "default": "false",
39150
- "fieldName": "size",
38805
+ "description": "Determines the events that cause the Popover to show.\nMultiple event names should be separated by spaces.\nFor example to allow both click and hover, use 'click mouseenter' as the trigger.\n- **click**\n- **mouseenter**\n- **focusin**\n- **manual**",
38806
+ "default": "click",
38807
+ "fieldName": "trigger",
39151
38808
  "inheritedFrom": {
39152
38809
  "name": "Popover",
39153
38810
  "module": "src/components/popover/popover.component.ts"
39154
38811
  }
39155
38812
  },
39156
38813
  {
39157
- "name": "z-index",
38814
+ "name": "color",
39158
38815
  "type": {
39159
- "text": "number"
38816
+ "text": "PopoverColor"
39160
38817
  },
39161
- "description": "The z-index of the popover.",
39162
- "default": "1000",
39163
- "fieldName": "zIndex",
38818
+ "description": "Color of the popover\n- **tonal**\n- **contrast**",
38819
+ "default": "tonal",
38820
+ "fieldName": "color",
39164
38821
  "inheritedFrom": {
39165
38822
  "name": "Popover",
39166
38823
  "module": "src/components/popover/popover.component.ts"
39167
38824
  }
39168
38825
  },
39169
38826
  {
39170
- "name": "append-to",
38827
+ "name": "visible",
39171
38828
  "type": {
39172
- "text": "string | undefined"
38829
+ "text": "boolean"
39173
38830
  },
39174
- "description": "Element ID that the popover append to.",
39175
- "default": "''",
39176
- "fieldName": "appendTo",
38831
+ "description": "The visibility of the popover.",
38832
+ "default": "false",
38833
+ "fieldName": "visible",
39177
38834
  "inheritedFrom": {
39178
38835
  "name": "Popover",
39179
38836
  "module": "src/components/popover/popover.component.ts"
39180
38837
  }
39181
38838
  },
39182
38839
  {
39183
- "name": "close-button-aria-label",
38840
+ "name": "offset",
39184
38841
  "type": {
39185
- "text": "string | null"
38842
+ "text": "number"
39186
38843
  },
39187
- "default": "null",
39188
- "description": "aria-label attribute to be set for close button accessibility.",
39189
- "fieldName": "closeButtonAriaLabel",
38844
+ "description": "The offset of the popover.",
38845
+ "default": "4",
38846
+ "fieldName": "offset",
39190
38847
  "inheritedFrom": {
39191
38848
  "name": "Popover",
39192
38849
  "module": "src/components/popover/popover.component.ts"
39193
38850
  }
39194
38851
  },
39195
38852
  {
39196
- "name": "role",
38853
+ "name": "boundary",
39197
38854
  "type": {
39198
- "text": "HTMLElement['role']"
38855
+ "text": "'clippingAncestors' | string"
39199
38856
  },
39200
- "description": "Role of the popover",
39201
- "default": "dialog",
39202
- "fieldName": "role",
38857
+ "description": "This describes the clipping element(s) or area that overflow will be checked relative to.\nThe default is 'clippingAncestors', which are the overflow ancestors which will cause the\nelement to be clipped.\n\nPossible values:\n - 'clippingAncestors'\n - any css selector",
38858
+ "default": "'clippingAncestors'",
38859
+ "fieldName": "boundary",
39203
38860
  "inheritedFrom": {
39204
38861
  "name": "Popover",
39205
38862
  "module": "src/components/popover/popover.component.ts"
39206
38863
  }
39207
38864
  },
39208
38865
  {
39209
- "name": "aria-labelledby",
38866
+ "name": "boundary-root",
39210
38867
  "type": {
39211
- "text": "string | null"
38868
+ "text": "'viewport' | 'document'"
39212
38869
  },
39213
- "default": "null",
39214
- "description": "aria-labelledby for an interactive popover only, defaults to the trigger component id.\nUsed in nested cases where the triggerComponent isn't the actual button.",
39215
- "fieldName": "ariaLabelledby",
38870
+ "description": "This describes the root boundary that the element will be checked for overflow relative to.\nThe default is 'viewport', which is the area of the page the user can see on the screen.\n\nThe other string option is 'document', which is the entire page outside the viewport.",
38871
+ "default": "'viewport'",
38872
+ "fieldName": "boundaryRoot",
39216
38873
  "inheritedFrom": {
39217
38874
  "name": "Popover",
39218
38875
  "module": "src/components/popover/popover.component.ts"
39219
38876
  }
39220
38877
  },
39221
38878
  {
39222
- "name": "aria-describedby",
38879
+ "name": "boundary-padding",
39223
38880
  "type": {
39224
- "text": "string | null"
38881
+ "text": "undefined | number"
39225
38882
  },
39226
- "default": "null",
39227
- "description": "aria-describedby of the popover.",
39228
- "fieldName": "ariaDescribedby",
38883
+ "description": "Virtual padding around the boundary to check for overflow.\nSo the popover will not be placed on top of the edge of the boundary.\n\nDefault works well for most cases, but you can set this to customise it when necessary.",
38884
+ "default": "undefined",
38885
+ "fieldName": "boundaryPadding",
39229
38886
  "inheritedFrom": {
39230
38887
  "name": "Popover",
39231
38888
  "module": "src/components/popover/popover.component.ts"
39232
38889
  }
39233
38890
  },
39234
38891
  {
39235
- "name": "disable-aria-expanded",
38892
+ "name": "focus-trap",
39236
38893
  "type": {
39237
38894
  "text": "boolean"
39238
38895
  },
39239
- "description": "Disable setting the aria-expanded attribute on trigger element.\nMake sure to set this to false when the popover is interactive.",
38896
+ "description": "Determines whether the focus trap is enabled.\nIf true, focus will be restricted to the content within this component.",
39240
38897
  "default": "false",
39241
- "fieldName": "disableAriaExpanded",
38898
+ "fieldName": "focusTrap",
39242
38899
  "inheritedFrom": {
39243
38900
  "name": "Popover",
39244
38901
  "module": "src/components/popover/popover.component.ts"
39245
38902
  }
39246
38903
  },
39247
38904
  {
39248
- "name": "disable-aria-haspopup",
38905
+ "name": "prevent-scroll",
39249
38906
  "type": {
39250
38907
  "text": "boolean"
39251
38908
  },
39252
- "description": "Disable setting the aria-haspopup attribute on trigger element.\nMake sure to set this to true when the popover is extended and its role\nis not 'dialog' or 'alertdialog' i.e. listbox, menu, etc.",
38909
+ "description": "Prevent outside scrolling when popover is shown.",
39253
38910
  "default": "false",
39254
- "fieldName": "disableAriaHasPopup",
38911
+ "fieldName": "preventScroll",
39255
38912
  "inheritedFrom": {
39256
38913
  "name": "Popover",
39257
38914
  "module": "src/components/popover/popover.component.ts"
39258
38915
  }
39259
38916
  },
39260
38917
  {
39261
- "name": "keep-connected-tooltip-closed",
38918
+ "name": "show-arrow",
39262
38919
  "type": {
39263
38920
  "text": "boolean"
39264
38921
  },
39265
- "description": "If a tooltip is connected to the same trigger element,\nthis property will keep the connected tooltip closed if this popover is open.\nThis is useful when you want to show a popover with a tooltip\nbut you don't want the tooltip to be shown at the same time.",
39266
- "fieldName": "keepConnectedTooltipClosed",
39267
- "inheritedFrom": {
39268
- "name": "Popover",
39269
- "module": "src/components/popover/popover.component.ts"
39270
- }
39271
- }
39272
- ],
39273
- "superclass": {
39274
- "name": "Popover",
39275
- "module": "/src/components/popover/popover.component"
39276
- },
39277
- "tagName": "mdc-tooltip",
39278
- "jsDoc": "/**\n * A tooltip is triggered by mouse hover or by keyboard focus\n * and will disappear upon mouse exit or focus change.\n *\n * Note: Tooltips cannot contain content that can be focused or interacted with.\n *\n * @tagname mdc-tooltip\n *\n * @event shown - (React: onShown) This event is dispatched when the tooltip is shown\n * @event hidden - (React: onHidden) This event is dispatched when the tooltip is hidden\n * @event created - (React: onCreated) This event is dispatched when the tooltip is created (added to the DOM)\n * @event destroyed - (React: onDestroyed) This event is dispatched when the tooltip is destroyed (removed from the DOM)\n *\n * @cssproperty --mdc-tooltip-max-width - The maximum width of the tooltip.\n * @cssproperty --mdc-tooltip-padding - The padding of the tooltip.\n * @cssproperty --mdc-tooltip-text-color - The text color of the tooltip.\n * @cssproperty --mdc-tooltip-text-color-contrast - The text color of the tooltip when the color is contrast.\n *\n */",
39279
- "customElement": true,
39280
- "slots": [
39281
- {
39282
- "description": "Default slot for the popover content",
39283
- "name": "",
38922
+ "description": "The arrow visibility of the popover.",
38923
+ "default": "false",
38924
+ "fieldName": "showArrow",
39284
38925
  "inheritedFrom": {
39285
38926
  "name": "Popover",
39286
- "module": "src/components/popover/popover.component.ts"
39287
- }
39288
- }
39289
- ]
39290
- }
39291
- ],
39292
- "exports": [
39293
- {
39294
- "kind": "js",
39295
- "name": "default",
39296
- "declaration": {
39297
- "name": "Tooltip",
39298
- "module": "components/tooltip/tooltip.component.js"
39299
- }
39300
- }
39301
- ]
39302
- },
39303
- {
39304
- "kind": "javascript-module",
39305
- "path": "components/typewriter/typewriter.component.js",
39306
- "declarations": [
39307
- {
39308
- "kind": "class",
39309
- "description": "Typewriter component that creates a typewriter effect on text content.\nIt uses the Text component internally, adding a progressive typing effect.\n\nThe `type` attribute allows changing the text style (passed to the internal Text component).\nThe `tagname` attribute allows changing the tag name of the text element (passed to the internal Text component).\nThe default tag name is `p`.\n\nThe `speed` attribute controls typing speed in milliseconds per character:\n- 'very-slow' = 240ms per character\n- 'slow' = 120ms per character\n- 'normal' = 60ms per character (default)\n- 'fast' = 20ms per character\n- 'very-fast' = 1ms per character\n- Or any numeric string representing milliseconds\n\nAdvanced features:\n- Dynamic speed adjustment during typing\n- Chunked text addition via addTextChunk() method\n- Instant text addition via addInstantTextChunk() method or instant parameter\n- Mixed instant and animated chunks in queue\n- Continues typing in background tabs\n- Performance optimized for large text\n- maxQueueSize to limit memory usage from excessive queuing\n- event handling for typing completion and content changes\n\nThe component includes accessibility features:\n- Screen readers announce the complete text, not character by character\n- Uses aria-live=\"polite\" for dynamic content updates\n- Sets aria-busy during typing animation",
39310
- "name": "Typewriter",
39311
- "cssParts": [
39312
- {
39313
- "description": "Container for the text element",
39314
- "name": "container"
39315
- },
39316
- {
39317
- "description": "The text element (forwarded to mdc-text)",
39318
- "name": "text"
39319
- }
39320
- ],
39321
- "slots": [
39322
- {
39323
- "description": "Default slot for text content",
39324
- "name": ""
39325
- }
39326
- ],
39327
- "members": [
39328
- {
39329
- "kind": "field",
39330
- "name": "type",
39331
- "type": {
39332
- "text": "TextType"
39333
- },
39334
- "privacy": "public",
39335
- "description": "Specifies the text style to be applied to the internal text component.\nUses the same types as the Text component.",
39336
- "default": "body-large-regular",
39337
- "attribute": "type",
39338
- "reflects": true
39339
- },
39340
- {
39341
- "kind": "field",
39342
- "name": "tagname",
39343
- "type": {
39344
- "text": "TagName | undefined"
39345
- },
39346
- "privacy": "public",
39347
- "description": "Specifies the HTML tag name for the text element. The default tag name is `p`.\nThis attribute is optional. When set, it changes the tag name of the internal text element.\n\nAcceptable values include all valid tag names from the Text component.",
39348
- "attribute": "tagname",
39349
- "reflects": true
39350
- },
39351
- {
39352
- "kind": "field",
39353
- "name": "speed",
39354
- "type": {
39355
- "text": "TypewriterSpeed"
39356
- },
39357
- "privacy": "public",
39358
- "description": "Speed of the typewriter effect in milliseconds per character.\nCan be a string preset or a numeric string in milliseconds.\n- 'very-slow' = 240ms per character\n- 'slow' = 120ms per character\n- 'normal' = 60ms per character (default)\n- 'fast' = 20ms per character\n- 'very-fast' = 1ms per character\n- Or any numeric string representing milliseconds (e.g., '100')",
39359
- "default": "'normal' (60ms per character)",
39360
- "attribute": "speed",
39361
- "reflects": true
39362
- },
39363
- {
39364
- "kind": "field",
39365
- "name": "maxQueueSize",
39366
- "type": {
39367
- "text": "number"
39368
- },
39369
- "privacy": "public",
39370
- "description": "Maximum number of text chunks that can be queued before oldest chunks are dropped.\nSet to prevent memory accumulation from excessive queuing.",
39371
- "default": "Number.MAX_SAFE_INTEGER (effectively unlimited)",
39372
- "attribute": "max-queue-size",
39373
- "reflects": true
39374
- },
39375
- {
39376
- "kind": "method",
39377
- "name": "createTimeout",
39378
- "privacy": "private",
39379
- "return": {
39380
- "type": {
39381
- "text": "number"
39382
- }
39383
- },
39384
- "parameters": [
39385
- {
39386
- "name": "callback",
39387
- "type": {
39388
- "text": "() => void"
39389
- }
39390
- },
39391
- {
39392
- "name": "delay",
39393
- "type": {
39394
- "text": "number"
39395
- }
39396
- }
39397
- ],
39398
- "description": "Helper to create tracked setTimeout that will be cleaned up on disconnect"
39399
- },
39400
- {
39401
- "kind": "method",
39402
- "name": "clearAllTimeouts",
39403
- "privacy": "private",
39404
- "return": {
39405
- "type": {
39406
- "text": "void"
39407
- }
39408
- },
39409
- "description": "Clear all pending timeouts"
39410
- },
39411
- {
39412
- "kind": "method",
39413
- "name": "clearQueue",
39414
- "privacy": "public",
39415
- "return": {
39416
- "type": {
39417
- "text": "void"
39418
- }
39419
- },
39420
- "description": "Clears the text chunk queue and stops processing\nUseful for resetting the component state"
39421
- },
39422
- {
39423
- "kind": "method",
39424
- "name": "addTextChunk",
39425
- "privacy": "public",
39426
- "return": {
39427
- "type": {
39428
- "text": "void"
39429
- }
39430
- },
39431
- "parameters": [
39432
- {
39433
- "name": "text",
39434
- "type": {
39435
- "text": "string"
39436
- },
39437
- "description": "The text to add"
39438
- },
39439
- {
39440
- "name": "speed",
39441
- "optional": true,
39442
- "type": {
39443
- "text": "TypewriterSpeed"
39444
- },
39445
- "description": "Optional speed override for this chunk"
39446
- },
39447
- {
39448
- "name": "instant",
39449
- "optional": true,
39450
- "type": {
39451
- "text": "boolean"
39452
- },
39453
- "description": "If true, text appears instantly without animation"
39454
- }
39455
- ],
39456
- "description": "Adds a chunk of text to be typed out, optionally with a different speed"
39457
- },
39458
- {
39459
- "kind": "method",
39460
- "name": "addInstantTextChunk",
39461
- "privacy": "public",
39462
- "return": {
39463
- "type": {
39464
- "text": "void"
39465
- }
39466
- },
39467
- "parameters": [
39468
- {
39469
- "name": "text",
39470
- "type": {
39471
- "text": "string"
39472
- },
39473
- "description": "The text to add instantly"
39474
- }
39475
- ],
39476
- "description": "Adds a chunk of text instantly without typing animation"
39477
- },
39478
- {
39479
- "kind": "method",
39480
- "name": "processChunkQueue",
39481
- "privacy": "private",
39482
- "return": {
39483
- "type": {
39484
- "text": "void"
39485
- }
39486
- },
39487
- "description": "Processes all chunks in the queue"
39488
- },
39489
- {
39490
- "kind": "method",
39491
- "name": "processNextChunk",
39492
- "privacy": "private",
39493
- "return": {
39494
- "type": {
39495
- "text": "void"
39496
- }
39497
- },
39498
- "description": "Processes the next chunk in the queue"
39499
- },
39500
- {
39501
- "kind": "method",
39502
- "name": "getTypingDelayMs",
39503
- "privacy": "private",
39504
- "return": {
39505
- "type": {
39506
- "text": "number"
39507
- }
39508
- },
39509
- "description": "Gets the typing delay in milliseconds per character"
39510
- },
39511
- {
39512
- "kind": "method",
39513
- "name": "captureAndProcessContent",
39514
- "privacy": "private",
39515
- "return": {
39516
- "type": {
39517
- "text": "void"
39518
- }
39519
- },
39520
- "description": "Captures slot content and starts typewriter animation"
39521
- },
39522
- {
39523
- "kind": "method",
39524
- "name": "startTypingAnimation",
39525
- "privacy": "private",
39526
- "return": {
39527
- "type": {
39528
- "text": "void"
39529
- }
39530
- },
39531
- "parameters": [
39532
- {
39533
- "name": "onComplete",
39534
- "optional": true,
39535
- "type": {
39536
- "text": "() => void"
39537
- }
39538
- }
39539
- ],
39540
- "description": "Starts the typewriter animation"
38927
+ "module": "src/components/popover/popover.component.ts"
38928
+ }
39541
38929
  },
39542
38930
  {
39543
- "kind": "method",
39544
- "name": "clearTypingAnimation",
39545
- "privacy": "private",
39546
- "return": {
39547
- "type": {
39548
- "text": "void"
39549
- }
38931
+ "name": "close-button",
38932
+ "type": {
38933
+ "text": "boolean"
39550
38934
  },
39551
- "description": "Clears the typing animation timeout"
38935
+ "description": "The close button visibility of the popover.",
38936
+ "default": "false",
38937
+ "fieldName": "closeButton",
38938
+ "inheritedFrom": {
38939
+ "name": "Popover",
38940
+ "module": "src/components/popover/popover.component.ts"
38941
+ }
39552
38942
  },
39553
38943
  {
39554
- "kind": "method",
39555
- "name": "handleSlotChange",
39556
- "privacy": "private",
39557
- "return": {
39558
- "type": {
39559
- "text": "void"
39560
- }
38944
+ "name": "interactive",
38945
+ "type": {
38946
+ "text": "boolean"
39561
38947
  },
39562
- "description": "Handler for slotchange event"
39563
- }
39564
- ],
39565
- "events": [
38948
+ "description": "Determines whether the popover is interactive.\nMake sure to set focusTrap to true to keep the focus inside the popover in case necessary.\nSetting interactive to true will not automatically set focusTrap!",
38949
+ "default": "false",
38950
+ "fieldName": "interactive",
38951
+ "inheritedFrom": {
38952
+ "name": "Popover",
38953
+ "module": "src/components/popover/popover.component.ts"
38954
+ }
38955
+ },
39566
38956
  {
38957
+ "name": "delay",
39567
38958
  "type": {
39568
- "text": "CustomEvent"
38959
+ "text": "string"
38960
+ },
38961
+ "description": "The delay of the show/hide popover.",
38962
+ "default": "0,0",
38963
+ "fieldName": "delay",
38964
+ "inheritedFrom": {
38965
+ "name": "Popover",
38966
+ "module": "src/components/popover/popover.component.ts"
39569
38967
  }
39570
38968
  },
39571
38969
  {
39572
- "description": "(React: onTypingComplete) Fired when the typewriter finishes typing all content. Detail: \\{ finalContent: string \\}",
39573
- "name": "typing-complete",
39574
- "reactName": "onTypingComplete"
38970
+ "name": "hide-on-escape",
38971
+ "type": {
38972
+ "text": "boolean"
38973
+ },
38974
+ "description": "Hide popover on escape key press.",
38975
+ "default": "false",
38976
+ "fieldName": "hideOnEscape",
38977
+ "inheritedFrom": {
38978
+ "name": "Popover",
38979
+ "module": "src/components/popover/popover.component.ts"
38980
+ }
39575
38981
  },
39576
38982
  {
39577
- "description": "(React: onChange) Fired when the content of the typewriter changes. Detail: \\{ content: string, isTyping: boolean \\}",
39578
- "name": "change",
39579
- "reactName": "onChange"
39580
- }
39581
- ],
39582
- "attributes": [
39583
- {
39584
- "name": "type",
38983
+ "name": "propagate-event-on-escape",
39585
38984
  "type": {
39586
- "text": "TextType"
38985
+ "text": "boolean"
39587
38986
  },
39588
- "description": "Specifies the text style to be applied to the internal text component.\nUses the same types as the Text component.",
39589
- "default": "body-large-regular",
39590
- "fieldName": "type"
38987
+ "description": "Propagates the event, when the escape key is pressed (only when pressed inside the popover)\nIf true, the escape key press close the popover and will propagate the keydown event.\nIf false, the escape key press will close the popover but will not propagate the keydown event.\n(set to false to prevent the event from bubbling up to the document).\n\nThis only works when `hideOnEscape` is true.",
38988
+ "default": "false",
38989
+ "fieldName": "propagateEventOnEscape",
38990
+ "inheritedFrom": {
38991
+ "name": "Popover",
38992
+ "module": "src/components/popover/popover.component.ts"
38993
+ }
39591
38994
  },
39592
38995
  {
39593
- "name": "tagname",
38996
+ "name": "hide-on-blur",
39594
38997
  "type": {
39595
- "text": "TagName | undefined"
38998
+ "text": "boolean"
39596
38999
  },
39597
- "description": "Specifies the HTML tag name for the text element. The default tag name is `p`.\nThis attribute is optional. When set, it changes the tag name of the internal text element.\n\nAcceptable values include all valid tag names from the Text component.",
39598
- "fieldName": "tagname"
39000
+ "description": "Hide popover on blur.",
39001
+ "default": "false",
39002
+ "fieldName": "hideOnBlur",
39003
+ "inheritedFrom": {
39004
+ "name": "Popover",
39005
+ "module": "src/components/popover/popover.component.ts"
39006
+ }
39599
39007
  },
39600
39008
  {
39601
- "name": "speed",
39009
+ "name": "hide-on-outside-click",
39602
39010
  "type": {
39603
- "text": "TypewriterSpeed"
39011
+ "text": "boolean"
39604
39012
  },
39605
- "description": "Speed of the typewriter effect in milliseconds per character.\nCan be a string preset or a numeric string in milliseconds.\n- 'very-slow' = 240ms per character\n- 'slow' = 120ms per character\n- 'normal' = 60ms per character (default)\n- 'fast' = 20ms per character\n- 'very-fast' = 1ms per character\n- Or any numeric string representing milliseconds (e.g., '100')",
39606
- "default": "'normal' (60ms per character)",
39607
- "fieldName": "speed"
39013
+ "description": "Hide on outside click of the popover.",
39014
+ "default": "false",
39015
+ "fieldName": "hideOnOutsideClick",
39016
+ "inheritedFrom": {
39017
+ "name": "Popover",
39018
+ "module": "src/components/popover/popover.component.ts"
39019
+ }
39608
39020
  },
39609
39021
  {
39610
- "name": "max-queue-size",
39022
+ "name": "focus-back-to-trigger",
39611
39023
  "type": {
39612
- "text": "number"
39024
+ "text": "boolean"
39613
39025
  },
39614
- "description": "Maximum number of text chunks that can be queued before oldest chunks are dropped.\nSet to prevent memory accumulation from excessive queuing.",
39615
- "default": "Number.MAX_SAFE_INTEGER (effectively unlimited)",
39616
- "fieldName": "maxQueueSize"
39617
- }
39618
- ],
39619
- "superclass": {
39620
- "name": "Component",
39621
- "module": "/src/models"
39622
- },
39623
- "tagName": "mdc-typewriter",
39624
- "jsDoc": "/**\n * Typewriter component that creates a typewriter effect on text content.\n * It uses the Text component internally, adding a progressive typing effect.\n *\n * The `type` attribute allows changing the text style (passed to the internal Text component).\n * The `tagname` attribute allows changing the tag name of the text element (passed to the internal Text component).\n * The default tag name is `p`.\n *\n * The `speed` attribute controls typing speed in milliseconds per character:\n * - 'very-slow' = 240ms per character\n * - 'slow' = 120ms per character\n * - 'normal' = 60ms per character (default)\n * - 'fast' = 20ms per character\n * - 'very-fast' = 1ms per character\n * - Or any numeric string representing milliseconds\n *\n * Advanced features:\n * - Dynamic speed adjustment during typing\n * - Chunked text addition via addTextChunk() method\n * - Instant text addition via addInstantTextChunk() method or instant parameter\n * - Mixed instant and animated chunks in queue\n * - Continues typing in background tabs\n * - Performance optimized for large text\n * - maxQueueSize to limit memory usage from excessive queuing\n * - event handling for typing completion and content changes\n *\n * The component includes accessibility features:\n * - Screen readers announce the complete text, not character by character\n * - Uses aria-live=\"polite\" for dynamic content updates\n * - Sets aria-busy during typing animation\n *\n * @dependency mdc-text\n *\n * @tagname mdc-typewriter\n * @slot - Default slot for text content\n *\n * @csspart container - Container for the text element\n * @csspart text - The text element (forwarded to mdc-text)\n *\n * @event typing-complete - (React: onTypingComplete) Fired when the typewriter finishes typing all content.\n * Detail: \\{ finalContent: string \\}\n * @event change - (React: onChange) Fired when the content of the typewriter changes.\n * Detail: \\{ content: string, isTyping: boolean \\}\n */",
39625
- "customElement": true
39626
- }
39627
- ],
39628
- "exports": [
39629
- {
39630
- "kind": "js",
39631
- "name": "default",
39632
- "declaration": {
39633
- "name": "Typewriter",
39634
- "module": "components/typewriter/typewriter.component.js"
39635
- }
39636
- }
39637
- ]
39638
- },
39639
- {
39640
- "kind": "javascript-module",
39641
- "path": "components/virtualizedlist/virtualizedlist.component.js",
39642
- "declarations": [
39643
- {
39644
- "kind": "class",
39645
- "description": "`mdc-virtualizedlist` component for creating custom virtualized lists.\nIMPORTANT: This component does not create it's own list/list items.\nUse the setlistdata callback prop to update client state in order to\nPass list/listitems as a child of this component, which this will virtuailze\nThis implementation handles dynamic lists as well as fixed sized lists.\nPlease refer to [Tanstack Virtual Docs](https://tanstack.com/virtual/latest) for more in depth documentation.",
39646
- "name": "VirtualizedList",
39647
- "slots": [
39648
- {
39649
- "description": "Client side List with nested list items.",
39650
- "name": ""
39651
- }
39652
- ],
39653
- "members": [
39026
+ "description": "The focus back to trigger after the popover hide.",
39027
+ "default": "false",
39028
+ "fieldName": "focusBackToTrigger",
39029
+ "inheritedFrom": {
39030
+ "name": "Popover",
39031
+ "module": "src/components/popover/popover.component.ts"
39032
+ }
39033
+ },
39654
39034
  {
39655
- "kind": "field",
39656
- "name": "onscroll",
39035
+ "name": "backdrop",
39657
39036
  "type": {
39658
- "text": "((this: GlobalEventHandlers, ev: Event) => void) | null"
39037
+ "text": "boolean"
39659
39038
  },
39660
- "description": "Callback that gets called when user scrolls inside of list. This gives access to the scroll container element\nas well via the event. Particularly useful for\nhandling logic related when the user scrolls to the top or bottom of a list.",
39661
- "default": "null",
39662
- "attribute": "onscroll"
39039
+ "description": "Determines whether the popover with backdrop.\nOther than popover and trigger element, the rest of the screen will be covered with a backdrop.",
39040
+ "default": "false",
39041
+ "fieldName": "backdrop",
39042
+ "inheritedFrom": {
39043
+ "name": "Popover",
39044
+ "module": "src/components/popover/popover.component.ts"
39045
+ }
39663
39046
  },
39664
39047
  {
39665
- "kind": "field",
39666
- "name": "virtualizerProps",
39048
+ "name": "flip",
39667
39049
  "type": {
39668
- "text": "VirtualizerProps"
39050
+ "text": "boolean"
39669
39051
  },
39670
- "description": "Object that sets and updates the virtualizer with any relevant props.\nThere are two required object props in order to get virtualization to work properly.\ncount - The length of your list that you are virtualizing.\nAs your list grows/shrinks, this component must be updated with the appropriate value\n(Same with any other updated prop).\nestimateSize - A function that returns the estimated size of your items.\nIf your list is fixed, this will just be the size of your items.\nIf your list is dynamic, try to return approximate the size of each item.\n\nA full list of possible props can be in\n[Tanstack Virtualizer API Docs](https://tanstack.com/virtual/latest/docs/api/virtualizer)",
39671
- "attribute": "virtualizerprops"
39052
+ "description": "Changes the placement of popover to keep it in view when scrolling.",
39053
+ "default": "true",
39054
+ "fieldName": "flip",
39055
+ "inheritedFrom": {
39056
+ "name": "Popover",
39057
+ "module": "src/components/popover/popover.component.ts"
39058
+ }
39672
39059
  },
39673
39060
  {
39674
- "kind": "field",
39675
- "name": "setlistdata",
39061
+ "name": "size",
39676
39062
  "type": {
39677
- "text": "(({ virtualItems, measureElement, listStyle }: SetListDataProps) => void) | null"
39063
+ "text": "boolean"
39678
39064
  },
39679
- "description": "Callback that gets envoked when updates to the virtualizer interally occur.\nThis must be implemented in such a way that this function will trigger update to parent.\n\nvirtualItems - Array that will be what the client displays on screen. Use this to render\na List of your choosing with these items nested inside as your ListItems.\nmeasureElement - Ref to pass to each ListItem rendered client side.\nEach ListItem should also be be passed key and a data-index (which can be found on the virtualItem).\nlistStyle - This should be passed as the style attribute to your List.",
39680
- "default": "null",
39681
- "attribute": "setlistdata"
39065
+ "description": "Changes the size of popover to keep it in view when scrolling.",
39066
+ "default": "false",
39067
+ "fieldName": "size",
39068
+ "inheritedFrom": {
39069
+ "name": "Popover",
39070
+ "module": "src/components/popover/popover.component.ts"
39071
+ }
39682
39072
  },
39683
39073
  {
39684
- "kind": "field",
39685
- "name": "scrollElementRef",
39074
+ "name": "z-index",
39686
39075
  "type": {
39687
- "text": "Ref<HTMLDivElement>"
39076
+ "text": "number"
39688
39077
  },
39689
- "privacy": "public"
39078
+ "description": "The z-index of the popover.",
39079
+ "default": "1000",
39080
+ "fieldName": "zIndex",
39081
+ "inheritedFrom": {
39082
+ "name": "Popover",
39083
+ "module": "src/components/popover/popover.component.ts"
39084
+ }
39690
39085
  },
39691
39086
  {
39692
- "kind": "field",
39693
- "name": "virtualizer",
39087
+ "name": "append-to",
39694
39088
  "type": {
39695
- "text": "Virtualizer<Element, Element> | null"
39089
+ "text": "string | undefined"
39696
39090
  },
39697
- "privacy": "public",
39698
- "default": "null"
39091
+ "description": "Element ID that the popover append to.",
39092
+ "default": "''",
39093
+ "fieldName": "appendTo",
39094
+ "inheritedFrom": {
39095
+ "name": "Popover",
39096
+ "module": "src/components/popover/popover.component.ts"
39097
+ }
39699
39098
  },
39700
39099
  {
39701
- "kind": "field",
39702
- "name": "virtualItems",
39100
+ "name": "close-button-aria-label",
39703
39101
  "type": {
39704
- "text": "Array<VirtualItem>"
39102
+ "text": "string | null"
39705
39103
  },
39706
- "privacy": "public",
39707
- "default": "[]"
39104
+ "default": "null",
39105
+ "description": "aria-label attribute to be set for close button accessibility.",
39106
+ "fieldName": "closeButtonAriaLabel",
39107
+ "inheritedFrom": {
39108
+ "name": "Popover",
39109
+ "module": "src/components/popover/popover.component.ts"
39110
+ }
39708
39111
  },
39709
39112
  {
39710
- "kind": "field",
39711
- "name": "virtualizerController",
39113
+ "name": "role",
39712
39114
  "type": {
39713
- "text": "null"
39115
+ "text": "HTMLElement['role']"
39714
39116
  },
39715
- "default": "null"
39716
- }
39717
- ],
39718
- "events": [
39117
+ "description": "Role of the popover",
39118
+ "default": "dialog",
39119
+ "fieldName": "role",
39120
+ "inheritedFrom": {
39121
+ "name": "Popover",
39122
+ "module": "src/components/popover/popover.component.ts"
39123
+ }
39124
+ },
39719
39125
  {
39720
- "description": "(React: onScroll) Event that gets called when user scrolls inside of list.",
39721
- "name": "onscroll",
39722
- "reactName": "onScroll"
39723
- }
39724
- ],
39725
- "attributes": [
39126
+ "name": "aria-labelledby",
39127
+ "type": {
39128
+ "text": "string | null"
39129
+ },
39130
+ "default": "null",
39131
+ "description": "aria-labelledby for an interactive popover only, defaults to the trigger component id.\nUsed in nested cases where the triggerComponent isn't the actual button.",
39132
+ "fieldName": "ariaLabelledby",
39133
+ "inheritedFrom": {
39134
+ "name": "Popover",
39135
+ "module": "src/components/popover/popover.component.ts"
39136
+ }
39137
+ },
39726
39138
  {
39727
- "name": "onscroll",
39139
+ "name": "aria-describedby",
39728
39140
  "type": {
39729
- "text": "((this: GlobalEventHandlers, ev: Event) => void) | null"
39141
+ "text": "string | null"
39730
39142
  },
39731
- "description": "Callback that gets called when user scrolls inside of list. This gives access to the scroll container element\nas well via the event. Particularly useful for\nhandling logic related when the user scrolls to the top or bottom of a list.",
39732
39143
  "default": "null",
39733
- "fieldName": "onscroll"
39144
+ "description": "aria-describedby of the popover.",
39145
+ "fieldName": "ariaDescribedby",
39146
+ "inheritedFrom": {
39147
+ "name": "Popover",
39148
+ "module": "src/components/popover/popover.component.ts"
39149
+ }
39734
39150
  },
39735
39151
  {
39736
- "name": "virtualizerprops",
39152
+ "name": "disable-aria-expanded",
39737
39153
  "type": {
39738
- "text": "VirtualizerProps"
39154
+ "text": "boolean"
39739
39155
  },
39740
- "description": "Object that sets and updates the virtualizer with any relevant props.\nThere are two required object props in order to get virtualization to work properly.\ncount - The length of your list that you are virtualizing.\nAs your list grows/shrinks, this component must be updated with the appropriate value\n(Same with any other updated prop).\nestimateSize - A function that returns the estimated size of your items.\nIf your list is fixed, this will just be the size of your items.\nIf your list is dynamic, try to return approximate the size of each item.\n\nA full list of possible props can be in\n[Tanstack Virtualizer API Docs](https://tanstack.com/virtual/latest/docs/api/virtualizer)",
39741
- "fieldName": "virtualizerProps"
39156
+ "description": "Disable setting the aria-expanded attribute on trigger element.\nMake sure to set this to false when the popover is interactive.",
39157
+ "default": "false",
39158
+ "fieldName": "disableAriaExpanded",
39159
+ "inheritedFrom": {
39160
+ "name": "Popover",
39161
+ "module": "src/components/popover/popover.component.ts"
39162
+ }
39742
39163
  },
39743
39164
  {
39744
- "name": "setlistdata",
39165
+ "name": "disable-aria-haspopup",
39745
39166
  "type": {
39746
- "text": "(({ virtualItems, measureElement, listStyle }: SetListDataProps) => void) | null"
39167
+ "text": "boolean"
39747
39168
  },
39748
- "description": "Callback that gets envoked when updates to the virtualizer interally occur.\nThis must be implemented in such a way that this function will trigger update to parent.\n\nvirtualItems - Array that will be what the client displays on screen. Use this to render\na List of your choosing with these items nested inside as your ListItems.\nmeasureElement - Ref to pass to each ListItem rendered client side.\nEach ListItem should also be be passed key and a data-index (which can be found on the virtualItem).\nlistStyle - This should be passed as the style attribute to your List.",
39749
- "default": "null",
39750
- "fieldName": "setlistdata"
39169
+ "description": "Disable setting the aria-haspopup attribute on trigger element.\nMake sure to set this to true when the popover is extended and its role\nis not 'dialog' or 'alertdialog' i.e. listbox, menu, etc.",
39170
+ "default": "false",
39171
+ "fieldName": "disableAriaHasPopup",
39172
+ "inheritedFrom": {
39173
+ "name": "Popover",
39174
+ "module": "src/components/popover/popover.component.ts"
39175
+ }
39176
+ },
39177
+ {
39178
+ "name": "keep-connected-tooltip-closed",
39179
+ "type": {
39180
+ "text": "boolean"
39181
+ },
39182
+ "description": "If a tooltip is connected to the same trigger element,\nthis property will keep the connected tooltip closed if this popover is open.\nThis is useful when you want to show a popover with a tooltip\nbut you don't want the tooltip to be shown at the same time.",
39183
+ "fieldName": "keepConnectedTooltipClosed",
39184
+ "inheritedFrom": {
39185
+ "name": "Popover",
39186
+ "module": "src/components/popover/popover.component.ts"
39187
+ }
39751
39188
  }
39752
39189
  ],
39753
39190
  "superclass": {
39754
- "name": "Component",
39755
- "module": "/src/models"
39191
+ "name": "Popover",
39192
+ "module": "/src/components/popover/popover.component"
39756
39193
  },
39757
- "tagName": "mdc-virtualizedlist",
39758
- "jsDoc": "/**\n * `mdc-virtualizedlist` component for creating custom virtualized lists.\n * IMPORTANT: This component does not create it's own list/list items.\n * Use the setlistdata callback prop to update client state in order to\n * Pass list/listitems as a child of this component, which this will virtuailze\n * This implementation handles dynamic lists as well as fixed sized lists.\n * Please refer to [Tanstack Virtual Docs](https://tanstack.com/virtual/latest) for more in depth documentation.\n *\n * @tagname mdc-virtualizedlist\n *\n * @event onscroll - (React: onScroll) Event that gets called when user scrolls inside of list.\n *\n * @slot - Client side List with nested list items.\n */",
39194
+ "tagName": "mdc-toggletip",
39195
+ "jsDoc": "/**\n * A toggletip is triggered by clicking a trigger element.\n *\n * It can contain interactive content and can be closed by\n * clicking outside the toggletip or pressing the escape key.\n *\n * It can have optional close button to close the toggletip.\n *\n * Toggletip component uses `mdc-screenreaderannouncer` internally to\n * announce the toggletip text content with screen readers when the toggletip is shown.\n *\n * `screenreader-announcer-identity` attribute can be used to provide ID of an element\n * in DOM to which announcement elements are added. If not set, a visually hidden\n * div element is created in DOM to which announcement elements are added.\n *\n * Please refer to the `mdc-screenreaderannouncer` component for more details.\n *\n * @dependency mdc-screenreaderannouncer\n * @dependency mdc-button\n *\n * @tagname mdc-toggletip\n *\n * @event shown - (React: onShown) This event is dispatched when the toggletip is shown\n * @event hidden - (React: onHidden) This event is dispatched when the toggletip is hidden\n * @event created - (React: onCreated) This event is dispatched when the toggletip is created (added to the DOM)\n * @event destroyed - (React: onDestroyed) This event is dispatched when the toggletip\n * is destroyed (removed from the DOM)\n *\n * @cssproperty --mdc-toggletip-max-width - The maximum width of the toggletip.\n * @cssproperty --mdc-toggletip-text-color - The text color of the toggletip.\n * @cssproperty --mdc-toggletip-text-color-contrast - The text color of the toggletip\n * when the color is contrast.\n *\n * @slot - Default slot for the toggletip content\n */",
39759
39196
  "customElement": true
39760
39197
  }
39761
39198
  ],
@@ -39764,32 +39201,36 @@
39764
39201
  "kind": "js",
39765
39202
  "name": "default",
39766
39203
  "declaration": {
39767
- "name": "VirtualizedList",
39768
- "module": "components/virtualizedlist/virtualizedlist.component.js"
39204
+ "name": "ToggleTip",
39205
+ "module": "components/toggletip/toggletip.component.js"
39769
39206
  }
39770
39207
  }
39771
39208
  ]
39772
39209
  },
39773
39210
  {
39774
39211
  "kind": "javascript-module",
39775
- "path": "components/toggletip/toggletip.component.js",
39212
+ "path": "components/tooltip/tooltip.component.js",
39776
39213
  "declarations": [
39777
39214
  {
39778
39215
  "kind": "class",
39779
- "description": "A toggletip is triggered by clicking a trigger element.\n\nIt can contain interactive content and can be closed by\nclicking outside the toggletip or pressing the escape key.\n\nIt can have optional close button to close the toggletip.\n\nToggletip component uses `mdc-screenreaderannouncer` internally to\nannounce the toggletip text content with screen readers when the toggletip is shown.\n\n`screenreader-announcer-identity` attribute can be used to provide ID of an element\nin DOM to which announcement elements are added. If not set, a visually hidden\ndiv element is created in DOM to which announcement elements are added.\n\nPlease refer to the `mdc-screenreaderannouncer` component for more details.",
39780
- "name": "ToggleTip",
39216
+ "description": "A tooltip is triggered by mouse hover or by keyboard focus\nand will disappear upon mouse exit or focus change.\n\nNote: Tooltips cannot contain content that can be focused or interacted with.",
39217
+ "name": "Tooltip",
39781
39218
  "cssProperties": [
39782
39219
  {
39783
- "description": "The maximum width of the toggletip.",
39784
- "name": "--mdc-toggletip-max-width"
39220
+ "description": "The maximum width of the tooltip.",
39221
+ "name": "--mdc-tooltip-max-width"
39785
39222
  },
39786
39223
  {
39787
- "description": "The text color of the toggletip.",
39788
- "name": "--mdc-toggletip-text-color"
39224
+ "description": "The padding of the tooltip.",
39225
+ "name": "--mdc-tooltip-padding"
39789
39226
  },
39790
39227
  {
39791
- "description": "The text color of the toggletip when the color is contrast.",
39792
- "name": "--mdc-toggletip-text-color-contrast"
39228
+ "description": "The text color of the tooltip.",
39229
+ "name": "--mdc-tooltip-text-color"
39230
+ },
39231
+ {
39232
+ "description": "The text color of the tooltip when the color is contrast.",
39233
+ "name": "--mdc-tooltip-text-color-contrast"
39793
39234
  },
39794
39235
  {
39795
39236
  "description": "radius of the arrow border",
@@ -39872,53 +39313,29 @@
39872
39313
  }
39873
39314
  }
39874
39315
  ],
39875
- "slots": [
39876
- {
39877
- "description": "Default slot for the toggletip content",
39878
- "name": "",
39879
- "inheritedFrom": {
39880
- "name": "Popover",
39881
- "module": "src/components/popover/popover.component.ts"
39882
- }
39883
- }
39884
- ],
39885
39316
  "members": [
39886
39317
  {
39887
39318
  "kind": "field",
39888
- "name": "defaultSlotNodes",
39889
- "type": {
39890
- "text": "Array<Node>"
39891
- },
39892
- "privacy": "private"
39893
- },
39894
- {
39895
- "kind": "field",
39896
- "name": "screenreaderAnnouncerIdentity",
39319
+ "name": "tooltipType",
39897
39320
  "type": {
39898
- "text": "string | undefined"
39321
+ "text": "TooltipType"
39899
39322
  },
39900
- "description": "Set this attribute with the id of the element in the DOM, to which announcement\nelements will be appended.\nIf an id is provided, the announcement elements will be appended to this element.\nIf id is not provided, a visually hidden div element will be created in the DOM.\n\nPlease refer to the `mdc-screenreaderannouncer` component for more details.",
39901
- "attribute": "screenreader-announcer-identity",
39323
+ "description": "The type of tooltip.\n- **description** sets aria-describedby on the trigger component which refers to the tooltip id.\n- **label** sets aria-labelledby on the trigger component which refers to the tooltip id.\n- **none** no aria props set on trigger component referring to the tooltip id.",
39324
+ "default": "'description'",
39325
+ "attribute": "tooltip-type",
39902
39326
  "reflects": true
39903
39327
  },
39904
39328
  {
39905
39329
  "kind": "field",
39906
- "name": "placement",
39330
+ "name": "defaultSlotNodes",
39907
39331
  "type": {
39908
- "text": "PopoverPlacement"
39332
+ "text": "Array<Node>"
39909
39333
  },
39910
- "description": "The placement of the popover.\n- **top**\n- **top-start**\n- **top-end**\n- **bottom**\n- **bottom-start**\n- **bottom-end**\n- **left**\n- **left-start**\n- **left-end**\n- **right**\n- **right-start**\n- **right-end**",
39911
- "default": "bottom",
39912
- "attribute": "placement",
39913
- "reflects": true,
39914
- "inheritedFrom": {
39915
- "name": "Popover",
39916
- "module": "components/popover/popover.component.js"
39917
- }
39334
+ "privacy": "private"
39918
39335
  },
39919
39336
  {
39920
39337
  "kind": "method",
39921
- "name": "getToggleTipText",
39338
+ "name": "getTooltipText",
39922
39339
  "privacy": "private",
39923
39340
  "return": {
39924
39341
  "type": {
@@ -39926,6 +39343,37 @@
39926
39343
  }
39927
39344
  }
39928
39345
  },
39346
+ {
39347
+ "kind": "method",
39348
+ "name": "setTooltipType",
39349
+ "privacy": "private",
39350
+ "return": {
39351
+ "type": {
39352
+ "text": "void"
39353
+ }
39354
+ },
39355
+ "parameters": [
39356
+ {
39357
+ "name": "type",
39358
+ "type": {
39359
+ "text": "TooltipType"
39360
+ },
39361
+ "description": "The type to set."
39362
+ }
39363
+ ],
39364
+ "description": "Sets the type attribute for the tooltip component.\nIf the provided type is not included in the TOOLTIP_TYPES,\nit defaults to the value specified in DEFAULTS.TOOLTIP_TYPE."
39365
+ },
39366
+ {
39367
+ "kind": "method",
39368
+ "name": "onIdUpdated",
39369
+ "privacy": "private",
39370
+ "return": {
39371
+ "type": {
39372
+ "text": "Promise<void>"
39373
+ }
39374
+ },
39375
+ "description": "Updates the tooltip id if it is empty."
39376
+ },
39929
39377
  {
39930
39378
  "kind": "method",
39931
39379
  "name": "onPlacementUpdated",
@@ -39935,7 +39383,27 @@
39935
39383
  "text": "void"
39936
39384
  }
39937
39385
  },
39938
- "description": "Updates the placement attribute if it is not a valid placement.\nDefault placement for toggle tip is top."
39386
+ "description": "Updates the placement attribute if it is not a valid placement.\nOverriding the default from Popover"
39387
+ },
39388
+ {
39389
+ "kind": "method",
39390
+ "name": "onTooltipTypeUpdated",
39391
+ "privacy": "private",
39392
+ "return": {
39393
+ "type": {
39394
+ "text": "void"
39395
+ }
39396
+ },
39397
+ "parameters": [
39398
+ {
39399
+ "name": "changedProperties",
39400
+ "type": {
39401
+ "text": "PropertyValues"
39402
+ },
39403
+ "description": "The changed properties."
39404
+ }
39405
+ ],
39406
+ "description": "Updates the tooltip type attribute and sets the appropriate aria props on the trigger component."
39939
39407
  },
39940
39408
  {
39941
39409
  "kind": "field",
@@ -40528,6 +39996,21 @@
40528
39996
  "module": "components/popover/popover.component.js"
40529
39997
  }
40530
39998
  },
39999
+ {
40000
+ "kind": "field",
40001
+ "name": "placement",
40002
+ "type": {
40003
+ "text": "PopoverPlacement"
40004
+ },
40005
+ "description": "The placement of the popover.\n- **top**\n- **top-start**\n- **top-end**\n- **bottom**\n- **bottom-start**\n- **bottom-end**\n- **left**\n- **left-start**\n- **left-end**\n- **right**\n- **right-start**\n- **right-end**",
40006
+ "default": "bottom",
40007
+ "attribute": "placement",
40008
+ "reflects": true,
40009
+ "inheritedFrom": {
40010
+ "name": "Popover",
40011
+ "module": "components/popover/popover.component.js"
40012
+ }
40013
+ },
40531
40014
  {
40532
40015
  "kind": "field",
40533
40016
  "name": "color",
@@ -41207,7 +40690,7 @@
41207
40690
  ],
41208
40691
  "events": [
41209
40692
  {
41210
- "description": "(React: onShown) This event is dispatched when the toggletip is shown",
40693
+ "description": "(React: onShown) This event is dispatched when the tooltip is shown",
41211
40694
  "name": "shown",
41212
40695
  "reactName": "onShown",
41213
40696
  "inheritedFrom": {
@@ -41216,7 +40699,7 @@
41216
40699
  }
41217
40700
  },
41218
40701
  {
41219
- "description": "(React: onHidden) This event is dispatched when the toggletip is hidden",
40702
+ "description": "(React: onHidden) This event is dispatched when the tooltip is hidden",
41220
40703
  "name": "hidden",
41221
40704
  "reactName": "onHidden",
41222
40705
  "inheritedFrom": {
@@ -41225,7 +40708,7 @@
41225
40708
  }
41226
40709
  },
41227
40710
  {
41228
- "description": "(React: onCreated) This event is dispatched when the toggletip is created (added to the DOM)",
40711
+ "description": "(React: onCreated) This event is dispatched when the tooltip is created (added to the DOM)",
41229
40712
  "name": "created",
41230
40713
  "reactName": "onCreated",
41231
40714
  "inheritedFrom": {
@@ -41234,36 +40717,24 @@
41234
40717
  }
41235
40718
  },
41236
40719
  {
41237
- "description": "(React: onDestroyed) This event is dispatched when the toggletip is destroyed (removed from the DOM)",
40720
+ "description": "(React: onDestroyed) This event is dispatched when the tooltip is destroyed (removed from the DOM)",
41238
40721
  "name": "destroyed",
41239
40722
  "reactName": "onDestroyed",
41240
40723
  "inheritedFrom": {
41241
40724
  "name": "Popover",
41242
40725
  "module": "src/components/popover/popover.component.ts"
41243
40726
  }
41244
- }
41245
- ],
41246
- "attributes": [
41247
- {
41248
- "name": "screenreader-announcer-identity",
41249
- "type": {
41250
- "text": "string | undefined"
41251
- },
41252
- "description": "Set this attribute with the id of the element in the DOM, to which announcement\nelements will be appended.\nIf an id is provided, the announcement elements will be appended to this element.\nIf id is not provided, a visually hidden div element will be created in the DOM.\n\nPlease refer to the `mdc-screenreaderannouncer` component for more details.",
41253
- "fieldName": "screenreaderAnnouncerIdentity"
41254
- },
41255
- {
41256
- "name": "placement",
41257
- "type": {
41258
- "text": "PopoverPlacement"
41259
- },
41260
- "description": "The placement of the popover.\n- **top**\n- **top-start**\n- **top-end**\n- **bottom**\n- **bottom-start**\n- **bottom-end**\n- **left**\n- **left-start**\n- **left-end**\n- **right**\n- **right-start**\n- **right-end**",
41261
- "default": "bottom",
41262
- "fieldName": "placement",
41263
- "inheritedFrom": {
41264
- "name": "Popover",
41265
- "module": "src/components/popover/popover.component.ts"
41266
- }
40727
+ }
40728
+ ],
40729
+ "attributes": [
40730
+ {
40731
+ "name": "tooltip-type",
40732
+ "type": {
40733
+ "text": "TooltipType"
40734
+ },
40735
+ "description": "The type of tooltip.\n- **description** sets aria-describedby on the trigger component which refers to the tooltip id.\n- **label** sets aria-labelledby on the trigger component which refers to the tooltip id.\n- **none** no aria props set on trigger component referring to the tooltip id.",
40736
+ "default": "'description'",
40737
+ "fieldName": "tooltipType"
41267
40738
  },
41268
40739
  {
41269
40740
  "name": "should-focus-trap-wrap",
@@ -41317,6 +40788,19 @@
41317
40788
  "module": "src/components/popover/popover.component.ts"
41318
40789
  }
41319
40790
  },
40791
+ {
40792
+ "name": "placement",
40793
+ "type": {
40794
+ "text": "PopoverPlacement"
40795
+ },
40796
+ "description": "The placement of the popover.\n- **top**\n- **top-start**\n- **top-end**\n- **bottom**\n- **bottom-start**\n- **bottom-end**\n- **left**\n- **left-start**\n- **left-end**\n- **right**\n- **right-start**\n- **right-end**",
40797
+ "default": "bottom",
40798
+ "fieldName": "placement",
40799
+ "inheritedFrom": {
40800
+ "name": "Popover",
40801
+ "module": "src/components/popover/popover.component.ts"
40802
+ }
40803
+ },
41320
40804
  {
41321
40805
  "name": "color",
41322
40806
  "type": {
@@ -41698,8 +41182,354 @@
41698
41182
  "name": "Popover",
41699
41183
  "module": "/src/components/popover/popover.component"
41700
41184
  },
41701
- "tagName": "mdc-toggletip",
41702
- "jsDoc": "/**\n * A toggletip is triggered by clicking a trigger element.\n *\n * It can contain interactive content and can be closed by\n * clicking outside the toggletip or pressing the escape key.\n *\n * It can have optional close button to close the toggletip.\n *\n * Toggletip component uses `mdc-screenreaderannouncer` internally to\n * announce the toggletip text content with screen readers when the toggletip is shown.\n *\n * `screenreader-announcer-identity` attribute can be used to provide ID of an element\n * in DOM to which announcement elements are added. If not set, a visually hidden\n * div element is created in DOM to which announcement elements are added.\n *\n * Please refer to the `mdc-screenreaderannouncer` component for more details.\n *\n * @dependency mdc-screenreaderannouncer\n * @dependency mdc-button\n *\n * @tagname mdc-toggletip\n *\n * @event shown - (React: onShown) This event is dispatched when the toggletip is shown\n * @event hidden - (React: onHidden) This event is dispatched when the toggletip is hidden\n * @event created - (React: onCreated) This event is dispatched when the toggletip is created (added to the DOM)\n * @event destroyed - (React: onDestroyed) This event is dispatched when the toggletip\n * is destroyed (removed from the DOM)\n *\n * @cssproperty --mdc-toggletip-max-width - The maximum width of the toggletip.\n * @cssproperty --mdc-toggletip-text-color - The text color of the toggletip.\n * @cssproperty --mdc-toggletip-text-color-contrast - The text color of the toggletip\n * when the color is contrast.\n *\n * @slot - Default slot for the toggletip content\n */",
41185
+ "tagName": "mdc-tooltip",
41186
+ "jsDoc": "/**\n * A tooltip is triggered by mouse hover or by keyboard focus\n * and will disappear upon mouse exit or focus change.\n *\n * Note: Tooltips cannot contain content that can be focused or interacted with.\n *\n * @tagname mdc-tooltip\n *\n * @event shown - (React: onShown) This event is dispatched when the tooltip is shown\n * @event hidden - (React: onHidden) This event is dispatched when the tooltip is hidden\n * @event created - (React: onCreated) This event is dispatched when the tooltip is created (added to the DOM)\n * @event destroyed - (React: onDestroyed) This event is dispatched when the tooltip is destroyed (removed from the DOM)\n *\n * @cssproperty --mdc-tooltip-max-width - The maximum width of the tooltip.\n * @cssproperty --mdc-tooltip-padding - The padding of the tooltip.\n * @cssproperty --mdc-tooltip-text-color - The text color of the tooltip.\n * @cssproperty --mdc-tooltip-text-color-contrast - The text color of the tooltip when the color is contrast.\n *\n */",
41187
+ "customElement": true,
41188
+ "slots": [
41189
+ {
41190
+ "description": "Default slot for the popover content",
41191
+ "name": "",
41192
+ "inheritedFrom": {
41193
+ "name": "Popover",
41194
+ "module": "src/components/popover/popover.component.ts"
41195
+ }
41196
+ }
41197
+ ]
41198
+ }
41199
+ ],
41200
+ "exports": [
41201
+ {
41202
+ "kind": "js",
41203
+ "name": "default",
41204
+ "declaration": {
41205
+ "name": "Tooltip",
41206
+ "module": "components/tooltip/tooltip.component.js"
41207
+ }
41208
+ }
41209
+ ]
41210
+ },
41211
+ {
41212
+ "kind": "javascript-module",
41213
+ "path": "components/typewriter/typewriter.component.js",
41214
+ "declarations": [
41215
+ {
41216
+ "kind": "class",
41217
+ "description": "Typewriter component that creates a typewriter effect on text content.\nIt uses the Text component internally, adding a progressive typing effect.\n\nThe `type` attribute allows changing the text style (passed to the internal Text component).\nThe `tagname` attribute allows changing the tag name of the text element (passed to the internal Text component).\nThe default tag name is `p`.\n\nThe `speed` attribute controls typing speed in milliseconds per character:\n- 'very-slow' = 240ms per character\n- 'slow' = 120ms per character\n- 'normal' = 60ms per character (default)\n- 'fast' = 20ms per character\n- 'very-fast' = 1ms per character\n- Or any numeric string representing milliseconds\n\nAdvanced features:\n- Dynamic speed adjustment during typing\n- Chunked text addition via addTextChunk() method\n- Instant text addition via addInstantTextChunk() method or instant parameter\n- Mixed instant and animated chunks in queue\n- Continues typing in background tabs\n- Performance optimized for large text\n- maxQueueSize to limit memory usage from excessive queuing\n- event handling for typing completion and content changes\n\nThe component includes accessibility features:\n- Screen readers announce the complete text, not character by character\n- Uses aria-live=\"polite\" for dynamic content updates\n- Sets aria-busy during typing animation",
41218
+ "name": "Typewriter",
41219
+ "cssParts": [
41220
+ {
41221
+ "description": "Container for the text element",
41222
+ "name": "container"
41223
+ },
41224
+ {
41225
+ "description": "The text element (forwarded to mdc-text)",
41226
+ "name": "text"
41227
+ }
41228
+ ],
41229
+ "slots": [
41230
+ {
41231
+ "description": "Default slot for text content",
41232
+ "name": ""
41233
+ }
41234
+ ],
41235
+ "members": [
41236
+ {
41237
+ "kind": "field",
41238
+ "name": "type",
41239
+ "type": {
41240
+ "text": "TextType"
41241
+ },
41242
+ "privacy": "public",
41243
+ "description": "Specifies the text style to be applied to the internal text component.\nUses the same types as the Text component.",
41244
+ "default": "body-large-regular",
41245
+ "attribute": "type",
41246
+ "reflects": true
41247
+ },
41248
+ {
41249
+ "kind": "field",
41250
+ "name": "tagname",
41251
+ "type": {
41252
+ "text": "TagName | undefined"
41253
+ },
41254
+ "privacy": "public",
41255
+ "description": "Specifies the HTML tag name for the text element. The default tag name is `p`.\nThis attribute is optional. When set, it changes the tag name of the internal text element.\n\nAcceptable values include all valid tag names from the Text component.",
41256
+ "attribute": "tagname",
41257
+ "reflects": true
41258
+ },
41259
+ {
41260
+ "kind": "field",
41261
+ "name": "speed",
41262
+ "type": {
41263
+ "text": "TypewriterSpeed"
41264
+ },
41265
+ "privacy": "public",
41266
+ "description": "Speed of the typewriter effect in milliseconds per character.\nCan be a string preset or a numeric string in milliseconds.\n- 'very-slow' = 240ms per character\n- 'slow' = 120ms per character\n- 'normal' = 60ms per character (default)\n- 'fast' = 20ms per character\n- 'very-fast' = 1ms per character\n- Or any numeric string representing milliseconds (e.g., '100')",
41267
+ "default": "'normal' (60ms per character)",
41268
+ "attribute": "speed",
41269
+ "reflects": true
41270
+ },
41271
+ {
41272
+ "kind": "field",
41273
+ "name": "maxQueueSize",
41274
+ "type": {
41275
+ "text": "number"
41276
+ },
41277
+ "privacy": "public",
41278
+ "description": "Maximum number of text chunks that can be queued before oldest chunks are dropped.\nSet to prevent memory accumulation from excessive queuing.",
41279
+ "default": "Number.MAX_SAFE_INTEGER (effectively unlimited)",
41280
+ "attribute": "max-queue-size",
41281
+ "reflects": true
41282
+ },
41283
+ {
41284
+ "kind": "method",
41285
+ "name": "createTimeout",
41286
+ "privacy": "private",
41287
+ "return": {
41288
+ "type": {
41289
+ "text": "number"
41290
+ }
41291
+ },
41292
+ "parameters": [
41293
+ {
41294
+ "name": "callback",
41295
+ "type": {
41296
+ "text": "() => void"
41297
+ }
41298
+ },
41299
+ {
41300
+ "name": "delay",
41301
+ "type": {
41302
+ "text": "number"
41303
+ }
41304
+ }
41305
+ ],
41306
+ "description": "Helper to create tracked setTimeout that will be cleaned up on disconnect"
41307
+ },
41308
+ {
41309
+ "kind": "method",
41310
+ "name": "clearAllTimeouts",
41311
+ "privacy": "private",
41312
+ "return": {
41313
+ "type": {
41314
+ "text": "void"
41315
+ }
41316
+ },
41317
+ "description": "Clear all pending timeouts"
41318
+ },
41319
+ {
41320
+ "kind": "method",
41321
+ "name": "clearQueue",
41322
+ "privacy": "public",
41323
+ "return": {
41324
+ "type": {
41325
+ "text": "void"
41326
+ }
41327
+ },
41328
+ "description": "Clears the text chunk queue and stops processing\nUseful for resetting the component state"
41329
+ },
41330
+ {
41331
+ "kind": "method",
41332
+ "name": "addTextChunk",
41333
+ "privacy": "public",
41334
+ "return": {
41335
+ "type": {
41336
+ "text": "void"
41337
+ }
41338
+ },
41339
+ "parameters": [
41340
+ {
41341
+ "name": "text",
41342
+ "type": {
41343
+ "text": "string"
41344
+ },
41345
+ "description": "The text to add"
41346
+ },
41347
+ {
41348
+ "name": "speed",
41349
+ "optional": true,
41350
+ "type": {
41351
+ "text": "TypewriterSpeed"
41352
+ },
41353
+ "description": "Optional speed override for this chunk"
41354
+ },
41355
+ {
41356
+ "name": "instant",
41357
+ "optional": true,
41358
+ "type": {
41359
+ "text": "boolean"
41360
+ },
41361
+ "description": "If true, text appears instantly without animation"
41362
+ }
41363
+ ],
41364
+ "description": "Adds a chunk of text to be typed out, optionally with a different speed"
41365
+ },
41366
+ {
41367
+ "kind": "method",
41368
+ "name": "addInstantTextChunk",
41369
+ "privacy": "public",
41370
+ "return": {
41371
+ "type": {
41372
+ "text": "void"
41373
+ }
41374
+ },
41375
+ "parameters": [
41376
+ {
41377
+ "name": "text",
41378
+ "type": {
41379
+ "text": "string"
41380
+ },
41381
+ "description": "The text to add instantly"
41382
+ }
41383
+ ],
41384
+ "description": "Adds a chunk of text instantly without typing animation"
41385
+ },
41386
+ {
41387
+ "kind": "method",
41388
+ "name": "processChunkQueue",
41389
+ "privacy": "private",
41390
+ "return": {
41391
+ "type": {
41392
+ "text": "void"
41393
+ }
41394
+ },
41395
+ "description": "Processes all chunks in the queue"
41396
+ },
41397
+ {
41398
+ "kind": "method",
41399
+ "name": "processNextChunk",
41400
+ "privacy": "private",
41401
+ "return": {
41402
+ "type": {
41403
+ "text": "void"
41404
+ }
41405
+ },
41406
+ "description": "Processes the next chunk in the queue"
41407
+ },
41408
+ {
41409
+ "kind": "method",
41410
+ "name": "getTypingDelayMs",
41411
+ "privacy": "private",
41412
+ "return": {
41413
+ "type": {
41414
+ "text": "number"
41415
+ }
41416
+ },
41417
+ "description": "Gets the typing delay in milliseconds per character"
41418
+ },
41419
+ {
41420
+ "kind": "method",
41421
+ "name": "captureAndProcessContent",
41422
+ "privacy": "private",
41423
+ "return": {
41424
+ "type": {
41425
+ "text": "void"
41426
+ }
41427
+ },
41428
+ "description": "Captures slot content and starts typewriter animation"
41429
+ },
41430
+ {
41431
+ "kind": "method",
41432
+ "name": "startTypingAnimation",
41433
+ "privacy": "private",
41434
+ "return": {
41435
+ "type": {
41436
+ "text": "void"
41437
+ }
41438
+ },
41439
+ "parameters": [
41440
+ {
41441
+ "name": "onComplete",
41442
+ "optional": true,
41443
+ "type": {
41444
+ "text": "() => void"
41445
+ }
41446
+ }
41447
+ ],
41448
+ "description": "Starts the typewriter animation"
41449
+ },
41450
+ {
41451
+ "kind": "method",
41452
+ "name": "clearTypingAnimation",
41453
+ "privacy": "private",
41454
+ "return": {
41455
+ "type": {
41456
+ "text": "void"
41457
+ }
41458
+ },
41459
+ "description": "Clears the typing animation timeout"
41460
+ },
41461
+ {
41462
+ "kind": "method",
41463
+ "name": "handleSlotChange",
41464
+ "privacy": "private",
41465
+ "return": {
41466
+ "type": {
41467
+ "text": "void"
41468
+ }
41469
+ },
41470
+ "description": "Handler for slotchange event"
41471
+ }
41472
+ ],
41473
+ "events": [
41474
+ {
41475
+ "type": {
41476
+ "text": "CustomEvent"
41477
+ }
41478
+ },
41479
+ {
41480
+ "description": "(React: onTypingComplete) Fired when the typewriter finishes typing all content. Detail: \\{ finalContent: string \\}",
41481
+ "name": "typing-complete",
41482
+ "reactName": "onTypingComplete"
41483
+ },
41484
+ {
41485
+ "description": "(React: onChange) Fired when the content of the typewriter changes. Detail: \\{ content: string, isTyping: boolean \\}",
41486
+ "name": "change",
41487
+ "reactName": "onChange"
41488
+ }
41489
+ ],
41490
+ "attributes": [
41491
+ {
41492
+ "name": "type",
41493
+ "type": {
41494
+ "text": "TextType"
41495
+ },
41496
+ "description": "Specifies the text style to be applied to the internal text component.\nUses the same types as the Text component.",
41497
+ "default": "body-large-regular",
41498
+ "fieldName": "type"
41499
+ },
41500
+ {
41501
+ "name": "tagname",
41502
+ "type": {
41503
+ "text": "TagName | undefined"
41504
+ },
41505
+ "description": "Specifies the HTML tag name for the text element. The default tag name is `p`.\nThis attribute is optional. When set, it changes the tag name of the internal text element.\n\nAcceptable values include all valid tag names from the Text component.",
41506
+ "fieldName": "tagname"
41507
+ },
41508
+ {
41509
+ "name": "speed",
41510
+ "type": {
41511
+ "text": "TypewriterSpeed"
41512
+ },
41513
+ "description": "Speed of the typewriter effect in milliseconds per character.\nCan be a string preset or a numeric string in milliseconds.\n- 'very-slow' = 240ms per character\n- 'slow' = 120ms per character\n- 'normal' = 60ms per character (default)\n- 'fast' = 20ms per character\n- 'very-fast' = 1ms per character\n- Or any numeric string representing milliseconds (e.g., '100')",
41514
+ "default": "'normal' (60ms per character)",
41515
+ "fieldName": "speed"
41516
+ },
41517
+ {
41518
+ "name": "max-queue-size",
41519
+ "type": {
41520
+ "text": "number"
41521
+ },
41522
+ "description": "Maximum number of text chunks that can be queued before oldest chunks are dropped.\nSet to prevent memory accumulation from excessive queuing.",
41523
+ "default": "Number.MAX_SAFE_INTEGER (effectively unlimited)",
41524
+ "fieldName": "maxQueueSize"
41525
+ }
41526
+ ],
41527
+ "superclass": {
41528
+ "name": "Component",
41529
+ "module": "/src/models"
41530
+ },
41531
+ "tagName": "mdc-typewriter",
41532
+ "jsDoc": "/**\n * Typewriter component that creates a typewriter effect on text content.\n * It uses the Text component internally, adding a progressive typing effect.\n *\n * The `type` attribute allows changing the text style (passed to the internal Text component).\n * The `tagname` attribute allows changing the tag name of the text element (passed to the internal Text component).\n * The default tag name is `p`.\n *\n * The `speed` attribute controls typing speed in milliseconds per character:\n * - 'very-slow' = 240ms per character\n * - 'slow' = 120ms per character\n * - 'normal' = 60ms per character (default)\n * - 'fast' = 20ms per character\n * - 'very-fast' = 1ms per character\n * - Or any numeric string representing milliseconds\n *\n * Advanced features:\n * - Dynamic speed adjustment during typing\n * - Chunked text addition via addTextChunk() method\n * - Instant text addition via addInstantTextChunk() method or instant parameter\n * - Mixed instant and animated chunks in queue\n * - Continues typing in background tabs\n * - Performance optimized for large text\n * - maxQueueSize to limit memory usage from excessive queuing\n * - event handling for typing completion and content changes\n *\n * The component includes accessibility features:\n * - Screen readers announce the complete text, not character by character\n * - Uses aria-live=\"polite\" for dynamic content updates\n * - Sets aria-busy during typing animation\n *\n * @dependency mdc-text\n *\n * @tagname mdc-typewriter\n * @slot - Default slot for text content\n *\n * @csspart container - Container for the text element\n * @csspart text - The text element (forwarded to mdc-text)\n *\n * @event typing-complete - (React: onTypingComplete) Fired when the typewriter finishes typing all content.\n * Detail: \\{ finalContent: string \\}\n * @event change - (React: onChange) Fired when the content of the typewriter changes.\n * Detail: \\{ content: string, isTyping: boolean \\}\n */",
41703
41533
  "customElement": true
41704
41534
  }
41705
41535
  ],
@@ -41708,8 +41538,142 @@
41708
41538
  "kind": "js",
41709
41539
  "name": "default",
41710
41540
  "declaration": {
41711
- "name": "ToggleTip",
41712
- "module": "components/toggletip/toggletip.component.js"
41541
+ "name": "Typewriter",
41542
+ "module": "components/typewriter/typewriter.component.js"
41543
+ }
41544
+ }
41545
+ ]
41546
+ },
41547
+ {
41548
+ "kind": "javascript-module",
41549
+ "path": "components/virtualizedlist/virtualizedlist.component.js",
41550
+ "declarations": [
41551
+ {
41552
+ "kind": "class",
41553
+ "description": "`mdc-virtualizedlist` component for creating custom virtualized lists.\nIMPORTANT: This component does not create it's own list/list items.\nUse the setlistdata callback prop to update client state in order to\nPass list/listitems as a child of this component, which this will virtuailze\nThis implementation handles dynamic lists as well as fixed sized lists.\nPlease refer to [Tanstack Virtual Docs](https://tanstack.com/virtual/latest) for more in depth documentation.",
41554
+ "name": "VirtualizedList",
41555
+ "slots": [
41556
+ {
41557
+ "description": "Client side List with nested list items.",
41558
+ "name": ""
41559
+ }
41560
+ ],
41561
+ "members": [
41562
+ {
41563
+ "kind": "field",
41564
+ "name": "onscroll",
41565
+ "type": {
41566
+ "text": "((this: GlobalEventHandlers, ev: Event) => void) | null"
41567
+ },
41568
+ "description": "Callback that gets called when user scrolls inside of list. This gives access to the scroll container element\nas well via the event. Particularly useful for\nhandling logic related when the user scrolls to the top or bottom of a list.",
41569
+ "default": "null",
41570
+ "attribute": "onscroll"
41571
+ },
41572
+ {
41573
+ "kind": "field",
41574
+ "name": "virtualizerProps",
41575
+ "type": {
41576
+ "text": "VirtualizerProps"
41577
+ },
41578
+ "description": "Object that sets and updates the virtualizer with any relevant props.\nThere are two required object props in order to get virtualization to work properly.\ncount - The length of your list that you are virtualizing.\nAs your list grows/shrinks, this component must be updated with the appropriate value\n(Same with any other updated prop).\nestimateSize - A function that returns the estimated size of your items.\nIf your list is fixed, this will just be the size of your items.\nIf your list is dynamic, try to return approximate the size of each item.\n\nA full list of possible props can be in\n[Tanstack Virtualizer API Docs](https://tanstack.com/virtual/latest/docs/api/virtualizer)",
41579
+ "attribute": "virtualizerprops"
41580
+ },
41581
+ {
41582
+ "kind": "field",
41583
+ "name": "setlistdata",
41584
+ "type": {
41585
+ "text": "(({ virtualItems, measureElement, listStyle }: SetListDataProps) => void) | null"
41586
+ },
41587
+ "description": "Callback that gets envoked when updates to the virtualizer interally occur.\nThis must be implemented in such a way that this function will trigger update to parent.\n\nvirtualItems - Array that will be what the client displays on screen. Use this to render\na List of your choosing with these items nested inside as your ListItems.\nmeasureElement - Ref to pass to each ListItem rendered client side.\nEach ListItem should also be be passed key and a data-index (which can be found on the virtualItem).\nlistStyle - This should be passed as the style attribute to your List.",
41588
+ "default": "null",
41589
+ "attribute": "setlistdata"
41590
+ },
41591
+ {
41592
+ "kind": "field",
41593
+ "name": "scrollElementRef",
41594
+ "type": {
41595
+ "text": "Ref<HTMLDivElement>"
41596
+ },
41597
+ "privacy": "public"
41598
+ },
41599
+ {
41600
+ "kind": "field",
41601
+ "name": "virtualizer",
41602
+ "type": {
41603
+ "text": "Virtualizer<Element, Element> | null"
41604
+ },
41605
+ "privacy": "public",
41606
+ "default": "null"
41607
+ },
41608
+ {
41609
+ "kind": "field",
41610
+ "name": "virtualItems",
41611
+ "type": {
41612
+ "text": "Array<VirtualItem>"
41613
+ },
41614
+ "privacy": "public",
41615
+ "default": "[]"
41616
+ },
41617
+ {
41618
+ "kind": "field",
41619
+ "name": "virtualizerController",
41620
+ "type": {
41621
+ "text": "null"
41622
+ },
41623
+ "default": "null"
41624
+ }
41625
+ ],
41626
+ "events": [
41627
+ {
41628
+ "description": "(React: onScroll) Event that gets called when user scrolls inside of list.",
41629
+ "name": "onscroll",
41630
+ "reactName": "onScroll"
41631
+ }
41632
+ ],
41633
+ "attributes": [
41634
+ {
41635
+ "name": "onscroll",
41636
+ "type": {
41637
+ "text": "((this: GlobalEventHandlers, ev: Event) => void) | null"
41638
+ },
41639
+ "description": "Callback that gets called when user scrolls inside of list. This gives access to the scroll container element\nas well via the event. Particularly useful for\nhandling logic related when the user scrolls to the top or bottom of a list.",
41640
+ "default": "null",
41641
+ "fieldName": "onscroll"
41642
+ },
41643
+ {
41644
+ "name": "virtualizerprops",
41645
+ "type": {
41646
+ "text": "VirtualizerProps"
41647
+ },
41648
+ "description": "Object that sets and updates the virtualizer with any relevant props.\nThere are two required object props in order to get virtualization to work properly.\ncount - The length of your list that you are virtualizing.\nAs your list grows/shrinks, this component must be updated with the appropriate value\n(Same with any other updated prop).\nestimateSize - A function that returns the estimated size of your items.\nIf your list is fixed, this will just be the size of your items.\nIf your list is dynamic, try to return approximate the size of each item.\n\nA full list of possible props can be in\n[Tanstack Virtualizer API Docs](https://tanstack.com/virtual/latest/docs/api/virtualizer)",
41649
+ "fieldName": "virtualizerProps"
41650
+ },
41651
+ {
41652
+ "name": "setlistdata",
41653
+ "type": {
41654
+ "text": "(({ virtualItems, measureElement, listStyle }: SetListDataProps) => void) | null"
41655
+ },
41656
+ "description": "Callback that gets envoked when updates to the virtualizer interally occur.\nThis must be implemented in such a way that this function will trigger update to parent.\n\nvirtualItems - Array that will be what the client displays on screen. Use this to render\na List of your choosing with these items nested inside as your ListItems.\nmeasureElement - Ref to pass to each ListItem rendered client side.\nEach ListItem should also be be passed key and a data-index (which can be found on the virtualItem).\nlistStyle - This should be passed as the style attribute to your List.",
41657
+ "default": "null",
41658
+ "fieldName": "setlistdata"
41659
+ }
41660
+ ],
41661
+ "superclass": {
41662
+ "name": "Component",
41663
+ "module": "/src/models"
41664
+ },
41665
+ "tagName": "mdc-virtualizedlist",
41666
+ "jsDoc": "/**\n * `mdc-virtualizedlist` component for creating custom virtualized lists.\n * IMPORTANT: This component does not create it's own list/list items.\n * Use the setlistdata callback prop to update client state in order to\n * Pass list/listitems as a child of this component, which this will virtuailze\n * This implementation handles dynamic lists as well as fixed sized lists.\n * Please refer to [Tanstack Virtual Docs](https://tanstack.com/virtual/latest) for more in depth documentation.\n *\n * @tagname mdc-virtualizedlist\n *\n * @event onscroll - (React: onScroll) Event that gets called when user scrolls inside of list.\n *\n * @slot - Client side List with nested list items.\n */",
41667
+ "customElement": true
41668
+ }
41669
+ ],
41670
+ "exports": [
41671
+ {
41672
+ "kind": "js",
41673
+ "name": "default",
41674
+ "declaration": {
41675
+ "name": "VirtualizedList",
41676
+ "module": "components/virtualizedlist/virtualizedlist.component.js"
41713
41677
  }
41714
41678
  }
41715
41679
  ]