@tmagic/form 1.8.0-beta.7 → 1.8.0-manmanyu.10

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (72) hide show
  1. package/dist/es/Form.vue_vue_type_script_setup_true_lang.js +45 -6
  2. package/dist/es/FormBox.vue_vue_type_script_setup_true_lang.js +1 -1
  3. package/dist/es/FormDialog.vue_vue_type_script_setup_true_lang.js +13 -6
  4. package/dist/es/FormDrawer.vue_vue_type_script_setup_true_lang.js +38 -13
  5. package/dist/es/containers/Col.vue_vue_type_script_setup_true_lang.js +1 -1
  6. package/dist/es/containers/Container.vue_vue_type_script_setup_true_lang.js +22 -17
  7. package/dist/es/containers/Fieldset.vue_vue_type_script_setup_true_lang.js +1 -1
  8. package/dist/es/containers/FlexLayout.vue_vue_type_script_setup_true_lang.js +1 -1
  9. package/dist/es/containers/FormLabel.vue_vue_type_script_setup_true_lang.js +1 -1
  10. package/dist/es/containers/GroupList.vue_vue_type_script_setup_true_lang.js +1 -1
  11. package/dist/es/containers/GroupListItem.vue_vue_type_script_setup_true_lang.js +23 -19
  12. package/dist/es/containers/Panel.vue_vue_type_script_setup_true_lang.js +17 -11
  13. package/dist/es/containers/Row.vue_vue_type_script_setup_true_lang.js +1 -1
  14. package/dist/es/containers/Step.vue_vue_type_script_setup_true_lang.js +1 -1
  15. package/dist/es/containers/Tabs.vue_vue_type_script_setup_true_lang.js +1 -1
  16. package/dist/es/containers/table/ActionsColumn.vue_vue_type_script_setup_true_lang.js +14 -7
  17. package/dist/es/containers/table/SortColumn.vue_vue_type_script_setup_true_lang.js +1 -1
  18. package/dist/es/containers/table/Table.vue_vue_type_script_setup_true_lang.js +1 -1
  19. package/dist/es/containers/table/useTableColumns.js +5 -2
  20. package/dist/es/containers/table-group-list/TableGroupList.vue_vue_type_script_setup_true_lang.js +3 -2
  21. package/dist/es/fields/Cascader.vue_vue_type_script_setup_true_lang.js +5 -2
  22. package/dist/es/fields/Checkbox.vue_vue_type_script_setup_true_lang.js +5 -2
  23. package/dist/es/fields/CheckboxGroup.vue_vue_type_script_setup_true_lang.js +5 -2
  24. package/dist/es/fields/ColorPicker.vue_vue_type_script_setup_true_lang.js +5 -2
  25. package/dist/es/fields/Date.vue_vue_type_script_setup_true_lang.js +5 -2
  26. package/dist/es/fields/DateTime.vue_vue_type_script_setup_true_lang.js +5 -2
  27. package/dist/es/fields/Daterange.vue_vue_type_script_setup_true_lang.js +5 -2
  28. package/dist/es/fields/Display.vue_vue_type_script_setup_true_lang.js +5 -2
  29. package/dist/es/fields/DynamicField.vue_vue_type_script_setup_true_lang.js +5 -2
  30. package/dist/es/fields/Hidden.vue_vue_type_script_setup_true_lang.js +1 -1
  31. package/dist/es/fields/Link.vue_vue_type_script_setup_true_lang.js +30 -8
  32. package/dist/es/fields/Number.vue_vue_type_script_setup_true_lang.js +5 -2
  33. package/dist/es/fields/NumberRange.vue_vue_type_script_setup_true_lang.js +5 -2
  34. package/dist/es/fields/RadioGroup.vue_vue_type_script_setup_true_lang.js +17 -9
  35. package/dist/es/fields/Select.vue_vue_type_script_setup_true_lang.js +5 -2
  36. package/dist/es/fields/Switch.vue_vue_type_script_setup_true_lang.js +5 -2
  37. package/dist/es/fields/Text.vue_vue_type_script_setup_true_lang.js +113 -78
  38. package/dist/es/fields/Textarea.vue_vue_type_script_setup_true_lang.js +5 -2
  39. package/dist/es/fields/Time.vue_vue_type_script_setup_true_lang.js +5 -2
  40. package/dist/es/fields/Timerange.vue_vue_type_script_setup_true_lang.js +5 -2
  41. package/dist/es/plugin.js +2 -0
  42. package/dist/es/style.css +120 -8
  43. package/dist/es/utils/form.js +2 -2
  44. package/dist/style.css +120 -8
  45. package/dist/themes/magic-admin.css +494 -0
  46. package/dist/tmagic-form.umd.cjs +1850 -1640
  47. package/package.json +5 -5
  48. package/src/Form.vue +53 -4
  49. package/src/FormDialog.vue +14 -3
  50. package/src/FormDrawer.vue +40 -12
  51. package/src/containers/Container.vue +14 -5
  52. package/src/containers/GroupListItem.vue +14 -12
  53. package/src/containers/Panel.vue +10 -3
  54. package/src/containers/table/ActionsColumn.vue +10 -4
  55. package/src/containers/table/useTableColumns.ts +8 -2
  56. package/src/containers/table-group-list/TableGroupList.vue +7 -1
  57. package/src/fields/Link.vue +17 -3
  58. package/src/fields/RadioGroup.vue +11 -5
  59. package/src/fields/Text.vue +43 -19
  60. package/src/plugin.ts +2 -0
  61. package/src/theme/container.scss +3 -0
  62. package/src/theme/fieldset.scss +50 -0
  63. package/src/theme/form.scss +6 -0
  64. package/src/theme/group-list.scss +8 -7
  65. package/src/theme/index.scss +1 -0
  66. package/src/theme/link.scss +17 -0
  67. package/src/theme/panel.scss +1 -1
  68. package/src/theme/radio-group.scss +23 -0
  69. package/src/theme/tabs.scss +2 -2
  70. package/src/theme/text.scss +38 -0
  71. package/src/theme/themes/magic-admin/index.scss +91 -0
  72. package/types/index.d.ts +46 -1
@@ -41,6 +41,220 @@
41
41
  //#region packages/form/src/schema.ts
42
42
  var FORM_DIFF_CONFIG_KEY = Symbol("mFormDiffConfig");
43
43
  //#endregion
44
+ //#region node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/_listCacheClear.js
45
+ /**
46
+ * Removes all key-value entries from the list cache.
47
+ *
48
+ * @private
49
+ * @name clear
50
+ * @memberOf ListCache
51
+ */
52
+ function listCacheClear() {
53
+ this.__data__ = [];
54
+ this.size = 0;
55
+ }
56
+ //#endregion
57
+ //#region node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/eq.js
58
+ /**
59
+ * Performs a
60
+ * [`SameValueZero`](http://ecma-international.org/ecma-262/7.0/#sec-samevaluezero)
61
+ * comparison between two values to determine if they are equivalent.
62
+ *
63
+ * @static
64
+ * @memberOf _
65
+ * @since 4.0.0
66
+ * @category Lang
67
+ * @param {*} value The value to compare.
68
+ * @param {*} other The other value to compare.
69
+ * @returns {boolean} Returns `true` if the values are equivalent, else `false`.
70
+ * @example
71
+ *
72
+ * var object = { 'a': 1 };
73
+ * var other = { 'a': 1 };
74
+ *
75
+ * _.eq(object, object);
76
+ * // => true
77
+ *
78
+ * _.eq(object, other);
79
+ * // => false
80
+ *
81
+ * _.eq('a', 'a');
82
+ * // => true
83
+ *
84
+ * _.eq('a', Object('a'));
85
+ * // => false
86
+ *
87
+ * _.eq(NaN, NaN);
88
+ * // => true
89
+ */
90
+ function eq(value, other) {
91
+ return value === other || value !== value && other !== other;
92
+ }
93
+ //#endregion
94
+ //#region node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/_assocIndexOf.js
95
+ /**
96
+ * Gets the index at which the `key` is found in `array` of key-value pairs.
97
+ *
98
+ * @private
99
+ * @param {Array} array The array to inspect.
100
+ * @param {*} key The key to search for.
101
+ * @returns {number} Returns the index of the matched value, else `-1`.
102
+ */
103
+ function assocIndexOf(array, key) {
104
+ var length = array.length;
105
+ while (length--) if (eq(array[length][0], key)) return length;
106
+ return -1;
107
+ }
108
+ //#endregion
109
+ //#region node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/_listCacheDelete.js
110
+ /** Built-in value references. */
111
+ var splice = Array.prototype.splice;
112
+ /**
113
+ * Removes `key` and its value from the list cache.
114
+ *
115
+ * @private
116
+ * @name delete
117
+ * @memberOf ListCache
118
+ * @param {string} key The key of the value to remove.
119
+ * @returns {boolean} Returns `true` if the entry was removed, else `false`.
120
+ */
121
+ function listCacheDelete(key) {
122
+ var data = this.__data__, index = assocIndexOf(data, key);
123
+ if (index < 0) return false;
124
+ if (index == data.length - 1) data.pop();
125
+ else splice.call(data, index, 1);
126
+ --this.size;
127
+ return true;
128
+ }
129
+ //#endregion
130
+ //#region node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/_listCacheGet.js
131
+ /**
132
+ * Gets the list cache value for `key`.
133
+ *
134
+ * @private
135
+ * @name get
136
+ * @memberOf ListCache
137
+ * @param {string} key The key of the value to get.
138
+ * @returns {*} Returns the entry value.
139
+ */
140
+ function listCacheGet(key) {
141
+ var data = this.__data__, index = assocIndexOf(data, key);
142
+ return index < 0 ? void 0 : data[index][1];
143
+ }
144
+ //#endregion
145
+ //#region node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/_listCacheHas.js
146
+ /**
147
+ * Checks if a list cache value for `key` exists.
148
+ *
149
+ * @private
150
+ * @name has
151
+ * @memberOf ListCache
152
+ * @param {string} key The key of the entry to check.
153
+ * @returns {boolean} Returns `true` if an entry for `key` exists, else `false`.
154
+ */
155
+ function listCacheHas(key) {
156
+ return assocIndexOf(this.__data__, key) > -1;
157
+ }
158
+ //#endregion
159
+ //#region node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/_listCacheSet.js
160
+ /**
161
+ * Sets the list cache `key` to `value`.
162
+ *
163
+ * @private
164
+ * @name set
165
+ * @memberOf ListCache
166
+ * @param {string} key The key of the value to set.
167
+ * @param {*} value The value to set.
168
+ * @returns {Object} Returns the list cache instance.
169
+ */
170
+ function listCacheSet(key, value) {
171
+ var data = this.__data__, index = assocIndexOf(data, key);
172
+ if (index < 0) {
173
+ ++this.size;
174
+ data.push([key, value]);
175
+ } else data[index][1] = value;
176
+ return this;
177
+ }
178
+ //#endregion
179
+ //#region node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/_ListCache.js
180
+ /**
181
+ * Creates an list cache object.
182
+ *
183
+ * @private
184
+ * @constructor
185
+ * @param {Array} [entries] The key-value pairs to cache.
186
+ */
187
+ function ListCache(entries) {
188
+ var index = -1, length = entries == null ? 0 : entries.length;
189
+ this.clear();
190
+ while (++index < length) {
191
+ var entry = entries[index];
192
+ this.set(entry[0], entry[1]);
193
+ }
194
+ }
195
+ ListCache.prototype.clear = listCacheClear;
196
+ ListCache.prototype["delete"] = listCacheDelete;
197
+ ListCache.prototype.get = listCacheGet;
198
+ ListCache.prototype.has = listCacheHas;
199
+ ListCache.prototype.set = listCacheSet;
200
+ //#endregion
201
+ //#region node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/_stackClear.js
202
+ /**
203
+ * Removes all key-value entries from the stack.
204
+ *
205
+ * @private
206
+ * @name clear
207
+ * @memberOf Stack
208
+ */
209
+ function stackClear() {
210
+ this.__data__ = new ListCache();
211
+ this.size = 0;
212
+ }
213
+ //#endregion
214
+ //#region node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/_stackDelete.js
215
+ /**
216
+ * Removes `key` and its value from the stack.
217
+ *
218
+ * @private
219
+ * @name delete
220
+ * @memberOf Stack
221
+ * @param {string} key The key of the value to remove.
222
+ * @returns {boolean} Returns `true` if the entry was removed, else `false`.
223
+ */
224
+ function stackDelete(key) {
225
+ var data = this.__data__, result = data["delete"](key);
226
+ this.size = data.size;
227
+ return result;
228
+ }
229
+ //#endregion
230
+ //#region node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/_stackGet.js
231
+ /**
232
+ * Gets the stack value for `key`.
233
+ *
234
+ * @private
235
+ * @name get
236
+ * @memberOf Stack
237
+ * @param {string} key The key of the value to get.
238
+ * @returns {*} Returns the entry value.
239
+ */
240
+ function stackGet(key) {
241
+ return this.__data__.get(key);
242
+ }
243
+ //#endregion
244
+ //#region node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/_stackHas.js
245
+ /**
246
+ * Checks if a stack value for `key` exists.
247
+ *
248
+ * @private
249
+ * @name has
250
+ * @memberOf Stack
251
+ * @param {string} key The key of the entry to check.
252
+ * @returns {boolean} Returns `true` if an entry for `key` exists, else `false`.
253
+ */
254
+ function stackHas(key) {
255
+ return this.__data__.has(key);
256
+ }
257
+ //#endregion
44
258
  //#region node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/_freeGlobal.js
45
259
  /** Detect free variable `global` from Node.js. */
46
260
  var freeGlobal = typeof global == "object" && global && global.Object === Object && global;
@@ -122,212 +336,55 @@
122
336
  return symToStringTag && symToStringTag in Object(value) ? getRawTag(value) : objectToString(value);
123
337
  }
124
338
  //#endregion
125
- //#region node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/isObjectLike.js
339
+ //#region node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/isObject.js
126
340
  /**
127
- * Checks if `value` is object-like. A value is object-like if it's not `null`
128
- * and has a `typeof` result of "object".
341
+ * Checks if `value` is the
342
+ * [language type](http://www.ecma-international.org/ecma-262/7.0/#sec-ecmascript-language-types)
343
+ * of `Object`. (e.g. arrays, functions, objects, regexes, `new Number(0)`, and `new String('')`)
129
344
  *
130
345
  * @static
131
346
  * @memberOf _
132
- * @since 4.0.0
347
+ * @since 0.1.0
133
348
  * @category Lang
134
349
  * @param {*} value The value to check.
135
- * @returns {boolean} Returns `true` if `value` is object-like, else `false`.
350
+ * @returns {boolean} Returns `true` if `value` is an object, else `false`.
136
351
  * @example
137
352
  *
138
- * _.isObjectLike({});
353
+ * _.isObject({});
139
354
  * // => true
140
355
  *
141
- * _.isObjectLike([1, 2, 3]);
356
+ * _.isObject([1, 2, 3]);
142
357
  * // => true
143
358
  *
144
- * _.isObjectLike(_.noop);
145
- * // => false
359
+ * _.isObject(_.noop);
360
+ * // => true
146
361
  *
147
- * _.isObjectLike(null);
362
+ * _.isObject(null);
148
363
  * // => false
149
364
  */
