@momentum-design/components 0.133.40 → 0.134.1

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.
@@ -1846,6 +1846,44 @@
1846
1846
  "attribute": "autoplay",
1847
1847
  "reflects": true
1848
1848
  },
1849
+ {
1850
+ "kind": "method",
1851
+ "name": "createLottieInstance",
1852
+ "privacy": "private",
1853
+ "return": {
1854
+ "type": {
1855
+ "text": "void"
1856
+ }
1857
+ },
1858
+ "parameters": [
1859
+ {
1860
+ "name": "animationData",
1861
+ "type": {
1862
+ "text": "any"
1863
+ }
1864
+ }
1865
+ ],
1866
+ "description": "Create or re-create the lottie instance with the given animation data"
1867
+ },
1868
+ {
1869
+ "kind": "method",
1870
+ "name": "fetchAnimationFromUrl",
1871
+ "privacy": "private",
1872
+ "return": {
1873
+ "type": {
1874
+ "text": "void"
1875
+ }
1876
+ },
1877
+ "parameters": [
1878
+ {
1879
+ "name": "url",
1880
+ "type": {
1881
+ "text": "string"
1882
+ }
1883
+ }
1884
+ ],
1885
+ "description": "Fetch animation data from a URL"
1886
+ },
1849
1887
  {
1850
1888
  "kind": "method",
1851
1889
  "name": "getAnimationData",
@@ -1925,7 +1963,18 @@
1925
1963
  }
1926
1964
  }
1927
1965
  ],
1928
- "description": "Create new lotty instance for the loaded data"
1966
+ "description": "Create new lottie instance for the loaded data"
1967
+ },
1968
+ {
1969
+ "kind": "field",
1970
+ "name": "src",
1971
+ "type": {
1972
+ "text": "string | undefined"
1973
+ },
1974
+ "description": "URL pointing to a Lottie JSON animation file.\nWhen provided, it takes precedence over the `name` property.",
1975
+ "default": "undefined",
1976
+ "attribute": "src",
1977
+ "reflects": true
1929
1978
  }
1930
1979
  ],
1931
1980
  "events": [
@@ -1958,6 +2007,15 @@
1958
2007
  "default": "undefined",
1959
2008
  "fieldName": "name"
1960
2009
  },
2010
+ {
2011
+ "name": "src",
2012
+ "type": {
2013
+ "text": "string | undefined"
2014
+ },
2015
+ "description": "URL pointing to a Lottie JSON animation file.\nWhen provided, it takes precedence over the `name` property.",
2016
+ "default": "undefined",
2017
+ "fieldName": "src"
2018
+ },
1961
2019
  {
1962
2020
  "name": "loop",
1963
2021
  "type": {
@@ -19998,6 +20056,14 @@
19998
20056
  {
19999
20057
  "description": "The trailing button element that is displayed to clear the input field when the `trailingButton` property is set to true.",
20000
20058
  "name": "trailing-button"
20059
+ },
20060
+ {
20061
+ "description": "The footer element that contains the helper text and character counter.",
20062
+ "name": "input-footer"
20063
+ },
20064
+ {
20065
+ "description": "The character counter element.",
20066
+ "name": "character-counter"
20001
20067
  }
20002
20068
  ],
20003
20069
  "slots": [
@@ -20051,6 +20117,16 @@
20051
20117
  }
20052
20118
  ],
20053
20119
  "members": [
20120
+ {
20121
+ "kind": "method",
20122
+ "name": "announceCharacterLimitWarning",
20123
+ "privacy": "protected",
20124
+ "description": "Announces the character limit warning based on the current value length.\nIf the value length exceeds the max character limit, the help text is announced (if help text is present).\nIf the value length does not exceed the max character limit, then the character limit announcement is announced.",
20125
+ "inheritedFrom": {
20126
+ "name": "CharacterLimitMixin",
20127
+ "module": "utils/mixins/CharacterLimitMixin.js"
20128
+ }
20129
+ },
20054
20130
  {
20055
20131
  "kind": "field",
20056
20132
  "name": "autocapitalize",
@@ -20086,6 +20162,19 @@
20086
20162
  "module": "utils/mixins/AutoFocusOnMountMixin.js"
20087
20163
  }
20088
20164
  },
20165
+ {
20166
+ "kind": "field",
20167
+ "name": "characterLimitAnnouncement",
20168
+ "type": {
20169
+ "text": "string | undefined"
20170
+ },
20171
+ "description": "Template string for the announcement that will be read by screen readers when the max character limit is set.\nConsumers must use the placeholders `%{number-of-characters}` and `%{max-character-limit}` in the string,\nwhich will be dynamically replaced with the actual values at runtime.\nFor example: `%{number-of-characters} out of %{max-character-limit} characters are typed.`\nExample output: \"93 out of 140 characters are typed.\"",
20172
+ "attribute": "character-limit-announcement",
20173
+ "inheritedFrom": {
20174
+ "name": "CharacterLimitMixin",
20175
+ "module": "utils/mixins/CharacterLimitMixin.js"
20176
+ }
20177
+ },
20089
20178
  {
20090
20179
  "kind": "method",
20091
20180
  "name": "checkValidity",
@@ -20165,6 +20254,16 @@
20165
20254
  "module": "components/formfieldwrapper/formfieldwrapper.component.js"
20166
20255
  }
20167
20256
  },
20257
+ {
20258
+ "kind": "method",
20259
+ "name": "handleCharacterOverflowStateChange",
20260
+ "privacy": "protected",
20261
+ "description": "Handles the character overflow state change.\nDispatches the character overflow state change event if the character limit is exceeded or restored.",
20262
+ "inheritedFrom": {
20263
+ "name": "CharacterLimitMixin",
20264
+ "module": "utils/mixins/CharacterLimitMixin.js"
20265
+ }
20266
+ },
20168
20267
  {
20169
20268
  "kind": "method",
20170
20269
  "name": "handleKeyDown",
@@ -20255,6 +20354,19 @@
20255
20354
  "description": "The list attribute of the input field.\nIdentifies a list of pre-defined options to suggest to the user.",
20256
20355
  "attribute": "list"
20257
20356
  },
20357
+ {
20358
+ "kind": "field",
20359
+ "name": "maxCharacterLimit",
20360
+ "type": {
20361
+ "text": "number | undefined"
20362
+ },
20363
+ "description": "The maximum character limit for the field for character counter.",
20364
+ "attribute": "max-character-limit",
20365
+ "inheritedFrom": {
20366
+ "name": "CharacterLimitMixin",
20367
+ "module": "utils/mixins/CharacterLimitMixin.js"
20368
+ }
20369
+ },
20258
20370
  {
20259
20371
  "kind": "field",
20260
20372
  "name": "maxlength",
@@ -20331,6 +20443,16 @@
20331
20443
  "module": "components/formfieldwrapper/formfieldwrapper.component.js"
20332
20444
  }
20333
20445
  },
20446
+ {
20447
+ "kind": "method",
20448
+ "name": "renderCharacterCounter",
20449
+ "privacy": "protected",
20450
+ "description": "Renders the character counter element.",
20451
+ "inheritedFrom": {
20452
+ "name": "CharacterLimitMixin",
20453
+ "module": "utils/mixins/CharacterLimitMixin.js"
20454
+ }
20455
+ },
20334
20456
  {
20335
20457
  "kind": "method",
20336
20458
  "name": "renderHelperText",
@@ -20393,6 +20515,11 @@
20393
20515
  }
