create project

This commit is contained in:
ismailsosic
2022-12-27 12:05:56 +01:00
parent 2a33a2d3de
commit cd2143287c
16035 changed files with 2489703 additions and 0 deletions

View File

@@ -0,0 +1,87 @@
import { TelemetryPlugin } from '../../build/webpack/plugins/telemetry-plugin';
import type { SWC_TARGET_TRIPLE } from '../../build/webpack/plugins/telemetry-plugin';
declare type EventTypeCheckCompleted = {
durationInSeconds: number;
typescriptVersion: string | null;
inputFilesCount?: number;
totalFilesCount?: number;
incremental?: boolean;
};
export declare function eventTypeCheckCompleted(event: EventTypeCheckCompleted): {
eventName: string;
payload: EventTypeCheckCompleted;
};
export declare type EventLintCheckCompleted = {
durationInSeconds: number;
eslintVersion: string | null;
lintedFilesCount?: number;
lintFix?: boolean;
buildLint?: boolean;
nextEslintPluginVersion?: string | null;
nextEslintPluginErrorsCount?: number;
nextEslintPluginWarningsCount?: number;
nextRulesEnabled: {
[ruleName: `@next/next/${string}`]: 'off' | 'warn' | 'error';
};
};
export declare function eventLintCheckCompleted(event: EventLintCheckCompleted): {
eventName: string;
payload: EventLintCheckCompleted;
};
declare type EventBuildCompleted = {
durationInSeconds: number;
totalPageCount: number;
hasDunderPages: boolean;
hasTestPages: boolean;
totalAppPagesCount?: number;
};
export declare function eventBuildCompleted(pagePaths: string[], event: Omit<EventBuildCompleted, 'totalPageCount' | 'hasDunderPages' | 'hasTestPages'>): {
eventName: string;
payload: EventBuildCompleted;
};
declare type EventBuildOptimized = {
durationInSeconds: number;
totalPageCount: number;
staticPageCount: number;
staticPropsPageCount: number;
serverPropsPageCount: number;
ssrPageCount: number;
hasDunderPages: boolean;
hasTestPages: boolean;
hasStatic404: boolean;
hasReportWebVitals: boolean;
headersCount: number;
rewritesCount: number;
redirectsCount: number;
headersWithHasCount: number;
rewritesWithHasCount: number;
redirectsWithHasCount: number;
middlewareCount: number;
totalAppPagesCount?: number;
staticAppPagesCount?: number;
serverAppPagesCount?: number;
edgeRuntimeAppCount?: number;
edgeRuntimePagesCount?: number;
};
export declare function eventBuildOptimize(pagePaths: string[], event: Omit<EventBuildOptimized, 'totalPageCount' | 'hasDunderPages' | 'hasTestPages'>): {
eventName: string;
payload: EventBuildOptimized;
};
export declare const EVENT_BUILD_FEATURE_USAGE = "NEXT_BUILD_FEATURE_USAGE";
export declare type EventBuildFeatureUsage = {
featureName: 'next/image' | 'next/legacy/image' | 'next/future/image' | 'next/script' | 'next/dynamic' | '@next/font/google' | '@next/font/local' | 'experimental/optimizeCss' | 'experimental/nextScriptWorkers' | 'optimizeFonts' | 'swcLoader' | 'swcMinify' | 'swcRelay' | 'swcStyledComponents' | 'swcReactRemoveProperties' | 'swcExperimentalDecorators' | 'swcRemoveConsole' | 'swcImportSource' | 'swcEmotion' | `swc/target/${SWC_TARGET_TRIPLE}` | 'turbotrace' | 'build-lint' | 'vercelImageGeneration' | 'transpilePackages' | 'skipMiddlewareUrlNormalize' | 'skipTrailingSlashRedirect' | 'modularizeImports';
invocationCount: number;
};
export declare function eventBuildFeatureUsage(telemetryPlugin: TelemetryPlugin): Array<{
eventName: string;
payload: EventBuildFeatureUsage;
}>;
export declare const EVENT_NAME_PACKAGE_USED_IN_GET_SERVER_SIDE_PROPS = "NEXT_PACKAGE_USED_IN_GET_SERVER_SIDE_PROPS";
export declare type EventPackageUsedInGetServerSideProps = {
package: string;
};
export declare function eventPackageUsedInGetServerSideProps(telemetryPlugin: TelemetryPlugin): Array<{
eventName: string;
payload: EventPackageUsedInGetServerSideProps;
}>;
export {};

View File

