@modern-js/utils 1.7.5 → 1.7.6
Sign up to get free protection for your applications and to get access to all the features.
- package/CHANGELOG.md +8 -0
- package/compiled/webpack-chain/index.js +1 -0
- package/compiled/webpack-chain/license +373 -0
- package/compiled/webpack-chain/package.json +1 -0
- package/compiled/webpack-chain/types/index.d.ts +388 -0
- package/dist/chainId.d.ts +116 -0
- package/dist/chainId.js +118 -0
- package/dist/index.d.ts +1 -0
- package/dist/index.js +1 -0
- package/dist/monorepo.js +5 -1
- package/dist/prettyInstructions.d.ts +3 -0
- package/dist/prettyInstructions.js +11 -4
- package/package.json +6 -2
package/CHANGELOG.md
CHANGED
@@ -1,5 +1,13 @@
|
|
1
1
|
# @modern-js/utils
|
2
2
|
|
3
|
+
## 1.7.6
|
4
|
+
|
5
|
+
### Patch Changes
|
6
|
+
|
7
|
+
- 6451a098: fix: cyclic dependencies of @modern-js/core and @moden-js/webpack
|
8
|
+
- d5a2cfd8: fix(utils): isModernjsMonorepo should return false if there is no package.json
|
9
|
+
- 437367c6: fix(server): hmr not working when using proxy
|
10
|
+
|
3
11
|
## 1.7.5
|
4
12
|
|
5
13
|
### Patch Changes
|
@@ -0,0 +1 @@
|
|
1
|
+
(()=>{var e={256:function(e){(function(t,s){true?e.exports=s():0})(this,(function(){"use strict";var e=function isMergeableObject(e){return isNonNullObject(e)&&!isSpecial(e)};function isNonNullObject(e){return!!e&&typeof e==="object"}function isSpecial(e){var t=Object.prototype.toString.call(e);return t==="[object RegExp]"||t==="[object Date]"||isReactElement(e)}var t=typeof Symbol==="function"&&Symbol.for;var s=t?Symbol.for("react.element"):60103;function isReactElement(e){return e.$$typeof===s}function emptyTarget(e){return Array.isArray(e)?[]:{}}function cloneIfNecessary(t,s){var n=s&&s.clone===true;return n&&e(t)?deepmerge(emptyTarget(t),t,s):t}function defaultArrayMerge(t,s,n){var i=t.slice();s.forEach((function(s,r){if(typeof i[r]==="undefined"){i[r]=cloneIfNecessary(s,n)}else if(e(s)){i[r]=deepmerge(t[r],s,n)}else if(t.indexOf(s)===-1){i.push(cloneIfNecessary(s,n))}}));return i}function mergeObject(t,s,n){var i={};if(e(t)){Object.keys(t).forEach((function(e){i[e]=cloneIfNecessary(t[e],n)}))}Object.keys(s).forEach((function(r){if(!e(s[r])||!t[r]){i[r]=cloneIfNecessary(s[r],n)}else{i[r]=deepmerge(t[r],s[r],n)}}));return i}function deepmerge(e,t,s){var n=Array.isArray(t);var i=Array.isArray(e);var r=s||{arrayMerge:defaultArrayMerge};var o=n===i;if(!o){return cloneIfNecessary(t,s)}else if(n){var u=r.arrayMerge||defaultArrayMerge;return u(e,t,s)}else{return mergeObject(e,t,s)}}deepmerge.all=function deepmergeAll(e,t){if(!Array.isArray(e)||e.length<2){throw new Error("first argument should be an array with at least two elements")}return e.reduce((function(e,s){return deepmerge(e,s,t)}))};var n=deepmerge;return n}))},210:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:true});t.arrayToString=void 0;const arrayToString=(e,t,s)=>{const n=e.map((function(e,n){const i=s(e,n);if(i===undefined)return String(i);return t+i.split("\n").join(`\n${t}`)})).join(t?",\n":",");const i=t&&n?"\n":"";return`[${i}${n}${i}]`};t.arrayToString=arrayToString},262:(e,t,s)=>{"use strict";Object.defineProperty(t,"__esModule",{value:true});t.FunctionParser=t.dedentFunction=t.functionToString=t.USED_METHOD_KEY=void 0;const n=s(893);const i={" "(){}}[" "].toString().charAt(0)==='"';const r={Function:"function ",GeneratorFunction:"function* ",AsyncFunction:"async function ",AsyncGeneratorFunction:"async function* "};const o={Function:"",GeneratorFunction:"*",AsyncFunction:"async ",AsyncGeneratorFunction:"async *"};const u=new Set(("case delete else in instanceof new return throw typeof void "+", ; : + - ! ~ & | ^ * / % < > ? =").split(" "));t.USED_METHOD_KEY=new WeakSet;const functionToString=(e,s,n,i)=>{const r=typeof i==="string"?i:undefined;if(r!==undefined)t.USED_METHOD_KEY.add(e);return new FunctionParser(e,s,n,r).stringify()};t.functionToString=functionToString;function dedentFunction(e){let t;for(const s of e.split("\n").slice(1)){const n=/^[\s\t]+/.exec(s);if(!n)return e;const[i]=n;if(t===undefined)t=i;else if(i.length<t.length)t=i}return t?e.split(`\n${t}`).join("\n"):e}t.dedentFunction=dedentFunction;class FunctionParser{constructor(e,t,s,i){this.fn=e;this.indent=t;this.next=s;this.key=i;this.pos=0;this.hadKeyword=false;this.fnString=Function.prototype.toString.call(e);this.fnType=e.constructor.name;this.keyQuote=i===undefined?"":n.quoteKey(i,s);this.keyPrefix=i===undefined?"":`${this.keyQuote}:${t?" ":""}`;this.isMethodCandidate=i===undefined?false:this.fn.name===""||this.fn.name===i}stringify(){const e=this.tryParse();if(!e){return`${this.keyPrefix}void ${this.next(this.fnString)}`}return dedentFunction(e)}getPrefix(){if(this.isMethodCandidate&&!this.hadKeyword){return o[this.fnType]+this.keyQuote}return this.keyPrefix+r[this.fnType]}tryParse(){if(this.fnString[this.fnString.length-1]!=="}"){return this.keyPrefix+this.fnString}if(this.fn.name){const e=this.tryStrippingName();if(e)return e}const e=this.pos;if(this.consumeSyntax()==="class")return this.fnString;this.pos=e;if(this.tryParsePrefixTokens()){const e=this.tryStrippingName();if(e)return e;let t=this.pos;switch(this.consumeSyntax("WORD_LIKE")){case"WORD_LIKE":if(this.isMethodCandidate&&!this.hadKeyword){t=this.pos}case"()":if(this.fnString.substr(this.pos,2)==="=>"){return this.keyPrefix+this.fnString}this.pos=t;case'"':case"'":case"[]":return this.getPrefix()+this.fnString.substr(this.pos)}}}tryStrippingName(){if(i){return}let e=this.pos;const t=this.fnString.substr(this.pos,this.fn.name.length);if(t===this.fn.name){this.pos+=t.length;if(this.consumeSyntax()==="()"&&this.consumeSyntax()==="{}"&&this.pos===this.fnString.length){if(this.isMethodCandidate||!n.isValidVariableName(t)){e+=t.length}return this.getPrefix()+this.fnString.substr(e)}}this.pos=e}tryParsePrefixTokens(){let e=this.pos;this.hadKeyword=false;switch(this.fnType){case"AsyncFunction":if(this.consumeSyntax()!=="async")return false;e=this.pos;case"Function":if(this.consumeSyntax()==="function"){this.hadKeyword=true}else{this.pos=e}return true;case"AsyncGeneratorFunction":if(this.consumeSyntax()!=="async")return false;case"GeneratorFunction":let t=this.consumeSyntax();if(t==="function"){t=this.consumeSyntax();this.hadKeyword=true}return t==="*"}}consumeSyntax(e){const t=this.consumeMatch(/^(?:([A-Za-z_0-9$\xA0-\uFFFF]+)|=>|\+\+|\-\-|.)/);if(!t)return;const[s,n]=t;this.consumeWhitespace();if(n)return e||n;switch(s){case"(":return this.consumeSyntaxUntil("(",")");case"[":return this.consumeSyntaxUntil("[","]");case"{":return this.consumeSyntaxUntil("{","}");case"`":return this.consumeTemplate();case'"':return this.consumeRegExp(/^(?:[^\\"]|\\.)*"/,'"');case"'":return this.consumeRegExp(/^(?:[^\\']|\\.)*'/,"'")}return s}consumeSyntaxUntil(e,t){let s=true;for(;;){const n=this.consumeSyntax();if(n===t)return e+t;if(!n||n===")"||n==="]"||n==="}")return;if(n==="/"&&s&&this.consumeMatch(/^(?:\\.|[^\\\/\n[]|\[(?:\\.|[^\]])*\])+\/[a-z]*/)){s=false;this.consumeWhitespace()}else{s=u.has(n)}}}consumeMatch(e){const t=e.exec(this.fnString.substr(this.pos));if(t)this.pos+=t[0].length;return t}consumeRegExp(e,t){const s=e.exec(this.fnString.substr(this.pos));if(!s)return;this.pos+=s[0].length;this.consumeWhitespace();return t}consumeTemplate(){for(;;){this.consumeMatch(/^(?:[^`$\\]|\\.|\$(?!{))*/);if(this.fnString[this.pos]==="`"){this.pos++;this.consumeWhitespace();return"`"}if(this.fnString.substr(this.pos,2)==="${"){this.pos+=2;this.consumeWhitespace();if(this.consumeSyntaxUntil("{","}"))continue}return}}consumeWhitespace(){this.consumeMatch(/^(?:\s|\/\/.*|\/\*[^]*?\*\/)*/)}}t.FunctionParser=FunctionParser},592:(e,t,s)=>{"use strict";Object.defineProperty(t,"__esModule",{value:true});t.stringify=void 0;const n=s(761);const i=s(893);const r=Symbol("root");function stringify(e,t,s,n={}){const o=typeof s==="string"?s:" ".repeat(s||0);const u=[];const a=new Set;const c=new Map;const l=new Map;let h=0;const{maxDepth:f=100,references:p=false,skipUndefinedProperties:d=false,maxValues:g=1e5}=n;const m=replacerToString(t);const onNext=(e,t)=>{if(++h>g)return;if(d&&e===undefined)return;if(u.length>f)return;if(t===undefined)return m(e,o,onNext,t);u.push(t);const s=y(e,t===r?undefined:t);u.pop();return s};const y=p?(e,t)=>{if(e!==null&&(typeof e==="object"||typeof e==="function"||typeof e==="symbol")){if(c.has(e)){l.set(u.slice(1),c.get(e));return m(undefined,o,onNext,t)}c.set(e,u.slice(1))}return m(e,o,onNext,t)}:(e,t)=>{if(a.has(e))return;a.add(e);const s=m(e,o,onNext,t);a.delete(e);return s};const b=onNext(e,r);if(l.size){const e=o?" ":"";const t=o?"\n":"";let s=`var x${e}=${e}${b};${t}`;for(const[n,r]of l.entries()){const o=i.stringifyPath(n,onNext);const u=i.stringifyPath(r,onNext);s+=`x${o}${e}=${e}x${u};${t}`}return`(function${e}()${e}{${t}${s}return x;${t}}())`}return b}t.stringify=stringify;function replacerToString(e){if(!e)return n.toString;return(t,s,i,r)=>e(t,s,(e=>n.toString(e,s,i,r)),r)}},125:(e,t,s)=>{"use strict";Object.defineProperty(t,"__esModule",{value:true});t.objectToString=void 0;const n=s(893);const i=s(262);const r=s(210);const objectToString=(e,t,s,n)=>{if(typeof Buffer==="function"&&Buffer.isBuffer(e)){return`Buffer.from(${s(e.toString("base64"))}, 'base64')`}if(typeof global==="object"&&e===global){return globalToString(e,t,s,n)}const i=o[Object.prototype.toString.call(e)];return i?i(e,t,s,n):undefined};t.objectToString=objectToString;const rawObjectToString=(e,t,s,r)=>{const o=t?"\n":"";const u=t?" ":"";const a=Object.keys(e).reduce((function(r,o){const a=e[o];const c=s(a,o);if(c===undefined)return r;const l=c.split("\n").join(`\n${t}`);if(i.USED_METHOD_KEY.has(a)){r.push(`${t}${l}`);return r}r.push(`${t}${n.quoteKey(o,s)}:${u}${l}`);return r}),[]).join(`,${o}`);if(a==="")return"{}";return`{${o}${a}${o}}`};const globalToString=(e,t,s)=>`Function(${s("return this")})()`;const o={"[object Array]":r.arrayToString,"[object Object]":rawObjectToString,"[object Error]":(e,t,s)=>`new Error(${s(e.message)})`,"[object Date]":e=>`new Date(${e.getTime()})`,"[object String]":(e,t,s)=>`new String(${s(e.toString())})`,"[object Number]":e=>`new Number(${e})`,"[object Boolean]":e=>`new Boolean(${e})`,"[object Set]":(e,t,s)=>`new Set(${s(Array.from(e))})`,"[object Map]":(e,t,s)=>`new Map(${s(Array.from(e))})`,"[object RegExp]":String,"[object global]":globalToString,"[object Window]":globalToString}},893:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:true});t.stringifyPath=t.quoteKey=t.isValidVariableName=t.IS_VALID_IDENTIFIER=t.quoteString=void 0;const s=/[\\\'\x00-\x1f\x7f-\x9f\u00ad\u0600-\u0604\u070f\u17b4\u17b5\u200c-\u200f\u2028-\u202f\u2060-\u206f\ufeff\ufff0-\uffff]/g;const n=new Map([["\b","\\b"],["\t","\\t"],["\n","\\n"],["\f","\\f"],["\r","\\r"],["'","\\'"],['"','\\"'],["\\","\\\\"]]);function escapeChar(e){return n.get(e)||`\\u${`0000${e.charCodeAt(0).toString(16)}`.slice(-4)}`}function quoteString(e){return`'${e.replace(s,escapeChar)}'`}t.quoteString=quoteString;const i=new Set(("break else new var case finally return void catch for switch while "+"continue function this with default if throw delete in try "+"do instanceof typeof abstract enum int short boolean export "+"interface static byte extends long super char final native synchronized "+"class float package throws const goto private transient debugger "+"implements protected volatile double import public let yield").split(" "));t.IS_VALID_IDENTIFIER=/^[A-Za-z_$][A-Za-z0-9_$]*$/;function isValidVariableName(e){return typeof e==="string"&&!i.has(e)&&t.IS_VALID_IDENTIFIER.test(e)}t.isValidVariableName=isValidVariableName;function quoteKey(e,t){return isValidVariableName(e)?e:t(e)}t.quoteKey=quoteKey;function stringifyPath(e,t){let s="";for(const n of e){if(isValidVariableName(n)){s+=`.${n}`}else{s+=`[${t(n)}]`}}return s}t.stringifyPath=stringifyPath},761:(e,t,s)=>{"use strict";Object.defineProperty(t,"__esModule",{value:true});t.toString=void 0;const n=s(893);const i=s(125);const r=s(262);const o={string:n.quoteString,number:e=>Object.is(e,-0)?"-0":String(e),boolean:String,symbol:(e,t,s)=>{const n=Symbol.keyFor(e);if(n!==undefined)return`Symbol.for(${s(n)})`;return`Symbol(${s(e.description)})`},bigint:(e,t,s)=>`BigInt(${s(String(e))})`,undefined:String,object:i.objectToString,function:r.functionToString};const toString=(e,t,s,n)=>{if(e===null)return"null";return o[typeof e](e,t,s,n)};t.toString=toString},430:e=>{e.exports=class{constructor(e){this.parent=e}batch(e){e(this);return this}end(){return this.parent}}},717:(e,t,s)=>{const n=s(256);const i=s(430);e.exports=class extends i{constructor(e){super(e);this.store=new Map}extend(e){this.shorthands=e;e.forEach((e=>{this[e]=t=>this.set(e,t)}));return this}clear(){this.store.clear();return this}delete(e){this.store.delete(e);return this}order(){const e=[...this.store].reduce(((e,[t,s])=>{e[t]=s;return e}),{});const t=Object.keys(e);const s=[...t];t.forEach((t=>{if(!e[t]){return}const{__before:n,__after:i}=e[t];if(n&&s.includes(n)){s.splice(s.indexOf(t),1);s.splice(s.indexOf(n),0,t)}else if(i&&s.includes(i)){s.splice(s.indexOf(t),1);s.splice(s.indexOf(i)+1,0,t)}}));return{entries:e,order:s}}entries(){const{entries:e,order:t}=this.order();if(t.length){return e}return undefined}values(){const{entries:e,order:t}=this.order();return t.map((t=>e[t]))}get(e){return this.store.get(e)}getOrCompute(e,t){if(!this.has(e)){this.set(e,t())}return this.get(e)}has(e){return this.store.has(e)}set(e,t){this.store.set(e,t);return this}merge(e,t=[]){Object.keys(e).forEach((s=>{if(t.includes(s)){return}const i=e[s];if(!Array.isArray(i)&&typeof i!=="object"||i===null||!this.has(s)){this.set(s,i)}else{this.set(s,n(this.get(s),i))}}));return this}clean(e){return Object.keys(e).reduce(((t,s)=>{const n=e[s];if(n===undefined){return t}if(Array.isArray(n)&&!n.length){return t}if(Object.prototype.toString.call(n)==="[object Object]"&&!Object.keys(n).length){return t}t[s]=n;return t}),{})}when(e,t=Function.prototype,s=Function.prototype){if(e){t(this)}else{s(this)}return this}}},534:(e,t,s)=>{const n=s(430);e.exports=class extends n{constructor(e){super(e);this.store=new Set}add(e){this.store.add(e);return this}prepend(e){this.store=new Set([e,...this.store]);return this}clear(){this.store.clear();return this}delete(e){this.store.delete(e);return this}values(){return[...this.store]}has(e){return this.store.has(e)}merge(e){this.store=new Set([...this.store,...e]);return this}when(e,t=Function.prototype,s=Function.prototype){if(e){t(this)}else{s(this)}return this}}},555:(e,t,s)=>{const n=s(717);const i=s(534);const r=s(777);const o=s(645);const u=s(677);const a=s(138);const c=s(383);const l=s(819);const h=s(731);const f=s(2);e.exports=class extends n{constructor(){super();this.devServer=new a(this);this.entryPoints=new n(this);this.module=new l(this);this.node=new n(this);this.optimization=new h(this);this.output=new u(this);this.performance=new f(this);this.plugins=new n(this);this.resolve=new r(this);this.resolveLoader=new o(this);this.extend(["amd","bail","cache","context","devtool","externals","loader","mode","name","parallelism","profile","recordsInputPath","recordsPath","recordsOutputPath","stats","target","watch","watchOptions"])}static toString(e,{verbose:t=false,configPrefix:n="config"}={}){const{stringify:i}=s(592);return i(e,((e,s,i)=>{if(e&&e.__pluginName){const t=`/* ${n}.${e.__pluginType}('${e.__pluginName}') */\n`;const s=e.__pluginPath?`(require(${i(e.__pluginPath)}))`:e.__pluginConstructorName;if(s){const n=i(e.__pluginArgs).slice(1,-1);return`${t}new ${s}(${n})`}return t+i(e.__pluginArgs&&e.__pluginArgs.length?{args:e.__pluginArgs}:{})}if(e&&e.__ruleNames){const t=e.__ruleTypes;const s=`/* ${n}.module${e.__ruleNames.map(((e,s)=>`.${t?t[s]:"rule"}('${e}')`)).join("")}${e.__useName?`.use('${e.__useName}')`:``} */\n`;return s+i(e)}if(e&&e.__expression){return e.__expression}if(typeof e==="function"){if(!t&&e.toString().length>100){return`function () { /* omitted long function */ }`}}return i(e)}),2)}entry(e){return this.entryPoints.getOrCompute(e,(()=>new i(this)))}plugin(e){return this.plugins.getOrCompute(e,(()=>new c(this,e)))}toConfig(){const e=this.entryPoints.entries()||{};return this.clean(Object.assign(this.entries()||{},{node:this.node.entries(),output:this.output.entries(),resolve:this.resolve.toConfig(),resolveLoader:this.resolveLoader.toConfig(),devServer:this.devServer.toConfig(),module:this.module.toConfig(),optimization:this.optimization.toConfig(),plugins:this.plugins.values().map((e=>e.toConfig())),performance:this.performance.entries(),entry:Object.keys(e).reduce(((t,s)=>Object.assign(t,{[s]:e[s].values()})),{})}))}toString(t){return e.exports.toString(this.toConfig(),t)}merge(e={},t=[]){const s=["node","output","resolve","resolveLoader","devServer","optimization","performance","module"];if(!t.includes("entry")&&"entry"in e){Object.keys(e.entry).forEach((t=>this.entry(t).merge([].concat(e.entry[t]))))}if(!t.includes("plugin")&&"plugin"in e){Object.keys(e.plugin).forEach((t=>this.plugin(t).merge(e.plugin[t])))}s.forEach((s=>{if(!t.includes(s)&&s in e){this[s].merge(e[s])}}));return super.merge(e,[...t,...s,"entry","plugin"])}}},138:(e,t,s)=>{const n=s(717);const i=s(534);e.exports=class extends n{constructor(e){super(e);this.allowedHosts=new i(this);this.extend(["after","before","bonjour","clientLogLevel","color","compress","contentBase","disableHostCheck","filename","headers","historyApiFallback","host","hot","hotOnly","http2","https","index","info","inline","lazy","mimeTypes","noInfo","open","openPage","overlay","pfx","pfxPassphrase","port","proxy","progress","public","publicPath","quiet","setup","socket","sockHost","sockPath","sockPort","staticOptions","stats","stdin","useLocalIp","watchContentBase","watchOptions","writeToDisk"])}toConfig(){return this.clean({allowedHosts:this.allowedHosts.values(),...this.entries()||{}})}merge(e,t=[]){if(!t.includes("allowedHosts")&&"allowedHosts"in e){this.allowedHosts.merge(e.allowedHosts)}return super.merge(e,["allowedHosts"])}}},819:(e,t,s)=>{const n=s(717);const i=s(693);e.exports=class extends n{constructor(e){super(e);this.rules=new n(this);this.defaultRules=new n(this);this.extend(["noParse","strictExportPresence"])}defaultRule(e){return this.defaultRules.getOrCompute(e,(()=>new i(this,e,"defaultRule")))}rule(e){return this.rules.getOrCompute(e,(()=>new i(this,e,"rule")))}toConfig(){return this.clean(Object.assign(this.entries()||{},{defaultRules:this.defaultRules.values().map((e=>e.toConfig())),rules:this.rules.values().map((e=>e.toConfig()))}))}merge(e,t=[]){if(!t.includes("rule")&&"rule"in e){Object.keys(e.rule).forEach((t=>this.rule(t).merge(e.rule[t])))}if(!t.includes("defaultRule")&&"defaultRule"in e){Object.keys(e.defaultRule).forEach((t=>this.defaultRule(t).merge(e.defaultRule[t])))}return super.merge(e,["rule","defaultRule"])}}},731:(e,t,s)=>{const n=s(717);const i=s(383);e.exports=class extends n{constructor(e){super(e);this.minimizers=new n(this);this.extend(["concatenateModules","flagIncludedChunks","mergeDuplicateChunks","minimize","namedChunks","namedModules","nodeEnv","noEmitOnErrors","occurrenceOrder","portableRecords","providedExports","removeAvailableModules","removeEmptyChunks","runtimeChunk","sideEffects","splitChunks","usedExports"])}minimizer(e){if(Array.isArray(e)){throw new Error("optimization.minimizer() no longer supports being passed an array. "+"Either switch to the new syntax (https://github.com/neutrinojs/webpack-chain#config-optimization-minimizers-adding) or downgrade to webpack-chain 4. "+"If using Vue this likely means a Vue plugin has not yet been updated to support Vue CLI 4+.")}return this.minimizers.getOrCompute(e,(()=>new i(this,e,"optimization.minimizer")))}toConfig(){return this.clean(Object.assign(this.entries()||{},{minimizer:this.minimizers.values().map((e=>e.toConfig()))}))}merge(e,t=[]){if(!t.includes("minimizer")&&"minimizer"in e){Object.keys(e.minimizer).forEach((t=>this.minimizer(t).merge(e.minimizer[t])))}return super.merge(e,[...t,"minimizer"])}}},282:e=>{e.exports=e=>class extends e{before(e){if(this.__after){throw new Error(`Unable to set .before(${JSON.stringify(e)}) with existing value for .after()`)}this.__before=e;return this}after(e){if(this.__before){throw new Error(`Unable to set .after(${JSON.stringify(e)}) with existing value for .before()`)}this.__after=e;return this}merge(e,t=[]){if(e.before){this.before(e.before)}if(e.after){this.after(e.after)}return super.merge(e,[...t,"before","after"])}}},677:(e,t,s)=>{const n=s(717);e.exports=class extends n{constructor(e){super(e);this.extend(["auxiliaryComment","chunkCallbackName","chunkFilename","chunkLoadTimeout","crossOriginLoading","devtoolFallbackModuleFilenameTemplate","devtoolLineToLine","devtoolModuleFilenameTemplate","devtoolNamespace","filename","futureEmitAssets","globalObject","hashDigest","hashDigestLength","hashFunction","hashSalt","hotUpdateChunkFilename","hotUpdateFunction","hotUpdateMainFilename","jsonpFunction","library","libraryExport","libraryTarget","path","pathinfo","publicPath","sourceMapFilename","sourcePrefix","strictModuleExceptionHandling","umdNamedDefine","webassemblyModuleFilename"])}}},2:(e,t,s)=>{const n=s(717);e.exports=class extends n{constructor(e){super(e);this.extend(["assetFilter","hints","maxAssetSize","maxEntrypointSize"])}}},383:(e,t,s)=>{const n=s(717);const i=s(282);e.exports=i(class extends n{constructor(e,t,s="plugin"){super(e);this.name=t;this.type=s;this.extend(["init"]);this.init(((e,t=[])=>{if(typeof e==="function"){return new e(...t)}return e}))}use(e,t=[]){return this.set("plugin",e).set("args",t)}tap(e){if(!this.has("plugin")){throw new Error(`Cannot call .tap() on a plugin that has not yet been defined. Call ${this.type}('${this.name}').use(<Plugin>) first.`)}this.set("args",e(this.get("args")||[]));return this}set(e,t){if(e==="args"&&!Array.isArray(t)){throw new Error("args must be an array of arguments")}return super.set(e,t)}merge(e,t=[]){if("plugin"in e){this.set("plugin",e.plugin)}if("args"in e){this.set("args",e.args)}return super.merge(e,[...t,"args","plugin"])}toConfig(){const e=this.get("init");let t=this.get("plugin");const n=this.get("args");let i=null;if(t===undefined){throw new Error(`Invalid ${this.type} configuration: ${this.type}('${this.name}').use(<Plugin>) was not called to specify the plugin`)}if(typeof t==="string"){i=t;t=s(875)(i)}const r=t.__expression?`(${t.__expression})`:t.name;const o=e(t,n);Object.defineProperties(o,{__pluginName:{value:this.name},__pluginType:{value:this.type},__pluginArgs:{value:n},__pluginConstructorName:{value:r},__pluginPath:{value:i}});return o}})},777:(e,t,s)=>{const n=s(717);const i=s(534);const r=s(383);e.exports=class extends n{constructor(e){super(e);this.alias=new n(this);this.aliasFields=new i(this);this.descriptionFiles=new i(this);this.extensions=new i(this);this.mainFields=new i(this);this.mainFiles=new i(this);this.modules=new i(this);this.plugins=new n(this);this.extend(["cachePredicate","cacheWithContext","concord","enforceExtension","enforceModuleExtension","symlinks","unsafeCache"])}plugin(e){return this.plugins.getOrCompute(e,(()=>new r(this,e,"resolve.plugin")))}toConfig(){return this.clean(Object.assign(this.entries()||{},{alias:this.alias.entries(),aliasFields:this.aliasFields.values(),descriptionFiles:this.descriptionFiles.values(),extensions:this.extensions.values(),mainFields:this.mainFields.values(),mainFiles:this.mainFiles.values(),modules:this.modules.values(),plugins:this.plugins.values().map((e=>e.toConfig()))}))}merge(e,t=[]){const s=["alias","aliasFields","descriptionFiles","extensions","mainFields","mainFiles","modules"];if(!t.includes("plugin")&&"plugin"in e){Object.keys(e.plugin).forEach((t=>this.plugin(t).merge(e.plugin[t])))}s.forEach((s=>{if(!t.includes(s)&&s in e){this[s].merge(e[s])}}));return super.merge(e,[...t,...s,"plugin"])}}},645:(e,t,s)=>{const n=s(777);const i=s(534);e.exports=class extends n{constructor(e){super(e);this.moduleExtensions=new i(this);this.packageMains=new i(this)}toConfig(){return this.clean({moduleExtensions:this.moduleExtensions.values(),packageMains:this.packageMains.values(),...super.toConfig()})}merge(e,t=[]){const s=["moduleExtensions","packageMains"];s.forEach((s=>{if(!t.includes(s)&&s in e){this[s].merge(e[s])}}));return super.merge(e,[...t,...s])}}},693:(e,t,s)=>{const n=s(717);const i=s(534);const r=s(282);const o=s(993);const u=s(777);function toArray(e){return Array.isArray(e)?e:[e]}const a=r(class extends n{constructor(e,t,s="rule"){super(e);this.name=t;this.names=[];this.ruleType=s;this.ruleTypes=[];let r=this;while(r instanceof a){this.names.unshift(r.name);this.ruleTypes.unshift(r.ruleType);r=r.parent}this.uses=new n(this);this.include=new i(this);this.exclude=new i(this);this.rules=new n(this);this.oneOfs=new n(this);this.resolve=new u(this);this.extend(["enforce","issuer","parser","resource","resourceQuery","sideEffects","test","type"])}use(e){return this.uses.getOrCompute(e,(()=>new o(this,e)))}rule(e){return this.rules.getOrCompute(e,(()=>new a(this,e,"rule")))}oneOf(e){return this.oneOfs.getOrCompute(e,(()=>new a(this,e,"oneOf")))}pre(){return this.enforce("pre")}post(){return this.enforce("post")}toConfig(){const e=this.clean(Object.assign(this.entries()||{},{include:this.include.values(),exclude:this.exclude.values(),rules:this.rules.values().map((e=>e.toConfig())),oneOf:this.oneOfs.values().map((e=>e.toConfig())),use:this.uses.values().map((e=>e.toConfig())),resolve:this.resolve.toConfig()}));Object.defineProperties(e,{__ruleNames:{value:this.names},__ruleTypes:{value:this.ruleTypes}});return e}merge(e,t=[]){if(!t.includes("include")&&"include"in e){this.include.merge(toArray(e.include))}if(!t.includes("exclude")&&"exclude"in e){this.exclude.merge(toArray(e.exclude))}if(!t.includes("use")&&"use"in e){Object.keys(e.use).forEach((t=>this.use(t).merge(e.use[t])))}if(!t.includes("rules")&&"rules"in e){Object.keys(e.rules).forEach((t=>this.rule(t).merge(e.rules[t])))}if(!t.includes("oneOf")&&"oneOf"in e){Object.keys(e.oneOf).forEach((t=>this.oneOf(t).merge(e.oneOf[t])))}if(!t.includes("resolve")&&"resolve"in e){this.resolve.merge(e.resolve)}if(!t.includes("test")&&"test"in e){this.test(e.test instanceof RegExp||typeof e.test==="function"?e.test:new RegExp(e.test))}return super.merge(e,[...t,"include","exclude","use","rules","oneOf","resolve","test"])}});e.exports=a},993:(e,t,s)=>{const n=s(256);const i=s(717);const r=s(282);e.exports=r(class extends i{constructor(e,t){super(e);this.name=t;this.extend(["loader","options"])}tap(e){this.options(e(this.get("options")));return this}merge(e,t=[]){if(!t.includes("loader")&&"loader"in e){this.loader(e.loader)}if(!t.includes("options")&&"options"in e){this.options(n(this.store.get("options")||{},e.options))}return super.merge(e,[...t,"loader","options"])}toConfig(){const e=this.clean(this.entries()||{});Object.defineProperties(e,{__useName:{value:this.name},__ruleNames:{value:this.parent&&this.parent.names},__ruleTypes:{value:this.parent&&this.parent.ruleTypes}});return e}})},875:e=>{function webpackEmptyContext(e){var t=new Error("Cannot find module '"+e+"'");t.code="MODULE_NOT_FOUND";throw t}webpackEmptyContext.keys=()=>[];webpackEmptyContext.resolve=webpackEmptyContext;webpackEmptyContext.id=875;e.exports=webpackEmptyContext}};var t={};function __nccwpck_require__(s){var n=t[s];if(n!==undefined){return n.exports}var i=t[s]={exports:{}};var r=true;try{e[s].call(i.exports,i,i.exports,__nccwpck_require__);r=false}finally{if(r)delete t[s]}return i.exports}(()=>{__nccwpck_require__.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t)})();if(typeof __nccwpck_require__!=="undefined")__nccwpck_require__.ab=__dirname+"/";var s=__nccwpck_require__(555);module.exports=s})();
|
@@ -0,0 +1,373 @@
|
|
1
|
+
Mozilla Public License Version 2.0
|
2
|
+
==================================
|
3
|
+
|
4
|
+
1. Definitions
|
5
|
+
--------------
|
6
|
+
|
7
|
+
1.1. "Contributor"
|
8
|
+
means each individual or legal entity that creates, contributes to
|
9
|
+
the creation of, or owns Covered Software.
|
10
|
+
|
11
|
+
1.2. "Contributor Version"
|
12
|
+
means the combination of the Contributions of others (if any) used
|
13
|
+
by a Contributor and that particular Contributor's Contribution.
|
14
|
+
|
15
|
+
1.3. "Contribution"
|
16
|
+
means Covered Software of a particular Contributor.
|
17
|
+
|
18
|
+
1.4. "Covered Software"
|
19
|
+
means Source Code Form to which the initial Contributor has attached
|
20
|
+
the notice in Exhibit A, the Executable Form of such Source Code
|
21
|
+
Form, and Modifications of such Source Code Form, in each case
|
22
|
+
including portions thereof.
|
23
|
+
|
24
|
+
1.5. "Incompatible With Secondary Licenses"
|
25
|
+
means
|
26
|
+
|
27
|
+
(a) that the initial Contributor has attached the notice described
|
28
|
+
in Exhibit B to the Covered Software; or
|
29
|
+
|
30
|
+
(b) that the Covered Software was made available under the terms of
|
31
|
+
version 1.1 or earlier of the License, but not also under the
|
32
|
+
terms of a Secondary License.
|
33
|
+
|
34
|
+
1.6. "Executable Form"
|
35
|
+
means any form of the work other than Source Code Form.
|
36
|
+
|
37
|
+
1.7. "Larger Work"
|
38
|
+
means a work that combines Covered Software with other material, in
|
39
|
+
a separate file or files, that is not Covered Software.
|
40
|
+
|
41
|
+
1.8. "License"
|
42
|
+
means this document.
|
43
|
+
|
44
|
+
1.9. "Licensable"
|
45
|
+
means having the right to grant, to the maximum extent possible,
|
46
|
+
whether at the time of the initial grant or subsequently, any and
|
47
|
+
all of the rights conveyed by this License.
|
48
|
+
|
49
|
+
1.10. "Modifications"
|
50
|
+
means any of the following:
|
51
|
+
|
52
|
+
(a) any file in Source Code Form that results from an addition to,
|
53
|
+
deletion from, or modification of the contents of Covered
|
54
|
+
Software; or
|
55
|
+
|
56
|
+
(b) any new file in Source Code Form that contains any Covered
|
57
|
+
Software.
|
58
|
+
|
59
|
+
1.11. "Patent Claims" of a Contributor
|
60
|
+
means any patent claim(s), including without limitation, method,
|
61
|
+
process, and apparatus claims, in any patent Licensable by such
|
62
|
+
Contributor that would be infringed, but for the grant of the
|
63
|
+
License, by the making, using, selling, offering for sale, having
|
64
|
+
made, import, or transfer of either its Contributions or its
|
65
|
+
Contributor Version.
|
66
|
+
|
67
|
+
1.12. "Secondary License"
|
68
|
+
means either the GNU General Public License, Version 2.0, the GNU
|
69
|
+
Lesser General Public License, Version 2.1, the GNU Affero General
|
70
|
+
Public License, Version 3.0, or any later versions of those
|
71
|
+
licenses.
|
72
|
+
|
73
|
+
1.13. "Source Code Form"
|
74
|
+
means the form of the work preferred for making modifications.
|
75
|
+
|
76
|
+
1.14. "You" (or "Your")
|
77
|
+
means an individual or a legal entity exercising rights under this
|
78
|
+
License. For legal entities, "You" includes any entity that
|
79
|
+
controls, is controlled by, or is under common control with You. For
|
80
|
+
purposes of this definition, "control" means (a) the power, direct
|
81
|
+
or indirect, to cause the direction or management of such entity,
|
82
|
+
whether by contract or otherwise, or (b) ownership of more than
|
83
|
+
fifty percent (50%) of the outstanding shares or beneficial
|
84
|
+
ownership of such entity.
|
85
|
+
|
86
|
+
2. License Grants and Conditions
|
87
|
+
--------------------------------
|
88
|
+
|
89
|
+
2.1. Grants
|
90
|
+
|
91
|
+
Each Contributor hereby grants You a world-wide, royalty-free,
|
92
|
+
non-exclusive license:
|
93
|
+
|
94
|
+
(a) under intellectual property rights (other than patent or trademark)
|
95
|
+
Licensable by such Contributor to use, reproduce, make available,
|
96
|
+
modify, display, perform, distribute, and otherwise exploit its
|
97
|
+
Contributions, either on an unmodified basis, with Modifications, or
|
98
|
+
as part of a Larger Work; and
|
99
|
+
|
100
|
+
(b) under Patent Claims of such Contributor to make, use, sell, offer
|
101
|
+
for sale, have made, import, and otherwise transfer either its
|
102
|
+
Contributions or its Contributor Version.
|
103
|
+
|
104
|
+
2.2. Effective Date
|
105
|
+
|
106
|
+
The licenses granted in Section 2.1 with respect to any Contribution
|
107
|
+
become effective for each Contribution on the date the Contributor first
|
108
|
+
distributes such Contribution.
|
109
|
+
|
110
|
+
2.3. Limitations on Grant Scope
|
111
|
+
|
112
|
+
The licenses granted in this Section 2 are the only rights granted under
|
113
|
+
this License. No additional rights or licenses will be implied from the
|
114
|
+
distribution or licensing of Covered Software under this License.
|
115
|
+
Notwithstanding Section 2.1(b) above, no patent license is granted by a
|
116
|
+
Contributor:
|
117
|
+
|
118
|
+
(a) for any code that a Contributor has removed from Covered Software;
|
119
|
+
or
|
120
|
+
|
121
|
+
(b) for infringements caused by: (i) Your and any other third party's
|
122
|
+
modifications of Covered Software, or (ii) the combination of its
|
123
|
+
Contributions with other software (except as part of its Contributor
|
124
|
+
Version); or
|
125
|
+
|
126
|
+
(c) under Patent Claims infringed by Covered Software in the absence of
|
127
|
+
its Contributions.
|
128
|
+
|
129
|
+
This License does not grant any rights in the trademarks, service marks,
|
130
|
+
or logos of any Contributor (except as may be necessary to comply with
|
131
|
+
the notice requirements in Section 3.4).
|
132
|
+
|
133
|
+
2.4. Subsequent Licenses
|
134
|
+
|
135
|
+
No Contributor makes additional grants as a result of Your choice to
|
136
|
+
distribute the Covered Software under a subsequent version of this
|
137
|
+
License (see Section 10.2) or under the terms of a Secondary License (if
|
138
|
+
permitted under the terms of Section 3.3).
|
139
|
+
|
140
|
+
2.5. Representation
|
141
|
+
|
142
|
+
Each Contributor represents that the Contributor believes its
|
143
|
+
Contributions are its original creation(s) or it has sufficient rights
|
144
|
+
to grant the rights to its Contributions conveyed by this License.
|
145
|
+
|
146
|
+
2.6. Fair Use
|
147
|
+
|
148
|
+
This License is not intended to limit any rights You have under
|
149
|
+
applicable copyright doctrines of fair use, fair dealing, or other
|
150
|
+
equivalents.
|
151
|
+
|
152
|
+
2.7. Conditions
|
153
|
+
|
154
|
+
Sections 3.1, 3.2, 3.3, and 3.4 are conditions of the licenses granted
|
155
|
+
in Section 2.1.
|
156
|
+
|
157
|
+
3. Responsibilities
|
158
|
+
-------------------
|
159
|
+
|
160
|
+
3.1. Distribution of Source Form
|
161
|
+
|
162
|
+
All distribution of Covered Software in Source Code Form, including any
|
163
|
+
Modifications that You create or to which You contribute, must be under
|
164
|
+
the terms of this License. You must inform recipients that the Source
|
165
|
+
Code Form of the Covered Software is governed by the terms of this
|
166
|
+
License, and how they can obtain a copy of this License. You may not
|
167
|
+
attempt to alter or restrict the recipients' rights in the Source Code
|
168
|
+
Form.
|
169
|
+
|
170
|
+
3.2. Distribution of Executable Form
|
171
|
+
|
172
|
+
If You distribute Covered Software in Executable Form then:
|
173
|
+
|
174
|
+
(a) such Covered Software must also be made available in Source Code
|
175
|
+
Form, as described in Section 3.1, and You must inform recipients of
|
176
|
+
the Executable Form how they can obtain a copy of such Source Code
|
177
|
+
Form by reasonable means in a timely manner, at a charge no more
|
178
|
+
than the cost of distribution to the recipient; and
|
179
|
+
|
180
|
+
(b) You may distribute such Executable Form under the terms of this
|
181
|
+
License, or sublicense it under different terms, provided that the
|
182
|
+
license for the Executable Form does not attempt to limit or alter
|
183
|
+
the recipients' rights in the Source Code Form under this License.
|
184
|
+
|
185
|
+
3.3. Distribution of a Larger Work
|
186
|
+
|
187
|
+
You may create and distribute a Larger Work under terms of Your choice,
|
188
|
+
provided that You also comply with the requirements of this License for
|
189
|
+
the Covered Software. If the Larger Work is a combination of Covered
|
190
|
+
Software with a work governed by one or more Secondary Licenses, and the
|
191
|
+
Covered Software is not Incompatible With Secondary Licenses, this
|
192
|
+
License permits You to additionally distribute such Covered Software
|
193
|
+
under the terms of such Secondary License(s), so that the recipient of
|
194
|
+
the Larger Work may, at their option, further distribute the Covered
|
195
|
+
Software under the terms of either this License or such Secondary
|
196
|
+
License(s).
|
197
|
+
|
198
|
+
3.4. Notices
|
199
|
+
|
200
|
+
You may not remove or alter the substance of any license notices
|
201
|
+
(including copyright notices, patent notices, disclaimers of warranty,
|
202
|
+
or limitations of liability) contained within the Source Code Form of
|
203
|
+
the Covered Software, except that You may alter any license notices to
|
204
|
+
the extent required to remedy known factual inaccuracies.
|
205
|
+
|
206
|
+
3.5. Application of Additional Terms
|
207
|
+
|
208
|
+
You may choose to offer, and to charge a fee for, warranty, support,
|
209
|
+
indemnity or liability obligations to one or more recipients of Covered
|
210
|
+
Software. However, You may do so only on Your own behalf, and not on
|
211
|
+
behalf of any Contributor. You must make it absolutely clear that any
|
212
|
+
such warranty, support, indemnity, or liability obligation is offered by
|
213
|
+
You alone, and You hereby agree to indemnify every Contributor for any
|
214
|
+
liability incurred by such Contributor as a result of warranty, support,
|
215
|
+
indemnity or liability terms You offer. You may include additional
|
216
|
+
disclaimers of warranty and limitations of liability specific to any
|
217
|
+
jurisdiction.
|
218
|
+
|
219
|
+
4. Inability to Comply Due to Statute or Regulation
|
220
|
+
---------------------------------------------------
|
221
|
+
|
222
|
+
If it is impossible for You to comply with any of the terms of this
|
223
|
+
License with respect to some or all of the Covered Software due to
|
224
|
+
statute, judicial order, or regulation then You must: (a) comply with
|
225
|
+
the terms of this License to the maximum extent possible; and (b)
|
226
|
+
describe the limitations and the code they affect. Such description must
|
227
|
+
be placed in a text file included with all distributions of the Covered
|
228
|
+
Software under this License. Except to the extent prohibited by statute
|
229
|
+
or regulation, such description must be sufficiently detailed for a
|
230
|
+
recipient of ordinary skill to be able to understand it.
|
231
|
+
|
232
|
+
5. Termination
|
233
|
+
--------------
|
234
|
+
|
235
|
+
5.1. The rights granted under this License will terminate automatically
|
236
|
+
if You fail to comply with any of its terms. However, if You become
|
237
|
+
compliant, then the rights granted under this License from a particular
|
238
|
+
Contributor are reinstated (a) provisionally, unless and until such
|
239
|
+
Contributor explicitly and finally terminates Your grants, and (b) on an
|
240
|
+
ongoing basis, if such Contributor fails to notify You of the
|
241
|
+
non-compliance by some reasonable means prior to 60 days after You have
|
242
|
+
come back into compliance. Moreover, Your grants from a particular
|
243
|
+
Contributor are reinstated on an ongoing basis if such Contributor
|
244
|
+
notifies You of the non-compliance by some reasonable means, this is the
|
245
|
+
first time You have received notice of non-compliance with this License
|
246
|
+
from such Contributor, and You become compliant prior to 30 days after
|
247
|
+
Your receipt of the notice.
|
248
|
+
|
249
|
+
5.2. If You initiate litigation against any entity by asserting a patent
|
250
|
+
infringement claim (excluding declaratory judgment actions,
|
251
|
+
counter-claims, and cross-claims) alleging that a Contributor Version
|
252
|
+
directly or indirectly infringes any patent, then the rights granted to
|
253
|
+
You by any and all Contributors for the Covered Software under Section
|
254
|
+
2.1 of this License shall terminate.
|
255
|
+
|
256
|
+
5.3. In the event of termination under Sections 5.1 or 5.2 above, all
|
257
|
+
end user license agreements (excluding distributors and resellers) which
|
258
|
+
have been validly granted by You or Your distributors under this License
|
259
|
+
prior to termination shall survive termination.
|
260
|
+
|
261
|
+
************************************************************************
|
262
|
+
* *
|
263
|
+
* 6. Disclaimer of Warranty *
|
264
|
+
* ------------------------- *
|
265
|
+
* *
|
266
|
+
* Covered Software is provided under this License on an "as is" *
|
267
|
+
* basis, without warranty of any kind, either expressed, implied, or *
|
268
|
+
* statutory, including, without limitation, warranties that the *
|
269
|
+
* Covered Software is free of defects, merchantable, fit for a *
|
270
|
+
* particular purpose or non-infringing. The entire risk as to the *
|
271
|
+
* quality and performance of the Covered Software is with You. *
|
272
|
+
* Should any Covered Software prove defective in any respect, You *
|
273
|
+
* (not any Contributor) assume the cost of any necessary servicing, *
|
274
|
+
* repair, or correction. This disclaimer of warranty constitutes an *
|
275
|
+
* essential part of this License. No use of any Covered Software is *
|
276
|
+
* authorized under this License except under this disclaimer. *
|
277
|
+
* *
|
278
|
+
************************************************************************
|
279
|
+
|
280
|
+
************************************************************************
|
281
|
+
* *
|
282
|
+
* 7. Limitation of Liability *
|
283
|
+
* -------------------------- *
|
284
|
+
* *
|
285
|
+
* Under no circumstances and under no legal theory, whether tort *
|
286
|
+
* (including negligence), contract, or otherwise, shall any *
|
287
|
+
* Contributor, or anyone who distributes Covered Software as *
|
288
|
+
* permitted above, be liable to You for any direct, indirect, *
|
289
|
+
* special, incidental, or consequential damages of any character *
|
290
|
+
* including, without limitation, damages for lost profits, loss of *
|
291
|
+
* goodwill, work stoppage, computer failure or malfunction, or any *
|
292
|
+
* and all other commercial damages or losses, even if such party *
|
293
|
+
* shall have been informed of the possibility of such damages. This *
|
294
|
+
* limitation of liability shall not apply to liability for death or *
|
295
|
+
* personal injury resulting from such party's negligence to the *
|
296
|
+
* extent applicable law prohibits such limitation. Some *
|
297
|
+
* jurisdictions do not allow the exclusion or limitation of *
|
298
|
+
* incidental or consequential damages, so this exclusion and *
|
299
|
+
* limitation may not apply to You. *
|
300
|
+
* *
|
301
|
+
************************************************************************
|
302
|
+
|
303
|
+
8. Litigation
|
304
|
+
-------------
|
305
|
+
|
306
|
+
Any litigation relating to this License may be brought only in the
|
307
|
+
courts of a jurisdiction where the defendant maintains its principal
|
308
|
+
place of business and such litigation shall be governed by laws of that
|
309
|
+
jurisdiction, without reference to its conflict-of-law provisions.
|
310
|
+
Nothing in this Section shall prevent a party's ability to bring
|
311
|
+
cross-claims or counter-claims.
|
312
|
+
|
313
|
+
9. Miscellaneous
|
314
|
+
----------------
|
315
|
+
|
316
|
+
This License represents the complete agreement concerning the subject
|
317
|
+
matter hereof. If any provision of this License is held to be
|
318
|
+
unenforceable, such provision shall be reformed only to the extent
|
319
|
+
necessary to make it enforceable. Any law or regulation which provides
|
320
|
+
that the language of a contract shall be construed against the drafter
|
321
|
+
shall not be used to construe this License against a Contributor.
|
322
|
+
|
323
|
+
10. Versions of the License
|
324
|
+
---------------------------
|
325
|
+
|
326
|
+
10.1. New Versions
|
327
|
+
|
328
|
+
Mozilla Foundation is the license steward. Except as provided in Section
|
329
|
+
10.3, no one other than the license steward has the right to modify or
|
330
|
+
publish new versions of this License. Each version will be given a
|
331
|
+
distinguishing version number.
|
332
|
+
|
333
|
+
10.2. Effect of New Versions
|
334
|
+
|
335
|
+
You may distribute the Covered Software under the terms of the version
|
336
|
+
of the License under which You originally received the Covered Software,
|
337
|
+
or under the terms of any subsequent version published by the license
|
338
|
+
steward.
|
339
|
+
|
340
|
+
10.3. Modified Versions
|
341
|
+
|
342
|
+
If you create software not governed by this License, and you want to
|
343
|
+
create a new license for such software, you may create and use a
|
344
|
+
modified version of this License if you rename the license and remove
|
345
|
+
any references to the name of the license steward (except to note that
|
346
|
+
such modified license differs from this License).
|
347
|
+
|
348
|
+
10.4. Distributing Source Code Form that is Incompatible With Secondary
|
349
|
+
Licenses
|
350
|
+
|
351
|
+
If You choose to distribute Source Code Form that is Incompatible With
|
352
|
+
Secondary Licenses under the terms of this version of the License, the
|
353
|
+
notice described in Exhibit B of this License must be attached.
|
354
|
+
|
355
|
+
Exhibit A - Source Code Form License Notice
|
356
|
+
-------------------------------------------
|
357
|
+
|
358
|
+
This Source Code Form is subject to the terms of the Mozilla Public
|
359
|
+
License, v. 2.0. If a copy of the MPL was not distributed with this
|
360
|
+
file, You can obtain one at http://mozilla.org/MPL/2.0/.
|
361
|
+
|
362
|
+
If it is not possible or desirable to put the notice in a particular
|
363
|
+
file, then You may include the notice in a location (such as a LICENSE
|
364
|
+
file in a relevant directory) where a recipient would be likely to look
|
365
|
+
for such a notice.
|
366
|
+
|
367
|
+
You may add additional accurate notices of copyright ownership.
|
368
|
+
|
369
|
+
Exhibit B - "Incompatible With Secondary Licenses" Notice
|
370
|
+
---------------------------------------------------------
|
371
|
+
|
372
|
+
This Source Code Form is "Incompatible With Secondary Licenses", as
|
373
|
+
defined by the Mozilla Public License, v. 2.0.
|
@@ -0,0 +1 @@
|
|
1
|
+
{"name":"webpack-chain","author":"Eli Perelman <eli@eliperelman.com>","version":"6.5.1","license":"MPL-2.0","typings":"types/index.d.ts"}
|
@@ -0,0 +1,388 @@
|
|
1
|
+
import { Tapable } from 'tapable';
|
2
|
+
import * as webpack from 'webpack';
|
3
|
+
import * as https from 'https';
|
4
|
+
|
5
|
+
export = Config;
|
6
|
+
|
7
|
+
declare namespace __Config {
|
8
|
+
class Chained<Parent> {
|
9
|
+
end(): Parent;
|
10
|
+
}
|
11
|
+
|
12
|
+
class TypedChainedMap<Parent, Value> extends Chained<Parent> {
|
13
|
+
clear(): this;
|
14
|
+
delete(key: string): this;
|
15
|
+
has(key: string): boolean;
|
16
|
+
get(key: string): Value;
|
17
|
+
getOrCompute(key: string, compute: () => Value): Value;
|
18
|
+
set(key: string, value: Value): this;
|
19
|
+
merge(obj: { [key: string]: Value }): this;
|
20
|
+
entries(): { [key: string]: Value };
|
21
|
+
values(): Value[];
|
22
|
+
when(
|
23
|
+
condition: boolean,
|
24
|
+
trueBrancher: (obj: this) => void,
|
25
|
+
falseBrancher?: (obj: this) => void,
|
26
|
+
): this;
|
27
|
+
}
|
28
|
+
|
29
|
+
class ChainedMap<Parent> extends TypedChainedMap<Parent, any> {}
|
30
|
+
|
31
|
+
class TypedChainedSet<Parent, Value> extends Chained<Parent> {
|
32
|
+
add(value: Value): this;
|
33
|
+
prepend(value: Value): this;
|
34
|
+
clear(): this;
|
35
|
+
delete(key: string): this;
|
36
|
+
has(key: string): boolean;
|
37
|
+
merge(arr: Value[]): this;
|
38
|
+
values(): Value[];
|
39
|
+
when(
|
40
|
+
condition: boolean,
|
41
|
+
trueBrancher: (obj: this) => void,
|
42
|
+
falseBrancher?: (obj: this) => void,
|
43
|
+
): this;
|
44
|
+
}
|
45
|
+
|
46
|
+
class ChainedSet<Parent> extends TypedChainedSet<Parent, any> {}
|
47
|
+
}
|
48
|
+
|
49
|
+
declare class Config extends __Config.ChainedMap<void> {
|
50
|
+
devServer: Config.DevServer;
|
51
|
+
entryPoints: Config.TypedChainedMap<Config, Config.EntryPoint>;
|
52
|
+
module: Config.Module;
|
53
|
+
node: Config.ChainedMap<this>;
|
54
|
+
output: Config.Output;
|
55
|
+
optimization: Config.Optimization;
|
56
|
+
performance: Config.Performance;
|
57
|
+
plugins: Config.Plugins<this, webpack.Plugin>;
|
58
|
+
resolve: Config.Resolve;
|
59
|
+
resolveLoader: Config.ResolveLoader;
|
60
|
+
|
61
|
+
amd(value: { [moduleName: string]: boolean }): this;
|
62
|
+
bail(value: boolean): this;
|
63
|
+
cache(value: boolean | any): this;
|
64
|
+
devtool(value: Config.DevTool): this;
|
65
|
+
context(value: string): this;
|
66
|
+
externals(value: webpack.ExternalsElement | webpack.ExternalsElement[]): this;
|
67
|
+
loader(value: any): this;
|
68
|
+
name(value: string): this;
|
69
|
+
mode(value: 'none' | 'development' | 'production'): this;
|
70
|
+
parallelism(value: number): this;
|
71
|
+
profile(value: boolean): this;
|
72
|
+
recordsPath(value: string): this;
|
73
|
+
recordsInputPath(value: string): this;
|
74
|
+
recordsOutputPath(value: string): this;
|
75
|
+
stats(value: webpack.Options.Stats): this;
|
76
|
+
target(value: string): this;
|
77
|
+
watch(value: boolean): this;
|
78
|
+
watchOptions(value: webpack.Options.WatchOptions): this;
|
79
|
+
|
80
|
+
entry(name: string): Config.EntryPoint;
|
81
|
+
plugin(name: string): Config.Plugin<this, webpack.Plugin>;
|
82
|
+
|
83
|
+
toConfig(): webpack.Configuration;
|
84
|
+
}
|
85
|
+
|
86
|
+
declare namespace Config {
|
87
|
+
class Chained<Parent> extends __Config.Chained<Parent> {}
|
88
|
+
class TypedChainedMap<Parent, Value> extends __Config.TypedChainedMap<
|
89
|
+
Parent,
|
90
|
+
Value
|
91
|
+
> {}
|
92
|
+
class ChainedMap<Parent> extends __Config.TypedChainedMap<Parent, any> {}
|
93
|
+
class TypedChainedSet<Parent, Value> extends __Config.TypedChainedSet<
|
94
|
+
Parent,
|
95
|
+
Value
|
96
|
+
> {}
|
97
|
+
class ChainedSet<Parent> extends __Config.TypedChainedSet<Parent, any> {}
|
98
|
+
|
99
|
+
class Plugins<
|
100
|
+
Parent,
|
101
|
+
PluginType extends Tapable.Plugin = webpack.Plugin
|
102
|
+
> extends TypedChainedMap<Parent, Plugin<Parent, PluginType>> {}
|
103
|
+
|
104
|
+
class Plugin<Parent, PluginType extends Tapable.Plugin = webpack.Plugin>
|
105
|
+
extends ChainedMap<Parent>
|
106
|
+
implements Orderable {
|
107
|
+
init<P extends PluginType | PluginClass<PluginType>>(
|
108
|
+
value: (
|
109
|
+
plugin: P,
|
110
|
+
args: P extends PluginClass ? ConstructorParameters<P> : any[],
|
111
|
+
) => PluginType,
|
112
|
+
): this;
|
113
|
+
use<P extends string | PluginType | PluginClass<PluginType>>(
|
114
|
+
plugin: P,
|
115
|
+
args?: P extends PluginClass ? ConstructorParameters<P> : any[],
|
116
|
+
): this;
|
117
|
+
tap<P extends PluginClass<PluginType>>(
|
118
|
+
f: (args: ConstructorParameters<P>) => ConstructorParameters<P>,
|
119
|
+
): this;
|
120
|
+
|
121
|
+
// Orderable
|
122
|
+
before(name: string): this;
|
123
|
+
after(name: string): this;
|
124
|
+
}
|
125
|
+
|
126
|
+
class Module extends ChainedMap<Config> {
|
127
|
+
rules: TypedChainedMap<this, Rule>;
|
128
|
+
rule(name: string): Rule;
|
129
|
+
noParse(
|
130
|
+
noParse: RegExp | RegExp[] | ((contentPath: string) => boolean),
|
131
|
+
): this;
|
132
|
+
strictExportPresence(value: boolean): this;
|
133
|
+
}
|
134
|
+
|
135
|
+
class Output extends ChainedMap<Config> {
|
136
|
+
auxiliaryComment(value: string | { [comment: string]: string }): this;
|
137
|
+
chunkFilename(value: string): this;
|
138
|
+
chunkLoadTimeout(value: number): this;
|
139
|
+
crossOriginLoading(value: boolean | string): this;
|
140
|
+
filename(value: string): this;
|
141
|
+
library(value: string): this;
|
142
|
+
libraryExport(value: string | string[]): this;
|
143
|
+
libraryTarget(value: string): this;
|
144
|
+
devtoolFallbackModuleFilenameTemplate(value: any): this;
|
145
|
+
devtoolLineToLine(value: any): this;
|
146
|
+
devtoolModuleFilenameTemplate(value: any): this;
|
147
|
+
devtoolNamespace(value: string): this;
|
148
|
+
globalObject(value: string): this;
|
149
|
+
hashFunction(value: string): this;
|
150
|
+
hashDigest(value: string): this;
|
151
|
+
hashDigestLength(value: number): this;
|
152
|
+
hashSalt(value: any): this;
|
153
|
+
hotUpdateChunkFilename(value: string): this;
|
154
|
+
hotUpdateFunction(value: any): this;
|
155
|
+
hotUpdateMainFilename(value: string): this;
|
156
|
+
jsonpFunction(value: string): this;
|
157
|
+
path(value: string): this;
|
158
|
+
pathinfo(value: boolean): this;
|
159
|
+
publicPath(value: string): this;
|
160
|
+
sourceMapFilename(value: string): this;
|
161
|
+
sourcePrefix(value: string): this;
|
162
|
+
strictModuleExceptionHandling(value: boolean): this;
|
163
|
+
umdNamedDefine(value: boolean): this;
|
164
|
+
futureEmitAssets(value: boolean): this;
|
165
|
+
}
|
166
|
+
|
167
|
+
class DevServer extends ChainedMap<Config> {
|
168
|
+
allowedHosts: TypedChainedSet<this, string>;
|
169
|
+
|
170
|
+
after(
|
171
|
+
value: (app: any, server: any, compiler: webpack.Compiler) => void,
|
172
|
+
): this;
|
173
|
+
before(
|
174
|
+
value: (app: any, server: any, compiler: webpack.Compiler) => void,
|
175
|
+
): this;
|
176
|
+
bonjour(value: boolean): this;
|
177
|
+
clientLogLevel(value: 'none' | 'error' | 'warning' | 'info'): this;
|
178
|
+
color(value: boolean): this;
|
179
|
+
compress(value: boolean): this;
|
180
|
+
contentBase(value: boolean | string | string[]): this;
|
181
|
+
disableHostCheck(value: boolean): this;
|
182
|
+
filename(value: string): this;
|
183
|
+
headers(value: { [header: string]: string }): this;
|
184
|
+
historyApiFallback(value: boolean | any): this;
|
185
|
+
host(value: string): this;
|
186
|
+
hot(value: boolean): this;
|
187
|
+
hotOnly(value: boolean): this;
|
188
|
+
http2(value: boolean): this;
|
189
|
+
https(value: boolean | https.ServerOptions): this;
|
190
|
+
index(value: string): this;
|
191
|
+
info(value: boolean): this;
|
192
|
+
inline(value: boolean): this;
|
193
|
+
lazy(value: boolean): this;
|
194
|
+
mimeTypes(value: Object): this;
|
195
|
+
noInfo(value: boolean): this;
|
196
|
+
open(value: boolean): this;
|
197
|
+
openPage(value: string | string[]): this;
|
198
|
+
overlay(value: boolean | { warnings?: boolean; errors?: boolean }): this;
|
199
|
+
pfx(value: string): this;
|
200
|
+
pfxPassphrase(value: string): this;
|
201
|
+
port(value: number): this;
|
202
|
+
progress(value: boolean): this;
|
203
|
+
proxy(value: any): this;
|
204
|
+
public(value: string): this;
|
205
|
+
publicPath(publicPath: string): this;
|
206
|
+
quiet(value: boolean): this;
|
207
|
+
setup(value: (expressApp: any) => void): this;
|
208
|
+
socket(value: string): this;
|
209
|
+
sockHost(value: string): this;
|
210
|
+
sockPath(value: string): this;
|
211
|
+
sockPort(value: number): this;
|
212
|
+
staticOptions(value: any): this;
|
213
|
+
stats(value: webpack.Options.Stats): this;
|
214
|
+
stdin(value: boolean): this;
|
215
|
+
useLocalIp(value: boolean): this;
|
216
|
+
watchContentBase(value: boolean): this;
|
217
|
+
watchOptions(value: any): this;
|
218
|
+
writeToDisk(value: boolean): this;
|
219
|
+
}
|
220
|
+
|
221
|
+
class Performance extends ChainedMap<Config> {
|
222
|
+
hints(value: boolean | 'error' | 'warning'): this;
|
223
|
+
maxEntrypointSize(value: number): this;
|
224
|
+
maxAssetSize(value: number): this;
|
225
|
+
assetFilter(value: (assetFilename: string) => boolean): this;
|
226
|
+
}
|
227
|
+
|
228
|
+
class EntryPoint extends TypedChainedSet<Config, string> {}
|
229
|
+
|
230
|
+
class Resolve<T = Config> extends ChainedMap<T> {
|
231
|
+
alias: TypedChainedMap<this, string>;
|
232
|
+
aliasFields: TypedChainedSet<this, string>;
|
233
|
+
descriptionFiles: TypedChainedSet<this, string>;
|
234
|
+
extensions: TypedChainedSet<this, string>;
|
235
|
+
mainFields: TypedChainedSet<this, string>;
|
236
|
+
mainFiles: TypedChainedSet<this, string>;
|
237
|
+
modules: TypedChainedSet<this, string>;
|
238
|
+
plugins: TypedChainedMap<this, Plugin<this, webpack.ResolvePlugin>>;
|
239
|
+
|
240
|
+
enforceExtension(value: boolean): this;
|
241
|
+
enforceModuleExtension(value: boolean): this;
|
242
|
+
unsafeCache(value: boolean | RegExp | RegExp[]): this;
|
243
|
+
symlinks(value: boolean): this;
|
244
|
+
cachePredicate(
|
245
|
+
value: (data: { path: string; request: string }) => boolean,
|
246
|
+
): this;
|
247
|
+
cacheWithContext(value: boolean): this;
|
248
|
+
|
249
|
+
plugin(name: string): Plugin<this, webpack.ResolvePlugin>;
|
250
|
+
}
|
251
|
+
|
252
|
+
class ResolveLoader extends Resolve {
|
253
|
+
moduleExtensions: ChainedSet<this>;
|
254
|
+
packageMains: ChainedSet<this>;
|
255
|
+
}
|
256
|
+
|
257
|
+
class Rule<T = Module> extends ChainedMap<T> implements Orderable {
|
258
|
+
rules: TypedChainedMap<this, Rule<Rule>>;
|
259
|
+
oneOfs: TypedChainedMap<this, Rule<Rule>>;
|
260
|
+
uses: TypedChainedMap<this, Use>;
|
261
|
+
include: TypedChainedSet<this, webpack.Condition>;
|
262
|
+
exclude: TypedChainedSet<this, webpack.Condition>;
|
263
|
+
resolve: Resolve<Rule<T>>;
|
264
|
+
|
265
|
+
parser(value: { [optName: string]: any }): this;
|
266
|
+
test(value: webpack.Condition | webpack.Condition[]): this;
|
267
|
+
type(
|
268
|
+
value:
|
269
|
+
| 'javascript/auto'
|
270
|
+
| 'javascript/dynamic'
|
271
|
+
| 'javascript/esm'
|
272
|
+
| 'json'
|
273
|
+
| 'webassembly/experimental',
|
274
|
+
): this;
|
275
|
+
enforce(value: 'pre' | 'post'): this;
|
276
|
+
|
277
|
+
use(name: string): Use<this>;
|
278
|
+
rule(name: string): Rule<Rule>;
|
279
|
+
oneOf(name: string): Rule<Rule>;
|
280
|
+
pre(): this;
|
281
|
+
post(): this;
|
282
|
+
before(name: string): this;
|
283
|
+
after(name: string): this;
|
284
|
+
resourceQuery(value: webpack.Condition | webpack.Condition[]): this;
|
285
|
+
}
|
286
|
+
|
287
|
+
class Optimization extends ChainedMap<Config> {
|
288
|
+
concatenateModules(value: boolean): this;
|
289
|
+
flagIncludedChunks(value: boolean): this;
|
290
|
+
mergeDuplicateChunks(value: boolean): this;
|
291
|
+
minimize(value: boolean): this;
|
292
|
+
minimizer(name: string): Config.Plugin<this, webpack.Plugin>;
|
293
|
+
namedChunks(value: boolean): this;
|
294
|
+
namedModules(value: boolean): this;
|
295
|
+
nodeEnv(value: boolean | string): this;
|
296
|
+
noEmitOnErrors(value: boolean): this;
|
297
|
+
occurrenceOrder(value: boolean): this;
|
298
|
+
portableRecords(value: boolean): this;
|
299
|
+
providedExports(value: boolean): this;
|
300
|
+
removeAvailableModules(value: boolean): this;
|
301
|
+
removeEmptyChunks(value: boolean): this;
|
302
|
+
runtimeChunk(value: boolean | 'single' | 'multiple' | RuntimeChunk): this;
|
303
|
+
sideEffects(value: boolean): this;
|
304
|
+
splitChunks(value: SplitChunksOptions): this;
|
305
|
+
usedExports(value: boolean): this;
|
306
|
+
}
|
307
|
+
|
308
|
+
interface RuntimeChunk {
|
309
|
+
name: string | RuntimeChunkFunction;
|
310
|
+
}
|
311
|
+
|
312
|
+
type RuntimeChunkFunction = (entryPoint: EntryPoint) => string;
|
313
|
+
|
314
|
+
interface SplitChunksOptions {
|
315
|
+
[name: string]: any;
|
316
|
+
}
|
317
|
+
|
318
|
+
interface LoaderOptions {
|
319
|
+
[name: string]: any;
|
320
|
+
}
|
321
|
+
|
322
|
+
class Use<Parent = Rule> extends ChainedMap<Parent> implements Orderable {
|
323
|
+
loader(value: string): this;
|
324
|
+
options(value: LoaderOptions): this;
|
325
|
+
|
326
|
+
tap(f: (options: LoaderOptions) => LoaderOptions): this;
|
327
|
+
|
328
|
+
// Orderable
|
329
|
+
before(name: string): this;
|
330
|
+
after(name: string): this;
|
331
|
+
}
|
332
|
+
|
333
|
+
type DevTool =
|
334
|
+
| 'eval'
|
335
|
+
| 'inline-source-map'
|
336
|
+
| 'cheap-eval-source-map'
|
337
|
+
| 'cheap-source-map'
|
338
|
+
| 'cheap-module-eval-source-map'
|
339
|
+
| 'cheap-module-source-map'
|
340
|
+
| 'eval-source-map'
|
341
|
+
| 'source-map'
|
342
|
+
| 'nosources-source-map'
|
343
|
+
| 'hidden-source-map'
|
344
|
+
| 'nosources-source-map'
|
345
|
+
| '@eval'
|
346
|
+
| '@inline-source-map'
|
347
|
+
| '@cheap-eval-source-map'
|
348
|
+
| '@cheap-source-map'
|
349
|
+
| '@cheap-module-eval-source-map'
|
350
|
+
| '@cheap-module-source-map'
|
351
|
+
| '@eval-source-map'
|
352
|
+
| '@source-map'
|
353
|
+
| '@nosources-source-map'
|
354
|
+
| '@hidden-source-map'
|
355
|
+
| '@nosources-source-map'
|
356
|
+
| '#eval'
|
357
|
+
| '#inline-source-map'
|
358
|
+
| '#cheap-eval-source-map'
|
359
|
+
| '#cheap-source-map'
|
360
|
+
| '#cheap-module-eval-source-map'
|
361
|
+
| '#cheap-module-source-map'
|
362
|
+
| '#eval-source-map'
|
363
|
+
| '#source-map'
|
364
|
+
| '#nosources-source-map'
|
365
|
+
| '#hidden-source-map'
|
366
|
+
| '#nosources-source-map'
|
367
|
+
| '#@eval'
|
368
|
+
| '#@inline-source-map'
|
369
|
+
| '#@cheap-eval-source-map'
|
370
|
+
| '#@cheap-source-map'
|
371
|
+
| '#@cheap-module-eval-source-map'
|
372
|
+
| '#@cheap-module-source-map'
|
373
|
+
| '#@eval-source-map'
|
374
|
+
| '#@source-map'
|
375
|
+
| '#@nosources-source-map'
|
376
|
+
| '#@hidden-source-map'
|
377
|
+
| '#@nosources-source-map'
|
378
|
+
| boolean;
|
379
|
+
|
380
|
+
interface PluginClass<PluginType extends Tapable.Plugin = webpack.Plugin> {
|
381
|
+
new (...opts: any[]): PluginType;
|
382
|
+
}
|
383
|
+
|
384
|
+
interface Orderable {
|
385
|
+
before(name: string): this;
|
386
|
+
after(name: string): this;
|
387
|
+
}
|
388
|
+
}
|
@@ -0,0 +1,116 @@
|
|
1
|
+
export declare const CHAIN_ID: {
|
2
|
+
/** Predefined rules */
|
3
|
+
readonly RULE: {
|
4
|
+
/** Rule for .mjs */
|
5
|
+
readonly MJS: "mjs";
|
6
|
+
/** Rule for predefined loaders */
|
7
|
+
readonly LOADERS: "loaders";
|
8
|
+
};
|
9
|
+
/** Predefined rule groups */
|
10
|
+
readonly ONE_OF: {
|
11
|
+
readonly JS: "js";
|
12
|
+
readonly TS: "ts";
|
13
|
+
readonly CSS: "css";
|
14
|
+
readonly LESS: "less";
|
15
|
+
readonly SASS: "sass";
|
16
|
+
readonly YAML: "yml";
|
17
|
+
readonly TOML: "toml";
|
18
|
+
readonly FALLBACK: "fallback";
|
19
|
+
readonly MARKDOWN: "markdown";
|
20
|
+
readonly BFF_CLIENT: "bff-client";
|
21
|
+
readonly CSS_MODULES: "css-modules";
|
22
|
+
readonly LESS_MODULES: "less-modules";
|
23
|
+
readonly SASS_MODULES: "sass-modules";
|
24
|
+
readonly SVG: "svg";
|
25
|
+
readonly SVG_URL: "svg-url";
|
26
|
+
readonly SVG_INLINE: "svg-inline";
|
27
|
+
readonly ASSETS: "assets";
|
28
|
+
readonly ASSETS_URL: "assets-url";
|
29
|
+
readonly ASSETS_INLINE: "assets-inline";
|
30
|
+
};
|
31
|
+
/** Predefined loaders */
|
32
|
+
readonly USE: {
|
33
|
+
/** ts-loader */
|
34
|
+
readonly TS: "ts";
|
35
|
+
/** css-loader */
|
36
|
+
readonly CSS: "css";
|
37
|
+
/** url-loader */
|
38
|
+
readonly URL: "url";
|
39
|
+
/** file-loader */
|
40
|
+
readonly FILE: "file";
|
41
|
+
/** @svgr/webpack */
|
42
|
+
readonly SVGR: "svgr";
|
43
|
+
/** yaml-loader */
|
44
|
+
readonly YAML: "yaml";
|
45
|
+
/** toml-loader */
|
46
|
+
readonly TOML: "toml";
|
47
|
+
/** html-loader */
|
48
|
+
readonly HTML: "html";
|
49
|
+
/** babel-loader */
|
50
|
+
readonly BABEL: "babel";
|
51
|
+
/** style-loader */
|
52
|
+
readonly STYLE: "style-loader";
|
53
|
+
/** postcss-loader */
|
54
|
+
readonly POSTCSS: "postcss";
|
55
|
+
/** markdown-loader */
|
56
|
+
readonly MARKDOWN: "markdown";
|
57
|
+
/** css-modules-typescript-loader */
|
58
|
+
readonly CSS_MODULES_TS: "css-modules-typescript";
|
59
|
+
/** mini-css-extract-plugin.loader */
|
60
|
+
readonly MINI_CSS_EXTRACT: "mini-css-extract";
|
61
|
+
};
|
62
|
+
/** Predefined plugins */
|
63
|
+
readonly PLUGIN: {
|
64
|
+
/** HotModuleReplacementPlugin */
|
65
|
+
readonly HMR: "hmr";
|
66
|
+
/** CopyWebpackPlugin */
|
67
|
+
readonly COPY: "copy";
|
68
|
+
/** HtmlWebpackPlugin */
|
69
|
+
readonly HTML: "html";
|
70
|
+
/** DefinePlugin */
|
71
|
+
readonly DEFINE: "define";
|
72
|
+
/** IgnorePlugin */
|
73
|
+
readonly IGNORE: "ignore";
|
74
|
+
/** BannerPlugin */
|
75
|
+
readonly BANNER: "banner";
|
76
|
+
/** Webpackbar */
|
77
|
+
readonly PROGRESS: "progress";
|
78
|
+
/** AppIconPlugin */
|
79
|
+
readonly APP_ICON: "app-icon";
|
80
|
+
/** LoadableWebpackPlugin */
|
81
|
+
readonly LOADABLE: "loadable";
|
82
|
+
/** WebpackManifestPlugin */
|
83
|
+
readonly MANIFEST: "webpack-manifest";
|
84
|
+
/** ForkTsCheckerWebpackPlugin */
|
85
|
+
readonly TS_CHECKER: "ts-checker";
|
86
|
+
/** InlineChunkHtmlPlugin */
|
87
|
+
readonly INLINE_HTML: "inline-html";
|
88
|
+
/** WebpackBundleAnalyzer */
|
89
|
+
readonly BUNDLE_ANALYZER: "bundle-analyze";
|
90
|
+
/** BottomTemplatePlugin */
|
91
|
+
readonly BOTTOM_TEMPLATE: "bottom-template";
|
92
|
+
/** MiniCssExtractPlugin */
|
93
|
+
readonly MINI_CSS_EXTRACT: "mini-css-extract";
|
94
|
+
/** ReactFastRefreshPlugin */
|
95
|
+
readonly REACT_FAST_REFRESH: "react-fast-refresh";
|
96
|
+
/** ProvidePlugin for node polyfill */
|
97
|
+
readonly NODE_POLYFILL_PROVIDE: "node-polyfill-provide";
|
98
|
+
};
|
99
|
+
/** Predefined minimizers */
|
100
|
+
readonly MINIMIZER: {
|
101
|
+
/** TerserWebpackPlugin */
|
102
|
+
readonly JS: "js";
|
103
|
+
/** CssMinimizerWebpackPlugin */
|
104
|
+
readonly CSS: "css";
|
105
|
+
/** ESBuildPlugin */
|
106
|
+
readonly ESBUILD: "js-css";
|
107
|
+
};
|
108
|
+
/** Predefined resolve plugins */
|
109
|
+
readonly RESOLVE_PLUGIN: {
|
110
|
+
/** ModuleScopePlugin */
|
111
|
+
readonly MODULE_SCOPE: "module-scope";
|
112
|
+
/** TsConfigPathsPlugin */
|
113
|
+
readonly TS_CONFIG_PATHS: "ts-config-paths";
|
114
|
+
};
|
115
|
+
};
|
116
|
+
export declare type ChainIdentifier = typeof CHAIN_ID;
|
package/dist/chainId.js
ADDED
@@ -0,0 +1,118 @@
|
|
1
|
+
"use strict";
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
3
|
+
exports.CHAIN_ID = void 0;
|
4
|
+
exports.CHAIN_ID = {
|
5
|
+
/** Predefined rules */
|
6
|
+
RULE: {
|
7
|
+
/** Rule for .mjs */
|
8
|
+
MJS: 'mjs',
|
9
|
+
/** Rule for predefined loaders */
|
10
|
+
LOADERS: 'loaders',
|
11
|
+
},
|
12
|
+
/** Predefined rule groups */
|
13
|
+
ONE_OF: {
|
14
|
+
JS: 'js',
|
15
|
+
TS: 'ts',
|
16
|
+
CSS: 'css',
|
17
|
+
LESS: 'less',
|
18
|
+
SASS: 'sass',
|
19
|
+
YAML: 'yml',
|
20
|
+
TOML: 'toml',
|
21
|
+
FALLBACK: 'fallback',
|
22
|
+
MARKDOWN: 'markdown',
|
23
|
+
BFF_CLIENT: 'bff-client',
|
24
|
+
CSS_MODULES: 'css-modules',
|
25
|
+
LESS_MODULES: 'less-modules',
|
26
|
+
SASS_MODULES: 'sass-modules',
|
27
|
+
SVG: 'svg',
|
28
|
+
SVG_URL: 'svg-url',
|
29
|
+
SVG_INLINE: 'svg-inline',
|
30
|
+
ASSETS: 'assets',
|
31
|
+
ASSETS_URL: 'assets-url',
|
32
|
+
ASSETS_INLINE: 'assets-inline',
|
33
|
+
},
|
34
|
+
/** Predefined loaders */
|
35
|
+
USE: {
|
36
|
+
/** ts-loader */
|
37
|
+
TS: 'ts',
|
38
|
+
/** css-loader */
|
39
|
+
CSS: 'css',
|
40
|
+
/** url-loader */
|
41
|
+
URL: 'url',
|
42
|
+
/** file-loader */
|
43
|
+
FILE: 'file',
|
44
|
+
/** @svgr/webpack */
|
45
|
+
SVGR: 'svgr',
|
46
|
+
/** yaml-loader */
|
47
|
+
YAML: 'yaml',
|
48
|
+
/** toml-loader */
|
49
|
+
TOML: 'toml',
|
50
|
+
/** html-loader */
|
51
|
+
HTML: 'html',
|
52
|
+
/** babel-loader */
|
53
|
+
BABEL: 'babel',
|
54
|
+
/** style-loader */
|
55
|
+
STYLE: 'style-loader',
|
56
|
+
/** postcss-loader */
|
57
|
+
POSTCSS: 'postcss',
|
58
|
+
/** markdown-loader */
|
59
|
+
MARKDOWN: 'markdown',
|
60
|
+
/** css-modules-typescript-loader */
|
61
|
+
CSS_MODULES_TS: 'css-modules-typescript',
|
62
|
+
/** mini-css-extract-plugin.loader */
|
63
|
+
MINI_CSS_EXTRACT: 'mini-css-extract',
|
64
|
+
},
|
65
|
+
/** Predefined plugins */
|
66
|
+
PLUGIN: {
|
67
|
+
/** HotModuleReplacementPlugin */
|
68
|
+
HMR: 'hmr',
|
69
|
+
/** CopyWebpackPlugin */
|
70
|
+
COPY: 'copy',
|
71
|
+
/** HtmlWebpackPlugin */
|
72
|
+
HTML: 'html',
|
73
|
+
/** DefinePlugin */
|
74
|
+
DEFINE: 'define',
|
75
|
+
/** IgnorePlugin */
|
76
|
+
IGNORE: 'ignore',
|
77
|
+
/** BannerPlugin */
|
78
|
+
BANNER: 'banner',
|
79
|
+
/** Webpackbar */
|
80
|
+
PROGRESS: 'progress',
|
81
|
+
/** AppIconPlugin */
|
82
|
+
APP_ICON: 'app-icon',
|
83
|
+
/** LoadableWebpackPlugin */
|
84
|
+
LOADABLE: 'loadable',
|
85
|
+
/** WebpackManifestPlugin */
|
86
|
+
MANIFEST: 'webpack-manifest',
|
87
|
+
/** ForkTsCheckerWebpackPlugin */
|
88
|
+
TS_CHECKER: 'ts-checker',
|
89
|
+
/** InlineChunkHtmlPlugin */
|
90
|
+
INLINE_HTML: 'inline-html',
|
91
|
+
/** WebpackBundleAnalyzer */
|
92
|
+
BUNDLE_ANALYZER: 'bundle-analyze',
|
93
|
+
/** BottomTemplatePlugin */
|
94
|
+
BOTTOM_TEMPLATE: 'bottom-template',
|
95
|
+
/** MiniCssExtractPlugin */
|
96
|
+
MINI_CSS_EXTRACT: 'mini-css-extract',
|
97
|
+
/** ReactFastRefreshPlugin */
|
98
|
+
REACT_FAST_REFRESH: 'react-fast-refresh',
|
99
|
+
/** ProvidePlugin for node polyfill */
|
100
|
+
NODE_POLYFILL_PROVIDE: 'node-polyfill-provide',
|
101
|
+
},
|
102
|
+
/** Predefined minimizers */
|
103
|
+
MINIMIZER: {
|
104
|
+
/** TerserWebpackPlugin */
|
105
|
+
JS: 'js',
|
106
|
+
/** CssMinimizerWebpackPlugin */
|
107
|
+
CSS: 'css',
|
108
|
+
/** ESBuildPlugin */
|
109
|
+
ESBUILD: 'js-css',
|
110
|
+
},
|
111
|
+
/** Predefined resolve plugins */
|
112
|
+
RESOLVE_PLUGIN: {
|
113
|
+
/** ModuleScopePlugin */
|
114
|
+
MODULE_SCOPE: 'module-scope',
|
115
|
+
/** TsConfigPathsPlugin */
|
116
|
+
TS_CONFIG_PATHS: 'ts-config-paths',
|
117
|
+
},
|
118
|
+
};
|
package/dist/index.d.ts
CHANGED
package/dist/index.js
CHANGED
package/dist/monorepo.js
CHANGED
@@ -30,7 +30,11 @@ exports.isPnpmWorkspaces = isPnpmWorkspaces;
|
|
30
30
|
const isMonorepo = (root) => (0, exports.isLerna)(root) || (0, exports.isYarnWorkspaces)(root) || (0, exports.isPnpmWorkspaces)(root);
|
31
31
|
exports.isMonorepo = isMonorepo;
|
32
32
|
const isModernjsMonorepo = (root) => {
|
33
|
-
const
|
33
|
+
const pkgJsonPath = path_1.default.join(root, 'package.json');
|
34
|
+
if (!fs_1.default.existsSync(pkgJsonPath)) {
|
35
|
+
return false;
|
36
|
+
}
|
37
|
+
const json = JSON.parse(fs_1.default.readFileSync(pkgJsonPath, 'utf8'));
|
34
38
|
const deps = {
|
35
39
|
...(json.dependencies || {}),
|
36
40
|
...(json.devDependencies || {}),
|
@@ -1,6 +1,9 @@
|
|
1
|
+
/// <reference types="node" />
|
2
|
+
import os from 'os';
|
1
3
|
interface EntryPoint {
|
2
4
|
entryName: string;
|
3
5
|
}
|
4
6
|
export declare const isSingleEntry: (entrypoints: EntryPoint[]) => boolean;
|
7
|
+
export declare const getIpv4Interfaces: () => os.NetworkInterfaceInfo[];
|
5
8
|
export declare const prettyInstructions: (appContext: any, config: any) => string;
|
6
9
|
export {};
|
@@ -3,7 +3,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
3
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
4
4
|
};
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
6
|
-
exports.prettyInstructions = exports.isSingleEntry = void 0;
|
6
|
+
exports.prettyInstructions = exports.getIpv4Interfaces = exports.isSingleEntry = void 0;
|
7
7
|
const os_1 = __importDefault(require("os"));
|
8
8
|
const compiled_1 = require("./compiled");
|
9
9
|
const is_1 = require("./is");
|
@@ -11,20 +11,27 @@ const is_1 = require("./is");
|
|
11
11
|
const isSingleEntry = (entrypoints) => entrypoints.length === 1 && entrypoints[0].entryName === 'main';
|
12
12
|
exports.isSingleEntry = isSingleEntry;
|
13
13
|
const normalizeUrl = (url) => url.replace(/([^:]\/)\/+/g, '$1');
|
14
|
-
const
|
14
|
+
const getIpv4Interfaces = () => {
|
15
15
|
const interfaces = os_1.default.networkInterfaces();
|
16
16
|
const ipv4Interfaces = [];
|
17
17
|
Object.keys(interfaces).forEach(key => {
|
18
18
|
interfaces[key].forEach(detail => {
|
19
|
-
|
19
|
+
// 'IPv4' is in Node <= 17, from 18 it's a number 4 or 6
|
20
|
+
const familyV4Value = typeof detail.family === 'string' ? 'IPv4' : 4;
|
21
|
+
if (detail.family === familyV4Value) {
|
20
22
|
ipv4Interfaces.push(detail);
|
21
23
|
}
|
22
24
|
});
|
23
25
|
});
|
26
|
+
return ipv4Interfaces;
|
27
|
+
};
|
28
|
+
exports.getIpv4Interfaces = getIpv4Interfaces;
|
29
|
+
const getAddressUrls = (protocol = 'http', port) => {
|
30
|
+
const ipv4Interfaces = (0, exports.getIpv4Interfaces)();
|
24
31
|
return ipv4Interfaces.reduce((memo, detail) => {
|
25
32
|
let type = 'Network: ';
|
26
33
|
let url = `${protocol}://${detail.address}:${port}`;
|
27
|
-
if (detail.address.includes(`localhost`)) {
|
34
|
+
if (detail.address.includes(`localhost`) || detail.internal) {
|
28
35
|
type = 'Local: ';
|
29
36
|
url = `${protocol}://localhost:${port}`;
|
30
37
|
}
|
package/package.json
CHANGED
@@ -11,7 +11,7 @@
|
|
11
11
|
"modern",
|
12
12
|
"modern.js"
|
13
13
|
],
|
14
|
-
"version": "1.7.
|
14
|
+
"version": "1.7.6",
|
15
15
|
"jsnext:source": "./src/index.ts",
|
16
16
|
"types": "./dist/index.d.ts",
|
17
17
|
"main": "./dist/index.js",
|
@@ -33,6 +33,7 @@
|
|
33
33
|
"./mime-types": "./compiled/mime-types/index.js",
|
34
34
|
"./strip-ansi": "./compiled/strip-ansi/index.js",
|
35
35
|
"./browserslist": "./compiled/browserslist/index.js",
|
36
|
+
"./webpack-chain": "./compiled/webpack-chain/index.js",
|
36
37
|
"./tsconfig-paths": "./compiled/tsconfig-paths/index.js"
|
37
38
|
},
|
38
39
|
"publishConfig": {
|
@@ -80,6 +81,9 @@
|
|
80
81
|
"browserslist": [
|
81
82
|
"./compiled/browserslist/index.d.ts"
|
82
83
|
],
|
84
|
+
"webpack-chain": [
|
85
|
+
"./compiled/webpack-chain/types/index.d.ts"
|
86
|
+
],
|
83
87
|
"tsconfig-paths": [
|
84
88
|
"./compiled/tsconfig-paths/lib/index.d.ts"
|
85
89
|
]
|
@@ -90,7 +94,7 @@
|
|
90
94
|
"lodash": "^4.17.21"
|
91
95
|
},
|
92
96
|
"devDependencies": {
|
93
|
-
"@modern-js/types": "1.5.
|
97
|
+
"@modern-js/types": "1.5.4",
|
94
98
|
"@scripts/build": "0.0.0",
|
95
99
|
"@scripts/jest-config": "0.0.0",
|
96
100
|
"@types/jest": "^27",
|