@vtex/faststore 0.0.1

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 (538) hide show
  1. package/CHANGELOG.md +18 -0
  2. package/LICENSE +21 -0
  3. package/README.md +95 -0
  4. package/dist/actions.json +334 -0
  5. package/dist/catalog.json +6615 -0
  6. package/dist/client.d.ts +17 -0
  7. package/dist/client.js +8 -0
  8. package/dist/components.d.ts +87 -0
  9. package/dist/components.js +87 -0
  10. package/dist/content-types.json +684 -0
  11. package/dist/core/dist/actions/mock-action.d.ts +24 -0
  12. package/dist/core/dist/actions/mock-action.js +28 -0
  13. package/dist/core/dist/actions/mock-action.js.map +1 -0
  14. package/dist/core/dist/actions/registry.d.ts +24 -0
  15. package/dist/core/dist/actions/registry.js +28 -0
  16. package/dist/core/dist/actions/registry.js.map +1 -0
  17. package/dist/core/dist/define-component.d.ts +100 -0
  18. package/dist/core/dist/define-component.js +8 -0
  19. package/dist/core/dist/define-component.js.map +1 -0
  20. package/dist/core/dist/define-content-type.d.ts +95 -0
  21. package/dist/core/dist/define-content-type.js +283 -0
  22. package/dist/core/dist/define-content-type.js.map +1 -0
  23. package/dist/core/dist/index.d.ts +7 -0
  24. package/dist/core/dist/index.js +5 -0
  25. package/dist/core/dist/schema/generated/schema.d.ts +28 -0
  26. package/dist/core/dist/types.d.ts +1 -0
  27. package/dist/docs/access-code-field.md +100 -0
  28. package/dist/docs/access-code-sign-in.md +174 -0
  29. package/dist/docs/account-entry-point.md +155 -0
  30. package/dist/docs/address-summary.md +50 -0
  31. package/dist/docs/buy-button.md +162 -0
  32. package/dist/docs/carousel.md +105 -0
  33. package/dist/docs/cart-item.md +162 -0
  34. package/dist/docs/cart-totalizer.md +197 -0
  35. package/dist/docs/cart.md +495 -0
  36. package/dist/docs/client-preferences.md +184 -0
  37. package/dist/docs/client-profile-form.md +192 -0
  38. package/dist/docs/client-profile.md +117 -0
  39. package/dist/docs/container.md +97 -0
  40. package/dist/docs/document-field.md +97 -0
  41. package/dist/docs/email-field.md +93 -0
  42. package/dist/docs/email-identification.md +102 -0
  43. package/dist/docs/footer-copyright.md +112 -0
  44. package/dist/docs/footer-link-group.md +162 -0
  45. package/dist/docs/footer-root.md +145 -0
  46. package/dist/docs/footer-social.md +151 -0
  47. package/dist/docs/free-shipping-progress.md +87 -0
  48. package/dist/docs/gallery.md +84 -0
  49. package/dist/docs/header-root.md +150 -0
  50. package/dist/docs/identity-edit.md +88 -0
  51. package/dist/docs/identity-summary.md +106 -0
  52. package/dist/docs/incentives.md +151 -0
  53. package/dist/docs/logo.md +135 -0
  54. package/dist/docs/meter.md +67 -0
  55. package/dist/docs/navigation-link-list.md +171 -0
  56. package/dist/docs/navigation-link.md +163 -0
  57. package/dist/docs/navigation-menu.md +264 -0
  58. package/dist/docs/payment-methods.md +139 -0
  59. package/dist/docs/phone-field.md +106 -0
  60. package/dist/docs/postal-code-field.md +126 -0
  61. package/dist/docs/pricing.md +499 -0
  62. package/dist/docs/product-gallery.md +409 -0
  63. package/dist/docs/product-information.md +295 -0
  64. package/dist/docs/product-list.md +170 -0
  65. package/dist/docs/product-quantity.md +88 -0
  66. package/dist/docs/product-shelf.md +141 -0
  67. package/dist/docs/promotion.md +109 -0
  68. package/dist/docs/region.md +225 -0
  69. package/dist/docs/session.md +123 -0
  70. package/dist/docs/shipping-address.md +390 -0
  71. package/dist/docs/shipping-simulator.md +147 -0
  72. package/dist/docs/sign-in-form.md +117 -0
  73. package/dist/docs/tabs.md +176 -0
  74. package/dist/docs/toast.md +124 -0
  75. package/dist/docs/variant-selector.md +450 -0
  76. package/dist/graphql/define-subgraph.d.ts +12 -0
  77. package/dist/graphql/define-subgraph.js +15 -0
  78. package/dist/graphql/define-subgraph.js.map +1 -0
  79. package/dist/graphql/gql.d.ts +10 -0
  80. package/dist/graphql/gql.js +16 -0
  81. package/dist/graphql/gql.js.map +1 -0
  82. package/dist/graphql/types.d.ts +88 -0
  83. package/dist/graphql.d.ts +4 -0
  84. package/dist/graphql.js +3 -0
  85. package/dist/index.d.ts +19 -0
  86. package/dist/index.js +5 -0
  87. package/dist/internal/client.d.ts +24 -0
  88. package/dist/internal/client.js +23 -0
  89. package/dist/internal/content.d.ts +2 -0
  90. package/dist/internal/content.js +2 -0
  91. package/dist/internal/server.d.ts +7 -0
  92. package/dist/internal/server.js +6 -0
  93. package/dist/matter/access-code-sign-in/access-code-sign-in.d.ts +111 -0
  94. package/dist/matter/access-code-sign-in/access-code-sign-in.js +387 -0
  95. package/dist/matter/access-code-sign-in/access-code-sign-in.js.map +1 -0
  96. package/dist/matter/account-entry-point/account-entry-point.d.ts +64 -0
  97. package/dist/matter/account-entry-point/account-entry-point.js +151 -0
  98. package/dist/matter/account-entry-point/account-entry-point.js.map +1 -0
  99. package/dist/matter/breadcrumb/breadcrumb.d.ts +40 -0
  100. package/dist/matter/breadcrumb/breadcrumb.js +155 -0
  101. package/dist/matter/breadcrumb/breadcrumb.js.map +1 -0
  102. package/dist/matter/buy-button/buy-button.d.ts +95 -0
  103. package/dist/matter/buy-button/buy-button.js +259 -0
  104. package/dist/matter/buy-button/buy-button.js.map +1 -0
  105. package/dist/matter/cart/cart-namespace.d.ts +48 -0
  106. package/dist/matter/cart/cart-namespace.js +50 -0
  107. package/dist/matter/cart/cart-namespace.js.map +1 -0
  108. package/dist/matter/cart/cart.d.ts +312 -0
  109. package/dist/matter/cart/cart.js +1034 -0
  110. package/dist/matter/cart/cart.js.map +1 -0
  111. package/dist/matter/cart-item/cart-item.d.ts +103 -0
  112. package/dist/matter/cart-item/cart-item.js +672 -0
  113. package/dist/matter/cart-item/cart-item.js.map +1 -0
  114. package/dist/matter/cart-item-compositions/cart-item-compositions.d.ts +49 -0
  115. package/dist/matter/cart-item-compositions/cart-item-compositions.js +165 -0
  116. package/dist/matter/cart-item-compositions/cart-item-compositions.js.map +1 -0
  117. package/dist/matter/cart-item-customizations/cart-item-customizations.d.ts +28 -0
  118. package/dist/matter/cart-item-customizations/cart-item-customizations.js +73 -0
  119. package/dist/matter/cart-item-customizations/cart-item-customizations.js.map +1 -0
  120. package/dist/matter/cart-item-discounts/cart-item-discounts.d.ts +33 -0
  121. package/dist/matter/cart-item-discounts/cart-item-discounts.js +70 -0
  122. package/dist/matter/cart-item-discounts/cart-item-discounts.js.map +1 -0
  123. package/dist/matter/cart-item-seller-info/cart-item-seller-info.d.ts +24 -0
  124. package/dist/matter/cart-item-seller-info/cart-item-seller-info.js +54 -0
  125. package/dist/matter/cart-item-seller-info/cart-item-seller-info.js.map +1 -0
  126. package/dist/matter/cart-item-variations/cart-item-variations.d.ts +27 -0
  127. package/dist/matter/cart-item-variations/cart-item-variations.js +69 -0
  128. package/dist/matter/cart-item-variations/cart-item-variations.js.map +1 -0
  129. package/dist/matter/cart-totalizer/cart-totalizer.d.ts +78 -0
  130. package/dist/matter/cart-totalizer/cart-totalizer.js +220 -0
  131. package/dist/matter/cart-totalizer/cart-totalizer.js.map +1 -0
  132. package/dist/matter/client-preferences/client-preferences.d.ts +50 -0
  133. package/dist/matter/client-preferences/client-preferences.js +206 -0
  134. package/dist/matter/client-preferences/client-preferences.js.map +1 -0
  135. package/dist/matter/client-profile/client-profile.d.ts +59 -0
  136. package/dist/matter/client-profile/client-profile.js +185 -0
  137. package/dist/matter/client-profile/client-profile.js.map +1 -0
  138. package/dist/matter/client-profile-form/client-profile-form.d.ts +126 -0
  139. package/dist/matter/client-profile-form/client-profile-form.js +660 -0
  140. package/dist/matter/client-profile-form/client-profile-form.js.map +1 -0
  141. package/dist/matter/delivery-options/delivery-options-accordion.d.ts +30 -0
  142. package/dist/matter/delivery-options/delivery-options-accordion.js +189 -0
  143. package/dist/matter/delivery-options/delivery-options-accordion.js.map +1 -0
  144. package/dist/matter/delivery-options/delivery-options-controller.d.ts +49 -0
  145. package/dist/matter/delivery-options/delivery-options-controller.js +203 -0
  146. package/dist/matter/delivery-options/delivery-options-controller.js.map +1 -0
  147. package/dist/matter/delivery-options/delivery-options.d.ts +31 -0
  148. package/dist/matter/delivery-options/delivery-options.js +103 -0
  149. package/dist/matter/delivery-options/delivery-options.js.map +1 -0
  150. package/dist/matter/delivery-options/use-delivery-option-selection.d.ts +9 -0
  151. package/dist/matter/delivery-options/use-delivery-option-selection.js +76 -0
  152. package/dist/matter/delivery-options/use-delivery-option-selection.js.map +1 -0
  153. package/dist/matter/email-identification/email-identification.d.ts +37 -0
  154. package/dist/matter/email-identification/email-identification.js +111 -0
  155. package/dist/matter/email-identification/email-identification.js.map +1 -0
  156. package/dist/matter/free-shipping-progress/free-shipping-progress.d.ts +44 -0
  157. package/dist/matter/free-shipping-progress/free-shipping-progress.js +170 -0
  158. package/dist/matter/free-shipping-progress/free-shipping-progress.js.map +1 -0
  159. package/dist/matter/identity-edit/identity-edit.d.ts +52 -0
  160. package/dist/matter/identity-edit/identity-edit.js +148 -0
  161. package/dist/matter/identity-edit/identity-edit.js.map +1 -0
  162. package/dist/matter/identity-summary/identity-summary.d.ts +128 -0
  163. package/dist/matter/identity-summary/identity-summary.js +344 -0
  164. package/dist/matter/identity-summary/identity-summary.js.map +1 -0
  165. package/dist/matter/pricing/pricing.d.ts +162 -0
  166. package/dist/matter/pricing/pricing.js +793 -0
  167. package/dist/matter/pricing/pricing.js.map +1 -0
  168. package/dist/matter/product-gallery/product-gallery.d.ts +23 -0
  169. package/dist/matter/product-gallery/product-gallery.js +188 -0
  170. package/dist/matter/product-gallery/product-gallery.js.map +1 -0
  171. package/dist/matter/product-information/product-information.d.ts +61 -0
  172. package/dist/matter/product-information/product-information.js +355 -0
  173. package/dist/matter/product-information/product-information.js.map +1 -0
  174. package/dist/matter/product-list/product-list.d.ts +86 -0
  175. package/dist/matter/product-list/product-list.js +342 -0
  176. package/dist/matter/product-list/product-list.js.map +1 -0
  177. package/dist/matter/product-quantity/product-quantity.d.ts +50 -0
  178. package/dist/matter/product-quantity/product-quantity.js +111 -0
  179. package/dist/matter/product-quantity/product-quantity.js.map +1 -0
  180. package/dist/matter/product-shelf/product-shelf.d.ts +125 -0
  181. package/dist/matter/product-shelf/product-shelf.js +376 -0
  182. package/dist/matter/product-shelf/product-shelf.js.map +1 -0
  183. package/dist/matter/region/region.d.ts +211 -0
  184. package/dist/matter/region/region.js +579 -0
  185. package/dist/matter/region/region.js.map +1 -0
  186. package/dist/matter/session/session.d.ts +58 -0
  187. package/dist/matter/session/session.js +112 -0
  188. package/dist/matter/session/session.js.map +1 -0
  189. package/dist/matter/shipping-address/country-descriptors.js +101 -0
  190. package/dist/matter/shipping-address/country-descriptors.js.map +1 -0
  191. package/dist/matter/shipping-address/shipping-address.d.ts +284 -0
  192. package/dist/matter/shipping-address/shipping-address.js +1036 -0
  193. package/dist/matter/shipping-address/shipping-address.js.map +1 -0
  194. package/dist/matter/shipping-simulator/shipping-simulator.d.ts +143 -0
  195. package/dist/matter/shipping-simulator/shipping-simulator.js +644 -0
  196. package/dist/matter/shipping-simulator/shipping-simulator.js.map +1 -0
  197. package/dist/matter/sign-in-form/sign-in-form.d.ts +79 -0
  198. package/dist/matter/sign-in-form/sign-in-form.js +226 -0
  199. package/dist/matter/sign-in-form/sign-in-form.js.map +1 -0
  200. package/dist/matter/variant-selector/variant-selector.d.ts +183 -0
  201. package/dist/matter/variant-selector/variant-selector.js +840 -0
  202. package/dist/matter/variant-selector/variant-selector.js.map +1 -0
  203. package/dist/message-locales.json +7 -0
  204. package/dist/particles/access-code-field/access-code-field.d.ts +33 -0
  205. package/dist/particles/access-code-field/access-code-field.js +95 -0
  206. package/dist/particles/access-code-field/access-code-field.js.map +1 -0
  207. package/dist/particles/accordion/accordion.d.ts +45 -0
  208. package/dist/particles/accordion/accordion.js +156 -0
  209. package/dist/particles/accordion/accordion.js.map +1 -0
  210. package/dist/particles/address-summary/address-summary.d.ts +50 -0
  211. package/dist/particles/address-summary/address-summary.js +129 -0
  212. package/dist/particles/address-summary/address-summary.js.map +1 -0
  213. package/dist/particles/badge/badge.d.ts +10 -0
  214. package/dist/particles/badge/badge.js +27 -0
  215. package/dist/particles/badge/badge.js.map +1 -0
  216. package/dist/particles/button/button.d.ts +18 -0
  217. package/dist/particles/button/button.js +37 -0
  218. package/dist/particles/button/button.js.map +1 -0
  219. package/dist/particles/carousel/carousel.d.ts +60 -0
  220. package/dist/particles/carousel/carousel.js +335 -0
  221. package/dist/particles/carousel/carousel.js.map +1 -0
  222. package/dist/particles/checkbox/checkbox.d.ts +40 -0
  223. package/dist/particles/checkbox/checkbox.js +82 -0
  224. package/dist/particles/checkbox/checkbox.js.map +1 -0
  225. package/dist/particles/container/container.d.ts +20 -0
  226. package/dist/particles/container/container.js +36 -0
  227. package/dist/particles/container/container.js.map +1 -0
  228. package/dist/particles/dialog/dialog.d.ts +54 -0
  229. package/dist/particles/dialog/dialog.js +192 -0
  230. package/dist/particles/dialog/dialog.js.map +1 -0
  231. package/dist/particles/document-field/document-field.d.ts +61 -0
  232. package/dist/particles/document-field/document-field.js +146 -0
  233. package/dist/particles/document-field/document-field.js.map +1 -0
  234. package/dist/particles/drawer/drawer.d.ts +52 -0
  235. package/dist/particles/drawer/drawer.js +183 -0
  236. package/dist/particles/drawer/drawer.js.map +1 -0
  237. package/dist/particles/email-field/email-field.d.ts +37 -0
  238. package/dist/particles/email-field/email-field.js +106 -0
  239. package/dist/particles/email-field/email-field.js.map +1 -0
  240. package/dist/particles/field/field.d.ts +50 -0
  241. package/dist/particles/field/field.js +133 -0
  242. package/dist/particles/field/field.js.map +1 -0
  243. package/dist/particles/fieldset/fieldset.d.ts +16 -0
  244. package/dist/particles/fieldset/fieldset.js +52 -0
  245. package/dist/particles/fieldset/fieldset.js.map +1 -0
  246. package/dist/particles/footer-copyright/footer-copyright.d.ts +32 -0
  247. package/dist/particles/footer-copyright/footer-copyright.js +50 -0
  248. package/dist/particles/footer-copyright/footer-copyright.js.map +1 -0
  249. package/dist/particles/footer-link-group/footer-link-group.d.ts +66 -0
  250. package/dist/particles/footer-link-group/footer-link-group.js +154 -0
  251. package/dist/particles/footer-link-group/footer-link-group.js.map +1 -0
  252. package/dist/particles/footer-root/footer-root.d.ts +21 -0
  253. package/dist/particles/footer-root/footer-root.js +38 -0
  254. package/dist/particles/footer-root/footer-root.js.map +1 -0
  255. package/dist/particles/footer-social/footer-social.d.ts +79 -0
  256. package/dist/particles/footer-social/footer-social.js +176 -0
  257. package/dist/particles/footer-social/footer-social.js.map +1 -0
  258. package/dist/particles/gallery/gallery.d.ts +181 -0
  259. package/dist/particles/gallery/gallery.js +920 -0
  260. package/dist/particles/gallery/gallery.js.map +1 -0
  261. package/dist/particles/header-root/header-root.d.ts +21 -0
  262. package/dist/particles/header-root/header-root.js +38 -0
  263. package/dist/particles/header-root/header-root.js.map +1 -0
  264. package/dist/particles/icon/icon.d.ts +22 -0
  265. package/dist/particles/icon/icon.js +48 -0
  266. package/dist/particles/icon/icon.js.map +1 -0
  267. package/dist/particles/image/image.d.ts +13 -0
  268. package/dist/particles/image/image.js +59 -0
  269. package/dist/particles/image/image.js.map +1 -0
  270. package/dist/particles/incentives/incentives.d.ts +85 -0
  271. package/dist/particles/incentives/incentives.js +200 -0
  272. package/dist/particles/incentives/incentives.js.map +1 -0
  273. package/dist/particles/input/input.d.ts +9 -0
  274. package/dist/particles/input/input.js +28 -0
  275. package/dist/particles/input/input.js.map +1 -0
  276. package/dist/particles/logo/logo.d.ts +55 -0
  277. package/dist/particles/logo/logo.js +96 -0
  278. package/dist/particles/logo/logo.js.map +1 -0
  279. package/dist/particles/menu/menu.d.ts +103 -0
  280. package/dist/particles/menu/menu.js +409 -0
  281. package/dist/particles/menu/menu.js.map +1 -0
  282. package/dist/particles/menubar/menubar.d.ts +18 -0
  283. package/dist/particles/menubar/menubar.js +42 -0
  284. package/dist/particles/menubar/menubar.js.map +1 -0
  285. package/dist/particles/meter/meter.d.ts +36 -0
  286. package/dist/particles/meter/meter.js +132 -0
  287. package/dist/particles/meter/meter.js.map +1 -0
  288. package/dist/particles/navigation-link/navigation-link.d.ts +43 -0
  289. package/dist/particles/navigation-link/navigation-link.js +82 -0
  290. package/dist/particles/navigation-link/navigation-link.js.map +1 -0
  291. package/dist/particles/navigation-link-list/navigation-link-list.d.ts +59 -0
  292. package/dist/particles/navigation-link-list/navigation-link-list.js +103 -0
  293. package/dist/particles/navigation-link-list/navigation-link-list.js.map +1 -0
  294. package/dist/particles/navigation-menu/navigation-menu.d.ts +78 -0
  295. package/dist/particles/navigation-menu/navigation-menu.js +295 -0
  296. package/dist/particles/navigation-menu/navigation-menu.js.map +1 -0
  297. package/dist/particles/number-field/number-field.d.ts +46 -0
  298. package/dist/particles/number-field/number-field.js +169 -0
  299. package/dist/particles/number-field/number-field.js.map +1 -0
  300. package/dist/particles/password-field/password-field.d.ts +31 -0
  301. package/dist/particles/password-field/password-field.js +109 -0
  302. package/dist/particles/password-field/password-field.js.map +1 -0
  303. package/dist/particles/payment-methods/payment-methods.d.ts +72 -0
  304. package/dist/particles/payment-methods/payment-methods.js +151 -0
  305. package/dist/particles/payment-methods/payment-methods.js.map +1 -0
  306. package/dist/particles/phone-field/phone-field.d.ts +67 -0
  307. package/dist/particles/phone-field/phone-field.js +250 -0
  308. package/dist/particles/phone-field/phone-field.js.map +1 -0
  309. package/dist/particles/popover/popover.d.ts +68 -0
  310. package/dist/particles/popover/popover.js +284 -0
  311. package/dist/particles/popover/popover.js.map +1 -0
  312. package/dist/particles/postal-code-field/postal-code-field.d.ts +75 -0
  313. package/dist/particles/postal-code-field/postal-code-field.js +169 -0
  314. package/dist/particles/postal-code-field/postal-code-field.js.map +1 -0
  315. package/dist/particles/promotion/promotion.d.ts +46 -0
  316. package/dist/particles/promotion/promotion.js +78 -0
  317. package/dist/particles/promotion/promotion.js.map +1 -0
  318. package/dist/particles/quantity-selector/quantity-selector.d.ts +30 -0
  319. package/dist/particles/quantity-selector/quantity-selector.js +116 -0
  320. package/dist/particles/quantity-selector/quantity-selector.js.map +1 -0
  321. package/dist/particles/radio/radio.d.ts +36 -0
  322. package/dist/particles/radio/radio.js +76 -0
  323. package/dist/particles/radio/radio.js.map +1 -0
  324. package/dist/particles/scroll-area/scroll-area.d.ts +36 -0
  325. package/dist/particles/scroll-area/scroll-area.js +145 -0
  326. package/dist/particles/scroll-area/scroll-area.js.map +1 -0
  327. package/dist/particles/select/select.d.ts +125 -0
  328. package/dist/particles/select/select.js +478 -0
  329. package/dist/particles/select/select.js.map +1 -0
  330. package/dist/particles/separator/separator.d.ts +12 -0
  331. package/dist/particles/separator/separator.js +33 -0
  332. package/dist/particles/separator/separator.js.map +1 -0
  333. package/dist/particles/shared/input-mask.d.ts +5 -0
  334. package/dist/particles/shared/input-mask.js +58 -0
  335. package/dist/particles/shared/input-mask.js.map +1 -0
  336. package/dist/particles/spinner/spinner.d.ts +13 -0
  337. package/dist/particles/spinner/spinner.js +31 -0
  338. package/dist/particles/spinner/spinner.js.map +1 -0
  339. package/dist/particles/switch/switch.d.ts +27 -0
  340. package/dist/particles/switch/switch.js +59 -0
  341. package/dist/particles/switch/switch.js.map +1 -0
  342. package/dist/particles/tabs/tabs.d.ts +45 -0
  343. package/dist/particles/tabs/tabs.js +164 -0
  344. package/dist/particles/tabs/tabs.js.map +1 -0
  345. package/dist/particles/text/text.d.ts +24 -0
  346. package/dist/particles/text/text.js +40 -0
  347. package/dist/particles/text/text.js.map +1 -0
  348. package/dist/particles/toast/toast.d.ts +83 -0
  349. package/dist/particles/toast/toast.js +194 -0
  350. package/dist/particles/toast/toast.js.map +1 -0
  351. package/dist/particles/toggle/toggle.d.ts +26 -0
  352. package/dist/particles/toggle/toggle.js +61 -0
  353. package/dist/particles/toggle/toggle.js.map +1 -0
  354. package/dist/particles/tooltip/tooltip.d.ts +61 -0
  355. package/dist/particles/tooltip/tooltip.js +240 -0
  356. package/dist/particles/tooltip/tooltip.js.map +1 -0
  357. package/dist/schema.graphql +2953 -0
  358. package/dist/sdk/actions/cart-action-provider.d.ts +19 -0
  359. package/dist/sdk/actions/cart-action-provider.js +23 -0
  360. package/dist/sdk/actions/cart-action-provider.js.map +1 -0
  361. package/dist/sdk/actions/identity-action-provider.d.ts +15 -0
  362. package/dist/sdk/actions/identity-action-provider.js +19 -0
  363. package/dist/sdk/actions/identity-action-provider.js.map +1 -0
  364. package/dist/sdk/actions/index.d.ts +7 -0
  365. package/dist/sdk/actions/index.js +6 -0
  366. package/dist/sdk/actions/inject-actions.d.ts +14 -0
  367. package/dist/sdk/actions/inject-actions.js +36 -0
  368. package/dist/sdk/actions/inject-actions.js.map +1 -0
  369. package/dist/sdk/actions/region-action-provider.d.ts +15 -0
  370. package/dist/sdk/actions/region-action-provider.js +19 -0
  371. package/dist/sdk/actions/region-action-provider.js.map +1 -0
  372. package/dist/sdk/actions/session-action-provider.d.ts +15 -0
  373. package/dist/sdk/actions/session-action-provider.js +19 -0
  374. package/dist/sdk/actions/session-action-provider.js.map +1 -0
  375. package/dist/sdk/actions/shipping-action-provider.d.ts +15 -0
  376. package/dist/sdk/actions/shipping-action-provider.js +19 -0
  377. package/dist/sdk/actions/shipping-action-provider.js.map +1 -0
  378. package/dist/sdk/actions/types.d.ts +21 -0
  379. package/dist/sdk/cache/storefront-cache.js +35 -0
  380. package/dist/sdk/cache/storefront-cache.js.map +1 -0
  381. package/dist/sdk/cart/operations.d.ts +31 -0
  382. package/dist/sdk/cart/operations.js +215 -0
  383. package/dist/sdk/cart/operations.js.map +1 -0
  384. package/dist/sdk/cart/optimistic.d.ts +24 -0
  385. package/dist/sdk/cart/optimistic.js +164 -0
  386. package/dist/sdk/cart/optimistic.js.map +1 -0
  387. package/dist/sdk/cart/use-cart-actions.d.ts +56 -0
  388. package/dist/sdk/cart/use-cart-actions.js +348 -0
  389. package/dist/sdk/cart/use-cart-actions.js.map +1 -0
  390. package/dist/sdk/cart/use-cart-validate-on-open.js +50 -0
  391. package/dist/sdk/cart/use-cart-validate-on-open.js.map +1 -0
  392. package/dist/sdk/cart/write-gate.js +54 -0
  393. package/dist/sdk/cart/write-gate.js.map +1 -0
  394. package/dist/sdk/client/assert-api-url.js +20 -0
  395. package/dist/sdk/client/assert-api-url.js.map +1 -0
  396. package/dist/sdk/client/create-client.d.ts +23 -0
  397. package/dist/sdk/client/create-client.js +46 -0
  398. package/dist/sdk/client/create-client.js.map +1 -0
  399. package/dist/sdk/client/fetch-page-data.d.ts +39 -0
  400. package/dist/sdk/client/fetch-page-data.js +33 -0
  401. package/dist/sdk/client/fetch-page-data.js.map +1 -0
  402. package/dist/sdk/client/register-preload-query.d.ts +24 -0
  403. package/dist/sdk/client/register-preload-query.js +33 -0
  404. package/dist/sdk/client/register-preload-query.js.map +1 -0
  405. package/dist/sdk/content/create-content-runtime.d.ts +68 -0
  406. package/dist/sdk/content/create-content-runtime.js +503 -0
  407. package/dist/sdk/content/create-content-runtime.js.map +1 -0
  408. package/dist/sdk/context/headers.d.ts +15 -0
  409. package/dist/sdk/context/headers.js +21 -0
  410. package/dist/sdk/context/headers.js.map +1 -0
  411. package/dist/sdk/context/storefront-context.d.ts +11 -0
  412. package/dist/sdk/context/storefront-context.js +29 -0
  413. package/dist/sdk/context/storefront-context.js.map +1 -0
  414. package/dist/sdk/data/data-override-context.d.ts +12 -0
  415. package/dist/sdk/data/data-override-context.js +19 -0
  416. package/dist/sdk/data/data-override-context.js.map +1 -0
  417. package/dist/sdk/data/entity-subscriber.js +28 -0
  418. package/dist/sdk/data/entity-subscriber.js.map +1 -0
  419. package/dist/sdk/data/hot-data-provider.d.ts +19 -0
  420. package/dist/sdk/data/hot-data-provider.js +33 -0
  421. package/dist/sdk/data/hot-data-provider.js.map +1 -0
  422. package/dist/sdk/data/index.d.ts +8 -0
  423. package/dist/sdk/data/index.js +8 -0
  424. package/dist/sdk/data/list-item-ref-context.d.ts +20 -0
  425. package/dist/sdk/data/list-item-ref-context.js +11 -0
  426. package/dist/sdk/data/list-item-ref-context.js.map +1 -0
  427. package/dist/sdk/data/multiple-reactive-data-provider.d.ts +32 -0
  428. package/dist/sdk/data/multiple-reactive-data-provider.js +20 -0
  429. package/dist/sdk/data/multiple-reactive-data-provider.js.map +1 -0
  430. package/dist/sdk/data/page-reactive-data-root.d.ts +53 -0
  431. package/dist/sdk/data/page-reactive-data-root.js +153 -0
  432. package/dist/sdk/data/page-reactive-data-root.js.map +1 -0
  433. package/dist/sdk/data/reactive-data-provider.d.ts +25 -0
  434. package/dist/sdk/data/reactive-data-provider.js +24 -0
  435. package/dist/sdk/data/reactive-data-provider.js.map +1 -0
  436. package/dist/sdk/data/reactive-list-item-data-provider.d.ts +26 -0
  437. package/dist/sdk/data/reactive-list-item-data-provider.js +42 -0
  438. package/dist/sdk/data/reactive-list-item-data-provider.js.map +1 -0
  439. package/dist/sdk/data/use-reactive-entity.js +40 -0
  440. package/dist/sdk/data/use-reactive-entity.js.map +1 -0
  441. package/dist/sdk/format/client.d.ts +12 -0
  442. package/dist/sdk/format/client.js +20 -0
  443. package/dist/sdk/format/client.js.map +1 -0
  444. package/dist/sdk/format/formatters.d.ts +32 -0
  445. package/dist/sdk/format/formatters.js +45 -0
  446. package/dist/sdk/format/formatters.js.map +1 -0
  447. package/dist/sdk/generated/fragment-types.js +23 -0
  448. package/dist/sdk/generated/fragment-types.js.map +1 -0
  449. package/dist/sdk/generated/gql.js +51 -0
  450. package/dist/sdk/generated/gql.js.map +1 -0
  451. package/dist/sdk/generated/graphql.d.ts +622 -0
  452. package/dist/sdk/generated/graphql.js +11917 -0
  453. package/dist/sdk/generated/graphql.js.map +1 -0
  454. package/dist/sdk/graphql-tag.d.ts +10 -0
  455. package/dist/sdk/graphql-tag.js +21 -0
  456. package/dist/sdk/graphql-tag.js.map +1 -0
  457. package/dist/sdk/i18n/client.d.ts +4 -0
  458. package/dist/sdk/i18n/client.js +4 -0
  459. package/dist/sdk/i18n/locales.d.ts +8 -0
  460. package/dist/sdk/i18n/locales.js +57 -0
  461. package/dist/sdk/i18n/locales.js.map +1 -0
  462. package/dist/sdk/i18n/messages/en-US.js +24 -0
  463. package/dist/sdk/i18n/messages/en-US.js.map +1 -0
  464. package/dist/sdk/i18n/messages/en-US.json +19 -0
  465. package/dist/sdk/i18n/messages/en-US.json.d.ts +23 -0
  466. package/dist/sdk/i18n/messages/es-ES.js +24 -0
  467. package/dist/sdk/i18n/messages/es-ES.js.map +1 -0
  468. package/dist/sdk/i18n/messages/es-ES.json +19 -0
  469. package/dist/sdk/i18n/messages/pt-BR.js +24 -0
  470. package/dist/sdk/i18n/messages/pt-BR.js.map +1 -0
  471. package/dist/sdk/i18n/messages/pt-BR.json +19 -0
  472. package/dist/sdk/i18n/provider.d.ts +1 -0
  473. package/dist/sdk/i18n/provider.js +30 -0
  474. package/dist/sdk/i18n/provider.js.map +1 -0
  475. package/dist/sdk/i18n/server.d.ts +28 -0
  476. package/dist/sdk/i18n/server.js +59 -0
  477. package/dist/sdk/i18n/server.js.map +1 -0
  478. package/dist/sdk/identity/operations.d.ts +34 -0
  479. package/dist/sdk/identity/operations.js +78 -0
  480. package/dist/sdk/identity/operations.js.map +1 -0
  481. package/dist/sdk/identity/use-identity-actions.d.ts +62 -0
  482. package/dist/sdk/identity/use-identity-actions.js +180 -0
  483. package/dist/sdk/identity/use-identity-actions.js.map +1 -0
  484. package/dist/sdk/provider/index.d.ts +2 -0
  485. package/dist/sdk/provider/index.js +2 -0
  486. package/dist/sdk/provider/storefront-provider.d.ts +32 -0
  487. package/dist/sdk/provider/storefront-provider.js +111 -0
  488. package/dist/sdk/provider/storefront-provider.js.map +1 -0
  489. package/dist/sdk/region/operations.d.ts +6 -0
  490. package/dist/sdk/region/region-operations.d.ts +30 -0
  491. package/dist/sdk/region/region-operations.js +23 -0
  492. package/dist/sdk/region/region-operations.js.map +1 -0
  493. package/dist/sdk/region/use-region-actions.d.ts +23 -0
  494. package/dist/sdk/region/use-region-actions.js +66 -0
  495. package/dist/sdk/region/use-region-actions.js.map +1 -0
  496. package/dist/sdk/seller.js +11 -0
  497. package/dist/sdk/seller.js.map +1 -0
  498. package/dist/sdk/session/auth-operations.d.ts +47 -0
  499. package/dist/sdk/session/auth-operations.js +79 -0
  500. package/dist/sdk/session/auth-operations.js.map +1 -0
  501. package/dist/sdk/session/operations.d.ts +6 -0
  502. package/dist/sdk/session/use-session-actions.d.ts +27 -0
  503. package/dist/sdk/session/use-session-actions.js +126 -0
  504. package/dist/sdk/session/use-session-actions.js.map +1 -0
  505. package/dist/sdk/shipping/cart-operations.d.ts +3 -0
  506. package/dist/sdk/shipping/cart-operations.js +33 -0
  507. package/dist/sdk/shipping/cart-operations.js.map +1 -0
  508. package/dist/sdk/shipping/operations.d.ts +3 -0
  509. package/dist/sdk/shipping/operations.js +33 -0
  510. package/dist/sdk/shipping/operations.js.map +1 -0
  511. package/dist/sdk/shipping/option-select-operations.d.ts +24 -0
  512. package/dist/sdk/shipping/option-select-operations.js +45 -0
  513. package/dist/sdk/shipping/option-select-operations.js.map +1 -0
  514. package/dist/sdk/shipping/request-timeout.js +41 -0
  515. package/dist/sdk/shipping/request-timeout.js.map +1 -0
  516. package/dist/sdk/shipping/shipping-operations.d.ts +38 -0
  517. package/dist/sdk/shipping/shipping-operations.js +77 -0
  518. package/dist/sdk/shipping/shipping-operations.js.map +1 -0
  519. package/dist/sdk/shipping/use-cart-shipping-simulation.d.ts +7 -0
  520. package/dist/sdk/shipping/use-cart-shipping-simulation.js +72 -0
  521. package/dist/sdk/shipping/use-cart-shipping-simulation.js.map +1 -0
  522. package/dist/sdk/shipping/use-shipping-actions.d.ts +27 -0
  523. package/dist/sdk/shipping/use-shipping-actions.js +113 -0
  524. package/dist/sdk/shipping/use-shipping-actions.js.map +1 -0
  525. package/dist/sdk/shipping/use-shipping-simulation.d.ts +7 -0
  526. package/dist/sdk/shipping/use-shipping-simulation.js +72 -0
  527. package/dist/sdk/shipping/use-shipping-simulation.js.map +1 -0
  528. package/dist/sdk/state/cart.d.ts +42 -0
  529. package/dist/sdk/state/cart.js +64 -0
  530. package/dist/sdk/state/cart.js.map +1 -0
  531. package/dist/sdk/state/index.js +3 -0
  532. package/dist/sdk/state/variant-selector.d.ts +17 -0
  533. package/dist/sdk/state/variant-selector.js +14 -0
  534. package/dist/sdk/state/variant-selector.js.map +1 -0
  535. package/dist/utils/safe-href.js +63 -0
  536. package/dist/utils/safe-href.js.map +1 -0
  537. package/package.json +84 -0
  538. package/src/styles/tailwind.css +32 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"incentives.js","names":[],"sources":["../../../src/particles/incentives/incentives.tsx"],"sourcesContent":["import { type ContentValue, defineComponent, defineContentType } from '@vtex/fs-core';\nimport type { ComponentPropsWithRef } from 'react';\nimport { resolveSafeHref } from '../../utils/safe-href.js';\nimport { Icon } from '../icon/icon.js';\nimport { Image } from '../image/image.js';\nimport { NavigationLink } from '../navigation-link/navigation-link.js';\n\n// ---------------------------------------------------------------------------\n// Content model\n// ---------------------------------------------------------------------------\n\nexport const IncentivesContent = defineContentType({\n id: 'incentives',\n title: 'Incentives',\n description: 'Store benefit highlights rendered as a strip in the footer.',\n schema: {\n type: 'object',\n additionalProperties: false,\n // `items` is deliberately optional. A missing element key already omits the component before any\n // required check runs, so requiring the list would buy nothing and cost the prop fallback: an\n // entry without it would be shape-invalid and the authored `items` never reached.\n properties: {\n items: {\n type: 'array',\n title: 'Incentive items',\n // Author-time guidance only: no read-time gate enforces item bounds, so its one consumer is\n // the Content Platform Admin's form. An empty list still reaches the component, which\n // self-hides on it. No ceiling — the swatch has to lay out at any count regardless.\n minItems: 1,\n items: {\n type: 'object',\n additionalProperties: false,\n // `title` alone. A nested required property is validated at read time and a violation omits\n // the whole strip, so every entry here widens the blast radius of one under-filled item.\n required: ['title'],\n properties: {\n // `minLength` on the title alone: it is the required property, so a blank one is the only\n // blank that decides anything. Both lines render if present and drop if blank, which is\n // guidance the Admin form has no reason to state differently for one of them.\n title: { type: 'string', minLength: 1, title: 'Title' },\n firstLineText: { type: 'string', title: 'First line' },\n secondLineText: { type: 'string', title: 'Second line' },\n // Optional, because a benefit strip links nowhere and a shortcut row links everywhere,\n // and the two are the same shape. Author-time guidance only, deliberately identical to\n // FooterLinkGroup's so the Admin form cannot reject a destination `resolveSafeHref`\n // would have accepted; lookahead-free because that regex engine may be an RE2 family.\n href: {\n type: 'string',\n minLength: 1,\n title: 'Link',\n format: 'uri-reference',\n pattern: '^(?:https?://.*|mailto:.+|tel:.+|/(?:[^/].*)?)$',\n },\n // Inline rather than a named constant: the catalog scanner reads this file statically and\n // rejects an identifier it cannot evaluate.\n icon: {\n type: 'string',\n enum: ['truck', 'calendar', 'gift', 'store', 'shield-check'],\n title: 'Icon',\n },\n iconUrl: {\n type: 'string',\n format: 'uri',\n title: 'Custom icon',\n widget: { 'ui:widget': 'media-gallery' },\n },\n alt: { type: 'string', title: 'Custom icon alt text' },\n },\n },\n },\n },\n },\n});\n\n/**\n * The benefit glyphs the `icon` enum admits. Exported because a store's `global.json` has to list\n * them under `icons.include` for a CMS-chosen name to resolve at runtime — one import there instead\n * of five retyped strings, which is what keeps the layout task from silently missing one. Reading it\n * off the model rather than declaring it alongside makes the two impossible to drift apart.\n */\nexport const INCENTIVE_ICON_NAMES = IncentivesContent.schema.properties.items.items.properties.icon.enum;\n\n// ---------------------------------------------------------------------------\n// Types\n// ---------------------------------------------------------------------------\n\ntype IncentivesContentValue = ContentValue<typeof IncentivesContent>;\n\n/** One incentive item, identical in the prop and the content channels. */\nexport type IncentiveItem = NonNullable<IncentivesContentValue['items']>[number];\n\ntype IncentiveIconName = NonNullable<IncentiveItem['icon']>;\n\nexport type IncentivesProps = ComponentPropsWithRef<'ul'> & {\n /** Authored fallback list, rendered when no CMS entry supplies one. */\n items?: readonly IncentiveItem[];\n /** Injected by the compiler, sliced from the layout's composite content entry. */\n $content?: IncentivesContentValue;\n};\n\n// ---------------------------------------------------------------------------\n// Definition\n// ---------------------------------------------------------------------------\n\nexport const IncentivesDefinition = defineComponent({\n name: 'Incentives',\n importPath: '@vtex/faststore/components',\n component: Incentives,\n content: IncentivesContent,\n editor: { label: 'Incentives', category: 'content' },\n schema: {\n items: { type: 'array', label: 'Incentive items' },\n },\n guideline:\n \"The store's value propositions as a strip of icon-and-copy items, the whole list CMS-editable: each item carries a title, up to two description lines, either a predefined icon or an uploaded one, and an optional href that turns the whole block into a link. Every predefined icon name must be listed in the store's icons.include. Renders nothing when unconfigured. See incentives.md.\",\n});\n\n// ---------------------------------------------------------------------------\n// Implementation\n// ---------------------------------------------------------------------------\n\n/**\n * The three glyph states an item can reach, kept as a union so \"at most one source\" is a property of\n * the type rather than of how the resolver happens to build it. `alt` belongs to the uploaded member\n * alone, since a sprite glyph has nothing to name.\n */\ntype ResolvedGlyph =\n | { icon: IncentiveIconName; src?: undefined; alt?: undefined }\n | { icon?: undefined; src: string; alt?: string }\n | { icon?: undefined; src?: undefined; alt?: undefined };\n\n/**\n * An item that can render: a non-blank title, its surviving description lines, a glyph state, and a\n * destination the allowlist cleared. The title is the item's identity, so it is the only part whose\n * absence drops the item.\n */\ntype ResolvedIncentive = { title: string; lines: string[]; href: string | null } & ResolvedGlyph;\n\n/**\n * The item's destination, or null for both \"none authored\" and \"the allowlist refused it\". Unlike the\n * link group and the social row, where a link is the whole point, a refusal here costs the anchor\n * alone — an unlinked item is this component's ordinary shape, so the glyph and copy still render.\n */\nfunction resolveHref(raw: string | undefined, index: number): string | null {\n // Absent and blank are \"no link\", not a rejection, so neither reaches the allowlist or the log.\n if (!raw?.trim()) return null;\n\n const destination = resolveSafeHref(raw);\n if (!destination.safe) {\n // A bounded reason and no authored value, the convention the content runtime's own log follows.\n console.warn('[Incentives] link destination rejected', { index, reason: destination.reason });\n return null;\n }\n\n return destination.href;\n}\n\n/**\n * Drops every item with no title to show, and every description line that would render empty.\n * Neither read-time gate enforces `minLength`, so both blanks reach the component. The asymmetry is\n * deliberate: an icon with no label is not an incentive, while a missing line is supplementary.\n */\nfunction resolveIncentives(items: readonly IncentiveItem[]): ResolvedIncentive[] {\n const resolved: ResolvedIncentive[] = [];\n\n items.forEach((item, index) => {\n if (!item.title.trim()) return;\n\n const lines = [item.firstLineText, item.secondLineText].filter((line): line is string => Boolean(line?.trim()));\n const href = resolveHref(item.href, index);\n\n if (item.iconUrl?.trim()) {\n resolved.push({ title: item.title, lines, href, src: item.iconUrl, alt: item.alt });\n } else if (item.icon) {\n resolved.push({ title: item.title, lines, href, icon: item.icon });\n } else {\n resolved.push({ title: item.title, lines, href });\n }\n });\n\n return resolved;\n}\n\n/**\n * The item's glyph, or nothing. Presence decides the channel — an upload first, then a predefined\n * sprite name — and an item carrying neither renders as copy alone rather than an empty slot.\n */\nfunction IncentiveGlyph({ item }: { item: ResolvedIncentive }) {\n if (item.src !== undefined) {\n return <Image src={item.src} alt={item.alt} data-fs-incentive-icon=\"\" />;\n }\n\n if (item.icon !== undefined) {\n return <Icon name={item.icon} data-fs-incentive-icon=\"\" />;\n }\n\n return null;\n}\n\n/**\n * The glyph and copy an item renders in both forms. Kept whole rather than split across the linked\n * and unlinked branches so the anchor wraps the entire block: on a shortcut row the pictogram is\n * half the click target, and a link around the label alone leaves it dead.\n */\nfunction IncentiveBody({ item }: { item: ResolvedIncentive }) {\n return (\n <>\n <IncentiveGlyph item={item} />\n <p data-fs-text=\"\" data-fs-incentive-title=\"\">\n {item.title}\n </p>\n {item.lines.map((line, lineIndex) => (\n <p key={lineIndex} data-fs-text=\"\" data-fs-incentive-description=\"\">\n {line}\n </p>\n ))}\n </>\n );\n}\n\nexport function Incentives({ items, $content, className, ...props }: IncentivesProps) {\n const resolved = resolveIncentives($content?.items ?? items ?? []);\n\n if (resolved.length === 0) return null;\n\n // `role` precedes the spread so a consumer can still override it.\n return (\n // biome-ignore lint/a11y/noRedundantRoles: WebKit drops the implicit list role from a ul whose computed `list-style` is `none` — exactly what this component's swatch sets — so the explicit role is what holds the semantics the list was chosen for.\n <ul role=\"list\" {...props} className={className} data-fs-incentives=\"\">\n {resolved.map((item, index) => (\n <li key={index} data-fs-incentive=\"\">\n {item.href === null ? (\n <IncentiveBody item={item} />\n ) : (\n // No `target`: these are the store's own shortcuts, not the outbound profiles the social\n // row forces a new tab for.\n <NavigationLink href={item.href} data-fs-incentive-link=\"\">\n <IncentiveBody item={item} />\n </NavigationLink>\n )}\n </li>\n ))}\n </ul>\n );\n}\n"],"mappings":";;;;;;;;;AAWA,MAAa,oBAAoB,kBAAkB;CACjD,IAAI;CACJ,OAAO;CACP,aAAa;CACb,QAAQ;EACN,MAAM;EACN,sBAAsB;EAItB,YAAY,EACV,OAAO;GACL,MAAM;GACN,OAAO;GAIP,UAAU;GACV,OAAO;IACL,MAAM;IACN,sBAAsB;IAGtB,UAAU,CAAC,OAAO;IAClB,YAAY;KAIV,OAAO;MAAE,MAAM;MAAU,WAAW;MAAG,OAAO;KAAQ;KACtD,eAAe;MAAE,MAAM;MAAU,OAAO;KAAa;KACrD,gBAAgB;MAAE,MAAM;MAAU,OAAO;KAAc;KAKvD,MAAM;MACJ,MAAM;MACN,WAAW;MACX,OAAO;MACP,QAAQ;MACR,SAAS;KACX;KAGA,MAAM;MACJ,MAAM;MACN,MAAM;OAAC;OAAS;OAAY;OAAQ;OAAS;MAAc;MAC3D,OAAO;KACT;KACA,SAAS;MACP,MAAM;MACN,QAAQ;MACR,OAAO;MACP,QAAQ,EAAE,aAAa,gBAAgB;KACzC;KACA,KAAK;MAAE,MAAM;MAAU,OAAO;KAAuB;IACvD;GACF;EACF,EACF;CACF;AACF,CAAC;;;;;;;AAQD,MAAa,uBAAuB,kBAAkB,OAAO,WAAW,MAAM,MAAM,WAAW,KAAK;AAwBpG,MAAa,uBAAuB,gBAAgB;CAClD,MAAM;CACN,YAAY;CACZ,WAAW;CACX,SAAS;CACT,QAAQ;EAAE,OAAO;EAAc,UAAU;CAAU;CACnD,QAAQ,EACN,OAAO;EAAE,MAAM;EAAS,OAAO;CAAkB,EACnD;CACA,WACE;AACJ,CAAC;;;;;;AA4BD,SAAS,YAAY,KAAyB,OAA8B;CAE1E,IAAI,CAAC,KAAK,KAAK,GAAG,OAAO;CAEzB,MAAM,cAAc,gBAAgB,GAAG;CACvC,IAAI,CAAC,YAAY,MAAM;EAErB,QAAQ,KAAK,0CAA0C;GAAE;GAAO,QAAQ,YAAY;EAAO,CAAC;EAC5F,OAAO;CACT;CAEA,OAAO,YAAY;AACrB;;;;;;AAOA,SAAS,kBAAkB,OAAsD;CAC/E,MAAM,WAAgC,CAAC;CAEvC,MAAM,SAAS,MAAM,UAAU;EAC7B,IAAI,CAAC,KAAK,MAAM,KAAK,GAAG;EAExB,MAAM,QAAQ,CAAC,KAAK,eAAe,KAAK,cAAc,CAAC,CAAC,QAAQ,SAAyB,QAAQ,MAAM,KAAK,CAAC,CAAC;EAC9G,MAAM,OAAO,YAAY,KAAK,MAAM,KAAK;EAEzC,IAAI,KAAK,SAAS,KAAK,GACrB,SAAS,KAAK;GAAE,OAAO,KAAK;GAAO;GAAO;GAAM,KAAK,KAAK;GAAS,KAAK,KAAK;EAAI,CAAC;OAC7E,IAAI,KAAK,MACd,SAAS,KAAK;GAAE,OAAO,KAAK;GAAO;GAAO;GAAM,MAAM,KAAK;EAAK,CAAC;OAEjE,SAAS,KAAK;GAAE,OAAO,KAAK;GAAO;GAAO;EAAK,CAAC;CAEpD,CAAC;CAED,OAAO;AACT;;;;;AAMA,SAAS,eAAe,EAAE,QAAqC;CAC7D,IAAI,KAAK,QAAQ,KAAA,GACf,OAAO,oBAAC,OAAD;EAAO,KAAK,KAAK;EAAK,KAAK,KAAK;EAAK,0BAAuB;CAAI,CAAA;CAGzE,IAAI,KAAK,SAAS,KAAA,GAChB,OAAO,oBAAC,MAAD;EAAM,MAAM,KAAK;EAAM,0BAAuB;CAAI,CAAA;CAG3D,OAAO;AACT;;;;;;AAOA,SAAS,cAAc,EAAE,QAAqC;CAC5D,OACE,qBAAA,UAAA,EAAA,UAAA;EACE,oBAAC,gBAAD,EAAsB,KAAO,CAAA;EAC7B,oBAAC,KAAD;GAAG,gBAAa;GAAG,2BAAwB;GACxC,UAAA,KAAK;EACL,CAAA;EACF,KAAK,MAAM,KAAK,MAAM,cACrB,oBAAC,KAAD;GAAmB,gBAAa;GAAG,iCAA8B;GAC9D,UAAA;EACA,GAFK,SAEL,CACJ;CACD,EAAA,CAAA;AAEN;AAEA,SAAgB,WAAW,EAAE,OAAO,UAAU,WAAW,GAAG,SAA0B;CACpF,MAAM,WAAW,kBAAkB,UAAU,SAAS,SAAS,CAAC,CAAC;CAEjE,IAAI,SAAS,WAAW,GAAG,OAAO;CAGlC,OAEE,oBAAC,MAAD;EAAI,MAAK;EAAO,GAAI;EAAkB;EAAW,sBAAmB;EACjE,UAAA,SAAS,KAAK,MAAM,UACnB,oBAAC,MAAD;GAAgB,qBAAkB;GAC/B,UAAA,KAAK,SAAS,OACb,oBAAC,eAAD,EAAqB,KAAO,CAAA,IAI5B,oBAAC,gBAAD;IAAgB,MAAM,KAAK;IAAM,0BAAuB;IACtD,UAAA,oBAAC,eAAD,EAAqB,KAAO,CAAA;GACd,CAAA;EAEhB,GAVK,KAUL,CACL;CACC,CAAA;AAER"}