@@ -0,0 +1,81 @@
"use strict";
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.eventTypeCheckCompleted = eventTypeCheckCompleted;
exports.eventLintCheckCompleted = eventLintCheckCompleted;
exports.eventBuildCompleted = eventBuildCompleted;
exports.eventBuildOptimize = eventBuildOptimize;
exports.eventBuildFeatureUsage = eventBuildFeatureUsage;
exports.eventPackageUsedInGetServerSideProps = eventPackageUsedInGetServerSideProps;
exports.EVENT_NAME_PACKAGE_USED_IN_GET_SERVER_SIDE_PROPS = exports.EVENT_BUILD_FEATURE_USAGE = void 0;
const REGEXP_DIRECTORY_DUNDER = /[\\/]__[^\\/]+(?<![\\/]__(?:tests|mocks))__[\\/]/i;
const REGEXP_DIRECTORY_TESTS = /[\\/]__(tests|mocks)__[\\/]/i;
const REGEXP_FILE_TEST = /\.(?:spec|test)\.[^.]+$/i;
const EVENT_TYPE_CHECK_COMPLETED = "NEXT_TYPE_CHECK_COMPLETED";
function eventTypeCheckCompleted(event) {
return {
eventName: EVENT_TYPE_CHECK_COMPLETED,
payload: event
};
}
const EVENT_LINT_CHECK_COMPLETED = "NEXT_LINT_CHECK_COMPLETED";
function eventLintCheckCompleted(event) {
return {
eventName: EVENT_LINT_CHECK_COMPLETED,
payload: event
};
}
const EVENT_BUILD_COMPLETED = "NEXT_BUILD_COMPLETED";
function eventBuildCompleted(pagePaths, event) {
return {
eventName: EVENT_BUILD_COMPLETED,
payload: {
...event,
totalPageCount: pagePaths.length,
hasDunderPages: pagePaths.some((path)=>REGEXP_DIRECTORY_DUNDER.test(path)),
hasTestPages: pagePaths.some((path)=>REGEXP_DIRECTORY_TESTS.test(path) || REGEXP_FILE_TEST.test(path)),
totalAppPagesCount: event.totalAppPagesCount
}
};
}
const EVENT_BUILD_OPTIMIZED = "NEXT_BUILD_OPTIMIZED";
function eventBuildOptimize(pagePaths, event) {
return {
eventName: EVENT_BUILD_OPTIMIZED,
payload: {
...event,
totalPageCount: pagePaths.length,
hasDunderPages: pagePaths.some((path)=>REGEXP_DIRECTORY_DUNDER.test(path)),
hasTestPages: pagePaths.some((path)=>REGEXP_DIRECTORY_TESTS.test(path) || REGEXP_FILE_TEST.test(path)),
totalAppPagesCount: event.totalAppPagesCount,
staticAppPagesCount: event.staticAppPagesCount,
serverAppPagesCount: event.serverAppPagesCount,
edgeRuntimeAppCount: event.edgeRuntimeAppCount,
edgeRuntimePagesCount: event.edgeRuntimePagesCount
}
};
}
const EVENT_BUILD_FEATURE_USAGE = "NEXT_BUILD_FEATURE_USAGE";
exports.EVENT_BUILD_FEATURE_USAGE = EVENT_BUILD_FEATURE_USAGE;
function eventBuildFeatureUsage(telemetryPlugin) {
return telemetryPlugin.usages().map(({ featureName , invocationCount })=>({
eventName: EVENT_BUILD_FEATURE_USAGE,
payload: {
featureName,
invocationCount
}
}));
}
const EVENT_NAME_PACKAGE_USED_IN_GET_SERVER_SIDE_PROPS = "NEXT_PACKAGE_USED_IN_GET_SERVER_SIDE_PROPS";
exports.EVENT_NAME_PACKAGE_USED_IN_GET_SERVER_SIDE_PROPS = EVENT_NAME_PACKAGE_USED_IN_GET_SERVER_SIDE_PROPS;
function eventPackageUsedInGetServerSideProps(telemetryPlugin) {
return telemetryPlugin.packagesUsedInServerSideProps().map((packageName)=>({
eventName: EVENT_NAME_PACKAGE_USED_IN_GET_SERVER_SIDE_PROPS,
payload: {
package: packageName
}
}));
}
//# sourceMappingURL=build.js.map

View File

@@ -0,0 +1 @@
{"version":3,"sources":["../../../telemetry/events/build.ts"],"names":["eventTypeCheckCompleted","eventLintCheckCompleted","eventBuildCompleted","eventBuildOptimize","eventBuildFeatureUsage","eventPackageUsedInGetServerSideProps","REGEXP_DIRECTORY_DUNDER","REGEXP_DIRECTORY_TESTS","REGEXP_FILE_TEST","EVENT_TYPE_CHECK_COMPLETED","event","eventName","payload","EVENT_LINT_CHECK_COMPLETED","EVENT_BUILD_COMPLETED","pagePaths","totalPageCount","length","hasDunderPages","some","path","test","hasTestPages","totalAppPagesCount","EVENT_BUILD_OPTIMIZED","staticAppPagesCount","serverAppPagesCount","edgeRuntimeAppCount","edgeRuntimePagesCount","EVENT_BUILD_FEATURE_USAGE","telemetryPlugin","usages","map","featureName","invocationCount","EVENT_NAME_PACKAGE_USED_IN_GET_SERVER_SIDE_PROPS","packagesUsedInServerSideProps","packageName","package"],"mappings":"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"}

