Updated the files.

This commit is contained in:
Batuhan Berk Başoğlu 2024-02-08 19:38:41 -05:00
parent 1553e6b971
commit 753967d4f5
23418 changed files with 3784666 additions and 0 deletions

20
my-app/node_modules/mini-css-extract-plugin/LICENSE generated vendored Executable file
View file

@ -0,0 +1,20 @@
Copyright JS Foundation and other contributors
Permission is hereby granted, free of charge, to any person obtaining
a copy of this software and associated documentation files (the
'Software'), to deal in the Software without restriction, including
without limitation the rights to use, copy, modify, merge, publish,
distribute, sublicense, and/or sell copies of the Software, and to
permit persons to whom the Software is furnished to do so, subject to
the following conditions:
The above copyright notice and this permission notice shall be
included in all copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED 'AS IS', WITHOUT WARRANTY OF ANY KIND,
EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY
CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.

1218
my-app/node_modules/mini-css-extract-plugin/README.md generated vendored Executable file

File diff suppressed because it is too large Load diff

View file

@ -0,0 +1,235 @@
"use strict";
/* eslint-env browser */
/*
eslint-disable
no-console,
func-names
*/
/** @typedef {any} TODO */
var normalizeUrl = require("./normalize-url");
var srcByModuleId = Object.create(null);
var noDocument = typeof document === "undefined";
var forEach = Array.prototype.forEach;
/**
* @param {function} fn
* @param {number} time
* @returns {(function(): void)|*}
*/
function debounce(fn, time) {
var timeout = 0;
return function () {
// @ts-ignore
var self = this;
// eslint-disable-next-line prefer-rest-params
var args = arguments;
var functionCall = function functionCall() {
return fn.apply(self, args);
};
clearTimeout(timeout);
// @ts-ignore
timeout = setTimeout(functionCall, time);
};
}
function noop() {}
/**
* @param {TODO} moduleId
* @returns {TODO}
*/
function getCurrentScriptUrl(moduleId) {
var src = srcByModuleId[moduleId];
if (!src) {
if (document.currentScript) {
src = /** @type {HTMLScriptElement} */document.currentScript.src;
} else {
var scripts = document.getElementsByTagName("script");
var lastScriptTag = scripts[scripts.length - 1];
if (lastScriptTag) {
src = lastScriptTag.src;
}
}
srcByModuleId[moduleId] = src;
}
/**
* @param {string} fileMap
* @returns {null | string[]}
*/
return function (fileMap) {
if (!src) {
return null;
}
var splitResult = src.split(/([^\\/]+)\.js$/);
var filename = splitResult && splitResult[1];
if (!filename) {
return [src.replace(".js", ".css")];
}
if (!fileMap) {
return [src.replace(".js", ".css")];
}
return fileMap.split(",").map(function (mapRule) {
var reg = new RegExp("".concat(filename, "\\.js$"), "g");
return normalizeUrl(src.replace(reg, "".concat(mapRule.replace(/{fileName}/g, filename), ".css")));
});
};
}
/**
* @param {TODO} el
* @param {string} [url]
*/
function updateCss(el, url) {
if (!url) {
if (!el.href) {
return;
}
// eslint-disable-next-line
url = el.href.split("?")[0];
}
if (!isUrlRequest( /** @type {string} */url)) {
return;
}
if (el.isLoaded === false) {
// We seem to be about to replace a css link that hasn't loaded yet.
// We're probably changing the same file more than once.
return;
}
if (!url || !(url.indexOf(".css") > -1)) {
return;
}
// eslint-disable-next-line no-param-reassign
el.visited = true;
var newEl = el.cloneNode();
newEl.isLoaded = false;
newEl.addEventListener("load", function () {
if (newEl.isLoaded) {
return;
}
newEl.isLoaded = true;
el.parentNode.removeChild(el);
});
newEl.addEventListener("error", function () {
if (newEl.isLoaded) {
return;
}
newEl.isLoaded = true;
el.parentNode.removeChild(el);
});
newEl.href = "".concat(url, "?").concat(Date.now());
if (el.nextSibling) {
el.parentNode.insertBefore(newEl, el.nextSibling);
} else {
el.parentNode.appendChild(newEl);
}
}
/**
* @param {string} href
* @param {TODO} src
* @returns {TODO}
*/
function getReloadUrl(href, src) {
var ret;
// eslint-disable-next-line no-param-reassign
href = normalizeUrl(href);
src.some(
/**
* @param {string} url
*/
// eslint-disable-next-line array-callback-return
function (url) {
if (href.indexOf(src) > -1) {
ret = url;
}
});
return ret;
}
/**
* @param {string} [src]
* @returns {boolean}
*/
function reloadStyle(src) {
if (!src) {
return false;
}
var elements = document.querySelectorAll("link");
var loaded = false;
forEach.call(elements, function (el) {
if (!el.href) {
return;
}
var url = getReloadUrl(el.href, src);
if (!isUrlRequest(url)) {
return;
}
if (el.visited === true) {
return;
}
if (url) {
updateCss(el, url);
loaded = true;
}
});
return loaded;
}
function reloadAll() {
var elements = document.querySelectorAll("link");
forEach.call(elements, function (el) {
if (el.visited === true) {
return;
}
updateCss(el);
});
}
/**
* @param {string} url
* @returns {boolean}
*/
function isUrlRequest(url) {
// An URL is not an request if
// It is not http or https
if (!/^[a-zA-Z][a-zA-Z\d+\-.]*:/.test(url)) {
return false;
}
return true;
}
/**
* @param {TODO} moduleId
* @param {TODO} options
* @returns {TODO}
*/
module.exports = function (moduleId, options) {
if (noDocument) {
console.log("no window.document found, will not HMR CSS");
return noop;
}
var getScriptSrc = getCurrentScriptUrl(moduleId);
function update() {
var src = getScriptSrc(options.filename);
var reloaded = reloadStyle(src);
if (options.locals) {
console.log("[HMR] Detected local css modules. Reload all css");
reloadAll();
return;
}
if (reloaded) {
console.log("[HMR] css reload %s", src.join(" "));
} else {
console.log("[HMR] Reload all css");
reloadAll();
}
}
return debounce(update, 50);
};