150
- function isObjectLike(value) {
151
- return value != null && typeof value == "object";
365
+ function isObject(value) {
366
+ var type = typeof value;
367
+ return value != null && (type == "object" || type == "function");
152
368
  }
153
369
  //#endregion
154
- //#region node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/isSymbol.js
370
+ //#region node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/isFunction.js
155
371
  /** `Object#toString` result references. */
156
- var symbolTag$3 = "[object Symbol]";
372
+ var asyncTag = "[object AsyncFunction]", funcTag$2 = "[object Function]", genTag$1 = "[object GeneratorFunction]", proxyTag = "[object Proxy]";
157
373
  /**
158
- * Checks if `value` is classified as a `Symbol` primitive or object.
374
+ * Checks if `value` is classified as a `Function` object.
159
375
  *
160
376
  * @static
161
377
  * @memberOf _
162
- * @since 4.0.0
378
+ * @since 0.1.0
163
379
  * @category Lang
164
380
  * @param {*} value The value to check.
165
- * @returns {boolean} Returns `true` if `value` is a symbol, else `false`.
381
+ * @returns {boolean} Returns `true` if `value` is a function, else `false`.
166
382
  * @example
167
383
  *
168
- * _.isSymbol(Symbol.iterator);
384
+ * _.isFunction(_);
169
385
  * // => true
170
386
  *
171
- * _.isSymbol('abc');
172
- * // => false
173
- */
174
- function isSymbol(value) {
175
- return typeof value == "symbol" || isObjectLike(value) && baseGetTag(value) == symbolTag$3;
176
- }
177
- //#endregion
178
- //#region node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/isArray.js
179
- /**
180
- * Checks if `value` is classified as an `Array` object.
181
- *
182
- * @static
183
- * @memberOf _
184
- * @since 0.1.0
185
- * @category Lang
186
- * @param {*} value The value to check.
187
- * @returns {boolean} Returns `true` if `value` is an array, else `false`.
188
- * @example
189
- *
190
- * _.isArray([1, 2, 3]);
191
- * // => true
192
- *
193
- * _.isArray(document.body.children);
194
- * // => false
195
- *
196
- * _.isArray('abc');
197
- * // => false
198
- *
199
- * _.isArray(_.noop);
200
- * // => false
201
- */
202
- var isArray = Array.isArray;
203
- //#endregion
204
- //#region node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/_trimmedEndIndex.js
205
- /** Used to match a single whitespace character. */
206
- var reWhitespace = /\s/;
207
- /**
208
- * Used by `_.trim` and `_.trimEnd` to get the index of the last non-whitespace
209
- * character of `string`.
210
- *
211
- * @private
212
- * @param {string} string The string to inspect.
213
- * @returns {number} Returns the index of the last non-whitespace character.
214
- */
215
- function trimmedEndIndex(string) {
216
- var index = string.length;
217
- while (index-- && reWhitespace.test(string.charAt(index)));
218
- return index;
219
- }
220
- //#endregion
221
- //#region node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/_baseTrim.js
222
- /** Used to match leading whitespace. */
223
- var reTrimStart = /^\s+/;
224
- /**
225
- * The base implementation of `_.trim`.
226
- *
227
- * @private
228
- * @param {string} string The string to trim.
229
- * @returns {string} Returns the trimmed string.
230
- */
231
- function baseTrim(string) {
232
- return string ? string.slice(0, trimmedEndIndex(string) + 1).replace(reTrimStart, "") : string;
233
- }
234
- //#endregion
235
- //#region node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/isObject.js
236
- /**
237
- * Checks if `value` is the
238
- * [language type](http://www.ecma-international.org/ecma-262/7.0/#sec-ecmascript-language-types)
239
- * of `Object`. (e.g. arrays, functions, objects, regexes, `new Number(0)`, and `new String('')`)
240
- *
241
- * @static
242
- * @memberOf _
243
- * @since 0.1.0
244
- * @category Lang
245
- * @param {*} value The value to check.
246
- * @returns {boolean} Returns `true` if `value` is an object, else `false`.
247
- * @example
248
- *
249
- * _.isObject({});
250
- * // => true
251
- *
252
- * _.isObject([1, 2, 3]);
253
- * // => true
254
- *
255
- * _.isObject(_.noop);
256
- * // => true
257
- *
258
- * _.isObject(null);
259
- * // => false
260
- */
261
- function isObject(value) {
262
- var type = typeof value;
263
- return value != null && (type == "object" || type == "function");
264
- }
265
- //#endregion
266
- //#region node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/toNumber.js
267
- /** Used as references for various `Number` constants. */
268
- var NAN = NaN;
269
- /** Used to detect bad signed hexadecimal string values. */
270
- var reIsBadHex = /^[-+]0x[0-9a-f]+$/i;
271
- /** Used to detect binary string values. */
272
- var reIsBinary = /^0b[01]+$/i;
273
- /** Used to detect octal string values. */
274
- var reIsOctal = /^0o[0-7]+$/i;
275
- /** Built-in method references without a dependency on `root`. */
276
- var freeParseInt = parseInt;
277
- /**
278
- * Converts `value` to a number.
279
- *
280
- * @static
281
- * @memberOf _
282
- * @since 4.0.0
283
- * @category Lang
284
- * @param {*} value The value to process.
285
- * @returns {number} Returns the number.
286
- * @example
287
- *
288
- * _.toNumber(3.2);
289
- * // => 3.2
290
- *
291
- * _.toNumber(Number.MIN_VALUE);
292
- * // => 5e-324
293
- *
294
- * _.toNumber(Infinity);
295
- * // => Infinity
296
- *
297
- * _.toNumber('3.2');
298
- * // => 3.2
299
- */
300
- function toNumber(value) {
301
- if (typeof value == "number") return value;
302
- if (isSymbol(value)) return NAN;
303
- if (isObject(value)) {
304
- var other = typeof value.valueOf == "function" ? value.valueOf() : value;
305
- value = isObject(other) ? other + "" : other;
306
- }
307
- if (typeof value != "string") return value === 0 ? value : +value;
308
- value = baseTrim(value);
309
- var isBinary = reIsBinary.test(value);
310
- return isBinary || reIsOctal.test(value) ? freeParseInt(value.slice(2), isBinary ? 2 : 8) : reIsBadHex.test(value) ? NAN : +value;
311
- }
312
- //#endregion
313
- //#region node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/isFunction.js
314
- /** `Object#toString` result references. */
315
- var asyncTag = "[object AsyncFunction]", funcTag$2 = "[object Function]", genTag$1 = "[object GeneratorFunction]", proxyTag = "[object Proxy]";
316
- /**
317
- * Checks if `value` is classified as a `Function` object.
318
- *
319
- * @static
320
- * @memberOf _
321
- * @since 0.1.0
322
- * @category Lang
323
- * @param {*} value The value to check.
324
- * @returns {boolean} Returns `true` if `value` is a function, else `false`.
325
- * @example
326
- *
327
- * _.isFunction(_);
328
- * // => true
329
- *
330
- * _.isFunction(/abc/);
387
+ * _.isFunction(/abc/);
331
388
  * // => false
332
389
  */
333
390
  function isFunction(value) {
@@ -435,307 +492,453 @@
435
492
  return baseIsNative(value) ? value : void 0;
436
493
  }
437
494
  //#endregion
438
- //#region node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/_WeakMap.js
439
- var WeakMap = getNative(root, "WeakMap");
495
+ //#region node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/_Map.js
496
+ var Map$1 = getNative(root, "Map");
440
497
  //#endregion
441
- //#region node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/_baseCreate.js
442
- /** Built-in value references. */
443
- var objectCreate = Object.create;
498
+ //#region node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/_nativeCreate.js
499
+ var nativeCreate = getNative(Object, "create");
500
+ //#endregion
501
+ //#region node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/_hashClear.js
444
502
  /**
445
- * The base implementation of `_.create` without support for assigning
446
- * properties to the created object.
503
+ * Removes all key-value entries from the hash.
447
504
  *
448
505
  * @private
449
- * @param {Object} proto The object to inherit from.
450
- * @returns {Object} Returns the new object.
506
+ * @name clear
507
+ * @memberOf Hash
451
508
  */
452
- var baseCreate = function() {
453
- function object() {}
454
- return function(proto) {
455
- if (!isObject(proto)) return {};
456
- if (objectCreate) return objectCreate(proto);
457
- object.prototype = proto;
458
- var result = new object();
459
- object.prototype = void 0;
460
- return result;
461
- };
462
- }();
509
+ function hashClear() {
510
+ this.__data__ = nativeCreate ? nativeCreate(null) : {};
511
+ this.size = 0;
512
+ }
463
513
  //#endregion
464
- //#region node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/_copyArray.js
514
+ //#region node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/_hashDelete.js
465
515
  /**
466
- * Copies the values of `source` to `array`.
516
+ * Removes `key` and its value from the hash.
467
517
  *
468
518
  * @private
469
- * @param {Array} source The array to copy values from.
470
- * @param {Array} [array=[]] The array to copy values to.
471
- * @returns {Array} Returns `array`.
519
+ * @name delete
520
+ * @memberOf Hash
521
+ * @param {Object} hash The hash to modify.
522
+ * @param {string} key The key of the value to remove.
523
+ * @returns {boolean} Returns `true` if the entry was removed, else `false`.
472
524
  */
473
- function copyArray(source, array) {
474
- var index = -1, length = source.length;
475
- array || (array = Array(length));
476
- while (++index < length) array[index] = source[index];
477
- return array;
525
+ function hashDelete(key) {
526
+ var result = this.has(key) && delete this.__data__[key];
527
+ this.size -= result ? 1 : 0;
528
+ return result;
478
529
  }
479
530
  //#endregion
480
- //#region node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/_defineProperty.js
481
- var defineProperty = function() {
482
- try {
483
- var func = getNative(Object, "defineProperty");
484
- func({}, "", {});
485
- return func;
486
- } catch (e) {}
487
- }();
488
- //#endregion
489
- //#region node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/_arrayEach.js
531
+ //#region node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/_hashGet.js
532
+ /** Used to stand-in for `undefined` hash values. */
533
+ var HASH_UNDEFINED$2 = "__lodash_hash_undefined__";
534
+ /** Used to check objects for own properties. */
535
+ var hasOwnProperty$10 = Object.prototype.hasOwnProperty;
490
536
  /**
491
- * A specialized version of `_.forEach` for arrays without support for
492
- * iteratee shorthands.
537
+ * Gets the hash value for `key`.
493
538
  *
494
539
  * @private
495
- * @param {Array} [array] The array to iterate over.
496
- * @param {Function} iteratee The function invoked per iteration.
497
- * @returns {Array} Returns `array`.
540
+ * @name get
541
+ * @memberOf Hash
542
+ * @param {string} key The key of the value to get.
543
+ * @returns {*} Returns the entry value.
498
544
  */
499
- function arrayEach(array, iteratee) {
500
- var index = -1, length = array == null ? 0 : array.length;
501
- while (++index < length) if (iteratee(array[index], index, array) === false) break;
502
- return array;
545
+ function hashGet(key) {
546
+ var data = this.__data__;
547
+ if (nativeCreate) {
548
+ var result = data[key];
549
+ return result === HASH_UNDEFINED$2 ? void 0 : result;
550
+ }
551
+ return hasOwnProperty$10.call(data, key) ? data[key] : void 0;
503
552
  }
504
553
  //#endregion
505
- //#region node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/_isIndex.js
506
- /** Used as references for various `Number` constants. */
507
- var MAX_SAFE_INTEGER$1 = 9007199254740991;
508
- /** Used to detect unsigned integer values. */
509
- var reIsUint = /^(?:0|[1-9]\d*)$/;
554
+ //#region node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/_hashHas.js
555
+ /** Used to check objects for own properties. */
556
+ var hasOwnProperty$9 = Object.prototype.hasOwnProperty;
510
557
  /**
511
- * Checks if `value` is a valid array-like index.
558
+ * Checks if a hash value for `key` exists.
512
559
  *
513
560
  * @private
514
- * @param {*} value The value to check.
515
- * @param {number} [length=MAX_SAFE_INTEGER] The upper bounds of a valid index.
516
- * @returns {boolean} Returns `true` if `value` is a valid index, else `false`.
561
+ * @name has
562
+ * @memberOf Hash
563
+ * @param {string} key The key of the entry to check.
564
+ * @returns {boolean} Returns `true` if an entry for `key` exists, else `false`.
517
565
  */
518
- function isIndex(value, length) {
519
- var type = typeof value;
520
- length = length == null ? MAX_SAFE_INTEGER$1 : length;
521
- return !!length && (type == "number" || type != "symbol" && reIsUint.test(value)) && value > -1 && value % 1 == 0 && value < length;
566
+ function hashHas(key) {
567
+ var data = this.__data__;
568
+ return nativeCreate ? data[key] !== void 0 : hasOwnProperty$9.call(data, key);
522
569
  }
523
570
  //#endregion
524
- //#region node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/_baseAssignValue.js
571
+ //#region node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/_hashSet.js
572
+ /** Used to stand-in for `undefined` hash values. */
573
+ var HASH_UNDEFINED$1 = "__lodash_hash_undefined__";
525
574
  /**
526
- * The base implementation of `assignValue` and `assignMergeValue` without
527
- * value checks.
575
+ * Sets the hash `key` to `value`.
528
576
  *
529
577
  * @private
530
- * @param {Object} object The object to modify.
531
- * @param {string} key The key of the property to assign.
532
- * @param {*} value The value to assign.
578
+ * @name set
579
+ * @memberOf Hash
580
+ * @param {string} key The key of the value to set.
581
+ * @param {*} value The value to set.
582
+ * @returns {Object} Returns the hash instance.
533
583
  */
534
- function baseAssignValue(object, key, value) {
535
- if (key == "__proto__" && defineProperty) defineProperty(object, key, {
536
- "configurable": true,
537
- "enumerable": true,
538
- "value": value,
539
- "writable": true
540
- });
541
- else object[key] = value;
584
+ function hashSet(key, value) {
585
+ var data = this.__data__;
586
+ this.size += this.has(key) ? 0 : 1;
587
+ data[key] = nativeCreate && value === void 0 ? HASH_UNDEFINED$1 : value;
588
+ return this;
542
589
  }
543
590
  //#endregion
544
- //#region node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/eq.js
591
+ //#region node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/_Hash.js
545
592
  /**
546
- * Performs a
547
- * [`SameValueZero`](http://ecma-international.org/ecma-262/7.0/#sec-samevaluezero)
548
- * comparison between two values to determine if they are equivalent.
549
- *
550
- * @static
551
- * @memberOf _
552
- * @since 4.0.0
553
- * @category Lang
554
- * @param {*} value The value to compare.
555
- * @param {*} other The other value to compare.
556
- * @returns {boolean} Returns `true` if the values are equivalent, else `false`.
557
- * @example
558
- *
559
- * var object = { 'a': 1 };
560
- * var other = { 'a': 1 };
561
- *
562
- * _.eq(object, object);
563
- * // => true
564
- *
565
- * _.eq(object, other);
566
- * // => false
567
- *
568
- * _.eq('a', 'a');
569
- * // => true
570
- *
571
- * _.eq('a', Object('a'));
572
- * // => false
593
+ * Creates a hash object.
573
594
  *
574
- * _.eq(NaN, NaN);
575
- * // => true
595
+ * @private
596
+ * @constructor
597
+ * @param {Array} [entries] The key-value pairs to cache.
576
598
  */
577
- function eq(value, other) {
578
- return value === other || value !== value && other !== other;
599
+ function Hash(entries) {
600
+ var index = -1, length = entries == null ? 0 : entries.length;
601
+ this.clear();
602
+ while (++index < length) {
603
+ var entry = entries[index];
604
+ this.set(entry[0], entry[1]);
605
+ }
579
606
  }
607
+ Hash.prototype.clear = hashClear;
608
+ Hash.prototype["delete"] = hashDelete;
609
+ Hash.prototype.get = hashGet;
610
+ Hash.prototype.has = hashHas;
611
+ Hash.prototype.set = hashSet;
580
612
  //#endregion
581
- //#region node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/_assignValue.js
582
- /** Used to check objects for own properties. */
583
- var hasOwnProperty$10 = Object.prototype.hasOwnProperty;
613
+ //#region node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/_mapCacheClear.js
584
614
  /**
585
- * Assigns `value` to `key` of `object` if the existing value is not equivalent
586
- * using [`SameValueZero`](http://ecma-international.org/ecma-262/7.0/#sec-samevaluezero)
587
- * for equality comparisons.
615
+ * Removes all key-value entries from the map.
588
616
  *
589
617
  * @private
590
- * @param {Object} object The object to modify.
591
- * @param {string} key The key of the property to assign.
592
- * @param {*} value The value to assign.
618
+ * @name clear
619
+ * @memberOf MapCache
593
620
  */
594
- function assignValue(object, key, value) {
595
- var objValue = object[key];
596
- if (!(hasOwnProperty$10.call(object, key) && eq(objValue, value)) || value === void 0 && !(key in object)) baseAssignValue(object, key, value);
621
+ function mapCacheClear() {
622
+ this.size = 0;
623
+ this.__data__ = {
624
+ "hash": new Hash(),
625
+ "map": new (Map$1 || ListCache)(),
626
+ "string": new Hash()
627
+ };
597
628
  }
598
629
  //#endregion
599
- //#region node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/_copyObject.js
630
+ //#region node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/_isKeyable.js
600
631
  /**
601
- * Copies properties of `source` to `object`.
632
+ * Checks if `value` is suitable for use as unique object key.
602
633
  *
603
634
  * @private
604
- * @param {Object} source The object to copy properties from.
605
- * @param {Array} props The property identifiers to copy.
606
- * @param {Object} [object={}] The object to copy properties to.
607
- * @param {Function} [customizer] The function to customize copied values.
608
- * @returns {Object} Returns `object`.
635
+ * @param {*} value The value to check.
636
+ * @returns {boolean} Returns `true` if `value` is suitable, else `false`.
609
637
  */
610
- function copyObject(source, props, object, customizer) {
611
- var isNew = !object;
612
- object || (object = {});
613
- var index = -1, length = props.length;
614
- while (++index < length) {
615
- var key = props[index];
616
- var newValue = customizer ? customizer(object[key], source[key], key, object, source) : void 0;
617
- if (newValue === void 0) newValue = source[key];
618
- if (isNew) baseAssignValue(object, key, newValue);
619
- else assignValue(object, key, newValue);
620
- }
621
- return object;
638
+ function isKeyable(value) {
639
+ var type = typeof value;
640
+ return type == "string" || type == "number" || type == "symbol" || type == "boolean" ? value !== "__proto__" : value === null;
622
641
  }
623
642
  //#endregion
624
- //#region node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/isLength.js
625
- /** Used as references for various `Number` constants. */
626
- var MAX_SAFE_INTEGER = 9007199254740991;
643
+ //#region node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/_getMapData.js
627
644
  /**
628
- * Checks if `value` is a valid array-like length.
629
- *
630
- * **Note:** This method is loosely based on
631
- * [`ToLength`](http://ecma-international.org/ecma-262/7.0/#sec-tolength).
632
- *
633
- * @static
634
- * @memberOf _
635
- * @since 4.0.0
636
- * @category Lang
637
- * @param {*} value The value to check.
638
- * @returns {boolean} Returns `true` if `value` is a valid length, else `false`.
639
- * @example
640
- *
641
- * _.isLength(3);
642
- * // => true
643
- *
644
- * _.isLength(Number.MIN_VALUE);
645
- * // => false
646
- *
647
- * _.isLength(Infinity);
648
- * // => false
645
+ * Gets the data for `map`.
649
646
  *
650
- * _.isLength('3');
651
- * // => false
647
+ * @private
648
+ * @param {Object} map The map to query.
649
+ * @param {string} key The reference key.
650
+ * @returns {*} Returns the map data.
652
651
  */
653
- function isLength(value) {
654
- return typeof value == "number" && value > -1 && value % 1 == 0 && value <= MAX_SAFE_INTEGER;
652
+ function getMapData(map, key) {
653
+ var data = map.__data__;
654
+ return isKeyable(key) ? data[typeof key == "string" ? "string" : "hash"] : data.map;
655
655
  }
656
656
  //#endregion
657
- //#region node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/isArrayLike.js
657
+ //#region node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/_mapCacheDelete.js
658
658
  /**
659
- * Checks if `value` is array-like. A value is considered array-like if it's
660
- * not a function and has a `value.length` that's an integer greater than or
661
- * equal to `0` and less than or equal to `Number.MAX_SAFE_INTEGER`.
662
- *
663
- * @static
664
- * @memberOf _
665
- * @since 4.0.0
666
- * @category Lang
667
- * @param {*} value The value to check.
668
- * @returns {boolean} Returns `true` if `value` is array-like, else `false`.
669
- * @example
670
- *
671
- * _.isArrayLike([1, 2, 3]);
672
- * // => true
673
- *
674
- * _.isArrayLike(document.body.children);
675
- * // => true
676
- *
677
- * _.isArrayLike('abc');
678
- * // => true
659
+ * Removes `key` and its value from the map.
679
660
  *
680
- * _.isArrayLike(_.noop);
681
- * // => false
661
+ * @private
662
+ * @name delete
663
+ * @memberOf MapCache
664
+ * @param {string} key The key of the value to remove.
665
+ * @returns {boolean} Returns `true` if the entry was removed, else `false`.
682
666
  */
683
- function isArrayLike(value) {
684
- return value != null && isLength(value.length) && !isFunction(value);
667
+ function mapCacheDelete(key) {
668
+ var result = getMapData(this, key)["delete"](key);
669
+ this.size -= result ? 1 : 0;
670
+ return result;
685
671
  }
686
672
  //#endregion
687
- //#region node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/_isPrototype.js
688
- /** Used for built-in method references. */
689
- var objectProto$1 = Object.prototype;
673
+ //#region node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/_mapCacheGet.js
690
674
  /**
691
- * Checks if `value` is likely a prototype object.
675
+ * Gets the map value for `key`.
692
676
  *
693
677
  * @private
694
- * @param {*} value The value to check.
695
- * @returns {boolean} Returns `true` if `value` is a prototype, else `false`.
678
+ * @name get
679
+ * @memberOf MapCache
680
+ * @param {string} key The key of the value to get.
681
+ * @returns {*} Returns the entry value.
696
682
  */
697
- function isPrototype(value) {
698
- var Ctor = value && value.constructor;
699
- return value === (typeof Ctor == "function" && Ctor.prototype || objectProto$1);
683
+ function mapCacheGet(key) {
684
+ return getMapData(this, key).get(key);
700
685
  }
701
686
  //#endregion
702
- //#region node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/_baseTimes.js
687
+ //#region node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/_mapCacheHas.js
703
688
  /**
704
- * The base implementation of `_.times` without support for iteratee shorthands
705
- * or max array length checks.
689
+ * Checks if a map value for `key` exists.
706
690
  *
707
691
  * @private
708
- * @param {number} n The number of times to invoke `iteratee`.
709
- * @param {Function} iteratee The function invoked per iteration.
710
- * @returns {Array} Returns the array of results.
692
+ * @name has
693
+ * @memberOf MapCache
694
+ * @param {string} key The key of the entry to check.
695
+ * @returns {boolean} Returns `true` if an entry for `key` exists, else `false`.
711
696
  */
712
- function baseTimes(n, iteratee) {
713
- var index = -1, result = Array(n);
714
- while (++index < n) result[index] = iteratee(index);
715
- return result;
697
+ function mapCacheHas(key) {
698
+ return getMapData(this, key).has(key);
716
699
  }
717
700
  //#endregion
718
- //#region node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/_baseIsArguments.js
719
- /** `Object#toString` result references. */
720
- var argsTag$3 = "[object Arguments]";
701
+ //#region node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/_mapCacheSet.js
721
702
  /**
722
- * The base implementation of `_.isArguments`.
703
+ * Sets the map `key` to `value`.
723
704
  *
724
705
  * @private
725
- * @param {*} value The value to check.
726
- * @returns {boolean} Returns `true` if `value` is an `arguments` object,
706
+ * @name set
707
+ * @memberOf MapCache
708
+ * @param {string} key The key of the value to set.
709
+ * @param {*} value The value to set.
710
+ * @returns {Object} Returns the map cache instance.
727
711
  */
728
- function baseIsArguments(value) {
712
+ function mapCacheSet(key, value) {
713
+ var data = getMapData(this, key), size = data.size;
714
+ data.set(key, value);
715
+ this.size += data.size == size ? 0 : 1;
716
+ return this;
717
+ }
718
+ //#endregion
719
+ //#region node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/_MapCache.js
720
+ /**
721
+ * Creates a map cache object to store key-value pairs.
722
+ *
723
+ * @private
724
+ * @constructor
725
+ * @param {Array} [entries] The key-value pairs to cache.
726
+ */
727
+ function MapCache(entries) {
728
+ var index = -1, length = entries == null ? 0 : entries.length;
729
+ this.clear();
730
+ while (++index < length) {
731
+ var entry = entries[index];
732
+ this.set(entry[0], entry[1]);
733
+ }
734
+ }
735
+ MapCache.prototype.clear = mapCacheClear;
736
+ MapCache.prototype["delete"] = mapCacheDelete;
737
+ MapCache.prototype.get = mapCacheGet;
738
+ MapCache.prototype.has = mapCacheHas;
739
+ MapCache.prototype.set = mapCacheSet;
740
+ //#endregion
741
+ //#region node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/_stackSet.js
742
+ /** Used as the size to enable large array optimizations. */
743
+ var LARGE_ARRAY_SIZE = 200;
744
+ /**
745
+ * Sets the stack `key` to `value`.
746
+ *
747
+ * @private
748
+ * @name set
749
+ * @memberOf Stack
750
+ * @param {string} key The key of the value to set.
751
+ * @param {*} value The value to set.
752
+ * @returns {Object} Returns the stack cache instance.
753
+ */
754
+ function stackSet(key, value) {
755
+ var data = this.__data__;
756
+ if (data instanceof ListCache) {
757
+ var pairs = data.__data__;
758
+ if (!Map$1 || pairs.length < LARGE_ARRAY_SIZE - 1) {
759
+ pairs.push([key, value]);
760
+ this.size = ++data.size;
761
+ return this;
762
+ }
763
+ data = this.__data__ = new MapCache(pairs);
764
+ }
765
+ data.set(key, value);
766
+ this.size = data.size;
767
+ return this;
768
+ }
769
+ //#endregion
770
+ //#region node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/_Stack.js
771
+ /**
772
+ * Creates a stack cache object to store key-value pairs.
773
+ *
774
+ * @private
775
+ * @constructor
776
+ * @param {Array} [entries] The key-value pairs to cache.
777
+ */
778
+ function Stack(entries) {
779
+ var data = this.__data__ = new ListCache(entries);
780
+ this.size = data.size;
781
+ }
782
+ Stack.prototype.clear = stackClear;
783
+ Stack.prototype["delete"] = stackDelete;
784
+ Stack.prototype.get = stackGet;
785
+ Stack.prototype.has = stackHas;
786
+ Stack.prototype.set = stackSet;
787
+ //#endregion
788
+ //#region node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/_arrayEach.js
789
+ /**
790
+ * A specialized version of `_.forEach` for arrays without support for
791
+ * iteratee shorthands.
792
+ *
793
+ * @private
794
+ * @param {Array} [array] The array to iterate over.
795
+ * @param {Function} iteratee The function invoked per iteration.
796
+ * @returns {Array} Returns `array`.
797
+ */
798
+ function arrayEach(array, iteratee) {
799
+ var index = -1, length = array == null ? 0 : array.length;
800
+ while (++index < length) if (iteratee(array[index], index, array) === false) break;
801
+ return array;
802
+ }
803
+ //#endregion
804
+ //#region node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/_defineProperty.js
805
+ var defineProperty = function() {
806
+ try {
807
+ var func = getNative(Object, "defineProperty");
808
+ func({}, "", {});
809
+ return func;
810
+ } catch (e) {}
811
+ }();
812
+ //#endregion
813
+ //#region node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/_baseAssignValue.js
814
+ /**
815
+ * The base implementation of `assignValue` and `assignMergeValue` without
816
+ * value checks.
817
+ *
818
+ * @private
819
+ * @param {Object} object The object to modify.
820
+ * @param {string} key The key of the property to assign.
821
+ * @param {*} value The value to assign.
822
+ */
823
+ function baseAssignValue(object, key, value) {
824
+ if (key == "__proto__" && defineProperty) defineProperty(object, key, {
825
+ "configurable": true,
826
+ "enumerable": true,
827
+ "value": value,
828
+ "writable": true
829
+ });
830
+ else object[key] = value;
831
+ }
832
+ //#endregion
833
+ //#region node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/_assignValue.js
834
+ /** Used to check objects for own properties. */
835
+ var hasOwnProperty$8 = Object.prototype.hasOwnProperty;
836
+ /**
837
+ * Assigns `value` to `key` of `object` if the existing value is not equivalent
838
+ * using [`SameValueZero`](http://ecma-international.org/ecma-262/7.0/#sec-samevaluezero)
839
+ * for equality comparisons.
840
+ *
841
+ * @private
842
+ * @param {Object} object The object to modify.
843
+ * @param {string} key The key of the property to assign.
844
+ * @param {*} value The value to assign.
845
+ */
846
+ function assignValue(object, key, value) {
847
+ var objValue = object[key];
848
+ if (!(hasOwnProperty$8.call(object, key) && eq(objValue, value)) || value === void 0 && !(key in object)) baseAssignValue(object, key, value);
849
+ }
850
+ //#endregion
851
+ //#region node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/_copyObject.js
852
+ /**
853
+ * Copies properties of `source` to `object`.
854
+ *
855
+ * @private
856
+ * @param {Object} source The object to copy properties from.
857
+ * @param {Array} props The property identifiers to copy.
858
+ * @param {Object} [object={}] The object to copy properties to.
859
+ * @param {Function} [customizer] The function to customize copied values.
860
+ * @returns {Object} Returns `object`.
861
+ */
862
+ function copyObject(source, props, object, customizer) {
863
+ var isNew = !object;
864
+ object || (object = {});
865
+ var index = -1, length = props.length;
866
+ while (++index < length) {
867
+ var key = props[index];
868
+ var newValue = customizer ? customizer(object[key], source[key], key, object, source) : void 0;
869
+ if (newValue === void 0) newValue = source[key];
870
+ if (isNew) baseAssignValue(object, key, newValue);
871
+ else assignValue(object, key, newValue);
872
+ }
873
+ return object;
874
+ }
875
+ //#endregion
876
+ //#region node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/_baseTimes.js
877
+ /**
878
+ * The base implementation of `_.times` without support for iteratee shorthands
879
+ * or max array length checks.
880
+ *
881
+ * @private
882
+ * @param {number} n The number of times to invoke `iteratee`.
883
+ * @param {Function} iteratee The function invoked per iteration.
884
+ * @returns {Array} Returns the array of results.
885
+ */
886
+ function baseTimes(n, iteratee) {
887
+ var index = -1, result = Array(n);
888
+ while (++index < n) result[index] = iteratee(index);
889
+ return result;
890
+ }
891
+ //#endregion
892
+ //#region node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/isObjectLike.js
893
+ /**
894
+ * Checks if `value` is object-like. A value is object-like if it's not `null`
895
+ * and has a `typeof` result of "object".
896
+ *
897
+ * @static
898
+ * @memberOf _
899
+ * @since 4.0.0
900
+ * @category Lang
901
+ * @param {*} value The value to check.
902
+ * @returns {boolean} Returns `true` if `value` is object-like, else `false`.
903
+ * @example
904
+ *
905
+ * _.isObjectLike({});
906
+ * // => true
907
+ *
908
+ * _.isObjectLike([1, 2, 3]);
909
+ * // => true
910
+ *
911
+ * _.isObjectLike(_.noop);
912
+ * // => false
913
+ *
914
+ * _.isObjectLike(null);
915
+ * // => false
916
+ */
917
+ function isObjectLike(value) {
918
+ return value != null && typeof value == "object";
919
+ }
920
+ //#endregion
921
+ //#region node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/_baseIsArguments.js
922
+ /** `Object#toString` result references. */
923
+ var argsTag$3 = "[object Arguments]";
924
+ /**
925
+ * The base implementation of `_.isArguments`.
926
+ *
927
+ * @private
928
+ * @param {*} value The value to check.
929
+ * @returns {boolean} Returns `true` if `value` is an `arguments` object,
930
+ */
931
+ function baseIsArguments(value) {
729
932
  return isObjectLike(value) && baseGetTag(value) == argsTag$3;
730
933
  }
731
934
  //#endregion
732
935
  //#region node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/isArguments.js
733
936
  /** Used for built-in method references. */
734
- var objectProto = Object.prototype;
937
+ var objectProto$1 = Object.prototype;
735
938
  /** Used to check objects for own properties. */
736
- var hasOwnProperty$9 = objectProto.hasOwnProperty;
939
+ var hasOwnProperty$7 = objectProto$1.hasOwnProperty;
737
940
  /** Built-in value references. */
738
- var propertyIsEnumerable$1 = objectProto.propertyIsEnumerable;
941
+ var propertyIsEnumerable$1 = objectProto$1.propertyIsEnumerable;
739
942
  /**
740
943
  * Checks if `value` is likely an `arguments` object.
741
944
  *
@@ -757,9 +960,35 @@
757
960
  var isArguments = baseIsArguments(function() {
758
961
  return arguments;
759
962
  }()) ? baseIsArguments : function(value) {
760
- return isObjectLike(value) && hasOwnProperty$9.call(value, "callee") && !propertyIsEnumerable$1.call(value, "callee");
963
+ return isObjectLike(value) && hasOwnProperty$7.call(value, "callee") && !propertyIsEnumerable$1.call(value, "callee");
761
964
  };
762
965
  //#endregion
966
+ //#region node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/isArray.js
967
+ /**
968
+ * Checks if `value` is classified as an `Array` object.
969
+ *
970
+ * @static
971
+ * @memberOf _
972
+ * @since 0.1.0
973
+ * @category Lang
974
+ * @param {*} value The value to check.
975
+ * @returns {boolean} Returns `true` if `value` is an array, else `false`.
976
+ * @example
977
+ *
978
+ * _.isArray([1, 2, 3]);
979
+ * // => true
980
+ *
981
+ * _.isArray(document.body.children);
982
+ * // => false
983
+ *
984
+ * _.isArray('abc');
985
+ * // => false
986
+ *
987
+ * _.isArray(_.noop);
988
+ * // => false
989
+ */
990
+ var isArray = Array.isArray;
991
+ //#endregion
763
992
  //#region node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/stubFalse.js
764
993
  /**
765
994
  * This method returns `false`.
@@ -804,15 +1033,67 @@
804
1033
  */
805
1034
  var isBuffer = (Buffer$2 ? Buffer$2.isBuffer : void 0) || stubFalse;
806
1035
  //#endregion
807
- //#region node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/_baseIsTypedArray.js
808
- /** `Object#toString` result references. */
809
- var argsTag$2 = "[object Arguments]", arrayTag$2 = "[object Array]", boolTag$3 = "[object Boolean]", dateTag$3 = "[object Date]", errorTag$2 = "[object Error]", funcTag$1 = "[object Function]", mapTag$6 = "[object Map]", numberTag$3 = "[object Number]", objectTag$3 = "[object Object]", regexpTag$3 = "[object RegExp]", setTag$6 = "[object Set]", stringTag$3 = "[object String]", weakMapTag$2 = "[object WeakMap]";
810
- var arrayBufferTag$3 = "[object ArrayBuffer]", dataViewTag$4 = "[object DataView]", float32Tag$2 = "[object Float32Array]", float64Tag$2 = "[object Float64Array]", int8Tag$2 = "[object Int8Array]", int16Tag$2 = "[object Int16Array]", int32Tag$2 = "[object Int32Array]", uint8Tag$2 = "[object Uint8Array]", uint8ClampedTag$2 = "[object Uint8ClampedArray]", uint16Tag$2 = "[object Uint16Array]", uint32Tag$2 = "[object Uint32Array]";
811
- /** Used to identify `toStringTag` values of typed arrays. */
812
- var typedArrayTags = {};
813
- typedArrayTags[float32Tag$2] = typedArrayTags[float64Tag$2] = typedArrayTags[int8Tag$2] = typedArrayTags[int16Tag$2] = typedArrayTags[int32Tag$2] = typedArrayTags[uint8Tag$2] = typedArrayTags[uint8ClampedTag$2] = typedArrayTags[uint16Tag$2] = typedArrayTags[uint32Tag$2] = true;
814
- typedArrayTags[argsTag$2] = typedArrayTags[arrayTag$2] = typedArrayTags[arrayBufferTag$3] = typedArrayTags[boolTag$3] = typedArrayTags[dataViewTag$4] = typedArrayTags[dateTag$3] = typedArrayTags[errorTag$2] = typedArrayTags[funcTag$1] = typedArrayTags[mapTag$6] = typedArrayTags[numberTag$3] = typedArrayTags[objectTag$3] = typedArrayTags[regexpTag$3] = typedArrayTags[setTag$6] = typedArrayTags[stringTag$3] = typedArrayTags[weakMapTag$2] = false;
815
- /**
1036
+ //#region node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/_isIndex.js
1037
+ /** Used as references for various `Number` constants. */
1038
+ var MAX_SAFE_INTEGER$1 = 9007199254740991;
1039
+ /** Used to detect unsigned integer values. */
1040
+ var reIsUint = /^(?:0|[1-9]\d*)$/;
1041
+ /**
1042
+ * Checks if `value` is a valid array-like index.
1043
+ *
1044
+ * @private
1045
+ * @param {*} value The value to check.
1046
+ * @param {number} [length=MAX_SAFE_INTEGER] The upper bounds of a valid index.
1047
+ * @returns {boolean} Returns `true` if `value` is a valid index, else `false`.
1048
+ */
1049
+ function isIndex(value, length) {
1050
+ var type = typeof value;
1051
+ length = length == null ? MAX_SAFE_INTEGER$1 : length;
1052
+ return !!length && (type == "number" || type != "symbol" && reIsUint.test(value)) && value > -1 && value % 1 == 0 && value < length;
1053
+ }
1054
+ //#endregion
1055
+ //#region node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/isLength.js
1056
+ /** Used as references for various `Number` constants. */
1057
+ var MAX_SAFE_INTEGER = 9007199254740991;
1058
+ /**
1059
+ * Checks if `value` is a valid array-like length.
1060
+ *
1061
+ * **Note:** This method is loosely based on
1062
+ * [`ToLength`](http://ecma-international.org/ecma-262/7.0/#sec-tolength).
1063
+ *
1064
+ * @static
1065
+ * @memberOf _
1066
+ * @since 4.0.0
1067
+ * @category Lang
1068
+ * @param {*} value The value to check.
1069
+ * @returns {boolean} Returns `true` if `value` is a valid length, else `false`.
1070
+ * @example
1071
+ *
1072
+ * _.isLength(3);
1073
+ * // => true
1074
+ *
1075
+ * _.isLength(Number.MIN_VALUE);
1076
+ * // => false
1077
+ *
1078
+ * _.isLength(Infinity);
1079
+ * // => false
1080
+ *
1081
+ * _.isLength('3');
1082
+ * // => false
1083
+ */
1084
+ function isLength(value) {
1085
+ return typeof value == "number" && value > -1 && value % 1 == 0 && value <= MAX_SAFE_INTEGER;
1086
+ }
1087
+ //#endregion
1088
+ //#region node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/_baseIsTypedArray.js
1089
+ /** `Object#toString` result references. */
1090
+ var argsTag$2 = "[object Arguments]", arrayTag$2 = "[object Array]", boolTag$3 = "[object Boolean]", dateTag$3 = "[object Date]", errorTag$2 = "[object Error]", funcTag$1 = "[object Function]", mapTag$6 = "[object Map]", numberTag$3 = "[object Number]", objectTag$3 = "[object Object]", regexpTag$3 = "[object RegExp]", setTag$6 = "[object Set]", stringTag$3 = "[object String]", weakMapTag$2 = "[object WeakMap]";
1091
+ var arrayBufferTag$3 = "[object ArrayBuffer]", dataViewTag$4 = "[object DataView]", float32Tag$2 = "[object Float32Array]", float64Tag$2 = "[object Float64Array]", int8Tag$2 = "[object Int8Array]", int16Tag$2 = "[object Int16Array]", int32Tag$2 = "[object Int32Array]", uint8Tag$2 = "[object Uint8Array]", uint8ClampedTag$2 = "[object Uint8ClampedArray]", uint16Tag$2 = "[object Uint16Array]", uint32Tag$2 = "[object Uint32Array]";
1092
+ /** Used to identify `toStringTag` values of typed arrays. */
1093
+ var typedArrayTags = {};
1094
+ typedArrayTags[float32Tag$2] = typedArrayTags[float64Tag$2] = typedArrayTags[int8Tag$2] = typedArrayTags[int16Tag$2] = typedArrayTags[int32Tag$2] = typedArrayTags[uint8Tag$2] = typedArrayTags[uint8ClampedTag$2] = typedArrayTags[uint16Tag$2] = typedArrayTags[uint32Tag$2] = true;
1095
+ typedArrayTags[argsTag$2] = typedArrayTags[arrayTag$2] = typedArrayTags[arrayBufferTag$3] = typedArrayTags[boolTag$3] = typedArrayTags[dataViewTag$4] = typedArrayTags[dateTag$3] = typedArrayTags[errorTag$2] = typedArrayTags[funcTag$1] = typedArrayTags[mapTag$6] = typedArrayTags[numberTag$3] = typedArrayTags[objectTag$3] = typedArrayTags[regexpTag$3] = typedArrayTags[setTag$6] = typedArrayTags[stringTag$3] = typedArrayTags[weakMapTag$2] = false;
1096
+ /**
816
1097
  * The base implementation of `_.isTypedArray` without Node.js optimizations.
817
1098
  *
818
1099
  * @private
@@ -876,7 +1157,7 @@
876
1157
  //#endregion
877
1158
  //#region node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/_arrayLikeKeys.js
878
1159
  /** Used to check objects for own properties. */
879
- var hasOwnProperty$8 = Object.prototype.hasOwnProperty;
1160
+ var hasOwnProperty$6 = Object.prototype.hasOwnProperty;
880
1161
  /**
881
1162
  * Creates an array of the enumerable property names of the array-like `value`.
882
1163
  *
@@ -887,10 +1168,25 @@
887
1168
  */
888
1169
  function arrayLikeKeys(value, inherited) {
889
1170
  var isArr = isArray(value), isArg = !isArr && isArguments(value), isBuff = !isArr && !isArg && isBuffer(value), isType = !isArr && !isArg && !isBuff && isTypedArray(value), skipIndexes = isArr || isArg || isBuff || isType, result = skipIndexes ? baseTimes(value.length, String) : [], length = result.length;
890
- for (var key in value) if ((inherited || hasOwnProperty$8.call(value, key)) && !(skipIndexes && (key == "length" || isBuff && (key == "offset" || key == "parent") || isType && (key == "buffer" || key == "byteLength" || key == "byteOffset") || isIndex(key, length)))) result.push(key);
1171
+ for (var key in value) if ((inherited || hasOwnProperty$6.call(value, key)) && !(skipIndexes && (key == "length" || isBuff && (key == "offset" || key == "parent") || isType && (key == "buffer" || key == "byteLength" || key == "byteOffset") || isIndex(key, length)))) result.push(key);
891
1172
  return result;
892
1173
  }
893
1174
  //#endregion
1175
+ //#region node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/_isPrototype.js
1176
+ /** Used for built-in method references. */
1177
+ var objectProto = Object.prototype;
1178
+ /**
1179
+ * Checks if `value` is likely a prototype object.
1180
+ *
1181
+ * @private
1182
+ * @param {*} value The value to check.
1183
+ * @returns {boolean} Returns `true` if `value` is a prototype, else `false`.
1184
+ */
1185
+ function isPrototype(value) {
1186
+ var Ctor = value && value.constructor;
1187
+ return value === (typeof Ctor == "function" && Ctor.prototype || objectProto);
1188
+ }
1189
+ //#endregion
894
1190
  //#region node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/_overArg.js
895
1191
  /**
896
1192
  * Creates a unary function that invokes `func` with its argument transformed.
@@ -911,7 +1207,7 @@
911
1207
  //#endregion
912
1208
  //#region node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/_baseKeys.js
913
1209
  /** Used to check objects for own properties. */
914
- var hasOwnProperty$7 = Object.prototype.hasOwnProperty;
1210
+ var hasOwnProperty$5 = Object.prototype.hasOwnProperty;
915
1211
  /**
916
1212
  * The base implementation of `_.keys` which doesn't treat sparse arrays as dense.
917
1213
  *
@@ -922,10 +1218,40 @@
922
1218
  function baseKeys(object) {
923
1219
  if (!isPrototype(object)) return nativeKeys(object);
924
1220
  var result = [];
925
- for (var key in Object(object)) if (hasOwnProperty$7.call(object, key) && key != "constructor") result.push(key);
1221
+ for (var key in Object(object)) if (hasOwnProperty$5.call(object, key) && key != "constructor") result.push(key);
926
1222
  return result;
927
1223
  }
928
1224
  //#endregion
1225
+ //#region node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/isArrayLike.js
1226
+ /**
1227
+ * Checks if `value` is array-like. A value is considered array-like if it's
1228
+ * not a function and has a `value.length` that's an integer greater than or
1229
+ * equal to `0` and less than or equal to `Number.MAX_SAFE_INTEGER`.
1230
+ *
1231
+ * @static
1232
+ * @memberOf _
1233
+ * @since 4.0.0
1234
+ * @category Lang
1235
+ * @param {*} value The value to check.
1236
+ * @returns {boolean} Returns `true` if `value` is array-like, else `false`.
1237
+ * @example
1238
+ *
1239
+ * _.isArrayLike([1, 2, 3]);
1240
+ * // => true
1241
+ *
1242
+ * _.isArrayLike(document.body.children);
1243
+ * // => true
1244
+ *
1245
+ * _.isArrayLike('abc');
1246
+ * // => true
1247
+ *
1248
+ * _.isArrayLike(_.noop);
1249
+ * // => false
1250
+ */
1251
+ function isArrayLike(value) {
1252
+ return value != null && isLength(value.length) && !isFunction(value);
1253
+ }
1254
+ //#endregion
929
1255
  //#region node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/keys.js
930
1256
  /**
931
1257
  * Creates an array of the own enumerable property names of `object`.
@@ -959,6 +1285,20 @@
959
1285
  return isArrayLike(object) ? arrayLikeKeys(object) : baseKeys(object);
960
1286
  }
961
1287
  //#endregion
1288
+ //#region node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/_baseAssign.js
1289
+ /**
1290
+ * The base implementation of `_.assign` without support for multiple sources
1291
+ * or `customizer` functions.
1292
+ *
1293
+ * @private
1294
+ * @param {Object} object The destination object.
1295
+ * @param {Object} source The source object.
1296
+ * @returns {Object} Returns `object`.
1297
+ */
1298
+ function baseAssign(object, source) {
1299
+ return object && copyObject(source, keys(source), object);
1300
+ }
1301
+ //#endregion
962
1302
  //#region node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/_nativeKeysIn.js
963
1303
  /**
964
1304
  * This function is like
@@ -977,7 +1317,7 @@
977
1317
  //#endregion
978
1318
  //#region node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/_baseKeysIn.js
979
1319
  /** Used to check objects for own properties. */
980
- var hasOwnProperty$6 = Object.prototype.hasOwnProperty;
1320
+ var hasOwnProperty$4 = Object.prototype.hasOwnProperty;
981
1321
  /**
982
1322
  * The base implementation of `_.keysIn` which doesn't treat sparse arrays as dense.
983
1323
  *
@@ -988,7 +1328,7 @@
988
1328
  function baseKeysIn(object) {
989
1329
  if (!isObject(object)) return nativeKeysIn(object);
990
1330
  var isProto = isPrototype(object), result = [];
991
- for (var key in object) if (!(key == "constructor" && (isProto || !hasOwnProperty$6.call(object, key)))) result.push(key);
1331
+ for (var key in object) if (!(key == "constructor" && (isProto || !hasOwnProperty$4.call(object, key)))) result.push(key);
992
1332
  return result;
993
1333
  }
994
1334
  //#endregion
@@ -1020,1035 +1360,892 @@
1020
1360
  return isArrayLike(object) ? arrayLikeKeys(object, true) : baseKeysIn(object);
1021
1361
  }
1022
1362
  //#endregion
1023
- //#region node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/_nativeCreate.js
1024
- var nativeCreate = getNative(Object, "create");
1025
- //#endregion
1026
- //#region node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/_hashClear.js
1363
+ //#region node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/_baseAssignIn.js
1027
1364
  /**
1028
- * Removes all key-value entries from the hash.
1365
+ * The base implementation of `_.assignIn` without support for multiple sources
1366
+ * or `customizer` functions.
1029
1367
  *
1030
1368
  * @private
1031
- * @name clear
1032
- * @memberOf Hash
1369
+ * @param {Object} object The destination object.
1370
+ * @param {Object} source The source object.
1371
+ * @returns {Object} Returns `object`.
1033
1372
  */
1034
- function hashClear() {
1035
- this.__data__ = nativeCreate ? nativeCreate(null) : {};
1036
- this.size = 0;
1373
+ function baseAssignIn(object, source) {
1374
+ return object && copyObject(source, keysIn(source), object);
1037
1375
  }
1038
1376
  //#endregion
1039
- //#region node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/_hashDelete.js
1377
+ //#region node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/_cloneBuffer.js
1378
+ /** Detect free variable `exports`. */
1379
+ var freeExports = typeof exports == "object" && exports && !exports.nodeType && exports;
1380
+ /** Detect free variable `module`. */
1381
+ var freeModule = freeExports && typeof module == "object" && module && !module.nodeType && module;
1382
+ /** Built-in value references. */
1383
+ var Buffer$1 = freeModule && freeModule.exports === freeExports ? root.Buffer : void 0, allocUnsafe = Buffer$1 ? Buffer$1.allocUnsafe : void 0;
1040
1384
  /**
1041
- * Removes `key` and its value from the hash.
1385
+ * Creates a clone of `buffer`.
1042
1386
  *
1043
1387
  * @private
1044
- * @name delete
1045
- * @memberOf Hash
1046
- * @param {Object} hash The hash to modify.
1047
- * @param {string} key The key of the value to remove.
1048
- * @returns {boolean} Returns `true` if the entry was removed, else `false`.
1388
+ * @param {Buffer} buffer The buffer to clone.
1389
+ * @param {boolean} [isDeep] Specify a deep clone.
1390
+ * @returns {Buffer} Returns the cloned buffer.
1049
1391
  */
1050
- function hashDelete(key) {
1051
- var result = this.has(key) && delete this.__data__[key];
1052
- this.size -= result ? 1 : 0;
1392
+ function cloneBuffer(buffer, isDeep) {
1393
+ if (isDeep) return buffer.slice();
1394
+ var length = buffer.length, result = allocUnsafe ? allocUnsafe(length) : new buffer.constructor(length);
1395
+ buffer.copy(result);
1053
1396
  return result;
1054
1397
  }
1055
1398
  //#endregion
1056
- //#region node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/_hashGet.js
1057
- /** Used to stand-in for `undefined` hash values. */
1058
- var HASH_UNDEFINED$2 = "__lodash_hash_undefined__";
1059
- /** Used to check objects for own properties. */
1060
- var hasOwnProperty$5 = Object.prototype.hasOwnProperty;
1399
+ //#region node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/_copyArray.js
1061
1400
  /**
1062
- * Gets the hash value for `key`.
1401
+ * Copies the values of `source` to `array`.
1063
1402
  *
1064
1403
  * @private
1065
- * @name get
1066
- * @memberOf Hash
1067
- * @param {string} key The key of the value to get.
1068
- * @returns {*} Returns the entry value.
1404
+ * @param {Array} source The array to copy values from.
1405
+ * @param {Array} [array=[]] The array to copy values to.
1406
+ * @returns {Array} Returns `array`.
1069
1407
  */
1070
- function hashGet(key) {
1071
- var data = this.__data__;
1072
- if (nativeCreate) {
1073
- var result = data[key];
1074
- return result === HASH_UNDEFINED$2 ? void 0 : result;
1075
- }
1076
- return hasOwnProperty$5.call(data, key) ? data[key] : void 0;
1408
+ function copyArray(source, array) {
1409
+ var index = -1, length = source.length;
1410
+ array || (array = Array(length));
1411
+ while (++index < length) array[index] = source[index];
1412
+ return array;
1077
1413
  }
1078
1414
  //#endregion
1079
- //#region node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/_hashHas.js
1080
- /** Used to check objects for own properties. */
1081
- var hasOwnProperty$4 = Object.prototype.hasOwnProperty;
1415
+ //#region node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/_arrayFilter.js
1082
1416
  /**
1083
- * Checks if a hash value for `key` exists.
1417
+ * A specialized version of `_.filter` for arrays without support for
1418
+ * iteratee shorthands.
1084
1419
  *
1085
1420
  * @private
1086
- * @name has
1087
- * @memberOf Hash
1088
- * @param {string} key The key of the entry to check.
1089
- * @returns {boolean} Returns `true` if an entry for `key` exists, else `false`.
1421
+ * @param {Array} [array] The array to iterate over.
1422
+ * @param {Function} predicate The function invoked per iteration.
1423
+ * @returns {Array} Returns the new filtered array.
1090
1424
  */
1091
- function hashHas(key) {
1092
- var data = this.__data__;
1093
- return nativeCreate ? data[key] !== void 0 : hasOwnProperty$4.call(data, key);
1425
+ function arrayFilter(array, predicate) {
1426
+ var index = -1, length = array == null ? 0 : array.length, resIndex = 0, result = [];
1427
+ while (++index < length) {
1428
+ var value = array[index];
1429
+ if (predicate(value, index, array)) result[resIndex++] = value;
1430
+ }
1431
+ return result;
1094
1432
  }
1095
1433
  //#endregion
1096
- //#region node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/_hashSet.js
1097
- /** Used to stand-in for `undefined` hash values. */
1098
- var HASH_UNDEFINED$1 = "__lodash_hash_undefined__";
1434
+ //#region node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/stubArray.js
1099
1435
  /**
1100
- * Sets the hash `key` to `value`.
1436
+ * This method returns a new empty array.
1101
1437
  *
1102
- * @private
1103
- * @name set
1104
- * @memberOf Hash
1105
- * @param {string} key The key of the value to set.
1106
- * @param {*} value The value to set.
1107
- * @returns {Object} Returns the hash instance.
1438
+ * @static
1439
+ * @memberOf _
1440
+ * @since 4.13.0
1441
+ * @category Util
1442
+ * @returns {Array} Returns the new empty array.
1443
+ * @example
1444
+ *
1445
+ * var arrays = _.times(2, _.stubArray);
1446
+ *
1447
+ * console.log(arrays);
1448
+ * // => [[], []]
1449
+ *
1450
+ * console.log(arrays[0] === arrays[1]);
1451
+ * // => false
1108
1452
  */
1109
- function hashSet(key, value) {
1110
- var data = this.__data__;
1111
- this.size += this.has(key) ? 0 : 1;
1112
- data[key] = nativeCreate && value === void 0 ? HASH_UNDEFINED$1 : value;
1113
- return this;
1453
+ function stubArray() {
1454
+ return [];
1114
1455
  }
1115
1456
  //#endregion
1116
- //#region node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/_Hash.js
1457
+ //#region node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/_getSymbols.js
1458
+ /** Built-in value references. */
1459
+ var propertyIsEnumerable = Object.prototype.propertyIsEnumerable;
1460
+ var nativeGetSymbols = Object.getOwnPropertySymbols;
1117
1461
  /**
1118
- * Creates a hash object.
1462
+ * Creates an array of the own enumerable symbols of `object`.
1119
1463
  *
1120
1464
  * @private
1121
- * @constructor
1122
- * @param {Array} [entries] The key-value pairs to cache.
1465
+ * @param {Object} object The object to query.
1466
+ * @returns {Array} Returns the array of symbols.
1123
1467
  */
1124
- function Hash(entries) {
1125
- var index = -1, length = entries == null ? 0 : entries.length;
1126
- this.clear();
1127
- while (++index < length) {
1128
- var entry = entries[index];
1129
- this.set(entry[0], entry[1]);
1130
- }
1131
- }
1132
- Hash.prototype.clear = hashClear;
1133
- Hash.prototype["delete"] = hashDelete;
1134
- Hash.prototype.get = hashGet;
1135
- Hash.prototype.has = hashHas;
1136
- Hash.prototype.set = hashSet;
1468
+ var getSymbols = !nativeGetSymbols ? stubArray : function(object) {
1469
+ if (object == null) return [];
1470
+ object = Object(object);
1471
+ return arrayFilter(nativeGetSymbols(object), function(symbol) {
1472
+ return propertyIsEnumerable.call(object, symbol);
1473
+ });
1474
+ };
1137
1475
  //#endregion
1138
- //#region node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/_listCacheClear.js
1476
+ //#region node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/_copySymbols.js
1139
1477
  /**
1140
- * Removes all key-value entries from the list cache.
1478
+ * Copies own symbols of `source` to `object`.
1141
1479
  *
1142
1480
  * @private
1143
- * @name clear
1144
- * @memberOf ListCache
1481
+ * @param {Object} source The object to copy symbols from.
1482
+ * @param {Object} [object={}] The object to copy symbols to.
1483
+ * @returns {Object} Returns `object`.
1145
1484
  */
1146
- function listCacheClear() {
1147
- this.__data__ = [];
1148
- this.size = 0;
1485
+ function copySymbols(source, object) {
1486
+ return copyObject(source, getSymbols(source), object);
1149
1487
  }
1150
1488
  //#endregion
1151
- //#region node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/_assocIndexOf.js
1489
+ //#region node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/_arrayPush.js
1152
1490
  /**
1153
- * Gets the index at which the `key` is found in `array` of key-value pairs.
1491
+ * Appends the elements of `values` to `array`.
1154
1492
  *
1155
1493
  * @private
1156
- * @param {Array} array The array to inspect.
1157
- * @param {*} key The key to search for.
1158
- * @returns {number} Returns the index of the matched value, else `-1`.
1494
+ * @param {Array} array The array to modify.
1495
+ * @param {Array} values The values to append.
1496
+ * @returns {Array} Returns `array`.
1159
1497
  */
1160
- function assocIndexOf(array, key) {
1161
- var length = array.length;
1162
- while (length--) if (eq(array[length][0], key)) return length;
1163
- return -1;
1498
+ function arrayPush(array, values) {
1499
+ var index = -1, length = values.length, offset = array.length;
1500
+ while (++index < length) array[offset + index] = values[index];
1501
+ return array;
1164
1502
  }
1165
1503
  //#endregion
1166
- //#region node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/_listCacheDelete.js
1504
+ //#region node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/_getPrototype.js
1167
1505
  /** Built-in value references. */
1168
- var splice = Array.prototype.splice;
1506
+ var getPrototype = overArg(Object.getPrototypeOf, Object);
1507
+ //#endregion
1508
+ //#region node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/_getSymbolsIn.js
1169
1509
  /**
1170
- * Removes `key` and its value from the list cache.
1510
+ * Creates an array of the own and inherited enumerable symbols of `object`.
1171
1511
  *
1172
1512
  * @private
1173
- * @name delete
1174
- * @memberOf ListCache
1175
- * @param {string} key The key of the value to remove.
1176
- * @returns {boolean} Returns `true` if the entry was removed, else `false`.
1513
+ * @param {Object} object The object to query.
1514
+ * @returns {Array} Returns the array of symbols.
1177
1515
  */
1178
- function listCacheDelete(key) {
1179
- var data = this.__data__, index = assocIndexOf(data, key);
1180
- if (index < 0) return false;
1181
- if (index == data.length - 1) data.pop();
1182
- else splice.call(data, index, 1);
1183
- --this.size;
1184
- return true;
1185
- }
1516
+ var getSymbolsIn = !Object.getOwnPropertySymbols ? stubArray : function(object) {
1517
+ var result = [];
1518
+ while (object) {
1519
+ arrayPush(result, getSymbols(object));
1520
+ object = getPrototype(object);
1521
+ }
1522
+ return result;
1523
+ };
1186
1524
  //#endregion
1187
- //#region node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/_listCacheGet.js
1525
+ //#region node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/_copySymbolsIn.js
1188
1526
  /**
1189
- * Gets the list cache value for `key`.
1527
+ * Copies own and inherited symbols of `source` to `object`.
1190
1528
  *
1191
1529
  * @private
1192
- * @name get
1193
- * @memberOf ListCache
1194
- * @param {string} key The key of the value to get.
1195
- * @returns {*} Returns the entry value.
1530
+ * @param {Object} source The object to copy symbols from.
1531
+ * @param {Object} [object={}] The object to copy symbols to.
1532
+ * @returns {Object} Returns `object`.
1196
1533
  */
1197
- function listCacheGet(key) {
1198
- var data = this.__data__, index = assocIndexOf(data, key);
1199
- return index < 0 ? void 0 : data[index][1];
1534
+ function copySymbolsIn(source, object) {
1535
+ return copyObject(source, getSymbolsIn(source), object);
1200
1536
  }
1201
1537
  //#endregion
1202
- //#region node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/_listCacheHas.js
1538
+ //#region node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/_baseGetAllKeys.js
1203
1539
  /**
1204
- * Checks if a list cache value for `key` exists.
1540
+ * The base implementation of `getAllKeys` and `getAllKeysIn` which uses
1541
+ * `keysFunc` and `symbolsFunc` to get the enumerable property names and
1542
+ * symbols of `object`.
1205
1543
  *
1206
1544
  * @private
1207
- * @name has
1208
- * @memberOf ListCache
1209
- * @param {string} key The key of the entry to check.
1210
- * @returns {boolean} Returns `true` if an entry for `key` exists, else `false`.
1545
+ * @param {Object} object The object to query.
1546
+ * @param {Function} keysFunc The function to get the keys of `object`.
1547
+ * @param {Function} symbolsFunc The function to get the symbols of `object`.
1548
+ * @returns {Array} Returns the array of property names and symbols.
1211
1549
  */
1212
- function listCacheHas(key) {
1213
- return assocIndexOf(this.__data__, key) > -1;
1550
+ function baseGetAllKeys(object, keysFunc, symbolsFunc) {
1551
+ var result = keysFunc(object);
1552
+ return isArray(object) ? result : arrayPush(result, symbolsFunc(object));
1214
1553
  }
1215
1554
  //#endregion
1216
- //#region node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/_listCacheSet.js
1555
+ //#region node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/_getAllKeys.js
1217
1556
  /**
1218
- * Sets the list cache `key` to `value`.
1557
+ * Creates an array of own enumerable property names and symbols of `object`.
1219
1558
  *
1220
1559
  * @private
1221
- * @name set
1222
- * @memberOf ListCache
1223
- * @param {string} key The key of the value to set.
1224
- * @param {*} value The value to set.
1225
- * @returns {Object} Returns the list cache instance.
1560
+ * @param {Object} object The object to query.
1561
+ * @returns {Array} Returns the array of property names and symbols.
1226
1562
  */
1227
- function listCacheSet(key, value) {
1228
- var data = this.__data__, index = assocIndexOf(data, key);
1229
- if (index < 0) {
1230
- ++this.size;
1231
- data.push([key, value]);
1232
- } else data[index][1] = value;
1233
- return this;
1563
+ function getAllKeys(object) {
1564
+ return baseGetAllKeys(object, keys, getSymbols);
1234
1565
  }
1235
1566
  //#endregion
1236
- //#region node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/_ListCache.js
1567
+ //#region node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/_getAllKeysIn.js
1237
1568
  /**
1238
- * Creates an list cache object.
1569
+ * Creates an array of own and inherited enumerable property names and
1570
+ * symbols of `object`.
1239
1571
  *
1240
1572
  * @private
1241
- * @constructor
1242
- * @param {Array} [entries] The key-value pairs to cache.
1573
+ * @param {Object} object The object to query.
1574
+ * @returns {Array} Returns the array of property names and symbols.
1243
1575
  */
1244
- function ListCache(entries) {
1245
- var index = -1, length = entries == null ? 0 : entries.length;
1246
- this.clear();
1247
- while (++index < length) {
1248
- var entry = entries[index];
1249
- this.set(entry[0], entry[1]);
1250
- }
1576
+ function getAllKeysIn(object) {
1577
+ return baseGetAllKeys(object, keysIn, getSymbolsIn);
1251
1578
  }
1252
- ListCache.prototype.clear = listCacheClear;
1253
- ListCache.prototype["delete"] = listCacheDelete;
1254
- ListCache.prototype.get = listCacheGet;
1255
- ListCache.prototype.has = listCacheHas;
1256
- ListCache.prototype.set = listCacheSet;
1257
1579
  //#endregion
1258
- //#region node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/_Map.js
1259
- var Map$1 = getNative(root, "Map");
1580
+ //#region node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/_DataView.js
1581
+ var DataView = getNative(root, "DataView");
1260
1582
  //#endregion
1261
- //#region node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/_mapCacheClear.js
1583
+ //#region node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/_Promise.js
1584
+ var Promise$1 = getNative(root, "Promise");
1585
+ //#endregion
1586
+ //#region node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/_Set.js
1587
+ var Set$1 = getNative(root, "Set");
1588
+ //#endregion
1589
+ //#region node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/_WeakMap.js
1590
+ var WeakMap = getNative(root, "WeakMap");
1591
+ //#endregion
1592
+ //#region node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/_getTag.js
1593
+ /** `Object#toString` result references. */
1594
+ var mapTag$5 = "[object Map]", objectTag$2 = "[object Object]", promiseTag = "[object Promise]", setTag$5 = "[object Set]", weakMapTag$1 = "[object WeakMap]";
1595
+ var dataViewTag$3 = "[object DataView]";
1596
+ /** Used to detect maps, sets, and weakmaps. */
1597
+ var dataViewCtorString = toSource(DataView), mapCtorString = toSource(Map$1), promiseCtorString = toSource(Promise$1), setCtorString = toSource(Set$1), weakMapCtorString = toSource(WeakMap);
1262
1598
  /**
1263
- * Removes all key-value entries from the map.
1599
+ * Gets the `toStringTag` of `value`.
1264
1600
  *
1265
1601
  * @private
1266
- * @name clear
1267
- * @memberOf MapCache
1602
+ * @param {*} value The value to query.
1603
+ * @returns {string} Returns the `toStringTag`.
1268
1604
  */
1269
- function mapCacheClear() {
1270
- this.size = 0;
1271
- this.__data__ = {
1272
- "hash": new Hash(),
1273
- "map": new (Map$1 || ListCache)(),
1274
- "string": new Hash()
1275
- };
1276
- }
1605
+ var getTag = baseGetTag;
1606
+ if (DataView && getTag(new DataView(/* @__PURE__ */ new ArrayBuffer(1))) != dataViewTag$3 || Map$1 && getTag(new Map$1()) != mapTag$5 || Promise$1 && getTag(Promise$1.resolve()) != promiseTag || Set$1 && getTag(new Set$1()) != setTag$5 || WeakMap && getTag(new WeakMap()) != weakMapTag$1) getTag = function(value) {
1607
+ var result = baseGetTag(value), Ctor = result == objectTag$2 ? value.constructor : void 0, ctorString = Ctor ? toSource(Ctor) : "";
1608
+ if (ctorString) switch (ctorString) {
1609
+ case dataViewCtorString: return dataViewTag$3;
1610
+ case mapCtorString: return mapTag$5;
1611
+ case promiseCtorString: return promiseTag;
1612
+ case setCtorString: return setTag$5;
1613
+ case weakMapCtorString: return weakMapTag$1;
1614
+ }
1615
+ return result;
1616
+ };
1617
+ var _getTag_default = getTag;
1277
1618
  //#endregion
1278
- //#region node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/_isKeyable.js
1619
+ //#region node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/_initCloneArray.js
1620
+ /** Used to check objects for own properties. */
1621
+ var hasOwnProperty$3 = Object.prototype.hasOwnProperty;
1279
1622
  /**
1280
- * Checks if `value` is suitable for use as unique object key.
1623
+ * Initializes an array clone.
1281
1624
  *
1282
1625
  * @private
1283
- * @param {*} value The value to check.
1284
- * @returns {boolean} Returns `true` if `value` is suitable, else `false`.
1626
+ * @param {Array} array The array to clone.
1627
+ * @returns {Array} Returns the initialized clone.
1285
1628
  */
1286
- function isKeyable(value) {
1287
- var type = typeof value;
1288
- return type == "string" || type == "number" || type == "symbol" || type == "boolean" ? value !== "__proto__" : value === null;
1629
+ function initCloneArray(array) {
1630
+ var length = array.length, result = new array.constructor(length);
1631
+ if (length && typeof array[0] == "string" && hasOwnProperty$3.call(array, "index")) {
1632
+ result.index = array.index;
1633
+ result.input = array.input;
1634
+ }
1635
+ return result;
1289
1636
  }
1290
1637
  //#endregion
1291
- //#region node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/_getMapData.js
1638
+ //#region node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/_Uint8Array.js
1639
+ /** Built-in value references. */
1640
+ var Uint8Array$1 = root.Uint8Array;
1641
+ //#endregion
1642
+ //#region node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/_cloneArrayBuffer.js
1292
1643
  /**
1293
- * Gets the data for `map`.
1644
+ * Creates a clone of `arrayBuffer`.
1294
1645
  *
1295
1646
  * @private
1296
- * @param {Object} map The map to query.
1297
- * @param {string} key The reference key.
1298
- * @returns {*} Returns the map data.
1647
+ * @param {ArrayBuffer} arrayBuffer The array buffer to clone.
1648
+ * @returns {ArrayBuffer} Returns the cloned array buffer.
1299
1649
  */
1300
- function getMapData(map, key) {
1301
- var data = map.__data__;
1302
- return isKeyable(key) ? data[typeof key == "string" ? "string" : "hash"] : data.map;
1650
+ function cloneArrayBuffer(arrayBuffer) {
1651
+ var result = new arrayBuffer.constructor(arrayBuffer.byteLength);
1652
+ new Uint8Array$1(result).set(new Uint8Array$1(arrayBuffer));
1653
+ return result;
1303
1654
  }
1304
1655
  //#endregion
1305
- //#region node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/_mapCacheDelete.js
1656
+ //#region node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/_cloneDataView.js
1306
1657
  /**
1307
- * Removes `key` and its value from the map.
1658
+ * Creates a clone of `dataView`.
1308
1659
  *
1309
1660
  * @private
1310
- * @name delete
1311
- * @memberOf MapCache
1312
- * @param {string} key The key of the value to remove.
1313
- * @returns {boolean} Returns `true` if the entry was removed, else `false`.
1661
+ * @param {Object} dataView The data view to clone.
1662
+ * @param {boolean} [isDeep] Specify a deep clone.
1663
+ * @returns {Object} Returns the cloned data view.
1314
1664
  */
1315
- function mapCacheDelete(key) {
1316
- var result = getMapData(this, key)["delete"](key);
1317
- this.size -= result ? 1 : 0;
1318
- return result;
1665
+ function cloneDataView(dataView, isDeep) {
1666
+ var buffer = isDeep ? cloneArrayBuffer(dataView.buffer) : dataView.buffer;
1667
+ return new dataView.constructor(buffer, dataView.byteOffset, dataView.byteLength);
1319
1668
  }
1320
1669
  //#endregion
1321
- //#region node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/_mapCacheGet.js
1670
+ //#region node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/_cloneRegExp.js
1671
+ /** Used to match `RegExp` flags from their coerced string values. */
1672
+ var reFlags = /\w*$/;
1322
1673
  /**
1323
- * Gets the map value for `key`.
1674
+ * Creates a clone of `regexp`.
1324
1675
  *
1325
1676
  * @private
1326
- * @name get
1327
- * @memberOf MapCache
1328
- * @param {string} key The key of the value to get.
1329
- * @returns {*} Returns the entry value.
1677
+ * @param {Object} regexp The regexp to clone.
1678
+ * @returns {Object} Returns the cloned regexp.
1330
1679
  */
1331
- function mapCacheGet(key) {
1332
- return getMapData(this, key).get(key);
1680
+ function cloneRegExp(regexp) {
1681
+ var result = new regexp.constructor(regexp.source, reFlags.exec(regexp));
1682
+ result.lastIndex = regexp.lastIndex;
1683
+ return result;
1333
1684
  }
1334
1685
  //#endregion
1335
- //#region node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/_mapCacheHas.js
1686
+ //#region node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/_cloneSymbol.js
1687
+ /** Used to convert symbols to primitives and strings. */
1688
+ var symbolProto$1 = Symbol$1 ? Symbol$1.prototype : void 0, symbolValueOf$1 = symbolProto$1 ? symbolProto$1.valueOf : void 0;
1336
1689
  /**
1337
- * Checks if a map value for `key` exists.
1690
+ * Creates a clone of the `symbol` object.
1338
1691
  *
1339
1692
  * @private
1340
- * @name has
1341
- * @memberOf MapCache
1342
- * @param {string} key The key of the entry to check.
1343
- * @returns {boolean} Returns `true` if an entry for `key` exists, else `false`.
1693
+ * @param {Object} symbol The symbol object to clone.
1694
+ * @returns {Object} Returns the cloned symbol object.
1344
1695
  */
1345
- function mapCacheHas(key) {
1346
- return getMapData(this, key).has(key);
1696
+ function cloneSymbol(symbol) {
1697
+ return symbolValueOf$1 ? Object(symbolValueOf$1.call(symbol)) : {};
1347
1698
  }
1348
1699
  //#endregion
1349
- //#region node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/_mapCacheSet.js
1700
+ //#region node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/_cloneTypedArray.js
1350
1701
  /**
1351
- * Sets the map `key` to `value`.
1702
+ * Creates a clone of `typedArray`.
1352
1703
  *
1353
1704
  * @private
1354
- * @name set
1355
- * @memberOf MapCache
1356
- * @param {string} key The key of the value to set.
1357
- * @param {*} value The value to set.
1358
- * @returns {Object} Returns the map cache instance.
1705
+ * @param {Object} typedArray The typed array to clone.
1706
+ * @param {boolean} [isDeep] Specify a deep clone.
1707
+ * @returns {Object} Returns the cloned typed array.
1359
1708
  */
1360
- function mapCacheSet(key, value) {
1361
- var data = getMapData(this, key), size = data.size;
1362
- data.set(key, value);
1363
- this.size += data.size == size ? 0 : 1;
1364
- return this;
1709
+ function cloneTypedArray(typedArray, isDeep) {
1710
+ var buffer = isDeep ? cloneArrayBuffer(typedArray.buffer) : typedArray.buffer;
1711
+ return new typedArray.constructor(buffer, typedArray.byteOffset, typedArray.length);
1365
1712
  }
1366
1713
  //#endregion
1367
- //#region node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/_MapCache.js
1714
+ //#region node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/_initCloneByTag.js
1715
+ /** `Object#toString` result references. */
1716
+ var boolTag$2 = "[object Boolean]", dateTag$2 = "[object Date]", mapTag$4 = "[object Map]", numberTag$2 = "[object Number]", regexpTag$2 = "[object RegExp]", setTag$4 = "[object Set]", stringTag$2 = "[object String]", symbolTag$3 = "[object Symbol]";
1717
+ var arrayBufferTag$2 = "[object ArrayBuffer]", dataViewTag$2 = "[object DataView]", float32Tag$1 = "[object Float32Array]", float64Tag$1 = "[object Float64Array]", int8Tag$1 = "[object Int8Array]", int16Tag$1 = "[object Int16Array]", int32Tag$1 = "[object Int32Array]", uint8Tag$1 = "[object Uint8Array]", uint8ClampedTag$1 = "[object Uint8ClampedArray]", uint16Tag$1 = "[object Uint16Array]", uint32Tag$1 = "[object Uint32Array]";
1368
1718
  /**
1369
- * Creates a map cache object to store key-value pairs.
1719
+ * Initializes an object clone based on its `toStringTag`.
1370
1720
  *
1371
- * @private
1372
- * @constructor
1373
- * @param {Array} [entries] The key-value pairs to cache.
1374
- */
1375
- function MapCache(entries) {
1376
- var index = -1, length = entries == null ? 0 : entries.length;
1377
- this.clear();
1378
- while (++index < length) {
1379
- var entry = entries[index];
1380
- this.set(entry[0], entry[1]);
1381
- }
1382
- }
1383
- MapCache.prototype.clear = mapCacheClear;
1384
- MapCache.prototype["delete"] = mapCacheDelete;
1385
- MapCache.prototype.get = mapCacheGet;
1386
- MapCache.prototype.has = mapCacheHas;
1387
- MapCache.prototype.set = mapCacheSet;
1388
- //#endregion
1389
- //#region node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/_arrayPush.js
1390
- /**
1391
- * Appends the elements of `values` to `array`.
1721
+ * **Note:** This function only supports cloning values with tags of
1722
+ * `Boolean`, `Date`, `Error`, `Map`, `Number`, `RegExp`, `Set`, or `String`.
1392
1723
  *
1393
1724
  * @private
1394
- * @param {Array} array The array to modify.
1395
- * @param {Array} values The values to append.
1396
- * @returns {Array} Returns `array`.
1725
+ * @param {Object} object The object to clone.
1726
+ * @param {string} tag The `toStringTag` of the object to clone.
1727
+ * @param {boolean} [isDeep] Specify a deep clone.
1728
+ * @returns {Object} Returns the initialized clone.
1397
1729
  */
1398
- function arrayPush(array, values) {
1399
- var index = -1, length = values.length, offset = array.length;
1400
- while (++index < length) array[offset + index] = values[index];
1401
- return array;
1730
+ function initCloneByTag(object, tag, isDeep) {
1731
+ var Ctor = object.constructor;
1732
+ switch (tag) {
1733
+ case arrayBufferTag$2: return cloneArrayBuffer(object);
1734
+ case boolTag$2:
1735
+ case dateTag$2: return new Ctor(+object);
1736
+ case dataViewTag$2: return cloneDataView(object, isDeep);
1737
+ case float32Tag$1:
1738
+ case float64Tag$1:
1739
+ case int8Tag$1:
1740
+ case int16Tag$1:
1741
+ case int32Tag$1:
1742
+ case uint8Tag$1:
1743
+ case uint8ClampedTag$1:
1744
+ case uint16Tag$1:
1745
+ case uint32Tag$1: return cloneTypedArray(object, isDeep);
1746
+ case mapTag$4: return new Ctor();
1747
+ case numberTag$2:
1748
+ case stringTag$2: return new Ctor(object);
1749
+ case regexpTag$2: return cloneRegExp(object);
1750
+ case setTag$4: return new Ctor();
1751
+ case symbolTag$3: return cloneSymbol(object);
1752
+ }
1402
1753
  }
1403
1754
  //#endregion
1404
- //#region node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/_getPrototype.js
1755
+ //#region node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/_baseCreate.js
1405
1756
  /** Built-in value references. */
1406
- var getPrototype = overArg(Object.getPrototypeOf, Object);
1407
- //#endregion
1408
- //#region node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/_stackClear.js
1757
+ var objectCreate = Object.create;
1409
1758
  /**
1410
- * Removes all key-value entries from the stack.
1759
+ * The base implementation of `_.create` without support for assigning
1760
+ * properties to the created object.
1411
1761
  *
1412
1762
  * @private
1413
- * @name clear
1414
- * @memberOf Stack
1763
+ * @param {Object} proto The object to inherit from.
1764
+ * @returns {Object} Returns the new object.
1415
1765
  */
1416
- function stackClear() {
1417
- this.__data__ = new ListCache();
1418
- this.size = 0;
1419
- }
1766
+ var baseCreate = function() {
1767
+ function object() {}
1768
+ return function(proto) {
1769
+ if (!isObject(proto)) return {};
1770
+ if (objectCreate) return objectCreate(proto);
1771
+ object.prototype = proto;
1772
+ var result = new object();
1773
+ object.prototype = void 0;
1774
+ return result;
1775
+ };
1776
+ }();
1420
1777
  //#endregion
1421
- //#region node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/_stackDelete.js
1778
+ //#region node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/_initCloneObject.js
1422
1779
  /**
1423
- * Removes `key` and its value from the stack.
1780
+ * Initializes an object clone.
1424
1781
  *
1425
1782
  * @private
1426
- * @name delete
1427
- * @memberOf Stack
1428
- * @param {string} key The key of the value to remove.
1429
- * @returns {boolean} Returns `true` if the entry was removed, else `false`.
1783
+ * @param {Object} object The object to clone.
1784
+ * @returns {Object} Returns the initialized clone.
1430
1785
  */
1431
- function stackDelete(key) {
1432
- var data = this.__data__, result = data["delete"](key);
1433
- this.size = data.size;
1434
- return result;
1786
+ function initCloneObject(object) {
1787
+ return typeof object.constructor == "function" && !isPrototype(object) ? baseCreate(getPrototype(object)) : {};
1435
1788
  }
1436
1789
  //#endregion
1437
- //#region node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/_stackGet.js
1790
+ //#region node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/_baseIsMap.js
1791
+ /** `Object#toString` result references. */
1792
+ var mapTag$3 = "[object Map]";
1438
1793
  /**
1439
- * Gets the stack value for `key`.
1794
+ * The base implementation of `_.isMap` without Node.js optimizations.
1440
1795
  *
1441
1796
  * @private
1442
- * @name get
1443
- * @memberOf Stack
1444
- * @param {string} key The key of the value to get.
1445
- * @returns {*} Returns the entry value.
1797
+ * @param {*} value The value to check.
1798
+ * @returns {boolean} Returns `true` if `value` is a map, else `false`.
1446
1799
  */
1447
- function stackGet(key) {
1448
- return this.__data__.get(key);
1800
+ function baseIsMap(value) {
1801
+ return isObjectLike(value) && _getTag_default(value) == mapTag$3;
1449
1802
  }
1450
1803
  //#endregion
1451
- //#region node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/_stackHas.js
1804
+ //#region node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/isMap.js
1805
+ var nodeIsMap = nodeUtil && nodeUtil.isMap;
1452
1806
  /**
1453
- * Checks if a stack value for `key` exists.
1807
+ * Checks if `value` is classified as a `Map` object.
1454
1808
  *
1455
- * @private
1456
- * @name has
1457
- * @memberOf Stack
1458
- * @param {string} key The key of the entry to check.
1459
- * @returns {boolean} Returns `true` if an entry for `key` exists, else `false`.
1809
+ * @static
1810
+ * @memberOf _
1811
+ * @since 4.3.0
1812
+ * @category Lang
1813
+ * @param {*} value The value to check.
1814
+ * @returns {boolean} Returns `true` if `value` is a map, else `false`.
1815
+ * @example
1816
+ *
1817
+ * _.isMap(new Map);
1818
+ * // => true
1819
+ *
1820
+ * _.isMap(new WeakMap);
1821
+ * // => false
1460
1822
  */
1461
- function stackHas(key) {
1462
- return this.__data__.has(key);
1463
- }
1823
+ var isMap = nodeIsMap ? baseUnary(nodeIsMap) : baseIsMap;
1464
1824
  //#endregion
1465
- //#region node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/_stackSet.js
1466
- /** Used as the size to enable large array optimizations. */
1467
- var LARGE_ARRAY_SIZE = 200;
1825
+ //#region node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/_baseIsSet.js
1826
+ /** `Object#toString` result references. */
1827
+ var setTag$3 = "[object Set]";
1468
1828
  /**
1469
- * Sets the stack `key` to `value`.
1829
+ * The base implementation of `_.isSet` without Node.js optimizations.
1470
1830
  *
1471
1831
  * @private
1472
- * @name set
1473
- * @memberOf Stack
1474
- * @param {string} key The key of the value to set.
1475
- * @param {*} value The value to set.
1476
- * @returns {Object} Returns the stack cache instance.
1832
+ * @param {*} value The value to check.
1833
+ * @returns {boolean} Returns `true` if `value` is a set, else `false`.
1477
1834
  */
1478
- function stackSet(key, value) {
1479
- var data = this.__data__;
1480
- if (data instanceof ListCache) {
1481
- var pairs = data.__data__;
1482
- if (!Map$1 || pairs.length < LARGE_ARRAY_SIZE - 1) {
1483
- pairs.push([key, value]);
1484
- this.size = ++data.size;
1485
- return this;
1486
- }
1487
- data = this.__data__ = new MapCache(pairs);
1488
- }
1489
- data.set(key, value);
1490
- this.size = data.size;
1491
- return this;
1835
+ function baseIsSet(value) {
1836
+ return isObjectLike(value) && _getTag_default(value) == setTag$3;
1492
1837
  }
1493
1838
  //#endregion
1494
- //#region node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/_Stack.js
1839
+ //#region node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/isSet.js
1840
+ var nodeIsSet = nodeUtil && nodeUtil.isSet;
1495
1841
  /**
1496
- * Creates a stack cache object to store key-value pairs.
1842
+ * Checks if `value` is classified as a `Set` object.
1497
1843
  *
1498
- * @private
1499
- * @constructor
1500
- * @param {Array} [entries] The key-value pairs to cache.
1501
- */
1502
- function Stack(entries) {
1503
- var data = this.__data__ = new ListCache(entries);
1504
- this.size = data.size;
1505
- }
1506
- Stack.prototype.clear = stackClear;
1507
- Stack.prototype["delete"] = stackDelete;
1508
- Stack.prototype.get = stackGet;
1509
- Stack.prototype.has = stackHas;
1510
- Stack.prototype.set = stackSet;
1511
- //#endregion
1512
- //#region node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/_baseAssign.js
1513
- /**
1514
- * The base implementation of `_.assign` without support for multiple sources
1515
- * or `customizer` functions.
1516
- *
1517
- * @private
1518
- * @param {Object} object The destination object.
1519
- * @param {Object} source The source object.
1520
- * @returns {Object} Returns `object`.
1521
- */
1522
- function baseAssign(object, source) {
1523
- return object && copyObject(source, keys(source), object);
1524
- }
1525
- //#endregion
1526
- //#region node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/_baseAssignIn.js
1527
- /**
1528
- * The base implementation of `_.assignIn` without support for multiple sources
1529
- * or `customizer` functions.
1844
+ * @static
1845
+ * @memberOf _
1846
+ * @since 4.3.0
1847
+ * @category Lang
1848
+ * @param {*} value The value to check.
1849
+ * @returns {boolean} Returns `true` if `value` is a set, else `false`.
1850
+ * @example
1530
1851
  *
1531
- * @private
1532
- * @param {Object} object The destination object.
1533
- * @param {Object} source The source object.
1534
- * @returns {Object} Returns `object`.
1535
- */
1536
- function baseAssignIn(object, source) {
1537
- return object && copyObject(source, keysIn(source), object);
1538
- }
1539
- //#endregion
1540
- //#region node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/_cloneBuffer.js
1541
- /** Detect free variable `exports`. */
1542
- var freeExports = typeof exports == "object" && exports && !exports.nodeType && exports;
1543
- /** Detect free variable `module`. */
1544
- var freeModule = freeExports && typeof module == "object" && module && !module.nodeType && module;
1545
- /** Built-in value references. */
1546
- var Buffer$1 = freeModule && freeModule.exports === freeExports ? root.Buffer : void 0, allocUnsafe = Buffer$1 ? Buffer$1.allocUnsafe : void 0;
1547
- /**
1548
- * Creates a clone of `buffer`.
1852
+ * _.isSet(new Set);
1853
+ * // => true
1549
1854
  *
1550
- * @private
1551
- * @param {Buffer} buffer The buffer to clone.
1552
- * @param {boolean} [isDeep] Specify a deep clone.
1553
- * @returns {Buffer} Returns the cloned buffer.
1855
+ * _.isSet(new WeakSet);
1856
+ * // => false
1554
1857
  */
1555
- function cloneBuffer(buffer, isDeep) {
1556
- if (isDeep) return buffer.slice();
1557
- var length = buffer.length, result = allocUnsafe ? allocUnsafe(length) : new buffer.constructor(length);
1558
- buffer.copy(result);
1559
- return result;
1560
- }
1858
+ var isSet = nodeIsSet ? baseUnary(nodeIsSet) : baseIsSet;
1561
1859
  //#endregion
1562
- //#region node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/_arrayFilter.js
1860
+ //#region node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/_baseClone.js
1861
+ /** Used to compose bitmasks for cloning. */
1862
+ var CLONE_DEEP_FLAG$1 = 1, CLONE_FLAT_FLAG = 2, CLONE_SYMBOLS_FLAG$1 = 4;
1863
+ /** `Object#toString` result references. */
1864
+ var argsTag$1 = "[object Arguments]", arrayTag$1 = "[object Array]", boolTag$1 = "[object Boolean]", dateTag$1 = "[object Date]", errorTag$1 = "[object Error]", funcTag = "[object Function]", genTag = "[object GeneratorFunction]", mapTag$2 = "[object Map]", numberTag$1 = "[object Number]", objectTag$1 = "[object Object]", regexpTag$1 = "[object RegExp]", setTag$2 = "[object Set]", stringTag$1 = "[object String]", symbolTag$2 = "[object Symbol]", weakMapTag = "[object WeakMap]";
1865
+ var arrayBufferTag$1 = "[object ArrayBuffer]", dataViewTag$1 = "[object DataView]", float32Tag = "[object Float32Array]", float64Tag = "[object Float64Array]", int8Tag = "[object Int8Array]", int16Tag = "[object Int16Array]", int32Tag = "[object Int32Array]", uint8Tag = "[object Uint8Array]", uint8ClampedTag = "[object Uint8ClampedArray]", uint16Tag = "[object Uint16Array]", uint32Tag = "[object Uint32Array]";
1866
+ /** Used to identify `toStringTag` values supported by `_.clone`. */
1867
+ var cloneableTags = {};
1868
+ cloneableTags[argsTag$1] = cloneableTags[arrayTag$1] = cloneableTags[arrayBufferTag$1] = cloneableTags[dataViewTag$1] = cloneableTags[boolTag$1] = cloneableTags[dateTag$1] = cloneableTags[float32Tag] = cloneableTags[float64Tag] = cloneableTags[int8Tag] = cloneableTags[int16Tag] = cloneableTags[int32Tag] = cloneableTags[mapTag$2] = cloneableTags[numberTag$1] = cloneableTags[objectTag$1] = cloneableTags[regexpTag$1] = cloneableTags[setTag$2] = cloneableTags[stringTag$1] = cloneableTags[symbolTag$2] = cloneableTags[uint8Tag] = cloneableTags[uint8ClampedTag] = cloneableTags[uint16Tag] = cloneableTags[uint32Tag] = true;
1869
+ cloneableTags[errorTag$1] = cloneableTags[funcTag] = cloneableTags[weakMapTag] = false;
1563
1870
  /**
1564
- * A specialized version of `_.filter` for arrays without support for
1565
- * iteratee shorthands.
1871
+ * The base implementation of `_.clone` and `_.cloneDeep` which tracks
1872
+ * traversed objects.
1566
1873
  *
1567
1874
  * @private
1568
- * @param {Array} [array] The array to iterate over.
1569
- * @param {Function} predicate The function invoked per iteration.
1570
- * @returns {Array} Returns the new filtered array.
1875
+ * @param {*} value The value to clone.
1876
+ * @param {boolean} bitmask The bitmask flags.
1877
+ * 1 - Deep clone
1878
+ * 2 - Flatten inherited properties
1879
+ * 4 - Clone symbols
1880
+ * @param {Function} [customizer] The function to customize cloning.
1881
+ * @param {string} [key] The key of `value`.
1882
+ * @param {Object} [object] The parent object of `value`.
1883
+ * @param {Object} [stack] Tracks traversed objects and their clone counterparts.
1884
+ * @returns {*} Returns the cloned value.
1571
1885
  */
1572
- function arrayFilter(array, predicate) {
1573
- var index = -1, length = array == null ? 0 : array.length, resIndex = 0, result = [];
1574
- while (++index < length) {
1575
- var value = array[index];
1576
- if (predicate(value, index, array)) result[resIndex++] = value;
1886
+ function baseClone(value, bitmask, customizer, key, object, stack) {
1887
+ var result, isDeep = bitmask & CLONE_DEEP_FLAG$1, isFlat = bitmask & CLONE_FLAT_FLAG, isFull = bitmask & CLONE_SYMBOLS_FLAG$1;
1888
+ if (customizer) result = object ? customizer(value, key, object, stack) : customizer(value);
1889
+ if (result !== void 0) return result;
1890
+ if (!isObject(value)) return value;
1891
+ var isArr = isArray(value);
1892
+ if (isArr) {
1893
+ result = initCloneArray(value);
1894
+ if (!isDeep) return copyArray(value, result);
1895
+ } else {
1896
+ var tag = _getTag_default(value), isFunc = tag == funcTag || tag == genTag;
1897
+ if (isBuffer(value)) return cloneBuffer(value, isDeep);
1898
+ if (tag == objectTag$1 || tag == argsTag$1 || isFunc && !object) {
1899
+ result = isFlat || isFunc ? {} : initCloneObject(value);
1900
+ if (!isDeep) return isFlat ? copySymbolsIn(value, baseAssignIn(result, value)) : copySymbols(value, baseAssign(result, value));
1901
+ } else {
1902
+ if (!cloneableTags[tag]) return object ? value : {};
1903
+ result = initCloneByTag(value, tag, isDeep);
1904
+ }
1577
1905
  }
1906
+ stack || (stack = new Stack());
1907
+ var stacked = stack.get(value);
1908
+ if (stacked) return stacked;
1909
+ stack.set(value, result);
1910
+ if (isSet(value)) value.forEach(function(subValue) {
1911
+ result.add(baseClone(subValue, bitmask, customizer, subValue, value, stack));
1912
+ });
1913
+ else if (isMap(value)) value.forEach(function(subValue, key) {
1914
+ result.set(key, baseClone(subValue, bitmask, customizer, key, value, stack));
1915
+ });
1916
+ var props = isArr ? void 0 : (isFull ? isFlat ? getAllKeysIn : getAllKeys : isFlat ? keysIn : keys)(value);
1917
+ arrayEach(props || value, function(subValue, key) {
1918
+ if (props) {
1919
+ key = subValue;
1920
+ subValue = value[key];
1921
+ }
1922
+ assignValue(result, key, baseClone(subValue, bitmask, customizer, key, value, stack));
1923
+ });
1578
1924
  return result;
1579
1925
  }
1580
1926
  //#endregion
1581
- //#region node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/stubArray.js
1927
+ //#region node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/cloneDeep.js
1928
+ /** Used to compose bitmasks for cloning. */
1929
+ var CLONE_DEEP_FLAG = 1, CLONE_SYMBOLS_FLAG = 4;
1582
1930
  /**
1583
- * This method returns a new empty array.
1931
+ * This method is like `_.clone` except that it recursively clones `value`.
1584
1932
  *
1585
1933
  * @static
1586
1934
  * @memberOf _
1587
- * @since 4.13.0
1588
- * @category Util
1589
- * @returns {Array} Returns the new empty array.
1935
+ * @since 1.0.0
1936
+ * @category Lang
1937
+ * @param {*} value The value to recursively clone.
1938
+ * @returns {*} Returns the deep cloned value.
1939
+ * @see _.clone
1590
1940
  * @example
1591
1941
  *
1592
- * var arrays = _.times(2, _.stubArray);
1593
- *
1594
- * console.log(arrays);
1595
- * // => [[], []]
1942
+ * var objects = [{ 'a': 1 }, { 'b': 2 }];
1596
1943
  *
1597
- * console.log(arrays[0] === arrays[1]);
1944
+ * var deep = _.cloneDeep(objects);
1945
+ * console.log(deep[0] === objects[0]);
1598
1946
  * // => false
1599
1947
  */
1600
- function stubArray() {
1601
- return [];
1948
+ function cloneDeep(value) {
1949
+ return baseClone(value, CLONE_DEEP_FLAG | CLONE_SYMBOLS_FLAG);
1602
1950
  }
1603
1951
  //#endregion
1604
- //#region node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/_getSymbols.js
1605
- /** Built-in value references. */
1606
- var propertyIsEnumerable = Object.prototype.propertyIsEnumerable;
1607
- var nativeGetSymbols = Object.getOwnPropertySymbols;
1952
+ //#region node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/now.js
1608
1953
  /**
1609
- * Creates an array of the own enumerable symbols of `object`.
1954
+ * Gets the timestamp of the number of milliseconds that have elapsed since
1955
+ * the Unix epoch (1 January 1970 00:00:00 UTC).
1610
1956
  *
1611
- * @private
1612
- * @param {Object} object The object to query.
1613
- * @returns {Array} Returns the array of symbols.
1957
+ * @static
1958
+ * @memberOf _
1959
+ * @since 2.4.0
1960
+ * @category Date
1961
+ * @returns {number} Returns the timestamp.
1962
+ * @example
1963
+ *
1964
+ * _.defer(function(stamp) {
1965
+ * console.log(_.now() - stamp);
1966
+ * }, _.now());
1967
+ * // => Logs the number of milliseconds it took for the deferred invocation.
1614
1968
  */
1615
- var getSymbols = !nativeGetSymbols ? stubArray : function(object) {
1616
- if (object == null) return [];
1617
- object = Object(object);
1618
- return arrayFilter(nativeGetSymbols(object), function(symbol) {
1619
- return propertyIsEnumerable.call(object, symbol);
1620
- });
1969
+ var now = function() {
1970
+ return root.Date.now();
1621
1971
  };
1622
1972
  //#endregion
1623
- //#region node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/_copySymbols.js
1973
+ //#region node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/_trimmedEndIndex.js
1974
+ /** Used to match a single whitespace character. */
1975
+ var reWhitespace = /\s/;
1624
1976
  /**
1625
- * Copies own symbols of `source` to `object`.
1977
+ * Used by `_.trim` and `_.trimEnd` to get the index of the last non-whitespace
1978
+ * character of `string`.
1626
1979
  *
1627
1980
  * @private
1628
- * @param {Object} source The object to copy symbols from.
1629
- * @param {Object} [object={}] The object to copy symbols to.
1630
- * @returns {Object} Returns `object`.
1981
+ * @param {string} string The string to inspect.
1982
+ * @returns {number} Returns the index of the last non-whitespace character.
1631
1983
  */
1632
- function copySymbols(source, object) {
1633
- return copyObject(source, getSymbols(source), object);
1984
+ function trimmedEndIndex(string) {
1985
+ var index = string.length;
1986
+ while (index-- && reWhitespace.test(string.charAt(index)));
1987
+ return index;
1634
1988
  }
1635
1989
  //#endregion
1636
- //#region node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/_getSymbolsIn.js
1990
+ //#region node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/_baseTrim.js
1991
+ /** Used to match leading whitespace. */
1992
+ var reTrimStart = /^\s+/;
1637
1993
  /**
1638
- * Creates an array of the own and inherited enumerable symbols of `object`.
1994
+ * The base implementation of `_.trim`.
1639
1995
  *
1640
1996
  * @private
1641
- * @param {Object} object The object to query.
1642
- * @returns {Array} Returns the array of symbols.
1997
+ * @param {string} string The string to trim.
1998
+ * @returns {string} Returns the trimmed string.
1643
1999
  */
1644
- var getSymbolsIn = !Object.getOwnPropertySymbols ? stubArray : function(object) {
1645
- var result = [];
1646
- while (object) {
1647
- arrayPush(result, getSymbols(object));
1648
- object = getPrototype(object);
1649
- }
1650
- return result;
1651
- };
2000
+ function baseTrim(string) {
2001
+ return string ? string.slice(0, trimmedEndIndex(string) + 1).replace(reTrimStart, "") : string;
2002
+ }
1652
2003
  //#endregion
1653
- //#region node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/_copySymbolsIn.js
2004
+ //#region node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/isSymbol.js
2005
+ /** `Object#toString` result references. */
2006
+ var symbolTag$1 = "[object Symbol]";
1654
2007
  /**
1655
- * Copies own and inherited symbols of `source` to `object`.
2008
+ * Checks if `value` is classified as a `Symbol` primitive or object.
1656
2009
  *
1657
- * @private
1658
- * @param {Object} source The object to copy symbols from.
1659
- * @param {Object} [object={}] The object to copy symbols to.
1660
- * @returns {Object} Returns `object`.
2010
+ * @static
2011
+ * @memberOf _
2012
+ * @since 4.0.0
2013
+ * @category Lang
2014
+ * @param {*} value The value to check.
2015
+ * @returns {boolean} Returns `true` if `value` is a symbol, else `false`.
2016
+ * @example
2017
+ *
2018
+ * _.isSymbol(Symbol.iterator);
2019
+ * // => true
2020
+ *
2021
+ * _.isSymbol('abc');
2022
+ * // => false
1661
2023
  */
1662
- function copySymbolsIn(source, object) {
1663
- return copyObject(source, getSymbolsIn(source), object);
2024
+ function isSymbol(value) {
2025
+ return typeof value == "symbol" || isObjectLike(value) && baseGetTag(value) == symbolTag$1;
1664
2026
  }
1665
2027
  //#endregion
1666
- //#region node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/_baseGetAllKeys.js
2028
+ //#region node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/toNumber.js
2029
+ /** Used as references for various `Number` constants. */
2030
+ var NAN = NaN;
2031
+ /** Used to detect bad signed hexadecimal string values. */
2032
+ var reIsBadHex = /^[-+]0x[0-9a-f]+$/i;
2033
+ /** Used to detect binary string values. */
2034
+ var reIsBinary = /^0b[01]+$/i;
2035
+ /** Used to detect octal string values. */
2036
+ var reIsOctal = /^0o[0-7]+$/i;
2037
+ /** Built-in method references without a dependency on `root`. */
2038
+ var freeParseInt = parseInt;
1667
2039
  /**
1668
- * The base implementation of `getAllKeys` and `getAllKeysIn` which uses
1669
- * `keysFunc` and `symbolsFunc` to get the enumerable property names and
1670
- * symbols of `object`.
2040
+ * Converts `value` to a number.
1671
2041
  *
1672
- * @private
1673
- * @param {Object} object The object to query.
1674
- * @param {Function} keysFunc The function to get the keys of `object`.
1675
- * @param {Function} symbolsFunc The function to get the symbols of `object`.
1676
- * @returns {Array} Returns the array of property names and symbols.
1677
- */
1678
- function baseGetAllKeys(object, keysFunc, symbolsFunc) {
1679
- var result = keysFunc(object);
1680
- return isArray(object) ? result : arrayPush(result, symbolsFunc(object));
1681
- }
1682
- //#endregion
1683
- //#region node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/_getAllKeys.js
1684
- /**
1685
- * Creates an array of own enumerable property names and symbols of `object`.
2042
+ * @static
2043
+ * @memberOf _
2044
+ * @since 4.0.0
2045
+ * @category Lang
2046
+ * @param {*} value The value to process.
2047
+ * @returns {number} Returns the number.
2048
+ * @example
1686
2049
  *
1687
- * @private
1688
- * @param {Object} object The object to query.
1689
- * @returns {Array} Returns the array of property names and symbols.
1690
- */
1691
- function getAllKeys(object) {
1692
- return baseGetAllKeys(object, keys, getSymbols);
1693
- }
1694
- //#endregion
1695
- //#region node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/_getAllKeysIn.js
1696
- /**
1697
- * Creates an array of own and inherited enumerable property names and
1698
- * symbols of `object`.
2050
+ * _.toNumber(3.2);
2051
+ * // => 3.2
1699
2052
  *
1700
- * @private
1701
- * @param {Object} object The object to query.
1702
- * @returns {Array} Returns the array of property names and symbols.
1703
- */
1704
- function getAllKeysIn(object) {
1705
- return baseGetAllKeys(object, keysIn, getSymbolsIn);
1706
- }
1707
- //#endregion
1708
- //#region node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/_DataView.js
1709
- var DataView = getNative(root, "DataView");
1710
- //#endregion
1711
- //#region node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/_Promise.js
1712
- var Promise$1 = getNative(root, "Promise");
1713
- //#endregion
1714
- //#region node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/_Set.js
1715
- var Set$1 = getNative(root, "Set");
1716
- //#endregion
1717
- //#region node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/_getTag.js
1718
- /** `Object#toString` result references. */
1719
- var mapTag$5 = "[object Map]", objectTag$2 = "[object Object]", promiseTag = "[object Promise]", setTag$5 = "[object Set]", weakMapTag$1 = "[object WeakMap]";
1720
- var dataViewTag$3 = "[object DataView]";
1721
- /** Used to detect maps, sets, and weakmaps. */
1722
- var dataViewCtorString = toSource(DataView), mapCtorString = toSource(Map$1), promiseCtorString = toSource(Promise$1), setCtorString = toSource(Set$1), weakMapCtorString = toSource(WeakMap);
1723
- /**
1724
- * Gets the `toStringTag` of `value`.
2053
+ * _.toNumber(Number.MIN_VALUE);
2054
+ * // => 5e-324
1725
2055
  *
1726
- * @private
1727
- * @param {*} value The value to query.
1728
- * @returns {string} Returns the `toStringTag`.
1729
- */
1730
- var getTag = baseGetTag;
1731
- if (DataView && getTag(new DataView(/* @__PURE__ */ new ArrayBuffer(1))) != dataViewTag$3 || Map$1 && getTag(new Map$1()) != mapTag$5 || Promise$1 && getTag(Promise$1.resolve()) != promiseTag || Set$1 && getTag(new Set$1()) != setTag$5 || WeakMap && getTag(new WeakMap()) != weakMapTag$1) getTag = function(value) {
1732
- var result = baseGetTag(value), Ctor = result == objectTag$2 ? value.constructor : void 0, ctorString = Ctor ? toSource(Ctor) : "";
1733
- if (ctorString) switch (ctorString) {
1734
- case dataViewCtorString: return dataViewTag$3;
1735
- case mapCtorString: return mapTag$5;
1736
- case promiseCtorString: return promiseTag;
1737
- case setCtorString: return setTag$5;
1738
- case weakMapCtorString: return weakMapTag$1;
1739
- }
1740
- return result;
1741
- };
1742
- var _getTag_default = getTag;
1743
- //#endregion
1744
- //#region node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/_initCloneArray.js
1745
- /** Used to check objects for own properties. */
1746
- var hasOwnProperty$3 = Object.prototype.hasOwnProperty;
1747
- /**
1748
- * Initializes an array clone.
2056
+ * _.toNumber(Infinity);
2057
+ * // => Infinity
1749
2058
  *
1750
- * @private
1751
- * @param {Array} array The array to clone.
1752
- * @returns {Array} Returns the initialized clone.
2059
+ * _.toNumber('3.2');
2060
+ * // => 3.2
1753
2061
  */
1754
- function initCloneArray(array) {
1755
- var length = array.length, result = new array.constructor(length);
1756
- if (length && typeof array[0] == "string" && hasOwnProperty$3.call(array, "index")) {
1757
- result.index = array.index;
1758
- result.input = array.input;
2062
+ function toNumber(value) {
2063
+ if (typeof value == "number") return value;
2064
+ if (isSymbol(value)) return NAN;
2065
+ if (isObject(value)) {
2066
+ var other = typeof value.valueOf == "function" ? value.valueOf() : value;
2067
+ value = isObject(other) ? other + "" : other;
1759
2068
  }
1760
- return result;
1761
- }
1762
- //#endregion
1763
- //#region node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/_Uint8Array.js
1764
- /** Built-in value references. */
1765
- var Uint8Array$1 = root.Uint8Array;
1766
- //#endregion
1767
- //#region node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/_cloneArrayBuffer.js
1768
- /**
1769
- * Creates a clone of `arrayBuffer`.
1770
- *
1771
- * @private
1772
- * @param {ArrayBuffer} arrayBuffer The array buffer to clone.
1773
- * @returns {ArrayBuffer} Returns the cloned array buffer.
1774
- */
1775
- function cloneArrayBuffer(arrayBuffer) {
1776
- var result = new arrayBuffer.constructor(arrayBuffer.byteLength);
1777
- new Uint8Array$1(result).set(new Uint8Array$1(arrayBuffer));
1778
- return result;
1779
- }
1780
- //#endregion
1781
- //#region node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/_cloneDataView.js
1782
- /**
1783
- * Creates a clone of `dataView`.
1784
- *
1785
- * @private
1786
- * @param {Object} dataView The data view to clone.
1787
- * @param {boolean} [isDeep] Specify a deep clone.
1788
- * @returns {Object} Returns the cloned data view.
1789
- */
1790
- function cloneDataView(dataView, isDeep) {
1791
- var buffer = isDeep ? cloneArrayBuffer(dataView.buffer) : dataView.buffer;
1792
- return new dataView.constructor(buffer, dataView.byteOffset, dataView.byteLength);
1793
- }
1794
- //#endregion
1795
- //#region node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/_cloneRegExp.js
1796
- /** Used to match `RegExp` flags from their coerced string values. */
1797
- var reFlags = /\w*$/;
1798
- /**
1799
- * Creates a clone of `regexp`.
1800
- *
1801
- * @private
1802
- * @param {Object} regexp The regexp to clone.
1803
- * @returns {Object} Returns the cloned regexp.
1804
- */
1805
- function cloneRegExp(regexp) {
1806
- var result = new regexp.constructor(regexp.source, reFlags.exec(regexp));
1807
- result.lastIndex = regexp.lastIndex;
1808
- return result;
1809
- }
1810
- //#endregion
1811
- //#region node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/_cloneSymbol.js
1812
- /** Used to convert symbols to primitives and strings. */
1813
- var symbolProto$1 = Symbol$1 ? Symbol$1.prototype : void 0, symbolValueOf$1 = symbolProto$1 ? symbolProto$1.valueOf : void 0;
1814
- /**
1815
- * Creates a clone of the `symbol` object.
1816
- *
1817
- * @private
1818
- * @param {Object} symbol The symbol object to clone.
1819
- * @returns {Object} Returns the cloned symbol object.
1820
- */
1821
- function cloneSymbol(symbol) {
1822
- return symbolValueOf$1 ? Object(symbolValueOf$1.call(symbol)) : {};
1823
- }
1824
- //#endregion
1825
- //#region node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/_cloneTypedArray.js
1826
- /**
1827
- * Creates a clone of `typedArray`.
1828
- *
1829
- * @private
1830
- * @param {Object} typedArray The typed array to clone.
1831
- * @param {boolean} [isDeep] Specify a deep clone.
1832
- * @returns {Object} Returns the cloned typed array.
1833
- */
1834
- function cloneTypedArray(typedArray, isDeep) {
1835
- var buffer = isDeep ? cloneArrayBuffer(typedArray.buffer) : typedArray.buffer;
1836
- return new typedArray.constructor(buffer, typedArray.byteOffset, typedArray.length);
2069
+ if (typeof value != "string") return value === 0 ? value : +value;
2070
+ value = baseTrim(value);
2071
+ var isBinary = reIsBinary.test(value);
2072
+ return isBinary || reIsOctal.test(value) ? freeParseInt(value.slice(2), isBinary ? 2 : 8) : reIsBadHex.test(value) ? NAN : +value;
1837
2073
  }
1838
2074
  //#endregion
1839
- //#region node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/_initCloneByTag.js
1840
- /** `Object#toString` result references. */
1841
- var boolTag$2 = "[object Boolean]", dateTag$2 = "[object Date]", mapTag$4 = "[object Map]", numberTag$2 = "[object Number]", regexpTag$2 = "[object RegExp]", setTag$4 = "[object Set]", stringTag$2 = "[object String]", symbolTag$2 = "[object Symbol]";
1842
- var arrayBufferTag$2 = "[object ArrayBuffer]", dataViewTag$2 = "[object DataView]", float32Tag$1 = "[object Float32Array]", float64Tag$1 = "[object Float64Array]", int8Tag$1 = "[object Int8Array]", int16Tag$1 = "[object Int16Array]", int32Tag$1 = "[object Int32Array]", uint8Tag$1 = "[object Uint8Array]", uint8ClampedTag$1 = "[object Uint8ClampedArray]", uint16Tag$1 = "[object Uint16Array]", uint32Tag$1 = "[object Uint32Array]";
2075
+ //#region node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/debounce.js
2076
+ /** Error message constants. */
2077
+ var FUNC_ERROR_TEXT = "Expected a function";
2078
+ var nativeMax = Math.max, nativeMin = Math.min;
1843
2079
  /**
1844
- * Initializes an object clone based on its `toStringTag`.
1845
- *
1846
- * **Note:** This function only supports cloning values with tags of
1847
- * `Boolean`, `Date`, `Error`, `Map`, `Number`, `RegExp`, `Set`, or `String`.
2080
+ * Creates a debounced function that delays invoking `func` until after `wait`
2081
+ * milliseconds have elapsed since the last time the debounced function was
2082
+ * invoked. The debounced function comes with a `cancel` method to cancel
2083
+ * delayed `func` invocations and a `flush` method to immediately invoke them.
2084
+ * Provide `options` to indicate whether `func` should be invoked on the
2085
+ * leading and/or trailing edge of the `wait` timeout. The `func` is invoked
2086
+ * with the last arguments provided to the debounced function. Subsequent
2087
+ * calls to the debounced function return the result of the last `func`
2088
+ * invocation.
1848
2089
  *
1849
- * @private
1850
- * @param {Object} object The object to clone.
1851
- * @param {string} tag The `toStringTag` of the object to clone.
1852
- * @param {boolean} [isDeep] Specify a deep clone.
1853
- * @returns {Object} Returns the initialized clone.
1854
- */
1855
- function initCloneByTag(object, tag, isDeep) {
1856
- var Ctor = object.constructor;
1857
- switch (tag) {
1858
- case arrayBufferTag$2: return cloneArrayBuffer(object);
1859
- case boolTag$2:
1860
- case dateTag$2: return new Ctor(+object);
1861
- case dataViewTag$2: return cloneDataView(object, isDeep);
1862
- case float32Tag$1:
1863
- case float64Tag$1:
1864
- case int8Tag$1:
1865
- case int16Tag$1:
1866
- case int32Tag$1:
1867
- case uint8Tag$1:
1868
- case uint8ClampedTag$1:
1869
- case uint16Tag$1:
1870
- case uint32Tag$1: return cloneTypedArray(object, isDeep);
1871
- case mapTag$4: return new Ctor();
1872
- case numberTag$2:
1873
- case stringTag$2: return new Ctor(object);
1874
- case regexpTag$2: return cloneRegExp(object);
1875
- case setTag$4: return new Ctor();
1876
- case symbolTag$2: return cloneSymbol(object);
1877
- }
1878
- }
1879
- //#endregion
1880
- //#region node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/_initCloneObject.js
1881
- /**
1882
- * Initializes an object clone.
2090
+ * **Note:** If `leading` and `trailing` options are `true`, `func` is
2091
+ * invoked on the trailing edge of the timeout only if the debounced function
2092
+ * is invoked more than once during the `wait` timeout.
1883
2093
  *
1884
- * @private
1885
- * @param {Object} object The object to clone.
1886
- * @returns {Object} Returns the initialized clone.
1887
- */
1888
- function initCloneObject(object) {
1889
- return typeof object.constructor == "function" && !isPrototype(object) ? baseCreate(getPrototype(object)) : {};
1890
- }
1891
- //#endregion
1892
- //#region node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/_baseIsMap.js
1893
- /** `Object#toString` result references. */
1894
- var mapTag$3 = "[object Map]";
1895
- /**
1896
- * The base implementation of `_.isMap` without Node.js optimizations.
2094
+ * If `wait` is `0` and `leading` is `false`, `func` invocation is deferred
2095
+ * until to the next tick, similar to `setTimeout` with a timeout of `0`.
1897
2096
  *
1898
- * @private
1899
- * @param {*} value The value to check.
1900
- * @returns {boolean} Returns `true` if `value` is a map, else `false`.
1901
- */
1902
- function baseIsMap(value) {
1903
- return isObjectLike(value) && _getTag_default(value) == mapTag$3;
1904
- }
1905
- //#endregion
1906
- //#region node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/isMap.js
1907
- var nodeIsMap = nodeUtil && nodeUtil.isMap;
1908
- /**
1909
- * Checks if `value` is classified as a `Map` object.
2097
+ * See [David Corbacho's article](https://css-tricks.com/debouncing-throttling-explained-examples/)
2098
+ * for details over the differences between `_.debounce` and `_.throttle`.
1910
2099
  *
1911
2100
  * @static
1912
2101
  * @memberOf _
1913
- * @since 4.3.0
1914
- * @category Lang
1915
- * @param {*} value The value to check.
1916
- * @returns {boolean} Returns `true` if `value` is a map, else `false`.
2102
+ * @since 0.1.0
2103
+ * @category Function
2104
+ * @param {Function} func The function to debounce.
2105
+ * @param {number} [wait=0] The number of milliseconds to delay.
2106
+ * @param {Object} [options={}] The options object.
2107
+ * @param {boolean} [options.leading=false]
2108
+ * Specify invoking on the leading edge of the timeout.
2109
+ * @param {number} [options.maxWait]
2110
+ * The maximum time `func` is allowed to be delayed before it's invoked.
2111
+ * @param {boolean} [options.trailing=true]
2112
+ * Specify invoking on the trailing edge of the timeout.
2113
+ * @returns {Function} Returns the new debounced function.
1917
2114
  * @example
1918
2115
  *
1919
- * _.isMap(new Map);
1920
- * // => true
1921
- *
1922
- * _.isMap(new WeakMap);
1923
- * // => false
1924
- */
1925
- var isMap = nodeIsMap ? baseUnary(nodeIsMap) : baseIsMap;
1926
- //#endregion
1927
- //#region node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/_baseIsSet.js
1928
- /** `Object#toString` result references. */
1929
- var setTag$3 = "[object Set]";
1930
- /**
1931
- * The base implementation of `_.isSet` without Node.js optimizations.
1932
- *
1933
- * @private
1934
- * @param {*} value The value to check.
1935
- * @returns {boolean} Returns `true` if `value` is a set, else `false`.
1936
- */
1937
- function baseIsSet(value) {
1938
- return isObjectLike(value) && _getTag_default(value) == setTag$3;
1939
- }
1940
- //#endregion
1941
- //#region node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/isSet.js
1942
- var nodeIsSet = nodeUtil && nodeUtil.isSet;
1943
- /**
1944
- * Checks if `value` is classified as a `Set` object.
1945
- *
1946
- * @static
1947
- * @memberOf _
1948
- * @since 4.3.0
1949
- * @category Lang
1950
- * @param {*} value The value to check.
1951
- * @returns {boolean} Returns `true` if `value` is a set, else `false`.
1952
- * @example
2116
+ * // Avoid costly calculations while the window size is in flux.
2117
+ * jQuery(window).on('resize', _.debounce(calculateLayout, 150));
1953
2118
  *
1954
- * _.isSet(new Set);
1955
- * // => true
2119
+ * // Invoke `sendMail` when clicked, debouncing subsequent calls.
2120
+ * jQuery(element).on('click', _.debounce(sendMail, 300, {
2121
+ * 'leading': true,
2122
+ * 'trailing': false
2123
+ * }));
1956
2124
  *
1957
- * _.isSet(new WeakSet);
1958
- * // => false
1959
- */
1960
- var isSet = nodeIsSet ? baseUnary(nodeIsSet) : baseIsSet;
1961
- //#endregion
1962
- //#region node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/_baseClone.js
1963
- /** Used to compose bitmasks for cloning. */
1964
- var CLONE_DEEP_FLAG$1 = 1, CLONE_FLAT_FLAG = 2, CLONE_SYMBOLS_FLAG$1 = 4;
1965
- /** `Object#toString` result references. */
1966
- var argsTag$1 = "[object Arguments]", arrayTag$1 = "[object Array]", boolTag$1 = "[object Boolean]", dateTag$1 = "[object Date]", errorTag$1 = "[object Error]", funcTag = "[object Function]", genTag = "[object GeneratorFunction]", mapTag$2 = "[object Map]", numberTag$1 = "[object Number]", objectTag$1 = "[object Object]", regexpTag$1 = "[object RegExp]", setTag$2 = "[object Set]", stringTag$1 = "[object String]", symbolTag$1 = "[object Symbol]", weakMapTag = "[object WeakMap]";
1967
- var arrayBufferTag$1 = "[object ArrayBuffer]", dataViewTag$1 = "[object DataView]", float32Tag = "[object Float32Array]", float64Tag = "[object Float64Array]", int8Tag = "[object Int8Array]", int16Tag = "[object Int16Array]", int32Tag = "[object Int32Array]", uint8Tag = "[object Uint8Array]", uint8ClampedTag = "[object Uint8ClampedArray]", uint16Tag = "[object Uint16Array]", uint32Tag = "[object Uint32Array]";
1968
- /** Used to identify `toStringTag` values supported by `_.clone`. */
1969
- var cloneableTags = {};
1970
- cloneableTags[argsTag$1] = cloneableTags[arrayTag$1] = cloneableTags[arrayBufferTag$1] = cloneableTags[dataViewTag$1] = cloneableTags[boolTag$1] = cloneableTags[dateTag$1] = cloneableTags[float32Tag] = cloneableTags[float64Tag] = cloneableTags[int8Tag] = cloneableTags[int16Tag] = cloneableTags[int32Tag] = cloneableTags[mapTag$2] = cloneableTags[numberTag$1] = cloneableTags[objectTag$1] = cloneableTags[regexpTag$1] = cloneableTags[setTag$2] = cloneableTags[stringTag$1] = cloneableTags[symbolTag$1] = cloneableTags[uint8Tag] = cloneableTags[uint8ClampedTag] = cloneableTags[uint16Tag] = cloneableTags[uint32Tag] = true;
1971
- cloneableTags[errorTag$1] = cloneableTags[funcTag] = cloneableTags[weakMapTag] = false;
1972
- /**
1973
- * The base implementation of `_.clone` and `_.cloneDeep` which tracks
1974
- * traversed objects.
2125
+ * // Ensure `batchLog` is invoked once after 1 second of debounced calls.
2126
+ * var debounced = _.debounce(batchLog, 250, { 'maxWait': 1000 });
2127
+ * var source = new EventSource('/stream');
2128
+ * jQuery(source).on('message', debounced);
1975
2129
  *
1976
- * @private
1977
- * @param {*} value The value to clone.
1978
- * @param {boolean} bitmask The bitmask flags.
1979
- * 1 - Deep clone
1980
- * 2 - Flatten inherited properties
1981
- * 4 - Clone symbols
1982
- * @param {Function} [customizer] The function to customize cloning.
1983
- * @param {string} [key] The key of `value`.
1984
- * @param {Object} [object] The parent object of `value`.
1985
- * @param {Object} [stack] Tracks traversed objects and their clone counterparts.
1986
- * @returns {*} Returns the cloned value.
2130
+ * // Cancel the trailing debounced invocation.
2131
+ * jQuery(window).on('popstate', debounced.cancel);
1987
2132
  */
1988
- function baseClone(value, bitmask, customizer, key, object, stack) {
1989
- var result, isDeep = bitmask & CLONE_DEEP_FLAG$1, isFlat = bitmask & CLONE_FLAT_FLAG, isFull = bitmask & CLONE_SYMBOLS_FLAG$1;
1990
- if (customizer) result = object ? customizer(value, key, object, stack) : customizer(value);
1991
- if (result !== void 0) return result;
1992
- if (!isObject(value)) return value;
1993
- var isArr = isArray(value);
1994
- if (isArr) {
1995
- result = initCloneArray(value);
1996
- if (!isDeep) return copyArray(value, result);
1997
- } else {
1998
- var tag = _getTag_default(value), isFunc = tag == funcTag || tag == genTag;
1999
- if (isBuffer(value)) return cloneBuffer(value, isDeep);
2000
- if (tag == objectTag$1 || tag == argsTag$1 || isFunc && !object) {
2001
- result = isFlat || isFunc ? {} : initCloneObject(value);
2002
- if (!isDeep) return isFlat ? copySymbolsIn(value, baseAssignIn(result, value)) : copySymbols(value, baseAssign(result, value));
2003
- } else {
2004
- if (!cloneableTags[tag]) return object ? value : {};
2005
- result = initCloneByTag(value, tag, isDeep);
2133
+ function debounce(func, wait, options) {
2134
+ var lastArgs, lastThis, maxWait, result, timerId, lastCallTime, lastInvokeTime = 0, leading = false, maxing = false, trailing = true;
2135
+ if (typeof func != "function") throw new TypeError(FUNC_ERROR_TEXT);
2136
+ wait = toNumber(wait) || 0;
2137
+ if (isObject(options)) {
2138
+ leading = !!options.leading;
2139
+ maxing = "maxWait" in options;
2140
+ maxWait = maxing ? nativeMax(toNumber(options.maxWait) || 0, wait) : maxWait;
2141
+ trailing = "trailing" in options ? !!options.trailing : trailing;
2142
+ }
2143
+ function invokeFunc(time) {
2144
+ var args = lastArgs, thisArg = lastThis;
2145
+ lastArgs = lastThis = void 0;
2146
+ lastInvokeTime = time;
2147
+ result = func.apply(thisArg, args);
2148
+ return result;
2149
+ }
2150
+ function leadingEdge(time) {
2151
+ lastInvokeTime = time;
2152
+ timerId = setTimeout(timerExpired, wait);
2153
+ return leading ? invokeFunc(time) : result;
2154
+ }
2155
+ function remainingWait(time) {
2156
+ var timeSinceLastCall = time - lastCallTime, timeSinceLastInvoke = time - lastInvokeTime, timeWaiting = wait - timeSinceLastCall;
2157
+ return maxing ? nativeMin(timeWaiting, maxWait - timeSinceLastInvoke) : timeWaiting;
2158
+ }
2159
+ function shouldInvoke(time) {
2160
+ var timeSinceLastCall = time - lastCallTime, timeSinceLastInvoke = time - lastInvokeTime;
2161
+ return lastCallTime === void 0 || timeSinceLastCall >= wait || timeSinceLastCall < 0 || maxing && timeSinceLastInvoke >= maxWait;
2162
+ }
2163
+ function timerExpired() {
2164
+ var time = now();
2165
+ if (shouldInvoke(time)) return trailingEdge(time);
2166
+ timerId = setTimeout(timerExpired, remainingWait(time));
2167
+ }
2168
+ function trailingEdge(time) {
2169
+ timerId = void 0;
2170
+ if (trailing && lastArgs) return invokeFunc(time);
2171
+ lastArgs = lastThis = void 0;
2172
+ return result;
2173
+ }
2174
+ function cancel() {
2175
+ if (timerId !== void 0) clearTimeout(timerId);
2176
+ lastInvokeTime = 0;
2177
+ lastArgs = lastCallTime = lastThis = timerId = void 0;
2178
+ }
2179
+ function flush() {
2180
+ return timerId === void 0 ? result : trailingEdge(now());
2181
+ }
2182
+ function debounced() {
2183
+ var time = now(), isInvoking = shouldInvoke(time);
2184
+ lastArgs = arguments;
2185
+ lastThis = this;
2186
+ lastCallTime = time;
2187
+ if (isInvoking) {
2188
+ if (timerId === void 0) return leadingEdge(lastCallTime);
2189
+ if (maxing) {
2190
+ clearTimeout(timerId);
2191
+ timerId = setTimeout(timerExpired, wait);
2192
+ return invokeFunc(lastCallTime);
2193
+ }
2006
2194
  }
2195
+ if (timerId === void 0) timerId = setTimeout(timerExpired, wait);
2196
+ return result;
2007
2197
  }
2008
- stack || (stack = new Stack());
2009
- var stacked = stack.get(value);
2010
- if (stacked) return stacked;
2011
- stack.set(value, result);
2012
- if (isSet(value)) value.forEach(function(subValue) {
2013
- result.add(baseClone(subValue, bitmask, customizer, subValue, value, stack));
2014
- });
2015
- else if (isMap(value)) value.forEach(function(subValue, key) {
2016
- result.set(key, baseClone(subValue, bitmask, customizer, key, value, stack));
2017
- });
2018
- var props = isArr ? void 0 : (isFull ? isFlat ? getAllKeysIn : getAllKeys : isFlat ? keysIn : keys)(value);
2019
- arrayEach(props || value, function(subValue, key) {
2020
- if (props) {
2021
- key = subValue;
2022
- subValue = value[key];
2023
- }
2024
- assignValue(result, key, baseClone(subValue, bitmask, customizer, key, value, stack));
2025
- });
2026
- return result;
2198
+ debounced.cancel = cancel;
2199
+ debounced.flush = flush;
2200
+ return debounced;
2027
2201
  }
2028
2202
  //#endregion
2029
- //#region node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/cloneDeep.js
2030
- /** Used to compose bitmasks for cloning. */
2031
- var CLONE_DEEP_FLAG = 1, CLONE_SYMBOLS_FLAG = 4;
2203
+ //#region node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/isEmpty.js
2204
+ /** `Object#toString` result references. */
2205
+ var mapTag$1 = "[object Map]", setTag$1 = "[object Set]";
2206
+ /** Used to check objects for own properties. */
2207
+ var hasOwnProperty$2 = Object.prototype.hasOwnProperty;
2032
2208
  /**
2033
- * This method is like `_.clone` except that it recursively clones `value`.
2209
+ * Checks if `value` is an empty object, collection, map, or set.
2210
+ *
2211
+ * Objects are considered empty if they have no own enumerable string keyed
2212
+ * properties.
2213
+ *
2214
+ * Array-like values such as `arguments` objects, arrays, buffers, strings, or
2215
+ * jQuery-like collections are considered empty if they have a `length` of `0`.
2216
+ * Similarly, maps and sets are considered empty if they have a `size` of `0`.
2034
2217
  *
2035
2218
  * @static
2036
2219
  * @memberOf _
2037
- * @since 1.0.0
2220
+ * @since 0.1.0
2038
2221
  * @category Lang
2039
- * @param {*} value The value to recursively clone.
2040
- * @returns {*} Returns the deep cloned value.
2041
- * @see _.clone
2222
+ * @param {*} value The value to check.
2223
+ * @returns {boolean} Returns `true` if `value` is empty, else `false`.
2042
2224
  * @example
2043
2225
  *
2044
- * var objects = [{ 'a': 1 }, { 'b': 2 }];
2226
+ * _.isEmpty(null);
2227
+ * // => true
2045
2228
  *
2046
- * var deep = _.cloneDeep(objects);
2047
- * console.log(deep[0] === objects[0]);
2229
+ * _.isEmpty(true);
2230
+ * // => true
2231
+ *
2232
+ * _.isEmpty(1);
2233
+ * // => true
2234
+ *
2235
+ * _.isEmpty([1, 2, 3]);
2236
+ * // => false
2237
+ *
2238
+ * _.isEmpty({ 'a': 1 });
2048
2239
  * // => false
2049
2240
  */
2050
- function cloneDeep(value) {
2051
- return baseClone(value, CLONE_DEEP_FLAG | CLONE_SYMBOLS_FLAG);
2241
+ function isEmpty(value) {
2242
+ if (value == null) return true;
2243
+ if (isArrayLike(value) && (isArray(value) || typeof value == "string" || typeof value.splice == "function" || isBuffer(value) || isTypedArray(value) || isArguments(value))) return !value.length;
2244
+ var tag = _getTag_default(value);
2245
+ if (tag == mapTag$1 || tag == setTag$1) return !value.size;
2246
+ if (isPrototype(value)) return !baseKeys(value).length;
2247
+ for (var key in value) if (hasOwnProperty$2.call(value, key)) return false;
2248
+ return true;
2052
2249
  }
2053
2250
  //#endregion
2054
2251
  //#region node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/_setCacheAdd.js
@@ -2216,7 +2413,7 @@
2216
2413
  /** Used to compose bitmasks for value comparisons. */
2217
2414
  var COMPARE_PARTIAL_FLAG$2 = 1, COMPARE_UNORDERED_FLAG = 2;
2218
2415
  /** `Object#toString` result references. */
2219
- var boolTag = "[object Boolean]", dateTag = "[object Date]", errorTag = "[object Error]", mapTag$1 = "[object Map]", numberTag = "[object Number]", regexpTag = "[object RegExp]", setTag$1 = "[object Set]", stringTag = "[object String]", symbolTag = "[object Symbol]";
2416
+ var boolTag = "[object Boolean]", dateTag = "[object Date]", errorTag = "[object Error]", mapTag = "[object Map]", numberTag = "[object Number]", regexpTag = "[object RegExp]", setTag = "[object Set]", stringTag = "[object String]", symbolTag = "[object Symbol]";
2220
2417
  var arrayBufferTag = "[object ArrayBuffer]", dataViewTag = "[object DataView]";
2221
2418
  /** Used to convert symbols to primitives and strings. */
2222
2419
  var symbolProto = Symbol$1 ? Symbol$1.prototype : void 0, symbolValueOf = symbolProto ? symbolProto.valueOf : void 0;
@@ -2252,8 +2449,8 @@
2252
2449
  case errorTag: return object.name == other.name && object.message == other.message;
2253
2450
  case regexpTag:
2254
2451
  case stringTag: return object == other + "";
2255
- case mapTag$1: var convert = mapToArray;
2256
- case setTag$1:
2452
+ case mapTag: var convert = mapToArray;
2453
+ case setTag:
2257
2454
  var isPartial = bitmask & COMPARE_PARTIAL_FLAG$2;
2258
2455
  convert || (convert = setToArray);
2259
2456
  if (object.size != other.size && !isPartial) return false;
@@ -2273,7 +2470,7 @@
2273
2470
  /** Used to compose bitmasks for value comparisons. */
2274
2471
  var COMPARE_PARTIAL_FLAG$1 = 1;
2275
2472
  /** Used to check objects for own properties. */
2276
- var hasOwnProperty$2 = Object.prototype.hasOwnProperty;
2473
+ var hasOwnProperty$1 = Object.prototype.hasOwnProperty;
2277
2474
  /**
2278
2475
  * A specialized version of `baseIsEqualDeep` for objects with support for
2279
2476
  * partial deep comparisons.
@@ -2293,7 +2490,7 @@
2293
2490
  var index = objLength;
2294
2491
  while (index--) {
2295
2492
  var key = objProps[index];
2296
- if (!(isPartial ? key in other : hasOwnProperty$2.call(other, key))) return false;
2493
+ if (!(isPartial ? key in other : hasOwnProperty$1.call(other, key))) return false;
2297
2494
  }
2298
2495
  var objStacked = stack.get(object);
2299
2496
  var othStacked = stack.get(other);
@@ -2327,7 +2524,7 @@
2327
2524
  /** `Object#toString` result references. */
2328
2525
  var argsTag = "[object Arguments]", arrayTag = "[object Array]", objectTag = "[object Object]";
2329
2526
  /** Used to check objects for own properties. */
2330
- var hasOwnProperty$1 = Object.prototype.hasOwnProperty;
2527
+ var hasOwnProperty = Object.prototype.hasOwnProperty;
2331
2528
  /**
2332
2529
  * A specialized version of `baseIsEqual` for arrays and objects which performs
2333
2530
  * deep comparisons and tracks traversed objects enabling objects with circular
@@ -2357,7 +2554,7 @@
2357
2554
  return objIsArr || isTypedArray(object) ? equalArrays(object, other, bitmask, customizer, equalFunc, stack) : equalByTag(object, other, objTag, bitmask, customizer, equalFunc, stack);
2358
2555
  }
2359
2556
  if (!(bitmask & COMPARE_PARTIAL_FLAG)) {
2360
- var objIsWrapped = objIsObj && hasOwnProperty$1.call(object, "__wrapped__"), othIsWrapped = othIsObj && hasOwnProperty$1.call(other, "__wrapped__");
2557
+ var objIsWrapped = objIsObj && hasOwnProperty.call(object, "__wrapped__"), othIsWrapped = othIsObj && hasOwnProperty.call(other, "__wrapped__");
2361
2558
  if (objIsWrapped || othIsWrapped) {
2362
2559
  var objUnwrapped = objIsWrapped ? object.value() : object, othUnwrapped = othIsWrapped ? other.value() : other;
2363
2560
  stack || (stack = new Stack());
@@ -2366,225 +2563,28 @@
2366
2563
  }
2367
2564
  if (!isSameTag) return false;
2368
2565
  stack || (stack = new Stack());
2369
- return equalObjects(object, other, bitmask, customizer, equalFunc, stack);
2370
- }
2371
- //#endregion
2372
- //#region node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/_baseIsEqual.js
2373
- /**
2374
- * The base implementation of `_.isEqual` which supports partial comparisons
2375
- * and tracks traversed objects.
2376
- *
2377
- * @private
2378
- * @param {*} value The value to compare.
2379
- * @param {*} other The other value to compare.
2380
- * @param {boolean} bitmask The bitmask flags.
2381
- * 1 - Unordered comparison
2382
- * 2 - Partial comparison
2383
- * @param {Function} [customizer] The function to customize comparisons.
2384
- * @param {Object} [stack] Tracks traversed `value` and `other` objects.
2385
- * @returns {boolean} Returns `true` if the values are equivalent, else `false`.
2386
- */
2387
- function baseIsEqual(value, other, bitmask, customizer, stack) {
2388
- if (value === other) return true;
2389
- if (value == null || other == null || !isObjectLike(value) && !isObjectLike(other)) return value !== value && other !== other;
2390
- return baseIsEqualDeep(value, other, bitmask, customizer, baseIsEqual, stack);
2391
- }
2392
- //#endregion
2393
- //#region node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/now.js
2394
- /**
2395
- * Gets the timestamp of the number of milliseconds that have elapsed since
2396
- * the Unix epoch (1 January 1970 00:00:00 UTC).
2397
- *
2398
- * @static
2399
- * @memberOf _
2400
- * @since 2.4.0
2401
- * @category Date
2402
- * @returns {number} Returns the timestamp.
2403
- * @example
2404
- *
2405
- * _.defer(function(stamp) {
2406
- * console.log(_.now() - stamp);
2407
- * }, _.now());
2408
- * // => Logs the number of milliseconds it took for the deferred invocation.
2409
- */
2410
- var now = function() {
2411
- return root.Date.now();
2412
- };
2413
- //#endregion
2414
- //#region node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/debounce.js
2415
- /** Error message constants. */
2416
- var FUNC_ERROR_TEXT = "Expected a function";
2417
- var nativeMax = Math.max, nativeMin = Math.min;
2418
- /**
2419
- * Creates a debounced function that delays invoking `func` until after `wait`
2420
- * milliseconds have elapsed since the last time the debounced function was
2421
- * invoked. The debounced function comes with a `cancel` method to cancel
2422
- * delayed `func` invocations and a `flush` method to immediately invoke them.
2423
- * Provide `options` to indicate whether `func` should be invoked on the
2424
- * leading and/or trailing edge of the `wait` timeout. The `func` is invoked
2425
- * with the last arguments provided to the debounced function. Subsequent
2426
- * calls to the debounced function return the result of the last `func`
2427
- * invocation.
2428
- *
2429
- * **Note:** If `leading` and `trailing` options are `true`, `func` is
2430
- * invoked on the trailing edge of the timeout only if the debounced function
2431
- * is invoked more than once during the `wait` timeout.
2432
- *
2433
- * If `wait` is `0` and `leading` is `false`, `func` invocation is deferred
2434
- * until to the next tick, similar to `setTimeout` with a timeout of `0`.
2435
- *
2436
- * See [David Corbacho's article](https://css-tricks.com/debouncing-throttling-explained-examples/)
2437
- * for details over the differences between `_.debounce` and `_.throttle`.
2438
- *
2439
- * @static
2440
- * @memberOf _
2441
- * @since 0.1.0
2442
- * @category Function
2443
- * @param {Function} func The function to debounce.
2444
- * @param {number} [wait=0] The number of milliseconds to delay.
2445
- * @param {Object} [options={}] The options object.
2446
- * @param {boolean} [options.leading=false]
2447
- * Specify invoking on the leading edge of the timeout.
2448
- * @param {number} [options.maxWait]
2449
- * The maximum time `func` is allowed to be delayed before it's invoked.
2450
- * @param {boolean} [options.trailing=true]
2451
- * Specify invoking on the trailing edge of the timeout.
2452
- * @returns {Function} Returns the new debounced function.
2453
- * @example
2454
- *
2455
- * // Avoid costly calculations while the window size is in flux.
2456
- * jQuery(window).on('resize', _.debounce(calculateLayout, 150));
2457
- *
2458
- * // Invoke `sendMail` when clicked, debouncing subsequent calls.
2459
- * jQuery(element).on('click', _.debounce(sendMail, 300, {
2460
- * 'leading': true,
2461
- * 'trailing': false
2462
- * }));
2463
- *
2464
- * // Ensure `batchLog` is invoked once after 1 second of debounced calls.
2465
- * var debounced = _.debounce(batchLog, 250, { 'maxWait': 1000 });
2466
- * var source = new EventSource('/stream');
2467
- * jQuery(source).on('message', debounced);
2468
- *
2469
- * // Cancel the trailing debounced invocation.
2470
- * jQuery(window).on('popstate', debounced.cancel);
2471
- */
2472
- function debounce(func, wait, options) {
2473
- var lastArgs, lastThis, maxWait, result, timerId, lastCallTime, lastInvokeTime = 0, leading = false, maxing = false, trailing = true;
2474
- if (typeof func != "function") throw new TypeError(FUNC_ERROR_TEXT);
2475
- wait = toNumber(wait) || 0;
2476
- if (isObject(options)) {
2477
- leading = !!options.leading;
2478
- maxing = "maxWait" in options;
2479
- maxWait = maxing ? nativeMax(toNumber(options.maxWait) || 0, wait) : maxWait;
2480
- trailing = "trailing" in options ? !!options.trailing : trailing;
2481
- }
2482
- function invokeFunc(time) {
2483
- var args = lastArgs, thisArg = lastThis;
2484
- lastArgs = lastThis = void 0;
2485
- lastInvokeTime = time;
2486
- result = func.apply(thisArg, args);
2487
- return result;
2488
- }
2489
- function leadingEdge(time) {
2490
- lastInvokeTime = time;
2491
- timerId = setTimeout(timerExpired, wait);
2492
- return leading ? invokeFunc(time) : result;
2493
- }
2494
- function remainingWait(time) {
2495
- var timeSinceLastCall = time - lastCallTime, timeSinceLastInvoke = time - lastInvokeTime, timeWaiting = wait - timeSinceLastCall;
2496
- return maxing ? nativeMin(timeWaiting, maxWait - timeSinceLastInvoke) : timeWaiting;
2497
- }
2498
- function shouldInvoke(time) {
2499
- var timeSinceLastCall = time - lastCallTime, timeSinceLastInvoke = time - lastInvokeTime;
2500
- return lastCallTime === void 0 || timeSinceLastCall >= wait || timeSinceLastCall < 0 || maxing && timeSinceLastInvoke >= maxWait;
2501
- }
2502
- function timerExpired() {
2503
- var time = now();
2504
- if (shouldInvoke(time)) return trailingEdge(time);
2505
- timerId = setTimeout(timerExpired, remainingWait(time));
2506
- }
2507
- function trailingEdge(time) {
2508
- timerId = void 0;
2509
- if (trailing && lastArgs) return invokeFunc(time);
2510
- lastArgs = lastThis = void 0;
2511
- return result;
2512
- }
2513
- function cancel() {
2514
- if (timerId !== void 0) clearTimeout(timerId);
2515
- lastInvokeTime = 0;
2516
- lastArgs = lastCallTime = lastThis = timerId = void 0;
2517
- }
2518
- function flush() {
2519
- return timerId === void 0 ? result : trailingEdge(now());
2520
- }
2521
- function debounced() {
2522
- var time = now(), isInvoking = shouldInvoke(time);
2523
- lastArgs = arguments;
2524
- lastThis = this;
2525
- lastCallTime = time;
2526
- if (isInvoking) {
2527
- if (timerId === void 0) return leadingEdge(lastCallTime);
2528
- if (maxing) {
2529
- clearTimeout(timerId);
2530
- timerId = setTimeout(timerExpired, wait);
2531
- return invokeFunc(lastCallTime);
2532
- }
2533
- }
2534
- if (timerId === void 0) timerId = setTimeout(timerExpired, wait);
2535
- return result;
2536
- }
2537
- debounced.cancel = cancel;
2538
- debounced.flush = flush;
2539
- return debounced;
2566
+ return equalObjects(object, other, bitmask, customizer, equalFunc, stack);
2540
2567
  }
2541
2568
  //#endregion
2542
- //#region node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/isEmpty.js
2543
- /** `Object#toString` result references. */
2544
- var mapTag = "[object Map]", setTag = "[object Set]";
2545
- /** Used to check objects for own properties. */
2546
- var hasOwnProperty = Object.prototype.hasOwnProperty;
2569
+ //#region node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/_baseIsEqual.js
2547
2570
  /**
2548
- * Checks if `value` is an empty object, collection, map, or set.
2549
- *
2550
- * Objects are considered empty if they have no own enumerable string keyed
2551
- * properties.
2552
- *
2553
- * Array-like values such as `arguments` objects, arrays, buffers, strings, or
2554
- * jQuery-like collections are considered empty if they have a `length` of `0`.
2555
- * Similarly, maps and sets are considered empty if they have a `size` of `0`.
2556
- *
2557
- * @static
2558
- * @memberOf _
2559
- * @since 0.1.0
2560
- * @category Lang
2561
- * @param {*} value The value to check.
2562
- * @returns {boolean} Returns `true` if `value` is empty, else `false`.
2563
- * @example
2564
- *
2565
- * _.isEmpty(null);
2566
- * // => true
2567
- *
2568
- * _.isEmpty(true);
2569
- * // => true
2570
- *
2571
- * _.isEmpty(1);
2572
- * // => true
2573
- *
2574
- * _.isEmpty([1, 2, 3]);
2575
- * // => false
2571
+ * The base implementation of `_.isEqual` which supports partial comparisons
2572
+ * and tracks traversed objects.
2576
2573
  *
2577
- * _.isEmpty({ 'a': 1 });
2578
- * // => false
2574
+ * @private
2575
+ * @param {*} value The value to compare.
2576
+ * @param {*} other The other value to compare.
2577
+ * @param {boolean} bitmask The bitmask flags.
2578
+ * 1 - Unordered comparison
2579
+ * 2 - Partial comparison
2580
+ * @param {Function} [customizer] The function to customize comparisons.
2581
+ * @param {Object} [stack] Tracks traversed `value` and `other` objects.
2582
+ * @returns {boolean} Returns `true` if the values are equivalent, else `false`.
2579
2583
  */
2580
- function isEmpty(value) {
2581
- if (value == null) return true;
2582
- if (isArrayLike(value) && (isArray(value) || typeof value == "string" || typeof value.splice == "function" || isBuffer(value) || isTypedArray(value) || isArguments(value))) return !value.length;
2583
- var tag = _getTag_default(value);
2584
- if (tag == mapTag || tag == setTag) return !value.size;
2585
- if (isPrototype(value)) return !baseKeys(value).length;
2586
- for (var key in value) if (hasOwnProperty.call(value, key)) return false;
2587
- return true;
2584
+ function baseIsEqual(value, other, bitmask, customizer, stack) {
2585
+ if (value === other) return true;
2586
+ if (value == null || other == null || !isObjectLike(value) && !isObjectLike(other)) return value !== value && other !== other;
2587
+ return baseIsEqualDeep(value, other, bitmask, customizer, baseIsEqual, stack);
2588
2588
  }
2589
2589
  //#endregion
2590
2590
  //#region node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/isEqual.js
@@ -2667,7 +2667,7 @@
2667
2667
  var deleteField = (tagName) => fieldRegistry.delete(tagName);
2668
2668
  //#endregion
2669
2669
  //#region packages/form/src/utils/form.ts
2670
- var TABLE_SELECT_TYPES = new Set(["table-select", "tableSelect"]);
2670
+ var TABLE_SELECT_TYPES = /* @__PURE__ */ new Set(["table-select", "tableSelect"]);
2671
2671
  var isTableSelect = (type) => typeof type === "string" && TABLE_SELECT_TYPES.has(type);
2672
2672
  var asyncLoadConfig = (value, initValue, { asyncLoad, name, type }) => {
2673
2673
  if (type === "html" && typeof asyncLoad === "object" && typeof name !== "undefined") {
@@ -2675,7 +2675,7 @@
2675
2675
  value.asyncLoad = typeof initValue.asyncLoad === "object" ? initValue.asyncLoad : asyncLoad;
2676
2676
  }
2677
2677
  };
2678
- var MULTIPLE_VALUE_TYPES = new Set([
2678
+ var MULTIPLE_VALUE_TYPES = /* @__PURE__ */ new Set([
2679
2679
  "checkbox-group",
2680
2680
  "checkboxGroup",
2681
2681
  "table",
@@ -2843,9 +2843,9 @@
2843
2843
  "align-items": "center"
2844
2844
  }
2845
2845
  };
2846
- var _hoisted_2$8 = ["innerHTML", "title"];
2847
- var _hoisted_3$7 = ["innerHTML"];
2848
- var _hoisted_4$5 = ["innerHTML", "title"];
2846
+ var _hoisted_2$9 = ["innerHTML", "title"];
2847
+ var _hoisted_3$8 = ["innerHTML"];
2848
+ var _hoisted_4$7 = ["innerHTML", "title"];
2849
2849
  //#endregion
2850
2850
  //#region packages/form/src/containers/FormLabel.vue
2851
2851
  var FormLabel_default = /* @__PURE__ */ (0, vue.defineComponent)({
@@ -2862,11 +2862,11 @@
2862
2862
  return __props.tip ? ((0, vue.openBlock)(), (0, vue.createElementBlock)("span", _hoisted_1$15, [(0, vue.createElementVNode)("span", {
2863
2863
  innerHTML: __props.type === "checkbox" && !__props.useLabel ? "" : __props.text,
2864
2864
  title: __props.labelTitle
2865
- }, null, 8, _hoisted_2$8), __props.tip && (__props.type !== "checkbox" || __props.useLabel) ? ((0, vue.openBlock)(), (0, vue.createBlock)((0, vue.unref)(_tmagic_design.TMagicTooltip), {
2865
+ }, null, 8, _hoisted_2$9), __props.tip && (__props.type !== "checkbox" || __props.useLabel) ? ((0, vue.openBlock)(), (0, vue.createBlock)((0, vue.unref)(_tmagic_design.TMagicTooltip), {
2866
2866
  key: 0,
2867
2867
  placement: "top"
2868
2868
  }, {
2869
- content: (0, vue.withCtx)(() => [(0, vue.createElementVNode)("div", { innerHTML: __props.tip }, null, 8, _hoisted_3$7)]),
2869
+ content: (0, vue.withCtx)(() => [(0, vue.createElementVNode)("div", { innerHTML: __props.tip }, null, 8, _hoisted_3$8)]),
2870
2870
  default: (0, vue.withCtx)(() => [(0, vue.createVNode)((0, vue.unref)(_tmagic_design.TMagicIcon), { style: {
2871
2871
  "margin-left": "5px",
2872
2872
  "display": "flex"
@@ -2879,23 +2879,27 @@
2879
2879
  key: 1,
2880
2880
  innerHTML: __props.type === "checkbox" && !__props.useLabel ? "" : __props.text,
2881
2881
  title: __props.labelTitle
2882
- }, null, 8, _hoisted_4$5));
2882
+ }, null, 8, _hoisted_4$7));
2883
2883
  };
2884
2884
  }
2885
2885
  });
2886
2886
  //#endregion
2887
2887
  //#region packages/form/src/containers/Container.vue?vue&type=script&setup=true&lang.ts
2888
2888
  var _hoisted_1$14 = ["data-tmagic-id", "data-tmagic-form-item-prop"];
2889
- var _hoisted_2$7 = ["innerHTML"];
2890
- var _hoisted_3$6 = ["innerHTML"];
2891
- var _hoisted_4$4 = ["innerHTML"];
2892
- var _hoisted_5$3 = ["innerHTML"];
2893
- var _hoisted_6$1 = ["innerHTML"];
2894
- var _hoisted_7$1 = ["innerHTML"];
2895
- var _hoisted_8$1 = ["innerHTML"];
2896
- var _hoisted_9 = {
2889
+ var _hoisted_2$8 = {
2890
+ key: 0,
2891
+ class: "m-form-tip m-form-title-extra"
2892
+ };
2893
+ var _hoisted_3$7 = ["innerHTML"];
2894
+ var _hoisted_4$6 = ["innerHTML"];
2895
+ var _hoisted_5$4 = ["innerHTML"];
2896
+ var _hoisted_6$2 = ["innerHTML"];
2897
+ var _hoisted_7$2 = ["innerHTML"];
2898
+ var _hoisted_8$2 = ["innerHTML"];
2899
+ var _hoisted_9 = ["innerHTML"];
2900
+ var _hoisted_10 = {
2897
2901
  key: 5,
2898
- style: { "text-align": "center" }
2902
+ class: "m-form-container-expand"
2899
2903
  };
2900
2904
  //#endregion
2901
2905
  //#region packages/form/src/containers/Container.vue
@@ -2985,7 +2989,7 @@
2985
2989
  const effectiveSelfDiffFieldTypes = (0, vue.computed)(() => {
2986
2990
  const custom = diffConfig.selfDiffFieldTypes;
2987
2991
  if (typeof custom === "function") return new Set(custom([...DEFAULT_SELF_DIFF_FIELD_TYPES]));
2988
- if (Array.isArray(custom)) return new Set([...DEFAULT_SELF_DIFF_FIELD_TYPES, ...custom]);
2992
+ if (Array.isArray(custom)) return /* @__PURE__ */ new Set([...DEFAULT_SELF_DIFF_FIELD_TYPES, ...custom]);
2989
2993
  return new Set(DEFAULT_SELF_DIFF_FIELD_TYPES);
2990
2994
  });
2991
2995
  const isSelfDiffField = (0, vue.computed)(() => effectiveSelfDiffFieldTypes.value.has(type.value));
@@ -3175,12 +3179,12 @@
3175
3179
  "use-label",
3176
3180
  "label-title",
3177
3181
  "text"
3178
- ])])]),
3182
+ ]), __props.config.titleExtra && __props.config.labelPosition === "top" ? ((0, vue.openBlock)(), (0, vue.createElementBlock)("span", _hoisted_2$8, (0, vue.toDisplayString)(__props.config.titleExtra), 1)) : (0, vue.createCommentVNode)("v-if", true)])]),
3179
3183
  default: (0, vue.withCtx)(() => [tooltip.value.text ? ((0, vue.openBlock)(), (0, vue.createBlock)((0, vue.unref)(_tmagic_design.TMagicTooltip), {
3180
3184
  key: 0,
3181
3185
  placement: tooltip.value.placement
3182
3186
  }, {
3183
- content: (0, vue.withCtx)(() => [(0, vue.createElementVNode)("div", { innerHTML: tooltip.value.text }, null, 8, _hoisted_2$7)]),
3187
+ content: (0, vue.withCtx)(() => [(0, vue.createElementVNode)("div", { innerHTML: tooltip.value.text }, null, 8, _hoisted_3$7)]),
3184
3188
  default: (0, vue.withCtx)(() => [((0, vue.openBlock)(), (0, vue.createBlock)((0, vue.resolveDynamicComponent)(tagName.value), (0, vue.mergeProps)(fieldsProps.value, {
3185
3189
  model: __props.model,
3186
3190
  "last-values": __props.lastValues,
@@ -3209,7 +3213,7 @@
3209
3213
  key: 0,
3210
3214
  placement: "top"
3211
3215
  }, {
3212
- content: (0, vue.withCtx)(() => [(0, vue.createElementVNode)("div", { innerHTML: __props.config.tip }, null, 8, _hoisted_3$6)]),
3216
+ content: (0, vue.withCtx)(() => [(0, vue.createElementVNode)("div", { innerHTML: __props.config.tip }, null, 8, _hoisted_4$6)]),
3213
3217
  default: (0, vue.withCtx)(() => [(0, vue.createVNode)((0, vue.unref)(_tmagic_design.TMagicIcon), { style: {
3214
3218
  "line-height": "40px",
3215
3219
  "margin-left": "5px"
@@ -3248,7 +3252,7 @@
3248
3252
  key: 0,
3249
3253
  placement: tooltip.value.placement
3250
3254
  }, {
3251
- content: (0, vue.withCtx)(() => [(0, vue.createElementVNode)("div", { innerHTML: tooltip.value.text }, null, 8, _hoisted_4$4)]),
3255
+ content: (0, vue.withCtx)(() => [(0, vue.createElementVNode)("div", { innerHTML: tooltip.value.text }, null, 8, _hoisted_5$4)]),
3252
3256
  default: (0, vue.withCtx)(() => [((0, vue.openBlock)(), (0, vue.createBlock)((0, vue.resolveDynamicComponent)(tagName.value), (0, vue.mergeProps)(fieldsProps.value, {
3253
3257
  model: __props.model,
3254
3258
  "last-values": __props.lastValues,
@@ -3301,7 +3305,7 @@
3301
3305
  key: 0,
3302
3306
  placement: tooltip.value.placement
3303
3307
  }, {
3304
- content: (0, vue.withCtx)(() => [(0, vue.createElementVNode)("div", { innerHTML: tooltip.value.text }, null, 8, _hoisted_5$3)]),
3308
+ content: (0, vue.withCtx)(() => [(0, vue.createElementVNode)("div", { innerHTML: tooltip.value.text }, null, 8, _hoisted_6$2)]),
3305
3309
  default: (0, vue.withCtx)(() => [((0, vue.openBlock)(), (0, vue.createBlock)((0, vue.resolveDynamicComponent)(tagName.value), (0, vue.mergeProps)(fieldsProps.value, {
3306
3310
  model: __props.lastValues,
3307
3311
  onChange: onChangeHandler
@@ -3317,7 +3321,7 @@
3317
3321
  key: 0,
3318
3322
  placement: "top"
3319
3323
  }, {
3320
- content: (0, vue.withCtx)(() => [(0, vue.createElementVNode)("div", { innerHTML: __props.config.tip }, null, 8, _hoisted_6$1)]),
3324
+ content: (0, vue.withCtx)(() => [(0, vue.createElementVNode)("div", { innerHTML: __props.config.tip }, null, 8, _hoisted_7$2)]),
3321
3325
  default: (0, vue.withCtx)(() => [(0, vue.createVNode)((0, vue.unref)(_tmagic_design.TMagicIcon), { style: {
3322
3326
  "line-height": "40px",
3323
3327
  "margin-left": "5px"
@@ -3358,7 +3362,7 @@
3358
3362
  key: 0,
3359
3363
  placement: tooltip.value.placement
3360
3364
  }, {
3361
- content: (0, vue.withCtx)(() => [(0, vue.createElementVNode)("div", { innerHTML: tooltip.value.text }, null, 8, _hoisted_7$1)]),
3365
+ content: (0, vue.withCtx)(() => [(0, vue.createElementVNode)("div", { innerHTML: tooltip.value.text }, null, 8, _hoisted_8$2)]),
3362
3366
  default: (0, vue.withCtx)(() => [((0, vue.openBlock)(), (0, vue.createBlock)((0, vue.resolveDynamicComponent)(tagName.value), (0, vue.mergeProps)(fieldsProps.value, {
3363
3367
  model: __props.model,
3364
3368
  onChange: onChangeHandler
@@ -3374,7 +3378,7 @@
3374
3378
  key: 1,
3375
3379
  placement: "top"
3376
3380
  }, {
3377
- content: (0, vue.withCtx)(() => [(0, vue.createElementVNode)("div", { innerHTML: __props.config.tip }, null, 8, _hoisted_8$1)]),
3381
+ content: (0, vue.withCtx)(() => [(0, vue.createElementVNode)("div", { innerHTML: __props.config.tip }, null, 8, _hoisted_9)]),
3378
3382
  default: (0, vue.withCtx)(() => [(0, vue.createVNode)((0, vue.unref)(_tmagic_design.TMagicIcon), { style: {
3379
3383
  "line-height": "40px",
3380
3384
  "margin-left": "5px"
@@ -3416,16 +3420,17 @@
3416
3420
  "label-width",
3417
3421
  "prop"
3418
3422
  ]);
3419
- }), 128)) : (0, vue.createCommentVNode)("v-if", true)], 64)) : (0, vue.createCommentVNode)("v-if", true), __props.config.expand && type.value !== "fieldset" ? ((0, vue.openBlock)(), (0, vue.createElementBlock)("div", _hoisted_9, [(0, vue.createVNode)((0, vue.unref)(_tmagic_design.TMagicButton), {
3423
+ }), 128)) : (0, vue.createCommentVNode)("v-if", true)], 64)) : (0, vue.createCommentVNode)("v-if", true), __props.config.expand && type.value !== "fieldset" ? ((0, vue.openBlock)(), (0, vue.createElementBlock)("div", _hoisted_10, [(0, vue.createVNode)((0, vue.unref)(_tmagic_design.TMagicButton), {
3420
3424
  type: "primary",
3421
3425
  size: "small",
3422
3426
  disabled: false,
3423
3427
  link: "",
3424
- onClick: expandHandler
3428
+ onClick: expandHandler,
3429
+ icon: expand.value ? (0, vue.unref)(_element_plus_icons_vue.ArrowUp) : (0, vue.unref)(_element_plus_icons_vue.ArrowDown)
3425
3430
  }, {
3426
3431
  default: (0, vue.withCtx)(() => [(0, vue.createTextVNode)((0, vue.toDisplayString)(expand.value ? "收起配置" : "展开更多配置"), 1)]),
3427
3432
  _: 1
3428
- })])) : (0, vue.createCommentVNode)("v-if", true)], 14, _hoisted_1$14);
3433
+ }, 8, ["icon"])])) : (0, vue.createCommentVNode)("v-if", true)], 14, _hoisted_1$14);
3429
3434
  };
3430
3435
  }
3431
3436
  });
@@ -3461,7 +3466,8 @@
3461
3466
  preventSubmitDefault: { type: Boolean },
3462
3467
  extendState: {},
3463
3468
  showDiff: {},
3464
- selfDiffFieldTypes: {}
3469
+ selfDiffFieldTypes: {},
3470
+ theme: {}
3465
3471
  },
3466
3472
  emits: [
3467
3473
  "change",
@@ -3480,6 +3486,25 @@
3480
3486
  const fields = /* @__PURE__ */ new Map();
3481
3487
  const requestFuc = getConfig("request");
3482
3488
  /**
3489
+ * 当前表单生效的主题名称:
3490
+ * - 优先用本组件自己的 `props.theme`;
3491
+ * - 没设置时回退到最近祖先 `<MEditor>` / `<MForm>` provide 的主题,便于内嵌于编辑器
3492
+ * 时自动跟随外层主题,无需在每个 `MForm` 上重复传 `theme`。
3493
+ *
3494
+ * 同时把合并后的值再 provide 出去(见下方 `provide(M_THEME_KEY, ...)`),让 form 子树
3495
+ * 里再嵌套的 portal 组件(`TMagicPopover` 等)依然能拿到非空主题。
3496
+ */
3497
+ const ancestorTheme = (0, vue.inject)(_tmagic_design.M_THEME_KEY, null);
3498
+ const effectiveTheme = (0, vue.computed)(() => props.theme || ancestorTheme?.value || "");
3499
+ /**
3500
+ * 拼到 `formState.popperClass` 上的主题修饰类(仅 `m-theme--<theme>`,
3501
+ * 不带 `m-form` / `m-editor` 前缀,因为 Element Plus 弹层节点本身既不是 form 也不是 editor)。
3502
+ *
3503
+ * 这条类会随所有读 `mForm.popperClass` 的字段(Select / DateTime / Cascader 等)下发到
3504
+ * Element Plus 的 `popper-class`,让 portal 节点也命中 `m-theme--<theme>` 上的 CSS 变量。
3505
+ */
3506
+ const themeClass = (0, vue.computed)(() => effectiveTheme.value ? `m-theme--${effectiveTheme.value}` : "");
3507
+ /**
3483
3508
  * formState 实现说明:
3484
3509
  *
3485
3510
  * 1. 与 props 直接对应的字段(config / initValues / lastValues / isCompare / parentValues /
@@ -3495,13 +3520,21 @@
3495
3520
  * 把最新值刷进 formState。
3496
3521
  * - accessor 描述符(`{ get stage() { return ... } }`)按原样写入,调用方可以控制
3497
3522
  * 读时求值,每次读取都会重新执行 getter。
3523
+ *
3524
+ * 4. `popperClass` 会自动拼接 `themeClass`:调用方传入的 `popperClass` + 当前主题
3525
+ * 修饰类(含祖先 `<MEditor>` provide 的主题)。这样所有透传到 Element Plus 弹层
3526
+ * `popper-class` 的字段(Select / DateTime / Cascader 等)能自带主题作用域。
3498
3527
  */
3499
3528
  const formState = (0, vue.reactive)({
3500
3529
  get keyProp() {
3501
3530
  return props.keyProp;
3502
3531
  },
3503
3532
  get popperClass() {
3504
- return props.popperClass;
3533
+ const userClass = props.popperClass ?? "";
3534
+ const tc = themeClass.value;
3535
+ if (!userClass) return tc;
3536
+ if (!tc) return userClass;
3537
+ return `${userClass} ${tc}`;
3505
3538
  },
3506
3539
  get config() {
3507
3540
  return props.config;
@@ -3577,6 +3610,12 @@
3577
3610
  }
3578
3611
  });
3579
3612
  (0, vue.provide)("mForm", formState);
3613
+ /**
3614
+ * 把生效主题(自身或祖先)再 provide 出去,供 form 子树内含 `Teleport` 的组件
3615
+ * (如 `TMagicPopover`)在传送目标上挂 `m-theme--<theme>` 类。
3616
+ * 详见 `@tmagic/design/theme.ts`。
3617
+ */
3618
+ (0, vue.provide)(_tmagic_design.M_THEME_KEY, effectiveTheme);
3580
3619
  (0, vue.provide)(FORM_DIFF_CONFIG_KEY, {
3581
3620
  get showDiff() {
3582
3621
  return props.showDiff;
@@ -3680,7 +3719,11 @@
3680
3719
  });
3681
3720
  return (_ctx, _cache) => {
3682
3721
  return (0, vue.openBlock)(), (0, vue.createBlock)((0, vue.unref)(_tmagic_design.TMagicForm), {
3683
- class: "m-form",
3722
+ class: (0, vue.normalizeClass)([
3723
+ "m-form",
3724
+ effectiveTheme.value ? `m-form--${effectiveTheme.value}` : "",
3725
+ effectiveTheme.value ? `m-theme--${effectiveTheme.value}` : ""
3726
+ ]),
3684
3727
  ref: "tMagicForm",
3685
3728
  model: values.value,
3686
3729
  "label-width": __props.labelWidth,
@@ -3718,6 +3761,7 @@
3718
3761
  }), 128)) : (0, vue.createCommentVNode)("v-if", true)]),
3719
3762
  _: 3
3720
3763
  }, 8, [
3764
+ "class",
3721
3765
  "model",
3722
3766
  "label-width",
3723
3767
  "style",
@@ -3866,7 +3910,8 @@
3866
3910
  type: Boolean,
3867
3911
  default: true
3868
3912
  },
3869
- extendState: {}
3913
+ extendState: {},
3914
+ theme: {}
3870
3915
  },
3871
3916
  emits: [
3872
3917
  "close",
@@ -3876,6 +3921,9 @@
3876
3921
  ],
3877
3922
  setup(__props, { expose: __expose, emit: __emit }) {
3878
3923
  const props = __props;
3924
+ const ancestorTheme = (0, vue.inject)(_tmagic_design.M_THEME_KEY, null);
3925
+ const effectiveTheme = (0, vue.computed)(() => props.theme || ancestorTheme?.value || "");
3926
+ (0, vue.provide)(_tmagic_design.M_THEME_KEY, effectiveTheme);
3879
3927
  const emit = __emit;
3880
3928
  const form = (0, vue.ref)();
3881
3929
  const dialogVisible = (0, vue.ref)(false);
@@ -3935,7 +3983,7 @@
3935
3983
  return (0, vue.openBlock)(), (0, vue.createBlock)((0, vue.unref)(_tmagic_design.TMagicDialog), {
3936
3984
  modelValue: dialogVisible.value,
3937
3985
  "onUpdate:modelValue": _cache[1] || (_cache[1] = ($event) => dialogVisible.value = $event),
3938
- class: "m-form-dialog",
3986
+ class: (0, vue.normalizeClass)(["m-form-dialog", effectiveTheme.value ? `m-theme--${effectiveTheme.value}` : ""]),
3939
3987
  top: "20px",
3940
3988
  "append-to-body": "",
3941
3989
  title: __props.title,
@@ -4017,6 +4065,7 @@
4017
4065
  inline: __props.inline,
4018
4066
  "prevent-submit-default": __props.preventSubmitDefault,
4019
4067
  "extend-state": __props.extendState,
4068
+ theme: effectiveTheme.value,
4020
4069
  onChange: changeHandler
4021
4070
  }, null, 8, [
4022
4071
  "modelValue",
@@ -4029,11 +4078,13 @@
4029
4078
  "label-position",
4030
4079
  "inline",
4031
4080
  "prevent-submit-default",
4032
- "extend-state"
4081
+ "extend-state",
4082
+ "theme"
4033
4083
  ]), (0, vue.renderSlot)(_ctx.$slots, "default")], 4)) : (0, vue.createCommentVNode)("v-if", true)]),
4034
4084
  _: 3
4035
4085
  }, 8, [
4036
4086
  "modelValue",
4087
+ "class",
4037
4088
  "title",
4038
4089
  "width",
4039
4090
  "zIndex",
@@ -4052,7 +4103,7 @@
4052
4103
  //#endregion
4053
4104
  //#region packages/form/src/FormDrawer.vue
4054
4105
  var FormDrawer_default = /* @__PURE__ */ (0, vue.defineComponent)({
4055
- name: "MFormDialog",
4106
+ name: "MFormDrawer",
4056
4107
  __name: "FormDrawer",
4057
4108
  props: {
4058
4109
  config: { default: () => [] },
@@ -4073,7 +4124,8 @@
4073
4124
  labelPosition: {},
4074
4125
  preventSubmitDefault: { type: Boolean },
4075
4126
  beforeClose: {},
4076
- extendState: {}
4127
+ extendState: {},
4128
+ theme: {}
4077
4129
  },
4078
4130
  emits: [
4079
4131
  "close",
@@ -4085,11 +4137,15 @@
4085
4137
  "opened"
4086
4138
  ],
4087
4139
  setup(__props, { expose: __expose, emit: __emit }) {
4140
+ const props = __props;
4141
+ const ancestorTheme = (0, vue.inject)(_tmagic_design.M_THEME_KEY, null);
4142
+ const effectiveTheme = (0, vue.computed)(() => props.theme || ancestorTheme?.value || "");
4143
+ (0, vue.provide)(_tmagic_design.M_THEME_KEY, effectiveTheme);
4088
4144
  const emit = __emit;
4089
4145
  const drawer = (0, vue.ref)();
4090
4146
  const form = (0, vue.ref)();
4091
4147
  const drawerBody = (0, vue.ref)();
4092
- const visible = (0, vue.ref)(false);
4148
+ const dialogVisible = (0, vue.ref)(false);
4093
4149
  const saveFetch = (0, vue.ref)(false);
4094
4150
  const bodyHeight = (0, vue.ref)(0);
4095
4151
  (0, vue.watchEffect)(() => {
@@ -4119,30 +4175,47 @@
4119
4175
  emit("closed");
4120
4176
  };
4121
4177
  const show = () => {
4122
- visible.value = true;
4178
+ dialogVisible.value = true;
4123
4179
  };
4124
4180
  const hide = () => {
4125
- visible.value = false;
4181
+ dialogVisible.value = false;
4182
+ };
4183
+ const close = () => {
4184
+ dialogVisible.value = false;
4185
+ };
4186
+ const cancel = () => {
4187
+ hide();
4126
4188
  };
4127
4189
  /** 用于关闭 Drawer, 该方法会调用传入的 before-close 方法 */
4128
4190
  const handleClose = () => {
4129
4191
  drawer.value?.handleClose();
4130
4192
  };
4193
+ const save = async () => {
4194
+ try {
4195
+ const changeRecords = [...form.value?.changeRecords || []];
4196
+ emit("submit", await form.value?.submitForm(), { changeRecords });
4197
+ } catch (e) {
4198
+ emit("error", e);
4199
+ }
4200
+ };
4131
4201
  __expose({
4132
4202
  form,
4133
4203
  saveFetch,
4134
4204
  bodyHeight,
4205
+ close,
4135
4206
  show,
4136
4207
  hide,
4208
+ save,
4209
+ cancel,
4137
4210
  handleClose
4138
4211
  });
4139
4212
  return (_ctx, _cache) => {
4140
4213
  return (0, vue.openBlock)(), (0, vue.createBlock)((0, vue.unref)(_tmagic_design.TMagicDrawer), {
4141
- class: "m-form-drawer",
4214
+ class: (0, vue.normalizeClass)(["m-form-drawer", effectiveTheme.value ? `m-theme--${effectiveTheme.value}` : ""]),
4142
4215
  ref_key: "drawer",
4143
4216
  ref: drawer,
4144
- modelValue: visible.value,
4145
- "onUpdate:modelValue": _cache[0] || (_cache[0] = ($event) => visible.value = $event),
4217
+ modelValue: dialogVisible.value,
4218
+ "onUpdate:modelValue": _cache[0] || (_cache[0] = ($event) => dialogVisible.value = $event),
4146
4219
  title: __props.title,
4147
4220
  "close-on-press-escape": __props.closeOnPressEscape,
4148
4221
  "append-to-body": true,
@@ -4180,7 +4253,7 @@
4180
4253
  })]),
4181
4254
  _: 3
4182
4255
  })]),
4183
- default: (0, vue.withCtx)(() => [visible.value ? ((0, vue.openBlock)(), (0, vue.createElementBlock)("div", {
4256
+ default: (0, vue.withCtx)(() => [dialogVisible.value ? ((0, vue.openBlock)(), (0, vue.createElementBlock)("div", {
4184
4257
  key: 0,
4185
4258
  ref_key: "drawerBody",
4186
4259
  ref: drawerBody,
@@ -4198,6 +4271,7 @@
4198
4271
  inline: __props.inline,
4199
4272
  "prevent-submit-default": __props.preventSubmitDefault,
4200
4273
  "extend-state": __props.extendState,
4274
+ theme: effectiveTheme.value,
4201
4275
  onChange: changeHandler
4202
4276
  }, null, 8, [
4203
4277
  "size",
@@ -4209,10 +4283,12 @@
4209
4283
  "label-position",
4210
4284
  "inline",
4211
4285
  "prevent-submit-default",
4212
- "extend-state"
4286
+ "extend-state",
4287
+ "theme"
4213
4288
  ]), (0, vue.renderSlot)(_ctx.$slots, "default")], 512)) : (0, vue.createCommentVNode)("v-if", true)]),
4214
4289
  _: 3
4215
4290
  }, 8, [
4291
+ "class",
4216
4292
  "modelValue",
4217
4293
  "title",
4218
4294
  "close-on-press-escape",
@@ -4344,16 +4420,16 @@
4344
4420
  //#endregion
4345
4421
  //#region packages/form/src/containers/Fieldset.vue?vue&type=script&setup=true&lang.ts
4346
4422
  var _hoisted_1$11 = ["innerHTML"];
4347
- var _hoisted_2$6 = ["innerHTML"];
4348
- var _hoisted_3$5 = { key: 1 };
4349
- var _hoisted_4$3 = ["innerHTML"];
4350
- var _hoisted_5$2 = ["innerHTML"];
4351
- var _hoisted_6 = {
4423
+ var _hoisted_2$7 = ["innerHTML"];
4424
+ var _hoisted_3$6 = { key: 1 };
4425
+ var _hoisted_4$5 = ["innerHTML"];
4426
+ var _hoisted_5$3 = ["innerHTML"];
4427
+ var _hoisted_6$1 = {
4352
4428
  key: 2,
4353
4429
  style: { "display": "flex" }
4354
4430
  };
4355
- var _hoisted_7 = { style: { "flex": "1" } };
4356
- var _hoisted_8 = ["src"];
4431
+ var _hoisted_7$1 = { style: { "flex": "1" } };
4432
+ var _hoisted_8$1 = ["src"];
4357
4433
  //#endregion
4358
4434
  //#region packages/form/src/containers/Fieldset.vue
4359
4435
  var Fieldset_default = /* @__PURE__ */ (0, vue.defineComponent)({
@@ -4423,7 +4499,7 @@
4423
4499
  key: 0,
4424
4500
  innerHTML: __props.config.extra,
4425
4501
  class: "m-form-tip"
4426
- }, null, 8, _hoisted_2$6)) : (0, vue.createCommentVNode)("v-if", true)]),
4502
+ }, null, 8, _hoisted_2$7)) : (0, vue.createCommentVNode)("v-if", true)]),
4427
4503
  _: 1
4428
4504
  }, 8, [
4429
4505
  "model-value",
@@ -4432,11 +4508,11 @@
4432
4508
  "false-value"
4433
4509
  ])]),
4434
4510
  _: 1
4435
- })) : ((0, vue.openBlock)(), (0, vue.createElementBlock)("legend", _hoisted_3$5, [(0, vue.createElementVNode)("span", { innerHTML: legend.value }, null, 8, _hoisted_4$3), __props.config.extra ? ((0, vue.openBlock)(), (0, vue.createElementBlock)("span", {
4511
+ })) : ((0, vue.openBlock)(), (0, vue.createElementBlock)("legend", _hoisted_3$6, [(0, vue.createElementVNode)("span", { innerHTML: legend.value }, null, 8, _hoisted_4$5), __props.config.extra ? ((0, vue.openBlock)(), (0, vue.createElementBlock)("span", {
4436
4512
  key: 0,
4437
4513
  innerHTML: __props.config.extra,
4438
4514
  class: "m-form-tip"
4439
- }, null, 8, _hoisted_5$2)) : (0, vue.createCommentVNode)("v-if", true)])), __props.config.schematic && show.value ? ((0, vue.openBlock)(), (0, vue.createElementBlock)("div", _hoisted_6, [(0, vue.createElementVNode)("div", _hoisted_7, [((0, vue.openBlock)(true), (0, vue.createElementBlock)(vue.Fragment, null, (0, vue.renderList)(__props.config.items, (item, index) => {
4515
+ }, null, 8, _hoisted_5$3)) : (0, vue.createCommentVNode)("v-if", true)])), __props.config.schematic && show.value ? ((0, vue.openBlock)(), (0, vue.createElementBlock)("div", _hoisted_6$1, [(0, vue.createElementVNode)("div", _hoisted_7$1, [((0, vue.openBlock)(true), (0, vue.createElementBlock)(vue.Fragment, null, (0, vue.renderList)(__props.config.items, (item, index) => {
4440
4516
  return (0, vue.openBlock)(), (0, vue.createBlock)(Container_default, {
4441
4517
  key: key(item, index),
4442
4518
  model: name.value ? __props.model[name.value] : __props.model,
@@ -4464,7 +4540,7 @@
4464
4540
  }), 128))]), (0, vue.createElementVNode)("img", {
4465
4541
  class: "m-form-schematic",
4466
4542
  src: __props.config.schematic
4467
- }, null, 8, _hoisted_8)])) : show.value ? ((0, vue.openBlock)(true), (0, vue.createElementBlock)(vue.Fragment, { key: 3 }, (0, vue.renderList)(__props.config.items, (item, index) => {
4543
+ }, null, 8, _hoisted_8$1)])) : show.value ? ((0, vue.openBlock)(true), (0, vue.createElementBlock)(vue.Fragment, { key: 3 }, (0, vue.renderList)(__props.config.items, (item, index) => {
4468
4544
  return (0, vue.openBlock)(), (0, vue.createBlock)(Container_default, {
4469
4545
  key: key(item, index),
4470
4546
  model: name.value ? __props.model[name.value] : __props.model,
@@ -4561,13 +4637,13 @@
4561
4637
  "display": "flex",
4562
4638
  "align-items": "center"
4563
4639
  } };
4564
- var _hoisted_2$5 = ["innerHTML"];
4565
- var _hoisted_3$4 = {
4640
+ var _hoisted_2$6 = ["innerHTML"];
4641
+ var _hoisted_3$5 = {
4566
4642
  key: 0,
4567
4643
  style: { "display": "flex" }
4568
4644
  };
4569
- var _hoisted_4$2 = { style: { "flex": "1" } };
4570
- var _hoisted_5$1 = ["src"];
4645
+ var _hoisted_4$4 = { style: { "flex": "1" } };
4646
+ var _hoisted_5$2 = ["src"];
4571
4647
  //#endregion
4572
4648
  //#region packages/form/src/containers/Panel.vue
4573
4649
  var Panel_default = /* @__PURE__ */ (0, vue.defineComponent)({
@@ -4582,7 +4658,8 @@
4582
4658
  labelWidth: {},
4583
4659
  prop: {},
4584
4660
  size: {},
4585
- disabled: { type: Boolean }
4661
+ disabled: { type: Boolean },
4662
+ hideExpand: { type: Boolean }
4586
4663
  },
4587
4664
  emits: ["change", "addDiffCount"],
4588
4665
  setup(__props, { expose: __expose, emit: __emit }) {
@@ -4606,26 +4683,31 @@
4606
4683
  return items.value && items.value.length ? ((0, vue.openBlock)(), (0, vue.createBlock)((0, vue.unref)(_tmagic_design.TMagicCard), {
4607
4684
  key: 0,
4608
4685
  class: "box-card m-form-panel",
4609
- "body-style": { display: expand.value ? "block" : "none" }
4686
+ "body-style": { display: expand.value ? "block" : "none" },
4687
+ flat: __props.config.flat
4610
4688
  }, {
4611
4689
  header: (0, vue.withCtx)(() => [(0, vue.createElementVNode)("div", _hoisted_1$10, [
4612
- (0, vue.createVNode)((0, vue.unref)(_tmagic_design.TMagicButton), {
4613
- style: { "padding": "0" },
4690
+ !__props.hideExpand ? ((0, vue.openBlock)(), (0, vue.createBlock)((0, vue.unref)(_tmagic_design.TMagicButton), {
4691
+ key: 0,
4692
+ style: {
4693
+ "padding": "0",
4694
+ "margin-right": "10px"
4695
+ },
4614
4696
  link: "",
4615
- icon: expand.value ? (0, vue.unref)(_element_plus_icons_vue.CaretBottom) : (0, vue.unref)(_element_plus_icons_vue.CaretRight),
4697
+ icon: expand.value ? (0, vue.unref)(_element_plus_icons_vue.ArrowDown) : (0, vue.unref)(_element_plus_icons_vue.ArrowRight),
4616
4698
  onClick: _cache[0] || (_cache[0] = ($event) => expand.value = !expand.value)
4617
- }, null, 8, ["icon"]),
4699
+ }, null, 8, ["icon"])) : (0, vue.createCommentVNode)("v-if", true),
4618
4700
  (0, vue.renderSlot)(_ctx.$slots, "header", {}, () => [(0, vue.createElementVNode)("span", {
4619
4701
  style: { "cursor": "pointer" },
4620
4702
  onClick: _cache[1] || (_cache[1] = ($event) => expand.value = !expand.value)
4621
4703
  }, (0, vue.toDisplayString)(filter(__props.config.title)), 1)]),
4622
4704
  __props.config && __props.config.extra ? ((0, vue.openBlock)(), (0, vue.createElementBlock)("span", {
4623
- key: 0,
4705
+ key: 1,
4624
4706
  innerHTML: __props.config.extra,
4625
4707
  class: "m-form-tip"
4626
- }, null, 8, _hoisted_2$5)) : (0, vue.createCommentVNode)("v-if", true)
4708
+ }, null, 8, _hoisted_2$6)) : (0, vue.createCommentVNode)("v-if", true)
4627
4709
  ])]),
4628
- default: (0, vue.withCtx)(() => [(0, vue.createElementVNode)("div", null, [(0, vue.renderSlot)(_ctx.$slots, "default"), __props.config.schematic ? ((0, vue.openBlock)(), (0, vue.createElementBlock)("div", _hoisted_3$4, [(0, vue.createElementVNode)("div", _hoisted_4$2, [((0, vue.openBlock)(true), (0, vue.createElementBlock)(vue.Fragment, null, (0, vue.renderList)(items.value, (item, index) => {
4710
+ default: (0, vue.withCtx)(() => [(0, vue.createElementVNode)("div", null, [(0, vue.renderSlot)(_ctx.$slots, "default"), __props.config.schematic ? ((0, vue.openBlock)(), (0, vue.createElementBlock)("div", _hoisted_3$5, [(0, vue.createElementVNode)("div", _hoisted_4$4, [((0, vue.openBlock)(true), (0, vue.createElementBlock)(vue.Fragment, null, (0, vue.renderList)(items.value, (item, index) => {
4629
4711
  return (0, vue.openBlock)(), (0, vue.createBlock)(Container_default, {
4630
4712
  key: item[(0, vue.unref)(mForm)?.keyProp || "__key"] ?? index,
4631
4713
  config: item,
@@ -4651,7 +4733,7 @@
4651
4733
  }), 128))]), (0, vue.createElementVNode)("img", {
4652
4734
  class: "m-form-schematic",
4653
4735
  src: __props.config.schematic
4654
- }, null, 8, _hoisted_5$1)])) : ((0, vue.openBlock)(true), (0, vue.createElementBlock)(vue.Fragment, { key: 1 }, (0, vue.renderList)(items.value, (item, index) => {
4736
+ }, null, 8, _hoisted_5$2)])) : ((0, vue.openBlock)(true), (0, vue.createElementBlock)(vue.Fragment, { key: 1 }, (0, vue.renderList)(items.value, (item, index) => {
4655
4737
  return (0, vue.openBlock)(), (0, vue.createBlock)(Container_default, {
4656
4738
  key: item[(0, vue.unref)(mForm)?.keyProp || "__key"] ?? index,
4657
4739
  config: item,
@@ -4676,7 +4758,7 @@
4676
4758
  ]);
4677
4759
  }), 128))])]),
4678
4760
  _: 3
4679
- }, 8, ["body-style"])) : (0, vue.createCommentVNode)("v-if", true);
4761
+ }, 8, ["body-style", "flat"])) : (0, vue.createCommentVNode)("v-if", true);
4680
4762
  };
4681
4763
  }
4682
4764
  });
@@ -4990,12 +5072,13 @@
4990
5072
  });
4991
5073
  //#endregion
4992
5074
  //#region packages/form/src/containers/GroupListItem.vue?vue&type=script&setup=true&lang.ts
4993
- var _hoisted_1$9 = ["innerHTML"];
4994
- var _hoisted_2$4 = { style: {
5075
+ var _hoisted_1$9 = { class: "m-fields-group-list-item-header" };
5076
+ var _hoisted_2$5 = ["innerHTML"];
5077
+ var _hoisted_3$4 = { style: {
4995
5078
  "text-align": "right",
4996
5079
  "margin-top": "20px"
4997
5080
  } };
4998
- var _hoisted_3$3 = ["innerHTML"];
5081
+ var _hoisted_4$3 = ["innerHTML"];
4999
5082
  //#endregion
5000
5083
  //#region packages/form/src/containers/GroupListItem.vue
5001
5084
  var GroupListItem_default = /* @__PURE__ */ (0, vue.defineComponent)({
@@ -5073,25 +5156,28 @@
5073
5156
  return (_ctx, _cache) => {
5074
5157
  return (0, vue.openBlock)(), (0, vue.createBlock)((0, vue.unref)(_tmagic_design.TMagicCard), {
5075
5158
  class: "m-fields-group-list-item",
5159
+ flat: __props.config.flat,
5076
5160
  "body-style": { display: expand.value ? "block" : "none" }
5077
5161
  }, {
5078
- header: (0, vue.withCtx)(() => [(0, vue.createElementVNode)("div", null, [
5162
+ header: (0, vue.withCtx)(() => [(0, vue.createElementVNode)("div", _hoisted_1$9, [
5079
5163
  (0, vue.createVNode)((0, vue.unref)(_tmagic_design.TMagicButton), {
5080
5164
  link: "",
5081
5165
  disabled: __props.disabled,
5082
- onClick: expandHandler
5166
+ onClick: expandHandler,
5167
+ class: "expand-button"
5083
5168
  }, {
5084
5169
  default: (0, vue.withCtx)(() => [(0, vue.createVNode)((0, vue.unref)(_tmagic_design.TMagicIcon), null, {
5085
- default: (0, vue.withCtx)(() => [expand.value ? ((0, vue.openBlock)(), (0, vue.createBlock)((0, vue.unref)(_element_plus_icons_vue.CaretBottom), { key: 0 })) : ((0, vue.openBlock)(), (0, vue.createBlock)((0, vue.unref)(_element_plus_icons_vue.CaretRight), { key: 1 }))]),
5170
+ default: (0, vue.withCtx)(() => [expand.value ? ((0, vue.openBlock)(), (0, vue.createBlock)((0, vue.unref)(_element_plus_icons_vue.ArrowDown), { key: 0 })) : ((0, vue.openBlock)(), (0, vue.createBlock)((0, vue.unref)(_element_plus_icons_vue.ArrowRight), { key: 1 }))]),
5086
5171
  _: 1
5087
- }), (0, vue.createElementVNode)("span", { innerHTML: title.value }, null, 8, _hoisted_1$9)]),
5172
+ })]),
5088
5173
  _: 1
5089
5174
  }, 8, ["disabled"]),
5175
+ (0, vue.createElementVNode)("span", { innerHTML: title.value }, null, 8, _hoisted_2$5),
5090
5176
  !__props.isCompare ? (0, vue.withDirectives)(((0, vue.openBlock)(), (0, vue.createBlock)((0, vue.unref)(_tmagic_design.TMagicButton), {
5091
5177
  key: 0,
5092
- type: "danger",
5093
- size: "small",
5178
+ size: "default",
5094
5179
  link: "",
5180
+ class: "delete-button",
5095
5181
  icon: (0, vue.unref)(_element_plus_icons_vue.Delete),
5096
5182
  disabled: __props.disabled,
5097
5183
  onClick: removeHandler
@@ -5099,7 +5185,7 @@
5099
5185
  copyable.value && !__props.isCompare ? ((0, vue.openBlock)(), (0, vue.createBlock)((0, vue.unref)(_tmagic_design.TMagicButton), {
5100
5186
  key: 1,
5101
5187
  link: "",
5102
- size: "small",
5188
+ size: "default",
5103
5189
  type: "primary",
5104
5190
  icon: (0, vue.unref)(_element_plus_icons_vue.DocumentCopy),
5105
5191
  disabled: __props.disabled,
@@ -5110,18 +5196,18 @@
5110
5196
  }, 8, ["icon", "disabled"])) : (0, vue.createCommentVNode)("v-if", true),
5111
5197
  movable.value && !__props.isCompare ? ((0, vue.openBlock)(), (0, vue.createElementBlock)(vue.Fragment, { key: 2 }, [(0, vue.withDirectives)((0, vue.createVNode)((0, vue.unref)(_tmagic_design.TMagicButton), {
5112
5198
  link: "",
5113
- size: "small",
5199
+ size: "default",
5114
5200
  disabled: __props.disabled,
5115
- icon: (0, vue.unref)(_element_plus_icons_vue.CaretTop),
5201
+ icon: (0, vue.unref)(_element_plus_icons_vue.Top),
5116
5202
  onClick: _cache[0] || (_cache[0] = ($event) => changeOrder(-1))
5117
5203
  }, {
5118
5204
  default: (0, vue.withCtx)(() => [..._cache[7] || (_cache[7] = [(0, vue.createTextVNode)("上移", -1)])]),
5119
5205
  _: 1
5120
5206
  }, 8, ["disabled", "icon"]), [[vue.vShow, __props.index !== 0]]), (0, vue.withDirectives)((0, vue.createVNode)((0, vue.unref)(_tmagic_design.TMagicButton), {
5121
5207
  link: "",
5122
- size: "small",
5208
+ size: "default",
5123
5209
  disabled: __props.disabled,
5124
- icon: (0, vue.unref)(_element_plus_icons_vue.CaretBottom),
5210
+ icon: (0, vue.unref)(_element_plus_icons_vue.Bottom),
5125
5211
  onClick: _cache[1] || (_cache[1] = ($event) => changeOrder(1))
5126
5212
  }, {
5127
5213
  default: (0, vue.withCtx)(() => [..._cache[8] || (_cache[8] = [(0, vue.createTextVNode)("下移", -1)])]),
@@ -5156,7 +5242,7 @@
5156
5242
  disabled: __props.disabled
5157
5243
  }, null, 8, ["modelValue", "disabled"]),
5158
5244
  _cache[11] || (_cache[11] = (0, vue.createTextVNode)("行 ", -1))
5159
- ]), (0, vue.createElementVNode)("div", _hoisted_2$4, [(0, vue.createVNode)((0, vue.unref)(_tmagic_design.TMagicButton), {
5245
+ ]), (0, vue.createElementVNode)("div", _hoisted_3$4, [(0, vue.createVNode)((0, vue.unref)(_tmagic_design.TMagicButton), {
5160
5246
  size: "small",
5161
5247
  text: "",
5162
5248
  onClick: _cache[4] || (_cache[4] = ($event) => moveSpecifyLocationVisible.value = false)
@@ -5177,7 +5263,7 @@
5177
5263
  key: 4,
5178
5264
  innerHTML: itemExtra.value,
5179
5265
  class: "m-form-tip"
5180
- }, null, 8, _hoisted_3$3)) : (0, vue.createCommentVNode)("v-if", true)
5266
+ }, null, 8, _hoisted_4$3)) : (0, vue.createCommentVNode)("v-if", true)
5181
5267
  ])]),
5182
5268
  default: (0, vue.withCtx)(() => [expand.value ? ((0, vue.openBlock)(), (0, vue.createBlock)(Container_default, {
5183
5269
  key: 0,
@@ -5202,23 +5288,23 @@
5202
5288
  "disabled"
5203
5289
  ])) : (0, vue.createCommentVNode)("v-if", true)]),
5204
5290
  _: 1
5205
- }, 8, ["body-style"]);
5291
+ }, 8, ["flat", "body-style"]);
5206
5292
  };
5207
5293
  }
5208
5294
  });
5209
5295
  //#endregion
5210
5296
  //#region packages/form/src/containers/GroupList.vue?vue&type=script&setup=true&lang.ts
5211
5297
  var _hoisted_1$8 = { class: "m-fields-group-list" };
5212
- var _hoisted_2$3 = ["innerHTML"];
5213
- var _hoisted_3$2 = {
5298
+ var _hoisted_2$4 = ["innerHTML"];
5299
+ var _hoisted_3$3 = {
5214
5300
  key: 1,
5215
5301
  class: "el-table__empty-block"
5216
5302
  };
5217
- var _hoisted_4$1 = {
5303
+ var _hoisted_4$2 = {
5218
5304
  key: 3,
5219
5305
  class: "m-fields-group-list-footer"
5220
5306
  };
5221
- var _hoisted_5 = { style: {
5307
+ var _hoisted_5$1 = { style: {
5222
5308
  "display": "flex",
5223
5309
  "justify-content": "flex-end",
5224
5310
  "flex": "1"
@@ -5270,8 +5356,8 @@
5270
5356
  key: 0,
5271
5357
  innerHTML: __props.config.extra,
5272
5358
  style: { "color": "rgba(0, 0, 0, 0.45)" }
5273
- }, null, 8, _hoisted_2$3)) : (0, vue.createCommentVNode)("v-if", true),
5274
- !__props.model[__props.name] || !__props.model[__props.name].length ? ((0, vue.openBlock)(), (0, vue.createElementBlock)("div", _hoisted_3$2, [..._cache[1] || (_cache[1] = [(0, vue.createElementVNode)("span", { class: "el-table__empty-text t-table__empty" }, "暂无数据", -1)])])) : ((0, vue.openBlock)(true), (0, vue.createElementBlock)(vue.Fragment, { key: 2 }, (0, vue.renderList)(__props.model[__props.name], (item, index) => {
5359
+ }, null, 8, _hoisted_2$4)) : (0, vue.createCommentVNode)("v-if", true),
5360
+ !__props.model[__props.name] || !__props.model[__props.name].length ? ((0, vue.openBlock)(), (0, vue.createElementBlock)("div", _hoisted_3$3, [..._cache[1] || (_cache[1] = [(0, vue.createElementVNode)("span", { class: "el-table__empty-text t-table__empty" }, "暂无数据", -1)])])) : ((0, vue.openBlock)(true), (0, vue.createElementBlock)(vue.Fragment, { key: 2 }, (0, vue.renderList)(__props.model[__props.name], (item, index) => {
5275
5361
  return (0, vue.openBlock)(), (0, vue.createBlock)(GroupListItem_default, {
5276
5362
  key: index,
5277
5363
  model: item,
@@ -5302,7 +5388,7 @@
5302
5388
  "group-model"
5303
5389
  ]);
5304
5390
  }), 128)),
5305
- !__props.isCompare ? ((0, vue.openBlock)(), (0, vue.createElementBlock)("div", _hoisted_4$1, [(0, vue.renderSlot)(_ctx.$slots, "toggle-button"), (0, vue.createElementVNode)("div", _hoisted_5, [(0, vue.renderSlot)(_ctx.$slots, "add-button")])])) : (0, vue.createCommentVNode)("v-if", true)
5391
+ !__props.isCompare ? ((0, vue.openBlock)(), (0, vue.createElementBlock)("div", _hoisted_4$2, [(0, vue.renderSlot)(_ctx.$slots, "toggle-button"), (0, vue.createElementVNode)("div", _hoisted_5$1, [(0, vue.renderSlot)(_ctx.$slots, "add-button")])])) : (0, vue.createCommentVNode)("v-if", true)
5306
5392
  ]);
5307
5393
  };
5308
5394
  }
@@ -5464,7 +5550,8 @@
5464
5550
  index: {},
5465
5551
  row: {},
5466
5552
  prop: {},
5467
- sortKey: {}
5553
+ sortKey: {},
5554
+ flat: { type: Boolean }
5468
5555
  },
5469
5556
  emits: ["change"],
5470
5557
  setup(__props, { emit: __emit }) {
@@ -5535,19 +5622,25 @@
5535
5622
  type: "danger",
5536
5623
  link: "",
5537
5624
  title: "删除",
5538
- icon: __props.config.deleteActionButtonIcon || (0, vue.unref)(_element_plus_icons_vue.Delete),
5625
+ icon: __props.flat ? void 0 : __props.config.deleteActionButtonIcon || (0, vue.unref)(_element_plus_icons_vue.Delete),
5539
5626
  onClick: _cache[0] || (_cache[0] = ($event) => removeHandler(__props.index + 1 + __props.currentPage * __props.pageSize - 1))
5540
- }, null, 8, ["icon"]), [[vue.vShow, showDelete(__props.index + 1 + __props.currentPage * __props.pageSize - 1)]]),
5627
+ }, {
5628
+ default: (0, vue.withCtx)(() => [__props.flat ? ((0, vue.openBlock)(), (0, vue.createElementBlock)(vue.Fragment, { key: 0 }, [(0, vue.createTextVNode)("删除")], 64)) : (0, vue.createCommentVNode)("v-if", true)]),
5629
+ _: 1
5630
+ }, 8, ["icon"]), [[vue.vShow, showDelete(__props.index + 1 + __props.currentPage * __props.pageSize - 1)]]),
5541
5631
  copyable(__props.index + 1 + __props.currentPage * __props.pageSize - 1) ? ((0, vue.openBlock)(), (0, vue.createBlock)((0, vue.unref)(_tmagic_design.TMagicButton), {
5542
5632
  key: 1,
5543
5633
  link: "",
5544
5634
  size: "small",
5545
5635
  type: "primary",
5546
5636
  title: "复制",
5547
- icon: __props.config.copyActionButtonIcon || (0, vue.unref)(_element_plus_icons_vue.DocumentCopy),
5637
+ icon: __props.flat ? void 0 : __props.config.copyActionButtonIcon || (0, vue.unref)(_element_plus_icons_vue.DocumentCopy),
5548
5638
  disabled: __props.disabled,
5549
5639
  onClick: _cache[1] || (_cache[1] = ($event) => copyHandler(__props.index + 1 + __props.currentPage * __props.pageSize - 1))
5550
- }, null, 8, ["icon", "disabled"])) : (0, vue.createCommentVNode)("v-if", true)
5640
+ }, {
5641
+ default: (0, vue.withCtx)(() => [__props.flat ? ((0, vue.openBlock)(), (0, vue.createElementBlock)(vue.Fragment, { key: 0 }, [(0, vue.createTextVNode)("复制")], 64)) : (0, vue.createCommentVNode)("v-if", true)]),
5642
+ _: 1
5643
+ }, 8, ["icon", "disabled"])) : (0, vue.createCommentVNode)("v-if", true)
5551
5644
  ], 64);
5552
5645
  };
5553
5646
  }
@@ -5640,6 +5733,7 @@
5640
5733
  //#region packages/form/src/containers/table/useTableColumns.ts
5641
5734
  var useTableColumns = (props, emit, currentPage, pageSize, modelName) => {
5642
5735
  const mForm = (0, vue.inject)("mForm");
5736
+ const isMagicAdmin = (0, _tmagic_design.isMagicAdminTheme)();
5643
5737
  const display$1 = (fuc) => display(mForm, fuc, props);
5644
5738
  const lastData = (0, vue.computed)(() => props.config.pagination ? getDataByPage(props.lastValues[modelName.value], currentPage.value, pageSize.value) : props.lastValues[modelName.value] || []);
5645
5739
  const itemExtra = (fuc, index) => {
@@ -5697,7 +5791,8 @@
5697
5791
  type: "selection",
5698
5792
  width: 45
5699
5793
  } });
5700
- let actionFixed = props.config.fixed === false ? void 0 : "left";
5794
+ const defaultFixed = isMagicAdmin.value ? "right" : "left";
5795
+ let actionFixed = props.config.fixed === false ? void 0 : defaultFixed;
5701
5796
  if (typeof props.config.fixed === "string" && ["left", "right"].includes(props.config.fixed)) actionFixed = props.config.fixed;
5702
5797
  const actionColumn = {
5703
5798
  props: {
@@ -5708,6 +5803,7 @@
5708
5803
  },
5709
5804
  cell: ({ row, $index }) => (0, vue.h)(ActionsColumn_default, {
5710
5805
  row,
5806
+ flat: props.config.flat,
5711
5807
  index: $index,
5712
5808
  model: props.model,
5713
5809
  config: props.config,
@@ -5790,13 +5886,13 @@
5790
5886
  //#endregion
5791
5887
  //#region packages/form/src/containers/table/Table.vue?vue&type=script&setup=true&lang.ts
5792
5888
  var _hoisted_1$7 = ["innerHTML"];
5793
- var _hoisted_2$2 = { style: {
5889
+ var _hoisted_2$3 = { style: {
5794
5890
  "display": "flex",
5795
5891
  "justify-content": "space-between",
5796
5892
  "margin": "10px 0"
5797
5893
  } };
5798
- var _hoisted_3$1 = { style: { "display": "flex" } };
5799
- var _hoisted_4 = {
5894
+ var _hoisted_3$2 = { style: { "display": "flex" } };
5895
+ var _hoisted_4$1 = {
5800
5896
  key: 1,
5801
5897
  class: "bottom",
5802
5898
  style: { "text-align": "right" }
@@ -5893,7 +5989,7 @@
5893
5989
  _: 1
5894
5990
  }, 8, ["disabled"]),
5895
5991
  (0, vue.renderSlot)(_ctx.$slots, "default"),
5896
- (0, vue.createElementVNode)("div", _hoisted_2$2, [(0, vue.createElementVNode)("div", _hoisted_3$1, [
5992
+ (0, vue.createElementVNode)("div", _hoisted_2$3, [(0, vue.createElementVNode)("div", _hoisted_3$2, [
5897
5993
  !(0, vue.unref)(isFullscreen) ? (0, vue.renderSlot)(_ctx.$slots, "toggle-button", { key: 0 }) : (0, vue.createCommentVNode)("v-if", true),
5898
5994
  __props.config.enableFullscreen !== false ? ((0, vue.openBlock)(), (0, vue.createBlock)((0, vue.unref)(_tmagic_design.TMagicButton), {
5899
5995
  key: 1,
@@ -5936,7 +6032,7 @@
5936
6032
  _: 1
5937
6033
  }, 8, ["disabled", "onClick"])) : (0, vue.createCommentVNode)("v-if", true)
5938
6034
  ]), !__props.isCompare ? (0, vue.renderSlot)(_ctx.$slots, "add-button", { key: 0 }) : (0, vue.createCommentVNode)("v-if", true)]),
5939
- __props.config.pagination ? ((0, vue.openBlock)(), (0, vue.createElementBlock)("div", _hoisted_4, [(0, vue.createVNode)((0, vue.unref)(_tmagic_design.TMagicPagination), {
6035
+ __props.config.pagination ? ((0, vue.openBlock)(), (0, vue.createElementBlock)("div", _hoisted_4$1, [(0, vue.createVNode)((0, vue.unref)(_tmagic_design.TMagicPagination), {
5940
6036
  layout: "total, sizes, prev, pager, next, jumper",
5941
6037
  "hide-on-single-page": __props.model[modelName.value].length < (0, vue.unref)(pageSize),
5942
6038
  "current-page": (0, vue.unref)(currentPage) + 1,
@@ -6156,9 +6252,10 @@
6156
6252
  size: addButtonSize.value,
6157
6253
  plain: displayMode.value === "table",
6158
6254
  icon: (0, vue.unref)(_element_plus_icons_vue.Plus),
6255
+ text: "",
6159
6256
  disabled: __props.disabled
6160
6257
  }, currentConfig.value.addButtonConfig?.props || { type: "primary" }, { onClick: (0, vue.unref)(newHandler) }), {
6161
- default: (0, vue.withCtx)(() => [(0, vue.createTextVNode)((0, vue.toDisplayString)(currentConfig.value.addButtonConfig?.text || (displayMode.value === "table" ? "新增一行" : "新增")), 1)]),
6258
+ default: (0, vue.withCtx)(() => [(0, vue.createTextVNode)((0, vue.toDisplayString)(currentConfig.value.addButtonConfig?.text || (displayMode.value === "table" ? `新增一行${groupListConfig.value.titlePrefix || ""}` : `新增${groupListConfig.value.titlePrefix || ""}`)), 1)]),
6162
6259
  _: 1
6163
6260
  }, 16, [
6164
6261
  "class",
@@ -6188,9 +6285,17 @@
6188
6285
  });
6189
6286
  //#endregion
6190
6287
  //#region packages/form/src/fields/Text.vue?vue&type=script&setup=true&lang.ts
6191
- var _hoisted_1$6 = { class: "m-fields-text" };
6192
- var _hoisted_2$1 = { key: 1 };
6193
- var _hoisted_3 = { style: {
6288
+ var _hoisted_1$6 = { key: 0 };
6289
+ var _hoisted_2$2 = {
6290
+ key: 0,
6291
+ class: "m-fields-text__prepend"
6292
+ };
6293
+ var _hoisted_3$1 = { class: "m-fields-text__value" };
6294
+ var _hoisted_4 = ["src"];
6295
+ var _hoisted_5 = { key: 2 };
6296
+ var _hoisted_6 = ["src"];
6297
+ var _hoisted_7 = { key: 2 };
6298
+ var _hoisted_8 = { style: {
6194
6299
  "display": "flex",
6195
6300
  "justify-content": "flex-end"
6196
6301
  } };
@@ -6209,7 +6314,10 @@
6209
6314
  disabled: { type: Boolean },
6210
6315
  size: {},
6211
6316
  lastValues: {},
6212
- isCompare: { type: Boolean }
6317
+ isCompare: { type: Boolean },
6318
+ text: {},
6319
+ labelWidth: {},
6320
+ labelPosition: {}
6213
6321
  },
6214
6322
  emits: ["change", "input"],
6215
6323
  setup(__props, { emit: __emit }) {
@@ -6222,21 +6330,15 @@
6222
6330
  value.value = v;
6223
6331
  }, { immediate: true });
6224
6332
  const appendConfig = (0, vue.computed)(() => {
6225
- if (typeof props.config.append === "string") return {
6333
+ const { append } = props.config;
6334
+ if (typeof append === "string") return {
6226
6335
  type: "text",
6227
- text: props.config.append,
6336
+ text: append,
6228
6337
  handler: void 0
6229
6338
  };
6230
- if (typeof props.config.append === "object") {
6231
- if (typeof props.config.append?.handler === "function") return {
6232
- type: "button",
6233
- text: props.config.append.text,
6234
- handler: props.config.append.handler
6235
- };
6236
- if (props.config.append) {
6237
- if (props.config.append.value === 0) return false;
6238
- return props.config.append;
6239
- }
6339
+ if (typeof append === "object" && append) {
6340
+ if (append.value === 0) return false;
6341
+ return append;
6240
6342
  }
6241
6343
  return false;
6242
6344
  });
@@ -6332,67 +6434,97 @@
6332
6434
  instanceRef.value = void 0;
6333
6435
  };
6334
6436
  return (_ctx, _cache) => {
6335
- return (0, vue.openBlock)(), (0, vue.createElementBlock)("div", _hoisted_1$6, [(0, vue.createVNode)((0, vue.unref)(_tmagic_design.TMagicInput), {
6336
- modelValue: value.value,
6337
- "onUpdate:modelValue": _cache[0] || (_cache[0] = ($event) => value.value = $event),
6338
- ref_key: "input",
6339
- ref: input,
6340
- clearable: __props.config.clearable ?? true,
6341
- size: __props.size,
6342
- placeholder: __props.config.placeholder,
6343
- disabled: __props.disabled,
6344
- onChange: changeHandler,
6345
- onInput: inputHandler,
6346
- onKeyup: _cache[1] || (_cache[1] = ($event) => keyUpHandler($event))
6347
- }, (0, vue.createSlots)({ _: 2 }, [__props.config.prepend ? {
6348
- name: "prepend",
6349
- fn: (0, vue.withCtx)(() => [(0, vue.createElementVNode)("span", null, (0, vue.toDisplayString)(__props.config.prepend), 1)]),
6350
- key: "0"
6351
- } : void 0, appendConfig.value ? {
6352
- name: "append",
6353
- fn: (0, vue.withCtx)(() => [appendConfig.value.type === "button" ? ((0, vue.openBlock)(), (0, vue.createBlock)((0, vue.unref)(_tmagic_design.TMagicButton), {
6354
- key: 0,
6355
- style: { "color": "#409eff" },
6437
+ return (0, vue.openBlock)(), (0, vue.createElementBlock)("div", { class: (0, vue.normalizeClass)(["m-fields-text", { "m-fields-text--static": __props.config.static }]) }, [
6438
+ __props.config.disabled ? ((0, vue.openBlock)(), (0, vue.createElementBlock)("div", _hoisted_1$6)) : (0, vue.createCommentVNode)("v-if", true),
6439
+ (0, vue.createCommentVNode)(" 新增静态展示文本样式 "),
6440
+ __props.config.static ? ((0, vue.openBlock)(), (0, vue.createElementBlock)(vue.Fragment, { key: 1 }, [
6441
+ __props.config.prepend ? ((0, vue.openBlock)(), (0, vue.createElementBlock)("span", _hoisted_2$2, (0, vue.toDisplayString)(__props.config.prepend), 1)) : (0, vue.createCommentVNode)("v-if", true),
6442
+ (0, vue.createElementVNode)("span", _hoisted_3$1, (0, vue.toDisplayString)(value.value), 1),
6443
+ appendConfig.value ? ((0, vue.openBlock)(), (0, vue.createElementBlock)(vue.Fragment, { key: 1 }, [appendConfig.value.type === "button" ? ((0, vue.openBlock)(), (0, vue.createBlock)((0, vue.unref)(_tmagic_design.TMagicButton), {
6444
+ key: 0,
6445
+ style: { "color": "#0056ea" },
6446
+ size: __props.size,
6447
+ onClick: (0, vue.withModifiers)(buttonClickHandler, ["prevent"])
6448
+ }, {
6449
+ default: (0, vue.withCtx)(() => [(0, vue.createTextVNode)((0, vue.toDisplayString)(appendConfig.value.text), 1)]),
6450
+ _: 1
6451
+ }, 8, ["size"])) : appendConfig.value.type === "icon" ? ((0, vue.openBlock)(), (0, vue.createElementBlock)("img", {
6452
+ key: 1,
6453
+ class: "m-fields-text__icon",
6454
+ src: appendConfig.value.text,
6455
+ onClick: buttonClickHandler
6456
+ }, null, 8, _hoisted_4)) : ((0, vue.openBlock)(), (0, vue.createElementBlock)("span", _hoisted_5, (0, vue.toDisplayString)(appendConfig.value.text), 1))], 64)) : (0, vue.createCommentVNode)("v-if", true)
6457
+ ], 64)) : ((0, vue.openBlock)(), (0, vue.createBlock)((0, vue.unref)(_tmagic_design.TMagicInput), {
6458
+ key: 2,
6459
+ modelValue: value.value,
6460
+ "onUpdate:modelValue": _cache[0] || (_cache[0] = ($event) => value.value = $event),
6461
+ ref_key: "input",
6462
+ ref: input,
6463
+ clearable: __props.config.clearable ?? true,
6356
6464
  size: __props.size,
6357
- onClick: (0, vue.withModifiers)(buttonClickHandler, ["prevent"])
6358
- }, {
6359
- default: (0, vue.withCtx)(() => [(0, vue.createTextVNode)((0, vue.toDisplayString)(appendConfig.value.text), 1)]),
6360
- _: 1
6361
- }, 8, ["size"])) : ((0, vue.openBlock)(), (0, vue.createElementBlock)("span", _hoisted_2$1, (0, vue.toDisplayString)(appendConfig.value.text), 1))]),
6362
- key: "1"
6363
- } : void 0]), 1032, [
6364
- "modelValue",
6365
- "clearable",
6366
- "size",
6367
- "placeholder",
6368
- "disabled"
6369
- ]), ((0, vue.openBlock)(), (0, vue.createBlock)(vue.Teleport, { to: "body" }, [popoverVisible.value ? ((0, vue.openBlock)(), (0, vue.createElementBlock)("div", {
6370
- key: 0,
6371
- class: "tmagic-form-text-popper m-form-item__content",
6372
- ref_key: "popoverEl",
6373
- ref: popoverEl
6374
- }, [
6375
- _cache[5] || (_cache[5] = (0, vue.createElementVNode)("div", { class: "m-form-validate__warning" }, "输入内容前后有空格,是否移除空格?", -1)),
6376
- (0, vue.createElementVNode)("div", _hoisted_3, [(0, vue.createVNode)((0, vue.unref)(_tmagic_design.TMagicButton), {
6377
- link: "",
6378
- size: "small",
6379
- onClick: _cache[2] || (_cache[2] = ($event) => popoverVisible.value = false)
6380
- }, {
6381
- default: (0, vue.withCtx)(() => [..._cache[3] || (_cache[3] = [(0, vue.createTextVNode)("保持原样", -1)])]),
6382
- _: 1
6383
- }), (0, vue.createVNode)((0, vue.unref)(_tmagic_design.TMagicButton), {
6384
- type: "primary",
6385
- size: "small",
6386
- onClick: confirmTrimHandler
6387
- }, {
6388
- default: (0, vue.withCtx)(() => [..._cache[4] || (_cache[4] = [(0, vue.createTextVNode)("移除空格", -1)])]),
6389
- _: 1
6390
- })]),
6391
- _cache[6] || (_cache[6] = (0, vue.createElementVNode)("span", {
6392
- class: "tmagic-form-text-popper-arrow",
6393
- "data-popper-arrow": ""
6394
- }, null, -1))
6395
- ], 512)) : (0, vue.createCommentVNode)("v-if", true)]))]);
6465
+ placeholder: __props.config.placeholder,
6466
+ disabled: __props.disabled,
6467
+ onChange: changeHandler,
6468
+ onInput: inputHandler,
6469
+ onKeyup: _cache[1] || (_cache[1] = ($event) => keyUpHandler($event))
6470
+ }, (0, vue.createSlots)({ _: 2 }, [__props.config.prepend ? {
6471
+ name: "prepend",
6472
+ fn: (0, vue.withCtx)(() => [(0, vue.createElementVNode)("span", null, (0, vue.toDisplayString)(__props.config.prepend), 1)]),
6473
+ key: "0"
6474
+ } : void 0, appendConfig.value ? {
6475
+ name: "append",
6476
+ fn: (0, vue.withCtx)(() => [appendConfig.value.type === "button" ? ((0, vue.openBlock)(), (0, vue.createBlock)((0, vue.unref)(_tmagic_design.TMagicButton), {
6477
+ key: 0,
6478
+ style: { "color": "#0056ea" },
6479
+ size: __props.size,
6480
+ onClick: (0, vue.withModifiers)(buttonClickHandler, ["prevent"])
6481
+ }, {
6482
+ default: (0, vue.withCtx)(() => [(0, vue.createTextVNode)((0, vue.toDisplayString)(appendConfig.value.text), 1)]),
6483
+ _: 1
6484
+ }, 8, ["size"])) : appendConfig.value.type === "icon" ? ((0, vue.openBlock)(), (0, vue.createElementBlock)("img", {
6485
+ key: 1,
6486
+ src: appendConfig.value.text,
6487
+ onClick: buttonClickHandler
6488
+ }, null, 8, _hoisted_6)) : ((0, vue.openBlock)(), (0, vue.createElementBlock)("span", _hoisted_7, (0, vue.toDisplayString)(appendConfig.value.text), 1))]),
6489
+ key: "1"
6490
+ } : void 0]), 1032, [
6491
+ "modelValue",
6492
+ "clearable",
6493
+ "size",
6494
+ "placeholder",
6495
+ "disabled"
6496
+ ])),
6497
+ !__props.config.static ? ((0, vue.openBlock)(), (0, vue.createBlock)(vue.Teleport, {
6498
+ key: 3,
6499
+ to: "body"
6500
+ }, [popoverVisible.value ? ((0, vue.openBlock)(), (0, vue.createElementBlock)("div", {
6501
+ key: 0,
6502
+ class: "tmagic-form-text-popper m-form-item__content",
6503
+ ref_key: "popoverEl",
6504
+ ref: popoverEl
6505
+ }, [
6506
+ _cache[5] || (_cache[5] = (0, vue.createElementVNode)("div", { class: "m-form-validate__warning" }, "输入内容前后有空格,是否移除空格?", -1)),
6507
+ (0, vue.createElementVNode)("div", _hoisted_8, [(0, vue.createVNode)((0, vue.unref)(_tmagic_design.TMagicButton), {
6508
+ link: "",
6509
+ size: "small",
6510
+ onClick: _cache[2] || (_cache[2] = ($event) => popoverVisible.value = false)
6511
+ }, {
6512
+ default: (0, vue.withCtx)(() => [..._cache[3] || (_cache[3] = [(0, vue.createTextVNode)("保持原样", -1)])]),
6513
+ _: 1
6514
+ }), (0, vue.createVNode)((0, vue.unref)(_tmagic_design.TMagicButton), {
6515
+ type: "primary",
6516
+ size: "small",
6517
+ onClick: confirmTrimHandler
6518
+ }, {
6519
+ default: (0, vue.withCtx)(() => [..._cache[4] || (_cache[4] = [(0, vue.createTextVNode)("移除空格", -1)])]),
6520
+ _: 1
6521
+ })]),
6522
+ _cache[6] || (_cache[6] = (0, vue.createElementVNode)("span", {
6523
+ class: "tmagic-form-text-popper-arrow",
6524
+ "data-popper-arrow": ""
6525
+ }, null, -1))
6526
+ ], 512)) : (0, vue.createCommentVNode)("v-if", true)])) : (0, vue.createCommentVNode)("v-if", true)
6527
+ ], 2);
6396
6528
  };
6397
6529
  }
6398
6530
  });
@@ -6411,7 +6543,10 @@
6411
6543
  disabled: { type: Boolean },
6412
6544
  size: {},
6413
6545
  lastValues: {},
6414
- isCompare: { type: Boolean }
6546
+ isCompare: { type: Boolean },
6547
+ text: {},
6548
+ labelWidth: {},
6549
+ labelPosition: {}
6415
6550
  },
6416
6551
  emits: ["change", "input"],
6417
6552
  setup(__props, { emit: __emit }) {
@@ -6475,7 +6610,10 @@
6475
6610
  disabled: { type: Boolean },
6476
6611
  size: {},
6477
6612
  lastValues: {},
6478
- isCompare: { type: Boolean }
6613
+ isCompare: { type: Boolean },
6614
+ text: {},
6615
+ labelWidth: {},
6616
+ labelPosition: {}
6479
6617
  },
6480
6618
  emits: ["change"],
6481
6619
  setup(__props, { emit: __emit }) {
@@ -6546,7 +6684,10 @@
6546
6684
  disabled: { type: Boolean },
6547
6685
  size: {},
6548
6686
  lastValues: {},
6549
- isCompare: { type: Boolean }
6687
+ isCompare: { type: Boolean },
6688
+ text: {},
6689
+ labelWidth: {},
6690
+ labelPosition: {}
6550
6691
  },
6551
6692
  emits: ["change", "input"],
6552
6693
  setup(__props, { emit: __emit }) {
@@ -6602,7 +6743,10 @@
6602
6743
  disabled: { type: Boolean },
6603
6744
  size: {},
6604
6745
  lastValues: {},
6605
- isCompare: { type: Boolean }
6746
+ isCompare: { type: Boolean },
6747
+ text: {},
6748
+ labelWidth: {},
6749
+ labelPosition: {}
6606
6750
  },
6607
6751
  emits: ["change"],
6608
6752
  setup(__props, { emit: __emit }) {
@@ -6649,7 +6793,10 @@
6649
6793
  disabled: { type: Boolean },
6650
6794
  size: {},
6651
6795
  lastValues: {},
6652
- isCompare: { type: Boolean }
6796
+ isCompare: { type: Boolean },
6797
+ text: {},
6798
+ labelWidth: {},
6799
+ labelPosition: {}
6653
6800
  },
6654
6801
  emits: ["change"],
6655
6802
  setup(__props, { emit: __emit }) {
@@ -6701,7 +6848,10 @@
6701
6848
  disabled: { type: Boolean },
6702
6849
  size: {},
6703
6850
  lastValues: {},
6704
- isCompare: { type: Boolean }
6851
+ isCompare: { type: Boolean },
6852
+ text: {},
6853
+ labelWidth: {},
6854
+ labelPosition: {}
6705
6855
  },
6706
6856
  emits: ["change"],
6707
6857
  setup(__props, { emit: __emit }) {
@@ -6746,7 +6896,10 @@
6746
6896
  disabled: { type: Boolean },
6747
6897
  size: {},
6748
6898
  lastValues: {},
6749
- isCompare: { type: Boolean }
6899
+ isCompare: { type: Boolean },
6900
+ text: {},
6901
+ labelWidth: {},
6902
+ labelPosition: {}
6750
6903
  },
6751
6904
  emits: ["change"],
6752
6905
  setup(__props, { emit: __emit }) {
@@ -6803,7 +6956,10 @@
6803
6956
  disabled: { type: Boolean },
6804
6957
  size: {},
6805
6958
  lastValues: {},
6806
- isCompare: { type: Boolean }
6959
+ isCompare: { type: Boolean },
6960
+ text: {},
6961
+ labelWidth: {},
6962
+ labelPosition: {}
6807
6963
  },
6808
6964
  emits: ["change"],
6809
6965
  setup(__props, { emit: __emit }) {
@@ -6858,7 +7014,10 @@
6858
7014
  disabled: { type: Boolean },
6859
7015
  size: {},
6860
7016
  lastValues: {},
6861
- isCompare: { type: Boolean }
7017
+ isCompare: { type: Boolean },
7018
+ text: {},
7019
+ labelWidth: {},
7020
+ labelPosition: {}
6862
7021
  },
6863
7022
  emits: ["change"],
6864
7023
  setup(__props, { emit: __emit }) {
@@ -6952,7 +7111,10 @@
6952
7111
  disabled: { type: Boolean },
6953
7112
  size: {},
6954
7113
  lastValues: {},
6955
- isCompare: { type: Boolean }
7114
+ isCompare: { type: Boolean },
7115
+ text: {},
7116
+ labelWidth: {},
7117
+ labelPosition: {}
6956
7118
  },
6957
7119
  emits: ["change"],
6958
7120
  setup(__props, { emit: __emit }) {
@@ -7046,7 +7208,10 @@
7046
7208
  disabled: { type: Boolean },
7047
7209
  size: {},
7048
7210
  lastValues: {},
7049
- isCompare: { type: Boolean }
7211
+ isCompare: { type: Boolean },
7212
+ text: {},
7213
+ labelWidth: {},
7214
+ labelPosition: {}
7050
7215
  },
7051
7216
  emits: ["change"],
7052
7217
  setup(__props, { emit: __emit }) {
@@ -7084,7 +7249,10 @@
7084
7249
  disabled: { type: Boolean },
7085
7250
  size: {},
7086
7251
  lastValues: {},
7087
- isCompare: { type: Boolean }
7252
+ isCompare: { type: Boolean },
7253
+ text: {},
7254
+ labelWidth: {},
7255
+ labelPosition: {}
7088
7256
  },
7089
7257
  emits: ["change"],
7090
7258
  setup(__props, { emit: __emit }) {
@@ -7129,7 +7297,11 @@
7129
7297
  });
7130
7298
  //#endregion
7131
7299
  //#region packages/form/src/fields/RadioGroup.vue?vue&type=script&setup=true&lang.ts
7132
- var _hoisted_1$4 = { key: 1 };
7300
+ var _hoisted_1$4 = { class: "m-fields-radio-group__option" };
7301
+ var _hoisted_2$1 = {
7302
+ key: 1,
7303
+ class: "m-fields-radio-group__text"
7304
+ };
7133
7305
  //#endregion
7134
7306
  //#region packages/form/src/fields/RadioGroup.vue
7135
7307
  var RadioGroup_default = /* @__PURE__ */ (0, vue.defineComponent)({
@@ -7145,7 +7317,10 @@
7145
7317
  disabled: { type: Boolean },
7146
7318
  size: {},
7147
7319
  lastValues: {},
7148
- isCompare: { type: Boolean }
7320
+ isCompare: { type: Boolean },
7321
+ text: {},
7322
+ labelWidth: {},
7323
+ labelPosition: {}
7149
7324
  },
7150
7325
  emits: ["change"],
7151
7326
  setup(__props, { emit: __emit }) {
@@ -7157,9 +7332,9 @@
7157
7332
  };
7158
7333
  useAddField(props.prop);
7159
7334
  const iconSize = (0, vue.computed)(() => {
7160
- if (props.size === "small") return "12";
7335
+ if (props.size === "small") return "14";
7161
7336
  if (props.size === "large") return "16";
7162
- return "14";
7337
+ return "16";
7163
7338
  });
7164
7339
  return (_ctx, _cache) => {
7165
7340
  return __props.model ? ((0, vue.openBlock)(), (0, vue.createBlock)((0, vue.unref)(_tmagic_design.TMagicRadioGroup), {
@@ -7179,13 +7354,14 @@
7179
7354
  placement: "top-start",
7180
7355
  content: option.tooltip
7181
7356
  }, {
7182
- default: (0, vue.withCtx)(() => [(0, vue.createElementVNode)("div", null, [option.icon ? ((0, vue.openBlock)(), (0, vue.createBlock)((0, vue.unref)(_tmagic_design.TMagicIcon), {
7357
+ default: (0, vue.withCtx)(() => [(0, vue.createElementVNode)("div", _hoisted_1$4, [option.icon ? ((0, vue.openBlock)(), (0, vue.createBlock)((0, vue.unref)(_tmagic_design.TMagicIcon), {
7183
7358
  key: 0,
7184
- size: iconSize.value
7359
+ size: iconSize.value,
7360
+ class: (0, vue.normalizeClass)({ "m-fields-radio-group__icon_with_text": !!option.text })
7185
7361
  }, {
7186
7362
  default: (0, vue.withCtx)(() => [((0, vue.openBlock)(), (0, vue.createBlock)((0, vue.resolveDynamicComponent)(option.icon)))]),
7187
7363
  _: 2
7188
- }, 1032, ["size"])) : (0, vue.createCommentVNode)("v-if", true), option.text ? ((0, vue.openBlock)(), (0, vue.createElementBlock)("span", _hoisted_1$4, (0, vue.toDisplayString)(option.text), 1)) : (0, vue.createCommentVNode)("v-if", true)])]),
7364
+ }, 1032, ["size", "class"])) : (0, vue.createCommentVNode)("v-if", true), option.text ? ((0, vue.openBlock)(), (0, vue.createElementBlock)("span", _hoisted_2$1, (0, vue.toDisplayString)(option.text), 1)) : (0, vue.createCommentVNode)("v-if", true)])]),
7189
7365
  _: 2
7190
7366
  }, 1032, ["disabled", "content"])]),
7191
7367
  _: 2
@@ -7218,7 +7394,10 @@
7218
7394
  disabled: { type: Boolean },
7219
7395
  size: {},
7220
7396
  lastValues: {},
7221
- isCompare: { type: Boolean }
7397
+ isCompare: { type: Boolean },
7398
+ text: {},
7399
+ labelWidth: {},
7400
+ labelPosition: {}
7222
7401
  },
7223
7402
  setup(__props) {
7224
7403
  const props = __props;
@@ -7237,8 +7416,9 @@
7237
7416
  //#endregion
7238
7417
  //#region packages/form/src/fields/Link.vue?vue&type=script&setup=true&lang.ts
7239
7418
  var _hoisted_1$2 = ["href"];
7240
- var _hoisted_2 = {
7241
- key: 2,
7419
+ var _hoisted_2 = ["href"];
7420
+ var _hoisted_3 = {
7421
+ key: 3,
7242
7422
  class: "m-fields-link"
7243
7423
  };
7244
7424
  //#endregion
@@ -7256,12 +7436,17 @@
7256
7436
  disabled: { type: Boolean },
7257
7437
  size: {},
7258
7438
  lastValues: {},
7259
- isCompare: { type: Boolean }
7439
+ isCompare: { type: Boolean },
7440
+ text: {},
7441
+ labelWidth: {},
7442
+ labelPosition: {},
7443
+ theme: {}
7260
7444
  },
7261
7445
  emits: ["change"],
7262
7446
  setup(__props, { emit: __emit }) {
7263
7447
  const props = __props;
7264
7448
  const emit = __emit;
7449
+ const isMagicAdmin = (0, _tmagic_design.isMagicAdminTheme)(props);
7265
7450
  useAddField(props.prop);
7266
7451
  const formValue = (0, vue.ref)({});
7267
7452
  const editor = (0, vue.ref)();
@@ -7299,15 +7484,30 @@
7299
7484
  editor.value && (editor.value.dialogVisible = false);
7300
7485
  };
7301
7486
  return (_ctx, _cache) => {
7302
- return __props.config.href && !__props.disabled ? ((0, vue.openBlock)(), (0, vue.createElementBlock)("a", {
7487
+ return (0, vue.unref)(isMagicAdmin) && __props.config.href && !__props.disabled ? ((0, vue.openBlock)(), (0, vue.createElementBlock)("a", {
7303
7488
  key: 0,
7304
7489
  target: "_blank",
7305
7490
  href: href.value,
7491
+ class: "magic-admin-link",
7306
7492
  style: (0, vue.normalizeStyle)(__props.config.css || {})
7307
- }, (0, vue.toDisplayString)(displayText.value), 13, _hoisted_1$2)) : __props.config.href && __props.disabled ? ((0, vue.openBlock)(), (0, vue.createElementBlock)("span", {
7493
+ }, [(0, vue.createVNode)((0, vue.unref)(_tmagic_design.TMagicButton), {
7494
+ link: "",
7495
+ type: "primary"
7496
+ }, {
7497
+ default: (0, vue.withCtx)(() => [(0, vue.createVNode)((0, vue.unref)(_tmagic_design.TMagicIcon), null, {
7498
+ default: (0, vue.withCtx)(() => [(0, vue.createVNode)((0, vue.unref)(_element_plus_icons_vue.Notebook))]),
7499
+ _: 1
7500
+ }), (0, vue.createTextVNode)((0, vue.toDisplayString)(displayText.value), 1)]),
7501
+ _: 1
7502
+ })], 12, _hoisted_1$2)) : __props.config.href && !__props.disabled ? ((0, vue.openBlock)(), (0, vue.createElementBlock)("a", {
7308
7503
  key: 1,
7504
+ target: "_blank",
7505
+ href: href.value,
7506
+ style: (0, vue.normalizeStyle)(__props.config.css || {})
7507
+ }, (0, vue.toDisplayString)(displayText.value), 13, _hoisted_2)) : __props.config.href && __props.disabled ? ((0, vue.openBlock)(), (0, vue.createElementBlock)("span", {
7508
+ key: 2,
7309
7509
  style: (0, vue.normalizeStyle)(__props.config.disabledCss || {})
7310
- }, (0, vue.toDisplayString)(displayText.value), 5)) : ((0, vue.openBlock)(), (0, vue.createElementBlock)("div", _hoisted_2, [(0, vue.createVNode)((0, vue.unref)(_tmagic_design.TMagicButton), {
7510
+ }, (0, vue.toDisplayString)(displayText.value), 5)) : ((0, vue.openBlock)(), (0, vue.createElementBlock)("div", _hoisted_3, [(0, vue.createVNode)((0, vue.unref)(_tmagic_design.TMagicButton), {
7311
7511
  link: "",
7312
7512
  type: "primary",
7313
7513
  onClick: editHandler
@@ -7353,7 +7553,10 @@
7353
7553
  disabled: { type: Boolean },
7354
7554
  size: {},
7355
7555
  lastValues: {},
7356
- isCompare: { type: Boolean }
7556
+ isCompare: { type: Boolean },
7557
+ text: {},
7558
+ labelWidth: {},
7559
+ labelPosition: {}
7357
7560
  },
7358
7561
  emits: ["change"],
7359
7562
  setup(__props, { expose: __expose, emit: __emit }) {
@@ -7701,7 +7904,10 @@
7701
7904
  disabled: { type: Boolean },
7702
7905
  size: {},
7703
7906
  lastValues: {},
7704
- isCompare: { type: Boolean }
7907
+ isCompare: { type: Boolean },
7908
+ text: {},
7909
+ labelWidth: {},
7910
+ labelPosition: {}
7705
7911
  },
7706
7912
  emits: ["change"],
7707
7913
  setup(__props, { emit: __emit }) {
@@ -7821,7 +8027,10 @@
7821
8027
  disabled: { type: Boolean },
7822
8028
  size: {},
7823
8029
  lastValues: {},
7824
- isCompare: { type: Boolean }
8030
+ isCompare: { type: Boolean },
8031
+ text: {},
8032
+ labelWidth: {},
8033
+ labelPosition: {}
7825
8034
  },
7826
8035
  emits: ["change"],
7827
8036
  setup(__props, { emit: __emit }) {
@@ -7981,6 +8190,7 @@
7981
8190
  setConfig(option);
7982
8191
  app.component("m-form", Form_default);
7983
8192
  app.component("m-form-dialog", FormDialog_default);
8193
+ app.component("m-form-drawer", FormDrawer_default);
7984
8194
  app.component("m-form-container", Container_default);
7985
8195
  app.component("m-form-fieldset", Fieldset_default);
7986
8196
  app.component("m-form-group-list", TableGroupList_default);