@tylertech/forge 3.9.0-dev.2 → 3.9.0-dev.3

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.
@@ -3,34 +3,49 @@
3
3
  "version": 1.1,
4
4
  "properties": [
5
5
  {
6
- "name": "--forge-avatar-background",
7
- "description": "The background color of the avatar.",
8
- "values": [{ "name": "string" }]
6
+ "name": "--forge-badge-background",
7
+ "description": "The background color.",
8
+ "values": []
9
9
  },
10
10
  {
11
- "name": "--forge-avatar-shape",
12
- "description": "The border radius of the avatar, defaults to 50%.",
13
- "values": [{ "name": "number" }]
11
+ "name": "--forge-badge-color",
12
+ "description": "The text color.",
13
+ "values": []
14
14
  },
15
15
  {
16
- "name": "--forge-avatar-color",
17
- "description": "The text color of the avatar.",
18
- "values": [{ "name": "color" }]
16
+ "name": "--forge-badge-shape",
17
+ "description": "The shape radius.",
18
+ "values": []
19
19
  },
20
20
  {
21
- "name": "--forge-avatar-size",
22
- "description": "The height and width of the avatar.",
23
- "values": [{ "name": "number" }]
21
+ "name": "--forge-badge-padding-inline",
22
+ "description": "The inline padding.",
23
+ "values": []
24
24
  },
25
25
  {
26
- "name": "--forge-avatar-transition-duration",
27
- "description": "The transition duration for animations.",
28
- "values": [{ "name": "number" }]
26
+ "name": "--forge-badge-padding-block",
27
+ "description": "The block padding.",
28
+ "values": []
29
29
  },
30
30
  {
31
- "name": "--forge-avatar-transition-timing",
32
- "description": "The transition timing function for animations.",
33
- "values": [{ "name": "string" }]
31
+ "name": "--forge-badge-border-width",
32
+ "description": "The border width.",
33
+ "values": []
34
+ },
35
+ {
36
+ "name": "--forge-badge-border-color",
37
+ "description": "The border color.",
38
+ "values": []
39
+ },
40
+ {
41
+ "name": "--forge-badge-border-style",
42
+ "description": "The border style.",
43
+ "values": []
44
+ },
45
+ {
46
+ "name": "--forge-badge-gap",
47
+ "description": "The spacing between the content within the badge.",
48
+ "values": []
34
49
  },
35
50
  {
36
51
  "name": "--forge-backdrop-background",
@@ -68,69 +83,34 @@
68
83
  "values": []
69
84
  },
70
85
  {
71
- "name": "--forge-badge-background",
72
- "description": "The background color.",
73
- "values": []
74
- },
75
- {
76
- "name": "--forge-badge-color",
77
- "description": "The text color.",
78
- "values": []
79
- },
80
- {
81
- "name": "--forge-badge-shape",
82
- "description": "The shape radius.",
83
- "values": []
84
- },
85
- {
86
- "name": "--forge-badge-padding-inline",
87
- "description": "The inline padding.",
88
- "values": []
89
- },
90
- {
91
- "name": "--forge-badge-padding-block",
92
- "description": "The block padding.",
93
- "values": []
94
- },
95
- {
96
- "name": "--forge-badge-border-width",
97
- "description": "The border width.",
98
- "values": []
99
- },
100
- {
101
- "name": "--forge-badge-border-color",
102
- "description": "The border color.",
103
- "values": []
104
- },
105
- {
106
- "name": "--forge-badge-border-style",
107
- "description": "The border style.",
108
- "values": []
86
+ "name": "--forge-avatar-background",
87
+ "description": "The background color of the avatar.",
88
+ "values": [{ "name": "string" }]
109
89
  },
110
90
  {
111
- "name": "--forge-badge-gap",
112
- "description": "The spacing between the content within the badge.",
113
- "values": []
91
+ "name": "--forge-avatar-shape",
92
+ "description": "The border radius of the avatar, defaults to 50%.",
93
+ "values": [{ "name": "number" }]
114
94
  },
115
95
  {
116
- "name": "--forge-bottom-sheet-desktop-max-width",
117
- "description": "The maximum width of the bottom sheet on desktop.",
118
- "values": []
96
+ "name": "--forge-avatar-color",
97
+ "description": "The text color of the avatar.",
98
+ "values": [{ "name": "color" }]
119
99
  },
120
100
  {
121
- "name": "--forge-bottom-sheet-desktop-min-width",
122
- "description": "The minimum width of the bottom sheet on desktop.",
123
- "values": []
101
+ "name": "--forge-avatar-size",
102
+ "description": "The height and width of the avatar.",
103
+ "values": [{ "name": "number" }]
124
104
  },
125
105
  {
126
- "name": "--forge-bottom-sheet-animation-duration",
127
- "description": "The duration of the bottom sheet animation to fullscreen.",
128
- "values": []
106
+ "name": "--forge-avatar-transition-duration",
107
+ "description": "The transition duration for animations.",
108
+ "values": [{ "name": "number" }]
129
109
  },
130
110
  {
131
- "name": "--forge-bottom-sheet-animation-timing",
132
- "description": "The timing function of the bottom sheet animation to fullscreen.",
133
- "values": []
111
+ "name": "--forge-avatar-transition-timing",
112
+ "description": "The transition timing function for animations.",
113
+ "values": [{ "name": "string" }]
134
114
  },
135
115
  {
136
116
  "name": "--forge-banner-background",
@@ -172,6 +152,26 @@
172
152
  "description": "The transition easing function.",
173
153
  "values": []
174
154
  },
155
+ {
156
+ "name": "--forge-bottom-sheet-desktop-max-width",
157
+ "description": "The maximum width of the bottom sheet on desktop.",
158
+ "values": []
159
+ },
160
+ {
161
+ "name": "--forge-bottom-sheet-desktop-min-width",
162
+ "description": "The minimum width of the bottom sheet on desktop.",
163
+ "values": []
164
+ },
165
+ {
166
+ "name": "--forge-bottom-sheet-animation-duration",
167
+ "description": "The duration of the bottom sheet animation to fullscreen.",
168
+ "values": []
169
+ },
170
+ {
171
+ "name": "--forge-bottom-sheet-animation-timing",
172
+ "description": "The timing function of the bottom sheet animation to fullscreen.",
173
+ "values": []
174
+ },
175
175
  {
176
176
  "name": "--forge-button-primary-color",
177
177
  "description": "The primary color of the button.",
@@ -5424,11 +5424,11 @@
5424
5424
  }
5425
5425
  ],
