@wix/agent-skills 1.6.0 → 1.8.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 (195) hide show
  1. package/README.md +5 -9
  2. package/package.json +1 -1
  3. package/skills/wix-app/SKILL.md +51 -42
  4. package/skills/wix-app/references/BACKEND_EVENT.md +10 -65
  5. package/skills/wix-app/references/CUSTOM_ELEMENT_WIDGET.md +101 -406
  6. package/skills/wix-app/references/DASHBOARD_MENU_PLUGIN.md +14 -111
  7. package/skills/wix-app/references/DASHBOARD_MODAL.md +56 -205
  8. package/skills/wix-app/references/DASHBOARD_PAGE.md +19 -98
  9. package/skills/wix-app/references/DASHBOARD_PLUGIN.md +6 -108
  10. package/skills/wix-app/references/DATA_COLLECTION.md +113 -198
  11. package/skills/wix-app/references/EMBEDDED_SCRIPT.md +41 -268
  12. package/skills/wix-app/references/EXTENSION_REGISTRATION.md +27 -76
  13. package/skills/wix-app/references/SERVICE_PLUGIN.md +35 -188
  14. package/skills/wix-app/references/SITE_PLUGIN.md +8 -92
  15. package/skills/wix-app/references/STORES_VERSIONING.md +1 -0
  16. package/skills/wix-app/references/backend-event/COMMON-EVENTS.md +0 -44
  17. package/skills/wix-app/references/custom-element-widget/SETTINGS_PANEL.md +19 -330
  18. package/skills/wix-app/references/dashboard-menu-plugin/bookings-slots.md +0 -12
  19. package/skills/wix-app/references/dashboard-menu-plugin/ecommerce-slots.md +7 -0
  20. package/skills/wix-app/references/dashboard-menu-plugin/restaurants-slots.md +0 -12
  21. package/skills/wix-app/references/dashboard-plugin/SLOTS.md +3 -15
  22. package/skills/wix-app/references/service-plugin/ADDITIONAL-FEES.md +2 -18
  23. package/skills/wix-app/references/service-plugin/BOOKINGS-STAFF-SORTING.md +2 -42
  24. package/skills/wix-app/references/service-plugin/DISCOUNT-TRIGGERS.md +1 -11
  25. package/skills/wix-app/references/service-plugin/GIFT-CARDS.md +1 -11
  26. package/skills/wix-app/references/service-plugin/PAYMENT-SETTINGS.md +2 -40
  27. package/skills/wix-app/references/service-plugin/SHIPPING-RATES.md +2 -19
  28. package/skills/wix-app/references/service-plugin/VALIDATIONS.md +2 -18
  29. package/skills/wix-app/references/site-plugin/SLOTS.md +17 -68
  30. package/skills/wix-design-system/SKILL.md +4 -0
  31. package/skills/wix-headless/SKILL.md +131 -386
  32. package/skills/wix-headless/references/BUILD-astro.md +246 -0
  33. package/skills/wix-headless/references/BUILD-own-build.md +167 -0
  34. package/skills/wix-headless/references/BUILD.md +105 -0
  35. package/skills/wix-headless/references/DESIGN_SYSTEM.md +175 -0
  36. package/skills/wix-headless/references/DISCOVERY-connect.md +55 -0
  37. package/skills/wix-headless/references/DISCOVERY-create.md +238 -0
  38. package/skills/wix-headless/references/DISCOVERY.md +50 -306
  39. package/skills/wix-headless/references/PLAN-connect.md +19 -0
  40. package/skills/wix-headless/references/PLAN-create.md +17 -0
  41. package/skills/wix-headless/references/PLAN.md +92 -0
  42. package/skills/wix-headless/references/SEED.md +214 -0
  43. package/skills/wix-headless/references/SETUP.md +73 -248
  44. package/skills/wix-headless/references/{blog → astro/blog}/BLOG_PAGES.md +6 -5
  45. package/skills/wix-headless/references/{blog → astro/blog}/BLOG_SETUP.md +2 -2
  46. package/skills/wix-headless/references/astro/bookings/COMPONENTS.md +337 -0
  47. package/skills/wix-headless/references/astro/bookings/SERVICES_PAGES.md +428 -0
  48. package/skills/wix-headless/references/astro/cms/CMS_FOUNDATIONS.md +214 -0
  49. package/skills/wix-headless/references/{cms → astro/cms}/FAQ_KNOWLEDGE_BASE.md +14 -12
  50. package/skills/wix-headless/references/{cms → astro/cms}/PORTFOLIO.md +15 -16
  51. package/skills/wix-headless/references/{cms → astro/cms}/RESOURCE_LIBRARY.md +13 -15
  52. package/skills/wix-headless/references/{cms → astro/cms}/TEAM_DIRECTORY.md +11 -11
  53. package/skills/wix-headless/references/astro/designer/INSTRUCTIONS.md +354 -0
  54. package/skills/wix-headless/references/{ecom → astro/ecom}/CART_PAGES.md +8 -9
  55. package/skills/wix-headless/references/{ecom → astro/ecom}/CART_WIRING.md +6 -6
  56. package/skills/wix-headless/references/{ecom → astro/ecom}/COMPONENTS_CSS.md +6 -6
  57. package/skills/wix-headless/references/{forms → astro/forms}/CONTACT_FORM.md +18 -32
  58. package/skills/wix-headless/references/{gift-cards → astro/gift-cards}/COMPONENTS.md +3 -3
  59. package/skills/wix-headless/references/{gift-cards → astro/gift-cards}/PAGES.md +2 -2
  60. package/skills/wix-headless/references/{stores → astro/stores}/BACK_IN_STOCK.md +7 -7
  61. package/skills/wix-headless/references/{stores → astro/stores}/CATEGORY_PAGES.md +12 -13
  62. package/skills/wix-headless/references/{stores → astro/stores}/COMPONENTS_CSS.md +7 -7
  63. package/skills/wix-headless/references/{stores → astro/stores}/HOME_AND_NAV.md +11 -9
  64. package/skills/wix-headless/references/{stores → astro/stores}/PRODUCT_PAGES.md +11 -9
  65. package/skills/wix-headless/references/{stores → astro/stores}/SHARED_WIRING.md +8 -7
  66. package/skills/wix-headless/references/astro/templates/Footer.astro +27 -0
  67. package/skills/wix-headless/references/astro/templates/Layout.astro +132 -0
  68. package/skills/wix-headless/references/astro/templates/Navigation.astro +38 -0
  69. package/skills/wix-headless/references/astro/templates/astro.config.mjs +41 -0
  70. package/skills/wix-headless/references/astro/templates/bookings/AvailabilityCalendar.tsx +218 -0
  71. package/skills/wix-headless/references/astro/templates/bookings/BookingForm.tsx +194 -0
  72. package/skills/wix-headless/references/astro/templates/bookings/ManageBooking.tsx +84 -0
  73. package/skills/wix-headless/references/astro/templates/bookings/SeoTags.astro +25 -0
  74. package/skills/wix-headless/references/astro/templates/bookings/ServiceBookingFlow.tsx +50 -0
  75. package/skills/wix-headless/references/astro/templates/bookings/ServiceCard.astro +45 -0
  76. package/skills/wix-headless/references/astro/templates/bookings/api/confirm-booking.ts +34 -0
  77. package/skills/wix-headless/references/astro/templates/bookings/api/waitlist.ts +74 -0
  78. package/skills/wix-headless/references/astro/templates/bookings/booking-confirmation.astro +111 -0
  79. package/skills/wix-headless/references/astro/templates/bookings/components-bookings.css +413 -0
  80. package/skills/wix-headless/references/astro/templates/bookings/manage-booking.astro +76 -0
  81. package/skills/wix-headless/references/astro/templates/bookings/services/[slug].astro +81 -0
  82. package/skills/wix-headless/references/astro/templates/bookings/services/index.astro +65 -0
  83. package/skills/wix-headless/references/astro/templates/ecom/components-ecom.css +302 -0
  84. package/skills/wix-headless/references/astro/templates/global.css +286 -0
  85. package/skills/wix-headless/references/astro/templates/index.astro +56 -0
  86. package/skills/wix-headless/{templates → references/astro/templates}/stores/back-in-stock.ts +1 -1
  87. package/skills/wix-headless/{templates → references/astro/templates}/stores/components-stores.css +138 -33
  88. package/skills/wix-headless/references/blog/BLOG_CONTENT.md +28 -19
  89. package/skills/wix-headless/references/blog/INSTRUCTIONS.md +6 -6
  90. package/skills/wix-headless/references/bookings/INSTRUCTIONS.md +106 -0
  91. package/skills/wix-headless/references/bookings/SERVICES_DATA.md +295 -0
  92. package/skills/wix-headless/references/cms/CMS_FOUNDATIONS.md +35 -232
  93. package/skills/wix-headless/references/cms/INSTRUCTIONS.md +39 -8
  94. package/skills/wix-headless/references/commands/known-apps.json +2 -1
  95. package/skills/wix-headless/references/custom/CONNECTION_PLAN.md +142 -0
  96. package/skills/wix-headless/references/custom/INSTRUCTIONS.md +88 -0
  97. package/skills/wix-headless/references/custom/blog/WIRING.md +52 -0
  98. package/skills/wix-headless/references/custom/bookings/WIRING.md +88 -0
  99. package/skills/wix-headless/references/custom/cms/WIRING.md +97 -0
  100. package/skills/wix-headless/references/custom/ecom/WIRING.md +67 -0
  101. package/skills/wix-headless/references/custom/forms/WIRING.md +101 -0
  102. package/skills/wix-headless/references/custom/stores/WIRING.md +80 -0
  103. package/skills/wix-headless/references/ecom/INSTRUCTIONS.md +12 -12
  104. package/skills/wix-headless/references/forms/INSTRUCTIONS.md +6 -6
  105. package/skills/wix-headless/references/gift-cards/INSTRUCTIONS.md +13 -13
  106. package/skills/wix-headless/references/images/INSTRUCTIONS.md +58 -60
  107. package/skills/wix-headless/references/seed-recipes.md +49 -0
  108. package/skills/wix-headless/references/shared/AGENTS_MD.md +47 -0
  109. package/skills/wix-headless/references/shared/AUTHENTICATION.md +108 -0
  110. package/skills/wix-headless/references/shared/BUILD_NOISE.md +2 -2
  111. package/skills/wix-headless/references/shared/DESIGN_MD.md +85 -0
  112. package/skills/wix-headless/references/shared/DOCS_SEARCH.md +41 -0
  113. package/skills/wix-headless/references/shared/IMAGE_GENERATION.md +40 -39
  114. package/skills/wix-headless/references/shared/IMPLEMENTER.md +92 -41
  115. package/skills/wix-headless/references/shared/PRODUCTION_SHARP_EDGES.md +3 -3
  116. package/skills/wix-headless/references/shared/RETURN_CONTRACT.md +32 -312
  117. package/skills/wix-headless/references/shared/STYLING.md +48 -21
  118. package/skills/wix-headless/references/stores/INSTRUCTIONS.md +59 -29
  119. package/skills/wix-headless/references/stores/PRODUCT_CATALOG_DATA.md +31 -28
  120. package/skills/wix-headless/references/verticals/_schema.json +31 -117
  121. package/skills/wix-headless/references/verticals/_schema.md +60 -150
  122. package/skills/wix-headless/references/verticals/blog.md +5 -99
  123. package/skills/wix-headless/references/verticals/bookings.md +41 -0
  124. package/skills/wix-headless/references/verticals/cms.md +9 -100
  125. package/skills/wix-headless/references/verticals/ecom.md +6 -77
  126. package/skills/wix-headless/references/verticals/forms.md +5 -85
  127. package/skills/wix-headless/references/verticals/gift-cards.md +6 -103
  128. package/skills/wix-headless/references/verticals/stores.md +10 -144
  129. package/skills/wix-headless/scripts/check-manifest.mjs +148 -11
  130. package/skills/wix-headless/scripts/compose.mjs +540 -0
  131. package/skills/wix-headless/scripts/emit-design-tokens.mjs +136 -53
  132. package/skills/wix-headless/scripts/flatten.sh +61 -0
  133. package/skills/wix-headless/scripts/generate-images.mjs +242 -0
  134. package/skills/wix-headless/scripts/patch-decorative-slots.mjs +67 -43
  135. package/skills/wix-headless/scripts/plan-entity-image-waves.mjs +3 -3
  136. package/skills/wix-headless/scripts/scaffold.sh +113 -27
  137. package/skills/wix-headless/scripts/seed-utilities.sh +50 -12
  138. package/skills/wix-headless/scripts/write-decorative-json.mjs +62 -0
  139. package/skills/wix-manage/SKILL.md +4 -8
  140. package/skills/wix-manage/references/blog/how-to-create-blog-posts.md +2 -0
  141. package/skills/wix-manage/references/cms/cms-data-items-crud.md +4 -0
  142. package/skills/wix-manage/references/cms/cms-references-and-relationships.md +2 -0
  143. package/skills/wix-manage/references/cms/cms-schema-management.md +4 -0
  144. package/skills/wix-manage/references/domains/domain-search-and-purchase.md +10 -7
  145. package/skills/wix-manage/references/ecommerce/api-shipping.md +443 -0
  146. package/skills/wix-manage/references/ecommerce/flow-add-free-shipping.md +5 -6
  147. package/skills/wix-manage/references/ecommerce/flow-fix-coverage-gaps.md +4 -5
  148. package/skills/wix-manage/references/ecommerce/flow-optimize-shipping-rates.md +4 -5
  149. package/skills/wix-manage/references/ecommerce/goal-increase-aov.md +1 -1
  150. package/skills/wix-manage/references/ecommerce/goal-reduce-cart-abandonment.md +1 -2
  151. package/skills/wix-manage/references/ecommerce/guardrail-shipping-health.md +2 -2
  152. package/skills/wix-manage/references/ecommerce/recipe-apply-shipping-recommendations.md +4 -5
  153. package/skills/wix-manage/references/ecommerce/recommend-ecommerce-strategy.md +7 -7
  154. package/skills/wix-manage/references/ecommerce/setup-discount-rules.md +209 -72
  155. package/skills/wix-manage/references/ecommerce/setup-store-pickup-location.md +9 -10
  156. package/skills/wix-manage/references/ecommerce/skill-graph.md +4 -4
  157. package/skills/wix-manage/references/forms/create-form.md +50 -0
  158. package/skills/wix-manage/references/stores/bulk-create-products-with-options.md +2 -0
  159. package/skills/wix-manage/references/stores/create-product-from-image.md +91 -38
  160. package/skills/wix-manage/references/stores/setup-online-store-catalog-v3.md +2 -0
  161. package/skills/wix-app/references/custom-element-widget/default-thumbnail.png +0 -0
  162. package/skills/wix-app/references/data-collection/extension-template.ts +0 -107
  163. package/skills/wix-headless/references/ORCHESTRATION.md +0 -269
  164. package/skills/wix-headless/references/commands/install-app.md +0 -42
  165. package/skills/wix-headless/references/commands/mcp-bootstrap.md +0 -28
  166. package/skills/wix-headless/references/designer/INSTRUCTIONS.md +0 -828
  167. package/skills/wix-headless/references/shared/MCP_PREFIX.md +0 -105
  168. package/skills/wix-headless/scripts/copy-utility-templates.mjs +0 -153
  169. package/skills/wix-headless/scripts/finalize-run-json.mjs +0 -141
  170. package/skills/wix-headless/scripts/init-site-json.mjs +0 -63
  171. package/skills/wix-headless/scripts/preview.sh +0 -45
  172. package/skills/wix-headless/scripts/release.sh +0 -73
  173. package/skills/wix-headless/templates/ecom/components-ecom.css +0 -215
  174. package/skills/wix-manage/references/events/list-events.md +0 -203
  175. /package/skills/wix-headless/{templates → references/astro/templates}/ecom/CartBadge.tsx +0 -0
  176. /package/skills/wix-headless/{templates → references/astro/templates}/ecom/CartView.tsx +0 -0
  177. /package/skills/wix-headless/{templates → references/astro/templates}/ecom/cart.astro +0 -0
  178. /package/skills/wix-headless/{templates → references/astro/templates}/ecom/discounts.ts +0 -0
  179. /package/skills/wix-headless/{templates → references/astro/templates}/ecom/thank-you.astro +0 -0
  180. /package/skills/wix-headless/{templates → references/astro/templates}/gift-cards/GiftCardPurchase.tsx +0 -0
  181. /package/skills/wix-headless/{templates → references/astro/templates}/gift-cards/_home-teaser-snippet.astro +0 -0
  182. /package/skills/wix-headless/{templates → references/astro/templates}/gift-cards/_nav-snippet.astro +0 -0
  183. /package/skills/wix-headless/{templates → references/astro/templates}/gift-cards/components-gift-cards.css +0 -0
  184. /package/skills/wix-headless/{templates → references/astro/templates}/gift-cards/gift-cards.astro +0 -0
  185. /package/skills/wix-headless/{templates → references/astro/templates}/gift-cards/gift-cards.ts +0 -0
  186. /package/skills/wix-headless/{templates → references/astro/templates}/stores/AddToCartButton.tsx +0 -0
  187. /package/skills/wix-headless/{templates → references/astro/templates}/stores/BackInStockForm.tsx +0 -0
  188. /package/skills/wix-headless/{templates → references/astro/templates}/stores/CategoryRail.astro +0 -0
  189. /package/skills/wix-headless/{templates → references/astro/templates}/stores/ProductCard.astro +0 -0
  190. /package/skills/wix-headless/{templates → references/astro/templates}/stores/ProductPurchase.tsx +0 -0
  191. /package/skills/wix-headless/{templates → references/astro/templates}/stores/SeoTags.astro +0 -0
  192. /package/skills/wix-headless/{templates → references/astro/templates}/stores/categories.ts +0 -0
  193. /package/skills/wix-headless/{templates → references/astro/templates}/stores/category/[slug].astro +0 -0
  194. /package/skills/wix-headless/{templates → references/astro/templates}/stores/products/[slug].astro +0 -0
  195. /package/skills/wix-headless/{templates → references/astro/templates}/stores/products/index.astro +0 -0
