@shopify/ui-extensions 2025.10.0-rc.43 → 2025.10.0-rc.44

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (109) hide show
  1. package/build/ts/surfaces/admin/components/Avatar.d.ts +1 -0
  2. package/build/ts/surfaces/admin/components/Badge.d.ts +7 -1
  3. package/build/ts/surfaces/admin/components/Banner.d.ts +7 -1
  4. package/build/ts/surfaces/admin/components/Box.d.ts +70 -7
  5. package/build/ts/surfaces/admin/components/Button.d.ts +7 -1
  6. package/build/ts/surfaces/admin/components/ButtonGroup.d.ts +11 -1
  7. package/build/ts/surfaces/admin/components/Checkbox.d.ts +1 -0
  8. package/build/ts/surfaces/admin/components/Chip.d.ts +7 -1
  9. package/build/ts/surfaces/admin/components/Choice.d.ts +8 -1
  10. package/build/ts/surfaces/admin/components/ChoiceList.d.ts +8 -1
  11. package/build/ts/surfaces/admin/components/Clickable.d.ts +71 -7
  12. package/build/ts/surfaces/admin/components/ClickableChip.d.ts +7 -1
  13. package/build/ts/surfaces/admin/components/ColorField.d.ts +1 -0
  14. package/build/ts/surfaces/admin/components/DatePicker.d.ts +1 -0
  15. package/build/ts/surfaces/admin/components/Divider.d.ts +1 -0
  16. package/build/ts/surfaces/admin/components/EmailField.d.ts +1 -0
  17. package/build/ts/surfaces/admin/components/Grid.d.ts +123 -10
  18. package/build/ts/surfaces/admin/components/GridItem.d.ts +71 -7
  19. package/build/ts/surfaces/admin/components/Heading.d.ts +7 -1
  20. package/build/ts/surfaces/admin/components/Icon.d.ts +1 -0
  21. package/build/ts/surfaces/admin/components/Image.d.ts +64 -6
  22. package/build/ts/surfaces/admin/components/Link.d.ts +7 -1
  23. package/build/ts/surfaces/admin/components/ListItem.d.ts +8 -1
  24. package/build/ts/surfaces/admin/components/Modal.d.ts +1 -1
  25. package/build/ts/surfaces/admin/components/MoneyField.d.ts +1 -0
  26. package/build/ts/surfaces/admin/components/NumberField.d.ts +1 -0
  27. package/build/ts/surfaces/admin/components/Option.d.ts +7 -1
  28. package/build/ts/surfaces/admin/components/OptionGroup.d.ts +8 -1
  29. package/build/ts/surfaces/admin/components/OrderedList.d.ts +8 -1
  30. package/build/ts/surfaces/admin/components/Page.d.ts +11 -1
  31. package/build/ts/surfaces/admin/components/Paragraph.d.ts +8 -1
  32. package/build/ts/surfaces/admin/components/PasswordField.d.ts +1 -0
  33. package/build/ts/surfaces/admin/components/SearchField.d.ts +1 -0
  34. package/build/ts/surfaces/admin/components/Section.d.ts +7 -1
  35. package/build/ts/surfaces/admin/components/Select.d.ts +7 -1
  36. package/build/ts/surfaces/admin/components/Spinner.d.ts +1 -0
  37. package/build/ts/surfaces/admin/components/Stack.d.ts +87 -7
  38. package/build/ts/surfaces/admin/components/Switch.d.ts +1 -0
  39. package/build/ts/surfaces/admin/components/Table.d.ts +8 -1
  40. package/build/ts/surfaces/admin/components/TableBody.d.ts +8 -1
  41. package/build/ts/surfaces/admin/components/TableCell.d.ts +8 -1
  42. package/build/ts/surfaces/admin/components/TableHeader.d.ts +8 -1
  43. package/build/ts/surfaces/admin/components/TableHeaderRow.d.ts +7 -1
  44. package/build/ts/surfaces/admin/components/TableRow.d.ts +8 -1
  45. package/build/ts/surfaces/admin/components/Text.d.ts +7 -1
  46. package/build/ts/surfaces/admin/components/TextArea.d.ts +1 -0
  47. package/build/ts/surfaces/admin/components/TextField.d.ts +1 -0
  48. package/build/ts/surfaces/admin/components/Thumbnail.d.ts +1 -0
  49. package/build/ts/surfaces/admin/components/Tooltip.d.ts +7 -1
  50. package/build/ts/surfaces/admin/components/URLField.d.ts +1 -0
  51. package/build/ts/surfaces/admin/components/UnorderedList.d.ts +8 -1
  52. package/build/ts/surfaces/admin/components/shared.d.ts +7 -24
  53. package/build/ts/surfaces/point-of-sale/api/navigation-api/navigation-api.d.ts +1 -1
  54. package/build/tsconfig.tsbuildinfo +1 -1
  55. package/package.json +1 -1
  56. package/src/surfaces/admin/components/Avatar.d.ts +1 -0
  57. package/src/surfaces/admin/components/Badge.d.ts +7 -1
  58. package/src/surfaces/admin/components/Banner.d.ts +7 -1
  59. package/src/surfaces/admin/components/Box.d.ts +70 -7
  60. package/src/surfaces/admin/components/Button.d.ts +7 -1
  61. package/src/surfaces/admin/components/ButtonGroup.d.ts +11 -1
  62. package/src/surfaces/admin/components/Checkbox.d.ts +1 -0
  63. package/src/surfaces/admin/components/Chip.d.ts +7 -1
  64. package/src/surfaces/admin/components/Choice.d.ts +8 -1
  65. package/src/surfaces/admin/components/ChoiceList.d.ts +8 -1
  66. package/src/surfaces/admin/components/Clickable.d.ts +71 -7
  67. package/src/surfaces/admin/components/ClickableChip.d.ts +7 -1
  68. package/src/surfaces/admin/components/ColorField.d.ts +1 -0
  69. package/src/surfaces/admin/components/DatePicker.d.ts +1 -0
  70. package/src/surfaces/admin/components/Divider.d.ts +1 -0
  71. package/src/surfaces/admin/components/EmailField.d.ts +1 -0
  72. package/src/surfaces/admin/components/Grid.d.ts +123 -10
  73. package/src/surfaces/admin/components/GridItem.d.ts +71 -7
  74. package/src/surfaces/admin/components/Heading.d.ts +7 -1
  75. package/src/surfaces/admin/components/Icon.d.ts +1 -0
  76. package/src/surfaces/admin/components/Image.d.ts +64 -6
  77. package/src/surfaces/admin/components/Link.d.ts +7 -1
  78. package/src/surfaces/admin/components/ListItem.d.ts +8 -1
  79. package/src/surfaces/admin/components/Modal.d.ts +1 -1
  80. package/src/surfaces/admin/components/MoneyField.d.ts +1 -0
  81. package/src/surfaces/admin/components/NumberField.d.ts +1 -0
  82. package/src/surfaces/admin/components/Option.d.ts +7 -1
  83. package/src/surfaces/admin/components/OptionGroup.d.ts +8 -1
  84. package/src/surfaces/admin/components/OrderedList.d.ts +8 -1
  85. package/src/surfaces/admin/components/Page.d.ts +11 -1
  86. package/src/surfaces/admin/components/Paragraph.d.ts +8 -1
  87. package/src/surfaces/admin/components/PasswordField.d.ts +1 -0
  88. package/src/surfaces/admin/components/SearchField.d.ts +1 -0
  89. package/src/surfaces/admin/components/Section.d.ts +7 -1
  90. package/src/surfaces/admin/components/Select.d.ts +7 -1
  91. package/src/surfaces/admin/components/Spinner.d.ts +1 -0
  92. package/src/surfaces/admin/components/Stack.d.ts +87 -7
  93. package/src/surfaces/admin/components/Switch.d.ts +1 -0
  94. package/src/surfaces/admin/components/Table.d.ts +8 -1
  95. package/src/surfaces/admin/components/TableBody.d.ts +8 -1
  96. package/src/surfaces/admin/components/TableCell.d.ts +8 -1
  97. package/src/surfaces/admin/components/TableHeader.d.ts +8 -1
  98. package/src/surfaces/admin/components/TableHeaderRow.d.ts +7 -1
  99. package/src/surfaces/admin/components/TableRow.d.ts +8 -1
  100. package/src/surfaces/admin/components/Text.d.ts +7 -1
  101. package/src/surfaces/admin/components/TextArea.d.ts +1 -0
  102. package/src/surfaces/admin/components/TextField.d.ts +1 -0
  103. package/src/surfaces/admin/components/Thumbnail.d.ts +1 -0
  104. package/src/surfaces/admin/components/Tooltip.d.ts +7 -1
  105. package/src/surfaces/admin/components/URLField.d.ts +1 -0
  106. package/src/surfaces/admin/components/UnorderedList.d.ts +8 -1
  107. package/src/surfaces/admin/components/shared.d.ts +7 -24
  108. package/src/surfaces/admin/components.d.ts +323 -146
  109. package/src/surfaces/point-of-sale/api/navigation-api/navigation-api.ts +1 -1
