- 1e3c08c: Added fields filtering form. Unused fields can be unchecked to match Algolia limits. By default every field is selected
- ed30a81: Added "Saleor Commerce" as an author in the Manifest
### Patch Changes
- e8660e8: Implemented shared getApBaseUrl
- e8660e8: Replaced GraphQL provider with shared package
- e8660e8: Replaced AppSections implementation with the shared package
- ed30a81: Refactor: Migrated private metadata of the app (used for settings) - previously each setting was saved in a dedicated metadata key. Now entire config is kept as JSON in a single field. This is non-breaking change - app will fallback to old config if needed.
- ed30a81: Refactor: Extracted shared webhook logic, like clients creation and settings fetching to a shared function that creates entire context. Webhook handlers LoC decreased by half
- e8660e8: Implemented ThemeSynchronizer from shared package
- e8660e8: Fixed broken configuration form when legacy metadata was fetched
- 2a1385b: Added new field to products document: descriptionPlaintext. It contains the product description converted to plaintext format which can be used to full text search.
- 2a1385b: Added Algolia index configuration helper, which sets up recommended settings: distinct results based on Product ID, faceting filters and searchable attributes.
### Patch Changes
- 2a1385b: Added script responsible for webhook migration.
- a81f061: Updated Macaw to pre-127
- 2a1385b: Fixed issue with stale product variants after product deletion or channel visibility settings change.
- fcc37e7: Remove clsx package from the projects no longer using it.
- 0f84985: Refactor: Introduced tRPC and re-implemented /api/configuration endpoint to the tRPC controller.
- 69fe973: Extended search model with two new fields:
-`inStock`: returns true if stock is available. To keep this up to date, the application subscribes to `ProductVariantOutOfStock` and `ProductVariantBackInStock` events
-`media`: array of objects containing URL and type of given file (video or image)
To enable those features, open App configuration page and click on the `Update webhooks` button. To update existing data start a data import.
- 2cb7e5e: Improved attributes mapping. Now Algolia will receive better products data:
- Added `otherVariants` field which is _an array of variant id strings_. It will only contain other variants, so if the array is empty, it means the variant is the only one. It can be quickly used to count alternative variants or to reference them by ID.
- Added `variantMetadata` field. Now `metadata` contains data for product parent and `variantMetadata` for each variant.
- Improved JSON fields mapping. Now json-like fields will be sent to Algolia as structure jsons, not strings. This include: `description`, `metadata`, `variantMetadata`, `otherVariants`.
- a1f083c: Filled "about" field in App Manifest. Dashboard will display it in app details page now.
- 47102ba: Added additional ENV variables (see each app's .env.example), that can overwrite app base URL. This change allows easy apps development using Docker
- 1dead1e: Included dedicated logo and attached it to App's manifest. From Saleor 3.15 the logo will be visible in the Dashboard during and after installation.
### Patch Changes
- 860bac4: Updated @saleor/app-sdk to 0.40.1
- a1ad70e: Updated configuration and dependencies of GraphQL client - urql.
All applications use now unified config for creating the client. Also unused related packages has been removed.
- ec68ed5: Updated Sentry package and config. Set Sentry release to match package.json version. Now Sentry will use semver version instead a commit
- cb6ee29: Updated dependencies
- cce3c1e: Regression - Fixed Algolia "index prefix" field to be optional, just like it was before the refcator.
- 8b22b1c: Restored Pino logger packages to each app, to fix failing logs in development. Also updated .env.example to contain up to date APP_LOG_LEVEL variable
- 289b42f: Breaking change for app maintainers: VercelAPL can no longer be set for the app since it's deprecated and will be removed in app-sdk 0.30.0. As a replacement, we recommend using Upstash APL or implementing your own.
Read more about APLs: https://github.com/saleor/saleor-app-sdk/blob/main/docs/apl.md