@@ -0,0 +1,9 @@
1
+ import { ComponentDefinition } from "../../core/dist/define-component.js";
2
+ import "../../core/dist/index.js";
3
+ import { ComponentPropsWithRef } from "react";
4
+ //#region src/particles/input/input.d.ts
5
+ export type InputProps = ComponentPropsWithRef<'input'>;
6
+ export declare const InputDefinition: ComponentDefinition<import("react").DetailedHTMLProps<import("react").InputHTMLAttributes<HTMLInputElement>, HTMLInputElement>>;
7
+ export declare function Input({ className, ...props }: InputProps): import("react/jsx-runtime").JSX.Element;
8
+ //#endregion
9
+ //# sourceMappingURL=input.d.ts.map
@@ -0,0 +1,28 @@
1
+ "use client";
2
+ import { defineComponent } from "../../core/dist/define-component.js";
3
+ import "../../core/dist/index.js";
4
+ import { jsx } from "react/jsx-runtime";
5
+ import { Input } from "@base-ui/react/input";
6
+ //#region src/particles/input/input.tsx
7
+ const InputDefinition = defineComponent({
8
+ name: "Input",
9
+ importPath: "@vtex/faststore/components",
10
+ component: Input$1,
11
+ editor: {
12
+ label: "Input",
13
+ category: "action"
14
+ },
15
+ schema: {},
16
+ guideline: "Styled native input that automatically integrates with Field.Control for ARIA labeling and validation. Place inside Field.Control for accessible forms. Receives data-invalid, data-focused, data-filled attributes from the parent Field."
17
+ });
18
+ function Input$1({ className, ...props }) {
19
+ return /* @__PURE__ */ jsx(Input, {
20
+ ...props,
21
+ className,
22
+ "data-fs-input": ""
23
+ });
24
+ }
25
+ //#endregion
26
+ export { Input$1 as Input, InputDefinition };
27
+
28
+ //# sourceMappingURL=input.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"input.js","names":["Input","BaseInput"],"sources":["../../../src/particles/input/input.tsx"],"sourcesContent":["'use client';\nimport { Input as BaseInput } from '@base-ui/react/input';\nimport { defineComponent } from '@vtex/fs-core';\nimport type { ComponentPropsWithRef } from 'react';\n\nexport type InputProps = ComponentPropsWithRef<'input'>;\n\nexport const InputDefinition = defineComponent<InputProps>({\n name: 'Input',\n importPath: '@vtex/faststore/components',\n component: Input,\n editor: { label: 'Input', category: 'action' },\n schema: {},\n guideline:\n 'Styled native input that automatically integrates with Field.Control for ARIA labeling and validation. Place inside Field.Control for accessible forms. Receives data-invalid, data-focused, data-filled attributes from the parent Field.',\n});\n\nexport function Input({ className, ...props }: InputProps) {\n return <BaseInput {...props} className={className} data-fs-input=\"\" />;\n}\n"],"mappings":";;;;;;AAOA,MAAa,kBAAkB,gBAA4B;CACzD,MAAM;CACN,YAAY;CACZ,WAAWA;CACX,QAAQ;EAAE,OAAO;EAAS,UAAU;CAAS;CAC7C,QAAQ,CAAC;CACT,WACE;AACJ,CAAC;AAED,SAAgBA,QAAM,EAAE,WAAW,GAAG,SAAqB;CACzD,OAAO,oBAACC,OAAD;EAAW,GAAI;EAAkB;EAAW,iBAAc;CAAI,CAAA;AACvE"}
@@ -0,0 +1,55 @@
1
+ import { ContentValue } from "../../core/dist/define-content-type.js";
2
+ import { ComponentDefinition } from "../../core/dist/define-component.js";
3
+ import "../../core/dist/index.js";
4
+ import { ComponentPropsWithRef } from "react";
5
+ //#region src/particles/logo/logo.d.ts
6
+ export declare const LogoContent: {
7
+ readonly id: "logo";
8
+ readonly title: "Logo";
9
+ readonly description: "Brand logo asset, alt text, and link destination.";
10
+ readonly schema: {
11
+ readonly type: "object";
12
+ readonly additionalProperties: false;
13
+ readonly required: readonly ["alt"];
14
+ readonly properties: {
15
+ readonly src: {
16
+ readonly type: "string";
17
+ readonly minLength: 1;
18
+ readonly title: "Source URL";
19
+ readonly widget: {
20
+ readonly 'ui:widget': "media-gallery";
21
+ };
22
+ };
23
+ readonly alt: {
24
+ readonly type: "string";
25
+ readonly minLength: 1;
26
+ readonly title: "Alt text";
27
+ };
28
+ readonly href: {
29
+ readonly type: "string";
30
+ readonly minLength: 1;
31
+ readonly title: "Link destination";
32
+ readonly format: "uri-reference";
33
+ readonly pattern: "^(?:https?://.*|mailto:.+|tel:.+|/(?:[^/].*)?)$";
34
+ };
35
+ };
36
+ };
37
+ };
38
+ /** Props for {@link Logo}. Extends native `<div>` attributes (the styling root). */
39
+ export type LogoProps = Omit<ComponentPropsWithRef<'div'>, 'children'> & {
40
+ /** Brand logo asset URL. Optional: the render gate, not the type, requires a resolved value. */
41
+ src?: string;
42
+ /** Accessible alt text. Optional: the render gate, not the type, requires a resolved value. */
43
+ alt?: string;
44
+ /** Navigation destination; defaults to the configured home. Dropped when it fails the safety check. */
45
+ href?: string;
46
+ /** Image loading strategy. `eager` suits the above-the-fold header; author `lazy` below it. */
47
+ loading?: 'lazy' | 'eager';
48
+ /** Merchant-authored logo, sliced from the page/layout content entry; wins over the props when
49
+ * present. Absent in a non-CMS store — the props are the fallback. */
50
+ $content?: ContentValue<typeof LogoContent>;
51
+ };
52
+ export declare const LogoDefinition: ComponentDefinition<LogoProps>;
53
+ export declare function Logo({ src, alt, href, loading, $content, className, ...props }: LogoProps): import("react/jsx-runtime").JSX.Element | null;
54
+ //#endregion
55
+ //# sourceMappingURL=logo.d.ts.map
@@ -0,0 +1,96 @@
1
+ import { defineComponent } from "../../core/dist/define-component.js";
2
+ import { defineContentType } from "../../core/dist/define-content-type.js";
3
+ import "../../core/dist/index.js";
4
+ import { resolveSafeHref } from "../../utils/safe-href.js";
5
+ import { NavigationLink } from "../navigation-link/navigation-link.js";
6
+ import { Image } from "../image/image.js";
7
+ import { jsx } from "react/jsx-runtime";
8
+ //#region src/particles/logo/logo.tsx
9
+ const LogoContent = defineContentType({
10
+ id: "logo",
11
+ title: "Logo",
12
+ description: "Brand logo asset, alt text, and link destination.",
13
+ schema: {
14
+ type: "object",
15
+ additionalProperties: false,
16
+ required: ["alt"],
17
+ properties: {
18
+ src: {
19
+ type: "string",
20
+ minLength: 1,
21
+ title: "Source URL",
22
+ widget: { "ui:widget": "media-gallery" }
23
+ },
24
+ alt: {
25
+ type: "string",
26
+ minLength: 1,
27
+ title: "Alt text"
28
+ },
29
+ href: {
30
+ type: "string",
31
+ minLength: 1,
32
+ title: "Link destination",
33
+ format: "uri-reference",
34
+ pattern: "^(?:https?://.*|mailto:.+|tel:.+|/(?:[^/].*)?)$"
35
+ }
36
+ }
37
+ }
38
+ });
39
+ const LogoDefinition = defineComponent({
40
+ name: "Logo",
41
+ importPath: "@vtex/faststore/components",
42
+ component: Logo,
43
+ content: LogoContent,
44
+ editor: {
45
+ label: "Logo",
46
+ category: "content"
47
+ },
48
+ schema: {
49
+ src: {
50
+ type: "string",
51
+ label: "Source URL"
52
+ },
53
+ alt: {
54
+ type: "string",
55
+ label: "Alt Text"
56
+ },
57
+ href: {
58
+ type: "string",
59
+ default: "/",
60
+ label: "Link Destination"
61
+ },
62
+ loading: {
63
+ type: ["lazy", "eager"],
64
+ default: "eager",
65
+ label: "Loading"
66
+ }
67
+ },
68
+ guideline: "Brand logo linking to the configured home; a CMS entry overrides its src, alt, and href at runtime. Every prop is optional: an element bound to a CMS entry should author none of them, so an unconfigured store renders no logo instead of a placeholder. Author src and alt only where no entry supplies them, never as a fallback beside one. Size it responsively with a swatch on data-fs-logo, and reach the mark itself through data-fs-logo-image. A destination that is not an http, https, mailto, tel, or site-relative URL is dropped and the image renders unlinked. Loads eagerly for the above-the-fold header; set loading to lazy below the fold. Composes the Image and NavigationLink particles."
69
+ });
70
+ function Logo({ src, alt, href = "/", loading = "eager", $content, className, ...props }) {
71
+ const logoSrc = $content?.src?.trim() ? $content.src : src;
72
+ const logoAlt = $content?.alt ?? alt;
73
+ const logoHref = $content?.href?.trim() ? $content.href : href;
74
+ if (!logoSrc || !logoAlt?.trim()) return null;
75
+ const destination = resolveSafeHref(logoHref);
76
+ if (!destination.safe) console.warn("[Logo] link destination rejected", { reason: destination.reason });
77
+ const image = /* @__PURE__ */ jsx(Image, {
78
+ src: logoSrc,
79
+ alt: logoAlt,
80
+ loading,
81
+ "data-fs-logo-image": ""
82
+ });
83
+ return /* @__PURE__ */ jsx("div", {
84
+ ...props,
85
+ className,
86
+ "data-fs-logo": "",
87
+ children: destination.safe ? /* @__PURE__ */ jsx(NavigationLink, {
88
+ href: destination.href,
89
+ children: image
90
+ }) : image
91
+ });
92
+ }
93
+ //#endregion
94
+ export { Logo, LogoContent, LogoDefinition };
95
+
96
+ //# sourceMappingURL=logo.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"logo.js","names":[],"sources":["../../../src/particles/logo/logo.tsx"],"sourcesContent":["import { type ContentValue, defineComponent, defineContentType } from '@vtex/fs-core';\nimport type { ComponentPropsWithRef } from 'react';\nimport { resolveSafeHref } from '../../utils/safe-href.js';\nimport { Image } from '../image/image.js';\nimport { NavigationLink } from '../navigation-link/navigation-link.js';\n\n// `src` declares no `format`: a store's logo is usually a root-relative path served from its\n// `public/` folder (`/logo.svg`), which JSON Schema's `uri` format rejects.\nexport const LogoContent = defineContentType({\n id: 'logo',\n title: 'Logo',\n description: 'Brand logo asset, alt text, and link destination.',\n schema: {\n type: 'object',\n additionalProperties: false,\n // `src` is optional so an entry authoring `alt` alone still validates: a slice missing a\n // required property is shape-invalid, and the boundary drops the element instead of the field.\n required: ['alt'],\n properties: {\n src: { type: 'string', minLength: 1, title: 'Source URL', widget: { 'ui:widget': 'media-gallery' } },\n alt: { type: 'string', minLength: 1, title: 'Alt text' },\n href: {\n type: 'string',\n minLength: 1,\n title: 'Link destination',\n format: 'uri-reference',\n // The set `resolveSafeHref` admits, so the Admin form cannot reject a destination the render\n // gate would have kept. Author-time only and lookahead-free, as in the sibling particles.\n pattern: '^(?:https?://.*|mailto:.+|tel:.+|/(?:[^/].*)?)$',\n },\n },\n },\n});\n\n/** Props for {@link Logo}. Extends native `<div>` attributes (the styling root). */\nexport type LogoProps = Omit<ComponentPropsWithRef<'div'>, 'children'> & {\n /** Brand logo asset URL. Optional: the render gate, not the type, requires a resolved value. */\n src?: string;\n /** Accessible alt text. Optional: the render gate, not the type, requires a resolved value. */\n alt?: string;\n /** Navigation destination; defaults to the configured home. Dropped when it fails the safety check. */\n href?: string;\n /** Image loading strategy. `eager` suits the above-the-fold header; author `lazy` below it. */\n loading?: 'lazy' | 'eager';\n /** Merchant-authored logo, sliced from the page/layout content entry; wins over the props when\n * present. Absent in a non-CMS store — the props are the fallback. */\n $content?: ContentValue<typeof LogoContent>;\n};\n\nexport const LogoDefinition = defineComponent<LogoProps>({\n name: 'Logo',\n importPath: '@vtex/faststore/components',\n component: Logo,\n content: LogoContent,\n editor: { label: 'Logo', category: 'content' },\n schema: {\n src: { type: 'string', label: 'Source URL' },\n alt: { type: 'string', label: 'Alt Text' },\n href: { type: 'string', default: '/', label: 'Link Destination' },\n loading: { type: ['lazy', 'eager'] as const, default: 'eager', label: 'Loading' },\n },\n guideline:\n 'Brand logo linking to the configured home; a CMS entry overrides its src, alt, and href at runtime. Every prop is optional: an element bound to a CMS entry should author none of them, so an unconfigured store renders no logo instead of a placeholder. Author src and alt only where no entry supplies them, never as a fallback beside one. Size it responsively with a swatch on data-fs-logo, and reach the mark itself through data-fs-logo-image. A destination that is not an http, https, mailto, tel, or site-relative URL is dropped and the image renders unlinked. Loads eagerly for the above-the-fold header; set loading to lazy below the fold. Composes the Image and NavigationLink particles.',\n});\n\nexport function Logo({ src, alt, href = '/', loading = 'eager', $content, className, ...props }: LogoProps) {\n // The optional content fields fall through when blank, so clearing one in the Admin reads as\n // unauthored. `alt` is required in the model, so a blank value is a violation the gate rejects.\n const logoSrc = $content?.src?.trim() ? $content.src : src;\n const logoAlt = $content?.alt ?? alt;\n const logoHref = $content?.href?.trim() ? $content.href : href;\n\n if (!logoSrc || !logoAlt?.trim()) {\n return null;\n }\n\n // No read-time validator enforces `format` or `pattern`, so this is the only gate on the CMS value.\n const destination = resolveSafeHref(logoHref);\n if (!destination.safe) {\n // A bounded reason and no authored value, the convention the content runtime's own log follows.\n console.warn('[Logo] link destination rejected', { reason: destination.reason });\n }\n\n const image = <Image src={logoSrc} alt={logoAlt} loading={loading} data-fs-logo-image=\"\" />;\n\n return (\n <div {...props} className={className} data-fs-logo=\"\">\n {destination.safe ? <NavigationLink href={destination.href}>{image}</NavigationLink> : image}\n </div>\n );\n}\n"],"mappings":";;;;;;;;AAQA,MAAa,cAAc,kBAAkB;CAC3C,IAAI;CACJ,OAAO;CACP,aAAa;CACb,QAAQ;EACN,MAAM;EACN,sBAAsB;EAGtB,UAAU,CAAC,KAAK;EAChB,YAAY;GACV,KAAK;IAAE,MAAM;IAAU,WAAW;IAAG,OAAO;IAAc,QAAQ,EAAE,aAAa,gBAAgB;GAAE;GACnG,KAAK;IAAE,MAAM;IAAU,WAAW;IAAG,OAAO;GAAW;GACvD,MAAM;IACJ,MAAM;IACN,WAAW;IACX,OAAO;IACP,QAAQ;IAGR,SAAS;GACX;EACF;CACF;AACF,CAAC;AAiBD,MAAa,iBAAiB,gBAA2B;CACvD,MAAM;CACN,YAAY;CACZ,WAAW;CACX,SAAS;CACT,QAAQ;EAAE,OAAO;EAAQ,UAAU;CAAU;CAC7C,QAAQ;EACN,KAAK;GAAE,MAAM;GAAU,OAAO;EAAa;EAC3C,KAAK;GAAE,MAAM;GAAU,OAAO;EAAW;EACzC,MAAM;GAAE,MAAM;GAAU,SAAS;GAAK,OAAO;EAAmB;EAChE,SAAS;GAAE,MAAM,CAAC,QAAQ,OAAO;GAAY,SAAS;GAAS,OAAO;EAAU;CAClF;CACA,WACE;AACJ,CAAC;AAED,SAAgB,KAAK,EAAE,KAAK,KAAK,OAAO,KAAK,UAAU,SAAS,UAAU,WAAW,GAAG,SAAoB;CAG1G,MAAM,UAAU,UAAU,KAAK,KAAK,IAAI,SAAS,MAAM;CACvD,MAAM,UAAU,UAAU,OAAO;CACjC,MAAM,WAAW,UAAU,MAAM,KAAK,IAAI,SAAS,OAAO;CAE1D,IAAI,CAAC,WAAW,CAAC,SAAS,KAAK,GAC7B,OAAO;CAIT,MAAM,cAAc,gBAAgB,QAAQ;CAC5C,IAAI,CAAC,YAAY,MAEf,QAAQ,KAAK,oCAAoC,EAAE,QAAQ,YAAY,OAAO,CAAC;CAGjF,MAAM,QAAQ,oBAAC,OAAD;EAAO,KAAK;EAAS,KAAK;EAAkB;EAAS,sBAAmB;CAAI,CAAA;CAE1F,OACE,oBAAC,OAAD;EAAK,GAAI;EAAkB;EAAW,gBAAa;EAChD,UAAA,YAAY,OAAO,oBAAC,gBAAD;GAAgB,MAAM,YAAY;GAAO,UAAA;EAAsB,CAAA,IAAI;CACpF,CAAA;AAET"}
@@ -0,0 +1,103 @@
1
+ import { ComponentDefinition } from "../../core/dist/define-component.js";
2
+ import "../../core/dist/index.js";
3
+ import { ComponentPropsWithRef, ReactNode } from "react";
4
+ import { Menu } from "@base-ui/react/menu";
5
+ //#region src/particles/menu/menu.d.ts
6
+ export type MenuSide = 'top' | 'bottom' | 'left' | 'right';
7
+ export type MenuAlign = 'start' | 'center' | 'end';
8
+ export type MenuRootProps = {
9
+ modal?: boolean;
10
+ children?: ReactNode;
11
+ };
12
+ export type MenuTriggerProps = ComponentPropsWithRef<'button'>;
13
+ export type MenuPortalProps = {
14
+ children?: ReactNode;
15
+ };
16
+ export type MenuBackdropProps = ComponentPropsWithRef<'div'>;
17
+ export type MenuPositionerProps = ComponentPropsWithRef<'div'> & {
18
+ side?: MenuSide;
19
+ align?: MenuAlign;
20
+ sideOffset?: number;
21
+ alignOffset?: number;
22
+ };
23
+ export type MenuPopupProps = ComponentPropsWithRef<'div'>;
24
+ export type MenuArrowProps = ComponentPropsWithRef<'div'>;
25
+ export type MenuItemProps = ComponentPropsWithRef<'div'> & {
26
+ closeOnClick?: boolean;
27
+ };
28
+ export type MenuLinkItemProps = ComponentPropsWithRef<'a'>;
29
+ export type MenuSeparatorProps = ComponentPropsWithRef<'div'>;
30
+ export type MenuGroupProps = ComponentPropsWithRef<'div'>;
31
+ export type MenuGroupLabelProps = ComponentPropsWithRef<'div'>;
32
+ export type MenuCheckboxItemProps = ComponentPropsWithRef<'div'> & {
33
+ checked?: boolean;
34
+ closeOnClick?: boolean;
35
+ };
36
+ export type MenuCheckboxItemIndicatorProps = Omit<ComponentPropsWithRef<typeof Menu.CheckboxItemIndicator>, 'className'> & {
37
+ className?: string;
38
+ };
39
+ export type MenuRadioGroupProps = ComponentPropsWithRef<'div'> & {
40
+ value?: string;
41
+ };
42
+ export type MenuRadioItemProps = ComponentPropsWithRef<'div'> & {
43
+ value: string;
44
+ };
45
+ export type MenuRadioItemIndicatorProps = Omit<ComponentPropsWithRef<typeof Menu.RadioItemIndicator>, 'className'> & {
46
+ className?: string;
47
+ };
48
+ export declare const MenuRootDefinition: ComponentDefinition<MenuRootProps>;
49
+ export declare const MenuTriggerDefinition: ComponentDefinition<import("react").DetailedHTMLProps<import("react").ButtonHTMLAttributes<HTMLButtonElement>, HTMLButtonElement>>;
50
+ export declare const MenuPortalDefinition: ComponentDefinition<MenuPortalProps>;
51
+ export declare const MenuBackdropDefinition: ComponentDefinition<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLDivElement>, HTMLDivElement>>;
52
+ export declare const MenuPositionerDefinition: ComponentDefinition<MenuPositionerProps>;
53
+ export declare const MenuPopupDefinition: ComponentDefinition<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLDivElement>, HTMLDivElement>>;
54
+ export declare const MenuArrowDefinition: ComponentDefinition<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLDivElement>, HTMLDivElement>>;
55
+ export declare const MenuItemDefinition: ComponentDefinition<MenuItemProps>;
56
+ export declare const MenuLinkItemDefinition: ComponentDefinition<import("react").DetailedHTMLProps<import("react").AnchorHTMLAttributes<HTMLAnchorElement>, HTMLAnchorElement>>;
57
+ export declare const MenuSeparatorDefinition: ComponentDefinition<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLDivElement>, HTMLDivElement>>;
58
+ export declare const MenuGroupDefinition: ComponentDefinition<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLDivElement>, HTMLDivElement>>;
59
+ export declare const MenuGroupLabelDefinition: ComponentDefinition<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLDivElement>, HTMLDivElement>>;
60
+ export declare const MenuCheckboxItemDefinition: ComponentDefinition<MenuCheckboxItemProps>;
61
+ export declare const MenuCheckboxItemIndicatorDefinition: ComponentDefinition<MenuCheckboxItemIndicatorProps>;
62
+ export declare const MenuRadioGroupDefinition: ComponentDefinition<MenuRadioGroupProps>;
63
+ export declare const MenuRadioItemDefinition: ComponentDefinition<MenuRadioItemProps>;
64
+ export declare const MenuRadioItemIndicatorDefinition: ComponentDefinition<MenuRadioItemIndicatorProps>;
65
+ export declare function MenuRoot({ modal, children }: MenuRootProps): import("react/jsx-runtime").JSX.Element;
66
+ export declare function MenuTrigger({ className, children, ...props }: MenuTriggerProps): import("react/jsx-runtime").JSX.Element;
67
+ export declare function MenuPortal({ children }: MenuPortalProps): import("react/jsx-runtime").JSX.Element;
68
+ export declare function MenuBackdrop({ className, children, ...props }: MenuBackdropProps): import("react/jsx-runtime").JSX.Element;
69
+ export declare function MenuPositioner({ side, align, sideOffset, alignOffset, className, children, ...props }: MenuPositionerProps): import("react/jsx-runtime").JSX.Element;
70
+ export declare function MenuPopup({ className, children, ...props }: MenuPopupProps): import("react/jsx-runtime").JSX.Element;
71
+ export declare function MenuArrow({ className, children, ...props }: MenuArrowProps): import("react/jsx-runtime").JSX.Element;
72
+ export declare function MenuItem({ closeOnClick, className, children, ...props }: MenuItemProps): import("react/jsx-runtime").JSX.Element;
73
+ export declare function MenuLinkItem({ className, children, ...props }: MenuLinkItemProps): import("react/jsx-runtime").JSX.Element;
74
+ export declare function MenuSeparator({ className, children, ...props }: MenuSeparatorProps): import("react/jsx-runtime").JSX.Element;
75
+ export declare function MenuGroup({ className, children, ...props }: MenuGroupProps): import("react/jsx-runtime").JSX.Element;
76
+ export declare function MenuGroupLabel({ className, children, ...props }: MenuGroupLabelProps): import("react/jsx-runtime").JSX.Element;
77
+ export declare function MenuCheckboxItem({ checked, closeOnClick, className, children, ...props }: MenuCheckboxItemProps): import("react/jsx-runtime").JSX.Element;
78
+ export declare function MenuCheckboxItemIndicator({ className, children, ...props }: MenuCheckboxItemIndicatorProps): import("react/jsx-runtime").JSX.Element;
79
+ export declare function MenuRadioGroup({ value, className, children, ...props }: MenuRadioGroupProps): import("react/jsx-runtime").JSX.Element;
80
+ export declare function MenuRadioItem({ value, className, children, ...props }: MenuRadioItemProps): import("react/jsx-runtime").JSX.Element;
81
+ export declare function MenuRadioItemIndicator({ className, children, ...props }: MenuRadioItemIndicatorProps): import("react/jsx-runtime").JSX.Element;
82
+ declare const Menu$1: {
83
+ Root: typeof MenuRoot;
84
+ Trigger: typeof MenuTrigger;
85
+ Portal: typeof MenuPortal;
86
+ Backdrop: typeof MenuBackdrop;
87
+ Positioner: typeof MenuPositioner;
88
+ Popup: typeof MenuPopup;
89
+ Arrow: typeof MenuArrow;
90
+ Item: typeof MenuItem;
91
+ LinkItem: typeof MenuLinkItem;
92
+ Separator: typeof MenuSeparator;
93
+ Group: typeof MenuGroup;
94
+ GroupLabel: typeof MenuGroupLabel;
95
+ CheckboxItem: typeof MenuCheckboxItem;
96
+ CheckboxItemIndicator: typeof MenuCheckboxItemIndicator;
97
+ RadioGroup: typeof MenuRadioGroup;
98
+ RadioItem: typeof MenuRadioItem;
99
+ RadioItemIndicator: typeof MenuRadioItemIndicator;
100
+ };
101
+ //#endregion
102
+ export { Menu$1 as Menu };
103
+ //# sourceMappingURL=menu.d.ts.map