@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,3 +1,5 @@
1
+ import type {AcceptedAddressInputField} from '../../../../shared';
2
+
1
3
  import type {
2
4
  AddressAutocompleteSuggestion,
3
5
  AutocompleteAddress,
@@ -15,6 +17,13 @@ export interface AddressAutocompleteFormatSuggestionApi {
15
17
 
16
18
  interface Target {
17
19
  selectedSuggestion: AddressAutocompleteSuggestion;
20
+
21
+ /**
22
+ * The inputs the address form being populated accepts. Use it to decide
23
+ * which fields to fill; the output isn't validated against it. `undefined`
24
+ * until the address format loads.
25
+ */
26
+ acceptedAddressInputFields?: AcceptedAddressInputField[];
18
27
  }
19
28
 
20
29
  /** @publicDocs */
@@ -1,4 +1,5 @@
1
1
  import type {MailingAddress} from '../../../checkout';
2
+ import type {AddressLineComponents} from '../shared';
2
3
 
3
4
  /**
4
5
  * An address object used to auto-populate the address form fields.
@@ -11,12 +12,20 @@ export interface AutocompleteAddress
11
12
  MailingAddress,
12
13
  | 'address1'
13
14
  | 'address2'
15
+ | 'addressCode'
14
16
  | 'city'
15
17
  | 'company'
16
18
  | 'countryCode'
17
19
  | 'provinceCode'
18
20
  | 'zip'
19
21
  > {
22
+ /**
23
+ * Components of `address1`/`address2`. Always send the flat lines as well: a
24
+ * form without component inputs ignores the components, so a components-only
25
+ * suggestion clears both lines in that form.
26
+ */
27
+ addressLineComponents?: AddressLineComponents;
28
+
20
29
  /**
21
30
  * The latitude coordinates of the buyer.
22
31
  *
@@ -14,10 +14,9 @@ import type {
14
14
  Storage,
15
15
  Version,
16
16
  } from '../standard/standard';
17
- import type {Attribute, MailingAddress} from '../shared';
17
+ import type {Attribute, Country, MailingAddress} from '../shared';
18
18
  import type {
19
19
  ApiVersion,
20
- Country,
21
20
  GraphQLError,
22
21
  StorefrontApiVersion,
23
22
  Timezone,
@@ -1,3 +1,4 @@
1
+ import type {AcceptedAddressInputField} from '../../../../shared';
1
2
  import type {CountryCode} from '../../../checkout';
2
3
 
3
4
  import type {AddressAutocompleteSuggestion} from './shared';
@@ -50,6 +51,13 @@ interface Target {
50
51
  * @example 'CA' for Canada.
51
52
  */
52
53
  selectedCountryCode?: CountryCode;
54
+
55
+ /**
56
+ * The inputs the address form accepts for `selectedCountryCode`. Use it to
57
+ * decide which fields to suggest; suggestions aren't validated against it.
58
+ * `undefined` until the address format loads.
59
+ */
60
+ acceptedAddressInputFields?: AcceptedAddressInputField[];
53
61
  }
54
62
 
55
63
  /** @publicDocs */
@@ -1,9 +1,5 @@
1
- import type {
2
- Attribute,
3
- SellingPlan,
4
- MailingAddress,
5
- ShippingAddress,
6
- } from '../shared';
1
+ import type {AcceptedAddressInputField} from '../../../../shared';
2
+ import type {Attribute, SellingPlan, ShippingAddress} from '../shared';
7
3
 
8
4
  /**
9
5
  * Clears the buyer's note from the checkout. Pass this to `applyNoteChange()` to remove any existing note.
@@ -578,7 +574,11 @@ export interface ShippingAddressUpdateChange {
578
574
  /**
579
575
  * Fields to update in the shipping address. You only need to provide
580
576
  * values for the fields you want to update. Any fields you don't list
581
- * keep their current values.
577
+ * keep their current values. Address line components are written nested
578
+ * under `addressLineComponents`, the same shape they're read.
579
+ *
580
+ * @example
581
+ * {countryCode: 'BR', addressLineComponents: {streetName: 'Avenida Paulista', streetNumber: '1578'}}
582
582
  */
583
583
  address: Partial<ShippingAddress>;
584
584
  }
