@shopify/ui-extensions 2026.10.0-rc.8 → 2026.10.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (332) hide show
  1. package/build/cjs/surfaces/customer-account/preact/authenticated-account.js +1 -1
  2. package/build/cjs/surfaces/point-of-sale/events.js +39 -22
  3. package/build/cjs/surfaces/point-of-sale/pos-list-template.js +339 -0
  4. package/build/cjs/surfaces/point-of-sale.js +2 -0
  5. package/build/esm/surfaces/customer-account/preact/authenticated-account.mjs +1 -1
  6. package/build/esm/surfaces/point-of-sale/events.mjs +39 -22
  7. package/build/esm/surfaces/point-of-sale/pos-list-template.mjs +331 -0
  8. package/build/esm/surfaces/point-of-sale.mjs +1 -0
  9. package/build/esnext/surfaces/customer-account/preact/authenticated-account.esnext +1 -1
  10. package/build/esnext/surfaces/point-of-sale/events.esnext +39 -22
  11. package/build/esnext/surfaces/point-of-sale/pos-list-template.esnext +331 -0
  12. package/build/esnext/surfaces/point-of-sale.esnext +1 -0
  13. package/build/ts/shared.d.ts +6 -20
  14. package/build/ts/shared.d.ts.map +1 -1
  15. package/build/ts/surfaces/admin/api/picker/picker.d.ts +2 -2
  16. package/build/ts/surfaces/admin/api/picker/picker.d.ts.map +1 -1
  17. package/build/ts/surfaces/admin/components/AdminAction.d.ts +61 -107
  18. package/build/ts/surfaces/admin/components/AdminBlock.d.ts +22 -107
  19. package/build/ts/surfaces/admin/components/AdminPrintAction.d.ts +20 -101
  20. package/build/ts/surfaces/admin/components/AppNav.d.ts +38 -1
  21. package/build/ts/surfaces/admin/components/Avatar.d.ts +100 -139
  22. package/build/ts/surfaces/admin/components/Badge.d.ts +107 -156
  23. package/build/ts/surfaces/admin/components/Banner.d.ts +102 -127
  24. package/build/ts/surfaces/admin/components/Box.d.ts +145 -234
  25. package/build/ts/surfaces/admin/components/Button.d.ts +156 -266
  26. package/build/ts/surfaces/admin/components/ButtonGroup.d.ts +89 -117
  27. package/build/ts/surfaces/admin/components/Checkbox.d.ts +140 -175
  28. package/build/ts/surfaces/admin/components/Chip.d.ts +117 -15
  29. package/build/ts/surfaces/admin/components/Choice.d.ts +88 -113
  30. package/build/ts/surfaces/admin/components/ChoiceList.d.ts +120 -129
  31. package/build/ts/surfaces/admin/components/Clickable.d.ts +227 -209
  32. package/build/ts/surfaces/admin/components/ClickableChip.d.ts +117 -153
  33. package/build/ts/surfaces/admin/components/ColorField.d.ts +111 -215
  34. package/build/ts/surfaces/admin/components/ColorPicker.d.ts +82 -137
  35. package/build/ts/surfaces/admin/components/DateField.d.ts +140 -230
  36. package/build/ts/surfaces/admin/components/DatePicker.d.ts +178 -181
  37. package/build/ts/surfaces/admin/components/Divider.d.ts +50 -118
  38. package/build/ts/surfaces/admin/components/DropZone.d.ts +153 -12
  39. package/build/ts/surfaces/admin/components/EmailField.d.ts +100 -197
  40. package/build/ts/surfaces/admin/components/EmptyState.d.ts +144 -0
  41. package/build/ts/surfaces/admin/components/Form.d.ts +25 -118
  42. package/build/ts/surfaces/admin/components/FunctionSettings.d.ts +26 -132
  43. package/build/ts/surfaces/admin/components/Grid.d.ts +165 -299
  44. package/build/ts/surfaces/admin/components/GridItem.d.ts +145 -261
  45. package/build/ts/surfaces/admin/components/Heading.d.ts +117 -117
  46. package/build/ts/surfaces/admin/components/Icon.d.ts +91 -129
  47. package/build/ts/surfaces/admin/components/Image.d.ts +216 -251
  48. package/build/ts/surfaces/admin/components/Link.d.ts +125 -126
  49. package/build/ts/surfaces/admin/components/ListItem.d.ts +63 -102
  50. package/build/ts/surfaces/admin/components/Menu.d.ts +82 -150
  51. package/build/ts/surfaces/admin/components/Modal.d.ts +232 -26
  52. package/build/ts/surfaces/admin/components/MoneyField.d.ts +103 -196
  53. package/build/ts/surfaces/admin/components/Number.d.ts +193 -0
  54. package/build/ts/surfaces/admin/components/NumberField.d.ts +114 -208
  55. package/build/ts/surfaces/admin/components/Option.d.ts +67 -108
  56. package/build/ts/surfaces/admin/components/OptionGroup.d.ts +69 -105
  57. package/build/ts/surfaces/admin/components/OrderedList.d.ts +56 -102
  58. package/build/ts/surfaces/admin/components/Page.d.ts +93 -13
  59. package/build/ts/surfaces/admin/components/Paragraph.d.ts +126 -138
  60. package/build/ts/surfaces/admin/components/PasswordField.d.ts +109 -203
  61. package/build/ts/surfaces/admin/components/Popover.d.ts +26 -8
  62. package/build/ts/surfaces/admin/components/Progress.d.ts +155 -0
  63. package/build/ts/surfaces/admin/components/QueryContainer.d.ts +77 -116
  64. package/build/ts/surfaces/admin/components/SearchField.d.ts +103 -191
  65. package/build/ts/surfaces/admin/components/Section.d.ts +139 -127
  66. package/build/ts/surfaces/admin/components/Select.d.ts +144 -193
  67. package/build/ts/surfaces/admin/components/Spinner.d.ts +60 -113
  68. package/build/ts/surfaces/admin/components/Stack.d.ts +156 -282
  69. package/build/ts/surfaces/admin/components/StandardComponents.d.ts +1 -1
  70. package/build/ts/surfaces/admin/components/StandardComponents.d.ts.map +1 -1
  71. package/build/ts/surfaces/admin/components/Switch.d.ts +76 -166
  72. package/build/ts/surfaces/admin/components/Table.d.ts +100 -210
  73. package/build/ts/surfaces/admin/components/TableBody.d.ts +70 -106
  74. package/build/ts/surfaces/admin/components/TableCell.d.ts +70 -107
  75. package/build/ts/surfaces/admin/components/TableHeader.d.ts +79 -119
  76. package/build/ts/surfaces/admin/components/TableHeaderRow.d.ts +71 -107
  77. package/build/ts/surfaces/admin/components/TableRow.d.ts +81 -109
  78. package/build/ts/surfaces/admin/components/Text.d.ts +123 -164
  79. package/build/ts/surfaces/admin/components/TextArea.d.ts +100 -195
  80. package/build/ts/surfaces/admin/components/TextField.d.ts +120 -204
  81. package/build/ts/surfaces/admin/components/Thumbnail.d.ts +83 -133
  82. package/build/ts/surfaces/admin/components/Tooltip.d.ts +78 -146
  83. package/build/ts/surfaces/admin/components/URLField.d.ts +107 -209
  84. package/build/ts/surfaces/admin/components/UnorderedList.d.ts +58 -110
  85. package/build/ts/surfaces/admin/components/shared.d.ts +4233 -1203
  86. package/build/ts/surfaces/admin/targets/admin.abandoned-checkout-details.action.render.d.ts +3 -0
  87. package/build/ts/surfaces/admin/targets/admin.abandoned-checkout-details.block.render.d.ts +3 -0
  88. package/build/ts/surfaces/admin/targets/admin.abandoned-checkout-index.action.render.d.ts +3 -0
  89. package/build/ts/surfaces/admin/targets/admin.app.home.render.d.ts +3 -0
  90. package/build/ts/surfaces/admin/targets/admin.app.intent.render.d.ts +3 -0
  91. package/build/ts/surfaces/admin/targets/admin.catalog-details.action.render.d.ts +3 -0
  92. package/build/ts/surfaces/admin/targets/admin.catalog-details.block.render.d.ts +3 -0
  93. package/build/ts/surfaces/admin/targets/admin.collection-details.action.render.d.ts +3 -0
  94. package/build/ts/surfaces/admin/targets/admin.collection-details.block.render.d.ts +3 -0
  95. package/build/ts/surfaces/admin/targets/admin.collection-index.action.render.d.ts +3 -0
  96. package/build/ts/surfaces/admin/targets/admin.company-details.action.render.d.ts +3 -0
  97. package/build/ts/surfaces/admin/targets/admin.company-details.block.render.d.ts +3 -0
  98. package/build/ts/surfaces/admin/targets/admin.company-location-details.block.render.d.ts +3 -0
  99. package/build/ts/surfaces/admin/targets/admin.customer-details.action.render.d.ts +3 -0
  100. package/build/ts/surfaces/admin/targets/admin.customer-details.block.render.d.ts +3 -0
  101. package/build/ts/surfaces/admin/targets/admin.customer-index.action.render.d.ts +3 -0
  102. package/build/ts/surfaces/admin/targets/admin.customer-index.selection-action.render.d.ts +3 -0
  103. package/build/ts/surfaces/admin/targets/admin.customer-segment-details.action.render.d.ts +3 -0
  104. package/build/ts/surfaces/admin/targets/admin.discount-details.action.render.d.ts +3 -0
  105. package/build/ts/surfaces/admin/targets/admin.discount-details.function-settings.render.d.ts +3 -0
  106. package/build/ts/surfaces/admin/targets/admin.discount-index.action.render.d.ts +3 -0
  107. package/build/ts/surfaces/admin/targets/admin.discount-index.selection-action.render.d.ts +3 -0
  108. package/build/ts/surfaces/admin/targets/admin.draft-order-details.action.render.d.ts +3 -0
  109. package/build/ts/surfaces/admin/targets/admin.draft-order-details.block.render.d.ts +3 -0
  110. package/build/ts/surfaces/admin/targets/admin.draft-order-index.action.render.d.ts +3 -0
  111. package/build/ts/surfaces/admin/targets/admin.draft-order-index.selection-action.render.d.ts +3 -0
  112. package/build/ts/surfaces/admin/targets/admin.gift-card-details.action.render.d.ts +3 -0
  113. package/build/ts/surfaces/admin/targets/admin.gift-card-details.block.render.d.ts +3 -0
  114. package/build/ts/surfaces/admin/targets/admin.order-details.action.render.d.ts +3 -0
  115. package/build/ts/surfaces/admin/targets/admin.order-details.block.render.d.ts +3 -0
  116. package/build/ts/surfaces/admin/targets/admin.order-details.print-action.render.d.ts +3 -0
  117. package/build/ts/surfaces/admin/targets/admin.order-fulfilled-card.action.render.d.ts +3 -0
  118. package/build/ts/surfaces/admin/targets/admin.order-index.action.render.d.ts +3 -0
  119. package/build/ts/surfaces/admin/targets/admin.order-index.selection-action.render.d.ts +3 -0
  120. package/build/ts/surfaces/admin/targets/admin.order-index.selection-print-action.render.d.ts +3 -0
  121. package/build/ts/surfaces/admin/targets/admin.product-details.action.render.d.ts +3 -0
  122. package/build/ts/surfaces/admin/targets/admin.product-details.block.render.d.ts +3 -0
  123. package/build/ts/surfaces/admin/targets/admin.product-details.configuration.render.d.ts +3 -0
  124. package/build/ts/surfaces/admin/targets/admin.product-details.print-action.render.d.ts +3 -0
  125. package/build/ts/surfaces/admin/targets/admin.product-details.reorder.render.d.ts +3 -0
  126. package/build/ts/surfaces/admin/targets/admin.product-index.action.render.d.ts +3 -0
  127. package/build/ts/surfaces/admin/targets/admin.product-index.selection-action.render.d.ts +3 -0
  128. package/build/ts/surfaces/admin/targets/admin.product-index.selection-print-action.render.d.ts +3 -0
  129. package/build/ts/surfaces/admin/targets/admin.product-purchase-option.action.render.d.ts +3 -0
  130. package/build/ts/surfaces/admin/targets/admin.product-variant-details.action.render.d.ts +3 -0
  131. package/build/ts/surfaces/admin/targets/admin.product-variant-details.block.render.d.ts +3 -0
  132. package/build/ts/surfaces/admin/targets/admin.product-variant-details.configuration.render.d.ts +3 -0
  133. package/build/ts/surfaces/admin/targets/admin.product-variant-purchase-option.action.render.d.ts +3 -0
  134. package/build/ts/surfaces/admin/targets/admin.settings.internal-order-routing-rule.render.d.ts +3 -0
  135. package/build/ts/surfaces/admin/targets/admin.settings.order-routing-rule.render.d.ts +3 -0
  136. package/build/ts/surfaces/admin/targets/admin.settings.validation.render.d.ts +3 -0
  137. package/build/ts/surfaces/checkout/api/address-autocomplete/format-suggestion.d.ts +7 -0
  138. package/build/ts/surfaces/checkout/api/address-autocomplete/format-suggestion.d.ts.map +1 -1
  139. package/build/ts/surfaces/checkout/api/address-autocomplete/shared.d.ts +8 -1
  140. package/build/ts/surfaces/checkout/api/address-autocomplete/shared.d.ts.map +1 -1
  141. package/build/ts/surfaces/checkout/api/address-autocomplete/standard.d.ts +2 -2
  142. package/build/ts/surfaces/checkout/api/address-autocomplete/standard.d.ts.map +1 -1
  143. package/build/ts/surfaces/checkout/api/address-autocomplete/suggest.d.ts +7 -0
  144. package/build/ts/surfaces/checkout/api/address-autocomplete/suggest.d.ts.map +1 -1
  145. package/build/ts/surfaces/checkout/api/checkout/checkout.d.ts +15 -4
  146. package/build/ts/surfaces/checkout/api/checkout/checkout.d.ts.map +1 -1
  147. package/build/ts/surfaces/checkout/api/shared.d.ts +102 -1
  148. package/build/ts/surfaces/checkout/api/shared.d.ts.map +1 -1
  149. package/build/ts/surfaces/checkout/api/standard/standard.d.ts +8 -2
  150. package/build/ts/surfaces/checkout/api/standard/standard.d.ts.map +1 -1
  151. package/build/ts/surfaces/checkout/components/Box.d.ts +56 -1
  152. package/build/ts/surfaces/checkout/components/MoneyField.d.ts +3 -1
  153. package/build/ts/surfaces/checkout/components/NumberField.d.ts +3 -1
  154. package/build/ts/surfaces/checkout/components/components-shared.d.ts +1 -1
  155. package/build/ts/surfaces/checkout/preact/country.d.ts +1 -1
  156. package/build/ts/surfaces/checkout/preact/country.d.ts.map +1 -1
  157. package/build/ts/surfaces/checkout.d.ts +2 -2
  158. package/build/ts/surfaces/checkout.d.ts.map +1 -1
  159. package/build/ts/surfaces/customer-account/api/shared.d.ts +26 -7
  160. package/build/ts/surfaces/customer-account/api/shared.d.ts.map +1 -1
  161. package/build/ts/surfaces/customer-account/api.d.ts +1 -1
  162. package/build/ts/surfaces/customer-account/api.d.ts.map +1 -1
  163. package/build/ts/surfaces/customer-account/components/Box.d.ts +56 -1
  164. package/build/ts/surfaces/customer-account/components/MoneyField.d.ts +3 -1
  165. package/build/ts/surfaces/customer-account/components/NumberField.d.ts +3 -1
  166. package/build/ts/surfaces/customer-account/components/components-shared.d.ts +1 -1
  167. package/build/ts/surfaces/customer-account/preact/authenticated-account.d.ts +3 -3
  168. package/build/ts/surfaces/customer-account/preact/authenticated-account.d.ts.map +1 -1
  169. package/build/ts/surfaces/point-of-sale/api/cart-api/cart-api.d.ts +13 -0
  170. package/build/ts/surfaces/point-of-sale/api/cart-api/cart-api.d.ts.map +1 -1
  171. package/build/ts/surfaces/point-of-sale/api/device-api/device-api.d.ts +4 -0
  172. package/build/ts/surfaces/point-of-sale/api/device-api/device-api.d.ts.map +1 -1
  173. package/build/ts/surfaces/point-of-sale/api/docs.d.ts +7 -0
  174. package/build/ts/surfaces/point-of-sale/api/docs.d.ts.map +1 -1
  175. package/build/ts/surfaces/point-of-sale/api/extension-api/extension-api.d.ts +25 -5
  176. package/build/ts/surfaces/point-of-sale/api/extension-api/extension-api.d.ts.map +1 -1
  177. package/build/ts/surfaces/point-of-sale/api/navigation-api/navigation-api.d.ts +19 -7
  178. package/build/ts/surfaces/point-of-sale/api/navigation-api/navigation-api.d.ts.map +1 -1
  179. package/build/ts/surfaces/point-of-sale/api/resolution-api/resolution-api.d.ts +28 -3
  180. package/build/ts/surfaces/point-of-sale/api/resolution-api/resolution-api.d.ts.map +1 -1
  181. package/build/ts/surfaces/point-of-sale/api/session-api/session-api.d.ts +1 -1
  182. package/build/ts/surfaces/point-of-sale/api.d.ts +2 -2
  183. package/build/ts/surfaces/point-of-sale/api.d.ts.map +1 -1
  184. package/build/ts/surfaces/point-of-sale/components/POSList.d.ts +179 -0
  185. package/build/ts/surfaces/point-of-sale/components/targets/BlockExtensionComponents.d.ts +1 -1
  186. package/build/ts/surfaces/point-of-sale/components/targets/BlockExtensionComponents.d.ts.map +1 -1
  187. package/build/ts/surfaces/point-of-sale/components/targets/ResolutionComponents.d.ts +1 -1
  188. package/build/ts/surfaces/point-of-sale/components/targets/ResolutionComponents.d.ts.map +1 -1
  189. package/build/ts/surfaces/point-of-sale/components/targets/StandardComponents.d.ts +1 -1
  190. package/build/ts/surfaces/point-of-sale/components/targets/StandardComponents.d.ts.map +1 -1
  191. package/build/ts/surfaces/point-of-sale/event/data/BaseData.d.ts +12 -1
  192. package/build/ts/surfaces/point-of-sale/event/data/BaseData.d.ts.map +1 -1
  193. package/build/ts/surfaces/point-of-sale/event/data.d.ts +1 -1
  194. package/build/ts/surfaces/point-of-sale/event/data.d.ts.map +1 -1
  195. package/build/ts/surfaces/point-of-sale/events/scan-event.d.ts +34 -0
  196. package/build/ts/surfaces/point-of-sale/events/scan-event.d.ts.map +1 -0
  197. package/build/ts/surfaces/point-of-sale/events.d.ts +58 -28
  198. package/build/ts/surfaces/point-of-sale/events.d.ts.map +1 -1
  199. package/build/ts/surfaces/point-of-sale/extension-targets.d.ts +4 -4
  200. package/build/ts/surfaces/point-of-sale/extension-targets.d.ts.map +1 -1
  201. package/build/ts/surfaces/point-of-sale/globals.d.ts +0 -2
  202. package/build/ts/surfaces/point-of-sale/globals.d.ts.map +1 -1
  203. package/build/ts/surfaces/point-of-sale/pos-list-template.d.ts +36 -0
  204. package/build/ts/surfaces/point-of-sale/pos-list-template.d.ts.map +1 -0
  205. package/build/ts/surfaces/point-of-sale/targets/pos.cart.line-item-details.action.render.d.ts +1 -0
  206. package/build/ts/surfaces/point-of-sale/targets/pos.cart.validations.resolution.render.d.ts +1 -0
  207. package/build/ts/surfaces/point-of-sale/targets/pos.customer-details.action.render.d.ts +1 -0
  208. package/build/ts/surfaces/point-of-sale/targets/pos.draft-order-details.action.render.d.ts +1 -0
  209. package/build/ts/surfaces/point-of-sale/targets/pos.exchange.post.action.render.d.ts +1 -0
  210. package/build/ts/surfaces/point-of-sale/targets/pos.home.modal.render.d.ts +1 -0
  211. package/build/ts/surfaces/point-of-sale/targets/pos.order-details.action.render.d.ts +1 -0
  212. package/build/ts/surfaces/point-of-sale/targets/pos.payment.validations.resolution.render.d.ts +1 -0
  213. package/build/ts/surfaces/point-of-sale/targets/pos.product-details.action.render.d.ts +1 -0
  214. package/build/ts/surfaces/point-of-sale/targets/pos.purchase.post.action.render.d.ts +1 -0
  215. package/build/ts/surfaces/point-of-sale/targets/pos.register-details.action.render.d.ts +1 -0
  216. package/build/ts/surfaces/point-of-sale/targets/pos.return.post.action.render.d.ts +1 -0
  217. package/build/ts/surfaces/point-of-sale/types/session.d.ts +0 -6
  218. package/build/ts/surfaces/point-of-sale/types/session.d.ts.map +1 -1
  219. package/build/ts/surfaces/point-of-sale.d.ts +1 -0
  220. package/build/ts/surfaces/point-of-sale.d.ts.map +1 -1
  221. package/build/tsconfig.tsbuildinfo +1 -1
  222. package/package.json +2 -1
  223. package/src/shared.ts +22 -21
  224. package/src/surfaces/admin/api/picker/picker.ts +5 -2
  225. package/src/surfaces/admin/components/AdminAction.d.ts +61 -107
  226. package/src/surfaces/admin/components/AdminBlock.d.ts +22 -107
  227. package/src/surfaces/admin/components/AdminPrintAction.d.ts +20 -101
  228. package/src/surfaces/admin/components/AppNav.d.ts +38 -1
  229. package/src/surfaces/admin/components/Avatar.d.ts +100 -139
  230. package/src/surfaces/admin/components/Badge.d.ts +107 -156
  231. package/src/surfaces/admin/components/Banner.d.ts +102 -127
  232. package/src/surfaces/admin/components/Box.d.ts +145 -234
  233. package/src/surfaces/admin/components/Button.d.ts +156 -266
  234. package/src/surfaces/admin/components/ButtonGroup.d.ts +89 -117
  235. package/src/surfaces/admin/components/Checkbox.d.ts +140 -175
  236. package/src/surfaces/admin/components/Chip.d.ts +117 -15
  237. package/src/surfaces/admin/components/Choice.d.ts +88 -113
  238. package/src/surfaces/admin/components/ChoiceList.d.ts +120 -129
  239. package/src/surfaces/admin/components/Clickable.d.ts +227 -209
  240. package/src/surfaces/admin/components/ClickableChip.d.ts +117 -153
  241. package/src/surfaces/admin/components/ColorField.d.ts +111 -215
  242. package/src/surfaces/admin/components/ColorPicker.d.ts +82 -137
  243. package/src/surfaces/admin/components/DateField.d.ts +140 -230
  244. package/src/surfaces/admin/components/DatePicker.d.ts +178 -181
  245. package/src/surfaces/admin/components/Divider.d.ts +50 -118
  246. package/src/surfaces/admin/components/DropZone.d.ts +153 -12
  247. package/src/surfaces/admin/components/EmailField.d.ts +100 -197
  248. package/src/surfaces/admin/components/EmptyState.d.ts +144 -0
  249. package/src/surfaces/admin/components/Form.d.ts +25 -118
  250. package/src/surfaces/admin/components/FunctionSettings.d.ts +26 -132
  251. package/src/surfaces/admin/components/Grid.d.ts +165 -299
  252. package/src/surfaces/admin/components/GridItem.d.ts +145 -261
  253. package/src/surfaces/admin/components/Heading.d.ts +117 -117
  254. package/src/surfaces/admin/components/Icon.d.ts +91 -129
  255. package/src/surfaces/admin/components/Image.d.ts +216 -251
  256. package/src/surfaces/admin/components/Link.d.ts +125 -126
  257. package/src/surfaces/admin/components/ListItem.d.ts +63 -102
  258. package/src/surfaces/admin/components/Menu.d.ts +82 -150
  259. package/src/surfaces/admin/components/Modal.d.ts +232 -26
  260. package/src/surfaces/admin/components/MoneyField.d.ts +103 -196
  261. package/src/surfaces/admin/components/Number.d.ts +193 -0
  262. package/src/surfaces/admin/components/NumberField.d.ts +114 -208
  263. package/src/surfaces/admin/components/Option.d.ts +67 -108
  264. package/src/surfaces/admin/components/OptionGroup.d.ts +69 -105
  265. package/src/surfaces/admin/components/OrderedList.d.ts +56 -102
  266. package/src/surfaces/admin/components/Page.d.ts +93 -13
  267. package/src/surfaces/admin/components/Paragraph.d.ts +126 -138
  268. package/src/surfaces/admin/components/PasswordField.d.ts +109 -203
  269. package/src/surfaces/admin/components/Popover.d.ts +26 -8
  270. package/src/surfaces/admin/components/Progress.d.ts +155 -0
  271. package/src/surfaces/admin/components/QueryContainer.d.ts +77 -116
  272. package/src/surfaces/admin/components/SearchField.d.ts +103 -191
  273. package/src/surfaces/admin/components/Section.d.ts +139 -127
  274. package/src/surfaces/admin/components/Select.d.ts +144 -193
  275. package/src/surfaces/admin/components/Spinner.d.ts +60 -113
  276. package/src/surfaces/admin/components/Stack.d.ts +156 -282
  277. package/src/surfaces/admin/components/StandardComponents.ts +3 -0
  278. package/src/surfaces/admin/components/Switch.d.ts +76 -166
  279. package/src/surfaces/admin/components/Table.d.ts +100 -210
  280. package/src/surfaces/admin/components/TableBody.d.ts +70 -106
  281. package/src/surfaces/admin/components/TableCell.d.ts +70 -107
  282. package/src/surfaces/admin/components/TableHeader.d.ts +79 -119
  283. package/src/surfaces/admin/components/TableHeaderRow.d.ts +71 -107
  284. package/src/surfaces/admin/components/TableRow.d.ts +81 -109
  285. package/src/surfaces/admin/components/Text.d.ts +123 -164
  286. package/src/surfaces/admin/components/TextArea.d.ts +100 -195
  287. package/src/surfaces/admin/components/TextField.d.ts +120 -204
  288. package/src/surfaces/admin/components/Thumbnail.d.ts +83 -133
  289. package/src/surfaces/admin/components/Tooltip.d.ts +78 -146
  290. package/src/surfaces/admin/components/URLField.d.ts +107 -209
  291. package/src/surfaces/admin/components/UnorderedList.d.ts +58 -110
  292. package/src/surfaces/admin/components/shared.d.ts +4233 -1203
  293. package/src/surfaces/admin/components.d.ts +8216 -2635
  294. package/src/surfaces/checkout/api/address-autocomplete/format-suggestion.ts +9 -0
  295. package/src/surfaces/checkout/api/address-autocomplete/shared.ts +9 -0
  296. package/src/surfaces/checkout/api/address-autocomplete/standard.ts +1 -2
  297. package/src/surfaces/checkout/api/address-autocomplete/suggest.ts +8 -0
  298. package/src/surfaces/checkout/api/checkout/checkout.ts +19 -9
  299. package/src/surfaces/checkout/api/shared.ts +110 -1
  300. package/src/surfaces/checkout/api/standard/standard.ts +11 -1
  301. package/src/surfaces/checkout/components/Box.d.ts +56 -1
  302. package/src/surfaces/checkout/components/MoneyField.d.ts +3 -1
  303. package/src/surfaces/checkout/components/NumberField.d.ts +3 -1
  304. package/src/surfaces/checkout/components/components-shared.d.ts +1 -1
  305. package/src/surfaces/checkout/preact/country.ts +1 -1
  306. package/src/surfaces/checkout.ts +3 -0
  307. package/src/surfaces/customer-account/api/shared.ts +25 -7
  308. package/src/surfaces/customer-account/api.ts +1 -0
  309. package/src/surfaces/customer-account/preact/authenticated-account.ts +3 -3
  310. package/src/surfaces/point-of-sale/api/cart-api/cart-api.ts +14 -0
  311. package/src/surfaces/point-of-sale/api/device-api/device-api.ts +4 -0
  312. package/src/surfaces/point-of-sale/api/docs.ts +8 -0
  313. package/src/surfaces/point-of-sale/api/extension-api/extension-api.ts +25 -5
  314. package/src/surfaces/point-of-sale/api/navigation-api/navigation-api.ts +22 -7
  315. package/src/surfaces/point-of-sale/api/resolution-api/resolution-api.ts +30 -3
  316. package/src/surfaces/point-of-sale/api/session-api/session-api.ts +1 -1
  317. package/src/surfaces/point-of-sale/api.ts +2 -0
  318. package/src/surfaces/point-of-sale/components/POSList.d.ts +179 -0
  319. package/src/surfaces/point-of-sale/components/targets/BlockExtensionComponents.ts +0 -4
  320. package/src/surfaces/point-of-sale/components/targets/ResolutionComponents.ts +1 -1
  321. package/src/surfaces/point-of-sale/components/targets/StandardComponents.ts +1 -3
  322. package/src/surfaces/point-of-sale/components.d.ts +194 -0
  323. package/src/surfaces/point-of-sale/event/data/BaseData.ts +13 -1
  324. package/src/surfaces/point-of-sale/event/data.ts +1 -1
  325. package/src/surfaces/point-of-sale/events/scan-event.ts +34 -0
  326. package/src/surfaces/point-of-sale/events.ts +58 -27
  327. package/src/surfaces/point-of-sale/extension-targets.ts +4 -4
  328. package/src/surfaces/point-of-sale/globals.ts +0 -2
  329. package/src/surfaces/point-of-sale/pos-list-template.ts +351 -0
  330. package/src/surfaces/point-of-sale/tests/pos-list-template.test.ts +306 -0
  331. package/src/surfaces/point-of-sale/types/session.ts +0 -7
  332. package/src/surfaces/point-of-sale.ts +1 -0
