-
Notifications
You must be signed in to change notification settings - Fork 0
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[Lexical][UI Gallery] Fix meta lexical website intern build errors #8
base: main
Are you sure you want to change the base?
Changes from all commits
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
Original file line number | Diff line number | Diff line change | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
|
@@ -13,7 +13,9 @@ | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||
const {github: lightCodeTheme, dracula: darkCodeTheme} = | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
require('prism-react-renderer').themes; | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
const slugifyPlugin = require('./src/plugins/lexical-remark-slugify-anchors'); | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
const {packagesManager} = require('../../scripts/shared/packagesManager'); | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
const {packagesManager} = process.env.FB_INTERNAL | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
? {} | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
: require('../../scripts/shared/packagesManager'); | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Comment on lines
+16
to
+18
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. The conditional import of
Comment on lines
+16
to
+18
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. 🛠️ Refactor suggestion Refactor to use a constant for To improve readability and maintainability, consider defining a constant to store the value of Define the constant at the beginning of the file: +const IS_FB_INTERNAL = Boolean(process.env.FB_INTERNAL); Then update the conditional statements: -const {packagesManager} = process.env.FB_INTERNAL
+const {packagesManager} = IS_FB_INTERNAL
? {}
: require('../../scripts/shared/packagesManager'); - entryPoints: process.env.FB_INTERNAL
+ entryPoints: IS_FB_INTERNAL
? []
: packagesManager
.getPublicPackages()
.flatMap((pkg) =>
pkg
.getExportedNpmModuleEntries()
.map((entry) => [
path.relative(
__dirname,
pkg.resolve('src', entry.sourceFileName),
),
]),
), - process.env.FB_INTERNAL
+ IS_FB_INTERNAL
? null
: [
'./plugins/package-docs',
/** @type {import('./plugins/package-docs').PackageDocsPluginOptions} */
{
baseDir: path.resolve(__dirname, '..'),
editUrl: `${GITHUB_REPO_URL}/tree/main/packages/`,
packageFrontMatter: {
lexical: [
'sidebar_position: 1',
'sidebar_label: lexical (core)',
].join('\n'),
},
targetDir: path.resolve(__dirname, 'docs/packages'),
},
], - process.env.FB_INTERNAL
+ IS_FB_INTERNAL
? {
href: 'https://lexical.dev/docs/api/',
label: 'API',
position: 'left',
}
: {
label: 'API',
position: 'left',
sidebarId: 'api',
type: 'docSidebar',
}, Also applies to: 175-188, 243-259, 390-401 |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
const path = require('node:path'); | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
const TITLE = 'Lexical'; | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
@@ -170,15 +172,20 @@ const sidebarItemsGenerator = async ({ | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||
/** @type {Partial<import('docusaurus-plugin-typedoc/dist/types').PluginOptions>} */ | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
const docusaurusPluginTypedocConfig = { | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
...sourceLinkOptions(), | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
entryPoints: packagesManager | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
.getPublicPackages() | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
.flatMap((pkg) => | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
pkg | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
.getExportedNpmModuleEntries() | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
.map((entry) => [ | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
path.relative(__dirname, pkg.resolve('src', entry.sourceFileName)), | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
]), | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
), | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
entryPoints: process.env.FB_INTERNAL | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
? [] | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
: packagesManager | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
.getPublicPackages() | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
.flatMap((pkg) => | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
pkg | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
.getExportedNpmModuleEntries() | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
.map((entry) => [ | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
path.relative( | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
__dirname, | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
pkg.resolve('src', entry.sourceFileName), | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
), | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
]), | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
), | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Comment on lines
+175
to
+188
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Ensure error handling for undefined environment variables. The Consider using a default value with the nullish coalescing operator ( entryPoints: (process.env.FB_INTERNAL ?? false)
? []
: packagesManager
.getPublicPackages()
.flatMap((pkg) =>
pkg
.getExportedNpmModuleEntries()
.map((entry) => [
path.relative(
__dirname,
pkg.resolve('src', entry.sourceFileName),
),
]),
), Committable suggestion
Suggested change
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
excludeInternal: true, | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
plugin: [ | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
'./src/plugins/lexical-typedoc-plugin-no-inherit', | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
@@ -233,21 +240,23 @@ const config = { | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||
onBrokenMarkdownLinks: 'throw', | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
organizationName: 'facebook', | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
plugins: [ | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
[ | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
'./plugins/package-docs', | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
/** @type {import('./plugins/package-docs').PackageDocsPluginOptions} */ | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
{ | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
baseDir: path.resolve(__dirname, '..'), | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
editUrl: `${GITHUB_REPO_URL}/tree/main/packages/`, | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
packageFrontMatter: { | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
lexical: [ | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
'sidebar_position: 1', | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
'sidebar_label: lexical (core)', | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
].join('\n'), | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
}, | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
targetDir: path.resolve(__dirname, 'docs/packages'), | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
}, | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
], | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
process.env.FB_INTERNAL | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
? null | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
: [ | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
'./plugins/package-docs', | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
/** @type {import('./plugins/package-docs').PackageDocsPluginOptions} */ | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
{ | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
baseDir: path.resolve(__dirname, '..'), | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
editUrl: `${GITHUB_REPO_URL}/tree/main/packages/`, | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
packageFrontMatter: { | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
lexical: [ | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
'sidebar_position: 1', | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
'sidebar_label: lexical (core)', | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
].join('\n'), | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
}, | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
targetDir: path.resolve(__dirname, 'docs/packages'), | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
}, | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
], | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Comment on lines
+243
to
+259
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. The code is using process.env.FB_INTERNAL to conditionally include or exclude certain plugins and configurations based on whether the build is internal or not. However, it does not handle the case where FB_INTERNAL is undefined. This could lead to runtime errors if that environment variable is not set. To fix this, provide a default value using the nullish coalescing operator (??) to default undefined values to false. For example, change
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
'./plugins/webpack-buffer', | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
['docusaurus-plugin-typedoc', docusaurusPluginTypedocConfig], | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
async function tailwindcss() { | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
@@ -260,7 +269,7 @@ const config = { | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||
name: 'docusaurus-tailwindcss', | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
}; | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
}, | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
], | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
].filter((plugin) => plugin != null), | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
presets: [ | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
[ | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
@@ -274,6 +283,7 @@ const config = { | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||
docs: { | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
beforeDefaultRemarkPlugins: [slugifyPlugin], | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
editUrl: `${GITHUB_REPO_URL}/tree/main/packages/lexical-website/`, | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
exclude: ['/error'], | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
path: 'docs', | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
sidebarItemsGenerator, | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
sidebarPath: require.resolve('./sidebars.js'), | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
@@ -377,12 +387,18 @@ const config = { | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||
sidebarId: 'docs', | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
type: 'docSidebar', | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
}, | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
{ | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
label: 'API', | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
position: 'left', | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
sidebarId: 'api', | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
type: 'docSidebar', | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
}, | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
process.env.FB_INTERNAL | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
? { | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
href: 'https://lexical.dev/docs/api/', | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
label: 'API', | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
position: 'left', | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
} | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
: { | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
label: 'API', | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
position: 'left', | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
sidebarId: 'api', | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
type: 'docSidebar', | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
}, | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Comment on lines
+390
to
+401
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Ensure error handling for undefined environment variables. The API link configuration should handle cases where Consider using a default value with the nullish coalescing operator ( process.env.FB_INTERNAL ?? false
? {
href: 'https://lexical.dev/docs/api/',
label: 'API',
position: 'left',
}
: {
label: 'API',
position: 'left',
sidebarId: 'api',
type: 'docSidebar',
}, Committable suggestion
Suggested change
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
{label: 'Community', position: 'left', to: '/community'}, | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
{ | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I noticed that you're using environment variables to conditionally import packages and configure the application. This is a good practice for separating configuration from code, but it's important to ensure that these environment variables are correctly set in all environments where the application will be run. I recommend adding error handling to provide clear error messages if the required environment variables are not set. This will make it easier to diagnose and fix any issues related to environment configuration.