@shopify/ui-extensions 2025.10.0-rc.5 → 2025.10.0-rc.7

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 (304) 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/StandardComponents.d.ts +1 -1
  14. package/build/ts/surfaces/admin/components/StandardComponents.d.ts.map +1 -1
  15. package/build/ts/surfaces/admin/components/patterns/details.ab.doc.d.ts +4 -0
  16. package/build/ts/surfaces/admin/components/patterns/details.ab.doc.d.ts.map +1 -0
  17. package/build/ts/surfaces/admin/components/patterns/homepage.ab.doc.d.ts +4 -0
  18. package/build/ts/surfaces/admin/components/patterns/homepage.ab.doc.d.ts.map +1 -0
  19. package/build/ts/surfaces/admin/components/patterns/index.ab.doc.d.ts +4 -0
  20. package/build/ts/surfaces/admin/components/patterns/index.ab.doc.d.ts.map +1 -0
  21. package/build/ts/surfaces/admin/components/patterns/settings.ab.doc.d.ts +4 -0
  22. package/build/ts/surfaces/admin/components/patterns/settings.ab.doc.d.ts.map +1 -0
  23. package/build/ts/surfaces/admin/targets/admin.abandoned-checkout-details.action.render.d.ts +43 -1
  24. package/build/ts/surfaces/admin/targets/admin.abandoned-checkout-details.block.render.d.ts +43 -1
  25. package/build/ts/surfaces/admin/targets/admin.catalog-details.action.render.d.ts +43 -1
  26. package/build/ts/surfaces/admin/targets/admin.catalog-details.block.render.d.ts +43 -1
  27. package/build/ts/surfaces/admin/targets/admin.collection-details.action.render.d.ts +43 -1
  28. package/build/ts/surfaces/admin/targets/admin.collection-details.block.render.d.ts +43 -1
  29. package/build/ts/surfaces/admin/targets/admin.collection-index.action.render.d.ts +43 -1
  30. package/build/ts/surfaces/admin/targets/admin.company-details.action.render.d.ts +43 -1
  31. package/build/ts/surfaces/admin/targets/admin.company-details.block.render.d.ts +43 -1
  32. package/build/ts/surfaces/admin/targets/admin.company-location-details.block.render.d.ts +43 -1
  33. package/build/ts/surfaces/admin/targets/admin.customer-details.action.render.d.ts +43 -1
  34. package/build/ts/surfaces/admin/targets/admin.customer-details.block.render.d.ts +43 -1
  35. package/build/ts/surfaces/admin/targets/admin.customer-index.action.render.d.ts +43 -1
  36. package/build/ts/surfaces/admin/targets/admin.customer-index.selection-action.render.d.ts +43 -1
  37. package/build/ts/surfaces/admin/targets/admin.customer-segment-details.action.render.d.ts +43 -1
  38. package/build/ts/surfaces/admin/targets/admin.customers.segmentation-templates.render.d.ts +43 -1
  39. package/build/ts/surfaces/admin/targets/admin.discount-details.action.render.d.ts +43 -1
  40. package/build/ts/surfaces/admin/targets/admin.discount-details.function-settings.render.d.ts +43 -1
  41. package/build/ts/surfaces/admin/targets/admin.discount-index.action.render.d.ts +43 -1
  42. package/build/ts/surfaces/admin/targets/admin.draft-order-details.action.render.d.ts +43 -1
  43. package/build/ts/surfaces/admin/targets/admin.draft-order-details.block.render.d.ts +43 -1
  44. package/build/ts/surfaces/admin/targets/admin.draft-order-index.action.render.d.ts +43 -1
  45. package/build/ts/surfaces/admin/targets/admin.draft-order-index.selection-action.render.d.ts +43 -1
  46. package/build/ts/surfaces/admin/targets/admin.gift-card-details.action.render.d.ts +43 -1
  47. package/build/ts/surfaces/admin/targets/admin.gift-card-details.block.render.d.ts +43 -1
  48. package/build/ts/surfaces/admin/targets/admin.order-details.action.render.d.ts +43 -1
  49. package/build/ts/surfaces/admin/targets/admin.order-details.block.render.d.ts +43 -1
  50. package/build/ts/surfaces/admin/targets/admin.order-details.print-action.render.d.ts +43 -1
  51. package/build/ts/surfaces/admin/targets/admin.order-fulfilled-card.action.render.d.ts +43 -1
  52. package/build/ts/surfaces/admin/targets/admin.order-index.action.render.d.ts +43 -1
  53. package/build/ts/surfaces/admin/targets/admin.order-index.selection-action.render.d.ts +43 -1
  54. package/build/ts/surfaces/admin/targets/admin.order-index.selection-print-action.render.d.ts +43 -1
  55. package/build/ts/surfaces/admin/targets/admin.product-details.action.render.d.ts +43 -1
  56. package/build/ts/surfaces/admin/targets/admin.product-details.block.render.d.ts +43 -1
  57. package/build/ts/surfaces/admin/targets/admin.product-details.configuration.render.d.ts +43 -1
  58. package/build/ts/surfaces/admin/targets/admin.product-details.print-action.render.d.ts +43 -1
  59. package/build/ts/surfaces/admin/targets/admin.product-details.reorder.render.d.ts +43 -1
  60. package/build/ts/surfaces/admin/targets/admin.product-index.action.render.d.ts +43 -1
  61. package/build/ts/surfaces/admin/targets/admin.product-index.selection-action.render.d.ts +43 -1
  62. package/build/ts/surfaces/admin/targets/admin.product-index.selection-print-action.render.d.ts +43 -1
  63. package/build/ts/surfaces/admin/targets/admin.product-purchase-option.action.render.d.ts +43 -1
  64. package/build/ts/surfaces/admin/targets/admin.product-variant-details.action.render.d.ts +43 -1
  65. package/build/ts/surfaces/admin/targets/admin.product-variant-details.block.render.d.ts +43 -1
  66. package/build/ts/surfaces/admin/targets/admin.product-variant-details.configuration.render.d.ts +43 -1
  67. package/build/ts/surfaces/admin/targets/admin.product-variant-purchase-option.action.render.d.ts +43 -1
  68. package/build/ts/surfaces/admin/targets/admin.settings.internal-order-routing-rule.render.d.ts +43 -1
  69. package/build/ts/surfaces/admin/targets/admin.settings.order-routing-rule.render.d.ts +43 -1
  70. package/build/ts/surfaces/admin/targets/admin.settings.validation.render.d.ts +43 -1
  71. package/build/ts/surfaces/checkout/components/Abbreviation.d.ts +20 -8
  72. package/build/ts/surfaces/checkout/components/Banner/Banner.doc.d.ts.map +1 -1
  73. package/build/ts/surfaces/checkout/components/Banner.d.ts +52 -13
  74. package/build/ts/surfaces/checkout/components/Box.d.ts +20 -9
  75. package/build/ts/surfaces/checkout/components/Button/Button.doc.d.ts.map +1 -1
  76. package/build/ts/surfaces/checkout/components/Button.d.ts +39 -13
  77. package/build/ts/surfaces/checkout/components/Checkbox/Checkbox.doc.d.ts +4 -0
  78. package/build/ts/surfaces/checkout/components/Checkbox/Checkbox.doc.d.ts.map +1 -0
  79. package/build/ts/surfaces/checkout/components/Checkbox.d.ts +54 -0
  80. package/build/ts/surfaces/checkout/components/ClipboardItem.d.ts +36 -9
  81. package/build/ts/surfaces/checkout/components/DropZone/DropZone.doc.d.ts.map +1 -1
  82. package/build/ts/surfaces/checkout/components/DropZone.d.ts +36 -9
  83. package/build/ts/surfaces/checkout/components/EmailField/EmailField.doc.d.ts +4 -0
  84. package/build/ts/surfaces/checkout/components/EmailField/EmailField.doc.d.ts.map +1 -0
  85. package/build/ts/surfaces/checkout/components/EmailField.d.ts +69 -0
  86. package/build/ts/surfaces/checkout/components/Form.d.ts +40 -12
  87. package/build/ts/surfaces/checkout/components/Heading.d.ts +20 -8
  88. package/build/ts/surfaces/checkout/components/Icon.d.ts +22 -9
  89. package/build/ts/surfaces/checkout/components/Image.d.ts +13 -7
  90. package/build/ts/surfaces/checkout/components/Link/Link.doc.d.ts.map +1 -1
  91. package/build/ts/surfaces/checkout/components/Link.d.ts +39 -13
  92. package/build/ts/surfaces/checkout/components/ListItem.d.ts +22 -10
  93. package/build/ts/surfaces/checkout/components/Map/Map.doc.d.ts +4 -0
  94. package/build/ts/surfaces/checkout/components/Map/Map.doc.d.ts.map +1 -0
  95. package/build/ts/surfaces/checkout/components/Map.d.ts +75 -0
  96. package/build/ts/surfaces/checkout/components/MapMarker.d.ts +73 -0
  97. package/build/ts/surfaces/checkout/components/Modal/Modal.doc.d.ts +4 -0
  98. package/build/ts/surfaces/checkout/components/Modal/Modal.doc.d.ts.map +1 -0
  99. package/build/ts/surfaces/checkout/components/Modal.d.ts +87 -0
  100. package/build/ts/surfaces/checkout/components/OrderedList.d.ts +20 -8
  101. package/build/ts/surfaces/checkout/components/Paragraph.d.ts +20 -8
  102. package/build/ts/surfaces/checkout/components/PaymentIcon.d.ts +14 -7
  103. package/build/ts/surfaces/checkout/components/PhoneField/PhoneField.doc.d.ts +4 -0
  104. package/build/ts/surfaces/checkout/components/PhoneField/PhoneField.doc.d.ts.map +1 -0
  105. package/build/ts/surfaces/checkout/components/PhoneField.d.ts +84 -0
  106. package/build/ts/surfaces/checkout/components/ProductThumbnail/ProductThumbnail.doc.d.ts +4 -0
  107. package/build/ts/surfaces/checkout/components/ProductThumbnail/ProductThumbnail.doc.d.ts.map +1 -0
  108. package/build/ts/surfaces/checkout/components/Progress.d.ts +14 -4
  109. package/build/ts/surfaces/checkout/components/QRCode/QRCode.doc.d.ts.map +1 -1
  110. package/build/ts/surfaces/checkout/components/QRCode.d.ts +32 -8
  111. package/build/ts/surfaces/checkout/components/Section.d.ts +20 -8
  112. package/build/ts/surfaces/checkout/components/Spinner.d.ts +14 -4
  113. package/build/ts/surfaces/checkout/components/Stack.d.ts +20 -9
  114. package/build/ts/surfaces/checkout/components/Text.d.ts +20 -8
  115. package/build/ts/surfaces/checkout/components/TextArea/TextArea.doc.d.ts +4 -0
  116. package/build/ts/surfaces/checkout/components/TextArea/TextArea.doc.d.ts.map +1 -0
  117. package/build/ts/surfaces/checkout/components/TextArea.d.ts +69 -0
  118. package/build/ts/surfaces/checkout/components/TextField/TextField.doc.d.ts.map +1 -1
  119. package/build/ts/surfaces/checkout/components/TextField.d.ts +72 -21
  120. package/build/ts/surfaces/checkout/components/Time.d.ts +20 -8
  121. package/build/ts/surfaces/checkout/components/UnorderedList.d.ts +20 -8
  122. package/build/ts/surfaces/checkout/components/components-shared.d.ts +486 -2
  123. package/build/ts/surfaces/checkout/components/components.d.ts +1000 -166
  124. package/build/ts/surfaces/checkout/shared.d.ts +1 -1
  125. package/build/ts/surfaces/checkout/shared.d.ts.map +1 -1
  126. package/build/ts/surfaces/checkout/targets/Checkout::Actions::RenderBefore.d.ts +918 -172
  127. package/build/ts/surfaces/checkout/targets/Checkout::CartLineDetails::RenderAfter.d.ts +918 -172
  128. package/build/ts/surfaces/checkout/targets/Checkout::CartLineDetails::RenderLineComponents.d.ts +918 -172
  129. package/build/ts/surfaces/checkout/targets/Checkout::CartLines::RenderAfter.d.ts +918 -172
  130. package/build/ts/surfaces/checkout/targets/Checkout::Contact::RenderAfter.d.ts +918 -172
  131. package/build/ts/surfaces/checkout/targets/Checkout::CustomerInformation::RenderAfter.d.ts +918 -172
  132. package/build/ts/surfaces/checkout/targets/Checkout::DeliveryAddress::RenderBefore.d.ts +918 -172
  133. package/build/ts/surfaces/checkout/targets/Checkout::Dynamic::Render.d.ts +918 -172
  134. package/build/ts/surfaces/checkout/targets/Checkout::GiftCard::Render.d.ts +863 -155
  135. package/build/ts/surfaces/checkout/targets/Checkout::PaymentMethod::HostedFields::RenderAfter.d.ts +863 -155
  136. package/build/ts/surfaces/checkout/targets/Checkout::PaymentMethod::Render.d.ts +863 -155
  137. package/build/ts/surfaces/checkout/targets/Checkout::PaymentMethod::RenderRequiredAction.d.ts +918 -172
  138. package/build/ts/surfaces/checkout/targets/Checkout::PickupLocations::RenderAfter.d.ts +918 -172
  139. package/build/ts/surfaces/checkout/targets/Checkout::PickupLocations::RenderBefore.d.ts +918 -172
  140. package/build/ts/surfaces/checkout/targets/Checkout::PickupPoints::RenderAfter.d.ts +918 -172
  141. package/build/ts/surfaces/checkout/targets/Checkout::PickupPoints::RenderBefore.d.ts +918 -172
  142. package/build/ts/surfaces/checkout/targets/Checkout::Reductions::RenderAfter.d.ts +918 -172
  143. package/build/ts/surfaces/checkout/targets/Checkout::Reductions::RenderBefore.d.ts +918 -172
  144. package/build/ts/surfaces/checkout/targets/Checkout::ShippingMethodDetails::RenderAfter.d.ts +918 -172
  145. package/build/ts/surfaces/checkout/targets/Checkout::ShippingMethodDetails::RenderExpanded.d.ts +918 -172
  146. package/build/ts/surfaces/checkout/targets/Checkout::ShippingMethods::RenderAfter.d.ts +918 -172
  147. package/build/ts/surfaces/checkout/targets/Checkout::ShippingMethods::RenderBefore.d.ts +918 -172
  148. package/build/ts/surfaces/checkout/targets/Checkout::ThankYou::CartLineDetails::RenderAfter.d.ts +918 -172
  149. package/build/ts/surfaces/checkout/targets/Checkout::ThankYou::CartLines::RenderAfter.d.ts +918 -172
  150. package/build/ts/surfaces/checkout/targets/Checkout::ThankYou::CustomerInformation::RenderAfter.d.ts +918 -172
  151. package/build/ts/surfaces/checkout/targets/Checkout::ThankYou::Dynamic::Render.d.ts +918 -172
  152. package/build/ts/surfaces/checkout/targets/purchase.cart-line-item.line-components.render.d.ts +918 -172
  153. package/build/ts/surfaces/checkout/targets/purchase.checkout.actions.render-before.d.ts +918 -172
  154. package/build/ts/surfaces/checkout/targets/purchase.checkout.block.render.d.ts +918 -172
  155. package/build/ts/surfaces/checkout/targets/purchase.checkout.cart-line-item.render-after.d.ts +918 -172
  156. package/build/ts/surfaces/checkout/targets/purchase.checkout.cart-line-list.render-after.d.ts +918 -172
  157. package/build/ts/surfaces/checkout/targets/purchase.checkout.contact.render-after.d.ts +918 -172
  158. package/build/ts/surfaces/checkout/targets/purchase.checkout.delivery-address.render-after.d.ts +918 -172
  159. package/build/ts/surfaces/checkout/targets/purchase.checkout.delivery-address.render-before.d.ts +918 -172
  160. package/build/ts/surfaces/checkout/targets/purchase.checkout.footer.render-after.d.ts +918 -172
  161. package/build/ts/surfaces/checkout/targets/purchase.checkout.gift-card.render.d.ts +863 -155
  162. package/build/ts/surfaces/checkout/targets/purchase.checkout.header.render-after.d.ts +918 -172
  163. package/build/ts/surfaces/checkout/targets/purchase.checkout.payment-method-list.render-after.d.ts +918 -172
  164. package/build/ts/surfaces/checkout/targets/purchase.checkout.payment-method-list.render-before.d.ts +918 -172
  165. package/build/ts/surfaces/checkout/targets/purchase.checkout.payment-option-item.action-required.render.d.ts +918 -172
  166. package/build/ts/surfaces/checkout/targets/purchase.checkout.payment-option-item.details.render.d.ts +863 -155
  167. package/build/ts/surfaces/checkout/targets/purchase.checkout.payment-option-item.hosted-fields.render-after.d.ts +918 -172
  168. package/build/ts/surfaces/checkout/targets/purchase.checkout.pickup-location-list.render-after.d.ts +918 -172
  169. package/build/ts/surfaces/checkout/targets/purchase.checkout.pickup-location-list.render-before.d.ts +918 -172
  170. package/build/ts/surfaces/checkout/targets/purchase.checkout.pickup-location-option-item.render-after.d.ts +918 -172
  171. package/build/ts/surfaces/checkout/targets/purchase.checkout.pickup-point-list.render-after.d.ts +918 -172
  172. package/build/ts/surfaces/checkout/targets/purchase.checkout.pickup-point-list.render-before.d.ts +918 -172
  173. package/build/ts/surfaces/checkout/targets/purchase.checkout.reductions.render-after.d.ts +918 -172
  174. package/build/ts/surfaces/checkout/targets/purchase.checkout.reductions.render-before.d.ts +918 -172
  175. package/build/ts/surfaces/checkout/targets/purchase.checkout.shipping-option-item.details.render.d.ts +918 -172
  176. package/build/ts/surfaces/checkout/targets/purchase.checkout.shipping-option-item.render-after.d.ts +918 -172
  177. package/build/ts/surfaces/checkout/targets/purchase.checkout.shipping-option-list.render-after.d.ts +918 -172
  178. package/build/ts/surfaces/checkout/targets/purchase.checkout.shipping-option-list.render-before.d.ts +918 -172
  179. package/build/ts/surfaces/checkout/targets/purchase.thank-you.block.render.d.ts +918 -172
  180. package/build/ts/surfaces/checkout/targets/purchase.thank-you.cart-line-item.render-after.d.ts +918 -172
  181. package/build/ts/surfaces/checkout/targets/purchase.thank-you.cart-line-list.render-after.d.ts +918 -172
  182. package/build/ts/surfaces/checkout/targets/purchase.thank-you.customer-information.render-after.d.ts +918 -172
  183. package/build/ts/surfaces/checkout/targets/purchase.thank-you.footer.render-after.d.ts +918 -172
  184. package/build/ts/surfaces/checkout/targets/purchase.thank-you.header.render-after.d.ts +918 -172
  185. package/build/ts/surfaces/customer-account/components/Abbreviation.d.ts +20 -8
  186. package/build/ts/surfaces/customer-account/components/Banner.d.ts +52 -13
  187. package/build/ts/surfaces/customer-account/components/Box.d.ts +20 -9
  188. package/build/ts/surfaces/customer-account/components/Button.d.ts +39 -13
  189. package/build/ts/surfaces/customer-account/components/Checkbox.d.ts +54 -0
  190. package/build/ts/surfaces/customer-account/components/ClipboardItem.d.ts +36 -9
  191. package/build/ts/surfaces/customer-account/components/DropZone.d.ts +36 -9
  192. package/build/ts/surfaces/customer-account/components/EmailField.d.ts +69 -0
  193. package/build/ts/surfaces/customer-account/components/Form.d.ts +40 -12
  194. package/build/ts/surfaces/customer-account/components/Heading.d.ts +20 -8
  195. package/build/ts/surfaces/customer-account/components/Icon.d.ts +22 -9
  196. package/build/ts/surfaces/customer-account/components/Image.d.ts +13 -7
  197. package/build/ts/surfaces/customer-account/components/Link.d.ts +39 -13
  198. package/build/ts/surfaces/customer-account/components/ListItem.d.ts +22 -10
  199. package/build/ts/surfaces/customer-account/components/Map.d.ts +75 -0
  200. package/build/ts/surfaces/customer-account/components/MapMarker.d.ts +73 -0
  201. package/build/ts/surfaces/customer-account/components/Modal.d.ts +87 -0
  202. package/build/ts/surfaces/customer-account/components/OrderedList.d.ts +20 -8
  203. package/build/ts/surfaces/customer-account/components/Paragraph.d.ts +20 -8
  204. package/build/ts/surfaces/customer-account/components/PaymentIcon.d.ts +14 -7
  205. package/build/ts/surfaces/customer-account/components/PhoneField.d.ts +84 -0
  206. package/build/ts/surfaces/customer-account/components/Progress.d.ts +14 -4
  207. package/build/ts/surfaces/customer-account/components/QRCode.d.ts +32 -8
  208. package/build/ts/surfaces/customer-account/components/Section.d.ts +20 -8
  209. package/build/ts/surfaces/customer-account/components/Spinner.d.ts +14 -4
  210. package/build/ts/surfaces/customer-account/components/Stack.d.ts +20 -9
  211. package/build/ts/surfaces/customer-account/components/Text.d.ts +20 -8
  212. package/build/ts/surfaces/customer-account/components/TextArea.d.ts +69 -0
  213. package/build/ts/surfaces/customer-account/components/TextField.d.ts +72 -21
  214. package/build/ts/surfaces/customer-account/components/Time.d.ts +20 -8
  215. package/build/ts/surfaces/customer-account/components/UnorderedList.d.ts +20 -8
  216. package/build/ts/surfaces/customer-account/components/components-shared.d.ts +486 -2
  217. package/build/ts/surfaces/customer-account/components/components.d.ts +1000 -166
  218. package/build/ts/surfaces/customer-account/targets/customer-account.footer.render-after.d.ts +918 -173
  219. package/build/ts/surfaces/customer-account/targets/customer-account.order-index.block.render.d.ts +918 -173
  220. package/build/ts/surfaces/customer-account/targets/customer-account.order-status.block.render.d.ts +918 -173
  221. package/build/ts/surfaces/customer-account/targets/customer-account.order-status.cart-line-item.render-after.d.ts +918 -173
  222. package/build/ts/surfaces/customer-account/targets/customer-account.order-status.cart-line-list.render-after.d.ts +918 -173
  223. package/build/ts/surfaces/customer-account/targets/customer-account.order-status.customer-information.render-after.d.ts +918 -173
  224. package/build/ts/surfaces/customer-account/targets/customer-account.order-status.fulfillment-details.render-after.d.ts +918 -173
  225. package/build/ts/surfaces/customer-account/targets/customer-account.order-status.payment-details.render-after.d.ts +918 -173
  226. package/build/ts/surfaces/customer-account/targets/customer-account.order-status.return-details.render-after.d.ts +918 -173
  227. package/build/ts/surfaces/customer-account/targets/customer-account.order-status.unfulfilled-items.render-after.d.ts +918 -173
  228. package/build/ts/surfaces/customer-account/targets/customer-account.order.action.menu-item.render.d.ts +918 -173
  229. package/build/ts/surfaces/customer-account/targets/customer-account.order.action.render.d.ts +918 -173
  230. package/build/ts/surfaces/customer-account/targets/customer-account.order.page.render.d.ts +918 -173
  231. package/build/ts/surfaces/customer-account/targets/customer-account.page.render.d.ts +918 -173
  232. package/build/ts/surfaces/customer-account/targets/customer-account.profile.addresses.render-after.d.ts +918 -173
  233. package/build/ts/surfaces/customer-account/targets/customer-account.profile.block.render.d.ts +918 -173
  234. package/build/ts/surfaces/customer-account/targets/customer-account.profile.company-details.render-after.d.ts +918 -173
  235. package/build/ts/surfaces/customer-account/targets/customer-account.profile.company-location-addresses.render-after.d.ts +918 -173
  236. package/build/ts/surfaces/customer-account/targets/customer-account.profile.company-location-payment.render-after.d.ts +918 -173
  237. package/build/ts/surfaces/customer-account/targets/customer-account.profile.company-location-staff.render-after.d.ts +918 -173
  238. package/build/ts/surfaces/customer-account/targets/customer-account.profile.payment.render-after.d.ts +918 -173
  239. package/build/tsconfig.tsbuildinfo +1 -1
  240. package/package.json +1 -1
  241. package/src/docs/shared/components/Map.ts +12 -0
  242. package/src/docs/shared/components/MapMarker.ts +12 -0
  243. package/src/docs/shared/components/Modal.ts +12 -0
  244. package/src/docs/shared/components/Option.ts +12 -0
  245. package/src/docs/shared/components/PhoneField.ts +11 -0
  246. package/src/docs/shared/components/ProductThumbnail.ts +11 -0
  247. package/src/surfaces/admin/components/AdminPrintAction/examples/default.tsx +1 -1
  248. package/src/surfaces/admin/components/StandardComponents.ts +1 -0
  249. package/src/surfaces/admin/components/patterns/examples/details.html +228 -0
  250. package/src/surfaces/admin/components/patterns/examples/details.jsx +262 -0
  251. package/src/surfaces/admin/components/patterns/examples/homepage.html +587 -0
  252. package/src/surfaces/admin/components/patterns/examples/homepage.jsx +691 -0
  253. package/src/surfaces/admin/components/patterns/examples/index.html +143 -0
  254. package/src/surfaces/admin/components/patterns/examples/index.jsx +162 -0
  255. package/src/surfaces/admin/components/patterns/examples/settings.html +241 -0
  256. package/src/surfaces/admin/components/patterns/examples/settings.jsx +349 -0
  257. package/src/surfaces/admin/components/patterns/index.ab.doc.ts +82 -0
  258. package/src/surfaces/checkout/components/Abbreviation.d.ts +20 -8
  259. package/src/surfaces/checkout/components/Banner.d.ts +52 -13
  260. package/src/surfaces/checkout/components/Box.d.ts +20 -9
  261. package/src/surfaces/checkout/components/Button.d.ts +39 -13
  262. package/src/surfaces/checkout/components/Checkbox/examples/basic-checkbox.example.html +1 -0
  263. package/src/surfaces/checkout/components/Checkbox.d.ts +54 -0
  264. package/src/surfaces/checkout/components/ClipboardItem.d.ts +36 -9
  265. package/src/surfaces/checkout/components/DropZone.d.ts +36 -9
  266. package/src/surfaces/checkout/components/EmailField/examples/basic-emailfield.example.html +4 -0
  267. package/src/surfaces/checkout/components/EmailField.d.ts +69 -0
  268. package/src/surfaces/checkout/components/Form.d.ts +40 -12
  269. package/src/surfaces/checkout/components/Heading.d.ts +20 -8
  270. package/src/surfaces/checkout/components/Icon.d.ts +22 -9
  271. package/src/surfaces/checkout/components/Image.d.ts +13 -7
  272. package/src/surfaces/checkout/components/Link.d.ts +39 -13
  273. package/src/surfaces/checkout/components/ListItem.d.ts +22 -10
  274. package/src/surfaces/checkout/components/Map/examples/basic-map.example.html +3 -0
  275. package/src/surfaces/checkout/components/Map.d.ts +75 -0
  276. package/src/surfaces/checkout/components/MapMarker.d.ts +73 -0
  277. package/src/surfaces/checkout/components/Modal/examples/basic-modal.example.html +20 -0
  278. package/src/surfaces/checkout/components/Modal.d.ts +87 -0
  279. package/src/surfaces/checkout/components/OrderedList.d.ts +20 -8
  280. package/src/surfaces/checkout/components/Paragraph.d.ts +20 -8
  281. package/src/surfaces/checkout/components/PaymentIcon.d.ts +14 -7
  282. package/src/surfaces/checkout/components/PhoneField/examples/basic-phonefield.example.html +2 -0
  283. package/src/surfaces/checkout/components/PhoneField.d.ts +84 -0
  284. package/src/surfaces/checkout/components/ProductThumbnail/examples/basic-productthumbnail.example.html +4 -0
  285. package/src/surfaces/checkout/components/Progress.d.ts +14 -4
  286. package/src/surfaces/checkout/components/QRCode.d.ts +32 -8
  287. package/src/surfaces/checkout/components/Section.d.ts +20 -8
  288. package/src/surfaces/checkout/components/Spinner.d.ts +14 -4
  289. package/src/surfaces/checkout/components/Stack.d.ts +20 -9
  290. package/src/surfaces/checkout/components/Text.d.ts +20 -8
  291. package/src/surfaces/checkout/components/TextArea/examples/basic-textarea.example.html +5 -0
  292. package/src/surfaces/checkout/components/TextArea.d.ts +69 -0
  293. package/src/surfaces/checkout/components/TextField.d.ts +72 -21
  294. package/src/surfaces/checkout/components/Time.d.ts +20 -8
  295. package/src/surfaces/checkout/components/UnorderedList.d.ts +20 -8
  296. package/src/surfaces/checkout/components/components-shared.d.ts +486 -2
  297. package/src/surfaces/checkout/components/components.d.ts +1000 -166
  298. package/src/surfaces/checkout/shared.ts +8 -0
  299. package/src/surfaces/customer-account/components/CustomerAccountAction/examples/basic-CustomerAccountAction-js.example.ts +1 -1
  300. package/src/surfaces/customer-account/components/CustomerAccountAction/examples/basic-CustomerAccountAction-preact.example.tsx +1 -1
  301. package/src/surfaces/customer-account/components/ImageGroup/examples/basic-ImageGroup-js.example.ts +1 -1
  302. package/src/surfaces/customer-account/components/ImageGroup/examples/basic-ImageGroup-preact.example.tsx +1 -1
  303. package/src/surfaces/customer-account/components/Page/examples/basic-Page-js.example.ts +1 -1
  304. package/src/surfaces/customer-account/components/Page/examples/basic-Page-preact.example.tsx +1 -1
