Why Gemfury? Push, build, and install  RubyGems npm packages Python packages Maven artifacts PHP packages Go Modules Debian packages RPM packages NuGet packages

Repository URL to install this package:

Details    
@doodle/lib-paywall / src / utils / getStatusFromUserData.js
Size: Mime:
import formatAppSettings from './formatAppSettings';
import { store } from '../state/store';
import { setData } from '../state/actions';
import checkQCRules from './checkQCRules';

export default ({ data, token, trackingEventPrefix, apiHost, duplicateId }) => {
  const parsedData = JSON.parse(data);
  const { activeCalendarCount, activeCalendarMax, segments } = parsedData.subscriptionFeatures;
  const { appSettings, primaryCalendarAccountId } = parsedData;
  const formattedAppSettings = formatAppSettings(appSettings);

  if (duplicateId) {
    store.dispatch(
      setData({
        activeCalendarCount,
        activeCalendarMax,
        segments,
        trackingEventPrefix,
        duplicateId,
        primaryCalendarAccountId,
      })
    );
  } else {
    store.dispatch(
      setData({
        token,
        activeCalendarCount,
        activeCalendarMax,
        segments,
        trackingEventPrefix,
        primaryCalendarAccountId,
      })
    );
  }

  const status = checkQCRules({
    segments,
    activeCalendarMax,
    activeCalendarCount,
    appSettings: formattedAppSettings,
    token,
    apiHost,
  });

  return { status, primaryCalendarAccountId };
};