export function serializeFeatureFlagValue()

in libraries/azure-app-configuration-importer/src/internal/utils.ts [191:223]


export function serializeFeatureFlagValue(featureFlagValue: MsFeatureFlagValue): string {
  if (!featureFlagValue) {
    throw new TypeError("Invalid feature flag value");
  }

  const jsonFeatureFlagValue: any = {
    id: featureFlagValue.id,
    enabled: featureFlagValue.enabled,
    description: featureFlagValue.description,
    conditions: {
      client_filters: featureFlagValue.conditions?.clientFilters
    },
    display_name: featureFlagValue.displayName
  };

  if (featureFlagValue.conditions && featureFlagValue.conditions.requirementType) {
    jsonFeatureFlagValue.conditions.requirement_type = featureFlagValue.conditions.requirementType;
  }

  if (featureFlagValue.allocation) {
    jsonFeatureFlagValue.allocation = featureFlagValue.allocation;
  }

  if (featureFlagValue.variants) {
    jsonFeatureFlagValue.variants = featureFlagValue.variants;
  }

  if (featureFlagValue.telemetry) {
    jsonFeatureFlagValue.telemetry = featureFlagValue.telemetry;
  }

  return JSON.stringify(jsonFeatureFlagValue);
}