5426
5426
  "pseudoElements": [
5427
- { "name": "::part(root)", "description": "The root container element." },
5428
5427
  {
5429
5428
  "name": "::part(root)",
5430
5429
  "description": "The root element of the backdrop."
5431
5430
  },
5431
+ { "name": "::part(root)", "description": "The root container element." },
5432
5432
  {
5433
5433
  "name": "::part(root)",
5434
5434
  "description": "The root element of the bottom sheet."
@@ -14,45 +14,6 @@
14
14
  ],
15
15
  "references": []
16
16
  },
17
- {
18
- "name": "forge-avatar",
19
- "description": "Avatars represent an entity via text or image.\n---\n\n\n### **Slots:**\n - _default_ - The default slot for avatar content if not provided via text/imageUrl.\n\n### **CSS Properties:**\n - **--forge-avatar-background** - The background color of the avatar. _(default: undefined)_\n- **--forge-avatar-shape** - The border radius of the avatar, defaults to 50%. _(default: undefined)_\n- **--forge-avatar-color** - The text color of the avatar. _(default: undefined)_\n- **--forge-avatar-size** - The height and width of the avatar. _(default: undefined)_\n- **--forge-avatar-transition-duration** - The transition duration for animations. _(default: undefined)_\n- **--forge-avatar-transition-timing** - The transition timing function for animations. _(default: undefined)_\n\n### **CSS Parts:**\n - **root** - The root container element.",
20
- "attributes": [
21
- {
22
- "name": "text",
23
- "description": "The text to display in the avatar.",
24
- "values": []
25
- },
26
- {
27
- "name": "letter-count",
28
- "description": "Controls the number of letters to display from the text. By default the text is split on spaces and the first character of each word is used.",
29
- "values": []
30
- },
31
- {
32
- "name": "image-url",
33
- "description": "The background image URL to use.",
34
- "values": []
35
- }
36
- ],
37
- "references": []
38
- },
39
- {
40
- "name": "forge-backdrop",
41
- "description": "\n---\n\n\n### **Methods:**\n - **show(): _void_** - Immediately shows the backdrop by setting the `visibility` to `true` without animations.\n- **hide(): _void_** - Immediately hides the backdrop by setting the `visibility` to `false` without animations.\n- **fadeIn(): _Promise<void>_** - Sets the `visibility` to `true` and animates in.\n- **fadeOut(): _Promise<void>_** - Sets the `visibility` to `false` and animates out.\n\n### **CSS Properties:**\n - **--forge-backdrop-background** - The backdrop background color. _(default: undefined)_\n- **--forge-backdrop-opacity** - The backdrop opacity. _(default: undefined)_\n- **--forge-backdrop-z-index** - The backdrop z-index. _(default: undefined)_\n- **--forge-backdrop-enter-animation-duration** - The animation duration for the enter animation. _(default: undefined)_\n- **--forge-backdrop-enter-animation-easing** - The animation easing for the enter animation. _(default: undefined)_\n- **--forge-backdrop-exit-animation-duration** - The animation duration for the exit animation. _(default: undefined)_\n- **--forge-backdrop-exit-animation-easing** - The animation easing for the exit animation. _(default: undefined)_\n\n### **CSS Parts:**\n - **root** - The root element of the backdrop.",
42
- "attributes": [
43
- {
44
- "name": "visible",
45
- "description": "Whether the backdrop is visible.",
46
- "values": []
47
- },
48
- {
49
- "name": "fixed",
50
- "description": "Whether the backdrop uses \"fixed\" or \"relative\" positioning.",
51
- "values": []
52
- }
53
- ],
54
- "references": []
55
- },
56
17
  {
57
18
  "name": "forge-autocomplete",
58
19
  "description": "\n---\n\n\n### **Events:**\n - **forge-autocomplete-change** - Fired when the value changes.\n- **forge-autocomplete-select** - Fired when an option is selected. Only applies when in \"stateless\" `mode`.\n- **forge-autocomplete-scrolled-bottom** - Fired when the dropdown is scrolled to the bottom. Only applies when `observe-scroll` is enabled.\n\n### **Methods:**\n - **appendOptions(options: _IAutocompleteOption[] | IAutocompleteOptionGroup[]_): _void_** - Adds options to the dropdown while it is open. Has no effect if the dropdown is closed.\n- **openDropdown(): _void_** - Opens the dropdown.\n- **closeDropdown(): _void_** - Closes the dropdown.\n- **forceFilter(opts: _IAutocompleteForceFilterOptions_): _void_** - Forces the filter callback to be executed to update the current selection state with new options.",
@@ -172,27 +133,39 @@
172
133
  "references": []
173
134
  },