View file

@ -0,0 +1,39 @@
"use strict";
/* eslint-disable */
/**
* @param {string[]} pathComponents
* @returns {string}
*/
function normalizeUrl(pathComponents) {
return pathComponents.reduce(function (accumulator, item) {
switch (item) {
case "..":
accumulator.pop();
break;
case ".":
break;
default:
accumulator.push(item);
}
return accumulator;
}, /** @type {string[]} */[]).join("/");
}
/**
* @param {string} urlString
* @returns {string}
*/
module.exports = function (urlString) {
urlString = urlString.trim();
if (/^data:/i.test(urlString)) {
return urlString;
}
var protocol = urlString.indexOf("//") !== -1 ? urlString.split("//")[0] + "//" : "";
var components = urlString.replace(new RegExp(protocol, "i"), "").split("/");
var host = components[0].toLowerCase().replace(/\.$/, "");
components[0] = "";
var path = normalizeUrl(components);
return protocol + host + path;
};

1000
my-app/node_modules/mini-css-extract-plugin/dist/index.js generated vendored Executable file

File diff suppressed because it is too large Load diff

View file

@ -0,0 +1,32 @@
{
"title": "Mini CSS Extract Plugin Loader options",
"type": "object",
"additionalProperties": false,
"properties": {
"publicPath": {
"anyOf": [
{
"type": "string"
},
{
"instanceof": "Function"
}
],
"description": "Specifies a custom public path for the external resources like images, files, etc inside CSS.",
"link": "https://github.com/webpack-contrib/mini-css-extract-plugin#publicpath"
},
"emit": {
"type": "boolean",
"description": "If true, emits a file (writes a file to the filesystem). If false, the plugin will extract the CSS but will not emit the file",
"link": "https://github.com/webpack-contrib/mini-css-extract-plugin#emit"
},
"esModule": {
"type": "boolean",
"description": "Generates JS modules that use the ES modules syntax.",
"link": "https://github.com/webpack-contrib/mini-css-extract-plugin#esmodule"
},
"layer": {
"type": "string"
}
}
}

388
my-app/node_modules/mini-css-extract-plugin/dist/loader.js generated vendored Executable file
View file