@@ -606,15 +606,25 @@ export interface ShippingAddressChangeResultSuccess {
606
606
  errors: null;
607
607
  }
608
608
 
609
+ /**
610
+ * The input a shipping address change failed on: an accepted input, `'name'`,
611
+ * or `'addressLineComponents'` when the components object itself is invalid.
612
+ * @publicDocs
613
+ */
614
+ export type ShippingAddressChangeErrorField =
615
+ | AcceptedAddressInputField
616
+ | 'addressLineComponents'
617
+ | 'name';
618
+
609
619
  /**
610
620
  * An error corresponding to a particular field from a given change. Use the `field` property to determine which address field caused the error.
611
621
  * @publicDocs
612
622
  */
613
623
  export interface ShippingAddressChangeFieldError {
614
624
  /**
615
- * The `MailingAddress` field that caused the error, such as `'countryCode'` or `'zip'`. The value is `undefined` if the error isn't specific to a single field.
625
+ * The address input that caused the error, such as `'countryCode'` or `'zip'`, or an address line component such as `'streetName'`. The value is `undefined` if the error isn't specific to a single input.
616
626
  */
617
- field?: keyof MailingAddress;
627
+ field?: ShippingAddressChangeErrorField;
618
628
 
619
629
  /**
620
630
  * A message that explains the error. This message is useful for debugging.
@@ -1,4 +1,25 @@
1
- import type {CountryCode} from '../../../shared';
1
+ import type {AcceptedAddressInputField, CountryCode} from '../../../shared';
2
+
3
+ /**
4
+ * A buyer's country, identified by its ISO country code.
5
+ * @publicDocs
6
+ */
7
+ export interface Country {
8
+ /**
9
+ * The two-letter country code in [ISO 3166-1 alpha-2](https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2) format.
10
+ *
11
+ * @example 'CA' for Canada, 'US' for United States.
12
+ */
13
+ isoCode: CountryCode;
14
+ /**
15
+ * The address inputs this country's format carries, as guidance for what to
16
+ * write: `applyShippingAddressChange` does not validate a change against
17
+ * this list. A country that carries a line component lists the flat line
18
+ * too, so either can be written. Listed inputs may be optional or hidden
19
+ * from the buyer. `undefined` until the address format loads.
20
+ */
21
+ acceptedAddressInputFields?: AcceptedAddressInputField[];
22
+ }
2
23
 
3
24
  /** @publicDocs */
4
25
  export interface ValidationError {
@@ -67,6 +88,59 @@ export interface Attribute {
67
88
  value: string;
68
89
  }
69
90
 
91
+ /**
92
+ * Components of the `address1`/`address2` lines on a `MailingAddress`, for
93
+ * countries whose address format accepts them.
94
+ * @publicDocs
95
+ */
96
+ export interface AddressLineComponents {
97
+ /**
98
+ * The street name, without the number.
99
+ *
100
+ * {% include /apps/checkout/privacy-icon.md %} Requires level 2 access to [protected customer data](https://shopify.dev/docs/apps/store/data-protection/protected-customer-data).
101
+ *
102
+ * @example 'Avenida Paulista'
103
+ */
104
+ streetName?: string;
105
+
106
+ /**
107
+ * The house or building number.
108
+ *
109
+ * {% include /apps/checkout/privacy-icon.md %} Requires level 2 access to [protected customer data](https://shopify.dev/docs/apps/store/data-protection/protected-customer-data).
110
+ *
111
+ * @example '1578'
112
+ */
113
+ streetNumber?: string;
114
+
115
+ /**
116
+ * Additional address information (e.g. apartment, suite, or unit).
117
+ *
118
+ * {% include /apps/checkout/privacy-icon.md %} Requires level 2 access to [protected customer data](https://shopify.dev/docs/apps/store/data-protection/protected-customer-data).
119
+ *
120
+ * @example 'Apto 42'
121
+ */
122
+ additionalInformation?: string;
123
+
124
+ /**
125
+ * A regional or city subdivision (e.g. county, metropolitan region,
126
+ * neighborhood, ward).
127
+ *
128
+ * {% include /apps/checkout/privacy-icon.md %} Requires level 2 access to [protected customer data](https://shopify.dev/docs/apps/store/data-protection/protected-customer-data).
129
+ *
130
+ * @example 'Bela Vista'
131
+ */
132
+ district?: string;
133
+
134
+ /**
135
+ * A finer subdivision within `district`, when the country uses both.
136
+ *
137
+ * {% include /apps/checkout/privacy-icon.md %} Requires level 2 access to [protected customer data](https://shopify.dev/docs/apps/store/data-protection/protected-customer-data).
138
+ *
139
+ * @example 'Kelurahan Menteng'
140
+ */
141
+ subdistrict?: string;
142
+ }
143
+
70
144
  /** @publicDocs */
71
145
  export interface MailingAddress {
72
146
  /**
@@ -134,6 +208,41 @@ export interface MailingAddress {
134
208
  */
135
209
  address2?: string;
136
210
 
211
+ /**
212
+ * The components of `address1`/`address2`. `undefined` when the country's
213
+ * address layout doesn't store components or none have been entered. The
214
+ * flat lines are published alongside them.
215
+ *
216
+ * Writable through `applyShippingAddressChange`, which does not validate a
217
+ * change against `Country.acceptedAddressInputFields`. Sent alongside a flat
218
+ * line, the components win and recompose it. Where a country accepts
219
+ * components without storing them, the write composes the flat line and only
220
+ * the line is published.
221
+ *
222
+ * {% include /apps/checkout/privacy-icon.md %} Requires level 2 access to [protected customer data](https://shopify.dev/docs/apps/store/data-protection/protected-customer-data).
223
+ *
224
+ * @example
225
+ * {
226
+ * streetName: 'Avenida Paulista',
227
+ * streetNumber: '1578',
228
+ * additionalInformation: 'Apto 42',
229
+ * district: 'Bela Vista'
230
+ * }
231
+ */
232
+ addressLineComponents?: AddressLineComponents;
233
+
234
+ /**
235
+ * A postal or national address code that identifies the address
236
+ * independently of its street lines, used by countries such as Saudi
237
+ * Arabia. The value is `undefined` if the country doesn't use one or it
238
+ * hasn't been provided.
239
+ *
240
+ * {% include /apps/checkout/privacy-icon.md %} Requires level 2 access to [protected customer data](https://shopify.dev/docs/apps/store/data-protection/protected-customer-data).
241
+ *
242
+ * @example 'RRRR1234'
243
+ */
244
+ addressCode?: string;
245
+
137
246
  /**
138
247
  * The city, town, or village of the address. The value is `undefined` if
139
248
  * the buyer hasn't entered a city yet.
@@ -2,15 +2,16 @@ import type {
2
2
  ValidationError,
3
3
  SellingPlan,
4
4
  Attribute,
5
+ Country,
5
6
  MailingAddress,
6
7
  ShippingAddress,
7
8
  } from '../shared';
8
9
  import type {ExtensionTarget} from '../../extension-targets';
9
10
  import type {
11
+ AcceptedAddressInputField,
10
12
  ApiVersion,
11
13
  Capability,
12
14
  CurrencyCode,
13
- Country,
14
15
  CountryCode,
15
16
  Timezone,
16
17
  GraphQLError,
@@ -433,6 +434,15 @@ export interface Localization {
433
434
  */
434
435
  country: SubscribableSignalLike<Country | undefined>;
435
436
 
437
+ /**
438
+ * The inputs `applyShippingAddressChange` accepts for `countryCode`. Resolves
439
+ * to an empty array if shipping restrictions exclude the country. Rejects if
440
+ * the address format cannot be loaded.
441
+ */
442
+ acceptedAddressInputFieldsForCountry(
443
+ countryCode: CountryCode,
444
+ ): Promise<AcceptedAddressInputField[]>;
445
+
436
446
  /**
437
447
  * The [market](/docs/apps/build/markets) context of the checkout,
438
448
  * carried over from the cart context. Markets group countries and
@@ -8,7 +8,7 @@
8
8
  /* eslint-disable import-x/namespace */
9
9
  // eslint-disable-next-line @typescript-eslint/triple-slash-reference, spaced-comment
10
10
  /// <reference lib="DOM" />
11
- import type {BoxProps$1,MaybeAllValuesShorthandProperty,BorderSizeKeyword, BorderStyleKeyword,ColorKeyword} from './components-shared.d.ts';
11
+ import type {BoxProps$1,MaybeAllValuesShorthandProperty,BorderSizeKeyword, BorderStyleKeyword, SizeUnits,ColorKeyword} from './components-shared.d.ts';
12
12
 
13
13
  /**
14
14
  * The subset of border size values available for this component.
@@ -84,6 +84,61 @@ export interface BoxElementProps extends Pick<BoxProps$1, 'accessibilityLabel' |
84
84
  * @default 'none'
85
85
  */
86
86
  borderRadius?: MaybeAllValuesShorthandProperty<Extract<BoxProps$1['borderRadius'], 'none' | 'small-100' | 'small' | 'base' | 'large' | 'large-100' | 'max'>>;
87
+ /**
88
+ * Sets the box's block position by specifying offsets from the box's
89
+ * default position, following the CSS `inset-block` shorthand:
90
+ * a block-start offset followed by a block-end offset, where only one
91
+ * of the two can be a size so each axis is only offset once.
92
+ *
93
+ * When `position` is set to `absolute`, offsets are insets from the
94
+ * nearest positioned ancestor. A percentage value refers to the block
95
+ * size of that ancestor.
96
+ *
97
+ * @see https://developer.mozilla.org/en-US/docs/Web/CSS/inset-block
98
+ *
99
+ * @default 'auto'
100
+ * @private
101
+ */
102
+ insetBlock?: `auto ${SizeUnits}` | `${SizeUnits} auto` | 'auto';
103
+ /**
104
+ * Sets the box's inline position by specifying offsets from the box's
105
+ * default position, following the CSS `inset-inline` shorthand:
106
+ * an inline-start offset followed by an inline-end offset, where only
107
+ * one of the two can be a size so each axis is only offset once.
108
+ *
109
+ * When `position` is set to `absolute`, offsets are insets from the
110
+ * nearest positioned ancestor. A percentage value refers to the inline
111
+ * size of that ancestor.
112
+ *
113
+ * @see https://developer.mozilla.org/en-US/docs/Web/CSS/inset-inline
114
+ *
115
+ * @default 'auto'
116
+ * @private
117
+ */
118
+ insetInline?: `auto ${SizeUnits}` | `${SizeUnits} auto` | 'auto';
119
+ /**
120
+ * Changes how the box is positioned.
121
+ *
122
+ * @see https://developer.mozilla.org/en-US/docs/Web/CSS/position
123
+ *
124
+ * @default 'relative'
125
+ * @private
126
+ */
127
+ position?: 'absolute' | 'relative';
128
+ /**
129
+ * Specifies a transformation of the box.
130
+ *
131
+ * Only two-dimensional translations are supported. The first value
132
+ * translates along the inline axis and the second along the block axis;
133
+ * inline translations are flipped in right-to-left writing modes.
134
+ * A percentage value refers to the corresponding size of the box itself.
135
+ *
136
+ * @see https://developer.mozilla.org/en-US/docs/Web/CSS/transform
137
+ *
138
+ * @default 'none'
139
+ * @private
140
+ */
141
+ transform?: `translate(${SizeUnits})` | `translate(${SizeUnits}, ${SizeUnits})` | `translate(${SizeUnits},${SizeUnits})` | 'none';
87
142
  }
88
143
  export interface BoxElement extends BoxElementProps, Omit<HTMLElement, 'id'> {
89
144
  }
@@ -46,7 +46,8 @@ export interface MoneyFieldElementEvents {
46
46
  */
47
47
  blur?: CallbackEventListener<typeof tagName>;
48
48
  /**
49
- * A callback fired when the money field value changes.
49
+ * A callback fired when the money field value is committed on blur or after pressing Enter.
50
+ * Also fired on each step when using the Up Arrow and Down Arrow keys.
50
51
  *
51
52
  * Learn more about the [change event](https://developer.mozilla.org/en-US/docs/Web/API/HTMLElement/change_event).
52
53
  */
@@ -59,6 +60,7 @@ export interface MoneyFieldElementEvents {
59
60
  focus?: CallbackEventListener<typeof tagName>;
60
61
  /**
61
62
  * A callback fired when the user inputs data into the money field.
63
+ * Also fired on each step when using the Up Arrow and Down Arrow keys.
62
64
  *
63
65
  * Learn more about the [input event](https://developer.mozilla.org/en-US/docs/Web/API/Element/input_event).
64
66
  */
@@ -88,7 +88,8 @@ export interface NumberFieldElementEvents {
88
88
  */
89
89
  blur?: CallbackEventListener<typeof tagName>;
90
90
  /**
91
- * A callback fired when the number field value changes.
91
+ * A callback fired when the number field value is committed on blur or after pressing Enter.
92
+ * Also fired on each step when using the increment/decrement controls or the Up Arrow and Down Arrow keys.
92
93
  *
93
94
  * Learn more about the [change event](https://developer.mozilla.org/en-US/docs/Web/API/HTMLElement/change_event).
94
95
  */
@@ -101,6 +102,7 @@ export interface NumberFieldElementEvents {
101
102
  focus?: CallbackEventListener<typeof tagName>;
102
103
  /**
103
104
  * A callback fired when the user inputs data into the number field.
105
+ * Also fired on each step when using the increment/decrement controls or the Up Arrow and Down Arrow keys.
104
106
  *
105
107
  * Learn more about the [input event](https://developer.mozilla.org/en-US/docs/Web/API/Element/input_event).
106
108
  */
@@ -1384,7 +1384,7 @@ export interface ButtonBehaviorProps extends InteractionProps, FocusEventProps {
1384
1384
  }
1385
1385
  export interface LinkBehaviorProps extends InteractionProps, FocusEventProps {
1386
1386
  /**
1387
- * The URL to navigate to when clicked. The `click` event fires first, then navigation occurs. If `commandFor` is also set, the command executes instead of navigation.
1387
+ * The URL to navigate to when clicked, including `mailto:` and `tel:` URLs. The `click` event fires first, then navigation occurs. If `commandFor` is also set, the command executes instead of navigation.
1388
1388
  */
1389
1389
  href?: string;
1390
1390
  /**
@@ -1,5 +1,5 @@
1
1
  import type {RenderExtensionTarget} from '../extension-targets';
2
- import type {Country} from '../../../shared';
2
+ import type {Country} from '../api/shared';
3
3
 
4
4
  import {useApi} from './api';
5
5
  import {useSubscription} from './subscription';
@@ -79,7 +79,9 @@ export type {
79
79
  } from './checkout/api/standard/standard';
80
80
 
81
81
  export type {
82
+ AddressLineComponents,
82
83
  Attribute,
84
+ Country,
83
85
  SellingPlan,
84
86
  ValidationError,
85
87
  MailingAddress,
@@ -134,6 +136,7 @@ export type {
134
136
  NoteChangeResultError,
135
137
  ShippingAddressChange,
136
138
  ShippingAddressChangeFieldError,
139
+ ShippingAddressChangeErrorField,
137
140
  ShippingAddressChangeResult,
138
141
  ShippingAddressChangeResultError,
139
142
  ShippingAddressChangeResultSuccess,
@@ -5,7 +5,6 @@ import type {
5
5
  Capability,
6
6
  CurrencyCode,
7
7
  Timezone,
8
- Country,
9
8
  CountryCode,
10
9
  GraphQLError,
11
10
  StorefrontApiVersion,
@@ -18,13 +17,24 @@ export {
18
17
  Capability,
19
18
  CurrencyCode,
20
19
  Timezone,
21
- Country,
22
20
  CountryCode,
23
21
  GraphQLError,
24
22
  StorefrontApiVersion,
25
23
  SubscribableSignalLike,
26
24
  };
27
25
 
26
+ /**
27
+ * A buyer's country, identified by its ISO country code.
28
+ */
29
+ export interface Country {
30
+ /**
31
+ * The two-letter country code in [ISO 3166-1 alpha-2](https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2) format.
32
+ *
33
+ * @example 'CA' for Canada, 'US' for United States.
34
+ */
35
+ isoCode: CountryCode;
36
+ }
37
+
28
38
  /**
29
39
  * Persists key-value data across customer sessions for a specific extension target. Use storage to save preferences, dismiss states, or cached data that should survive page reloads without requiring a backend call.
30
40
  *
@@ -347,24 +357,32 @@ export interface AuthenticatedAccount {
347
357
  /**
348
358
  * The authenticated customer's account information. The value is `undefined` if the customer isn't logged in.
349
359
  */
350
- customer: SubscribableSignalLike<Customer | undefined>;
360
+ customer: SubscribableSignalLike<AuthenticatedAccountCustomer | undefined>;
351
361
  }
352
362
 
353
363
  /**
354
- * The authenticated customer's account, identified by a globally-unique ID.
364
+ * The authenticated customer's account, identified by a numeric customer ID represented as a string.
355
365
  *
356
366
  * {% include /apps/checkout/privacy-icon.md %} Requires level 1 access to [protected customer data](/docs/apps/store/data-protection/protected-customer-data).
357
- * @publicDocs
367
+ * @deprecated Use `AuthenticatedAccountCustomer` instead.
358
368
  */
359
369
  export interface Customer {
360
370
  /**
361
- * A globally-unique identifier for the customer in the format `gid://shopify/Customer/<id>`.
371
+ * The customer's numeric ID represented as a string.
362
372
  *
363
- * @example 'gid://shopify/Customer/123'
373
+ * @example '123'
364
374
  */
365
375
  id: string;
366
376
  }
367
377
 
378
+ /**
379
+ * The authenticated customer's account, identified by a numeric customer ID represented as a string.
380
+ *
381
+ * {% include /apps/checkout/privacy-icon.md %} Requires level 1 access to [protected customer data](/docs/apps/store/data-protection/protected-customer-data).
382
+ * @publicDocs
383
+ */
384
+ export interface AuthenticatedAccountCustomer extends Customer {}
385
+
368
386
  /**
369
387
  * @publicDocs
370
388
  */
@@ -61,6 +61,7 @@ export type {
61
61
  Language,
62
62
  Storage,
63
63
  AuthenticatedAccount,
64
+ AuthenticatedAccountCustomer,
64
65
  PurchasingCompany,
65
66
  Company,
66
67
  Customer,
@@ -1,17 +1,17 @@
1
1
  import type {RenderExtensionTarget} from '../extension-targets';
2
- import type {Customer, PurchasingCompany} from '../api';
2
+ import type {AuthenticatedAccountCustomer, PurchasingCompany} from '../api';
3
3
 
4
4
  import {useApi} from './api';
5
5
  import {useSubscription} from './subscription';
6
6
 
7
7
  /**
8
- * Returns the current authenticated `Customer`.
8
+ * Returns the current `AuthenticatedAccountCustomer`.
9
9
  *
10
10
  * The value is `undefined` if the customer isn't authenticated.
11
11
  */
12
12
  export function useAuthenticatedAccountCustomer<
13
13
  Target extends RenderExtensionTarget,
14
- >(): Customer | undefined {
14
+ >(): AuthenticatedAccountCustomer | undefined {
15
15
  const account = useApi<Target>().authenticatedAccount;
16
16
 
17
17
  return useSubscription(account.customer);
@@ -138,6 +138,20 @@ export interface MutableCartApiContent {
138
138
  options?: AddLineItemOptions,
139
139
  ): Promise<string>;
140
140
 
141
+ /**
142
+ * Set the quantity of an existing line item identified by its `UUID`, preserving the line item's properties, discounts, and selling plans. This is equivalent to a merchant adjusting the quantity on the native cart line.
143
+ *
144
+ * If POS has split the line into multiple allocations that share the same `UUID` (for example, lines split across delivery methods), the target line is ambiguous and the call throws instead of guessing.
145
+ *
146
+ * Only available on API version `2026-10` and later.
147
+ *
148
+ * @param uuid the UUID of the line item to update
149
+ * @param quantity the new absolute quantity; must be an integer of 1 or greater. To remove a line item, use `removeLineItem` instead.
150
+ * @returns A promise that resolves after the cart state reflects the change.
151
+ * @throws {Error} if the line item is not found, the `UUID` matches multiple split-line allocations, the quantity is invalid, the cart is not editable because it is a return or exchange, or the POS app version does not support this method.
152
+ */
153
+ updateLineItemQuantity(uuid: string, quantity: number): Promise<void>;
154
+
141
155
  /**
142
156
  * Remove a specific line item from the cart using its `UUID`. The line item will be completely removed from the cart along with any associated discounts, properties, or selling plans.
143
157
  *
@@ -11,6 +11,10 @@ export interface DeviceApiContent {
11
11
  * A short, unique identifier for the device, assigned by Shopify.
12
12
  */
13
13
  registerName: string;
14
+ /**
15
+ * The Shopify-assigned fiscal register identifier for the device, such as Sweden's manufacturing number (tillverkningsnummer).
16
+ */
17
+ fiscalDeviceIdentifier?: string;
14
18
  /**
15
19
  * Retrieves the unique string identifier for the device. Returns a promise that resolves to the device ID. Use for device-specific data storage, analytics tracking, or implementing device-based permissions and configurations.
16
20
  * Note: While Shopify POS attempts to maintain a stable identifier, it is not guaranteed to be permanent and may change.
@@ -9,3 +9,11 @@ export interface Docs_AppBackgroundEventMethods
9
9
  BackgroundShopifyGlobal,
10
10
  'addEventListener' | 'removeEventListener'
11
11
  > {}
12
+
13
+ /**
14
+ * Validation interceptor method available on the `shopify` global for app
15
+ * background extensions.
16
+ * @publicDocs
17
+ */
18
+ export interface Docs_AppBackgroundInterceptMethods
19
+ extends Pick<BackgroundShopifyGlobal, 'intercept'> {}
@@ -7,15 +7,16 @@ import type {ApiVersion} from '../../../../shared';
7
7
  * multiple targets. Access these properties through `shopify.extension`.
8
8
  *
9
9
  * @example
10
- * <caption>Read the API version and active target</caption>
11
- * <description>Display the configured API version and the active extension target. Use `shopify.extension.apiVersion` for version-aware logic and `shopify.extension.target` when a single module handles multiple targets.</description>
10
+ * <caption>Read the API version, published version, and active target</caption>
11
+ * <description>Display the configured API version, the published app version this build was deployed in, and the active extension target. Use `shopify.extension.apiVersion` for version-aware logic, `shopify.extension.version` to report which build a merchant is running, and `shopify.extension.target` when a single module handles multiple targets.</description>
12
12
  * ```jsx
13
13
  * const Extension = () => {
14
- * const {apiVersion, target} = shopify.extension;
14
+ * const {apiVersion, version, target} = shopify.extension;
15
15
  * return (
16
16
  * <s-page heading="Extension Info">
17
17
  * <s-stack direction="block">
18
18
  * <s-text>API Version: {apiVersion}</s-text>
19
+ * <s-text>Version: {version ?? 'development build'}</s-text>
19
20
  * <s-text>Target: {target}</s-text>
20
21
  * </s-stack>
21
22
  * </s-page>
@@ -38,12 +39,31 @@ export interface ExtensionApiContent<T> {
38
39
  * @example 'pos.home.tile.render', 'pos.home.modal.render'
39
40
  */
40
41
  target: T;
42
+ /**
43
+ * The name of the published app version that this extension was deployed in.
44
+ * This is the same name shown on the Versions page of your dev dashboard, and
45
+ * the name you choose when you run `shopify app deploy`.
46
+ *
47
+ * Use it to tell which build of your extension a merchant is running. POS
48
+ * caches extension bundles and runs them offline, so a device can stay on an
49
+ * older version for some time after you deploy a new one.
50
+ *
51
+ * This is an opaque name, not a version number. Compare it for equality; don't
52
+ * sort it or read parts out of it.
53
+ *
54
+ * `undefined` when the extension runs from a local development server, because
55
+ * a build that hasn't been deployed has no published version.
56
+ *
57
+ * @example 'restaurant-table-manager-2', 'casa-loyalty-493'
58
+ */
59
+ version?: string;
41
60
  }
42
61
 
43
62
  /**
44
63
  * The `ExtensionApi` object provides metadata about the currently running
45
- * extension, including the configured API version and the active extension
46
- * target. Access these properties through `shopify.extension`.
64
+ * extension, including the configured API version, the published app version it
65
+ * was deployed in, and the active extension target. Access these properties
66
+ * through `shopify.extension`.
47
67
  * @publicDocs
48
68
  */
49
69
  export interface ExtensionApi<T> {