20394
20516
  ]
20395
20517
  },
20518
+ {
20519
+ "kind": "method",
20520
+ "name": "renderInputFooter",
20521
+ "privacy": "protected"
20522
+ },
20396
20523
  {
20397
20524
  "kind": "method",
20398
20525
  "name": "renderLabel",
@@ -20687,6 +20814,18 @@
20687
20814
  "description": "(React: onBlur) This event is dispatched when the input loses focus.",
20688
20815
  "name": "blur",
20689
20816
  "reactName": "onBlur"
20817
+ },
20818
+ {
20819
+ "name": "limitexceeded",
20820
+ "type": {
20821
+ "text": "CustomEvent"
20822
+ },
20823
+ "description": "(React: onLimitExceeded) This event is dispatched once when the character limit exceeds or restored.",
20824
+ "reactName": "onLimitExceeded",
20825
+ "inheritedFrom": {
20826
+ "name": "CharacterLimitMixin",
20827
+ "module": "src/utils/mixins/CharacterLimitMixin.ts"
20828
+ }
20690
20829
  }
20691
20830
  ],
20692
20831
  "attributes": [
@@ -20809,6 +20948,30 @@
20809
20948
  "description": "Defines a id pointing to the element which describes the input element.\nThe AriaDescribedby attribute to be set for accessibility.",
20810
20949
  "fieldName": "dataAriaDescribedby"
20811
20950
  },
20951
+ {
20952
+ "name": "max-character-limit",
20953
+ "type": {
20954
+ "text": "number | undefined"
20955
+ },
20956
+ "description": "The maximum character limit for the field for character counter.",
20957
+ "fieldName": "maxCharacterLimit",
20958
+ "inheritedFrom": {
20959
+ "name": "CharacterLimitMixin",
20960
+ "module": "src/utils/mixins/CharacterLimitMixin.ts"
20961
+ }
20962
+ },
20963
+ {
20964
+ "name": "character-limit-announcement",
20965
+ "type": {
20966
+ "text": "string | undefined"
20967
+ },
20968
+ "description": "Template string for the announcement that will be read by screen readers when the max character limit is set.\nConsumers must use the placeholders `%{number-of-characters}` and `%{max-character-limit}` in the string,\nwhich will be dynamically replaced with the actual values at runtime.\nFor example: `%{number-of-characters} out of %{max-character-limit} characters are typed.`\nExample output: \"93 out of 140 characters are typed.\"",
20969
+ "fieldName": "characterLimitAnnouncement",
20970
+ "inheritedFrom": {
20971
+ "name": "CharacterLimitMixin",
20972
+ "module": "src/utils/mixins/CharacterLimitMixin.ts"
20973
+ }
20974
+ },
20812
20975
  {
20813
20976
  "name": "auto-focus-on-mount",
20814
20977
  "type": {
@@ -21014,6 +21177,10 @@
21014
21177
  }
21015
21178
  ],
