@wix/agent-skills 1.26.0 → 1.27.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 (805) hide show
  1. package/README.md +1 -0
  2. package/package.json +1 -1
  3. package/skills/wix-app/SKILL.md +7 -5
  4. package/skills/wix-app/references/DASHBOARD_PAGE.md +1 -1
  5. package/skills/wix-app/references/dashboard-page/DRAFT_TEMPLATE.md +14 -2
  6. package/skills/wix-app/references/dashboard-page/UX_SUCCESS_MODEL.md +4 -5
  7. package/skills/wix-headless-kit/SKILL.md +31 -14
  8. package/skills/wix-headless-kit/guides/existing-site.md +12 -5
  9. package/skills/wix-headless-kit/install/attach.mjs +55 -10
  10. package/skills/wix-headless-kit/install/check.mjs +5 -5
  11. package/skills/wix-headless-kit/install/deploy.mjs +7 -3
  12. package/skills/wix-headless-kit/install/templates.mjs +21 -17
  13. package/skills/wix-headless-templates/SKILL.md +43 -0
  14. package/skills/wix-headless-templates/blank/project/README.md +15 -0
  15. package/skills/wix-headless-templates/blank/project/astro.config.mjs +20 -0
  16. package/skills/wix-headless-templates/blank/project/package.json +34 -0
  17. package/skills/wix-headless-templates/blank/project/public/favicon.svg +9 -0
  18. package/skills/wix-headless-templates/blank/project/src/assets/astro.svg +1 -0
  19. package/skills/wix-headless-templates/blank/project/src/assets/background.svg +1 -0
  20. package/skills/wix-headless-templates/blank/project/src/assets/wix.svg +18 -0
  21. package/skills/wix-headless-templates/blank/project/src/components/Hero.astro +77 -0
  22. package/skills/wix-headless-templates/blank/project/src/components/Welcome.astro +95 -0
  23. package/skills/wix-headless-templates/blank/project/src/layouts/Layout.astro +22 -0
  24. package/skills/wix-headless-templates/blank/project/src/pages/index.astro +8 -0
  25. package/skills/wix-headless-templates/blank/project/tsconfig.json +5 -0
  26. package/skills/wix-headless-templates/blog/INSTRUCTIONS.md +418 -0
  27. package/skills/wix-headless-templates/blog/app/components/blog/BlogFeedView.tsx +191 -0
  28. package/skills/wix-headless-templates/blog/app/components/blog/CommentsView.tsx +206 -0
  29. package/skills/wix-headless-templates/blog/app/components/blog/PostLikeButton.tsx +62 -0
  30. package/skills/wix-headless-templates/blog/app/components/blog/PostView.tsx +139 -0
  31. package/skills/wix-headless-templates/blog/app/components/blog/RichContent.tsx +42 -0
  32. package/skills/wix-headless-templates/blog/app/hooks/blog/useBlogFeed.ts +31 -0
  33. package/skills/wix-headless-templates/blog/app/hooks/blog/useComments.ts +26 -0
  34. package/skills/wix-headless-templates/blog/app/hooks/blog/usePost.ts +25 -0
  35. package/skills/wix-headless-templates/blog/app/wix/blog/authors-core.ts +51 -0
  36. package/skills/wix-headless-templates/blog/app/wix/blog/authors.ts +50 -0
  37. package/skills/wix-headless-templates/blog/app/wix/blog/blog-feed-store.ts +156 -0
  38. package/skills/wix-headless-templates/blog/app/wix/blog/comments-core.ts +189 -0
  39. package/skills/wix-headless-templates/blog/app/wix/blog/comments-store.ts +214 -0
  40. package/skills/wix-headless-templates/blog/app/wix/blog/comments.ts +84 -0
  41. package/skills/wix-headless-templates/blog/app/wix/blog/post-likes.ts +42 -0
  42. package/skills/wix-headless-templates/blog/app/wix/blog/post-store.ts +158 -0
  43. package/skills/wix-headless-templates/blog/app/wix/blog/posts-core.ts +347 -0
  44. package/skills/wix-headless-templates/blog/app/wix/blog/posts.ts +132 -0
  45. package/skills/wix-headless-templates/blog/app/wix/blog/taxonomy-core.ts +80 -0
  46. package/skills/wix-headless-templates/blog/app/wix/blog/taxonomy.ts +78 -0
  47. package/skills/wix-headless-templates/blog/app/wix/blog/types.ts +161 -0
  48. package/skills/wix-headless-templates/blog/app-astro/layouts/SiteLayout.astro +44 -0
  49. package/skills/wix-headless-templates/blog/app-astro/pages/blog/[...slug].astro +148 -0
  50. package/skills/wix-headless-templates/blog/app-astro/pages/blog/category/[slug].astro +97 -0
  51. package/skills/wix-headless-templates/blog/app-astro/pages/blog/tag/[slug].astro +51 -0
  52. package/skills/wix-headless-templates/blog/app-astro/pages/blog.astro +34 -0
  53. package/skills/wix-headless-templates/blog/project/README.md +15 -0
  54. package/skills/wix-headless-templates/blog/project/astro.config.mjs +22 -0
  55. package/skills/wix-headless-templates/blog/project/package-lock.json +14699 -0
  56. package/skills/wix-headless-templates/blog/project/package.json +39 -0
  57. package/skills/wix-headless-templates/blog/project/public/favicon.svg +9 -0
  58. package/skills/wix-headless-templates/blog/project/src/assets/astro.svg +1 -0
  59. package/skills/wix-headless-templates/blog/project/src/assets/background.svg +1 -0
  60. package/skills/wix-headless-templates/blog/project/src/assets/wix.svg +18 -0
  61. package/skills/wix-headless-templates/blog/project/src/components/Hero.astro +77 -0
  62. package/skills/wix-headless-templates/blog/project/src/components/Welcome.astro +95 -0
  63. package/skills/wix-headless-templates/blog/project/src/components/blog/BlogFeedView.tsx +191 -0
  64. package/skills/wix-headless-templates/blog/project/src/components/blog/CommentsView.tsx +206 -0
  65. package/skills/wix-headless-templates/blog/project/src/components/blog/PostLikeButton.tsx +62 -0
  66. package/skills/wix-headless-templates/blog/project/src/components/blog/PostView.tsx +139 -0
  67. package/skills/wix-headless-templates/blog/project/src/components/blog/RichContent.tsx +42 -0
  68. package/skills/wix-headless-templates/blog/project/src/hooks/blog/useBlogFeed.ts +31 -0
  69. package/skills/wix-headless-templates/blog/project/src/hooks/blog/useComments.ts +26 -0
  70. package/skills/wix-headless-templates/blog/project/src/hooks/blog/usePost.ts +25 -0
  71. package/skills/wix-headless-templates/blog/project/src/layouts/Layout.astro +22 -0
  72. package/skills/wix-headless-templates/blog/project/src/layouts/SiteLayout.astro +44 -0
  73. package/skills/wix-headless-templates/blog/project/src/pages/blog/[...slug].astro +148 -0
  74. package/skills/wix-headless-templates/blog/project/src/pages/blog/category/[slug].astro +97 -0
  75. package/skills/wix-headless-templates/blog/project/src/pages/blog/tag/[slug].astro +51 -0
  76. package/skills/wix-headless-templates/blog/project/src/pages/blog.astro +34 -0
  77. package/skills/wix-headless-templates/blog/project/src/pages/index.astro +8 -0
  78. package/skills/wix-headless-templates/blog/project/src/styles/global.css +57 -0
  79. package/skills/wix-headless-templates/blog/project/src/wix/blog/authors-core.ts +51 -0
  80. package/skills/wix-headless-templates/blog/project/src/wix/blog/authors.ts +50 -0
  81. package/skills/wix-headless-templates/blog/project/src/wix/blog/blog-feed-store.ts +156 -0
  82. package/skills/wix-headless-templates/blog/project/src/wix/blog/comments-core.ts +189 -0
  83. package/skills/wix-headless-templates/blog/project/src/wix/blog/comments-store.ts +214 -0
  84. package/skills/wix-headless-templates/blog/project/src/wix/blog/comments.ts +84 -0
  85. package/skills/wix-headless-templates/blog/project/src/wix/blog/post-likes.ts +42 -0
  86. package/skills/wix-headless-templates/blog/project/src/wix/blog/post-store.ts +158 -0
  87. package/skills/wix-headless-templates/blog/project/src/wix/blog/posts-core.ts +347 -0
  88. package/skills/wix-headless-templates/blog/project/src/wix/blog/posts.ts +132 -0
  89. package/skills/wix-headless-templates/blog/project/src/wix/blog/taxonomy-core.ts +80 -0
  90. package/skills/wix-headless-templates/blog/project/src/wix/blog/taxonomy.ts +78 -0
  91. package/skills/wix-headless-templates/blog/project/src/wix/blog/types.ts +161 -0
  92. package/skills/wix-headless-templates/blog/project/src/wix/config.ts +16 -0
  93. package/skills/wix-headless-templates/blog/project/src/wix/media.ts +106 -0
  94. package/skills/wix-headless-templates/blog/project/src/wix/money.ts +24 -0
  95. package/skills/wix-headless-templates/blog/project/src/wix/sdk.ts +89 -0
  96. package/skills/wix-headless-templates/blog/project/tsconfig.json +5 -0
  97. package/skills/wix-headless-templates/blog/rest/authors.ts +39 -0
  98. package/skills/wix-headless-templates/blog/rest/comments.ts +64 -0
  99. package/skills/wix-headless-templates/blog/rest/post-likes.ts +37 -0
  100. package/skills/wix-headless-templates/blog/rest/posts.ts +123 -0
  101. package/skills/wix-headless-templates/blog/rest/taxonomy.ts +79 -0
  102. package/skills/wix-headless-templates/blog/seed/SEED.md +81 -0
  103. package/skills/wix-headless-templates/blog/seed/read-site.mjs +33 -0
  104. package/skills/wix-headless-templates/blog/seed/seed-blog.mjs +337 -0
  105. package/skills/wix-headless-templates/bookings/INSTRUCTIONS.md +356 -0
  106. package/skills/wix-headless-templates/bookings/app/components/bookings/ServiceBookingView.tsx +369 -0
  107. package/skills/wix-headless-templates/bookings/app/components/bookings/ServicesView.tsx +193 -0
  108. package/skills/wix-headless-templates/bookings/app/hooks/bookings/useBookingFlow.ts +56 -0
  109. package/skills/wix-headless-templates/bookings/app/hooks/bookings/useServices.ts +23 -0
  110. package/skills/wix-headless-templates/bookings/app/wix/bookings/booking-core.ts +614 -0
  111. package/skills/wix-headless-templates/bookings/app/wix/bookings/booking-flow-store.ts +410 -0
  112. package/skills/wix-headless-templates/bookings/app/wix/bookings/booking.ts +227 -0
  113. package/skills/wix-headless-templates/bookings/app/wix/bookings/services-core.ts +366 -0
  114. package/skills/wix-headless-templates/bookings/app/wix/bookings/services-store.ts +213 -0
  115. package/skills/wix-headless-templates/bookings/app/wix/bookings/services.ts +100 -0
  116. package/skills/wix-headless-templates/bookings/app/wix/bookings/types.ts +236 -0
  117. package/skills/wix-headless-templates/bookings/app-astro/layouts/SiteLayout.astro +40 -0
  118. package/skills/wix-headless-templates/bookings/app-astro/pages/services/[slug].astro +81 -0
  119. package/skills/wix-headless-templates/bookings/app-astro/pages/services.astro +40 -0
  120. package/skills/wix-headless-templates/bookings/project/README.md +15 -0
  121. package/skills/wix-headless-templates/bookings/project/astro.config.mjs +22 -0
  122. package/skills/wix-headless-templates/bookings/project/package-lock.json +10546 -0
  123. package/skills/wix-headless-templates/bookings/project/package.json +41 -0
  124. package/skills/wix-headless-templates/bookings/project/public/favicon.svg +9 -0
  125. package/skills/wix-headless-templates/bookings/project/src/assets/astro.svg +1 -0
  126. package/skills/wix-headless-templates/bookings/project/src/assets/background.svg +1 -0
  127. package/skills/wix-headless-templates/bookings/project/src/assets/wix.svg +18 -0
  128. package/skills/wix-headless-templates/bookings/project/src/components/Hero.astro +77 -0
  129. package/skills/wix-headless-templates/bookings/project/src/components/Welcome.astro +95 -0
  130. package/skills/wix-headless-templates/bookings/project/src/components/bookings/ServiceBookingView.tsx +369 -0
  131. package/skills/wix-headless-templates/bookings/project/src/components/bookings/ServicesView.tsx +193 -0
  132. package/skills/wix-headless-templates/bookings/project/src/hooks/bookings/useBookingFlow.ts +56 -0
  133. package/skills/wix-headless-templates/bookings/project/src/hooks/bookings/useServices.ts +23 -0
  134. package/skills/wix-headless-templates/bookings/project/src/layouts/Layout.astro +22 -0
  135. package/skills/wix-headless-templates/bookings/project/src/layouts/SiteLayout.astro +40 -0
  136. package/skills/wix-headless-templates/bookings/project/src/pages/index.astro +8 -0
  137. package/skills/wix-headless-templates/bookings/project/src/pages/services/[slug].astro +81 -0
  138. package/skills/wix-headless-templates/bookings/project/src/pages/services.astro +40 -0
  139. package/skills/wix-headless-templates/bookings/project/src/styles/global.css +57 -0
  140. package/skills/wix-headless-templates/bookings/project/src/wix/bookings/booking-core.ts +614 -0
  141. package/skills/wix-headless-templates/bookings/project/src/wix/bookings/booking-flow-store.ts +410 -0
  142. package/skills/wix-headless-templates/bookings/project/src/wix/bookings/booking.ts +227 -0
  143. package/skills/wix-headless-templates/bookings/project/src/wix/bookings/services-core.ts +366 -0
  144. package/skills/wix-headless-templates/bookings/project/src/wix/bookings/services-store.ts +213 -0
  145. package/skills/wix-headless-templates/bookings/project/src/wix/bookings/services.ts +100 -0
  146. package/skills/wix-headless-templates/bookings/project/src/wix/bookings/types.ts +236 -0
  147. package/skills/wix-headless-templates/bookings/project/src/wix/config.ts +16 -0
  148. package/skills/wix-headless-templates/bookings/project/src/wix/media.ts +106 -0
  149. package/skills/wix-headless-templates/bookings/project/src/wix/money.ts +24 -0
  150. package/skills/wix-headless-templates/bookings/project/src/wix/sdk.ts +89 -0
  151. package/skills/wix-headless-templates/bookings/project/tsconfig.json +5 -0
  152. package/skills/wix-headless-templates/bookings/rest/booking.ts +227 -0
  153. package/skills/wix-headless-templates/bookings/rest/services.ts +94 -0
  154. package/skills/wix-headless-templates/bookings/seed/SEED.md +109 -0
  155. package/skills/wix-headless-templates/bookings/seed/read-site.mjs +28 -0
  156. package/skills/wix-headless-templates/bookings/seed/seed-bookings.mjs +407 -0
  157. package/skills/wix-headless-templates/cms/INSTRUCTIONS.md +399 -0
  158. package/skills/wix-headless-templates/cms/app/hooks/cms/useCollection.ts +82 -0
  159. package/skills/wix-headless-templates/cms/app/hooks/cms/useItem.ts +37 -0
  160. package/skills/wix-headless-templates/cms/app/wix/cms/collection-store.ts +220 -0
  161. package/skills/wix-headless-templates/cms/app/wix/cms/collections-core.ts +41 -0
  162. package/skills/wix-headless-templates/cms/app/wix/cms/collections.ts +28 -0
  163. package/skills/wix-headless-templates/cms/app/wix/cms/item-store.ts +93 -0
  164. package/skills/wix-headless-templates/cms/app/wix/cms/items-core.ts +259 -0
  165. package/skills/wix-headless-templates/cms/app/wix/cms/items.ts +182 -0
  166. package/skills/wix-headless-templates/cms/app/wix/cms/types.ts +138 -0
  167. package/skills/wix-headless-templates/cms/app-astro/layouts/SiteLayout.astro +41 -0
  168. package/skills/wix-headless-templates/cms/project/README.md +15 -0
  169. package/skills/wix-headless-templates/cms/project/astro.config.mjs +22 -0
  170. package/skills/wix-headless-templates/cms/project/package-lock.json +9798 -0
  171. package/skills/wix-headless-templates/cms/project/package.json +37 -0
  172. package/skills/wix-headless-templates/cms/project/public/favicon.svg +9 -0
  173. package/skills/wix-headless-templates/cms/project/src/assets/astro.svg +1 -0
  174. package/skills/wix-headless-templates/cms/project/src/assets/background.svg +1 -0
  175. package/skills/wix-headless-templates/cms/project/src/assets/wix.svg +18 -0
  176. package/skills/wix-headless-templates/cms/project/src/components/Hero.astro +77 -0
  177. package/skills/wix-headless-templates/cms/project/src/components/Welcome.astro +95 -0
  178. package/skills/wix-headless-templates/cms/project/src/hooks/cms/useCollection.ts +82 -0
  179. package/skills/wix-headless-templates/cms/project/src/hooks/cms/useItem.ts +37 -0
  180. package/skills/wix-headless-templates/cms/project/src/layouts/Layout.astro +22 -0
  181. package/skills/wix-headless-templates/cms/project/src/layouts/SiteLayout.astro +41 -0
  182. package/skills/wix-headless-templates/cms/project/src/pages/index.astro +8 -0
  183. package/skills/wix-headless-templates/cms/project/src/styles/global.css +57 -0
  184. package/skills/wix-headless-templates/cms/project/src/wix/cms/collection-store.ts +220 -0
  185. package/skills/wix-headless-templates/cms/project/src/wix/cms/collections-core.ts +41 -0
  186. package/skills/wix-headless-templates/cms/project/src/wix/cms/collections.ts +28 -0
  187. package/skills/wix-headless-templates/cms/project/src/wix/cms/item-store.ts +93 -0
  188. package/skills/wix-headless-templates/cms/project/src/wix/cms/items-core.ts +259 -0
  189. package/skills/wix-headless-templates/cms/project/src/wix/cms/items.ts +182 -0
  190. package/skills/wix-headless-templates/cms/project/src/wix/cms/types.ts +138 -0
  191. package/skills/wix-headless-templates/cms/project/src/wix/config.ts +16 -0
  192. package/skills/wix-headless-templates/cms/project/src/wix/media.ts +106 -0
  193. package/skills/wix-headless-templates/cms/project/src/wix/money.ts +24 -0
  194. package/skills/wix-headless-templates/cms/project/src/wix/sdk.ts +89 -0
  195. package/skills/wix-headless-templates/cms/project/tsconfig.json +5 -0
  196. package/skills/wix-headless-templates/cms/rest/collections.ts +25 -0
  197. package/skills/wix-headless-templates/cms/rest/items.ts +189 -0
  198. package/skills/wix-headless-templates/cms/seed/SEED.md +116 -0
  199. package/skills/wix-headless-templates/cms/seed/read-site.mjs +20 -0
  200. package/skills/wix-headless-templates/cms/seed/seed-cms.mjs +321 -0
  201. package/skills/wix-headless-templates/compose.mjs +83 -0
  202. package/skills/wix-headless-templates/donations/INSTRUCTIONS.md +349 -0
  203. package/skills/wix-headless-templates/donations/app/components/donations/DonateForm.tsx +155 -0
  204. package/skills/wix-headless-templates/donations/app/components/donations/DonationReceipt.tsx +46 -0
  205. package/skills/wix-headless-templates/donations/app/components/donations/GoalProgress.tsx +49 -0
  206. package/skills/wix-headless-templates/donations/app/hooks/donations/useCampaigns.ts +21 -0
  207. package/skills/wix-headless-templates/donations/app/hooks/donations/useDonation.ts +27 -0
  208. package/skills/wix-headless-templates/donations/app/hooks/donations/useDonationReceipt.ts +19 -0
  209. package/skills/wix-headless-templates/donations/app/wix/donations/campaigns-store.ts +59 -0
  210. package/skills/wix-headless-templates/donations/app/wix/donations/campaigns.ts +83 -0
  211. package/skills/wix-headless-templates/donations/app/wix/donations/donate.ts +95 -0
  212. package/skills/wix-headless-templates/donations/app/wix/donations/donation-store.ts +163 -0
  213. package/skills/wix-headless-templates/donations/app/wix/donations/donations-core.ts +466 -0
  214. package/skills/wix-headless-templates/donations/app/wix/donations/receipt-store.ts +55 -0
  215. package/skills/wix-headless-templates/donations/app/wix/donations/types.ts +121 -0
  216. package/skills/wix-headless-templates/donations/app-astro/components/donations/CampaignPage.astro +43 -0
  217. package/skills/wix-headless-templates/donations/app-astro/layouts/SiteLayout.astro +45 -0
  218. package/skills/wix-headless-templates/donations/app-astro/pages/donate/[id].astro +28 -0
  219. package/skills/wix-headless-templates/donations/app-astro/pages/donate/index.astro +51 -0
  220. package/skills/wix-headless-templates/donations/app-astro/pages/donate/thank-you.astro +13 -0
  221. package/skills/wix-headless-templates/donations/project/README.md +15 -0
  222. package/skills/wix-headless-templates/donations/project/astro.config.mjs +22 -0
  223. package/skills/wix-headless-templates/donations/project/package-lock.json +10266 -0
  224. package/skills/wix-headless-templates/donations/project/package.json +39 -0
  225. package/skills/wix-headless-templates/donations/project/public/favicon.svg +9 -0
  226. package/skills/wix-headless-templates/donations/project/src/assets/astro.svg +1 -0
  227. package/skills/wix-headless-templates/donations/project/src/assets/background.svg +1 -0
  228. package/skills/wix-headless-templates/donations/project/src/assets/wix.svg +18 -0
  229. package/skills/wix-headless-templates/donations/project/src/components/Hero.astro +77 -0
  230. package/skills/wix-headless-templates/donations/project/src/components/Welcome.astro +95 -0
  231. package/skills/wix-headless-templates/donations/project/src/components/donations/CampaignPage.astro +43 -0
  232. package/skills/wix-headless-templates/donations/project/src/components/donations/DonateForm.tsx +155 -0
  233. package/skills/wix-headless-templates/donations/project/src/components/donations/DonationReceipt.tsx +46 -0
  234. package/skills/wix-headless-templates/donations/project/src/components/donations/GoalProgress.tsx +49 -0
  235. package/skills/wix-headless-templates/donations/project/src/hooks/donations/useCampaigns.ts +21 -0
  236. package/skills/wix-headless-templates/donations/project/src/hooks/donations/useDonation.ts +27 -0
  237. package/skills/wix-headless-templates/donations/project/src/hooks/donations/useDonationReceipt.ts +19 -0
  238. package/skills/wix-headless-templates/donations/project/src/layouts/Layout.astro +22 -0
  239. package/skills/wix-headless-templates/donations/project/src/layouts/SiteLayout.astro +45 -0
  240. package/skills/wix-headless-templates/donations/project/src/pages/donate/[id].astro +28 -0
  241. package/skills/wix-headless-templates/donations/project/src/pages/donate/index.astro +51 -0
  242. package/skills/wix-headless-templates/donations/project/src/pages/donate/thank-you.astro +13 -0
  243. package/skills/wix-headless-templates/donations/project/src/pages/index.astro +8 -0
  244. package/skills/wix-headless-templates/donations/project/src/styles/global.css +57 -0
  245. package/skills/wix-headless-templates/donations/project/src/wix/config.ts +16 -0
  246. package/skills/wix-headless-templates/donations/project/src/wix/donations/campaigns-store.ts +59 -0
  247. package/skills/wix-headless-templates/donations/project/src/wix/donations/campaigns.ts +83 -0
  248. package/skills/wix-headless-templates/donations/project/src/wix/donations/donate.ts +95 -0
  249. package/skills/wix-headless-templates/donations/project/src/wix/donations/donation-store.ts +163 -0
  250. package/skills/wix-headless-templates/donations/project/src/wix/donations/donations-core.ts +466 -0
  251. package/skills/wix-headless-templates/donations/project/src/wix/donations/receipt-store.ts +55 -0
  252. package/skills/wix-headless-templates/donations/project/src/wix/donations/types.ts +121 -0
  253. package/skills/wix-headless-templates/donations/project/src/wix/media.ts +106 -0
  254. package/skills/wix-headless-templates/donations/project/src/wix/money.ts +24 -0
  255. package/skills/wix-headless-templates/donations/project/src/wix/sdk.ts +89 -0
  256. package/skills/wix-headless-templates/donations/project/tsconfig.json +5 -0
  257. package/skills/wix-headless-templates/donations/rest/campaigns.ts +76 -0
  258. package/skills/wix-headless-templates/donations/rest/donate.ts +90 -0
  259. package/skills/wix-headless-templates/donations/seed/SEED.md +90 -0
  260. package/skills/wix-headless-templates/donations/seed/read-site.mjs +33 -0
  261. package/skills/wix-headless-templates/donations/seed/seed-donations.mjs +250 -0
  262. package/skills/wix-headless-templates/events/INSTRUCTIONS.md +387 -0
  263. package/skills/wix-headless-templates/events/app/components/events/EventConfirmationView.tsx +139 -0
  264. package/skills/wix-headless-templates/events/app/components/events/EventRegistrationView.tsx +375 -0
  265. package/skills/wix-headless-templates/events/app/components/events/EventsView.tsx +134 -0
  266. package/skills/wix-headless-templates/events/app/hooks/events/useEventConfirmation.ts +21 -0
  267. package/skills/wix-headless-templates/events/app/hooks/events/useEventRegistration.ts +40 -0
  268. package/skills/wix-headless-templates/events/app/hooks/events/useEvents.ts +24 -0
  269. package/skills/wix-headless-templates/events/app/wix/events/events-core.ts +379 -0
  270. package/skills/wix-headless-templates/events/app/wix/events/events-store.ts +175 -0
  271. package/skills/wix-headless-templates/events/app/wix/events/events.ts +124 -0
  272. package/skills/wix-headless-templates/events/app/wix/events/order-store.ts +143 -0
  273. package/skills/wix-headless-templates/events/app/wix/events/orders-core.ts +86 -0
  274. package/skills/wix-headless-templates/events/app/wix/events/orders.ts +30 -0
  275. package/skills/wix-headless-templates/events/app/wix/events/registration-core.ts +415 -0
  276. package/skills/wix-headless-templates/events/app/wix/events/registration-store.ts +237 -0
  277. package/skills/wix-headless-templates/events/app/wix/events/registration.ts +109 -0
  278. package/skills/wix-headless-templates/events/app/wix/events/types.ts +249 -0
  279. package/skills/wix-headless-templates/events/app-astro/layouts/SiteLayout.astro +40 -0
  280. package/skills/wix-headless-templates/events/app-astro/pages/event-confirmation.astro +12 -0
  281. package/skills/wix-headless-templates/events/app-astro/pages/events/[slug].astro +104 -0
  282. package/skills/wix-headless-templates/events/app-astro/pages/events.astro +23 -0
  283. package/skills/wix-headless-templates/events/project/README.md +15 -0
  284. package/skills/wix-headless-templates/events/project/astro.config.mjs +22 -0
  285. package/skills/wix-headless-templates/events/project/package-lock.json +10497 -0
  286. package/skills/wix-headless-templates/events/project/package.json +39 -0
  287. package/skills/wix-headless-templates/events/project/public/favicon.svg +9 -0
  288. package/skills/wix-headless-templates/events/project/src/assets/astro.svg +1 -0
  289. package/skills/wix-headless-templates/events/project/src/assets/background.svg +1 -0
  290. package/skills/wix-headless-templates/events/project/src/assets/wix.svg +18 -0
  291. package/skills/wix-headless-templates/events/project/src/components/Hero.astro +77 -0
  292. package/skills/wix-headless-templates/events/project/src/components/Welcome.astro +95 -0
  293. package/skills/wix-headless-templates/events/project/src/components/events/EventConfirmationView.tsx +139 -0
  294. package/skills/wix-headless-templates/events/project/src/components/events/EventRegistrationView.tsx +375 -0
  295. package/skills/wix-headless-templates/events/project/src/components/events/EventsView.tsx +134 -0
  296. package/skills/wix-headless-templates/events/project/src/hooks/events/useEventConfirmation.ts +21 -0
  297. package/skills/wix-headless-templates/events/project/src/hooks/events/useEventRegistration.ts +40 -0
  298. package/skills/wix-headless-templates/events/project/src/hooks/events/useEvents.ts +24 -0
  299. package/skills/wix-headless-templates/events/project/src/layouts/Layout.astro +22 -0
  300. package/skills/wix-headless-templates/events/project/src/layouts/SiteLayout.astro +40 -0
  301. package/skills/wix-headless-templates/events/project/src/pages/event-confirmation.astro +12 -0
  302. package/skills/wix-headless-templates/events/project/src/pages/events/[slug].astro +104 -0
  303. package/skills/wix-headless-templates/events/project/src/pages/events.astro +23 -0
  304. package/skills/wix-headless-templates/events/project/src/pages/index.astro +8 -0
  305. package/skills/wix-headless-templates/events/project/src/styles/global.css +57 -0
  306. package/skills/wix-headless-templates/events/project/src/wix/config.ts +16 -0
  307. package/skills/wix-headless-templates/events/project/src/wix/events/events-core.ts +379 -0
  308. package/skills/wix-headless-templates/events/project/src/wix/events/events-store.ts +175 -0
  309. package/skills/wix-headless-templates/events/project/src/wix/events/events.ts +124 -0
  310. package/skills/wix-headless-templates/events/project/src/wix/events/order-store.ts +143 -0
  311. package/skills/wix-headless-templates/events/project/src/wix/events/orders-core.ts +86 -0
  312. package/skills/wix-headless-templates/events/project/src/wix/events/orders.ts +30 -0
  313. package/skills/wix-headless-templates/events/project/src/wix/events/registration-core.ts +415 -0
  314. package/skills/wix-headless-templates/events/project/src/wix/events/registration-store.ts +237 -0
  315. package/skills/wix-headless-templates/events/project/src/wix/events/registration.ts +109 -0
  316. package/skills/wix-headless-templates/events/project/src/wix/events/types.ts +249 -0
  317. package/skills/wix-headless-templates/events/project/src/wix/media.ts +106 -0
  318. package/skills/wix-headless-templates/events/project/src/wix/money.ts +24 -0
  319. package/skills/wix-headless-templates/events/project/src/wix/sdk.ts +89 -0
  320. package/skills/wix-headless-templates/events/project/tsconfig.json +5 -0
  321. package/skills/wix-headless-templates/events/rest/events.ts +112 -0
  322. package/skills/wix-headless-templates/events/rest/orders.ts +28 -0
  323. package/skills/wix-headless-templates/events/rest/registration.ts +96 -0
  324. package/skills/wix-headless-templates/events/seed/SEED.md +115 -0
  325. package/skills/wix-headless-templates/events/seed/read-site.mjs +26 -0
  326. package/skills/wix-headless-templates/events/seed/seed-events.mjs +322 -0
  327. package/skills/wix-headless-templates/faq/INSTRUCTIONS.md +317 -0
  328. package/skills/wix-headless-templates/faq/app/components/faq/FaqAccordion.tsx +159 -0
  329. package/skills/wix-headless-templates/faq/app/components/faq/FaqCategoryNav.tsx +46 -0
  330. package/skills/wix-headless-templates/faq/app/components/faq/FaqSearch.tsx +56 -0
  331. package/skills/wix-headless-templates/faq/app/hooks/faq/useFaq.ts +53 -0
  332. package/skills/wix-headless-templates/faq/app/wix/faq/faq-core.ts +428 -0
  333. package/skills/wix-headless-templates/faq/app/wix/faq/faq-store.ts +212 -0
  334. package/skills/wix-headless-templates/faq/app/wix/faq/faq.ts +72 -0
  335. package/skills/wix-headless-templates/faq/app/wix/faq/types.ts +63 -0
  336. package/skills/wix-headless-templates/faq/app-astro/layouts/SiteLayout.astro +40 -0
  337. package/skills/wix-headless-templates/faq/app-astro/pages/faq.astro +39 -0
  338. package/skills/wix-headless-templates/faq/project/README.md +15 -0
  339. package/skills/wix-headless-templates/faq/project/astro.config.mjs +22 -0
  340. package/skills/wix-headless-templates/faq/project/package-lock.json +8837 -0
  341. package/skills/wix-headless-templates/faq/project/package.json +37 -0
  342. package/skills/wix-headless-templates/faq/project/public/favicon.svg +9 -0
  343. package/skills/wix-headless-templates/faq/project/src/assets/astro.svg +1 -0
  344. package/skills/wix-headless-templates/faq/project/src/assets/background.svg +1 -0
  345. package/skills/wix-headless-templates/faq/project/src/assets/wix.svg +18 -0
  346. package/skills/wix-headless-templates/faq/project/src/components/Hero.astro +77 -0
  347. package/skills/wix-headless-templates/faq/project/src/components/Welcome.astro +95 -0
  348. package/skills/wix-headless-templates/faq/project/src/components/faq/FaqAccordion.tsx +159 -0
  349. package/skills/wix-headless-templates/faq/project/src/components/faq/FaqCategoryNav.tsx +46 -0
  350. package/skills/wix-headless-templates/faq/project/src/components/faq/FaqSearch.tsx +56 -0
  351. package/skills/wix-headless-templates/faq/project/src/hooks/faq/useFaq.ts +53 -0
  352. package/skills/wix-headless-templates/faq/project/src/layouts/Layout.astro +22 -0
  353. package/skills/wix-headless-templates/faq/project/src/layouts/SiteLayout.astro +40 -0
  354. package/skills/wix-headless-templates/faq/project/src/pages/faq.astro +39 -0
  355. package/skills/wix-headless-templates/faq/project/src/pages/index.astro +8 -0
  356. package/skills/wix-headless-templates/faq/project/src/styles/global.css +57 -0
  357. package/skills/wix-headless-templates/faq/project/src/wix/config.ts +16 -0
  358. package/skills/wix-headless-templates/faq/project/src/wix/faq/faq-core.ts +428 -0
  359. package/skills/wix-headless-templates/faq/project/src/wix/faq/faq-store.ts +212 -0
  360. package/skills/wix-headless-templates/faq/project/src/wix/faq/faq.ts +72 -0
  361. package/skills/wix-headless-templates/faq/project/src/wix/faq/types.ts +63 -0
  362. package/skills/wix-headless-templates/faq/project/src/wix/media.ts +106 -0
  363. package/skills/wix-headless-templates/faq/project/src/wix/money.ts +24 -0
  364. package/skills/wix-headless-templates/faq/project/src/wix/sdk.ts +89 -0
  365. package/skills/wix-headless-templates/faq/project/tsconfig.json +5 -0
  366. package/skills/wix-headless-templates/faq/rest/faq.ts +71 -0
  367. package/skills/wix-headless-templates/faq/seed/SEED.md +104 -0
  368. package/skills/wix-headless-templates/faq/seed/read-site.mjs +23 -0
  369. package/skills/wix-headless-templates/faq/seed/seed-faq.mjs +302 -0
  370. package/skills/wix-headless-templates/forms/INSTRUCTIONS.md +417 -0
  371. package/skills/wix-headless-templates/forms/app/hooks/forms/useWixForm.ts +108 -0
  372. package/skills/wix-headless-templates/forms/app/wix/forms/address-templates.generated.ts +13 -0
  373. package/skills/wix-headless-templates/forms/app/wix/forms/form-store.ts +533 -0
  374. package/skills/wix-headless-templates/forms/app/wix/forms/forms-core.ts +671 -0
  375. package/skills/wix-headless-templates/forms/app/wix/forms/forms.ts +57 -0
  376. package/skills/wix-headless-templates/forms/app/wix/forms/submissions-core.ts +423 -0
  377. package/skills/wix-headless-templates/forms/app/wix/forms/submissions.ts +95 -0
  378. package/skills/wix-headless-templates/forms/app/wix/forms/types.ts +284 -0
  379. package/skills/wix-headless-templates/forms/project/README.md +15 -0
  380. package/skills/wix-headless-templates/forms/project/astro.config.mjs +22 -0
  381. package/skills/wix-headless-templates/forms/project/package-lock.json +9102 -0
  382. package/skills/wix-headless-templates/forms/project/package.json +37 -0
  383. package/skills/wix-headless-templates/forms/project/public/favicon.svg +9 -0
  384. package/skills/wix-headless-templates/forms/project/src/assets/astro.svg +1 -0
  385. package/skills/wix-headless-templates/forms/project/src/assets/background.svg +1 -0
  386. package/skills/wix-headless-templates/forms/project/src/assets/wix.svg +18 -0
  387. package/skills/wix-headless-templates/forms/project/src/components/Hero.astro +77 -0
  388. package/skills/wix-headless-templates/forms/project/src/components/Welcome.astro +95 -0
  389. package/skills/wix-headless-templates/forms/project/src/hooks/forms/useWixForm.ts +108 -0
  390. package/skills/wix-headless-templates/forms/project/src/layouts/Layout.astro +22 -0
  391. package/skills/wix-headless-templates/forms/project/src/pages/index.astro +8 -0
  392. package/skills/wix-headless-templates/forms/project/src/styles/global.css +57 -0
  393. package/skills/wix-headless-templates/forms/project/src/wix/config.ts +16 -0
  394. package/skills/wix-headless-templates/forms/project/src/wix/forms/address-templates.generated.ts +13 -0
  395. package/skills/wix-headless-templates/forms/project/src/wix/forms/form-store.ts +533 -0
  396. package/skills/wix-headless-templates/forms/project/src/wix/forms/forms-core.ts +671 -0
  397. package/skills/wix-headless-templates/forms/project/src/wix/forms/forms.ts +57 -0
  398. package/skills/wix-headless-templates/forms/project/src/wix/forms/submissions-core.ts +423 -0
  399. package/skills/wix-headless-templates/forms/project/src/wix/forms/submissions.ts +95 -0
  400. package/skills/wix-headless-templates/forms/project/src/wix/forms/types.ts +284 -0
  401. package/skills/wix-headless-templates/forms/project/src/wix/media.ts +106 -0
  402. package/skills/wix-headless-templates/forms/project/src/wix/money.ts +24 -0
  403. package/skills/wix-headless-templates/forms/project/src/wix/sdk.ts +89 -0
  404. package/skills/wix-headless-templates/forms/project/tsconfig.json +5 -0
  405. package/skills/wix-headless-templates/forms/rest/forms.ts +37 -0
  406. package/skills/wix-headless-templates/forms/rest/submissions.ts +83 -0
  407. package/skills/wix-headless-templates/forms/seed/SEED.md +225 -0
  408. package/skills/wix-headless-templates/forms/seed/read-site.mjs +53 -0
  409. package/skills/wix-headless-templates/forms/seed/seed-forms.mjs +574 -0
  410. package/skills/wix-headless-templates/forms/tooling/address-templates.mjs +96 -0
  411. package/skills/wix-headless-templates/members/INSTRUCTIONS.md +345 -0
  412. package/skills/wix-headless-templates/members/app/components/members/AccountPage.tsx +16 -0
  413. package/skills/wix-headless-templates/members/app/components/members/AccountView.tsx +60 -0
  414. package/skills/wix-headless-templates/members/app/components/members/LoginForm.tsx +165 -0
  415. package/skills/wix-headless-templates/members/app/components/members/MemberMenu.tsx +78 -0
  416. package/skills/wix-headless-templates/members/app/components/members/RequireAuth.tsx +47 -0
  417. package/skills/wix-headless-templates/members/app/hooks/members/useMember.ts +67 -0
  418. package/skills/wix-headless-templates/members/app/wix/members/auth-core.ts +160 -0
  419. package/skills/wix-headless-templates/members/app/wix/members/auth.ts +117 -0
  420. package/skills/wix-headless-templates/members/app/wix/members/client.ts +27 -0
  421. package/skills/wix-headless-templates/members/app/wix/members/member-store.ts +133 -0
  422. package/skills/wix-headless-templates/members/app/wix/members/members-core.ts +43 -0
  423. package/skills/wix-headless-templates/members/app/wix/members/members.ts +29 -0
  424. package/skills/wix-headless-templates/members/app/wix/members/types.ts +21 -0
  425. package/skills/wix-headless-templates/members/app-astro/layouts/SiteLayout.astro +42 -0
  426. package/skills/wix-headless-templates/members/app-astro/pages/account.astro +9 -0
  427. package/skills/wix-headless-templates/members/app-astro/pages/login.astro +11 -0
  428. package/skills/wix-headless-templates/members/project/README.md +15 -0
  429. package/skills/wix-headless-templates/members/project/astro.config.mjs +22 -0
  430. package/skills/wix-headless-templates/members/project/package-lock.json +8892 -0
  431. package/skills/wix-headless-templates/members/project/package.json +37 -0
  432. package/skills/wix-headless-templates/members/project/public/favicon.svg +9 -0
  433. package/skills/wix-headless-templates/members/project/src/assets/astro.svg +1 -0
  434. package/skills/wix-headless-templates/members/project/src/assets/background.svg +1 -0
  435. package/skills/wix-headless-templates/members/project/src/assets/wix.svg +18 -0
  436. package/skills/wix-headless-templates/members/project/src/components/Hero.astro +77 -0
  437. package/skills/wix-headless-templates/members/project/src/components/Welcome.astro +95 -0
  438. package/skills/wix-headless-templates/members/project/src/components/members/AccountPage.tsx +16 -0
  439. package/skills/wix-headless-templates/members/project/src/components/members/AccountView.tsx +60 -0
  440. package/skills/wix-headless-templates/members/project/src/components/members/LoginForm.tsx +165 -0
  441. package/skills/wix-headless-templates/members/project/src/components/members/MemberMenu.tsx +78 -0
  442. package/skills/wix-headless-templates/members/project/src/components/members/RequireAuth.tsx +47 -0
  443. package/skills/wix-headless-templates/members/project/src/hooks/members/useMember.ts +67 -0
  444. package/skills/wix-headless-templates/members/project/src/layouts/Layout.astro +22 -0
  445. package/skills/wix-headless-templates/members/project/src/layouts/SiteLayout.astro +42 -0
  446. package/skills/wix-headless-templates/members/project/src/pages/account.astro +9 -0
  447. package/skills/wix-headless-templates/members/project/src/pages/index.astro +8 -0
  448. package/skills/wix-headless-templates/members/project/src/pages/login.astro +11 -0
  449. package/skills/wix-headless-templates/members/project/src/styles/global.css +57 -0
  450. package/skills/wix-headless-templates/members/project/src/wix/config.ts +16 -0
  451. package/skills/wix-headless-templates/members/project/src/wix/media.ts +106 -0
  452. package/skills/wix-headless-templates/members/project/src/wix/members/auth-core.ts +160 -0
  453. package/skills/wix-headless-templates/members/project/src/wix/members/auth.ts +117 -0
  454. package/skills/wix-headless-templates/members/project/src/wix/members/client.ts +27 -0
  455. package/skills/wix-headless-templates/members/project/src/wix/members/member-store.ts +133 -0
  456. package/skills/wix-headless-templates/members/project/src/wix/members/members-core.ts +43 -0
  457. package/skills/wix-headless-templates/members/project/src/wix/members/members.ts +29 -0
  458. package/skills/wix-headless-templates/members/project/src/wix/members/types.ts +21 -0
  459. package/skills/wix-headless-templates/members/project/src/wix/money.ts +24 -0
  460. package/skills/wix-headless-templates/members/project/src/wix/sdk.ts +89 -0
  461. package/skills/wix-headless-templates/members/project/tsconfig.json +5 -0
  462. package/skills/wix-headless-templates/members/rest/auth.ts +224 -0
  463. package/skills/wix-headless-templates/members/rest/members.ts +26 -0
  464. package/skills/wix-headless-templates/members/seed/SEED.md +39 -0
  465. package/skills/wix-headless-templates/members/seed/read-site.mjs +15 -0
  466. package/skills/wix-headless-templates/members/seed/seed-members.mjs +91 -0
  467. package/skills/wix-headless-templates/portfolio/INSTRUCTIONS.md +315 -0
  468. package/skills/wix-headless-templates/portfolio/app/components/portfolio/CollectionProjectsView.tsx +110 -0
  469. package/skills/wix-headless-templates/portfolio/app/components/portfolio/CollectionsView.tsx +90 -0
  470. package/skills/wix-headless-templates/portfolio/app/components/portfolio/GalleryMedia.tsx +35 -0
  471. package/skills/wix-headless-templates/portfolio/app/components/portfolio/ProjectDetailView.tsx +85 -0
  472. package/skills/wix-headless-templates/portfolio/app/hooks/portfolio/useCollectionProjects.ts +32 -0
  473. package/skills/wix-headless-templates/portfolio/app/hooks/portfolio/useCollections.ts +21 -0
  474. package/skills/wix-headless-templates/portfolio/app/hooks/portfolio/useProjectDetail.ts +31 -0
  475. package/skills/wix-headless-templates/portfolio/app/wix/portfolio/collection-projects-store.ts +82 -0
  476. package/skills/wix-headless-templates/portfolio/app/wix/portfolio/collections-store.ts +58 -0
  477. package/skills/wix-headless-templates/portfolio/app/wix/portfolio/portfolio-core.ts +177 -0
  478. package/skills/wix-headless-templates/portfolio/app/wix/portfolio/portfolio.ts +78 -0
  479. package/skills/wix-headless-templates/portfolio/app/wix/portfolio/project-detail-store.ts +81 -0
  480. package/skills/wix-headless-templates/portfolio/app/wix/portfolio/types.ts +55 -0
  481. package/skills/wix-headless-templates/portfolio/app-astro/layouts/SiteLayout.astro +40 -0
  482. package/skills/wix-headless-templates/portfolio/app-astro/pages/portfolio/[slug].astro +30 -0
  483. package/skills/wix-headless-templates/portfolio/app-astro/pages/portfolio.astro +21 -0
  484. package/skills/wix-headless-templates/portfolio/app-astro/pages/projects/[slug].astro +29 -0
  485. package/skills/wix-headless-templates/portfolio/project/README.md +15 -0
  486. package/skills/wix-headless-templates/portfolio/project/astro.config.mjs +22 -0
  487. package/skills/wix-headless-templates/portfolio/project/package-lock.json +8760 -0
  488. package/skills/wix-headless-templates/portfolio/project/package.json +37 -0
  489. package/skills/wix-headless-templates/portfolio/project/public/favicon.svg +9 -0
  490. package/skills/wix-headless-templates/portfolio/project/src/assets/astro.svg +1 -0
  491. package/skills/wix-headless-templates/portfolio/project/src/assets/background.svg +1 -0
  492. package/skills/wix-headless-templates/portfolio/project/src/assets/wix.svg +18 -0
  493. package/skills/wix-headless-templates/portfolio/project/src/components/Hero.astro +77 -0
  494. package/skills/wix-headless-templates/portfolio/project/src/components/Welcome.astro +95 -0
  495. package/skills/wix-headless-templates/portfolio/project/src/components/portfolio/CollectionProjectsView.tsx +110 -0
  496. package/skills/wix-headless-templates/portfolio/project/src/components/portfolio/CollectionsView.tsx +90 -0
  497. package/skills/wix-headless-templates/portfolio/project/src/components/portfolio/GalleryMedia.tsx +35 -0
  498. package/skills/wix-headless-templates/portfolio/project/src/components/portfolio/ProjectDetailView.tsx +85 -0
  499. package/skills/wix-headless-templates/portfolio/project/src/hooks/portfolio/useCollectionProjects.ts +32 -0
  500. package/skills/wix-headless-templates/portfolio/project/src/hooks/portfolio/useCollections.ts +21 -0
  501. package/skills/wix-headless-templates/portfolio/project/src/hooks/portfolio/useProjectDetail.ts +31 -0
  502. package/skills/wix-headless-templates/portfolio/project/src/layouts/Layout.astro +22 -0
  503. package/skills/wix-headless-templates/portfolio/project/src/layouts/SiteLayout.astro +40 -0
  504. package/skills/wix-headless-templates/portfolio/project/src/pages/index.astro +8 -0
  505. package/skills/wix-headless-templates/portfolio/project/src/pages/portfolio/[slug].astro +30 -0
  506. package/skills/wix-headless-templates/portfolio/project/src/pages/portfolio.astro +21 -0
  507. package/skills/wix-headless-templates/portfolio/project/src/pages/projects/[slug].astro +29 -0
  508. package/skills/wix-headless-templates/portfolio/project/src/styles/global.css +57 -0
  509. package/skills/wix-headless-templates/portfolio/project/src/wix/config.ts +16 -0
  510. package/skills/wix-headless-templates/portfolio/project/src/wix/media.ts +106 -0
  511. package/skills/wix-headless-templates/portfolio/project/src/wix/money.ts +24 -0
  512. package/skills/wix-headless-templates/portfolio/project/src/wix/portfolio/collection-projects-store.ts +82 -0
  513. package/skills/wix-headless-templates/portfolio/project/src/wix/portfolio/collections-store.ts +58 -0
  514. package/skills/wix-headless-templates/portfolio/project/src/wix/portfolio/portfolio-core.ts +177 -0
  515. package/skills/wix-headless-templates/portfolio/project/src/wix/portfolio/portfolio.ts +78 -0
  516. package/skills/wix-headless-templates/portfolio/project/src/wix/portfolio/project-detail-store.ts +81 -0
  517. package/skills/wix-headless-templates/portfolio/project/src/wix/portfolio/types.ts +55 -0
  518. package/skills/wix-headless-templates/portfolio/project/src/wix/sdk.ts +89 -0
  519. package/skills/wix-headless-templates/portfolio/project/tsconfig.json +5 -0
  520. package/skills/wix-headless-templates/portfolio/rest/portfolio.ts +75 -0
  521. package/skills/wix-headless-templates/portfolio/seed/SEED.md +86 -0
  522. package/skills/wix-headless-templates/portfolio/seed/read-site.mjs +20 -0
  523. package/skills/wix-headless-templates/portfolio/seed/seed-portfolio.mjs +253 -0
  524. package/skills/wix-headless-templates/pricing-plans/INSTRUCTIONS.md +376 -0
  525. package/skills/wix-headless-templates/pricing-plans/app/components/pricing-plans/PlanDetailView.tsx +54 -0
  526. package/skills/wix-headless-templates/pricing-plans/app/components/pricing-plans/PlansView.tsx +108 -0
  527. package/skills/wix-headless-templates/pricing-plans/app/components/pricing-plans/RequirePlan.tsx +87 -0
  528. package/skills/wix-headless-templates/pricing-plans/app/components/pricing-plans/SubscribeButton.tsx +41 -0
  529. package/skills/wix-headless-templates/pricing-plans/app/hooks/pricing-plans/usePlanAccess.ts +31 -0
  530. package/skills/wix-headless-templates/pricing-plans/app/hooks/pricing-plans/usePlanPurchase.ts +16 -0
  531. package/skills/wix-headless-templates/pricing-plans/app/hooks/pricing-plans/usePlans.ts +22 -0
  532. package/skills/wix-headless-templates/pricing-plans/app/wix/pricing-plans/plan-access-core.ts +29 -0
  533. package/skills/wix-headless-templates/pricing-plans/app/wix/pricing-plans/plan-access-store.ts +92 -0
  534. package/skills/wix-headless-templates/pricing-plans/app/wix/pricing-plans/plan-access.ts +37 -0
  535. package/skills/wix-headless-templates/pricing-plans/app/wix/pricing-plans/plan-purchase-store.ts +54 -0
  536. package/skills/wix-headless-templates/pricing-plans/app/wix/pricing-plans/plans-core.ts +212 -0
  537. package/skills/wix-headless-templates/pricing-plans/app/wix/pricing-plans/plans-store.ts +64 -0
  538. package/skills/wix-headless-templates/pricing-plans/app/wix/pricing-plans/plans.ts +54 -0
  539. package/skills/wix-headless-templates/pricing-plans/app/wix/pricing-plans/purchase-core.ts +43 -0
  540. package/skills/wix-headless-templates/pricing-plans/app/wix/pricing-plans/purchase.ts +22 -0
  541. package/skills/wix-headless-templates/pricing-plans/app/wix/pricing-plans/types.ts +52 -0
  542. package/skills/wix-headless-templates/pricing-plans/app-astro/layouts/SiteLayout.astro +41 -0
  543. package/skills/wix-headless-templates/pricing-plans/app-astro/pages/plans/[slug].astro +43 -0
  544. package/skills/wix-headless-templates/pricing-plans/app-astro/pages/plans.astro +21 -0
  545. package/skills/wix-headless-templates/pricing-plans/project/README.md +15 -0
  546. package/skills/wix-headless-templates/pricing-plans/project/astro.config.mjs +22 -0
  547. package/skills/wix-headless-templates/pricing-plans/project/package-lock.json +9799 -0
  548. package/skills/wix-headless-templates/pricing-plans/project/package.json +38 -0
  549. package/skills/wix-headless-templates/pricing-plans/project/public/favicon.svg +9 -0
  550. package/skills/wix-headless-templates/pricing-plans/project/src/assets/astro.svg +1 -0
  551. package/skills/wix-headless-templates/pricing-plans/project/src/assets/background.svg +1 -0
  552. package/skills/wix-headless-templates/pricing-plans/project/src/assets/wix.svg +18 -0
  553. package/skills/wix-headless-templates/pricing-plans/project/src/components/Hero.astro +77 -0
  554. package/skills/wix-headless-templates/pricing-plans/project/src/components/Welcome.astro +95 -0
  555. package/skills/wix-headless-templates/pricing-plans/project/src/components/pricing-plans/PlanDetailView.tsx +54 -0
  556. package/skills/wix-headless-templates/pricing-plans/project/src/components/pricing-plans/PlansView.tsx +108 -0
  557. package/skills/wix-headless-templates/pricing-plans/project/src/components/pricing-plans/RequirePlan.tsx +87 -0
  558. package/skills/wix-headless-templates/pricing-plans/project/src/components/pricing-plans/SubscribeButton.tsx +41 -0
  559. package/skills/wix-headless-templates/pricing-plans/project/src/hooks/pricing-plans/usePlanAccess.ts +31 -0
  560. package/skills/wix-headless-templates/pricing-plans/project/src/hooks/pricing-plans/usePlanPurchase.ts +16 -0
  561. package/skills/wix-headless-templates/pricing-plans/project/src/hooks/pricing-plans/usePlans.ts +22 -0
  562. package/skills/wix-headless-templates/pricing-plans/project/src/layouts/Layout.astro +22 -0
  563. package/skills/wix-headless-templates/pricing-plans/project/src/layouts/SiteLayout.astro +41 -0
  564. package/skills/wix-headless-templates/pricing-plans/project/src/pages/index.astro +8 -0
  565. package/skills/wix-headless-templates/pricing-plans/project/src/pages/plans/[slug].astro +43 -0
  566. package/skills/wix-headless-templates/pricing-plans/project/src/pages/plans.astro +21 -0
  567. package/skills/wix-headless-templates/pricing-plans/project/src/styles/global.css +57 -0
  568. package/skills/wix-headless-templates/pricing-plans/project/src/wix/config.ts +16 -0
  569. package/skills/wix-headless-templates/pricing-plans/project/src/wix/media.ts +106 -0
  570. package/skills/wix-headless-templates/pricing-plans/project/src/wix/money.ts +24 -0
  571. package/skills/wix-headless-templates/pricing-plans/project/src/wix/pricing-plans/plan-access-core.ts +29 -0
  572. package/skills/wix-headless-templates/pricing-plans/project/src/wix/pricing-plans/plan-access-store.ts +92 -0
  573. package/skills/wix-headless-templates/pricing-plans/project/src/wix/pricing-plans/plan-access.ts +37 -0
  574. package/skills/wix-headless-templates/pricing-plans/project/src/wix/pricing-plans/plan-purchase-store.ts +54 -0
  575. package/skills/wix-headless-templates/pricing-plans/project/src/wix/pricing-plans/plans-core.ts +212 -0
  576. package/skills/wix-headless-templates/pricing-plans/project/src/wix/pricing-plans/plans-store.ts +64 -0
  577. package/skills/wix-headless-templates/pricing-plans/project/src/wix/pricing-plans/plans.ts +54 -0
  578. package/skills/wix-headless-templates/pricing-plans/project/src/wix/pricing-plans/purchase-core.ts +43 -0
  579. package/skills/wix-headless-templates/pricing-plans/project/src/wix/pricing-plans/purchase.ts +22 -0
  580. package/skills/wix-headless-templates/pricing-plans/project/src/wix/pricing-plans/types.ts +52 -0
  581. package/skills/wix-headless-templates/pricing-plans/project/src/wix/sdk.ts +89 -0
  582. package/skills/wix-headless-templates/pricing-plans/project/tsconfig.json +5 -0
  583. package/skills/wix-headless-templates/pricing-plans/rest/plan-access.ts +31 -0
  584. package/skills/wix-headless-templates/pricing-plans/rest/plans.ts +58 -0
  585. package/skills/wix-headless-templates/pricing-plans/rest/purchase.ts +20 -0
  586. package/skills/wix-headless-templates/pricing-plans/seed/SEED.md +93 -0
  587. package/skills/wix-headless-templates/pricing-plans/seed/read-site.mjs +22 -0
  588. package/skills/wix-headless-templates/pricing-plans/seed/seed-pricing-plans.mjs +301 -0
  589. package/skills/wix-headless-templates/rentals/INSTRUCTIONS.md +309 -0
  590. package/skills/wix-headless-templates/rentals/app/components/rentals/RentalBookingView.tsx +195 -0
  591. package/skills/wix-headless-templates/rentals/app/components/rentals/RentalsView.tsx +89 -0
  592. package/skills/wix-headless-templates/rentals/app/hooks/rentals/useRentalFlow.ts +31 -0
  593. package/skills/wix-headless-templates/rentals/app/hooks/rentals/useRentals.ts +23 -0
  594. package/skills/wix-headless-templates/rentals/app/wix/rentals/rental-flow-store.ts +283 -0
  595. package/skills/wix-headless-templates/rentals/app/wix/rentals/rentals-core.ts +435 -0
  596. package/skills/wix-headless-templates/rentals/app/wix/rentals/rentals-store.ts +112 -0
  597. package/skills/wix-headless-templates/rentals/app/wix/rentals/rentals.ts +173 -0
  598. package/skills/wix-headless-templates/rentals/app/wix/rentals/types.ts +113 -0
  599. package/skills/wix-headless-templates/rentals/app-astro/layouts/SiteLayout.astro +40 -0
  600. package/skills/wix-headless-templates/rentals/app-astro/pages/rentals/[slug].astro +81 -0
  601. package/skills/wix-headless-templates/rentals/app-astro/pages/rentals.astro +24 -0
  602. package/skills/wix-headless-templates/rentals/project/README.md +15 -0
  603. package/skills/wix-headless-templates/rentals/project/astro.config.mjs +22 -0
  604. package/skills/wix-headless-templates/rentals/project/package-lock.json +10545 -0
  605. package/skills/wix-headless-templates/rentals/project/package.json +40 -0
  606. package/skills/wix-headless-templates/rentals/project/public/favicon.svg +9 -0
  607. package/skills/wix-headless-templates/rentals/project/src/assets/astro.svg +1 -0
  608. package/skills/wix-headless-templates/rentals/project/src/assets/background.svg +1 -0
  609. package/skills/wix-headless-templates/rentals/project/src/assets/wix.svg +18 -0
  610. package/skills/wix-headless-templates/rentals/project/src/components/Hero.astro +77 -0
  611. package/skills/wix-headless-templates/rentals/project/src/components/Welcome.astro +95 -0
  612. package/skills/wix-headless-templates/rentals/project/src/components/rentals/RentalBookingView.tsx +195 -0
  613. package/skills/wix-headless-templates/rentals/project/src/components/rentals/RentalsView.tsx +89 -0
  614. package/skills/wix-headless-templates/rentals/project/src/hooks/rentals/useRentalFlow.ts +31 -0
  615. package/skills/wix-headless-templates/rentals/project/src/hooks/rentals/useRentals.ts +23 -0
  616. package/skills/wix-headless-templates/rentals/project/src/layouts/Layout.astro +22 -0
  617. package/skills/wix-headless-templates/rentals/project/src/layouts/SiteLayout.astro +40 -0
  618. package/skills/wix-headless-templates/rentals/project/src/pages/index.astro +8 -0
  619. package/skills/wix-headless-templates/rentals/project/src/pages/rentals/[slug].astro +81 -0
  620. package/skills/wix-headless-templates/rentals/project/src/pages/rentals.astro +24 -0
  621. package/skills/wix-headless-templates/rentals/project/src/styles/global.css +57 -0
  622. package/skills/wix-headless-templates/rentals/project/src/wix/config.ts +16 -0
  623. package/skills/wix-headless-templates/rentals/project/src/wix/media.ts +106 -0
  624. package/skills/wix-headless-templates/rentals/project/src/wix/money.ts +24 -0
  625. package/skills/wix-headless-templates/rentals/project/src/wix/rentals/rental-flow-store.ts +283 -0
  626. package/skills/wix-headless-templates/rentals/project/src/wix/rentals/rentals-core.ts +435 -0
  627. package/skills/wix-headless-templates/rentals/project/src/wix/rentals/rentals-store.ts +112 -0
  628. package/skills/wix-headless-templates/rentals/project/src/wix/rentals/rentals.ts +173 -0
  629. package/skills/wix-headless-templates/rentals/project/src/wix/rentals/types.ts +113 -0
  630. package/skills/wix-headless-templates/rentals/project/src/wix/sdk.ts +89 -0
  631. package/skills/wix-headless-templates/rentals/project/tsconfig.json +5 -0
  632. package/skills/wix-headless-templates/rentals/rest/rentals.ts +153 -0
  633. package/skills/wix-headless-templates/rentals/seed/SEED.md +95 -0
  634. package/skills/wix-headless-templates/rentals/seed/read-site.mjs +34 -0
  635. package/skills/wix-headless-templates/rentals/seed/seed-rentals.mjs +321 -0
  636. package/skills/wix-headless-templates/restaurants/INSTRUCTIONS.md +468 -0
  637. package/skills/wix-headless-templates/restaurants/app/components/restaurants/MenuView.tsx +257 -0
  638. package/skills/wix-headless-templates/restaurants/app/components/restaurants/OrderCartButton.tsx +26 -0
  639. package/skills/wix-headless-templates/restaurants/app/components/restaurants/OrderCartDrawer.tsx +121 -0
  640. package/skills/wix-headless-templates/restaurants/app/components/restaurants/ReservationView.tsx +212 -0
  641. package/skills/wix-headless-templates/restaurants/app/hooks/restaurants/useMenus.ts +34 -0
  642. package/skills/wix-headless-templates/restaurants/app/hooks/restaurants/useOrderCart.ts +52 -0
  643. package/skills/wix-headless-templates/restaurants/app/hooks/restaurants/useReservation.ts +49 -0
  644. package/skills/wix-headless-templates/restaurants/app/wix/restaurants/menu-core.ts +333 -0
  645. package/skills/wix-headless-templates/restaurants/app/wix/restaurants/menu-store.ts +89 -0
  646. package/skills/wix-headless-templates/restaurants/app/wix/restaurants/menu.ts +109 -0
  647. package/skills/wix-headless-templates/restaurants/app/wix/restaurants/order-store.ts +141 -0
  648. package/skills/wix-headless-templates/restaurants/app/wix/restaurants/ordering-core.ts +287 -0
  649. package/skills/wix-headless-templates/restaurants/app/wix/restaurants/ordering.ts +237 -0
  650. package/skills/wix-headless-templates/restaurants/app/wix/restaurants/reservation-store.ts +279 -0
  651. package/skills/wix-headless-templates/restaurants/app/wix/restaurants/reservations-core.ts +218 -0
  652. package/skills/wix-headless-templates/restaurants/app/wix/restaurants/reservations.ts +109 -0
  653. package/skills/wix-headless-templates/restaurants/app/wix/restaurants/time-core.ts +118 -0
  654. package/skills/wix-headless-templates/restaurants/app/wix/restaurants/types.ts +337 -0
  655. package/skills/wix-headless-templates/restaurants/app-astro/layouts/SiteLayout.astro +47 -0
  656. package/skills/wix-headless-templates/restaurants/app-astro/pages/menu.astro +22 -0
  657. package/skills/wix-headless-templates/restaurants/app-astro/pages/reservations.astro +12 -0
  658. package/skills/wix-headless-templates/restaurants/project/README.md +15 -0
  659. package/skills/wix-headless-templates/restaurants/project/astro.config.mjs +22 -0
  660. package/skills/wix-headless-templates/restaurants/project/package-lock.json +11038 -0
  661. package/skills/wix-headless-templates/restaurants/project/package.json +40 -0
  662. package/skills/wix-headless-templates/restaurants/project/public/favicon.svg +9 -0
  663. package/skills/wix-headless-templates/restaurants/project/src/assets/astro.svg +1 -0
  664. package/skills/wix-headless-templates/restaurants/project/src/assets/background.svg +1 -0
  665. package/skills/wix-headless-templates/restaurants/project/src/assets/wix.svg +18 -0
  666. package/skills/wix-headless-templates/restaurants/project/src/components/Hero.astro +77 -0
  667. package/skills/wix-headless-templates/restaurants/project/src/components/Welcome.astro +95 -0
  668. package/skills/wix-headless-templates/restaurants/project/src/components/restaurants/MenuView.tsx +257 -0
  669. package/skills/wix-headless-templates/restaurants/project/src/components/restaurants/OrderCartButton.tsx +26 -0
  670. package/skills/wix-headless-templates/restaurants/project/src/components/restaurants/OrderCartDrawer.tsx +121 -0
  671. package/skills/wix-headless-templates/restaurants/project/src/components/restaurants/ReservationView.tsx +212 -0
  672. package/skills/wix-headless-templates/restaurants/project/src/hooks/restaurants/useMenus.ts +34 -0
  673. package/skills/wix-headless-templates/restaurants/project/src/hooks/restaurants/useOrderCart.ts +52 -0
  674. package/skills/wix-headless-templates/restaurants/project/src/hooks/restaurants/useReservation.ts +49 -0
  675. package/skills/wix-headless-templates/restaurants/project/src/layouts/Layout.astro +22 -0
  676. package/skills/wix-headless-templates/restaurants/project/src/layouts/SiteLayout.astro +47 -0
  677. package/skills/wix-headless-templates/restaurants/project/src/pages/index.astro +8 -0
  678. package/skills/wix-headless-templates/restaurants/project/src/pages/menu.astro +22 -0
  679. package/skills/wix-headless-templates/restaurants/project/src/pages/reservations.astro +12 -0
  680. package/skills/wix-headless-templates/restaurants/project/src/styles/global.css +57 -0
  681. package/skills/wix-headless-templates/restaurants/project/src/wix/config.ts +16 -0
  682. package/skills/wix-headless-templates/restaurants/project/src/wix/media.ts +106 -0
  683. package/skills/wix-headless-templates/restaurants/project/src/wix/money.ts +24 -0
  684. package/skills/wix-headless-templates/restaurants/project/src/wix/restaurants/menu-core.ts +333 -0
  685. package/skills/wix-headless-templates/restaurants/project/src/wix/restaurants/menu-store.ts +89 -0
  686. package/skills/wix-headless-templates/restaurants/project/src/wix/restaurants/menu.ts +109 -0
  687. package/skills/wix-headless-templates/restaurants/project/src/wix/restaurants/order-store.ts +141 -0
  688. package/skills/wix-headless-templates/restaurants/project/src/wix/restaurants/ordering-core.ts +287 -0
  689. package/skills/wix-headless-templates/restaurants/project/src/wix/restaurants/ordering.ts +237 -0
  690. package/skills/wix-headless-templates/restaurants/project/src/wix/restaurants/reservation-store.ts +279 -0
  691. package/skills/wix-headless-templates/restaurants/project/src/wix/restaurants/reservations-core.ts +218 -0
  692. package/skills/wix-headless-templates/restaurants/project/src/wix/restaurants/reservations.ts +109 -0
  693. package/skills/wix-headless-templates/restaurants/project/src/wix/restaurants/time-core.ts +118 -0
  694. package/skills/wix-headless-templates/restaurants/project/src/wix/restaurants/types.ts +337 -0
  695. package/skills/wix-headless-templates/restaurants/project/src/wix/sdk.ts +89 -0
  696. package/skills/wix-headless-templates/restaurants/project/tsconfig.json +5 -0
  697. package/skills/wix-headless-templates/restaurants/rest/menu.ts +96 -0
  698. package/skills/wix-headless-templates/restaurants/rest/ordering.ts +222 -0
  699. package/skills/wix-headless-templates/restaurants/rest/reservations.ts +102 -0
  700. package/skills/wix-headless-templates/restaurants/seed/SEED.md +118 -0
  701. package/skills/wix-headless-templates/restaurants/seed/read-site.mjs +25 -0
  702. package/skills/wix-headless-templates/restaurants/seed/seed-restaurants.mjs +577 -0
  703. package/skills/wix-headless-templates/shared/CONTENT.md +22 -0
  704. package/skills/wix-headless-templates/shared/CUSTOM_OPERATIONS.md +100 -0
  705. package/skills/wix-headless-templates/shared/DESIGN.md +37 -0
  706. package/skills/wix-headless-templates/shared/SUPPLIED-CONTENT.md +27 -0
  707. package/skills/wix-headless-templates/shared/app/styles/global.css +57 -0
  708. package/skills/wix-headless-templates/shared/app/wix/config.ts +16 -0
  709. package/skills/wix-headless-templates/shared/app/wix/media.ts +106 -0
  710. package/skills/wix-headless-templates/shared/app/wix/money.ts +24 -0
  711. package/skills/wix-headless-templates/shared/app/wix/sdk.ts +89 -0
  712. package/skills/wix-headless-templates/shared/capabilities/media-upload/app/wix/media-upload/client.ts +46 -0
  713. package/skills/wix-headless-templates/shared/capabilities/media-upload/app-astro/pages/api/wix/media-upload.ts +69 -0
  714. package/skills/wix-headless-templates/shared/capabilities/site-search/INSTRUCTIONS.md +194 -0
  715. package/skills/wix-headless-templates/shared/capabilities/site-search/app/components/site-search/SearchBox.tsx +136 -0
  716. package/skills/wix-headless-templates/shared/capabilities/site-search/app/components/site-search/SearchHit.tsx +50 -0
  717. package/skills/wix-headless-templates/shared/capabilities/site-search/app/components/site-search/SearchResults.tsx +300 -0
  718. package/skills/wix-headless-templates/shared/capabilities/site-search/app/hooks/site-search/useSearch.ts +31 -0
  719. package/skills/wix-headless-templates/shared/capabilities/site-search/app/hooks/site-search/useSuggest.ts +26 -0
  720. package/skills/wix-headless-templates/shared/capabilities/site-search/app/wix/site-search/search-core.ts +520 -0
  721. package/skills/wix-headless-templates/shared/capabilities/site-search/app/wix/site-search/search-store.ts +235 -0
  722. package/skills/wix-headless-templates/shared/capabilities/site-search/app/wix/site-search/search.ts +80 -0
  723. package/skills/wix-headless-templates/shared/capabilities/site-search/app/wix/site-search/suggest-store.ts +178 -0
  724. package/skills/wix-headless-templates/shared/capabilities/site-search/app/wix/site-search/types.ts +158 -0
  725. package/skills/wix-headless-templates/shared/capabilities/site-search/app-astro/pages/search.astro +33 -0
  726. package/skills/wix-headless-templates/shared/capabilities/site-search/rest/search.ts +82 -0
  727. package/skills/wix-headless-templates/shared/capabilities/site-search/seed/install.mjs +43 -0
  728. package/skills/wix-headless-templates/shared/rest/client.ts +155 -0
  729. package/skills/wix-headless-templates/shared/rest/config.ts +4 -0
  730. package/skills/wix-headless-templates/shared/rest/media.ts +92 -0
  731. package/skills/wix-headless-templates/shared/seed/images.mjs +183 -0
  732. package/skills/wix-headless-templates/shared/seed/read-site.mjs +97 -0
  733. package/skills/wix-headless-templates/shared/seed/site-context.mjs +70 -0
  734. package/skills/wix-headless-templates/shared/seed/site.mjs +48 -0
  735. package/skills/wix-headless-templates/shared/seed/wix-cli.mjs +44 -0
  736. package/skills/wix-headless-templates/storefront/INSTRUCTIONS.md +685 -0
  737. package/skills/wix-headless-templates/storefront/app/components/storefront/CartButton.tsx +26 -0
  738. package/skills/wix-headless-templates/storefront/app/components/storefront/CartDrawer.tsx +239 -0
  739. package/skills/wix-headless-templates/storefront/app/components/storefront/FilterPanel.tsx +267 -0
  740. package/skills/wix-headless-templates/storefront/app/components/storefront/OptionPicker.tsx +171 -0
  741. package/skills/wix-headless-templates/storefront/app/components/storefront/QuickAdd.tsx +148 -0
  742. package/skills/wix-headless-templates/storefront/app/hooks/storefront/useCart.ts +59 -0
  743. package/skills/wix-headless-templates/storefront/app/hooks/storefront/useProductDetail.ts +42 -0
  744. package/skills/wix-headless-templates/storefront/app/hooks/storefront/useShop.ts +34 -0
  745. package/skills/wix-headless-templates/storefront/app/wix/storefront/cart-core.ts +220 -0
  746. package/skills/wix-headless-templates/storefront/app/wix/storefront/cart-store.ts +134 -0
  747. package/skills/wix-headless-templates/storefront/app/wix/storefront/cart.ts +187 -0
  748. package/skills/wix-headless-templates/storefront/app/wix/storefront/catalog-core.ts +698 -0
  749. package/skills/wix-headless-templates/storefront/app/wix/storefront/catalog.ts +260 -0
  750. package/skills/wix-headless-templates/storefront/app/wix/storefront/product-detail-store.ts +280 -0
  751. package/skills/wix-headless-templates/storefront/app/wix/storefront/shop-store.ts +341 -0
  752. package/skills/wix-headless-templates/storefront/app/wix/storefront/types.ts +305 -0
  753. package/skills/wix-headless-templates/storefront/app-astro/layouts/SiteLayout.astro +65 -0
  754. package/skills/wix-headless-templates/storefront/project/README.md +15 -0
  755. package/skills/wix-headless-templates/storefront/project/astro.config.mjs +22 -0
  756. package/skills/wix-headless-templates/storefront/project/package-lock.json +10786 -0
  757. package/skills/wix-headless-templates/storefront/project/package.json +41 -0
  758. package/skills/wix-headless-templates/storefront/project/public/favicon.svg +9 -0
  759. package/skills/wix-headless-templates/storefront/project/src/assets/astro.svg +1 -0
  760. package/skills/wix-headless-templates/storefront/project/src/assets/background.svg +1 -0
  761. package/skills/wix-headless-templates/storefront/project/src/assets/wix.svg +18 -0
  762. package/skills/wix-headless-templates/storefront/project/src/components/Hero.astro +77 -0
  763. package/skills/wix-headless-templates/storefront/project/src/components/Welcome.astro +95 -0
  764. package/skills/wix-headless-templates/storefront/project/src/components/storefront/CartButton.tsx +26 -0
  765. package/skills/wix-headless-templates/storefront/project/src/components/storefront/CartDrawer.tsx +239 -0
  766. package/skills/wix-headless-templates/storefront/project/src/components/storefront/FilterPanel.tsx +267 -0
  767. package/skills/wix-headless-templates/storefront/project/src/components/storefront/OptionPicker.tsx +171 -0
  768. package/skills/wix-headless-templates/storefront/project/src/components/storefront/QuickAdd.tsx +148 -0
  769. package/skills/wix-headless-templates/storefront/project/src/hooks/storefront/useCart.ts +59 -0
  770. package/skills/wix-headless-templates/storefront/project/src/hooks/storefront/useProductDetail.ts +42 -0
  771. package/skills/wix-headless-templates/storefront/project/src/hooks/storefront/useShop.ts +34 -0
  772. package/skills/wix-headless-templates/storefront/project/src/layouts/Layout.astro +22 -0
  773. package/skills/wix-headless-templates/storefront/project/src/layouts/SiteLayout.astro +65 -0
  774. package/skills/wix-headless-templates/storefront/project/src/pages/index.astro +8 -0
  775. package/skills/wix-headless-templates/storefront/project/src/styles/global.css +57 -0
  776. package/skills/wix-headless-templates/storefront/project/src/wix/config.ts +16 -0
  777. package/skills/wix-headless-templates/storefront/project/src/wix/media.ts +106 -0
  778. package/skills/wix-headless-templates/storefront/project/src/wix/money.ts +24 -0
  779. package/skills/wix-headless-templates/storefront/project/src/wix/sdk.ts +89 -0
  780. package/skills/wix-headless-templates/storefront/project/src/wix/storefront/cart-core.ts +220 -0
  781. package/skills/wix-headless-templates/storefront/project/src/wix/storefront/cart-store.ts +134 -0
  782. package/skills/wix-headless-templates/storefront/project/src/wix/storefront/cart.ts +187 -0
  783. package/skills/wix-headless-templates/storefront/project/src/wix/storefront/catalog-core.ts +698 -0
  784. package/skills/wix-headless-templates/storefront/project/src/wix/storefront/catalog.ts +260 -0
  785. package/skills/wix-headless-templates/storefront/project/src/wix/storefront/product-detail-store.ts +280 -0
  786. package/skills/wix-headless-templates/storefront/project/src/wix/storefront/shop-store.ts +341 -0
  787. package/skills/wix-headless-templates/storefront/project/src/wix/storefront/types.ts +305 -0
  788. package/skills/wix-headless-templates/storefront/project/tsconfig.json +5 -0
  789. package/skills/wix-headless-templates/storefront/rest/cart.ts +183 -0
  790. package/skills/wix-headless-templates/storefront/rest/catalog.ts +267 -0
  791. package/skills/wix-headless-templates/storefront/seed/SEED.md +169 -0
  792. package/skills/wix-headless-templates/storefront/seed/read-site.mjs +38 -0
  793. package/skills/wix-headless-templates/storefront/seed/seed-store.mjs +839 -0
  794. package/skills/wix-manage/SKILL.md +11 -7
  795. package/skills/wix-manage/references/bookings/end-to-end-booking-flow.md +1 -1
  796. package/skills/wix-manage/references/custom-apps/use-app-skills-and-app-tools.md +206 -0
  797. package/skills/wix-manage/references/site-properties/change-payment-currency-site-properties.md +17 -24
  798. package/skills/wix-manage/references/sites/create-headless-site.md +2 -0
  799. package/skills/wix-manage/references/sites/upload-static-site.md +262 -171
  800. package/skills/wix-manage/references/stores/update-product-with-options.md +1 -1
  801. package/skills/wix-headless/entry/bootstrap.mjs +0 -156
  802. package/skills/wix-headless/entry/skill.md +0 -78
  803. package/skills/wix-headless-kit/cold-start/bootstrap.mjs +0 -156
  804. package/skills/wix-headless-kit/cold-start/cold-start.md +0 -111
  805. package/skills/wix-manage/references/bookings/booking-system-integration-gaps.md +0 -423