View File

@@ -0,0 +1,3 @@
export * from './version';
export * from './build';
export * from './plugins';

View File

@@ -0,0 +1,82 @@
"use strict";
Object.defineProperty(exports, "__esModule", {
value: true
});
var _exportNames = {};
var _version = _interopRequireWildcard(require("./version"));
Object.keys(_version).forEach(function(key) {
if (key === "default" || key === "__esModule") return;
if (Object.prototype.hasOwnProperty.call(_exportNames, key)) return;
if (key in exports && exports[key] === _version[key]) return;
Object.defineProperty(exports, key, {
enumerable: true,
get: function() {
return _version[key];
}
});
});
var _build = _interopRequireWildcard(require("./build"));
Object.keys(_build).forEach(function(key) {
if (key === "default" || key === "__esModule") return;
if (Object.prototype.hasOwnProperty.call(_exportNames, key)) return;
if (key in exports && exports[key] === _build[key]) return;
Object.defineProperty(exports, key, {
enumerable: true,
get: function() {
return _build[key];
}
});
});
var _plugins = _interopRequireWildcard(require("./plugins"));
Object.keys(_plugins).forEach(function(key) {
if (key === "default" || key === "__esModule") return;
if (Object.prototype.hasOwnProperty.call(_exportNames, key)) return;
if (key in exports && exports[key] === _plugins[key]) return;
Object.defineProperty(exports, key, {
enumerable: true,
get: function() {
return _plugins[key];
}
});
});
function _getRequireWildcardCache() {
if (typeof WeakMap !== "function") return null;
var cache = new WeakMap();
_getRequireWildcardCache = function() {
return cache;
};
return cache;
}
function _interopRequireWildcard(obj) {
if (obj && obj.__esModule) {
return obj;
}
if (obj === null || typeof obj !== "object" && typeof obj !== "function") {
return {
default: obj
};
}
var cache = _getRequireWildcardCache();
if (cache && cache.has(obj)) {
return cache.get(obj);
}
var newObj = {};
var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor;
for(var key in obj){
if (Object.prototype.hasOwnProperty.call(obj, key)) {
var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null;
if (desc && (desc.get || desc.set)) {
Object.defineProperty(newObj, key, desc);
} else {
newObj[key] = obj[key];
}
}
}
newObj.default = obj;
if (cache) {
cache.set(obj, newObj);
}
return newObj;
}
//# sourceMappingURL=index.js.map

View File

@@ -0,0 +1 @@
{"version":3,"sources":["../../../telemetry/events/index.ts"],"names":[],"mappings":"AAAA;;;;;+CAAc,WAAW;AAAzB,YAAA,QAAyB;;;2CAAzB,QAAyB;;;;mBAAzB,QAAyB;;;EAAA;6CACX,SAAS;AAAvB,YAAA,MAAuB;;;2CAAvB,MAAuB;;;;mBAAvB,MAAuB;;;EAAA;+CACT,WAAW;AAAzB,YAAA,QAAyB;;;2CAAzB,QAAyB;;;;mBAAzB,QAAyB;;;EAAA"}

View File

@@ -0,0 +1,9 @@
declare type NextPluginsEvent = {
eventName: string;
payload: {
packageName: string;
packageVersion: string;
};
};
export declare function eventNextPlugins(dir: string): Promise<Array<NextPluginsEvent>>;
export {};

View File

@@ -0,0 +1,46 @@
"use strict";
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.eventNextPlugins = eventNextPlugins;
var _findUp = _interopRequireDefault(require("next/dist/compiled/find-up"));
function _interopRequireDefault(obj) {
return obj && obj.__esModule ? obj : {
default: obj
};
}
const EVENT_PLUGIN_PRESENT = "NEXT_PACKAGE_DETECTED";
async function eventNextPlugins(dir) {
try {
const packageJsonPath = await (0, _findUp).default("package.json", {
cwd: dir
});
if (!packageJsonPath) {
return [];
}
const { dependencies ={} , devDependencies ={} } = require(packageJsonPath);
const deps = {
...devDependencies,
...dependencies
};
return Object.keys(deps).reduce((events, plugin)=>{
const version = deps[plugin];
// Don't add deps without a version set
if (!version) {
return events;
}
events.push({
eventName: EVENT_PLUGIN_PRESENT,
payload: {
packageName: plugin,
packageVersion: version
}
});
return events;
}, []);
} catch (_) {
return [];
}
}
//# sourceMappingURL=plugins.js.map