174
135
  {
175
- "name": "forge-bottom-sheet",
176
- "description": "Bottom sheets slide up from the bottom of the screen to reveal more content and/or actions that the user can take.\n---\n\n\n### **Events:**\n - **forge-bottom-sheet-before-close** - Fires before the bottom sheet closes.\n- **forge-bottom-sheet-close** - Fires after the bottom sheet closes.\n- **forge-bottom-sheet-open** - Fires after the bottom sheet opens.\n- **forge-bottom-sheet-drag-start** - Fires when the bottom sheet starts to be dragged.\n- **forge-bottom-sheet-dragged** - Fires when the bottom sheet is dragged.\n- **forge-bottom-sheet-drag-end** - Fires when the bottom sheet drag ends.\n- **forge-bottom-sheet-drag-cancel** - Fires when the bottom sheet drag is cancelled.\n- **forge-bottom-sheet-fullscreen** - Fires when the bottom sheet is toggled to fullscreen.\n\n### **Slots:**\n - _default_ - The content of the bottom sheet. This is a passthrough slot to the dialog surface.\n\n### **CSS Properties:**\n - **--forge-bottom-sheet-desktop-max-width** - The maximum width of the bottom sheet on desktop. _(default: undefined)_\n- **--forge-bottom-sheet-desktop-min-width** - The minimum width of the bottom sheet on desktop. _(default: undefined)_\n- **--forge-bottom-sheet-animation-duration** - The duration of the bottom sheet animation to fullscreen. _(default: undefined)_\n- **--forge-bottom-sheet-animation-timing** - The timing function of the bottom sheet animation to fullscreen. _(default: undefined)_\n\n### **CSS Parts:**\n - **root** - The root element of the bottom sheet.\n- **surface** - The surface element of the bottom sheet within th dialog.",
136
+ "name": "forge-backdrop",
137
+ "description": "\n---\n\n\n### **Methods:**\n - **show(): _void_** - Immediately shows the backdrop by setting the `visibility` to `true` without animations.\n- **hide(): _void_** - Immediately hides the backdrop by setting the `visibility` to `false` without animations.\n- **fadeIn(): _Promise<void>_** - Sets the `visibility` to `true` and animates in.\n- **fadeOut(): _Promise<void>_** - Sets the `visibility` to `false` and animates out.\n\n### **CSS Properties:**\n - **--forge-backdrop-background** - The backdrop background color. _(default: undefined)_\n- **--forge-backdrop-opacity** - The backdrop opacity. _(default: undefined)_\n- **--forge-backdrop-z-index** - The backdrop z-index. _(default: undefined)_\n- **--forge-backdrop-enter-animation-duration** - The animation duration for the enter animation. _(default: undefined)_\n- **--forge-backdrop-enter-animation-easing** - The animation easing for the enter animation. _(default: undefined)_\n- **--forge-backdrop-exit-animation-duration** - The animation duration for the exit animation. _(default: undefined)_\n- **--forge-backdrop-exit-animation-easing** - The animation easing for the exit animation. _(default: undefined)_\n\n### **CSS Parts:**\n - **root** - The root element of the backdrop.",
177
138
  "attributes": [
178
139
  {
179
- "name": "open",
180
- "description": "Whether the bottom sheet is open.",
140
+ "name": "visible",
141
+ "description": "Whether the backdrop is visible.",
181
142
  "values": []
182
143
  },
183
144
  {
184
- "name": "mode",
185
- "description": "The mode of the bottom sheet.",
186
- "values": [{ "name": "BottomSheetMode" }]
145
+ "name": "fixed",
146
+ "description": "Whether the backdrop uses \"fixed\" or \"relative\" positioning.",
147
+ "values": []
148
+ }
149
+ ],
150
+ "references": []
151
+ },
152
+ {
153
+ "name": "forge-avatar",
154
+ "description": "Avatars represent an entity via text or image.\n---\n\n\n### **Slots:**\n - _default_ - The default slot for avatar content if not provided via text/imageUrl.\n\n### **CSS Properties:**\n - **--forge-avatar-background** - The background color of the avatar. _(default: undefined)_\n- **--forge-avatar-shape** - The border radius of the avatar, defaults to 50%. _(default: undefined)_\n- **--forge-avatar-color** - The text color of the avatar. _(default: undefined)_\n- **--forge-avatar-size** - The height and width of the avatar. _(default: undefined)_\n- **--forge-avatar-transition-duration** - The transition duration for animations. _(default: undefined)_\n- **--forge-avatar-transition-timing** - The transition timing function for animations. _(default: undefined)_\n\n### **CSS Parts:**\n - **root** - The root container element.",
155
+ "attributes": [
156
+ {
157
+ "name": "text",
158
+ "description": "The text to display in the avatar.",
159
+ "values": []
187
160
  },
188
161
  {
189
- "name": "persistent",
190
- "description": "Whether the bottom sheet is persistent.",
162
+ "name": "letter-count",
163
+ "description": "Controls the number of letters to display from the text. By default the text is split on spaces and the first character of each word is used.",
191
164
  "values": []
192
165
  },
193
166
  {
194
- "name": "fullscreen",
195
- "description": "Whether the bottom sheet is fullscreen.",
167
+ "name": "image-url",
168
+ "description": "The background image URL to use.",
196
169
  "values": []
197
170
  }
198
171
  ],
@@ -220,6 +193,33 @@
220
193
  ],
221
194
  "references": []
222
195
  },
