@shopify/ui-extensions 2025.10.0-rc.6 → 2025.10.0-rc.8

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 (415) hide show
  1. package/build/ts/docs/shared/components/Map.d.ts +4 -0
  2. package/build/ts/docs/shared/components/Map.d.ts.map +1 -0
  3. package/build/ts/docs/shared/components/MapMarker.d.ts +4 -0
  4. package/build/ts/docs/shared/components/MapMarker.d.ts.map +1 -0
  5. package/build/ts/docs/shared/components/Modal.d.ts +4 -0
  6. package/build/ts/docs/shared/components/Modal.d.ts.map +1 -0
  7. package/build/ts/docs/shared/components/Option.d.ts +4 -0
  8. package/build/ts/docs/shared/components/Option.d.ts.map +1 -0
  9. package/build/ts/docs/shared/components/PhoneField.d.ts +4 -0
  10. package/build/ts/docs/shared/components/PhoneField.d.ts.map +1 -0
  11. package/build/ts/docs/shared/components/ProductThumbnail.d.ts +4 -0
  12. package/build/ts/docs/shared/components/ProductThumbnail.d.ts.map +1 -0
  13. package/build/ts/surfaces/admin/components/AdminAction.d.ts +1 -1
  14. package/build/ts/surfaces/admin/components/AdminBlock.d.ts +1 -1
  15. package/build/ts/surfaces/admin/components/AdminPrintAction.d.ts +1 -1
  16. package/build/ts/surfaces/admin/components/Badge.d.ts +1 -1
  17. package/build/ts/surfaces/admin/components/Banner.d.ts +1 -1
  18. package/build/ts/surfaces/admin/components/Box.d.ts +1 -1
  19. package/build/ts/surfaces/admin/components/Button.d.ts +1 -1
  20. package/build/ts/surfaces/admin/components/Checkbox.d.ts +1 -1
  21. package/build/ts/surfaces/admin/components/Choice.d.ts +1 -1
  22. package/build/ts/surfaces/admin/components/ChoiceList.d.ts +1 -1
  23. package/build/ts/surfaces/admin/components/Clickable.d.ts +1 -1
  24. package/build/ts/surfaces/admin/components/DatePicker.d.ts +1 -1
  25. package/build/ts/surfaces/admin/components/Divider.d.ts +1 -1
  26. package/build/ts/surfaces/admin/components/EmailField.d.ts +1 -1
  27. package/build/ts/surfaces/admin/components/Form.d.ts +1 -1
  28. package/build/ts/surfaces/admin/components/Grid.d.ts +1 -1
  29. package/build/ts/surfaces/admin/components/GridItem.d.ts +1 -1
  30. package/build/ts/surfaces/admin/components/Heading.d.ts +1 -1
  31. package/build/ts/surfaces/admin/components/Icon.d.ts +1 -1
  32. package/build/ts/surfaces/admin/components/Image.d.ts +1 -1
  33. package/build/ts/surfaces/admin/components/Link.d.ts +1 -1
  34. package/build/ts/surfaces/admin/components/ListItem.d.ts +1 -1
  35. package/build/ts/surfaces/admin/components/MoneyField.d.ts +1 -1
  36. package/build/ts/surfaces/admin/components/NumberField.d.ts +1 -1
  37. package/build/ts/surfaces/admin/components/Option.d.ts +1 -1
  38. package/build/ts/surfaces/admin/components/OptionGroup.d.ts +1 -1
  39. package/build/ts/surfaces/admin/components/OrderedList.d.ts +1 -1
  40. package/build/ts/surfaces/admin/components/Page.d.ts +1 -1
  41. package/build/ts/surfaces/admin/components/Paragraph.d.ts +1 -1
  42. package/build/ts/surfaces/admin/components/PasswordField.d.ts +1 -1
  43. package/build/ts/surfaces/admin/components/QueryContainer.d.ts +1 -1
  44. package/build/ts/surfaces/admin/components/SearchField.d.ts +1 -1
  45. package/build/ts/surfaces/admin/components/Section.d.ts +1 -1
  46. package/build/ts/surfaces/admin/components/Select.d.ts +1 -1
  47. package/build/ts/surfaces/admin/components/Spinner.d.ts +1 -1
  48. package/build/ts/surfaces/admin/components/Stack.d.ts +1 -1
  49. package/build/ts/surfaces/admin/components/StandardComponents.d.ts +1 -1
  50. package/build/ts/surfaces/admin/components/StandardComponents.d.ts.map +1 -1
  51. package/build/ts/surfaces/admin/components/Switch.d.ts +1 -1
  52. package/build/ts/surfaces/admin/components/Table.d.ts +1 -1
  53. package/build/ts/surfaces/admin/components/TableBody.d.ts +1 -1
  54. package/build/ts/surfaces/admin/components/TableCell.d.ts +1 -1
  55. package/build/ts/surfaces/admin/components/TableHeader.d.ts +1 -1
  56. package/build/ts/surfaces/admin/components/TableHeaderRow.d.ts +1 -1
  57. package/build/ts/surfaces/admin/components/TableRow.d.ts +1 -1
  58. package/build/ts/surfaces/admin/components/Text.d.ts +1 -1
  59. package/build/ts/surfaces/admin/components/TextArea.d.ts +1 -1
  60. package/build/ts/surfaces/admin/components/TextField.d.ts +1 -1
  61. package/build/ts/surfaces/admin/components/Thumbnail.d.ts +133 -0
  62. package/build/ts/surfaces/admin/components/URLField.d.ts +1 -1
  63. package/build/ts/surfaces/admin/components/UnorderedList.d.ts +1 -1
  64. package/build/ts/surfaces/admin/components/patterns/details.ab.doc.d.ts +4 -0
  65. package/build/ts/surfaces/admin/components/patterns/details.ab.doc.d.ts.map +1 -0
  66. package/build/ts/surfaces/admin/components/patterns/homepage.ab.doc.d.ts +4 -0
  67. package/build/ts/surfaces/admin/components/patterns/homepage.ab.doc.d.ts.map +1 -0
  68. package/build/ts/surfaces/admin/components/patterns/index.ab.doc.d.ts +4 -0
  69. package/build/ts/surfaces/admin/components/patterns/index.ab.doc.d.ts.map +1 -0
  70. package/build/ts/surfaces/admin/components/patterns/settings.ab.doc.d.ts +4 -0
  71. package/build/ts/surfaces/admin/components/patterns/settings.ab.doc.d.ts.map +1 -0
  72. package/build/ts/surfaces/admin/components/shared.d.ts +25 -1
  73. package/build/ts/surfaces/admin/targets/admin.abandoned-checkout-details.action.render.d.ts +54 -1
  74. package/build/ts/surfaces/admin/targets/admin.abandoned-checkout-details.block.render.d.ts +54 -1
  75. package/build/ts/surfaces/admin/targets/admin.catalog-details.action.render.d.ts +54 -1
  76. package/build/ts/surfaces/admin/targets/admin.catalog-details.block.render.d.ts +54 -1
  77. package/build/ts/surfaces/admin/targets/admin.collection-details.action.render.d.ts +54 -1
  78. package/build/ts/surfaces/admin/targets/admin.collection-details.block.render.d.ts +54 -1
  79. package/build/ts/surfaces/admin/targets/admin.collection-index.action.render.d.ts +54 -1
  80. package/build/ts/surfaces/admin/targets/admin.company-details.action.render.d.ts +54 -1
  81. package/build/ts/surfaces/admin/targets/admin.company-details.block.render.d.ts +54 -1
  82. package/build/ts/surfaces/admin/targets/admin.company-location-details.block.render.d.ts +54 -1
  83. package/build/ts/surfaces/admin/targets/admin.customer-details.action.render.d.ts +54 -1
  84. package/build/ts/surfaces/admin/targets/admin.customer-details.block.render.d.ts +54 -1
  85. package/build/ts/surfaces/admin/targets/admin.customer-index.action.render.d.ts +54 -1
  86. package/build/ts/surfaces/admin/targets/admin.customer-index.selection-action.render.d.ts +54 -1
  87. package/build/ts/surfaces/admin/targets/admin.customer-segment-details.action.render.d.ts +54 -1
  88. package/build/ts/surfaces/admin/targets/admin.customers.segmentation-templates.render.d.ts +54 -1
  89. package/build/ts/surfaces/admin/targets/admin.discount-details.action.render.d.ts +54 -1
  90. package/build/ts/surfaces/admin/targets/admin.discount-details.function-settings.render.d.ts +54 -1
  91. package/build/ts/surfaces/admin/targets/admin.discount-index.action.render.d.ts +54 -1
  92. package/build/ts/surfaces/admin/targets/admin.draft-order-details.action.render.d.ts +54 -1
  93. package/build/ts/surfaces/admin/targets/admin.draft-order-details.block.render.d.ts +54 -1
  94. package/build/ts/surfaces/admin/targets/admin.draft-order-index.action.render.d.ts +54 -1
  95. package/build/ts/surfaces/admin/targets/admin.draft-order-index.selection-action.render.d.ts +54 -1
  96. package/build/ts/surfaces/admin/targets/admin.gift-card-details.action.render.d.ts +54 -1
  97. package/build/ts/surfaces/admin/targets/admin.gift-card-details.block.render.d.ts +54 -1
  98. package/build/ts/surfaces/admin/targets/admin.order-details.action.render.d.ts +54 -1
  99. package/build/ts/surfaces/admin/targets/admin.order-details.block.render.d.ts +54 -1
  100. package/build/ts/surfaces/admin/targets/admin.order-details.print-action.render.d.ts +54 -1
  101. package/build/ts/surfaces/admin/targets/admin.order-fulfilled-card.action.render.d.ts +54 -1
  102. package/build/ts/surfaces/admin/targets/admin.order-index.action.render.d.ts +54 -1
  103. package/build/ts/surfaces/admin/targets/admin.order-index.selection-action.render.d.ts +54 -1
  104. package/build/ts/surfaces/admin/targets/admin.order-index.selection-print-action.render.d.ts +54 -1
  105. package/build/ts/surfaces/admin/targets/admin.product-details.action.render.d.ts +54 -1
  106. package/build/ts/surfaces/admin/targets/admin.product-details.block.render.d.ts +54 -1
  107. package/build/ts/surfaces/admin/targets/admin.product-details.configuration.render.d.ts +54 -1
  108. package/build/ts/surfaces/admin/targets/admin.product-details.print-action.render.d.ts +54 -1
  109. package/build/ts/surfaces/admin/targets/admin.product-details.reorder.render.d.ts +54 -1
  110. package/build/ts/surfaces/admin/targets/admin.product-index.action.render.d.ts +54 -1
  111. package/build/ts/surfaces/admin/targets/admin.product-index.selection-action.render.d.ts +54 -1
  112. package/build/ts/surfaces/admin/targets/admin.product-index.selection-print-action.render.d.ts +54 -1
  113. package/build/ts/surfaces/admin/targets/admin.product-purchase-option.action.render.d.ts +54 -1
  114. package/build/ts/surfaces/admin/targets/admin.product-variant-details.action.render.d.ts +54 -1
  115. package/build/ts/surfaces/admin/targets/admin.product-variant-details.block.render.d.ts +54 -1
  116. package/build/ts/surfaces/admin/targets/admin.product-variant-details.configuration.render.d.ts +54 -1
  117. package/build/ts/surfaces/admin/targets/admin.product-variant-purchase-option.action.render.d.ts +54 -1
  118. package/build/ts/surfaces/admin/targets/admin.settings.internal-order-routing-rule.render.d.ts +54 -1
  119. package/build/ts/surfaces/admin/targets/admin.settings.order-routing-rule.render.d.ts +54 -1
  120. package/build/ts/surfaces/admin/targets/admin.settings.validation.render.d.ts +54 -1
  121. package/build/ts/surfaces/checkout/components/Abbreviation.d.ts +20 -8
  122. package/build/ts/surfaces/checkout/components/Banner/Banner.doc.d.ts.map +1 -1
  123. package/build/ts/surfaces/checkout/components/Banner.d.ts +52 -13
  124. package/build/ts/surfaces/checkout/components/Box.d.ts +20 -9
  125. package/build/ts/surfaces/checkout/components/Button/Button.doc.d.ts.map +1 -1
  126. package/build/ts/surfaces/checkout/components/Button.d.ts +39 -13
  127. package/build/ts/surfaces/checkout/components/Checkbox/Checkbox.doc.d.ts +4 -0
  128. package/build/ts/surfaces/checkout/components/Checkbox/Checkbox.doc.d.ts.map +1 -0
  129. package/build/ts/surfaces/checkout/components/Checkbox.d.ts +54 -0
  130. package/build/ts/surfaces/checkout/components/ClipboardItem.d.ts +36 -9
  131. package/build/ts/surfaces/checkout/components/DropZone/DropZone.doc.d.ts.map +1 -1
  132. package/build/ts/surfaces/checkout/components/DropZone.d.ts +36 -9
  133. package/build/ts/surfaces/checkout/components/EmailField/EmailField.doc.d.ts +4 -0
  134. package/build/ts/surfaces/checkout/components/EmailField/EmailField.doc.d.ts.map +1 -0
  135. package/build/ts/surfaces/checkout/components/EmailField.d.ts +69 -0
  136. package/build/ts/surfaces/checkout/components/Form.d.ts +40 -12
  137. package/build/ts/surfaces/checkout/components/Heading.d.ts +20 -8
  138. package/build/ts/surfaces/checkout/components/Icon.d.ts +22 -9
  139. package/build/ts/surfaces/checkout/components/Image.d.ts +13 -7
  140. package/build/ts/surfaces/checkout/components/Link/Link.doc.d.ts.map +1 -1
  141. package/build/ts/surfaces/checkout/components/Link.d.ts +39 -13
  142. package/build/ts/surfaces/checkout/components/ListItem.d.ts +22 -10
  143. package/build/ts/surfaces/checkout/components/Map/Map.doc.d.ts +4 -0
  144. package/build/ts/surfaces/checkout/components/Map/Map.doc.d.ts.map +1 -0
  145. package/build/ts/surfaces/checkout/components/Map.d.ts +75 -0
  146. package/build/ts/surfaces/checkout/components/MapMarker.d.ts +73 -0
  147. package/build/ts/surfaces/checkout/components/Modal/Modal.doc.d.ts +4 -0
  148. package/build/ts/surfaces/checkout/components/Modal/Modal.doc.d.ts.map +1 -0
  149. package/build/ts/surfaces/checkout/components/Modal.d.ts +87 -0
  150. package/build/ts/surfaces/checkout/components/OrderedList.d.ts +20 -8
  151. package/build/ts/surfaces/checkout/components/Paragraph.d.ts +20 -8
  152. package/build/ts/surfaces/checkout/components/PaymentIcon.d.ts +14 -7
  153. package/build/ts/surfaces/checkout/components/PhoneField/PhoneField.doc.d.ts +4 -0
  154. package/build/ts/surfaces/checkout/components/PhoneField/PhoneField.doc.d.ts.map +1 -0
  155. package/build/ts/surfaces/checkout/components/PhoneField.d.ts +84 -0
  156. package/build/ts/surfaces/checkout/components/ProductThumbnail/ProductThumbnail.doc.d.ts +4 -0
  157. package/build/ts/surfaces/checkout/components/ProductThumbnail/ProductThumbnail.doc.d.ts.map +1 -0
  158. package/build/ts/surfaces/checkout/components/Progress.d.ts +14 -4
  159. package/build/ts/surfaces/checkout/components/QRCode/QRCode.doc.d.ts.map +1 -1
  160. package/build/ts/surfaces/checkout/components/QRCode.d.ts +32 -8
  161. package/build/ts/surfaces/checkout/components/Section.d.ts +20 -8
  162. package/build/ts/surfaces/checkout/components/Spinner.d.ts +14 -4
  163. package/build/ts/surfaces/checkout/components/Stack.d.ts +20 -9
  164. package/build/ts/surfaces/checkout/components/Text.d.ts +20 -8
  165. package/build/ts/surfaces/checkout/components/TextArea/TextArea.doc.d.ts +4 -0
  166. package/build/ts/surfaces/checkout/components/TextArea/TextArea.doc.d.ts.map +1 -0
  167. package/build/ts/surfaces/checkout/components/TextArea.d.ts +69 -0
  168. package/build/ts/surfaces/checkout/components/TextField/TextField.doc.d.ts.map +1 -1
  169. package/build/ts/surfaces/checkout/components/TextField.d.ts +72 -21
  170. package/build/ts/surfaces/checkout/components/Time.d.ts +20 -8
  171. package/build/ts/surfaces/checkout/components/UnorderedList.d.ts +20 -8
  172. package/build/ts/surfaces/checkout/components/components-shared.d.ts +486 -2
  173. package/build/ts/surfaces/checkout/components/components.d.ts +1000 -166
  174. package/build/ts/surfaces/checkout/shared.d.ts +1 -1
  175. package/build/ts/surfaces/checkout/shared.d.ts.map +1 -1
  176. package/build/ts/surfaces/checkout/targets/Checkout::Actions::RenderBefore.d.ts +918 -172
  177. package/build/ts/surfaces/checkout/targets/Checkout::CartLineDetails::RenderAfter.d.ts +918 -172
  178. package/build/ts/surfaces/checkout/targets/Checkout::CartLineDetails::RenderLineComponents.d.ts +918 -172
  179. package/build/ts/surfaces/checkout/targets/Checkout::CartLines::RenderAfter.d.ts +918 -172
  180. package/build/ts/surfaces/checkout/targets/Checkout::Contact::RenderAfter.d.ts +918 -172
  181. package/build/ts/surfaces/checkout/targets/Checkout::CustomerInformation::RenderAfter.d.ts +918 -172
  182. package/build/ts/surfaces/checkout/targets/Checkout::DeliveryAddress::RenderBefore.d.ts +918 -172
  183. package/build/ts/surfaces/checkout/targets/Checkout::Dynamic::Render.d.ts +918 -172
  184. package/build/ts/surfaces/checkout/targets/Checkout::GiftCard::Render.d.ts +863 -155
  185. package/build/ts/surfaces/checkout/targets/Checkout::PaymentMethod::HostedFields::RenderAfter.d.ts +863 -155
  186. package/build/ts/surfaces/checkout/targets/Checkout::PaymentMethod::Render.d.ts +863 -155
  187. package/build/ts/surfaces/checkout/targets/Checkout::PaymentMethod::RenderRequiredAction.d.ts +918 -172
  188. package/build/ts/surfaces/checkout/targets/Checkout::PickupLocations::RenderAfter.d.ts +918 -172
  189. package/build/ts/surfaces/checkout/targets/Checkout::PickupLocations::RenderBefore.d.ts +918 -172
  190. package/build/ts/surfaces/checkout/targets/Checkout::PickupPoints::RenderAfter.d.ts +918 -172
  191. package/build/ts/surfaces/checkout/targets/Checkout::PickupPoints::RenderBefore.d.ts +918 -172
  192. package/build/ts/surfaces/checkout/targets/Checkout::Reductions::RenderAfter.d.ts +918 -172
  193. package/build/ts/surfaces/checkout/targets/Checkout::Reductions::RenderBefore.d.ts +918 -172
  194. package/build/ts/surfaces/checkout/targets/Checkout::ShippingMethodDetails::RenderAfter.d.ts +918 -172
  195. package/build/ts/surfaces/checkout/targets/Checkout::ShippingMethodDetails::RenderExpanded.d.ts +918 -172
  196. package/build/ts/surfaces/checkout/targets/Checkout::ShippingMethods::RenderAfter.d.ts +918 -172
  197. package/build/ts/surfaces/checkout/targets/Checkout::ShippingMethods::RenderBefore.d.ts +918 -172
  198. package/build/ts/surfaces/checkout/targets/Checkout::ThankYou::CartLineDetails::RenderAfter.d.ts +918 -172
  199. package/build/ts/surfaces/checkout/targets/Checkout::ThankYou::CartLines::RenderAfter.d.ts +918 -172
  200. package/build/ts/surfaces/checkout/targets/Checkout::ThankYou::CustomerInformation::RenderAfter.d.ts +918 -172
  201. package/build/ts/surfaces/checkout/targets/Checkout::ThankYou::Dynamic::Render.d.ts +918 -172
  202. package/build/ts/surfaces/checkout/targets/purchase.cart-line-item.line-components.render.d.ts +918 -172
  203. package/build/ts/surfaces/checkout/targets/purchase.checkout.actions.render-before.d.ts +918 -172
  204. package/build/ts/surfaces/checkout/targets/purchase.checkout.block.render.d.ts +918 -172
  205. package/build/ts/surfaces/checkout/targets/purchase.checkout.cart-line-item.render-after.d.ts +918 -172
  206. package/build/ts/surfaces/checkout/targets/purchase.checkout.cart-line-list.render-after.d.ts +918 -172
  207. package/build/ts/surfaces/checkout/targets/purchase.checkout.contact.render-after.d.ts +918 -172
  208. package/build/ts/surfaces/checkout/targets/purchase.checkout.delivery-address.render-after.d.ts +918 -172
  209. package/build/ts/surfaces/checkout/targets/purchase.checkout.delivery-address.render-before.d.ts +918 -172
  210. package/build/ts/surfaces/checkout/targets/purchase.checkout.footer.render-after.d.ts +918 -172
  211. package/build/ts/surfaces/checkout/targets/purchase.checkout.gift-card.render.d.ts +863 -155
  212. package/build/ts/surfaces/checkout/targets/purchase.checkout.header.render-after.d.ts +918 -172
  213. package/build/ts/surfaces/checkout/targets/purchase.checkout.payment-method-list.render-after.d.ts +918 -172
  214. package/build/ts/surfaces/checkout/targets/purchase.checkout.payment-method-list.render-before.d.ts +918 -172
  215. package/build/ts/surfaces/checkout/targets/purchase.checkout.payment-option-item.action-required.render.d.ts +918 -172
  216. package/build/ts/surfaces/checkout/targets/purchase.checkout.payment-option-item.details.render.d.ts +863 -155
  217. package/build/ts/surfaces/checkout/targets/purchase.checkout.payment-option-item.hosted-fields.render-after.d.ts +918 -172
  218. package/build/ts/surfaces/checkout/targets/purchase.checkout.pickup-location-list.render-after.d.ts +918 -172
  219. package/build/ts/surfaces/checkout/targets/purchase.checkout.pickup-location-list.render-before.d.ts +918 -172
  220. package/build/ts/surfaces/checkout/targets/purchase.checkout.pickup-location-option-item.render-after.d.ts +918 -172
  221. package/build/ts/surfaces/checkout/targets/purchase.checkout.pickup-point-list.render-after.d.ts +918 -172
  222. package/build/ts/surfaces/checkout/targets/purchase.checkout.pickup-point-list.render-before.d.ts +918 -172
  223. package/build/ts/surfaces/checkout/targets/purchase.checkout.reductions.render-after.d.ts +918 -172
  224. package/build/ts/surfaces/checkout/targets/purchase.checkout.reductions.render-before.d.ts +918 -172
  225. package/build/ts/surfaces/checkout/targets/purchase.checkout.shipping-option-item.details.render.d.ts +918 -172
  226. package/build/ts/surfaces/checkout/targets/purchase.checkout.shipping-option-item.render-after.d.ts +918 -172
  227. package/build/ts/surfaces/checkout/targets/purchase.checkout.shipping-option-list.render-after.d.ts +918 -172
  228. package/build/ts/surfaces/checkout/targets/purchase.checkout.shipping-option-list.render-before.d.ts +918 -172
  229. package/build/ts/surfaces/checkout/targets/purchase.thank-you.block.render.d.ts +918 -172
  230. package/build/ts/surfaces/checkout/targets/purchase.thank-you.cart-line-item.render-after.d.ts +918 -172
  231. package/build/ts/surfaces/checkout/targets/purchase.thank-you.cart-line-list.render-after.d.ts +918 -172
  232. package/build/ts/surfaces/checkout/targets/purchase.thank-you.customer-information.render-after.d.ts +918 -172
  233. package/build/ts/surfaces/checkout/targets/purchase.thank-you.footer.render-after.d.ts +918 -172
  234. package/build/ts/surfaces/checkout/targets/purchase.thank-you.header.render-after.d.ts +918 -172
  235. package/build/ts/surfaces/customer-account/components/Abbreviation.d.ts +20 -8
  236. package/build/ts/surfaces/customer-account/components/Avatar/Avatar.doc.d.ts +4 -0
  237. package/build/ts/surfaces/customer-account/components/Avatar/Avatar.doc.d.ts.map +1 -0
  238. package/build/ts/surfaces/customer-account/components/Avatar.d.ts +66 -0
  239. package/build/ts/surfaces/customer-account/components/Banner.d.ts +52 -13
  240. package/build/ts/surfaces/customer-account/components/Box.d.ts +20 -9
  241. package/build/ts/surfaces/customer-account/components/Button.d.ts +39 -13
  242. package/build/ts/surfaces/customer-account/components/Checkbox.d.ts +54 -0
  243. package/build/ts/surfaces/customer-account/components/ClipboardItem.d.ts +36 -9
  244. package/build/ts/surfaces/customer-account/components/DropZone.d.ts +36 -9
  245. package/build/ts/surfaces/customer-account/components/EmailField.d.ts +69 -0
  246. package/build/ts/surfaces/customer-account/components/Form.d.ts +40 -12
  247. package/build/ts/surfaces/customer-account/components/Heading.d.ts +20 -8
  248. package/build/ts/surfaces/customer-account/components/Icon.d.ts +22 -9
  249. package/build/ts/surfaces/customer-account/components/Image.d.ts +13 -7
  250. package/build/ts/surfaces/customer-account/components/Link.d.ts +39 -13
  251. package/build/ts/surfaces/customer-account/components/ListItem.d.ts +22 -10
  252. package/build/ts/surfaces/customer-account/components/Map.d.ts +75 -0
  253. package/build/ts/surfaces/customer-account/components/MapMarker.d.ts +73 -0
  254. package/build/ts/surfaces/customer-account/components/Modal.d.ts +87 -0
  255. package/build/ts/surfaces/customer-account/components/OrderedList.d.ts +20 -8
  256. package/build/ts/surfaces/customer-account/components/Paragraph.d.ts +20 -8
  257. package/build/ts/surfaces/customer-account/components/PaymentIcon.d.ts +14 -7
  258. package/build/ts/surfaces/customer-account/components/PhoneField.d.ts +84 -0
  259. package/build/ts/surfaces/customer-account/components/Progress.d.ts +14 -4
  260. package/build/ts/surfaces/customer-account/components/QRCode.d.ts +32 -8
  261. package/build/ts/surfaces/customer-account/components/Section.d.ts +20 -8
  262. package/build/ts/surfaces/customer-account/components/Spinner.d.ts +14 -4
  263. package/build/ts/surfaces/customer-account/components/Stack.d.ts +20 -9
  264. package/build/ts/surfaces/customer-account/components/StandardComponents.d.ts +1 -1
  265. package/build/ts/surfaces/customer-account/components/StandardComponents.d.ts.map +1 -1
  266. package/build/ts/surfaces/customer-account/components/Text.d.ts +20 -8
  267. package/build/ts/surfaces/customer-account/components/TextArea.d.ts +69 -0
  268. package/build/ts/surfaces/customer-account/components/TextField.d.ts +72 -21
  269. package/build/ts/surfaces/customer-account/components/Time.d.ts +20 -8
  270. package/build/ts/surfaces/customer-account/components/UnorderedList.d.ts +20 -8
  271. package/build/ts/surfaces/customer-account/components/components-shared.d.ts +486 -2
  272. package/build/ts/surfaces/customer-account/components/components.d.ts +1000 -166
  273. package/build/ts/surfaces/customer-account/targets/customer-account.footer.render-after.d.ts +979 -173
  274. package/build/ts/surfaces/customer-account/targets/customer-account.order-index.block.render.d.ts +979 -173
  275. package/build/ts/surfaces/customer-account/targets/customer-account.order-status.block.render.d.ts +979 -173
  276. package/build/ts/surfaces/customer-account/targets/customer-account.order-status.cart-line-item.render-after.d.ts +979 -173
  277. package/build/ts/surfaces/customer-account/targets/customer-account.order-status.cart-line-list.render-after.d.ts +979 -173
  278. package/build/ts/surfaces/customer-account/targets/customer-account.order-status.customer-information.render-after.d.ts +979 -173
  279. package/build/ts/surfaces/customer-account/targets/customer-account.order-status.fulfillment-details.render-after.d.ts +979 -173
  280. package/build/ts/surfaces/customer-account/targets/customer-account.order-status.payment-details.render-after.d.ts +979 -173
  281. package/build/ts/surfaces/customer-account/targets/customer-account.order-status.return-details.render-after.d.ts +979 -173
  282. package/build/ts/surfaces/customer-account/targets/customer-account.order-status.unfulfilled-items.render-after.d.ts +979 -173
  283. package/build/ts/surfaces/customer-account/targets/customer-account.order.action.menu-item.render.d.ts +979 -173
  284. package/build/ts/surfaces/customer-account/targets/customer-account.order.action.render.d.ts +979 -173
  285. package/build/ts/surfaces/customer-account/targets/customer-account.order.page.render.d.ts +979 -173
  286. package/build/ts/surfaces/customer-account/targets/customer-account.page.render.d.ts +979 -173
  287. package/build/ts/surfaces/customer-account/targets/customer-account.profile.addresses.render-after.d.ts +979 -173
  288. package/build/ts/surfaces/customer-account/targets/customer-account.profile.block.render.d.ts +979 -173
  289. package/build/ts/surfaces/customer-account/targets/customer-account.profile.company-details.render-after.d.ts +979 -173
  290. package/build/ts/surfaces/customer-account/targets/customer-account.profile.company-location-addresses.render-after.d.ts +979 -173
  291. package/build/ts/surfaces/customer-account/targets/customer-account.profile.company-location-payment.render-after.d.ts +979 -173
  292. package/build/ts/surfaces/customer-account/targets/customer-account.profile.company-location-staff.render-after.d.ts +979 -173
  293. package/build/ts/surfaces/customer-account/targets/customer-account.profile.payment.render-after.d.ts +979 -173
  294. package/build/tsconfig.tsbuildinfo +1 -1
  295. package/package.json +1 -1
  296. package/src/docs/shared/components/Map.ts +12 -0
  297. package/src/docs/shared/components/MapMarker.ts +12 -0
  298. package/src/docs/shared/components/Modal.ts +12 -0
  299. package/src/docs/shared/components/Option.ts +12 -0
  300. package/src/docs/shared/components/PhoneField.ts +11 -0
  301. package/src/docs/shared/components/ProductThumbnail.ts +11 -0
  302. package/src/surfaces/admin/components/AdminAction.d.ts +1 -1
  303. package/src/surfaces/admin/components/AdminBlock.d.ts +1 -1
  304. package/src/surfaces/admin/components/AdminPrintAction/examples/default.tsx +1 -1
  305. package/src/surfaces/admin/components/AdminPrintAction.d.ts +1 -1
  306. package/src/surfaces/admin/components/Badge.d.ts +1 -1
  307. package/src/surfaces/admin/components/Banner.d.ts +1 -1
  308. package/src/surfaces/admin/components/Box.d.ts +1 -1
  309. package/src/surfaces/admin/components/Button.d.ts +1 -1
  310. package/src/surfaces/admin/components/Checkbox.d.ts +1 -1
  311. package/src/surfaces/admin/components/Choice.d.ts +1 -1
  312. package/src/surfaces/admin/components/ChoiceList.d.ts +1 -1
  313. package/src/surfaces/admin/components/Clickable.d.ts +1 -1
  314. package/src/surfaces/admin/components/DatePicker.d.ts +1 -1
  315. package/src/surfaces/admin/components/Divider.d.ts +1 -1
  316. package/src/surfaces/admin/components/EmailField.d.ts +1 -1
  317. package/src/surfaces/admin/components/Form.d.ts +1 -1
  318. package/src/surfaces/admin/components/Grid.d.ts +1 -1
  319. package/src/surfaces/admin/components/GridItem.d.ts +1 -1
  320. package/src/surfaces/admin/components/Heading.d.ts +1 -1
  321. package/src/surfaces/admin/components/Icon.d.ts +1 -1
  322. package/src/surfaces/admin/components/Image.d.ts +1 -1
  323. package/src/surfaces/admin/components/Link.d.ts +1 -1
  324. package/src/surfaces/admin/components/ListItem.d.ts +1 -1
  325. package/src/surfaces/admin/components/MoneyField.d.ts +1 -1
  326. package/src/surfaces/admin/components/NumberField.d.ts +1 -1
  327. package/src/surfaces/admin/components/Option.d.ts +1 -1
  328. package/src/surfaces/admin/components/OptionGroup.d.ts +1 -1
  329. package/src/surfaces/admin/components/OrderedList.d.ts +1 -1
  330. package/src/surfaces/admin/components/Page.d.ts +1 -1
  331. package/src/surfaces/admin/components/Paragraph.d.ts +1 -1
  332. package/src/surfaces/admin/components/PasswordField.d.ts +1 -1
  333. package/src/surfaces/admin/components/QueryContainer.d.ts +1 -1
  334. package/src/surfaces/admin/components/SearchField.d.ts +1 -1
  335. package/src/surfaces/admin/components/Section.d.ts +1 -1
  336. package/src/surfaces/admin/components/Select.d.ts +1 -1
  337. package/src/surfaces/admin/components/Spinner.d.ts +1 -1
  338. package/src/surfaces/admin/components/Stack.d.ts +1 -1
  339. package/src/surfaces/admin/components/StandardComponents.ts +1 -0
  340. package/src/surfaces/admin/components/Switch.d.ts +1 -1
  341. package/src/surfaces/admin/components/Table.d.ts +1 -1
  342. package/src/surfaces/admin/components/TableBody.d.ts +1 -1
  343. package/src/surfaces/admin/components/TableCell.d.ts +1 -1
  344. package/src/surfaces/admin/components/TableHeader.d.ts +1 -1
  345. package/src/surfaces/admin/components/TableHeaderRow.d.ts +1 -1
  346. package/src/surfaces/admin/components/TableRow.d.ts +1 -1
  347. package/src/surfaces/admin/components/Text.d.ts +1 -1
  348. package/src/surfaces/admin/components/TextArea.d.ts +1 -1
  349. package/src/surfaces/admin/components/TextField.d.ts +1 -1
  350. package/src/surfaces/admin/components/Thumbnail.d.ts +133 -0
  351. package/src/surfaces/admin/components/URLField.d.ts +1 -1
  352. package/src/surfaces/admin/components/UnorderedList.d.ts +1 -1
  353. package/src/surfaces/admin/components/patterns/examples/details.html +228 -0
  354. package/src/surfaces/admin/components/patterns/examples/details.jsx +262 -0
  355. package/src/surfaces/admin/components/patterns/examples/homepage.html +587 -0
  356. package/src/surfaces/admin/components/patterns/examples/homepage.jsx +691 -0
  357. package/src/surfaces/admin/components/patterns/examples/index.html +143 -0
  358. package/src/surfaces/admin/components/patterns/examples/index.jsx +162 -0
  359. package/src/surfaces/admin/components/patterns/examples/settings.html +241 -0
  360. package/src/surfaces/admin/components/patterns/examples/settings.jsx +349 -0
  361. package/src/surfaces/admin/components/patterns/index.ab.doc.ts +82 -0
  362. package/src/surfaces/admin/components/shared.d.ts +25 -1
  363. package/src/surfaces/admin/components.d.ts +672 -202
  364. package/src/surfaces/checkout/components/Abbreviation.d.ts +20 -8
  365. package/src/surfaces/checkout/components/Banner.d.ts +52 -13
  366. package/src/surfaces/checkout/components/Box.d.ts +20 -9
  367. package/src/surfaces/checkout/components/Button.d.ts +39 -13
  368. package/src/surfaces/checkout/components/Checkbox/examples/basic-checkbox.example.html +1 -0
  369. package/src/surfaces/checkout/components/Checkbox.d.ts +54 -0
  370. package/src/surfaces/checkout/components/ClipboardItem.d.ts +36 -9
  371. package/src/surfaces/checkout/components/DropZone.d.ts +36 -9
  372. package/src/surfaces/checkout/components/EmailField/examples/basic-emailfield.example.html +4 -0
  373. package/src/surfaces/checkout/components/EmailField.d.ts +69 -0
  374. package/src/surfaces/checkout/components/Form.d.ts +40 -12
  375. package/src/surfaces/checkout/components/Heading.d.ts +20 -8
  376. package/src/surfaces/checkout/components/Icon.d.ts +22 -9
  377. package/src/surfaces/checkout/components/Image.d.ts +13 -7
  378. package/src/surfaces/checkout/components/Link.d.ts +39 -13
  379. package/src/surfaces/checkout/components/ListItem.d.ts +22 -10
  380. package/src/surfaces/checkout/components/Map/examples/basic-map.example.html +3 -0
  381. package/src/surfaces/checkout/components/Map.d.ts +75 -0
  382. package/src/surfaces/checkout/components/MapMarker.d.ts +73 -0
  383. package/src/surfaces/checkout/components/Modal/examples/basic-modal.example.html +20 -0
  384. package/src/surfaces/checkout/components/Modal.d.ts +87 -0
  385. package/src/surfaces/checkout/components/OrderedList.d.ts +20 -8
  386. package/src/surfaces/checkout/components/Paragraph.d.ts +20 -8
  387. package/src/surfaces/checkout/components/PaymentIcon.d.ts +14 -7
  388. package/src/surfaces/checkout/components/PhoneField/examples/basic-phonefield.example.html +2 -0
  389. package/src/surfaces/checkout/components/PhoneField.d.ts +84 -0
  390. package/src/surfaces/checkout/components/ProductThumbnail/examples/basic-productthumbnail.example.html +4 -0
  391. package/src/surfaces/checkout/components/Progress.d.ts +14 -4
  392. package/src/surfaces/checkout/components/QRCode.d.ts +32 -8
  393. package/src/surfaces/checkout/components/Section.d.ts +20 -8
  394. package/src/surfaces/checkout/components/Spinner.d.ts +14 -4
  395. package/src/surfaces/checkout/components/Stack.d.ts +20 -9
  396. package/src/surfaces/checkout/components/Text.d.ts +20 -8
  397. package/src/surfaces/checkout/components/TextArea/examples/basic-textarea.example.html +5 -0
  398. package/src/surfaces/checkout/components/TextArea.d.ts +69 -0
  399. package/src/surfaces/checkout/components/TextField.d.ts +72 -21
  400. package/src/surfaces/checkout/components/Time.d.ts +20 -8
  401. package/src/surfaces/checkout/components/UnorderedList.d.ts +20 -8
  402. package/src/surfaces/checkout/components/components-shared.d.ts +486 -2
  403. package/src/surfaces/checkout/components/components.d.ts +1000 -166
  404. package/src/surfaces/checkout/shared.ts +8 -0
  405. package/src/surfaces/customer-account/components/Avatar/examples/basic-Avatar-js.example.ts +9 -0
  406. package/src/surfaces/customer-account/components/Avatar/examples/basic-Avatar-preact.example.tsx +9 -0
  407. package/src/surfaces/customer-account/components/Avatar.d.ts +66 -0
  408. package/src/surfaces/customer-account/components/CustomerAccountAction/examples/basic-CustomerAccountAction-js.example.ts +1 -1
  409. package/src/surfaces/customer-account/components/CustomerAccountAction/examples/basic-CustomerAccountAction-preact.example.tsx +1 -1
  410. package/src/surfaces/customer-account/components/ImageGroup/examples/basic-ImageGroup-js.example.ts +1 -1
  411. package/src/surfaces/customer-account/components/ImageGroup/examples/basic-ImageGroup-preact.example.tsx +1 -1
  412. package/src/surfaces/customer-account/components/Page/examples/basic-Page-js.example.ts +1 -1
  413. package/src/surfaces/customer-account/components/Page/examples/basic-Page-preact.example.tsx +1 -1
  414. package/src/surfaces/customer-account/components/StandardComponents.ts +1 -0
  415. package/src/surfaces/customer-account/components.d.ts +67 -0
