angular-three 3.2.1 → 3.2.3

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.
@@ -786,6 +786,10 @@ class NgtArgs {
786
786
  const value = this.args();
787
787
  if (value == null || !Array.isArray(value) || (value.length === 1 && value[0] === null))
788
788
  return;
789
+ if (is.equ(value, this.injectedArgs)) {
790
+ // we have the same value as before, no need to update
791
+ return;
792
+ }
789
793
  this.injected = false;
790
794
  this.injectedArgs = value;
791
795
  this.createView();
@@ -1470,8 +1474,8 @@ function removeThreeChild(child, parent, dispose) {
1470
1474
  // clear parent ref
1471
1475
  cLS?.setParent(null);
1472
1476
  // remove child from parent
1473
- pLS?.remove(child, 'objects');
1474
- pLS?.remove(child, 'nonObjects');
1477
+ pLS?.remove?.(child, 'objects');
1478
+ pLS?.remove?.(child, 'nonObjects');
1475
1479
  if (parent) {
1476
1480
  if (cLS?.attach) {
1477
1481
  detach(parent, child, cLS.attach);
@@ -3269,7 +3273,7 @@ function omit(objFn, keysToOmit) {
3269
3273
  Object.assign(result, { [key]: obj[key] });
3270
3274
  }
3271
3275
  return result;
3272
- });
3276
+ }, { equal: (a, b) => is.equ(a, b, { objects: 'shallow', arrays: 'shallow' }) });
3273
3277
  }
3274
3278
  function pick(objFn, keyOrKeys) {
3275
3279
  if (Array.isArray(keyOrKeys)) {