{
  "rules": {
    // Note: adding this rule to a eslint config file in a subfolder will remove
    // *not* carry over the restricted imports from parent folders, you will
    // need to copy them over
    "no-restricted-imports": [
      "error",
      {
        "patterns": [
          "metabase-enterprise",
          "metabase-enterprise/*",
          "cljs/metabase.lib*",
          "/embedding-sdk-package",
          "/embedding-sdk-bundle",
          "/embedding-sdk-shared",
          "metabase-lib/v1/metadata",
          "metabase-lib/v1/metadata/*",
          "metabase/entities",
          "metabase/entities/*",
        ],
        "paths": [
          {
            "name": "react-redux",
            "importNames": ["useSelector", "useDispatch", "connect"],
            "message": "Please import from `metabase/lib/redux` instead.",
          },
          {
            "name": "@mantine/core",
            "message": "Please import from `metabase/ui` instead.",
          },
          {
            "name": "moment",
            "message": "Moment is deprecated, please use dayjs",
          },
          {
            "name": "moment-timezone",
            "message": "Moment is deprecated, please use dayjs",
          },
          {
            "name": "@emotion/styled",
            "message": "Please style components using css modules.",
          },
          {
            "name": "@emotion/react",
            "message": "Please use components from `metabase/ui` instead and style them using css modules.",
          },
          {
            "name": "@storybook/test",
            "message": "Please use `testing-library/react` or `@testing-library/user-event`",
          },
        ],
      },
    ],
  },
}