@ -0,0 +1,388 @@
"use strict";
const path = require("path");
const {
findModuleById,
evalModuleCode,
AUTO_PUBLIC_PATH,
ABSOLUTE_PUBLIC_PATH,
BASE_URI,
SINGLE_DOT_PATH_SEGMENT,
stringifyRequest,
stringifyLocal
} = require("./utils");
const schema = require("./loader-options.json");
const MiniCssExtractPlugin = require("./index");
/** @typedef {import("schema-utils/declarations/validate").Schema} Schema */
/** @typedef {import("webpack").Compiler} Compiler */
/** @typedef {import("webpack").Compilation} Compilation */
/** @typedef {import("webpack").Chunk} Chunk */
/** @typedef {import("webpack").Module} Module */
/** @typedef {import("webpack").sources.Source} Source */
/** @typedef {import("webpack").AssetInfo} AssetInfo */
/** @typedef {import("webpack").NormalModule} NormalModule */
/** @typedef {import("./index.js").LoaderOptions} LoaderOptions */
/** @typedef {{ [key: string]: string | function }} Locals */
/** @typedef {any} TODO */
/**
* @typedef {Object} Dependency
* @property {string} identifier
* @property {string | null} context
* @property {Buffer} content
* @property {string} media
* @property {string} [supports]
* @property {string} [layer]
* @property {Buffer} [sourceMap]
*/
/**
* @param {string} content
* @param {{ loaderContext: import("webpack").LoaderContext<LoaderOptions>, options: LoaderOptions, locals: Locals | undefined }} context
* @returns {string}
*/
function hotLoader(content, context) {
const accept = context.locals ? "" : "module.hot.accept(undefined, cssReload);";
return `${content}
if(module.hot) {
// ${Date.now()}
var cssReload = require(${stringifyRequest(context.loaderContext, path.join(__dirname, "hmr/hotModuleReplacement.js"))})(module.id, ${JSON.stringify({
...context.options,
locals: !!context.locals
})});
module.hot.dispose(cssReload);
${accept}
}
`;
}
/**
* @this {import("webpack").LoaderContext<LoaderOptions>}
* @param {string} request
*/
function pitch(request) {
if (this._compiler && this._compiler.options && this._compiler.options.experiments && this._compiler.options.experiments.css && this._module && this._module.type === "css") {
this.emitWarning(new Error('You can\'t use `experiments.css` (`experiments.futureDefaults` enable built-in CSS support by default) and `mini-css-extract-plugin` together, please set `experiments.css` to `false` or set `{ type: "javascript/auto" }` for rules with `mini-css-extract-plugin` in your webpack config (now `mini-css-extract-plugin` does nothing).'));
return;
}
// @ts-ignore
const options = this.getOptions( /** @type {Schema} */schema);
const emit = typeof options.emit !== "undefined" ? options.emit : true;
const callback = this.async();
const optionsFromPlugin = /** @type {TODO} */this[MiniCssExtractPlugin.pluginSymbol];
if (!optionsFromPlugin) {
callback(new Error("You forgot to add 'mini-css-extract-plugin' plugin (i.e. `{ plugins: [new MiniCssExtractPlugin()] }`), please read https://github.com/webpack-contrib/mini-css-extract-plugin#getting-started"));
return;
}
const {
webpack
} = /** @type {Compiler} */this._compiler;
/**
* @param {TODO} originalExports
* @param {Compilation} [compilation]
* @param {{ [name: string]: Source }} [assets]
* @param {Map<string, AssetInfo>} [assetsInfo]
* @returns {void}
*/
const handleExports = (originalExports, compilation, assets, assetsInfo) => {
/** @type {Locals | undefined} */
let locals;
let namedExport;
const esModule = typeof options.esModule !== "undefined" ? options.esModule : true;
/**
* @param {Dependency[] | [null, object][]} dependencies
*/
const addDependencies = dependencies => {
if (!Array.isArray(dependencies) && dependencies != null) {
throw new Error(`Exported value was not extracted as an array: ${JSON.stringify(dependencies)}`);
}
const identifierCountMap = new Map();
let lastDep;
for (const dependency of dependencies) {
if (! /** @type {Dependency} */dependency.identifier || !emit) {
// eslint-disable-next-line no-continue
continue;
}
const count = identifierCountMap.get( /** @type {Dependency} */dependency.identifier) || 0;
const CssDependency = MiniCssExtractPlugin.getCssDependency(webpack);
/** @type {NormalModule} */
this._module.addDependency(lastDep = new CssDependency( /** @type {Dependency} */
dependency, /** @type {Dependency} */
dependency.context, count));
identifierCountMap.set( /** @type {Dependency} */
dependency.identifier, count + 1);
}
if (lastDep && assets) {
lastDep.assets = assets;
lastDep.assetsInfo = assetsInfo;
}
};
try {
// eslint-disable-next-line no-underscore-dangle
const exports = originalExports.__esModule ? originalExports.default : originalExports;
namedExport =
// eslint-disable-next-line no-underscore-dangle
originalExports.__esModule && (!originalExports.default || !("locals" in originalExports.default));
if (namedExport) {
Object.keys(originalExports).forEach(key => {
if (key !== "default") {
if (!locals) {
locals = {};
}
/** @type {Locals} */
locals[key] = originalExports[key];
}
});
} else {
locals = exports && exports.locals;
}
/** @type {Dependency[] | [null, object][]} */
let dependencies;
if (!Array.isArray(exports)) {
dependencies = [[null, exports]];
} else {
dependencies = exports.map(([id, content, media, sourceMap, supports, layer]) => {
let identifier = id;
let context;
if (compilation) {
const module = /** @type {Module} */
findModuleById(compilation, id);
identifier = module.identifier();
({
context
} = module);
} else {
// TODO check if this context is used somewhere
context = this.rootContext;
}
return {
identifier,
context,
content: Buffer.from(content),
media,
supports,
layer,
sourceMap: sourceMap ? Buffer.from(JSON.stringify(sourceMap)) :
// eslint-disable-next-line no-undefined
undefined
};
});
}
addDependencies(dependencies);
} catch (e) {
callback( /** @type {Error} */e);
return;
}
const result = locals ? namedExport ? Object.keys(locals).map(key => `\nexport var ${key} = ${stringifyLocal( /** @type {Locals} */locals[key])};`).join("") : `\n${esModule ? "export default" : "module.exports ="} ${JSON.stringify(locals)};` : esModule ? `\nexport {};` : "";
let resultSource = `// extracted by ${MiniCssExtractPlugin.pluginName}`;
// only attempt hotreloading if the css is actually used for something other than hash values
resultSource += this.hot && emit ? hotLoader(result, {
loaderContext: this,
options,
locals
}) : result;
callback(null, resultSource);
};
let {
publicPath
} = /** @type {Compilation} */
this._compilation.outputOptions;
if (typeof options.publicPath === "string") {
// eslint-disable-next-line prefer-destructuring
publicPath = options.publicPath;
} else if (typeof options.publicPath === "function") {
publicPath = options.publicPath(this.resourcePath, this.rootContext);
}
if (publicPath === "auto") {
publicPath = AUTO_PUBLIC_PATH;
}
if (typeof optionsFromPlugin.experimentalUseImportModule === "undefined" && typeof this.importModule === "function" || optionsFromPlugin.experimentalUseImportModule) {
if (!this.importModule) {
callback(new Error("You are using 'experimentalUseImportModule' but 'this.importModule' is not available in loader context. You need to have at least webpack 5.33.2."));
return;
}
let publicPathForExtract;
if (typeof publicPath === "string") {
const isAbsolutePublicPath = /^[a-zA-Z][a-zA-Z\d+\-.]*?:/.test(publicPath);
publicPathForExtract = isAbsolutePublicPath ? publicPath : `${ABSOLUTE_PUBLIC_PATH}${publicPath.replace(/\./g, SINGLE_DOT_PATH_SEGMENT)}`;
} else {
publicPathForExtract = publicPath;
}
this.importModule(`${this.resourcePath}.webpack[javascript/auto]!=!!!${request}`, {
layer: options.layer,
publicPath: /** @type {string} */publicPathForExtract,
baseUri: `${BASE_URI}/`
},
/**
* @param {Error | null | undefined} error
* @param {object} exports
*/
(error, exports) => {
if (error) {
callback(error);
return;
}
handleExports(exports);
});
return;
}
const loaders = this.loaders.slice(this.loaderIndex + 1);
this.addDependency(this.resourcePath);
const childFilename = "*";
const outputOptions = {
filename: childFilename,
publicPath
};
const childCompiler = /** @type {Compilation} */
this._compilation.createChildCompiler(`${MiniCssExtractPlugin.pluginName} ${request}`, outputOptions);
// The templates are compiled and executed by NodeJS - similar to server side rendering
// Unfortunately this causes issues as some loaders require an absolute URL to support ES Modules
// The following config enables relative URL support for the child compiler
childCompiler.options.module = {
...childCompiler.options.module
};
childCompiler.options.module.parser = {
...childCompiler.options.module.parser
};
childCompiler.options.module.parser.javascript = {
...childCompiler.options.module.parser.javascript,
url: "relative"
};
const {
NodeTemplatePlugin
} = webpack.node;
const {
NodeTargetPlugin
} = webpack.node;
new NodeTemplatePlugin(outputOptions).apply(childCompiler);
new NodeTargetPlugin().apply(childCompiler);
const {
EntryOptionPlugin
} = webpack;
const {
library: {
EnableLibraryPlugin
}
} = webpack;
new EnableLibraryPlugin("commonjs2").apply(childCompiler);
EntryOptionPlugin.applyEntryOption(childCompiler, this.context, {
child: {
library: {
type: "commonjs2"
},
import: [`!!${request}`]
}
});
const {
LimitChunkCountPlugin
} = webpack.optimize;
new LimitChunkCountPlugin({
maxChunks: 1
}).apply(childCompiler);
const {
NormalModule
} = webpack;
childCompiler.hooks.thisCompilation.tap(`${MiniCssExtractPlugin.pluginName} loader`,
/**
* @param {Compilation} compilation
*/
compilation => {
const normalModuleHook = NormalModule.getCompilationHooks(compilation).loader;
normalModuleHook.tap(`${MiniCssExtractPlugin.pluginName} loader`, (loaderContext, module) => {
if (module.request === request) {
// eslint-disable-next-line no-param-reassign
module.loaders = loaders.map(loader => {
return {
type: null,
loader: loader.path,
options: loader.options,
ident: loader.ident
};
});
}
});
});
/** @type {string | Buffer} */
let source;
childCompiler.hooks.compilation.tap(MiniCssExtractPlugin.pluginName,
/**
* @param {Compilation} compilation
*/
compilation => {
compilation.hooks.processAssets.tap(MiniCssExtractPlugin.pluginName, () => {
source = compilation.assets[childFilename] && compilation.assets[childFilename].source();
// Remove all chunk assets
compilation.chunks.forEach(chunk => {
chunk.files.forEach(file => {
compilation.deleteAsset(file);
});
});
});
});
childCompiler.runAsChild((error, entries, compilation) => {
if (error) {
callback(error);
return;
}
if ( /** @type {Compilation} */compilation.errors.length > 0) {
callback( /** @type {Compilation} */compilation.errors[0]);
return;
}
/** @type {{ [name: string]: Source }} */
const assets = Object.create(null);
/** @type {Map<string, AssetInfo>} */
const assetsInfo = new Map();
for (const asset of /** @type {Compilation} */compilation.getAssets()) {
assets[asset.name] = asset.source;
assetsInfo.set(asset.name, asset.info);
}
/** @type {Compilation} */
compilation.fileDependencies.forEach(dep => {
this.addDependency(dep);
}, this);
/** @type {Compilation} */
compilation.contextDependencies.forEach(dep => {
this.addContextDependency(dep);
}, this);
if (!source) {
callback(new Error("Didn't get a result from child compiler"));
return;
}
let originalExports;
try {
originalExports = evalModuleCode(this, source, request);
} catch (e) {
callback( /** @type {Error} */e);
return;
}
handleExports(originalExports, compilation, assets, assetsInfo);
});
}
/**
* @this {import("webpack").LoaderContext<LoaderOptions>}
* @param {string} content
*/
// eslint-disable-next-line consistent-return
function loader(content) {
if (this._compiler && this._compiler.options && this._compiler.options.experiments && this._compiler.options.experiments.css && this._module && this._module.type === "css") {
return content;
}
}
module.exports = loader;
module.exports.pitch = pitch;

