@smg-automotive/auth 6.8.0-auth0-update-handle-auth0-errors.1 → 6.8.0-auth0-update-login-customisations.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,12 +1,16 @@
1
1
  import { Language } from '@smg-automotive/i18n-pkg';
2
+ import { Brand } from 'src/types/brand';
2
3
  import { Auth0Config } from 'src/types';
3
4
  export declare const getLogoutLink: ({ returnTo, language, auth0Config, }: {
4
5
  returnTo?: string;
5
6
  language?: Language;
6
7
  auth0Config: Auth0Config | null;
7
8
  }) => string;
8
- export declare const getLoginLink: ({ returnTo, language, auth0Config, }: {
9
+ export declare const getLoginLink: ({ returnTo, language, auth0Config, selectedSellerId, impersonateSellerId, brand, }: {
9
10
  returnTo?: string;
10
11
  language?: Language;
11
12
  auth0Config: Auth0Config | null;
13
+ selectedSellerId?: string;
14
+ impersonateSellerId?: string;
15
+ brand: Brand;
12
16
  }) => string;
@@ -1,15 +1,30 @@
1
1
  'use strict';
2
2
 
3
3
  var i18nPkg = require('@smg-automotive/i18n-pkg');
4
+ var brand = require('../types/brand.js');
4
5
 
5
- const getLoginLink = ({ returnTo, language = i18nPkg.defaultLanguage, auth0Config, }) => {
6
+ const mapLegacyVehicleTypeGroup = (brand$1) => {
7
+ switch (brand$1) {
8
+ case brand.Brand.AutoScout24:
9
+ return '1';
10
+ case brand.Brand.MotoScout24:
11
+ return '2';
12
+ }
13
+ };
14
+ const getLoginLink = ({ returnTo, language = i18nPkg.defaultLanguage, auth0Config, selectedSellerId, impersonateSellerId, brand, }) => {
6
15
  if (!auth0Config) {
7
16
  throw new Error('Missing auth0Config');
8
17
  }
9
- const encodedReturnTo = returnTo
10
- ? `&returnTo=${encodeURIComponent(returnTo)}`
11
- : '';
12
- return `${auth0Config.loginEndpoint}?locale=${language}${encodedReturnTo}`;
18
+ const searchParams = new URLSearchParams({
19
+ locale: language,
20
+ legacy_vehicletypegroup_id: mapLegacyVehicleTypeGroup(brand),
21
+ ...(selectedSellerId ? { seller_id: selectedSellerId } : {}),
22
+ ...(impersonateSellerId
23
+ ? { impersonate_seller_id: impersonateSellerId }
24
+ : {}),
25
+ ...(returnTo ? { returnTo: returnTo } : {}),
26
+ });
27
+ return `${auth0Config.loginEndpoint}?${searchParams.toString()}`;
13
28
  };
14
29
 
15
30
  exports.getLoginLink = getLoginLink;
@@ -1 +1 @@
1
- {"version":3,"file":"authLinks.js","sources":["../../../../src/lib/authLinks.ts"],"sourcesContent":[null],"names":["defaultLanguage"],"mappings":";;;;AAwBO,MAAM,YAAY,GAAG,CAAC,EAC3B,QAAQ,EACR,QAAQ,GAAGA,uBAAe,EAC1B,WAAW,GAKZ,KAAI;IACH,IAAI,CAAC,WAAW,EAAE;AAChB,QAAA,MAAM,IAAI,KAAK,CAAC,qBAAqB,CAAC;IACxC;IACA,MAAM,eAAe,GAAG;AACtB,UAAE,CAAA,UAAA,EAAa,kBAAkB,CAAC,QAAQ,CAAC,CAAA;UACzC,EAAE;IAEN,OAAO,CAAA,EAAG,WAAW,CAAC,aAAa,WAAW,QAAQ,CAAA,EAAG,eAAe,CAAA,CAAE;AAC5E;;;;"}
1
+ {"version":3,"file":"authLinks.js","sources":["../../../../src/lib/authLinks.ts"],"sourcesContent":[null],"names":["brand","Brand","defaultLanguage"],"mappings":";;;;;AAKA,MAAM,yBAAyB,GAAG,CAACA,OAAY,KAAI;IACjD,QAAQA,OAAK;QACX,KAAKC,WAAK,CAAC,WAAW;AACpB,YAAA,OAAO,GAAG;QACZ,KAAKA,WAAK,CAAC,WAAW;AACpB,YAAA,OAAO,GAAG;;AAEhB,CAAC;MAsBY,YAAY,GAAG,CAAC,EAC3B,QAAQ,EACR,QAAQ,GAAGC,uBAAe,EAC1B,WAAW,EACX,gBAAgB,EAChB,mBAAmB,EACnB,KAAK,GAQN,KAAI;IACH,IAAI,CAAC,WAAW,EAAE;AAChB,QAAA,MAAM,IAAI,KAAK,CAAC,qBAAqB,CAAC;IACxC;AAEA,IAAA,MAAM,YAAY,GAAG,IAAI,eAAe,CAAC;AACvC,QAAA,MAAM,EAAE,QAAQ;AAChB,QAAA,0BAA0B,EAAE,yBAAyB,CAAC,KAAK,CAAC;AAC5D,QAAA,IAAI,gBAAgB,GAAG,EAAE,SAAS,EAAE,gBAAgB,EAAE,GAAG,EAAE,CAAC;AAC5D,QAAA,IAAI;AACF,cAAE,EAAE,qBAAqB,EAAE,mBAAmB;cAC5C,EAAE,CAAC;AACP,QAAA,IAAI,QAAQ,GAAG,EAAE,QAAQ,EAAE,QAAQ,EAAE,GAAG,EAAE,CAAC;AAC5C,KAAA,CAAC;IAEF,OAAO,CAAA,EAAG,WAAW,CAAC,aAAa,CAAA,CAAA,EAAI,YAAY,CAAC,QAAQ,EAAE,CAAA,CAAE;AAClE;;;;"}
@@ -1,15 +1,30 @@
1
1
  'use strict';
2
2
 
3
3
  var server = require('next/server');
4
+ var brand = require('../types/brand.js');
4
5
  var authLinks = require('../lib/authLinks.js');
5
6
  var auth0 = require('../config/auth0.js');
6
7
  var getAuth0Instance = require('./getAuth0Instance.js');
7
8
 
9
+ const deriveBrandFromOrigin = (origin) => {
10
+ const isLocalhost = origin.includes('localhost');
11
+ const isAutoscout24 = origin.includes(brand.Brand.AutoScout24.toLowerCase());
12
+ const isMotoScout24 = origin.includes(brand.Brand.MotoScout24.toLowerCase());
13
+ if (isLocalhost || isAutoscout24) {
14
+ return brand.Brand.AutoScout24;
15
+ }
16
+ if (isMotoScout24) {
17
+ return brand.Brand.MotoScout24;
18
+ }
19
+ throw new Error(`Brand could not be derived for the host: ${origin}`);
20
+ };
8
21
  const redirectToLogin = ({ auth0Config, language, returnTo, origin, }) => {
22
+ const brand = deriveBrandFromOrigin(origin);
9
23
  const loginUrl = authLinks.getLoginLink({
10
24
  auth0Config,
11
25
  language,
12
26
  returnTo,
27
+ brand,
13
28
  });
14
29
  return server.NextResponse.redirect(new URL(loginUrl, origin), {
15
30
  status: 307,
@@ -1 +1 @@
1
- {"version":3,"file":"middleware.js","sources":["../../../../src/server/middleware.ts"],"sourcesContent":[null],"names":["getLoginLink","NextResponse","getAuth0Instance","getAuth0Config"],"mappings":";;;;;;;AAWA,MAAM,eAAe,GAAG,CAAC,EACvB,WAAW,EACX,QAAQ,EACR,QAAQ,EACR,MAAM,GAMP,KAAI;IACH,MAAM,QAAQ,GAAGA,sBAAY,CAAC;QAC5B,WAAW;QACX,QAAQ;QACR,QAAQ;AACT,KAAA,CAAC;IAEF,OAAOC,mBAAY,CAAC,QAAQ,CAAC,IAAI,GAAG,CAAC,QAAQ,EAAE,MAAM,CAAC,EAAE;AACtD,QAAA,MAAM,EAAE,GAAG;AACZ,KAAA,CAAC;AACJ,CAAC;AAED,MAAM,WAAW,GAAG,CAAC,QAAgB,EAAE,WAAwB,KAAI;AACjE,IAAA,MAAM,EACJ,aAAa,EACb,cAAc,EACd,gBAAgB,EAChB,mBAAmB,EACnB,aAAa,GACd,GAAG,WAAW;IAEf,OAAO;QACL,aAAa;QACb,cAAc;QACd,gBAAgB;QAChB,mBAAmB;QACnB,aAAa;AACd,KAAA,CAAC,QAAQ,CAAC,QAAQ,CAAC;AACtB,CAAC;MAEY,cAAc,GAAG,OAAO,EACnC,OAAO,EACP,gBAAgB,EAChB,QAAQ,EACR,IAAI,EACJ,QAAQ,EACR,SAAS,EACT,OAAO,GASR,KAA2B;IAC1B,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,OAAO;AACpD,IAAA,MAAM,aAAa,GAAGC,iCAAgB,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,SAAS,EAAE,CAAC;IAErE,MAAM,WAAW,GAAGC,oBAAc,CAAC,EAAE,SAAS,EAAE,CAAC;IACjD,MAAM,gBAAgB,GAAG,QAAQ,CAAC,QAAQ,CAAC,WAAW,CAAC,mBAAmB,CAAC;IAE3E,MAAM,YAAY,GAAG,MAAM,aAAa,CAAC,UAAU,CAAC,OAAO,CAAC;AAE5D,IAAA,IACE,gBAAgB;AAChB,QAAA,WAAW,CAAC,QAAQ,EAAE,WAAW,CAAC;AAClC,QAAA,CAAC,gBAAgB,CAAC,QAAQ,CAAC,EAC3B;AACA,QAAA,OAAO,YAAY;IACrB;IAEA,MAAM,OAAO,GAAG,MAAM,aAAa,CAAC,UAAU,CAAC,OAAO,CAAC;IAEvD,IAAI,CAAC,OAAO,EAAE;AACZ,QAAA,OAAO,eAAe,CAAC;YACrB,WAAW;YACX,QAAQ;AACR,YAAA,QAAQ,EAAE,CAAA,EAAG,QAAQ,CAAA,EAAG,MAAM,CAAA,CAAE;YAChC,MAAM;AACP,SAAA,CAAC;IACJ;AAEA,IAAA,IAAI;;QAEF,MAAM,aAAa,CAAC,cAAc,CAAC,OAAO,EAAE,YAAY,CAAC;IAC3D;IAAE,OAAO,KAAK,EAAE;QACd,MAAM,SAAS,GAAG,KAAiB;AACnC,QAAA,OAAO,GAAG,SAAS,CAAC;AAEpB,QAAA,OAAO,eAAe,CAAC;YACrB,WAAW;YACX,QAAQ;AACR,YAAA,QAAQ,EAAE,CAAA,EAAG,QAAQ,CAAA,EAAG,MAAM,CAAA,CAAE;YAChC,MAAM;AACP,SAAA,CAAC;IACJ;AAEA,IAAA,MAAM,2BAA2B,GAAGF,mBAAY,CAAC,IAAI,CAAC;AACpD,QAAA,OAAO,EAAE;YACP,OAAO,EAAE,OAAO,CAAC,OAAO;AACzB,SAAA;AACF,KAAA,CAAC;IACF,YAAY,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,GAAG,KAAI;QAC1C,2BAA2B,CAAC,OAAO,CAAC,GAAG,CAAC,GAAG,EAAE,KAAK,CAAC;AACrD,IAAA,CAAC,CAAC;AAEF,IAAA,OAAO,2BAA2B;AACpC;;;;"}
1
+ {"version":3,"file":"middleware.js","sources":["../../../../src/server/middleware.ts"],"sourcesContent":[null],"names":["Brand","getLoginLink","NextResponse","getAuth0Instance","getAuth0Config"],"mappings":"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"}
@@ -0,0 +1,8 @@
1
+ 'use strict';
2
+
3
+ exports.Brand = void 0;
4
+ (function (Brand) {
5
+ Brand["AutoScout24"] = "autoscout24";
6
+ Brand["MotoScout24"] = "motoscout24";
7
+ })(exports.Brand || (exports.Brand = {}));
8
+ //# sourceMappingURL=brand.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"brand.js","sources":["../../../../src/types/brand.ts"],"sourcesContent":[null],"names":["Brand"],"mappings":";;AAAYA;AAAZ,CAAA,UAAY,KAAK,EAAA;AACf,IAAA,KAAA,CAAA,aAAA,CAAA,GAAA,aAA2B;AAC3B,IAAA,KAAA,CAAA,aAAA,CAAA,GAAA,aAA2B;AAC7B,CAAC,EAHWA,aAAK,KAALA,aAAK,GAAA,EAAA,CAAA,CAAA;;"}
@@ -1,12 +1,16 @@
1
1
  import { Language } from '@smg-automotive/i18n-pkg';
2
+ import { Brand } from 'src/types/brand';
2
3
  import { Auth0Config } from 'src/types';
3
4
  export declare const getLogoutLink: ({ returnTo, language, auth0Config, }: {
4
5
  returnTo?: string;
5
6
  language?: Language;
6
7
  auth0Config: Auth0Config | null;
7
8
  }) => string;
8
- export declare const getLoginLink: ({ returnTo, language, auth0Config, }: {
9
+ export declare const getLoginLink: ({ returnTo, language, auth0Config, selectedSellerId, impersonateSellerId, brand, }: {
9
10
  returnTo?: string;
10
11
  language?: Language;
11
12
  auth0Config: Auth0Config | null;
13
+ selectedSellerId?: string;
14
+ impersonateSellerId?: string;
15
+ brand: Brand;
12
16
  }) => string;
@@ -1,13 +1,28 @@
1
1
  import { defaultLanguage } from '@smg-automotive/i18n-pkg';
2
+ import { Brand } from '../types/brand.js';
2
3
 
3
- const getLoginLink = ({ returnTo, language = defaultLanguage, auth0Config, }) => {
4
+ const mapLegacyVehicleTypeGroup = (brand) => {
5
+ switch (brand) {
6
+ case Brand.AutoScout24:
7
+ return '1';
8
+ case Brand.MotoScout24:
9
+ return '2';
10
+ }
11
+ };
12
+ const getLoginLink = ({ returnTo, language = defaultLanguage, auth0Config, selectedSellerId, impersonateSellerId, brand, }) => {
4
13
  if (!auth0Config) {
5
14
  throw new Error('Missing auth0Config');
6
15
  }
7
- const encodedReturnTo = returnTo
8
- ? `&returnTo=${encodeURIComponent(returnTo)}`
9
- : '';
10
- return `${auth0Config.loginEndpoint}?locale=${language}${encodedReturnTo}`;
16
+ const searchParams = new URLSearchParams({
17
+ locale: language,
18
+ legacy_vehicletypegroup_id: mapLegacyVehicleTypeGroup(brand),
19
+ ...(selectedSellerId ? { seller_id: selectedSellerId } : {}),
20
+ ...(impersonateSellerId
21
+ ? { impersonate_seller_id: impersonateSellerId }
22
+ : {}),
23
+ ...(returnTo ? { returnTo: returnTo } : {}),
24
+ });
25
+ return `${auth0Config.loginEndpoint}?${searchParams.toString()}`;
11
26
  };
12
27
 
13
28
  export { getLoginLink };
@@ -1 +1 @@
1
- {"version":3,"file":"authLinks.js","sources":["../../../../src/lib/authLinks.ts"],"sourcesContent":[null],"names":[],"mappings":";;AAwBO,MAAM,YAAY,GAAG,CAAC,EAC3B,QAAQ,EACR,QAAQ,GAAG,eAAe,EAC1B,WAAW,GAKZ,KAAI;IACH,IAAI,CAAC,WAAW,EAAE;AAChB,QAAA,MAAM,IAAI,KAAK,CAAC,qBAAqB,CAAC;IACxC;IACA,MAAM,eAAe,GAAG;AACtB,UAAE,CAAA,UAAA,EAAa,kBAAkB,CAAC,QAAQ,CAAC,CAAA;UACzC,EAAE;IAEN,OAAO,CAAA,EAAG,WAAW,CAAC,aAAa,WAAW,QAAQ,CAAA,EAAG,eAAe,CAAA,CAAE;AAC5E;;;;"}
1
+ {"version":3,"file":"authLinks.js","sources":["../../../../src/lib/authLinks.ts"],"sourcesContent":[null],"names":[],"mappings":";;;AAKA,MAAM,yBAAyB,GAAG,CAAC,KAAY,KAAI;IACjD,QAAQ,KAAK;QACX,KAAK,KAAK,CAAC,WAAW;AACpB,YAAA,OAAO,GAAG;QACZ,KAAK,KAAK,CAAC,WAAW;AACpB,YAAA,OAAO,GAAG;;AAEhB,CAAC;MAsBY,YAAY,GAAG,CAAC,EAC3B,QAAQ,EACR,QAAQ,GAAG,eAAe,EAC1B,WAAW,EACX,gBAAgB,EAChB,mBAAmB,EACnB,KAAK,GAQN,KAAI;IACH,IAAI,CAAC,WAAW,EAAE;AAChB,QAAA,MAAM,IAAI,KAAK,CAAC,qBAAqB,CAAC;IACxC;AAEA,IAAA,MAAM,YAAY,GAAG,IAAI,eAAe,CAAC;AACvC,QAAA,MAAM,EAAE,QAAQ;AAChB,QAAA,0BAA0B,EAAE,yBAAyB,CAAC,KAAK,CAAC;AAC5D,QAAA,IAAI,gBAAgB,GAAG,EAAE,SAAS,EAAE,gBAAgB,EAAE,GAAG,EAAE,CAAC;AAC5D,QAAA,IAAI;AACF,cAAE,EAAE,qBAAqB,EAAE,mBAAmB;cAC5C,EAAE,CAAC;AACP,QAAA,IAAI,QAAQ,GAAG,EAAE,QAAQ,EAAE,QAAQ,EAAE,GAAG,EAAE,CAAC;AAC5C,KAAA,CAAC;IAEF,OAAO,CAAA,EAAG,WAAW,CAAC,aAAa,CAAA,CAAA,EAAI,YAAY,CAAC,QAAQ,EAAE,CAAA,CAAE;AAClE;;;;"}
@@ -1,13 +1,28 @@
1
1
  import { NextResponse } from 'next/server';
2
+ import { Brand } from '../types/brand.js';
2
3
  import { getLoginLink } from '../lib/authLinks.js';
3
4
  import { getAuth0Config } from '../config/auth0.js';
4
5
  import { getAuth0Instance } from './getAuth0Instance.js';
5
6
 
7
+ const deriveBrandFromOrigin = (origin) => {
8
+ const isLocalhost = origin.includes('localhost');
9
+ const isAutoscout24 = origin.includes(Brand.AutoScout24.toLowerCase());
10
+ const isMotoScout24 = origin.includes(Brand.MotoScout24.toLowerCase());
11
+ if (isLocalhost || isAutoscout24) {
12
+ return Brand.AutoScout24;
13
+ }
14
+ if (isMotoScout24) {
15
+ return Brand.MotoScout24;
16
+ }
17
+ throw new Error(`Brand could not be derived for the host: ${origin}`);
18
+ };
6
19
  const redirectToLogin = ({ auth0Config, language, returnTo, origin, }) => {
20
+ const brand = deriveBrandFromOrigin(origin);
7
21
  const loginUrl = getLoginLink({
8
22
  auth0Config,
9
23
  language,
10
24
  returnTo,
25
+ brand,
11
26
  });
12
27
  return NextResponse.redirect(new URL(loginUrl, origin), {
13
28
  status: 307,
@@ -1 +1 @@
1
- {"version":3,"file":"middleware.js","sources":["../../../../src/server/middleware.ts"],"sourcesContent":[null],"names":[],"mappings":";;;;;AAWA,MAAM,eAAe,GAAG,CAAC,EACvB,WAAW,EACX,QAAQ,EACR,QAAQ,EACR,MAAM,GAMP,KAAI;IACH,MAAM,QAAQ,GAAG,YAAY,CAAC;QAC5B,WAAW;QACX,QAAQ;QACR,QAAQ;AACT,KAAA,CAAC;IAEF,OAAO,YAAY,CAAC,QAAQ,CAAC,IAAI,GAAG,CAAC,QAAQ,EAAE,MAAM,CAAC,EAAE;AACtD,QAAA,MAAM,EAAE,GAAG;AACZ,KAAA,CAAC;AACJ,CAAC;AAED,MAAM,WAAW,GAAG,CAAC,QAAgB,EAAE,WAAwB,KAAI;AACjE,IAAA,MAAM,EACJ,aAAa,EACb,cAAc,EACd,gBAAgB,EAChB,mBAAmB,EACnB,aAAa,GACd,GAAG,WAAW;IAEf,OAAO;QACL,aAAa;QACb,cAAc;QACd,gBAAgB;QAChB,mBAAmB;QACnB,aAAa;AACd,KAAA,CAAC,QAAQ,CAAC,QAAQ,CAAC;AACtB,CAAC;MAEY,cAAc,GAAG,OAAO,EACnC,OAAO,EACP,gBAAgB,EAChB,QAAQ,EACR,IAAI,EACJ,QAAQ,EACR,SAAS,EACT,OAAO,GASR,KAA2B;IAC1B,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,OAAO;AACpD,IAAA,MAAM,aAAa,GAAG,gBAAgB,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,SAAS,EAAE,CAAC;IAErE,MAAM,WAAW,GAAG,cAAc,CAAC,EAAE,SAAS,EAAE,CAAC;IACjD,MAAM,gBAAgB,GAAG,QAAQ,CAAC,QAAQ,CAAC,WAAW,CAAC,mBAAmB,CAAC;IAE3E,MAAM,YAAY,GAAG,MAAM,aAAa,CAAC,UAAU,CAAC,OAAO,CAAC;AAE5D,IAAA,IACE,gBAAgB;AAChB,QAAA,WAAW,CAAC,QAAQ,EAAE,WAAW,CAAC;AAClC,QAAA,CAAC,gBAAgB,CAAC,QAAQ,CAAC,EAC3B;AACA,QAAA,OAAO,YAAY;IACrB;IAEA,MAAM,OAAO,GAAG,MAAM,aAAa,CAAC,UAAU,CAAC,OAAO,CAAC;IAEvD,IAAI,CAAC,OAAO,EAAE;AACZ,QAAA,OAAO,eAAe,CAAC;YACrB,WAAW;YACX,QAAQ;AACR,YAAA,QAAQ,EAAE,CAAA,EAAG,QAAQ,CAAA,EAAG,MAAM,CAAA,CAAE;YAChC,MAAM;AACP,SAAA,CAAC;IACJ;AAEA,IAAA,IAAI;;QAEF,MAAM,aAAa,CAAC,cAAc,CAAC,OAAO,EAAE,YAAY,CAAC;IAC3D;IAAE,OAAO,KAAK,EAAE;QACd,MAAM,SAAS,GAAG,KAAiB;AACnC,QAAA,OAAO,GAAG,SAAS,CAAC;AAEpB,QAAA,OAAO,eAAe,CAAC;YACrB,WAAW;YACX,QAAQ;AACR,YAAA,QAAQ,EAAE,CAAA,EAAG,QAAQ,CAAA,EAAG,MAAM,CAAA,CAAE;YAChC,MAAM;AACP,SAAA,CAAC;IACJ;AAEA,IAAA,MAAM,2BAA2B,GAAG,YAAY,CAAC,IAAI,CAAC;AACpD,QAAA,OAAO,EAAE;YACP,OAAO,EAAE,OAAO,CAAC,OAAO;AACzB,SAAA;AACF,KAAA,CAAC;IACF,YAAY,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,GAAG,KAAI;QAC1C,2BAA2B,CAAC,OAAO,CAAC,GAAG,CAAC,GAAG,EAAE,KAAK,CAAC;AACrD,IAAA,CAAC,CAAC;AAEF,IAAA,OAAO,2BAA2B;AACpC;;;;"}
1
+ {"version":3,"file":"middleware.js","sources":["../../../../src/server/middleware.ts"],"sourcesContent":[null],"names":[],"mappings":";;;;;;AAYA,MAAM,qBAAqB,GAAG,CAAC,MAAc,KAAW;IACtD,MAAM,WAAW,GAAG,MAAM,CAAC,QAAQ,CAAC,WAAW,CAAC;AAChD,IAAA,MAAM,aAAa,GAAG,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,WAAW,CAAC,WAAW,EAAE,CAAC;AACtE,IAAA,MAAM,aAAa,GAAG,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,WAAW,CAAC,WAAW,EAAE,CAAC;AAEtE,IAAA,IAAI,WAAW,IAAI,aAAa,EAAE;QAChC,OAAO,KAAK,CAAC,WAAW;IAC1B;IAEA,IAAI,aAAa,EAAE;QACjB,OAAO,KAAK,CAAC,WAAW;IAC1B;AAEA,IAAA,MAAM,IAAI,KAAK,CAAC,4CAA4C,MAAM,CAAA,CAAE,CAAC;AACvE,CAAC;AAED,MAAM,eAAe,GAAG,CAAC,EACvB,WAAW,EACX,QAAQ,EACR,QAAQ,EACR,MAAM,GAMP,KAAI;AACH,IAAA,MAAM,KAAK,GAAG,qBAAqB,CAAC,MAAM,CAAC;IAE3C,MAAM,QAAQ,GAAG,YAAY,CAAC;QAC5B,WAAW;QACX,QAAQ;QACR,QAAQ;QACR,KAAK;AACN,KAAA,CAAC;IAEF,OAAO,YAAY,CAAC,QAAQ,CAAC,IAAI,GAAG,CAAC,QAAQ,EAAE,MAAM,CAAC,EAAE;AACtD,QAAA,MAAM,EAAE,GAAG;AACZ,KAAA,CAAC;AACJ,CAAC;AAED,MAAM,WAAW,GAAG,CAAC,QAAgB,EAAE,WAAwB,KAAI;AACjE,IAAA,MAAM,EACJ,aAAa,EACb,cAAc,EACd,gBAAgB,EAChB,mBAAmB,EACnB,aAAa,GACd,GAAG,WAAW;IAEf,OAAO;QACL,aAAa;QACb,cAAc;QACd,gBAAgB;QAChB,mBAAmB;QACnB,aAAa;AACd,KAAA,CAAC,QAAQ,CAAC,QAAQ,CAAC;AACtB,CAAC;MAEY,cAAc,GAAG,OAAO,EACnC,OAAO,EACP,gBAAgB,EAChB,QAAQ,EACR,IAAI,EACJ,QAAQ,EACR,SAAS,EACT,OAAO,GASR,KAA2B;IAC1B,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,OAAO;AACpD,IAAA,MAAM,aAAa,GAAG,gBAAgB,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,SAAS,EAAE,CAAC;IAErE,MAAM,WAAW,GAAG,cAAc,CAAC,EAAE,SAAS,EAAE,CAAC;IACjD,MAAM,gBAAgB,GAAG,QAAQ,CAAC,QAAQ,CAAC,WAAW,CAAC,mBAAmB,CAAC;IAE3E,MAAM,YAAY,GAAG,MAAM,aAAa,CAAC,UAAU,CAAC,OAAO,CAAC;AAE5D,IAAA,IACE,gBAAgB;AAChB,QAAA,WAAW,CAAC,QAAQ,EAAE,WAAW,CAAC;AAClC,QAAA,CAAC,gBAAgB,CAAC,QAAQ,CAAC,EAC3B;AACA,QAAA,OAAO,YAAY;IACrB;IAEA,MAAM,OAAO,GAAG,MAAM,aAAa,CAAC,UAAU,CAAC,OAAO,CAAC;IAEvD,IAAI,CAAC,OAAO,EAAE;AACZ,QAAA,OAAO,eAAe,CAAC;YACrB,WAAW;YACX,QAAQ;AACR,YAAA,QAAQ,EAAE,CAAA,EAAG,QAAQ,CAAA,EAAG,MAAM,CAAA,CAAE;YAChC,MAAM;AACP,SAAA,CAAC;IACJ;AAEA,IAAA,IAAI;;QAEF,MAAM,aAAa,CAAC,cAAc,CAAC,OAAO,EAAE,YAAY,CAAC;IAC3D;IAAE,OAAO,KAAK,EAAE;QACd,MAAM,SAAS,GAAG,KAAiB;AACnC,QAAA,OAAO,GAAG,SAAS,CAAC;AAEpB,QAAA,OAAO,eAAe,CAAC;YACrB,WAAW;YACX,QAAQ;AACR,YAAA,QAAQ,EAAE,CAAA,EAAG,QAAQ,CAAA,EAAG,MAAM,CAAA,CAAE;YAChC,MAAM;AACP,SAAA,CAAC;IACJ;AAEA,IAAA,MAAM,2BAA2B,GAAG,YAAY,CAAC,IAAI,CAAC;AACpD,QAAA,OAAO,EAAE;YACP,OAAO,EAAE,OAAO,CAAC,OAAO;AACzB,SAAA;AACF,KAAA,CAAC;IACF,YAAY,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,GAAG,KAAI;QAC1C,2BAA2B,CAAC,OAAO,CAAC,GAAG,CAAC,GAAG,EAAE,KAAK,CAAC;AACrD,IAAA,CAAC,CAAC;AAEF,IAAA,OAAO,2BAA2B;AACpC;;;;"}
@@ -0,0 +1,8 @@
1
+ var Brand;
2
+ (function (Brand) {
3
+ Brand["AutoScout24"] = "autoscout24";
4
+ Brand["MotoScout24"] = "motoscout24";
5
+ })(Brand || (Brand = {}));
6
+
7
+ export { Brand };
8
+ //# sourceMappingURL=brand.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"brand.js","sources":["../../../../src/types/brand.ts"],"sourcesContent":[null],"names":[],"mappings":"IAAY;AAAZ,CAAA,UAAY,KAAK,EAAA;AACf,IAAA,KAAA,CAAA,aAAA,CAAA,GAAA,aAA2B;AAC3B,IAAA,KAAA,CAAA,aAAA,CAAA,GAAA,aAA2B;AAC7B,CAAC,EAHW,KAAK,KAAL,KAAK,GAAA,EAAA,CAAA,CAAA;;;;"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@smg-automotive/auth",
3
- "version": "6.8.0-auth0-update-handle-auth0-errors.1",
3
+ "version": "6.8.0-auth0-update-login-customisations.1",
4
4
  "description": "SMG Automotive auth package",
5
5
  "exports": {
6
6
  ".": {