@@ -0,0 +1,349 @@
1
+ // ===
2
+ // Settings page pattern
3
+ // ===
4
+
5
+ export default function SettingsPage() {
6
+ const handleFormReset = (event) => {
7
+ console.log("Handle discarded changes if necessary");
8
+ };
9
+
10
+ const handleFormSubmit = (event) => {
11
+ event.preventDefault();
12
+ const formData = new FormData(event.target);
13
+ const formEntries = Object.fromEntries(formData);
14
+ console.log("Form data", formEntries);
15
+ };
16
+
17
+ return (
18
+ <form data-save-bar onSubmit={handleFormSubmit} onReset={handleFormReset}>
19
+ <s-page>
20
+ {/* === */}
21
+ {/* Title Bar */}
22
+ {/* Note: ui-title-bar requires AppBridge to render correctly */}
23
+ {/* === */}
24
+ <ui-title-bar title="Settings"></ui-title-bar>
25
+ {/* === */}
26
+ {/* Store settings */}
27
+ {/* === */}
28
+ <s-grid gap="base">
29
+ <s-grid
30
+ gridTemplateColumns="@container (inline-size <= 700px) 1fr, 2fr 5fr"
31
+ gap="base"
32
+ >
33
+ {/* Left column */}
34
+ <s-box>
35
+ <s-heading>Store Settings</s-heading>
36
+ <s-paragraph>Manage your store information</s-paragraph>
37
+ </s-box>
38
+ {/* Right column */}
39
+ <s-section accessibilityLabel="Store information section">
40
+ {/* Card-like container with border and padding */}
41
+ <s-box
42
+ padding="base"
43
+ border="base"
44
+ borderStyle="solid"
45
+ borderRadius="base"
46
+ >
47
+ <s-grid gap="base">
48
+ <s-stack direction="inline" justifyContent="space-between">
49
+ <s-stack
50
+ direction="inline"
51
+ alignItems="center"
52
+ gap="small-200"
53
+ >
54
+ <s-icon type="store"></s-icon>
55
+ <s-paragraph>Puzzlify Store</s-paragraph>
56
+ </s-stack>
57
+ {/* Icon-only button requires accessibilityLabel for screen readers */}
58
+ <s-button
59
+ icon="edit"
60
+ variant="tertiary"
61
+ tone="neutral"
62
+ accessibilityLabel="Edit store name"
63
+ ></s-button>
64
+ </s-stack>
65
+ <s-divider></s-divider>
66
+ <s-stack
67
+ direction="inline"
68
+ justifyContent="space-between"
69
+ alignItems="center"
70
+ >
71
+ <s-stack
72
+ direction="inline"
73
+ alignItems="center"
74
+ gap="small-200"
75
+ >
76
+ <s-icon type="location"></s-icon>
77
+ <s-box>
78
+ <s-paragraph>Business address</s-paragraph>
79
+ <s-paragraph>Puzzle Retailer</s-paragraph>
80
+ </s-box>
81
+ </s-stack>
82
+ <s-box>
83
+ {/* Icon-only button requires accessibilityLabel for screen readers */}
84
+ <s-button
85
+ icon="edit"
86
+ variant="tertiary"
87
+ tone="neutral"
88
+ accessibilityLabel="Edit business address"
89
+ ></s-button>
90
+ </s-box>
91
+ </s-stack>
92
+ </s-grid>
93
+ </s-box>
94
+ </s-section>
95
+ </s-grid>
96
+
97
+ {/* === */}
98
+ {/* Product defaults */}
99
+ {/* === */}
100
+ <s-grid
101
+ gridTemplateColumns="@container (inline-size <= 700px) 1fr, 2fr 5fr"
102
+ gap="base"
103
+ >
104
+ {/* Left column */}
105
+ <s-box>
106
+ <s-heading>Product Defaults</s-heading>
107
+ <s-paragraph>Set default options for new puzzles</s-paragraph>
108
+ </s-box>
109
+ {/* Right column */}
110
+ <s-section accessibilityLabel="Product defaults section">
111
+ <s-grid gap="base">
112
+ <s-grid gap="base">
113
+ <s-select
114
+ label="Default puzzle size"
115
+ name="default-puzzle-size"
116
+ >
117
+ <s-option value="small">Small (9" x 9")</s-option>
118
+ <s-option value="medium" selected>
119
+ Medium (18" x 24")
120
+ </s-option>
121
+ <s-option value="large">Large (24" x 36")</s-option>
122
+ </s-select>
123
+ <s-select
124
+ label="Default piece count"
125
+ name="default-piece-count"
126
+ >
127
+ <s-option value="250" selected>
128
+ 250 pieces (Easy)
129
+ </s-option>
130
+ <s-option value="500">500 pieces (Medium)</s-option>
131
+ <s-option value="1000">1000 pieces (Hard)</s-option>
132
+ <s-option value="2000">2000 pieces (Expert)</s-option>
133
+ </s-select>
134
+ <s-select label="Default material" name="default-material">
135
+ <s-option value="standard" selected>
136
+ Standard cardboard
137
+ </s-option>
138
+ <s-option value="premium">Premium cardboard</s-option>
139
+ <s-option value="wooden">Wooden pieces</s-option>
140
+ </s-select>
141
+ {/* switches (rather than checkboxes) should be used to enable/disable a single option */}
142
+ <s-switch
143
+ label="Include reference image"
144
+ name="include-reference-image"
145
+ details="Ship a reference image with the puzzle"
146
+ ></s-switch>
147
+ </s-grid>
148
+ </s-grid>
149
+ </s-section>
150
+ </s-grid>
151
+
152
+ {/* === */}
153
+ {/* Customer experience */}
154
+ {/* === */}
155
+ <s-grid
156
+ gridTemplateColumns="@container (inline-size <= 700px) 1fr, 2fr 5fr"
157
+ gap="base"
158
+ >
159
+ {/* Left column */}
160
+ <s-box>
161
+ <s-heading>Puzzle Experience</s-heading>
162
+ <s-paragraph>
163
+ Configure how customers interact with your puzzles
164
+ </s-paragraph>
165
+ </s-box>
166
+ {/* Right column */}
167
+ <s-section accessibilityLabel="Puzzle experience settings">
168
+ <s-grid gap="base">
169
+ <s-choice-list
170
+ label="Default puzzle packaging style"
171
+ name="packaging-style"
172
+ details="This will be used for all new puzzles"
173
+ >
174
+ <s-choice
175
+ label="Standard box with preview image"
176
+ value="standard-preview"
177
+ selected
178
+ ></s-choice>
179
+ <s-choice
180
+ label="Mystery box (no preview)"
181
+ value="mystery"
182
+ ></s-choice>
183
+ <s-choice
184
+ label="Gift packaging with ribbon"
185
+ value="gift"
186
+ ></s-choice>
187
+ <s-choice
188
+ label="Eco-friendly minimal packaging"
189
+ value="eco"
190
+ ></s-choice>
191
+ </s-choice-list>
192
+ </s-grid>
193
+ </s-section>
194
+ </s-grid>
195
+
196
+ {/* === */}
197
+ {/* Catalog settings */}
198
+ {/* === */}
199
+ <s-grid
200
+ gridTemplateColumns="@container (inline-size <= 700px) 1fr, 2fr 5fr"
201
+ gap="base"
202
+ >
203
+ {/* Left column */}
204
+ <s-box>
205
+ <s-heading>Catalog Settings</s-heading>
206
+ <s-paragraph>Configure your online puzzle catalog</s-paragraph>
207
+ </s-box>
208
+ {/* Right column */}
209
+ <s-section accessibilityLabel="Catalog settings section">
210
+ <s-grid gap="base">
211
+ <s-grid gap="base">
212
+ <s-select label="Default sorting" name="default-sorting">
213
+ <s-option value="newest" selected>
214
+ Newest first
215
+ </s-option>
216
+ <s-option value="bestselling">Best selling</s-option>
217
+ <s-option value="price-low">Price: Low to high</s-option>
218
+ <s-option value="price-high">Price: High to low</s-option>
219
+ </s-select>
220
+ <s-choice-list
221
+ label="Display options"
222
+ name="display-options"
223
+ multiple
224
+ >
225
+ <s-choice
226
+ label="Show difficulty levels"
227
+ value="show-difficulty"
228
+ selected
229
+ ></s-choice>
230
+ <s-choice
231
+ label="Show piece counts"
232
+ value="show-piece-count"
233
+ ></s-choice>
234
+ <s-choice
235
+ label="Show dimensions"
236
+ value="show-dimensions"
237
+ ></s-choice>
238
+ </s-choice-list>
239
+ </s-grid>
240
+ </s-grid>
241
+ </s-section>
242
+ </s-grid>
243
+
244
+ {/* === */}
245
+ {/* Order notifications */}
246
+ {/* === */}
247
+ <s-grid
248
+ gridTemplateColumns="@container (inline-size <= 700px) 1fr, 2fr 5fr"
249
+ gap="base"
250
+ >
251
+ {/* Left column */}
252
+ <s-box>
253
+ <s-heading>Order Notifications</s-heading>
254
+ <s-paragraph>Manage your business notifications</s-paragraph>
255
+ </s-box>
256
+ {/* Right column */}
257
+ <s-section accessibilityLabel="Order notifications section">
258
+ <s-grid gap="base">
259
+ <s-grid gap="base">
260
+ <s-select
261
+ label="Notification frequency"
262
+ name="notification-frequency"
263
+ >
264
+ <s-option value="immediately" selected>
265
+ Immediately
266
+ </s-option>
267
+ <s-option value="hourly">Hourly digest</s-option>
268
+ <s-option value="daily">Daily digest</s-option>
269
+ </s-select>
270
+ <s-choice-list
271
+ label="Notifications type"
272
+ name="notifications-type"
273
+ multiple
274
+ >
275
+ <s-choice
276
+ label="New order notifications"
277
+ value="new-order"
278
+ selected
279
+ ></s-choice>
280
+ <s-choice
281
+ label="Low stock alerts"
282
+ value="low-stock"
283
+ ></s-choice>
284
+ <s-choice
285
+ label="Customer review notifications"
286
+ value="customer-review"
287
+ ></s-choice>
288
+ <s-choice
289
+ label="Shipping updates"
290
+ value="shipping-updates"
291
+ ></s-choice>
292
+ </s-choice-list>
293
+ </s-grid>
294
+ </s-grid>
295
+ </s-section>
296
+ </s-grid>
297
+
298
+ {/* === */}
299
+ {/* Shipping settings */}
300
+ {/* === */}
301
+ <s-grid
302
+ gridTemplateColumns="@container (inline-size <= 700px) 1fr, 2fr 5fr"
303
+ gap="base"
304
+ >
305
+ {/* Left column */}
306
+ <s-box>
307
+ <s-heading>Shipping</s-heading>
308
+ <s-paragraph>Configure shipping settings</s-paragraph>
309
+ </s-box>
310
+ {/* Right column */}
311
+ <s-section accessibilityLabel="Shipping settings section">
312
+ <s-grid gap="base">
313
+ <s-select
314
+ label="Default shipping method"
315
+ name="default-shipping-method"
316
+ >
317
+ <s-option value="standard" selected>
318
+ Standard shipping
319
+ </s-option>
320
+ <s-option value="express">Express shipping</s-option>
321
+ <s-option value="free">Free shipping (over $50)</s-option>
322
+ </s-select>
323
+ <s-choice-list
324
+ label="Shipping preferences"
325
+ name="shipping-preferences"
326
+ multiple
327
+ >
328
+ <s-choice
329
+ label="Calculate shipping based on weight"
330
+ value="calculate-shipping"
331
+ selected
332
+ ></s-choice>
333
+ <s-choice
334
+ label="Offer international shipping"
335
+ value="international-shipping"
336
+ ></s-choice>
337
+ <s-choice
338
+ label="Show estimated delivery dates"
339
+ value="estimated-delivery-dates"
340
+ ></s-choice>
341
+ </s-choice-list>
342
+ </s-grid>
343
+ </s-section>
344
+ </s-grid>
345
+ </s-grid>
346
+ </s-page>
347
+ </form>
348
+ );
349
+ }
@@ -0,0 +1,82 @@
1
+ import {ReferenceEntityTemplateSchema} from '@shopify/generate-docs';
2
+
3
+ const data: ReferenceEntityTemplateSchema = {
4
+ name: 'Index',
5
+ isOneColumnLayout: true,
6
+ overviewPreviewDescription:
7
+ 'Manage objects efficiently with dynamic table actions.',
8
+ description: `The index layout lets merchants view and manage all their objects at once in a table format. They can filter, sort and do quick actions on their objects. To prevent tables from becoming visually cluttered, reveal actions only when the row is hovered over or selected
9
+
10
+ | Used to | Examples |
11
+ | -------- | ------- |
12
+ | View all objects at once | Products, orders, customers, discounts |
13
+ | Perform bulk actions | Delete products, pause/activate campaigns |
14
+
15
+ ![Preview of the index pattern](/assets/templated-apis-screenshots/admin/patterns/index-example.png)
16
+
17
+ This pattern uses \`Section\`, \`Stack\`, \`Heading\`, \`Button\`, \`Table\`, \`Paragraph\`, \`Box\` and \`Grid\` components.
18
+
19
+ ---
20
+
21
+ ## Design guidelines
22
+ Design your index page so users can organize and take action on resource objects.
23
+
24
+ ### Navigation
25
+
26
+ * Users must be able to return to the previous page without using the browser button. To achieve this, your app can provide breadcrumbs or a Back button on the page.
27
+ * Offer users clear and predictable action labels.
28
+
29
+ ---
30
+
31
+ ### Layout
32
+
33
+ * Design your app to be responsive and adapt to different screen sizes and devices. This ensures a seamless user experience across various platforms.
34
+ * For resource index pages, use a full-width page. This is helpful when users are dealing with lists of data that have many columns.
35
+
36
+ ---
37
+
38
+ <style>
39
+ div[class*="CodeBlock-module-CodeBlock_"] {
40
+ max-height: calc(100vh - 80px) !important;
41
+ }
42
+ div[class*="Tabs-module-TabsContent_"] {
43
+ overflow: auto !important;
44
+ }
45
+ div[class*="Screenshot-module-Screenshot_"] {
46
+ display: none !important;
47
+ }
48
+ </style>`,
49
+ isVisualComponent: true,
50
+ category: 'Patterns',
51
+ thumbnail: '/assets/templated-apis-screenshots/admin/patterns/index.png',
52
+ defaultExample: {
53
+ image:
54
+ '/assets/templated-apis-screenshots/admin/patterns/index-example.png',
55
+ codeblock: {
56
+ title: 'Index',
57
+ tabs: [
58
+ {
59
+ title: 'JSX',
60
+ code: './examples/index.jsx',
61
+ language: 'jsx',
62
+ },
63
+ {
64
+ title: 'HTML',
65
+ code: './examples/index.html',
66
+ language: 'html',
67
+ },
68
+ ],
69
+ },
70
+ },
71
+
72
+ related: [
73
+ {
74
+ name: 'Built for Shopify',
75
+ subtitle: 'Requirements',
76
+ url: '/docs/apps/launch/built-for-shopify/requirements',
77
+ type: 'component',
78
+ },
79
+ ],
80
+ };
81
+
82
+ export default data;
@@ -1,32 +1,44 @@
1
1
  /** VERSION: 0.0.0 **/
