docs: added examples page (#9587)
- Added an examples page with examples of all different concepts in Medusa. We'll probably add more examples with time as we see the need for them. - Small fixes in different pages. Preview: https://resources-docs-ocb5uyp0o-medusajs.vercel.app/v2/resources/examples
This commit is contained in:
@@ -55,7 +55,7 @@ For example:
|
||||
```ts highlights={[["9"]]}
|
||||
import {
|
||||
LoaderOptions,
|
||||
} from "@medusajs/framework/modules-sdk"
|
||||
} from "@medusajs/framework/types"
|
||||
import {
|
||||
ContainerRegistrationKeys
|
||||
} from "@medusajs/framework/utils"
|
||||
|
||||
@@ -28,8 +28,8 @@ So, to run database queries in a service:
|
||||
For example, in your service, add the following methods:
|
||||
|
||||
export const methodsHighlight = [
|
||||
["4", "getCount", "Retrieves the number of records in `my_custom` using the `count` method."],
|
||||
["8", "getCountSql", "Retrieves the number of records in `my_custom` using the `execute` method."]
|
||||
["11", "getCount", "Retrieves the number of records in `my_custom` using the `count` method."],
|
||||
["18", "getCountSql", "Retrieves the number of records in `my_custom` using the `execute` method."]
|
||||
]
|
||||
|
||||
```ts highlights={methodsHighlight}
|
||||
|
||||
@@ -81,7 +81,7 @@ For example:
|
||||
```ts title="src/modules/hello/loaders/hello-world.ts" highlights={[["11"], ["12", "ModuleOptions", "The type of expected module options."], ["16"]]}
|
||||
import {
|
||||
LoaderOptions,
|
||||
} from "@medusajs/framework/modules-sdk"
|
||||
} from "@medusajs/framework/types"
|
||||
|
||||
// recommended to define type in another file
|
||||
type ModuleOptions = {
|
||||
|
||||
@@ -127,7 +127,7 @@ The last step is to add the module in Medusa’s configurations.
|
||||
|
||||
In `medusa-config.ts`, add a `modules` property and pass in it your custom module:
|
||||
|
||||
```ts title="medusa-config.ts" highlights={[["6", "helloModuleService", "The key of the main service to be registered in the Medusa container."]]}
|
||||
```ts title="medusa-config.ts" highlights={[["7"]]}
|
||||
module.exports = defineConfig({
|
||||
projectConfig: {
|
||||
// ...
|
||||
|
||||
@@ -1,151 +0,0 @@
|
||||
export const metadata = {
|
||||
title: `${pageNumber} Examples`,
|
||||
}
|
||||
|
||||
# {metadata.title}
|
||||
|
||||
This chapter provides links to example sections on different Medusa topics.
|
||||
|
||||
## API Routes
|
||||
|
||||
- [Execute a workflow in an API route](../../basics/workflows/page.mdx#3-execute-the-workflow)
|
||||
- [Extend an existing API route](../../customization/extend-models/extend-create-product/page.mdx)
|
||||
- [Override an existing API route](!resources!/recipes/subscriptions/examples/standard#step-6-override-complete-cart-api-route)
|
||||
- [Restrict HTTP Methods in a middleware](../../advanced-development/api-routes/middlewares/page.mdx#restrict-http-methods)
|
||||
- [Change response content to something other than JSON](../../advanced-development/api-routes/responses/page.mdx#change-response-content-type)
|
||||
- [Retrieve logged-in customer's details](../../advanced-development/api-routes/protected-routes/page.mdx#retrieve-logged-in-customers-details)
|
||||
- [Retrieve logged-in user's details](../../advanced-development/api-routes/protected-routes/page.mdx#retrieve-logged-in-admin-users-details)
|
||||
- [Custom error handler](../../advanced-development/api-routes/errors/page.mdx#override-error-handler)
|
||||
- [Using Query in an API route](../../advanced-development/module-links/query/page.mdx#query-example)
|
||||
- [Upload files in a custom API route](!resources!/recipes/digital-products/examples/standard#step-7-upload-digital-product-media-api-route)
|
||||
- [Customize cart-completion API route](!resources!/recipes/digital-products/examples/standard#step-11-customize-cart-completion)
|
||||
|
||||
---
|
||||
|
||||
## Modules
|
||||
|
||||
- [Create a Brand Module](../../customization/custom-features/module/page.mdx)
|
||||
- [Create a Marketplace Module](!resources!/recipes/marketplace/examples/vendors#step-1-create-marketplace-module)
|
||||
- [Create a Restaurant Module](!resources!/recipes/marketplace/examples/restaurant-delivery#step-1-create-a-restaurant-module)
|
||||
- [Create a Delivery Module](!resources!/recipes/marketplace/examples/restaurant-delivery#step-2-create-a-delivery-module)
|
||||
- [Create a Subscription Module](!resources!/recipes/subscriptions/examples/standard#step-1-create-subscription-module)
|
||||
- [Create a Digital Product Module](!resources!/recipes/digital-products/examples/standard#step-1-create-the-digital-product-module)
|
||||
- [Create a link between a brand and a product](../../customization/extend-models/create-links/page.mdx)
|
||||
|
||||
---
|
||||
|
||||
## Services
|
||||
|
||||
- [Override a method generated by the service factory](!resources!/recipes/subscriptions/examples/standard#step-4-override-createsubscriptions-method-in-service)
|
||||
- [Integrate a third-party system](../../customization/integrate-systems/service/page.mdx)
|
||||
|
||||
---
|
||||
|
||||
## Subscribers
|
||||
|
||||
- [Execute a workflow in a subscriber](../../basics/workflows/page.mdx#3-execute-the-workflow)
|
||||
- [Handle a custom event](../../customization/integrate-systems/handle-event/page.mdx)
|
||||
- [Handle reset password token event](!resources!/commerce-modules/auth/reset-password)
|
||||
|
||||
---
|
||||
|
||||
## Scheduled Jobs
|
||||
|
||||
- [Execute a workflow in a scheduled job](../../basics/workflows/page.mdx#3-execute-the-workflow)
|
||||
- [Schedule a task to sync data to third-party system](../../customization/integrate-systems/schedule-task/page.mdx)
|
||||
|
||||
---
|
||||
|
||||
## Workflows
|
||||
|
||||
- [Create a brand workflow](../../customization/custom-features/workflow/page.mdx)
|
||||
- [Emit event in a workflow](../../customization/integrate-systems/handle-event/page.mdx#1-emit-custom-event-for-brand-creation)
|
||||
- [Sync data to a third-party system with a workflow](../../customization/integrate-systems/schedule-task/page.mdx#1-implement-syncing-workflow)
|
||||
- [Create a long-running workflow to handle delivery from placed to completed](!resources!/recipes/marketplace/examples/restaurant-delivery#step-11-handle-delivery-workflow)
|
||||
- [Access long-running workflow's status and result in an API route](../../advanced-development/workflows/long-running-workflow/page.mdx#access-long-running-workflow-status-and-result)
|
||||
|
||||
---
|
||||
|
||||
## Custom CLI Scripts
|
||||
|
||||
- [Seed Dummy Products](../../advanced-development/custom-cli-scripts/seed-data/page.mdx)
|
||||
|
||||
---
|
||||
|
||||
## Admin Customizations
|
||||
|
||||
- [Send a request to custom API routes from widgets or UI routes](../../customization/customize-admin/widget/page.mdx)
|
||||
- [Create a Settings Page](../../advanced-development/admin/ui-routes/page.mdx#create-settings-page)
|
||||
- [Link to another page in the admin dashboard](../../advanced-development/admin/tips/page.mdx#routing-functionalities)
|
||||
- [Show table with pagination](!resources!/recipes/digital-products/examples/standard#step-8-add-digital-products-ui-route-in-admin)
|
||||
|
||||
---
|
||||
|
||||
## Testing
|
||||
|
||||
- [Writing integration tests for API routes](../../debugging-and-testing/testing-tools/integration-tests/api-routes/page.mdx)
|
||||
- [Writing integration tests for workflows](../../debugging-and-testing/testing-tools/integration-tests/workflows/page.mdx)
|
||||
- [Writing integration tests for modules](../../debugging-and-testing/testing-tools/modules-tests/module-example/page.mdx)
|
||||
|
||||
---
|
||||
|
||||
## Storefront Development
|
||||
|
||||
- [Storefront development guides](!resources!/storefront-development)
|
||||
|
||||
---
|
||||
|
||||
## Commerce Modules
|
||||
|
||||
### Auth
|
||||
|
||||
- [Create a custom actor type](!resources!/commerce-modules/auth/create-actor-type)
|
||||
- [Create auth provider module](!resources!/references/auth/provider)
|
||||
|
||||
### Cart
|
||||
|
||||
- [Retrieve tax lines of a cart](!resources!/commerce-modules/cart/tax-lines#retrieving-tax-lines)
|
||||
- [Retrieve promotion actions of a cart](!resources!/commerce-modules/cart/promotions#promotion-actions)
|
||||
|
||||
### Fulfillment
|
||||
|
||||
- [Create fulfillment module provider](!resources!/recipes/digital-products/examples/standard#step-10-create-digital-product-fulfillment-module-provider)
|
||||
|
||||
### Order
|
||||
|
||||
- [Retrieve promotion actions of an order](!resources!/commerce-modules/order/promotion-adjustments#promotion-actions)
|
||||
|
||||
### Payment
|
||||
|
||||
- [Create payment module provider](!resources!/references/payment/provider)
|
||||
|
||||
### Product
|
||||
|
||||
- [Retrieve prices of product variants](!resources!/commerce-modules/product/guides/price)
|
||||
- [Retrieve product variant prices with taxes](!resources!/commerce-modules/product/guides/price-with-taxes)
|
||||
|
||||
---
|
||||
|
||||
## Architectural Modules
|
||||
|
||||
### Cache
|
||||
|
||||
- [Create cache module](!resources!/architectural-modules/cache/create)
|
||||
|
||||
### Event
|
||||
|
||||
- [Create event module](!resources!/architectural-modules/event/create)
|
||||
|
||||
### File
|
||||
|
||||
- [Create file module provider](!resources!/references/file-provider-module)
|
||||
|
||||
### Notification
|
||||
|
||||
- [Create notification module provider](!resources!/references/notification-provider-module)
|
||||
|
||||
---
|
||||
|
||||
## Integrations
|
||||
|
||||
- [Send a notification with SendGrid](!resources!/architectural-modules/notification/sendgrid#test-out-the-module)
|
||||
@@ -108,7 +108,6 @@ export const generatedEditDates = {
|
||||
"app/customization/next-steps/page.mdx": "2024-09-12T10:50:04.873Z",
|
||||
"app/customization/page.mdx": "2024-09-12T11:16:18.504Z",
|
||||
"app/more-resources/cheatsheet/page.mdx": "2024-07-11T16:11:26.480Z",
|
||||
"app/more-resources/examples/page.mdx": "2024-10-03T11:12:50.956Z",
|
||||
"app/architecture/architectural-modules/page.mdx": "2024-09-23T12:51:04.520Z",
|
||||
"app/architecture/overview/page.mdx": "2024-09-23T12:55:01.339Z",
|
||||
"app/advanced-development/data-models/infer-type/page.mdx": "2024-09-30T08:43:53.123Z",
|
||||
|
||||
@@ -167,13 +167,18 @@ const nextConfig = {
|
||||
{
|
||||
source: "/basics/modules-and-services",
|
||||
destination: "/basics/modules",
|
||||
permanent: true
|
||||
permanent: true,
|
||||
},
|
||||
{
|
||||
source: "/basics/data-models",
|
||||
destination: "/basics/modules",
|
||||
permanent: true
|
||||
}
|
||||
permanent: true,
|
||||
},
|
||||
{
|
||||
source: "/more-resources/examples",
|
||||
destination: "/resources/examples",
|
||||
permanent: true,
|
||||
},
|
||||
]
|
||||
},
|
||||
}
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
import { ChildDocs } from "docs-ui"
|
||||
import { CardList } from "docs-ui"
|
||||
|
||||
export const metadata = {
|
||||
title: `Payment Module Provider`,
|
||||
@@ -18,7 +18,15 @@ After the payment session is authorized, the payment provider is associated with
|
||||
|
||||
### List of Payment Module Providers
|
||||
|
||||
<ChildDocs type="item" />
|
||||
<CardList
|
||||
items={[
|
||||
{
|
||||
href: "/commerce-modules/payment/payment-provider/stripe",
|
||||
title: "Stripe"
|
||||
}
|
||||
]}
|
||||
/>
|
||||
|
||||
|
||||
---
|
||||
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
@@ -1,4 +1,4 @@
|
||||
import { ChildDocs } from "docs-ui"
|
||||
import { CardList } from "docs-ui"
|
||||
|
||||
export const metadata = {
|
||||
title: `Integrations`,
|
||||
@@ -12,7 +12,14 @@ Find in this document Medusa's modules that integrate third-party services and s
|
||||
|
||||
Learn how to create a payment provider in [this guide](/references/payment/provider).
|
||||
|
||||
<ChildDocs showItems={["Payment"]} hideTitle />
|
||||
<CardList
|
||||
items={[
|
||||
{
|
||||
href: "/architectural-modules/file/s3",
|
||||
title: "AWS S3 (and Compatible APIs)"
|
||||
}
|
||||
]}
|
||||
/>
|
||||
|
||||
---
|
||||
|
||||
@@ -20,7 +27,14 @@ Learn how to create a payment provider in [this guide](/references/payment/provi
|
||||
|
||||
Learn how to create a notification provider in [this guide](/references/notification-provider-module).
|
||||
|
||||
<ChildDocs showItems={["Notification"]} hideTitle />
|
||||
<CardList
|
||||
items={[
|
||||
{
|
||||
href: "/architectural-modules/notification/sendgrid",
|
||||
title: "SendGrid"
|
||||
}
|
||||
]}
|
||||
/>
|
||||
|
||||
---
|
||||
|
||||
@@ -28,4 +42,11 @@ Learn how to create a notification provider in [this guide](/references/notifica
|
||||
|
||||
Learn how to create a file provider in [this guide](/references/file-provider-module).
|
||||
|
||||
<ChildDocs showItems={["File"]} hideTitle />
|
||||
<CardList
|
||||
items={[
|
||||
{
|
||||
href: "/commerce-modules/payment/payment-provider/stripe",
|
||||
title: "Stripe"
|
||||
}
|
||||
]}
|
||||
/>
|
||||
|
||||
@@ -124,7 +124,7 @@ export const generatedEditDates = {
|
||||
"app/deployment/medusa-application/railway/page.mdx": "2024-10-15T12:50:50.981Z",
|
||||
"app/deployment/storefront/vercel/page.mdx": "2024-07-26T07:21:31+00:00",
|
||||
"app/deployment/page.mdx": "2024-07-25T09:55:22+03:00",
|
||||
"app/integrations/page.mdx": "2024-07-19T08:49:08+00:00",
|
||||
"app/integrations/page.mdx": "2024-10-15T12:26:39.839Z",
|
||||
"app/medusa-cli/page.mdx": "2024-08-28T11:25:32.382Z",
|
||||
"app/medusa-container-resources/page.mdx": "2024-09-30T08:43:53.173Z",
|
||||
"app/medusa-workflows-reference/page.mdx": "2024-09-30T08:43:53.174Z",
|
||||
@@ -2295,5 +2295,6 @@ export const generatedEditDates = {
|
||||
"references/fulfillment/interfaces/fulfillment.IFulfillmentModuleService/page.mdx": "2024-10-14T15:28:22.238Z",
|
||||
"references/types/CommonTypes/interfaces/types.CommonTypes.RequestQueryFields/page.mdx": "2024-10-14T15:27:49.882Z",
|
||||
"references/utils/utils.ProductUtils/page.mdx": "2024-10-14T15:27:51.874Z",
|
||||
"app/examples/page.mdx": "2024-10-15T12:19:18.820Z",
|
||||
"app/medusa-cli/commands/build/page.mdx": "2024-10-16T08:16:27.618Z"
|
||||
}
|
||||
@@ -591,6 +591,10 @@ export const filesMap = [
|
||||
"filePath": "/www/apps/resources/app/events-reference/page.mdx",
|
||||
"pathname": "/events-reference"
|
||||
},
|
||||
{
|
||||
"filePath": "/www/apps/resources/app/examples/page.mdx",
|
||||
"pathname": "/examples"
|
||||
},
|
||||
{
|
||||
"filePath": "/www/apps/resources/app/integrations/page.mdx",
|
||||
"pathname": "/integrations"
|
||||
|
||||
@@ -7,6 +7,158 @@ export const generatedSidebar = [
|
||||
"title": "Overview",
|
||||
"children": []
|
||||
},
|
||||
{
|
||||
"loaded": true,
|
||||
"isPathHref": true,
|
||||
"type": "link",
|
||||
"path": "/examples",
|
||||
"title": "Examples",
|
||||
"children": []
|
||||
},
|
||||
{
|
||||
"loaded": true,
|
||||
"isPathHref": true,
|
||||
"type": "link",
|
||||
"path": "/recipes",
|
||||
"title": "Recipes",
|
||||
"isChildSidebar": true,
|
||||
"children": [
|
||||
{
|
||||
"loaded": true,
|
||||
"isPathHref": true,
|
||||
"type": "link",
|
||||
"path": "/recipes/marketplace",
|
||||
"title": "Marketplace",
|
||||
"children": [
|
||||
{
|
||||
"loaded": true,
|
||||
"isPathHref": true,
|
||||
"type": "link",
|
||||
"path": "/recipes/marketplace/examples/vendors",
|
||||
"title": "Example: Vendors",
|
||||
"children": []
|
||||
},
|
||||
{
|
||||
"loaded": true,
|
||||
"isPathHref": true,
|
||||
"type": "link",
|
||||
"path": "/recipes/marketplace/examples/restaurant-delivery",
|
||||
"title": "Example: Restaurant-Delivery",
|
||||
"children": []
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"loaded": true,
|
||||
"isPathHref": true,
|
||||
"type": "link",
|
||||
"path": "/recipes/subscriptions",
|
||||
"title": "Subscriptions",
|
||||
"children": [
|
||||
{
|
||||
"loaded": true,
|
||||
"isPathHref": true,
|
||||
"type": "link",
|
||||
"path": "/recipes/subscriptions/examples/standard",
|
||||
"title": "Example",
|
||||
"children": []
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"loaded": true,
|
||||
"isPathHref": true,
|
||||
"type": "link",
|
||||
"path": "/recipes/digital-products",
|
||||
"title": "Digital Products",
|
||||
"children": [
|
||||
{
|
||||
"loaded": true,
|
||||
"isPathHref": true,
|
||||
"type": "link",
|
||||
"path": "/recipes/digital-products/examples/standard",
|
||||
"title": "Example",
|
||||
"children": []
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"loaded": true,
|
||||
"isPathHref": true,
|
||||
"type": "link",
|
||||
"path": "/recipes/b2b",
|
||||
"title": "B2B",
|
||||
"children": []
|
||||
},
|
||||
{
|
||||
"loaded": true,
|
||||
"isPathHref": true,
|
||||
"type": "link",
|
||||
"path": "/recipes/commerce-automation",
|
||||
"title": "Commerce Automation",
|
||||
"children": []
|
||||
},
|
||||
{
|
||||
"loaded": true,
|
||||
"isPathHref": true,
|
||||
"type": "link",
|
||||
"path": "/recipes/ecommerce",
|
||||
"title": "Ecommerce",
|
||||
"children": []
|
||||
},
|
||||
{
|
||||
"loaded": true,
|
||||
"isPathHref": true,
|
||||
"type": "link",
|
||||
"path": "/recipes/integrate-ecommerce-stack",
|
||||
"title": "Integrate Ecommerce Stack",
|
||||
"children": []
|
||||
},
|
||||
{
|
||||
"loaded": true,
|
||||
"isPathHref": true,
|
||||
"type": "link",
|
||||
"path": "/recipes/multi-region-store",
|
||||
"title": "Multi-Region Store",
|
||||
"children": []
|
||||
},
|
||||
{
|
||||
"loaded": true,
|
||||
"isPathHref": true,
|
||||
"type": "link",
|
||||
"path": "/recipes/omnichannel",
|
||||
"title": "Omnichannel Store",
|
||||
"children": []
|
||||
},
|
||||
{
|
||||
"loaded": true,
|
||||
"isPathHref": true,
|
||||
"type": "link",
|
||||
"path": "/recipes/oms",
|
||||
"title": "OMS",
|
||||
"children": []
|
||||
},
|
||||
{
|
||||
"loaded": true,
|
||||
"isPathHref": true,
|
||||
"type": "link",
|
||||
"path": "/recipes/personalized-products",
|
||||
"title": "Personalized Products",
|
||||
"children": []
|
||||
},
|
||||
{
|
||||
"loaded": true,
|
||||
"isPathHref": true,
|
||||
"type": "link",
|
||||
"path": "/recipes/pos",
|
||||
"title": "POS",
|
||||
"children": []
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"type": "separator"
|
||||
},
|
||||
{
|
||||
"loaded": true,
|
||||
"isPathHref": true,
|
||||
@@ -7581,205 +7733,6 @@ export const generatedSidebar = [
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"loaded": true,
|
||||
"isPathHref": true,
|
||||
"type": "link",
|
||||
"path": "/integrations",
|
||||
"title": "Integrations",
|
||||
"isChildSidebar": true,
|
||||
"children": [
|
||||
{
|
||||
"loaded": true,
|
||||
"isPathHref": true,
|
||||
"type": "category",
|
||||
"title": "File",
|
||||
"children": [
|
||||
{
|
||||
"loaded": true,
|
||||
"isPathHref": true,
|
||||
"type": "link",
|
||||
"path": "/architectural-modules/file/s3",
|
||||
"title": "AWS S3 (and Compatible APIs)",
|
||||
"children": []
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"loaded": true,
|
||||
"isPathHref": true,
|
||||
"type": "category",
|
||||
"title": "Notification",
|
||||
"children": [
|
||||
{
|
||||
"loaded": true,
|
||||
"isPathHref": true,
|
||||
"type": "link",
|
||||
"path": "/architectural-modules/notification/sendgrid",
|
||||
"title": "SendGrid",
|
||||
"children": []
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"loaded": true,
|
||||
"isPathHref": true,
|
||||
"type": "category",
|
||||
"title": "Payment",
|
||||
"children": [
|
||||
{
|
||||
"loaded": true,
|
||||
"isPathHref": true,
|
||||
"type": "link",
|
||||
"path": "/commerce-modules/payment/payment-provider/stripe",
|
||||
"title": "Stripe",
|
||||
"children": []
|
||||
}
|
||||
]
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"loaded": true,
|
||||
"isPathHref": true,
|
||||
"type": "link",
|
||||
"path": "/recipes",
|
||||
"title": "Recipes",
|
||||
"isChildSidebar": true,
|
||||
"children": [
|
||||
{
|
||||
"loaded": true,
|
||||
"isPathHref": true,
|
||||
"type": "link",
|
||||
"path": "/recipes/marketplace",
|
||||
"title": "Marketplace",
|
||||
"children": [
|
||||
{
|
||||
"loaded": true,
|
||||
"isPathHref": true,
|
||||
"type": "link",
|
||||
"path": "/recipes/marketplace/examples/vendors",
|
||||
"title": "Example: Vendors",
|
||||
"children": []
|
||||
},
|
||||
{
|
||||
"loaded": true,
|
||||
"isPathHref": true,
|
||||
"type": "link",
|
||||
"path": "/recipes/marketplace/examples/restaurant-delivery",
|
||||
"title": "Example: Restaurant-Delivery",
|
||||
"children": []
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"loaded": true,
|
||||
"isPathHref": true,
|
||||
"type": "link",
|
||||
"path": "/recipes/subscriptions",
|
||||
"title": "Subscriptions",
|
||||
"children": [
|
||||
{
|
||||
"loaded": true,
|
||||
"isPathHref": true,
|
||||
"type": "link",
|
||||
"path": "/recipes/subscriptions/examples/standard",
|
||||
"title": "Example",
|
||||
"children": []
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"loaded": true,
|
||||
"isPathHref": true,
|
||||
"type": "link",
|
||||
"path": "/recipes/digital-products",
|
||||
"title": "Digital Products",
|
||||
"children": [
|
||||
{
|
||||
"loaded": true,
|
||||
"isPathHref": true,
|
||||
"type": "link",
|
||||
"path": "/recipes/digital-products/examples/standard",
|
||||
"title": "Example",
|
||||
"children": []
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"loaded": true,
|
||||
"isPathHref": true,
|
||||
"type": "link",
|
||||
"path": "/recipes/b2b",
|
||||
"title": "B2B",
|
||||
"children": []
|
||||
},
|
||||
{
|
||||
"loaded": true,
|
||||
"isPathHref": true,
|
||||
"type": "link",
|
||||
"path": "/recipes/commerce-automation",
|
||||
"title": "Commerce Automation",
|
||||
"children": []
|
||||
},
|
||||
{
|
||||
"loaded": true,
|
||||
"isPathHref": true,
|
||||
"type": "link",
|
||||
"path": "/recipes/ecommerce",
|
||||
"title": "Ecommerce",
|
||||
"children": []
|
||||
},
|
||||
{
|
||||
"loaded": true,
|
||||
"isPathHref": true,
|
||||
"type": "link",
|
||||
"path": "/recipes/integrate-ecommerce-stack",
|
||||
"title": "Integrate Ecommerce Stack",
|
||||
"children": []
|
||||
},
|
||||
{
|
||||
"loaded": true,
|
||||
"isPathHref": true,
|
||||
"type": "link",
|
||||
"path": "/recipes/multi-region-store",
|
||||
"title": "Multi-Region Store",
|
||||
"children": []
|
||||
},
|
||||
{
|
||||
"loaded": true,
|
||||
"isPathHref": true,
|
||||
"type": "link",
|
||||
"path": "/recipes/omnichannel",
|
||||
"title": "Omnichannel Store",
|
||||
"children": []
|
||||
},
|
||||
{
|
||||
"loaded": true,
|
||||
"isPathHref": true,
|
||||
"type": "link",
|
||||
"path": "/recipes/oms",
|
||||
"title": "OMS",
|
||||
"children": []
|
||||
},
|
||||
{
|
||||
"loaded": true,
|
||||
"isPathHref": true,
|
||||
"type": "link",
|
||||
"path": "/recipes/personalized-products",
|
||||
"title": "Personalized Products",
|
||||
"children": []
|
||||
},
|
||||
{
|
||||
"loaded": true,
|
||||
"isPathHref": true,
|
||||
"type": "link",
|
||||
"path": "/recipes/pos",
|
||||
"title": "POS",
|
||||
"children": []
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"loaded": true,
|
||||
"isPathHref": true,
|
||||
@@ -8022,6 +7975,14 @@ export const generatedSidebar = [
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"loaded": true,
|
||||
"isPathHref": true,
|
||||
"type": "link",
|
||||
"path": "/integrations",
|
||||
"title": "Integrations",
|
||||
"children": []
|
||||
},
|
||||
{
|
||||
"type": "separator"
|
||||
},
|
||||
|
||||
+146
-177
@@ -7,6 +7,108 @@ export const sidebar = sidebarAttachHrefCommonOptions([
|
||||
path: "/",
|
||||
title: "Overview",
|
||||
},
|
||||
{
|
||||
type: "link",
|
||||
path: "/examples",
|
||||
title: "Examples",
|
||||
},
|
||||
{
|
||||
type: "link",
|
||||
path: "/recipes",
|
||||
title: "Recipes",
|
||||
isChildSidebar: true,
|
||||
children: [
|
||||
{
|
||||
type: "link",
|
||||
path: "/recipes/marketplace",
|
||||
title: "Marketplace",
|
||||
children: [
|
||||
{
|
||||
type: "link",
|
||||
path: "/recipes/marketplace/examples/vendors",
|
||||
title: "Example: Vendors",
|
||||
},
|
||||
{
|
||||
type: "link",
|
||||
path: "/recipes/marketplace/examples/restaurant-delivery",
|
||||
title: "Example: Restaurant-Delivery",
|
||||
},
|
||||
],
|
||||
},
|
||||
{
|
||||
type: "link",
|
||||
path: "/recipes/subscriptions",
|
||||
title: "Subscriptions",
|
||||
children: [
|
||||
{
|
||||
type: "link",
|
||||
path: "/recipes/subscriptions/examples/standard",
|
||||
title: "Example",
|
||||
},
|
||||
],
|
||||
},
|
||||
{
|
||||
type: "link",
|
||||
path: "/recipes/digital-products",
|
||||
title: "Digital Products",
|
||||
children: [
|
||||
{
|
||||
type: "link",
|
||||
path: "/recipes/digital-products/examples/standard",
|
||||
title: "Example",
|
||||
},
|
||||
],
|
||||
},
|
||||
{
|
||||
type: "link",
|
||||
path: "/recipes/b2b",
|
||||
title: "B2B",
|
||||
},
|
||||
{
|
||||
type: "link",
|
||||
path: "/recipes/commerce-automation",
|
||||
title: "Commerce Automation",
|
||||
},
|
||||
{
|
||||
type: "link",
|
||||
path: "/recipes/ecommerce",
|
||||
title: "Ecommerce",
|
||||
},
|
||||
{
|
||||
type: "link",
|
||||
path: "/recipes/integrate-ecommerce-stack",
|
||||
title: "Integrate Ecommerce Stack",
|
||||
},
|
||||
{
|
||||
type: "link",
|
||||
path: "/recipes/multi-region-store",
|
||||
title: "Multi-Region Store",
|
||||
},
|
||||
{
|
||||
type: "link",
|
||||
path: "/recipes/omnichannel",
|
||||
title: "Omnichannel Store",
|
||||
},
|
||||
{
|
||||
type: "link",
|
||||
path: "/recipes/oms",
|
||||
title: "OMS",
|
||||
},
|
||||
{
|
||||
type: "link",
|
||||
path: "/recipes/personalized-products",
|
||||
title: "Personalized Products",
|
||||
},
|
||||
{
|
||||
type: "link",
|
||||
path: "/recipes/pos",
|
||||
title: "POS",
|
||||
},
|
||||
],
|
||||
},
|
||||
{
|
||||
type: "separator",
|
||||
},
|
||||
{
|
||||
type: "link",
|
||||
path: "/commerce-modules",
|
||||
@@ -1485,141 +1587,6 @@ export const sidebar = sidebarAttachHrefCommonOptions([
|
||||
},
|
||||
],
|
||||
},
|
||||
{
|
||||
type: "link",
|
||||
path: "/integrations",
|
||||
title: "Integrations",
|
||||
isChildSidebar: true,
|
||||
children: [
|
||||
{
|
||||
type: "category",
|
||||
title: "File",
|
||||
children: [
|
||||
{
|
||||
type: "link",
|
||||
path: "/architectural-modules/file/s3",
|
||||
title: "AWS S3 (and Compatible APIs)",
|
||||
},
|
||||
],
|
||||
},
|
||||
{
|
||||
type: "category",
|
||||
title: "Notification",
|
||||
children: [
|
||||
{
|
||||
type: "link",
|
||||
path: "/architectural-modules/notification/sendgrid",
|
||||
title: "SendGrid",
|
||||
},
|
||||
],
|
||||
},
|
||||
{
|
||||
type: "category",
|
||||
title: "Payment",
|
||||
children: [
|
||||
{
|
||||
type: "link",
|
||||
path: "/commerce-modules/payment/payment-provider/stripe",
|
||||
title: "Stripe",
|
||||
},
|
||||
],
|
||||
},
|
||||
],
|
||||
},
|
||||
{
|
||||
type: "link",
|
||||
path: "/recipes",
|
||||
title: "Recipes",
|
||||
isChildSidebar: true,
|
||||
children: [
|
||||
{
|
||||
type: "link",
|
||||
path: "/recipes/marketplace",
|
||||
title: "Marketplace",
|
||||
children: [
|
||||
{
|
||||
type: "link",
|
||||
path: "/recipes/marketplace/examples/vendors",
|
||||
title: "Example: Vendors",
|
||||
},
|
||||
{
|
||||
type: "link",
|
||||
path: "/recipes/marketplace/examples/restaurant-delivery",
|
||||
title: "Example: Restaurant-Delivery",
|
||||
},
|
||||
],
|
||||
},
|
||||
{
|
||||
type: "link",
|
||||
path: "/recipes/subscriptions",
|
||||
title: "Subscriptions",
|
||||
children: [
|
||||
{
|
||||
type: "link",
|
||||
path: "/recipes/subscriptions/examples/standard",
|
||||
title: "Example",
|
||||
},
|
||||
],
|
||||
},
|
||||
{
|
||||
type: "link",
|
||||
path: "/recipes/digital-products",
|
||||
title: "Digital Products",
|
||||
children: [
|
||||
{
|
||||
type: "link",
|
||||
path: "/recipes/digital-products/examples/standard",
|
||||
title: "Example",
|
||||
},
|
||||
],
|
||||
},
|
||||
{
|
||||
type: "link",
|
||||
path: "/recipes/b2b",
|
||||
title: "B2B",
|
||||
},
|
||||
{
|
||||
type: "link",
|
||||
path: "/recipes/commerce-automation",
|
||||
title: "Commerce Automation",
|
||||
},
|
||||
{
|
||||
type: "link",
|
||||
path: "/recipes/ecommerce",
|
||||
title: "Ecommerce",
|
||||
},
|
||||
{
|
||||
type: "link",
|
||||
path: "/recipes/integrate-ecommerce-stack",
|
||||
title: "Integrate Ecommerce Stack",
|
||||
},
|
||||
{
|
||||
type: "link",
|
||||
path: "/recipes/multi-region-store",
|
||||
title: "Multi-Region Store",
|
||||
},
|
||||
{
|
||||
type: "link",
|
||||
path: "/recipes/omnichannel",
|
||||
title: "Omnichannel Store",
|
||||
},
|
||||
{
|
||||
type: "link",
|
||||
path: "/recipes/oms",
|
||||
title: "OMS",
|
||||
},
|
||||
{
|
||||
type: "link",
|
||||
path: "/recipes/personalized-products",
|
||||
title: "Personalized Products",
|
||||
},
|
||||
{
|
||||
type: "link",
|
||||
path: "/recipes/pos",
|
||||
title: "POS",
|
||||
},
|
||||
],
|
||||
},
|
||||
{
|
||||
type: "link",
|
||||
path: "/architectural-modules",
|
||||
@@ -1783,45 +1750,9 @@ export const sidebar = sidebarAttachHrefCommonOptions([
|
||||
],
|
||||
},
|
||||
{
|
||||
type: "separator",
|
||||
},
|
||||
{
|
||||
type: "category",
|
||||
title: "SDKs and Tools",
|
||||
children: [
|
||||
{
|
||||
type: "link",
|
||||
path: "/create-medusa-app",
|
||||
title: "create-medusa-app",
|
||||
},
|
||||
{
|
||||
type: "link",
|
||||
path: "/medusa-cli",
|
||||
title: "Medusa CLI",
|
||||
isChildSidebar: true,
|
||||
childSidebarTitle: "Medusa CLI Reference",
|
||||
children: [
|
||||
{
|
||||
type: "link",
|
||||
path: "/medusa-cli",
|
||||
title: "Overview",
|
||||
},
|
||||
{
|
||||
type: "separator",
|
||||
},
|
||||
{
|
||||
type: "category",
|
||||
title: "Commands",
|
||||
autogenerate_path: "medusa-cli/commands",
|
||||
},
|
||||
],
|
||||
},
|
||||
{
|
||||
type: "link",
|
||||
path: "/nextjs-starter",
|
||||
title: "Next.js Starter",
|
||||
},
|
||||
],
|
||||
type: "link",
|
||||
path: "/integrations",
|
||||
title: "Integrations",
|
||||
},
|
||||
{
|
||||
type: "link",
|
||||
@@ -2094,6 +2025,47 @@ export const sidebar = sidebarAttachHrefCommonOptions([
|
||||
{
|
||||
type: "separator",
|
||||
},
|
||||
{
|
||||
type: "category",
|
||||
title: "SDKs and Tools",
|
||||
children: [
|
||||
{
|
||||
type: "link",
|
||||
path: "/create-medusa-app",
|
||||
title: "create-medusa-app",
|
||||
},
|
||||
{
|
||||
type: "link",
|
||||
path: "/medusa-cli",
|
||||
title: "Medusa CLI",
|
||||
isChildSidebar: true,
|
||||
childSidebarTitle: "Medusa CLI Reference",
|
||||
children: [
|
||||
{
|
||||
type: "link",
|
||||
path: "/medusa-cli",
|
||||
title: "Overview",
|
||||
},
|
||||
{
|
||||
type: "separator",
|
||||
},
|
||||
{
|
||||
type: "category",
|
||||
title: "Commands",
|
||||
autogenerate_path: "medusa-cli/commands",
|
||||
},
|
||||
],
|
||||
},
|
||||
{
|
||||
type: "link",
|
||||
path: "/nextjs-starter",
|
||||
title: "Next.js Starter",
|
||||
},
|
||||
],
|
||||
},
|
||||
{
|
||||
type: "separator",
|
||||
},
|
||||
{
|
||||
type: "category",
|
||||
title: "General",
|
||||
@@ -2233,9 +2205,6 @@ export const sidebar = sidebarAttachHrefCommonOptions([
|
||||
},
|
||||
],
|
||||
},
|
||||
{
|
||||
type: "separator",
|
||||
},
|
||||
{
|
||||
type: "category",
|
||||
title: "Admin",
|
||||
|
||||
@@ -37,19 +37,24 @@ export const navDropdownItems: NavigationItem[] = [
|
||||
link: "/v2/resources",
|
||||
useAsFallback: true,
|
||||
},
|
||||
{
|
||||
type: "link",
|
||||
title: "Examples",
|
||||
link: "/v2/resources/examples",
|
||||
},
|
||||
{
|
||||
type: "link",
|
||||
title: "Recipes",
|
||||
link: "/v2/resources/recipes",
|
||||
},
|
||||
{
|
||||
type: "divider",
|
||||
},
|
||||
{
|
||||
type: "link",
|
||||
title: "UI Library",
|
||||
link: "/ui",
|
||||
},
|
||||
{
|
||||
type: "divider",
|
||||
},
|
||||
{
|
||||
type: "link",
|
||||
title: "Storefront Development",
|
||||
|
||||
Reference in New Issue
Block a user