@wix/agent-skills 1.15.0 → 1.16.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 (355) hide show
  1. package/README.md +5 -1
  2. package/package.json +1 -1
  3. package/skills/wix-app/SKILL.md +4 -1
  4. package/skills/wix-app/references/APP_TOOLS.md +134 -0
  5. package/skills/wix-app/references/CUSTOM_ELEMENT_WIDGET.md +1 -1
  6. package/skills/wix-app/references/DASHBOARD_PAGE.md +0 -10
  7. package/skills/wix-app/references/DATA_COLLECTION.md +6 -4
  8. package/skills/wix-app/references/EDITOR_REACT_COMPONENT.md +28 -7
  9. package/skills/wix-app/references/SERVICE_PLUGIN.md +12 -10
  10. package/skills/wix-app/references/STORES_VERSIONING.md +9 -211
  11. package/skills/wix-app/references/app-tools/TOOLS.md +75 -0
  12. package/skills/wix-app/references/backend-event/COMMON-EVENTS.md +5 -0
  13. package/skills/wix-app/references/dashboard-page/DASHBOARD_API.md +2 -2
  14. package/skills/wix-app/references/editor-react-component/A11Y-REVIEW-REFERENCE.md +172 -0
  15. package/skills/wix-app/references/editor-react-component/A11Y-REVIEW.md +138 -0
  16. package/skills/wix-app/references/editor-react-component/ANIMATED-COMPONENTS.md +172 -0
  17. package/skills/wix-app/references/editor-react-component/BRANDED-COMPONENTS.md +29 -0
  18. package/skills/wix-app/references/editor-react-component/COMPONENT-API.md +1 -1
  19. package/skills/wix-app/references/editor-react-component/COMPONENT-PREVIEW.md +57 -0
  20. package/skills/wix-app/references/editor-react-component/CSS-GUIDELINES.md +33 -2
  21. package/skills/wix-app/references/editor-react-component/DESIGN-STATES.md +5 -3
  22. package/skills/wix-app/references/editor-react-component/DIRECTIONALITY.md +18 -1
  23. package/skills/wix-app/references/editor-react-component/PARTS.md +15 -2
  24. package/skills/wix-app/references/editor-react-component/REACT-GUIDELINES.md +4 -3
  25. package/skills/wix-app/references/service-plugin/BOOKINGS-STAFF-SORTING.md +13 -9
  26. package/skills/wix-app/references/service-plugin/DISCOUNT-TRIGGERS.md +4 -0
  27. package/skills/wix-app/references/service-plugin/GIFT-CARDS.md +4 -0
  28. package/skills/wix-app/references/service-plugin/PAYMENT-SETTINGS.md +3 -1
  29. package/skills/wix-app/references/service-plugin/SHIPPING-RATES.md +4 -0
  30. package/skills/wix-app/references/service-plugin/TOOLS_PROVIDER.md +54 -0
  31. package/skills/wix-app/references/stores/CATEGORIES.md +22 -0
  32. package/skills/wix-app/references/stores/GET_PRODUCT.md +99 -0
  33. package/skills/wix-app/references/stores/INVENTORY.md +37 -0
  34. package/skills/wix-app/references/stores/QUERY.md +119 -0
  35. package/skills/wix-app/references/stores/WRITE.md +55 -0
  36. package/skills/wix-docs/SKILL.md +35 -3
  37. package/skills/wix-headless/SKILL.md +9 -2
  38. package/skills/wix-headless/entry/bootstrap.mjs +2 -2
  39. package/skills/wix-headless/entry/skill.md +0 -2
  40. package/skills/wix-headless/references/CAPABILITIES.md +6 -4
  41. package/skills/wix-headless/references/CONTENT.md +36 -0
  42. package/skills/wix-headless/references/DESIGN.md +54 -0
  43. package/skills/wix-headless/references/DISCOVERY.md +25 -1
  44. package/skills/wix-headless/references/FEEDBACK.md +16 -5
  45. package/skills/wix-headless/references/IMAGE_GENERATION.md +10 -0
  46. package/skills/wix-headless/references/SDK_HANDOFF.md +2 -0
  47. package/skills/wix-headless/references/SEED.md +3 -1
  48. package/skills/wix-headless/references/SETUP.md +1 -1
  49. package/skills/wix-headless/references/inline-recipes/how-to-code-a-store.md +3 -2
  50. package/skills/wix-headless/references/inline-recipes/how-to-code-restaurant-reservations.md +42 -2
  51. package/skills/wix-headless/references/inline-recipes/setup-bookings.md +5 -1
  52. package/skills/wix-headless/references/inline-recipes/setup-forms.md +1 -1
  53. package/skills/wix-headless/references/inline-recipes/setup-online-store.md +33 -8
  54. package/skills/wix-headless/references/inline-recipes/setup-portfolio.md +3 -1
  55. package/skills/wix-headless/references/inline-recipes/setup-restaurant-experiences.md +73 -0
  56. package/skills/wix-headless/references/inline-recipes/setup-restaurant-orders.md +38 -2
  57. package/skills/wix-headless/references/inline-recipes/setup-restaurant-reservations.md +20 -1
  58. package/skills/wix-headless/references/inline-recipes/setup-restaurants.md +1 -1
  59. package/skills/wix-headless/references/managed/CONNECT.md +2 -2
  60. package/skills/wix-headless/references/managed/CREATE.md +15 -1
  61. package/skills/wix-headless/references/managed/DEPLOYMENT.md +47 -0
  62. package/skills/wix-headless/references/self-managed/DEPLOYMENT.md +8 -0
  63. package/skills/wix-headless/references/stripe/DEPLOYMENT.md +8 -0
  64. package/skills/wix-manage/SKILL.md +131 -12
  65. package/skills/wix-manage/references/analytics/analytics-dashboard-navigation.md +41 -0
  66. package/skills/wix-manage/references/analytics/query-site-analytics.md +66 -9
  67. package/skills/wix-manage/references/app-installation/app-installation-dashboard-navigation.md +28 -0
  68. package/skills/wix-manage/references/app-installation/install-wix-apps.md +3 -0
  69. package/skills/wix-manage/references/blog/blog-dashboard-navigation.md +56 -0
  70. package/skills/wix-manage/references/blog/how-to-create-blog-posts.md +31 -6
  71. package/skills/wix-manage/references/bookings/booking-service-policy-setup.md +3 -1
  72. package/skills/wix-manage/references/bookings/bookings-dashboard-navigation.md +63 -0
  73. package/skills/wix-manage/references/bookings/create-booking-service-from-prompt.md +6 -5
  74. package/skills/wix-manage/references/bookings/create-course-service.md +30 -5
  75. package/skills/wix-manage/references/bookings/diagnose-availability-issues.md +85 -42
  76. package/skills/wix-manage/references/cms/cms-dashboard-navigation.md +44 -0
  77. package/skills/wix-manage/references/cms/cms-data-items-crud.md +31 -3
  78. package/skills/wix-manage/references/cms/cms-publishing-flow.md +287 -0
  79. package/skills/wix-manage/references/cms/cms-schema-management.md +33 -1
  80. package/skills/wix-manage/references/contacts/contacts-dashboard-navigation.md +46 -0
  81. package/skills/wix-manage/references/contacts/create-a-contact.md +82 -0
  82. package/skills/wix-manage/references/contacts/update-a-contact.md +119 -0
  83. package/skills/wix-manage/references/dashboard-navigation/dashboard-navigation.md +82 -0
  84. package/skills/wix-manage/references/dashboard-navigation/routes.json +1733 -0
  85. package/skills/wix-manage/references/domains/domains-dashboard-navigation.md +32 -0
  86. package/skills/wix-manage/references/ecommerce/ecom-pricing.md +4 -4
  87. package/skills/wix-manage/references/ecommerce/ecom-shipping.md +1 -1
  88. package/skills/wix-manage/references/ecommerce/gift-cards/ecom-gift-cards-goal-sell-gift-cards.md +338 -0
  89. package/skills/wix-manage/references/ecommerce/pricing-promotions/ecom-pricing-create-discount-rule.md +42 -78
  90. package/skills/wix-manage/references/ecommerce/pricing-promotions/ecom-pricing-flow-bundle-and-save.md +1 -1
  91. package/skills/wix-manage/references/ecommerce/pricing-promotions/ecom-pricing-flow-stock-mover.md +1 -1
  92. package/skills/wix-manage/references/ecommerce/pricing-promotions/ecom-pricing-flow-upsell-boost.md +1 -1
  93. package/skills/wix-manage/references/ecommerce/recommend-ecommerce-strategy.md +90 -92
  94. package/skills/wix-manage/references/events/create-wix-event.md +176 -0
  95. package/skills/wix-manage/references/events/manage-wix-events.md +174 -0
  96. package/skills/wix-manage/references/forms/forms-dashboard-navigation.md +44 -0
  97. package/skills/wix-manage/references/get-paid/get-paid-dashboard-navigation.md +52 -0
  98. package/skills/wix-manage/references/get-paid/how-to-setup-wix-payments.md +30 -7
  99. package/skills/wix-manage/references/google-ads/billing-and-payment.md +80 -0
  100. package/skills/wix-manage/references/google-ads/create-performance-max-campaign.md +212 -0
  101. package/skills/wix-manage/references/google-ads/get-campaign-suggestions.md +110 -0
  102. package/skills/wix-manage/references/google-ads/google-ads-dashboard-navigation.md +25 -0
  103. package/skills/wix-manage/references/google-ads/install-and-create-account.md +155 -0
  104. package/skills/wix-manage/references/google-ads/manage-campaign-lifecycle.md +63 -0
  105. package/skills/wix-manage/references/google-ads/query-campaign-analytics.md +155 -0
  106. package/skills/wix-manage/references/marketing/create-and-publish-social-post.md +225 -144
  107. package/skills/wix-manage/references/marketing/generate-and-publish-marketing-plan.md +19 -10
  108. package/skills/wix-manage/references/marketing/marketing-dashboard-navigation.md +52 -0
  109. package/skills/wix-manage/references/pricing-plans/create-and-update-pricing-plans.md +99 -1
  110. package/skills/wix-manage/references/pricing-plans/pricing-plans-dashboard-navigation.md +45 -0
  111. package/skills/wix-manage/references/restaurants/restaurants-dashboard-navigation.md +68 -0
  112. package/skills/wix-manage/references/restaurants/wix-restaurants-setup.md +94 -125
  113. package/skills/wix-manage/references/site-properties/change-payment-currency-site-properties.md +48 -9
  114. package/skills/wix-manage/references/site-properties/site-properties-dashboard-navigation.md +31 -0
  115. package/skills/wix-manage/references/sites/create-headless-site.md +52 -0
  116. package/skills/wix-manage/references/sites/create-site-from-template.md +2 -25
  117. package/skills/wix-manage/references/sites/site-import.md +243 -0
  118. package/skills/wix-manage/references/sites/sites-dashboard-navigation.md +29 -0
  119. package/skills/wix-manage/references/stores/add-store-pages-to-site.md +17 -1
  120. package/skills/wix-manage/references/stores/create-product-from-image.md +8 -6
  121. package/skills/wix-manage/references/stores/create-product-with-options-catalog-v3.md +16 -10
  122. package/skills/wix-manage/references/stores/find-products-query-and-search-catalog-v3.md +26 -8
  123. package/skills/wix-manage/references/stores/stores-dashboard-navigation.md +65 -0
  124. package/skills/wix-manage/references/stores/update-product-with-options.md +39 -7
  125. package/skills/wix-replatform/.publish-manifest.json +8 -0
  126. package/skills/wix-replatform/SKILL.md +693 -0
  127. package/skills/wix-replatform/lib/artifact-freshness.js +215 -0
  128. package/skills/wix-replatform/lib/completion-report.js +200 -0
  129. package/skills/wix-replatform/lib/config-env.js +59 -0
  130. package/skills/wix-replatform/lib/execution-manifest.js +185 -0
  131. package/skills/wix-replatform/lib/execution-state.js +173 -0
  132. package/skills/wix-replatform/lib/import-recovery.js +313 -0
  133. package/skills/wix-replatform/lib/local-state.js +642 -0
  134. package/skills/wix-replatform/lib/orchestration-preflight.js +143 -0
  135. package/skills/wix-replatform/lib/orchestration-router.js +122 -0
  136. package/skills/wix-replatform/lib/orchestration-state.js +455 -0
  137. package/skills/wix-replatform/lib/progress-log.js +224 -0
  138. package/skills/wix-replatform/lib/progress-log.sh +140 -0
  139. package/skills/wix-replatform/lib/url-preservation-state.js +391 -0
  140. package/skills/wix-replatform/resources/rp-discovery/SKILL.md +184 -0
  141. package/skills/wix-replatform/resources/rp-execute-import/SKILL.md +529 -0
  142. package/skills/wix-replatform/resources/rp-execute-setup/SKILL.md +316 -0
  143. package/skills/wix-replatform/resources/rp-execute-setup/scripts/mint-token.sh +64 -0
  144. package/skills/wix-replatform/resources/rp-import-codegen/SKILL.md +1114 -0
  145. package/skills/wix-replatform/resources/rp-mapper/SKILL.md +430 -0
  146. package/skills/wix-replatform/resources/rp-mapper/lib/mapping-resolve.js +217 -0
  147. package/skills/wix-replatform/resources/rp-mapper/scripts/resolve-mapping.js +148 -0
  148. package/skills/wix-replatform/resources/rp-mapper/wix-business-solutions-taxonomy.md +378 -0
  149. package/skills/wix-replatform/resources/rp-setup-discovery/SKILL.md +183 -0
  150. package/skills/wix-replatform/resources/rp-source-csv/SKILL.md +478 -0
  151. package/skills/wix-replatform/resources/rp-source-csv/lib/canonical-record.js +136 -0
  152. package/skills/wix-replatform/resources/rp-source-csv/lib/csv-fileset.js +0 -0
  153. package/skills/wix-replatform/resources/rp-source-csv/lib/csv-fingerprint.js +310 -0
  154. package/skills/wix-replatform/resources/rp-source-csv/lib/csv-layout.js +1081 -0
  155. package/skills/wix-replatform/resources/rp-source-csv/lib/csv-parse.js +618 -0
  156. package/skills/wix-replatform/resources/rp-source-csv/scripts/csv-discovery.js +949 -0
  157. package/skills/wix-replatform/resources/rp-source-csv/source-schema.example.json +196 -0
  158. package/skills/wix-replatform/resources/rp-source-csv/vendors/bigcommerce.json +66 -0
  159. package/skills/wix-replatform/resources/rp-source-csv/vendors/magento.json +60 -0
  160. package/skills/wix-replatform/resources/rp-source-csv/vendors/shopify.json +95 -0
  161. package/skills/wix-replatform/resources/rp-source-csv/vendors/woocommerce.json +82 -0
  162. package/skills/wix-replatform/resources/rp-source-wordpress/SKILL.md +256 -0
  163. package/skills/wix-replatform/resources/rp-source-wordpress/lib/wp-http.js +249 -0
  164. package/skills/wix-replatform/resources/rp-source-wordpress/lib/wp-route-classifier.js +444 -0
  165. package/skills/wix-replatform/resources/rp-source-wordpress/scripts/wp-discovery.js +774 -0
  166. package/skills/wix-replatform/resources/rp-source-wordpress/source-schema.example.json +71 -0
  167. package/skills/wix-replatform/resources/rp-target-wix/SKILL.md +632 -0
  168. package/skills/wix-replatform/resources/rp-target-wix/SPEC-product-reviews-and-blog-authorship.md +330 -0
  169. package/skills/wix-replatform/resources/rp-target-wix/domains/README.md +21 -0
  170. package/skills/wix-replatform/resources/rp-target-wix/domains/blog/domain.json +19 -0
  171. package/skills/wix-replatform/resources/rp-target-wix/domains/blog/entities/category.json +37 -0
  172. package/skills/wix-replatform/resources/rp-target-wix/domains/blog/entities/comment.json +37 -0
  173. package/skills/wix-replatform/resources/rp-target-wix/domains/blog/entities/post.json +39 -0
  174. package/skills/wix-replatform/resources/rp-target-wix/domains/blog/entities/tag.json +35 -0
  175. package/skills/wix-replatform/resources/rp-target-wix/domains/cms/domain.json +14 -0
  176. package/skills/wix-replatform/resources/rp-target-wix/domains/cms/entities/collection.json +35 -0
  177. package/skills/wix-replatform/resources/rp-target-wix/domains/cms/entities/data-item.json +36 -0
  178. package/skills/wix-replatform/resources/rp-target-wix/domains/cms/entities/reference.json +35 -0
  179. package/skills/wix-replatform/resources/rp-target-wix/domains/crm/domain.json +14 -0
  180. package/skills/wix-replatform/resources/rp-target-wix/domains/crm/entities/contact.json +131 -0
  181. package/skills/wix-replatform/resources/rp-target-wix/domains/crm/entities/email-subscription.json +37 -0
  182. package/skills/wix-replatform/resources/rp-target-wix/domains/crm/entities/label.json +37 -0
  183. package/skills/wix-replatform/resources/rp-target-wix/domains/ecom/domain.json +21 -0
  184. package/skills/wix-replatform/resources/rp-target-wix/domains/ecom/entities/order-line-item.json +37 -0
  185. package/skills/wix-replatform/resources/rp-target-wix/domains/ecom/entities/order-refund.json +37 -0
  186. package/skills/wix-replatform/resources/rp-target-wix/domains/ecom/entities/order.json +97 -0
  187. package/skills/wix-replatform/resources/rp-target-wix/domains/index.json +528 -0
  188. package/skills/wix-replatform/resources/rp-target-wix/domains/media/domain.json +14 -0
  189. package/skills/wix-replatform/resources/rp-target-wix/domains/media/entities/media-file.json +38 -0
  190. package/skills/wix-replatform/resources/rp-target-wix/domains/media/entities/media-folder.json +37 -0
  191. package/skills/wix-replatform/resources/rp-target-wix/domains/members/domain.json +13 -0
  192. package/skills/wix-replatform/resources/rp-target-wix/domains/members/entities/badge.json +37 -0
  193. package/skills/wix-replatform/resources/rp-target-wix/domains/members/entities/member.json +53 -0
  194. package/skills/wix-replatform/resources/rp-target-wix/domains/schema.json +84 -0
  195. package/skills/wix-replatform/resources/rp-target-wix/domains/stores/domain.json +25 -0
  196. package/skills/wix-replatform/resources/rp-target-wix/domains/stores/entities/category.json +37 -0
  197. package/skills/wix-replatform/resources/rp-target-wix/domains/stores/entities/coupon.json +37 -0
  198. package/skills/wix-replatform/resources/rp-target-wix/domains/stores/entities/inventory-item.json +38 -0
  199. package/skills/wix-replatform/resources/rp-target-wix/domains/stores/entities/product-tag.json +37 -0
  200. package/skills/wix-replatform/resources/rp-target-wix/domains/stores/entities/product.json +90 -0
  201. package/skills/wix-replatform/resources/rp-target-wix/lib/audit-summary.js +64 -0
  202. package/skills/wix-replatform/resources/rp-target-wix/lib/contract-ledger.js +141 -0
  203. package/skills/wix-replatform/resources/rp-target-wix/lib/domain-knowledge.js +384 -0
  204. package/skills/wix-replatform/resources/rp-target-wix/lib/ndjson.js +260 -0
  205. package/skills/wix-replatform/resources/rp-target-wix/lib/stores-verification.js +238 -0
  206. package/skills/wix-replatform/resources/rp-target-wix/lib/wix-build.js +237 -0
  207. package/skills/wix-replatform/resources/rp-target-wix/lib/wix-target-spec.js +238 -0
  208. package/skills/wix-replatform/resources/rp-target-wix/lib/wix-writers.js +2219 -0
  209. package/skills/wix-replatform/resources/rp-target-wix/scripts/domain-knowledge-validate.js +31 -0
  210. package/skills/wix-replatform/resources/rp-target-wix/scripts/domain-knowledge.js +100 -0
  211. package/skills/wix-replatform/resources/rp-target-wix/scripts/verify-stores.js +107 -0
  212. package/skills/wix-replatform/resources/rp-telemetry/SKILL.md +344 -0
  213. package/skills/wix-replatform/resources/rp-telemetry/lib/bi-sink.js +250 -0
  214. package/skills/wix-replatform/resources/rp-telemetry/lib/telemetry-recorder.js +1927 -0
  215. package/skills/wix-replatform/resources/rp-telemetry/scripts/meter-from-audit.js +83 -0
  216. package/skills/wix-replatform/resources/rp-telemetry/scripts/rp-telemetry.js +141 -0
  217. package/skills/wix-replatform/scripts/artifact-freshness.js +76 -0
  218. package/skills/wix-replatform/scripts/execution-manifest-validate.js +43 -0
  219. package/skills/wix-replatform/scripts/execution-state-prepare.js +128 -0
  220. package/skills/wix-replatform/scripts/orchestration-preflight.js +48 -0
  221. package/skills/wix-replatform/scripts/orchestration-route.js +46 -0
  222. package/skills/wix-replatform/scripts/orchestration-state.js +245 -0
  223. package/skills/wix-vibe-headless/SKILL.md +54 -25
  224. package/skills/wix-vibe-headless/install/deploy.cjs +95 -0
  225. package/skills/wix-vibe-headless/install/pin-agents-md.cjs +34 -0
  226. package/skills/wix-vibe-headless/platforms/README.md +26 -0
  227. package/skills/wix-vibe-headless/platforms/base44.md +177 -0
  228. package/skills/wix-vibe-headless/platforms/generic.md +122 -0
  229. package/skills/wix-vibe-headless/references/blog/INSTRUCTIONS.md +230 -119
  230. package/skills/wix-vibe-headless/references/blog/app/components/PostCard.jsx +43 -0
  231. package/skills/wix-vibe-headless/references/blog/app/components/PostChips.jsx +25 -0
  232. package/skills/wix-vibe-headless/references/blog/app/components/PostGrid.jsx +15 -0
  233. package/skills/wix-vibe-headless/references/blog/app/context/TaxonomyContext.jsx +35 -0
  234. package/skills/wix-vibe-headless/references/blog/app/hooks/usePostDetail.js +38 -0
  235. package/skills/wix-vibe-headless/references/blog/app/pages/Blog.jsx +40 -0
  236. package/skills/wix-vibe-headless/references/blog/app/pages/CategoryPage.jsx +54 -0
  237. package/skills/wix-vibe-headless/references/blog/app/pages/PostDetail.jsx +65 -0
  238. package/skills/wix-vibe-headless/references/blog/app/pages/TagPage.jsx +50 -0
  239. package/skills/wix-vibe-headless/references/blog/seed/SEED.md +103 -0
  240. package/skills/wix-vibe-headless/references/blog/seed/seed-blog.js +270 -0
  241. package/skills/wix-vibe-headless/references/bookings/INSTRUCTIONS.md +260 -145
  242. package/skills/wix-vibe-headless/references/bookings/app/components/BookingForm.jsx +65 -0
  243. package/skills/wix-vibe-headless/references/bookings/app/components/ServiceCard.jsx +47 -0
  244. package/skills/wix-vibe-headless/references/bookings/app/components/ServiceGrid.jsx +13 -0
  245. package/skills/wix-vibe-headless/references/bookings/app/components/SlotPicker.jsx +126 -0
  246. package/skills/wix-vibe-headless/references/bookings/app/hooks/useServiceDetail.js +108 -0
  247. package/skills/wix-vibe-headless/references/bookings/app/hooks/useServices.js +58 -0
  248. package/skills/wix-vibe-headless/references/bookings/app/lib/serviceFacts.js +95 -0
  249. package/skills/wix-vibe-headless/references/bookings/app/pages/ServiceDetail.jsx +94 -0
  250. package/skills/wix-vibe-headless/references/bookings/app/pages/Services.jsx +89 -0
  251. package/skills/wix-vibe-headless/references/bookings/{wix-bookings-checkout.js → app/rest/wix-bookings-checkout.js} +1 -1
  252. package/skills/wix-vibe-headless/references/bookings/{wix-bookings-services.js → app/rest/wix-bookings-services.js} +90 -12
  253. package/skills/wix-vibe-headless/references/bookings/seed/SEED.md +117 -0
  254. package/skills/wix-vibe-headless/references/bookings/seed/seed-bookings.js +333 -0
  255. package/skills/wix-vibe-headless/references/cms/INSTRUCTIONS.md +169 -147
  256. package/skills/wix-vibe-headless/references/cms/app/collection.config.js +31 -0
  257. package/skills/wix-vibe-headless/references/cms/app/lib/wixImage.js +18 -0
  258. package/skills/wix-vibe-headless/references/cms/{wix-cms.js → app/rest/wix-cms.js} +47 -2
  259. package/skills/wix-vibe-headless/references/cms/seed/SEED.md +145 -0
  260. package/skills/wix-vibe-headless/references/events/INSTRUCTIONS.md +228 -131
  261. package/skills/wix-vibe-headless/references/events/app/components/CategoryFilter.jsx +23 -0
  262. package/skills/wix-vibe-headless/references/events/app/components/EventCard.jsx +43 -0
  263. package/skills/wix-vibe-headless/references/events/app/components/EventGrid.jsx +13 -0
  264. package/skills/wix-vibe-headless/references/events/app/components/EventRegistration.jsx +29 -0
  265. package/skills/wix-vibe-headless/references/events/app/components/RsvpForm.jsx +57 -0
  266. package/skills/wix-vibe-headless/references/events/app/components/TicketPicker.jsx +78 -0
  267. package/skills/wix-vibe-headless/references/events/app/hooks/useEventDetail.js +27 -0
  268. package/skills/wix-vibe-headless/references/events/app/hooks/useEventsList.js +54 -0
  269. package/skills/wix-vibe-headless/references/events/app/hooks/useRsvpForm.js +40 -0
  270. package/skills/wix-vibe-headless/references/events/app/hooks/useTicketing.js +81 -0
  271. package/skills/wix-vibe-headless/references/events/app/pages/EventDetail.jsx +48 -0
  272. package/skills/wix-vibe-headless/references/events/app/pages/Events.jsx +36 -0
  273. package/skills/wix-vibe-headless/references/events/{wix-events-browse.js → app/rest/wix-events-browse.js} +3 -2
  274. package/skills/wix-vibe-headless/references/events/seed/SEED.md +107 -0
  275. package/skills/wix-vibe-headless/references/events/seed/seed-events.js +251 -0
  276. package/skills/wix-vibe-headless/references/members/INSTRUCTIONS.md +276 -188
  277. package/skills/wix-vibe-headless/references/members/app/components/LoginForm.jsx +101 -0
  278. package/skills/wix-vibe-headless/references/members/app/components/MemberMenu.jsx +33 -0
  279. package/skills/wix-vibe-headless/references/members/app/components/RequireAuth.jsx +21 -0
  280. package/skills/wix-vibe-headless/references/members/app/components/SocialButtons.jsx +29 -0
  281. package/skills/wix-vibe-headless/references/members/app/context/MemberContext.jsx +54 -0
  282. package/skills/wix-vibe-headless/references/members/app/hooks/useLoginForm.js +77 -0
  283. package/skills/wix-vibe-headless/references/members/app/pages/Account.jsx +36 -0
  284. package/skills/wix-vibe-headless/references/members/app/pages/Callback.jsx +32 -0
  285. package/skills/wix-vibe-headless/references/members/app/pages/Login.jsx +35 -0
  286. package/skills/wix-vibe-headless/references/members/{wix-members-auth.js → app/rest/wix-members-auth.js} +6 -3
  287. package/skills/wix-vibe-headless/references/members/install/Register.jsx +22 -0
  288. package/skills/wix-vibe-headless/references/members/seed/SEED.md +22 -0
  289. package/skills/wix-vibe-headless/references/portfolio/INSTRUCTIONS.md +233 -104
  290. package/skills/wix-vibe-headless/references/portfolio/app/components/CollectionCard.jsx +31 -0
  291. package/skills/wix-vibe-headless/references/portfolio/app/components/CollectionGrid.jsx +15 -0
  292. package/skills/wix-vibe-headless/references/portfolio/app/components/ProjectCard.jsx +39 -0
  293. package/skills/wix-vibe-headless/references/portfolio/app/components/ProjectGrid.jsx +15 -0
  294. package/skills/wix-vibe-headless/references/portfolio/app/components/ProjectMedia.jsx +29 -0
  295. package/skills/wix-vibe-headless/references/portfolio/app/hooks/useCollectionProjects.js +35 -0
  296. package/skills/wix-vibe-headless/references/portfolio/app/hooks/usePortfolioGallery.js +27 -0
  297. package/skills/wix-vibe-headless/references/portfolio/app/hooks/useProjectDetail.js +25 -0
  298. package/skills/wix-vibe-headless/references/portfolio/app/pages/CollectionPage.jsx +39 -0
  299. package/skills/wix-vibe-headless/references/portfolio/app/pages/Portfolio.jsx +27 -0
  300. package/skills/wix-vibe-headless/references/portfolio/app/pages/ProjectDetail.jsx +60 -0
  301. package/skills/wix-vibe-headless/references/portfolio/{wix-portfolio.js → app/rest/wix-portfolio.js} +84 -55
  302. package/skills/wix-vibe-headless/references/portfolio/seed/SEED.md +94 -0
  303. package/skills/wix-vibe-headless/references/portfolio/seed/seed-portfolio.js +236 -0
  304. package/skills/wix-vibe-headless/references/pricing-plans/INSTRUCTIONS.md +240 -117
  305. package/skills/wix-vibe-headless/references/pricing-plans/app/components/OrderCard.jsx +35 -0
  306. package/skills/wix-vibe-headless/references/pricing-plans/app/components/PlanCard.jsx +48 -0
  307. package/skills/wix-vibe-headless/references/pricing-plans/app/components/PlanGrid.jsx +16 -0
  308. package/skills/wix-vibe-headless/references/pricing-plans/app/components/PlanPrice.jsx +35 -0
  309. package/skills/wix-vibe-headless/references/pricing-plans/app/hooks/useMyPlans.js +25 -0
  310. package/skills/wix-vibe-headless/references/pricing-plans/app/hooks/usePlanDetail.js +28 -0
  311. package/skills/wix-vibe-headless/references/pricing-plans/app/hooks/usePlans.js +30 -0
  312. package/skills/wix-vibe-headless/references/pricing-plans/app/pages/MyPlans.jsx +30 -0
  313. package/skills/wix-vibe-headless/references/pricing-plans/app/pages/PlanDetail.jsx +53 -0
  314. package/skills/wix-vibe-headless/references/pricing-plans/app/pages/Plans.jsx +28 -0
  315. package/skills/wix-vibe-headless/references/pricing-plans/seed/SEED.md +86 -0
  316. package/skills/wix-vibe-headless/references/pricing-plans/seed/seed-pricing-plans.js +251 -0
  317. package/skills/wix-vibe-headless/references/restaurants/INSTRUCTIONS.md +248 -124
  318. package/skills/wix-vibe-headless/references/restaurants/app/components/ItemDialog.jsx +81 -0
  319. package/skills/wix-vibe-headless/references/restaurants/app/components/MenuItemCard.jsx +71 -0
  320. package/skills/wix-vibe-headless/references/restaurants/app/components/MenuList.jsx +43 -0
  321. package/skills/wix-vibe-headless/references/restaurants/app/components/OrderCartButton.jsx +21 -0
  322. package/skills/wix-vibe-headless/references/restaurants/app/components/OrderCartDrawer.jsx +60 -0
  323. package/skills/wix-vibe-headless/references/restaurants/app/context/OrderCartContext.jsx +63 -0
  324. package/skills/wix-vibe-headless/references/restaurants/app/hooks/useItemOrder.js +32 -0
  325. package/skills/wix-vibe-headless/references/restaurants/app/hooks/useReservation.js +73 -0
  326. package/skills/wix-vibe-headless/references/restaurants/app/pages/Menu.jsx +28 -0
  327. package/skills/wix-vibe-headless/references/restaurants/app/pages/Reservations.jsx +102 -0
  328. package/skills/wix-vibe-headless/references/restaurants/seed/SEED.md +180 -0
  329. package/skills/wix-vibe-headless/references/restaurants/seed/seed-restaurants.js +452 -0
  330. package/skills/wix-vibe-headless/references/shared/app/components/WixManageBanner.jsx +56 -0
  331. package/skills/wix-vibe-headless/references/shared/{wix-client.js → app/rest/wix-client.js} +6 -8
  332. package/skills/wix-vibe-headless/references/shared/app/rest/wix-config.js +6 -0
  333. package/skills/wix-vibe-headless/references/storefront/INSTRUCTIONS.md +263 -148
  334. package/skills/wix-vibe-headless/references/storefront/app/components/CartButton.jsx +20 -0
  335. package/skills/wix-vibe-headless/references/storefront/app/components/CartDrawer.jsx +150 -0
  336. package/skills/wix-vibe-headless/references/storefront/app/components/ProductCard.jsx +167 -0
  337. package/skills/wix-vibe-headless/references/storefront/app/components/ProductGallery.jsx +51 -0
  338. package/skills/wix-vibe-headless/references/storefront/app/components/ProductGrid.jsx +54 -0
  339. package/skills/wix-vibe-headless/references/storefront/app/components/VariantPicker.jsx +119 -0
  340. package/skills/wix-vibe-headless/references/storefront/app/context/CartContext.jsx +71 -0
  341. package/skills/wix-vibe-headless/references/storefront/app/hooks/useProductDetail.js +109 -0
  342. package/skills/wix-vibe-headless/references/storefront/app/hooks/useShop.js +98 -0
  343. package/skills/wix-vibe-headless/references/storefront/app/lib/storeImage.js +27 -0
  344. package/skills/wix-vibe-headless/references/storefront/app/pages/ProductDetail.jsx +139 -0
  345. package/skills/wix-vibe-headless/references/storefront/app/pages/Shop.jsx +75 -0
  346. package/skills/wix-vibe-headless/references/storefront/{wix-store-cart.js → app/rest/wix-store-cart.js} +1 -1
  347. package/skills/wix-vibe-headless/references/storefront/{wix-store-catalog.js → app/rest/wix-store-catalog.js} +25 -2
  348. package/skills/wix-vibe-headless/references/storefront/seed/SEED.md +111 -0
  349. package/skills/wix-vibe-headless/references/storefront/seed/seed-store.js +299 -0
  350. /package/skills/wix-vibe-headless/references/blog/{wix-blog.js → app/rest/wix-blog.js} +0 -0
  351. /package/skills/wix-vibe-headless/references/events/{wix-events-registration.js → app/rest/wix-events-registration.js} +0 -0
  352. /package/skills/wix-vibe-headless/references/pricing-plans/{wix-pricing-plans.js → app/rest/wix-pricing-plans.js} +0 -0
  353. /package/skills/wix-vibe-headless/references/restaurants/{wix-restaurants-menu.js → app/rest/wix-restaurants-menu.js} +0 -0
  354. /package/skills/wix-vibe-headless/references/restaurants/{wix-restaurants-ordering.js → app/rest/wix-restaurants-ordering.js} +0 -0
  355. /package/skills/wix-vibe-headless/references/restaurants/{wix-restaurants-reservations.js → app/rest/wix-restaurants-reservations.js} +0 -0
