# leadin/11.3.75/scripts/elementor/FormWidget/ElementorFormSelect.tsx

HubSpot All-In-One Marketing – Forms, Popups, Live Chat, version 11.3.75. 65 lines.

- Page: https://pluginprobe.com/plugins/leadin/11.3.75/code/scripts/elementor/FormWidget/ElementorFormSelect.tsx
- Raw: https://pluginprobe.com/plugins/leadin/11.3.75/raw/scripts/elementor/FormWidget/ElementorFormSelect.tsx
- Modified: 2026-09-16T15:19:50+00:00

Line numbers below start at 1. Link to a line or a range by appending a fragment to the
page URL, for example `https://pluginprobe.com/plugins/leadin/11.3.75/code/scripts/elementor/FormWidget/ElementorFormSelect.tsx#L10-L20`.

```tsx
import { portalId } from '../../constants/leadinConfig';
import { __ } from '@wordpress/i18n';
import ElementorBanner from '../Common/ElementorBanner';
import UISpinner from '../../shared/UIComponents/UISpinner';
import useForms from './hooks/useForms';
import EmbedderContainer from '../../shared/Common/EmbedderContainer';

interface IElementorFormSelectProps {
  formId: string;
  setAttributes: Function;
}

function ElementorFormSelect({
  formId,
  setAttributes,
}: IElementorFormSelectProps) {
  const { hasError, forms, loading } = useForms();

  return loading ? (
    <div>
      <UISpinner />
    </div>
  ) : hasError ? (
    <ElementorBanner type="danger">
      {__('Please refresh your forms or try again in a few minutes', 'leadin')}
    </ElementorBanner>
  ) : (
    <select
      value={formId}
      onChange={event => {
        const selectedForm = forms.find(
          form => form.value === event.target.value
        );
        if (selectedForm) {
          setAttributes({
            portalId,
            formId: selectedForm.value,
            formName: selectedForm.label,
            embedVersion: selectedForm.embedVersion,
          });
        }
      }}
    >
      <option value="" disabled={true} selected={true}>
        {__('Search for a form', 'leadin')}
      </option>
      {forms.map(form => (
        <option key={form.value} value={form.value}>
          {form.label}
        </option>
      ))}
    </select>
  );
}

export default function ElementorFormSelectContainer(
  props: IElementorFormSelectProps
) {
  return (
    <EmbedderContainer>
      <ElementorFormSelect {...props} />
    </EmbedderContainer>
  );
}

```