21016
21179
  "mixins": [
21180
+ {
21181
+ "name": "CharacterLimitMixin",
21182
+ "module": "/src/utils/mixins/CharacterLimitMixin"
21183
+ },
21017
21184
  {
21018
21185
  "name": "KeyToActionMixin",
21019
21186
  "module": "/src/utils/mixins/KeyToActionMixin"
@@ -21036,7 +21203,7 @@
21036
21203
  "module": "/src/components/formfieldwrapper"
21037
21204
  },
21038
21205
  "tagName": "mdc-input",
21039
- "jsDoc": "/**\n * mdc-input is a component that allows users to input text.\n * It contains:\n * - label field - describe the input field.\n * - input field - contains the value\n * - help text or validation message - displayed below the input field.\n * - trailing button - it displays a clear the input field.\n * - prefix text - displayed before the input field.\n * - leading icon - displayed before the input field.\n * - clear-aria-label - aria label for the trailing button.\n * - all the attributes of the input field.\n *\n * @tagname mdc-input\n *\n * @event input - (React: onInput) This event is dispatched when the value of the input field changes (every press).\n * @event change - (React: onChange) This event is dispatched when the value of the input field changes (on blur).\n * @event focus - (React: onFocus) This event is dispatched when the input receives focus.\n * @event blur - (React: onBlur) This event is dispatched when the input loses focus.\n * @event clear - (React: onClear) This event is dispatched when the input text is cleared.\n *\n * @dependency mdc-icon\n * @dependency mdc-text\n * @dependency mdc-button\n * @dependency mdc-toggletip\n *\n * @slot label - Slot for the label element. If not provided, the `label` property will be used to render the label.\n * @slot toggletip - Slot for the toggletip info icon button. If not provided, the `toggletip-text` property will be used to render the info icon button and toggletip.\n * @slot help-icon - Slot for the helper/validation icon. If not provided, the icon will be rendered based on the `helpTextType` property.\n * @slot help-text - Slot for the helper/validation text. If not provided, the `helpText` property will be used to render the helper/validation text.\n * @slot input - Slot for the input element. If not provided, the input field will be rendered.\n * @slot input-leading-icon - Slot for the leading icon before the input field. If not provided, the `leadingIcon` property will be used to render the leading icon.\n * @slot input-prefix-text - Slot for the prefix text before the input field. If not provided, the `prefixText` property will be used to render the prefix text.\n * @slot trailing-button - Slot for the trailing button to clear the input field. If not provided, the clear button will be rendered when `trailingButton` property is set to true.\n *\n * @cssproperty --mdc-label-font-size - Font size for the label text.\n * @cssproperty --mdc-label-font-weight - Font weight for the label text.\n * @cssproperty --mdc-label-line-height - Line height for the label text.\n * @cssproperty --mdc-label-color - Color for the label text.\n * @cssproperty --mdc-help-text-font-size - Font size for the help text.\n * @cssproperty --mdc-help-text-font-weight - Font weight for the help text.\n * @cssproperty --mdc-help-text-line-height - Line height for the help text.\n * @cssproperty --mdc-help-text-color - Color for the help text.\n * @cssproperty --mdc-required-indicator-color - Color for the required indicator text.\n * @cssproperty --mdc-input-text-color - Text color for the input field\n * @cssproperty --mdc-input-border-color - Border color for the input container\n * @cssproperty --mdc-input-background-color - Background color for the input field\n * @cssproperty --mdc-input-height - Height for the input container\n * @cssproperty --mdc-input-support-text-color - Text color for the help text\n * @cssproperty --mdc-input-selection-text-color - Text color for the selected text\n * @cssproperty --mdc-input-selection-background-color - Background color for the selected text\n *\n * @csspart label - The label element.\n * @csspart label-text - The container for the label and required indicator elements.\n * @csspart required-indicator - The required indicator element that is displayed next to the label when the `required` property is set to true.\n * @csspart info-icon-btn - The info icon button element that is displayed next to the label when the `toggletip-text` property is set.\n * @csspart label-toggletip - The toggletip element that is displayed when the info icon button is clicked.\n * @csspart help-text - The helper/validation text element.\n * @csspart helper-icon - The helper/validation icon element that is displayed next to the helper/validation text.\n * @csspart help-text-container - The container for the helper/validation icon and text elements.\n * @csspart leading-icon - The leading icon element that is displayed before the input field.\n * @csspart prefix-text - The prefix text element that is displayed before the input field.\n * @csspart input-container - The container for the input field, leading icon, prefix text, and trailing button elements.\n * @csspart input-section - The container for the input field, leading icon, and prefix text elements.\n * @csspart input-text - The input field element.\n * @csspart trailing-button - The trailing button element that is displayed to clear the input field when the `trailingButton` property is set to true.\n */",
21206
+ "jsDoc": "/**\n * mdc-input is a component that allows users to input text.\n * It contains:\n * - label field - describe the input field.\n * - input field - contains the value\n * - help text or validation message - displayed below the input field.\n * - trailing button - it displays a clear the input field.\n * - prefix text - displayed before the input field.\n * - leading icon - displayed before the input field.\n * - clear-aria-label - aria label for the trailing button.\n * - all the attributes of the input field.\n *\n * @tagname mdc-input\n *\n * @event input - (React: onInput) This event is dispatched when the value of the input field changes (every press).\n * @event change - (React: onChange) This event is dispatched when the value of the input field changes (on blur).\n * @event focus - (React: onFocus) This event is dispatched when the input receives focus.\n * @event blur - (React: onBlur) This event is dispatched when the input loses focus.\n * @event clear - (React: onClear) This event is dispatched when the input text is cleared.\n * @event limitexceeded - (React: onLimitExceeded) This event is dispatched once when the character limit\n * exceeds or restored.\n *\n * @dependency mdc-icon\n * @dependency mdc-text\n * @dependency mdc-button\n * @dependency mdc-toggletip\n *\n * @slot label - Slot for the label element. If not provided, the `label` property will be used to render the label.\n * @slot toggletip - Slot for the toggletip info icon button. If not provided, the `toggletip-text` property will be used to render the info icon button and toggletip.\n * @slot help-icon - Slot for the helper/validation icon. If not provided, the icon will be rendered based on the `helpTextType` property.\n * @slot help-text - Slot for the helper/validation text. If not provided, the `helpText` property will be used to render the helper/validation text.\n * @slot input - Slot for the input element. If not provided, the input field will be rendered.\n * @slot input-leading-icon - Slot for the leading icon before the input field. If not provided, the `leadingIcon` property will be used to render the leading icon.\n * @slot input-prefix-text - Slot for the prefix text before the input field. If not provided, the `prefixText` property will be used to render the prefix text.\n * @slot trailing-button - Slot for the trailing button to clear the input field. If not provided, the clear button will be rendered when `trailingButton` property is set to true.\n *\n * @cssproperty --mdc-label-font-size - Font size for the label text.\n * @cssproperty --mdc-label-font-weight - Font weight for the label text.\n * @cssproperty --mdc-label-line-height - Line height for the label text.\n * @cssproperty --mdc-label-color - Color for the label text.\n * @cssproperty --mdc-help-text-font-size - Font size for the help text.\n * @cssproperty --mdc-help-text-font-weight - Font weight for the help text.\n * @cssproperty --mdc-help-text-line-height - Line height for the help text.\n * @cssproperty --mdc-help-text-color - Color for the help text.\n * @cssproperty --mdc-required-indicator-color - Color for the required indicator text.\n * @cssproperty --mdc-input-text-color - Text color for the input field\n * @cssproperty --mdc-input-border-color - Border color for the input container\n * @cssproperty --mdc-input-background-color - Background color for the input field\n * @cssproperty --mdc-input-height - Height for the input container\n * @cssproperty --mdc-input-support-text-color - Text color for the help text\n * @cssproperty --mdc-input-selection-text-color - Text color for the selected text\n * @cssproperty --mdc-input-selection-background-color - Background color for the selected text\n *\n * @csspart label - The label element.\n * @csspart label-text - The container for the label and required indicator elements.\n * @csspart required-indicator - The required indicator element that is displayed next to the label when the `required` property is set to true.\n * @csspart info-icon-btn - The info icon button element that is displayed next to the label when the `toggletip-text` property is set.\n * @csspart label-toggletip - The toggletip element that is displayed when the info icon button is clicked.\n * @csspart help-text - The helper/validation text element.\n * @csspart helper-icon - The helper/validation icon element that is displayed next to the helper/validation text.\n * @csspart help-text-container - The container for the helper/validation icon and text elements.\n * @csspart leading-icon - The leading icon element that is displayed before the input field.\n * @csspart prefix-text - The prefix text element that is displayed before the input field.\n * @csspart input-container - The container for the input field, leading icon, prefix text, and trailing button elements.\n * @csspart input-section - The container for the input field, leading icon, and prefix text elements.\n * @csspart input-text - The input field element.\n * @csspart trailing-button - The trailing button element that is displayed to clear the input field when the `trailingButton` property is set to true.\n * @csspart input-footer - The footer element that contains the helper text and character counter.\n * @csspart character-counter - The character counter element.\n */",
21040
21207
  "customElement": true
21041
21208
  }
21042
21209
  ],
@@ -32594,6 +32761,22 @@
32594
32761
  "name": "Input",
32595
32762
  "module": "src/components/input/input.component.ts"
32596
32763
  }
32764
+ },
32765
+ {
32766
+ "description": "The footer element that contains the helper text and character counter.",
32767
+ "name": "input-footer",
32768
+ "inheritedFrom": {
32769
+ "name": "Input",
32770
+ "module": "src/components/input/input.component.ts"
32771
+ }
32772
+ },
32773
+ {
32774
+ "description": "The character counter element.",
32775
+ "name": "character-counter",
32776
+ "inheritedFrom": {
32777
+ "name": "Input",
32778
+ "module": "src/components/input/input.component.ts"
32779
+ }
32597
32780
  }
32598
32781
  ],
32599
32782
  "slots": [
@@ -32663,6 +32846,16 @@
32663
32846
  }
32664
32847
  ],
32665
32848
  "members": [
32849
+ {
32850
+ "kind": "method",
32851
+ "name": "announceCharacterLimitWarning",
32852
+ "privacy": "protected",
32853
+ "description": "Announces the character limit warning based on the current value length.\nIf the value length exceeds the max character limit, the help text is announced (if help text is present).\nIf the value length does not exceed the max character limit, then the character limit announcement is announced.",
32854
+ "inheritedFrom": {
32855
+ "name": "CharacterLimitMixin",
32856
+ "module": "utils/mixins/CharacterLimitMixin.js"
32857
+ }
32858
+ },
32666
32859
  {
32667
32860
  "kind": "field",
32668
32861
  "name": "autocapitalize",
@@ -32706,6 +32899,19 @@
32706
32899
  "module": "utils/mixins/AutoFocusOnMountMixin.js"
32707
32900
  }
32708
32901
  },
32902
+ {
32903
+ "kind": "field",
32904
+ "name": "characterLimitAnnouncement",
32905
+ "type": {
32906
+ "text": "string | undefined"
32907
+ },
32908
+ "description": "Template string for the announcement that will be read by screen readers when the max character limit is set.\nConsumers must use the placeholders `%{number-of-characters}` and `%{max-character-limit}` in the string,\nwhich will be dynamically replaced with the actual values at runtime.\nFor example: `%{number-of-characters} out of %{max-character-limit} characters are typed.`\nExample output: \"93 out of 140 characters are typed.\"",
32909
+ "attribute": "character-limit-announcement",
32910
+ "inheritedFrom": {
32911
+ "name": "CharacterLimitMixin",
32912
+ "module": "utils/mixins/CharacterLimitMixin.js"
32913
+ }
32914
+ },
32709
32915
  {
32710
32916
  "kind": "method",
32711
32917
  "name": "checkValidity",
@@ -32801,6 +33007,16 @@
32801
33007
  "module": "components/formfieldwrapper/formfieldwrapper.component.js"
32802
33008
  }
