aboutsummaryrefslogtreecommitdiff
path: root/node_modules/algoliasearch/src/browser/migration-layer/script.js
blob: 9d12315f25cd88790cd0b07a691ada218c4bbab0 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
'use strict';

// This script will be browserified and prepended to the normal build
// directly in window, not wrapped in any module definition
// To avoid cases where we are loaded with /latest/ along with
migrationLayer(process.env.ALGOLIA_BUILDNAME);

// Now onto the V2 related code:
//  If the client is using /latest/$BUILDNAME.min.js, load V2 of the library
//
//  Otherwise, setup a migration layer that will throw on old constructors like
//  new AlgoliaSearch().
//  So that users upgrading from v2 to v3 will have a clear information
//  message on what to do if they did not read the migration guide
function migrationLayer(buildName) {
  var isUsingLatest = require('./is-using-latest');
  var loadV2 = require('./load-v2');
  var oldGlobals = require('./old-globals');

  if (isUsingLatest(buildName)) {
    loadV2(buildName);
  } else {
    oldGlobals();
  }
}