196
+ {
197
+ "name": "forge-bottom-sheet",
198
+ "description": "Bottom sheets slide up from the bottom of the screen to reveal more content and/or actions that the user can take.\n---\n\n\n### **Events:**\n - **forge-bottom-sheet-before-close** - Fires before the bottom sheet closes.\n- **forge-bottom-sheet-close** - Fires after the bottom sheet closes.\n- **forge-bottom-sheet-open** - Fires after the bottom sheet opens.\n- **forge-bottom-sheet-drag-start** - Fires when the bottom sheet starts to be dragged.\n- **forge-bottom-sheet-dragged** - Fires when the bottom sheet is dragged.\n- **forge-bottom-sheet-drag-end** - Fires when the bottom sheet drag ends.\n- **forge-bottom-sheet-drag-cancel** - Fires when the bottom sheet drag is cancelled.\n- **forge-bottom-sheet-fullscreen** - Fires when the bottom sheet is toggled to fullscreen.\n\n### **Slots:**\n - _default_ - The content of the bottom sheet. This is a passthrough slot to the dialog surface.\n\n### **CSS Properties:**\n - **--forge-bottom-sheet-desktop-max-width** - The maximum width of the bottom sheet on desktop. _(default: undefined)_\n- **--forge-bottom-sheet-desktop-min-width** - The minimum width of the bottom sheet on desktop. _(default: undefined)_\n- **--forge-bottom-sheet-animation-duration** - The duration of the bottom sheet animation to fullscreen. _(default: undefined)_\n- **--forge-bottom-sheet-animation-timing** - The timing function of the bottom sheet animation to fullscreen. _(default: undefined)_\n\n### **CSS Parts:**\n - **root** - The root element of the bottom sheet.\n- **surface** - The surface element of the bottom sheet within th dialog.",
199
+ "attributes": [
200
+ {
201
+ "name": "open",
202
+ "description": "Whether the bottom sheet is open.",
203
+ "values": []
204
+ },
205
+ {
206
+ "name": "mode",
207
+ "description": "The mode of the bottom sheet.",
208
+ "values": [{ "name": "BottomSheetMode" }]
209
+ },
210
+ {
211
+ "name": "persistent",
212
+ "description": "Whether the bottom sheet is persistent.",
213
+ "values": []
214
+ },
215
+ {
216
+ "name": "fullscreen",
217
+ "description": "Whether the bottom sheet is fullscreen.",
218
+ "values": []
219
+ }
220
+ ],
221
+ "references": []
222
+ },
223
223
  {
224
224
  "name": "forge-button",
225
225
  "description": "Buttons represent actions that a user can take.\n---\n\n\n### **Events:**\n - **click** - Fires when the button is clicked.\n\n### **Methods:**\n - **click(): _void_** - Clicks the button.\n- **focus(options: _ExperimentalFocusOptions_): _void_** - Focuses the button.\n\n### **Slots:**\n - _default_ - This is a default/unnamed slot for the label text.\n- **start** - Elements to logically render before the label text.\n- **end** - Elements to logically render after the label text.\n\n### **CSS Properties:**\n - **--forge-button-primary-color** - The primary color of the button. _(default: undefined)_\n- **--forge-button-text-color** - The text color of the button. Inherits from primary color. _(default: undefined)_\n- **--forge-button-disabled-color** - The disabled color of the button. _(default: undefined)_\n- **--forge-button-padding** - The padding of the button. _(default: undefined)_\n- **--forge-button-display** - The display of the button. _(default: undefined)_\n- **--forge-button-justify** - The flex justify of the button. _(default: undefined)_\n- **--forge-button-shape** - The shape of the button. _(default: undefined)_\n- **--forge-button-height** - The height of the button. _(default: undefined)_\n- **--forge-button-min-width** - The min-width of the button. _(default: undefined)_\n- **--forge-button-spacing** - The spacing of the button. _(default: undefined)_\n- **--forge-button-border-width** - The border-width of the button. _(default: undefined)_\n- **--forge-button-border-style** - The border style of the button. _(default: undefined)_\n- **--forge-button-border-color** - The border color of the button. _(default: undefined)_\n- **--forge-button-shape-start-start-radius** - The shape start start radius of the button. _(default: undefined)_\n- **--forge-button-shape-start-end-radius** - The shape start end radius of the button. _(default: undefined)_\n- **--forge-button-shape-end-start-radius** - The shape end start radius of the button. _(default: undefined)_\n- **--forge-button-shape-end-end-radius** - The shape end end radius of the button. _(default: undefined)_\n- **--forge-button-padding-block** - The padding block of the button. _(default: undefined)_\n- **--forge-button-padding-inline** - The padding inline of the button. _(default: undefined)_\n- **--forge-button-background** - The background color of the button. _(default: undefined)_\n- **--forge-button-hover-background** - The background color of the button on hover. _(default: undefined)_\n- **--forge-button-active-background** - The background color of the button on active state. _(default: undefined)_\n- **--forge-button-color** - The text color of the button. _(default: undefined)_\n- **--forge-button-icon-size** - The size of the icon in the button. _(default: undefined)_\n- **--forge-button-shadow** - The shadow of the button. _(default: undefined)_\n- **--forge-button-hover-shadow** - The shadow of the button on hover. _(default: undefined)_\n- **--forge-button-active-shadow** - The shadow of the button on active state. _(default: undefined)_\n- **--forge-button-cursor** - The cursor type of the button. _(default: undefined)_\n- **--forge-button-transition-duration** - The transition duration of the button. _(default: undefined)_\n- **--forge-button-transition-timing** - The transition timing of the button. _(default: undefined)_\n- **--forge-button-text-padding-inline** - The inline padding of the button when using the text variant. _(default: undefined)_\n- **--forge-button-filled-background** - The background color of the filled button. _(default: undefined)_\n- **--forge-button-filled-disabled-background** - The background color of the disabled filled button. _(default: undefined)_\n- **--forge-button-filled-color** - The text color of the filled button. _(default: undefined)_\n- **--forge-button-filled-disabled-color** - The text color of the disabled filled button. _(default: undefined)_\n- **--forge-button-raised-background** - The background color of the raised button. _(default: undefined)_\n- **--forge-button-raised-disabled-background** - The background color of the disabled raised button. _(default: undefined)_\n- **--forge-button-raised-color** - The text color of the raised button. _(default: undefined)_\n- **--forge-button-raised-disabled-color** - The text color of the disabled raised button. _(default: undefined)_\n- **--forge-button-raised-shadow** - The shadow of the raised button. _(default: undefined)_\n- **--forge-button-raised-hover-shadow** - The shadow of the raised button on hover. _(default: undefined)_\n- **--forge-button-raised-active-shadow** - The shadow of the raised button on active state. _(default: undefined)_\n- **--forge-button-raised-disabled-shadow** - The shadow of the disabled raised button. _(default: undefined)_\n- **--forge-button-flat-background** - The background color of the flat button. _(default: undefined)_\n- **--forge-button-flat-disabled-background** - The background color of the disabled flat button. _(default: undefined)_\n- **--forge-button-flat-color** - The text color of the flat button. _(default: undefined)_\n- **--forge-button-flat-disabled-color** - The text color of the disabled flat button. _(default: undefined)_\n- **--forge-button-outlined-background** - The background color of the outlined button. _(default: undefined)_\n- **--forge-button-outlined-color** - The text color of the outlined button. _(default: undefined)_\n- **--forge-button-outlined-border-width** - The border width of the outlined button. _(default: undefined)_\n- **--forge-button-outlined-border-style** - The border style of the outlined button. _(default: undefined)_\n- **--forge-button-outlined-border-color** - The border color of the outlined button. _(default: undefined)_\n- **--forge-button-link-color** - The text color of the link button. _(default: undefined)_\n- **--forge-button-link-text-decoration** - The text decoration of the link button. _(default: undefined)_\n- **--forge-button-link-height** - The height of the link button. _(default: undefined)_\n- **--forge-button-link-padding** - The padding of the link button. _(default: undefined)_\n- **--forge-button-link-line-height** - The line height of the link button. _(default: undefined)_\n- **--forge-button-link-width** - The width of the link button. _(default: undefined)_\n- **--forge-button-link-hover-text-decoration** - The text decoration of the link button on hover. _(default: undefined)_\n- **--forge-button-link-active-opacity** - The opacity of the link button on active state. _(default: undefined)_\n- **--forge-button-link-transition-duration** - The transition duration of the link button. _(default: undefined)_\n- **--forge-button-link-transition-timing** - The transition timing of the link button. _(default: undefined)_\n- **--forge-button-disabled-cursor** - The cursor type of the disabled button. _(default: undefined)_\n- **--forge-button-disabled-text-color** - The text color of the disabled button. _(default: undefined)_\n- **--forge-button-disabled-background** - The background color of the disabled button. _(default: undefined)_\n- **--forge-button-disabled-border-color** - The border color of the disabled button. _(default: undefined)_\n- **--forge-button-disabled-shadow** - The shadow of the disabled button. _(default: undefined)_\n- **--forge-button-dense-height** - The height of the dense button. _(default: undefined)_\n- **--forge-button-pill-shape** - The shape of the pill button. _(default: undefined)_\n- **--forge-button-pill-padding-inline** - The inline padding of the pill button. _(default: undefined)_\n\n### **CSS Parts:**\n - **root** - The root container element.\n- **focus-indicator** - The focus-indicator indicator element.\n- **state-layer** - The state-layer surface element.",
@@ -1268,49 +1268,49 @@
1268
1268
  "references": []
1269
1269
  },