32803
33009
  },
33010
+ {
33011
+ "kind": "method",
33012
+ "name": "handleCharacterOverflowStateChange",
33013
+ "privacy": "protected",
33014
+ "description": "Handles the character overflow state change.\nDispatches the character overflow state change event if the character limit is exceeded or restored.",
33015
+ "inheritedFrom": {
33016
+ "name": "CharacterLimitMixin",
33017
+ "module": "utils/mixins/CharacterLimitMixin.js"
33018
+ }
33019
+ },
32804
33020
  {
32805
33021
  "kind": "method",
32806
33022
  "name": "handleKeyDown",
@@ -32914,6 +33130,19 @@
32914
33130
  "module": "components/input/input.component.js"
32915
33131
  }
32916
33132
  },
33133
+ {
33134
+ "kind": "field",
33135
+ "name": "maxCharacterLimit",
33136
+ "type": {
33137
+ "text": "number | undefined"
33138
+ },
33139
+ "description": "The maximum character limit for the field for character counter.",
33140
+ "attribute": "max-character-limit",
33141
+ "inheritedFrom": {
33142
+ "name": "CharacterLimitMixin",
33143
+ "module": "utils/mixins/CharacterLimitMixin.js"
33144
+ }
33145
+ },
32917
33146
  {
32918
33147
  "kind": "field",
32919
33148
  "name": "maxlength",
@@ -33010,6 +33239,16 @@
33010
33239
  "module": "components/formfieldwrapper/formfieldwrapper.component.js"
33011
33240
  }
33012
33241
  },
33242
+ {
33243
+ "kind": "method",
33244
+ "name": "renderCharacterCounter",
33245
+ "privacy": "protected",
33246
+ "description": "Renders the character counter element.",
33247
+ "inheritedFrom": {
33248
+ "name": "CharacterLimitMixin",
33249
+ "module": "utils/mixins/CharacterLimitMixin.js"
33250
+ }
33251
+ },
33013
33252
  {
33014
33253
  "kind": "method",
33015
33254
  "name": "renderHelperText",
@@ -33080,6 +33319,15 @@
33080
33319
  "module": "components/input/input.component.js"
33081
33320
  }
33082
33321
  },
33322
+ {
33323
+ "kind": "method",
33324
+ "name": "renderInputFooter",
33325
+ "privacy": "protected",
33326
+ "inheritedFrom": {
33327
+ "name": "Input",
33328
+ "module": "components/input/input.component.js"
33329
+ }
33330
+ },
33083
33331
  {
33084
33332
  "kind": "method",
33085
33333
  "name": "renderLabel",
@@ -33437,6 +33685,18 @@
33437
33685
  "module": "src/components/input/input.component.ts"
33438
33686
  }
33439
33687
  },
33688
+ {
33689
+ "name": "limitexceeded",
33690
+ "type": {
33691
+ "text": "CustomEvent"
33692
+ },
33693
+ "description": "(React: onLimitExceeded) This event is dispatched once when the character limit exceeds or restored.",
33694
+ "reactName": "onLimitExceeded",
33695
+ "inheritedFrom": {
33696
+ "name": "CharacterLimitMixin",
33697
+ "module": "src/utils/mixins/CharacterLimitMixin.ts"
33698
+ }
33699
+ },
33440
33700
  {
33441
33701
  "type": {
33442
33702
  "text": "EventConstructor"
@@ -33478,6 +33738,30 @@
33478
33738
  "description": "Aria label for the hide password icon button.",
33479
33739
  "fieldName": "hideButtonAriaLabel"
33480
33740
  },
33741
+ {
33742
+ "name": "max-character-limit",
33743
+ "type": {
33744
+ "text": "number | undefined"
33745
+ },
33746
+ "description": "The maximum character limit for the field for character counter.",
33747
+ "fieldName": "maxCharacterLimit",
33748
+ "inheritedFrom": {
33749
+ "name": "CharacterLimitMixin",
33750
+ "module": "src/utils/mixins/CharacterLimitMixin.ts"
33751
+ }
33752
+ },
33753
+ {
33754
+ "name": "character-limit-announcement",
33755
+ "type": {
33756
+ "text": "string | undefined"
33757
+ },
33758
+ "description": "Template string for the announcement that will be read by screen readers when the max character limit is set.\nConsumers must use the placeholders `%{number-of-characters}` and `%{max-character-limit}` in the string,\nwhich will be dynamically replaced with the actual values at runtime.\nFor example: `%{number-of-characters} out of %{max-character-limit} characters are typed.`\nExample output: \"93 out of 140 characters are typed.\"",
33759
+ "fieldName": "characterLimitAnnouncement",
33760
+ "inheritedFrom": {
33761
+ "name": "CharacterLimitMixin",
33762
+ "module": "src/utils/mixins/CharacterLimitMixin.ts"
33763
+ }
33764
+ },
33481
33765
  {
33482
33766
  "name": "auto-focus-on-mount",
33483
33767
  "type": {
@@ -38675,6 +38959,22 @@
38675
38959
  {
38676
38960
  "description": "The inline flow container for chips and the input field.",
38677
38961
  "name": "searchfield-container"
38962
+ },
38963
+ {
38964
+ "description": "The footer element that contains the helper text and character counter.",
38965
+ "name": "input-footer",
38966
+ "inheritedFrom": {
38967
+ "name": "Input",
38968
+ "module": "src/components/input/input.component.ts"
38969
+ }
38970
+ },
38971
+ {
38972
+ "description": "The character counter element.",
38973
+ "name": "character-counter",
38974
+ "inheritedFrom": {
38975
+ "name": "Input",
38976
+ "module": "src/components/input/input.component.ts"
38977
+ }
38678
38978
  }
38679
38979
  ],
38680
38980
  "slots": [
@@ -38748,6 +39048,16 @@
38748
39048
  }
38749
39049
  ],
38750
39050
  "members": [
39051
+ {
39052
+ "kind": "method",
39053
+ "name": "announceCharacterLimitWarning",
39054
+ "privacy": "protected",
39055
+ "description": "Announces the character limit warning based on the current value length.\nIf the value length exceeds the max character limit, the help text is announced (if help text is present).\nIf the value length does not exceed the max character limit, then the character limit announcement is announced.",
39056
+ "inheritedFrom": {
39057
+ "name": "CharacterLimitMixin",
39058
+ "module": "utils/mixins/CharacterLimitMixin.js"
39059
+ }
39060
+ },
38751
39061
  {
38752
39062
  "kind": "field",
38753
39063
  "name": "autocapitalize",
@@ -38791,6 +39101,19 @@
38791
39101
  "module": "utils/mixins/AutoFocusOnMountMixin.js"
38792
39102
  }
38793
39103
  },
39104
+ {
39105
+ "kind": "field",
39106
+ "name": "characterLimitAnnouncement",
39107
+ "type": {
39108
+ "text": "string | undefined"
39109
+ },
39110
+ "description": "Template string for the announcement that will be read by screen readers when the max character limit is set.\nConsumers must use the placeholders `%{number-of-characters}` and `%{max-character-limit}` in the string,\nwhich will be dynamically replaced with the actual values at runtime.\nFor example: `%{number-of-characters} out of %{max-character-limit} characters are typed.`\nExample output: \"93 out of 140 characters are typed.\"",
39111
+ "attribute": "character-limit-announcement",
39112
+ "inheritedFrom": {
39113
+ "name": "CharacterLimitMixin",
39114
+ "module": "utils/mixins/CharacterLimitMixin.js"
39115
+ }
39116
+ },
38794
39117
  {
38795
39118
  "kind": "method",
38796
39119
  "name": "checkValidity",
@@ -38939,6 +39262,16 @@
38939
39262
  ],
38940
39263
  "description": "Overrides the focus method to allow programmatically focusing the input field.\nDelegate focus didn't work as expect since we have a scrollable container that contains both chips and the input, and we want to focus the input when the component itself is focused. We need to override the focus method to achieve this behavior."
38941
39264
  },
