first commit

This commit is contained in:
monjack
2025-06-20 18:01:48 +08:00
commit 6daa6d65c1
24611 changed files with 2512443 additions and 0 deletions

20
app_vue/node_modules/webpack-merge/LICENSE generated vendored Normal file
View File

@ -0,0 +1,20 @@
Copyright (c) 2015 Juho Vepsalainen
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.

314
app_vue/node_modules/webpack-merge/README.md generated vendored Normal file
View File

@ -0,0 +1,314 @@
[![Financial Contributors on Open Collective](https://opencollective.com/webpack-merge/all/badge.svg?label=financial+contributors)](https://opencollective.com/webpack-merge) [![Test](https://github.com/survivejs/webpack-merge/actions/workflows/test.yml/badge.svg?branch=develop&event=push)](https://github.com/survivejs/webpack-merge/actions/workflows/test.yml) [![codecov](https://codecov.io/gh/survivejs/webpack-merge/branch/master/graph/badge.svg)](https://codecov.io/gh/survivejs/webpack-merge)
# webpack-merge - Merge designed for Webpack
**webpack-merge** provides a `merge` function that concatenates arrays and merges objects creating a new object. If functions are encountered, it will execute them, run the results through the algorithm, and then wrap the returned values within a function again.
This behavior is particularly useful in configuring webpack although it has uses beyond it. Whenever you need to merge configuration objects, **webpack-merge** can come in handy.
## **`merge(...configuration | [...configuration])`**
`merge` is the core, and the most important idea, of the API. Often this is all you need unless you want further customization.
```javascript
const { merge } = require('webpack-merge');
// Default API
const output = merge(object1, object2, object3, ...);
// You can pass an array of objects directly.
// This works with all available functions.
const output = merge([object1, object2, object3]);
// Keys matching to the right take precedence:
const output = merge(
{ fruit: "apple", color: "red" },
{ fruit: "strawberries" }
);
console.log(output);
// { color: "red", fruit: "strawberries"}
```
### Limitations
Note that `Promise`s are not supported! If you want to return a configuration wrapped within a `Promise`, `merge` inside one. Example: `Promise.resolve(merge({ ... }, { ... }))`.
The same goes for configuration level functions as in the example below:
**webpack.config.js**
```javascript
const commonConfig = { ... };
const productionConfig = { ... };
const developmentConfig = { ... };
module.exports = (env, args) => {
switch(args.mode) {
case 'development':
return merge(commonConfig, developmentConfig);
case 'production':
return merge(commonConfig, productionConfig);
default:
throw new Error('No matching configuration was found!');
}
}
```
You can choose the configuration you want by using `webpack --mode development` assuming you are using _webpack-cli_.
## **`mergeWithCustomize({ customizeArray, customizeObject })(...configuration | [...configuration])`**
In case you need more flexibility, `merge` behavior can be customized per field as below:
```javascript
const { mergeWithCustomize } = require('webpack-merge');
const output = mergeWithCustomize(
{
customizeArray(a, b, key) {
if (key === 'extensions') {
return _.uniq([...a, ...b]);
}
// Fall back to default merging
return undefined;
},
customizeObject(a, b, key) {
if (key === 'module') {
// Custom merging
return _.merge({}, a, b);
}
// Fall back to default merging
return undefined;
}
}
)(object1, object2, object3, ...);
```
For example, if the previous code was invoked with only `object1` and `object2`
with `object1` as:
```javascript
{
foo1: ['object1'],
foo2: ['object1'],
bar1: { object1: {} },
bar2: { object1: {} },
}
```
and `object2` as:
```javascript
{
foo1: ['object2'],
foo2: ['object2'],
bar1: { object2: {} },
bar2: { object2: {} },
}
```
then `customizeArray` will be invoked for each property of `Array` type, i.e:
```javascript
customizeArray(["object1"], ["object2"], "foo1");
customizeArray(["object1"], ["object2"], "foo2");
```
and `customizeObject` will be invoked for each property of `Object` type, i.e:
```javascript
customizeObject({ object1: {} }, { object2: {} }, bar1);
customizeObject({ object1: {} }, { object2: {} }, bar2);
```
## **`customizeArray`** and **`customizeObject`**
`customizeArray` and `customizeObject` provide small strategies to for `mergeWithCustomize`. They support `append`, `prepend`, `replace`, and wildcards for field names.
```javascript
const { mergeWithCustomize, customizeArray, customizeObject } = require('webpack-merge');
const output = mergeWithCustomize({
customizeArray: customizeArray({
'entry.*': 'prepend'
}),
customizeObject: customizeObject({
entry: 'prepend'
})
})(object1, object2, object3, ...);
```
## **`unique(<field>, <fields>, field => field)`**
`unique` is a strategy used for forcing uniqueness within configuration. It's most useful with plugins when you want to make sure there's only one in place.
The first `<field>` is the config property to look through for duplicates.
`<fields>` represents the values that should be unique when you run the field => field function on each duplicate.
When the order of elements of the `<field>` in the first configuration differs from the order in the second configuration, the latter is preserved.
```javascript
const { mergeWithCustomize, unique } = require("webpack-merge");
const output = mergeWithCustomize({
customizeArray: unique(
"plugins",
["HotModuleReplacementPlugin"],
(plugin) => plugin.constructor && plugin.constructor.name
),
})(
{
plugins: [new webpack.HotModuleReplacementPlugin()],
},
{
plugins: [new webpack.HotModuleReplacementPlugin()],
}
);
// Output contains only single HotModuleReplacementPlugin now and it's
// going to be the last plugin instance.
```
## **`mergeWithRules`**
To support advanced merging needs (i.e. merging within loaders), `mergeWithRules` includes additional syntax that allows you to match fields and apply strategies to match. Consider the full example below:
```javascript
const a = {
module: {
rules: [
{
test: /\.css$/,
use: [{ loader: "style-loader" }, { loader: "sass-loader" }],
},
],
},
};
const b = {
module: {
rules: [
{
test: /\.css$/,
use: [
{
loader: "style-loader",
options: {
modules: true,
},
},
],
},
],
},
};
const result = {
module: {
rules: [
{
test: /\.css$/,
use: [
{
loader: "style-loader",
options: {
modules: true,
},
},
{ loader: "sass-loader" },
],
},
],
},
};
assert.deepStrictEqual(
mergeWithRules({
module: {
rules: {
test: "match",
use: {
loader: "match",
options: "replace",
},
},
},
})(a, b),
result
);
```
The way it works is that you should annotate fields to match using `match` (or `CustomizeRule.Match` if you are using TypeScript) matching your configuration structure and then use specific strategies to define how particular fields should be transformed. If a match doesn't exist above a rule, then it will apply the rule automatically.
**Supported annotations:**
- `match` (`CustomizeRule.Match`) - Optional matcher that scopes merging behavior to a specific part based on similarity (think DOM or jQuery selectors)
- `append` (`CustomizeRule.Append`) - Appends items
- `prepend` (`CustomizeRule.Prepend`) - Prepends items
- `replace` (`CustomizeRule.Replace`) - Replaces items
- `merge` (`CustomizeRule.Merge`) - Merges objects (shallow merge)
## Using with TypeScript
**webpack-merge** supports TypeScript out of the box. You should pass `Configuration` type from webpack to it as follows:
```typescript
import { Configuration } from "webpack";
import { merge } from "webpack-merge";
const config = merge<Configuration>({...}, {...});
...
```
## Development
1. `nvm use`
1. `npm i`
1. `npm run build -- --watch` in one terminal
1. `npm t -- --watch` in another one
Before contributing, please [open an issue](https://github.com/survivejs/webpack-merge/issues/new) where to discuss.
## Further Information and Support
Check out [SurviveJS - Webpack 5](http://survivejs.com/) to dig deeper into webpack. The free book uses **webpack-merge** extensively and shows you how to compose your configuration to keep it maintainable.
I am also available as a consultant in case you require specific assistance. I can contribute particularly in terms of improving maintainability of the setup while speeding it up and pointing out better practices. In addition to improving developer productivity, the work has impact on the end users of the product in terms of reduced application size and loading times.
## Contributors
### Code Contributors
This project exists thanks to all the people who contribute. [[Contribute](CONTRIBUTING.md)].
<a href="https://github.com/survivejs/webpack-merge/graphs/contributors"><img src="https://opencollective.com/webpack-merge/contributors.svg?width=890&button=false" /></a>
### Financial Contributors
Become a financial contributor and help us sustain our community. [[Contribute](https://opencollective.com/webpack-merge/contribute)]
#### Individuals
<a href="https://opencollective.com/webpack-merge"><img src="https://opencollective.com/webpack-merge/individuals.svg?width=890"></a>
#### Organizations
Support this project with your organization. Your logo will show up here with a link to your website. [[Contribute](https://opencollective.com/webpack-merge/contribute)]
<a href="https://opencollective.com/webpack-merge/organization/0/website"><img src="https://opencollective.com/webpack-merge/organization/0/avatar.svg"></a>
<a href="https://opencollective.com/webpack-merge/organization/1/website"><img src="https://opencollective.com/webpack-merge/organization/1/avatar.svg"></a>
<a href="https://opencollective.com/webpack-merge/organization/2/website"><img src="https://opencollective.com/webpack-merge/organization/2/avatar.svg"></a>
<a href="https://opencollective.com/webpack-merge/organization/3/website"><img src="https://opencollective.com/webpack-merge/organization/3/avatar.svg"></a>
<a href="https://opencollective.com/webpack-merge/organization/4/website"><img src="https://opencollective.com/webpack-merge/organization/4/avatar.svg"></a>
<a href="https://opencollective.com/webpack-merge/organization/5/website"><img src="https://opencollective.com/webpack-merge/organization/5/avatar.svg"></a>
<a href="https://opencollective.com/webpack-merge/organization/6/website"><img src="https://opencollective.com/webpack-merge/organization/6/avatar.svg"></a>
<a href="https://opencollective.com/webpack-merge/organization/7/website"><img src="https://opencollective.com/webpack-merge/organization/7/avatar.svg"></a>
<a href="https://opencollective.com/webpack-merge/organization/8/website"><img src="https://opencollective.com/webpack-merge/organization/8/avatar.svg"></a>
<a href="https://opencollective.com/webpack-merge/organization/9/website"><img src="https://opencollective.com/webpack-merge/organization/9/avatar.svg"></a>
## License
**webpack-merge** is available under MIT. See LICENSE for more details.

15
app_vue/node_modules/webpack-merge/dist/index.d.ts generated vendored Normal file
View File

@ -0,0 +1,15 @@
import unique from "./unique";
import { CustomizeRule, CustomizeRuleString, ICustomizeOptions, Key } from "./types";
declare function merge<Configuration extends object>(firstConfiguration: Configuration | Configuration[], ...configurations: Configuration[]): Configuration;
declare function mergeWithCustomize<Configuration extends object>(options: ICustomizeOptions): (firstConfiguration: Configuration | Configuration[], ...configurations: Configuration[]) => Configuration;
declare function customizeArray(rules: {
[s: string]: CustomizeRule | CustomizeRuleString;
}): (a: any, b: any, key: Key) => any;
declare type Rules = {
[s: string]: CustomizeRule | CustomizeRuleString | Rules;
};
declare function mergeWithRules(rules: Rules): (firstConfiguration: object | object[], ...configurations: object[]) => object;
declare function customizeObject(rules: {
[s: string]: CustomizeRule | CustomizeRuleString;
}): (a: any, b: any, key: Key) => any;
export { customizeArray, customizeObject, CustomizeRule, merge, merge as default, mergeWithCustomize, mergeWithRules, unique, };

252
app_vue/node_modules/webpack-merge/dist/index.js generated vendored Normal file
View File

@ -0,0 +1,252 @@
"use strict";
var __read = (this && this.__read) || function (o, n) {
var m = typeof Symbol === "function" && o[Symbol.iterator];
if (!m) return o;
var i = m.call(o), r, ar = [], e;
try {
while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
}
catch (error) { e = { error: error }; }
finally {
try {
if (r && !r.done && (m = i["return"])) m.call(i);
}
finally { if (e) throw e.error; }
}
return ar;
};
var __spreadArray = (this && this.__spreadArray) || function (to, from) {
for (var i = 0, il = from.length, j = to.length; i < il; i++, j++)
to[j] = from[i];
return to;
};
var __importDefault = (this && this.__importDefault) || function (mod) {
return (mod && mod.__esModule) ? mod : { "default": mod };
};
exports.__esModule = true;
exports.unique = exports.mergeWithRules = exports.mergeWithCustomize = exports["default"] = exports.merge = exports.CustomizeRule = exports.customizeObject = exports.customizeArray = void 0;
var wildcard_1 = __importDefault(require("wildcard"));
var merge_with_1 = __importDefault(require("./merge-with"));
var join_arrays_1 = __importDefault(require("./join-arrays"));
var unique_1 = __importDefault(require("./unique"));
exports.unique = unique_1["default"];
var types_1 = require("./types");
exports.CustomizeRule = types_1.CustomizeRule;
var utils_1 = require("./utils");
function merge(firstConfiguration) {
var configurations = [];
for (var _i = 1; _i < arguments.length; _i++) {
configurations[_i - 1] = arguments[_i];
}
return mergeWithCustomize({}).apply(void 0, __spreadArray([firstConfiguration], __read(configurations)));
}
exports.merge = merge;
exports["default"] = merge;
function mergeWithCustomize(options) {
return function mergeWithOptions(firstConfiguration) {
var configurations = [];
for (var _i = 1; _i < arguments.length; _i++) {
configurations[_i - 1] = arguments[_i];
}
if (utils_1.isUndefined(firstConfiguration) || configurations.some(utils_1.isUndefined)) {
throw new TypeError("Merging undefined is not supported");
}
// @ts-ignore
if (firstConfiguration.then) {
throw new TypeError("Promises are not supported");
}
// No configuration at all
if (!firstConfiguration) {
return {};
}
if (configurations.length === 0) {
if (Array.isArray(firstConfiguration)) {
// Empty array
if (firstConfiguration.length === 0) {
return {};
}
if (firstConfiguration.some(utils_1.isUndefined)) {
throw new TypeError("Merging undefined is not supported");
}
// @ts-ignore
if (firstConfiguration[0].then) {
throw new TypeError("Promises are not supported");
}
return merge_with_1["default"](firstConfiguration, join_arrays_1["default"](options));
}
return firstConfiguration;
}
return merge_with_1["default"]([firstConfiguration].concat(configurations), join_arrays_1["default"](options));
};
}
exports.mergeWithCustomize = mergeWithCustomize;
function customizeArray(rules) {
return function (a, b, key) {
var matchedRule = Object.keys(rules).find(function (rule) { return wildcard_1["default"](rule, key); }) || "";
if (matchedRule) {
switch (rules[matchedRule]) {
case types_1.CustomizeRule.Prepend:
return __spreadArray(__spreadArray([], __read(b)), __read(a));
case types_1.CustomizeRule.Replace:
return b;
case types_1.CustomizeRule.Append:
default:
return __spreadArray(__spreadArray([], __read(a)), __read(b));
}
}
};
}
exports.customizeArray = customizeArray;
function mergeWithRules(rules) {
return mergeWithCustomize({
customizeArray: function (a, b, key) {
var currentRule = rules;
key.split(".").forEach(function (k) {
if (!currentRule) {
return;
}
currentRule = currentRule[k];
});
if (utils_1.isPlainObject(currentRule)) {
return mergeWithRule({ currentRule: currentRule, a: a, b: b });
}
if (typeof currentRule === "string") {
return mergeIndividualRule({ currentRule: currentRule, a: a, b: b });
}
return undefined;
}
});
}
exports.mergeWithRules = mergeWithRules;
var isArray = Array.isArray;
function mergeWithRule(_a) {
var currentRule = _a.currentRule, a = _a.a, b = _a.b;
if (!isArray(a)) {
return a;
}
var bAllMatches = [];
var ret = a.map(function (ao) {
if (!utils_1.isPlainObject(currentRule)) {
return ao;
}
var ret = {};
var rulesToMatch = [];
var operations = {};
Object.entries(currentRule).forEach(function (_a) {
var _b = __read(_a, 2), k = _b[0], v = _b[1];
if (v === types_1.CustomizeRule.Match) {
rulesToMatch.push(k);
}
else {
operations[k] = v;
}
});
var bMatches = b.filter(function (o) {
var matches = rulesToMatch.every(function (rule) { return utils_1.isSameCondition(ao[rule], o[rule]); });
if (matches) {
bAllMatches.push(o);
}
return matches;
});
if (!utils_1.isPlainObject(ao)) {
return ao;
}
Object.entries(ao).forEach(function (_a) {
var _b = __read(_a, 2), k = _b[0], v = _b[1];
var rule = currentRule;
switch (currentRule[k]) {
case types_1.CustomizeRule.Match:
ret[k] = v;
Object.entries(rule).forEach(function (_a) {
var _b = __read(_a, 2), k = _b[0], v = _b[1];
if (v === types_1.CustomizeRule.Replace && bMatches.length > 0) {
var val = last(bMatches)[k];
if (typeof val !== "undefined") {
ret[k] = val;
}
}
});
break;
case types_1.CustomizeRule.Append:
if (!bMatches.length) {
ret[k] = v;
break;
}
var appendValue = last(bMatches)[k];
if (!isArray(v) || !isArray(appendValue)) {
throw new TypeError("Trying to append non-arrays");
}
ret[k] = v.concat(appendValue);
break;
case types_1.CustomizeRule.Merge:
if (!bMatches.length) {
ret[k] = v;
break;
}
var lastValue = last(bMatches)[k];
if (!utils_1.isPlainObject(v) || !utils_1.isPlainObject(lastValue)) {
throw new TypeError("Trying to merge non-objects");
}
// deep merge
ret[k] = merge(v, lastValue);
break;
case types_1.CustomizeRule.Prepend:
if (!bMatches.length) {
ret[k] = v;
break;
}
var prependValue = last(bMatches)[k];
if (!isArray(v) || !isArray(prependValue)) {
throw new TypeError("Trying to prepend non-arrays");
}
ret[k] = prependValue.concat(v);
break;
case types_1.CustomizeRule.Replace:
ret[k] = bMatches.length > 0 ? last(bMatches)[k] : v;
break;
default:
var currentRule_1 = operations[k];
// Use .flat(); starting from Node 12
var b_1 = bMatches
.map(function (o) { return o[k]; })
.reduce(function (acc, val) {
return isArray(acc) && isArray(val) ? __spreadArray(__spreadArray([], __read(acc)), __read(val)) : acc;
}, []);
ret[k] = mergeWithRule({ currentRule: currentRule_1, a: v, b: b_1 });
break;
}
});
return ret;
});
return ret.concat(b.filter(function (o) { return !bAllMatches.includes(o); }));
}
function mergeIndividualRule(_a) {
var currentRule = _a.currentRule, a = _a.a, b = _a.b;
// What if there's no match?
switch (currentRule) {
case types_1.CustomizeRule.Append:
return a.concat(b);
case types_1.CustomizeRule.Prepend:
return b.concat(a);
case types_1.CustomizeRule.Replace:
return b;
}
return a;
}
function last(arr) {
return arr[arr.length - 1];
}
function customizeObject(rules) {
return function (a, b, key) {
switch (rules[key]) {
case types_1.CustomizeRule.Prepend:
return merge_with_1["default"]([b, a], join_arrays_1["default"]());
case types_1.CustomizeRule.Replace:
return b;
case types_1.CustomizeRule.Append:
return merge_with_1["default"]([a, b], join_arrays_1["default"]());
}
};
}
exports.customizeObject = customizeObject;
//# sourceMappingURL=index.js.map

1
app_vue/node_modules/webpack-merge/dist/index.js.map generated vendored Normal file

File diff suppressed because one or more lines are too long

View File

@ -0,0 +1,6 @@
import { Customize, Key } from "./types";
export default function joinArrays({ customizeArray, customizeObject, key, }?: {
customizeArray?: Customize;
customizeObject?: Customize;
key?: Key;
}): (a: any, b: any, k: Key) => any;

70
app_vue/node_modules/webpack-merge/dist/join-arrays.js generated vendored Normal file
View File

@ -0,0 +1,70 @@
"use strict";
var __read = (this && this.__read) || function (o, n) {
var m = typeof Symbol === "function" && o[Symbol.iterator];
if (!m) return o;
var i = m.call(o), r, ar = [], e;
try {
while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
}
catch (error) { e = { error: error }; }
finally {
try {
if (r && !r.done && (m = i["return"])) m.call(i);
}
finally { if (e) throw e.error; }
}
return ar;
};
var __spreadArray = (this && this.__spreadArray) || function (to, from) {
for (var i = 0, il = from.length, j = to.length; i < il; i++, j++)
to[j] = from[i];
return to;
};
var __importDefault = (this && this.__importDefault) || function (mod) {
return (mod && mod.__esModule) ? mod : { "default": mod };
};
exports.__esModule = true;
var clone_deep_1 = __importDefault(require("clone-deep"));
var merge_with_1 = __importDefault(require("./merge-with"));
var utils_1 = require("./utils");
var isArray = Array.isArray;
function joinArrays(_a) {
var _b = _a === void 0 ? {} : _a, customizeArray = _b.customizeArray, customizeObject = _b.customizeObject, key = _b.key;
return function _joinArrays(a, b, k) {
var newKey = key ? key + "." + k : k;
if (utils_1.isFunction(a) && utils_1.isFunction(b)) {
return function () {
var args = [];
for (var _i = 0; _i < arguments.length; _i++) {
args[_i] = arguments[_i];
}
return _joinArrays(a.apply(void 0, __spreadArray([], __read(args))), b.apply(void 0, __spreadArray([], __read(args))), k);
};
}
if (isArray(a) && isArray(b)) {
var customResult = customizeArray && customizeArray(a, b, newKey);
return customResult || __spreadArray(__spreadArray([], __read(a)), __read(b));
}
if (utils_1.isRegex(b)) {
return b;
}
if (utils_1.isPlainObject(a) && utils_1.isPlainObject(b)) {
var customResult = customizeObject && customizeObject(a, b, newKey);
return (customResult ||
merge_with_1["default"]([a, b], joinArrays({
customizeArray: customizeArray,
customizeObject: customizeObject,
key: newKey
})));
}
if (utils_1.isPlainObject(b)) {
return clone_deep_1["default"](b);
}
if (isArray(b)) {
return __spreadArray([], __read(b));
}
return b;
};
}
exports["default"] = joinArrays;
//# sourceMappingURL=join-arrays.js.map

View File

@ -0,0 +1 @@
{"version":3,"file":"join-arrays.js","sourceRoot":"","sources":["../src/join-arrays.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,0DAAmC;AAEnC,4DAAqC;AACrC,iCAA6D;AAE7D,IAAM,OAAO,GAAG,KAAK,CAAC,OAAO,CAAC;AAE9B,SAAwB,UAAU,CAAC,EAQ7B;QAR6B,qBAQ/B,EAAE,KAAA,EAPJ,cAAc,oBAAA,EACd,eAAe,qBAAA,EACf,GAAG,SAAA;IAMH,OAAO,SAAS,WAAW,CAAC,CAAM,EAAE,CAAM,EAAE,CAAM;QAChD,IAAM,MAAM,GAAG,GAAG,CAAC,CAAC,CAAI,GAAG,SAAI,CAAG,CAAC,CAAC,CAAC,CAAC,CAAC;QAEvC,IAAI,kBAAU,CAAC,CAAC,CAAC,IAAI,kBAAU,CAAC,CAAC,CAAC,EAAE;YAClC,OAAO;gBAAC,cAAc;qBAAd,UAAc,EAAd,qBAAc,EAAd,IAAc;oBAAd,yBAAc;;gBAAK,OAAA,WAAW,CAAC,CAAC,wCAAI,IAAI,KAAG,CAAC,wCAAI,IAAI,KAAG,CAAC,CAAC;YAAtC,CAAsC,CAAC;SACnE;QAED,IAAI,OAAO,CAAC,CAAC,CAAC,IAAI,OAAO,CAAC,CAAC,CAAC,EAAE;YAC5B,IAAM,YAAY,GAAG,cAAc,IAAI,cAAc,CAAC,CAAC,EAAE,CAAC,EAAE,MAAM,CAAC,CAAC;YAEpE,OAAO,YAAY,2CAAQ,CAAC,WAAK,CAAC,EAAC,CAAC;SACrC;QAED,IAAI,eAAO,CAAC,CAAC,CAAC,EAAE;YACd,OAAO,CAAC,CAAC;SACV;QAED,IAAI,qBAAa,CAAC,CAAC,CAAC,IAAI,qBAAa,CAAC,CAAC,CAAC,EAAE;YACxC,IAAM,YAAY,GAAG,eAAe,IAAI,eAAe,CAAC,CAAC,EAAE,CAAC,EAAE,MAAM,CAAC,CAAC;YAEtE,OAAO,CACL,YAAY;gBACZ,uBAAS,CACP,CAAC,CAAC,EAAE,CAAC,CAAC,EACN,UAAU,CAAC;oBACT,cAAc,gBAAA;oBACd,eAAe,iBAAA;oBACf,GAAG,EAAE,MAAM;iBACZ,CAAC,CACH,CACF,CAAC;SACH;QAED,IAAI,qBAAa,CAAC,CAAC,CAAC,EAAE;YACpB,OAAO,uBAAS,CAAC,CAAC,CAAC,CAAC;SACrB;QAED,IAAI,OAAO,CAAC,CAAC,CAAC,EAAE;YACd,gCAAW,CAAC,GAAE;SACf;QAED,OAAO,CAAC,CAAC;IACX,CAAC,CAAC;AACJ,CAAC;AApDD,gCAoDC"}

View File

@ -0,0 +1,2 @@
declare function mergeWith(objects: object[], customizer: any): object;
export default mergeWith;

38
app_vue/node_modules/webpack-merge/dist/merge-with.js generated vendored Normal file
View File

@ -0,0 +1,38 @@
"use strict";
var __read = (this && this.__read) || function (o, n) {
var m = typeof Symbol === "function" && o[Symbol.iterator];
if (!m) return o;
var i = m.call(o), r, ar = [], e;
try {
while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
}
catch (error) { e = { error: error }; }
finally {
try {
if (r && !r.done && (m = i["return"])) m.call(i);
}
finally { if (e) throw e.error; }
}
return ar;
};
exports.__esModule = true;
function mergeWith(objects, customizer) {
var _a = __read(objects), first = _a[0], rest = _a.slice(1);
var ret = first;
rest.forEach(function (a) {
ret = mergeTo(ret, a, customizer);
});
return ret;
}
function mergeTo(a, b, customizer) {
var ret = {};
Object.keys(a)
.concat(Object.keys(b))
.forEach(function (k) {
var v = customizer(a[k], b[k], k);
ret[k] = typeof v === "undefined" ? a[k] : v;
});
return ret;
}
exports["default"] = mergeWith;
//# sourceMappingURL=merge-with.js.map

View File

@ -0,0 +1 @@
{"version":3,"file":"merge-with.js","sourceRoot":"","sources":["../src/merge-with.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;AAAA,SAAS,SAAS,CAAC,OAAiB,EAAE,UAAU;IACxC,IAAA,KAAA,OAAmB,OAAO,CAAA,EAAzB,KAAK,QAAA,EAAK,IAAI,cAAW,CAAC;IACjC,IAAI,GAAG,GAAG,KAAK,CAAC;IAEhB,IAAI,CAAC,OAAO,CAAC,UAAC,CAAC;QACb,GAAG,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC,EAAE,UAAU,CAAC,CAAC;IACpC,CAAC,CAAC,CAAC;IAEH,OAAO,GAAG,CAAC;AACb,CAAC;AAED,SAAS,OAAO,CAAC,CAAC,EAAE,CAAC,EAAE,UAAU;IAC/B,IAAM,GAAG,GAAG,EAAE,CAAC;IAEf,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC;SACX,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;SACtB,OAAO,CAAC,UAAC,CAAC;QACT,IAAM,CAAC,GAAG,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;QAEpC,GAAG,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,KAAK,WAAW,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IAC/C,CAAC,CAAC,CAAC;IAEL,OAAO,GAAG,CAAC;AACb,CAAC;AAED,qBAAe,SAAS,CAAC"}

14
app_vue/node_modules/webpack-merge/dist/types.d.ts generated vendored Normal file
View File

@ -0,0 +1,14 @@
export declare type Key = string;
export declare type Customize = (a: any, b: any, key: Key) => any;
export interface ICustomizeOptions {
customizeArray?: Customize;
customizeObject?: Customize;
}
export declare enum CustomizeRule {
Match = "match",
Merge = "merge",
Append = "append",
Prepend = "prepend",
Replace = "replace"
}
export declare type CustomizeRuleString = "match" | "merge" | "append" | "prepend" | "replace";

12
app_vue/node_modules/webpack-merge/dist/types.js generated vendored Normal file
View File

@ -0,0 +1,12 @@
"use strict";
exports.__esModule = true;
exports.CustomizeRule = void 0;
var CustomizeRule;
(function (CustomizeRule) {
CustomizeRule["Match"] = "match";
CustomizeRule["Merge"] = "merge";
CustomizeRule["Append"] = "append";
CustomizeRule["Prepend"] = "prepend";
CustomizeRule["Replace"] = "replace";
})(CustomizeRule = exports.CustomizeRule || (exports.CustomizeRule = {}));
//# sourceMappingURL=types.js.map

1
app_vue/node_modules/webpack-merge/dist/types.js.map generated vendored Normal file
View File

@ -0,0 +1 @@
{"version":3,"file":"types.js","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":";;;AASA,IAAY,aAMX;AAND,WAAY,aAAa;IACvB,gCAAe,CAAA;IACf,gCAAe,CAAA;IACf,kCAAiB,CAAA;IACjB,oCAAmB,CAAA;IACnB,oCAAmB,CAAA;AACrB,CAAC,EANW,aAAa,GAAb,qBAAa,KAAb,qBAAa,QAMxB"}

2
app_vue/node_modules/webpack-merge/dist/unique.d.ts generated vendored Normal file
View File

@ -0,0 +1,2 @@
declare function mergeUnique(key: string, uniques: string[], getter: (a: object) => string): (a: [], b: [], k: string) => false | any[];
export default mergeUnique;

41
app_vue/node_modules/webpack-merge/dist/unique.js generated vendored Normal file
View File

@ -0,0 +1,41 @@
"use strict";
var __read = (this && this.__read) || function (o, n) {
var m = typeof Symbol === "function" && o[Symbol.iterator];
if (!m) return o;
var i = m.call(o), r, ar = [], e;
try {
while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
}
catch (error) { e = { error: error }; }
finally {
try {
if (r && !r.done && (m = i["return"])) m.call(i);
}
finally { if (e) throw e.error; }
}
return ar;
};
var __spreadArray = (this && this.__spreadArray) || function (to, from) {
for (var i = 0, il = from.length, j = to.length; i < il; i++, j++)
to[j] = from[i];
return to;
};
exports.__esModule = true;
function mergeUnique(key, uniques, getter) {
var uniquesSet = new Set(uniques);
return function (a, b, k) {
return (k === key) && Array.from(__spreadArray(__spreadArray([], __read(a)), __read(b)).map(function (it) { return ({ key: getter(it), value: it }); })
.map(function (_a) {
var key = _a.key, value = _a.value;
return ({ key: (uniquesSet.has(key) ? key : value), value: value });
})
.reduce(function (m, _a) {
var key = _a.key, value = _a.value;
m["delete"](key); // This is required to preserve backward compatible order of elements after a merge.
return m.set(key, value);
}, new Map())
.values());
};
}
exports["default"] = mergeUnique;
//# sourceMappingURL=unique.js.map

View File

@ -0,0 +1 @@
{"version":3,"file":"unique.js","sourceRoot":"","sources":["../src/unique.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;AAAA,SAAS,WAAW,CAClB,GAAW,EACX,OAAiB,EACjB,MAA6B;IAE7B,IAAI,UAAU,GAAG,IAAI,GAAG,CAAC,OAAO,CAAC,CAAA;IACjC,OAAO,UAAC,CAAK,EAAE,CAAK,EAAE,CAAS;QAC7B,OAAA,CAAC,CAAC,KAAK,GAAG,CAAC,IAAI,KAAK,CAAC,IAAI,CACvB,uCAAI,CAAC,WAAK,CAAC,GACN,GAAG,CAAC,UAAC,EAAU,IAAK,OAAA,CAAC,EAAE,GAAG,EAAE,MAAM,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC,EAAhC,CAAgC,CAAC;aACrD,GAAG,CAAC,UAAC,EAAc;gBAAZ,GAAG,SAAA,EAAE,KAAK,WAAA;YAAO,OAAA,CAAC,EAAE,GAAG,EAAE,CAAC,UAAU,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC,EAAE,KAAK,EAAE,KAAK,EAAC,CAAC;QAA3D,CAA2D,CAAC;aACpF,MAAM,CACH,UAAC,CAAC,EAAE,EAAa;gBAAX,GAAG,SAAA,EAAE,KAAK,WAAA;YACd,CAAC,CAAC,QAAM,CAAA,CAAC,GAAG,CAAC,CAAC,CAAC,oFAAoF;YACnG,OAAO,CAAC,CAAC,GAAG,CAAC,GAAG,EAAE,KAAK,CAAC,CAAA;QAC1B,CAAC,EACD,IAAI,GAAG,EAAY,CAAC;aACvB,MAAM,EAAE,CAAC;IAVhB,CAUgB,CAAA;AACpB,CAAC;AAED,qBAAe,WAAW,CAAC"}

17
app_vue/node_modules/webpack-merge/dist/utils.d.ts generated vendored Normal file
View File

@ -0,0 +1,17 @@
declare function isRegex(o: any): boolean;
declare function isFunction(functionToCheck: any): any;
declare function isPlainObject(a: any): boolean;
declare function isUndefined(a: any): boolean;
/**
* According to Webpack docs, a "test" should be the following:
*
* - A string
* - A RegExp
* - A function
* - An array of conditions (may be nested)
* - An object of conditions (may be nested)
*
* https://webpack.js.org/configuration/module/#condition
*/
declare function isSameCondition(a: any, b: any): boolean;
export { isRegex, isFunction, isPlainObject, isUndefined, isSameCondition };

98
app_vue/node_modules/webpack-merge/dist/utils.js generated vendored Normal file
View File

@ -0,0 +1,98 @@
"use strict";
var __read = (this && this.__read) || function (o, n) {
var m = typeof Symbol === "function" && o[Symbol.iterator];
if (!m) return o;
var i = m.call(o), r, ar = [], e;
try {
while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
}
catch (error) { e = { error: error }; }
finally {
try {
if (r && !r.done && (m = i["return"])) m.call(i);
}
finally { if (e) throw e.error; }
}
return ar;
};
exports.__esModule = true;
exports.isSameCondition = exports.isUndefined = exports.isPlainObject = exports.isFunction = exports.isRegex = void 0;
var flat_1 = require("flat");
function isRegex(o) {
return o instanceof RegExp;
}
exports.isRegex = isRegex;
// https://stackoverflow.com/a/7356528/228885
function isFunction(functionToCheck) {
return (functionToCheck && {}.toString.call(functionToCheck) === "[object Function]");
}
exports.isFunction = isFunction;
function isPlainObject(a) {
if (a === null || Array.isArray(a)) {
return false;
}
return typeof a === "object";
}
exports.isPlainObject = isPlainObject;
function isUndefined(a) {
return typeof a === "undefined";
}
exports.isUndefined = isUndefined;
/**
* According to Webpack docs, a "test" should be the following:
*
* - A string
* - A RegExp
* - A function
* - An array of conditions (may be nested)
* - An object of conditions (may be nested)
*
* https://webpack.js.org/configuration/module/#condition
*/
function isSameCondition(a, b) {
var _a, _b;
if (!a || !b) {
return a === b;
}
if (typeof a === 'string' || typeof b === 'string' ||
isRegex(a) || isRegex(b) ||
isFunction(a) || isFunction(b)) {
return a.toString() === b.toString();
}
var entriesA = Object.entries(flat_1.flatten(a));
var entriesB = Object.entries(flat_1.flatten(b));
if (entriesA.length !== entriesB.length) {
return false;
}
for (var i = 0; i < entriesA.length; i++) {
entriesA[i][0] = entriesA[i][0].replace(/\b\d+\b/g, "[]");
entriesB[i][0] = entriesB[i][0].replace(/\b\d+\b/g, "[]");
}
function cmp(_a, _b) {
var _c = __read(_a, 2), k1 = _c[0], v1 = _c[1];
var _d = __read(_b, 2), k2 = _d[0], v2 = _d[1];
if (k1 < k2)
return -1;
if (k1 > k2)
return 1;
if (v1 < v2)
return -1;
if (v1 > v2)
return 1;
return 0;
}
;
entriesA.sort(cmp);
entriesB.sort(cmp);
if (entriesA.length !== entriesB.length) {
return false;
}
for (var i = 0; i < entriesA.length; i++) {
if (entriesA[i][0] !== entriesB[i][0] || ((_a = entriesA[i][1]) === null || _a === void 0 ? void 0 : _a.toString()) !== ((_b = entriesB[i][1]) === null || _b === void 0 ? void 0 : _b.toString())) {
return false;
}
}
return true;
}
exports.isSameCondition = isSameCondition;
//# sourceMappingURL=utils.js.map

1
app_vue/node_modules/webpack-merge/dist/utils.js.map generated vendored Normal file
View File

@ -0,0 +1 @@
{"version":3,"file":"utils.js","sourceRoot":"","sources":["../src/utils.ts"],"names":[],"mappings":"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"}

60
app_vue/node_modules/webpack-merge/package.json generated vendored Normal file
View File

@ -0,0 +1,60 @@
{
"name": "webpack-merge",
"description": "Variant of merge that's useful for webpack configuration",
"author": "Juho Vepsalainen <bebraw@gmail.com>",
"version": "5.10.0",
"scripts": {
"build": "tsc",
"format": "prettier . --write --ignore-path .gitignore",
"start": "tsdx watch",
"test": "tsdx test",
"prepare": "npm run build"
},
"main": "dist/index.js",
"typings": "dist/index.d.ts",
"files": [
"dist"
],
"dependencies": {
"clone-deep": "^4.0.1",
"flat": "^5.0.2",
"wildcard": "^2.0.0"
},
"devDependencies": {
"@types/estree": "0.0.48",
"@types/flat": "^5.0.3",
"husky": "^6.0.0",
"prettier": "^2.3.1",
"tsdx": "^0.14.1",
"tslib": "^2.2.0",
"typescript": "^4.3.2",
"webpack": "^5.38.1"
},
"repository": {
"type": "git",
"url": "https://github.com/survivejs/webpack-merge.git"
},
"homepage": "https://github.com/survivejs/webpack-merge",
"bugs": {
"url": "https://github.com/survivejs/webpack-merge/issues"
},
"keywords": [
"webpack",
"merge"
],
"engines": {
"node": ">=10.0.0"
},
"jest": {
"collectCoverage": true,
"collectCoverageFrom": [
"dist/*.js"
]
},
"license": "MIT",
"husky": {
"hooks": {
"pre-commit": "npm run test"
}
}
}