From 137913b4694d43cc76f5673edb9aa3a9b9004b97 Mon Sep 17 00:00:00 2001 From: Shahed Nasser Date: Wed, 27 Nov 2024 19:11:23 +0200 Subject: [PATCH] docs: update many-to-many docs (#10323) * docs: update many-to-many docs * added note about version * fix eslint error --- www/apps/api-reference/eslint.config.mjs | 19 +- .../data-models/relationships/page.mdx | 27 +- www/apps/book/eslint.config.mjs | 19 +- www/apps/book/generated/edit-dates.mjs | 278 ++++++------------ www/apps/resources/eslint.config.mjs | 19 +- www/apps/ui/eslint.config.mjs | 14 +- www/apps/user-guide/eslint.config.mjs | 18 +- www/eslint.config.mjs | 12 +- 8 files changed, 176 insertions(+), 230 deletions(-) diff --git a/www/apps/api-reference/eslint.config.mjs b/www/apps/api-reference/eslint.config.mjs index 2ad4af2ffb..b9455ad4d8 100644 --- a/www/apps/api-reference/eslint.config.mjs +++ b/www/apps/api-reference/eslint.config.mjs @@ -19,7 +19,16 @@ const compat = new FlatCompat({ export default [ prettier, { - ignores: ["**/eslint-config-docs", "**/.eslintrc.js", "**/dist"], + ignores: [ + "**/eslint-config-docs", + "**/.eslintrc.js", + "**/dist", + "**/next.config.js", + "**/spec", + "**/node_modules", + "**/public", + "**/.eslintrc.js", + ], }, ...compat.extends( "eslint:recommended", @@ -170,14 +179,6 @@ export default [ rootDir: ".", }, }, - ignores: [ - "**/next.config.js", - "**/spec", - "**/node_modules", - "**/public", - "**/.eslintrc.js", - ], - rules: { "react/react-in-jsx-scope": "off", "@typescript-eslint/prefer-ts-expect-error": "off", diff --git a/www/apps/book/app/learn/advanced-development/data-models/relationships/page.mdx b/www/apps/book/app/learn/advanced-development/data-models/relationships/page.mdx index fcb2215fda..a33fc6990d 100644 --- a/www/apps/book/app/learn/advanced-development/data-models/relationships/page.mdx +++ b/www/apps/book/app/learn/advanced-development/data-models/relationships/page.mdx @@ -150,6 +150,9 @@ const Order = model.define("order", { id: model.id().primaryKey(), products: model.manyToMany(() => Product, { mappedBy: "orders", + pivotTable: "order_product", + joinColumn: "order_id", + inverseJoinColumn: "product_id" }), }) @@ -161,16 +164,34 @@ const Product = model.define("product", { }) ``` -At least one side of the many-to-many relationship must have the `mappedBy` property set in the second object parameter of the `manyToMany` object. Its value is the name of the relationship property in the other data model. +The `manyToMany` method accepts two parameters: -In this example, an order is associated with many products, and a product is associated with many orders. +1. A function that returns the associated data model. +2. An object of optional configuration. Only one of the data models in the relation can define the `pivotTable`, `joinColumn`, and `inverseJoinColumn` configurations, and it's considered the owner data model. The object can accept the following properties: + - `mappedBy`: The name of the relationship property in the other data model. If not set, the property's name is inferred from the associated data model's name. + - `pivotTable`: The name of the pivot table created in the database for the many-to-many relation. If not set, the pivot table is inferred by combining the names of the data models' tables in alphabetical order, seperating them by `_`, and pluralizing the last name. For example, `order_products`. + - `joinColumn`: The name of the column in the pivot table that points to the owner model's primary key. + - `inverseJoinColumn`: The name of the column in the pivot table that points to the owned model's primary key. + + + +The `pivotTable`, `joinColumn`, and `inverseJoinColumn` property are only available after [Medusa v2.0.7](https://github.com/medusajs/medusa/releases/tag/v2.0.7). + + + +In this example, an order is associated with many products, and a product is associated with many orders. Since the `pivotTable`, `joinColumn`, and `inverseJoinColumn` configurations are defined on the order, it's considered the owner data model. ### Many-to-Many Relationship in the Database -When you generate the migrations of data models that have a many-to-many relationship, the migration adds a new pivot table. +When you generate the migrations of data models that have a many-to-many relationship, the migration adds a new pivot table. Its name is either the name you specify in the `pivotTable` configuration, or the inferred name combining the names of the data models' tables in alphabetical order, seperating them by `_`, and pluralizing the last name. For example, `order_products`. The pivot table has a column with the name `{data_model}_id` for each of the data model's tables. It also has foreign keys on each of these columns to their respective tables. +The pivot table has columns with foreign keys pointing to the primary key of the associated tables. The column's name is either: + +- The value of the `joinColumn` configuration for the owner table, and the `inverseJoinColumn` configuration for the owned table; +- Or the inferred name `{table_name}_id`. + ![Diagram illustrating the relation between order and product records in the database](https://res.cloudinary.com/dza7lstvk/image/upload/v1726734269/Medusa%20Book/many-to-many_fzy5pq.jpg) --- diff --git a/www/apps/book/eslint.config.mjs b/www/apps/book/eslint.config.mjs index 0113bd8b20..21838f2aa2 100644 --- a/www/apps/book/eslint.config.mjs +++ b/www/apps/book/eslint.config.mjs @@ -19,7 +19,17 @@ const compat = new FlatCompat({ export default [ prettier, { - ignores: ["**/eslint-config-docs", "**/.eslintrc.js", "**/dist"], + ignores: [ + "**/eslint-config-docs", + "**/.eslintrc.js", + "**/dist", + "**/next.config.js", + "**/spec", + "**/node_modules", + "**/public", + "**/.eslintrc.js", + "generated", + ], }, ...compat.extends( "eslint:recommended", @@ -171,13 +181,6 @@ export default [ rootDir: ".", }, }, - ignores: [ - "**/next.config.js", - "**/spec", - "**/node_modules", - "**/public", - "**/.eslintrc.js", - ], rules: { "react/react-in-jsx-scope": "off", diff --git a/www/apps/book/generated/edit-dates.mjs b/www/apps/book/generated/edit-dates.mjs index 607cdf065f..eb3ee03e02 100644 --- a/www/apps/book/generated/edit-dates.mjs +++ b/www/apps/book/generated/edit-dates.mjs @@ -4,209 +4,117 @@ export const generatedEditDates = { "app/learn/deployment/page.mdx": "2024-11-25T14:32:44.949Z", "app/learn/page.mdx": "2024-09-03T07:09:09.034Z", "app/learn/basics/commerce-modules/page.mdx": "2024-11-21T16:24:19.136Z", - "app/learn/advanced-development/workflows/retry-failed-steps/page.mdx": - "2024-09-30T08:43:53.130Z", - "app/learn/advanced-development/workflows/workflow-hooks/page.mdx": - "2024-09-30T08:43:53.131Z", + "app/learn/advanced-development/workflows/retry-failed-steps/page.mdx": "2024-09-30T08:43:53.130Z", + "app/learn/advanced-development/workflows/workflow-hooks/page.mdx": "2024-09-30T08:43:53.131Z", "app/learn/cheatsheet/page.mdx": "2024-07-11T13:53:40+03:00", - "app/learn/debugging-and-testing/logging/page.mdx": - "2024-09-30T08:43:53.135Z", + "app/learn/debugging-and-testing/logging/page.mdx": "2024-09-30T08:43:53.135Z", "app/learn/more-resources/page.mdx": "2024-07-04T17:26:03+03:00", "app/learn/storefront-development/page.mdx": "2024-09-11T10:58:59.290Z", - "app/learn/storefront-development/nextjs-starter/page.mdx": - "2024-07-04T17:26:03+03:00", + "app/learn/storefront-development/nextjs-starter/page.mdx": "2024-07-04T17:26:03+03:00", "app/learn/basics/page.mdx": "2024-09-03T07:11:06.879Z", "app/learn/basics/admin-customizations/page.mdx": "2024-10-07T12:41:39.218Z", - "app/learn/advanced-development/workflows/workflow-timeout/page.mdx": - "2024-09-30T08:43:53.131Z", - "app/learn/advanced-development/workflows/parallel-steps/page.mdx": - "2024-09-30T08:43:53.130Z", + "app/learn/advanced-development/workflows/workflow-timeout/page.mdx": "2024-09-30T08:43:53.131Z", + "app/learn/advanced-development/workflows/parallel-steps/page.mdx": "2024-09-30T08:43:53.130Z", "app/learn/advanced-development/page.mdx": "2024-07-04T17:26:03+03:00", "app/learn/first-customizations/page.mdx": "2024-09-11T10:48:42.374Z", "app/learn/debugging-and-testing/page.mdx": "2024-05-03T17:36:38+03:00", "app/learn/basics/medusa-container/page.mdx": "2024-11-21T08:53:18.181Z", - "app/learn/basics/project-directories-files/page.mdx": - "2024-10-03T12:46:52.762Z", + "app/learn/basics/project-directories-files/page.mdx": "2024-10-03T12:46:52.762Z", "app/learn/basics/api-routes/page.mdx": "2024-09-11T10:48:31.777Z", - "app/learn/basics/modules-directory-structure/page.mdx": - "2024-10-03T13:03:35.957Z", - "app/learn/advanced-development/workflows/access-workflow-errors/page.mdx": - "2024-09-18T12:54:04.695Z", - "app/learn/basics/events-and-subscribers/page.mdx": - "2024-11-22T12:19:32.916Z", - "app/learn/advanced-development/modules/container/page.mdx": - "2024-11-21T08:59:18.707Z", - "app/learn/advanced-development/workflows/execute-another-workflow/page.mdx": - "2024-09-30T08:43:53.129Z", + "app/learn/basics/modules-directory-structure/page.mdx": "2024-10-03T13:03:35.957Z", + "app/learn/advanced-development/workflows/access-workflow-errors/page.mdx": "2024-09-18T12:54:04.695Z", + "app/learn/basics/events-and-subscribers/page.mdx": "2024-11-22T12:19:32.916Z", + "app/learn/advanced-development/modules/container/page.mdx": "2024-11-21T08:59:18.707Z", + "app/learn/advanced-development/workflows/execute-another-workflow/page.mdx": "2024-09-30T08:43:53.129Z", "app/learn/basics/loaders/page.mdx": "2024-11-22T10:51:32.931Z", - "app/learn/advanced-development/admin/widgets/page.mdx": - "2024-10-07T12:51:09.969Z", - "app/learn/advanced-development/data-models/page.mdx": - "2024-09-19T07:26:43.535Z", - "app/learn/advanced-development/modules/remote-link/page.mdx": - "2024-09-30T08:43:53.127Z", - "app/learn/advanced-development/api-routes/protected-routes/page.mdx": - "2024-09-30T08:43:53.121Z", - "app/learn/advanced-development/workflows/add-workflow-hook/page.mdx": - "2024-09-30T08:43:53.128Z", - "app/learn/advanced-development/events-and-subscribers/data-payload/page.mdx": - "2024-07-16T17:12:05+01:00", - "app/learn/advanced-development/data-models/default-properties/page.mdx": - "2024-09-19T07:32:06.118Z", - "app/learn/advanced-development/workflows/advanced-example/page.mdx": - "2024-09-11T10:46:59.975Z", - "app/learn/advanced-development/events-and-subscribers/emit-event/page.mdx": - "2024-11-11T15:17:58.045Z", - "app/learn/advanced-development/workflows/conditions/page.mdx": - "2024-09-30T08:43:53.128Z", - "app/learn/advanced-development/modules/module-link-directions/page.mdx": - "2024-07-24T09:16:01+02:00", + "app/learn/advanced-development/admin/widgets/page.mdx": "2024-10-07T12:51:09.969Z", + "app/learn/advanced-development/data-models/page.mdx": "2024-09-19T07:26:43.535Z", + "app/learn/advanced-development/modules/remote-link/page.mdx": "2024-09-30T08:43:53.127Z", + "app/learn/advanced-development/api-routes/protected-routes/page.mdx": "2024-09-30T08:43:53.121Z", + "app/learn/advanced-development/workflows/add-workflow-hook/page.mdx": "2024-09-30T08:43:53.128Z", + "app/learn/advanced-development/events-and-subscribers/data-payload/page.mdx": "2024-07-16T17:12:05+01:00", + "app/learn/advanced-development/data-models/default-properties/page.mdx": "2024-09-19T07:32:06.118Z", + "app/learn/advanced-development/workflows/advanced-example/page.mdx": "2024-09-11T10:46:59.975Z", + "app/learn/advanced-development/events-and-subscribers/emit-event/page.mdx": "2024-11-11T15:17:58.045Z", + "app/learn/advanced-development/workflows/conditions/page.mdx": "2024-09-30T08:43:53.128Z", + "app/learn/advanced-development/modules/module-link-directions/page.mdx": "2024-07-24T09:16:01+02:00", "app/learn/advanced-development/admin/page.mdx": "2024-10-07T12:39:13.178Z", - "app/learn/advanced-development/workflows/long-running-workflow/page.mdx": - "2024-09-30T08:43:53.129Z", - "app/learn/advanced-development/workflows/constructor-constraints/page.mdx": - "2024-11-14T16:13:19.234Z", - "app/learn/advanced-development/data-models/write-migration/page.mdx": - "2024-07-15T17:46:10+02:00", - "app/learn/advanced-development/data-models/manage-relationships/page.mdx": - "2024-09-10T11:39:51.167Z", - "app/learn/advanced-development/modules/remote-query/page.mdx": - "2024-07-21T21:20:24+02:00", - "app/learn/advanced-development/modules/options/page.mdx": - "2024-10-16T08:49:27.162Z", - "app/learn/advanced-development/data-models/relationships/page.mdx": - "2024-09-30T08:43:53.125Z", - "app/learn/advanced-development/workflows/compensation-function/page.mdx": - "2024-09-30T08:43:53.128Z", - "app/learn/advanced-development/modules/service-factory/page.mdx": - "2024-09-30T08:43:53.127Z", - "app/learn/advanced-development/data-models/primary-key/page.mdx": - "2024-09-30T08:43:53.123Z", - "app/learn/advanced-development/modules/module-links/page.mdx": - "2024-09-30T08:43:53.126Z", - "app/learn/advanced-development/data-models/searchable-property/page.mdx": - "2024-09-30T08:43:53.125Z", - "app/learn/advanced-development/scheduled-jobs/execution-number/page.mdx": - "2024-07-02T09:41:15+00:00", - "app/learn/advanced-development/api-routes/parameters/page.mdx": - "2024-11-12T13:35:09.393Z", - "app/learn/advanced-development/api-routes/http-methods/page.mdx": - "2024-09-11T10:43:33.169Z", - "app/learn/advanced-development/admin/tips/page.mdx": - "2024-10-07T12:50:36.335Z", - "app/learn/advanced-development/api-routes/cors/page.mdx": - "2024-09-30T08:43:53.121Z", - "app/learn/advanced-development/admin/ui-routes/page.mdx": - "2024-11-14T15:29:22.901Z", - "app/learn/advanced-development/api-routes/middlewares/page.mdx": - "2024-09-11T10:45:31.861Z", - "app/learn/advanced-development/modules/isolation/page.mdx": - "2024-07-04T17:26:03+03:00", - "app/learn/advanced-development/data-models/configure-properties/page.mdx": - "2024-09-30T08:43:53.122Z", - "app/learn/advanced-development/data-models/index/page.mdx": - "2024-09-30T08:43:53.122Z", - "app/learn/advanced-development/custom-cli-scripts/page.mdx": - "2024-09-30T08:43:53.122Z", - "app/learn/advanced-development/data-models/property-types/page.mdx": - "2024-09-30T08:43:53.124Z", - "app/learn/debugging-and-testing/testing-tools/integration-tests/api-routes/page.mdx": - "2024-09-30T08:43:53.136Z", - "app/learn/debugging-and-testing/testing-tools/integration-tests/page.mdx": - "2024-09-10T11:39:51.170Z", - "app/learn/debugging-and-testing/testing-tools/integration-tests/workflows/page.mdx": - "2024-09-30T08:43:53.139Z", - "app/learn/debugging-and-testing/testing-tools/page.mdx": - "2024-09-30T08:43:53.139Z", - "app/learn/debugging-and-testing/testing-tools/unit-tests/module-example/page.mdx": - "2024-09-02T11:04:27.232Z", - "app/learn/debugging-and-testing/testing-tools/unit-tests/page.mdx": - "2024-09-02T11:03:26.997Z", - "app/learn/advanced-development/modules/service-constraints/page.mdx": - "2024-09-30T08:43:53.127Z", - "app/learn/advanced-development/api-routes/page.mdx": - "2024-09-04T09:36:33.961Z", - "app/learn/advanced-development/api-routes/responses/page.mdx": - "2024-09-11T10:44:37.016Z", - "app/learn/advanced-development/api-routes/validation/page.mdx": - "2024-11-12T13:32:32.484Z", - "app/learn/advanced-development/api-routes/errors/page.mdx": - "2024-09-30T08:43:53.121Z", - "app/learn/advanced-development/admin/constraints/page.mdx": - "2024-09-10T11:39:51.165Z", - "app/learn/debugging-and-testing/testing-tools/modules-tests/module-example/page.mdx": - "2024-10-16T08:50:03.061Z", - "app/learn/debugging-and-testing/testing-tools/modules-tests/page.mdx": - "2024-10-16T08:50:23.232Z", - "app/learn/advanced-development/module-links/custom-columns/page.mdx": - "2024-11-19T15:05:59.471Z", - "app/learn/advanced-development/module-links/directions/page.mdx": - "2024-09-16T15:37:51.441Z", - "app/learn/advanced-development/module-links/page.mdx": - "2024-09-16T15:36:48.190Z", - "app/learn/advanced-development/module-links/query/page.mdx": - "2024-11-19T15:25:01.149Z", - "app/learn/advanced-development/module-links/remote-link/page.mdx": - "2024-09-16T12:42:27.581Z", - "app/learn/advanced-development/modules/db-operations/page.mdx": - "2024-09-16T14:38:29.150Z", - "app/learn/advanced-development/modules/multiple-services/page.mdx": - "2024-09-16T14:41:32.975Z", + "app/learn/advanced-development/workflows/long-running-workflow/page.mdx": "2024-09-30T08:43:53.129Z", + "app/learn/advanced-development/workflows/constructor-constraints/page.mdx": "2024-11-14T16:13:19.234Z", + "app/learn/advanced-development/data-models/write-migration/page.mdx": "2024-07-15T17:46:10+02:00", + "app/learn/advanced-development/data-models/manage-relationships/page.mdx": "2024-09-10T11:39:51.167Z", + "app/learn/advanced-development/modules/remote-query/page.mdx": "2024-07-21T21:20:24+02:00", + "app/learn/advanced-development/modules/options/page.mdx": "2024-10-16T08:49:27.162Z", + "app/learn/advanced-development/data-models/relationships/page.mdx": "2024-11-27T16:05:55.995Z", + "app/learn/advanced-development/workflows/compensation-function/page.mdx": "2024-09-30T08:43:53.128Z", + "app/learn/advanced-development/modules/service-factory/page.mdx": "2024-09-30T08:43:53.127Z", + "app/learn/advanced-development/data-models/primary-key/page.mdx": "2024-09-30T08:43:53.123Z", + "app/learn/advanced-development/modules/module-links/page.mdx": "2024-09-30T08:43:53.126Z", + "app/learn/advanced-development/data-models/searchable-property/page.mdx": "2024-09-30T08:43:53.125Z", + "app/learn/advanced-development/scheduled-jobs/execution-number/page.mdx": "2024-07-02T09:41:15+00:00", + "app/learn/advanced-development/api-routes/parameters/page.mdx": "2024-11-12T13:35:09.393Z", + "app/learn/advanced-development/api-routes/http-methods/page.mdx": "2024-09-11T10:43:33.169Z", + "app/learn/advanced-development/admin/tips/page.mdx": "2024-10-07T12:50:36.335Z", + "app/learn/advanced-development/api-routes/cors/page.mdx": "2024-09-30T08:43:53.121Z", + "app/learn/advanced-development/admin/ui-routes/page.mdx": "2024-11-14T15:29:22.901Z", + "app/learn/advanced-development/api-routes/middlewares/page.mdx": "2024-09-11T10:45:31.861Z", + "app/learn/advanced-development/modules/isolation/page.mdx": "2024-07-04T17:26:03+03:00", + "app/learn/advanced-development/data-models/configure-properties/page.mdx": "2024-09-30T08:43:53.122Z", + "app/learn/advanced-development/data-models/index/page.mdx": "2024-09-30T08:43:53.122Z", + "app/learn/advanced-development/custom-cli-scripts/page.mdx": "2024-09-30T08:43:53.122Z", + "app/learn/advanced-development/data-models/property-types/page.mdx": "2024-09-30T08:43:53.124Z", + "app/learn/debugging-and-testing/testing-tools/integration-tests/api-routes/page.mdx": "2024-09-30T08:43:53.136Z", + "app/learn/debugging-and-testing/testing-tools/integration-tests/page.mdx": "2024-09-10T11:39:51.170Z", + "app/learn/debugging-and-testing/testing-tools/integration-tests/workflows/page.mdx": "2024-09-30T08:43:53.139Z", + "app/learn/debugging-and-testing/testing-tools/page.mdx": "2024-09-30T08:43:53.139Z", + "app/learn/debugging-and-testing/testing-tools/unit-tests/module-example/page.mdx": "2024-09-02T11:04:27.232Z", + "app/learn/debugging-and-testing/testing-tools/unit-tests/page.mdx": "2024-09-02T11:03:26.997Z", + "app/learn/advanced-development/modules/service-constraints/page.mdx": "2024-09-30T08:43:53.127Z", + "app/learn/advanced-development/api-routes/page.mdx": "2024-09-04T09:36:33.961Z", + "app/learn/advanced-development/api-routes/responses/page.mdx": "2024-09-11T10:44:37.016Z", + "app/learn/advanced-development/api-routes/validation/page.mdx": "2024-11-12T13:32:32.484Z", + "app/learn/advanced-development/api-routes/errors/page.mdx": "2024-09-30T08:43:53.121Z", + "app/learn/advanced-development/admin/constraints/page.mdx": "2024-09-10T11:39:51.165Z", + "app/learn/debugging-and-testing/testing-tools/modules-tests/module-example/page.mdx": "2024-10-16T08:50:03.061Z", + "app/learn/debugging-and-testing/testing-tools/modules-tests/page.mdx": "2024-10-16T08:50:23.232Z", + "app/learn/advanced-development/module-links/custom-columns/page.mdx": "2024-11-19T15:05:59.471Z", + "app/learn/advanced-development/module-links/directions/page.mdx": "2024-09-16T15:37:51.441Z", + "app/learn/advanced-development/module-links/page.mdx": "2024-09-16T15:36:48.190Z", + "app/learn/advanced-development/module-links/query/page.mdx": "2024-11-19T15:25:01.149Z", + "app/learn/advanced-development/module-links/remote-link/page.mdx": "2024-09-16T12:42:27.581Z", + "app/learn/advanced-development/modules/db-operations/page.mdx": "2024-09-16T14:38:29.150Z", + "app/learn/advanced-development/modules/multiple-services/page.mdx": "2024-09-16T14:41:32.975Z", "app/learn/advanced-development/modules/page.mdx": "2024-09-16T14:33:48.217Z", - "app/learn/debugging-and-testing/instrumentation/page.mdx": - "2024-09-17T08:53:15.910Z", - "app/learn/advanced-development/api-routes/additional-data/page.mdx": - "2024-09-30T08:43:53.120Z", - "app/learn/advanced-development/workflows/page.mdx": - "2024-09-18T08:00:57.364Z", - "app/learn/advanced-development/workflows/variable-manipulation/page.mdx": - "2024-11-14T16:11:24.538Z", - "app/learn/customization/custom-features/api-route/page.mdx": - "2024-09-12T12:42:34.201Z", - "app/learn/customization/custom-features/module/page.mdx": - "2024-10-16T08:49:44.676Z", - "app/learn/customization/custom-features/workflow/page.mdx": - "2024-09-30T08:43:53.133Z", - "app/learn/customization/extend-models/create-links/page.mdx": - "2024-09-30T08:43:53.133Z", - "app/learn/customization/extend-models/extend-create-product/page.mdx": - "2024-09-30T08:43:53.134Z", - "app/learn/customization/custom-features/page.mdx": - "2024-09-12T11:18:13.271Z", - "app/learn/customization/customize-admin/page.mdx": - "2024-09-12T12:25:29.853Z", - "app/learn/customization/customize-admin/route/page.mdx": - "2024-10-07T12:43:11.335Z", - "app/learn/customization/customize-admin/widget/page.mdx": - "2024-10-07T12:44:24.538Z", - "app/learn/customization/extend-models/define-link/page.mdx": - "2024-09-30T08:43:53.134Z", + "app/learn/debugging-and-testing/instrumentation/page.mdx": "2024-09-17T08:53:15.910Z", + "app/learn/advanced-development/api-routes/additional-data/page.mdx": "2024-09-30T08:43:53.120Z", + "app/learn/advanced-development/workflows/page.mdx": "2024-09-18T08:00:57.364Z", + "app/learn/advanced-development/workflows/variable-manipulation/page.mdx": "2024-11-14T16:11:24.538Z", + "app/learn/customization/custom-features/api-route/page.mdx": "2024-09-12T12:42:34.201Z", + "app/learn/customization/custom-features/module/page.mdx": "2024-10-16T08:49:44.676Z", + "app/learn/customization/custom-features/workflow/page.mdx": "2024-09-30T08:43:53.133Z", + "app/learn/customization/extend-models/create-links/page.mdx": "2024-09-30T08:43:53.133Z", + "app/learn/customization/extend-models/extend-create-product/page.mdx": "2024-09-30T08:43:53.134Z", + "app/learn/customization/custom-features/page.mdx": "2024-09-12T11:18:13.271Z", + "app/learn/customization/customize-admin/page.mdx": "2024-09-12T12:25:29.853Z", + "app/learn/customization/customize-admin/route/page.mdx": "2024-10-07T12:43:11.335Z", + "app/learn/customization/customize-admin/widget/page.mdx": "2024-10-07T12:44:24.538Z", + "app/learn/customization/extend-models/define-link/page.mdx": "2024-09-30T08:43:53.134Z", "app/learn/customization/extend-models/page.mdx": "2024-09-12T12:38:57.394Z", - "app/learn/customization/extend-models/query-linked-records/page.mdx": - "2024-09-30T08:43:53.134Z", - "app/learn/customization/integrate-systems/handle-event/page.mdx": - "2024-09-30T08:43:53.135Z", - "app/learn/customization/integrate-systems/page.mdx": - "2024-09-12T12:33:29.827Z", - "app/learn/customization/integrate-systems/schedule-task/page.mdx": - "2024-09-30T08:43:53.135Z", - "app/learn/customization/integrate-systems/service/page.mdx": - "2024-10-16T08:49:50.899Z", + "app/learn/customization/extend-models/query-linked-records/page.mdx": "2024-09-30T08:43:53.134Z", + "app/learn/customization/integrate-systems/handle-event/page.mdx": "2024-09-30T08:43:53.135Z", + "app/learn/customization/integrate-systems/page.mdx": "2024-09-12T12:33:29.827Z", + "app/learn/customization/integrate-systems/schedule-task/page.mdx": "2024-09-30T08:43:53.135Z", + "app/learn/customization/integrate-systems/service/page.mdx": "2024-10-16T08:49:50.899Z", "app/learn/customization/next-steps/page.mdx": "2024-09-12T10:50:04.873Z", "app/learn/customization/page.mdx": "2024-09-12T11:16:18.504Z", "app/learn/more-resources/cheatsheet/page.mdx": "2024-07-11T16:11:26.480Z", - "app/learn/architecture/architectural-modules/page.mdx": - "2024-09-23T12:51:04.520Z", + "app/learn/architecture/architectural-modules/page.mdx": "2024-09-23T12:51:04.520Z", "app/learn/architecture/overview/page.mdx": "2024-09-23T12:55:01.339Z", - "app/learn/advanced-development/data-models/infer-type/page.mdx": - "2024-09-30T08:43:53.123Z", - "app/learn/advanced-development/custom-cli-scripts/seed-data/page.mdx": - "2024-10-03T11:11:07.181Z", + "app/learn/advanced-development/data-models/infer-type/page.mdx": "2024-09-30T08:43:53.123Z", + "app/learn/advanced-development/custom-cli-scripts/seed-data/page.mdx": "2024-10-03T11:11:07.181Z", "app/learn/basics/modules/page.mdx": "2024-11-21T14:09:42.197Z", - "app/learn/advanced-development/environment-variables/page.mdx": - "2024-10-25T14:59:07.831Z", + "app/learn/advanced-development/environment-variables/page.mdx": "2024-10-25T14:59:07.831Z", "app/learn/build/page.mdx": "2024-11-11T11:08:41.832Z", "app/learn/deployment/general/page.mdx": "2024-11-25T14:33:50.439Z", - "app/learn/advanced-development/workflows/multiple-step-usage/page.mdx": - "2024-11-12T11:11:49.191Z", -} + "app/learn/advanced-development/workflows/multiple-step-usage/page.mdx": "2024-11-12T11:11:49.191Z" +} \ No newline at end of file diff --git a/www/apps/resources/eslint.config.mjs b/www/apps/resources/eslint.config.mjs index 0113bd8b20..21838f2aa2 100644 --- a/www/apps/resources/eslint.config.mjs +++ b/www/apps/resources/eslint.config.mjs @@ -19,7 +19,17 @@ const compat = new FlatCompat({ export default [ prettier, { - ignores: ["**/eslint-config-docs", "**/.eslintrc.js", "**/dist"], + ignores: [ + "**/eslint-config-docs", + "**/.eslintrc.js", + "**/dist", + "**/next.config.js", + "**/spec", + "**/node_modules", + "**/public", + "**/.eslintrc.js", + "generated", + ], }, ...compat.extends( "eslint:recommended", @@ -171,13 +181,6 @@ export default [ rootDir: ".", }, }, - ignores: [ - "**/next.config.js", - "**/spec", - "**/node_modules", - "**/public", - "**/.eslintrc.js", - ], rules: { "react/react-in-jsx-scope": "off", diff --git a/www/apps/ui/eslint.config.mjs b/www/apps/ui/eslint.config.mjs index a8b18b3ea1..d1a57b7760 100644 --- a/www/apps/ui/eslint.config.mjs +++ b/www/apps/ui/eslint.config.mjs @@ -24,6 +24,11 @@ export default [ "**/.eslintrc.js", "**/dist", "src/examples", + "**/next.config.js", + "**/spec", + "**/node_modules", + "**/public", + "**/.eslintrc.js" ], }, ...compat.extends( @@ -31,7 +36,7 @@ export default [ "plugin:react/recommended", "plugin:react/jsx-runtime", "plugin:react-hooks/recommended", - "plugin:@next/next/recommended" + "plugin:@next/next/recommended", ), { languageOptions: { @@ -176,13 +181,6 @@ export default [ rootDir: ".", }, }, - ignores: [ - "**/next.config.js", - "**/spec", - "**/node_modules", - "**/public", - "**/.eslintrc.js", - ], rules: { "react/react-in-jsx-scope": "off", diff --git a/www/apps/user-guide/eslint.config.mjs b/www/apps/user-guide/eslint.config.mjs index 0113bd8b20..b0e70103ab 100644 --- a/www/apps/user-guide/eslint.config.mjs +++ b/www/apps/user-guide/eslint.config.mjs @@ -19,7 +19,16 @@ const compat = new FlatCompat({ export default [ prettier, { - ignores: ["**/eslint-config-docs", "**/.eslintrc.js", "**/dist"], + ignores: [ + "**/eslint-config-docs", + "**/.eslintrc.js", + "**/dist", + "**/next.config.js", + "**/spec", + "**/node_modules", + "**/public", + "**/.eslintrc.js", + ], }, ...compat.extends( "eslint:recommended", @@ -171,13 +180,6 @@ export default [ rootDir: ".", }, }, - ignores: [ - "**/next.config.js", - "**/spec", - "**/node_modules", - "**/public", - "**/.eslintrc.js", - ], rules: { "react/react-in-jsx-scope": "off", diff --git a/www/eslint.config.mjs b/www/eslint.config.mjs index 16088c3969..cd8931d7e6 100644 --- a/www/eslint.config.mjs +++ b/www/eslint.config.mjs @@ -19,7 +19,17 @@ const compat = new FlatCompat({ export default [ prettier, { - ignores: ["**/dist", "**/build", "**/global-config.ts"], + ignores: [ + "**/dist", + "**/build", + "**/global-config.ts", + "**/next.config.js", + "**/spec", + "**/node_modules", + "**/public", + "**/.eslintrc.js", + "**/generated", + ], }, ...compat.extends( "eslint:recommended", "plugin:react/recommended",