39265
+ {
39266
+ "kind": "method",
39267
+ "name": "handleCharacterOverflowStateChange",
39268
+ "privacy": "protected",
39269
+ "description": "Handles the character overflow state change.\nDispatches the character overflow state change event if the character limit is exceeded or restored.",
39270
+ "inheritedFrom": {
39271
+ "name": "CharacterLimitMixin",
39272
+ "module": "utils/mixins/CharacterLimitMixin.js"
39273
+ }
39274
+ },
38942
39275
  {
38943
39276
  "kind": "field",
38944
39277
  "name": "handleFilterContainerClick"
@@ -39045,6 +39378,19 @@
39045
39378
  "module": "components/input/input.component.js"
39046
39379
  }
39047
39380
  },
39381
+ {
39382
+ "kind": "field",
39383
+ "name": "maxCharacterLimit",
39384
+ "type": {
39385
+ "text": "number | undefined"
39386
+ },
39387
+ "description": "The maximum character limit for the field for character counter.",
39388
+ "attribute": "max-character-limit",
39389
+ "inheritedFrom": {
39390
+ "name": "CharacterLimitMixin",
39391
+ "module": "utils/mixins/CharacterLimitMixin.js"
39392
+ }
39393
+ },
39048
39394
  {
39049
39395
  "kind": "field",
39050
39396
  "name": "maxlength",
@@ -39156,6 +39502,16 @@
39156
39502
  ],
39157
39503
  "description": "Removes a chip element from the DOM and dispatches the 'chipRemove' event with the chip detail.\nIn controlled mode, the chip is not removed from the DOM, only the event is dispatched."
39158
39504
  },
39505
+ {
39506
+ "kind": "method",
39507
+ "name": "renderCharacterCounter",
39508
+ "privacy": "protected",
39509
+ "description": "Renders the character counter element.",
39510
+ "inheritedFrom": {
39511
+ "name": "CharacterLimitMixin",
39512
+ "module": "utils/mixins/CharacterLimitMixin.js"
39513
+ }
39514
+ },
39159
39515
  {
39160
39516
  "kind": "method",
39161
39517
  "name": "renderHelperText",
@@ -39222,6 +39578,15 @@
39222
39578
  "module": "components/input/input.component.js"
39223
39579
  }
39224
39580
  },
39581
+ {
39582
+ "kind": "method",
39583
+ "name": "renderInputFooter",
39584
+ "privacy": "protected",
39585
+ "inheritedFrom": {
39586
+ "name": "Input",
39587
+ "module": "components/input/input.component.js"
39588
+ }
39589
+ },
39225
39590
  {
39226
39591
  "kind": "method",
39227
39592
  "name": "renderLabel",
@@ -39572,6 +39937,18 @@
39572
39937
  "module": "src/components/input/input.component.ts"
39573
39938
  }
39574
39939
  },
39940
+ {
39941
+ "name": "limitexceeded",
39942
+ "type": {
39943
+ "text": "CustomEvent"
39944
+ },
39945
+ "description": "(React: onLimitExceeded) This event is dispatched once when the character limit exceeds or restored.",
39946
+ "reactName": "onLimitExceeded",
39947
+ "inheritedFrom": {
39948
+ "name": "CharacterLimitMixin",
39949
+ "module": "src/utils/mixins/CharacterLimitMixin.ts"
39950
+ }
39951
+ },
39575
39952
  {
39576
39953
  "type": {
39577
39954
  "text": "EventConstructor"
@@ -39613,6 +39990,30 @@
39613
39990
  "module": "src/utils/mixins/ControlTypeMixin.ts"
39614
39991
  }
39615
39992
  },
39993
+ {
39994
+ "name": "max-character-limit",
39995
+ "type": {
39996
+ "text": "number | undefined"
39997
+ },
39998
+ "description": "The maximum character limit for the field for character counter.",
39999
+ "fieldName": "maxCharacterLimit",
40000
+ "inheritedFrom": {
40001
+ "name": "CharacterLimitMixin",
40002
+ "module": "src/utils/mixins/CharacterLimitMixin.ts"
40003
+ }
40004
+ },
40005
+ {
40006
+ "name": "character-limit-announcement",
40007
+ "type": {
40008
+ "text": "string | undefined"
40009
+ },
40010
+ "description": "Template string for the announcement that will be read by screen readers when the max character limit is set.\nConsumers must use the placeholders `%{number-of-characters}` and `%{max-character-limit}` in the string,\nwhich will be dynamically replaced with the actual values at runtime.\nFor example: `%{number-of-characters} out of %{max-character-limit} characters are typed.`\nExample output: \"93 out of 140 characters are typed.\"",
40011
+ "fieldName": "characterLimitAnnouncement",
40012
+ "inheritedFrom": {
40013
+ "name": "CharacterLimitMixin",
40014
+ "module": "src/utils/mixins/CharacterLimitMixin.ts"
40015
+ }
40016
+ },
39616
40017
  {
39617
40018
  "name": "auto-focus-on-mount",
39618
40019
  "type": {
@@ -40279,6 +40680,22 @@
40279
40680
  "name": "Searchfield",
40280
40681
  "module": "src/components/searchfield/searchfield.component.ts"
40281
40682
  }
40683
+ },
40684
+ {
40685
+ "description": "The footer element that contains the helper text and character counter.",
40686
+ "name": "input-footer",
40687
+ "inheritedFrom": {
40688
+ "name": "Input",
40689
+ "module": "src/components/input/input.component.ts"
40690
+ }
40691
+ },
40692
+ {
40693
+ "description": "The character counter element.",
40694
+ "name": "character-counter",
40695
+ "inheritedFrom": {
40696
+ "name": "Input",
40697
+ "module": "src/components/input/input.component.ts"
40698
+ }
40282
40699
  }
40283
40700
  ],
40284
40701
  "slots": [
@@ -40360,6 +40777,16 @@
40360
40777
  }
40361
40778
  ],
40362
40779
  "members": [
40780
+ {
40781
+ "kind": "method",
40782
+ "name": "announceCharacterLimitWarning",
40783
+ "privacy": "protected",
40784
+ "description": "Announces the character limit warning based on the current value length.\nIf the value length exceeds the max character limit, the help text is announced (if help text is present).\nIf the value length does not exceed the max character limit, then the character limit announcement is announced.",
40785
+ "inheritedFrom": {
40786
+ "name": "CharacterLimitMixin",
40787
+ "module": "utils/mixins/CharacterLimitMixin.js"
40788
+ }
40789
+ },
40363
40790
  {
40364
40791
  "kind": "field",
40365
40792
  "name": "autocapitalize",
@@ -40403,6 +40830,19 @@
40403
40830
  "module": "utils/mixins/AutoFocusOnMountMixin.js"
40404
40831
  }
40405
40832
  },