View File

@@ -0,0 +1 @@
{"version":3,"sources":["../../../telemetry/events/plugins.ts"],"names":["eventNextPlugins","EVENT_PLUGIN_PRESENT","dir","packageJsonPath","findUp","cwd","dependencies","devDependencies","require","deps","Object","keys","reduce","events","plugin","version","push","eventName","payload","packageName","packageVersion","_"],"mappings":"AAAA;;;;QAWsBA,gBAAgB,GAAhBA,gBAAgB;AAXnB,IAAA,OAA4B,kCAA5B,4BAA4B,EAAA;;;;;;AAE/C,MAAMC,oBAAoB,GAAG,uBAAuB;AAS7C,eAAeD,gBAAgB,CACpCE,GAAW,EACuB;IAClC,IAAI;QACF,MAAMC,eAAe,GAAG,MAAMC,CAAAA,GAAAA,OAAM,AAA8B,CAAA,QAA9B,CAAC,cAAc,EAAE;YAAEC,GAAG,EAAEH,GAAG;SAAE,CAAC;QAClE,IAAI,CAACC,eAAe,EAAE;YACpB,OAAO,EAAE,CAAA;SACV;QAED,MAAM,EAAEG,YAAY,EAAG,EAAE,CAAA,EAAEC,eAAe,EAAG,EAAE,CAAA,EAAE,GAAGC,OAAO,CAACL,eAAe,CAAC;QAE5E,MAAMM,IAAI,GAAG;YAAE,GAAGF,eAAe;YAAE,GAAGD,YAAY;SAAE;QAEpD,OAAOI,MAAM,CAACC,IAAI,CAACF,IAAI,CAAC,CAACG,MAAM,CAC7B,CAACC,MAA0B,EAAEC,MAAc,GAAyB;YAClE,MAAMC,OAAO,GAAGN,IAAI,CAACK,MAAM,CAAC;YAC5B,uCAAuC;YACvC,IAAI,CAACC,OAAO,EAAE;gBACZ,OAAOF,MAAM,CAAA;aACd;YAEDA,MAAM,CAACG,IAAI,CAAC;gBACVC,SAAS,EAAEhB,oBAAoB;gBAC/BiB,OAAO,EAAE;oBACPC,WAAW,EAAEL,MAAM;oBACnBM,cAAc,EAAEL,OAAO;iBACxB;aACF,CAAC;YAEF,OAAOF,MAAM,CAAA;SACd,EACD,EAAE,CACH,CAAA;KACF,CAAC,OAAOQ,CAAC,EAAE;QACV,OAAO,EAAE,CAAA;KACV;CACF"}

View File

@@ -0,0 +1,13 @@
export declare type EventCliSessionStopped = {
cliCommand: string;
nextVersion: string;
nodeVersion: string;
turboFlag?: boolean | null;
durationMilliseconds?: number | null;
pagesDir?: boolean;
appDir?: boolean;
};
export declare function eventCliSession(event: Omit<EventCliSessionStopped, 'nextVersion' | 'nodeVersion'>): {
eventName: string;
payload: EventCliSessionStopped;
}[];

View File

@@ -0,0 +1,31 @@
"use strict";
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.eventCliSession = eventCliSession;
const EVENT_VERSION = "NEXT_CLI_SESSION_STOPPED";
function eventCliSession(event) {
// This should be an invariant, if it fails our build tooling is broken.
if (typeof "13.1.1" !== "string") {
return [];
}
const payload = {
nextVersion: "13.1.1",
nodeVersion: process.version,
cliCommand: event.cliCommand,
durationMilliseconds: event.durationMilliseconds,
...typeof event.turboFlag !== "undefined" ? {
turboFlag: !!event.turboFlag
} : {},
pagesDir: event.pagesDir,
appDir: event.appDir
};
return [
{
eventName: EVENT_VERSION,
payload
}
];
}
//# sourceMappingURL=session-stopped.js.map

View File

