@momentum-design/components 0.111.2 → 0.112.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -19580,7 +19580,7 @@
19580
19580
  "kind": "method",
19581
19581
  "name": "handleMouseClick",
19582
19582
  "privacy": "private",
19583
- "description": "Handles click events to toggle checked state\nIf the menuitemcheckbox is disabled, it does nothing.\nIf the menuitemcheckbox is not disabled, it toggles the `checked` state between `true` and `false`."
19583
+ "description": "Handles click events to toggle checked state\nIf the menuitemcheckbox is disabled, it does nothing.\nIf the menuitemcheckbox is not disabled, it toggles checked if uncontrolled, and dispatches the 'change' event."
19584
19584
  },
19585
19585
  {
19586
19586
  "kind": "method",
@@ -19615,6 +19615,21 @@
19615
19615
  },
19616
19616
  "description": "Returns a checkmark icon if the indicator is set to checkmark and the checked state is true.\nIf the indicator is not set to checkmark or the checked state is false, it returns nothing.\n\nThe checkmark icon will always be positioned on the trailing side of the menuitem label."
19617
19617
  },
19618
+ {
19619
+ "kind": "field",
19620
+ "name": "controlled",
19621
+ "type": {
19622
+ "text": "boolean | undefined"
19623
+ },
19624
+ "description": "Indicates whether the component is controlled.\nWhen the component is controlled, it will not handle any interaction itself, e.g. toggling a checkbox.",
19625
+ "default": "undefined",
19626
+ "attribute": "controlled",
19627
+ "reflects": true,
19628
+ "inheritedFrom": {
19629
+ "name": "ControlledMixin",
19630
+ "module": "utils/mixins/ControlledMixin.js"
19631
+ }
19632
+ },
19618
19633
  {
19619
19634
  "kind": "field",
19620
19635
  "name": "arrowPosition",
@@ -20103,6 +20118,19 @@
20103
20118
  "default": "'checkbox'",
20104
20119
  "fieldName": "indicator"
20105
20120
  },
20121
+ {
20122
+ "name": "controlled",
20123
+ "type": {
20124
+ "text": "boolean | undefined"
20125
+ },
20126
+ "description": "Indicates whether the component is controlled.\nWhen the component is controlled, it will not handle any interaction itself, e.g. toggling a checkbox.",
20127
+ "default": "undefined",
20128
+ "fieldName": "controlled",
20129
+ "inheritedFrom": {
20130
+ "name": "ControlledMixin",
20131
+ "module": "src/utils/mixins/ControlledMixin.ts"
20132
+ }
20133
+ },
20106
20134
  {
20107
20135
  "name": "arrow-position",
20108
20136
  "type": {
@@ -20264,6 +20292,12 @@
20264
20292
  }
20265
20293
  }
20266
20294
  ],
20295
+ "mixins": [
20296
+ {
20297
+ "name": "ControlledMixin",
20298
+ "module": "/src/utils/mixins/ControlledMixin"
20299
+ }
20300
+ ],
20267
20301
  "superclass": {
20268
20302
  "name": "MenuItem",
20269
20303
  "module": "/src/components/menuitem/menuitem.component"
@@ -40928,194 +40962,127 @@
40928
40962
  },