@@ -1,4 +1,4 @@
1
- /** VERSION: 1.25.0 **/
1
+ /** VERSION: 2.26.1 **/
2
2
  /* eslint-disable import/extensions */
3
3
 
4
4
  /* eslint-disable @typescript-eslint/no-namespace */
@@ -9,21 +9,30 @@
9
9
  import type {
10
10
  TextFieldProps,
11
11
  CheckboxProps$1,
12
- ComponentChildren,
12
+ PreactCustomElement,
13
+ RenderImpl,
13
14
  } from './shared.d.ts';
15
+ import * as preact$1 from 'preact';
16
+ import {ReactNode, RefAttributes} from 'react';
14
17
 
15
18
  /**
16
- * An event that includes a strongly-typed reference to the element that triggered it.
19
+ * An event object with a strongly-typed `currentTarget` property that references the specific HTML element that triggered the event.
20
+ *
21
+ * This type extends the standard DOM `Event` interface and ensures type safety when accessing the element that fired the event.
17
22
  * @publicDocs
18
23
  */
19
24
  export type CallbackEvent<T extends keyof HTMLElementTagNameMap> = Event & {
20
- /**
21
- * The element that the event handler was attached to.
22
- */
23
25
  currentTarget: HTMLElementTagNameMap[T];
24
26
  };