@@ -1,215 +0,0 @@
1
- /* src/styles/components-ecom.css
2
- *
3
- * Ecom-pack component CSS. Owned by the ecom Phase 3 components agent.
4
- *
5
- * This file is the SINGLE source of truth for ecom-component classes.
6
- * The designer's global.css does NOT publish .cart-summary, .cart-total,
7
- * .cart-empty, or .checkout-btn — those all live here. See
8
- * references/shared/STYLING.md § "Component-specific CSS is owned by the
9
- * component, not the designer".
10
- *
11
- * Class groups in this file:
12
- * - .cart-summary / .cart-total / .cart-empty / .checkout-btn → /cart page summary panel and empty state
13
- * - .cart-item / .cart-item-* / .qty-* → CartView.tsx line items
14
- * - .cart-discount / .cart-applied-discounts → CartView.tsx discount rows
15
- * - .cart-badge / .cart-badge-* → CartBadge.tsx (mounted in Navigation)
16
- *
17
- * Tailwind v4 requires @reference in non-entrypoint CSS files that use @apply
18
- * — without these, utilities like `size-6` fail at build with "Cannot apply
19
- * unknown utility class". Do not remove.
20
- */
21
- @reference "tailwindcss";
22
- @reference "./global.css";
23
-
24
- /* =========================================================================
25
- Cart summary panel + total + checkout button + empty state.
26
- Owned here, NOT in global.css. The .checkout-btn extends .btn-primary
27
- (which IS designer-owned) and adds full-width + :disabled treatment.
28
- ========================================================================= */
29
- .cart-summary {
30
- background: var(--color-paper-warm, var(--color-cream));
31
- border: 1px solid var(--color-rule);
32
- padding: var(--spacing-xl);
33
- border-radius: var(--radius-md);
34
- display: flex;
35
- flex-direction: column;
36
- gap: var(--spacing-sm);
37
- }
38
- @media (min-width: 768px) {
39
- .cart-summary {
40
- position: sticky;
41
- top: var(--spacing-xl);
42
- }
43
- }
44
-
45
- .cart-empty {
46
- text-align: center;
47
- padding-block: var(--spacing-3xl);
48
- color: var(--color-mute);
49
- }
50
- .cart-empty .checkout-btn {
51
- display: inline-flex;
52
- width: auto;
53
- max-width: 18rem;
54
- }
55
-
56
- /* .checkout-btn composes the designer's `btn` @utility primitive plus the brand's
57
- primary fill. Do NOT use `@apply btn-primary` here — Tailwind v4 only @applies
58
- utilities declared with `@utility` (which `btn` is in global.css), not plain
59
- custom classes like `.btn-primary` (which is just a regular CSS rule). The build
60
- fails with "Cannot apply unknown utility class `btn-primary`" if you try.
61
- The Phase 3 agent's brand-token swap (bark → navy/charcoal/coral/etc.) adapts
62
- the var names without changing the composition shape. an earlier run on 2026-04-30 hit
63
- this; the recovery cost ~1 min and a rebuild. */
64
- .checkout-btn {
65
- @apply btn;
66
- background: var(--color-bark);
67
- color: var(--color-cream);
68
- box-shadow: var(--shadow-sm);
69
- width: 100%;
70
- margin-top: var(--spacing-md);
71
- }
72
- .checkout-btn:hover:not(:disabled) {
73
- background: var(--color-tobacco);
74
- box-shadow: var(--shadow-md);
75
- }
76
- .checkout-btn:disabled {
77
- opacity: 0.5;
78
- cursor: not-allowed;
79
- }
80
-
81
- /* --- Cart badge icon safety net --- */
82
- /* CartBadge.tsx renders an inline SVG bag icon + optional count span. The designer
83
- owns .cart-badge in global.css; these rules guarantee an icon-button layout
84
- (relative positioning anchor, centered icon, count pill overlap) even if the
85
- designer's rule is purely aesthetic. */
86
- .cart-badge {
87
- @apply relative inline-flex items-center justify-center;
88
- }
89
- .cart-badge-icon {
90
- @apply size-6 shrink-0;
91
- }
92
- .cart-badge-count {
93
- @apply absolute -top-1 -right-2 min-w-5 h-5 px-1 inline-flex items-center justify-center rounded-full bg-bark text-cream text-xs font-body tabular-nums leading-none;
94
- }
95
-
96
- /* --- Cart layout safety net --- */
97
- /* .cart-item is a global contract class styled by the designer in global.css.
98
- These rules ensure the row layout works even if the designer omits flex. */
99
- .cart-item {
100
- @apply flex flex-row gap-md;
101
- }
102
- .cart-item-image {
103
- @apply shrink-0;
104
- }
105
- /* Clickable image + name link back to /products/<slug>.
106
- At-rest underline + pointer cursor so the link is discoverable without
107
- hovering (critical on touch). Muted rule-color underline keeps visual
108
- weight in line with the body text; hover/focus escalates to tobacco. */
109
- .cart-item-image-link {
110
- @apply block shrink-0 cursor-pointer;
111
- }
112
- .cart-item-image-link:hover .cart-item-image,
113
- .cart-item-image-link:focus-visible .cart-item-image {
114
- @apply border-ink;
115
- }
116
- .cart-item-name-link {
117
- @apply text-inherit cursor-pointer no-underline;
118
- /* border-bottom is more predictable than text-decoration-line for inline
119
- <a> inside <h3> (no text-decoration inheritance quirks). Muted ink at
120
- rest, tobacco on hover. */
121
- border-bottom: 1px solid var(--color-muted);
122
- padding-bottom: 1px;
123
- transition: color 150ms ease, border-color 150ms ease;
124
- }
125
- .cart-item-name-link:hover,
126
- .cart-item-name-link:focus-visible {
127
- @apply text-tobacco outline-none;
128
- border-bottom-color: var(--color-tobacco);
129
- }
130
- .cart-item-info {
131
- @apply flex-1 min-w-0;
132
- }
133
-
134
- /* --- Description lines & modifiers --- */
135
- .cart-item-option {
136
- @apply text-sm text-bark/70 font-body my-0.5;
137
- }
138
- .cart-item-modifiers {
139
- @apply mt-1;
140
- }
141
-
142
- /* --- Quantity stepper --- */
143
- .cart-item-qty {
144
- @apply inline-flex items-center gap-sm mt-sm w-fit;
145
- }
146
- .qty-btn {
147
- @apply size-7 inline-flex items-center justify-center border border-bark rounded bg-transparent text-bark cursor-pointer font-body text-base leading-none;
148
- }
149
- .qty-btn:disabled {
150
- @apply opacity-30 cursor-not-allowed;
151
- }
152
- .qty-value {
153
- @apply font-body text-sm min-w-6 text-center tabular-nums;
154
- }
155
-
156
- /* --- Unavailable state --- */
157
- .cart-item-unavailable {
158
- @apply text-sm text-red-600 font-medium font-body;
159
- }
160
-
161
- /* --- Price + remove --- */
162
- .cart-item-actions {
163
- @apply flex flex-col items-end gap-1 shrink-0;
164
- }
165
- .cart-item-prices {
166
- @apply flex items-center gap-sm;
167
- }
168
- .cart-item-full-price {
169
- @apply text-sm text-bark/70 line-through font-body;
170
- }
171
- .cart-item-unit-price {
172
- @apply font-body font-semibold whitespace-nowrap;
173
- }
174
- .cart-item-line-total {
175
- @apply font-body text-xs text-bark/70 m-0;
176
- }
177
- .cart-item-remove {
178
- @apply text-sm bg-transparent border-none text-bark/60 font-body cursor-pointer underline;
179
- }
180
-
181
- /* --- Cart summary: discount + total rows ---
182
- Subtotal uses the designer's .cart-subtotal contract class in global.css.
183
- These rows appear only when priceSummary exposes a discount or a total
184
- that differs from subtotal (see CartView.tsx extractSummary). */
185
- .cart-discount {
186
- @apply flex items-baseline justify-between gap-sm font-body text-sm mt-sm;
187
- }
188
- .cart-discount-name {
189
- @apply text-xs text-bark/60;
190
- }
191
- .cart-discount-amount {
192
- @apply whitespace-nowrap;
193
- }
194
- .cart-total {
195
- border-top: 1px solid var(--color-rule);
196
- padding-top: var(--spacing-md);
197
- margin-top: var(--spacing-sm);
198
- font-family: var(--font-display);
199
- font-size: 1.25rem;
200
- font-weight: 500;
201
- display: flex;
202
- justify-content: space-between;
203
- align-items: baseline;
204
- }
205
-
206
- /* Applied-discounts row — name-only (no amount) for cases where the API
207
- reports a promo NAME via appliedDiscounts[].discountName but no cart-level
208
- amount in priceSummary.discount (common for line-item automatic discounts
209
- — the savings already show inline via fullPrice/price strikethrough). */
210
- .cart-applied-discounts {
211
- @apply flex items-baseline justify-between gap-sm font-body text-sm mt-sm;
212
- }
213
- .cart-applied-discounts-name {
214
- @apply text-right text-bark/80 italic;
215
- }
@@ -1,203 +0,0 @@
1
- ---
2
- name: "List Events"
3
- description: Queries events from Wix Events using Events API. Covers field sets (DETAILS, URLS, REGISTRATION), filtering by status/date, and pagination.
4
- ---
5
- # List Events with Wix Events API
6
-
7
- This recipe demonstrates how to query and list events from Wix Events using the REST API.
8
-
9
- ## Prerequisites
10
-
11
- - Wix Events app installed on the site
12
- - API access with events permissions
13
-
14
- ## Required APIs
15
-
16
- - **Events API**: [REST](https://dev.wix.com/docs/api-reference/business-solutions/events/event-management/events-v3/query-events)
17
- - **Filter and Sort Guidelines**: [Documentation](https://dev.wix.com/docs/api-reference/business-solutions/events/event-management/events-v3/filter-and-sort)
18
-
19
- ---
20
-
21
- ## Step 1: Verify Events App is Installed
22
-
23
- Before querying events, ensure Wix Events is installed on the site. If not, use the [Install Wix Apps](../app-installation/install-wix-apps.md) recipe to install it.
24
-
25
- ---
26
-
27
- ## Step 2: Query Events
28
-
29
- **Endpoint**: `POST https://www.wixapis.com/events/v3/events/query`
30
-
31
- **Request Body**:
32
- ```json
33
- {
34
- "query": {
35
- "paging": {
36
- "limit": 10
37
- }
38
- },
39
- "fields": ["DETAILS", "URLS"]
40
- }
41
- ```
42
-
43
- **Request**:
44
- ```bash
45
- curl -X POST \
46
- 'https://www.wixapis.com/events/v3/events/query' \
47
- -H 'Authorization: <AUTH>' \
48
- -H 'Content-Type: application/json' \
49
- -d '{
50
- "query": {
51
- "paging": {
52
- "limit": 10
53
- }
54
- },
55
- "fields": ["DETAILS", "URLS"]
56
- }'
57
- ```
58
-
59
- ### Available Field Sets
60
-
61
- The `fields` parameter determines which data is returned. You MUST specify at least `"DETAILS"`.
62
-
63
- | Field Set | Description |
64
- |-----------|-------------|
65
- | `DETAILS` | Core event information (required) |
66
- | `URLS` | Event page URLs |
67
- | `CATEGORIES` | Event categories |
68
- | `AGENDA` | Event schedule/agenda |
69
- | `SEO_SETTINGS` | SEO metadata |
70
- | `REGISTRATION` | Registration settings |
71
- | `TEXTS` | Custom text content |
72
- | `FORM` | Registration form configuration |
73
- | `DASHBOARD` | Dashboard settings |
74
- | `FEED` | Social feed settings |
75
- | `ONLINE_CONFERENCING_SESSION` | Virtual event settings |
76
-
77
- ### IMPORTANT NOTES:
78
- - I MUST specify at least `"DETAILS"` in the `fields` array
79
- - I MUST NEVER use `"FULL"` as a field value
80
- - If the user wants event links, I MUST include `"URLS"` in the fields
81
- - Follow the [Filter and Sort Guidelines](https://dev.wix.com/docs/api-reference/business-solutions/events/event-management/events-v3/filter-and-sort) for query filtering
82
-
83
- ---
84
-
85
- ## Step 3: Filter Events (Optional)
86
-
87
- Apply filters to narrow down results:
88
-
89
- **Filter by Status**:
90
- ```json
91
- {
92
- "query": {
93
- "filter": {
94
- "status": "UPCOMING"
95
- },
96
- "paging": {
97
- "limit": 10
98
- }
99
- },
100
- "fields": ["DETAILS"]
101
- }
102
- ```
103
-
104
- > **Note:** Valid status values are: `UPCOMING`, `STARTED`, `ENDED`, `CANCELED`, `DRAFT`.
105
-
106
- **Filter by Date Range**:
107
- ```json
108
- {
109
- "query": {
110
- "filter": {
111
- "dateAndTimeSettings.startDate": {
112
- "$gte": "2024-01-01T00:00:00Z",
113
- "$lte": "2024-12-31T23:59:59Z"
114
- }
115
- },
116
- "paging": {
117
- "limit": 10
118
- }
119
- },
120
- "fields": ["DETAILS"]
121
- }
122
- ```
123
-
124
- ---
125
-
126
- ## Response Structure
127
-
128
- ```json
129
- {
130
- "events": [
131
- {
132
- "id": "event-id-123",
133
- "title": "Event Title",
134
- "shortDescription": "Event description",
135
- "status": "UPCOMING",
136
- "dateAndTimeSettings": {
137
- "startDate": "2024-06-15T10:00:00Z",
138
- "endDate": "2024-06-15T18:00:00Z",
139
- "timeZoneId": "America/New_York",
140
- "dateAndTimeTbd": false,
141
- "recurrenceStatus": "ONE_TIME"
142
- },
143
- "location": {
144
- "type": "VENUE",
145
- "address": {}
146
- },
147
- "slug": "event-slug"
148
- }
149
- ],
150
- "pagingMetadata": {
151
- "count": 10,
152
- "hasNext": true
153
- }
154
- }
155
- ```
156
-
157
- ---
158
-
159
- ## Common Use Cases
160
-
161
- ### List Upcoming Events
162
- ```json
163
- {
164
- "query": {
165
- "filter": {
166
- "status": "UPCOMING",
167
- "dateAndTimeSettings.startDate": {
168
- "$gte": "2024-01-01T00:00:00Z"
169
- }
170
- },
171
- "sort": [
172
- {
173
- "fieldName": "dateAndTimeSettings.startDate",
174
- "order": "ASC"
175
- }
176
- ],
177
- "paging": {
178
- "limit": 20
179
- }
180
- },
181
- "fields": ["DETAILS", "URLS"]
182
- }
183
- ```
184
-
185
- ### List Events with Registration Info
186
- ```json
187
- {
188
- "query": {
189
- "paging": {
190
- "limit": 10
191
- }
192
- },
193
- "fields": ["DETAILS", "REGISTRATION", "FORM"]
194
- }
195
- ```
196
-
197
- ---
198
-
199
- ## Next Steps
200
-
201
- - Create events using the [Create Event API](https://dev.wix.com/docs/api-reference/business-solutions/events/event-management/events-v3/create-event)
202
- - Manage RSVPs and registrations
203
- - Configure event tickets and pricing