Upgrade NX (#13758)

Upgrade from NX18 to NX21
This commit is contained in:
Félix Malfait
2025-08-08 10:38:12 +02:00
committed by GitHub
parent 4708ff34c7
commit 033bedde0a
58 changed files with 3676 additions and 820 deletions
+1
View File
@@ -9,6 +9,7 @@
.nx/installation
.nx/cache
.nx/workspace-data
.pnp.*
.yarn/*
+40 -151
View File
@@ -1,12 +1,7 @@
{
"workspaceLayout": {
"appsDir": "packages",
"libsDir": "packages"
},
"workspaceLayout": { "appsDir": "packages", "libsDir": "packages" },
"namedInputs": {
"default": [
"{projectRoot}/**/*"
],
"default": ["{projectRoot}/**/*"],
"excludeStories": [
"default",
"!{projectRoot}/.storybook/*",
@@ -34,26 +29,14 @@
"targetDefaults": {
"build": {
"cache": true,
"inputs": [
"^production",
"production"
],
"dependsOn": [
"^build"
]
},
"start": {
"cache": true,
"dependsOn": [
"^build"
]
"inputs": ["^production", "production"],
"dependsOn": ["^build"]
},
"start": { "cache": true, "dependsOn": ["^build"] },
"lint": {
"executor": "@nx/eslint:lint",
"cache": true,
"outputs": [
"{options.outputFile}"
],
"outputs": ["{options.outputFile}"],
"options": {
"eslintConfig": "{projectRoot}/.eslintrc.cjs",
"cache": true,
@@ -61,16 +44,10 @@
"ignorePath": "{workspaceRoot}/.gitignore"
},
"configurations": {
"ci": {
"cacheStrategy": "content"
},
"fix": {
"fix": true
}
"ci": { "cacheStrategy": "content" },
"fix": { "fix": true }
},
"dependsOn": [
"^build"
]
"dependsOn": ["^build"]
},
"fmt": {
"executor": "nx:run-commands",
@@ -84,16 +61,10 @@
"write": false
},
"configurations": {
"ci": {
"cacheStrategy": "content"
},
"fix": {
"write": true
}
"ci": { "cacheStrategy": "content" },
"fix": { "write": true }
},
"dependsOn": [
"^build"
]
"dependsOn": ["^build"]
},
"typecheck": {
"executor": "nx:run-commands",
@@ -102,85 +73,49 @@
"cwd": "{projectRoot}",
"command": "tsc -b tsconfig.json --incremental"
},
"configurations": {
"watch": {
"watch": true
}
},
"dependsOn": [
"^build"
]
"configurations": { "watch": { "watch": true } },
"dependsOn": ["^build"]
},
"test": {
"executor": "@nx/jest:jest",
"cache": true,
"dependsOn": [
"^build"
],
"dependsOn": ["^build"],
"inputs": [
"^default",
"excludeStories",
"{workspaceRoot}/jest.preset.js"
],
"outputs": [
"{projectRoot}/coverage"
],
"outputs": ["{projectRoot}/coverage"],
"options": {
"jestConfig": "{projectRoot}/jest.config.ts",
"coverage": true,
"coverageReporters": [
"text-summary"
],
"coverageReporters": ["text-summary"],
"cacheDirectory": "../../.cache/jest/{projectRoot}"
},
"configurations": {
"ci": {
"ci": true,
"maxWorkers": 3
},
"coverage": {
"coverageReporters": [
"lcov",
"text"
]
},
"watch": {
"watch": true
}
"ci": { "ci": true, "maxWorkers": 3 },
"coverage": { "coverageReporters": ["lcov", "text"] },
"watch": { "watch": true }
}
},
"test:e2e": {
"cache": true,
"dependsOn": [
"^build"
]
},
"test:e2e": { "cache": true, "dependsOn": ["^build"] },
"storybook:build": {
"executor": "nx:run-commands",
"cache": true,
"inputs": [
"^default",
"excludeTests"
],
"outputs": [
"{projectRoot}/{options.output-dir}"
],
"inputs": ["^default", "excludeTests"],
"outputs": ["{projectRoot}/{options.output-dir}"],
"options": {
"cwd": "{projectRoot}",
"command": "VITE_DISABLE_TYPESCRIPT_CHECKER=true VITE_DISABLE_ESLINT_CHECKER=true storybook build --test",
"output-dir": "storybook-static",
"config-dir": ".storybook"
},
"dependsOn": [
"^build"
]
"dependsOn": ["^build"]
},
"storybook:serve:dev": {
"executor": "nx:run-commands",
"cache": true,
"dependsOn": [
"^build"
],
"dependsOn": ["^build"],
"options": {
"cwd": "{projectRoot}",
"command": "storybook dev",
@@ -189,9 +124,7 @@
},
"storybook:serve:static": {
"executor": "nx:run-commands",
"dependsOn": [
"storybook:build"
],
"dependsOn": ["storybook:build"],
"options": {
"cwd": "{projectRoot}",
"command": "npx http-server {args.staticDir} -a={args.host} --port={args.port} --silent={args.silent}",
@@ -204,13 +137,8 @@
"storybook:test": {
"executor": "nx:run-commands",
"cache": true,
"inputs": [
"^default",
"excludeTests"
],
"outputs": [
"{projectRoot}/coverage/storybook"
],
"inputs": ["^default", "excludeTests"],
"outputs": ["{projectRoot}/coverage/storybook"],
"options": {
"cwd": "{projectRoot}",
"commands": [
@@ -226,10 +154,7 @@
},
"storybook:test:no-coverage": {
"executor": "nx:run-commands",
"inputs": [
"^default",
"excludeTests"
],
"inputs": ["^default", "excludeTests"],
"options": {
"cwd": "{projectRoot}",
"commands": [
@@ -256,11 +181,7 @@
"reporter": "lcov",
"checkCoverage": true
},
"configurations": {
"text": {
"reporter": "text"
}
}
"configurations": { "text": { "reporter": "text" } }
},
"storybook:serve-and-test:static": {
"executor": "nx:run-commands",
@@ -286,11 +207,7 @@
],
"parallel": false
},
"configurations": {
"ci": {
"ci": "--exit-zero-on-changes"
}
}
"configurations": { "ci": { "ci": "--exit-zero-on-changes" } }
},
"@nx/jest:jest": {
"cache": true,
@@ -299,15 +216,8 @@
"excludeStories",
"{workspaceRoot}/jest.preset.js"
],
"options": {
"passWithNoTests": true
},
"configurations": {
"ci": {
"ci": true,
"codeCoverage": true
}
}
"options": { "passWithNoTests": true },
"configurations": { "ci": { "ci": true, "codeCoverage": true } }
},
"@nx/eslint:lint": {
"cache": true,
@@ -317,27 +227,14 @@
"{workspaceRoot}/tools/eslint-rules/**/*"
]
},
"@nx/vite:test": {
"cache": true,
"inputs": [
"default",
"^default"
]
},
"@nx/vite:test": { "cache": true, "inputs": ["default", "^default"] },
"@nx/vite:build": {
"cache": true,
"dependsOn": [
"^build"
],
"inputs": [
"default",
"^default"
]
"dependsOn": ["^build"],
"inputs": ["default", "^default"]
}
},
"installation": {
"version": "18.3.3"
},
"installation": { "version": "21.3.11" },
"generators": {
"@nx/react": {
"application": {
@@ -356,20 +253,12 @@
"unitTestRunner": "jest",
"projectNameAndRootFormat": "derived"
},
"component": {
"style": "@emotion/styled"
}
"component": { "style": "@emotion/styled" }
}
},
"tasksRunnerOptions": {
"default": {
"options": {
"cacheableOperations": [
"storybook:build"
]
}
}
"default": { "options": { "cacheableOperations": ["storybook:build"] } }
},
"useInferencePlugins": false,
"defaultBase": "main"
}
}
+10 -10
View File
@@ -33,7 +33,7 @@
"@nestjs/serve-static": "^4.0.1",
"@nestjs/terminus": "^11.0.0",
"@nestjs/typeorm": "^10.0.0",
"@nx/eslint-plugin": "^17.2.8",
"@nx/eslint-plugin": "21.3.11",
"@octokit/graphql": "^7.0.2",
"@ptc-org/nestjs-query-core": "^4.2.0",
"@ptc-org/nestjs-query-typeorm": "4.2.1-alpha.2",
@@ -195,14 +195,14 @@
"@nestjs/schematics": "^9.0.0",
"@nestjs/testing": "^9.0.0",
"@next/eslint-plugin-next": "^14.1.4",
"@nx/eslint": "18.3.3",
"@nx/eslint-plugin": "18.3.3",
"@nx/jest": "18.3.3",
"@nx/js": "18.3.3",
"@nx/react": "18.3.3",
"@nx/storybook": "18.3.3",
"@nx/vite": "18.3.3",
"@nx/web": "18.3.3",
"@nx/eslint": "21.3.11",
"@nx/eslint-plugin": "21.3.11",
"@nx/jest": "21.3.11",
"@nx/js": "21.3.11",
"@nx/react": "21.3.11",
"@nx/storybook": "21.3.11",
"@nx/vite": "21.3.11",
"@nx/web": "21.3.11",
"@playwright/test": "^1.46.0",
"@sentry/types": "^8",
"@storybook/addon-actions": "^7.6.3",
@@ -303,7 +303,7 @@
"jsdom": "~22.1.0",
"msw": "^2.0.11",
"msw-storybook-addon": "2.0.0--canary.122.b3ed3b1.0",
"nx": "18.3.3",
"nx": "21.3.11",
"playwright": "^1.46.0",
"prettier": "^3.1.1",
"raw-loader": "^4.0.2",
+1 -1
View File
@@ -72,7 +72,7 @@
"@faker-js/faker": "^9.8.0",
"@lingui/cli": "^5.1.2",
"@nestjs/cli": "10.3.0",
"@nx/js": "18.3.3",
"@nx/js": "21.3.11",
"@types/express-session": "^1.18.0",
"@types/lodash.differencewith": "^4.5.9",
"@types/lodash.isempty": "^4.4.7",
@@ -1,4 +1,4 @@
import { Metadata } from 'next';
import { type Metadata } from 'next';
export const metadata: Metadata = {
title: 'Twenty.com',
@@ -1,6 +1,6 @@
export const dynamic = 'force-dynamic';
import { Metadata } from 'next';
import { type Metadata } from 'next';
import { getContributorActivity } from '@/app/(public)/contributors/utils/get-contributor-activity';
import { ActivityLog } from '@/app/_components/contributors/ActivityLog';
@@ -1,4 +1,4 @@
import { Metadata } from 'next';
import { type Metadata } from 'next';
import { notFound } from 'next/navigation';
import DocsContent from '@/app/_components/docs/DocsContent';
@@ -1,4 +1,4 @@
import { ReactNode } from 'react';
import { type ReactNode } from 'react';
import { DocsMainLayout } from '@/app/_components/docs/DocsMainLayout';
import { getDocsArticles } from '@/content/user-guide/constants/getDocsArticles';
@@ -1,4 +1,4 @@
import { Metadata } from 'next';
import { type Metadata } from 'next';
import { notFound } from 'next/navigation';
import DocsContent from '@/app/_components/docs/DocsContent';
@@ -1,4 +1,4 @@
import { Metadata } from 'next';
import { type Metadata } from 'next';
import { notFound } from 'next/navigation';
import DocsMain from '@/app/_components/docs/DocsMain';
@@ -1,4 +1,4 @@
import { Metadata } from 'next';
import { type Metadata } from 'next';
import { PublicEnvScript } from 'next-runtime-env';
import { Gabarito, Inter } from 'next/font/google';
@@ -1,5 +1,5 @@
import { Background } from '@/app/_components/oss-friends/Background';
import { Card, OssData } from '@/app/_components/oss-friends/Card';
import { Card, type OssData } from '@/app/_components/oss-friends/Card';
import { CardContainer } from '@/app/_components/oss-friends/CardContainer';
import { ContentContainer } from '@/app/_components/oss-friends/ContentContainer';
import { Header } from '@/app/_components/oss-friends/Header';
@@ -1,4 +1,4 @@
import { NextRequest, NextResponse } from 'next/server';
import { type NextRequest, NextResponse } from 'next/server';
import { getReleases } from '@/app/(public)/releases/utils/get-releases';
@@ -1,5 +1,5 @@
import { desc } from 'drizzle-orm';
import { Metadata } from 'next';
import { type Metadata } from 'next';
import {
getMdxReleasesContent,
@@ -10,7 +10,7 @@ import { ReleaseContainer } from '@/app/_components/releases/ReleaseContainer';
import { Title } from '@/app/_components/releases/StyledTitle';
import { ContentContainer } from '@/app/_components/ui/layout/ContentContainer';
import { findAll } from '@/database/database';
import { GithubReleases, githubReleasesModel } from '@/database/model';
import { type GithubReleases, githubReleasesModel } from '@/database/model';
import { pgGithubReleasesModel } from '@/database/schema-postgres';
export const metadata: Metadata = {
@@ -1,4 +1,4 @@
import { GithubReleases } from '@/database/model';
import { type GithubReleases } from '@/database/model';
function formatDate(dateString: string) {
const date = new Date(dateString);
@@ -1,10 +1,10 @@
import fs from 'fs';
import matter from 'gray-matter';
import { compileMDX } from 'next-mdx-remote/rsc';
import { JSXElementConstructor, ReactElement } from 'react';
import { type JSXElementConstructor, type ReactElement } from 'react';
import gfm from 'remark-gfm';
import { ReleaseNote } from '@/app/(public)/releases/api/route';
import { type ReleaseNote } from '@/app/(public)/releases/api/route';
import { compareSemanticVersions } from '@/shared-utils/compareSemanticVersions';
// WARNING: This API is used by twenty-front, not just by twenty-website
@@ -1,4 +1,4 @@
import { ReleaseNote } from '@/app/(public)/releases/api/route';
import { type ReleaseNote } from '@/app/(public)/releases/api/route';
import { getFormattedReleaseNumber } from '@/app/(public)/releases/utils/get-formatted-release-number';
export const getVisibleReleases = (
@@ -1,4 +1,4 @@
import { Metadata } from 'next';
import { type Metadata } from 'next';
import { notFound } from 'next/navigation';
import DocsContent from '@/app/_components/docs/DocsContent';
@@ -1,4 +1,4 @@
import { ReactNode } from 'react';
import { type ReactNode } from 'react';
import { DocsMainLayout } from '@/app/_components/docs/DocsMainLayout';
import { getDocsArticles } from '@/content/user-guide/constants/getDocsArticles';
@@ -1,4 +1,4 @@
import { Metadata } from 'next';
import { type Metadata } from 'next';
import { notFound } from 'next/navigation';
import DocsContent from '@/app/_components/docs/DocsContent';
@@ -1,4 +1,4 @@
import { Metadata } from 'next';
import { type Metadata } from 'next';
import { notFound } from 'next/navigation';
import DocsMain from '@/app/_components/docs/DocsMain';
@@ -1,4 +1,4 @@
import { Metadata } from 'next';
import { type Metadata } from 'next';
import { notFound } from 'next/navigation';
import DocsContent from '@/app/_components/docs/DocsContent';
@@ -1,4 +1,4 @@
import { ReactNode } from 'react';
import { type ReactNode } from 'react';
import { DocsMainLayout } from '@/app/_components/docs/DocsMainLayout';
import { getDocsArticles } from '@/content/user-guide/constants/getDocsArticles';
@@ -1,4 +1,4 @@
import { Metadata } from 'next';
import { type Metadata } from 'next';
import { notFound } from 'next/navigation';
import DocsContent from '@/app/_components/docs/DocsContent';
@@ -1,4 +1,4 @@
import { Metadata } from 'next';
import { type Metadata } from 'next';
import { notFound } from 'next/navigation';
import DocsMain from '@/app/_components/docs/DocsMain';
@@ -4,7 +4,7 @@ import Link from 'next/link';
import { usePathname } from 'next/navigation';
import { Theme } from '@/app/_components/ui/theme/theme';
import { DocsArticlesProps } from '@/content/user-guide/constants/getDocsArticles';
import { type DocsArticlesProps } from '@/content/user-guide/constants/getDocsArticles';
import { getCardPath } from '@/shared-utils/getCardPath';
const StyledContainer = styled(Link)`
@@ -8,7 +8,7 @@ import { ArticleContent } from '@/app/_components/ui/layout/articles/ArticleCont
import { Breadcrumbs } from '@/app/_components/ui/layout/Breadcrumbs';
import mq from '@/app/_components/ui/theme/mq';
import { Theme } from '@/app/_components/ui/theme/theme';
import { FileContent } from '@/app/_server-utils/get-posts';
import { type FileContent } from '@/app/_server-utils/get-posts';
import { getUriAndLabel } from '@/shared-utils/pathUtils';
const StyledContainer = styled('div')`
@@ -6,7 +6,7 @@ import DocsCard from '@/app/_components/docs/DocsCard';
import { Breadcrumbs } from '@/app/_components/ui/layout/Breadcrumbs';
import mq from '@/app/_components/ui/theme/mq';
import { Theme } from '@/app/_components/ui/theme/theme';
import { DocsArticlesProps } from '@/content/user-guide/constants/getDocsArticles';
import { type DocsArticlesProps } from '@/content/user-guide/constants/getDocsArticles';
import { constructSections } from '@/shared-utils/constructSections';
import { filterDocsIndex } from '@/shared-utils/filterDocsIndex';
import { getUriAndLabel } from '@/shared-utils/pathUtils';
@@ -1,5 +1,5 @@
'use client';
import { ReactNode } from 'react';
import { type ReactNode } from 'react';
import styled from '@emotion/styled';
import { usePathname } from 'next/navigation';
@@ -7,7 +7,7 @@ import DocsSidebar from '@/app/_components/docs/DocsSideBar';
import DocsTableContents from '@/app/_components/docs/TableContent';
import mq from '@/app/_components/ui/theme/mq';
import { Theme } from '@/app/_components/ui/theme/theme';
import { DocsArticlesProps } from '@/content/user-guide/constants/getDocsArticles';
import { type DocsArticlesProps } from '@/content/user-guide/constants/getDocsArticles';
import {
isPlaygroundPage,
shouldShowEmptySidebar,
@@ -7,7 +7,7 @@ import { AlgoliaDocSearch } from '@/app/_components/docs/AlgoliaDocSearch';
import DocsSidebarSection from '@/app/_components/docs/DocsSidebarSection';
import mq from '@/app/_components/ui/theme/mq';
import { Theme } from '@/app/_components/ui/theme/theme';
import { DocsArticlesProps } from '@/content/user-guide/constants/getDocsArticles';
import { type DocsArticlesProps } from '@/content/user-guide/constants/getDocsArticles';
import { getSectionIcon } from '@/shared-utils/getSectionIcons';
import '@docsearch/css';
@@ -7,7 +7,7 @@ import { usePathname, useRouter } from 'next/navigation';
import { IconChevronDown, IconChevronRight } from '@/app/_components/ui/icons';
import { Theme } from '@/app/_components/ui/theme/theme';
import { DocsArticlesProps } from '@/content/user-guide/constants/getDocsArticles';
import { type DocsArticlesProps } from '@/content/user-guide/constants/getDocsArticles';
import { groupArticlesByTopic } from '@/content/user-guide/constants/groupArticlesByTopic';
import { getCardPath } from '@/shared-utils/getCardPath';
@@ -2,9 +2,9 @@
import styled from '@emotion/styled';
import { Gabarito } from 'next/font/google';
import { JSXElementConstructor, ReactElement } from 'react';
import { type JSXElementConstructor, type ReactElement } from 'react';
import { ReleaseNote } from '@/app/(public)/releases/api/route';
import { type ReleaseNote } from '@/app/(public)/releases/api/route';
import { ArticleContent } from '@/app/_components/ui/layout/articles/ArticleContent';
import MotionContainer from '@/app/_components/ui/layout/LoaderAnimation';
import { Theme } from '@/app/_components/ui/theme/theme';
@@ -1,11 +1,11 @@
'use client';
import React, { useEffect, useRef, useState } from 'react';
import { ReleaseNote } from '@/app/(public)/releases/api/route';
import { type ReleaseNote } from '@/app/(public)/releases/api/route';
import { getGithubReleaseDateFromReleaseNote } from '@/app/(public)/releases/utils/get-github-release-date-from-release-note';
import { Line } from '@/app/_components/releases/Line';
import { Release } from '@/app/_components/releases/Release';
import { GithubReleases } from '@/database/model';
import { type GithubReleases } from '@/database/model';
interface ReleaseProps {
visibleReleasesNotes: ReleaseNote[];
@@ -1,7 +1,7 @@
'use client';
import styled from '@emotion/styled';
import { ReactNode } from 'react';
import { type ReactNode } from 'react';
import { Theme } from '@/app/_components/ui/theme/theme';
import { wrapHeadingsWithAnchor } from '@/shared-utils/wrapHeadingsWithAnchor';
@@ -1,4 +1,4 @@
import React, { ReactNode } from 'react';
import React, { type ReactNode } from 'react';
interface ArticleLinkProps {
href: string;
@@ -1,5 +1,5 @@
'use client';
import { ReactNode } from 'react';
import { type ReactNode } from 'react';
import styled from '@emotion/styled';
import { IconAlertCircle } from '@tabler/icons-react';
@@ -1,7 +1,7 @@
import fs from 'fs';
import { compileMDX } from 'next-mdx-remote/rsc';
import path from 'path';
import { ReactElement } from 'react';
import { type ReactElement } from 'react';
import gfm from 'remark-gfm';
import ArticleEditContent from '@/app/_components/ui/layout/articles/ArticleEditContent';
@@ -1,4 +1,4 @@
import { CSSProperties } from 'react';
import { type CSSProperties } from 'react';
const BACKGROUND_IMAGE_URL =
'https://framerusercontent.com/images/nqEmdwe7yDXNsOZovuxG5zvj2E.png';
@@ -4,7 +4,7 @@ import { getGithubReleaseDateFromReleaseNote } from '@/app/(public)/releases/uti
import { getReleases } from '@/app/(public)/releases/utils/get-releases';
import { getVisibleReleases } from '@/app/(public)/releases/utils/get-visible-releases';
import { findAll } from '@/database/database';
import { GithubReleases, githubReleasesModel } from '@/database/model';
import { type GithubReleases, githubReleasesModel } from '@/database/model';
export const dynamic = 'force-dynamic';
@@ -1,4 +1,4 @@
import { DocsArticlesProps } from '@/content/user-guide/constants/getDocsArticles';
import { type DocsArticlesProps } from '@/content/user-guide/constants/getDocsArticles';
export const groupArticlesByTopic = (
items: DocsArticlesProps[],
@@ -1,5 +1,5 @@
import { global } from '@apollo/client/utilities/globals';
import { drizzle, PostgresJsDatabase } from 'drizzle-orm/postgres-js';
import { drizzle, type PostgresJsDatabase } from 'drizzle-orm/postgres-js';
import { migrate as postgresMigrate } from 'drizzle-orm/postgres-js/migrator';
import postgres from 'postgres';
@@ -1,4 +1,4 @@
import { Config } from 'drizzle-kit';
import { type Config } from 'drizzle-kit';
import 'dotenv/config';
@@ -72,12 +72,8 @@
"name": "issueLabels_issueId_issues_id_fk",
"tableFrom": "issueLabels",
"tableTo": "issues",
"columnsFrom": [
"issueId"
],
"columnsTo": [
"id"
],
"columnsFrom": ["issueId"],
"columnsTo": ["id"],
"onDelete": "no action",
"onUpdate": "no action"
},
@@ -85,12 +81,8 @@
"name": "issueLabels_labelId_labels_id_fk",
"tableFrom": "issueLabels",
"tableTo": "labels",
"columnsFrom": [
"labelId"
],
"columnsTo": [
"id"
],
"columnsFrom": ["labelId"],
"columnsTo": ["id"],
"onDelete": "no action",
"onUpdate": "no action"
}
@@ -163,12 +155,8 @@
"name": "issues_authorId_users_id_fk",
"tableFrom": "issues",
"tableTo": "users",
"columnsFrom": [
"authorId"
],
"columnsTo": [
"id"
],
"columnsFrom": ["authorId"],
"columnsTo": ["id"],
"onDelete": "no action",
"onUpdate": "no action"
}
@@ -239,12 +227,8 @@
"name": "pullRequestLabels_pullRequestExternalId_pullRequests_id_fk",
"tableFrom": "pullRequestLabels",
"tableTo": "pullRequests",
"columnsFrom": [
"pullRequestExternalId"
],
"columnsTo": [
"id"
],
"columnsFrom": ["pullRequestExternalId"],
"columnsTo": ["id"],
"onDelete": "no action",
"onUpdate": "no action"
},
@@ -252,12 +236,8 @@
"name": "pullRequestLabels_labelId_labels_id_fk",
"tableFrom": "pullRequestLabels",
"tableTo": "labels",
"columnsFrom": [
"labelId"
],
"columnsTo": [
"id"
],
"columnsFrom": ["labelId"],
"columnsTo": ["id"],
"onDelete": "no action",
"onUpdate": "no action"
}
@@ -330,12 +310,8 @@
"name": "pullRequests_authorId_users_id_fk",
"tableFrom": "pullRequests",
"tableTo": "users",
"columnsFrom": [
"authorId"
],
"columnsTo": [
"id"
],
"columnsFrom": ["authorId"],
"columnsTo": ["id"],
"onDelete": "no action",
"onUpdate": "no action"
}
@@ -385,4 +361,4 @@
"schemas": {},
"tables": {}
}
}
}
@@ -24,4 +24,4 @@
"breakpoints": true
}
]
}
}
@@ -1,6 +1,6 @@
import { graphql } from '@octokit/graphql';
import { type graphql } from '@octokit/graphql';
import { Repository } from '@/github/contributors/types';
import { type Repository } from '@/github/contributors/types';
export async function fetchAssignableUsers(
query: typeof graphql,
@@ -1,9 +1,9 @@
import { graphql } from '@octokit/graphql';
import { type graphql } from '@octokit/graphql';
import {
IssueNode,
PullRequestNode,
Repository,
type IssueNode,
type PullRequestNode,
type Repository,
} from '@/github/contributors/types';
export async function fetchIssuesPRs(
@@ -5,7 +5,7 @@ import {
labelModel,
userModel,
} from '@/database/model';
import { IssueNode } from '@/github/contributors/types';
import { type IssueNode } from '@/github/contributors/types';
export async function saveIssuesToDB(
issues: Array<IssueNode>,
@@ -5,7 +5,7 @@ import {
pullRequestModel,
userModel,
} from '@/database/model';
import { PullRequestNode } from '@/github/contributors/types';
import { type PullRequestNode } from '@/github/contributors/types';
export async function savePRsToDB(
prs: Array<PullRequestNode>,
@@ -1,10 +1,10 @@
import { graphql } from '@octokit/graphql';
import { type graphql } from '@octokit/graphql';
import { getLatestUpdate } from '@/github/contributors/get-latest-update';
import {
IssueNode,
PullRequestNode,
SearchIssuesPRsQuery,
type IssueNode,
type PullRequestNode,
type SearchIssuesPRsQuery,
} from '@/github/contributors/types';
export async function searchIssuesPRs(
@@ -4,7 +4,10 @@ import { fetchAssignableUsers } from '@/github/contributors/fetch-assignable-use
import { saveIssuesToDB } from '@/github/contributors/save-issues-to-db';
import { savePRsToDB } from '@/github/contributors/save-prs-to-db';
import { searchIssuesPRs } from '@/github/contributors/search-issues-prs';
import { IssueNode, PullRequestNode } from '@/github/contributors/types';
import {
type IssueNode,
type PullRequestNode,
} from '@/github/contributors/types';
import { fetchAndSaveGithubReleases } from '@/github/github-releases/fetch-and-save-github-releases';
import { fetchAndSaveGithubStars } from '@/github/github-stars/fetch-and-save-github-stars';
@@ -5,7 +5,10 @@ import { fetchAssignableUsers } from '@/github/contributors/fetch-assignable-use
import { fetchIssuesPRs } from '@/github/contributors/fetch-issues-prs';
import { saveIssuesToDB } from '@/github/contributors/save-issues-to-db';
import { savePRsToDB } from '@/github/contributors/save-prs-to-db';
import { IssueNode, PullRequestNode } from '@/github/contributors/types';
import {
type IssueNode,
type PullRequestNode,
} from '@/github/contributors/types';
import { fetchAndSaveGithubReleases } from '@/github/github-releases/fetch-and-save-github-releases';
import { fetchAndSaveGithubStars } from '@/github/github-stars/fetch-and-save-github-stars';
@@ -1,8 +1,8 @@
import { graphql } from '@octokit/graphql';
import { type graphql } from '@octokit/graphql';
import { insertMany } from '@/database/database';
import { githubReleasesModel } from '@/database/model';
import { Repository } from '@/github/contributors/types';
import { type Repository } from '@/github/contributors/types';
export const fetchAndSaveGithubReleases = async (
query: typeof graphql,
@@ -1,8 +1,8 @@
import { graphql } from '@octokit/graphql';
import { type graphql } from '@octokit/graphql';
import { insertMany } from '@/database/database';
import { githubStarsModel } from '@/database/model';
import { Repository } from '@/github/contributors/types';
import { type Repository } from '@/github/contributors/types';
export const fetchAndSaveGithubStars = async (
query: typeof graphql,
@@ -1,4 +1,4 @@
import { DocsArticlesProps } from '@/content/user-guide/constants/getDocsArticles';
import { type DocsArticlesProps } from '@/content/user-guide/constants/getDocsArticles';
export const constructSections = (
docsArticleCards: DocsArticlesProps[],
@@ -1,4 +1,4 @@
import { DocsArticlesProps } from '@/content/user-guide/constants/getDocsArticles';
import { type DocsArticlesProps } from '@/content/user-guide/constants/getDocsArticles';
export const filterDocsIndex = (
docsIndex: DocsArticlesProps[],
@@ -1,4 +1,4 @@
import { DocsArticlesProps } from '@/content/user-guide/constants/getDocsArticles';
import { type DocsArticlesProps } from '@/content/user-guide/constants/getDocsArticles';
export const getCardPath = (
card: DocsArticlesProps,
@@ -2,8 +2,8 @@ import {
Children,
cloneElement,
isValidElement,
ReactElement,
ReactNode,
type ReactElement,
type ReactNode,
} from 'react';
export const wrapHeadingsWithAnchor = (children: ReactNode): ReactNode => {
+3538 -554
View File
File diff suppressed because it is too large Load Diff