silgi 0.4.4 → 0.4.5

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.
@@ -1,6 +1,6 @@
1
1
  const name = "silgi";
2
2
  const type = "module";
3
- const version = "0.4.4";
3
+ const version = "0.4.5";
4
4
  const packageManager = "pnpm@9.15.1";
5
5
  const sideEffects = false;
6
6
  const exports = {
@@ -1411,8 +1411,19 @@ async function cacheExecute(input, operation, handler, event) {
1411
1411
  };
1412
1412
  }
1413
1413
 
1414
- function merge(items) {
1415
- return Object.assign({}, ...Array.isArray(items) ? items : [items]);
1414
+ function merge(items, maxLevel = 4, currentLevel = 3) {
1415
+ const arrayItems = Array.isArray(items) ? items : [items];
1416
+ return arrayItems.reduce((acc, item) => {
1417
+ Object.keys(item).forEach((key) => {
1418
+ if (typeof item[key] === "object" && item[key] !== null && currentLevel < maxLevel) {
1419
+ acc[key] = acc[key] || {};
1420
+ acc[key] = merge([acc[key], item[key]], maxLevel, currentLevel + 1);
1421
+ } else {
1422
+ acc[key] = item[key];
1423
+ }
1424
+ });
1425
+ return acc;
1426
+ }, {});
1416
1427
  }
1417
1428
  function mergeSchemas(typesOrArray) {
1418
1429
  return merge(typesOrArray);
@@ -1,3 +1,3 @@
1
- const version = "0.4.4";
1
+ const version = "0.4.5";
2
2
 
3
3
  export { version };
@@ -1,3 +1,3 @@
1
- const version = "0.4.4";
1
+ const version = "0.4.5";
2
2
 
3
3
  export { version };
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "silgi",
3
3
  "type": "module",
4
- "version": "0.4.4",
4
+ "version": "0.4.5",
5
5
  "sideEffects": false,
6
6
  "exports": {
7
7
  "./cli": {