@@ -10,7 +10,9 @@ import type {
10
10
  BoxProps$1,
11
11
  GridProps$1,
12
12
  MaybeAllValuesShorthandProperty,
13
+ SizeUnitsOrAuto,
13
14
  SizeUnits,
15
+ SizeUnitsOrNone,
14
16
  AlignItemsKeyword,
15
17
  JustifyItemsKeyword,
16
18
  AlignContentKeyword,
@@ -85,10 +87,20 @@ export interface BoxProps
85
87
  | 'minInlineSize'
86
88
  | 'overflow'
87
89
  > {
90
+ /**
91
+ * Adjust the background of the component.
92
+ *
93
+ * @default 'transparent'
94
+ */
88
95
  background: Extract<
89
96
  RequiredBoxProps['background'],
90
97
  'transparent' | 'base' | 'subdued' | 'strong'
91
98
  >;
99
+ /**
100
+ * Adjust the width of the border.
101
+ *
102
+ * @default '' - meaning no override
103
+ */
92
104
  borderWidth:
93
105
  | MaybeAllValuesShorthandProperty<
94
106
  Extract<
@@ -97,13 +109,28 @@ export interface BoxProps
97
109
  >
98
110
  >
99
111
  | Extract<RequiredBoxProps['borderWidth'], ''>;
112
+ /**
113
+ * Adjust the style of the border.
114
+ *
115
+ * @default '' - meaning no override
116
+ */
100
117
  borderStyle:
101
118
  | MaybeAllValuesShorthandProperty<BoxBorderStyles>
102
119
  | Extract<RequiredBoxProps['borderStyle'], ''>;
120
+ /**
121
+ * Adjust the color of the border.
122
+ *
123
+ * @default '' - meaning no override
124
+ */
103
125
  borderColor: Extract<
104
126
  RequiredBoxProps['borderColor'],
105
127
  'subdued' | 'base' | 'strong' | ''
106
128
  >;
129
+ /**
130
+ * Adjust the radius of the border.
131
+ *
132
+ * @default 'none'
133
+ */
107
134
  borderRadius: MaybeAllValuesShorthandProperty<BoxBorderRadii>;
108
135
  /**
109
136
  * Adjust the padding of all edges.
@@ -200,26 +227,54 @@ export interface BoxProps
200
227
  * @default 'auto'
201
228
  */
202
229
  display: ResponsiveBoxProps['display'];
203
- blockSize: SizeUnits | 'auto';
204
- minBlockSize: SizeUnits | '0';
205
- maxBlockSize: SizeUnits | 'none';
206
- inlineSize: SizeUnits | 'auto';
207
- minInlineSize: SizeUnits | '0';
208
- maxInlineSize: SizeUnits | 'none';
230
+ /**
231
+ * Adjust the [block size](https://developer.mozilla.org/en-US/docs/Web/CSS/block-size).
232
+ *
233
+ * @default 'auto'
234
+ */
235
+ blockSize: SizeUnitsOrAuto;
236
+ /**
237
+ * Adjust the [minimum block size](https://developer.mozilla.org/en-US/docs/Web/CSS/min-block-size).
238
+ *
239
+ * @default '0'
240
+ */
241
+ minBlockSize: SizeUnits;
242
+ /**
243
+ * Adjust the [maximum block size](https://developer.mozilla.org/en-US/docs/Web/CSS/max-block-size).
244
+ *
245
+ * @default 'none'
246
+ */
247
+ maxBlockSize: SizeUnitsOrNone;
248
+ /**
249
+ * Adjust the [inline size](https://developer.mozilla.org/en-US/docs/Web/CSS/inline-size).
250
+ *
251
+ * @default 'auto'
252
+ */
253
+ inlineSize: SizeUnitsOrAuto;
254
+ /**
255
+ * Adjust the [minimum inline size](https://developer.mozilla.org/en-US/docs/Web/CSS/min-inline-size).
256
+ *
257
+ * @default '0'
258
+ */
259
+ minInlineSize: SizeUnits;
260
+ /**
261
+ * Adjust the [maximum inline size](https://developer.mozilla.org/en-US/docs/Web/CSS/max-inline-size).
262
+ *
263
+ * @default 'none'
264
+ */
265
+ maxInlineSize: SizeUnitsOrNone;
209
266
  }
210
267
 
211
268
  export type RequiredAlignedProps = Required<GridProps$1>;
212
269
  export type ResponsiveGridProps = MakeResponsivePick<
213
270
  RequiredAlignedProps,
214
- 'rowGap' | 'columnGap' | 'gap'
271
+ 'rowGap' | 'columnGap' | 'gap' | 'gridTemplateColumns' | 'gridTemplateRows'
215
272
  >;
216
273
  export interface GridProps
217
274
  extends BoxProps,
218
275
  Required<
219
276
  Pick<
220
277
  GridProps$1,
221
- | 'gridTemplateColumns'
222
- | 'gridTemplateRows'
223
278
  | 'alignItems'
224
279
  | 'justifyItems'
225
280
  | 'placeItems'
@@ -228,11 +283,45 @@ export interface GridProps
228
283
  | 'placeContent'
229
284
  >
230
285
  > {
286
+ /**
287
+ * Aligns the grid items along the block axis.
288
+ *
289
+ * @default '' - meaning no override
290
+ */
231
291
  alignItems: AlignItemsKeyword | '';
292
+ /**
293
+ * Aligns the grid items along the inline axis.
294
+ *
295
+ * @default '' - meaning no override
296
+ */
232
297
  justifyItems: JustifyItemsKeyword | '';
298
+ /**
299
+ * A shorthand property for `justify-items` and `align-items`.
300
+ *
301
+ * @default 'normal normal'
302
+ */
233
303
  placeItems: `${AlignItemsKeyword} ${JustifyItemsKeyword}` | AlignItemsKeyword;
304
+ /**
305
+ * Aligns the grid along the block axis.
306
+ *
307
+ * This overrides the block value of `placeContent`.
308
+ *
309
+ * @default '' - meaning no override
310
+ */
234
311
  alignContent: AlignContentKeyword | '';
312
+ /**
313
+ * Aligns the grid along the inline axis.
314
+ *
315
+ * This overrides the inline value of `placeContent`.
316
+ *
317
+ * @default '' - meaning no override
318
+ */
235
319
  justifyContent: JustifyContentKeyword | '';
320
+ /**
321
+ * A shorthand property for `justify-content` and `align-content`.
322
+ *
323
+ * @default 'normal normal'
324
+ */
236
325
  placeContent:
237
326
  | `${AlignContentKeyword} ${JustifyContentKeyword}`
238
327
  | AlignContentKeyword;
@@ -269,8 +358,27 @@ export interface GridProps
269
358
  * @default '' - meaning no override
270
359
  */
271
360
  columnGap: ResponsiveGridProps['columnGap'];
361
+ /**
362
+ * Define columns and specify their size.
363
+ * `gridTemplateColumns` either accepts:
364
+ * - [track sizing values](https://developer.mozilla.org/en-US/docs/Web/CSS/CSS_grid_layout/Basic_concepts_of_grid_layout#fixed_and_flexible_track_sizes) (e.g. `1fr auto`)
365
+ * - OR [responsive values](https://shopify.dev/docs/api/app-home/using-polaris-components#responsive-values) string with the supported track sizing values as a query value.
366
+ *
367
+ * @default 'none'
368
+ */
369
+ gridTemplateColumns: ResponsiveGridProps['gridTemplateColumns'];
370
+ /**
371
+ * Define rows and specify their size.
372
+ * `gridTemplateRows` either accepts:
373
+ * - [track sizing values](https://developer.mozilla.org/en-US/docs/Web/CSS/CSS_grid_layout/Basic_concepts_of_grid_layout#fixed_and_flexible_track_sizes) (e.g. `1fr auto`)
374
+ * - OR [responsive values](https://shopify.dev/docs/api/app-home/using-polaris-components#responsive-values) string with the supported track sizing values as a query value.
375
+ *
376
+ * @default 'none'
377
+ */
378
+ gridTemplateRows: ResponsiveGridProps['gridTemplateRows'];
272
379
  }
273
380
 
381
+ /** Used when an element does not have children. */
274
382
  export interface PreactBaseElementProps<TClass extends HTMLElement> {
275
383
  /** Assigns a unique key to this element. */
276
384
  key?: preact.Key;
@@ -279,6 +387,11 @@ export interface PreactBaseElementProps<TClass extends HTMLElement> {
279
387
  /** Assigns this element to a parent's slot. */
280
388
  slot?: Lowercase<string>;
281
389
  }
390
+ /** Used when an element has children. */
391
+ export interface PreactBaseElementPropsWithChildren<TClass extends HTMLElement>
392
+ extends PreactBaseElementProps<TClass> {
393
+ children?: preact.ComponentChildren;
394
+ }
282
395
 
283
396
  export type Styles = string;
284
397
  export type RenderImpl = Omit<ShadowRootInit, 'mode'> & {
@@ -390,7 +503,7 @@ declare global {
390
503
  declare module 'preact' {
391
504
  namespace createElement.JSX {
392
505
  interface IntrinsicElements {
393
- [tagName]: GridJSXProps & PreactBaseElementProps<Grid>;
506
+ [tagName]: GridJSXProps & PreactBaseElementPropsWithChildren<Grid>;
394
507
  }
395
508
  }
396
509
  }
@@ -11,7 +11,9 @@ import type {
11
11
  BoxProps$1,
12
12
  GridItemProps$1,
13
13
  MaybeAllValuesShorthandProperty,
14
+ SizeUnitsOrAuto,
14
15
  SizeUnits,
16
+ SizeUnitsOrNone,
15
17
  } from './shared.d.ts';
16
18
 
17
19
  export type MakeResponsive<T> = T | `@container${string}`;
@@ -82,10 +84,20 @@ export interface BoxProps
82
84
  | 'minInlineSize'
83
85
  | 'overflow'
84
86
  > {
87
+ /**
88
+ * Adjust the background of the component.
89
+ *
90
+ * @default 'transparent'
91
+ */
85
92
  background: Extract<
86
93
  RequiredBoxProps['background'],
87
94
  'transparent' | 'base' | 'subdued' | 'strong'
88
95
  >;
96
+ /**
97
+ * Adjust the width of the border.
98
+ *
99
+ * @default '' - meaning no override
100
+ */
89
101
  borderWidth:
90
102
  | MaybeAllValuesShorthandProperty<
91
103
  Extract<
@@ -94,13 +106,28 @@ export interface BoxProps
94
106
  >
95
107
  >
96
108
  | Extract<RequiredBoxProps['borderWidth'], ''>;
109
+ /**
110
+ * Adjust the style of the border.
111
+ *
112
+ * @default '' - meaning no override
113
+ */
97
114
  borderStyle:
98
115
  | MaybeAllValuesShorthandProperty<BoxBorderStyles>
99
116
  | Extract<RequiredBoxProps['borderStyle'], ''>;
117
+ /**
118
+ * Adjust the color of the border.
119
+ *
120
+ * @default '' - meaning no override
121
+ */
100
122
  borderColor: Extract<
101
123
  RequiredBoxProps['borderColor'],
102
124
  'subdued' | 'base' | 'strong' | ''
103
125
  >;
126
+ /**
127
+ * Adjust the radius of the border.
128
+ *
129
+ * @default 'none'
130
+ */
104
131
  borderRadius: MaybeAllValuesShorthandProperty<BoxBorderRadii>;
105
132
  /**
106
133
  * Adjust the padding of all edges.
@@ -197,12 +224,42 @@ export interface BoxProps
197
224
  * @default 'auto'
198
225
  */
199
226
  display: ResponsiveBoxProps['display'];
200
- blockSize: SizeUnits | 'auto';
201
- minBlockSize: SizeUnits | '0';
202
- maxBlockSize: SizeUnits | 'none';
203
- inlineSize: SizeUnits | 'auto';
204
- minInlineSize: SizeUnits | '0';
205
- maxInlineSize: SizeUnits | 'none';
227
+ /**
228
+ * Adjust the [block size](https://developer.mozilla.org/en-US/docs/Web/CSS/block-size).
229
+ *
230
+ * @default 'auto'
231
+ */
232
+ blockSize: SizeUnitsOrAuto;
233
+ /**
234
+ * Adjust the [minimum block size](https://developer.mozilla.org/en-US/docs/Web/CSS/min-block-size).
235
+ *
236
+ * @default '0'
237
+ */
238
+ minBlockSize: SizeUnits;
239
+ /**
240
+ * Adjust the [maximum block size](https://developer.mozilla.org/en-US/docs/Web/CSS/max-block-size).
241
+ *
242
+ * @default 'none'
243
+ */
244
+ maxBlockSize: SizeUnitsOrNone;
245
+ /**
246
+ * Adjust the [inline size](https://developer.mozilla.org/en-US/docs/Web/CSS/inline-size).
247
+ *
248
+ * @default 'auto'
249
+ */
250
+ inlineSize: SizeUnitsOrAuto;
251
+ /**
252
+ * Adjust the [minimum inline size](https://developer.mozilla.org/en-US/docs/Web/CSS/min-inline-size).
253
+ *
254
+ * @default '0'
255
+ */
256
+ minInlineSize: SizeUnits;
257
+ /**
258
+ * Adjust the [maximum inline size](https://developer.mozilla.org/en-US/docs/Web/CSS/max-inline-size).
259
+ *
260
+ * @default 'none'
261
+ */
262
+ maxInlineSize: SizeUnitsOrNone;
206
263
  }
207
264
 
208
265
  export type RequiredGridItemProps = Required<GridItemProps$1>;
@@ -301,6 +358,7 @@ declare class BoxElement extends PreactCustomElement implements BoxProps {
301
358
  accessor display: BoxProps['display'];
302
359
  }
303
360
 
361
+ /** Used when an element does not have children. */
304
362
  export interface PreactBaseElementProps<TClass extends HTMLElement> {
305
363
  /** Assigns a unique key to this element. */
306
364
  key?: preact.Key;
@@ -309,6 +367,11 @@ export interface PreactBaseElementProps<TClass extends HTMLElement> {
309
367
  /** Assigns this element to a parent's slot. */
310
368
  slot?: Lowercase<string>;
311
369
  }
370
+ /** Used when an element has children. */
371
+ export interface PreactBaseElementPropsWithChildren<TClass extends HTMLElement>
372
+ extends PreactBaseElementProps<TClass> {
373
+ children?: preact.ComponentChildren;
374
+ }
312
375
 
313
376
  declare class GridItem extends BoxElement implements GridItemProps {
314
377
  accessor gridColumn: GridItemProps['gridColumn'];
@@ -323,7 +386,8 @@ declare global {
323
386
  declare module 'preact' {
324
387
  namespace createElement.JSX {
325
388
  interface IntrinsicElements {
326
- [tagName]: GridItemJSXProps & PreactBaseElementProps<GridItem>;
389
+ [tagName]: GridItemJSXProps &
390
+ PreactBaseElementPropsWithChildren<GridItem>;
327
391
  }
328
392
  }
329
393
  }
@@ -79,6 +79,7 @@ declare abstract class PreactCustomElement extends BaseClass {
79
79
  click({sourceEvent}?: ClickOptions): void;
80
80
  }
81
81
 
82
+ /** Used when an element does not have children. */
82
83
  export interface PreactBaseElementProps<TClass extends HTMLElement> {
83
84
  /** Assigns a unique key to this element. */
84
85
  key?: preact.Key;
@@ -87,6 +88,11 @@ export interface PreactBaseElementProps<TClass extends HTMLElement> {
87
88
  /** Assigns this element to a parent's slot. */
88
89
  slot?: Lowercase<string>;
89
90
  }
91
+ /** Used when an element has children. */
92
+ export interface PreactBaseElementPropsWithChildren<TClass extends HTMLElement>
93
+ extends PreactBaseElementProps<TClass> {
94
+ children?: preact.ComponentChildren;
95
+ }
90
96
 
91
97
  declare class Heading extends PreactCustomElement implements HeadingProps {
92
98
  accessor accessibilityRole: HeadingProps['accessibilityRole'];
@@ -102,7 +108,7 @@ declare global {
102
108
  declare module 'preact' {
103
109
  namespace createElement.JSX {
104
110
  interface IntrinsicElements {
105
- [tagName]: HeadingJSXProps & PreactBaseElementProps<Heading>;
111
+ [tagName]: HeadingJSXProps & PreactBaseElementPropsWithChildren<Heading>;
106
112
  }
107
113
  }
108
114
  }
@@ -85,6 +85,7 @@ declare abstract class PreactCustomElement extends BaseClass {
85
85
  click({sourceEvent}?: ClickOptions): void;
86
86
  }
87
87
 
88
+ /** Used when an element does not have children. */
88
89
  export interface PreactBaseElementProps<TClass extends HTMLElement> {
89
90
  /** Assigns a unique key to this element. */
90
91
  key?: preact.Key;
@@ -10,7 +10,9 @@ import type {
10
10
  BoxProps$1,
11
11
  ImageProps$1,
12
12
  MaybeAllValuesShorthandProperty,
13
+ SizeUnitsOrAuto,
13
14
  SizeUnits,
15
+ SizeUnitsOrNone,
14
16
  ComponentChildren,
15
17
  } from './shared.d.ts';
16
18
 
@@ -22,6 +24,7 @@ export type CallbackEventListener<T extends keyof HTMLElementTagNameMap> =
22
24
  (event: CallbackEvent<T>): void;
23
25
  })
24
26
  | null;
27
+ /** Used when an element does not have children. */
25
28
  export interface PreactBaseElementProps<TClass extends HTMLElement> {
26
29
  /** Assigns a unique key to this element. */
27
30
  key?: preact.Key;
@@ -99,10 +102,20 @@ export interface BoxProps
99
102
  | 'minInlineSize'
100
103
  | 'overflow'
101
104
  > {
105
+ /**
106
+ * Adjust the background of the component.
107
+ *
108
+ * @default 'transparent'
109
+ */
102
110
  background: Extract<
103
111
  RequiredBoxProps['background'],
104
112
  'transparent' | 'base' | 'subdued' | 'strong'
105
113
  >;
114
+ /**
115
+ * Adjust the width of the border.
116
+ *
117
+ * @default '' - meaning no override
118
+ */
106
119
  borderWidth:
107
120
  | MaybeAllValuesShorthandProperty<
108
121
  Extract<
@@ -111,13 +124,28 @@ export interface BoxProps
111
124
  >
112
125
  >
113
126
  | Extract<RequiredBoxProps['borderWidth'], ''>;
127
+ /**
128
+ * Adjust the style of the border.
129
+ *
130
+ * @default '' - meaning no override
131
+ */
114
132
  borderStyle:
115
133
  | MaybeAllValuesShorthandProperty<BoxBorderStyles>
116
134
  | Extract<RequiredBoxProps['borderStyle'], ''>;
135
+ /**
136
+ * Adjust the color of the border.
137
+ *
138
+ * @default '' - meaning no override
139
+ */
117
140
  borderColor: Extract<
118
141
  RequiredBoxProps['borderColor'],
119
142
  'subdued' | 'base' | 'strong' | ''
120
143
  >;
144
+ /**
145
+ * Adjust the radius of the border.
146
+ *
147
+ * @default 'none'
148
+ */
121
149
  borderRadius: MaybeAllValuesShorthandProperty<BoxBorderRadii>;
122
150
  /**
123
151
  * Adjust the padding of all edges.
@@ -214,12 +242,42 @@ export interface BoxProps
214
242
  * @default 'auto'
215
243
  */
216
244
  display: ResponsiveBoxProps['display'];
217
- blockSize: SizeUnits | 'auto';
218
- minBlockSize: SizeUnits | '0';
219
- maxBlockSize: SizeUnits | 'none';
220
- inlineSize: SizeUnits | 'auto';
221
- minInlineSize: SizeUnits | '0';
222
- maxInlineSize: SizeUnits | 'none';
245
+ /**
246
+ * Adjust the [block size](https://developer.mozilla.org/en-US/docs/Web/CSS/block-size).
247
+ *
248
+ * @default 'auto'
249
+ */
250
+ blockSize: SizeUnitsOrAuto;
251
+ /**
252
+ * Adjust the [minimum block size](https://developer.mozilla.org/en-US/docs/Web/CSS/min-block-size).
253
+ *
254
+ * @default '0'
255
+ */
256
+ minBlockSize: SizeUnits;
257
+ /**
258
+ * Adjust the [maximum block size](https://developer.mozilla.org/en-US/docs/Web/CSS/max-block-size).
259
+ *
260
+ * @default 'none'
261
+ */
262
+ maxBlockSize: SizeUnitsOrNone;
263
+ /**
264
+ * Adjust the [inline size](https://developer.mozilla.org/en-US/docs/Web/CSS/inline-size).
265
+ *
266
+ * @default 'auto'
267
+ */
268
+ inlineSize: SizeUnitsOrAuto;
269
+ /**
270
+ * Adjust the [minimum inline size](https://developer.mozilla.org/en-US/docs/Web/CSS/min-inline-size).
271
+ *
272
+ * @default '0'
273
+ */
274
+ minInlineSize: SizeUnits;
275
+ /**
276
+ * Adjust the [maximum inline size](https://developer.mozilla.org/en-US/docs/Web/CSS/max-inline-size).
277
+ *
278
+ * @default 'none'
279
+ */
280
+ maxInlineSize: SizeUnitsOrNone;
223
281
  }
224
282
 
225
283
  export interface ImageProps
@@ -20,6 +20,7 @@ export type CallbackEventListener<T extends keyof HTMLElementTagNameMap> =
20
20
  (event: CallbackEvent<T>): void;
21
21
  })
22
22
  | null;
23
+ /** Used when an element does not have children. */
23
24
  export interface PreactBaseElementProps<TClass extends HTMLElement> {
24
25
  /** Assigns a unique key to this element. */
25
26
  key?: preact.Key;
@@ -28,6 +29,11 @@ export interface PreactBaseElementProps<TClass extends HTMLElement> {
28
29
  /** Assigns this element to a parent's slot. */
29
30
  slot?: Lowercase<string>;
30
31
  }
32
+ /** Used when an element has children. */
33
+ export interface PreactBaseElementPropsWithChildren<TClass extends HTMLElement>
34
+ extends PreactBaseElementProps<TClass> {
35
+ children?: preact.ComponentChildren;
36
+ }
31
37
 
32
38
  export type RequiredLinkProps = Required<LinkProps$1>;
33
39
  export type LinkBaseProps = Required<
@@ -158,7 +164,7 @@ declare global {
158
164
  declare module 'preact' {
159
165
  namespace createElement.JSX {
160
166
  interface IntrinsicElements {
161
- [tagName]: LinkJSXProps & PreactBaseElementProps<Link>;
167
+ [tagName]: LinkJSXProps & PreactBaseElementPropsWithChildren<Link>;
162
168
  }
163
169
  }
164
170
  }
@@ -69,6 +69,7 @@ declare abstract class PreactCustomElement extends BaseClass {
69
69
  click({sourceEvent}?: ClickOptions): void;
70
70
  }
71
71
 
72
+ /** Used when an element does not have children. */
72
73
  export interface PreactBaseElementProps<TClass extends HTMLElement> {
73
74
  /** Assigns a unique key to this element. */
74
75
  key?: preact.Key;
@@ -77,6 +78,11 @@ export interface PreactBaseElementProps<TClass extends HTMLElement> {
77
78
  /** Assigns this element to a parent's slot. */
78
79
  slot?: Lowercase<string>;
79
80
  }
81
+ /** Used when an element has children. */
82
+ export interface PreactBaseElementPropsWithChildren<TClass extends HTMLElement>
83
+ extends PreactBaseElementProps<TClass> {
84
+ children?: preact.ComponentChildren;
85
+ }
80
86
 
81
87
  declare class ListItem extends PreactCustomElement implements ListItemProps {
82
88
  constructor();
@@ -89,7 +95,8 @@ declare global {
89
95
  declare module 'preact' {
90
96
  namespace createElement.JSX {
91
97
  interface IntrinsicElements {
92
- [tagName]: ListItemJSXProps & PreactBaseElementProps<ListItem>;
98
+ [tagName]: ListItemJSXProps &
99
+ PreactBaseElementPropsWithChildren<ListItem>;
93
100
  }
94
101
  }
95
102
  }
@@ -200,7 +200,7 @@ declare module 'preact' {
200
200
  HTMLAttributes<HTMLElement>,
201
201
  Extract<keyof HTMLAttributes<HTMLElement>, `on${Capitalize<string>}`>
202
202
  > &
203
- ModalJSXProps;
203
+ Omit<ModalJSXProps, 'primaryAction' | 'secondaryActions'>;
204
204
  }
205
205
  }
206
206
  }
@@ -26,6 +26,7 @@ export interface FieldReactProps<T extends keyof HTMLElementTagNameMap> {
26
26
  onFocus?: ((event: CallbackEvent<T>) => void) | null;
27
27
  onBlur?: ((event: CallbackEvent<T>) => void) | null;
28
28
  }
29
+ /** Used when an element does not have children. */
29
30
  export interface PreactBaseElementProps<TClass extends HTMLElement> {
30
31
  /** Assigns a unique key to this element. */
31
32
  key?: preact.Key;
@@ -26,6 +26,7 @@ export interface FieldReactProps<T extends keyof HTMLElementTagNameMap> {
26
26
  onFocus?: ((event: CallbackEvent<T>) => void) | null;
27
27
  onBlur?: ((event: CallbackEvent<T>) => void) | null;
28
28
  }
29
+ /** Used when an element does not have children. */
29
30
  export interface PreactBaseElementProps<TClass extends HTMLElement> {
30
31
  /** Assigns a unique key to this element. */
31
32
  key?: preact.Key;
@@ -73,6 +73,7 @@ declare abstract class PreactCustomElement extends BaseClass {
73
73
  click({sourceEvent}?: ClickOptions): void;
74
74
  }
75
75
 
76
+ /** Used when an element does not have children. */
76
77
  export interface PreactBaseElementProps<TClass extends HTMLElement> {
77
78
  /** Assigns a unique key to this element. */
78
79
  key?: preact.Key;
@@ -81,6 +82,11 @@ export interface PreactBaseElementProps<TClass extends HTMLElement> {
81
82
  /** Assigns this element to a parent's slot. */
82
83
  slot?: Lowercase<string>;
83
84
  }
85
+ /** Used when an element has children. */
86
+ export interface PreactBaseElementPropsWithChildren<TClass extends HTMLElement>
87
+ extends PreactBaseElementProps<TClass> {
88
+ children?: preact.ComponentChildren;
89
+ }
84
90
 
85
91
  declare class Option extends PreactCustomElement implements OptionProps {
86
92
  accessor selected: OptionProps['selected'];
@@ -97,7 +103,7 @@ declare global {
97
103
  declare module 'preact' {
98
104
  namespace createElement.JSX {
99
105
  interface IntrinsicElements {
100
- [tagName]: OptionJSXProps & PreactBaseElementProps<Option>;
106
+ [tagName]: OptionJSXProps & PreactBaseElementPropsWithChildren<Option>;
101
107
  }
102
108
  }
103
109
  }
@@ -71,6 +71,7 @@ declare abstract class PreactCustomElement extends BaseClass {
71
71
  click({sourceEvent}?: ClickOptions): void;
72
72
  }
73
73
 
74
+ /** Used when an element does not have children. */
74
75
  export interface PreactBaseElementProps<TClass extends HTMLElement> {
75
76
  /** Assigns a unique key to this element. */
76
77
  key?: preact.Key;
@@ -79,6 +80,11 @@ export interface PreactBaseElementProps<TClass extends HTMLElement> {
79
80
  /** Assigns this element to a parent's slot. */
80
81
  slot?: Lowercase<string>;
81
82
  }
83
+ /** Used when an element has children. */
84
+ export interface PreactBaseElementPropsWithChildren<TClass extends HTMLElement>
85
+ extends PreactBaseElementProps<TClass> {
86
+ children?: preact.ComponentChildren;
87
+ }
82
88
 
83
89
  declare class OptionGroup
84
90
  extends PreactCustomElement
@@ -96,7 +102,8 @@ declare global {
96
102
  declare module 'preact' {
97
103
  namespace createElement.JSX {
98
104
  interface IntrinsicElements {
99
- [tagName]: OptionGroupJSXProps & PreactBaseElementProps<OptionGroup>;
105
+ [tagName]: OptionGroupJSXProps &
106
+ PreactBaseElementPropsWithChildren<OptionGroup>;
100
107
  }
101
108
  }
102
109
  }
@@ -69,6 +69,7 @@ declare abstract class PreactCustomElement extends BaseClass {
69
69
  click({sourceEvent}?: ClickOptions): void;
70
70
  }
71
71
 
72
+ /** Used when an element does not have children. */
72
73
  export interface PreactBaseElementProps<TClass extends HTMLElement> {
73
74
  /** Assigns a unique key to this element. */
74
75
  key?: preact.Key;
@@ -77,6 +78,11 @@ export interface PreactBaseElementProps<TClass extends HTMLElement> {
77
78
  /** Assigns this element to a parent's slot. */
78
79
  slot?: Lowercase<string>;
79
80
  }
81
+ /** Used when an element has children. */
82
+ export interface PreactBaseElementPropsWithChildren<TClass extends HTMLElement>
83
+ extends PreactBaseElementProps<TClass> {
84
+ children?: preact.ComponentChildren;
85
+ }
80
86
 
81
87
  declare class OrderedList
82
88
  extends PreactCustomElement
@@ -92,7 +98,8 @@ declare global {
92
98
  declare module 'preact' {
93
99
  namespace createElement.JSX {
94
100
  interface IntrinsicElements {
95
- [tagName]: OrderedListJSXProps & PreactBaseElementProps<OrderedList>;
101
+ [tagName]: OrderedListJSXProps &
102
+ PreactBaseElementPropsWithChildren<OrderedList>;
96
103
  }
97
104
  }
98
105
  }