@medipass/utils 11.79.7 → 11.79.8-feature-support-multiple-domains.0

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.
Files changed (3) hide show
  1. package/get-env.d.ts +24 -16
  2. package/get-env.js +48 -15
  3. package/package.json +2 -2
package/get-env.d.ts CHANGED
@@ -1,12 +1,19 @@
1
- declare type Environment = {
1
+ interface SingleEnvironmentPayload {
2
+ INTERCOM_APP_ID?: string;
3
+ HPF_SCRIPT_URL?: string;
4
+ APP_URL: string | string[];
5
+ GOOGLE_ANALYTICS_TRACKING_ID?: string;
6
+ GOOGLE_TAG_MANAGER_ID?: string;
7
+ }
8
+ interface EnvironmentPayload {
2
9
  _global?: Record<string, any>;
3
- local: Record<string, any>;
4
- dev: Record<string, any>;
5
- staging: Record<string, any>;
6
- perf: Record<string, any>;
7
- preprod: Record<string, any>;
8
- prod: Record<string, any>;
9
- };
10
+ local: SingleEnvironmentPayload;
11
+ dev: SingleEnvironmentPayload;
12
+ staging: SingleEnvironmentPayload;
13
+ perf: SingleEnvironmentPayload;
14
+ preprod: SingleEnvironmentPayload;
15
+ prod: SingleEnvironmentPayload;
16
+ }
10
17
  export declare const REQUIRED_VARIABLES: string[];