@@ -0,0 +1,148 @@
1
+ #!/usr/bin/env node
2
+ 'use strict';
3
+
4
+ // Deterministic mapping stage.
5
+ //
6
+ // node scripts/resolve-mapping.js --fileset <discovery fileset.json> --out <mapping dir>
7
+ // node scripts/resolve-mapping.js --headers "A,B,C" --vendor shopify # ad-hoc check
8
+ //
9
+ // Reads the header set the discovery capture actually observed, joins it against the vendor overlay
10
+ // and the Wix target spec, and writes the machine mapping artifacts plus an explicit residue queue.
11
+ //
12
+ // What this REPLACES: an LLM reading source-schema.json and authoring mapping-plan.json field by
13
+ // field on every run. What it does NOT replace: deciding what to do with `residue`. That is the
14
+ // genuinely open part, and it is now the only part.
15
+ //
16
+ // Exit codes: 0 resolved (residue may be non-empty); 2 blocked (a required Wix input is unfilled,
17
+ // or an overlay names a canonical field that does not exist).
18
+
19
+ const fs = require('fs');
20
+ const path = require('path');
21
+ const { resolveMapping } = require('../lib/mapping-resolve.js');
22
+
23
+ function parseArgs(argv) {
24
+ const args = { fileset: null, out: null, headers: null, vendor: null, json: false };
25
+ for (let i = 0; i < argv.length; i += 1) {
26
+ const next = () => argv[i + 1];
27
+ if (argv[i] === '--fileset') { args.fileset = next(); i += 1; }
28
+ else if (argv[i] === '--out') { args.out = next(); i += 1; }
29
+ else if (argv[i] === '--headers') { args.headers = next(); i += 1; }
30
+ else if (argv[i] === '--vendor') { args.vendor = next(); i += 1; }
31
+ else if (argv[i] === '--json') args.json = true;
32
+ }
33
+ return args;
34
+ }
35
+
36
+ // The fileset is the discovery capture's machine output. Header and vendor are read from the
37
+ // primary product stream, which is where the capture records what it actually saw.
38
+ function fromFileset(filesetPath) {
39
+ const fileset = JSON.parse(fs.readFileSync(filesetPath, 'utf8'));
40
+ const streams = fileset.streams || [];
41
+ const stream = streams.find((s) => s.role === 'product') || streams[0];
42
+ if (!stream) throw new Error(`${filesetPath}: no streams recorded`);
43
+ const vendor = (stream.vendor && stream.vendor.name) || 'custom';
44
+ let headers = stream.header || stream.columns || null;
45
+ if (!headers) {
46
+ // Older captures record the header per source file rather than per stream.
47
+ const sourceFile = (fileset.sourceFiles || []).find((f) => f.role === stream.role);
48
+ headers = (sourceFile && (sourceFile.header || sourceFile.columns)) || null;
49
+ }
50
+ if (!headers) {
51
+ // Captures written before fileset.json carried `header` still have it in the sibling
52
+ // raw-capture.json. Fall back rather than force a re-run of discovery.
53
+ const raw = path.join(path.dirname(filesetPath), 'raw-capture.json');
54
+ if (fs.existsSync(raw)) {
55
+ const rawDoc = JSON.parse(fs.readFileSync(raw, 'utf8'));
56
+ const rawStream = (rawDoc.streams || []).find((s) => s.role === stream.role) || (rawDoc.streams || [])[0];
57
+ if (rawStream) {
58
+ headers = rawStream.header
59
+ || (Array.isArray(rawStream.columns) ? rawStream.columns.map((c) => c.name).filter(Boolean) : null);
60
+ }
61
+ }
62
+ }
63
+ if (!headers) {
64
+ throw new Error(
65
+ `${filesetPath}: the capture did not record a header list for role "${stream.role}", and no ` +
66
+ 'sibling raw-capture.json supplied one. Pass --headers explicitly, or re-run csv-discovery.',
67
+ );
68
+ }
69
+ return { headers, vendor };
70
+ }
71
+
72
+ function main() {
73
+ const args = parseArgs(process.argv.slice(2));
74
+ let headers;
75
+ let vendor;
76
+
77
+ if (args.fileset) ({ headers, vendor } = fromFileset(args.fileset));
78
+ else if (args.headers) { headers = args.headers.split(',').map((h) => h.trim()); vendor = args.vendor || 'custom'; }
79
+ else {
80
+ console.error('resolve-mapping: pass --fileset <path> or --headers "A,B,C"');
81
+ process.exit(64);
82
+ }
83
+ if (args.vendor) vendor = args.vendor;
84
+
85
+ const resolved = resolveMapping({ headers, vendor });
86
+ const blocked = resolved.residue.unfilledRequired.length > 0 || resolved.canonicalErrors.length > 0;
87
+
88
+ if (args.json) {
89
+ console.log(JSON.stringify(resolved, null, 2));
90
+ } else {
91
+ const c = resolved.coverage;
92
+ console.log(`vendor ${resolved.vendor}${resolved.overlayVersion ? ` (profile ${resolved.overlayVersion})` : ''}`);
93
+ console.log(` columns : ${c.totalColumns}`);
94
+ console.log(` mapped by overlay: ${c.mappedColumns} (${(c.ratio * 100).toFixed(1)}%)`);
95
+ console.log(` landing in Wix : ${c.landingInWix}`);
96
+ console.log(` residue for agent: ${resolved.residue.unmappedColumns.length} unmapped, ${resolved.residue.unsupportedTargets.length} with no Wix home`);
97
+ if (resolved.derivedEntities.length) {
98
+ console.log(` derived entities : ${resolved.derivedEntities.map((d) => `${d.entity}${d.present ? '' : ' (column absent)'}`).join(', ')}`);
99
+ }
100
+ if (resolved.overlayDrift.length) console.log(` overlay drift : ${resolved.overlayDrift.length} declared field(s) not in this header`);
101
+ if (resolved.duplicateColumns.length) console.log(` DUPLICATE columns: ${resolved.duplicateColumns.join(', ')}`);
102
+ if (resolved.canonicalErrors.length) {
103
+ console.log(' CANONICAL ERRORS (overlay bug — fix the overlay, do not work around it):');
104
+ for (const e of resolved.canonicalErrors) console.log(` - ${e.wixTarget}: ${e.reason}`);
105
+ }
106
+ if (resolved.residue.unfilledRequired.length) {
107
+ console.log(' BLOCKED — required Wix inputs nothing feeds:');
108
+ for (const f of resolved.residue.unfilledRequired) console.log(` - ${f}`);
109
+ }
110
+ if (resolved.residue.unmappedColumns.length) {
111
+ console.log(' --- residue: decide each of these (the agentic step) ---');
112
+ for (const col of resolved.residue.unmappedColumns) console.log(` ? ${col}`);
113
+ }
114
+ }
115
+
116
+ if (args.out) {
117
+ fs.mkdirSync(args.out, { recursive: true });
118
+ const now = new Date().toISOString();
119
+ fs.writeFileSync(
120
+ path.join(args.out, 'mapping-resolution.json'),
121
+ `${JSON.stringify({ schemaVersion: 1, generatedAt: now, generator: 'rp-mapper/resolve-mapping.js', deterministic: true, ...resolved }, null, 2)}\n`,
122
+ );
123
+ // The residue is written as its own artifact so the agentic step has a single, explicit queue
124
+ // instead of having to re-derive "what is left" from the full resolution.
125
+ fs.writeFileSync(
126
+ path.join(args.out, 'mapping-residue.json'),
127
+ `${JSON.stringify(
128
+ {
129
+ schemaVersion: 1,
130
+ generatedAt: now,
131
+ note: 'Every entry needs an explicit decision: map it to a canonical field, or record it as intentionally skipped. Leaving it here is how a stale overlay becomes silently dropped data.',
132
+ vendor: resolved.vendor,
133
+ unmappedColumns: resolved.residue.unmappedColumns,
134
+ unsupportedTargets: resolved.residue.unsupportedTargets,
135
+ unfilledRequired: resolved.residue.unfilledRequired,
136
+ overlayDrift: resolved.overlayDrift,
137
+ },
138
+ null,
139
+ 2,
140
+ )}\n`,
141
+ );
142
+ console.log(`\nwrote mapping-resolution.json + mapping-residue.json to ${args.out}`);
143
+ }
144
+
145
+ process.exit(blocked ? 2 : 0);
146
+ }
147
+
148
+ main();
@@ -0,0 +1,378 @@
1
+ # Wix Business Solutions Taxonomy For `rp-mapper`
2
+
3
+ This file is a curated, mapper-oriented taxonomy of Wix business solutions and their primary entities.
4
+
5
+ Use it during `rp-mapper` to:
6
+ - classify each discovered source entity into a likely Wix solution area
7
+ - distinguish native Wix targets from data that requires custom collections
8
+ - keep mappings explicit and consistent across migration projects
9
+
10
+ This is intentionally curated, not exhaustive. Prefer stable, first-party solutions and stable entity families that are relevant for migration planning.
11
+
12
+ ## Primary source docs
13
+
14
+ - [About Wix APIs](https://dev.wix.com/docs/build-apps/develop-your-app/api-integrations/about-wix-apis)
15
+ - [Integrating with Wix's Business Solutions](https://dev.wix.com/docs/build-apps/get-started/overview/integrating-with-wix-s-business-solutions)
16
+ - [Business Solutions | Wix Studio](https://www.wix.com/studio/business-solutions)
17
+
18
+ ## Critical distinction: `eCommerce` vs `Stores`
19
+
20
+ This distinction must stay explicit in mapper output.
21
+
22
+ ### `Wix eCommerce`
23
+
24
+ `Wix eCommerce` is the shared commerce platform layer.
25
+ It owns the purchase flow and operational commerce entities that are reused across multiple vertical apps.
26
+
27
+ Typical `eCommerce` entities:
28
+ - carts
29
+ - checkouts
30
+ - orders
31
+ - order billing / refunds
32
+ - payment and fulfillment state tied to orders
33
+
34
+ Use `eCommerce` when the source data is about:
35
+ - cart contents
36
+ - checkout state
37
+ - order lifecycle
38
+ - fulfillment and payment operations
39
+ - cross-vertical commerce operations that are not specific to a single catalog app
40
+
41
+ ### `Wix Stores`
42
+
43
+ `Wix Stores` is a vertical app built on top of the commerce platform.
44
+ It owns the product catalog and store-specific merchandising model.
45
+
46
+ Typical `Stores` entities:
47
+ - products
48
+ - categories / collections
49
+ - variants
50
+ - inventory items
51
+ - store inventory locations
52
+
53
+ Use `Stores` when the source data is about:
54
+ - product catalog structure
55
+ - product options and merchandising
56
+ - stock and inventory allocation
57
+ - store-specific catalog metadata
58
+
59
+ ### Other vertical apps
60
+
61
+ Other business apps also sit above shared platform layers and bring their own domain model:
62
+ - `Bookings`: services, staff, resources, schedules, bookings
63
+ - `Events`: events, ticket definitions, tickets, RSVPs, guests
64
+ - `Restaurants`: menus, sections, items, modifiers, reservation locations, reservations
65
+ - `Pricing Plans`: plans and plan orders / subscriptions
66
+
67
+ If the source platform mixes these layers together, separate them in the mapping plan instead of collapsing them into one Wix target.
68
+
69
+ ## Solution index
70
+
71
+ | Solution | Role in Wix | Main docs |
72
+ | --- | --- | --- |
73
+ | `ecommerce` | Shared purchase-flow platform across commerce-enabled apps | [eCommerce overview](https://dev.wix.com/docs/build-apps/get-started/overview/integrating-with-wix-s-business-solutions) |
74
+ | `stores` | Product catalog and merchandising app for physical/digital goods | [Wix Stores Catalog API](https://dev.wix.com/docs/api-reference/business-solutions/stores/catalog-v1/catalog/query-collections?apiView=SDK) |
75
+ | `bookings` | Service business app for appointments, classes, and courses | [About Wix Bookings](https://dev.wix.com/docs/rest/business-solutions/bookings/about-wix-bookings) |
76
+ | `events` | Event management, ticketing, RSVP, and guest lifecycle | [About the Wix Events API](https://dev.wix.com/docs/api-reference/business-solutions/events/introduction?apiView=SDK) |
77
+ | `restaurants` | Food business apps for menus, ordering, and reservations | [About the Menus API](https://dev.wix.com/docs/api-reference/business-solutions/restaurants/wix-restaurants-new/menus/introduction) |
78
+ | `pricing-plans` | Memberships, subscriptions, plans, and plan orders | [About Wix Pricing Plans](https://dev.wix.com/docs/rest/business-solutions/pricing-plans/pricing-plans/introduction) |
79
+ | `payments` | Payment processing and transaction infrastructure | [About Wix Payments](https://dev.wix.com/docs/api-reference/business-management/payments/wix-payments-provider/about-wix-payments) |
80
+ | `crm` | Contacts, labels, and CRM extensions around customer identity | [About the Contacts API](https://dev.wix.com/docs/rest/crm/members-contacts/contacts/introduction) |
81
+ | `members` | Site membership, profiles, badges, member custom fields | [About the Members APIs](https://dev.wix.com/docs/api-reference/crm/members-contacts/members/introduction) |
82
+ | `blog` | Blog content model for posts, categories, and tags | [About the Blog APIs](https://dev.wix.com/docs/sdk/backend-modules/blog/introduction) |
83
+ | `cms` | Custom collections and custom items when native apps are insufficient | [About the Wix Data APIs](https://dev.wix.com/docs/api-reference/business-solutions/cms/introduction) |
84
+
85
+ ---
86
+
87
+ ## `ecommerce`
88
+
89
+ Main page:
90
+ - [Integrating with Wix's Business Solutions](https://dev.wix.com/docs/build-apps/get-started/overview/integrating-with-wix-s-business-solutions)
91
+
92
+ Short description:
93
+ - Shared commerce platform for purchase flow and order operations. It is the canonical target for carts, checkouts, and orders, even when catalog data originates in a vertical app such as Stores or Bookings.
94
+
95
+ Primary entities:
96
+
97
+ | Entity | What it does | Docs |
98
+ | --- | --- | --- |
99
+ | `cart` | First phase of the purchase flow; holds line items, buyer references, discounts, and pricing context before checkout | [About the eCommerce Cart API](https://dev.wix.com/docs/rest/business-solutions/e-commerce/purchase-flow/cart/cart/introduction) |
100
+ | `current-cart` | Visitor/member scoped cart used in live purchase flows | [About the eCommerce Current Cart API](https://dev.wix.com/docs/sdk/backend-modules/ecom/current-cart/introduction) |
101
+ | `checkout` | Second phase of purchase flow; holds calculated prices, tax, billing, shipping, and discount state before order creation | [About the eCommerce Checkout API](https://dev.wix.com/docs/sdk/backend-modules/ecom/checkout/introduction) |
102
+ | `order` | Final commerce record for completed or externally recorded purchases | [About the Orders API](https://dev.wix.com/docs/rest/business-solutions/e-commerce/orders/orders/introduction) |
103
+ | `order-billing` | Payment capture, void, and refund operations for eCommerce orders | [About the Order Billing API](https://dev.wix.com/docs/api-reference/business-solutions/e-commerce/orders/order-billing/introduction) |
104
+
105
+ Mapper notes:
106
+ - If the source platform exposes products and orders in one model, split catalog entities into the vertical app and transaction entities into `ecommerce`.
107
+ - If the source has historical orders but no cart or checkout history, map directly to `order` and document missing pre-purchase state.
108
+
109
+ ---
110
+
111
+ ## `stores`
112
+
113
+ Main page:
114
+ - [About the Wix Stores Catalog API](https://dev.wix.com/docs/api-reference/business-solutions/stores/catalog-v1/catalog/query-collections?apiView=SDK)
115
+
116
+ Short description:
117
+ - Vertical commerce app for managing a store catalog, merchandising structure, variants, and inventory. `Stores` sits above the shared `eCommerce` purchase flow.
118
+
119
+ Primary entities:
120
+
121
+ | Entity | What it does | Docs |
122
+ | --- | --- | --- |
123
+ | `product` | Core sellable item with media, pricing, metadata, and variants | [About Products](https://dev.wix.com/docs/rest/business-solutions/stores/catalog-v3/products-v3/introduction) |
124
+ | `category` | Hierarchical merchandising structure for organizing products | [About the Wix Categories API](https://dev.wix.com/docs/api-reference/business-management/categories/introduction) |
125
+ | `product-tag` | Labels attached to products via the global Tags API; products carry `tags.publicTags.tagIds[]` and `tags.privateTags.tagIds[]` | [About the Tags API](https://dev.wix.com/docs/api-reference/business-management/tags/introduction) · [Create Tag](https://dev.wix.com/docs/api-reference/business-management/tags/create-tag) |
126
+ | `collection` | Read-only CMS mirror of store collections for querying and display | [Wix Stores Collections](https://dev.wix.com/docs/api-reference/business-solutions/cms/collection-management/wix-app-collections/wix-stores-collections) |
127
+ | `inventory-item` | Inventory state for store products and variants | [About the Inventory API](https://dev.wix.com/docs/api-reference/business-solutions/stores/inventory/introduction) |
128
+ | `stores-location` | Inventory locations used by the store catalog | [About the Stores Locations API](https://dev.wix.com/docs/sdk/backend-modules/stores/catalog-v3/stores-locations-v3/introduction) |
129
+ | `catalog-version` | Identifies whether a site is on Stores Catalog V1 or V3 | [About the Catalog Versioning API](https://dev.wix.com/docs/rest/business-solutions/stores/catalog-versioning/introduction) |
130
+
131
+ Mapper notes:
132
+ - Prefer `stores` for product catalog migration, not `ecommerce`.
133
+ - `variant` data is typically modeled under product APIs rather than as a standalone top-level app.
134
+ - If the source has faceted product groupings, map them first to `category`; use custom collections only when the source model exceeds Wix's native merchandising structure.
135
+ - **Product tags have a native Wix target.** Do not mark them skipped or route to CMS. Create tags via `POST /tags/v1/tags` with `fqdn: "wix.stores.catalog.v3.product"`, crosswalk the IDs, and set `tags.publicTags.tagIds[]` when creating products. Max 100 tags per FQDN. Create tags before products.
136
+
137
+ ---
138
+
139
+ ## `bookings`
140
+
141
+ Main page:
142
+ - [About Wix Bookings](https://dev.wix.com/docs/rest/business-solutions/bookings/about-wix-bookings)
143
+
144
+ Short description:
145
+ - Vertical app for service businesses. Handles services, provider availability, resources, scheduling, and customer bookings. Payment and order flow can connect into shared commerce layers.
146
+
147
+ Primary entities:
148
+
149
+ | Entity | What it does | Docs |
150
+ | --- | --- | --- |
151
+ | `service` | Bookable offering such as an appointment, class, or course | [About the Services V2 API](https://dev.wix.com/docs/sdk/backend-modules/bookings/services/introduction) |
152
+ | `service-category` | Organizes services for display and discovery | [About the Bookings Services APIs](https://dev.wix.com/docs/api-reference/business-solutions/bookings/services/introduction) |
153
+ | `staff-member` | Person providing services, including service assignments and working hours | [About the Staff Members API](https://dev.wix.com/docs/api-reference/business-solutions/bookings/staff-members/staff-members/introduction) |
154
+ | `resource` | Non-staff business asset needed to deliver a service, such as a room or equipment | [About the Resource APIs](https://dev.wix.com/docs/api-reference/business-solutions/bookings/resources/introduction) |
155
+ | `booking` | Customer booking record and lifecycle state | [About the Bookings APIs](https://dev.wix.com/docs/rest/business-solutions/bookings/bookings/about-the-bookings-apis) |
156
+ | `time-slot` | Availability window for bookable services | [Time Slots V2 API](https://dev.wix.com/docs/api-reference/business-solutions/bookings/time-slots/time-slots-v2/introduction) |
157
+ | `external-calendar-connection` | Sync bridge between Bookings schedules and external calendars | [About the External Calendars API](https://dev.wix.com/docs/sdk/backend-modules/bookings/external-calendars/setup) |
158
+
159
+ Mapper notes:
160
+ - Service catalogs belong in `bookings`, not `stores`.
161
+ - Staff and resources are distinct. Human providers should map to `staff-member`; rooms/equipment should map to `resource`.
162
+ - If the source system mixes booking payment data into reservations, split booking lifecycle from commerce/order lifecycle.
163
+
164
+ ---
165
+
166
+ ## `events`
167
+
168
+ Main page:
169
+ - [About the Wix Events API](https://dev.wix.com/docs/api-reference/business-solutions/events/introduction?apiView=SDK)
170
+
171
+ Short description:
172
+ - Vertical app for event management, registration, ticketing, and guest handling.
173
+
174
+ Primary entities:
175
+
176
+ | Entity | What it does | Docs |
177
+ | --- | --- | --- |
178
+ | `event` | Top-level event record with schedule, registration mode, and event metadata | [About the Wix Events API](https://dev.wix.com/docs/api-reference/business-solutions/events/introduction?apiView=SDK) |
179
+ | `ticket-definition` | Ticket type template such as General Admission or VIP | [Event Management introduction](https://dev.wix.com/docs/api-reference/business-solutions/events/event-management/introduction) |
180
+ | `ticket` | Purchased ticket with guest and check-in state | [About the Tickets API](https://dev.wix.com/docs/api-reference/business-solutions/events/registration/ticketing/tickets/introduction?apiView=SDK) |
181
+ | `event-order` | Ticket purchase and registration order lifecycle | [About the Orders API](https://dev.wix.com/docs/sdk/backend-modules/events/orders/on-order-initiated) |
182
+ | `rsvp` | RSVP response and attendance state for non-ticketed events | [About RSVP API](https://dev.wix.com/docs/sdk/backend-modules/events/rsvp/introduction) |
183
+ | `event-guest` | Unified guest record across ticketed and RSVP events | [About the Event Guests API](https://dev.wix.com/docs/api-reference/business-solutions/events/registration/event-guests/introduction?apiView=SDK) |
184
+ | `events-registration` | Registration layer connecting RSVP, ticketing, and guests | [About Events Registration](https://dev.wix.com/docs/api-reference/business-solutions/events/registration/introduction) |
185
+
186
+ Mapper notes:
187
+ - Use `event`, `ticket-definition`, and `ticket` for ticketed-event catalogs.
188
+ - Use `rsvp` and `event-guest` for RSVP-only sources.
189
+ - If the source system has attendee records without event-level structure, document the lossiness and create an event grouping strategy before import.
190
+
191
+ ---
192
+
193
+ ## `restaurants`
194
+
195
+ Main pages:
196
+ - [About the Menus API](https://dev.wix.com/docs/api-reference/business-solutions/restaurants/wix-restaurants-new/menus/introduction)
197
+ - [Reservations API introduction](https://dev.wix.com/docs/rest/business-solutions/restaurants/wix-restaurants-new/reservations/introduction)
198
+
199
+ Short description:
200
+ - Vertical app family for food businesses. Covers food catalog structure, restaurant reservations, and restaurant-specific operations.
201
+
202
+ Primary entities:
203
+
204
+ | Entity | What it does | Docs |
205
+ | --- | --- | --- |
206
+ | `menu` | Top-level menu such as Breakfast, Lunch, or Dinner | [About Menus](https://dev.wix.com/docs/api-reference/business-solutions/restaurants/wix-restaurants-new/menus/menus/introduction) |
207
+ | `menu-section` | Section within a menu such as Appetizers or Desserts | [About the Menus API](https://dev.wix.com/docs/api-reference/business-solutions/restaurants/wix-restaurants-new/menus/introduction) |
208
+ | `menu-item` | Individual dish or item sold by the restaurant | [About the Menus API](https://dev.wix.com/docs/api-reference/business-solutions/restaurants/wix-restaurants-new/menus/introduction) |
209
+ | `item-modifier-group` | Group of selectable modifiers such as toppings or sides | [About the Menus API](https://dev.wix.com/docs/api-reference/business-solutions/restaurants/wix-restaurants-new/menus/introduction) |
210
+ | `item-variant` | Size or other priced variant of a menu item | [About the Menus API](https://dev.wix.com/docs/api-reference/business-solutions/restaurants/wix-restaurants-new/menus/introduction) |
211
+ | `reservation-location` | Physical restaurant location and reservation configuration | [Reservations Locations API](https://dev.wix.com/docs/api-reference/business-solutions/restaurants/reservations/reservation-locations/reservation-location-updated) |
212
+ | `reservation` | Reservation lifecycle record for a party at a restaurant | [About the Reservations API](https://dev.wix.com/docs/api-reference/business-solutions/restaurants/wix-restaurants-new/reservations/reservations/introduction) |
213
+ | `restaurant-time-slot` | Availability window for reservation booking | [Reservations API introduction](https://dev.wix.com/docs/rest/business-solutions/restaurants/wix-restaurants-new/reservations/introduction) |
214
+ | `experience` | Special dining experience such as chef's table or tasting menu | [Experiences API](https://dev.wix.com/docs/api-reference/business-solutions/restaurants/wix-restaurants-new/reservations/experiences/introduction) |
215
+ | `restaurant-order-legacy` | Legacy restaurant order model from the original Restaurants Orders app | [About Wix Restaurants Orders](https://dev.wix.com/docs/rest/business-solutions/restaurants/wix-restaurants/orders/introduction) |
216
+
217
+ Mapper notes:
218
+ - Restaurants spans multiple subdomains: menus, reservations, and in some cases restaurant ordering.
219
+ - Menu catalogs should not be mapped to `stores.product` unless the migration intentionally flattens restaurant content into a generic catalog.
220
+ - The old Restaurants Orders and Catalogs docs are still useful for legacy migrations, but prefer the newer Menus and Reservations APIs when possible.
221
+
222
+ ---
223
+
224
+ ## `pricing-plans`
225
+
226
+ Main page:
227
+ - [About Wix Pricing Plans](https://dev.wix.com/docs/rest/business-solutions/pricing-plans/pricing-plans/introduction)
228
+
229
+ Short description:
230
+ - Vertical app for memberships, subscriptions, bundles, and access plans. Often composes with Bookings, Events, Blog, and Members.
231
+
232
+ Primary entities:
233
+
234
+ | Entity | What it does | Docs |
235
+ | --- | --- | --- |
236
+ | `plan` | Membership or subscription offering with pricing model and entitlement structure | [About the Plans V3 API](https://dev.wix.com/docs/api-reference/business-solutions/pricing-plans/plans-v3/query-plans?apiView=SDK) |
237
+ | `pricing-plan-order` | Purchase/subscription record for a plan | [About the Orders API](https://dev.wix.com/docs/api-reference/business-solutions/pricing-plans/orders/introduction?apiView=SDK) |
238
+ | `benefit-program-linkage` | Underlying credit/benefit program connection used by some plans | [About Wix Pricing Plans](https://dev.wix.com/docs/rest/business-solutions/pricing-plans/pricing-plans/introduction) |
239
+
240
+ Mapper notes:
241
+ - Pricing Plans is not the same as generic payment transactions.
242
+ - Use `plan` for memberships/bundles/subscriptions and `pricing-plan-order` for subscriptions purchased by members.
243
+ - If the source platform tracks remaining credits or entitlements, document whether Wix native benefit-program behavior is sufficient or whether extra CMS/custom logic is required.
244
+
245
+ ---
246
+
247
+ ## `payments`
248
+
249
+ Main page:
250
+ - [About Wix Payments](https://dev.wix.com/docs/api-reference/business-management/payments/wix-payments-provider/about-wix-payments)
251
+
252
+ Short description:
253
+ - Payment-processing infrastructure used by commerce-enabled Wix solutions. It is not a replacement for `ecommerce.order`; it handles transaction processing.
254
+
255
+ Primary entities:
256
+
257
+ | Entity | What it does | Docs |
258
+ | --- | --- | --- |
259
+ | `payment-transaction` | Authorization, capture, recurring charge, refund, void, and dispute lifecycle | [Transactions API](https://dev.wix.com/docs/api-reference/business-management/payments/wix-payments-provider/transactions/introduction) |
260
+ | `wix-payments-provider` | Payment provider integration surface for accepting supported payment methods | [About Wix Payments](https://dev.wix.com/docs/api-reference/business-management/payments/wix-payments-provider/about-wix-payments) |
261
+
262
+ Mapper notes:
263
+ - Historical payment records may map to payment transactions, but the business transaction usually still belongs to an order, booking, or plan order.
264
+ - Do not map catalog or customer data into `payments`.
265
+
266
+ ---
267
+
268
+ ## `crm`
269
+
270
+ Main pages:
271
+ - [About the Contacts API](https://dev.wix.com/docs/rest/crm/members-contacts/contacts/introduction)
272
+ - [About the Members and Contacts APIs](https://dev.wix.com/docs/api-reference/crm/members-contacts/introduction)
273
+
274
+ Short description:
275
+ - Customer identity and segmentation layer centered on contacts and CRM metadata.
276
+
277
+ Primary entities:
278
+
279
+ | Entity | What it does | Docs |
280
+ | --- | --- | --- |
281
+ | `contact` | Core person/business contact record for site interactions | [About the Contacts API](https://dev.wix.com/docs/sdk/backend-modules/crm/contacts/introduction) |
282
+ | `contact-label` | Segment/tag for organizing contacts | [About the Labels API](https://dev.wix.com/docs/api-reference/crm/members-contacts/contacts/labels/introduction) |
283
+ | `contact-extended-field` | Additional fields stored on contacts. Contacts V5 (GA, verified 2026-08-04) carries values under `extendedFields.namespaces.<ns>` and routes definitions through the Data Extension Schema API with FQDN `wix.contacts.*.contact` (user-defined fields under `_user_fields`); persist the returned key from setup. CAVEAT: the Data Extension Schema intro's supported-objects table does not list contacts yet — verify live during setup. The V4 Contacts Extended Fields API (`info.extendedFields`, Find Or Create Extended Field) pairs with the V4 write surface only; do not mix surfaces. | [Contacts V5 Contact Object](https://dev.wix.com/docs/api-reference/crm/members-contacts/contacts/contacts-v5/contact-object), [About the Data Extension Schema API](https://dev.wix.com/docs/api-reference/business-management/data-extension-schema/introduction), [About the Extended Fields API](https://dev.wix.com/docs/api-reference/crm/members-contacts/contacts/extended-fields/introduction) |
284
+ | `pipeline` | CRM process pipeline for leads/deals/workflow stages | [About the Pipelines API](https://dev.wix.com/docs/api-reference/crm/crm/pipelines-management/pipelines/pipeline-updated) |
285
+ | `form-schema` | Structured form definition often used to create leads and capture CRM data | [About the Form Schemas API](https://dev.wix.com/docs/api-reference/crm/forms/form-schemas/form-created) |
286
+
287
+ Mapper notes:
288
+ - Use `crm.contact` for person/company records even if the source platform calls them customers, clients, leads, or subscribers.
289
+ - Use labels and extended fields before defaulting to a custom collection for lightweight CRM enrichment.
290
+
291
+ ---
292
+
293
+ ## `members`
294
+
295
+ Main page:
296
+ - [About the Members APIs](https://dev.wix.com/docs/api-reference/crm/members-contacts/members/introduction)
297
+
298
+ Short description:
299
+ - Site membership and community model layered on top of contacts, with profile, privacy, badge, and member-profile extension support.
300
+
301
+ Primary entities:
302
+
303
+ | Entity | What it does | Docs |
304
+ | --- | --- | --- |
305
+ | `member` | Site member account and profile identity | [About the Members API](https://dev.wix.com/docs/sdk/backend-modules/members/members/introduction) |
306
+ | `member-about` | Rich profile “About” content | [About the Members About API](https://dev.wix.com/docs/sdk/backend-modules/members/members-about/introduction) |
307
+ | `member-badge` | Badge definition assigned to members | [About the Badges API](https://dev.wix.com/docs/api-reference/crm/members-contacts/members/activity/badges/introduction?apiView=SDK) |
308
+ | `badge-assignment` | Assignment of a badge to a member | [About the Badge Assignments API](https://dev.wix.com/docs/sdk/backend-modules/members/badge-assignments/introduction) |
309
+ | `member-custom-field` | Extra profile schema beyond the default member fields | [About Custom Fields](https://dev.wix.com/docs/api-reference/crm/members-contacts/members/member-management/custom-fields/introduction) |
310
+
311
+ Mapper notes:
312
+ - A `member` is not identical to a `contact`, though the two are related.
313
+ - If the source platform has authenticated end users with profile data, map account identity to `member` and broader person data to `contact` where appropriate.
314
+
315
+ ---
316
+
317
+ ## `blog`
318
+
319
+ Main page:
320
+ - [About the Blog APIs](https://dev.wix.com/docs/sdk/backend-modules/blog/introduction)
321
+
322
+ Short description:
323
+ - Blog content model for editorial content and content categorization.
324
+
325
+ Primary entities:
326
+
327
+ | Entity | What it does | Docs |
328
+ | --- | --- | --- |
329
+ | `blog-post` | Published or draft article content | [About the Blog APIs](https://dev.wix.com/docs/sdk/backend-modules/blog/introduction) |
330
+ | `blog-category` | Topical grouping for posts | [Categories API](https://dev.wix.com/docs/velo/apis/wix-blog-backend/categories/introduction) |
331
+ | `blog-tag` | Lightweight filterable tagging for posts | [About the Tags API](https://dev.wix.com/docs/sdk/backend-modules/blog/tags/introduction) |
332
+
333
+ Mapper notes:
334
+ - Use native blog entities when the source content is editorial publishing content.
335
+ - If the source has custom structured content that exceeds blog post semantics, consider `cms` instead.
336
+
337
+ ---
338
+
339
+ ## `cms`
340
+
341
+ Main pages:
342
+ - [About the Wix Data APIs](https://dev.wix.com/docs/api-reference/business-solutions/cms/introduction)
343
+ - [About Collection Management](https://dev.wix.com/docs/api-reference/business-solutions/cms/collection-management/introduction?apiView=SDK)
344
+
345
+ Short description:
346
+ - Generic data layer for custom collections and items. This is the default fallback when no native business app entity is sufficient.
347
+
348
+ Primary entities:
349
+
350
+ | Entity | What it does | Docs |
351
+ | --- | --- | --- |
352
+ | `data-collection` | Custom schema / table-like collection in the Wix CMS | [About the Data Collections API](https://dev.wix.com/docs/api-reference/business-solutions/cms/data-collections/introduction) |
353
+ | `data-item` | Row/document stored in a custom collection | [About the Data Items API](https://dev.wix.com/docs/api-reference/business-solutions/cms/data-items/introduction) |
354
+ | `wix-app-collection` | Read-only CMS mirror of data owned by Wix business apps | [About Wix App Collections](https://dev.wix.com/docs/api-reference/business-solutions/cms/collection-management/wix-app-collections/introduction) |
355
+
356
+ Mapper notes:
357
+ - Use `cms` only when the source concept does not fit a stable native Wix business entity, or when the business requires custom structured data beyond the native app model.
358
+ - When falling back to `cms`, explicitly explain why native `stores`, `bookings`, `events`, `pricing-plans`, `crm`, or `members` entities are insufficient.
359
+
360
+ ## Classification heuristics for `rp-mapper`
361
+
362
+ Use these heuristics before inventing custom targets:
363
+
364
+ 1. If the source entity represents a sellable good with variants, inventory, or merchandising structure, start in `stores`.
365
+ 2. If it represents a purchasable service with providers, schedules, or availability, start in `bookings`.
366
+ 3. If it represents a live/virtual gathering with attendees, tickets, or RSVPs, start in `events`.
367
+ 4. If it represents menu/catalog content for a food business or restaurant reservations, start in `restaurants`.
368
+ 5. If it represents subscriptions, memberships, bundles, or entitlements, start in `pricing-plans`.
369
+ 6. If it represents carts, checkouts, or orders across verticals, start in `ecommerce`.
370
+ 7. If it represents customer identity or segmentation, start in `crm` and `members`.
371
+ 8. If it represents editorial publishing, start in `blog`.
372
+ 9. If none of the above fits cleanly, use `cms` and document the gap.
373
+
374
+ ## Maintenance notes
375
+
376
+ - Prefer first-party Wix docs under `dev.wix.com` for updates.
377
+ - Update this file when Wix introduces a new stable business solution or materially changes entity boundaries.
378
+ - Preserve the explicit `eCommerce` vs `Stores` distinction. That boundary is important for migration planning and import code generation.