40833
+ {
40834
+ "kind": "field",
40835
+ "name": "characterLimitAnnouncement",
40836
+ "type": {
40837
+ "text": "string | undefined"
40838
+ },
40839
+ "description": "Template string for the announcement that will be read by screen readers when the max character limit is set.\nConsumers must use the placeholders `%{number-of-characters}` and `%{max-character-limit}` in the string,\nwhich will be dynamically replaced with the actual values at runtime.\nFor example: `%{number-of-characters} out of %{max-character-limit} characters are typed.`\nExample output: \"93 out of 140 characters are typed.\"",
40840
+ "attribute": "character-limit-announcement",
40841
+ "inheritedFrom": {
40842
+ "name": "CharacterLimitMixin",
40843
+ "module": "utils/mixins/CharacterLimitMixin.js"
40844
+ }
40845
+ },
40406
40846
  {
40407
40847
  "kind": "method",
40408
40848
  "name": "checkValidity",
@@ -40570,6 +41010,16 @@
40570
41010
  "module": "components/searchfield/searchfield.component.js"
40571
41011
  }
40572
41012
  },
41013
+ {
41014
+ "kind": "method",
41015
+ "name": "handleCharacterOverflowStateChange",
41016
+ "privacy": "protected",
41017
+ "description": "Handles the character overflow state change.\nDispatches the character overflow state change event if the character limit is exceeded or restored.",
41018
+ "inheritedFrom": {
41019
+ "name": "CharacterLimitMixin",
41020
+ "module": "utils/mixins/CharacterLimitMixin.js"
41021
+ }
41022
+ },
40573
41023
  {
40574
41024
  "kind": "field",
40575
41025
  "name": "handleFilterContainerClick",
@@ -40686,6 +41136,19 @@
40686
41136
  "module": "components/input/input.component.js"
40687
41137
  }
40688
41138
  },
41139
+ {
41140
+ "kind": "field",
41141
+ "name": "maxCharacterLimit",
41142
+ "type": {
41143
+ "text": "number | undefined"
41144
+ },
41145
+ "description": "The maximum character limit for the field for character counter.",
41146
+ "attribute": "max-character-limit",
41147
+ "inheritedFrom": {
41148
+ "name": "CharacterLimitMixin",
41149
+ "module": "utils/mixins/CharacterLimitMixin.js"
41150
+ }
41151
+ },
40689
41152
  {
40690
41153
  "kind": "field",
40691
41154
  "name": "maxlength",
@@ -40833,6 +41296,16 @@
40833
41296
  "module": "components/searchfield/searchfield.component.js"
40834
41297
  }
40835
41298
  },
41299
+ {
41300
+ "kind": "method",
41301
+ "name": "renderCharacterCounter",
41302
+ "privacy": "protected",
41303
+ "description": "Renders the character counter element.",
41304
+ "inheritedFrom": {
41305
+ "name": "CharacterLimitMixin",
41306
+ "module": "utils/mixins/CharacterLimitMixin.js"
41307
+ }
41308
+ },
40836
41309
  {
40837
41310
  "kind": "method",
40838
41311
  "name": "renderHelperText",
@@ -40899,6 +41372,15 @@
40899
41372
  "module": "components/input/input.component.js"
40900
41373
  }
40901
41374
  },
41375
+ {
41376
+ "kind": "method",
41377
+ "name": "renderInputFooter",
41378
+ "privacy": "protected",
41379
+ "inheritedFrom": {
41380
+ "name": "Input",
41381
+ "module": "components/input/input.component.js"
41382
+ }
41383
+ },
40902
41384
  {
40903
41385
  "kind": "method",
40904
41386
  "name": "renderLabel",
@@ -41263,6 +41745,18 @@
41263
41745
  "name": "hidden",
41264
41746
  "reactName": "onHidden"
41265
41747
  },
41748
+ {
41749
+ "name": "limitexceeded",
41750
+ "type": {
41751
+ "text": "CustomEvent"
41752
+ },
41753
+ "description": "(React: onLimitExceeded) This event is dispatched once when the character limit exceeds or restored.",
41754
+ "reactName": "onLimitExceeded",
41755
+ "inheritedFrom": {
41756
+ "name": "CharacterLimitMixin",
41757
+ "module": "src/utils/mixins/CharacterLimitMixin.ts"
41758
+ }
41759
+ },
41266
41760
  {
41267
41761
  "type": {
41268
41762
  "text": "EventConstructor"
@@ -41322,6 +41816,30 @@
41322
41816
  "module": "src/utils/mixins/ControlTypeMixin.ts"
41323
41817
  }
41324
41818
  },