1270
1270
  {
1271
- "name": "forge-label",
1272
- "description": "The Forge Label component is used to associate a text label with a compatible Forge component.\n---\n\n\n### **Methods:**\n - **update(): _void_** - Updates the targeted element with the label's current text content.",
1271
+ "name": "forge-label-value",
1272
+ "description": "Label-value pairs are used to display a label and a value in a compact format.\n---\n\n\n### **Slots:**\n - **label** - The label to display.\n- **value** - The value to display.\n- **icon** - An icon to display next to the label.\n\n### **CSS Properties:**\n - **--forge-label-value-align** - Aligns the label and value. Possible values: `start` (default), `center`, `end`. _(default: undefined)_\n- **--forge-label-value-label-spacing** - The spacing between the label and value. _(default: undefined)_\n- **--forge-label-value-label-block-start-spacing** - The block start spacing for the label. _(default: undefined)_\n- **--forge-label-value-label-block-end-spacing** - The block end spacing for the label. _(default: undefined)_\n- **--forge-label-value-label-color** - The color to apply to the label. _(default: undefined)_\n- **--forge-label-value-icon-spacing** - The spacing between the icon and the label. _(default: undefined)_\n- **--forge-label-value-inline-label-spacing** - The spacing between the label and value when displayed inline. _(default: undefined)_\n- **--forge-label-value-empty-color** - The color to apply to the value when empty. _(default: undefined)_\n- **--forge-label-value-empty-style** - The font-style to apply to the value when empty. _(default: undefined)_\n\n### **CSS Parts:**\n - **root** - The root layout container element.\n- **label** - The label container element.\n- **value** - The value container element.\n- **icon** - The icon container element.",
1273
1273
  "attributes": [
1274
1274
  {
1275
- "name": "for",
1276
- "description": "The id of the associated element.",
1277
- "values": []
1278
- },
1279
- {
1280
- "name": "dynamic",
1281
- "description": "Propagates changes in the label's text content to the associated element.",
1275
+ "name": "empty",
1276
+ "description": "If present, the value will be displayed in an alternative emphasized style.",
1282
1277
  "values": []
1283
1278
  },
1284
1279
  {
1285
- "name": "non-interactive",
1286
- "description": "Removes click handling from the label.",
1280
+ "name": "ellipsis",
1281
+ "description": "If present, the value will be truncated with an ellipsis if it overflows its container.",
1287
1282
  "values": []
1288
1283
  },
1289
1284
  {
1290
- "name": "legend",
1291
- "description": "Whether or not the label should be associated with an ancestor element.",
1285
+ "name": "inline",
1286
+ "description": "If present, the label and value will be displayed on the same line.",
1292
1287
  "values": []
1293
1288
  }
1294
1289
  ],
1295
1290
  "references": []
1296
1291
  },
