export function getProperties()

in Composer/packages/lib/indexers/src/dialogUtils/extractMemoryPaths.ts [16:44]


export function getProperties(value: any): string[] {
  let properties: string[] = [];
  switch (value.$kind) {
    case SDKKinds.NumberInput:
    case SDKKinds.TextInput:
    case SDKKinds.ConfirmInput:
    case SDKKinds.ChoiceInput:
    case SDKKinds.AttachmentInput:
    case SDKKinds.DateTimeInput:
    case SDKKinds.SetProperty:
      properties = [value.property];
      break;
    case SDKKinds.OAuthInput:
      properties = [value.tokenProperty];
      break;
    case SDKKinds.SetProperties:
      properties = value.assignments?.map((assignment) => assignment.property);
      break;
    case SDKKinds.HttpRequest:
      properties = [value.resultProperty];
      break;
  }
  return (
    properties?.reduce((result: string[], property) => {
      if (typeof property === 'string' && checkProperty(property)) result.push(property);
      return result;
    }, []) || []
  );
}