Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion apps/public-docsite-resources/just.config.ts
Original file line number Diff line number Diff line change
Expand Up @@ -6,5 +6,5 @@ preset();
task('generate-json', () => generatePageJsonFiles(require('./config/api-docs')));

// copied from scripts/just.config.js with addition of generate-json
task('build', series('clean', 'copy', 'sass', 'generate-json', 'ts')).cached!();
task('build', series('clean', 'copy', 'sass', 'generate-json', 'ts', 'lint-imports:all')).cached!();
task('dev', series('copy', 'sass', 'generate-json', 'webpack-dev-server'));
2 changes: 1 addition & 1 deletion apps/public-docsite-resources/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -19,7 +19,7 @@
"scripts": {
"build": "just-scripts build",
"bundle": "just-scripts bundle",
"lint": "just-scripts lint",
"lint": "eslint --ext .js,.ts,.tsx ./src",
"just": "just-scripts",
"clean": "just-scripts clean",
"code-style": "just-scripts code-style",
Expand Down
2 changes: 1 addition & 1 deletion apps/react-18-tests-v8/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@
"format:check": "yarn format -c",
"e2e": "cypress run --component",
"e2e:local": "cypress open --component",
"lint": "eslint --ext .js,.ts.,.tsx ./src",
"lint": "eslint --ext .js,.ts,.tsx ./src",
"test": "jest --passWithNoTests",
"start": "webpack-dev-server --mode=development"
},
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
{
"type": "none",
"comment": "chore: re-enable AMD import checks for only mixed and v8 packages",
"packageName": "@fluentui/monaco-editor",
"email": "[email protected]",
"dependentChangeType": "none"
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
{
"type": "none",
"comment": "chore: re-enable AMD import checks for only mixed and v8 packages",
"packageName": "@fluentui/react-monaco-editor",
"email": "[email protected]",
"dependentChangeType": "none"
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
{
"type": "none",
"comment": "chore: re-enable AMD import checks for only mixed and v8 packages",
"packageName": "@fluentui/react-portal-compat-context",
"email": "[email protected]",
"dependentChangeType": "none"
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
{
"type": "none",
"comment": "chore: re-enable AMD import checks for only mixed and v8 packages",
"packageName": "@fluentui/react-portal-compat",
"email": "[email protected]",
"dependentChangeType": "none"
}
2 changes: 1 addition & 1 deletion lage.config.js
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@ module.exports = {
'build:info': [],
bundle: ['build'],
'bundle-size': ['build'],
lint: ['build'],
lint: [],
clean: [],
test: ['build'],
'type-check': ['build'],
Expand Down
5 changes: 5 additions & 0 deletions packages/monaco-editor/config/pre-copy.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
{
"copyTo": {
"esm": ["monaco-editor/esm/"]
}
}
32 changes: 4 additions & 28 deletions packages/monaco-editor/just.config.ts
Original file line number Diff line number Diff line change
@@ -1,39 +1,15 @@
import {
basicPreset,
task,
series,
parallel,
copyInstructions,
copyInstructionsTask,
cleanTask,
ts,
postprocess,
eslint,
} from '@fluentui/scripts-tasks';
import { preset, task, series, parallel, cleanTask, postprocessTask } from '@fluentui/scripts-tasks';

import * as path from 'path';
import { transformCssTask } from './tasks/transformCssTask';

const monacoEditorPath = path.dirname(require.resolve('monaco-editor/package.json'));
const monacoSrcPath = path.join(monacoEditorPath, 'esm');
const monacoDestPath = path.join(__dirname, 'esm');

basicPreset();
preset();

task('clean', cleanTask({ paths: ['esm', 'lib', 'lib-commonjs'].map(p => path.join(process.cwd(), p)) }));
task(
'copy',
copyInstructionsTask({
copyInstructions: copyInstructions.copyFilesInDirectory(monacoSrcPath, monacoDestPath),
}),
);
task('transform-css', transformCssTask);
task('ts:esm', ts.esm);
task('ts:commonjs', ts.commonjs);
task('ts:postprocess', postprocess.postprocessTask([...postprocess.defaultLibPaths, 'esm/**/*.d.ts']));
task('ts:postprocess', postprocessTask([...postprocessTask.defaultLibPaths, 'esm/**/*.d.ts']));
task('ts', series(parallel('ts:esm', 'ts:commonjs'), 'ts:postprocess'));
task('eslint', eslint);

task('build', series('clean', 'copy', 'transform-css', 'ts')).cached!();
task('build', series('clean', 'copy', 'transform-css', 'ts', 'lint-imports:all')).cached!();

task('lint', 'eslint');
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,7 @@
"clean": "just-scripts clean",
"code-style": "just-scripts code-style",
"just": "just-scripts",
"lint": "just-scripts lint && just-scripts lint-imports",
"lint": "just-scripts lint",
"test": "jest --passWithNoTests",
"type-check": "tsc -b tsconfig.json",
"generate-api": "tsc -p ./tsconfig.lib.json --emitDeclarationOnly && just-scripts api-extractor"
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -19,7 +19,7 @@
"e2e": "cypress run --component",
"e2e:local": "cypress open --component",
"just": "just-scripts",
"lint": "just-scripts lint && just-scripts lint-imports",
"lint": "just-scripts lint",
"test": "jest --passWithNoTests",
"type-check": "tsc -b tsconfig.json",
"generate-api": "tsc -p ./tsconfig.lib.json --emitDeclarationOnly && just-scripts api-extractor"
Expand Down
2 changes: 1 addition & 1 deletion packages/react-monaco-editor/just.config.ts
Original file line number Diff line number Diff line change
Expand Up @@ -8,4 +8,4 @@ task('copy-types', copyTypes);
// These have to be manually re-defined because we need to chain copy-types after copy, and
// chain() doesn't work if the task chained against is in the middle of the series...
task('dev', series('clean', 'copy', 'copy-types', 'sass', 'webpack-dev-server'));
task('build', series('clean', 'copy', 'copy-types', 'ts')).cached!();
task('build', series('clean', 'copy', 'copy-types', 'ts', 'lint-imports:all')).cached!();
2 changes: 1 addition & 1 deletion scripts/monorepo/src/index.d.ts
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@ export { default as getDependencies } from './getDependencies';
export { default as findGitRoot } from './findGitRoot';
export { default as findRepoDeps } from './findRepoDeps';
export { default as getAllPackageInfo } from './getAllPackageInfo';
export { default as isConvergedPackage } from './isConvergedPackage';
export { isConvergedPackage, shipsAMD } from './isConvergedPackage';
export { getAffectedPackages } from './getAffectedPackages';
export { getLernaAliases } from './get-lerna-aliases';
export { getDefaultEnvironmentVars } from './getDefaultEnvironmentVars';
Expand Down
2 changes: 1 addition & 1 deletion scripts/monorepo/src/index.js
Original file line number Diff line number Diff line change
Expand Up @@ -3,8 +3,8 @@ module.exports = {
findGitRoot: require('./findGitRoot'),
findRepoDeps: require('./findRepoDeps'),
getAllPackageInfo: require('./getAllPackageInfo'),
isConvergedPackage: require('./isConvergedPackage'),
eslintConstants: require('./eslint-constants'),
...require('./isConvergedPackage'),
...require('./getAffectedPackages'),
...require('./getNthCommit'),
...require('./getDefaultEnvironmentVars'),
Expand Down
47 changes: 45 additions & 2 deletions scripts/monorepo/src/isConvergedPackage.js
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
const semver = require('semver');
const { readConfig } = require('@fluentui/scripts-utils');
const semver = require('semver');

const { getProjectMetadata } = require('./utils');

/**
Expand Down Expand Up @@ -38,6 +39,47 @@ function isConvergedPackage(options = {}) {
return semver.major(packageJson.version) >= 9 || isNightlyVersion(packageJson.version) || hasVNextTag;
}

/**
* @param {Object} [options]
* @param {PathOrPackageJson} [options.packagePathOrJson] - optional different package path to run in OR previously-read package.json
* (defaults to reading package.json from `process.cwd()`)
* @returns
*/
function shipsAMD(options = {}) {
const { packagePathOrJson } = options;
const packageJson =
!packagePathOrJson || typeof packagePathOrJson === 'string'
? readConfig('package.json', /** @type {string|undefined} */ (packagePathOrJson))
: packagePathOrJson;

if (!packageJson) {
throw new Error(`package.json doesn't exist`);
}

const metadata = getProjectMetadata({ name: packageJson.name });

if (metadata.projectType !== 'library') {
return false;
}

const tags = new Set(metadata.tags ?? []);
const isV8 = tags.has('v8');
const isV9 = tags.has('vNext');
const needsAMD = tags.has('ships-amd');
const isMixedProject = isV9 && isV8;

if (needsAMD) {
return true;
}
if (isMixedProject) {
return true;
}
if (isV9) {
return false;
}
return true;
}

/**
* Determines if a version is the 0.0.0 nightly version used by converged packages
* @param {string} version
Expand All @@ -46,4 +88,5 @@ function isNightlyVersion(version) {
return semver.major(version) === 0 && semver.minor(version) === 0 && semver.patch(version) === 0;
}

module.exports = isConvergedPackage;
exports.isConvergedPackage = isConvergedPackage;
exports.shipsAMD = shipsAMD;
93 changes: 88 additions & 5 deletions scripts/tasks/src/index.ts
Original file line number Diff line number Diff line change
@@ -1,6 +1,89 @@
export * from 'just-scripts';
export { preset, basicPreset } from './presets';
export { ts } from './ts';
export { eslint } from './eslint';
export {
CopyConfig,
CopyInstruction,
Logger,
TsCheckerOptions,
TsLoaderOptions,
addResolvePath,
argv,
basicWebpackConfig,
basicWebpackServeConfig,
chain,
// eslint-disable-next-line deprecation/deprecation
cleanTask,
clearCache,
condition,
copyInstructions,
copyInstructionsTask,
// eslint-disable-next-line deprecation/deprecation
copyTask,
createStylesOverlay,
createTarTask,
defaultCleanPaths,
displayBailoutOverlay,
esbuildTask,
eslintTask,
extractTarTask,
fileOverlay,
fixApiFileNewlines,
htmlOverlay,
jestTask,
logger,
mark,
nodeExecTask,
option,
parallel,
prettierCheckTask,
prettierTask,
resetResolvePaths,
// eslint-disable-next-line deprecation/deprecation
resolve,
// eslint-disable-next-line deprecation/deprecation
resolveCwd,
// eslint-disable-next-line deprecation/deprecation
sassTask,
series,
spawn,
stylesOverlay,
task,
taskPresets,
tsOverlay,
tscTask,
tscWatchTask,
tslintTask,
undertaker,
watch,
webpackCliInitTask,
webpackCliTask,
webpackConfig,
webpackDevServerTask,
webpackMerge,
webpackOverlays,
webpackServeConfig,
webpackTask,
} from 'just-scripts';
export type {
ApiExtractorOptions,
CleanTaskOptions,
CopyTaskOptions,
CreateOptions,
EntryHeader,
EsLintTaskOptions,
EsbuildBuildOptions,
EsbuildTransformOptions,
ExtractOptions,
JestTaskOptions,
NodeExecTaskOptions,
SassTaskOptions,
Task,
TaskContext,
TaskFunction,
TsLintTaskOptions,
TscTaskOptions,
WebpackCliTaskOptions,
WebpackDevServerTaskOptions,
WebpackTaskOptions,
} from 'just-scripts';
export { preset } from './presets';
export { expandSourcePath } from './copy';
export * as postprocess from './postprocess';
export { postprocessTask } from './postprocess';
Loading