25
27
  /**
26
- * A function that handles events for a specific element type, or null if no handler is set.
28
+ * A function that handles events from UI components.
29
+ *
30
+ * This type represents an event listener callback that receives a `CallbackEvent` with a strongly-typed `currentTarget`. Use this for component event handlers like `click`, `focus`, `blur`, and other DOM events.
31
+ *
32
+ * @example
33
+ * const handleClick: CallbackEventListener<'button'> = (event) => {
34
+ * console.log('Button clicked:', event.currentTarget);
35
+ * };
27
36
  * @publicDocs
28
37
  */
29
38
  export type CallbackEventListener<T extends keyof HTMLElementTagNameMap> =
@@ -31,170 +40,113 @@ export type CallbackEventListener<T extends keyof HTMLElementTagNameMap> =
31
40
  (event: CallbackEvent<T>): void;
32
41
  })
33
42
  | null;
34
- /** Used when an element does not have children. * @publicDocs
35
- */
36
- export interface PreactBaseElementProps<TClass extends HTMLElement> {
37
- /**
38
- * A unique identifier for this element within its parent. Preact uses keys to optimize rendering performance when lists change by tracking which items have been added, removed, or reordered.
39
- */
40
- key?: preact.Key;
41
- /**
42
- * A reference to the underlying DOM element, typically created using `useRef()`. This allows you to access and manipulate the DOM element directly in your component logic.
43
- */
44
- ref?: preact.Ref<TClass>;
45
- /**
46
- * Assigns this element to a named slot in a parent component that uses shadow DOM or slot-based composition patterns.
47
- */
48
- slot?: Lowercase<string>;
49
- }
50
-
51
43
  /**
52
- * CSS styles that will be applied to the component's shadow DOM.
53
- * @publicDocs
44
+ * Props for field slot content (label, error, details) that accept
45
+ * either a string or JSX content in the React wrapper.
46
+ *
47
+ * Internal use only — not exported publicly. External consumers receive
48
+ * string-only types via FieldSlotPreactProps.
54
49
  */