1297
1292
  {
1298
- "name": "forge-label-value",
1299
- "description": "Label-value pairs are used to display a label and a value in a compact format.\n---\n\n\n### **Slots:**\n - **label** - The label to display.\n- **value** - The value to display.\n- **icon** - An icon to display next to the label.\n\n### **CSS Properties:**\n - **--forge-label-value-align** - Aligns the label and value. Possible values: `start` (default), `center`, `end`. _(default: undefined)_\n- **--forge-label-value-label-spacing** - The spacing between the label and value. _(default: undefined)_\n- **--forge-label-value-label-block-start-spacing** - The block start spacing for the label. _(default: undefined)_\n- **--forge-label-value-label-block-end-spacing** - The block end spacing for the label. _(default: undefined)_\n- **--forge-label-value-label-color** - The color to apply to the label. _(default: undefined)_\n- **--forge-label-value-icon-spacing** - The spacing between the icon and the label. _(default: undefined)_\n- **--forge-label-value-inline-label-spacing** - The spacing between the label and value when displayed inline. _(default: undefined)_\n- **--forge-label-value-empty-color** - The color to apply to the value when empty. _(default: undefined)_\n- **--forge-label-value-empty-style** - The font-style to apply to the value when empty. _(default: undefined)_\n\n### **CSS Parts:**\n - **root** - The root layout container element.\n- **label** - The label container element.\n- **value** - The value container element.\n- **icon** - The icon container element.",
1293
+ "name": "forge-label",
1294
+ "description": "The Forge Label component is used to associate a text label with a compatible Forge component.\n---\n\n\n### **Methods:**\n - **update(): _void_** - Updates the targeted element with the label's current text content.",
1300
1295
  "attributes": [
1301
1296
  {
1302
- "name": "empty",
1303
- "description": "If present, the value will be displayed in an alternative emphasized style.",
1297
+ "name": "for",
1298
+ "description": "The id of the associated element.",
1304
1299
  "values": []
1305
1300
  },
1306
1301
  {
1307
- "name": "ellipsis",
1308
- "description": "If present, the value will be truncated with an ellipsis if it overflows its container.",
1302
+ "name": "dynamic",
1303
+ "description": "Propagates changes in the label's text content to the associated element.",
1309
1304
  "values": []
1310
1305
  },
1311
1306
  {
1312
- "name": "inline",
1313
- "description": "If present, the label and value will be displayed on the same line.",
1307
+ "name": "non-interactive",
1308
+ "description": "Removes click handling from the label.",
1309
+ "values": []
1310
+ },
1311
+ {
1312
+ "name": "legend",
1313
+ "description": "Whether or not the label should be associated with an ancestor element.",
1314
1314
  "values": []
1315
1315
  }
1316
1316
  ],
@@ -1649,7 +1649,7 @@
1649
1649
  },
1650
1650
  {
1651
1651
  "name": "distinct",
1652
- "description": "Enforces that this popover should be the only one open in the same context. Use a unique name otherwise a default context will be used.",
1652
+ "description": "Enforces that this popover should be the only one open with the same unique value.",
1653
1653
  "values": []
1654
1654
  },
1655
1655
  {
@@ -2651,28 +2651,6 @@
2651
2651
  ],
2652
2652
  "references": []
2653
2653
  },
2654
- {
2655
- "name": "forge-app-bar-search",
2656
- "description": "\n---\n\n\n### **Events:**\n - **forge-app-bar-search-input** - Emits when the users executes the search via pressing the Enter key while the `<input>` has focus.\n\n### **Slots:**\n - _default_ - The default (unnamed) slot is where child `<input>` elements will be placed.\n- **action** - Places actions at the end of the input.\n\n### **CSS Properties:**\n - **--forge-theme-on-primary** - Controls the border-color of the container outline, the font-color, and icon color. _(default: undefined)_\n- **--forge-theme-on-surface** - Controls the font color of the buttons. _(default: undefined)_\n- **--forge-theme-text-medium** - Controls the placeholder font color. _(default: undefined)_\n- **--forge-app-bar-search-theme-background** - Controls the background-color of the container. _(default: undefined)_\n- **--forge-app-bar-search-theme-background-focused** - Controls the focused background-color of the container. _(default: undefined)_\n- **--forge-app-bar-search-theme-hover-opacity** - Controls the hover opacity of the outline. _(default: undefined)_\n- **--forge-app-bar-search-theme-disabled-opacity** - Controls the disabled opacity of the component. _(default: undefined)_\n\n### **CSS Parts:**\n - **root** - The root element\n- **container** - The input container element.\n- **icon-container** - The icon container element.\n- **icon** - The <forge-icon> element.\n- **context** - The context container element.\n- **context-divider** - The context divider element.\n- **context-button** - The context button element.\n- **context-button-text** - The context button text element.\n- **context-button-icon** - The context button icon element.\n- **global-icon-container** - The global icon container element.\n- **global-icon** - The global icon <forge-icon> element.\n- **actions-container** - The action container element around the slot.",
2657
- "attributes": [
2658
- {
2659
- "name": "disabled",
2660
- "description": "A boolean attribute that, if present, indicates that the input should be disabled.",
2661
- "values": []
2662
- },
2663
- {
2664
- "name": "value",
2665
- "description": "The value of the input.",
2666
- "values": []
2667
- },
2668
- {
2669
- "name": "placeholder",
2670
- "description": "The placeholder text of the input.",
2671
- "values": []
2672
- }
2673
- ],
2674
- "references": []
2675
- },
2676
2654
  {
2677
2655
  "name": "forge-app-bar-profile-button",
2678
2656
  "description": "\n---\n\n\n### **Events:**\n - **forge-profile-card-sign-out** - Fires when the sign out button is clicked.\n- **forge-profile-card-profile** - Fires when the profile button is clicked.",
@@ -2737,6 +2715,28 @@
2737
2715
  ],
2738
2716
  "references": []
2739
2717
  },
