@shopify/ui-extensions 2022.10.5 → 2023.4.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (706) hide show
  1. package/README.md +1 -1
  2. package/build/cjs/surfaces/admin/components/AdminAction/AdminAction.js +12 -0
  3. package/build/cjs/surfaces/admin/components/AdminBlock/AdminBlock.js +9 -0
  4. package/build/cjs/surfaces/admin/components/BlockStack/BlockStack.js +9 -0
  5. package/build/cjs/surfaces/admin/components/Box/Box.js +9 -0
  6. package/build/cjs/surfaces/admin/components/Button/Button.js +9 -0
  7. package/build/cjs/surfaces/admin/components/Checkbox/Checkbox.js +9 -0
  8. package/build/cjs/surfaces/admin/components/CustomerSegmentationTemplate/CustomerSegmentationTemplate.js +12 -0
  9. package/build/cjs/surfaces/admin/components/Divider/Divider.js +9 -0
  10. package/build/cjs/surfaces/admin/components/EmailField/EmailField.js +9 -0
  11. package/build/cjs/surfaces/admin/components/Form/Form.js +9 -0
  12. package/build/cjs/surfaces/admin/components/Heading/Heading.js +9 -0
  13. package/build/cjs/surfaces/admin/components/HeadingGroup/HeadingGroup.js +9 -0
  14. package/build/cjs/surfaces/admin/components/Icon/Icon.js +9 -0
  15. package/build/cjs/surfaces/admin/components/Image/Image.js +9 -0
  16. package/build/cjs/surfaces/admin/components/InlineStack/InlineStack.js +9 -0
  17. package/build/cjs/surfaces/admin/components/Link/Link.js +9 -0
  18. package/build/cjs/surfaces/admin/components/NumberField/NumberField.js +9 -0
  19. package/build/cjs/surfaces/admin/components/PasswordField/PasswordField.js +9 -0
  20. package/build/cjs/surfaces/admin/components/Select/Select.js +9 -0
  21. package/build/cjs/surfaces/admin/components/Text/Text.js +9 -0
  22. package/build/cjs/surfaces/admin/components/TextArea/TextArea.js +9 -0
  23. package/build/cjs/surfaces/admin/components/TextField/TextField.js +9 -0
  24. package/build/cjs/surfaces/admin/components/URLField/URLField.js +9 -0
  25. package/build/cjs/surfaces/admin/extension.js +11 -0
  26. package/build/cjs/surfaces/admin.js +56 -0
  27. package/build/cjs/surfaces/checkout/components/DateField/DateField.js +13 -0
  28. package/build/cjs/surfaces/checkout/components/DatePicker/DatePicker.js +22 -0
  29. package/build/cjs/surfaces/checkout/components/Disclosure/Disclosure.js +20 -0
  30. package/build/cjs/surfaces/checkout/components/Modal/Modal.js +17 -0
  31. package/build/cjs/surfaces/checkout/components/Popover/Popover.js +17 -0
  32. package/build/cjs/surfaces/checkout/components/View/View.js +0 -3
  33. package/build/cjs/surfaces/checkout/extension.js +35 -2
  34. package/build/cjs/surfaces/checkout/style/memoize.js +2 -0
  35. package/build/cjs/surfaces/checkout/style/style.js +0 -1
  36. package/build/cjs/surfaces/checkout.js +11 -0
  37. package/build/cjs/utilities/registration.js +26 -2
  38. package/build/esm/surfaces/admin/components/AdminAction/AdminAction.mjs +8 -0
  39. package/build/esm/surfaces/admin/components/AdminBlock/AdminBlock.mjs +5 -0
  40. package/build/esm/surfaces/admin/components/BlockStack/BlockStack.mjs +5 -0
  41. package/build/esm/surfaces/admin/components/Box/Box.mjs +5 -0
  42. package/build/esm/surfaces/admin/components/Button/Button.mjs +5 -0
  43. package/build/esm/surfaces/admin/components/Checkbox/Checkbox.mjs +5 -0
  44. package/build/esm/surfaces/admin/components/CustomerSegmentationTemplate/CustomerSegmentationTemplate.mjs +8 -0
  45. package/build/esm/surfaces/admin/components/Divider/Divider.mjs +5 -0
  46. package/build/esm/surfaces/admin/components/EmailField/EmailField.mjs +5 -0
  47. package/build/esm/surfaces/admin/components/Form/Form.mjs +5 -0
  48. package/build/esm/surfaces/admin/components/Heading/Heading.mjs +5 -0
  49. package/build/esm/surfaces/admin/components/HeadingGroup/HeadingGroup.mjs +5 -0
  50. package/build/esm/surfaces/admin/components/Icon/Icon.mjs +5 -0
  51. package/build/esm/surfaces/admin/components/Image/Image.mjs +5 -0
  52. package/build/esm/surfaces/admin/components/InlineStack/InlineStack.mjs +5 -0
  53. package/build/esm/surfaces/admin/components/Link/Link.mjs +5 -0
  54. package/build/esm/surfaces/admin/components/NumberField/NumberField.mjs +5 -0
  55. package/build/esm/surfaces/admin/components/PasswordField/PasswordField.mjs +5 -0
  56. package/build/esm/surfaces/admin/components/Select/Select.mjs +5 -0
  57. package/build/esm/surfaces/admin/components/Text/Text.mjs +5 -0
  58. package/build/esm/surfaces/admin/components/TextArea/TextArea.mjs +5 -0
  59. package/build/esm/surfaces/admin/components/TextField/TextField.mjs +5 -0
  60. package/build/esm/surfaces/admin/components/URLField/URLField.mjs +5 -0
  61. package/build/esm/surfaces/admin/extension.mjs +6 -0
  62. package/build/esm/surfaces/admin.mjs +24 -0
  63. package/build/esm/surfaces/checkout/components/DateField/DateField.mjs +9 -0
  64. package/build/esm/surfaces/checkout/components/DatePicker/DatePicker.mjs +18 -0
  65. package/build/esm/surfaces/checkout/components/Disclosure/Disclosure.mjs +16 -0
  66. package/build/esm/surfaces/checkout/components/Modal/Modal.mjs +13 -0
  67. package/build/esm/surfaces/checkout/components/Popover/Popover.mjs +13 -0
  68. package/build/esm/surfaces/checkout/components/View/View.mjs +0 -3
  69. package/build/esm/surfaces/checkout/extension.mjs +35 -3
  70. package/build/esm/surfaces/checkout/style/memoize.mjs +2 -0
  71. package/build/esm/surfaces/checkout/style/style.mjs +0 -1
  72. package/build/esm/surfaces/checkout.mjs +6 -1
  73. package/build/esm/utilities/registration.mjs +26 -2
  74. package/build/esnext/surfaces/admin/components/AdminAction/AdminAction.esnext +8 -0
  75. package/build/esnext/surfaces/admin/components/AdminBlock/AdminBlock.esnext +5 -0
  76. package/build/esnext/surfaces/admin/components/BlockStack/BlockStack.esnext +5 -0
  77. package/build/esnext/surfaces/admin/components/Box/Box.esnext +5 -0
  78. package/build/esnext/surfaces/admin/components/Button/Button.esnext +5 -0
  79. package/build/esnext/surfaces/admin/components/Checkbox/Checkbox.esnext +5 -0
  80. package/build/esnext/surfaces/admin/components/CustomerSegmentationTemplate/CustomerSegmentationTemplate.esnext +8 -0
  81. package/build/esnext/surfaces/admin/components/Divider/Divider.esnext +5 -0
  82. package/build/esnext/surfaces/admin/components/EmailField/EmailField.esnext +5 -0
  83. package/build/esnext/surfaces/admin/components/Form/Form.esnext +5 -0
  84. package/build/esnext/surfaces/admin/components/Heading/Heading.esnext +5 -0
  85. package/build/esnext/surfaces/admin/components/HeadingGroup/HeadingGroup.esnext +5 -0
  86. package/build/esnext/surfaces/admin/components/Icon/Icon.esnext +5 -0
  87. package/build/esnext/surfaces/admin/components/Image/Image.esnext +5 -0
  88. package/build/esnext/surfaces/admin/components/InlineStack/InlineStack.esnext +5 -0
  89. package/build/esnext/surfaces/admin/components/Link/Link.esnext +5 -0
  90. package/build/esnext/surfaces/admin/components/NumberField/NumberField.esnext +5 -0
  91. package/build/esnext/surfaces/admin/components/PasswordField/PasswordField.esnext +5 -0
  92. package/build/esnext/surfaces/admin/components/Select/Select.esnext +5 -0
  93. package/build/esnext/surfaces/admin/components/Text/Text.esnext +5 -0
  94. package/build/esnext/surfaces/admin/components/TextArea/TextArea.esnext +5 -0
  95. package/build/esnext/surfaces/admin/components/TextField/TextField.esnext +5 -0
  96. package/build/esnext/surfaces/admin/components/URLField/URLField.esnext +5 -0
  97. package/build/esnext/surfaces/admin/extension.esnext +6 -0
  98. package/build/esnext/surfaces/admin.esnext +24 -0
  99. package/build/esnext/surfaces/checkout/components/DateField/DateField.esnext +9 -0
  100. package/build/esnext/surfaces/checkout/components/DatePicker/DatePicker.esnext +18 -0
  101. package/build/esnext/surfaces/checkout/components/Disclosure/Disclosure.esnext +16 -0
  102. package/build/esnext/surfaces/checkout/components/Modal/Modal.esnext +13 -0
  103. package/build/esnext/surfaces/checkout/components/Popover/Popover.esnext +13 -0
  104. package/build/esnext/surfaces/checkout/components/View/View.esnext +0 -3
  105. package/build/esnext/surfaces/checkout/extension.esnext +35 -3
  106. package/build/esnext/surfaces/checkout/style/memoize.esnext +2 -0
  107. package/build/esnext/surfaces/checkout/style/style.esnext +0 -1
  108. package/build/esnext/surfaces/checkout.esnext +6 -1
  109. package/build/esnext/utilities/registration.esnext +26 -2
  110. package/build/ts/api.d.ts +62 -0
  111. package/build/ts/api.d.ts.map +1 -1
  112. package/build/ts/extension.d.ts +8 -1
  113. package/build/ts/extension.d.ts.map +1 -1
  114. package/build/ts/index.d.ts +0 -1
  115. package/build/ts/index.d.ts.map +1 -1
  116. package/build/ts/shared.d.ts +6 -0
  117. package/build/ts/shared.d.ts.map +1 -0
  118. package/build/ts/surfaces/admin/api/action/action.d.ts +11 -0
  119. package/build/ts/surfaces/admin/api/action/action.d.ts.map +1 -0
  120. package/build/ts/surfaces/admin/api/action/action.doc.d.ts +4 -0
  121. package/build/ts/surfaces/admin/api/action/action.doc.d.ts.map +1 -0
  122. package/build/ts/surfaces/admin/api/customer-segmentation-template/customer-segmentation-template.d.ts +11 -0
  123. package/build/ts/surfaces/admin/api/customer-segmentation-template/customer-segmentation-template.d.ts.map +1 -0
  124. package/build/ts/surfaces/admin/api/extension-targets/extension-targets.doc.d.ts +4 -0
  125. package/build/ts/surfaces/admin/api/extension-targets/extension-targets.doc.d.ts.map +1 -0
  126. package/build/ts/surfaces/admin/api/standard/standard.d.ts +13 -0
  127. package/build/ts/surfaces/admin/api/standard/standard.d.ts.map +1 -0
  128. package/build/ts/surfaces/admin/api/standard/standard.doc.d.ts +4 -0
  129. package/build/ts/surfaces/admin/api/standard/standard.doc.d.ts.map +1 -0
  130. package/build/ts/surfaces/admin/api.d.ts +5 -0
  131. package/build/ts/surfaces/admin/api.d.ts.map +1 -0
  132. package/build/ts/surfaces/admin/components/AdminAction/AdminAction.d.ts +25 -0
  133. package/build/ts/surfaces/admin/components/AdminAction/AdminAction.d.ts.map +1 -0
  134. package/build/ts/surfaces/admin/components/AdminAction/AdminAction.doc.d.ts +4 -0
  135. package/build/ts/surfaces/admin/components/AdminAction/AdminAction.doc.d.ts.map +1 -0
  136. package/build/ts/surfaces/admin/components/AdminBlock/AdminBlock.d.ts +17 -0
  137. package/build/ts/surfaces/admin/components/AdminBlock/AdminBlock.d.ts.map +1 -0
  138. package/build/ts/surfaces/admin/components/AdminBlock/AdminBlock.doc.d.ts +4 -0
  139. package/build/ts/surfaces/admin/components/AdminBlock/AdminBlock.doc.d.ts.map +1 -0
  140. package/build/ts/surfaces/admin/components/BlockStack/BlockStack.d.ts +15 -0
  141. package/build/ts/surfaces/admin/components/BlockStack/BlockStack.d.ts.map +1 -0
  142. package/build/ts/surfaces/admin/components/BlockStack/BlockStack.doc.d.ts +4 -0
  143. package/build/ts/surfaces/admin/components/BlockStack/BlockStack.doc.d.ts.map +1 -0
  144. package/build/ts/surfaces/admin/components/Box/Box.d.ts +9 -0
  145. package/build/ts/surfaces/admin/components/Box/Box.d.ts.map +1 -0
  146. package/build/ts/surfaces/admin/components/Box/Box.doc.d.ts +4 -0
  147. package/build/ts/surfaces/admin/components/Box/Box.doc.d.ts.map +1 -0
  148. package/build/ts/surfaces/admin/components/Button/Button.d.ts +87 -0
  149. package/build/ts/surfaces/admin/components/Button/Button.d.ts.map +1 -0
  150. package/build/ts/surfaces/admin/components/Button/Button.doc.d.ts +4 -0
  151. package/build/ts/surfaces/admin/components/Button/Button.doc.d.ts.map +1 -0
  152. package/build/ts/surfaces/admin/components/Checkbox/Checkbox.d.ts +55 -0
  153. package/build/ts/surfaces/admin/components/Checkbox/Checkbox.d.ts.map +1 -0
  154. package/build/ts/surfaces/admin/components/Checkbox/Checkbox.doc.d.ts +4 -0
  155. package/build/ts/surfaces/admin/components/Checkbox/Checkbox.doc.d.ts.map +1 -0
  156. package/build/ts/surfaces/admin/components/CustomerSegmentationTemplate/CustomerSegmentationTemplate.d.ts +27 -0
  157. package/build/ts/surfaces/admin/components/CustomerSegmentationTemplate/CustomerSegmentationTemplate.d.ts.map +1 -0
  158. package/build/ts/surfaces/admin/components/Divider/Divider.d.ts +14 -0
  159. package/build/ts/surfaces/admin/components/Divider/Divider.d.ts.map +1 -0
  160. package/build/ts/surfaces/admin/components/Divider/Divider.doc.d.ts +4 -0
  161. package/build/ts/surfaces/admin/components/Divider/Divider.doc.d.ts.map +1 -0
  162. package/build/ts/surfaces/admin/components/EmailField/EmailField.d.ts +10 -0
  163. package/build/ts/surfaces/admin/components/EmailField/EmailField.d.ts.map +1 -0
  164. package/build/ts/surfaces/admin/components/EmailField/EmailField.doc.d.ts +4 -0
  165. package/build/ts/surfaces/admin/components/EmailField/EmailField.doc.d.ts.map +1 -0
  166. package/build/ts/surfaces/admin/components/Form/Form.d.ts +30 -0
  167. package/build/ts/surfaces/admin/components/Form/Form.d.ts.map +1 -0
  168. package/build/ts/surfaces/admin/components/Form/Form.doc.d.ts +4 -0
  169. package/build/ts/surfaces/admin/components/Form/Form.doc.d.ts.map +1 -0
  170. package/build/ts/surfaces/admin/components/Heading/Heading.d.ts +14 -0
  171. package/build/ts/surfaces/admin/components/Heading/Heading.d.ts.map +1 -0
  172. package/build/ts/surfaces/admin/components/Heading/Heading.doc.d.ts +4 -0
  173. package/build/ts/surfaces/admin/components/Heading/Heading.doc.d.ts.map +1 -0
  174. package/build/ts/surfaces/admin/components/HeadingGroup/HeadingGroup.d.ts +8 -0
  175. package/build/ts/surfaces/admin/components/HeadingGroup/HeadingGroup.d.ts.map +1 -0
  176. package/build/ts/surfaces/admin/components/HeadingGroup/HeadingGroup.doc.d.ts +4 -0
  177. package/build/ts/surfaces/admin/components/HeadingGroup/HeadingGroup.doc.d.ts.map +1 -0
  178. package/build/ts/surfaces/admin/components/Icon/Icon.d.ts +23 -0
  179. package/build/ts/surfaces/admin/components/Icon/Icon.d.ts.map +1 -0
  180. package/build/ts/surfaces/admin/components/Icon/Icon.doc.d.ts +4 -0
  181. package/build/ts/surfaces/admin/components/Icon/Icon.doc.d.ts.map +1 -0
  182. package/build/ts/surfaces/admin/components/Image/Image.d.ts +114 -0
  183. package/build/ts/surfaces/admin/components/Image/Image.d.ts.map +1 -0
  184. package/build/ts/surfaces/admin/components/Image/Image.doc.d.ts +4 -0
  185. package/build/ts/surfaces/admin/components/Image/Image.doc.d.ts.map +1 -0
  186. package/build/ts/surfaces/admin/components/InlineStack/InlineStack.d.ts +15 -0
  187. package/build/ts/surfaces/admin/components/InlineStack/InlineStack.d.ts.map +1 -0
  188. package/build/ts/surfaces/admin/components/InlineStack/InlineStack.doc.d.ts +4 -0
  189. package/build/ts/surfaces/admin/components/InlineStack/InlineStack.doc.d.ts.map +1 -0
  190. package/build/ts/surfaces/admin/components/Link/Link.d.ts +57 -0
  191. package/build/ts/surfaces/admin/components/Link/Link.d.ts.map +1 -0
  192. package/build/ts/surfaces/admin/components/Link/Link.doc.d.ts +4 -0
  193. package/build/ts/surfaces/admin/components/Link/Link.doc.d.ts.map +1 -0
  194. package/build/ts/surfaces/admin/components/NumberField/NumberField.d.ts +41 -0
  195. package/build/ts/surfaces/admin/components/NumberField/NumberField.d.ts.map +1 -0
  196. package/build/ts/surfaces/admin/components/NumberField/NumberField.doc.d.ts +4 -0
  197. package/build/ts/surfaces/admin/components/NumberField/NumberField.doc.d.ts.map +1 -0
  198. package/build/ts/surfaces/admin/components/PasswordField/PasswordField.d.ts +10 -0
  199. package/build/ts/surfaces/admin/components/PasswordField/PasswordField.d.ts.map +1 -0
  200. package/build/ts/surfaces/admin/components/PasswordField/PasswordField.doc.d.ts +4 -0
  201. package/build/ts/surfaces/admin/components/PasswordField/PasswordField.doc.d.ts.map +1 -0
  202. package/build/ts/surfaces/admin/components/Select/Select.d.ts +127 -0
  203. package/build/ts/surfaces/admin/components/Select/Select.d.ts.map +1 -0
  204. package/build/ts/surfaces/admin/components/Select/Select.doc.d.ts +4 -0
  205. package/build/ts/surfaces/admin/components/Select/Select.doc.d.ts.map +1 -0
  206. package/build/ts/surfaces/admin/components/Text/Text.d.ts +97 -0
  207. package/build/ts/surfaces/admin/components/Text/Text.d.ts.map +1 -0
  208. package/build/ts/surfaces/admin/components/Text/Text.doc.d.ts +4 -0
  209. package/build/ts/surfaces/admin/components/Text/Text.doc.d.ts.map +1 -0
  210. package/build/ts/surfaces/admin/components/TextArea/TextArea.d.ts +15 -0
  211. package/build/ts/surfaces/admin/components/TextArea/TextArea.d.ts.map +1 -0
  212. package/build/ts/surfaces/admin/components/TextArea/TextArea.doc.d.ts +4 -0
  213. package/build/ts/surfaces/admin/components/TextArea/TextArea.doc.d.ts.map +1 -0
  214. package/build/ts/surfaces/admin/components/TextField/TextField.d.ts +9 -0
  215. package/build/ts/surfaces/admin/components/TextField/TextField.d.ts.map +1 -0
  216. package/build/ts/surfaces/admin/components/TextField/TextField.doc.d.ts +4 -0
  217. package/build/ts/surfaces/admin/components/TextField/TextField.doc.d.ts.map +1 -0
  218. package/build/ts/surfaces/admin/components/URLField/URLField.d.ts +10 -0
  219. package/build/ts/surfaces/admin/components/URLField/URLField.d.ts.map +1 -0
  220. package/build/ts/surfaces/admin/components/URLField/URLField.doc.d.ts +4 -0
  221. package/build/ts/surfaces/admin/components/URLField/URLField.doc.d.ts.map +1 -0
  222. package/build/ts/surfaces/admin/components/shared/index.d.ts +443 -0
  223. package/build/ts/surfaces/admin/components/shared/index.d.ts.map +1 -0
  224. package/build/ts/surfaces/admin/components.d.ts +47 -0
  225. package/build/ts/surfaces/admin/components.d.ts.map +1 -0
  226. package/build/ts/surfaces/admin/extension-points.d.ts +64 -0
  227. package/build/ts/surfaces/admin/extension-points.d.ts.map +1 -0
  228. package/build/ts/surfaces/admin/extension.d.ts +5 -0
  229. package/build/ts/surfaces/admin/extension.d.ts.map +1 -0
  230. package/build/ts/surfaces/admin/globals.d.ts +5 -0
  231. package/build/ts/surfaces/admin/globals.d.ts.map +1 -0
  232. package/build/ts/surfaces/admin/shared.d.ts +6 -0
  233. package/build/ts/surfaces/admin/shared.d.ts.map +1 -0
  234. package/build/ts/surfaces/admin.d.ts +7 -0
  235. package/build/ts/surfaces/admin.d.ts.map +1 -0
  236. package/build/ts/surfaces/checkout/api/cart-line/cart-line-details.d.ts +9 -0
  237. package/build/ts/surfaces/checkout/api/cart-line/cart-line-details.d.ts.map +1 -0
  238. package/build/ts/surfaces/checkout/api/checkout/checkout.d.ts +367 -0
  239. package/build/ts/surfaces/checkout/api/checkout/checkout.d.ts.map +1 -0
  240. package/build/ts/surfaces/checkout/api/order-status/order-status.d.ts +27 -0
  241. package/build/ts/surfaces/checkout/api/order-status/order-status.d.ts.map +1 -0
  242. package/build/ts/surfaces/checkout/api/payment-method/render.d.ts +44 -0
  243. package/build/ts/surfaces/checkout/api/payment-method/render.d.ts.map +1 -0
  244. package/build/ts/surfaces/checkout/api/pickup/pickup-locations.d.ts +8 -0
  245. package/build/ts/surfaces/checkout/api/pickup/pickup-locations.d.ts.map +1 -0
  246. package/build/ts/surfaces/checkout/api/pickup/pickup-points.d.ts +8 -0
  247. package/build/ts/surfaces/checkout/api/pickup/pickup-points.d.ts.map +1 -0
  248. package/build/ts/surfaces/checkout/api/redeemable/render.d.ts +44 -0
  249. package/build/ts/surfaces/checkout/api/redeemable/render.d.ts.map +1 -0
  250. package/build/ts/surfaces/checkout/api/shared.d.ts +46 -0
  251. package/build/ts/surfaces/checkout/api/shared.d.ts.map +1 -1
  252. package/build/ts/surfaces/checkout/api/shipping/shipping-method-details.d.ts +13 -0
  253. package/build/ts/surfaces/checkout/api/shipping/shipping-method-details.d.ts.map +1 -0
  254. package/build/ts/surfaces/checkout/api/standard/standard.d.ts +562 -406
  255. package/build/ts/surfaces/checkout/api/standard/standard.d.ts.map +1 -1
  256. package/build/ts/surfaces/checkout/api.d.ts +10 -3
  257. package/build/ts/surfaces/checkout/api.d.ts.map +1 -1
  258. package/build/ts/surfaces/checkout/components/Banner/Banner.d.ts +2 -2
  259. package/build/ts/surfaces/checkout/components/Banner/Banner.d.ts.map +1 -1
  260. package/build/ts/surfaces/checkout/components/Banner/Banner.doc.d.ts +4 -0
  261. package/build/ts/surfaces/checkout/components/Banner/Banner.doc.d.ts.map +1 -0
  262. package/build/ts/surfaces/checkout/components/BlockLayout/BlockLayout.doc.d.ts +4 -0
  263. package/build/ts/surfaces/checkout/components/BlockLayout/BlockLayout.doc.d.ts.map +1 -0
  264. package/build/ts/surfaces/checkout/components/BlockSpacer/BlockSpacer.d.ts +2 -2
  265. package/build/ts/surfaces/checkout/components/BlockSpacer/BlockSpacer.d.ts.map +1 -1
  266. package/build/ts/surfaces/checkout/components/BlockSpacer/BlockSpacer.doc.d.ts +4 -0
  267. package/build/ts/surfaces/checkout/components/BlockSpacer/BlockSpacer.doc.d.ts.map +1 -0
  268. package/build/ts/surfaces/checkout/components/BlockStack/BlockStack.d.ts +20 -4
  269. package/build/ts/surfaces/checkout/components/BlockStack/BlockStack.d.ts.map +1 -1
  270. package/build/ts/surfaces/checkout/components/BlockStack/BlockStack.doc.d.ts +4 -0
  271. package/build/ts/surfaces/checkout/components/BlockStack/BlockStack.doc.d.ts.map +1 -0
  272. package/build/ts/surfaces/checkout/components/Button/Button.d.ts +3 -4
  273. package/build/ts/surfaces/checkout/components/Button/Button.d.ts.map +1 -1
  274. package/build/ts/surfaces/checkout/components/Button/Button.doc.d.ts +4 -0
  275. package/build/ts/surfaces/checkout/components/Button/Button.doc.d.ts.map +1 -0
  276. package/build/ts/surfaces/checkout/components/Checkbox/Checkbox.d.ts +5 -9
  277. package/build/ts/surfaces/checkout/components/Checkbox/Checkbox.d.ts.map +1 -1
  278. package/build/ts/surfaces/checkout/components/Checkbox/Checkbox.doc.d.ts +4 -0
  279. package/build/ts/surfaces/checkout/components/Checkbox/Checkbox.doc.d.ts.map +1 -0
  280. package/build/ts/surfaces/checkout/components/Choice/Choice.d.ts +2 -4
  281. package/build/ts/surfaces/checkout/components/Choice/Choice.d.ts.map +1 -1
  282. package/build/ts/surfaces/checkout/components/Choice/Choice.doc.d.ts +4 -0
  283. package/build/ts/surfaces/checkout/components/Choice/Choice.doc.d.ts.map +1 -0
  284. package/build/ts/surfaces/checkout/components/ChoiceList/ChoiceList.doc.d.ts +4 -0
  285. package/build/ts/surfaces/checkout/components/ChoiceList/ChoiceList.doc.d.ts.map +1 -0
  286. package/build/ts/surfaces/checkout/components/DateField/DateField.d.ts +32 -0
  287. package/build/ts/surfaces/checkout/components/DateField/DateField.d.ts.map +1 -0
  288. package/build/ts/surfaces/checkout/components/DateField/DateField.doc.d.ts +4 -0
  289. package/build/ts/surfaces/checkout/components/DateField/DateField.doc.d.ts.map +1 -0
  290. package/build/ts/surfaces/checkout/components/DatePicker/DatePicker.d.ts +81 -0
  291. package/build/ts/surfaces/checkout/components/DatePicker/DatePicker.d.ts.map +1 -0
  292. package/build/ts/surfaces/checkout/components/DatePicker/DatePicker.doc.d.ts +4 -0
  293. package/build/ts/surfaces/checkout/components/DatePicker/DatePicker.doc.d.ts.map +1 -0
  294. package/build/ts/surfaces/checkout/components/Disclosure/Disclosure.d.ts +45 -0
  295. package/build/ts/surfaces/checkout/components/Disclosure/Disclosure.d.ts.map +1 -0
  296. package/build/ts/surfaces/checkout/components/Disclosure/Disclosure.doc.d.ts +4 -0
  297. package/build/ts/surfaces/checkout/components/Disclosure/Disclosure.doc.d.ts.map +1 -0
  298. package/build/ts/surfaces/checkout/components/Divider/Divider.d.ts +2 -2
  299. package/build/ts/surfaces/checkout/components/Divider/Divider.d.ts.map +1 -1
  300. package/build/ts/surfaces/checkout/components/Divider/Divider.doc.d.ts +4 -0
  301. package/build/ts/surfaces/checkout/components/Divider/Divider.doc.d.ts.map +1 -0
  302. package/build/ts/surfaces/checkout/components/Form/Form.doc.d.ts +4 -0
  303. package/build/ts/surfaces/checkout/components/Form/Form.doc.d.ts.map +1 -0
  304. package/build/ts/surfaces/checkout/components/Grid/Grid.d.ts +20 -4
  305. package/build/ts/surfaces/checkout/components/Grid/Grid.d.ts.map +1 -1
  306. package/build/ts/surfaces/checkout/components/Grid/Grid.doc.d.ts +4 -0
  307. package/build/ts/surfaces/checkout/components/Grid/Grid.doc.d.ts.map +1 -0
  308. package/build/ts/surfaces/checkout/components/GridItem/GridItem.d.ts +20 -4
  309. package/build/ts/surfaces/checkout/components/GridItem/GridItem.d.ts.map +1 -1
  310. package/build/ts/surfaces/checkout/components/GridItem/GridItem.doc.d.ts +4 -0
  311. package/build/ts/surfaces/checkout/components/GridItem/GridItem.doc.d.ts.map +1 -0
  312. package/build/ts/surfaces/checkout/components/Heading/Heading.doc.d.ts +4 -0
  313. package/build/ts/surfaces/checkout/components/Heading/Heading.doc.d.ts.map +1 -0
  314. package/build/ts/surfaces/checkout/components/HeadingGroup/HeadingGroup.doc.d.ts +4 -0
  315. package/build/ts/surfaces/checkout/components/HeadingGroup/HeadingGroup.doc.d.ts.map +1 -0
  316. package/build/ts/surfaces/checkout/components/Icon/Icon.d.ts +7 -3
  317. package/build/ts/surfaces/checkout/components/Icon/Icon.d.ts.map +1 -1
  318. package/build/ts/surfaces/checkout/components/Icon/Icon.doc.d.ts +4 -0
  319. package/build/ts/surfaces/checkout/components/Icon/Icon.doc.d.ts.map +1 -0
  320. package/build/ts/surfaces/checkout/components/Image/Image.d.ts +2 -3
  321. package/build/ts/surfaces/checkout/components/Image/Image.d.ts.map +1 -1
  322. package/build/ts/surfaces/checkout/components/Image/Image.doc.d.ts +4 -0
  323. package/build/ts/surfaces/checkout/components/Image/Image.doc.d.ts.map +1 -0
  324. package/build/ts/surfaces/checkout/components/InlineLayout/InlineLayout.d.ts +2 -2
  325. package/build/ts/surfaces/checkout/components/InlineLayout/InlineLayout.d.ts.map +1 -1
  326. package/build/ts/surfaces/checkout/components/InlineLayout/InlineLayout.doc.d.ts +4 -0
  327. package/build/ts/surfaces/checkout/components/InlineLayout/InlineLayout.doc.d.ts.map +1 -0
  328. package/build/ts/surfaces/checkout/components/InlineSpacer/InlineSpacer.d.ts +2 -2
  329. package/build/ts/surfaces/checkout/components/InlineSpacer/InlineSpacer.d.ts.map +1 -1
  330. package/build/ts/surfaces/checkout/components/InlineSpacer/InlineSpacer.doc.d.ts +4 -0
  331. package/build/ts/surfaces/checkout/components/InlineSpacer/InlineSpacer.doc.d.ts.map +1 -0
  332. package/build/ts/surfaces/checkout/components/InlineStack/InlineStack.d.ts +23 -3
  333. package/build/ts/surfaces/checkout/components/InlineStack/InlineStack.d.ts.map +1 -1
  334. package/build/ts/surfaces/checkout/components/InlineStack/InlineStack.doc.d.ts +4 -0
  335. package/build/ts/surfaces/checkout/components/InlineStack/InlineStack.doc.d.ts.map +1 -0
  336. package/build/ts/surfaces/checkout/components/Link/Link.d.ts +3 -4
  337. package/build/ts/surfaces/checkout/components/Link/Link.d.ts.map +1 -1
  338. package/build/ts/surfaces/checkout/components/Link/Link.doc.d.ts +4 -0
  339. package/build/ts/surfaces/checkout/components/Link/Link.doc.d.ts.map +1 -0
  340. package/build/ts/surfaces/checkout/components/List/List.d.ts +2 -2
  341. package/build/ts/surfaces/checkout/components/List/List.d.ts.map +1 -1
  342. package/build/ts/surfaces/checkout/components/List/List.doc.d.ts +4 -0
  343. package/build/ts/surfaces/checkout/components/List/List.doc.d.ts.map +1 -0
  344. package/build/ts/surfaces/checkout/components/ListItem/ListItem.d.ts +2 -1
  345. package/build/ts/surfaces/checkout/components/ListItem/ListItem.d.ts.map +1 -1
  346. package/build/ts/surfaces/checkout/components/ListItem/ListItem.doc.d.ts +4 -0
  347. package/build/ts/surfaces/checkout/components/ListItem/ListItem.doc.d.ts.map +1 -0
  348. package/build/ts/surfaces/checkout/components/Modal/Modal.d.ts +44 -0
  349. package/build/ts/surfaces/checkout/components/Modal/Modal.d.ts.map +1 -0
  350. package/build/ts/surfaces/checkout/components/Modal/Modal.doc.d.ts +4 -0
  351. package/build/ts/surfaces/checkout/components/Modal/Modal.doc.d.ts.map +1 -0
  352. package/build/ts/surfaces/checkout/components/PhoneField/PhoneField.d.ts +87 -2
  353. package/build/ts/surfaces/checkout/components/PhoneField/PhoneField.d.ts.map +1 -1
  354. package/build/ts/surfaces/checkout/components/PhoneField/PhoneField.doc.d.ts +4 -0
  355. package/build/ts/surfaces/checkout/components/PhoneField/PhoneField.doc.d.ts.map +1 -0
  356. package/build/ts/surfaces/checkout/components/Popover/Popover.d.ts +36 -0
  357. package/build/ts/surfaces/checkout/components/Popover/Popover.d.ts.map +1 -0
  358. package/build/ts/surfaces/checkout/components/Popover/Popover.doc.d.ts +4 -0
  359. package/build/ts/surfaces/checkout/components/Popover/Popover.doc.d.ts.map +1 -0
  360. package/build/ts/surfaces/checkout/components/Pressable/Pressable.d.ts +20 -3
  361. package/build/ts/surfaces/checkout/components/Pressable/Pressable.d.ts.map +1 -1
  362. package/build/ts/surfaces/checkout/components/Pressable/Pressable.doc.d.ts +4 -0
  363. package/build/ts/surfaces/checkout/components/Pressable/Pressable.doc.d.ts.map +1 -0
  364. package/build/ts/surfaces/checkout/components/ScrollView/ScrollView.d.ts +7 -4
  365. package/build/ts/surfaces/checkout/components/ScrollView/ScrollView.d.ts.map +1 -1
  366. package/build/ts/surfaces/checkout/components/ScrollView/ScrollView.doc.d.ts +4 -0
  367. package/build/ts/surfaces/checkout/components/ScrollView/ScrollView.doc.d.ts.map +1 -0
  368. package/build/ts/surfaces/checkout/components/Select/Select.d.ts +2 -3
  369. package/build/ts/surfaces/checkout/components/Select/Select.d.ts.map +1 -1
  370. package/build/ts/surfaces/checkout/components/Select/Select.doc.d.ts +4 -0
  371. package/build/ts/surfaces/checkout/components/Select/Select.doc.d.ts.map +1 -0
  372. package/build/ts/surfaces/checkout/components/SkeletonImage/SkeletonImage.d.ts +2 -1
  373. package/build/ts/surfaces/checkout/components/SkeletonImage/SkeletonImage.d.ts.map +1 -1
  374. package/build/ts/surfaces/checkout/components/SkeletonImage/SkeletonImage.doc.d.ts +4 -0
  375. package/build/ts/surfaces/checkout/components/SkeletonImage/SkeletonImage.doc.d.ts.map +1 -0
  376. package/build/ts/surfaces/checkout/components/SkeletonText/SkeletonText.d.ts +7 -3
  377. package/build/ts/surfaces/checkout/components/SkeletonText/SkeletonText.d.ts.map +1 -1
  378. package/build/ts/surfaces/checkout/components/SkeletonText/SkeletonText.doc.d.ts +4 -0
  379. package/build/ts/surfaces/checkout/components/SkeletonText/SkeletonText.doc.d.ts.map +1 -0
  380. package/build/ts/surfaces/checkout/components/SkeletonTextBlock/SkeletonTextBlock.d.ts +7 -2
  381. package/build/ts/surfaces/checkout/components/SkeletonTextBlock/SkeletonTextBlock.d.ts.map +1 -1
  382. package/build/ts/surfaces/checkout/components/SkeletonTextBlock/SkeletonTextBlock.doc.d.ts +4 -0
  383. package/build/ts/surfaces/checkout/components/SkeletonTextBlock/SkeletonTextBlock.doc.d.ts.map +1 -0
  384. package/build/ts/surfaces/checkout/components/Spinner/Spinner.d.ts +2 -2
  385. package/build/ts/surfaces/checkout/components/Spinner/Spinner.d.ts.map +1 -1
  386. package/build/ts/surfaces/checkout/components/Spinner/Spinner.doc.d.ts +4 -0
  387. package/build/ts/surfaces/checkout/components/Spinner/Spinner.doc.d.ts.map +1 -0
  388. package/build/ts/surfaces/checkout/components/Stepper/Stepper.d.ts +98 -3
  389. package/build/ts/surfaces/checkout/components/Stepper/Stepper.d.ts.map +1 -1
  390. package/build/ts/surfaces/checkout/components/Stepper/Stepper.doc.d.ts +4 -0
  391. package/build/ts/surfaces/checkout/components/Stepper/Stepper.doc.d.ts.map +1 -0
  392. package/build/ts/surfaces/checkout/components/Tag/Tag.d.ts +5 -7
  393. package/build/ts/surfaces/checkout/components/Tag/Tag.d.ts.map +1 -1
  394. package/build/ts/surfaces/checkout/components/Tag/Tag.doc.d.ts +4 -0
  395. package/build/ts/surfaces/checkout/components/Tag/Tag.doc.d.ts.map +1 -0
  396. package/build/ts/surfaces/checkout/components/Text/Text.d.ts +2 -2
  397. package/build/ts/surfaces/checkout/components/Text/Text.d.ts.map +1 -1
  398. package/build/ts/surfaces/checkout/components/Text/Text.doc.d.ts +4 -0
  399. package/build/ts/surfaces/checkout/components/Text/Text.doc.d.ts.map +1 -0
  400. package/build/ts/surfaces/checkout/components/TextBlock/TextBlock.d.ts +3 -7
  401. package/build/ts/surfaces/checkout/components/TextBlock/TextBlock.d.ts.map +1 -1
  402. package/build/ts/surfaces/checkout/components/TextBlock/TextBlock.doc.d.ts +4 -0
  403. package/build/ts/surfaces/checkout/components/TextBlock/TextBlock.doc.d.ts.map +1 -0
  404. package/build/ts/surfaces/checkout/components/TextField/TextField.d.ts +2 -2
  405. package/build/ts/surfaces/checkout/components/TextField/TextField.d.ts.map +1 -1
  406. package/build/ts/surfaces/checkout/components/TextField/TextField.doc.d.ts +4 -0
  407. package/build/ts/surfaces/checkout/components/TextField/TextField.doc.d.ts.map +1 -0
  408. package/build/ts/surfaces/checkout/components/Tooltip/Tooltip.d.ts +2 -1
  409. package/build/ts/surfaces/checkout/components/Tooltip/Tooltip.d.ts.map +1 -1
  410. package/build/ts/surfaces/checkout/components/Tooltip/Tooltip.doc.d.ts +4 -0
  411. package/build/ts/surfaces/checkout/components/Tooltip/Tooltip.doc.d.ts.map +1 -0
  412. package/build/ts/surfaces/checkout/components/View/View.d.ts +16 -16
  413. package/build/ts/surfaces/checkout/components/View/View.d.ts.map +1 -1
  414. package/build/ts/surfaces/checkout/components/View/View.doc.d.ts +4 -0
  415. package/build/ts/surfaces/checkout/components/View/View.doc.d.ts.map +1 -0
  416. package/build/ts/surfaces/checkout/components/shared.d.ts +57 -18
  417. package/build/ts/surfaces/checkout/components/shared.d.ts.map +1 -1
  418. package/build/ts/surfaces/checkout/components.d.ts +13 -3
  419. package/build/ts/surfaces/checkout/components.d.ts.map +1 -1
  420. package/build/ts/surfaces/checkout/extension-points.d.ts +136 -26
  421. package/build/ts/surfaces/checkout/extension-points.d.ts.map +1 -1
  422. package/build/ts/surfaces/checkout/extension.d.ts +35 -3
  423. package/build/ts/surfaces/checkout/extension.d.ts.map +1 -1
  424. package/build/ts/surfaces/checkout/globals.d.ts +1 -1
  425. package/build/ts/surfaces/checkout/globals.d.ts.map +1 -1
  426. package/build/ts/surfaces/checkout/helper.docs.d.ts +16 -0
  427. package/build/ts/surfaces/checkout/helper.docs.d.ts.map +1 -0
  428. package/build/ts/surfaces/checkout/shared.d.ts +3 -5
  429. package/build/ts/surfaces/checkout/shared.d.ts.map +1 -1
  430. package/build/ts/surfaces/checkout/style/index.d.ts +3 -0
  431. package/build/ts/surfaces/checkout/style/index.d.ts.map +1 -0
  432. package/build/ts/surfaces/checkout/style/memoize.d.ts.map +1 -1
  433. package/build/ts/surfaces/checkout/style/style.d.ts +4 -0
  434. package/build/ts/surfaces/checkout/style/style.d.ts.map +1 -1
  435. package/build/ts/surfaces/checkout/style/style.doc.d.ts +4 -0
  436. package/build/ts/surfaces/checkout/style/style.doc.d.ts.map +1 -0
  437. package/build/ts/surfaces/checkout/style/types.d.ts +5 -0
  438. package/build/ts/surfaces/checkout/style/types.d.ts.map +1 -1
  439. package/build/ts/utilities/registration.d.ts +5 -1
  440. package/build/ts/utilities/registration.d.ts.map +1 -1
  441. package/build/tsconfig.tsbuildinfo +1 -1
  442. package/package.json +21 -4
  443. package/src/api.ts +73 -0
  444. package/src/extension.ts +30 -1
  445. package/src/index.ts +0 -1
  446. package/src/shared.ts +13 -0
  447. package/src/surfaces/admin/api/action/action.doc.ts +19 -0
  448. package/src/surfaces/admin/api/action/action.ts +14 -0
  449. package/src/surfaces/admin/api/customer-segmentation-template/customer-segmentation-template.ts +19 -0
  450. package/src/surfaces/admin/api/extension-targets/extension-targets.doc.ts +20 -0
  451. package/src/surfaces/admin/api/standard/README.md +1 -0
  452. package/src/surfaces/admin/api/standard/standard.doc.ts +20 -0
  453. package/src/surfaces/admin/api/standard/standard.ts +14 -0
  454. package/src/surfaces/admin/api.ts +4 -0
  455. package/src/surfaces/admin/components/AdminAction/AdminAction.doc.ts +41 -0
  456. package/src/surfaces/admin/components/AdminAction/AdminAction.ts +28 -0
  457. package/src/surfaces/admin/components/AdminAction/examples/basic-adminaction.example.ts +16 -0
  458. package/src/surfaces/admin/components/AdminBlock/AdminBlock.doc.ts +41 -0
  459. package/src/surfaces/admin/components/AdminBlock/AdminBlock.ts +19 -0
  460. package/src/surfaces/admin/components/AdminBlock/examples/basic-adminblock.example.ts +11 -0
  461. package/src/surfaces/admin/components/BlockStack/BlockStack.doc.ts +42 -0
  462. package/src/surfaces/admin/components/BlockStack/BlockStack.ts +27 -0
  463. package/src/surfaces/admin/components/BlockStack/examples/basic-blockstack.example.ts +24 -0
  464. package/src/surfaces/admin/components/Box/Box.doc.ts +42 -0
  465. package/src/surfaces/admin/components/Box/Box.ts +13 -0
  466. package/src/surfaces/admin/components/Box/examples/basic-box.example.ts +11 -0
  467. package/src/surfaces/admin/components/Button/Button.doc.ts +41 -0
  468. package/src/surfaces/admin/components/Button/Button.ts +99 -0
  469. package/src/surfaces/admin/components/Button/README.md +3 -0
  470. package/src/surfaces/admin/components/Button/examples/basic-button.example.ts +11 -0
  471. package/src/surfaces/admin/components/Checkbox/Checkbox.doc.ts +42 -0
  472. package/src/surfaces/admin/components/Checkbox/Checkbox.ts +63 -0
  473. package/src/surfaces/admin/components/Checkbox/examples/basic-checkbox.example.ts +11 -0
  474. package/src/surfaces/admin/components/CustomerSegmentationTemplate/CustomerSegmentationTemplate.ts +68 -0
  475. package/src/surfaces/admin/components/CustomerSegmentationTemplate/examples/CustomerSegmentationTemplate.example.ts +37 -0
  476. package/src/surfaces/admin/components/Divider/Divider.doc.ts +42 -0
  477. package/src/surfaces/admin/components/Divider/Divider.ts +14 -0
  478. package/src/surfaces/admin/components/Divider/README.md +7 -0
  479. package/src/surfaces/admin/components/Divider/examples/basic-divider.example.ts +17 -0
  480. package/src/surfaces/admin/components/EmailField/EmailField.doc.ts +41 -0
  481. package/src/surfaces/admin/components/EmailField/EmailField.ts +22 -0
  482. package/src/surfaces/admin/components/EmailField/README.md +7 -0
  483. package/src/surfaces/admin/components/EmailField/examples/basic-emailfield.example.ts +9 -0
  484. package/src/surfaces/admin/components/Form/Form.doc.ts +41 -0
  485. package/src/surfaces/admin/components/Form/Form.ts +32 -0
  486. package/src/surfaces/admin/components/Form/examples/basic-form.example.ts +41 -0
  487. package/src/surfaces/admin/components/Heading/Heading.doc.ts +42 -0
  488. package/src/surfaces/admin/components/Heading/Heading.ts +15 -0
  489. package/src/surfaces/admin/components/Heading/README.md +9 -0
  490. package/src/surfaces/admin/components/Heading/examples/basic-heading.example.ts +7 -0
  491. package/src/surfaces/admin/components/HeadingGroup/HeadingGroup.doc.ts +42 -0
  492. package/src/surfaces/admin/components/HeadingGroup/HeadingGroup.ts +8 -0
  493. package/src/surfaces/admin/components/HeadingGroup/README.md +5 -0
  494. package/src/surfaces/admin/components/HeadingGroup/examples/basic-headinggroup.example.ts +20 -0
  495. package/src/surfaces/admin/components/Icon/Icon.doc.ts +42 -0
  496. package/src/surfaces/admin/components/Icon/Icon.ts +42 -0
  497. package/src/surfaces/admin/components/Icon/README.md +3 -0
  498. package/src/surfaces/admin/components/Icon/examples/basic-icon.example.ts +7 -0
  499. package/src/surfaces/admin/components/Image/Image.doc.ts +41 -0
  500. package/src/surfaces/admin/components/Image/Image.ts +120 -0
  501. package/src/surfaces/admin/components/Image/README.md +20 -0
  502. package/src/surfaces/admin/components/Image/examples/basic-image.example.ts +10 -0
  503. package/src/surfaces/admin/components/InlineStack/InlineStack.doc.ts +41 -0
  504. package/src/surfaces/admin/components/InlineStack/InlineStack.ts +28 -0
  505. package/src/surfaces/admin/components/InlineStack/examples/basic-inlinestack.example.ts +18 -0
  506. package/src/surfaces/admin/components/Link/Link.doc.ts +103 -0
  507. package/src/surfaces/admin/components/Link/Link.ts +63 -0
  508. package/src/surfaces/admin/components/Link/README.md +11 -0
  509. package/src/surfaces/admin/components/Link/examples/app-link.example.ts +17 -0
  510. package/src/surfaces/admin/components/Link/examples/external-link.example.ts +17 -0
  511. package/src/surfaces/admin/components/Link/examples/relative-link.example.ts +17 -0
  512. package/src/surfaces/admin/components/Link/examples/shopify-section-link.example.ts +17 -0
  513. package/src/surfaces/admin/components/NumberField/NumberField.doc.ts +42 -0
  514. package/src/surfaces/admin/components/NumberField/NumberField.ts +59 -0
  515. package/src/surfaces/admin/components/NumberField/README.md +7 -0
  516. package/src/surfaces/admin/components/NumberField/examples/basic-numberfield.example.ts +9 -0
  517. package/src/surfaces/admin/components/PasswordField/PasswordField.doc.ts +42 -0
  518. package/src/surfaces/admin/components/PasswordField/PasswordField.ts +22 -0
  519. package/src/surfaces/admin/components/PasswordField/README.md +7 -0
  520. package/src/surfaces/admin/components/PasswordField/examples/basic-passwordfield.example.ts +13 -0
  521. package/src/surfaces/admin/components/Select/README.md +99 -0
  522. package/src/surfaces/admin/components/Select/Select.doc.ts +42 -0
  523. package/src/surfaces/admin/components/Select/Select.ts +147 -0
  524. package/src/surfaces/admin/components/Select/examples/basic-select.example.ts +47 -0
  525. package/src/surfaces/admin/components/Text/README.md +7 -0
  526. package/src/surfaces/admin/components/Text/Text.doc.ts +42 -0
  527. package/src/surfaces/admin/components/Text/Text.ts +124 -0
  528. package/src/surfaces/admin/components/Text/examples/basic-text.example.ts +14 -0
  529. package/src/surfaces/admin/components/TextArea/TextArea.doc.ts +42 -0
  530. package/src/surfaces/admin/components/TextArea/TextArea.ts +24 -0
  531. package/src/surfaces/admin/components/TextArea/examples/basic-textarea.example.ts +10 -0
  532. package/src/surfaces/admin/components/TextField/README.md +7 -0
  533. package/src/surfaces/admin/components/TextField/TextField.doc.ts +42 -0
  534. package/src/surfaces/admin/components/TextField/TextField.ts +16 -0
  535. package/src/surfaces/admin/components/TextField/examples/basic-textfield.example.ts +9 -0
  536. package/src/surfaces/admin/components/URLField/README.md +7 -0
  537. package/src/surfaces/admin/components/URLField/URLField.doc.ts +41 -0
  538. package/src/surfaces/admin/components/URLField/URLField.ts +26 -0
  539. package/src/surfaces/admin/components/URLField/examples/basic-urlfield.example.ts +9 -0
  540. package/src/surfaces/admin/components/shared/index.ts +664 -0
  541. package/src/surfaces/admin/components.ts +52 -0
  542. package/src/surfaces/admin/extension-points.ts +143 -0
  543. package/src/surfaces/admin/extension.ts +8 -0
  544. package/src/surfaces/admin/globals.ts +8 -0
  545. package/src/surfaces/admin/shared.ts +6 -0
  546. package/src/surfaces/admin.ts +6 -0
  547. package/src/surfaces/checkout/api/{cart-line-details/render-after.ts → cart-line/cart-line-details.ts} +2 -3
  548. package/src/surfaces/checkout/api/checkout/checkout.ts +454 -0
  549. package/src/surfaces/checkout/api/order-status/order-status.ts +28 -0
  550. package/src/surfaces/checkout/api/payment-method/render.ts +55 -0
  551. package/src/surfaces/checkout/api/pickup/pickup-locations.ts +8 -0
  552. package/src/surfaces/checkout/api/pickup/pickup-points.ts +8 -0
  553. package/src/surfaces/checkout/api/redeemable/render.ts +55 -0
  554. package/src/surfaces/checkout/api/shared.ts +57 -0
  555. package/src/surfaces/checkout/api/shipping/shipping-method-details.ts +15 -0
  556. package/src/surfaces/checkout/api/standard/README.md +100 -1
  557. package/src/surfaces/checkout/api/standard/standard.ts +644 -483
  558. package/src/surfaces/checkout/api.ts +93 -35
  559. package/src/surfaces/checkout/components/Banner/Banner.doc.ts +57 -0
  560. package/src/surfaces/checkout/components/Banner/Banner.ts +2 -2
  561. package/src/surfaces/checkout/components/Banner/examples/basic-banner.example.ts +2 -2
  562. package/src/surfaces/checkout/components/BlockLayout/BlockLayout.doc.ts +50 -0
  563. package/src/surfaces/checkout/components/BlockLayout/examples/basic-blockLayout.example.ts +2 -2
  564. package/src/surfaces/checkout/components/BlockLayout/examples/basic-blocklayout.example.ts +16 -0
  565. package/src/surfaces/checkout/components/BlockSpacer/BlockSpacer.doc.ts +47 -0
  566. package/src/surfaces/checkout/components/BlockSpacer/BlockSpacer.ts +2 -2
  567. package/src/surfaces/checkout/components/BlockSpacer/examples/basic-blockspacer.example.ts +2 -2
  568. package/src/surfaces/checkout/components/BlockStack/BlockStack.doc.ts +60 -0
  569. package/src/surfaces/checkout/components/BlockStack/BlockStack.ts +20 -2
  570. package/src/surfaces/checkout/components/BlockStack/examples/basic-blockstack.example.ts +2 -2
  571. package/src/surfaces/checkout/components/Button/Button.doc.ts +64 -0
  572. package/src/surfaces/checkout/components/Button/Button.ts +8 -4
  573. package/src/surfaces/checkout/components/Button/examples/basic-button.example.ts +2 -2
  574. package/src/surfaces/checkout/components/Checkbox/Checkbox.doc.ts +49 -0
  575. package/src/surfaces/checkout/components/Checkbox/Checkbox.ts +5 -5
  576. package/src/surfaces/checkout/components/Checkbox/content/guidelines.md +1 -1
  577. package/src/surfaces/checkout/components/Checkbox/examples/basic-checkbox.example.ts +2 -2
  578. package/src/surfaces/checkout/components/Choice/Choice.doc.ts +57 -0
  579. package/src/surfaces/checkout/components/Choice/Choice.ts +2 -4
  580. package/src/surfaces/checkout/components/Choice/examples/basic-choice.example.ts +2 -2
  581. package/src/surfaces/checkout/components/ChoiceList/ChoiceList.doc.ts +63 -0
  582. package/src/surfaces/checkout/components/ChoiceList/content/guidelines.md +2 -2
  583. package/src/surfaces/checkout/components/ChoiceList/examples/basic-choicelist.example.ts +2 -2
  584. package/src/surfaces/checkout/components/DateField/DateField.doc.ts +49 -0
  585. package/src/surfaces/checkout/components/DateField/DateField.ts +50 -0
  586. package/src/surfaces/checkout/components/DateField/examples/basic-datefield.example.ts +9 -0
  587. package/src/surfaces/checkout/components/DatePicker/DatePicker.doc.ts +50 -0
  588. package/src/surfaces/checkout/components/DatePicker/DatePicker.ts +81 -0
  589. package/src/surfaces/checkout/components/DatePicker/examples/basic-datepicker.example.ts +9 -0
  590. package/src/surfaces/checkout/components/Disclosure/Disclosure.doc.ts +61 -0
  591. package/src/surfaces/checkout/components/Disclosure/Disclosure.ts +46 -0
  592. package/src/surfaces/checkout/components/Disclosure/examples/basic-disclosure.example.ts +19 -0
  593. package/src/surfaces/checkout/components/Divider/Divider.doc.ts +41 -0
  594. package/src/surfaces/checkout/components/Divider/Divider.ts +2 -2
  595. package/src/surfaces/checkout/components/Divider/examples/basic-divider.example.ts +2 -2
  596. package/src/surfaces/checkout/components/Form/Form.doc.ts +50 -0
  597. package/src/surfaces/checkout/components/Form/examples/basic-form.example.ts +2 -2
  598. package/src/surfaces/checkout/components/Grid/Grid.doc.ts +57 -0
  599. package/src/surfaces/checkout/components/Grid/Grid.ts +24 -3
  600. package/src/surfaces/checkout/components/Grid/examples/basic-grid.example.ts +2 -2
  601. package/src/surfaces/checkout/components/GridItem/GridItem.doc.ts +57 -0
  602. package/src/surfaces/checkout/components/GridItem/GridItem.ts +24 -3
  603. package/src/surfaces/checkout/components/GridItem/examples/basic-griditem.example.ts +2 -2
  604. package/src/surfaces/checkout/components/Heading/Heading.doc.ts +69 -0
  605. package/src/surfaces/checkout/components/Heading/examples/basic-heading.example.ts +2 -2
  606. package/src/surfaces/checkout/components/HeadingGroup/HeadingGroup.doc.ts +63 -0
  607. package/src/surfaces/checkout/components/HeadingGroup/examples/basic-headinggroup.example.ts +2 -2
  608. package/src/surfaces/checkout/components/Icon/Icon.doc.ts +57 -0
  609. package/src/surfaces/checkout/components/Icon/Icon.ts +23 -11
  610. package/src/surfaces/checkout/components/Icon/examples/basic-icon.example.ts +2 -2
  611. package/src/surfaces/checkout/components/Image/Image.doc.ts +49 -0
  612. package/src/surfaces/checkout/components/Image/Image.ts +8 -3
  613. package/src/surfaces/checkout/components/Image/examples/basic-image.example.ts +2 -2
  614. package/src/surfaces/checkout/components/InlineLayout/InlineLayout.doc.ts +61 -0
  615. package/src/surfaces/checkout/components/InlineLayout/InlineLayout.ts +8 -1
  616. package/src/surfaces/checkout/components/InlineLayout/examples/basic-inlineLayout.example.ts +2 -2
  617. package/src/surfaces/checkout/components/InlineLayout/examples/basic-inlinelayout.example.ts +16 -0
  618. package/src/surfaces/checkout/components/InlineSpacer/InlineSpacer.doc.ts +41 -0
  619. package/src/surfaces/checkout/components/InlineSpacer/InlineSpacer.ts +2 -2
  620. package/src/surfaces/checkout/components/InlineSpacer/examples/basic-inlinespacer.example.ts +2 -2
  621. package/src/surfaces/checkout/components/InlineStack/InlineStack.doc.ts +50 -0
  622. package/src/surfaces/checkout/components/InlineStack/InlineStack.ts +23 -1
  623. package/src/surfaces/checkout/components/InlineStack/examples/basic-inlinestack.example.ts +2 -2
  624. package/src/surfaces/checkout/components/Link/Link.doc.ts +64 -0
  625. package/src/surfaces/checkout/components/Link/Link.ts +9 -4
  626. package/src/surfaces/checkout/components/Link/examples/basic-link.example.ts +2 -2
  627. package/src/surfaces/checkout/components/List/List.doc.ts +58 -0
  628. package/src/surfaces/checkout/components/List/List.ts +2 -2
  629. package/src/surfaces/checkout/components/List/examples/basic-list.example.ts +2 -2
  630. package/src/surfaces/checkout/components/ListItem/ListItem.doc.ts +42 -0
  631. package/src/surfaces/checkout/components/ListItem/ListItem.ts +3 -1
  632. package/src/surfaces/checkout/components/ListItem/examples/basic-listitem.example.ts +2 -2
  633. package/src/surfaces/checkout/components/Modal/Modal.doc.ts +50 -0
  634. package/src/surfaces/checkout/components/Modal/Modal.ts +42 -0
  635. package/src/surfaces/checkout/components/Modal/examples/basic-modal.example.ts +44 -0
  636. package/src/surfaces/checkout/components/PhoneField/PhoneField.doc.ts +41 -0
  637. package/src/surfaces/checkout/components/PhoneField/PhoneField.ts +99 -23
  638. package/src/surfaces/checkout/components/PhoneField/examples/basic-phonefield.example.ts +2 -2
  639. package/src/surfaces/checkout/components/Popover/Popover.doc.ts +50 -0
  640. package/src/surfaces/checkout/components/Popover/Popover.ts +45 -0
  641. package/src/surfaces/checkout/components/Popover/examples/basic-popover.example.ts +30 -0
  642. package/src/surfaces/checkout/components/Pressable/Pressable.doc.ts +41 -0
  643. package/src/surfaces/checkout/components/Pressable/Pressable.ts +25 -2
  644. package/src/surfaces/checkout/components/Pressable/examples/basic-pressable.example.ts +4 -4
  645. package/src/surfaces/checkout/components/ScrollView/ScrollView.doc.ts +41 -0
  646. package/src/surfaces/checkout/components/ScrollView/ScrollView.ts +6 -1
  647. package/src/surfaces/checkout/components/ScrollView/examples/basic-scrollview.example.ts +2 -2
  648. package/src/surfaces/checkout/components/Select/Select.doc.ts +50 -0
  649. package/src/surfaces/checkout/components/Select/Select.ts +2 -2
  650. package/src/surfaces/checkout/components/Select/examples/basic-select.example.ts +2 -2
  651. package/src/surfaces/checkout/components/SkeletonImage/SkeletonImage.doc.ts +52 -0
  652. package/src/surfaces/checkout/components/SkeletonImage/SkeletonImage.ts +2 -3
  653. package/src/surfaces/checkout/components/SkeletonImage/examples/basic-skeletonimage.example.ts +2 -2
  654. package/src/surfaces/checkout/components/SkeletonText/SkeletonText.doc.ts +52 -0
  655. package/src/surfaces/checkout/components/SkeletonText/SkeletonText.ts +7 -3
  656. package/src/surfaces/checkout/components/SkeletonText/examples/basic-skeletontext.example.ts +2 -2
  657. package/src/surfaces/checkout/components/SkeletonTextBlock/SkeletonTextBlock.doc.ts +41 -0
  658. package/src/surfaces/checkout/components/SkeletonTextBlock/SkeletonTextBlock.ts +7 -2
  659. package/src/surfaces/checkout/components/SkeletonTextBlock/examples/basic-skeletontextblock.example.ts +2 -2
  660. package/src/surfaces/checkout/components/Spinner/Spinner.doc.ts +50 -0
  661. package/src/surfaces/checkout/components/Spinner/Spinner.ts +2 -2
  662. package/src/surfaces/checkout/components/Spinner/examples/basic-spinner.example.ts +2 -2
  663. package/src/surfaces/checkout/components/Stepper/Stepper.doc.ts +50 -0
  664. package/src/surfaces/checkout/components/Stepper/Stepper.ts +113 -21
  665. package/src/surfaces/checkout/components/Stepper/examples/basic-stepper.example.ts +2 -2
  666. package/src/surfaces/checkout/components/Tag/Tag.doc.ts +41 -0
  667. package/src/surfaces/checkout/components/Tag/Tag.ts +4 -4
  668. package/src/surfaces/checkout/components/Tag/examples/basic-tag.example.ts +2 -2
  669. package/src/surfaces/checkout/components/Text/Text.doc.ts +76 -0
  670. package/src/surfaces/checkout/components/Text/Text.ts +2 -4
  671. package/src/surfaces/checkout/components/Text/content/guidelines.md +1 -1
  672. package/src/surfaces/checkout/components/Text/examples/basic-text.example.ts +2 -2
  673. package/src/surfaces/checkout/components/TextBlock/TextBlock.doc.ts +76 -0
  674. package/src/surfaces/checkout/components/TextBlock/TextBlock.ts +9 -9
  675. package/src/surfaces/checkout/components/TextBlock/content/guidelines.md +1 -1
  676. package/src/surfaces/checkout/components/TextBlock/examples/basic-textblock.example.ts +6 -2
  677. package/src/surfaces/checkout/components/TextField/TextField.doc.ts +49 -0
  678. package/src/surfaces/checkout/components/TextField/TextField.ts +2 -2
  679. package/src/surfaces/checkout/components/TextField/examples/basic-textfield.example.ts +2 -2
  680. package/src/surfaces/checkout/components/Tooltip/Tooltip.doc.ts +50 -0
  681. package/src/surfaces/checkout/components/Tooltip/Tooltip.ts +3 -1
  682. package/src/surfaces/checkout/components/Tooltip/examples/basic-tooltip.example.ts +2 -2
  683. package/src/surfaces/checkout/components/View/View.doc.ts +50 -0
  684. package/src/surfaces/checkout/components/View/View.ts +17 -18
  685. package/src/surfaces/checkout/components/View/examples/basic-view.example.ts +2 -2
  686. package/src/surfaces/checkout/components/shared.ts +73 -18
  687. package/src/surfaces/checkout/components.ts +41 -16
  688. package/src/surfaces/checkout/extension-points.ts +245 -52
  689. package/src/surfaces/checkout/extension.ts +62 -3
  690. package/src/surfaces/checkout/globals.ts +1 -1
  691. package/src/surfaces/checkout/helper.docs.ts +103 -0
  692. package/src/surfaces/checkout/shared.ts +3 -11
  693. package/src/surfaces/checkout/style/examples/.eslintrc.js +8 -0
  694. package/src/surfaces/checkout/style/examples/defaultstyle.example.tsx +9 -0
  695. package/src/surfaces/checkout/style/examples/simplecondition.example.tsx +9 -0
  696. package/src/surfaces/checkout/style/examples/style.example.ts +18 -0
  697. package/src/surfaces/checkout/style/examples/style.example.tsx +16 -0
  698. package/src/surfaces/checkout/style/index.ts +16 -0
  699. package/src/surfaces/checkout/style/memoize.ts +2 -0
  700. package/src/surfaces/checkout/style/style.doc.ts +166 -0
  701. package/src/surfaces/checkout/style/style.ts +5 -0
  702. package/src/surfaces/checkout/style/types.ts +5 -0
  703. package/src/utilities/registration.ts +59 -7
  704. package/build/ts/surfaces/checkout/api/cart-line-details/render-after.d.ts +0 -9
  705. package/build/ts/surfaces/checkout/api/cart-line-details/render-after.d.ts.map +0 -1
  706. package/src/surfaces/checkout/api/cart-line-details/README.md +0 -1