40929
40963
  {
40930
40964
  "kind": "javascript-module",
40931
- "path": "components/tooltip/tooltip.component.js",
40965
+ "path": "components/typewriter/typewriter.component.js",
40932
40966
  "declarations": [
40933
40967
  {
40934
40968
  "kind": "class",
40935
- "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.",
40936
- "name": "Tooltip",
40937
- "cssProperties": [
40938
- {
40939
- "description": "The maximum width of the tooltip.",
40940
- "name": "--mdc-tooltip-max-width"
40941
- },
40942
- {
40943
- "description": "The padding of the tooltip.",
40944
- "name": "--mdc-tooltip-padding"
40945
- },
40946
- {
40947
- "description": "The text color of the tooltip.",
40948
- "name": "--mdc-tooltip-text-color"
40949
- },
40950
- {
40951
- "description": "The text color of the tooltip when the color is contrast.",
40952
- "name": "--mdc-tooltip-text-color-contrast"
40953
- },
40954
- {
40955
- "description": "radius of the arrow border",
40956
- "name": "--mdc-popover-arrow-border-radius",
40957
- "inheritedFrom": {
40958
- "name": "Popover",
40959
- "module": "src/components/popover/popover.component.ts"
40960
- }
40961
- },
40962
- {
40963
- "description": "border of the arrow",
40964
- "name": "--mdc-popover-arrow-border",
40965
- "inheritedFrom": {
40966
- "name": "Popover",
40967
- "module": "src/components/popover/popover.component.ts"
40968
- }
40969
- },
40970
- {
40971
- "description": "primary background color of the popover",
40972
- "name": "--mdc-popover-primary-background-color",
40973
- "inheritedFrom": {
40974
- "name": "Popover",
40975
- "module": "src/components/popover/popover.component.ts"
40976
- }
40977
- },
40978
- {
40979
- "description": "border color of the popover",
40980
- "name": "--mdc-popover-border-color",
40981
- "inheritedFrom": {
40982
- "name": "Popover",
40983
- "module": "src/components/popover/popover.component.ts"
40984
- }
40985
- },
40986
- {
40987
- "description": "inverted background color of the popover",
40988
- "name": "--mdc-popover-inverted-background-color",
40989
- "inheritedFrom": {
40990
- "name": "Popover",
40991
- "module": "src/components/popover/popover.component.ts"
40992
- }
40993
- },
40994
- {
40995
- "description": "inverted border color of the popover",
40996
- "name": "--mdc-popover-inverted-border-color",
40997
- "inheritedFrom": {
40998
- "name": "Popover",
40999
- "module": "src/components/popover/popover.component.ts"
41000
- }
41001
- },
41002
- {
41003
- "description": "inverted text color of the popover",
41004
- "name": "--mdc-popover-inverted-text-color",
41005
- "inheritedFrom": {
41006
- "name": "Popover",
41007
- "module": "src/components/popover/popover.component.ts"
41008
- }
41009
- },
41010
- {
41011
- "description": "elevation of the popover",
41012
- "name": "--mdc-popover-elevation-3",
41013
- "inheritedFrom": {
41014
- "name": "Popover",
41015
- "module": "src/components/popover/popover.component.ts"
41016
- }
41017
- },
40969
+ "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",
40970
+ "name": "Typewriter",
40971
+ "cssParts": [
41018
40972
  {
41019
- "description": "max width of the popover",
41020
- "name": "--mdc-popover-max-width",
41021
- "inheritedFrom": {
41022
- "name": "Popover",
41023
- "module": "src/components/popover/popover.component.ts"
41024
- }
40973
+ "description": "Container for the text element",
40974
+ "name": "container"
41025
40975
  },
41026
40976
  {
41027
- "description": "max height of the popover",
41028
- "name": "--mdc-popover-max-height",
41029
- "inheritedFrom": {
41030
- "name": "Popover",
41031
- "module": "src/components/popover/popover.component.ts"
41032
- }
41033
- },
40977
+ "description": "The text element (forwarded to mdc-text)",
40978
+ "name": "text"
40979
+ }
40980
+ ],
40981
+ "slots": [
41034
40982
  {
41035
- "description": "width of the popover",
41036
- "name": "--mdc-popover-width",
41037
- "inheritedFrom": {
41038
- "name": "Popover",
41039
- "module": "src/components/popover/popover.component.ts"
41040
- }
40983
+ "description": "Default slot for text content",
40984
+ "name": ""
41041
40985
  }
41042
40986
  ],
41043
40987
  "members": [
41044
40988
  {
41045
40989
  "kind": "field",
41046
- "name": "tooltipType",
40990
+ "name": "type",
41047
40991
  "type": {
41048
- "text": "TooltipType"
40992
+ "text": "TextType"
41049
40993
  },
41050
- "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.",
41051
- "default": "'description'",
41052
- "attribute": "tooltip-type",
40994
+ "privacy": "public",
40995
+ "description": "Specifies the text style to be applied to the internal text component.\nUses the same types as the Text component.",
40996
+ "default": "body-large-regular",
40997
+ "attribute": "type",
41053
40998
  "reflects": true
41054
40999
  },
41055
41000
  {
41056
41001
  "kind": "field",
41057
- "name": "defaultSlotNodes",
41002
+ "name": "tagname",
41058
41003
  "type": {
41059
- "text": "Array<Node>"
41004
+ "text": "TagName | undefined"
41060
41005
  },
41061
- "privacy": "private"
41006
+ "privacy": "public",
41007
+ "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.",
41008
+ "attribute": "tagname",
41009
+ "reflects": true
41062
41010
  },
41063
41011
  {
41064
- "kind": "method",
41065
- "name": "getTooltipText",
41066
- "privacy": "private",
41067
- "return": {
41068
- "type": {
41069
- "text": ""
41070
- }
41071
- }
41012
+ "kind": "field",
41013
+ "name": "speed",
41014
+ "type": {
41015
+ "text": "TypewriterSpeed"
41016
+ },
41017
+ "privacy": "public",
41018
+ "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')",
41019
+ "default": "'normal' (60ms per character)",
41020
+ "attribute": "speed",
41021
+ "reflects": true
41022
+ },
41023
+ {
41024
+ "kind": "field",
41025
+ "name": "maxQueueSize",
41026
+ "type": {
41027
+ "text": "number"
41028
+ },
41029
+ "privacy": "public",
41030
+ "description": "Maximum number of text chunks that can be queued before oldest chunks are dropped.\nSet to prevent memory accumulation from excessive queuing.",
41031
+ "default": "Number.MAX_SAFE_INTEGER (effectively unlimited)",
41032
+ "attribute": "max-queue-size",
41033
+ "reflects": true
41072
41034
  },
41073
41035
  {
41074
41036
  "kind": "method",
41075
- "name": "setTooltipType",
41037
+ "name": "createTimeout",
41076
41038
  "privacy": "private",
41077
41039
  "return": {
41078
41040
  "type": {
41079
- "text": "void"
41041
+ "text": "number"
41080
41042
  }
41081
41043
  },
41082
41044
  "parameters": [
41083
41045
  {
41084
- "name": "type",
41046
+ "name": "callback",
41085
41047
  "type": {
41086
- "text": "TooltipType"
41087
- },
41088
- "description": "The type to set."
41048
+ "text": "() => void"
41049
+ }
41050
+ },
41051
+ {
41052
+ "name": "delay",
41053
+ "type": {
41054
+ "text": "number"
41055
+ }
41089
41056
  }
41090
41057
  ],
41091
- "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."
41058
+ "description": "Helper to create tracked setTimeout that will be cleaned up on disconnect"
41092
41059
  },
41093
41060
  {
41094
41061
  "kind": "method",
41095
- "name": "onIdUpdated",
41062
+ "name": "clearAllTimeouts",
41096
41063
  "privacy": "private",
41097
41064
  "return": {
41098
41065
  "type": {
41099
- "text": "Promise<void>"
41066
+ "text": "void"
41100
41067
  }
41101
41068
  },
41102
- "description": "Updates the tooltip id if it is empty."
41069
+ "description": "Clear all pending timeouts"
41103
41070
  },
41104
41071
  {
41105
41072
  "kind": "method",
41106
- "name": "onPlacementUpdated",
41107
- "privacy": "private",
41073
+ "name": "clearQueue",
41074
+ "privacy": "public",
41108
41075
  "return": {
41109
41076
  "type": {
41110
41077
  "text": "void"
41111
41078
  }
41112
41079
  },
41113
- "description": "Updates the placement attribute if it is not a valid placement.\nOverriding the default from Popover"
41080
+ "description": "Clears the text chunk queue and stops processing\nUseful for resetting the component state"
41114
41081
  },
41115
41082
  {
41116
41083
  "kind": "method",
41117
- "name": "onTooltipTypeUpdated",
41118
- "privacy": "private",
41084
+ "name": "addTextChunk",
41085
+ "privacy": "public",
41119
41086
  "return": {
41120
41087
  "type": {
41121
41088
  "text": "void"
@@ -41123,585 +41090,427 @@
41123
41090
  },
41124
41091
  "parameters": [
41125
41092
  {
41126
- "name": "changedProperties",
41093
+ "name": "text",
41127
41094
  "type": {
41128
- "text": "PropertyValues"
41095
+ "text": "string"
41129
41096
  },
41130
- "description": "The changed properties."
41097
+ "description": "The text to add"
41098
+ },
41099
+ {
41100
+ "name": "speed",
41101
+ "optional": true,
41102
+ "type": {
41103
+ "text": "TypewriterSpeed"
41104
+ },
41105
+ "description": "Optional speed override for this chunk"
41106
+ },
41107
+ {
41108
+ "name": "instant",
41109
+ "optional": true,
41110
+ "type": {
41111
+ "text": "boolean"
41112
+ },
41113
+ "description": "If true, text appears instantly without animation"
41131
41114
  }
41132
41115
  ],
41133
- "description": "Updates the tooltip type attribute and sets the appropriate aria props on the trigger component."
41134
- },
41135
- {
41136
- "kind": "field",
41137
- "name": "zIndex",
41138
- "type": {
41139
- "text": "number"
41140
- },
41141
- "description": "IMPLEMENT THIS IN YOUR COMPONENT.\n\nThe z-index of the component where the backdrop will be attached to.\nThe backdrop itself will have a z-index of `zIndex - 1`.",
41142
- "default": "1000",
41143
- "attribute": "z-index",
41144
- "reflects": true,
41145
- "inheritedFrom": {
41146
- "name": "Popover",
41147
- "module": "components/popover/popover.component.js"
41148
- }
41149
- },
41150
- {
41151
- "kind": "field",
41152
- "name": "preventScroll",
41153
- "type": {
41154
- "text": "boolean"
41155
- },
41156
- "privacy": "protected",
41157
- "description": "Prevent outside scrolling when element is shown.\n\nIMPLEMENT THIS IN YOUR COMPONENT.",
41158
- "default": "false",
41159
- "attribute": "prevent-scroll",
41160
- "reflects": true,
41161
- "inheritedFrom": {
41162
- "name": "Popover",
41163
- "module": "components/popover/popover.component.js"
41164
- }
41165
- },
41166
- {
41167
- "kind": "method",
41168
- "name": "activatePreventScroll",
41169
- "privacy": "protected",
41170
- "inheritedFrom": {
41171
- "name": "Popover",
41172
- "module": "components/popover/popover.component.js"
41173
- }
41116
+ "description": "Adds a chunk of text to be typed out, optionally with a different speed"
41174
41117
  },
41175
41118
  {
41176
41119
  "kind": "method",
41177
- "name": "deactivatePreventScroll",
41178
- "privacy": "protected",
41179
- "inheritedFrom": {
41180
- "name": "Popover",
41181
- "module": "components/popover/popover.component.js"
41182
- }
41183
- },
41184
- {
41185
- "kind": "field",
41186
- "name": "focusTrap",
41187
- "type": {
41188
- "text": "boolean"
41189
- },
41190
- "privacy": "protected",
41191
- "description": "Determines whether the focus trap is enabled.\nIf true, focus will be restricted to the content within this component.\n\nIMPLEMENT THIS IN YOUR COMPONENT.",
41192
- "default": "false",
41193
- "attribute": "focus-trap",
41194
- "reflects": true,
41195
- "inheritedFrom": {
41196
- "name": "Popover",
41197
- "module": "components/popover/popover.component.js"
41198
- }
41199
- },
41200
- {
41201
- "kind": "field",
41202
- "name": "shouldFocusTrapWrap",
41203
- "type": {
41204
- "text": "boolean"
41120
+ "name": "addInstantTextChunk",
41121
+ "privacy": "public",
41122
+ "return": {
41123
+ "type": {
41124
+ "text": "void"
41125
+ }
41205
41126
  },
41206
- "default": "true",
41207
- "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.",
41208
- "attribute": "should-focus-trap-wrap",
41209
- "reflects": true,
41210
- "inheritedFrom": {
41211
- "name": "Popover",
41212
- "module": "components/popover/popover.component.js"
41213
- }
41214
- },
41215
- {
41216
- "kind": "method",
41217
- "name": "setIsFocusTrapActivated",
41218
- "privacy": "private",
41219
41127
  "parameters": [
41220
41128
  {
41221
- "name": "isActivated",
41129
+ "name": "text",
41222
41130
  "type": {
41223
- "text": "boolean"
41224
- }
41131
+ "text": "string"
41132
+ },
41133
+ "description": "The text to add instantly"
41225
41134
  }
41226
41135
  ],
41227
- "inheritedFrom": {
41228
- "name": "Popover",
41229
- "module": "components/popover/popover.component.js"
41230
- }
41231
- },
41232
- {
41233
- "kind": "method",
41234
- "name": "activateFocusTrap",
41235
- "privacy": "public",
41236
- "description": "Activate the focus trap",
41237
- "inheritedFrom": {
41238
- "name": "Popover",
41239
- "module": "components/popover/popover.component.js"
41240
- }
41241
- },
41242
- {
41243
- "kind": "method",
41244
- "name": "deactivateFocusTrap",
41245
- "privacy": "public",
41246
- "description": "Deactivate the focus trap.",
41247
- "inheritedFrom": {
41248
- "name": "Popover",
41249
- "module": "components/popover/popover.component.js"
41250
- }
41136
+ "description": "Adds a chunk of text instantly without typing animation"
41251
41137
  },
41252
41138
  {
41253
41139
  "kind": "method",
41254
- "name": "hasNoClientRects",
41140
+ "name": "processChunkQueue",
41255
41141
  "privacy": "private",
41256
- "parameters": [
41257
- {
41258
- "name": "element",
41259
- "type": {
41260
- "text": "HTMLElement"
41261
- },
41262
- "description": "The element to check."
41263
- }
41264
- ],
41265
- "description": "Checks if the element has no client rectangles (not visible in the viewport).",
41266
41142
  "return": {
41267
41143
  "type": {
41268
- "text": ""
41144
+ "text": "void"
41269
41145
  }
41270
41146
  },
41271
- "inheritedFrom": {
41272
- "name": "Popover",
41273
- "module": "components/popover/popover.component.js"
41274
- }
41147
+ "description": "Processes all chunks in the queue"
41275
41148
  },
41276
41149
  {
41277
41150
  "kind": "method",
41278
- "name": "hasZeroDimensions",
41151
+ "name": "processNextChunk",
41279
41152
  "privacy": "private",
41280
- "parameters": [
41281
- {
41282
- "name": "element",
41283
- "type": {
41284
- "text": "HTMLElement"
41285
- },
41286
- "description": "The element to check."
41287
- }
41288
- ],
41289
- "description": "Checks if the element has zero dimensions (width and height are both 0).",
41290
41153
  "return": {
41291
41154
  "type": {
41292
- "text": ""
41155
+ "text": "void"
41293
41156
  }
41294
41157
  },
41295
- "inheritedFrom": {
41296
- "name": "Popover",
41297
- "module": "components/popover/popover.component.js"
41298
- }
41158
+ "description": "Processes the next chunk in the queue"
41299
41159
  },
41300
41160
  {
41301
41161
  "kind": "method",
41302
- "name": "isNotVisible",
41162
+ "name": "getTypingDelayMs",
41303
41163
  "privacy": "private",
41304
- "parameters": [
41305
- {
41306
- "name": "element",
41307
- "type": {
41308
- "text": "HTMLElement"
41309
- },
41310
- "description": "The element to check."
41311
- }
41312
- ],
41313
- "description": "Determines if the element is not visible in the DOM.",
41314
41164
  "return": {
41315
41165
  "type": {
41316
- "text": ""
41166
+ "text": "number"
41317
41167
  }
41318
41168
  },
41319
- "inheritedFrom": {
41320
- "name": "Popover",
41321
- "module": "components/popover/popover.component.js"
41322
- }
41169
+ "description": "Gets the typing delay in milliseconds per character"
41323
41170
  },
41324
41171
  {
41325
41172
  "kind": "method",
41326
- "name": "hasHiddenStyle",
41173
+ "name": "captureAndProcessContent",
41327
41174
  "privacy": "private",
41328
- "parameters": [
41329
- {
41330
- "name": "element",
41331
- "type": {
41332
- "text": "HTMLElement"
41333
- },
41334
- "description": "The element to check."
41335
- }
41336
- ],
41337
- "description": "Checks if the element has inline styles that make it hidden.",
41338
41175
  "return": {
41339
41176
  "type": {
41340
- "text": ""
41177
+ "text": "void"
41341
41178
  }
41342
41179
  },
41343
- "inheritedFrom": {
41344
- "name": "Popover",
41345
- "module": "components/popover/popover.component.js"
41346
- }
41180
+ "description": "Captures slot content and starts typewriter animation"
41347
41181
  },
41348
41182
  {
41349
41183
  "kind": "method",
41350
- "name": "hasComputedHidden",
41184
+ "name": "startTypingAnimation",
41351
41185
  "privacy": "private",
41352
- "parameters": [
41353
- {
41354
- "name": "element",
41355
- "type": {
41356
- "text": "HTMLElement"
41357
- },
41358
- "description": "The element to check."
41359
- }
41360
- ],
41361
- "description": "Checks if the element is hidden by a computed style.",
41362
41186
  "return": {
41363
41187
  "type": {
41364
- "text": ""
41188
+ "text": "void"
41365
41189
  }
41366
41190
  },
41367
- "inheritedFrom": {
41368
- "name": "Popover",
41369
- "module": "components/popover/popover.component.js"
41370
- }
41371
- },
41372
- {
41373
- "kind": "method",
41374
- "name": "isHidden",
41375
- "privacy": "private",
41376
41191
  "parameters": [
41377
41192
  {
41378
- "name": "element",
41193
+ "name": "onComplete",
41194
+ "optional": true,
41379
41195
  "type": {
41380
- "text": "HTMLElement"
41381
- },
41382
- "description": "The element to check."
41196
+ "text": "() => void"
41197
+ }
41383
41198
  }
41384
41199
  ],
41385
- "description": "Checks if the element is hidden from the user.",
41200
+ "description": "Starts the typewriter animation"
41201
+ },
41202
+ {
41203
+ "kind": "method",
41204
+ "name": "clearTypingAnimation",
41205
+ "privacy": "private",
41386
41206
  "return": {
41387
41207
  "type": {
41388
- "text": ""
41208
+ "text": "void"
41389
41209
  }
41390
41210
  },
41391
- "inheritedFrom": {
41392
- "name": "Popover",
41393
- "module": "components/popover/popover.component.js"
41394
- }
41211
+ "description": "Clears the typing animation timeout"
41395
41212
  },
41396
41213
  {
41397
41214
  "kind": "method",
41398
- "name": "isDisabled",
41215
+ "name": "handleSlotChange",
41399
41216
  "privacy": "private",
41400
- "parameters": [
41401
- {
41402
- "name": "element",
41403
- "type": {
41404
- "text": "any"
41405
- },
41406
- "description": "The element to check."
41407
- }
41408
- ],
41409
- "description": "Checks if the element is disabled.",
41410
41217
  "return": {
41411
41218
  "type": {
41412
- "text": ""
41219
+ "text": "void"
41413
41220
  }
41414
41221
  },
41415
- "inheritedFrom": {
41416
- "name": "Popover",
41417
- "module": "components/popover/popover.component.js"
41222
+ "description": "Handler for slotchange event"
41223
+ }
41224
+ ],
41225
+ "events": [
41226
+ {
41227
+ "type": {
41228
+ "text": "CustomEvent"
41418
41229
  }
41419
41230
  },
41420
41231
  {
41421
- "kind": "method",
41422
- "name": "isNotTabbable",
41423
- "privacy": "private",
41424
- "parameters": [
41425
- {
41426
- "name": "element",
41427
- "type": {
41428
- "text": "HTMLElement"
41429
- },
41430
- "description": "The element to check."
41431
- }
41432
- ],
41433
- "description": "Checks if the element is not tabbable.",
41434
- "return": {
41435
- "type": {
41436
- "text": ""
41437
- }
41232
+ "description": "(React: onTypingComplete) Fired when the typewriter finishes typing all content. Detail: \\{ finalContent: string \\}",
41233
+ "name": "typing-complete",
41234
+ "reactName": "onTypingComplete"
41235
+ },
41236
+ {
41237
+ "description": "(React: onChange) Fired when the content of the typewriter changes. Detail: \\{ content: string, isTyping: boolean \\}",
41238
+ "name": "change",
41239
+ "reactName": "onChange"
41240
+ }
41241
+ ],
41242
+ "attributes": [
41243
+ {
41244
+ "name": "type",
41245
+ "type": {
41246
+ "text": "TextType"
41247
+ },
41248
+ "description": "Specifies the text style to be applied to the internal text component.\nUses the same types as the Text component.",
41249
+ "default": "body-large-regular",
41250
+ "fieldName": "type"
41251
+ },
41252
+ {
41253
+ "name": "tagname",
41254
+ "type": {
41255
+ "text": "TagName | undefined"
41256
+ },
41257
+ "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.",
41258
+ "fieldName": "tagname"
41259
+ },
41260
+ {
41261
+ "name": "speed",
41262
+ "type": {
41263
+ "text": "TypewriterSpeed"
41438
41264
  },
41265
+ "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')",
41266
+ "default": "'normal' (60ms per character)",
41267
+ "fieldName": "speed"
41268
+ },
41269
+ {
41270
+ "name": "max-queue-size",
41271
+ "type": {
41272
+ "text": "number"
41273
+ },
41274
+ "description": "Maximum number of text chunks that can be queued before oldest chunks are dropped.\nSet to prevent memory accumulation from excessive queuing.",
41275
+ "default": "Number.MAX_SAFE_INTEGER (effectively unlimited)",
41276
+ "fieldName": "maxQueueSize"
41277
+ }
41278
+ ],
41279
+ "superclass": {
41280
+ "name": "Component",
41281
+ "module": "/src/models"
41282
+ },
41283
+ "tagName": "mdc-typewriter",
41284
+ "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 */",
41285
+ "customElement": true
41286
+ }
41287
+ ],
41288
+ "exports": [
41289
+ {
41290
+ "kind": "js",
41291
+ "name": "default",
41292
+ "declaration": {
41293
+ "name": "Typewriter",
41294
+ "module": "components/typewriter/typewriter.component.js"
41295
+ }
41296
+ }
41297
+ ]
41298
+ },
41299
+ {
41300
+ "kind": "javascript-module",
41301
+ "path": "components/tooltip/tooltip.component.js",
41302
+ "declarations": [
41303
+ {
41304
+ "kind": "class",
41305
+ "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.",
41306
+ "name": "Tooltip",
41307
+ "cssProperties": [
41308
+ {
41309
+ "description": "The maximum width of the tooltip.",
41310
+ "name": "--mdc-tooltip-max-width"
41311
+ },
41312
+ {
41313
+ "description": "The padding of the tooltip.",
41314
+ "name": "--mdc-tooltip-padding"
41315
+ },
41316
+ {
41317
+ "description": "The text color of the tooltip.",
41318
+ "name": "--mdc-tooltip-text-color"
41319
+ },
41320
+ {
41321
+ "description": "The text color of the tooltip when the color is contrast.",
41322
+ "name": "--mdc-tooltip-text-color-contrast"
41323
+ },
41324
+ {
41325
+ "description": "radius of the arrow border",
41326
+ "name": "--mdc-popover-arrow-border-radius",
41439
41327
  "inheritedFrom": {
41440
41328
  "name": "Popover",
41441
- "module": "components/popover/popover.component.js"
41329
+ "module": "src/components/popover/popover.component.ts"
41442
41330
  }
41443
41331
  },
41444
41332
  {
41445
- "kind": "method",
41446
- "name": "isInteractiveElement",
41447
- "privacy": "private",
41448
- "return": {
41449
- "type": {
41450
- "text": ""
41451
- }
41452
- },
41453
- "parameters": [
41454
- {
41455
- "name": "element",
41456
- "type": {
41457
- "text": "HTMLElement"
41458
- },
41459
- "description": "The element to check."
41460
- }
41461
- ],
41462
- "description": "Checks if the element is interactive.",
41333
+ "description": "border of the arrow",
41334
+ "name": "--mdc-popover-arrow-border",
41463
41335
  "inheritedFrom": {
41464
41336
  "name": "Popover",
41465
- "module": "components/popover/popover.component.js"
41337
+ "module": "src/components/popover/popover.component.ts"
41466
41338
  }
41467
41339
  },
41468
41340
  {
41469
- "kind": "method",
41470
- "name": "isFocusable",
41471
- "privacy": "private",
41472
- "parameters": [
41473
- {
41474
- "name": "element",
41475
- "type": {
41476
- "text": "HTMLElement"
41477
- },
41478
- "description": "The element to check."
41479
- }
41480
- ],
41481
- "description": "Checks if the element is focusable.",
41482
- "return": {
41483
- "type": {
41484
- "text": ""
41485
- }
41486
- },
41341
+ "description": "primary background color of the popover",
41342
+ "name": "--mdc-popover-primary-background-color",
41487
41343
  "inheritedFrom": {
41488
41344
  "name": "Popover",
41489
- "module": "components/popover/popover.component.js"
41345
+ "module": "src/components/popover/popover.component.ts"
41490
41346
  }
41491
41347
  },
41492
41348
  {
41493
- "kind": "method",
41494
- "name": "findFocusable",
41495
- "privacy": "private",
41496
- "return": {
41497
- "type": {
41498
- "text": ""
41499
- }
41500
- },
41501
- "parameters": [
41502
- {
41503
- "name": "root",
41504
- "type": {
41505
- "text": "ShadowRoot | HTMLElement"
41506
- },
41507
- "description": "The root element to search for focusable elements."
41508
- },
41509
- {
41510
- "name": "matches",
41511
- "default": "new Set()",
41512
- "type": {
41513
- "text": "Set<HTMLElement>"
41514
- },
41515
- "description": "The set of focusable elements."
41516
- }
41517
- ],
41518
- "description": "Recursively finds all focusable elements within the given root and its descendants.\n\nMake sure this is performant, as it will be called multiple times.",
41349
+ "description": "border color of the popover",
41350
+ "name": "--mdc-popover-border-color",
41519
41351
  "inheritedFrom": {
41520
41352
  "name": "Popover",
41521
- "module": "components/popover/popover.component.js"
41353
+ "module": "src/components/popover/popover.component.ts"
41522
41354
  }
41523
41355
  },
41524
41356
  {
41525
- "kind": "method",
41526
- "name": "setFocusableElements",
41527
- "privacy": "private",
41528
- "description": "Updates the list of focusable elements within the component's shadow root.",
41357
+ "description": "inverted background color of the popover",
41358
+ "name": "--mdc-popover-inverted-background-color",
41529
41359
  "inheritedFrom": {
41530
41360
  "name": "Popover",
41531
- "module": "components/popover/popover.component.js"
41361
+ "module": "src/components/popover/popover.component.ts"
41532
41362
  }
41533
41363
  },
41534
41364
  {
41535
- "kind": "method",
41536
- "name": "setInitialFocus",
41537
- "privacy": "public",
41538
- "parameters": [
41539
- {
41540
- "name": "elementIndexToReceiveFocus",
41541
- "default": "0",
41542
- "type": {
41543
- "text": "number"
41544
- },
41545
- "description": "The index of the preferable element to focus."
41546
- }
41547
- ],
41548
- "description": "Sets the initial focus within the container.",
41365
+ "description": "inverted border color of the popover",
41366
+ "name": "--mdc-popover-inverted-border-color",
41549
41367
  "inheritedFrom": {
41550
41368
  "name": "Popover",
41551
- "module": "components/popover/popover.component.js"
41369
+ "module": "src/components/popover/popover.component.ts"
41552
41370
  }
41553
41371
  },
41554
41372
  {
41555
- "kind": "method",
41556
- "name": "calculateNextIndex",
41557
- "privacy": "private",
41558
- "parameters": [
41559
- {
41560
- "name": "currentIndex",
41561
- "type": {
41562
- "text": "number"
41563
- },
41564
- "description": "The current index."
41565
- },
41566
- {
41567
- "name": "step",
41568
- "type": {
41569
- "text": "number"
41570
- },
41571
- "description": "The step to calculate the next index."
41572
- }
41573
- ],
41574
- "description": "Calculates the next index for the focus trap.",
41575
- "return": {
41576
- "type": {
41577
- "text": ""
41578
- }
41579
- },
41373
+ "description": "inverted text color of the popover",
41374
+ "name": "--mdc-popover-inverted-text-color",
41580
41375
  "inheritedFrom": {
41581
41376
  "name": "Popover",
41582
- "module": "components/popover/popover.component.js"
41377
+ "module": "src/components/popover/popover.component.ts"
41583
41378
  }
41584
41379
  },
41585
41380
  {
41586
- "kind": "method",
41587
- "name": "getDeepActiveElement",
41588
- "privacy": "private",
41589
- "description": "Returns the deepest active element in the shadow DOM.",
41590
- "return": {
41591
- "type": {
41592
- "text": ""
41593
- }
41594
- },
41381
+ "description": "elevation of the popover",
41382
+ "name": "--mdc-popover-elevation-3",
41595
41383
  "inheritedFrom": {
41596
41384
  "name": "Popover",
41597
- "module": "components/popover/popover.component.js"
41385
+ "module": "src/components/popover/popover.component.ts"
41598
41386
  }
41599
41387
  },
41600
41388
  {
41601
- "kind": "method",
41602
- "name": "findElement",
41389
+ "description": "max width of the popover",
41390
+ "name": "--mdc-popover-max-width",
41391
+ "inheritedFrom": {
41392
+ "name": "Popover",
41393
+ "module": "src/components/popover/popover.component.ts"
41394
+ }
41395
+ },
41396
+ {
41397
+ "description": "max height of the popover",
41398
+ "name": "--mdc-popover-max-height",
41399
+ "inheritedFrom": {
41400
+ "name": "Popover",
41401
+ "module": "src/components/popover/popover.component.ts"
41402
+ }
41403
+ },
41404
+ {
41405
+ "description": "width of the popover",
41406
+ "name": "--mdc-popover-width",
41407
+ "inheritedFrom": {
41408
+ "name": "Popover",
41409
+ "module": "src/components/popover/popover.component.ts"
41410
+ }
41411
+ }
41412
+ ],
41413
+ "members": [
41414
+ {
41415
+ "kind": "field",
41416
+ "name": "tooltipType",
41417
+ "type": {
41418
+ "text": "TooltipType"
41419
+ },
41420
+ "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.",
41421
+ "default": "'description'",
41422
+ "attribute": "tooltip-type",
41423
+ "reflects": true
41424
+ },
41425
+ {
41426
+ "kind": "field",
41427
+ "name": "defaultSlotNodes",
41428
+ "type": {
41429
+ "text": "Array<Node>"
41430
+ },
41431
+ "privacy": "private"
41432
+ },
41433
+ {
41434
+ "kind": "method",
41435
+ "name": "getTooltipText",
41603
41436
  "privacy": "private",
41604
- "parameters": [
41605
- {
41606
- "name": "activeElement",
41607
- "type": {
41608
- "text": "HTMLElement"
41609
- },
41610
- "description": "The active element."
41611
- }
41612
- ],
41613
- "description": "Finds the index of the active element within the focusable elements.",
41614
41437
  "return": {
41615
41438
  "type": {
41616
41439
  "text": ""
41617
41440
  }
41618
- },
41619
- "inheritedFrom": {
41620
- "name": "Popover",
41621
- "module": "components/popover/popover.component.js"
41622
41441
  }
41623
41442
  },
41624
41443
  {
41625
41444
  "kind": "method",
41626
- "name": "isEqualFocusNode",
41445
+ "name": "setTooltipType",
41627
41446
  "privacy": "private",
41447
+ "return": {
41448
+ "type": {
41449
+ "text": "void"
41450
+ }
41451
+ },
41628
41452
  "parameters": [
41629
41453
  {
41630
- "name": "activeElement",
41631
- "type": {
41632
- "text": "HTMLElement"
41633
- },
41634
- "description": "The active element."
41635
- },
41636
- {
41637
- "name": "element",
41454
+ "name": "type",
41638
41455
  "type": {
41639
- "text": "HTMLElement"
41456
+ "text": "TooltipType"
41640
41457
  },
41641
- "description": "The element to compare."
41458
+ "description": "The type to set."
41642
41459
  }
41643
41460
  ],
41644
- "description": "Checks if the active element is equal to the given element.",
41461
+ "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."
41462
+ },
41463
+ {
41464
+ "kind": "method",
41465
+ "name": "onIdUpdated",
41466
+ "privacy": "private",
41645
41467
  "return": {
41646
41468
  "type": {
41647
- "text": ""
41469
+ "text": "Promise<void>"
41648
41470
  }
41649
41471
  },
41650
- "inheritedFrom": {
41651
- "name": "Popover",
41652
- "module": "components/popover/popover.component.js"
41653
- }
41472
+ "description": "Updates the tooltip id if it is empty."
41654
41473
  },
41655
41474
  {
41656
41475
  "kind": "method",
41657
- "name": "trapFocus",
41476
+ "name": "onPlacementUpdated",
41658
41477
  "privacy": "private",
41659
- "parameters": [
41660
- {
41661
- "name": "event",
41662
- "type": {
41663
- "text": "KeyboardEvent"
41664
- }
41665
- },
41666
- {
41667
- "description": "The direction of the focus trap.\nIf true, the focus will be trapped in the previous element.",
41668
- "name": "direction"
41478
+ "return": {
41479
+ "type": {
41480
+ "text": "void"
41669
41481
  }
41670
- ],
41671
- "description": "Traps focus within the container.",
41672
- "inheritedFrom": {
41673
- "name": "Popover",
41674
- "module": "components/popover/popover.component.js"
41675
- }
41482
+ },
41483
+ "description": "Updates the placement attribute if it is not a valid placement.\nOverriding the default from Popover"
41676
41484
  },
41677
41485
  {
41678
41486
  "kind": "method",
41679
- "name": "handleTabKeydown",
41487
+ "name": "onTooltipTypeUpdated",
41680
41488
  "privacy": "private",
41489
+ "return": {
41490
+ "type": {
41491
+ "text": "void"
41492
+ }
41493
+ },
41681
41494
  "parameters": [
41682
41495
  {
41683
- "name": "event",
41496
+ "name": "changedProperties",
41684
41497
  "type": {
41685
- "text": "KeyboardEvent"
41498
+ "text": "PropertyValues"
41686
41499
  },
41687
- "description": "The keyboard event."
41500
+ "description": "The changed properties."
41688
41501
  }
41689
41502
  ],
41690
- "description": "Traps focus within the container.",
41691
- "inheritedFrom": {
41692
- "name": "Popover",
41693
- "module": "components/popover/popover.component.js"
41694
- }
41503
+ "description": "Updates the tooltip type attribute and sets the appropriate aria props on the trigger component."
41695
41504
  },
41696
41505
  {
41697
41506
  "kind": "field",
41698
- "name": "id",
41507
+ "name": "zIndex",
41699
41508
  "type": {
41700
- "text": "string"
41509
+ "text": "number"
41701
41510
  },
41702
- "default": "''",
41703
- "description": "The unique ID of the popover.",
41704
- "attribute": "id",
41511
+ "description": "IMPLEMENT THIS IN YOUR COMPONENT.\n\nThe z-index of the component where the backdrop will be attached to.\nThe backdrop itself will have a z-index of `zIndex - 1`.",
41512
+ "default": "1000",
41513
+ "attribute": "z-index",
41705
41514
  "reflects": true,
41706
41515
  "inheritedFrom": {
41707
41516
  "name": "Popover",
@@ -41710,13 +41519,14 @@
41710
41519
  },
41711
41520
  {
41712
41521
  "kind": "field",
41713
- "name": "triggerID",
41522
+ "name": "preventScroll",
41714
41523
  "type": {
41715
- "text": "string"
41524
+ "text": "boolean"
41716
41525
  },
41717
- "default": "''",
41718
- "description": "The ID of the element that triggers the popover.\nThis attribute is required for the popover to work.",
41719
- "attribute": "triggerID",
41526
+ "privacy": "protected",
41527
+ "description": "Prevent outside scrolling when element is shown.\n\nIMPLEMENT THIS IN YOUR COMPONENT.",
41528
+ "default": "false",
41529
+ "attribute": "prevent-scroll",
41720
41530
  "reflects": true,
41721
41531
  "inheritedFrom": {
41722
41532
  "name": "Popover",
@@ -41724,30 +41534,18 @@
41724
41534
  }
41725
41535
  },
41726
41536
  {
41727
- "kind": "field",
41728
- "name": "trigger",
41729
- "type": {
41730
- "text": "PopoverTrigger"
41731
- },
41732
- "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**",
41733
- "default": "click",
41734
- "attribute": "trigger",
41735
- "reflects": true,
41537
+ "kind": "method",
41538
+ "name": "activatePreventScroll",
41539
+ "privacy": "protected",
41736
41540
  "inheritedFrom": {
41737
41541
  "name": "Popover",
41738
41542
  "module": "components/popover/popover.component.js"
41739
41543
  }
41740
41544
  },
41741
41545
  {
41742
- "kind": "field",
41743
- "name": "placement",
41744
- "type": {
41745
- "text": "PopoverPlacement"
41746
- },
41747
- "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**",
41748
- "default": "bottom",
41749
- "attribute": "placement",
41750
- "reflects": true,
41546
+ "kind": "method",
41547
+ "name": "deactivatePreventScroll",
41548
+ "privacy": "protected",
41751
41549
  "inheritedFrom": {
41752
41550
  "name": "Popover",
41753
41551
  "module": "components/popover/popover.component.js"
@@ -41755,13 +41553,14 @@
41755
41553
  },
41756
41554
  {
41757
41555
  "kind": "field",
41758
- "name": "color",
41556
+ "name": "focusTrap",
41759
41557
  "type": {
41760
- "text": "PopoverColor"
41558
+ "text": "boolean"
41761
41559
  },
41762
- "description": "Color of the popover\n- **tonal**\n- **contrast**",
41763
- "default": "tonal",
41764
- "attribute": "color",
41560
+ "privacy": "protected",
41561
+ "description": "Determines whether the focus trap is enabled.\nIf true, focus will be restricted to the content within this component.\n\nIMPLEMENT THIS IN YOUR COMPONENT.",
41562
+ "default": "false",
41563
+ "attribute": "focus-trap",
41765
41564
  "reflects": true,
41766
41565
  "inheritedFrom": {
41767
41566
  "name": "Popover",
@@ -41770,13 +41569,13 @@
41770
41569
  },
41771
41570
  {
41772
41571
  "kind": "field",
41773
- "name": "visible",
41572
+ "name": "shouldFocusTrapWrap",
41774
41573
  "type": {
41775
41574
  "text": "boolean"
41776
41575
  },
41777
- "description": "The visibility of the popover.",
41778
- "default": "false",
41779
- "attribute": "visible",
41576
+ "default": "true",
41577
+ "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.",
41578
+ "attribute": "should-focus-trap-wrap",
41780
41579
  "reflects": true,
41781
41580
  "inheritedFrom": {
41782
41581
  "name": "Popover",
@@ -41784,345 +41583,481 @@
41784
41583
  }
41785
41584
  },
41786
41585
  {
41787
- "kind": "field",
41788
- "name": "offset",
41789
- "type": {
41790
- "text": "number"
41791
- },
41792
- "description": "The offset of the popover.",
41793
- "default": "4",
41794
- "attribute": "offset",
41795
- "reflects": true,
41586
+ "kind": "method",
41587
+ "name": "setIsFocusTrapActivated",
41588
+ "privacy": "private",
41589
+ "parameters": [
41590
+ {
41591
+ "name": "isActivated",
41592
+ "type": {
41593
+ "text": "boolean"
41594
+ }
41595
+ }
41596
+ ],
41796
41597
  "inheritedFrom": {
41797
41598
  "name": "Popover",
41798
41599
  "module": "components/popover/popover.component.js"
41799
41600
  }
41800
41601
  },
41801
41602
  {
41802
- "kind": "field",
41803
- "name": "boundary",
41804
- "type": {
41805
- "text": "'clippingAncestors' | string"
41806
- },
41807
- "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",
41808
- "default": "'clippingAncestors'",
41809
- "attribute": "boundary",
41810
- "reflects": true,
41603
+ "kind": "method",
41604
+ "name": "activateFocusTrap",
41605
+ "privacy": "public",
41606
+ "description": "Activate the focus trap",
41811
41607
  "inheritedFrom": {
41812
41608
  "name": "Popover",
41813
41609
  "module": "components/popover/popover.component.js"
41814
41610
  }
41815
41611
  },
41816
41612
  {
41817
- "kind": "field",
41818
- "name": "boundaryRoot",
41819
- "type": {
41820
- "text": "'viewport' | 'document'"
41821
- },
41822
- "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.",
41823
- "default": "'viewport'",
41824
- "attribute": "boundary-root",
41825
- "reflects": true,
41613
+ "kind": "method",
41614
+ "name": "deactivateFocusTrap",
41615
+ "privacy": "public",
41616
+ "description": "Deactivate the focus trap.",
41826
41617
  "inheritedFrom": {
41827
41618
  "name": "Popover",
41828
41619
  "module": "components/popover/popover.component.js"
41829
41620
  }
41830
41621
  },
41831
41622
  {
41832
- "kind": "field",
41833
- "name": "boundaryPadding",
41834
- "type": {
41835
- "text": "number | undefined"
41836
- },
41837
- "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.",
41838
- "default": "undefined",
41839
- "attribute": "boundary-padding",
41840
- "reflects": true,
41841
- "inheritedFrom": {
41842
- "name": "Popover",
41843
- "module": "components/popover/popover.component.js"
41844
- }
41845
- },
41846
- {
41847
- "kind": "field",
41848
- "name": "showArrow",
41849
- "type": {
41850
- "text": "boolean"
41623
+ "kind": "method",
41624
+ "name": "hasNoClientRects",
41625
+ "privacy": "private",
41626
+ "parameters": [
41627
+ {
41628
+ "name": "element",
41629
+ "type": {
41630
+ "text": "HTMLElement"
41631
+ },
41632
+ "description": "The element to check."
41633
+ }
41634
+ ],
41635
+ "description": "Checks if the element has no client rectangles (not visible in the viewport).",
41636
+ "return": {
41637
+ "type": {
41638
+ "text": ""
41639
+ }
41851
41640
  },
41852
- "description": "The arrow visibility of the popover.",
41853
- "default": "false",
41854
- "attribute": "show-arrow",
41855
- "reflects": true,
41856
41641
  "inheritedFrom": {
41857
41642
  "name": "Popover",
41858
41643
  "module": "components/popover/popover.component.js"
41859
41644
  }
41860
41645
  },
41861
41646
  {
41862
- "kind": "field",
41863
- "name": "closeButton",
41864
- "type": {
41865
- "text": "boolean"
41647
+ "kind": "method",
41648
+ "name": "hasZeroDimensions",
41649
+ "privacy": "private",
41650
+ "parameters": [
41651
+ {
41652
+ "name": "element",
41653
+ "type": {
41654
+ "text": "HTMLElement"
41655
+ },
41656
+ "description": "The element to check."
41657
+ }
41658
+ ],
41659
+ "description": "Checks if the element has zero dimensions (width and height are both 0).",
41660
+ "return": {
41661
+ "type": {
41662
+ "text": ""
41663
+ }
41866
41664
  },
41867
- "description": "The close button visibility of the popover.",
41868
- "default": "false",
41869
- "attribute": "close-button",
41870
- "reflects": true,
41871
41665
  "inheritedFrom": {
41872
41666
  "name": "Popover",
41873
41667
  "module": "components/popover/popover.component.js"
41874
41668
  }
41875
41669
  },
41876
41670
  {
41877
- "kind": "field",
41878
- "name": "interactive",
41879
- "type": {
41880
- "text": "boolean"
41671
+ "kind": "method",
41672
+ "name": "isNotVisible",
41673
+ "privacy": "private",
41674
+ "parameters": [
41675
+ {
41676
+ "name": "element",
41677
+ "type": {
41678
+ "text": "HTMLElement"
41679
+ },
41680
+ "description": "The element to check."
41681
+ }
41682
+ ],
41683
+ "description": "Determines if the element is not visible in the DOM.",
41684
+ "return": {
41685
+ "type": {
41686
+ "text": ""
41687
+ }
41881
41688
  },
41882
- "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!",
41883
- "default": "false",
41884
- "attribute": "interactive",
41885
- "reflects": true,
41886
41689
  "inheritedFrom": {
41887
41690
  "name": "Popover",
41888
41691
  "module": "components/popover/popover.component.js"
41889
41692
  }
41890
41693
  },
41891
41694
  {
41892
- "kind": "field",
41893
- "name": "delay",
41894
- "type": {
41895
- "text": "string"
41695
+ "kind": "method",
41696
+ "name": "hasHiddenStyle",
41697
+ "privacy": "private",
41698
+ "parameters": [
41699
+ {
41700
+ "name": "element",
41701
+ "type": {
41702
+ "text": "HTMLElement"
41703
+ },
41704
+ "description": "The element to check."
41705
+ }
41706
+ ],
41707
+ "description": "Checks if the element has inline styles that make it hidden.",
41708
+ "return": {
41709
+ "type": {
41710
+ "text": ""
41711
+ }
41896
41712
  },
41897
- "description": "The delay of the show/hide popover.",
41898
- "default": "0,0",
41899
- "attribute": "delay",
41900
- "reflects": true,
41901
41713
  "inheritedFrom": {
41902
41714
  "name": "Popover",
41903
41715
  "module": "components/popover/popover.component.js"
41904
41716
  }
41905
41717
  },
41906
41718
  {
41907
- "kind": "field",
41908
- "name": "hideOnEscape",
41909
- "type": {
41910
- "text": "boolean"
41719
+ "kind": "method",
41720
+ "name": "hasComputedHidden",
41721
+ "privacy": "private",
41722
+ "parameters": [
41723
+ {
41724
+ "name": "element",
41725
+ "type": {
41726
+ "text": "HTMLElement"
41727
+ },
41728
+ "description": "The element to check."
41729
+ }
41730
+ ],
41731
+ "description": "Checks if the element is hidden by a computed style.",
41732
+ "return": {
41733
+ "type": {
41734
+ "text": ""
41735
+ }
41911
41736
  },
41912
- "description": "Hide popover on escape key press.",
41913
- "default": "false",
41914
- "attribute": "hide-on-escape",
41915
- "reflects": true,
41916
41737
  "inheritedFrom": {
41917
41738
  "name": "Popover",
41918
41739
  "module": "components/popover/popover.component.js"
41919
41740
  }
41920
41741
  },
41921
41742
  {
41922
- "kind": "field",
41923
- "name": "propagateEventOnEscape",
41924
- "type": {
41925
- "text": "boolean"
41743
+ "kind": "method",
41744
+ "name": "isHidden",
41745
+ "privacy": "private",
41746
+ "parameters": [
41747
+ {
41748
+ "name": "element",
41749
+ "type": {
41750
+ "text": "HTMLElement"
41751
+ },
41752
+ "description": "The element to check."
41753
+ }
41754
+ ],
41755
+ "description": "Checks if the element is hidden from the user.",
41756
+ "return": {
41757
+ "type": {
41758
+ "text": ""
41759
+ }
41926
41760
  },
41927
- "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.",
41928
- "default": "false",
41929
- "attribute": "propagate-event-on-escape",
41930
- "reflects": true,
41931
41761
  "inheritedFrom": {
41932
41762
  "name": "Popover",
41933
41763
  "module": "components/popover/popover.component.js"
41934
41764
  }
41935
41765
  },
41936
41766
  {
41937
- "kind": "field",
41938
- "name": "hideOnBlur",
41939
- "type": {
41940
- "text": "boolean"
41767
+ "kind": "method",
41768
+ "name": "isDisabled",
41769
+ "privacy": "private",
41770
+ "parameters": [
41771
+ {
41772
+ "name": "element",
41773
+ "type": {
41774
+ "text": "any"
41775
+ },
41776
+ "description": "The element to check."
41777
+ }
41778
+ ],
41779
+ "description": "Checks if the element is disabled.",
41780
+ "return": {
41781
+ "type": {
41782
+ "text": ""
41783
+ }
41941
41784
  },
41942
- "description": "Hide popover on blur.",
41943
- "default": "false",
41944
- "attribute": "hide-on-blur",
41945
- "reflects": true,
41946
41785
  "inheritedFrom": {
41947
41786
  "name": "Popover",
41948
41787
  "module": "components/popover/popover.component.js"
41949
41788
  }
41950
41789
  },
41951
41790
  {
41952
- "kind": "field",
41953
- "name": "hideOnOutsideClick",
41954
- "type": {
41955
- "text": "boolean"
41791
+ "kind": "method",
41792
+ "name": "isNotTabbable",
41793
+ "privacy": "private",
41794
+ "parameters": [
41795
+ {
41796
+ "name": "element",
41797
+ "type": {
41798
+ "text": "HTMLElement"
41799
+ },
41800
+ "description": "The element to check."
41801
+ }
41802
+ ],
41803
+ "description": "Checks if the element is not tabbable.",
41804
+ "return": {
41805
+ "type": {
41806
+ "text": ""
41807
+ }
41956
41808
  },
41957
- "description": "Hide on outside click of the popover.",
41958
- "default": "false",
41959
- "attribute": "hide-on-outside-click",
41960
- "reflects": true,
41961
41809
  "inheritedFrom": {
41962
41810
  "name": "Popover",
41963
41811
  "module": "components/popover/popover.component.js"
41964
41812
  }
41965
41813
  },
41966
41814
  {
41967
- "kind": "field",
41968
- "name": "focusBackToTrigger",
41969
- "type": {
41970
- "text": "boolean"
41815
+ "kind": "method",
41816
+ "name": "isInteractiveElement",
41817
+ "privacy": "private",
41818
+ "return": {
41819
+ "type": {
41820
+ "text": ""
41821
+ }
41971
41822
  },
41972
- "description": "The focus back to trigger after the popover hide.",
41973
- "default": "false",
41974
- "attribute": "focus-back-to-trigger",
41975
- "reflects": true,
41823
+ "parameters": [
41824
+ {
41825
+ "name": "element",
41826
+ "type": {
41827
+ "text": "HTMLElement"
41828
+ },
41829
+ "description": "The element to check."
41830
+ }
41831
+ ],
41832
+ "description": "Checks if the element is interactive.",
41976
41833
  "inheritedFrom": {
41977
41834
  "name": "Popover",
41978
41835
  "module": "components/popover/popover.component.js"
41979
41836
  }
41980
41837
  },
41981
41838
  {
41982
- "kind": "field",
41983
- "name": "backdrop",
41984
- "type": {
41985
- "text": "boolean"
41839
+ "kind": "method",
41840
+ "name": "isFocusable",
41841
+ "privacy": "private",
41842
+ "parameters": [
41843
+ {
41844
+ "name": "element",
41845
+ "type": {
41846
+ "text": "HTMLElement"
41847
+ },
41848
+ "description": "The element to check."
41849
+ }
41850
+ ],
41851
+ "description": "Checks if the element is focusable.",
41852
+ "return": {
41853
+ "type": {
41854
+ "text": ""
41855
+ }
41986
41856
  },
41987
- "description": "Determines whether the popover with backdrop.\nOther than popover and trigger element, the rest of the screen will be covered with a backdrop.",
41988
- "default": "false",
41989
- "attribute": "backdrop",
41990
- "reflects": true,
41991
41857
  "inheritedFrom": {
41992
41858
  "name": "Popover",
41993
41859
  "module": "components/popover/popover.component.js"
41994
41860
  }
41995
41861
  },
41996
41862
  {
41997
- "kind": "field",
41998
- "name": "backdropAppendTo",
41999
- "type": {
42000
- "text": "string | undefined"
41863
+ "kind": "method",
41864
+ "name": "findFocusable",
41865
+ "privacy": "private",
41866
+ "return": {
41867
+ "type": {
41868
+ "text": ""
41869
+ }
42001
41870
  },
42002
- "description": "Element ID the backdrop will be a append to (if `backdrop` is true).",
42003
- "default": "''",
42004
- "attribute": "backdrop-append-to",
42005
- "reflects": true,
41871
+ "parameters": [
41872
+ {
41873
+ "name": "root",
41874
+ "type": {
41875
+ "text": "ShadowRoot | HTMLElement"
41876
+ },
41877
+ "description": "The root element to search for focusable elements."
41878
+ },
41879
+ {
41880
+ "name": "matches",
41881
+ "default": "new Set()",
41882
+ "type": {
41883
+ "text": "Set<HTMLElement>"
41884
+ },
41885
+ "description": "The set of focusable elements."
41886
+ }
41887
+ ],
41888
+ "description": "Recursively finds all focusable elements within the given root and its descendants.\n\nMake sure this is performant, as it will be called multiple times.",
42006
41889
  "inheritedFrom": {
42007
41890
  "name": "Popover",
42008
41891
  "module": "components/popover/popover.component.js"
42009
41892
  }
42010
41893
  },
42011
41894
  {
42012
- "kind": "field",
42013
- "name": "isBackdropInvisible",
42014
- "type": {
42015
- "text": "boolean | undefined"
42016
- },
42017
- "description": "Set this property to false to make the backdrop a dimmed visible backdrop (if `backdrop` is true).\nThis is useful for cases where the popovers backdrop should get dimmed.",
42018
- "default": "true - default is to have a invisible backdrop",
42019
- "attribute": "is-backdrop-invisible",
42020
- "reflects": true,
41895
+ "kind": "method",
41896
+ "name": "setFocusableElements",
41897
+ "privacy": "private",
41898
+ "description": "Updates the list of focusable elements within the component's shadow root.",
42021
41899
  "inheritedFrom": {
42022
41900
  "name": "Popover",
42023
41901
  "module": "components/popover/popover.component.js"
42024
41902
  }
42025
41903
  },
42026
41904
  {
42027
- "kind": "field",
42028
- "name": "flip",
42029
- "type": {
42030
- "text": "boolean"
42031
- },
42032
- "description": "Changes the placement of popover to keep it in view when scrolling.",
42033
- "default": "true",
42034
- "attribute": "flip",
42035
- "reflects": true,
41905
+ "kind": "method",
41906
+ "name": "setInitialFocus",
41907
+ "privacy": "public",
41908
+ "parameters": [
41909
+ {
41910
+ "name": "elementIndexToReceiveFocus",
41911
+ "default": "0",
41912
+ "type": {
41913
+ "text": "number"
41914
+ },
41915
+ "description": "The index of the preferable element to focus."
41916
+ }
41917
+ ],
41918
+ "description": "Sets the initial focus within the container.",
42036
41919
  "inheritedFrom": {
42037
41920
  "name": "Popover",
42038
41921
  "module": "components/popover/popover.component.js"
42039
41922
  }
42040
41923
  },
42041
41924
  {
42042
- "kind": "field",
42043
- "name": "size",
42044
- "type": {
42045
- "text": "boolean"
41925
+ "kind": "method",
41926
+ "name": "calculateNextIndex",
41927
+ "privacy": "private",
41928
+ "parameters": [
41929
+ {
41930
+ "name": "currentIndex",
41931
+ "type": {
41932
+ "text": "number"
41933
+ },
41934
+ "description": "The current index."
41935
+ },
41936
+ {
41937
+ "name": "step",
41938
+ "type": {
41939
+ "text": "number"
41940
+ },
41941
+ "description": "The step to calculate the next index."
41942
+ }
41943
+ ],
41944
+ "description": "Calculates the next index for the focus trap.",
41945
+ "return": {
41946
+ "type": {
41947
+ "text": ""
41948
+ }
42046
41949
  },
42047
- "description": "Changes the size of popover to keep it in view when scrolling.",
42048
- "default": "false",
42049
- "attribute": "size",
42050
- "reflects": true,
42051
41950
  "inheritedFrom": {
42052
41951
  "name": "Popover",
42053
41952
  "module": "components/popover/popover.component.js"
42054
41953
  }
42055
41954
  },
42056
41955
  {
42057
- "kind": "field",
42058
- "name": "appendTo",
42059
- "type": {
42060
- "text": "string | undefined"
41956
+ "kind": "method",
41957
+ "name": "getDeepActiveElement",
41958
+ "privacy": "private",
41959
+ "description": "Returns the deepest active element in the shadow DOM.",
41960
+ "return": {
41961
+ "type": {
41962
+ "text": ""
41963
+ }
42061
41964
  },
42062
- "description": "Element ID that the popover append to.",
42063
- "default": "''",
42064
- "attribute": "append-to",
42065
- "reflects": true,
42066
41965
  "inheritedFrom": {
42067
41966
  "name": "Popover",
42068
41967
  "module": "components/popover/popover.component.js"
42069
41968
  }
42070
41969
  },
42071
41970
  {
42072
- "kind": "field",
42073
- "name": "closeButtonAriaLabel",
42074
- "type": {
42075
- "text": "string | null"
41971
+ "kind": "method",
41972
+ "name": "findElement",
41973
+ "privacy": "private",
41974
+ "parameters": [
41975
+ {
41976
+ "name": "activeElement",
41977
+ "type": {
41978
+ "text": "HTMLElement"
41979
+ },
41980
+ "description": "The active element."
41981
+ }
41982
+ ],
41983
+ "description": "Finds the index of the active element within the focusable elements.",
41984
+ "return": {
41985
+ "type": {
41986
+ "text": ""
41987
+ }
42076
41988
  },
42077
- "default": "null",
42078
- "description": "aria-label attribute to be set for close button accessibility.",
42079
- "attribute": "close-button-aria-label",
42080
- "reflects": true,
42081
41989
  "inheritedFrom": {
42082
41990
  "name": "Popover",
42083
41991
  "module": "components/popover/popover.component.js"
42084
41992
  }
42085
41993
  },
42086
41994
  {
42087
- "kind": "field",
42088
- "name": "strategy",
42089
- "type": {
42090
- "text": "'absolute' | 'fixed'"
41995
+ "kind": "method",
41996
+ "name": "isEqualFocusNode",
41997
+ "privacy": "private",
41998
+ "parameters": [
41999
+ {
42000
+ "name": "activeElement",
42001
+ "type": {
42002
+ "text": "HTMLElement"
42003
+ },
42004
+ "description": "The active element."
42005
+ },
42006
+ {
42007
+ "name": "element",
42008
+ "type": {
42009
+ "text": "HTMLElement"
42010
+ },
42011
+ "description": "The element to compare."
42012
+ }
42013
+ ],
42014
+ "description": "Checks if the active element is equal to the given element.",
42015
+ "return": {
42016
+ "type": {
42017
+ "text": ""
42018
+ }
42091
42019
  },
42092
- "description": "The strategy of the popover.\nThis determines how the popover is positioned in the DOM.\n- **absolute**: The popover is positioned absolutely relative to the nearest positioned ancestor.\n- **fixed**: The popover is positioned fixed relative to the viewport.\n\nDefault as `absolute` is recommended for most cases.\nIn cases where the popover gets clipped by a scrollable container,\nyou can set this to `fixed` to avoid clipping.",
42093
- "default": "absolute",
42094
- "attribute": "strategy",
42095
- "reflects": true,
42096
42020
  "inheritedFrom": {
42097
42021
  "name": "Popover",
42098
42022
  "module": "components/popover/popover.component.js"
42099
42023
  }
42100
42024
  },
42101
42025
  {
42102
- "kind": "field",
42103
- "name": "role",
42104
- "type": {
42105
- "text": "HTMLElement['role']"
42106
- },
42107
- "description": "Role of the popover",
42108
- "default": "dialog",
42109
- "attribute": "role",
42110
- "reflects": true,
42026
+ "kind": "method",
42027
+ "name": "trapFocus",
42028
+ "privacy": "private",
42029
+ "parameters": [
42030
+ {
42031
+ "name": "event",
42032
+ "type": {
42033
+ "text": "KeyboardEvent"
42034
+ }
42035
+ },
42036
+ {
42037
+ "description": "The direction of the focus trap.\nIf true, the focus will be trapped in the previous element.",
42038
+ "name": "direction"
42039
+ }
42040
+ ],
42041
+ "description": "Traps focus within the container.",
42111
42042
  "inheritedFrom": {
42112
42043
  "name": "Popover",
42113
42044
  "module": "components/popover/popover.component.js"
42114
42045
  }
42115
42046
  },
42116
42047
  {
42117
- "kind": "field",
42118
- "name": "ariaLabelledby",
42119
- "type": {
42120
- "text": "string | null"
42121
- },
42122
- "default": "null",
42123
- "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.",
42124
- "attribute": "aria-labelledby",
42125
- "reflects": true,
42048
+ "kind": "method",
42049
+ "name": "handleTabKeydown",
42050
+ "privacy": "private",
42051
+ "parameters": [
42052
+ {
42053
+ "name": "event",
42054
+ "type": {
42055
+ "text": "KeyboardEvent"
42056
+ },
42057
+ "description": "The keyboard event."
42058
+ }
42059
+ ],
42060
+ "description": "Traps focus within the container.",
42126
42061
  "inheritedFrom": {
42127
42062
  "name": "Popover",
42128
42063
  "module": "components/popover/popover.component.js"
@@ -42130,13 +42065,13 @@
42130
42065
  },
42131
42066
  {
42132
42067
  "kind": "field",
42133
- "name": "ariaDescribedby",
42068
+ "name": "id",
42134
42069
  "type": {
42135
- "text": "string | null"
42070
+ "text": "string"
42136
42071
  },
42137
- "default": "null",
42138
- "description": "aria-describedby of the popover.",
42139
- "attribute": "aria-describedby",
42072
+ "default": "''",
42073
+ "description": "The unique ID of the popover.",
42074
+ "attribute": "id",
42140
42075
  "reflects": true,
42141
42076
  "inheritedFrom": {
42142
42077
  "name": "Popover",
@@ -42145,13 +42080,13 @@
42145
42080
  },
42146
42081
  {
42147
42082
  "kind": "field",
42148
- "name": "disableAriaExpanded",
42083
+ "name": "triggerID",
42149
42084
  "type": {
42150
- "text": "boolean"
42085
+ "text": "string"
42151
42086
  },
42152
- "description": "Disable setting the `aria-expanded` attribute on trigger element.\n\nNote, when `disable-aria-expanded` is true\n - when its value change after first update to\n - `true`: popover will not remove the `aria-expanded` to avoid conflicts when there are more than one popover\n registered to the same trigger\n - `false`: check `aria-expanded` value and update it if necessary.\n - aria-haspopup will be disabled as well",
42153
- "default": "false",
42154
- "attribute": "disable-aria-expanded",
42087
+ "default": "''",
42088
+ "description": "The ID of the element that triggers the popover.\nThis attribute is required for the popover to work.",
42089
+ "attribute": "triggerID",
42155
42090
  "reflects": true,
42156
42091
  "inheritedFrom": {
42157
42092
  "name": "Popover",
@@ -42160,12 +42095,13 @@
42160
42095
  },
42161
42096
  {
42162
42097
  "kind": "field",
42163
- "name": "keepConnectedTooltipClosed",
42098
+ "name": "trigger",
42164
42099
  "type": {
42165
- "text": "boolean"
42100
+ "text": "PopoverTrigger"
42166
42101
  },
42167
- "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.",
42168
- "attribute": "keep-connected-tooltip-closed",
42102
+ "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**",
42103
+ "default": "click",
42104
+ "attribute": "trigger",
42169
42105
  "reflects": true,
42170
42106
  "inheritedFrom": {
42171
42107
  "name": "Popover",
@@ -42174,12 +42110,14 @@
42174
42110
  },
42175
42111
  {
42176
42112
  "kind": "field",
42177
- "name": "arrowElement",
42113
+ "name": "placement",
42178
42114
  "type": {
42179
- "text": "HTMLElement | null"
42115
+ "text": "PopoverPlacement"
42180
42116
  },
42181
- "privacy": "public",
42182
- "default": "null",
42117
+ "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**",
42118
+ "default": "bottom",
42119
+ "attribute": "placement",
42120
+ "reflects": true,
42183
42121
  "inheritedFrom": {
42184
42122
  "name": "Popover",
42185
42123
  "module": "components/popover/popover.component.js"
@@ -42187,12 +42125,14 @@
42187
42125
  },
42188
42126
  {
42189
42127
  "kind": "field",
42190
- "name": "triggerElement",
42128
+ "name": "color",
42191
42129
  "type": {
42192
- "text": "HTMLElement | null"
42130
+ "text": "PopoverColor"
42193
42131
  },
42194
- "privacy": "public",
42195
- "default": "null",
42132
+ "description": "Color of the popover\n- **tonal**\n- **contrast**",
42133
+ "default": "tonal",
42134
+ "attribute": "color",
42135
+ "reflects": true,
42196
42136
  "inheritedFrom": {
42197
42137
  "name": "Popover",
42198
42138
  "module": "components/popover/popover.component.js"
@@ -42200,17 +42140,14 @@
42200
42140
  },
42201
42141
  {
42202
42142
  "kind": "field",
42203
- "name": "storeConnectedTooltip",
42204
- "privacy": "private",
42205
- "inheritedFrom": {
42206
- "name": "Popover",
42207
- "module": "components/popover/popover.component.js"
42208
- }
42209
- },
42210
- {
42211
- "kind": "method",
42212
- "name": "setupTriggerRelatedElement",
42213
- "privacy": "private",
42143
+ "name": "visible",
42144
+ "type": {
42145
+ "text": "boolean"
42146
+ },
42147
+ "description": "The visibility of the popover.",
42148
+ "default": "false",
42149
+ "attribute": "visible",
42150
+ "reflects": true,
42214
42151
  "inheritedFrom": {
42215
42152
  "name": "Popover",
42216
42153
  "module": "components/popover/popover.component.js"
@@ -42218,8 +42155,14 @@
42218
42155
  },
42219
42156
  {
42220
42157
  "kind": "field",
42221
- "name": "cleanupTrigger",
42222
- "privacy": "private",
42158
+ "name": "offset",
42159
+ "type": {
42160
+ "text": "number"
42161
+ },
42162
+ "description": "The offset of the popover.",
42163
+ "default": "4",
42164
+ "attribute": "offset",
42165
+ "reflects": true,
42223
42166
  "inheritedFrom": {
42224
42167
  "name": "Popover",
42225
42168
  "module": "components/popover/popover.component.js"
@@ -42227,9 +42170,14 @@
42227
42170
  },
42228
42171
  {
42229
42172
  "kind": "field",
42230
- "name": "setupTriggerListeners",
42231
- "privacy": "private",
42232
- "description": "Sets up the trigger related event listeners, based on the trigger type.\nIncludes fallback for mouseenter trigger to also handle focusin for non-interactive popovers.",
42173
+ "name": "boundary",
42174
+ "type": {
42175
+ "text": "'clippingAncestors' | string"
42176
+ },
42177
+ "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",
42178
+ "default": "'clippingAncestors'",
42179
+ "attribute": "boundary",
42180
+ "reflects": true,
42233
42181
  "inheritedFrom": {
42234
42182
  "name": "Popover",
42235
42183
  "module": "components/popover/popover.component.js"
@@ -42237,9 +42185,14 @@
42237
42185
  },
42238
42186
  {
42239
42187
  "kind": "field",
42240
- "name": "removeTriggerListeners",
42241
- "privacy": "private",
42242
- "description": "Removes the trigger related event listeners.",
42188
+ "name": "boundaryRoot",
42189
+ "type": {
42190
+ "text": "'viewport' | 'document'"
42191
+ },
42192
+ "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.",
42193
+ "default": "'viewport'",
42194
+ "attribute": "boundary-root",
42195
+ "reflects": true,
42243
42196
  "inheritedFrom": {
42244
42197
  "name": "Popover",
42245
42198
  "module": "components/popover/popover.component.js"
@@ -42247,9 +42200,14 @@
42247
42200
  },
42248
42201
  {
42249
42202
  "kind": "field",
42250
- "name": "removeAllListeners",
42251
- "privacy": "private",
42252
- "description": "Removes all event listeners related to the popover.",
42203
+ "name": "boundaryPadding",
42204
+ "type": {
42205
+ "text": "number | undefined"
42206
+ },
42207
+ "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.",
42208
+ "default": "undefined",
42209
+ "attribute": "boundary-padding",
42210
+ "reflects": true,
42253
42211
  "inheritedFrom": {
42254
42212
  "name": "Popover",
42255
42213
  "module": "components/popover/popover.component.js"
@@ -42257,15 +42215,14 @@
42257
42215
  },
42258
42216
  {
42259
42217
  "kind": "field",
42260
- "name": "onOutsidePopoverClick",
42261
- "privacy": "protected",
42262
- "description": "Handles the outside click event to close the popover.",
42263
- "parameters": [
42264
- {
42265
- "description": "The mouse event.",
42266
- "name": "event"
42267
- }
42268
- ],
42218
+ "name": "showArrow",
42219
+ "type": {
42220
+ "text": "boolean"
42221
+ },
42222
+ "description": "The arrow visibility of the popover.",
42223
+ "default": "false",
42224
+ "attribute": "show-arrow",
42225
+ "reflects": true,
42269
42226
  "inheritedFrom": {
42270
42227
  "name": "Popover",
42271
42228
  "module": "components/popover/popover.component.js"
@@ -42273,15 +42230,14 @@
42273
42230
  },
42274
42231
  {
42275
42232
  "kind": "field",
42276
- "name": "onEscapeKeydown",
42277
- "privacy": "private",
42278
- "description": "Handles the escape keydown event to close the popover.\n\nThis method is attached to the document.",
42279
- "parameters": [
42280
- {
42281
- "description": "The keyboard event.",
42282
- "name": "event"
42283
- }
42284
- ],
42233
+ "name": "closeButton",
42234
+ "type": {
42235
+ "text": "boolean"
42236
+ },
42237
+ "description": "The close button visibility of the popover.",
42238
+ "default": "false",
42239
+ "attribute": "close-button",
42240
+ "reflects": true,
42285
42241
  "inheritedFrom": {
42286
42242
  "name": "Popover",
42287
42243
  "module": "components/popover/popover.component.js"
@@ -42289,41 +42245,29 @@
42289
42245
  },
42290
42246
  {
42291
42247
  "kind": "field",
42292
- "name": "onPopoverFocusOut",
42293
- "privacy": "private",
42294
- "description": "Handles the popover focus out event.",
42295
- "parameters": [
42296
- {
42297
- "description": "The focus event.",
42298
- "name": "event"
42299
- }
42300
- ],
42248
+ "name": "interactive",
42249
+ "type": {
42250
+ "text": "boolean"
42251
+ },
42252
+ "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!",
42253
+ "default": "false",
42254
+ "attribute": "interactive",
42255
+ "reflects": true,
42301
42256
  "inheritedFrom": {
42302
42257
  "name": "Popover",
42303
42258
  "module": "components/popover/popover.component.js"
42304
42259
  }
42305
42260
  },
42306
42261
  {
42307
- "kind": "method",
42308
- "name": "isOpenUpdated",
42309
- "privacy": "protected",
42310
- "parameters": [
42311
- {
42312
- "name": "oldValue",
42313
- "type": {
42314
- "text": "boolean"
42315
- },
42316
- "description": "The old value of the visible property."
42317
- },
42318
- {
42319
- "name": "newValue",
42320
- "type": {
42321
- "text": "boolean"
42322
- },
42323
- "description": "The new value of the visible property."
42324
- }
42325
- ],
42326
- "description": "Handles the popover visibility change and position the popover.\nHandles the exit event to close the popover.",
42262
+ "kind": "field",
42263
+ "name": "delay",
42264
+ "type": {
42265
+ "text": "string"
42266
+ },
42267
+ "description": "The delay of the show/hide popover.",
42268
+ "default": "0,0",
42269
+ "attribute": "delay",
42270
+ "reflects": true,
42327
42271
  "inheritedFrom": {
42328
42272
  "name": "Popover",
42329
42273
  "module": "components/popover/popover.component.js"
@@ -42331,9 +42275,14 @@
42331
42275
  },
42332
42276
  {
42333
42277
  "kind": "field",
42334
- "name": "handleMouseEnter",
42335
- "privacy": "private",
42336
- "description": "Handles mouse enter event on the trigger element.\nThis method sets the `isHovered` flag to true and shows the popover",
42278
+ "name": "hideOnEscape",
42279
+ "type": {
42280
+ "text": "boolean"
42281
+ },
42282
+ "description": "Hide popover on escape key press.",
42283
+ "default": "false",
42284
+ "attribute": "hide-on-escape",
42285
+ "reflects": true,
42337
42286
  "inheritedFrom": {
42338
42287
  "name": "Popover",
42339
42288
  "module": "components/popover/popover.component.js"
@@ -42341,9 +42290,14 @@
42341
42290
  },
42342
42291
  {
42343
42292
  "kind": "field",
42344
- "name": "handleMouseLeave",
42345
- "privacy": "private",
42346
- "description": "Handles mouse leave event on the trigger element.\nThis method sets the `isHovered` flag to false and starts the close delay\ntimer to hide the popover.",
42293
+ "name": "propagateEventOnEscape",
42294
+ "type": {
42295
+ "text": "boolean"
42296
+ },
42297
+ "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.",
42298
+ "default": "false",
42299
+ "attribute": "propagate-event-on-escape",
42300
+ "reflects": true,
42347
42301
  "inheritedFrom": {
42348
42302
  "name": "Popover",
42349
42303
  "module": "components/popover/popover.component.js"
@@ -42351,9 +42305,14 @@
42351
42305
  },
42352
42306
  {
42353
42307
  "kind": "field",
42354
- "name": "handleFocusOut",
42355
- "privacy": "private",
42356
- "description": "Handles focus out event on the trigger element.\nThis method checks if the popover is not hovered and hides the popover.\nIf the popover is hovered, it will not hide the popover.",
42308
+ "name": "hideOnBlur",
42309
+ "type": {
42310
+ "text": "boolean"
42311
+ },
42312
+ "description": "Hide popover on blur.",
42313
+ "default": "false",
42314
+ "attribute": "hide-on-blur",
42315
+ "reflects": true,
42357
42316
  "inheritedFrom": {
42358
42317
  "name": "Popover",
42359
42318
  "module": "components/popover/popover.component.js"
@@ -42361,9 +42320,14 @@
42361
42320
  },
42362
42321
  {
42363
42322
  "kind": "field",
42364
- "name": "handleFocusIn",
42365
- "privacy": "private",
42366
- "description": "Handles focus in event on the trigger element.\nThis method checks if the trigger element has visible focus or is being hovered.",
42323
+ "name": "hideOnOutsideClick",
42324
+ "type": {
42325
+ "text": "boolean"
42326
+ },
42327
+ "description": "Hide on outside click of the popover.",
42328
+ "default": "false",
42329
+ "attribute": "hide-on-outside-click",
42330
+ "reflects": true,
42367
42331
  "inheritedFrom": {
42368
42332
  "name": "Popover",
42369
42333
  "module": "components/popover/popover.component.js"
@@ -42371,9 +42335,14 @@
42371
42335
  },
42372
42336
  {
42373
42337
  "kind": "field",
42374
- "name": "startCloseDelay",
42375
- "privacy": "private",
42376
- "description": "Starts the close delay timer.\nIf the popover is not interactive, it will close the popover after the delay.",
42338
+ "name": "focusBackToTrigger",
42339
+ "type": {
42340
+ "text": "boolean"
42341
+ },
42342
+ "description": "The focus back to trigger after the popover hide.",
42343
+ "default": "false",
42344
+ "attribute": "focus-back-to-trigger",
42345
+ "reflects": true,
42377
42346
  "inheritedFrom": {
42378
42347
  "name": "Popover",
42379
42348
  "module": "components/popover/popover.component.js"
@@ -42381,9 +42350,14 @@
42381
42350
  },
42382
42351
  {
42383
42352
  "kind": "field",
42384
- "name": "cancelCloseDelay",
42385
- "privacy": "private",
42386
- "description": "Cancels the close delay timer.",
42353
+ "name": "backdrop",
42354
+ "type": {
42355
+ "text": "boolean"
42356
+ },
42357
+ "description": "Determines whether the popover with backdrop.\nOther than popover and trigger element, the rest of the screen will be covered with a backdrop.",
42358
+ "default": "false",
42359
+ "attribute": "backdrop",
42360
+ "reflects": true,
42387
42361
  "inheritedFrom": {
42388
42362
  "name": "Popover",
42389
42363
  "module": "components/popover/popover.component.js"
@@ -42391,9 +42365,14 @@
42391
42365
  },
42392
42366
  {
42393
42367
  "kind": "field",
42394
- "name": "show",
42395
- "privacy": "public",
42396
- "description": "Shows the popover.",
42368
+ "name": "backdropAppendTo",
42369
+ "type": {
42370
+ "text": "string | undefined"
42371
+ },
42372
+ "description": "Element ID the backdrop will be a append to (if `backdrop` is true).",
42373
+ "default": "''",
42374
+ "attribute": "backdrop-append-to",
42375
+ "reflects": true,
42397
42376
  "inheritedFrom": {
42398
42377
  "name": "Popover",
42399
42378
  "module": "components/popover/popover.component.js"
@@ -42401,9 +42380,14 @@
42401
42380
  },
42402
42381
  {
42403
42382
  "kind": "field",
42404
- "name": "hide",
42405
- "privacy": "public",
42406
- "description": "Hides the popover.",
42383
+ "name": "isBackdropInvisible",
42384
+ "type": {
42385
+ "text": "boolean | undefined"
42386
+ },
42387
+ "description": "Set this property to false to make the backdrop a dimmed visible backdrop (if `backdrop` is true).\nThis is useful for cases where the popovers backdrop should get dimmed.",
42388
+ "default": "true - default is to have a invisible backdrop",
42389
+ "attribute": "is-backdrop-invisible",
42390
+ "reflects": true,
42407
42391
  "inheritedFrom": {
42408
42392
  "name": "Popover",
42409
42393
  "module": "components/popover/popover.component.js"
@@ -42411,9 +42395,14 @@
42411
42395
  },
42412
42396
  {
42413
42397
  "kind": "field",
42414
- "name": "togglePopoverVisible",
42415
- "privacy": "public",
42416
- "description": "Toggles the popover visibility.",
42398
+ "name": "flip",
42399
+ "type": {
42400
+ "text": "boolean"
42401
+ },
42402
+ "description": "Changes the placement of popover to keep it in view when scrolling.",
42403
+ "default": "true",
42404
+ "attribute": "flip",
42405
+ "reflects": true,
42417
42406
  "inheritedFrom": {
42418
42407
  "name": "Popover",
42419
42408
  "module": "components/popover/popover.component.js"
@@ -42421,9 +42410,14 @@
42421
42410
  },
42422
42411
  {
42423
42412
  "kind": "field",
42424
- "name": "positionPopover",
42425
- "privacy": "private",
42426
- "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.",
42413
+ "name": "size",
42414
+ "type": {
42415
+ "text": "boolean"
42416
+ },
42417
+ "description": "Changes the size of popover to keep it in view when scrolling.",
42418
+ "default": "false",
42419
+ "attribute": "size",
42420
+ "reflects": true,
42427
42421
  "inheritedFrom": {
42428
42422
  "name": "Popover",
42429
42423
  "module": "components/popover/popover.component.js"
@@ -42431,15 +42425,14 @@
42431
42425
  },
42432
42426
  {
42433
42427
  "kind": "field",
42434
- "name": "findClosestPopover",
42435
- "privacy": "protected",
42436
- "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.",
42437
- "parameters": [
42438
- {
42439
- "description": "The element to start searching from.",
42440
- "name": "element"
42441
- }
42442
- ],
42428
+ "name": "appendTo",
42429
+ "type": {
42430
+ "text": "string | undefined"
42431
+ },
42432
+ "description": "Element ID that the popover append to.",
42433
+ "default": "''",
42434
+ "attribute": "append-to",
42435
+ "reflects": true,
42443
42436
  "inheritedFrom": {
42444
42437
  "name": "Popover",
42445
42438
  "module": "components/popover/popover.component.js"
@@ -42447,883 +42440,924 @@
42447
42440
  },
42448
42441
  {
42449
42442
  "kind": "field",
42450
- "name": "utils",
42451
- "default": "new PopoverUtils(this)",
42443
+ "name": "closeButtonAriaLabel",
42444
+ "type": {
42445
+ "text": "string | null"
42446
+ },
42447
+ "default": "null",
42448
+ "description": "aria-label attribute to be set for close button accessibility.",
42449
+ "attribute": "close-button-aria-label",
42450
+ "reflects": true,
42452
42451
  "inheritedFrom": {
42453
42452
  "name": "Popover",
42454
42453
  "module": "components/popover/popover.component.js"
42455
42454
  }
42456
- }
42457
- ],
42458
- "events": [
42455
+ },
42459
42456
  {
42460
- "description": "(React: onShown) This event is dispatched when the tooltip is shown",
42461
- "name": "shown",
42462
- "reactName": "onShown",
42457
+ "kind": "field",
42458
+ "name": "strategy",
42459
+ "type": {
42460
+ "text": "'absolute' | 'fixed'"
42461
+ },
42462
+ "description": "The strategy of the popover.\nThis determines how the popover is positioned in the DOM.\n- **absolute**: The popover is positioned absolutely relative to the nearest positioned ancestor.\n- **fixed**: The popover is positioned fixed relative to the viewport.\n\nDefault as `absolute` is recommended for most cases.\nIn cases where the popover gets clipped by a scrollable container,\nyou can set this to `fixed` to avoid clipping.",
42463
+ "default": "absolute",
42464
+ "attribute": "strategy",
42465
+ "reflects": true,
42463
42466
  "inheritedFrom": {
42464
42467
  "name": "Popover",
42465
- "module": "src/components/popover/popover.component.ts"
42468
+ "module": "components/popover/popover.component.js"
42466
42469
  }
42467
42470
  },
42468
42471
  {
42469
- "description": "(React: onHidden) This event is dispatched when the tooltip is hidden",
42470
- "name": "hidden",
42471
- "reactName": "onHidden",
42472
+ "kind": "field",
42473
+ "name": "role",
42474
+ "type": {
42475
+ "text": "HTMLElement['role']"
42476
+ },
42477
+ "description": "Role of the popover",
42478
+ "default": "dialog",
42479
+ "attribute": "role",
42480
+ "reflects": true,
42472
42481
  "inheritedFrom": {
42473
42482
  "name": "Popover",
42474
- "module": "src/components/popover/popover.component.ts"
42483
+ "module": "components/popover/popover.component.js"
42475
42484
  }
42476
42485
  },
42477
42486
  {
42478
- "description": "(React: onCreated) This event is dispatched when the tooltip is created (added to the DOM)",
42479
- "name": "created",
42480
- "reactName": "onCreated",
42487
+ "kind": "field",
42488
+ "name": "ariaLabelledby",
42489
+ "type": {
42490
+ "text": "string | null"
42491
+ },
42492
+ "default": "null",
42493
+ "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.",
42494
+ "attribute": "aria-labelledby",
42495
+ "reflects": true,
42481
42496
  "inheritedFrom": {
42482
42497
  "name": "Popover",
42483
- "module": "src/components/popover/popover.component.ts"
42498
+ "module": "components/popover/popover.component.js"
42484
42499
  }
42485
42500
  },
42486
42501
  {
42487
- "description": "(React: onDestroyed) This event is dispatched when the tooltip is destroyed (removed from the DOM)",
42488
- "name": "destroyed",
42489
- "reactName": "onDestroyed",
42502
+ "kind": "field",
42503
+ "name": "ariaDescribedby",
42504
+ "type": {
42505
+ "text": "string | null"
42506
+ },
42507
+ "default": "null",
42508
+ "description": "aria-describedby of the popover.",
42509
+ "attribute": "aria-describedby",
42510
+ "reflects": true,
42490
42511
  "inheritedFrom": {
42491
42512
  "name": "Popover",
42492
- "module": "src/components/popover/popover.component.ts"
42513
+ "module": "components/popover/popover.component.js"
42493
42514
  }
42494
- }
42495
- ],
42496
- "attributes": [
42497
- {
42498
- "name": "tooltip-type",
42499
- "type": {
42500
- "text": "TooltipType"
42501
- },
42502
- "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.",
42503
- "default": "'description'",
42504
- "fieldName": "tooltipType"
42505
42515
  },
42506
42516
  {
42507
- "name": "should-focus-trap-wrap",
42517
+ "kind": "field",
42518
+ "name": "disableAriaExpanded",
42508
42519
  "type": {
42509
42520
  "text": "boolean"
42510
42521
  },
42511
- "default": "true",
42512
- "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.",
42513
- "fieldName": "shouldFocusTrapWrap",
42522
+ "description": "Disable setting the `aria-expanded` attribute on trigger element.\n\nNote, when `disable-aria-expanded` is true\n - when its value change after first update to\n - `true`: popover will not remove the `aria-expanded` to avoid conflicts when there are more than one popover\n registered to the same trigger\n - `false`: check `aria-expanded` value and update it if necessary.\n - aria-haspopup will be disabled as well",
42523
+ "default": "false",
42524
+ "attribute": "disable-aria-expanded",
42525
+ "reflects": true,
42514
42526
  "inheritedFrom": {
42515
42527
  "name": "Popover",
42516
- "module": "src/components/popover/popover.component.ts"
42528
+ "module": "components/popover/popover.component.js"
42517
42529
  }
42518
42530
  },
42519
42531
  {
42520
- "name": "id",
42532
+ "kind": "field",
42533
+ "name": "keepConnectedTooltipClosed",
42521
42534
  "type": {
42522
- "text": "string"
42535
+ "text": "boolean"
42523
42536
  },
42524
- "default": "''",
42525
- "description": "The unique ID of the popover.",
42526
- "fieldName": "id",
42537
+ "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.",
42538
+ "attribute": "keep-connected-tooltip-closed",
42539
+ "reflects": true,
42527
42540
  "inheritedFrom": {
42528
42541
  "name": "Popover",
42529
- "module": "src/components/popover/popover.component.ts"
42542
+ "module": "components/popover/popover.component.js"
42530
42543
  }
42531
42544
  },
42532
42545
  {
42533
- "name": "triggerID",
42546
+ "kind": "field",
42547
+ "name": "arrowElement",
42534
42548
  "type": {
42535
- "text": "string"
42549
+ "text": "HTMLElement | null"
42536
42550
  },
42537
- "default": "''",
42538
- "description": "The ID of the element that triggers the popover.\nThis attribute is required for the popover to work.",
42539
- "fieldName": "triggerID",
42551
+ "privacy": "public",
42552
+ "default": "null",
42540
42553
  "inheritedFrom": {
42541
42554
  "name": "Popover",
42542
- "module": "src/components/popover/popover.component.ts"
42555
+ "module": "components/popover/popover.component.js"
42543
42556
  }
42544
42557
  },
42545
42558
  {
42546
- "name": "trigger",
42559
+ "kind": "field",
42560
+ "name": "triggerElement",
42547
42561
  "type": {
42548
- "text": "PopoverTrigger"
42562
+ "text": "HTMLElement | null"
42549
42563
  },
42550
- "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**",
42551
- "default": "click",
42552
- "fieldName": "trigger",
42564
+ "privacy": "public",
42565
+ "default": "null",
42553
42566
  "inheritedFrom": {
42554
42567
  "name": "Popover",
42555
- "module": "src/components/popover/popover.component.ts"
42568
+ "module": "components/popover/popover.component.js"
42556
42569
  }
42557
42570
  },
42558
42571
  {
42559
- "name": "placement",
42560
- "type": {
42561
- "text": "PopoverPlacement"
42562
- },
42563
- "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**",
42564
- "default": "bottom",
42565
- "fieldName": "placement",
42572
+ "kind": "field",
42573
+ "name": "storeConnectedTooltip",
42574
+ "privacy": "private",
42566
42575
  "inheritedFrom": {
42567
42576
  "name": "Popover",
42568
- "module": "src/components/popover/popover.component.ts"
42577
+ "module": "components/popover/popover.component.js"
42569
42578
  }
42570
42579
  },
42571
42580
  {
42572
- "name": "color",
42573
- "type": {
42574
- "text": "PopoverColor"
42575
- },
42576
- "description": "Color of the popover\n- **tonal**\n- **contrast**",
42577
- "default": "tonal",
42578
- "fieldName": "color",
42581
+ "kind": "method",
42582
+ "name": "setupTriggerRelatedElement",
42583
+ "privacy": "private",
42579
42584
  "inheritedFrom": {
42580
42585
  "name": "Popover",
42581
- "module": "src/components/popover/popover.component.ts"
42586
+ "module": "components/popover/popover.component.js"
42582
42587
  }
42583
42588
  },
42584
42589
  {
42585
- "name": "visible",
42586
- "type": {
42587
- "text": "boolean"
42588
- },
42589
- "description": "The visibility of the popover.",
42590
- "default": "false",
42591
- "fieldName": "visible",
42590
+ "kind": "field",
42591
+ "name": "cleanupTrigger",
42592
+ "privacy": "private",
42592
42593
  "inheritedFrom": {
42593
42594
  "name": "Popover",
42594
- "module": "src/components/popover/popover.component.ts"
42595
+ "module": "components/popover/popover.component.js"
42595
42596
  }
42596
42597
  },
42597
42598
  {
42598
- "name": "offset",
42599
- "type": {
42600
- "text": "number"
42601
- },
42602
- "description": "The offset of the popover.",
42603
- "default": "4",
42604
- "fieldName": "offset",
42599
+ "kind": "field",
42600
+ "name": "setupTriggerListeners",
42601
+ "privacy": "private",
42602
+ "description": "Sets up the trigger related event listeners, based on the trigger type.\nIncludes fallback for mouseenter trigger to also handle focusin for non-interactive popovers.",
42605
42603
  "inheritedFrom": {
42606
42604
  "name": "Popover",
42607
- "module": "src/components/popover/popover.component.ts"
42605
+ "module": "components/popover/popover.component.js"
42608
42606
  }
42609
42607
  },
42610
42608
  {
42611
- "name": "boundary",
42612
- "type": {
42613
- "text": "'clippingAncestors' | string"
42614
- },
42615
- "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",
42616
- "default": "'clippingAncestors'",
42617
- "fieldName": "boundary",
42609
+ "kind": "field",
42610
+ "name": "removeTriggerListeners",
42611
+ "privacy": "private",
42612
+ "description": "Removes the trigger related event listeners.",
42618
42613
  "inheritedFrom": {
42619
42614
  "name": "Popover",
42620
- "module": "src/components/popover/popover.component.ts"
42615
+ "module": "components/popover/popover.component.js"
42621
42616
  }
42622
42617
  },
42623
42618
  {
42624
- "name": "boundary-root",
42625
- "type": {
42626
- "text": "'viewport' | 'document'"
42627
- },
42628
- "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.",
42629
- "default": "'viewport'",
42630
- "fieldName": "boundaryRoot",
42619
+ "kind": "field",
42620
+ "name": "removeAllListeners",
42621
+ "privacy": "private",
42622
+ "description": "Removes all event listeners related to the popover.",
42631
42623
  "inheritedFrom": {
42632
42624
  "name": "Popover",
42633
- "module": "src/components/popover/popover.component.ts"
42625
+ "module": "components/popover/popover.component.js"
42634
42626
  }
42635
42627
  },
42636
42628
  {
42637
- "name": "boundary-padding",
42638
- "type": {
42639
- "text": "number | undefined"
42640
- },
42641
- "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.",
42642
- "default": "undefined",
42643
- "fieldName": "boundaryPadding",
42629
+ "kind": "field",
42630
+ "name": "onOutsidePopoverClick",
42631
+ "privacy": "protected",
42632
+ "description": "Handles the outside click event to close the popover.",
42633
+ "parameters": [
42634
+ {
42635
+ "description": "The mouse event.",
42636
+ "name": "event"
42637
+ }
42638
+ ],
42644
42639
  "inheritedFrom": {
42645
42640
  "name": "Popover",
42646
- "module": "src/components/popover/popover.component.ts"
42641
+ "module": "components/popover/popover.component.js"
42647
42642
  }
42648
42643
  },
42649
42644
  {
42650
- "name": "focus-trap",
42651
- "type": {
42652
- "text": "boolean"
42653
- },
42654
- "description": "Determines whether the focus trap is enabled.\nIf true, focus will be restricted to the content within this component.",
42655
- "default": "false",
42656
- "fieldName": "focusTrap",
42645
+ "kind": "field",
42646
+ "name": "onEscapeKeydown",
42647
+ "privacy": "private",
42648
+ "description": "Handles the escape keydown event to close the popover.\n\nThis method is attached to the document.",
42649
+ "parameters": [
42650
+ {
42651
+ "description": "The keyboard event.",
42652
+ "name": "event"
42653
+ }
42654
+ ],
42657
42655
  "inheritedFrom": {
42658
42656
  "name": "Popover",
42659
- "module": "src/components/popover/popover.component.ts"
42657
+ "module": "components/popover/popover.component.js"
42660
42658
  }
42661
42659
  },
42662
42660
  {
42663
- "name": "prevent-scroll",
42664
- "type": {
42665
- "text": "boolean"
42666
- },
42667
- "description": "Prevent outside scrolling when popover is shown.",
42668
- "default": "false",
42669
- "fieldName": "preventScroll",
42661
+ "kind": "field",
42662
+ "name": "onPopoverFocusOut",
42663
+ "privacy": "private",
42664
+ "description": "Handles the popover focus out event.",
42665
+ "parameters": [
42666
+ {
42667
+ "description": "The focus event.",
42668
+ "name": "event"
42669
+ }
42670
+ ],
42670
42671
  "inheritedFrom": {
42671
42672
  "name": "Popover",
42672
- "module": "src/components/popover/popover.component.ts"
42673
+ "module": "components/popover/popover.component.js"
42673
42674
  }
42674
42675
  },
42675
42676
  {
42676
- "name": "show-arrow",
42677
- "type": {
42678
- "text": "boolean"
42679
- },
42680
- "description": "The arrow visibility of the popover.",
42681
- "default": "false",
42682
- "fieldName": "showArrow",
42677
+ "kind": "method",
42678
+ "name": "isOpenUpdated",
42679
+ "privacy": "protected",
42680
+ "parameters": [
42681
+ {
42682
+ "name": "oldValue",
42683
+ "type": {
42684
+ "text": "boolean"
42685
+ },
42686
+ "description": "The old value of the visible property."
42687
+ },
42688
+ {
42689
+ "name": "newValue",
42690
+ "type": {
42691
+ "text": "boolean"
42692
+ },
42693
+ "description": "The new value of the visible property."
42694
+ }
42695
+ ],
42696
+ "description": "Handles the popover visibility change and position the popover.\nHandles the exit event to close the popover.",
42683
42697
  "inheritedFrom": {
42684
42698
  "name": "Popover",
42685
- "module": "src/components/popover/popover.component.ts"
42699
+ "module": "components/popover/popover.component.js"
42686
42700
  }
42687
42701
  },
42688
42702
  {
42689
- "name": "close-button",
42690
- "type": {
42691
- "text": "boolean"
42692
- },
42693
- "description": "The close button visibility of the popover.",
42694
- "default": "false",
42695
- "fieldName": "closeButton",
42703
+ "kind": "field",
42704
+ "name": "handleMouseEnter",
42705
+ "privacy": "private",
42706
+ "description": "Handles mouse enter event on the trigger element.\nThis method sets the `isHovered` flag to true and shows the popover",
42696
42707
  "inheritedFrom": {
42697
42708
  "name": "Popover",
42698
- "module": "src/components/popover/popover.component.ts"
42709
+ "module": "components/popover/popover.component.js"
42699
42710
  }
42700
42711
  },
42701
42712
  {
42702
- "name": "interactive",
42703
- "type": {
42704
- "text": "boolean"
42705
- },
42706
- "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!",
42707
- "default": "false",
42708
- "fieldName": "interactive",
42713
+ "kind": "field",
42714
+ "name": "handleMouseLeave",
42715
+ "privacy": "private",
42716
+ "description": "Handles mouse leave event on the trigger element.\nThis method sets the `isHovered` flag to false and starts the close delay\ntimer to hide the popover.",
42709
42717
  "inheritedFrom": {
42710
42718
  "name": "Popover",
42711
- "module": "src/components/popover/popover.component.ts"
42719
+ "module": "components/popover/popover.component.js"
42712
42720
  }
42713
42721
  },
42714
42722
  {
42715
- "name": "delay",
42716
- "type": {
42717
- "text": "string"
42718
- },
42719
- "description": "The delay of the show/hide popover.",
42720
- "default": "0,0",
42721
- "fieldName": "delay",
42723
+ "kind": "field",
42724
+ "name": "handleFocusOut",
42725
+ "privacy": "private",
42726
+ "description": "Handles focus out event on the trigger element.\nThis method checks if the popover is not hovered and hides the popover.\nIf the popover is hovered, it will not hide the popover.",
42722
42727
  "inheritedFrom": {
42723
42728
  "name": "Popover",
42724
- "module": "src/components/popover/popover.component.ts"
42729
+ "module": "components/popover/popover.component.js"
42725
42730
  }
42726
42731
  },
42727
42732
  {
42728
- "name": "hide-on-escape",
42729
- "type": {
42730
- "text": "boolean"
42731
- },
42732
- "description": "Hide popover on escape key press.",
42733
- "default": "false",
42734
- "fieldName": "hideOnEscape",
42733
+ "kind": "field",
42734
+ "name": "handleFocusIn",
42735
+ "privacy": "private",
42736
+ "description": "Handles focus in event on the trigger element.\nThis method checks if the trigger element has visible focus or is being hovered.",
42735
42737
  "inheritedFrom": {
42736
42738
  "name": "Popover",
42737
- "module": "src/components/popover/popover.component.ts"
42739
+ "module": "components/popover/popover.component.js"
42738
42740
  }
42739
42741
  },
42740
42742
  {
42741
- "name": "propagate-event-on-escape",
42742
- "type": {
42743
- "text": "boolean"
42744
- },
42745
- "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.",
42746
- "default": "false",
42747
- "fieldName": "propagateEventOnEscape",
42743
+ "kind": "field",
42744
+ "name": "startCloseDelay",
42745
+ "privacy": "private",
42746
+ "description": "Starts the close delay timer.\nIf the popover is not interactive, it will close the popover after the delay.",
42748
42747
  "inheritedFrom": {
42749
42748
  "name": "Popover",
42750
- "module": "src/components/popover/popover.component.ts"
42749
+ "module": "components/popover/popover.component.js"
42751
42750
  }
42752
42751
  },
42753
42752
  {
42754
- "name": "hide-on-blur",
42755
- "type": {
42756
- "text": "boolean"
42757
- },
42758
- "description": "Hide popover on blur.",
42759
- "default": "false",
42760
- "fieldName": "hideOnBlur",
42753
+ "kind": "field",
42754
+ "name": "cancelCloseDelay",
42755
+ "privacy": "private",
42756
+ "description": "Cancels the close delay timer.",
42761
42757
  "inheritedFrom": {
42762
42758
  "name": "Popover",
42763
- "module": "src/components/popover/popover.component.ts"
42759
+ "module": "components/popover/popover.component.js"
42764
42760
  }
42765
42761
  },
42766
42762
  {
42767
- "name": "hide-on-outside-click",
42768
- "type": {
42769
- "text": "boolean"
42770
- },
42771
- "description": "Hide on outside click of the popover.",
42772
- "default": "false",
42773
- "fieldName": "hideOnOutsideClick",
42763
+ "kind": "field",
42764
+ "name": "show",
42765
+ "privacy": "public",
42766
+ "description": "Shows the popover.",
42774
42767
  "inheritedFrom": {
42775
42768
  "name": "Popover",
42776
- "module": "src/components/popover/popover.component.ts"
42769
+ "module": "components/popover/popover.component.js"
42777
42770
  }
42778
42771
  },
42779
42772
  {
42780
- "name": "focus-back-to-trigger",
42781
- "type": {
42782
- "text": "boolean"
42783
- },
42784
- "description": "The focus back to trigger after the popover hide.",
42785
- "default": "false",
42786
- "fieldName": "focusBackToTrigger",
42773
+ "kind": "field",
42774
+ "name": "hide",
42775
+ "privacy": "public",
42776
+ "description": "Hides the popover.",
42787
42777
  "inheritedFrom": {
42788
42778
  "name": "Popover",
42789
- "module": "src/components/popover/popover.component.ts"
42779
+ "module": "components/popover/popover.component.js"
42790
42780
  }
42791
42781
  },
42792
42782
  {
42793
- "name": "backdrop",
42794
- "type": {
42795
- "text": "boolean"
42796
- },
42797
- "description": "Determines whether the popover with backdrop.\nOther than popover and trigger element, the rest of the screen will be covered with a backdrop.",
42798
- "default": "false",
42799
- "fieldName": "backdrop",
42783
+ "kind": "field",
42784
+ "name": "togglePopoverVisible",
42785
+ "privacy": "public",
42786
+ "description": "Toggles the popover visibility.",
42800
42787
  "inheritedFrom": {
42801
42788
  "name": "Popover",
42802
- "module": "src/components/popover/popover.component.ts"
42789
+ "module": "components/popover/popover.component.js"
42803
42790
  }
42804
42791
  },
42805
42792
  {
42806
- "name": "backdrop-append-to",
42807
- "type": {
42808
- "text": "string | undefined"
42809
- },
42810
- "description": "Element ID the backdrop will be a append to (if `backdrop` is true).",
42811
- "default": "''",
42812
- "fieldName": "backdropAppendTo",
42793
+ "kind": "field",
42794
+ "name": "positionPopover",
42795
+ "privacy": "private",
42796
+ "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.",
42813
42797
  "inheritedFrom": {
42814
42798
  "name": "Popover",
42815
- "module": "src/components/popover/popover.component.ts"
42799
+ "module": "components/popover/popover.component.js"
42816
42800
  }
42817
42801
  },
42818
42802
  {
42819
- "name": "is-backdrop-invisible",
42820
- "type": {
42821
- "text": "boolean | undefined"
42822
- },
42823
- "description": "Set this property to false to make the backdrop a dimmed visible backdrop (if `backdrop` is true).\nThis is useful for cases where the popovers backdrop should get dimmed.",
42824
- "default": "true - default is to have a invisible backdrop",
42825
- "fieldName": "isBackdropInvisible",
42803
+ "kind": "field",
42804
+ "name": "findClosestPopover",
42805
+ "privacy": "protected",
42806
+ "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.",
42807
+ "parameters": [
42808
+ {
42809
+ "description": "The element to start searching from.",
42810
+ "name": "element"
42811
+ }
42812
+ ],
42826
42813
  "inheritedFrom": {
42827
42814
  "name": "Popover",
42828
- "module": "src/components/popover/popover.component.ts"
42815
+ "module": "components/popover/popover.component.js"
42829
42816
  }
42830
42817
  },
42831
42818
  {
42832
- "name": "flip",
42833
- "type": {
42834
- "text": "boolean"
42835
- },
42836
- "description": "Changes the placement of popover to keep it in view when scrolling.",
42837
- "default": "true",
42838
- "fieldName": "flip",
42819
+ "kind": "field",
42820
+ "name": "utils",
42821
+ "default": "new PopoverUtils(this)",
42822
+ "inheritedFrom": {
42823
+ "name": "Popover",
42824
+ "module": "components/popover/popover.component.js"
42825
+ }
42826
+ }
42827
+ ],
42828
+ "events": [
42829
+ {
42830
+ "description": "(React: onShown) This event is dispatched when the tooltip is shown",
42831
+ "name": "shown",
42832
+ "reactName": "onShown",
42839
42833
  "inheritedFrom": {
42840
42834
  "name": "Popover",
42841
42835
  "module": "src/components/popover/popover.component.ts"
42842
42836
  }
42843
42837
  },
42844
42838
  {
42845
- "name": "size",
42846
- "type": {
42847
- "text": "boolean"
42848
- },
42849
- "description": "Changes the size of popover to keep it in view when scrolling.",
42850
- "default": "false",
42851
- "fieldName": "size",
42839
+ "description": "(React: onHidden) This event is dispatched when the tooltip is hidden",
42840
+ "name": "hidden",
42841
+ "reactName": "onHidden",
42852
42842
  "inheritedFrom": {
42853
42843
  "name": "Popover",
42854
42844
  "module": "src/components/popover/popover.component.ts"
42855
42845
  }
42856
42846
  },
42857
42847
  {
42858
- "name": "z-index",
42859
- "type": {
42860
- "text": "number"
42861
- },
42862
- "description": "The z-index of the popover.",
42863
- "default": "1000",
42864
- "fieldName": "zIndex",
42848
+ "description": "(React: onCreated) This event is dispatched when the tooltip is created (added to the DOM)",
42849
+ "name": "created",
42850
+ "reactName": "onCreated",
42865
42851
  "inheritedFrom": {
42866
42852
  "name": "Popover",
42867
42853
  "module": "src/components/popover/popover.component.ts"
42868
42854
  }
42869
42855
  },
42870
42856
  {
42871
- "name": "append-to",
42872
- "type": {
42873
- "text": "string | undefined"
42874
- },
42875
- "description": "Element ID that the popover append to.",
42876
- "default": "''",
42877
- "fieldName": "appendTo",
42857
+ "description": "(React: onDestroyed) This event is dispatched when the tooltip is destroyed (removed from the DOM)",
42858
+ "name": "destroyed",
42859
+ "reactName": "onDestroyed",
42878
42860
  "inheritedFrom": {
42879
42861
  "name": "Popover",
42880
42862
  "module": "src/components/popover/popover.component.ts"
42881
42863
  }
42864
+ }
42865
+ ],
42866
+ "attributes": [
42867
+ {
42868
+ "name": "tooltip-type",
42869
+ "type": {
42870
+ "text": "TooltipType"
42871
+ },
42872
+ "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.",
42873
+ "default": "'description'",
42874
+ "fieldName": "tooltipType"
42882
42875
  },
42883
42876
  {
42884
- "name": "close-button-aria-label",
42877
+ "name": "should-focus-trap-wrap",
42885
42878
  "type": {
42886
- "text": "string | null"
42879
+ "text": "boolean"
42887
42880
  },
42888
- "default": "null",
42889
- "description": "aria-label attribute to be set for close button accessibility.",
42890
- "fieldName": "closeButtonAriaLabel",
42881
+ "default": "true",
42882
+ "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.",
42883
+ "fieldName": "shouldFocusTrapWrap",
42891
42884
  "inheritedFrom": {
42892
42885
  "name": "Popover",
42893
42886
  "module": "src/components/popover/popover.component.ts"
42894
42887
  }
42895
42888
  },
42896
42889
  {
42897
- "name": "strategy",
42890
+ "name": "id",
42898
42891
  "type": {
42899
- "text": "'absolute' | 'fixed'"
42892
+ "text": "string"
42900
42893
  },
42901
- "description": "The strategy of the popover.\nThis determines how the popover is positioned in the DOM.\n- **absolute**: The popover is positioned absolutely relative to the nearest positioned ancestor.\n- **fixed**: The popover is positioned fixed relative to the viewport.\n\nDefault as `absolute` is recommended for most cases.\nIn cases where the popover gets clipped by a scrollable container,\nyou can set this to `fixed` to avoid clipping.",
42902
- "default": "absolute",
42903
- "fieldName": "strategy",
42894
+ "default": "''",
42895
+ "description": "The unique ID of the popover.",
42896
+ "fieldName": "id",
42904
42897
  "inheritedFrom": {
42905
42898
  "name": "Popover",
42906
42899
  "module": "src/components/popover/popover.component.ts"
42907
42900
  }
42908
42901
  },
42909
42902
  {
42910
- "name": "role",
42903
+ "name": "triggerID",
42911
42904
  "type": {
42912
- "text": "HTMLElement['role']"
42905
+ "text": "string"
42913
42906
  },
42914
- "description": "Role of the popover",
42915
- "default": "dialog",
42916
- "fieldName": "role",
42907
+ "default": "''",
42908
+ "description": "The ID of the element that triggers the popover.\nThis attribute is required for the popover to work.",
42909
+ "fieldName": "triggerID",
42917
42910
  "inheritedFrom": {
42918
42911
  "name": "Popover",
42919
42912
  "module": "src/components/popover/popover.component.ts"
42920
42913
  }
42921
42914
  },
42922
42915
  {
42923
- "name": "aria-labelledby",
42916
+ "name": "trigger",
42924
42917
  "type": {
42925
- "text": "string | null"
42918
+ "text": "PopoverTrigger"
42926
42919
  },
42927
- "default": "null",
42928
- "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.",
42929
- "fieldName": "ariaLabelledby",
42920
+ "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**",
42921
+ "default": "click",
42922
+ "fieldName": "trigger",
42930
42923
  "inheritedFrom": {
42931
42924
  "name": "Popover",
42932
42925
  "module": "src/components/popover/popover.component.ts"
42933
42926
  }
42934
42927
  },
42935
42928
  {
42936
- "name": "aria-describedby",
42929
+ "name": "placement",
42937
42930
  "type": {
42938
- "text": "string | null"
42931
+ "text": "PopoverPlacement"
42939
42932
  },
42940
- "default": "null",
42941
- "description": "aria-describedby of the popover.",
42942
- "fieldName": "ariaDescribedby",
42933
+ "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**",
42934
+ "default": "bottom",
42935
+ "fieldName": "placement",
42943
42936
  "inheritedFrom": {
42944
42937
  "name": "Popover",
42945
42938
  "module": "src/components/popover/popover.component.ts"
42946
42939
  }
42947
42940
  },
42948
42941
  {
42949
- "name": "disable-aria-expanded",
42942
+ "name": "color",
42943
+ "type": {
42944
+ "text": "PopoverColor"
42945
+ },
42946
+ "description": "Color of the popover\n- **tonal**\n- **contrast**",
42947
+ "default": "tonal",
42948
+ "fieldName": "color",
42949
+ "inheritedFrom": {
42950
+ "name": "Popover",
42951
+ "module": "src/components/popover/popover.component.ts"
42952
+ }
42953
+ },
42954
+ {
42955
+ "name": "visible",
42950
42956
  "type": {
42951
42957
  "text": "boolean"
42952
42958
  },
42953
- "description": "Disable setting the `aria-expanded` attribute on trigger element.\n\nNote, when `disable-aria-expanded` is true\n - when its value change after first update to\n - `true`: popover will not remove the `aria-expanded` to avoid conflicts when there are more than one popover\n registered to the same trigger\n - `false`: check `aria-expanded` value and update it if necessary.\n - aria-haspopup will be disabled as well",
42959
+ "description": "The visibility of the popover.",
42954
42960
  "default": "false",
42955
- "fieldName": "disableAriaExpanded",
42961
+ "fieldName": "visible",
42956
42962
  "inheritedFrom": {
42957
42963
  "name": "Popover",
42958
42964
  "module": "src/components/popover/popover.component.ts"
42959
42965
  }
42960
42966
  },
42961
42967
  {
42962
- "name": "keep-connected-tooltip-closed",
42968
+ "name": "offset",
42963
42969
  "type": {
42964
- "text": "boolean"
42970
+ "text": "number"
42965
42971
  },
42966
- "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.",
42967
- "fieldName": "keepConnectedTooltipClosed",
42972
+ "description": "The offset of the popover.",
42973
+ "default": "4",
42974
+ "fieldName": "offset",
42968
42975
  "inheritedFrom": {
42969
42976
  "name": "Popover",
42970
42977
  "module": "src/components/popover/popover.component.ts"
42971
42978
  }
42972
- }
42973
- ],
42974
- "superclass": {
42975
- "name": "Popover",
42976
- "module": "/src/components/popover/popover.component"
42977
- },
42978
- "tagName": "mdc-tooltip",
42979
- "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 */",
42980
- "customElement": true,
42981
- "slots": [
42979
+ },
42982
42980
  {
42983
- "description": "Default slot for the popover content",
42984
- "name": "",
42981
+ "name": "boundary",
42982
+ "type": {
42983
+ "text": "'clippingAncestors' | string"
42984
+ },
42985
+ "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",
42986
+ "default": "'clippingAncestors'",
42987
+ "fieldName": "boundary",
42985
42988
  "inheritedFrom": {
42986
42989
  "name": "Popover",
42987
42990
  "module": "src/components/popover/popover.component.ts"
42988
42991
  }
42989
- }
42990
- ]
42991
- }
42992
- ],
42993
- "exports": [
42994
- {
42995
- "kind": "js",
42996
- "name": "default",
42997
- "declaration": {
42998
- "name": "Tooltip",
42999
- "module": "components/tooltip/tooltip.component.js"
43000
- }
43001
- }
43002
- ]
43003
- },
43004
- {
43005
- "kind": "javascript-module",
43006
- "path": "components/typewriter/typewriter.component.js",
43007
- "declarations": [
43008
- {
43009
- "kind": "class",
43010
- "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",
43011
- "name": "Typewriter",
43012
- "cssParts": [
42992
+ },
43013
42993
  {
43014
- "description": "Container for the text element",
43015
- "name": "container"
42994
+ "name": "boundary-root",
42995
+ "type": {
42996
+ "text": "'viewport' | 'document'"
42997
+ },
42998
+ "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.",
42999
+ "default": "'viewport'",
43000
+ "fieldName": "boundaryRoot",
43001
+ "inheritedFrom": {
43002
+ "name": "Popover",
43003
+ "module": "src/components/popover/popover.component.ts"
43004
+ }
43016
43005
  },
43017
43006
  {
43018
- "description": "The text element (forwarded to mdc-text)",
43019
- "name": "text"
43020
- }
43021
- ],
43022
- "slots": [
43007
+ "name": "boundary-padding",
43008
+ "type": {
43009
+ "text": "number | undefined"
43010
+ },
43011
+ "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.",
43012
+ "default": "undefined",
43013
+ "fieldName": "boundaryPadding",
43014
+ "inheritedFrom": {
43015
+ "name": "Popover",
43016
+ "module": "src/components/popover/popover.component.ts"
43017
+ }
43018
+ },
43023
43019
  {
43024
- "description": "Default slot for text content",
43025
- "name": ""
43026
- }
43027
- ],
43028
- "members": [
43020
+ "name": "focus-trap",
43021
+ "type": {
43022
+ "text": "boolean"
43023
+ },
43024
+ "description": "Determines whether the focus trap is enabled.\nIf true, focus will be restricted to the content within this component.",
43025
+ "default": "false",
43026
+ "fieldName": "focusTrap",
43027
+ "inheritedFrom": {
43028
+ "name": "Popover",
43029
+ "module": "src/components/popover/popover.component.ts"
43030
+ }
43031
+ },
43029
43032
  {
43030
- "kind": "field",
43031
- "name": "type",
43033
+ "name": "prevent-scroll",
43032
43034
  "type": {
43033
- "text": "TextType"
43035
+ "text": "boolean"
43034
43036
  },
43035
- "privacy": "public",
43036
- "description": "Specifies the text style to be applied to the internal text component.\nUses the same types as the Text component.",
43037
- "default": "body-large-regular",
43038
- "attribute": "type",
43039
- "reflects": true
43037
+ "description": "Prevent outside scrolling when popover is shown.",
43038
+ "default": "false",
43039
+ "fieldName": "preventScroll",
43040
+ "inheritedFrom": {
43041
+ "name": "Popover",
43042
+ "module": "src/components/popover/popover.component.ts"
43043
+ }
43040
43044
  },
43041
43045
  {
43042
- "kind": "field",
43043
- "name": "tagname",
43046
+ "name": "show-arrow",
43044
43047
  "type": {
43045
- "text": "TagName | undefined"
43048
+ "text": "boolean"
43046
43049
  },
43047
- "privacy": "public",
43048
- "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.",
43049
- "attribute": "tagname",
43050
- "reflects": true
43050
+ "description": "The arrow visibility of the popover.",
43051
+ "default": "false",
43052
+ "fieldName": "showArrow",
43053
+ "inheritedFrom": {
43054
+ "name": "Popover",
43055
+ "module": "src/components/popover/popover.component.ts"
43056
+ }
43051
43057
  },
43052
43058
  {
43053
- "kind": "field",
43054
- "name": "speed",
43059
+ "name": "close-button",
43055
43060
  "type": {
43056
- "text": "TypewriterSpeed"
43061
+ "text": "boolean"
43057
43062
  },
43058
- "privacy": "public",
43059
- "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')",
43060
- "default": "'normal' (60ms per character)",
43061
- "attribute": "speed",
43062
- "reflects": true
43063
+ "description": "The close button visibility of the popover.",
43064
+ "default": "false",
43065
+ "fieldName": "closeButton",
43066
+ "inheritedFrom": {
43067
+ "name": "Popover",
43068
+ "module": "src/components/popover/popover.component.ts"
43069
+ }
43063
43070
  },
43064
43071
  {
43065
- "kind": "field",
43066
- "name": "maxQueueSize",
43072
+ "name": "interactive",
43067
43073
  "type": {
43068
- "text": "number"
43074
+ "text": "boolean"
43069
43075
  },
43070
- "privacy": "public",
43071
- "description": "Maximum number of text chunks that can be queued before oldest chunks are dropped.\nSet to prevent memory accumulation from excessive queuing.",
43072
- "default": "Number.MAX_SAFE_INTEGER (effectively unlimited)",
43073
- "attribute": "max-queue-size",
43074
- "reflects": true
43076
+ "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!",
43077
+ "default": "false",
43078
+ "fieldName": "interactive",
43079
+ "inheritedFrom": {
43080
+ "name": "Popover",
43081
+ "module": "src/components/popover/popover.component.ts"
43082
+ }
43075
43083
  },
43076
43084
  {
43077
- "kind": "method",
43078
- "name": "createTimeout",
43079
- "privacy": "private",
43080
- "return": {
43081
- "type": {
43082
- "text": "number"
43083
- }
43085
+ "name": "delay",
43086
+ "type": {
43087
+ "text": "string"
43084
43088
  },
43085
- "parameters": [
43086
- {
43087
- "name": "callback",
43088
- "type": {
43089
- "text": "() => void"
43090
- }
43091
- },
43092
- {
43093
- "name": "delay",
43094
- "type": {
43095
- "text": "number"
43096
- }
43097
- }
43098
- ],
43099
- "description": "Helper to create tracked setTimeout that will be cleaned up on disconnect"
43089
+ "description": "The delay of the show/hide popover.",
43090
+ "default": "0,0",
43091
+ "fieldName": "delay",
43092
+ "inheritedFrom": {
43093
+ "name": "Popover",
43094
+ "module": "src/components/popover/popover.component.ts"
43095
+ }
43100
43096
  },
43101
43097
  {
43102
- "kind": "method",
43103
- "name": "clearAllTimeouts",
43104
- "privacy": "private",
43105
- "return": {
43106
- "type": {
43107
- "text": "void"
43108
- }
43098
+ "name": "hide-on-escape",
43099
+ "type": {
43100
+ "text": "boolean"
43109
43101
  },
43110
- "description": "Clear all pending timeouts"
43102
+ "description": "Hide popover on escape key press.",
43103
+ "default": "false",
43104
+ "fieldName": "hideOnEscape",
43105
+ "inheritedFrom": {
43106
+ "name": "Popover",
43107
+ "module": "src/components/popover/popover.component.ts"
43108
+ }
43111
43109
  },
43112
43110
  {
43113
- "kind": "method",
43114
- "name": "clearQueue",
43115
- "privacy": "public",
43116
- "return": {
43117
- "type": {
43118
- "text": "void"
43119
- }
43111
+ "name": "propagate-event-on-escape",
43112
+ "type": {
43113
+ "text": "boolean"
43120
43114
  },
43121
- "description": "Clears the text chunk queue and stops processing\nUseful for resetting the component state"
43115
+ "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.",
43116
+ "default": "false",
43117
+ "fieldName": "propagateEventOnEscape",
43118
+ "inheritedFrom": {
43119
+ "name": "Popover",
43120
+ "module": "src/components/popover/popover.component.ts"
43121
+ }
43122
43122
  },
43123
43123
  {
43124
- "kind": "method",
43125
- "name": "addTextChunk",
43126
- "privacy": "public",
43127
- "return": {
43128
- "type": {
43129
- "text": "void"
43130
- }
43124
+ "name": "hide-on-blur",
43125
+ "type": {
43126
+ "text": "boolean"
43131
43127
  },
43132
- "parameters": [
43133
- {
43134
- "name": "text",
43135
- "type": {
43136
- "text": "string"
43137
- },
43138
- "description": "The text to add"
43139
- },
43140
- {
43141
- "name": "speed",
43142
- "optional": true,
43143
- "type": {
43144
- "text": "TypewriterSpeed"
43145
- },
43146
- "description": "Optional speed override for this chunk"
43147
- },
43148
- {
43149
- "name": "instant",
43150
- "optional": true,
43151
- "type": {
43152
- "text": "boolean"
43153
- },
43154
- "description": "If true, text appears instantly without animation"
43155
- }
43156
- ],
43157
- "description": "Adds a chunk of text to be typed out, optionally with a different speed"
43128
+ "description": "Hide popover on blur.",
43129
+ "default": "false",
43130
+ "fieldName": "hideOnBlur",
43131
+ "inheritedFrom": {
43132
+ "name": "Popover",
43133
+ "module": "src/components/popover/popover.component.ts"
43134
+ }
43158
43135
  },
43159
43136
  {
43160
- "kind": "method",
43161
- "name": "addInstantTextChunk",
43162
- "privacy": "public",
43163
- "return": {
43164
- "type": {
43165
- "text": "void"
43166
- }
43137
+ "name": "hide-on-outside-click",
43138
+ "type": {
43139
+ "text": "boolean"
43167
43140
  },
43168
- "parameters": [
43169
- {
43170
- "name": "text",
43171
- "type": {
43172
- "text": "string"
43173
- },
43174
- "description": "The text to add instantly"
43175
- }
43176
- ],
43177
- "description": "Adds a chunk of text instantly without typing animation"
43141
+ "description": "Hide on outside click of the popover.",
43142
+ "default": "false",
43143
+ "fieldName": "hideOnOutsideClick",
43144
+ "inheritedFrom": {
43145
+ "name": "Popover",
43146
+ "module": "src/components/popover/popover.component.ts"
43147
+ }
43178
43148
  },
43179
43149
  {
43180
- "kind": "method",
43181
- "name": "processChunkQueue",
43182
- "privacy": "private",
43183
- "return": {
43184
- "type": {
43185
- "text": "void"
43186
- }
43150
+ "name": "focus-back-to-trigger",
43151
+ "type": {
43152
+ "text": "boolean"
43187
43153
  },
43188
- "description": "Processes all chunks in the queue"
43154
+ "description": "The focus back to trigger after the popover hide.",
43155
+ "default": "false",
43156
+ "fieldName": "focusBackToTrigger",
43157
+ "inheritedFrom": {
43158
+ "name": "Popover",
43159
+ "module": "src/components/popover/popover.component.ts"
43160
+ }
43189
43161
  },
43190
43162
  {
43191
- "kind": "method",
43192
- "name": "processNextChunk",
43193
- "privacy": "private",
43194
- "return": {
43195
- "type": {
43196
- "text": "void"
43197
- }
43163
+ "name": "backdrop",
43164
+ "type": {
43165
+ "text": "boolean"
43198
43166
  },
43199
- "description": "Processes the next chunk in the queue"
43167
+ "description": "Determines whether the popover with backdrop.\nOther than popover and trigger element, the rest of the screen will be covered with a backdrop.",
43168
+ "default": "false",
43169
+ "fieldName": "backdrop",
43170
+ "inheritedFrom": {
43171
+ "name": "Popover",
43172
+ "module": "src/components/popover/popover.component.ts"
43173
+ }
43174
+ },
43175
+ {
43176
+ "name": "backdrop-append-to",
43177
+ "type": {
43178
+ "text": "string | undefined"
43179
+ },
43180
+ "description": "Element ID the backdrop will be a append to (if `backdrop` is true).",
43181
+ "default": "''",
43182
+ "fieldName": "backdropAppendTo",
43183
+ "inheritedFrom": {
43184
+ "name": "Popover",
43185
+ "module": "src/components/popover/popover.component.ts"
43186
+ }
43187
+ },
43188
+ {
43189
+ "name": "is-backdrop-invisible",
43190
+ "type": {
43191
+ "text": "boolean | undefined"
43192
+ },
43193
+ "description": "Set this property to false to make the backdrop a dimmed visible backdrop (if `backdrop` is true).\nThis is useful for cases where the popovers backdrop should get dimmed.",
43194
+ "default": "true - default is to have a invisible backdrop",
43195
+ "fieldName": "isBackdropInvisible",
43196
+ "inheritedFrom": {
43197
+ "name": "Popover",
43198
+ "module": "src/components/popover/popover.component.ts"
43199
+ }
43200
43200
  },
43201
43201
  {
43202
- "kind": "method",
43203
- "name": "getTypingDelayMs",
43204
- "privacy": "private",
43205
- "return": {
43206
- "type": {
43207
- "text": "number"
43208
- }
43202
+ "name": "flip",
43203
+ "type": {
43204
+ "text": "boolean"
43209
43205
  },
43210
- "description": "Gets the typing delay in milliseconds per character"
43206
+ "description": "Changes the placement of popover to keep it in view when scrolling.",
43207
+ "default": "true",
43208
+ "fieldName": "flip",
43209
+ "inheritedFrom": {
43210
+ "name": "Popover",
43211
+ "module": "src/components/popover/popover.component.ts"
43212
+ }
43211
43213
  },
43212
43214
  {
43213
- "kind": "method",
43214
- "name": "captureAndProcessContent",
43215
- "privacy": "private",
43216
- "return": {
43217
- "type": {
43218
- "text": "void"
43219
- }
43215
+ "name": "size",
43216
+ "type": {
43217
+ "text": "boolean"
43220
43218
  },
43221
- "description": "Captures slot content and starts typewriter animation"
43219
+ "description": "Changes the size of popover to keep it in view when scrolling.",
43220
+ "default": "false",
43221
+ "fieldName": "size",
43222
+ "inheritedFrom": {
43223
+ "name": "Popover",
43224
+ "module": "src/components/popover/popover.component.ts"
43225
+ }
43222
43226
  },
43223
43227
  {
43224
- "kind": "method",
43225
- "name": "startTypingAnimation",
43226
- "privacy": "private",
43227
- "return": {
43228
- "type": {
43229
- "text": "void"
43230
- }
43228
+ "name": "z-index",
43229
+ "type": {
43230
+ "text": "number"
43231
43231
  },
43232
- "parameters": [
43233
- {
43234
- "name": "onComplete",
43235
- "optional": true,
43236
- "type": {
43237
- "text": "() => void"
43238
- }
43239
- }
43240
- ],
43241
- "description": "Starts the typewriter animation"
43232
+ "description": "The z-index of the popover.",
43233
+ "default": "1000",
43234
+ "fieldName": "zIndex",
43235
+ "inheritedFrom": {
43236
+ "name": "Popover",
43237
+ "module": "src/components/popover/popover.component.ts"
43238
+ }
43242
43239
  },
43243
43240
  {
43244
- "kind": "method",
43245
- "name": "clearTypingAnimation",
43246
- "privacy": "private",
43247
- "return": {
43248
- "type": {
43249
- "text": "void"
43250
- }
43241
+ "name": "append-to",
43242
+ "type": {
43243
+ "text": "string | undefined"
43251
43244
  },
43252
- "description": "Clears the typing animation timeout"
43245
+ "description": "Element ID that the popover append to.",
43246
+ "default": "''",
43247
+ "fieldName": "appendTo",
43248
+ "inheritedFrom": {
43249
+ "name": "Popover",
43250
+ "module": "src/components/popover/popover.component.ts"
43251
+ }
43253
43252
  },
43254
43253
  {
43255
- "kind": "method",
43256
- "name": "handleSlotChange",
43257
- "privacy": "private",
43258
- "return": {
43259
- "type": {
43260
- "text": "void"
43261
- }
43254
+ "name": "close-button-aria-label",
43255
+ "type": {
43256
+ "text": "string | null"
43262
43257
  },
43263
- "description": "Handler for slotchange event"
43264
- }
43265
- ],
43266
- "events": [
43258
+ "default": "null",
43259
+ "description": "aria-label attribute to be set for close button accessibility.",
43260
+ "fieldName": "closeButtonAriaLabel",
43261
+ "inheritedFrom": {
43262
+ "name": "Popover",
43263
+ "module": "src/components/popover/popover.component.ts"
43264
+ }
43265
+ },
43267
43266
  {
43267
+ "name": "strategy",
43268
43268
  "type": {
43269
- "text": "CustomEvent"
43269
+ "text": "'absolute' | 'fixed'"
43270
+ },
43271
+ "description": "The strategy of the popover.\nThis determines how the popover is positioned in the DOM.\n- **absolute**: The popover is positioned absolutely relative to the nearest positioned ancestor.\n- **fixed**: The popover is positioned fixed relative to the viewport.\n\nDefault as `absolute` is recommended for most cases.\nIn cases where the popover gets clipped by a scrollable container,\nyou can set this to `fixed` to avoid clipping.",
43272
+ "default": "absolute",
43273
+ "fieldName": "strategy",
43274
+ "inheritedFrom": {
43275
+ "name": "Popover",
43276
+ "module": "src/components/popover/popover.component.ts"
43270
43277
  }
43271
43278
  },
43272
43279
  {
43273
- "description": "(React: onTypingComplete) Fired when the typewriter finishes typing all content. Detail: \\{ finalContent: string \\}",
43274
- "name": "typing-complete",
43275
- "reactName": "onTypingComplete"
43280
+ "name": "role",
43281
+ "type": {
43282
+ "text": "HTMLElement['role']"
43283
+ },
43284
+ "description": "Role of the popover",
43285
+ "default": "dialog",
43286
+ "fieldName": "role",
43287
+ "inheritedFrom": {
43288
+ "name": "Popover",
43289
+ "module": "src/components/popover/popover.component.ts"
43290
+ }
43276
43291
  },
43277
43292
  {
43278
- "description": "(React: onChange) Fired when the content of the typewriter changes. Detail: \\{ content: string, isTyping: boolean \\}",
43279
- "name": "change",
43280
- "reactName": "onChange"
43281
- }
43282
- ],
43283
- "attributes": [
43284
- {
43285
- "name": "type",
43293
+ "name": "aria-labelledby",
43286
43294
  "type": {
43287
- "text": "TextType"
43295
+ "text": "string | null"
43288
43296
  },
43289
- "description": "Specifies the text style to be applied to the internal text component.\nUses the same types as the Text component.",
43290
- "default": "body-large-regular",
43291
- "fieldName": "type"
43297
+ "default": "null",
43298
+ "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.",
43299
+ "fieldName": "ariaLabelledby",
43300
+ "inheritedFrom": {
43301
+ "name": "Popover",
43302
+ "module": "src/components/popover/popover.component.ts"
43303
+ }
43292
43304
  },
43293
43305
  {
43294
- "name": "tagname",
43306
+ "name": "aria-describedby",
43295
43307
  "type": {
43296
- "text": "TagName | undefined"
43308
+ "text": "string | null"
43297
43309
  },
43298
- "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.",
43299
- "fieldName": "tagname"
43310
+ "default": "null",
43311
+ "description": "aria-describedby of the popover.",
43312
+ "fieldName": "ariaDescribedby",
43313
+ "inheritedFrom": {
43314
+ "name": "Popover",
43315
+ "module": "src/components/popover/popover.component.ts"
43316
+ }
43300
43317
  },
43301
43318
  {
43302
- "name": "speed",
43319
+ "name": "disable-aria-expanded",
43303
43320
  "type": {
43304
- "text": "TypewriterSpeed"
43321
+ "text": "boolean"
43305
43322
  },
43306
- "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')",
43307
- "default": "'normal' (60ms per character)",
43308
- "fieldName": "speed"
43323
+ "description": "Disable setting the `aria-expanded` attribute on trigger element.\n\nNote, when `disable-aria-expanded` is true\n - when its value change after first update to\n - `true`: popover will not remove the `aria-expanded` to avoid conflicts when there are more than one popover\n registered to the same trigger\n - `false`: check `aria-expanded` value and update it if necessary.\n - aria-haspopup will be disabled as well",
43324
+ "default": "false",
43325
+ "fieldName": "disableAriaExpanded",
43326
+ "inheritedFrom": {
43327
+ "name": "Popover",
43328
+ "module": "src/components/popover/popover.component.ts"
43329
+ }
43309
43330
  },
43310
43331
  {
43311
- "name": "max-queue-size",
43332
+ "name": "keep-connected-tooltip-closed",
43312
43333
  "type": {
43313
- "text": "number"
43334
+ "text": "boolean"
43314
43335
  },
43315
- "description": "Maximum number of text chunks that can be queued before oldest chunks are dropped.\nSet to prevent memory accumulation from excessive queuing.",
43316
- "default": "Number.MAX_SAFE_INTEGER (effectively unlimited)",
43317
- "fieldName": "maxQueueSize"
43336
+ "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.",
43337
+ "fieldName": "keepConnectedTooltipClosed",
43338
+ "inheritedFrom": {
43339
+ "name": "Popover",
43340
+ "module": "src/components/popover/popover.component.ts"
43341
+ }
43318
43342
  }
43319
43343
  ],
43320
43344
  "superclass": {
43321
- "name": "Component",
43322
- "module": "/src/models"
43345
+ "name": "Popover",
43346
+ "module": "/src/components/popover/popover.component"
43323
43347
  },
43324
- "tagName": "mdc-typewriter",
43325
- "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 */",
43326
- "customElement": true
43348
+ "tagName": "mdc-tooltip",
43349
+ "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 */",
43350
+ "customElement": true,
43351
+ "slots": [
43352
+ {
43353
+ "description": "Default slot for the popover content",
43354
+ "name": "",
43355
+ "inheritedFrom": {
43356
+ "name": "Popover",
43357
+ "module": "src/components/popover/popover.component.ts"
43358
+ }
43359
+ }
43360
+ ]
43327
43361
  }
43328
43362
  ],
43329
43363
  "exports": [
@@ -43331,8 +43365,8 @@
43331
43365
  "kind": "js",
43332
43366
  "name": "default",
43333
43367
  "declaration": {
43334
- "name": "Typewriter",
43335
- "module": "components/typewriter/typewriter.component.js"
43368
+ "name": "Tooltip",
43369
+ "module": "components/tooltip/tooltip.component.js"
43336
43370
  }
43337
43371
  }
43338
43372
  ]
@@ -44483,6 +44517,59 @@
44483
44517
  }
44484
44518
  ]
44485
44519
  },
44520
+ {
44521
+ "kind": "javascript-module",
44522
+ "path": "utils/mixins/ControlledMixin.js",
44523
+ "declarations": [
44524
+ {
44525
+ "kind": "mixin",
44526
+ "description": "",
44527
+ "name": "ControlledMixin",
44528
+ "members": [
44529
+ {
44530
+ "kind": "field",
44531
+ "name": "controlled",
44532
+ "type": {
44533
+ "text": "boolean | undefined"
44534
+ },
44535
+ "description": "Indicates whether the component is controlled.\nWhen the component is controlled, it will not handle any interaction itself, e.g. toggling a checkbox.",
44536
+ "default": "undefined",
44537
+ "attribute": "controlled",
44538
+ "reflects": true
44539
+ }
44540
+ ],
44541
+ "attributes": [
44542
+ {
44543
+ "name": "controlled",
44544
+ "type": {
44545
+ "text": "boolean | undefined"
44546
+ },
44547
+ "description": "Indicates whether the component is controlled.\nWhen the component is controlled, it will not handle any interaction itself, e.g. toggling a checkbox.",
44548
+ "default": "undefined",
44549
+ "fieldName": "controlled"
44550
+ }
44551
+ ],
44552
+ "parameters": [
44553
+ {
44554
+ "name": "superClass",
44555
+ "type": {
44556
+ "text": "T"
44557
+ }
44558
+ }
44559
+ ]
44560
+ }
44561
+ ],
44562
+ "exports": [
44563
+ {
44564
+ "kind": "js",
44565
+ "name": "ControlledMixin",
44566
+ "declaration": {
44567
+ "name": "ControlledMixin",
44568
+ "module": "utils/mixins/ControlledMixin.js"
44569
+ }
44570
+ }
44571
+ ]
44572
+ },
44486
44573
  {
44487
44574
  "kind": "javascript-module",
44488
44575
  "path": "utils/mixins/DataAriaLabelMixin.js",