2
- /* eslint-disable import/extensions */
2
+ /* eslint-disable import-x/extensions */
3
3
  /* eslint-disable @typescript-eslint/no-namespace */
4
4
  /* eslint-disable @typescript-eslint/member-ordering */
5
5
  /* eslint-disable line-comment-position */
6
6
  /* eslint-disable @typescript-eslint/unified-signatures */
7
7
  /* eslint-disable no-var */
8
- /* eslint-disable import/namespace */
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
11
  import type {AbbreviationProps$1} from './components-shared.d.ts';
12
12
 
13
+ /**
14
+ * Used when an element does not have children.
15
+ */
16
+ export interface BaseElementProps<TClass = HTMLElement> {
17
+ key?: preact.Key;
18
+ ref?: preact.Ref<TClass>;
19
+ slot?: Lowercase<string>;
20
+ }
21
+ /**
22
+ * Used when an element has children.
23
+ */
24
+ export interface BaseElementPropsWithChildren<TClass = HTMLElement> extends BaseElementProps<TClass> {
25
+ children?: preact.ComponentChildren;
26
+ }
27
+
28
+ declare const tagName = "s-abbreviation";
13
29
  export interface AbbreviationProps extends Pick<AbbreviationProps$1, 'title'> {
14
30
  }
15
31
  export interface AbbreviationElement extends AbbreviationProps, Omit<HTMLElement, 'id' | 'title'> {
16
32
  }
