componentDidUpdate()

in src/amo/components/CollectionAddAddon/index.js [80:112]


  componentDidUpdate(prevProps: InternalProps) {
    const { hasAddonBeenAdded, hasAddonBeenRemoved } = prevProps;
    const {
      errorHandler,
      hasAddonBeenAdded: hasAddonBeenAddedNew,
      hasAddonBeenRemoved: hasAddonBeenRemovedNew,
      setTimeout,
      setUIState,
    } = this.props;

    const addStatusChanged = hasAddonBeenAdded !== hasAddonBeenAddedNew;
    const removeStatusChanged = hasAddonBeenRemoved !== hasAddonBeenRemovedNew;

    if (addStatusChanged) {
      setUIState({
        addonAction: hasAddonBeenAddedNew ? addonAddedAction : null,
      });
    }

    if (removeStatusChanged) {
      setUIState({
        addonAction: hasAddonBeenRemovedNew ? addonRemovedAction : null,
      });
    }

    if (
      (addStatusChanged || removeStatusChanged) &&
      (hasAddonBeenAddedNew || hasAddonBeenRemovedNew)
    ) {
      errorHandler.clear();
      this.timeout = setTimeout(this.resetMessages, MESSAGE_RESET_TIME);
    }
  }