View file

@ -0,0 +1,79 @@
{
"title": "Mini CSS Extract Plugin options",
"type": "object",
"additionalProperties": false,
"properties": {
"filename": {
"anyOf": [
{
"type": "string",
"absolutePath": false,
"minLength": 1
},
{
"instanceof": "Function"
}
],
"description": "This option determines the name of each output CSS file.",
"link": "https://github.com/webpack-contrib/mini-css-extract-plugin#filename"
},
"chunkFilename": {
"anyOf": [
{
"type": "string",
"absolutePath": false,
"minLength": 1
},
{
"instanceof": "Function"
}
],
"description": "This option determines the name of non-entry chunk files.",
"link": "https://github.com/webpack-contrib/mini-css-extract-plugin#chunkfilename"
},
"experimentalUseImportModule": {
"type": "boolean",
"description": "Enable the experimental importModule approach instead of using child compilers. This uses less memory and is faster.",
"link": "https://github.com/webpack-contrib/mini-css-extract-plugin#experimentaluseimportmodule"
},
"ignoreOrder": {
"type": "boolean",
"description": "Remove Order Warnings.",
"link": "https://github.com/webpack-contrib/mini-css-extract-plugin#ignoreorder"
},
"insert": {
"description": "Inserts the `link` tag at the given position for non-initial (async) (https://webpack.js.org/concepts/under-the-hood/#chunks) CSS chunks.",
"link": "https://github.com/webpack-contrib/mini-css-extract-plugin#insert",
"anyOf": [
{
"type": "string"
},
{
"instanceof": "Function"
}
]
},
"attributes": {
"description": "Adds custom attributes to the `link` tag for non-initial (async) (https://webpack.js.org/concepts/under-the-hood/#chunks) CSS chunks.",
"link": "https://github.com/webpack-contrib/mini-css-extract-plugin#attributes",
"type": "object"
},
"linkType": {
"anyOf": [
{
"enum": ["text/css"]
},
{
"type": "boolean"
}
],
"description": "This option allows loading asynchronous chunks with a custom link type",
"link": "https://github.com/webpack-contrib/mini-css-extract-plugin#linktype"
},
"runtime": {
"type": "boolean",
"description": "Enabled/Disables runtime generation. CSS will be still extracted and can be used for a custom loading methods.",
"link": "https://github.com/webpack-contrib/mini-css-extract-plugin#noRuntime"
}
}
}