17
33
  declare global {
18
34
  interface HTMLElementTagNameMap {
19
- 's-abbreviation': AbbreviationElement;
35
+ [tagName]: AbbreviationElement;
20
36
  }
21
37
  }
22
38
  declare module 'preact' {
23
- interface BaseProps {
24
- children?: preact.ComponentChildren;
25
- slot?: Lowercase<string>;
26
- }
27
39
  namespace createElement.JSX {
28
40
  interface IntrinsicElements {
29
- 's-abbreviation': AbbreviationProps & BaseProps;
41
+ [tagName]: AbbreviationProps & BaseElementPropsWithChildren<AbbreviationElement>;
30
42
  }
31
43
  }
32
44
  }
@@ -1,37 +1,76 @@
1
1
  /** VERSION: 0.0.0 **/
2
- /* eslint-disable import/extensions */
2
+ /* eslint-disable import-x/extensions */
3
3
  /* eslint-disable @typescript-eslint/no-namespace */
4
4
  /* eslint-disable @typescript-eslint/member-ordering */
5
5
  /* eslint-disable line-comment-position */
6
6
  /* eslint-disable @typescript-eslint/unified-signatures */
7
7
  /* eslint-disable no-var */
8
- /* eslint-disable import/namespace */
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
11
  import type {BannerProps$1} from './components-shared.d.ts';