@@ -0,0 +1,225 @@
1
+ # Forms — seed contract
2
+
3
+ `seed-forms.mjs` takes a plain-data plan and creates the site's forms. You write labels and
4
+ kinds; the seed derives everything the API demands — per-field UUIDs, the two-level options
5
+ nesting, the validation block that must exist even when empty, the choice enum that has to
6
+ agree with the component's options, the per-component prefill key, the immutable `target`, a
7
+ layout referencing every field, and rules keyed by field id. Those are the rules a hand-built
8
+ payload gets wrong while still returning `200`.
9
+
10
+ **Seed BEFORE building the form UI.** This is the one vertical that does not run in parallel
11
+ with the client: the page renders the fields this creates, and imports the id it returns.
12
+
13
+ **Additive only** — an existing form with the same name is left exactly as it is and reported
14
+ with `created: false`. Re-running never makes a second copy and never edits one.
15
+
16
+ ## Run
17
+
18
+ ```bash
19
+ node <SKILL_ROOT>/templates/forms/seed/seed-forms.mjs plan.json # from the project root
20
+ ```
21
+
22
+ ## Plan
23
+
24
+ ```json
25
+ {
26
+ "forms": [
27
+ {
28
+ "name": "Contact",
29
+ "submitText": "Send enquiry",
30
+ "thankYou": "Thanks, we will reply within two working days.",
31
+ "fields": [
32
+ { "label": "Your name", "kind": "text", "required": true },
33
+ { "label": "Email", "kind": "email", "required": true },
34
+ { "label": "Phone", "kind": "phone", "country": "GB" },
35
+ { "label": "Project type", "kind": "select", "choices": ["Brand identity", "Website redesign"], "other": true },
36
+ { "label": "Tell us more", "kind": "textarea", "hidden": true },
37
+ { "label": "Services", "kind": "multi", "choices": ["SEO", "Copywriting"] },
38
+ { "label": "Budget", "kind": "number", "min": 500, "max": 50000, "step": 100 },
39
+ { "label": "Start date", "kind": "date", "min": "$now" },
40
+ { "label": "I accept the terms", "kind": "checkbox", "required": true }
41
+ ],
42
+ "rules": [
43
+ { "when": { "field": "Project type", "isNot": "Brand identity" }, "show": ["Tell us more"] }
44
+ ]
45
+ },
46
+ {
47
+ "name": "Application",
48
+ "submitText": "Apply",
49
+ "nextText": "Continue",
50
+ "previousText": "Back",
51
+ "steps": [
52
+ { "name": "About you", "fields": ["First name", "Last name", "Email"] },
53
+ { "name": "Your work", "fields": ["Portfolio", "CV"] }
54
+ ],
55
+ "deadline": "2026-12-31T23:59:59Z",
56
+ "redirect": "https://example.com/thanks",
57
+ "fields": [
58
+ { "label": "First name", "kind": "firstName", "required": true },
59
+ { "label": "Last name", "kind": "lastName", "required": true },
60
+ { "label": "Email", "kind": "email", "required": true },
61
+ { "label": "Portfolio", "kind": "url" },
62
+ { "label": "CV", "kind": "file", "required": true, "formats": ["DOCUMENT"], "fileLimit": 2 }
63
+ ]
64
+ }
65
+ ]
66
+ }
67
+ ```
68
+
69
+ ### Form keys
70
+
71
+ | key | meaning |
72
+ |---|---|
73
+ | `name` | the form's name in the owner's dashboard, and the idempotency key |
74
+ | `submitText` | the submit button's wording (default `"Submit"`) |
75
+ | `nextText` · `previousText` | multi-step: the next / back button wording |
76
+ | `steps` | `[{ name, fields: [labels] }]` — one page per entry, in order; a field named on no step lands on the last page. Omit for a single page |
77
+ | `rules` | `[{ when, show?, hide?, require? }]` — see Rules |
78
+ | `thankYou` · `thankYouSeconds` | the owner's thank-you text shown after a submit; optional auto-hide seconds |
79
+ | `redirect` | send the visitor to this URL after a submit instead (same tab) |
80
+ | `deadline` | ISO date-time after which the form stops accepting submissions |
81
+ | `maxSubmissions` · `perVisitor` | close the form after this many submissions in total / per visitor |
82
+ | `requiredIndicator` | how required fields are marked: `ASTERISK` (default) · `TEXT` · `NONE` |
83
+
84
+ ### Field keys
85
+
86
+ | key | meaning |
87
+ |---|---|
88
+ | `label` | what the visitor reads — also the basis of the storage key |
89
+ | `kind` | one of the kinds below |
90
+ | `required` | default `false`; on a `checkbox` it means "must be ticked" |
91
+ | `placeholder` · `description` | optional; passed to the control (description renders as help text). A placeholder is at most 100 characters |
92
+ | `default` | the prefill: text, a number, `true` for a checkbox, a choice value (or an array of them for `multi` / `tags`), a date (`"2026-01-31"` or `"$now+2d"`) |
93
+ | `hidden` | start hidden — for a field a rule shows |
94
+ | `choices` | `select` · `radio` · `multi` · `tags` — strings, or `{ value, label }` |
95
+ | `other` · `otherPlaceholder` | a free-text "Other" entry on a choice field: `true` (labelled "Other") or the label |
96
+ | `min` · `max` | `number` · `rating` bounds; on `date` · `time` · `datetime` an ISO value or `$now`, `$now+2d`, `$now-1M` (units `y M d h m`) |
97
+ | `step` | `number`: the allowed increment (`0.01` for money, `1` for whole numbers) |
98
+ | `minLength` · `maxLength` | text length bounds |
99
+ | `pattern` · `patternMessage` | a regex the text must match, and the owner's wording when it does not |
100
+ | `minItems` · `maxItems` | `multi` · `tags` bounds |
101
+ | `fileLimit` · `formats` | `file` — how many files (default 1, max 30); allowed families out of `IMAGE` `DOCUMENT` `VIDEO` `AUDIO` `ARCHIVE` |
102
+ | `buttonText` | `file` — the upload button's wording |
103
+ | `country` · `countries` | `phone`: default country (ISO-2) and the allowed countries; `address`: `countries` restricts the country list |
104
+ | `parts` | `address`: per-subfield required flags, e.g. `{ "postalCode": false, "addressLine2": false }` (`addressLine2: false` also hides it) |
105
+
106
+ ### Kinds
107
+
108
+ `text` · `textarea` · `email` · `phone` · `url` · `firstName` · `lastName` · `company` ·
109
+ `date` · `time` · `datetime` · `number` · `rating` · `select` · `radio` · `multi` · `tags` ·
110
+ `checkbox` · `file` · `address`
111
+
112
+ `email`, `phone`, `firstName`, `lastName`, `company` are the CONTACTS kinds — Wix maps them
113
+ onto the owner's CRM contact, so prefer them over a plain `text` field for those.
114
+
115
+ A required `address` requires country, address line, city and postal code; `parts` overrides
116
+ that per subfield.
117
+
118
+ ### Limits
119
+
120
+ **The site's plan caps the forms.** A free site allows 4 forms, 10 fields per form, 3 steps and 3
121
+ rules; a paid plan lifts them. The seed reads the live limits (Get Restrictions) and checks the
122
+ whole plan against them before creating anything, naming each form and the cap it breaks; nothing
123
+ is created. Trim the form, or the owner upgrades the plan
124
+ (`https://www.wix.com/upgrade/website?metaSiteId=<siteId>`) and the same plan runs unchanged. Do
125
+ not split one form in two to fit: it spends a form slot and splits a visitor's answers across two
126
+ records. The example above sits at nine fields on purpose.
127
+
128
+ **`file` needs a paid site plan.** Verified live: on a free site the create fails as a whole with
129
+ `FILE_UPLOAD_RESTRICTIONS_ERROR` (the seed reports it by field label; nothing is created). No API
130
+ call lifts it — the owner upgrades the site in the dashboard, then the same plan runs unchanged.
131
+ When the brief needs the upload now and the site is free, use a `url` kind for that field and add a
132
+ `capabilities.mediaUpload` policy to the plan with `"audience": "visitors"` (Astro stack only; a
133
+ policy admits logged-in members only unless it says so): the site uploads the file itself
134
+ through the shared endpoint and submits the uploaded file's URL as the field's value. Say which way
135
+ you went in the closing message; a "link to your CV" text field is not a substitute for an upload.
136
+
137
+ ### Rules
138
+
139
+ A rule shows, hides or requires fields while a condition on another field holds — the
140
+ dashboard's Rules tab, written as data. `when` names the deciding field by label and ONE test:
141
+
142
+ | test | holds when |
143
+ |---|---|
144
+ | `"is": value` · `"isNot": value` | the field equals / does not equal the value (a choice value, text, a number) |
145
+ | `"in": [values]` | the field's value is one of the list |
146
+ | `"includes": value` | a `multi` / `tags` selection contains the value (or text contains it) |
147
+ | `"checked": true` | a `checkbox` is ticked |
148
+ | `"isEmpty": true` · `"isNotEmpty": true` | the field is empty / filled |
149
+
150
+ Effects: `show: [labels]` (those fields are created hidden and appear while the condition
151
+ holds), `hide: [labels]`, `require: [labels]`. A field a rule hides is cleared and not submitted.
152
+
153
+ ## Result
154
+
155
+ ```json
156
+ { "forms": [ { "name": "Contact",
157
+ "formId": "0e0…",
158
+ "created": true,
159
+ "fields": [ { "target": "your_name_k3f9x2", "label": "Your name" }, … ],
160
+ "fieldsLive": 9,
161
+ "steps": 1,
162
+ "rules": 1,
163
+ "degraded": [] } ] }
164
+ ```
165
+
166
+ **`formId` is what the page imports.** `fields[].target` is each input's `name` — the page
167
+ does not need them (it renders `form.fields` from the live schema), but they are the keys the
168
+ owner's submissions are stored under.
169
+
170
+ **`degraded` must be empty.** It is the read-back check: the seed re-reads the created form and
171
+ compares each field's `componentType` against what it sent, and the step and rule counts. A
172
+ non-empty list means something was accepted and then stored as something else — almost always a
173
+ choice field that lost its options and became a plain text box. Fix the plan, delete nothing, and
174
+ create the form again under a new name; a `200` on create does not mean the field survived.
175
+
176
+ ## What the seed does
177
+
178
+ 1. Installs the Wix Forms app (idempotent).
179
+ 2. Lists existing forms in the `wix.form_app.form` namespace — a name match is skipped.
180
+ 3. Expands each field, builds the steps and rules, creates the form, reads it back and checks
181
+ every `componentType`, the step count and the rule count.
182
+
183
+ ## Traps this seed already handles
184
+
185
+ Listed because a hand-rolled payload hits all of them, and each returns `200` first:
186
+
187
+ - **A choice field declares its options twice** — the component's `options[]` and the
188
+ validation `enum` (or `items: { itemType, stringOptions.enum }` for a multi). Disagree and the
189
+ field is created as a plain text box. With an `other` entry no enum is written: the free text
190
+ is by definition outside the list. For a multi, `itemType` sits inside `items` beside the
191
+ options block; one level up the create is a `400` whose message blames the options block.
192
+ - **A rule's expression root is an `and` / `or` group**, even for one condition. A bare
193
+ condition at the root is a `400` (`UNGROUPED_RULE_EXPRESSION_ROOT`). Every condition carries a
194
+ `value`, `isEmpty` / `isNotEmpty` / `checked` included (`RULE_CONDITION_VALUE_MISSING` without).
195
+ - **`validation` must be present even when empty**, nested under the *input-type* block, not
196
+ the component one. Absent, the target is not registered as an accepted value and every
197
+ submission is rejected with `UNKNOWN_VALUE_ERROR` on a key that IS in the schema.
198
+ - **`required` lives at `inputOptions.required`**, never inside a validation block. A checkbox
199
+ that must be ticked additionally needs `validation.enum: [true]` — `required` alone only checks
200
+ that a value is present, and `false` is a value.
201
+ - **The prefill key differs per component**: `options[].default` on a choice, `checked` on a
202
+ checkbox, `defaultValue` on a rating, `default` elsewhere. The wrong key is silently ignored.
203
+ - **Date bounds live under the format's own block** (`dateOptions` / `timeOptions` /
204
+ `dateTimeOptions`), as strings, and accept `$now±N`.
205
+ - **`steps` must reference every field, the submit button included.** A field missing from the
206
+ layout never appears in the owner's dashboard — they cannot edit what the site renders.
207
+ - **Rules reference fields by id** (`fieldOptions.fieldId`, condition `target`), so a rule
208
+ written by hand against labels never fires.
209
+ - **`target` is immutable** and must be unique within the form: letters, digits and single
210
+ underscores, starting with a letter.
211
+ - **A checkbox label is rich content** (Ricos), not a string — the owner may put a link to the
212
+ terms in it. The app flattens it to text.
213
+ - **Use `formFields`, never `fields`** — the latter is the legacy API.
214
+ - **A `file` field fails the whole create on a free site** (`FILE_UPLOAD_RESTRICTIONS_ERROR`, a
215
+ plan restriction, not a payload bug); the seed names the field and the two ways out.
216
+
217
+ ## Supplied content
218
+
219
+ The general rules are in `templates/shared/SUPPLIED-CONTENT.md`. For forms the user usually hands
220
+ over the form itself: a list of questions, or a PDF or screenshot of the form they use today. Each
221
+ question becomes a field, with the `kind` its answer implies (an email address → `email`, a fixed set
222
+ of answers → `select`, `radio` or `multi`, a long answer → `textarea`, an attachment → `file`); a
223
+ required mark becomes `required`; "if yes, …" becomes a rule; page breaks become `steps`; the
224
+ button label becomes `submitText`; the confirmation wording becomes `thankYou`. Question wording
225
+ verbatim.
@@ -0,0 +1,53 @@
1
+ // What forms the site has, with their fields — read from the v4 schema (`formFields` +
2
+ // `inputOptions`, the same keys the app's forms-core.ts flattens), so this reports the fields
3
+ // the page will render.
4
+ // node <SKILL_ROOT>/templates/forms/seed/read-site.mjs [--site <siteId>] [--limit <n>]
5
+ import { runReader } from "../../shared/seed/read-site.mjs";
6
+
7
+ const FORMS_APP_ID = "225dd912-7dea-4738-8688-4b8c6955ffc2";
8
+ const NAMESPACE = "wix.form_app.form";
9
+ const D = "https://dev.wix.com/docs/api-reference/crm/forms/form-schemas";
10
+
11
+ // inputType → its options block; the component block is `<componentType in camelCase>Options`.
12
+ const INPUT_BLOCK = {
13
+ STRING: "stringOptions", NUMBER: "numberOptions", BOOLEAN: "booleanOptions", ARRAY: "arrayOptions",
14
+ ADDRESS: "addressOptions", WIX_FILE: "wixFileOptions", PAYMENT: "paymentOptions", SCHEDULING: "schedulingOptions",
15
+ };
16
+ const componentBlock = (componentType) =>
17
+ `${String(componentType ?? "").toLowerCase().replace(/_([a-z])/g, (_, c) => c.toUpperCase())}Options`;
18
+
19
+ /** A label is a string or Ricos rich content; take its text. */
20
+ function plainText(label) {
21
+ if (typeof label === "string") return label;
22
+ const walk = (nodes) => (nodes ?? []).map((n) => (n?.textData?.text ?? "") + walk(n?.nodes)).join("");
23
+ return walk(label?.nodes).trim();
24
+ }
25
+
26
+ function describeField(f) {
27
+ const input = f.inputOptions ?? {};
28
+ const block = input[INPUT_BLOCK[input.inputType]] ?? {};
29
+ const component = block[componentBlock(block.componentType)] ?? {};
30
+ const label = plainText(component.label) || input.target || f.id;
31
+ return `${label} (${f.identifier ?? block.componentType ?? "?"})${input.required ? "*" : ""}${f.hidden ? " [hidden]" : ""}`;
32
+ }
33
+
34
+ await runReader({
35
+ vertical: "forms",
36
+ appId: FORMS_APP_ID,
37
+ async read(api, { limit }) {
38
+ const r = await api.call({ method: "GET", path: `/form-schema-service/v4/forms?namespace=${encodeURIComponent(NAMESPACE)}`, docs: `${D}/list-forms` });
39
+ const forms = (r.forms ?? []).slice(0, limit);
40
+ return {
41
+ formCount: (r.forms ?? []).length,
42
+ forms: forms.map((f) => ({
43
+ id: f.id,
44
+ name: f.name,
45
+ enabled: f.enabled !== false,
46
+ fields: (f.formFields ?? []).filter((x) => x.fieldType === "INPUT").map(describeField),
47
+ steps: (f.steps ?? []).length,
48
+ rules: (f.formRules ?? []).length + (f.rules ?? []).length,
49
+ submitAction: f.submitSettings?.submitSuccessAction ?? "NO_ACTION",
50
+ })),
51
+ };
52
+ },
53
+ });