# leadin/11.0.56/scripts/shared/Meeting/hooks/useMeetingsScript.ts

HubSpot All-In-One Marketing – Forms, Popups, Live Chat, version 11.0.56. 31 lines.

- Page: https://pluginprobe.com/plugins/leadin/11.0.56/code/scripts/shared/Meeting/hooks/useMeetingsScript.ts
- Raw: https://pluginprobe.com/plugins/leadin/11.0.56/raw/scripts/shared/Meeting/hooks/useMeetingsScript.ts
- Modified: 2024-04-16T14:11:42+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.0.56/code/scripts/shared/Meeting/hooks/useMeetingsScript.ts#L10-L20`.

```typescript
import $ from 'jquery';

import { useState, useEffect } from 'react';
import { meetingsScript } from '../../../constants/leadinConfig';
import Raven from '../../../lib/Raven';

let promise: Promise<any>;

function loadMeetingsScript() {
  if (!promise) {
    promise = new Promise((resolve, reject) =>
      $.getScript(meetingsScript)
        .done(resolve)
        .fail(reject)
    );
  }
  return promise;
}

export default function useMeetingsScript() {
  const [ready, setReady] = useState(false);

  useEffect(() => {
    loadMeetingsScript()
      .then(() => setReady(true))
      .catch(error => Raven.captureException(error));
  }, []);

  return ready;
}

```