41819
+ {
41820
+ "name": "max-character-limit",
41821
+ "type": {
41822
+ "text": "number | undefined"
41823
+ },
41824
+ "description": "The maximum character limit for the field for character counter.",
41825
+ "fieldName": "maxCharacterLimit",
41826
+ "inheritedFrom": {
41827
+ "name": "CharacterLimitMixin",
41828
+ "module": "src/utils/mixins/CharacterLimitMixin.ts"
41829
+ }
41830
+ },
41831
+ {
41832
+ "name": "character-limit-announcement",
41833
+ "type": {
41834
+ "text": "string | undefined"
41835
+ },
41836
+ "description": "Template string for the announcement that will be read by screen readers when the max character limit is set.\nConsumers must use the placeholders `%{number-of-characters}` and `%{max-character-limit}` in the string,\nwhich will be dynamically replaced with the actual values at runtime.\nFor example: `%{number-of-characters} out of %{max-character-limit} characters are typed.`\nExample output: \"93 out of 140 characters are typed.\"",
41837
+ "fieldName": "characterLimitAnnouncement",
41838
+ "inheritedFrom": {
41839
+ "name": "CharacterLimitMixin",
41840
+ "module": "src/utils/mixins/CharacterLimitMixin.ts"
41841
+ }
41842
+ },
41325
41843
  {
41326
41844
  "name": "auto-focus-on-mount",
41327
41845
  "type": {
@@ -47208,9 +47726,13 @@
47208
47726
  "members": [
47209
47727
  {
47210
47728
  "kind": "method",
47211
- "name": "announceMaxLengthWarning",
47212
- "privacy": "private",
47213
- "description": "Announces the character limit warning based on the current value length.\nIf the value length exceeds the max character limit, the help text is announced (if help text is present).\nIf the value length does not exceed the max character limit, then the character limit announcement is announced."
47729
+ "name": "announceCharacterLimitWarning",
47730
+ "privacy": "protected",
47731
+ "description": "Announces the character limit warning based on the current value length.\nIf the value length exceeds the max character limit, the help text is announced (if help text is present).\nIf the value length does not exceed the max character limit, then the character limit announcement is announced.",
47732
+ "inheritedFrom": {
47733
+ "name": "CharacterLimitMixin",
47734
+ "module": "utils/mixins/CharacterLimitMixin.js"
47735
+ }
47214
47736
  },
47215
47737
  {
47216
47738
  "kind": "field",
@@ -47254,7 +47776,11 @@
47254
47776
  "text": "string | undefined"
47255
47777
  },
47256
47778
  "description": "Template string for the announcement that will be read by screen readers when the max character limit is set.\nConsumers must use the placeholders `%{number-of-characters}` and `%{max-character-limit}` in the string,\nwhich will be dynamically replaced with the actual values at runtime.\nFor example: `%{number-of-characters} out of %{max-character-limit} characters are typed.`\nExample output: \"93 out of 140 characters are typed.\"",
47257
- "attribute": "character-limit-announcement"
47779
+ "attribute": "character-limit-announcement",
47780
+ "inheritedFrom": {
47781
+ "name": "CharacterLimitMixin",
47782
+ "module": "utils/mixins/CharacterLimitMixin.js"
47783
+ }
47258
47784
  },
47259
47785
  {
47260
47786
  "kind": "method",
@@ -47318,26 +47844,14 @@
47318
47844
  "module": "components/formfieldwrapper/formfieldwrapper.component.js"
47319
47845
  }
47320
47846
  },
47321
- {
47322
- "kind": "method",
47323
- "name": "dispatchCharacterOverflowStateChangeEvent",
47324
- "privacy": "private",
47325
- "description": "Dispatches the character overflow state change event.",
47326
- "return": {
47327
- "type": {
47328
- "text": ""
47329
- }
47330
- }
47331
- },
47332
47847
  {
47333
47848
  "kind": "method",
47334
47849
  "name": "handleCharacterOverflowStateChange",
47335
- "privacy": "private",
47850
+ "privacy": "protected",
47336
47851
  "description": "Handles the character overflow state change.\nDispatches the character overflow state change event if the character limit is exceeded or restored.",
47337
- "return": {
47338
- "type": {
47339
- "text": ""
47340
- }
47852
+ "inheritedFrom": {
47853
+ "name": "CharacterLimitMixin",
47854
+ "module": "utils/mixins/CharacterLimitMixin.js"
47341
47855
  }
47342
47856
  },
47343
47857
  {
@@ -47464,8 +47978,12 @@
47464
47978
  "type": {
47465
47979
  "text": "number | undefined"
47466
47980
  },
47467
- "description": "The maximum character limit for the textarea field for character counter.",
47468
- "attribute": "max-character-limit"
47981
+ "description": "The maximum character limit for the field for character counter.",
47982
+ "attribute": "max-character-limit",
47983
+ "inheritedFrom": {
47984
+ "name": "CharacterLimitMixin",
47985
+ "module": "utils/mixins/CharacterLimitMixin.js"
47986
+ }
47469
47987
  },
47470
47988
  {
47471
47989
  "kind": "field",
@@ -47542,7 +48060,12 @@
47542
48060
  {
47543
48061
  "kind": "method",
47544
48062
  "name": "renderCharacterCounter",
47545
- "privacy": "protected"
48063
+ "privacy": "protected",
48064
+ "description": "Renders the character counter element.",
48065
+ "inheritedFrom": {
48066
+ "name": "CharacterLimitMixin",
48067
+ "module": "utils/mixins/CharacterLimitMixin.js"
48068
+ }
47546
48069
  },
47547
48070
  {
47548
48071
  "kind": "method",
@@ -47839,14 +48362,6 @@
47839
48362
  }
47840
48363
  ],
47841
48364
  "events": [
47842
- {
47843
- "name": "limitexceeded",
47844
- "type": {
47845
- "text": "CustomEvent"
47846
- },
47847
- "description": "(React: onLimitExceeded) This event is dispatched once when the character limit exceeds or restored.",
47848
- "reactName": "onLimitExceeded"
47849
- },
47850
48365
  {
47851
48366
  "type": {
47852
48367
  "text": "EventConstructor"
@@ -47871,6 +48386,18 @@
47871
48386
  "description": "(React: onBlur) This event is dispatched when the textarea loses focus.",
47872
48387
  "name": "blur",
47873
48388
  "reactName": "onBlur"
48389
+ },
48390
+ {
48391
+ "name": "limitexceeded",
48392
+ "type": {
48393
+ "text": "CustomEvent"
48394
+ },
48395
+ "description": "(React: onLimitExceeded) This event is dispatched once when the character limit exceeds or restored.",
48396
+ "reactName": "onLimitExceeded",
48397
+ "inheritedFrom": {
48398
+ "name": "CharacterLimitMixin",
48399
+ "module": "src/utils/mixins/CharacterLimitMixin.ts"
48400
+ }
47874
48401
  }
47875
48402
  ],
47876
48403
  "attributes": [
@@ -47951,22 +48478,6 @@
47951
48478
  "description": "The minimum number of characters that the textarea field can accept.",
47952
48479
  "fieldName": "minlength"
47953
48480
  },
47954
- {
47955
- "name": "max-character-limit",
47956
- "type": {
47957
- "text": "number | undefined"
47958
- },
47959
- "description": "The maximum character limit for the textarea field for character counter.",
47960
- "fieldName": "maxCharacterLimit"
47961
- },
47962
- {
47963
- "name": "character-limit-announcement",
47964
- "type": {
47965
- "text": "string | undefined"
47966
- },
47967
- "description": "Template string for the announcement that will be read by screen readers when the max character limit is set.\nConsumers must use the placeholders `%{number-of-characters}` and `%{max-character-limit}` in the string,\nwhich will be dynamically replaced with the actual values at runtime.\nFor example: `%{number-of-characters} out of %{max-character-limit} characters are typed.`\nExample output: \"93 out of 140 characters are typed.\"",
47968
- "fieldName": "characterLimitAnnouncement"
47969
- },
47970
48481
  {
47971
48482
  "name": "resizable",
47972
48483
  "type": {
@@ -47985,6 +48496,30 @@
47985
48496
  "default": "''",
47986
48497
  "fieldName": "resizeButtonAriaLabel"
47987
48498
  },
48499
+ {
48500
+ "name": "max-character-limit",
48501
+ "type": {
48502
+ "text": "number | undefined"
48503
+ },
48504
+ "description": "The maximum character limit for the field for character counter.",
48505
+ "fieldName": "maxCharacterLimit",
48506
+ "inheritedFrom": {
48507
+ "name": "CharacterLimitMixin",
48508
+ "module": "src/utils/mixins/CharacterLimitMixin.ts"
48509
+ }
48510
+ },
48511
+ {
48512
+ "name": "character-limit-announcement",
48513
+ "type": {
48514
+ "text": "string | undefined"
48515
+ },
48516
+ "description": "Template string for the announcement that will be read by screen readers when the max character limit is set.\nConsumers must use the placeholders `%{number-of-characters}` and `%{max-character-limit}` in the string,\nwhich will be dynamically replaced with the actual values at runtime.\nFor example: `%{number-of-characters} out of %{max-character-limit} characters are typed.`\nExample output: \"93 out of 140 characters are typed.\"",
48517
+ "fieldName": "characterLimitAnnouncement",
48518
+ "inheritedFrom": {
48519
+ "name": "CharacterLimitMixin",
48520
+ "module": "src/utils/mixins/CharacterLimitMixin.ts"
48521
+ }
48522
+ },
47988
48523
  {
47989
48524
  "name": "auto-focus-on-mount",
47990
48525
  "type": {
@@ -48190,6 +48725,10 @@
48190
48725
  }
48191
48726
  ],
48192
48727
  "mixins": [
48728
+ {
48729
+ "name": "CharacterLimitMixin",
48730
+ "module": "/src/utils/mixins/CharacterLimitMixin"
48731
+ },
48193
48732
  {
48194
48733
  "name": "KeyDownHandledMixin",
48195
48734
  "module": "/src/utils/mixins/KeyDownHandledMixin"
@@ -56141,6 +56680,175 @@
56141
56680
  }
56142
56681
  ]
56143
56682
  },
56683
+ {
56684
+ "kind": "javascript-module",
56685
+ "path": "utils/mixins/CharacterLimitMixin.js",
56686
+ "declarations": [
56687
+ {
56688
+ "kind": "mixin",
56689
+ "description": "Mixin that provides character limit / counter functionality.\n\nThis mixin is shared between `mdc-input` and `mdc-textarea` components.\nIt provides:\n- `maxCharacterLimit` and `characterLimitAnnouncement` properties\n- Character overflow state tracking and `limitexceeded` event dispatching\n- Screen reader announcement logic for character limit warnings\n- `renderCharacterCounter()` method for rendering the counter UI\n\nThe consuming component must:\n- Have a `value` property (string)\n- Have a `helpText` property (string)\n- Call `handleCharacterOverflowStateChange()` when `value` changes\n- Call `announceCharacterLimitWarning()` when `helpText` changes or value is updated",
56690
+ "name": "CharacterLimitMixin",
56691
+ "members": [
56692
+ {
56693
+ "kind": "method",
56694
+ "name": "announceCharacterLimitWarning",
56695
+ "privacy": "protected",
56696
+ "description": "Announces the character limit warning based on the current value length.\nIf the value length exceeds the max character limit, the help text is announced (if help text is present).\nIf the value length does not exceed the max character limit, then the character limit announcement is announced."
56697
+ },
56698
+ {
56699
+ "kind": "field",
56700
+ "name": "characterLimitAnnouncement",
56701
+ "type": {
56702
+ "text": "string | undefined"
56703
+ },
56704
+ "description": "Template string for the announcement that will be read by screen readers when the max character limit is set.\nConsumers must use the placeholders `%{number-of-characters}` and `%{max-character-limit}` in the string,\nwhich will be dynamically replaced with the actual values at runtime.\nFor example: `%{number-of-characters} out of %{max-character-limit} characters are typed.`\nExample output: \"93 out of 140 characters are typed.\"",
56705
+ "attribute": "character-limit-announcement"
56706
+ },
56707
+ {
56708
+ "kind": "method",
56709
+ "name": "handleCharacterOverflowStateChange",
56710
+ "privacy": "protected",
56711
+ "description": "Handles the character overflow state change.\nDispatches the character overflow state change event if the character limit is exceeded or restored."
56712
+ },
56713
+ {
56714
+ "kind": "field",
56715
+ "name": "maxCharacterLimit",
56716
+ "type": {
56717
+ "text": "number | undefined"
56718
+ },
56719
+ "description": "The maximum character limit for the field for character counter.",
56720
+ "attribute": "max-character-limit"
56721
+ },
56722
+ {
56723
+ "kind": "method",
56724
+ "name": "renderCharacterCounter",
56725
+ "privacy": "protected",
56726
+ "description": "Renders the character counter element."
56727
+ }
56728
+ ],
56729
+ "events": [
56730
+ {
56731
+ "name": "limitexceeded",
56732
+ "type": {
56733
+ "text": "CustomEvent"
56734
+ }
56735
+ }
56736
+ ],
56737
+ "attributes": [
56738
+ {
56739
+ "name": "max-character-limit",
56740
+ "type": {
56741
+ "text": "number | undefined"
56742
+ },
56743
+ "description": "The maximum character limit for the field for character counter.",
56744
+ "fieldName": "maxCharacterLimit"
56745
+ },
56746
+ {
56747
+ "name": "character-limit-announcement",
56748
+ "type": {
56749
+ "text": "string | undefined"
56750
+ },
56751
+ "description": "Template string for the announcement that will be read by screen readers when the max character limit is set.\nConsumers must use the placeholders `%{number-of-characters}` and `%{max-character-limit}` in the string,\nwhich will be dynamically replaced with the actual values at runtime.\nFor example: `%{number-of-characters} out of %{max-character-limit} characters are typed.`\nExample output: \"93 out of 140 characters are typed.\"",
56752
+ "fieldName": "characterLimitAnnouncement"
56753
+ }
56754
+ ],
56755
+ "parameters": [
56756
+ {
56757
+ "name": "superClass",
56758
+ "type": {
56759
+ "text": "T"
56760
+ },
56761
+ "description": "The base class to extend."
56762
+ }
56763
+ ]
56764
+ },
56765
+ {
56766
+ "kind": "class",
56767
+ "description": "",
56768
+ "name": "CharacterLimitMixinInterface",
56769
+ "members": [
56770
+ {
56771
+ "kind": "method",
56772
+ "name": "announceCharacterLimitWarning",
56773
+ "privacy": "protected",
56774
+ "return": {
56775
+ "type": {
56776
+ "text": "void"
56777
+ }
56778
+ }
56779
+ },
56780
+ {
56781
+ "kind": "field",
56782
+ "name": "characterLimitAnnouncement",
56783
+ "type": {
56784
+ "text": "string | undefined"
56785
+ }
56786
+ },
56787
+ {
56788
+ "kind": "field",
56789
+ "name": "characterLimitAriaLiveAnnouncer",
56790
+ "type": {
56791
+ "text": "string | undefined"
56792
+ },
56793
+ "privacy": "protected"
56794
+ },
56795
+ {
56796
+ "kind": "method",
56797
+ "name": "handleCharacterOverflowStateChange",
56798
+ "privacy": "protected",
56799
+ "return": {
56800
+ "type": {
56801
+ "text": "void"
56802
+ }
56803
+ }
56804
+ },
56805
+ {
56806
+ "kind": "field",
56807
+ "name": "maxCharacterLimit",
56808
+ "type": {
56809
+ "text": "number | undefined"
56810
+ }
56811
+ },
56812
+ {
56813
+ "kind": "method",
56814
+ "name": "renderCharacterCounter",
56815
+ "privacy": "protected",
56816
+ "return": {
56817
+ "type": {
56818
+ "text": "typeof nothing | ReturnType<typeof html>"
56819
+ }
56820
+ }
56821
+ }
56822
+ ]
56823
+ }
56824
+ ],
56825
+ "exports": [
56826
+ {
56827
+ "kind": "js",
56828
+ "name": "CharacterLimitMixin",
56829
+ "declaration": {
56830
+ "name": "CharacterLimitMixin",
56831
+ "module": "utils/mixins/CharacterLimitMixin.js"
56832
+ }
56833
+ },
56834
+ {
56835
+ "kind": "js",
56836
+ "name": "CharacterLimitMixinInterface",
56837
+ "declaration": {
56838
+ "name": "CharacterLimitMixinInterface",
56839
+ "module": "utils/mixins/CharacterLimitMixin.js"
56840
+ }
56841
+ },
56842
+ {
56843
+ "kind": "js",
56844
+ "name": "Events",
56845
+ "declaration": {
56846
+ "name": "Events",
56847
+ "module": "utils/mixins/CharacterLimitMixin.js"
56848
+ }
56849
+ }
56850
+ ]
56851
+ },
56144
56852
  {
56145
56853
  "kind": "javascript-module",
56146
56854
  "path": "utils/mixins/ControlTypeMixin.js",