@@ -1,8 +1,67 @@
1
- import {createExtensionRegistrationFunction} from '../../utilities/registration';
1
+ import type {RemoteRoot, RemoteComponentType} from '@remote-ui/core';
2
2
 
3
3
  import type {ExtensionPoints} from './extension-points';
4
4
 
5
- export * from '../../extension';
6
-
5
+ /**
6
+ * Registers your UI Extension to run for the selected extension point.
7
+ *
8
+ * @param target The extension point you are registering for.
9
+ *
10
+ * @param implementation The function that will be called when Checkout begins rendering
11
+ * your extension. This function is called with the API checkout provided to your
12
+ * extension.
13
+ */
7
14
  export const extension = createExtensionRegistrationFunction<ExtensionPoints>();
15
+
16
+ /**
17
+ * Registers your UI Extension to run for the selected extension point.
18
+ *
19
+ * @param target The extension point you are registering for.
20
+ *
21
+ * @param implementation The function that will be called when Checkout begins rendering
22
+ * your extension. This function is called with the API checkout provided to your
23
+ * extension.
24
+ */
8
25
  export const extend = extension;
26
+
27
+ export interface RenderExtension<
28
+ Api,
29
+ AllowedComponents extends RemoteComponentType<
30
+ string,
31
+ any,
32
+ any
33
+ > = RemoteComponentType<any, any, any>,
34
+ > {
35
+ (
36
+ root: RemoteRoot<AllowedComponents, AllowedComponents>,
37
+ api: Api,
38
+ ): void | Promise<void>;
39
+ }
40
+
41
+ export interface ExtensionRegistrationFunction<ExtensionPoints> {
42
+ <Target extends keyof ExtensionPoints>(
43
+ target: Target,
44
+ implementation: ExtensionPoints[Target],
45
+ ): ExtensionPoints[Target];
46
+ }
47
+
48
+ /**
49
+ * This function takes an extension function that is expecting a `RemoteRoot` as its
50
+ * first argument, and returns a new function that accepts a `RemoteChannel` instead.
51
+ * This is a convenience that allows the raw UI extension API to only expose the simpler
52
+ * `RemoteChannel` type, while allowing the extension to use the more powerful `RemoteRoot`,
53
+ * provided by a version of `@remote-ui/core` that the extension controls.
54
+ */
55
+ export function createExtensionRegistrationFunction<
56
+ ExtensionPoints,
57
+ >(): ExtensionRegistrationFunction<ExtensionPoints> {
58
+ const extensionWrapper: ExtensionRegistrationFunction<ExtensionPoints> = (
59
+ target,
60
+ implementation,
61
+ ) => {
62
+ (globalThis as any).shopify?.extend(target, implementation);
63
+ return implementation;
64
+ };
65
+
66
+ return extensionWrapper;
67
+ }
@@ -10,6 +10,6 @@ export interface ShopifyGlobal {
10
10
 
11
11
  declare global {
12
12
  interface WorkerGlobalScope {
13
- readonly shopify: ShopifyGlobal;
13
+ readonly le_shopify: ShopifyGlobal;
14
14
  }
15
15
  }
@@ -0,0 +1,103 @@
1
+ import {CodeTabType, ExampleType} from '@shopify/generate-docs';
2
+
3
+ const examplePath = '../../../../../docs/surfaces/checkout/reference/examples';
4
+
5
+ type NonEmptyArray<T> = [T, ...T[]];
6
+ type ExtensionExampleLanguage = 'js' | 'jsx';
7
+ type ExtensionCodeTabConfig = {
8
+ [key in ExtensionExampleLanguage]: {
9
+ title: string;
10
+ fileExtension: 'ts' | 'tsx';
11
+ };
12
+ };
13
+ const codeExampleTabConfig: ExtensionCodeTabConfig = {
14
+ js: {
15
+ title: 'JavaScript',
16
+ fileExtension: 'ts',
17
+ },
18
+ jsx: {
19
+ title: 'React',
20
+ fileExtension: 'tsx',
21
+ },
22
+ };
23
+
24
+ /**
25
+ * Returns all examples available, specified with a key for reference.
26
+ */
27
+ export function getExamples(
28
+ languages: NonEmptyArray<ExtensionExampleLanguage>,
29
+ ): {
30
+ [key: string]: ExampleType;
31
+ } {
32
+ if (!languages || languages.length === 0) {
33
+ throw new HelperDocsError(
34
+ 'You must define at least one extension code language context you wish to retrieve the example(s) for.',
35
+ );
36
+ }
37
+ /**
38
+ * Provides the code tab for the requested languages in "JavaScript" and "React".
39
+ */
40
+ function getExtensionCodeTabs(name: string): CodeTabType[] {
41
+ return languages.map((language) => {
42
+ return {
43
+ code: `${examplePath}/${name}.example.${codeExampleTabConfig[language].fileExtension}`,
44
+ language,
45
+ title: codeExampleTabConfig[language].title,
46
+ };
47
+ });
48
+ }
49
+
50
+ // Add new examples here that can be shared across multiples pages.
51
+ return {
52
+ 'ui-components/checkbox-links': {
53
+ description:
54
+ 'To provide buyers with additional information or references, couple it with link components seamlessly within checkbox components. This can be done by including links as part of the checkbox label in the checkbox. This will provide an easy way to access relevant content that buyers may need.',
55
+ image: 'checkbox-links.png',
56
+ codeblock: {
57
+ title: 'Embedding links in checkbox components',
58
+ tabs: getExtensionCodeTabs('ui-components/checkbox-links'),
59
+ },
60
+ },
61
+ 'ui-components/disclosure-and-alignment': {
62
+ description:
63
+ 'Use the Disclosure component to simplify the user experience and reveal interfaces only when the customer requests it. It also demonstrates how a combination of inline and block layout components can improve the readability of information. By employing these strategies, users can easily scan and comprehend the content, making for a better user experience overall.',
64
+ image: 'disclosure-and-alignment.gif',
65
+ codeblock: {
66
+ title:
67
+ 'Strategies for simplifying layout and aligning content using Disclosure and Inline/Block Layout components.',
68
+ tabs: getExtensionCodeTabs('ui-components/disclosure-and-alignment'),
69
+ },
70
+ },
71
+ 'ui-components/loading-skeletons': {
72
+ description:
73
+ 'When adding content to a layout, incorporate a skeleton loader that renders the approximate size and position of the content during loading. This will provide a seamless transition from skeleton loaders to the content, and prevent any layout shift when the resulting content loads.',
74
+ image: 'loading-skeletons.gif',
75
+ codeblock: {
76
+ title:
77
+ 'Using skeleton loaders to prevent layout shifts on content load.',
78
+ tabs: getExtensionCodeTabs('ui-components/loading-skeletons'),
79
+ },
80
+ },
81
+ };
82
+ }
83
+
84
+ /**
85
+ * Returns a specific `Example` by name, as specified in `getExamples()`.
86
+ * Specify whether you want to include both `js` and `jsx`examples or just one.
87
+ */
88
+ export function getExample(
89
+ name: string,
90
+ languages: NonEmptyArray<ExtensionExampleLanguage> = ['js'],
91
+ ): ExampleType {
92
+ const example = getExamples(languages)[name];
93
+ if (!example) {
94
+ throw new HelperDocsError(
95
+ `Could not find a matching example with the name "${name}". Does it exist within the file "docs/reference/helper.docs.ts" in getExamples()?`,
96
+ );
97
+ }
98
+ return example;
99
+ }
100
+
101
+ class HelperDocsError extends Error {
102
+ name = 'HelperDocsError';
103
+ }
@@ -1,14 +1,6 @@
1
- import type {RemoteComponentType} from '@remote-ui/core';
1
+ import type {ComponentsBuilder, AnyComponentBuilder} from '../../shared';
2
2
 
3
3
  type ComponentTypes = typeof import('./components');
4
4
 
5
- export type Components = {
6
- [K in keyof ComponentTypes]: ComponentTypes[K] extends RemoteComponentType<
7
- any,
8
- any
9
- >
10
- ? ComponentTypes[K]
11
- : never;
12
- };
13
-
14
- export type AnyComponent = Components[keyof Components];
5
+ export type Components = ComponentsBuilder<ComponentTypes>;
6
+ export type AnyComponent = AnyComponentBuilder<ComponentTypes>;
@@ -0,0 +1,8 @@
1
+ // See the root .eslintrc for more overrides.
2
+ module.exports = {
3
+ rules: {
4
+ 'react/react-in-jsx-scope': 'off',
5
+ 'react/jsx-no-undef': 'off',
6
+ 'no-alert': 'off',
7
+ },
8
+ };
@@ -0,0 +1,9 @@
1
+ <Grid
2
+ columns={Style.default('fill').when({viewportInlineSize: {min: 'small'}}, [
3
+ '30%',
4
+ '70%',
5
+ ])}
6
+ >
7
+ <View>Content</View>
8
+ <View>Content</View>
9
+ </Grid>;
@@ -0,0 +1,9 @@
1
+ <Pressable
2
+ onPress={() => alert('press')}
3
+ border={Style.default(['base', 'dotted']).when(
4
+ {viewportInlineSize: {min: 'small'}},
5
+ ['base', 'dotted', 'none', 'base'],
6
+ )}
7
+ >
8
+ Content
9
+ </Pressable>;
@@ -0,0 +1,18 @@
1
+ import {Style, View, extension} from '@shopify/ui-extensions/checkout';
2
+
3
+ extension('Checkout::Dynamic::Render', (root) => {
4
+ const view = root.createComponent(
5
+ View,
6
+ {
7
+ border: 'base',
8
+ padding: 'base',
9
+ maxInlineSize: Style.default(200)
10
+ .when({viewportInlineSize: {min: 'small'}}, 300)
11
+ .when({viewportInlineSize: {min: 'medium'}}, 400)
12
+ .when({viewportInlineSize: {min: 'large'}}, 800),
13
+ },
14
+ 'Responsive Content',
15
+ );
16
+
17
+ root.appendChild(view);
18
+ });
@@ -0,0 +1,16 @@
1
+ import {Style, View} from '@shopify/checkout-ui-extensions-react';
2
+
3
+ reactExtension('Checkout::Dynamic::Render', () => <Extension />);
4
+
5
+ function Extension() {
6
+ return (
7
+ <View
8
+ maxInlineSize={Style.default(200)
9
+ .when({viewportInlineSize: {min: 'small'}}, 300)
10
+ .when({viewportInlineSize: {min: 'medium'}}, 400)
11
+ .when({viewportInlineSize: {min: 'large'}}, 800)}
12
+ >
13
+ Responsive Content
14
+ </View>
15
+ );
16
+ }
@@ -0,0 +1,16 @@
1
+ export {
2
+ Style,
3
+ isConditionalStyle,
4
+ isConditionalStyleWithDefault,
5
+ } from './style';
6
+ export type {
7
+ AtLeastOne,
8
+ Conditions,
9
+ ConditionalStyle,
10
+ ConditionalValue,
11
+ InteractiveConditions,
12
+ MaybeConditionalStyle,
13
+ MaybeResponsiveConditionalStyle,
14
+ ResolutionCondition,
15
+ ViewportSizeCondition,
16
+ } from './types';
@@ -74,6 +74,8 @@ function createLruCache(maxSize: number, equals: EqualityFn): Cache {
74
74
 
75
75
  function put(key: unknown, value: unknown) {
76
76
  if (get(key) === NOT_FOUND) {
77
+ // eslint-disable-next-line no-warning-comments
78
+ // TODO Is unshift slow?
77
79
  entries.unshift({key, value});
78
80
  if (entries.length > maxSize) {
79
81
  entries.pop();
@@ -0,0 +1,166 @@
1
+ import {ReferenceEntityTemplateSchema} from '@shopify/generate-docs';
2
+
3
+ const data: ReferenceEntityTemplateSchema = {
4
+ name: 'StyleHelper',
5
+ description:
6
+ 'This is a helper for authoring conditional values for property styles.\n\nWrite complex conditional styles based on one or more conditions, such as viewport sizes and interactive states, in a concise and expressive way.',
7
+ requires: '',
8
+ isVisualComponent: false,
9
+ type: '',
10
+ definitions: [
11
+ {
12
+ title: 'StyleHelper',
13
+ description: '',
14
+ type: 'DocsStyle',
15
+ },
16
+ ],
17
+ category: 'Components',
18
+ subCategory: 'utilities',
19
+ defaultExample: {
20
+ codeblock: {
21
+ tabs: [
22
+ {
23
+ title: 'React',
24
+ code: './examples/style.example.tsx',
25
+ language: 'tsx',
26
+ },
27
+ {
28
+ title: 'JS',
29
+ code: './examples/style.example.ts',
30
+ language: 'js',
31
+ },
32
+ ],
33
+ title: 'Import the Style helper',
34
+ },
35
+ },
36
+ examples: {
37
+ description: 'This section provides examples of conditions.',
38
+ examples: [
39
+ {
40
+ description:
41
+ 'Default styling can be combined with specific conditions. In this example, the Grid’s children will be stacked by default and side by side on viewports above the <code>small</code> breakpoint.',
42
+ codeblock: {
43
+ title: 'Default Style With Conditions',
44
+ tabs: [
45
+ {
46
+ title: 'React',
47
+ code: './examples/defaultstyle.example.tsx',
48
+ language: 'tsx',
49
+ },
50
+ ],
51
+ },
52
+ },
53
+ {
54
+ description:
55
+ 'Using simple conditional styling enables you to specify a styling change when a condition is met. In this example, the View’s padding will be <code>loose</code> on hover.',
56
+ codeblock: {
57
+ title: 'Simple Condition',
58
+ tabs: [
59
+ {
60
+ title: 'React',
61
+ code: './examples/simplecondition.example.tsx',
62
+ language: 'tsx',
63
+ },
64
+ ],
65
+ },
66
+ },
67
+ ],
68
+ },
69
+ subSections: [
70
+ {
71
+ type: 'Generic',
72
+ anchorLink: 'conditions',
73
+ title: 'Conditions',
74
+ sectionContent:
75
+ 'The following conditions are supported for conditional styles.\n\nMultiple conditions can be set on the same `when` method.\n\n \n\n| Name | Type | Description |\n| --- | --- | --- |\n| <code>"hover"</code> | <code>true</code> | This condition is met when an element is hovered on with the cursor (mouse pointer). |\n| <code>"focus"</code> | <code>true</code> | This condition is met when an element is clicked, tapped on or selected using the Tab key.|\n| <code>viewportInlineSize</code> | <code>{min: "small" &#124; "medium" &#124; "large"}</code> | This condition is met when the device matches the minimum width.|',
76
+ },
77
+ ],
78
+ related: [
79
+ {
80
+ name: 'BlockLayout',
81
+ subtitle: 'Component',
82
+ url: 'blocklayout',
83
+ type: 'Component',
84
+ },
85
+ {
86
+ name: 'BlockSpacer',
87
+ subtitle: 'Component',
88
+ url: 'blockspacer',
89
+ type: 'Component',
90
+ },
91
+ {
92
+ name: 'BlockStack',
93
+ subtitle: 'Component',
94
+ url: 'blockstack',
95
+ type: 'Component',
96
+ },
97
+ {
98
+ name: 'Grid',
99
+ subtitle: 'Component',
100
+ url: 'grid',
101
+ type: 'Component',
102
+ },
103
+ {
104
+ name: 'GridItem',
105
+ subtitle: 'Component',
106
+ url: 'griditem',
107
+ type: 'Component',
108
+ },
109
+ {
110
+ name: 'Image',
111
+ subtitle: 'Component',
112
+ url: 'image',
113
+ type: 'Component',
114
+ },
115
+ {
116
+ name: 'InlineLayout',
117
+ subtitle: 'Component',
118
+ url: 'inlinelayout',
119
+ type: 'Component',
120
+ },
121
+ {
122
+ name: 'InlineSpacer',
123
+ subtitle: 'Component',
124
+ url: 'inlinespacer',
125
+ type: 'Component',
126
+ },
127
+ {
128
+ name: 'InlineStack',
129
+ subtitle: 'Component',
130
+ url: 'inlinestack',
131
+ type: 'Component',
132
+ },
133
+ {
134
+ name: 'List',
135
+ subtitle: 'Component',
136
+ url: 'list',
137
+ type: 'Component',
138
+ },
139
+ {
140
+ name: 'Pressable',
141
+ subtitle: 'Component',
142
+ url: 'pressable',
143
+ type: 'Component',
144
+ },
145
+ {
146
+ name: 'ScrollView',
147
+ subtitle: 'Component',
148
+ url: 'scrollview',
149
+ type: 'Component',
150
+ },
151
+ {
152
+ name: 'SkeletonImage',
153
+ subtitle: 'Component',
154
+ url: 'skeletonimage',
155
+ type: 'Component',
156
+ },
157
+ {
158
+ name: 'View',
159
+ subtitle: 'Component',
160
+ url: 'view',
161
+ type: 'Component',
162
+ },
163
+ ],
164
+ };
165
+
166
+ export default data;
@@ -80,6 +80,11 @@ const when: WhenFunction = function when<
80
80
  ) as WhenReturnType<T, TContext, AcceptedConditions>;
81
81
  };
82
82
 
83
+ export interface DocsStyle {
84
+ default: <T>(defaultValue: T) => ConditionalStyle<T>;
85
+ when: <T>(conditions: Conditions, value: T) => ConditionalStyle<T>;
86
+ }
87
+
83
88
  /**
84
89
  * Style is a helper for authoring conditional values for prop styles.
85
90
  * Write complex conditional styles based on one or more conditions (viewport
@@ -56,6 +56,11 @@ export interface ConditionalStyle<
56
56
  conditionals: ConditionalValue<T, AcceptedConditions>[];
57
57
  }
58
58
 
59
+ /**
60
+ * A type that represents a value that can be a conditional style.
61
+ * We highly recommend using the Style helper which simplifies the creation of conditional styles.
62
+ * To learn more check out the [conditional styles](/api/checkout-ui-extensions/components/utilities/stylehelper) documentation.
63
+ */
59
64
  export type MaybeConditionalStyle<
60
65
  T,
61
66
  AcceptedConditions extends BaseConditions = Conditions,
@@ -1,3 +1,10 @@
1
+ import {createRemoteRoot} from '@remote-ui/core';
2
+ import type {
3
+ RenderExtensionConnection,
4
+ RenderExtension,
5
+ RenderExtensionWithRemoteRoot,
6
+ } from '../extension';
7
+
1
8
  export interface ExtensionRegistrationFunction<ExtensionPoints> {
2
9
  <Target extends keyof ExtensionPoints>(
3
10
  target: Target,
@@ -5,6 +12,18 @@ export interface ExtensionRegistrationFunction<ExtensionPoints> {
5
12
  ): ExtensionPoints[Target];
6
13
  }
7
14
 
15
+ export interface ExtensionRegistrationFunctionWithRoot<ExtensionPoints> {
16
+ <Target extends keyof ExtensionPoints>(
17
+ target: Target,
18
+ implementation: ExtensionPoints[Target] extends RenderExtension<
19
+ infer Api,
20
+ infer Components
21
+ >
22
+ ? RenderExtensionWithRemoteRoot<Api, Components>
23
+ : ExtensionPoints[Target],
24
+ ): ExtensionPoints[Target];
25
+ }
26
+
8
27
  /**
9
28
  * This function takes an extension function that is expecting a `RemoteRoot` as its
10
29
  * first argument, and returns a new function that accepts a `RemoteChannel` instead.
@@ -14,13 +33,46 @@ export interface ExtensionRegistrationFunction<ExtensionPoints> {
14
33
  */
15
34
  export function createExtensionRegistrationFunction<
16
35
  ExtensionPoints,
17
- >(): ExtensionRegistrationFunction<ExtensionPoints> {
18
- const extensionWrapper: ExtensionRegistrationFunction<ExtensionPoints> = (
19
- target,
20
- implementation,
21
- ) => {
22
- (globalThis as any).shopify?.extend(target, implementation);
23
- return implementation;
36
+ >(): ExtensionRegistrationFunctionWithRoot<ExtensionPoints> {
37
+ const extensionWrapper: ExtensionRegistrationFunctionWithRoot<
38
+ ExtensionPoints
39
+ > = (target, implementation) => {
40
+ async function extension(...args: any[]) {
41
+ // Rendering extensions have two arguments. Non-rendering extensions don’t have
42
+ // a `RemoteChannel` that needs to be normalized, so we can just pass the arguments
43
+ // through.
44
+ if (args.length === 1) {
45
+ return (implementation as any)(...args);
46
+ }
47
+
48
+ const [{channel, components}, api] = args as [
49
+ RenderExtensionConnection,
50
+ any,
51
+ ];
52
+
53
+ const root = createRemoteRoot(channel, {
54
+ components,
55
+ strict: true,
56
+ });
57
+
58
+ let renderResult = (implementation as any)(root, api);
59
+
60
+ if (
61
+ typeof renderResult === 'object' &&
62
+ renderResult != null &&
63
+ 'then' in renderResult
64
+ ) {
65
+ renderResult = await renderResult;
66
+ }
67
+
68
+ root.mount();
69
+
70
+ return renderResult;
71
+ }
72
+
73
+ (globalThis as any).shopify?.extend(target, extension);
74
+
75
+ return extension as any;
24
76
  };
25
77
 
26
78
  return extensionWrapper;
@@ -1,9 +0,0 @@
1
- import type { StatefulRemoteSubscribable } from '@remote-ui/async-subscription';
2
- import type { PresentmentCartLine, StandardApi } from '../standard/standard';
3
- export interface CartLineDetailsRenderAfterApi extends StandardApi<'Checkout::CartLineDetails::RenderAfter'> {
4
- /**
5
- * The cart line the extension is attached to.
6
- */
7
- target: StatefulRemoteSubscribable<PresentmentCartLine>;
8
- }
9
- //# sourceMappingURL=render-after.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"render-after.d.ts","sourceRoot":"","sources":["../../../../../../src/surfaces/checkout/api/cart-line-details/render-after.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAC,0BAA0B,EAAC,MAAM,+BAA+B,CAAC;AAE9E,OAAO,KAAK,EAAC,mBAAmB,EAAE,WAAW,EAAC,MAAM,sBAAsB,CAAC;AAE3E,MAAM,WAAW,6BACf,SAAQ,WAAW,CAAC,wCAAwC,CAAC;IAC7D;;OAEG;IACH,MAAM,EAAE,0BAA0B,CAAC,mBAAmB,CAAC,CAAC;CACzD"}
@@ -1 +0,0 @@
1
- # Checkout cart line details API