55
- export type Styles = string;
50
+ export interface FieldSlotInternalReactProps {
51
+ error?: preact.ComponentChildren;
52
+ details?: preact.ComponentChildren;
53
+ }
56
54
  /**
57
- * Configuration for rendering a custom element with Preact and shadow DOM.
58
- * @publicDocs
55
+ * Preact JSX string-only versions of field slot props.
56
+ * Used in Preact module declarations after Omit-ing the ComponentChildren
57
+ * versions (required by force-omit-react-slots lint rule).
59
58
  */
60
- export type RenderImpl = Omit<ShadowRootInit, 'mode'> & {
61
- /**
62
- * A function that renders the component's content inside the shadow root.
63
- */
64
- ShadowRoot: (element: any) => ComponentChildren;
65
- /**
66
- * CSS styles that will be applied to the shadow DOM.
67
- */
68
- styles?: Styles;
69
- };
59
+ export interface FieldSlotPreactProps {
60
+ error?: string;
61
+ details?: string;
62
+ }
70
63
  /**
71
- * Information about modifier keys and mouse buttons that were active during an interaction.
64
+ * Base props for Preact custom elements without children support. Includes common properties like key, ref, and slot for elements that don't accept child content.
72
65
  * @publicDocs
73
66
  */
74
- export interface ActivationEventEsque {
75
- /**
76
- * Whether the Shift key was held down during the interaction.
77
- */
78
- shiftKey: boolean;
67
+ export interface PreactBaseElementProps<TClass extends HTMLElement> {
79
68
  /**
80
- * Whether the Meta key (Command on Mac, Windows key on PC) was held down during the interaction.
69
+ * A unique identifier for this element, used by the virtual DOM to efficiently track and update elements in lists.
70
+ * Essential for maintaining component state and optimizing re-renders when lists change.
81
71
  */
82
- metaKey: boolean;
72
+ key?: preact.Key;
83
73
  /**
84
- * Whether the Control key was held down during the interaction.
74
+ * A reference to access the underlying DOM element directly.
75
+ * Typically created using `useRef()` to interact with the element imperatively or measure its properties.
85
76
  */
86
- ctrlKey: boolean;
77
+ ref?: preact.Ref<TClass>;
87
78
  /**
88
- * The mouse button that was pressed during the interaction.
79
+ * The named slot to which this element is assigned in the parent component's shadow DOM.
80
+ *
81
+ * Used for advanced component composition with web components.
89
82
  */
90
- button: number;
83
+ slot?: Lowercase<string>;
91
84
  }
92
- /**
93
- * Options for influencing how a programmatic click behaves.
94
- * @publicDocs
95
- */
96
- export interface ClickOptions {
97
- /**
98
- * The original user event (such as a click or keyboard event) that triggered this programmatic click. When provided, the component preserves important event properties like modifier keys (Ctrl, Shift, Alt, Meta) and mouse button states, enabling behaviors such as opening links in a new tab when middle-clicked or Ctrl+clicked.
99
- */
100
- sourceEvent?: ActivationEventEsque;
85
+
86
+ export type ReactIntrinsicElementChildren<PreactProps extends object> =
87
+ 'children' extends keyof PreactProps
88
+ ? {
89
+ children?: ReactNode;
90
+ }
91
+ : Record<never, never>;
92
+ export type ReactIntrinsicElementProps<
93
+ PreactProps extends object,
94
+ ElementType,
95
+ > = Omit<PreactProps, 'children' | 'key' | 'ref' | 'slot'> &
96
+ ReactIntrinsicElementChildren<PreactProps> &
97
+ RefAttributes<ElementType> & {
98
+ slot?: Lowercase<string>;
99
+ };
100
+ export type ReactIntrinsicElements = {
101
+ [Tag in Exclude<
102
+ Extract<keyof preact$1.createElement.JSX.IntrinsicElements, `s-${string}`>,
103
+ `s-test-${string}`
104
+ >]: ReactIntrinsicElementProps<
105
+ preact$1.createElement.JSX.IntrinsicElements[Tag],
106
+ Tag extends keyof HTMLElementTagNameMap
107
+ ? HTMLElementTagNameMap[Tag]
108
+ : HTMLElement
109
+ >;
110
+ };
111
+ declare module 'react' {
112
+ namespace JSX {
113
+ interface IntrinsicElements extends ReactIntrinsicElements {}
114
+ }
101
115
  }
102
- /**
103
- * Base class for creating custom elements with Preact.
104
- * While this class could be used in both Node and the browser, the constructor will only be used in the browser.
105
- * So we give it a type of HTMLElement to avoid typing issues later where it's used, which will only happen in the browser.
106
- */
107
- declare const BaseClass: typeof globalThis.HTMLElement;
108
- declare abstract class PreactCustomElement extends BaseClass {
109
- /** @private */
110
- static get observedAttributes(): string[];
111
- constructor({
112
- styles,
113
- ShadowRoot: renderFunction,
114
- delegatesFocus,
115
- ...options
116
- }: RenderImpl);
117
116
 
118
- /** @private */
119
- setAttribute(name: string, value: string): void;
120
- /** @private */
121
- attributeChangedCallback(name: string): void;
117
+ declare class PolarisCustomElement extends PreactCustomElement {
118
+ constructor(renderImpl: Omit<RenderImpl, 'globalShadowCSS'>);
122
119
  /** @private */
123
120
  connectedCallback(): void;
124
121
  /** @private */
125
- disconnectedCallback(): void;
126
- /** @private */
127
122
  adoptedCallback(): void;
128
- /**
129
- * Queue a run of the render function.
130
- * You shouldn't need to call this manually - it should be handled by changes to @property values.
131
- * @private
132
- */
133
- queueRender(): void;
134
- /**
135
- * Like the standard `element.click()`, but you can influence the behavior with a `sourceEvent`.
136
- *
137
- * For example, if the `sourceEvent` was a middle click, or has particular keys held down,
138
- * components will attempt to produce the desired behavior on links, such as opening the page in the background tab.
139
- * @private
140
- * @param options
141
- */
142
- click({sourceEvent}?: ClickOptions): void;
143
123
  }
144
124
 
145
125
  declare const internals: unique symbol;
146
126
  /**
147
- * The core properties that all input elements need to function within forms.
127
+ * Represents the essential input props required for Preact-based input elements. Includes properties like `disabled`, `id`, `name`, and `value`.
148
128
  * @publicDocs
149
129
  */
150
130
  export type PreactInputProps = Required<
151
131
  Pick<TextFieldProps, 'disabled' | 'id' | 'name' | 'value'>
152
132
  >;
153
- /**
154
- * Base class for input elements that participate in form submission.
155
- */
156
133
  declare class PreactInputElement
157
- extends PreactCustomElement
134
+ extends PolarisCustomElement
158
135
  implements PreactInputProps
159
136
  {
160
- /**
161
- * Indicates that this element can participate in form submission.
162
- */
163
137
  static formAssociated: boolean;
164
138
  /** @private */
165
139
  [internals]: ElementInternals;
166
- /**
167
- * A callback that's triggered when the input's value changes and the field loses focus.
168
- */
169
140
  accessor onchange: CallbackEventListener<'input'>;
170
- /**
171
- * A callback that's triggered when the input's value changes as the user types.
172
- */
173
141
  accessor oninput: CallbackEventListener<'input'>;
174
- /**
175
- * Whether the input is disabled and can't be interacted with.
176
- */
177
142
  accessor disabled: PreactInputProps['disabled'];
178
- /**
179
- * A unique identifier for the input element.
180
- */
181
143
  accessor id: PreactInputProps['id'];
182
- /**
183
- * The name that identifies this input when the form is submitted.
184
- */
185
144
  accessor name: PreactInputProps['name'];
186
- /**
187
- * The current value of the input.
188
- */
189
145
  get value(): PreactInputProps['value'];
190
146
  set value(value: PreactInputProps['value']);
191
147
  constructor(renderImpl: RenderImpl);
192
148
  }
193
149
 
194
- /**
195
- * Properties that are common to checkbox-style components.
196
- * @publicDocs
197
- */
198
150
  export interface PreactCheckboxProps
199
151
  extends Required<
200
152
  Pick<
@@ -211,50 +163,27 @@ export interface PreactCheckboxProps
211
163
  >
212
164
  > {
213
165
  /**
214
- * The value that's submitted with the form when the checkbox is checked.
166
+ * The value used in form data when the control is checked.
215
167
  */
216
168
  value: Required<CheckboxProps$1>['value'];
217
169
  }
218
- /**
219
- * Base class for checkbox-style elements that can be toggled on and off.
220
- */
221
170
  declare class PreactCheckboxElement
222
171
  extends PreactInputElement
223
172
  implements PreactCheckboxProps
224
173
  {
225
- /**
226
- * Whether the checkbox is currently checked.
227
- */
174
+ accessor onblur: CallbackEventListener<'input'>;
228
175
  get checked(): boolean;
229
176
  set checked(checked: PreactCheckboxProps['checked']);
230
177
  /**
231
- * The value used in form data when the checkbox is checked.
178
+ * The value used in form data when the control is checked.
232
179
  */
233
180
  get value(): string;
234
181
  set value(value: string);
235
- /**
236
- * Whether the checkbox should be checked when it's first rendered.
237
- */
238
182
  accessor defaultChecked: PreactCheckboxProps['defaultChecked'];
239
- /**
240
- * A label that's only visible to screen readers, used when the visual label isn't descriptive enough.
241
- */
242
183
  accessor accessibilityLabel: PreactCheckboxProps['accessibilityLabel'];
243
- /**
244
- * Additional text to provide context or guidance for the checkbox.
245
- */
246
184
  accessor details: PreactCheckboxProps['details'];
247
- /**
248
- * An error message that's displayed below the checkbox when validation fails.
249
- */
250
185
  accessor error: PreactCheckboxProps['error'];
251
- /**
252
- * The text that describes what the checkbox is for.
253
- */
254
186
  accessor label: PreactCheckboxProps['label'];
255
- /**
256
- * Whether the checkbox must be checked before the form can be submitted.
257
- */
258
187
  accessor required: PreactCheckboxProps['required'];
259
188
  /** @private */
260
189
  formResetCallback(): void;
@@ -263,33 +192,69 @@ declare class PreactCheckboxElement
263
192
  }
264
193
 
265
194
  /**
266
- * Properties for rendering a checkbox that supports checked, unchecked, and indeterminate states for complex selection scenarios.
267
- * @publicDocs
195
+ * Configure the following properties on the checkbox component.
268
196
  */
269
197
  export interface CheckboxProps extends PreactCheckboxProps {
270
198
  /**
271
- * Whether the checkbox is in an indeterminate state, showing a dash instead of a checkmark to represent a partial selection.
199
+ * Whether the checkbox displays in an indeterminate state (neither checked nor unchecked),
200
+ * typically used to indicate partial selection in hierarchical lists.
201
+ *
202
+ * This visual state takes priority over the `checked` prop in appearance only.
203
+ * The form submission value is still determined by the `checked` prop.
204
+ *
205
+ * If `indeterminate` has not been explicitly set and hasn't been modified by user interaction,
206
+ * it returns the value of `defaultIndeterminate`.
272
207
  */
273
208
  indeterminate: Required<CheckboxProps$1>['indeterminate'];
274
209
  /**
275
- * Whether the checkbox should be in an indeterminate state when it's first rendered, useful for partial selection scenarios.
210
+ * The initial indeterminate state for uncontrolled components. Use this when you want the checkbox to start
211
+ * in an indeterminate state but don't need to control it afterward.
212
+ *
213
+ * This value applies until `indeterminate` is explicitly set or the user changes the checkbox state by clicking.
214
+ *
215
+ * @default false
276
216
  */
277
217
  defaultIndeterminate: Required<CheckboxProps$1>['defaultIndeterminate'];
278
- }
279
-
280
- /**
281
- * A checkbox that lets users select or deselect an option, with support for an indeterminate state.
282
- */
283
- declare class Checkbox extends PreactCheckboxElement implements CheckboxProps {
284
218
  /**
285
- * Whether the checkbox is in an indeterminate state, showing a dash instead of a checkmark.
219
+ * Whether the field needs a value. This requirement adds semantic value
220
+ * to the field, but it will not cause an error to appear automatically.
221
+ * If you want to present an error when this field is empty, you can do
222
+ * so with the `error` property.
223
+ *
224
+ * @default false
286
225
  */
287
- get indeterminate(): CheckboxProps['indeterminate'];
288
- set indeterminate(indeterminate: CheckboxProps['indeterminate']);
226
+ required: Required<CheckboxProps$1>['required'];
289
227
  /**
290
- * Whether the checkbox should be in an indeterminate state when it's first rendered.
228
+ * Changes the visibility of the component's label.
229
+ *
230
+ * - `visible`: the label is visible to all users.
231
+ * - `exclusive`: the label is visually hidden but remains in the accessibility tree.
232
+ *
233
+ * @default 'visible'
291
234
  */
235
+ labelAccessibilityVisibility: Required<CheckboxProps$1>['labelAccessibilityVisibility'];
236
+ }
237
+
238
+ declare abstract class CheckboxBase
239
+ extends PreactCheckboxElement
240
+ implements
241
+ Pick<
242
+ CheckboxProps,
243
+ 'defaultIndeterminate' | 'indeterminate' | 'labelAccessibilityVisibility'
244
+ >
245
+ {
246
+ get indeterminate(): CheckboxProps['indeterminate'];
247
+ set indeterminate(indeterminate: CheckboxProps['indeterminate']);
292
248
  accessor defaultIndeterminate: CheckboxProps['defaultIndeterminate'];
249
+ accessor labelAccessibilityVisibility: CheckboxProps['labelAccessibilityVisibility'];
250
+ constructor(renderImpl: RenderImpl);
251
+ }
252
+
253
+ /**
254
+ * Configure the following properties on the checkbox component.
255
+ * @publicDocs
256
+ */
257
+ declare class Checkbox extends CheckboxBase implements CheckboxProps {
293
258
  constructor();
294
259
  }
295
260
  declare global {
@@ -300,27 +265,27 @@ declare global {
300
265
  declare module 'preact' {
301
266
  namespace createElement.JSX {
302
267
  interface IntrinsicElements {
303
- [tagName]: CheckboxJSXProps & PreactBaseElementProps<Checkbox>;
268
+ [tagName]: Omit<CheckboxJSXProps, 'error' | 'details'> &
269
+ FieldSlotPreactProps &
270
+ PreactBaseElementProps<Checkbox>;
304
271
  }
305
272
  }
306
273
  }
307
274
 
308
275
  declare const tagName = 's-checkbox';
309
- /**
310
- * Props for using the checkbox component in JSX with React-style event handlers.
311
- * @publicDocs
312
- */
313
276
  export interface CheckboxJSXProps
314
- extends Partial<CheckboxProps>,
315
- Pick<CheckboxProps$1, 'id'> {
277
+ extends Partial<Omit<CheckboxProps, 'error' | 'details'>>,
278
+ Pick<CheckboxProps$1, 'id'>,
279
+ FieldSlotInternalReactProps {
316
280
  /**
317
- * A callback that's triggered when the checkbox's checked state changes and it loses focus.
281
+ * A callback fired when the checkbox state changes and the user has finished interacting with it.
318
282
  */
319
283
  onChange?: ((event: CallbackEvent<typeof tagName>) => void) | null;
320
284
  /**
321
- * A callback that's triggered when the checkbox's checked state changes.
285
+ * A callback fired when the checkbox state changes, including intermediate states during user interaction.
322
286
  */
323
287
  onInput?: ((event: CallbackEvent<typeof tagName>) => void) | null;
288
+ onBlur?: ((event: CallbackEvent<typeof tagName>) => void) | null;
324
289
  }
325
290
 
326
291
  export {Checkbox};
@@ -1,4 +1,4 @@
1
- /** VERSION: 1.38.0 **/
1
+ /** VERSION: 2.26.1 **/
2
2
  /* eslint-disable import/extensions */
3
3
 
4
4
  /* eslint-disable @typescript-eslint/no-namespace */
@@ -12,34 +12,135 @@ import type {
12
12
  PreactCustomElement,
13
13
  RenderImpl,
14
14
  } from './shared.d.ts';
15
+ import * as preact$1 from 'preact';
16
+ import {ReactNode, RefAttributes} from 'react';
15
17
 
16
- export interface ChipProps
17
- extends Required<Pick<ChipProps$1, 'color' | 'accessibilityLabel'>> {}
18
-
19
- declare class PolarisCustomElement extends PreactCustomElement {
20
- constructor(renderImpl: Omit<RenderImpl, 'globalShadowCSS'>);
21
- }
22
-
23
- /** Used when an element does not have children. * @publicDocs
18
+ /**
19
+ * An event object with a strongly-typed `currentTarget` property that references the specific HTML element that triggered the event.
20
+ *
21
+ * This type extends the standard DOM `Event` interface and ensures type safety when accessing the element that fired the event.
22
+ * @publicDocs
23
+ */
24
+ export type CallbackEvent<T extends keyof HTMLElementTagNameMap> = Event & {
25
+ currentTarget: HTMLElementTagNameMap[T];
26
+ };
27
+ /**
28
+ * A function that handles events from UI components.
29
+ *
30
+ * This type represents an event listener callback that receives a `CallbackEvent` with a strongly-typed `currentTarget`. Use this for component event handlers like `click`, `focus`, `blur`, and other DOM events.
31
+ *
32
+ * @example
33
+ * const handleClick: CallbackEventListener<'button'> = (event) => {
34
+ * console.log('Button clicked:', event.currentTarget);
35
+ * };
36
+ * @publicDocs
37
+ */
38
+ export type CallbackEventListener<T extends keyof HTMLElementTagNameMap> =
39
+ | (EventListener & {
40
+ (event: CallbackEvent<T>): void;
41
+ })
42
+ | null;
43
+ /**
44
+ * Base props for Preact custom elements without children support. Includes common properties like key, ref, and slot for elements that don't accept child content.
45
+ * @publicDocs
24
46
  */
25
47
  export interface PreactBaseElementProps<TClass extends HTMLElement> {
26
- /** Assigns a unique key to this element. */
48
+ /**
49
+ * A unique identifier for this element, used by the virtual DOM to efficiently track and update elements in lists.
50
+ * Essential for maintaining component state and optimizing re-renders when lists change.
51
+ */
27
52
  key?: preact.Key;
28
- /** Assigns a ref (generally from `useRef()`) to this element. */
53
+ /**
54
+ * A reference to access the underlying DOM element directly.
55
+ * Typically created using `useRef()` to interact with the element imperatively or measure its properties.
56
+ */
29
57
  ref?: preact.Ref<TClass>;
30
- /** Assigns this element to a parent's slot. */
58
+ /**
59
+ * The named slot to which this element is assigned in the parent component's shadow DOM.
60
+ *
61
+ * Used for advanced component composition with web components.
62
+ */
31
63
  slot?: Lowercase<string>;
32
64
  }
33
- /** Used when an element has children. * @publicDocs
65
+ /**
66
+ * Base props for Preact custom elements with children support. Extends PreactBaseElementProps with the ability to render child elements.
67
+ * @publicDocs
34
68
  */
35
69
  export interface PreactBaseElementPropsWithChildren<TClass extends HTMLElement>
36
70
  extends PreactBaseElementProps<TClass> {
71
+ /**
72
+ * The child elements to be rendered within this component.
73
+ */
37
74
  children?: preact.ComponentChildren;
38
75
  }
39
76
 
77
+ export type ReactIntrinsicElementChildren<PreactProps extends object> =
78
+ 'children' extends keyof PreactProps
79
+ ? {
80
+ children?: ReactNode;
81
+ }
82
+ : Record<never, never>;
83
+ export type ReactIntrinsicElementProps<
84
+ PreactProps extends object,
85
+ ElementType,
86
+ > = Omit<PreactProps, 'children' | 'key' | 'ref' | 'slot'> &
87
+ ReactIntrinsicElementChildren<PreactProps> &
88
+ RefAttributes<ElementType> & {
89
+ slot?: Lowercase<string>;
90
+ };
91
+ export type ReactIntrinsicElements = {
92
+ [Tag in Exclude<
93
+ Extract<keyof preact$1.createElement.JSX.IntrinsicElements, `s-${string}`>,
94
+ `s-test-${string}`
95
+ >]: ReactIntrinsicElementProps<
96
+ preact$1.createElement.JSX.IntrinsicElements[Tag],
97
+ Tag extends keyof HTMLElementTagNameMap
98
+ ? HTMLElementTagNameMap[Tag]
99
+ : HTMLElement
100
+ >;
101
+ };
102
+ declare module 'react' {
103
+ namespace JSX {
104
+ interface IntrinsicElements extends ReactIntrinsicElements {}
105
+ }
106
+ }
107
+
108
+ /**
109
+ * Configure the following properties on the chip component.
110
+ */
111
+ export interface ChipProps
112
+ extends Required<
113
+ Pick<ChipProps$1, 'color' | 'accessibilityLabel' | 'removable'>
114
+ > {
115
+ /**
116
+ * The color emphasis level that controls visual intensity.
117
+ *
118
+ * @default 'base'
119
+ */
120
+ color: Required<ChipProps$1>['color'];
121
+ /**
122
+ * A label that describes the purpose or content of the component for assistive technologies like screen readers. Use this to provide additional context when the visible content alone doesn't clearly convey the component's purpose.
123
+ */
124
+ accessibilityLabel: Required<ChipProps$1>['accessibilityLabel'];
125
+ }
126
+
127
+ declare class PolarisCustomElement extends PreactCustomElement {
128
+ constructor(renderImpl: Omit<RenderImpl, 'globalShadowCSS'>);
129
+ /** @private */
130
+ connectedCallback(): void;
131
+ /** @private */
132
+ adoptedCallback(): void;
133
+ }
134
+
135
+ /**
136
+ * Configure the following properties on the chip component.
137
+ * @publicDocs
138
+ */
40
139
  declare class Chip extends PolarisCustomElement implements ChipProps {
41
140
  accessor color: ChipProps['color'];
42
141
  accessor accessibilityLabel: ChipProps['accessibilityLabel'];
142
+ accessor removable: ChipProps['removable'];
143
+ accessor onremove: CallbackEventListener<typeof tagName> | null;
43
144
  constructor();
44
145
  }
45
146
  declare global {
@@ -61,13 +162,14 @@ export interface ChipJSXProps
61
162
  extends Partial<ChipProps>,
62
163
  Pick<ChipProps$1, 'id' | 'children'> {
63
164
  /**
64
- * The content of the chip.
165
+ * The text label displayed within the chip component, typically representing a selected filter, tag, or removable item.
65
166
  */
66
167
  children?: ComponentChildren;
67
168
  /**
68
- * An optional icon to display at the start of the chip. Accepts only Icon components.
169
+ * An optional icon to display at the start of the chip. Accepts only icon components.
69
170
  */
70
171
  graphic?: ComponentChildren;
172
+ onRemove?: ((event: CallbackEvent<typeof tagName>) => void) | null;
71
173
  }
72
174
 
73
175
  export {Chip};