198
my-app/node_modules/mini-css-extract-plugin/dist/utils.js generated vendored Executable file
View file

@ -0,0 +1,198 @@
"use strict";
const NativeModule = require("module");
const path = require("path");
/** @typedef {import("webpack").Compilation} Compilation */
/** @typedef {import("webpack").Module} Module */
/** @typedef {import("webpack").LoaderContext<any>} LoaderContext */
/**
* @returns {boolean}
*/
function trueFn() {
return true;
}
/**
* @param {Compilation} compilation
* @param {string | number} id
* @returns {null | Module}
*/
function findModuleById(compilation, id) {
const {
modules,
chunkGraph
} = compilation;
for (const module of modules) {
const moduleId = typeof chunkGraph !== "undefined" ? chunkGraph.getModuleId(module) : module.id;
if (moduleId === id) {
return module;
}
}
return null;
}
/**
* @param {LoaderContext} loaderContext
* @param {string | Buffer} code
* @param {string} filename
* @returns {object}
*/
function evalModuleCode(loaderContext, code, filename) {
// @ts-ignore
const module = new NativeModule(filename, loaderContext);
// @ts-ignore
module.paths = NativeModule._nodeModulePaths(loaderContext.context); // eslint-disable-line no-underscore-dangle
module.filename = filename;
// @ts-ignore
module._compile(code, filename); // eslint-disable-line no-underscore-dangle
return module.exports;
}
/**
* @param {string} a
* @param {string} b
* @returns {0 | 1 | -1}
*/
function compareIds(a, b) {
if (typeof a !== typeof b) {
return typeof a < typeof b ? -1 : 1;
}
if (a < b) {
return -1;
}
if (a > b) {
return 1;
}
return 0;
}
/**
* @param {Module} a
* @param {Module} b
* @returns {0 | 1 | -1}
*/
function compareModulesByIdentifier(a, b) {
return compareIds(a.identifier(), b.identifier());
}
const MODULE_TYPE = "css/mini-extract";
const AUTO_PUBLIC_PATH = "__mini_css_extract_plugin_public_path_auto__";
const ABSOLUTE_PUBLIC_PATH = "webpack:///mini-css-extract-plugin/";
const BASE_URI = "webpack://";
const SINGLE_DOT_PATH_SEGMENT = "__mini_css_extract_plugin_single_dot_path_segment__";
/**
* @param {string} str
* @returns {boolean}
*/
function isAbsolutePath(str) {
return path.posix.isAbsolute(str) || path.win32.isAbsolute(str);
}
const RELATIVE_PATH_REGEXP = /^\.\.?[/\\]/;
/**
* @param {string} str
* @returns {boolean}
*/
function isRelativePath(str) {
return RELATIVE_PATH_REGEXP.test(str);
}
// TODO simplify for the next major release
/**
* @param {LoaderContext} loaderContext
* @param {string} request
* @returns {string}
*/
function stringifyRequest(loaderContext, request) {
if (typeof loaderContext.utils !== "undefined" && typeof loaderContext.utils.contextify === "function") {
return JSON.stringify(loaderContext.utils.contextify(loaderContext.context || loaderContext.rootContext, request));
}
const splitted = request.split("!");
const {
context
} = loaderContext;
return JSON.stringify(splitted.map(part => {
// First, separate singlePath from query, because the query might contain paths again
const splittedPart = part.match(/^(.*?)(\?.*)/);
const query = splittedPart ? splittedPart[2] : "";
let singlePath = splittedPart ? splittedPart[1] : part;
if (isAbsolutePath(singlePath) && context) {
singlePath = path.relative(context, singlePath);
if (isAbsolutePath(singlePath)) {
// If singlePath still matches an absolute path, singlePath was on a different drive than context.
// In this case, we leave the path platform-specific without replacing any separators.
// @see https://github.com/webpack/loader-utils/pull/14
return singlePath + query;
}
if (isRelativePath(singlePath) === false) {
// Ensure that the relative path starts at least with ./ otherwise it would be a request into the modules directory (like node_modules).
singlePath = `./${singlePath}`;
}
}
return singlePath.replace(/\\/g, "/") + query;
}).join("!"));
}
/**
* @param {string} filename
* @param {string} outputPath
* @param {boolean} enforceRelative
* @returns {string}
*/
function getUndoPath(filename, outputPath, enforceRelative) {
let depth = -1;
let append = "";
// eslint-disable-next-line no-param-reassign
outputPath = outputPath.replace(/[\\/]$/, "");
for (const part of filename.split(/[/\\]+/)) {
if (part === "..") {
if (depth > -1) {
// eslint-disable-next-line no-plusplus
depth--;
} else {
const i = outputPath.lastIndexOf("/");
const j = outputPath.lastIndexOf("\\");
const pos = i < 0 ? j : j < 0 ? i : Math.max(i, j);
if (pos < 0) {
return `${outputPath}/`;
}
append = `${outputPath.slice(pos + 1)}/${append}`;
// eslint-disable-next-line no-param-reassign
outputPath = outputPath.slice(0, pos);
}
} else if (part !== ".") {
// eslint-disable-next-line no-plusplus
depth++;
}
}
return depth > 0 ? `${"../".repeat(depth)}${append}` : enforceRelative ? `./${append}` : append;
}
/**
*
* @param {string | function} value
* @returns {string}
*/
function stringifyLocal(value) {
return typeof value === "function" ? value.toString() : JSON.stringify(value);
}
module.exports = {
trueFn,
findModuleById,
evalModuleCode,
compareModulesByIdentifier,
MODULE_TYPE,
AUTO_PUBLIC_PATH,
ABSOLUTE_PUBLIC_PATH,
BASE_URI,
SINGLE_DOT_PATH_SEGMENT,
stringifyRequest,
stringifyLocal,
getUndoPath
};