@@ -0,0 +1 @@
{"version":3,"sources":["../../../telemetry/events/session-stopped.ts"],"names":["eventCliSession","EVENT_VERSION","event","process","env","__NEXT_VERSION","payload","nextVersion","nodeVersion","version","cliCommand","durationMilliseconds","turboFlag","pagesDir","appDir","eventName"],"mappings":"AAAA;;;;QAYgBA,eAAe,GAAfA,eAAe;AAZ/B,MAAMC,aAAa,GAAG,0BAA0B;AAYzC,SAASD,eAAe,CAC7BE,KAAkE,EACR;IAC1D,wEAAwE;IACxE,IAAI,OAAOC,OAAO,CAACC,GAAG,CAACC,cAAc,KAAK,QAAQ,EAAE;QAClD,OAAO,EAAE,CAAA;KACV;IAED,MAAMC,OAAO,GAA2B;QACtCC,WAAW,EAAEJ,OAAO,CAACC,GAAG,CAACC,cAAc;QACvCG,WAAW,EAAEL,OAAO,CAACM,OAAO;QAC5BC,UAAU,EAAER,KAAK,CAACQ,UAAU;QAC5BC,oBAAoB,EAAET,KAAK,CAACS,oBAAoB;QAChD,GAAI,OAAOT,KAAK,CAACU,SAAS,KAAK,WAAW,GACtC;YACEA,SAAS,EAAE,CAAC,CAACV,KAAK,CAACU,SAAS;SAC7B,GACD,EAAE;QACNC,QAAQ,EAAEX,KAAK,CAACW,QAAQ;QACxBC,MAAM,EAAEZ,KAAK,CAACY,MAAM;KACrB;IACD,OAAO;QAAC;YAAEC,SAAS,EAAEd,aAAa;YAAEK,OAAO;SAAE;KAAC,CAAA;CAC/C"}

View File

@@ -0,0 +1,13 @@
export declare type EventSwcLoadFailure = {
eventName: string;
payload: {
platform: string;
arch: string;
nodeVersion: string;
nextVersion: string;
wasm?: 'enabled' | 'fallback' | 'failed';
glibcVersion?: string;
installedSwcPackages?: string;
};
};
export declare function eventSwcLoadFailure(event?: EventSwcLoadFailure['payload']): Promise<void>;

View File

@@ -0,0 +1,49 @@
"use strict";
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.eventSwcLoadFailure = eventSwcLoadFailure;
var _shared = require("../../trace/shared");
var _packageJson = require("next/package.json");
const EVENT_PLUGIN_PRESENT = "NEXT_SWC_LOAD_FAILURE";
async function eventSwcLoadFailure(event) {
const telemetry = _shared.traceGlobals.get("telemetry");
// can't continue if telemetry isn't set
if (!telemetry) return;
let glibcVersion;
let installedSwcPackages;
try {
var ref;
// @ts-ignore
glibcVersion = (ref = process.report) == null ? void 0 : ref.getReport().header.glibcVersionRuntime;
} catch (_) {}
try {
const pkgNames = Object.keys(_packageJson.optionalDependencies || {}).filter((pkg)=>pkg.startsWith("@next/swc"));
const installedPkgs = [];
for (const pkg1 of pkgNames){
try {
const { version } = require(`${pkg1}/package.json`);
installedPkgs.push(`${pkg1}@${version}`);
} catch (_) {}
}
if (installedPkgs.length > 0) {
installedSwcPackages = installedPkgs.sort().join(",");
}
} catch (_1) {}
telemetry.record({
eventName: EVENT_PLUGIN_PRESENT,
payload: {
nextVersion: _packageJson.version,
glibcVersion,
installedSwcPackages,
arch: process.arch,
platform: process.platform,
nodeVersion: process.versions.node,
wasm: event == null ? void 0 : event.wasm
}
});
// ensure this event is flushed before process exits
await telemetry.flush();
}
//# sourceMappingURL=swc-load-failure.js.map

View File