@@ -0,0 +1,691 @@
1
+ // ===
2
+ // Home page pattern
3
+ // ===
4
+
5
+ import React, { useState } from "react";
6
+
7
+ export default function HomePage() {
8
+ const [visible, setVisible] = useState({
9
+ banner: true,
10
+ setupGuide: true,
11
+ calloutCard: true,
12
+ featuredApps: true,
13
+ });
14
+ const [expanded, setExpanded] = useState({
15
+ setupGuide: true,
16
+ step1: false,
17
+ step2: false,
18
+ step3: false,
19
+ });
20
+ const [progress, setProgress] = useState(0);
21
+ return (
22
+ <s-page inlineSize="small">
23
+ {/* === */}
24
+ {/* Title Bar */}
25
+ {/* The ui-title-bar on the homepage should not have a title attribute */}
26
+ {/* Note: ui-title-bar requires AppBridge to render correctly */}
27
+ {/* === */}
28
+ <ui-title-bar>
29
+ <button variant="primary">Create puzzle</button>
30
+ <section>
31
+ <button>Browse templates</button>
32
+ <button>Import image</button>
33
+ </section>
34
+ </ui-title-bar>
35
+
36
+ {/* === */}
37
+ {/* Banner */}
38
+ {/* Use banners sparingly. Only one banner should be visible at a time. */}
39
+ {/* If dismissed, use local storage or a database entry to avoid showing this section again to the same user. */}
40
+ {/* === */}
41
+ {visible.banner && (
42
+ <s-banner
43
+ dismissible
44
+ onDismiss={() => setVisible({ ...visible, banner: false })}
45
+ >
46
+ 3 of 5 puzzles created.{" "}
47
+ <s-link href="#">Upgrade to Puzzlify Pro</s-link> to create unlimited
48
+ puzzles.
49
+ </s-banner>
50
+ )}
51
+
52
+ {/* === */}
53
+ {/* Setup Guide */}
54
+ {/* Keep instructions brief and direct. Only ask merchants for required information. */}
55
+ {/* If dismissed, use local storage or a database entry to avoid showing this section again to the same user. */}
56
+ {/* === */}
57
+ {visible.setupGuide && (
58
+ <s-section>
59
+ <s-grid gap="base">
60
+ {/* Header */}
61
+ <s-grid gap="small-200">
62
+ <s-grid
63
+ gridTemplateColumns="1fr auto auto"
64
+ gap="small-300"
65
+ alignItems="center"
66
+ >
67
+ <s-heading>Setup Guide</s-heading>
68
+ <s-button
69
+ accessibilityLabel="Dismiss Guide"
70
+ onClick={() => setVisible({ ...visible, setupGuide: false })}
71
+ variant="tertiary"
72
+ tone="neutral"
73
+ icon="x"
74
+ ></s-button>
75
+ <s-button
76
+ accessibilityLabel="Toggle setup guide"
77
+ onClick={(e) =>
78
+ setExpanded({
79
+ ...expanded,
80
+ setupGuide: !expanded.setupGuide,
81
+ })
82
+ }
83
+ variant="tertiary"
84
+ tone="neutral"
85
+ icon={expanded.setupGuide ? "chevron-up" : "chevron-down"}
86
+ ></s-button>
87
+ </s-grid>
88
+ <s-paragraph>
89
+ Use this personalized guide to get your store ready for sales.
90
+ </s-paragraph>
91
+ <s-stack direction="inline" gap="small-200" alignItems="center">
92
+ <s-paragraph tone="subdued">
93
+ {progress} out of 3 steps completed
94
+ </s-paragraph>
95
+ </s-stack>
96
+ </s-grid>
97
+ {/* Steps Container */}
98
+ <s-box
99
+ borderRadius="base"
100
+ border="base"
101
+ background="base"
102
+ display={expanded.setupGuide ? "auto" : "none"}
103
+ >
104
+ {/* Step 1 */}
105
+ <s-box>
106
+ <s-box padding="small">
107
+ <s-grid gridTemplateColumns="1fr auto" gap="base">
108
+ <s-checkbox
109
+ label="Upload an image for your puzzle"
110
+ onInput={(e) =>
111
+ setProgress((prev) =>
112
+ e.target.checked ? prev + 1 : prev - 1,
113
+ )
114
+ }
115
+ ></s-checkbox>
116
+ <s-button
117
+ onClick={(e) => {
118
+ console.log("Toggle step 1 details");
119
+ setExpanded({ ...expanded, step1: !expanded.step1 });
120
+ }
121
+ }
122
+ accessibilityLabel="Toggle step 1 details"
123
+ variant="tertiary"
124
+ icon={expanded.step1 ? "chevron-up" : "chevron-down"}
125
+ ></s-button>
126
+ </s-grid>
127
+ </s-box>
128
+ <s-box
129
+ padding="small"
130
+ paddingBlockStart="none"
131
+ display={expanded.step1 ? "auto" : "none"}
132
+ >
133
+ <s-box
134
+ padding="base"
135
+ background="subdued"
136
+ borderRadius="base"
137
+ >
138
+ <s-grid gridTemplateColumns="1fr auto" gap="base" alignItems="center">
139
+ <s-grid gap="small-200">
140
+ <s-paragraph>
141
+ Start by uploading a high-quality image that will be
142
+ used to create your puzzle. For best results, use
143
+ images that are at least 1200x1200 pixels.
144
+ </s-paragraph>
145
+ <s-stack direction="inline" gap="small-200">
146
+ <s-button variant="primary">
147
+ Upload image
148
+ </s-button>
149
+ <s-button variant="tertiary" tone="neutral">
150
+ Image requirements
151
+ </s-button>
152
+ </s-stack>
153
+ </s-grid>
154
+ <s-box maxBlockSize="80px" maxInlineSize="80px">
155
+ <s-image
156
+ src="https://cdn.shopify.com/s/assets/admin/checkout/settings-customizecart-705f57c725ac05be5a34ec20c05b94298cb8afd10aac7bd9c7ad02030f48cfa0.svg"
157
+ alt="Customize checkout illustration"
158
+ ></s-image>
159
+ </s-box>
160
+ </s-grid>
161
+ </s-box>
162
+ </s-box>
163
+ </s-box>
164
+ {/* Step 2 */}
165
+ <s-divider></s-divider>
166
+ <s-box>
167
+ <s-box padding="small">
168
+ <s-grid gridTemplateColumns="1fr auto" gap="base">
169
+ <s-checkbox
170
+ label="Choose a puzzle template"
171
+ onInput={(e) =>
172
+ setProgress((prev) =>
173
+ e.target.checked ? prev + 1 : prev - 1,
174
+ )
175
+ }
176
+ ></s-checkbox>
177
+ <s-button
178
+ onClick={(e) =>
179
+ setExpanded({ ...expanded, step2: !expanded.step2 })
180
+ }
181
+ accessibilityLabel="Toggle step 2 details"
182
+ variant="tertiary"
183
+ icon={expanded.step2 ? "chevron-up" : "chevron-down"}
184
+ ></s-button>
185
+ </s-grid>
186
+ </s-box>
187
+ <s-box
188
+ padding="small"
189
+ paddingBlockStart="none"
190
+ display={expanded.step2 ? "auto" : "none"}
191
+ >
192
+ <s-box
193
+ padding="base"
194
+ background="subdued"
195
+ borderRadius="base"
196
+ >
197
+ <s-grid gridTemplateColumns="1fr auto" gap="base" alignItems="center">
198
+ <s-grid gap="small-200">
199
+ <s-paragraph>
200
+ Select a template for your puzzle - choose between
201
+ 9-piece (beginner), 16-piece (intermediate), or
202
+ 25-piece (advanced) layouts.
203
+ </s-paragraph>
204
+ <s-stack direction="inline" gap="small-200">
205
+ <s-button variant="primary">Choose template</s-button>
206
+ <s-button variant="tertiary" tone="neutral">
207
+ See all templates
208
+ </s-button>
209
+ </s-stack>
210
+ </s-grid>
211
+ <s-box maxBlockSize="80px" maxInlineSize="80px">
212
+ <s-image
213
+ src="https://cdn.shopify.com/s/assets/admin/checkout/settings-customizecart-705f57c725ac05be5a34ec20c05b94298cb8afd10aac7bd9c7ad02030f48cfa0.svg"
214
+ alt="Customize checkout illustration"
215
+ ></s-image>
216
+ </s-box>
217
+ </s-grid>
218
+ </s-box>
219
+ </s-box>
220
+ </s-box>
221
+ {/* Step 3 */}
222
+ <s-divider></s-divider>
223
+ <s-box>
224
+ <s-box padding="small">
225
+ <s-grid gridTemplateColumns="1fr auto" gap="base">
226
+ <s-checkbox
227
+ label="Customize puzzle piece shapes"
228
+ onInput={(e) =>
229
+ setProgress((prev) =>
230
+ e.target.checked ? prev + 1 : prev - 1,
231
+ )
232
+ }
233
+ ></s-checkbox>
234
+ <s-button
235
+ onClick={(e) =>
236
+ setExpanded({ ...expanded, step3: !expanded.step3 })
237
+ }
238
+ accessibilityLabel="Toggle step 3 details"
239
+ variant="tertiary"
240
+ icon={expanded.step3 ? "chevron-up" : "chevron-down"}
241
+ ></s-button>
242
+ </s-grid>
243
+ </s-box>
244
+ <s-box
245
+ padding="small"
246
+ paddingBlockStart="none"
247
+ display={expanded.step3 ? "auto" : "none"}
248
+ >
249
+ <s-box
250
+ padding="base"
251
+ background="subdued"
252
+ borderRadius="base"
253
+ >
254
+ <s-grid gridTemplateColumns="1fr auto" gap="base" alignItems="center">
255
+ <s-grid gap="small-200">
256
+ <s-paragraph>
257
+ Make your puzzle unique by customizing the shapes of
258
+ individual pieces. Choose from classic, curved, or
259
+ themed piece styles.
260
+ </s-paragraph>
261
+ <s-stack direction="inline" gap="small-200">
262
+ <s-button variant="primary">
263
+ Customize pieces
264
+ </s-button>
265
+ <s-button variant="tertiary" tone="neutral">
266
+ Learn about piece styles
267
+ </s-button>
268
+ </s-stack>
269
+ </s-grid>
270
+ <s-box maxBlockSize="80px" maxInlineSize="80px">
271
+ <s-image
272
+ src="https://cdn.shopify.com/s/assets/admin/checkout/settings-customizecart-705f57c725ac05be5a34ec20c05b94298cb8afd10aac7bd9c7ad02030f48cfa0.svg"
273
+ alt="Customize checkout illustration"
274
+ ></s-image>
275
+ </s-box>
276
+ </s-grid>
277
+ </s-box>
278
+ </s-box>
279
+ </s-box>
280
+ {/* Add additional steps here... */}
281
+ </s-box>
282
+ </s-grid>
283
+ </s-section>
284
+ )}
285
+
286
+ {/* === */}
287
+ {/* Metrics cards */}
288
+ {/* Your app homepage should provide merchants with quick statistics or status updates that help them understand how the app is performing for them. */}
289
+ {/* === */}
290
+ <s-section padding="none">
291
+ <s-box padding="small">
292
+ <s-grid
293
+ gridTemplateColumns="@container (inline-size <= 400px) 1fr, 1fr auto 1fr auto 1fr"
294
+ gap="small"
295
+ >
296
+ <s-clickable
297
+ href="#"
298
+ paddingBlock="small-400"
299
+ paddingInline="small-100"
300
+ borderRadius="base"
301
+ >
302
+ <s-grid gap="small-300">
303
+ <s-heading>Total Designs</s-heading>
304
+ <s-stack direction="inline" gap="small-200">
305
+ <s-text>156</s-text>
306
+ <s-badge tone="success" icon="arrow-up">
307
+ 12%
308
+ </s-badge>
309
+ </s-stack>
310
+ </s-grid>
311
+ </s-clickable>
312
+ <s-divider direction="block"></s-divider>
313
+ <s-clickable
314
+ href="#"
315
+ paddingBlock="small-400"
316
+ paddingInline="small-100"
317
+ borderRadius="base"
318
+ >
319
+ <s-grid gap="small-300">
320
+ <s-heading>Units Sold</s-heading>
321
+ <s-stack direction="inline" gap="small-200">
322
+ <s-text>2,847</s-text>
323
+ <s-badge tone="warning">0%</s-badge>
324
+ </s-stack>
325
+ </s-grid>
326
+ </s-clickable>
327
+ <s-divider direction="block"></s-divider>
328
+ <s-clickable
329
+ href="#"
330
+ paddingBlock="small-400"
331
+ paddingInline="small-100"
332
+ borderRadius="base"
333
+ >
334
+ <s-grid gap="small-300">
335
+ <s-heading>Return Rate</s-heading>
336
+ <s-stack direction="inline" gap="small-200">
337
+ <s-text>3.2%</s-text>
338
+ <s-badge tone="critical" icon="arrow-down">
339
+ 0.8%
340
+ </s-badge>
341
+ </s-stack>
342
+ </s-grid>
343
+ </s-clickable>
344
+ </s-grid>
345
+ </s-box>
346
+ </s-section>
347
+
348
+ {/* === */}
349
+ {/* Callout Card */}
350
+ {/* If dismissed, use local storage or a database entry to avoid showing this section again to the same user. */}
351
+ {/* === */}
352
+ {visible.calloutCard && (
353
+ <s-section>
354
+ <s-grid
355
+ gridTemplateColumns="1fr auto"
356
+ gap="small-400"
357
+ alignItems="start"
358
+ >
359
+ <s-grid
360
+ gridTemplateColumns="@container (inline-size <= 480px) 1fr, auto auto"
361
+ gap="base"
362
+ alignItems="center"
363
+ >
364
+ <s-grid gap="small-200">
365
+ <s-heading>Ready to create your custom puzzle?</s-heading>
366
+ <s-paragraph>
367
+ Start by uploading an image to your gallery or choose from one
368
+ of our templates.
369
+ </s-paragraph>
370
+ <s-stack direction="inline" gap="small-200" wrap="nowrap">
371
+ <s-button onClick={() => console.log("Handle upload here")}>
372
+ Upload image
373
+ </s-button>
374
+ <s-button tone="neutral" variant="tertiary">
375
+ Browse templates
376
+ </s-button>
377
+ </s-stack>
378
+ </s-grid>
379
+ <s-stack alignItems="center">
380
+ <s-box
381
+ maxInlineSize="200px"
382
+ borderRadius="base"
383
+ overflow="hidden"
384
+ >
385
+ <s-image
386
+ src="https://cdn.shopify.com/static/images/polaris/patterns/callout.png"
387
+ alt="Customize checkout illustration"
388
+ aspectRatio="1/0.5"
389
+ ></s-image>
390
+ </s-box>
391
+ </s-stack>
392
+ </s-grid>
393
+ <s-button
394
+ onClick={() => setVisible({ ...visible, calloutCard: false })}
395
+ icon="x"
396
+ tone="neutral"
397
+ variant="tertiary"
398
+ accessibilityLabel="Dismiss card"
399
+ ></s-button>
400
+ </s-grid>
401
+ </s-section>
402
+ )}
403
+
404
+ {/* === */}
405
+ {/* Puzzle templates */}
406
+ {/* === */}
407
+ <s-section>
408
+ <s-heading>Puzzle Templates</s-heading>
409
+ <s-grid
410
+ gridTemplateColumns="repeat(auto-fit, minmax(155px, 1fr))"
411
+ gap="base"
412
+ >
413
+ {/* Featured template 1 */}
414
+ <s-box border="base" borderRadius="base" overflow="hidden">
415
+ <s-clickable
416
+ href="/puzzles/4-piece"
417
+ accessibilityLabel="4-pieces puzzle template"
418
+ >
419
+ <s-image
420
+ aspectRatio="1/1"
421
+ objectFit="cover"
422
+ alt="Illustration of characters with a 4-piece puzzle"
423
+ src="https://cdn.shopify.com/static/images/polaris/patterns/4-pieces.png"
424
+ ></s-image>
425
+ </s-clickable>
426
+ <s-divider></s-divider>
427
+ <s-grid
428
+ gridTemplateColumns="1fr auto"
429
+ background="base"
430
+ padding="small"
431
+ gap="small"
432
+ alignItems="center"
433
+ >
434
+ <s-heading>4-Pieces</s-heading>
435
+ <s-button
436
+ href="/puzzles/4-piece"
437
+ accessibilityLabel="View 4-pieces puzzle template"
438
+ >
439
+ View
440
+ </s-button>
441
+ </s-grid>
442
+ </s-box>
443
+ {/* Featured template 2 */}
444
+ <s-box
445
+ border="base"
446
+ borderRadius="base"
447
+ background="transparent"
448
+ overflow="hidden"
449
+ >
450
+ <s-clickable
451
+ href="/puzzles/9-piece"
452
+ accessibilityLabel="9-pieces puzzle template"
453
+ >
454
+ <s-image
455
+ aspectRatio="1/1"
456
+ objectFit="cover"
457
+ src="https://cdn.shopify.com/static/images/polaris/patterns/9-pieces.png"
458
+ ></s-image>
459
+ </s-clickable>
460
+ <s-divider></s-divider>
461
+ <s-grid
462
+ gridTemplateColumns="1fr auto"
463
+ background="base"
464
+ padding="small"
465
+ gap="small"
466
+ alignItems="center"
467
+ >
468
+ <s-heading>9-Pieces</s-heading>
469
+ <s-button
470
+ href="/puzzles/9-piece"
471
+ accessibilityLabel="View 9-pieces puzzle template"
472
+ >
473
+ View
474
+ </s-button>
475
+ </s-grid>
476
+ </s-box>
477
+ {/* Featured template 3 */}
478
+ <s-box
479
+ border="base"
480
+ borderRadius="base"
481
+ background="transparent"
482
+ overflow="hidden"
483
+ >
484
+ <s-clickable
485
+ href="/puzzles/16-piece"
486
+ accessibilityLabel="16-pieces puzzle template"
487
+ >
488
+ <s-image
489
+ aspectRatio="1/1"
490
+ objectFit="cover"
491
+ src="https://cdn.shopify.com/static/images/polaris/patterns/16-pieces.png"
492
+ ></s-image>
493
+ </s-clickable>
494
+ <s-divider></s-divider>
495
+ <s-grid
496
+ gridTemplateColumns="1fr auto"
497
+ background="base"
498
+ padding="small"
499
+ gap="small"
500
+ alignItems="center"
501
+ >
502
+ <s-heading>16-Pieces</s-heading>
503
+ <s-button
504
+ href="/puzzles/16-piece"
505
+ accessibilityLabel="View 16-pieces puzzle template"
506
+ >
507
+ View
508
+ </s-button>
509
+ </s-grid>
510
+ </s-box>
511
+ </s-grid>
512
+ <s-stack
513
+ direction="inline"
514
+ alignItems="center"
515
+ justifyContent="center"
516
+ paddingBlockStart="base"
517
+ >
518
+ <s-link href="/puzzles">See all puzzle templates</s-link>
519
+ </s-stack>
520
+ </s-section>
521
+
522
+ {/* === */}
523
+ {/* News */}
524
+ {/* === */}
525
+ <s-section>
526
+ <s-heading>News</s-heading>
527
+ <s-grid
528
+ gridTemplateColumns="repeat(auto-fit, minmax(240px, 1fr))"
529
+ gap="base"
530
+ >
531
+ {/* News item 1 */}
532
+ <s-grid
533
+ background="base"
534
+ border="base"
535
+ borderRadius="base"
536
+ padding="base"
537
+ gap="small-400"
538
+ >
539
+ <s-text>Jan 21, 2025</s-text>
540
+ <s-link href="/news/new-shapes-and-themes">
541
+ <s-heading>New puzzle shapes and themes added</s-heading>
542
+ </s-link>
543
+ <s-paragraph>
544
+ We've added 5 new puzzle piece shapes and 3 seasonal themes to
545
+ help you create more engaging and unique puzzles for your
546
+ customers.
547
+ </s-paragraph>
548
+ </s-grid>
549
+ {/* News item 2 */}
550
+ <s-grid
551
+ background="base"
552
+ border="base"
553
+ borderRadius="base"
554
+ padding="base"
555
+ gap="small-400"
556
+ >
557
+ <s-text>Nov 6, 2024</s-text>
558
+ <s-link href="/news/puzzle-difficulty-customization">
559
+ <s-heading>Puzzle difficulty customization features</s-heading>
560
+ </s-link>
561
+ <s-paragraph>
562
+ Now you can fine-tune the difficulty of your puzzles with new
563
+ rotation controls, edge highlighting options, and piece
564
+ recognition settings.
565
+ </s-paragraph>
566
+ </s-grid>
567
+ </s-grid>
568
+ <s-stack
569
+ direction="inline"
570
+ alignItems="center"
571
+ justifyContent="center"
572
+ paddingBlockStart="base"
573
+ >
574
+ <s-link href="/news">See all news items</s-link>
575
+ </s-stack>
576
+ </s-section>
577
+
578
+ {/* === */}
579
+ {/* Featured apps */}
580
+ {/* If dismissed, use local storage or a database entry to avoid showing this section again to the same user. */}
581
+ {/* === */}
582
+ {visible.featuredApps && (
583
+ <s-section>
584
+ <s-grid
585
+ gridTemplateColumns="1fr auto"
586
+ alignItems="center"
587
+ paddingBlockEnd="small-400"
588
+ >
589
+ <s-heading>Featured apps</s-heading>
590
+ <s-button
591
+ onClick={() => setVisible({ ...visible, featuredApps: false })}
592
+ icon="x"
593
+ tone="neutral"
594
+ variant="tertiary"
595
+ accessibilityLabel="Dismiss featured apps section"
596
+ ></s-button>
597
+ </s-grid>
598
+ <s-grid
599
+ gridTemplateColumns="repeat(auto-fit, minmax(240px, 1fr))"
600
+ gap="base"
601
+ >
602
+ {/* Featured app 1 */}
603
+ <s-clickable
604
+ href="https://apps.shopify.com/flow"
605
+ border="base"
606
+ borderRadius="base"
607
+ padding="base"
608
+ inlineSize="100%"
609
+ accessibilityLabel="Download Shopify Flow"
610
+ >
611
+ <s-grid
612
+ gridTemplateColumns="auto 1fr auto"
613
+ alignItems="stretch"
614
+ gap="base"
615
+ >
616
+ <s-box
617
+ border="base"
618
+ borderRadius="base"
619
+ overflow="hidden"
620
+ maxInlineSize="40px"
621
+ maxBlockSize="40px"
622
+ >
623
+ <s-image
624
+ src="https://cdn.shopify.com/app-store/listing_images/15100ebca4d221b650a7671125cd1444/icon/CO25r7-jh4ADEAE=.png"
625
+ alt="Shopify Flow icon"
626
+ ></s-image>
627
+ </s-box>
628
+ <s-box>
629
+ <s-heading>Shopify Flow</s-heading>
630
+ <s-paragraph>Free</s-paragraph>
631
+ <s-paragraph>
632
+ Automate everything and get back to business.
633
+ </s-paragraph>
634
+ </s-box>
635
+ <s-stack justifyContent="start">
636
+ <s-button
637
+ href="https://apps.shopify.com/flow"
638
+ icon="download"
639
+ accessibilityLabel="Download Shopify Flow"
640
+ ></s-button>
641
+ </s-stack>
642
+ </s-grid>
643
+ </s-clickable>
644
+ {/* Featured app 2 */}
645
+ <s-clickable
646
+ href="https://apps.shopify.com/planet"
647
+ border="base"
648
+ borderRadius="base"
649
+ padding="base"
650
+ inlineSize="100%"
651
+ accessibilityLabel="Download Shopify Planet"
652
+ >
653
+ <s-grid
654
+ gridTemplateColumns="auto 1fr auto"
655
+ alignItems="stretch"
656
+ gap="base"
657
+ >
658
+ <s-box
659
+ border="base"
660
+ borderRadius="base"
661
+ overflow="hidden"
662
+ maxInlineSize="40px"
663
+ maxBlockSize="40px"
664
+ >
665
+ <s-image
666
+ src="https://cdn.shopify.com/app-store/listing_images/87176a11f3714753fdc2e1fc8bbf0415/icon/CIqiqqXsiIADEAE=.png"
667
+ alt="Shopify Planet icon"
668
+ ></s-image>
669
+ </s-box>
670
+ <s-box>
671
+ <s-heading>Shopify Planet</s-heading>
672
+ <s-paragraph>Free</s-paragraph>
673
+ <s-paragraph>
674
+ Offer carbon-neutral shipping and showcase your commitment.
675
+ </s-paragraph>
676
+ </s-box>
677
+ <s-stack justifyContent="start">
678
+ <s-button
679
+ href="https://apps.shopify.com/planet"
680
+ icon="download"
681
+ accessibilityLabel="Download Shopify Planet"
682
+ ></s-button>
683
+ </s-stack>
684
+ </s-grid>
685
+ </s-clickable>
686
+ </s-grid>
687
+ </s-section>
688
+ )}
689
+ </s-page>
690
+ );
691
+ }