100
my-app/node_modules/mini-css-extract-plugin/package.json generated vendored Executable file
View file

@ -0,0 +1,100 @@
{
"name": "mini-css-extract-plugin",
"version": "2.7.6",
"description": "extracts CSS into separate files",
"license": "MIT",
"repository": "webpack-contrib/mini-css-extract-plugin",
"author": "Tobias Koppers @sokra",
"homepage": "https://github.com/webpack-contrib/mini-css-extract-plugin",
"bugs": "https://github.com/webpack-contrib/mini-css-extract-plugin/issues",
"funding": {
"type": "opencollective",
"url": "https://opencollective.com/webpack"
},
"main": "dist/index.js",
"types": "types/index.d.ts",
"engines": {
"node": ">= 12.13.0"
},
"scripts": {
"start": "npm run build -- -w",
"prebuild": "npm run clean",
"build:types": "tsc --declaration --emitDeclarationOnly --outDir types && prettier \"types/**/*.ts\" --write",
"build:code": "cross-env NODE_ENV=production babel src -d dist --copy-files",
"build": "npm-run-all -p \"build:**\"",
"postbuild": "es-check es5 dist/hmr/hotModuleReplacement.js",
"clean": "del-cli dist",
"commitlint": "commitlint --from=master",
"lint:prettier": "prettier \"{**/*,*}.{js,json,md,yml,css,ts}\" --list-different",
"lint:js": "eslint --cache .",
"lint:spelling": "cspell \"**/*.*\"",
"lint:types": "tsc --pretty --noEmit",
"lint": "npm-run-all -l -p \"lint:**\"",
"fix:js": "npm run lint:js -- --fix",
"fix:prettier": "npm run lint:prettier -- --write",
"fix": "npm-run-all -l fix:js fix:prettier",
"prepare": "husky install && npm run build",
"release": "standard-version",
"security": "npm audit --production",
"test:only": "cross-env NODE_ENV=test jest",
"test:only:experimental": "EXPERIMENTAL_USE_IMPORT_MODULE=true cross-env NODE_ENV=test jest",
"test:watch": "npm run test:only -- --watch",
"test:coverage": "npm run test:only -- --collectCoverageFrom=\"src/**/*.js\" --coverage",
"test:manual": "npm run build && webpack serve ./test/manual/src/index.js --open --config ./test/manual/webpack.config.js",
"pretest": "npm run lint",
"test": "cross-env NODE_ENV=test npm run test:coverage"
},
"files": [
"dist",
"types"
],
"peerDependencies": {
"webpack": "^5.0.0"
},
"dependencies": {
"schema-utils": "^4.0.0"
},
"devDependencies": {
"@babel/cli": "^7.21.0",
"@babel/core": "^7.21.4",
"@babel/eslint-parser": "^7.19.1",
"@babel/preset-env": "^7.21.4",
"@commitlint/cli": "^17.5.1",
"@commitlint/config-conventional": "^17.4.4",
"@types/node": "^18.15.11",
"@webpack-contrib/eslint-config-webpack": "^3.0.0",
"babel-jest": "^28.1.3",
"bootstrap": "^4.6.2",
"cross-env": "^7.0.3",
"cspell": "^6.31.1",
"css-loader": "^6.7.4",
"del": "^6.0.0",
"del-cli": "^4.0.0",
"es-check": "^7.1.0",
"eslint": "^8.37.0",
"eslint-config-prettier": "^8.8.0",
"eslint-plugin-import": "^2.27.5",
"file-loader": "^6.2.0",
"husky": "^7.0.0",
"jest": "^28.1.3",
"jest-environment-jsdom": "^28.1.3",
"jsdom": "^19.0.0",
"lint-staged": "^13.2.1",
"memfs": "^3.4.13",
"npm-run-all": "^4.1.5",
"prettier": "^2.8.7",
"sass": "^1.60.0",
"sass-loader": "^12.6.0",
"standard-version": "^9.3.0",
"typescript": "^4.9.5",
"webpack": "^5.83.1",
"webpack-cli": "^4.9.2",
"webpack-dev-server": "^4.13.2"
},
"keywords": [
"webpack",
"css",
"extract",
"hmr"
]
}

View file

@ -0,0 +1,3 @@
declare function _exports(moduleId: TODO, options: TODO): TODO;
export = _exports;
export type TODO = any;

View file

@ -0,0 +1,2 @@
declare function _exports(urlString: string): string;
export = _exports;

235
my-app/node_modules/mini-css-extract-plugin/types/index.d.ts generated vendored Executable file
View file