@@ -0,0 +1 @@
{"version":3,"sources":["../../../telemetry/events/swc-load-failure.ts"],"names":["eventSwcLoadFailure","EVENT_PLUGIN_PRESENT","event","telemetry","traceGlobals","get","glibcVersion","installedSwcPackages","process","report","getReport","header","glibcVersionRuntime","_","pkgNames","Object","keys","optionalDependencies","filter","pkg","startsWith","installedPkgs","version","require","push","length","sort","join","record","eventName","payload","nextVersion","arch","platform","nodeVersion","versions","node","wasm","flush"],"mappings":"AAAA;;;;QAmBsBA,mBAAmB,GAAnBA,mBAAmB;AAnBZ,IAAA,OAAoB,WAApB,oBAAoB,CAAA;AAGY,IAAA,YAAmB,WAAnB,mBAAmB,CAAA;AAEhF,MAAMC,oBAAoB,GAAG,uBAAuB;AAc7C,eAAeD,mBAAmB,CACvCE,KAAsC,EACvB;IACf,MAAMC,SAAS,GAAcC,OAAY,aAAA,CAACC,GAAG,CAAC,WAAW,CAAC;IAC1D,wCAAwC;IACxC,IAAI,CAACF,SAAS,EAAE,OAAM;IAEtB,IAAIG,YAAY;IAChB,IAAIC,oBAAoB;IAExB,IAAI;YAEaC,GAAc;QAD7B,aAAa;QACbF,YAAY,GAAGE,CAAAA,GAAc,GAAdA,OAAO,CAACC,MAAM,SAAW,GAAzBD,KAAAA,CAAyB,GAAzBA,GAAc,CAAEE,SAAS,EAAE,CAACC,MAAM,CAACC,mBAAmB;KACtE,CAAC,OAAOC,CAAC,EAAE,EAAE;IAEd,IAAI;QACF,MAAMC,QAAQ,GAAGC,MAAM,CAACC,IAAI,CAACC,YAAoB,qBAAA,IAAI,EAAE,CAAC,CAACC,MAAM,CAAC,CAACC,GAAG,GAClEA,GAAG,CAACC,UAAU,CAAC,WAAW,CAAC,CAC5B;QACD,MAAMC,aAAa,GAAG,EAAE;QAExB,KAAK,MAAMF,IAAG,IAAIL,QAAQ,CAAE;YAC1B,IAAI;gBACF,MAAM,EAAEQ,OAAO,CAAA,EAAE,GAAGC,OAAO,CAAC,CAAC,EAAEJ,IAAG,CAAC,aAAa,CAAC,CAAC;gBAClDE,aAAa,CAACG,IAAI,CAAC,CAAC,EAAEL,IAAG,CAAC,CAAC,EAAEG,OAAO,CAAC,CAAC,CAAC;aACxC,CAAC,OAAOT,CAAC,EAAE,EAAE;SACf;QAED,IAAIQ,aAAa,CAACI,MAAM,GAAG,CAAC,EAAE;YAC5BlB,oBAAoB,GAAGc,aAAa,CAACK,IAAI,EAAE,CAACC,IAAI,CAAC,GAAG,CAAC;SACtD;KACF,CAAC,OAAOd,EAAC,EAAE,EAAE;IAEdV,SAAS,CAACyB,MAAM,CAAC;QACfC,SAAS,EAAE5B,oBAAoB;QAC/B6B,OAAO,EAAE;YACPC,WAAW,EAAXA,YAAW,QAAA;YACXzB,YAAY;YACZC,oBAAoB;YACpByB,IAAI,EAAExB,OAAO,CAACwB,IAAI;YAClBC,QAAQ,EAAEzB,OAAO,CAACyB,QAAQ;YAC1BC,WAAW,EAAE1B,OAAO,CAAC2B,QAAQ,CAACC,IAAI;YAClCC,IAAI,EAAEnC,KAAK,QAAM,GAAXA,KAAAA,CAAW,GAAXA,KAAK,CAAEmC,IAAI;SAClB;KACF,CAAC;IACF,oDAAoD;IACpD,MAAMlC,SAAS,CAACmC,KAAK,EAAE;CACxB"}

View File

@@ -0,0 +1,10 @@
import type { NextConfig } from '../../server/config-shared';
declare type SwcPluginsEvent = {
eventName: string;
payload: {
pluginName: string;
pluginVersion?: string;
};
};
export declare function eventSwcPlugins(dir: string, config: NextConfig): Promise<Array<SwcPluginsEvent>>;
export {};

View File

@@ -0,0 +1,50 @@
"use strict";
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.eventSwcPlugins = eventSwcPlugins;
var _findUp = _interopRequireDefault(require("next/dist/compiled/find-up"));
var _path = _interopRequireDefault(require("path"));
var _fileExists = require("../../lib/file-exists");
function _interopRequireDefault(obj) {
return obj && obj.__esModule ? obj : {
default: obj
};
}
const EVENT_SWC_PLUGIN_PRESENT = "NEXT_SWC_PLUGIN_DETECTED";
async function eventSwcPlugins(dir, config) {
try {
var ref, ref1;
const packageJsonPath = await (0, _findUp).default("package.json", {
cwd: dir
});
if (!packageJsonPath) {
return [];
}
const { dependencies ={} , devDependencies ={} } = require(packageJsonPath);
const deps = {
...devDependencies,
...dependencies
};
const swcPluginPackages = ((ref = config.experimental) == null ? void 0 : (ref1 = ref.swcPlugins) == null ? void 0 : ref1.map(([name, _])=>name)) ?? [];
return Promise.all(swcPluginPackages.map(async (plugin)=>{
// swc plugins can be non-npm pkgs with absolute path doesn't have version
const version = deps[plugin] ?? undefined;
let pluginName = plugin;
if (await (0, _fileExists).fileExists(pluginName)) {
pluginName = _path.default.basename(plugin, ".wasm");
}
return {
eventName: EVENT_SWC_PLUGIN_PRESENT,
payload: {
pluginName: pluginName,
pluginVersion: version
}
};
}));
} catch (_) {
return [];
}
}
//# sourceMappingURL=swc-plugins.js.map

View File