2718
+ {
2719
+ "name": "forge-app-bar-search",
2720
+ "description": "\n---\n\n\n### **Events:**\n - **forge-app-bar-search-input** - Emits when the users executes the search via pressing the Enter key while the `<input>` has focus.\n\n### **Slots:**\n - _default_ - The default (unnamed) slot is where child `<input>` elements will be placed.\n- **action** - Places actions at the end of the input.\n\n### **CSS Properties:**\n - **--forge-theme-on-primary** - Controls the border-color of the container outline, the font-color, and icon color. _(default: undefined)_\n- **--forge-theme-on-surface** - Controls the font color of the buttons. _(default: undefined)_\n- **--forge-theme-text-medium** - Controls the placeholder font color. _(default: undefined)_\n- **--forge-app-bar-search-theme-background** - Controls the background-color of the container. _(default: undefined)_\n- **--forge-app-bar-search-theme-background-focused** - Controls the focused background-color of the container. _(default: undefined)_\n- **--forge-app-bar-search-theme-hover-opacity** - Controls the hover opacity of the outline. _(default: undefined)_\n- **--forge-app-bar-search-theme-disabled-opacity** - Controls the disabled opacity of the component. _(default: undefined)_\n\n### **CSS Parts:**\n - **root** - The root element\n- **container** - The input container element.\n- **icon-container** - The icon container element.\n- **icon** - The <forge-icon> element.\n- **context** - The context container element.\n- **context-divider** - The context divider element.\n- **context-button** - The context button element.\n- **context-button-text** - The context button text element.\n- **context-button-icon** - The context button icon element.\n- **global-icon-container** - The global icon container element.\n- **global-icon** - The global icon <forge-icon> element.\n- **actions-container** - The action container element around the slot.",
2721
+ "attributes": [
2722
+ {
2723
+ "name": "disabled",
2724
+ "description": "A boolean attribute that, if present, indicates that the input should be disabled.",
2725
+ "values": []
2726
+ },
2727
+ {
2728
+ "name": "value",
2729
+ "description": "The value of the input.",
2730
+ "values": []
2731
+ },
2732
+ {
2733
+ "name": "placeholder",
2734
+ "description": "The placeholder text of the input.",
2735
+ "values": []
2736
+ }
2737
+ ],
2738
+ "references": []
2739
+ },
2740
2740
  {
2741
2741
  "name": "forge-button-toggle",
2742
2742
  "description": "\n---\n\n\n### **Events:**\n - **forge-button-toggle-select** - Dispatches when the user toggles the button.\n\n### **Slots:**\n - _default_ - The default/unnamed slot for the button toggle's content.\n- **start** - Typically reserved for content/icons that render logically before the default slot content.\n- **end** - Typically reserved content/icons that render logically after the default slot content.\n\n### **CSS Properties:**\n - **--forge-button-toggle-display** - The `display` style for the button toggle container element. _(default: undefined)_\n- **--forge-button-toggle-min-width** - The minimum width. _(default: undefined)_\n- **--forge-button-toggle-spacing** - The spacing between the button toggle and its content. _(default: undefined)_\n- **--forge-button-toggle-padding-block** - The padding on the block axis. _(default: undefined)_\n- **--forge-button-toggle-padding-inline** - The padding on the inline axis. _(default: undefined)_\n- **--forge-button-toggle-color** - The color of the button toggle content. _(default: undefined)_\n- **--forge-button-toggle-background** - The background of the button toggle. _(default: undefined)_\n- **--forge-button-toggle-cursor** - The cursor of the button toggle. _(default: undefined)_\n- **--forge-button-toggle-border-width** - The border-width of the button toggle. _(default: undefined)_\n- **--forge-button-toggle-border-style** - The border-style of the button toggle. _(default: undefined)_\n- **--forge-button-toggle-border-color** - The border-color of the button toggle. _(default: undefined)_\n- **--forge-button-toggle-shape** - The shape radius of the button toggle. _(default: undefined)_\n- **--forge-button-toggle-shape-start-start** - The start-start shape radius of the button toggle. _(default: undefined)_\n- **--forge-button-toggle-shape-start-end** - The start-end shape radius of the button toggle. _(default: undefined)_\n- **--forge-button-toggle-shape-end-start** - The end-start shape radius of the button toggle. _(default: undefined)_\n- **--forge-button-toggle-shape-end-end** - The end-end shape radius of the button toggle. _(default: undefined)_\n- **--forge-button-toggle-selected-background** - The background of the button toggle when selected. _(default: undefined)_\n- **--forge-button-toggle-selected-color** - The color of the button toggle content when selected. _(default: undefined)_\n- **--forge-button-toggle-selected-disabled-background** - The background of the button toggle when selected and disabled. _(default: undefined)_\n- **--forge-button-toggle-disabled-opacity** - The opacity of the button toggle when disabled. _(default: undefined)_\n- **--forge-button-toggle-disabled-cursor** - The cursor of the button toggle when disabled. _(default: undefined)_\n- **--forge-button-toggle-disabled-color** - The color of the button toggle content when disabled. _(default: undefined)_\n- **--forge-button-toggle-disabled-background** - The background of the button toggle when disabled. _(default: undefined)_\n- **--forge-button-toggle-transition-duration** - The transition-duration of various properties. _(default: undefined)_\n- **--forge-button-toggle-transition-timing** - The transition-timing of various properties. _(default: undefined)_\n\n### **CSS Parts:**\n - **root** - The root container element.\n- **focus-indicator** - The focus indicator element.\n- **state-layer** - The state layer surface element.",
@@ -50,8 +50,11 @@ export class DismissibleStack {
50
50
  * @param state The state to pass to the dismiss method of each element
51
51
  */
52
52
  async dismiss(el, state) {
53
- const elements = Array.from(this._dismissibleElements);
54
- const elementsAfter = elements.slice(elements.indexOf(el)).reverse();
53
+ const elements = DismissibleStack.instance.getAll();
54
+ const elementsAfter = elements
55
+ .slice(elements.indexOf(el))
56
+ .filter(element => element === el || element.contains(el))
57
+ .reverse();
55
58
  for (const element of elementsAfter) {
56
59
  if (!element[tryDismiss](state)) {
57
60
  break;
@@ -50,7 +50,6 @@ export declare const POPOVER_CONSTANTS: {
50
50
  TRIGGER_TYPE: PopoverTriggerType;
51
51
  HOVER_DELAY: number;
52
52
  PRESET: PopoverPreset;
53
- DISTINCT: string;
54
53
  };
55
54
  };
56
55
  export declare const POPOVER_HOVER_TIMEOUT = 500;
@@ -40,8 +40,7 @@ const events = {
40
40
  const defaults = {
41
41
  TRIGGER_TYPE: 'click',
42
42
  HOVER_DELAY: 0,
43
- PRESET: 'popover',
44
- DISTINCT: '<default>'
43
+ PRESET: 'popover'
45
44
  };
46
45
  export const POPOVER_CONSTANTS = {
47
46
  elementName,
@@ -103,10 +103,13 @@ export class PopoverCore extends WithLongpressListener((OverlayAwareCore)) {
103
103
  }
104
104
  this._previouslyFocusedElement = this._adapter.captureFocusedElement();
105
105
  this._adapter.setOverlayOpen(true);
106
- if (this._distinct) {
106
+ // Popovers can be distinct from each other, meaning that only one popover with the same distinct
107
+ // value can be open at a time. Let's capture the distinct group context and close any other popovers
108
+ // that are open in the same context.
109
+ if (this._distinct != null) {
107
110
  const allPopovers = DismissibleStack.instance.getAll().filter(el => el.tagName.toLowerCase() === 'forge-popover');
108
- const contextPopovers = allPopovers.filter(popover => popover.distinct === this._distinct);
109
- contextPopovers.filter(popover => popover !== this._adapter.hostElement).forEach(popover => (popover.open = false));
111
+ const contextPopovers = allPopovers.filter(popover => popover.distinct === this._distinct && !popover.persistent);
112
+ contextPopovers.filter(popover => popover !== this._adapter.hostElement).forEach(popover => popover.hideAsync());
110
113
  }
111
114
  if (!this.overlayElement.persistent) {
112
115
  DismissibleStack.instance.add(this._adapter.hostElement);
@@ -528,14 +531,6 @@ export class PopoverCore extends WithLongpressListener((OverlayAwareCore)) {
528
531
  return this._distinct;
529
532
  }
530
533
  set distinct(value) {
531
- value = value ?? null;
532
- if (this._distinct !== value) {
533
- if (this._adapter.hasHostAttribute(POPOVER_CONSTANTS.attributes.DISTINCT) && !value) {
534
- this._distinct = POPOVER_CONSTANTS.defaults.DISTINCT;
535
- }
536
- else {
537
- this._distinct = value;
538
- }
539
- }
534
+ this._distinct = value;
540
535
  }
541
536
  }
@@ -45,7 +45,7 @@ declare global {
45
45
  * @property {number} [hoverDismissDelay=500] - The delay in milliseconds before the popover is dismissed when the user hovers outside of the popover.
46
46
  * @property {number} [hoverDelay=0] - The delay in milliseconds before the popover is shown.
47
47
  * @property {PopoverPreset} [preset="popover"] - The preset to use for the popover.
48
- * @property {string | null} [distinct=null] - Enforces that this popover should be the only one open in the same context. Use a unique name otherwise a default context will be used.
48
+ * @property {string | null} [distinct=null] - Enforces that this popover should be the only one open with the same unique value.
49
49
  *
50
50
  * @globalconfig placement
51
51
  * @globalconfig animationType
@@ -66,7 +66,7 @@ declare global {
66
66
  * @attribute {string} [hover-dismiss-delay=500] - The delay in milliseconds before the popover is dismissed when the user hovers outside of the popover.
67
67
  * @attribute {number} [hover-delay=0] - The delay in milliseconds before the popover is shown.
68
68
  * @attribute {string} [preset="popover"] - The preset to use for the popover.
69
- * @attribute {string | null} [distinct=null] - Enforces that this popover should be the only one open in the same context. Use a unique name otherwise a default context will be used.
69
+ * @attribute {string | null} [distinct=null] - Enforces that this popover should be the only one open with the same unique value.
70
70
  *
71
71
  * @event {CustomEvent<IPopoverToggleEventData>} forge-popover-beforetoggle - Dispatches before the popover is toggled, and is cancelable.
72
72
  * @event {CustomEvent<IPopoverToggleEventData>} forge-popover-toggle - Dispatches after the popover is toggled.
@@ -29,7 +29,7 @@ const styles = '@keyframes zoomin{from{transform:scale(.8)}to{transform:scale(1)
29
29
  * @property {number} [hoverDismissDelay=500] - The delay in milliseconds before the popover is dismissed when the user hovers outside of the popover.
30
30
  * @property {number} [hoverDelay=0] - The delay in milliseconds before the popover is shown.
31
31
  * @property {PopoverPreset} [preset="popover"] - The preset to use for the popover.
32
- * @property {string | null} [distinct=null] - Enforces that this popover should be the only one open in the same context. Use a unique name otherwise a default context will be used.
32
+ * @property {string | null} [distinct=null] - Enforces that this popover should be the only one open with the same unique value.
33
33
  *
34
34
  * @globalconfig placement
35
35
  * @globalconfig animationType
@@ -50,7 +50,7 @@ const styles = '@keyframes zoomin{from{transform:scale(.8)}to{transform:scale(1)
50
50
  * @attribute {string} [hover-dismiss-delay=500] - The delay in milliseconds before the popover is dismissed when the user hovers outside of the popover.
51
51
  * @attribute {number} [hover-delay=0] - The delay in milliseconds before the popover is shown.
52
52
  * @attribute {string} [preset="popover"] - The preset to use for the popover.
53
- * @attribute {string | null} [distinct=null] - Enforces that this popover should be the only one open in the same context. Use a unique name otherwise a default context will be used.
53
+ * @attribute {string | null} [distinct=null] - Enforces that this popover should be the only one open with the same unique value.
54
54
  *
55
55
  * @event {CustomEvent<IPopoverToggleEventData>} forge-popover-beforetoggle - Dispatches before the popover is toggled, and is cancelable.
56
56
  * @event {CustomEvent<IPopoverToggleEventData>} forge-popover-toggle - Dispatches after the popover is toggled.
@@ -142,7 +142,7 @@ let PopoverComponent = class PopoverComponent extends OverlayAware {
142
142
  this.preset = newValue;
143
143
  return;
144
144
  case POPOVER_CONSTANTS.observedAttributes.DISTINCT:
145
- this.distinct = !newValue ? null : newValue.trim();
145
+ this.distinct = newValue;
146
146
  return;
147
147
  }
148
148
  super.attributeChangedCallback(name, oldValue, newValue);