@ -0,0 +1,235 @@
export = MiniCssExtractPlugin;
declare class MiniCssExtractPlugin {
/**
* @param {Compiler["webpack"]} webpack
* @returns {CssModuleConstructor}
*/
static getCssModule(webpack: Compiler["webpack"]): CssModuleConstructor;
/**
* @param {Compiler["webpack"]} webpack
* @returns {CssDependencyConstructor}
*/
static getCssDependency(
webpack: Compiler["webpack"]
): CssDependencyConstructor;
/**
* @param {PluginOptions} [options]
*/
constructor(options?: PluginOptions | undefined);
/**
* @private
* @type {WeakMap<Chunk, Set<CssModule>>}
* @private
*/
private _sortedModulesCache;
/**
* @private
* @type {NormalizedPluginOptions}
*/
private options;
/**
* @private
* @type {RuntimeOptions}
*/
private runtimeOptions;
/**
* @param {Compiler} compiler
*/
apply(compiler: Compiler): void;
/**
* @private
* @param {Chunk} chunk
* @param {ChunkGraph} chunkGraph
* @returns {Iterable<Module>}
*/
private getChunkModules;
/**
* @private
* @param {Compilation} compilation
* @param {Chunk} chunk
* @param {CssModule[]} modules
* @param {Compilation["requestShortener"]} requestShortener
* @returns {Set<CssModule>}
*/
private sortModules;
/**
* @private
* @param {Compiler} compiler
* @param {Compilation} compilation
* @param {Chunk} chunk
* @param {CssModule[]} modules
* @param {Compiler["requestShortener"]} requestShortener
* @param {string} filenameTemplate
* @param {Parameters<Exclude<Required<Configuration>['output']['filename'], string | undefined>>[0]} pathData
* @returns {Source}
*/
private renderContentAsset;
}
declare namespace MiniCssExtractPlugin {
export {
pluginName,
pluginSymbol,
loader,
Schema,
Compiler,
Compilation,
ChunkGraph,
Chunk,
ChunkGroup,
Module,
Dependency,
Source,
Configuration,
WebpackError,
AssetInfo,
LoaderDependency,
LoaderOptions,
PluginOptions,
NormalizedPluginOptions,
RuntimeOptions,
TODO,
CssModule,
CssModuleDependency,
CssModuleConstructor,
CssDependency,
CssDependencyOptions,
CssDependencyConstructor,
};
}
type Compiler = import("webpack").Compiler;
type CssModuleConstructor = new (dependency: CssModuleDependency) => CssModule;
type CssDependencyConstructor = new (
loaderDependency: CssDependencyOptions,
context: string | null,
identifierIndex: number
) => CssDependency;
type PluginOptions = {
filename?: Required<Configuration>["output"]["filename"];
chunkFilename?: Required<Configuration>["output"]["chunkFilename"];
ignoreOrder?: boolean | undefined;
insert?: string | ((linkTag: HTMLLinkElement) => void) | undefined;
attributes?: Record<string, string> | undefined;
linkType?: string | false | undefined;
runtime?: boolean | undefined;
experimentalUseImportModule?: boolean | undefined;
};
/** @typedef {import("schema-utils/declarations/validate").Schema} Schema */
/** @typedef {import("webpack").Compiler} Compiler */
/** @typedef {import("webpack").Compilation} Compilation */
/** @typedef {import("webpack").ChunkGraph} ChunkGraph */
/** @typedef {import("webpack").Chunk} Chunk */
/** @typedef {Parameters<import("webpack").Chunk["isInGroup"]>[0]} ChunkGroup */
/** @typedef {import("webpack").Module} Module */
/** @typedef {import("webpack").Dependency} Dependency */
/** @typedef {import("webpack").sources.Source} Source */
/** @typedef {import("webpack").Configuration} Configuration */
/** @typedef {import("webpack").WebpackError} WebpackError */
/** @typedef {import("webpack").AssetInfo} AssetInfo */
/** @typedef {import("./loader.js").Dependency} LoaderDependency */
/**
* @typedef {Object} LoaderOptions
* @property {string | ((resourcePath: string, rootContext: string) => string)} [publicPath]
* @property {boolean} [emit]
* @property {boolean} [esModule]
* @property {string} [layer]
*/
/**
* @typedef {Object} PluginOptions
* @property {Required<Configuration>['output']['filename']} [filename]
* @property {Required<Configuration>['output']['chunkFilename']} [chunkFilename]
* @property {boolean} [ignoreOrder]
* @property {string | ((linkTag: HTMLLinkElement) => void)} [insert]
* @property {Record<string, string>} [attributes]
* @property {string | false | 'text/css'} [linkType]
* @property {boolean} [runtime]
* @property {boolean} [experimentalUseImportModule]
*/
/**
* @typedef {Object} NormalizedPluginOptions
* @property {Required<Configuration>['output']['filename']} filename
* @property {Required<Configuration>['output']['chunkFilename']} [chunkFilename]
* @property {boolean} ignoreOrder
* @property {string | ((linkTag: HTMLLinkElement) => void)} [insert]
* @property {Record<string, string>} [attributes]
* @property {string | false | 'text/css'} [linkType]
* @property {boolean} runtime
* @property {boolean} [experimentalUseImportModule]
*/
/**
* @typedef {Object} RuntimeOptions
* @property {string | ((linkTag: HTMLLinkElement) => void) | undefined} insert
* @property {string | false | 'text/css'} linkType
* @property {Record<string, string> | undefined} attributes
*/
/** @typedef {any} TODO */
declare const pluginName: "mini-css-extract-plugin";
declare const pluginSymbol: unique symbol;
declare var loader: string;
type Schema = import("schema-utils/declarations/validate").Schema;
type Compilation = import("webpack").Compilation;
type ChunkGraph = import("webpack").ChunkGraph;
type Chunk = import("webpack").Chunk;
type ChunkGroup = Parameters<import("webpack").Chunk["isInGroup"]>[0];
type Module = import("webpack").Module;
type Dependency = import("webpack").Dependency;
type Source = import("webpack").sources.Source;
type Configuration = import("webpack").Configuration;
type WebpackError = import("webpack").WebpackError;
type AssetInfo = import("webpack").AssetInfo;
type LoaderDependency = import("./loader.js").Dependency;
type LoaderOptions = {
publicPath?:
| string
| ((resourcePath: string, rootContext: string) => string)
| undefined;
emit?: boolean | undefined;
esModule?: boolean | undefined;
layer?: string | undefined;
};
type NormalizedPluginOptions = {
filename: Required<Configuration>["output"]["filename"];
chunkFilename?: Required<Configuration>["output"]["chunkFilename"];
ignoreOrder: boolean;
insert?: string | ((linkTag: HTMLLinkElement) => void) | undefined;
attributes?: Record<string, string> | undefined;
linkType?: string | false | undefined;
runtime: boolean;
experimentalUseImportModule?: boolean | undefined;
};
type RuntimeOptions = {
insert: string | ((linkTag: HTMLLinkElement) => void) | undefined;
linkType: string | false | "text/css";
attributes: Record<string, string> | undefined;
};
type TODO = any;
type CssModule = import("webpack").Module & {
content: Buffer;
media?: string | undefined;
sourceMap?: Buffer | undefined;
supports?: string | undefined;
layer?: string | undefined;
assets?:
| {
[key: string]: any;
}
| undefined;
assetsInfo?: Map<string, import("webpack").AssetInfo> | undefined;
};
type CssModuleDependency = {
context: string | null;
identifier: string;
identifierIndex: number;
content: Buffer;
sourceMap?: Buffer | undefined;
media?: string | undefined;
supports?: string | undefined;
layer?: TODO;
assetsInfo?: Map<string, import("webpack").AssetInfo> | undefined;
assets?:
| {
[key: string]: any;
}
| undefined;
};
type CssDependency = Dependency & CssModuleDependency;
type CssDependencyOptions = Omit<LoaderDependency, "context">;