@@ -0,0 +1 @@
{"version":3,"sources":["../../../telemetry/events/swc-plugins.ts"],"names":["eventSwcPlugins","EVENT_SWC_PLUGIN_PRESENT","dir","config","packageJsonPath","findUp","cwd","dependencies","devDependencies","require","deps","swcPluginPackages","experimental","swcPlugins","map","name","_","Promise","all","plugin","version","undefined","pluginName","fileExists","path","basename","eventName","payload","pluginVersion"],"mappings":"AAAA;;;;QAcsBA,eAAe,GAAfA,eAAe;AAdlB,IAAA,OAA4B,kCAA5B,4BAA4B,EAAA;AAC9B,IAAA,KAAM,kCAAN,MAAM,EAAA;AACI,IAAA,WAAuB,WAAvB,uBAAuB,CAAA;;;;;;AAGlD,MAAMC,wBAAwB,GAAG,0BAA0B;AASpD,eAAeD,eAAe,CACnCE,GAAW,EACXC,MAAkB,EACe;IACjC,IAAI;YAUAA,GAAmB;QATrB,MAAMC,eAAe,GAAG,MAAMC,CAAAA,GAAAA,OAAM,AAA8B,CAAA,QAA9B,CAAC,cAAc,EAAE;YAAEC,GAAG,EAAEJ,GAAG;SAAE,CAAC;QAClE,IAAI,CAACE,eAAe,EAAE;YACpB,OAAO,EAAE,CAAA;SACV;QAED,MAAM,EAAEG,YAAY,EAAG,EAAE,CAAA,EAAEC,eAAe,EAAG,EAAE,CAAA,EAAE,GAAGC,OAAO,CAACL,eAAe,CAAC;QAE5E,MAAMM,IAAI,GAAG;YAAE,GAAGF,eAAe;YAAE,GAAGD,YAAY;SAAE;QACpD,MAAMI,iBAAiB,GACrBR,CAAAA,CAAAA,GAAmB,GAAnBA,MAAM,CAACS,YAAY,SAAY,GAA/BT,KAAAA,CAA+B,GAA/BA,QAAAA,GAAmB,CAAEU,UAAU,SAAA,GAA/BV,KAAAA,CAA+B,GAA/BA,KAAiCW,GAAG,CAAC,CAAC,CAACC,IAAI,EAAEC,CAAC,CAAC,GAAKD,IAAI,CAAC,KAAI,EAAE;QAEjE,OAAOE,OAAO,CAACC,GAAG,CAChBP,iBAAiB,CAACG,GAAG,CAAC,OAAOK,MAAM,GAAK;YACtC,0EAA0E;YAC1E,MAAMC,OAAO,GAAGV,IAAI,CAACS,MAAM,CAAC,IAAIE,SAAS;YACzC,IAAIC,UAAU,GAAGH,MAAM;YACvB,IAAI,MAAMI,CAAAA,GAAAA,WAAU,AAAY,CAAA,WAAZ,CAACD,UAAU,CAAC,EAAE;gBAChCA,UAAU,GAAGE,KAAI,QAAA,CAACC,QAAQ,CAACN,MAAM,EAAE,OAAO,CAAC;aAC5C;YAED,OAAO;gBACLO,SAAS,EAAEzB,wBAAwB;gBACnC0B,OAAO,EAAE;oBACPL,UAAU,EAAEA,UAAU;oBACtBM,aAAa,EAAER,OAAO;iBACvB;aACF,CAAA;SACF,CAAC,CACH,CAAA;KACF,CAAC,OAAOJ,CAAC,EAAE;QACV,OAAO,EAAE,CAAA;KACV;CACF"}

View File

@@ -0,0 +1,36 @@
import { NextConfigComplete } from '../../server/config-shared';
declare type EventCliSessionStarted = {
nextVersion: string;
nodeVersion: string;
cliCommand: string;
isSrcDir: boolean | null;
hasNowJson: boolean;
isCustomServer: boolean | null;
hasNextConfig: boolean;
buildTarget: string;
hasWebpackConfig: boolean;
hasBabelConfig: boolean;
basePathEnabled: boolean;
i18nEnabled: boolean;
imageEnabled: boolean;
imageFutureEnabled: boolean;
locales: string | null;
localeDomainsCount: number | null;
localeDetectionEnabled: boolean | null;
imageDomainsCount: number | null;
imageRemotePatternsCount: number | null;
imageSizes: string | null;
imageLoader: string | null;
imageFormats: string | null;
trailingSlashEnabled: boolean;
reactStrictMode: boolean;
webpackVersion: number | null;
turboFlag: boolean;
appDir: boolean | null;
pagesDir: boolean | null;
};
export declare function eventCliSession(dir: string, nextConfig: NextConfigComplete, event: Omit<EventCliSessionStarted, 'nextVersion' | 'nodeVersion' | 'hasNextConfig' | 'buildTarget' | 'hasWebpackConfig' | 'hasBabelConfig' | 'basePathEnabled' | 'i18nEnabled' | 'imageEnabled' | 'imageFutureEnabled' | 'locales' | 'localeDomainsCount' | 'localeDetectionEnabled' | 'imageDomainsCount' | 'imageRemotePatternsCount' | 'imageSizes' | 'imageLoader' | 'imageFormats' | 'trailingSlashEnabled' | 'reactStrictMode'>): {
eventName: string;
payload: EventCliSessionStarted;
}[];
export {};