12
12
 
13
- export interface BannerProps extends Pick<BannerProps$1, 'collapsible' | 'dismissible' | 'heading' | 'hidden' | 'id' | 'onAfterHide' | 'onDismiss' | 'tone'> {
13
+ /**
14
+ * Used when an element does not have children.
15
+ */
16
+ export interface BaseElementProps<TClass = HTMLElement> {
17
+ key?: preact.Key;
18
+ ref?: preact.Ref<TClass>;
19
+ slot?: Lowercase<string>;
20
+ }
21
+ /**
22
+ * Used when an element has children.
23
+ */
24
+ export interface BaseElementPropsWithChildren<TClass = HTMLElement> extends BaseElementProps<TClass> {
25
+ children?: preact.ComponentChildren;
26
+ }
27
+ export type CallbackEvent<TTagName extends keyof HTMLElementTagNameMap, TEvent extends Event = Event> = TEvent & {
28
+ currentTarget: HTMLElementTagNameMap[TTagName];
29
+ };
30
+
31
+ declare const tagName = "s-banner";
32
+ export interface BannerBaseProps extends Pick<BannerProps$1, 'collapsible' | 'dismissible' | 'heading' | 'hidden' | 'id' | 'tone'> {
14
33
  tone?: Extract<BannerProps$1['tone'], 'auto' | 'info' | 'success' | 'warning' | 'critical'>;
15
34
  }
16
- export interface BannerElement extends Omit<BannerProps, 'onAfterHide' | 'onDismiss'>, Omit<HTMLElement, 'id' | 'title' | 'hidden'> {
17
- onafterhide: BannerProps['onAfterHide'];
18
- ondismiss: BannerProps['onDismiss'];
35
+ export interface BannerEvents extends Pick<BannerProps$1, 'onAfterHide' | 'onDismiss'> {
36
+ }
37
+ export interface BannerElementEvents {
38
+ /**
39
+ * Event handler when the banner has fully hidden.
40
+ *
41
+ * The `hidden` property will be `true` when this event fires.
42
+ *
43
+ * @implementation If implementations animate the hiding of the banner,
44
+ * this event must fire after the banner has fully hidden.
45
+ * We can add an `onHide` event in future if we want to provide a hook for the start of the animation.
46
+ */
47
+ afterhide?: ((event: CallbackEvent<typeof tagName>) => void) | null;
48
+ /**
49
+ * Event handler when the banner is dismissed by the user.
50
+ *
51
+ * This does not fire when setting `hidden` manually.
52
+ *
53
+ * The `hidden` property will be `false` when this event fires.
54
+ */
55
+ dismiss?: ((event: CallbackEvent<typeof tagName>) => void) | null;
56
+ }
57
+ export interface BannerElement extends BannerBaseProps, Omit<BannerEvents, 'onAfterHide' | 'onDismiss'>, Omit<HTMLElement, 'id' | 'title' | 'hidden'> {
58
+ onafterhide: BannerEvents['onAfterHide'];
59
+ ondismiss: BannerEvents['onDismiss'];
60
+ }
61
+ export interface BannerProps extends BannerBaseProps, BannerEvents {
19
62
  }
20
63
  declare global {
21
64
  interface HTMLElementTagNameMap {
22
- 's-banner': BannerElement;
65
+ [tagName]: BannerElement;
23
66
  }
24
67
  }
25
68
  declare module 'preact' {
26
- interface BaseProps {
27
- children?: preact.ComponentChildren;
28
- slot?: Lowercase<string>;
29
- }
30
69
  namespace createElement.JSX {
31
70
  interface IntrinsicElements {
32
- 's-banner': BannerProps & BaseProps;
71
+ [tagName]: BannerProps & BaseElementPropsWithChildren<BannerElement>;
33
72
  }
34
73
  }
35
74
  }
36
75
 
37
- export type { BannerElement, BannerProps };
76
+ export type { BannerBaseProps, BannerElement, BannerElementEvents, BannerEvents, BannerProps };
@@ -1,11 +1,11 @@
1
1
  /** VERSION: 0.0.0 **/
2
- /* eslint-disable import/extensions */
2
+ /* eslint-disable import-x/extensions */
3
3
  /* eslint-disable @typescript-eslint/no-namespace */
4
4
  /* eslint-disable @typescript-eslint/member-ordering */
5
5
  /* eslint-disable line-comment-position */
6
6
  /* eslint-disable @typescript-eslint/unified-signatures */
7
7
  /* eslint-disable no-var */
8
- /* eslint-disable import/namespace */
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
11
  import type {BoxProps$1,MaybeAllValuesShorthandProperty,BorderSizeKeyword, BorderStyleKeyword,ColorKeyword} from './components-shared.d.ts';
@@ -13,8 +13,23 @@ import type {BoxProps$1,MaybeAllValuesShorthandProperty,BorderSizeKeyword, Borde
13
13
  export type ReducedBorderSizeKeyword = Extract<BorderSizeKeyword, 'none' | 'base' | 'large' | 'large-100' | 'large-200'>;
14
14
  export type ReducedColorKeyword = Extract<ColorKeyword, 'base'>;
15
15
  export type BorderShorthand = ReducedBorderSizeKeyword | `${ReducedBorderSizeKeyword} ${ReducedColorKeyword}` | `${ReducedBorderSizeKeyword} ${ReducedColorKeyword} ${BorderStyleKeyword}`;
16
+ /**
17
+ * Used when an element does not have children.
18
+ */
19
+ export interface BaseElementProps<TClass = HTMLElement> {
20
+ key?: preact.Key;
21
+ ref?: preact.Ref<TClass>;
22
+ slot?: Lowercase<string>;
23
+ }
24
+ /**
25
+ * Used when an element has children.
26
+ */
27
+ export interface BaseElementPropsWithChildren<TClass = HTMLElement> extends BaseElementProps<TClass> {
28
+ children?: preact.ComponentChildren;
29
+ }
16
30
 
17
- export interface BoxProps extends Pick<BoxProps$1, 'accessibilityLabel' | 'accessibilityRole' | 'accessibilityVisibility' | 'background' | 'border' | 'borderRadius' | 'borderStyle' | 'borderWidth' | 'display' | 'id' | 'maxBlockSize' | 'maxInlineSize' | 'minBlockSize' | 'minInlineSize' | 'overflow' | 'padding' | 'paddingBlock' | 'paddingBlockEnd' | 'paddingBlockStart' | 'paddingInline' | 'paddingInlineEnd' | 'paddingInlineStart'> {
31
+ declare const tagName = "s-box";
32
+ export interface BoxProps extends Pick<BoxProps$1, 'accessibilityLabel' | 'accessibilityRole' | 'accessibilityVisibility' | 'background' | 'blockSize' | 'border' | 'borderRadius' | 'borderStyle' | 'borderWidth' | 'display' | 'id' | 'inlineSize' | 'maxBlockSize' | 'maxInlineSize' | 'minBlockSize' | 'minInlineSize' | 'overflow' | 'padding' | 'paddingBlock' | 'paddingBlockEnd' | 'paddingBlockStart' | 'paddingInline' | 'paddingInlineEnd' | 'paddingInlineStart'> {
18
33
  background?: Extract<BoxProps$1['background'], 'transparent' | 'subdued' | 'base'>;
19
34
  border?: BorderShorthand;
20
35
  borderWidth?: MaybeAllValuesShorthandProperty<ReducedBorderSizeKeyword> | '';
@@ -24,17 +39,13 @@ export interface BoxElement extends BoxProps, Omit<HTMLElement, 'id'> {
24
39
  }
25
40
  declare global {
26
41
  interface HTMLElementTagNameMap {
27
- 's-box': BoxElement;
42
+ [tagName]: BoxElement;
28
43
  }
29
44
  }
30
45
  declare module 'preact' {
31
- interface BaseProps {
32
- children?: preact.ComponentChildren;
33
- slot?: Lowercase<string>;
34
- }
35
46
  namespace createElement.JSX {
36
47
  interface IntrinsicElements {
37
- 's-box': BoxProps & BaseProps;
48
+ [tagName]: BoxProps & BaseElementPropsWithChildren<BoxElement>;
38
49
  }
39
50
  }
40
51
  }