View file

@ -0,0 +1,57 @@
export = loader;
/**
* @this {import("webpack").LoaderContext<LoaderOptions>}
* @param {string} content
*/
declare function loader(
this: import("webpack").LoaderContext<MiniCssExtractPlugin.LoaderOptions>,
content: string
): string | undefined;
declare namespace loader {
export {
pitch,
Schema,
Compiler,
Compilation,
Chunk,
Module,
Source,
AssetInfo,
NormalModule,
LoaderOptions,
Locals,
TODO,
Dependency,
};
}
import MiniCssExtractPlugin = require("./index");
/**
* @this {import("webpack").LoaderContext<LoaderOptions>}
* @param {string} request
*/
declare function pitch(
this: import("webpack").LoaderContext<MiniCssExtractPlugin.LoaderOptions>,
request: string
): void;
type Schema = import("schema-utils/declarations/validate").Schema;
type Compiler = import("webpack").Compiler;
type Compilation = import("webpack").Compilation;
type Chunk = import("webpack").Chunk;
type Module = import("webpack").Module;
type Source = import("webpack").sources.Source;
type AssetInfo = import("webpack").AssetInfo;
type NormalModule = import("webpack").NormalModule;
type LoaderOptions = import("./index.js").LoaderOptions;
type Locals = {
[key: string]: string | Function;
};
type TODO = any;
type Dependency = {
identifier: string;
context: string | null;
content: Buffer;
media: string;
supports?: string | undefined;
layer?: string | undefined;
sourceMap?: Buffer | undefined;
};

67
my-app/node_modules/mini-css-extract-plugin/types/utils.d.ts generated vendored Executable file
View file

@ -0,0 +1,67 @@
export type Compilation = import("webpack").Compilation;
export type Module = import("webpack").Module;
export type LoaderContext = import("webpack").LoaderContext<any>;
/** @typedef {import("webpack").Compilation} Compilation */
/** @typedef {import("webpack").Module} Module */
/** @typedef {import("webpack").LoaderContext<any>} LoaderContext */
/**
* @returns {boolean}
*/
export function trueFn(): boolean;
/**
* @param {Compilation} compilation
* @param {string | number} id
* @returns {null | Module}
*/
export function findModuleById(
compilation: Compilation,
id: string | number
): null | Module;
/**
* @param {LoaderContext} loaderContext
* @param {string | Buffer} code
* @param {string} filename
* @returns {object}
*/
export function evalModuleCode(
loaderContext: LoaderContext,
code: string | Buffer,
filename: string
): object;
/**
* @param {Module} a
* @param {Module} b
* @returns {0 | 1 | -1}
*/
export function compareModulesByIdentifier(a: Module, b: Module): 0 | 1 | -1;
export const MODULE_TYPE: "css/mini-extract";
export const AUTO_PUBLIC_PATH: "__mini_css_extract_plugin_public_path_auto__";
export const ABSOLUTE_PUBLIC_PATH: "webpack:///mini-css-extract-plugin/";
export const BASE_URI: "webpack://";
export const SINGLE_DOT_PATH_SEGMENT: "__mini_css_extract_plugin_single_dot_path_segment__";
/**
* @param {LoaderContext} loaderContext
* @param {string} request
* @returns {string}
*/
export function stringifyRequest(
loaderContext: LoaderContext,
request: string
): string;
/**
*
* @param {string | function} value
* @returns {string}
*/
export function stringifyLocal(value: string | Function): string;
/**
* @param {string} filename
* @param {string} outputPath
* @param {boolean} enforceRelative
* @returns {string}
*/
export function getUndoPath(
filename: string,
outputPath: string,
enforceRelative: boolean
): string;