View File

@@ -0,0 +1,75 @@
"use strict";
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.eventCliSession = eventCliSession;
var _path = _interopRequireDefault(require("path"));
function _interopRequireDefault(obj) {
return obj && obj.__esModule ? obj : {
default: obj
};
}
const EVENT_VERSION = "NEXT_CLI_SESSION_STARTED";
function hasBabelConfig(dir) {
try {
var ref4, ref1, ref2, ref3;
const noopFile = _path.default.join(dir, "noop.js");
const res = require("next/dist/compiled/babel/core").loadPartialConfig({
cwd: dir,
filename: noopFile,
sourceFileName: noopFile
});
const isForTooling = ((ref4 = res.options) == null ? void 0 : (ref1 = ref4.presets) == null ? void 0 : ref1.every((e)=>{
var ref;
return (e == null ? void 0 : (ref = e.file) == null ? void 0 : ref.request) === "next/babel";
})) && ((ref2 = res.options) == null ? void 0 : (ref3 = ref2.plugins) == null ? void 0 : ref3.length) === 0;
return res.hasFilesystemConfig() && !isForTooling;
} catch {
return false;
}
}
function eventCliSession(dir, nextConfig, event) {
// This should be an invariant, if it fails our build tooling is broken.
if (typeof "13.1.1" !== "string") {
return [];
}
const { images , i18n } = nextConfig || {};
const payload = {
nextVersion: "13.1.1",
nodeVersion: process.version,
cliCommand: event.cliCommand,
isSrcDir: event.isSrcDir,
hasNowJson: event.hasNowJson,
isCustomServer: event.isCustomServer,
hasNextConfig: nextConfig.configOrigin !== "default",
buildTarget: "default",
hasWebpackConfig: typeof (nextConfig == null ? void 0 : nextConfig.webpack) === "function",
hasBabelConfig: hasBabelConfig(dir),
imageEnabled: !!images,
imageFutureEnabled: !!images,
basePathEnabled: !!(nextConfig == null ? void 0 : nextConfig.basePath),
i18nEnabled: !!i18n,
locales: (i18n == null ? void 0 : i18n.locales) ? i18n.locales.join(",") : null,
localeDomainsCount: (i18n == null ? void 0 : i18n.domains) ? i18n.domains.length : null,
localeDetectionEnabled: !i18n ? null : i18n.localeDetection !== false,
imageDomainsCount: (images == null ? void 0 : images.domains) ? images.domains.length : null,
imageRemotePatternsCount: (images == null ? void 0 : images.remotePatterns) ? images.remotePatterns.length : null,
imageSizes: (images == null ? void 0 : images.imageSizes) ? images.imageSizes.join(",") : null,
imageLoader: images == null ? void 0 : images.loader,
imageFormats: (images == null ? void 0 : images.formats) ? images.formats.join(",") : null,
trailingSlashEnabled: !!(nextConfig == null ? void 0 : nextConfig.trailingSlash),
reactStrictMode: !!(nextConfig == null ? void 0 : nextConfig.reactStrictMode),
webpackVersion: event.webpackVersion || null,
turboFlag: event.turboFlag || false,
appDir: event.appDir,
pagesDir: event.pagesDir
};
return [
{
eventName: EVENT_VERSION,
payload
}
];
}
//# sourceMappingURL=version.js.map

View File

@@ -0,0 +1 @@
{"version":3,"sources":["../../../telemetry/events/version.ts"],"names":["eventCliSession","EVENT_VERSION","hasBabelConfig","dir","res","noopFile","path","join","require","loadPartialConfig","cwd","filename","sourceFileName","isForTooling","options","presets","every","e","file","request","plugins","length","hasFilesystemConfig","nextConfig","event","process","env","__NEXT_VERSION","images","i18n","payload","nextVersion","nodeVersion","version","cliCommand","isSrcDir","hasNowJson","isCustomServer","hasNextConfig","configOrigin","buildTarget","hasWebpackConfig","webpack","imageEnabled","imageFutureEnabled","basePathEnabled","basePath","i18nEnabled","locales","localeDomainsCount","domains","localeDetectionEnabled","localeDetection","imageDomainsCount","imageRemotePatternsCount","remotePatterns","imageSizes","imageLoader","loader","imageFormats","formats","trailingSlashEnabled","trailingSlash","reactStrictMode","webpackVersion","turboFlag","appDir","pagesDir","eventName"],"mappings":"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"}