11
18
  declare const ENV_NAMES: {
12
19
  readonly LOCAL: "local";
@@ -18,14 +25,15 @@ declare const ENV_NAMES: {
18
25
  };
19
26
  declare class Env {
20
27
  [index: string]: any;
21
- ENV_NAME: typeof ENV_NAMES[keyof typeof ENV_NAMES];
22
- FUNDER_URL: string;
23
- CONNECT_URL: string;
24
- CONSUMER_URL: string;
25
- ACCOUNTS_URL: string;
26
- QUOTES_URL: string;
27
- CHECKOUT_URL: string;
28
- setup(env: Environment): void;
28
+ ENV_NAME: typeof ENV_NAMES[keyof typeof ENV_NAMES] | null;
29
+ FUNDER_URL: string | null;
30
+ CONNECT_URL: string | null;
31
+ CONSUMER_URL: string | null;
32
+ ACCOUNTS_URL: string | null;
33
+ QUOTES_URL: string | null;
34
+ CHECKOUT_URL: string | null;
35
+ constructor();
36
+ setup(env: EnvironmentPayload): void;
29
37
  clear(): void;
30
38
  }
31
39
  declare const _default: Env;
package/get-env.js CHANGED
@@ -28,9 +28,22 @@ var ENV_NAMES = {
28
28
  PROD: 'prod'
29
29
  };
30
30
 
31
+ var doesAppUrlMatchOrigin = function doesAppUrlMatchOrigin(_ref) {
32
+ var appUrl = _ref.appUrl,
33
+ origin = _ref.origin;
34
+
35
+ if (typeof appUrl === 'string' || appUrl instanceof String) {
36
+ return appUrl === origin;
37
+ }
38
+
39
+ return appUrl == null ? void 0 : appUrl.includes(origin);
40
+ };
41
+
31
42
  var getEnv = function getEnv(env) {
43
+ var _DEV$ENV, _STAGING$ENV, _PERF$ENV, _PREPROD$ENV, _PROD$ENV;
44
+
32
45
  var LOCAL = {
33
- ENV: _objectSpread({}, _get(env, '_global', {}), {}, _get(env, 'local', {}), {
46
+ ENV: _objectSpread({}, (env == null ? void 0 : env._global) || {}, {}, (env == null ? void 0 : env.local) || {}, {
34
47
  ENV_NAME: ENV_NAMES.LOCAL,
35
48
  FUNDER_URL: 'https://dev-funder.medipass.io',
36
49
  CONNECT_URL: 'https://dev-connect.medipass.io',
@@ -41,7 +54,7 @@ var getEnv = function getEnv(env) {
41
54
  })
42
55
  };
43
56
  var DEV = {
44
- ENV: _objectSpread({}, _get(env, '_global', {}), {}, _get(env, 'dev', {}), {
57
+ ENV: _objectSpread({}, (env == null ? void 0 : env._global) || {}, {}, (env == null ? void 0 : env.dev) || {}, {
45
58
  ENV_NAME: ENV_NAMES.DEV,
46
59
  FUNDER_URL: 'https://dev-funder.medipass.io',
47
60
  CONNECT_URL: 'https://dev-connect.medipass.io',
@@ -52,7 +65,7 @@ var getEnv = function getEnv(env) {
52
65
  })
53
66
  };
54
67
  var STAGING = {
55
- ENV: _objectSpread({}, _get(env, '_global', {}), {}, _get(env, 'staging', {}), {
68
+ ENV: _objectSpread({}, (env == null ? void 0 : env._global) || {}, {}, (env == null ? void 0 : env.staging) || {}, {
56
69
  ENV_NAME: ENV_NAMES.STG,
57
70
  FUNDER_URL: 'https://stg-funder.medipass.io',
58
71
  CONNECT_URL: 'https://stg-connect.medipass.io',
@@ -63,7 +76,7 @@ var getEnv = function getEnv(env) {
63
76
  })
64
77
  };
65
78
  var PERF = {
66
- ENV: _objectSpread({}, _get(env, '_global', {}), {}, _get(env, 'perf', {}), {
79
+ ENV: _objectSpread({}, (env == null ? void 0 : env._global) || {}, {}, (env == null ? void 0 : env.perf) || {}, {
67
80
  ENV_NAME: ENV_NAMES.PERF,
68
81
  FUNDER_URL: 'https://perf-funder.medipass.io',
69
82
  CONNECT_URL: 'https://perf-connect.medipass.io',
@@ -74,7 +87,7 @@ var getEnv = function getEnv(env) {
74
87
  })
75
88
  };
76
89
  var PREPROD = {
77
- ENV: _objectSpread({}, _get(env, '_global', {}), {}, _get(env, 'preprod', {}), {
90
+ ENV: _objectSpread({}, (env == null ? void 0 : env._global) || {}, {}, (env == null ? void 0 : env.preprod) || {}, {
78
91
  ENV_NAME: ENV_NAMES.PREPROD,
79
92
  FUNDER_URL: 'https://funder-blue.medipass.io',
80
93
  CONNECT_URL: 'https://connect-blue.medipass.io',
@@ -85,7 +98,7 @@ var getEnv = function getEnv(env) {
85
98
  })
86
99
  };
87
100
  var PROD = {
88
- ENV: _objectSpread({}, _get(env, '_global', {}), {}, _get(env, 'prod', {}), {
101
+ ENV: _objectSpread({}, (env == null ? void 0 : env._global) || {}, {}, (env == null ? void 0 : env.prod) || {}, {
89
102
  ENV_NAME: ENV_NAMES.PROD,
90
103
  FUNDER_URL: 'https://funder.medipass.io',
91
104
  CONNECT_URL: 'https://connect.medipass.io',
@@ -100,17 +113,32 @@ var getEnv = function getEnv(env) {
100
113
 
101
114
  var origin = window.location.origin;
102
115
 
103
- if (process.env.REACT_APP_ENV === 'dev' || fabSettings.REACT_APP_ENV === 'dev' || _get(DEV, 'ENV.APP_URL', '') === origin) {
116
+ if (process.env.REACT_APP_ENV === 'dev' || fabSettings.REACT_APP_ENV === 'dev' || doesAppUrlMatchOrigin({
117
+ appUrl: (DEV == null ? void 0 : (_DEV$ENV = DEV.ENV) == null ? void 0 : _DEV$ENV.APP_URL) || '',
118
+ origin: origin
119
+ })) {
104
120
  return DEV.ENV;
105
- } else if (process.env.REACT_APP_ENV === 'staging' || fabSettings.REACT_APP_ENV === 'staging' || _get(STAGING, 'ENV.APP_URL', '') === origin) {
121
+ } else if (process.env.REACT_APP_ENV === 'staging' || fabSettings.REACT_APP_ENV === 'staging' || doesAppUrlMatchOrigin({
122
+ appUrl: (STAGING == null ? void 0 : (_STAGING$ENV = STAGING.ENV) == null ? void 0 : _STAGING$ENV.APP_URL) || '',
123
+ origin: origin
124
+ })) {
106
125
  return STAGING.ENV;
107
- } else if (process.env.REACT_APP_ENV === 'perf' || fabSettings.REACT_APP_ENV === 'perf' || _get(PERF, 'ENV.APP_URL', '') === origin) {
126
+ } else if (process.env.REACT_APP_ENV === 'perf' || fabSettings.REACT_APP_ENV === 'perf' || doesAppUrlMatchOrigin({
127
+ appUrl: (PERF == null ? void 0 : (_PERF$ENV = PERF.ENV) == null ? void 0 : _PERF$ENV.APP_URL) || '',
128
+ origin: origin
129
+ })) {
108
130
  return PERF.ENV;
109
- } else if (process.env.REACT_APP_ENV === 'pre-prod' || _get(PREPROD, 'ENV.APP_URL', '') === origin) {
131
+ } else if (process.env.REACT_APP_ENV === 'pre-prod' || doesAppUrlMatchOrigin({
132
+ appUrl: (PREPROD == null ? void 0 : (_PREPROD$ENV = PREPROD.ENV) == null ? void 0 : _PREPROD$ENV.APP_URL) || '',
133
+ origin: origin
134
+ })) {
110
135
  return PREPROD.ENV;
111
136
  } else if (process.env.REACT_APP_ENV === 'local') {
112
137
  return LOCAL.ENV;
113
- } else if (process.env.REACT_APP_ENV === 'prod' || _get(PROD, 'ENV.APP_URL', '') === origin) {
138
+ } else if (process.env.REACT_APP_ENV === 'prod' || doesAppUrlMatchOrigin({
139
+ appUrl: (PROD == null ? void 0 : (_PROD$ENV = PROD.ENV) == null ? void 0 : _PROD$ENV.APP_URL) || '',
140
+ origin: origin
141
+ })) {
114
142
  return PROD.ENV;
115
143
  }
116
144
 
@@ -118,18 +146,15 @@ var getEnv = function getEnv(env) {
118
146
  };
119
147
 
120
148
  var getEnvironmentsMissingVariables = function getEnvironmentsMissingVariables(envVariables) {
121
- // @ts-expect-error TS(7034): Variable 'environmentsMissingVariables' implicitly... Remove this comment to see the full error message
122
149
  var environmentsMissingVariables = [];
123
150
 
124
151
  for (var _iterator = _createForOfIteratorHelperLoose(REQUIRED_VARIABLES), _step; !(_step = _iterator()).done;) {
125
152
  var requiredVariable = _step.value;
126
153
 
127
154
  if (!envVariables[requiredVariable]) {
128
- // @ts-expect-error TS(7005): Variable 'environmentsMissingVariables' implicitly... Remove this comment to see the full error message
129
155
  environmentsMissingVariables = [].concat(environmentsMissingVariables, [requiredVariable]);
130
156
  }
131
- } // @ts-expect-error TS(7005): Variable 'environmentsMissingVariables' implicitly... Remove this comment to see the full error message
132
-
157
+ }
133
158
 
134
159
  return environmentsMissingVariables;
135
160
  };
@@ -174,6 +199,14 @@ var Env = /*#__PURE__*/function () {
174
199
  _defineProperty(this, "QUOTES_URL", void 0);
175
200
 
176
201
  _defineProperty(this, "CHECKOUT_URL", void 0);
202
+
203
+ this.ENV_NAME = null;
204
+ this.FUNDER_URL = null;
205
+ this.CONNECT_URL = null;
206
+ this.CONSUMER_URL = null;
207
+ this.ACCOUNTS_URL = null;
208
+ this.QUOTES_URL = null;
209
+ this.CHECKOUT_URL = null;
177
210
  }
178
211
 
179
212
  var _proto = Env.prototype;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@medipass/utils",
3
- "version": "11.79.7",
3
+ "version": "11.79.8-feature-support-multiple-domains.0",
4
4
  "description": "",
5
5
  "main": "index.js",
6
6
  "types": "index.d.ts",
@@ -52,5 +52,5 @@
52
52
  "rimraf": "^2.6.2",
53
53
  "typescript": "4.8.4"
54
54
  },
55
- "gitHead": "308bba1acaea8bbb7c7d75c673b9cb3443b8c756"
55
+ "gitHead": "182e69d41db9df2bd39fb5b28f0e550f6aa94fd7"
56
56
  }