@bigbinary/neeto-commons-frontend 2.0.27 → 2.0.29

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.
@@ -29,7 +29,24 @@ function _typeof(obj) {
29
29
  }, _typeof(obj);
30
30
  }
31
31
 
32
+ function _toPrimitive(input, hint) {
33
+ if (_typeof(input) !== "object" || input === null) return input;
34
+ var prim = input[Symbol.toPrimitive];
35
+ if (prim !== undefined) {
36
+ var res = prim.call(input, hint || "default");
37
+ if (_typeof(res) !== "object") return res;
38
+ throw new TypeError("@@toPrimitive must return a primitive value.");
39
+ }
40
+ return (hint === "string" ? String : Number)(input);
41
+ }
42
+
43
+ function _toPropertyKey(arg) {
44
+ var key = _toPrimitive(arg, "string");
45
+ return _typeof(key) === "symbol" ? key : String(key);
46
+ }
47
+
32
48
  function _defineProperty(obj, key, value) {
49
+ key = _toPropertyKey(key);
33
50
  if (key in obj) {
34
51
  Object.defineProperty(obj, key, {
35
52
  value: value,
@@ -40,7 +57,6 @@ function _defineProperty(obj, key, value) {
40
57
  } else {
41
58
  obj[key] = value;
42
59
  }
43
-
44
60
  return obj;
45
61
  }
46
62
 
@@ -49,42 +65,36 @@ function _arrayWithHoles(arr) {
49
65
  }
50
66
 
51
67
  function _iterableToArrayLimit(arr, i) {
52
- var _i = arr == null ? null : typeof Symbol !== "undefined" && arr[Symbol.iterator] || arr["@@iterator"];
53
-
54
- if (_i == null) return;
55
- var _arr = [];
56
- var _n = true;
57
- var _d = false;
58
-
59
- var _s, _e;
60
-
61
- try {
62
- for (_i = _i.call(arr); !(_n = (_s = _i.next()).done); _n = true) {
63
- _arr.push(_s.value);
64
-
65
- if (i && _arr.length === i) break;
66
- }
67
- } catch (err) {
68
- _d = true;
69
- _e = err;
70
- } finally {
68
+ var _i = null == arr ? null : "undefined" != typeof Symbol && arr[Symbol.iterator] || arr["@@iterator"];
69
+ if (null != _i) {
70
+ var _s,
71
+ _e,
72
+ _x,
73
+ _r,
74
+ _arr = [],
75
+ _n = !0,
76
+ _d = !1;
71
77
  try {
72
- if (!_n && _i["return"] != null) _i["return"]();
78
+ if (_x = (_i = _i.call(arr)).next, 0 === i) {
79
+ if (Object(_i) !== _i) return;
80
+ _n = !1;
81
+ } else for (; !(_n = (_s = _x.call(_i)).done) && (_arr.push(_s.value), _arr.length !== i); _n = !0);
82
+ } catch (err) {
83
+ _d = !0, _e = err;
73
84
  } finally {
74
- if (_d) throw _e;
85
+ try {
86
+ if (!_n && null != _i["return"] && (_r = _i["return"](), Object(_r) !== _r)) return;
87
+ } finally {
88
+ if (_d) throw _e;
89
+ }
75
90
  }
91
+ return _arr;
76
92
  }
77
-
78
- return _arr;
79
93
  }
80
94
 
81
95
  function _arrayLikeToArray(arr, len) {
82
96
  if (len == null || len > arr.length) len = arr.length;
83
-
84
- for (var i = 0, arr2 = new Array(len); i < len; i++) {
85
- arr2[i] = arr[i];
86
- }
87
-
97
+ for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i];
88
98
  return arr2;
89
99
  }
90
100
 
@@ -110,12 +120,11 @@ function _slicedToArray(arr, i) {
110
120
  * @param {T} func
111
121
  * @returns {T}
112
122
  */
113
-
114
123
  var nullSafe = function nullSafe(func) {
115
- return (// @ts-ignore
124
+ return (
125
+ // @ts-ignore
116
126
  ramda.curryN(func.length, function () {
117
127
  var _ref;
118
-
119
128
  var dataArg = (_ref = func.length - 1, _ref < 0 || arguments.length <= _ref ? undefined : arguments[_ref]);
120
129
  return ramda.isNil(dataArg) ? dataArg : func.apply(void 0, arguments);
121
130
  })
@@ -157,11 +166,9 @@ nullSafe(capitalize);
157
166
 
158
167
  var transformObjectDeep = function transformObjectDeep(object, keyValueTransformer) {
159
168
  var objectPreProcessor = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : undefined;
160
-
161
169
  if (objectPreProcessor && typeof objectPreProcessor === "function") {
162
170
  object = objectPreProcessor(object);
163
171
  }
164
-
165
172
  if (Array.isArray(object)) {
166
173
  return object.map(function (obj) {
167
174
  return transformObjectDeep(obj, keyValueTransformer, objectPreProcessor);
@@ -169,12 +176,10 @@ var transformObjectDeep = function transformObjectDeep(object, keyValueTransform
169
176
  } else if (object === null || _typeof(object) !== "object") {
170
177
  return object;
171
178
  }
172
-
173
179
  return Object.fromEntries(Object.entries(object).map(function (_ref3) {
174
180
  var _ref4 = _slicedToArray(_ref3, 2),
175
- key = _ref4[0],
176
- value = _ref4[1];
177
-
181
+ key = _ref4[0],
182
+ value = _ref4[1];
178
183
  return keyValueTransformer(key, transformObjectDeep(value, keyValueTransformer, objectPreProcessor));
179
184
  }));
180
185
  };
@@ -197,20 +202,17 @@ var deepFreezeObject = function deepFreezeObject(object) {
197
202
  });
198
203
  Object.freeze(object);
199
204
  }
200
-
201
205
  return object;
202
206
  };
203
207
  var filterNonNull = function filterNonNull(object) {
204
208
  return Object.fromEntries(Object.entries(object).filter(function (_ref5) {
205
209
  var _ref6 = _slicedToArray(_ref5, 2),
206
- v = _ref6[1];
207
-
210
+ v = _ref6[1];
208
211
  return !ramda.isNil(v);
209
212
  }).map(function (_ref7) {
210
213
  var _ref8 = _slicedToArray(_ref7, 2),
211
- k = _ref8[0],
212
- v = _ref8[1];
213
-
214
+ k = _ref8[0],
215
+ v = _ref8[1];
214
216
  return [k, _typeof(v) === "object" && !Array.isArray(v) ? filterNonNull(v) : v];
215
217
  }));
216
218
  };
@@ -246,13 +248,16 @@ const createStoreImpl = (createState) => {
246
248
  listeners.add(listener);
247
249
  return () => listeners.delete(listener);
248
250
  };
249
- const destroy = () => listeners.clear();
251
+ const destroy = () => {
252
+ if ((undefined && undefined.MODE) !== "production") {
253
+ console.warn(
254
+ "[DEPRECATED] The destroy method will be unsupported in the future version. You should use unsubscribe function returned by subscribe. Everything will be garbage collected if store is garbage collected."
255
+ );
256
+ }
257
+ listeners.clear();
258
+ };
250
259
  const api = { setState, getState, subscribe, destroy };
251
- state = createState(
252
- setState,
253
- getState,
254
- api
255
- );
260
+ state = createState(setState, getState, api);
256
261
  return api;
257
262
  };
258
263
  const createStore = (createState) => createState ? createStoreImpl(createState) : createStoreImpl;
@@ -768,18 +773,30 @@ function useStore(api, selector = api.getState, equalityFn) {
768
773
  return slice;
769
774
  }
770
775
  const createImpl = (createState) => {
776
+ if ((undefined && undefined.MODE) !== "production" && typeof createState !== "function") {
777
+ console.warn(
778
+ '[DEPRECATED] Passing a vanilla store will be unsupported in the future version. Please use `import { useStore } from "zustand"` to use the vanilla store in React.'
779
+ );
780
+ }
771
781
  const api = typeof createState === "function" ? createStore(createState) : createState;
772
782
  const useBoundStore = (selector, equalityFn) => useStore(api, selector, equalityFn);
773
783
  Object.assign(useBoundStore, api);
774
784
  return useBoundStore;
775
785
  };
776
786
  const create = (createState) => createState ? createImpl(createState) : createImpl;
787
+ var react = (createState) => {
788
+ if ((undefined && undefined.MODE) !== "production") {
789
+ console.warn(
790
+ "[DEPRECATED] default export is deprecated, instead import { create } from'zustand'"
791
+ );
792
+ }
793
+ return create(createState);
794
+ };
777
795
 
778
796
  var useDisplayErrorPage = function useDisplayErrorPage() {
779
797
  return useErrorDisplayStore(ramda.prop("show404Page"));
780
798
  };
781
-
782
- var useErrorDisplayStore = create(function () {
799
+ var useErrorDisplayStore = react(function () {
783
800
  return {
784
801
  show404Page: false
785
802
  };
@@ -788,26 +805,22 @@ var useErrorDisplayStore = create(function () {
788
805
  var shouldNot = function shouldNot(skip) {
789
806
  return _typeof(skip) === "object" || !skip;
790
807
  };
791
-
792
808
  var shouldShowToastr = function shouldShowToastr(response) {
793
809
  return typeof response === "string" || _typeof(response) === "object" && ((response === null || response === void 0 ? void 0 : response.notice) || (response === null || response === void 0 ? void 0 : response.noticeCode));
794
810
  };
795
-
796
811
  var setAuthHeaders = function setAuthHeaders() {
797
812
  var _document$querySelect, _axios$defaults$heade, _globalProps$user, _globalProps$user2;
798
-
799
813
  axios__default["default"].defaults.headers = (_axios$defaults$heade = {}, _defineProperty(_axios$defaults$heade, HEADERS_KEYS.accept, "application/json"), _defineProperty(_axios$defaults$heade, HEADERS_KEYS.contentType, "application/json"), _defineProperty(_axios$defaults$heade, HEADERS_KEYS.xCsrfToken, (_document$querySelect = document.querySelector('[name="csrf-token"]')) === null || _document$querySelect === void 0 ? void 0 : _document$querySelect.getAttribute("content")), _axios$defaults$heade);
800
814
  var token = (_globalProps$user = globalProps.user) === null || _globalProps$user === void 0 ? void 0 : _globalProps$user.authenticationToken;
801
815
  var email = (_globalProps$user2 = globalProps.user) === null || _globalProps$user2 === void 0 ? void 0 : _globalProps$user2.email;
802
-
803
816
  if (token && email) {
804
817
  axios__default["default"].defaults.headers[HEADERS_KEYS.xAuthEmail] = email;
805
818
  axios__default["default"].defaults.headers[HEADERS_KEYS.xAuthToken] = token;
806
819
  }
807
- }; // pipe function from ramda doesn't accept array of functions.
808
- // We can't use spread operator too. So this is a workaround.
809
-
820
+ };
810
821
 
822
+ // pipe function from ramda doesn't accept array of functions.
823
+ // We can't use spread operator too. So this is a workaround.
811
824
  var createPipe = function createPipe(functions) {
812
825
  return function (data) {
813
826
  return functions.reduce(function (acc, fn) {
@@ -815,49 +828,37 @@ var createPipe = function createPipe(functions) {
815
828
  }, data);
816
829
  };
817
830
  };
818
-
819
831
  var transformResponseKeysToCamelCase = function transformResponseKeysToCamelCase(response) {
820
832
  var _response$config$tran = response.config.transformResponseCase,
821
- transformResponseCase = _response$config$tran === void 0 ? true : _response$config$tran;
822
-
833
+ transformResponseCase = _response$config$tran === void 0 ? true : _response$config$tran;
823
834
  if (response.data && transformResponseCase) {
824
835
  response.data = keysToCamelCase(response.data);
825
836
  }
826
-
827
837
  return response;
828
838
  };
829
-
830
839
  var transformErrorKeysToCamelCase = function transformErrorKeysToCamelCase(error) {
831
840
  var _error$config, _error$response;
832
-
833
841
  var _ref = (_error$config = error.config) !== null && _error$config !== void 0 ? _error$config : {},
834
- _ref$transformRespons = _ref.transformResponseCase,
835
- transformResponseCase = _ref$transformRespons === void 0 ? true : _ref$transformRespons;
836
-
842
+ _ref$transformRespons = _ref.transformResponseCase,
843
+ transformResponseCase = _ref$transformRespons === void 0 ? true : _ref$transformRespons;
837
844
  if ((_error$response = error.response) !== null && _error$response !== void 0 && _error$response.data && transformResponseCase) {
838
845
  error.response.data = keysToCamelCase(error.response.data);
839
846
  }
840
-
841
847
  return error;
842
848
  };
843
-
844
849
  var showSuccessToastr = function showSuccessToastr(response) {
845
850
  var _response$config$show = response.config.showToastr,
846
- showToastr = _response$config$show === void 0 ? true : _response$config$show;
847
-
851
+ showToastr = _response$config$show === void 0 ? true : _response$config$show;
848
852
  if (showToastr && shouldShowToastr(response.data)) {
849
853
  neetoui.Toastr.success(response.data);
850
854
  }
851
-
852
855
  return response;
853
856
  };
854
-
855
857
  var pullDataFromResponse = function pullDataFromResponse(response) {
856
858
  var _response$config$incl = response.config.includeMetadataInResponse,
857
- includeMetadataInResponse = _response$config$incl === void 0 ? false : _response$config$incl;
859
+ includeMetadataInResponse = _response$config$incl === void 0 ? false : _response$config$incl;
858
860
  return includeMetadataInResponse ? response : response.data;
859
861
  };
860
-
861
862
  var buildSuccessResponseHandler = function buildSuccessResponseHandler(skip) {
862
863
  var interceptors = [];
863
864
  if (!(skip !== null && skip !== void 0 && skip.transformCase)) interceptors.push(transformResponseKeysToCamelCase);
@@ -865,36 +866,27 @@ var buildSuccessResponseHandler = function buildSuccessResponseHandler(skip) {
865
866
  if (!(skip !== null && skip !== void 0 && skip.pullDataFromResponse)) interceptors.push(pullDataFromResponse);
866
867
  return createPipe(interceptors);
867
868
  };
868
-
869
869
  var handleUnauthorizedErrorResponse = function handleUnauthorizedErrorResponse(error) {
870
870
  var _error$response2, _error$config2;
871
-
872
871
  if (((_error$response2 = error.response) === null || _error$response2 === void 0 ? void 0 : _error$response2.status) !== 401) return error;
873
872
  resetAuthTokens();
874
-
875
873
  var _ref2 = (_error$config2 = error.config) !== null && _error$config2 !== void 0 ? _error$config2 : {},
876
- _ref2$redirectOnError = _ref2.redirectOnError,
877
- redirectOnError = _ref2$redirectOnError === void 0 ? true : _ref2$redirectOnError;
878
-
874
+ _ref2$redirectOnError = _ref2.redirectOnError,
875
+ redirectOnError = _ref2$redirectOnError === void 0 ? true : _ref2$redirectOnError;
879
876
  if (redirectOnError) {
880
877
  setTimeout(function () {
881
878
  var redirectTo = window.location.pathname === "/login" ? "/login" : "/login?redirect_uri=".concat(encodeURIComponent(window.location.href));
882
879
  window.location.href = redirectTo;
883
880
  }, 300);
884
881
  }
885
-
886
882
  return error;
887
883
  };
888
-
889
884
  var showErrorToastr = function showErrorToastr(error) {
890
885
  var _error$config3;
891
-
892
886
  var _ref3 = (_error$config3 = error.config) !== null && _error$config3 !== void 0 ? _error$config3 : {},
893
- _ref3$showToastr = _ref3.showToastr,
894
- showToastr = _ref3$showToastr === void 0 ? true : _ref3$showToastr;
895
-
887
+ _ref3$showToastr = _ref3.showToastr,
888
+ showToastr = _ref3$showToastr === void 0 ? true : _ref3$showToastr;
896
889
  if (!showToastr) return error;
897
-
898
890
  if (axios__default["default"].isCancel(error)) {
899
891
  neetoui.Toastr.error(i18next__default["default"].t("neetoCommons.toastr.error.requestCanceled"));
900
892
  } else if (error.message === "Network Error") {
@@ -902,28 +894,21 @@ var showErrorToastr = function showErrorToastr(error) {
902
894
  } else {
903
895
  neetoui.Toastr.error(error);
904
896
  }
905
-
906
897
  return error;
907
898
  };
908
-
909
899
  var handle404ErrorResponse = function handle404ErrorResponse(error) {
910
900
  var _error$response3, _error$config4;
911
-
912
901
  if (((_error$response3 = error.response) === null || _error$response3 === void 0 ? void 0 : _error$response3.status) !== 404) return error;
913
-
914
902
  var _ref4 = (_error$config4 = error.config) !== null && _error$config4 !== void 0 ? _error$config4 : {},
915
- _ref4$show404ErrorPag = _ref4.show404ErrorPage,
916
- show404ErrorPage = _ref4$show404ErrorPag === void 0 ? true : _ref4$show404ErrorPag;
917
-
903
+ _ref4$show404ErrorPag = _ref4.show404ErrorPage,
904
+ show404ErrorPage = _ref4$show404ErrorPag === void 0 ? true : _ref4$show404ErrorPag;
918
905
  if (show404ErrorPage) {
919
906
  useErrorDisplayStore.setState({
920
907
  show404Page: true
921
908
  });
922
909
  }
923
-
924
910
  return error;
925
911
  };
926
-
927
912
  var buildErrorResponseHandler = function buildErrorResponseHandler(skip) {
928
913
  var interceptors = [];
929
914
  if (!(skip !== null && skip !== void 0 && skip.transformCase)) interceptors.push(transformErrorKeysToCamelCase);
@@ -933,7 +918,6 @@ var buildErrorResponseHandler = function buildErrorResponseHandler(skip) {
933
918
  interceptors.push(Promise.reject.bind(Promise));
934
919
  return createPipe(interceptors);
935
920
  };
936
-
937
921
  var cleanupCredentialsForCrossOrigin = function cleanupCredentialsForCrossOrigin(request) {
938
922
  if (!request.url.includes("://")) return request;
939
923
  if (request.url.includes(window.location.hostname)) return request;
@@ -941,36 +925,30 @@ var cleanupCredentialsForCrossOrigin = function cleanupCredentialsForCrossOrigin
941
925
  headers: ramda.omit(ramda.values(HEADERS_KEYS))
942
926
  })(request);
943
927
  };
944
-
945
928
  var transformDataToSnakeCase = function transformDataToSnakeCase(request) {
946
929
  var _request$transformReq = request.transformRequestCase,
947
- transformRequestCase = _request$transformReq === void 0 ? true : _request$transformReq;
930
+ transformRequestCase = _request$transformReq === void 0 ? true : _request$transformReq;
948
931
  if (!transformRequestCase) return request;
949
932
  return ramda.evolve({
950
933
  data: serializeKeysToSnakeCase,
951
934
  params: serializeKeysToSnakeCase
952
935
  }, request);
953
936
  };
954
-
955
937
  var addRequestInterceptors = function addRequestInterceptors(skip) {
956
938
  if (!(skip !== null && skip !== void 0 && skip.cleanCredentialsForCrossOrigin)) {
957
939
  axios__default["default"].interceptors.request.use(cleanupCredentialsForCrossOrigin);
958
940
  }
959
-
960
941
  if (!(skip !== null && skip !== void 0 && skip.transformCase)) {
961
942
  axios__default["default"].interceptors.request.use(transformDataToSnakeCase);
962
943
  }
963
944
  };
964
-
965
945
  var addResponseInterceptors = function addResponseInterceptors(skip) {
966
946
  axios__default["default"].interceptors.response.use(buildSuccessResponseHandler(skip), buildErrorResponseHandler(skip));
967
947
  };
968
-
969
948
  var registerIntercepts = function registerIntercepts(skip) {
970
949
  if (shouldNot(skip === null || skip === void 0 ? void 0 : skip.request)) addRequestInterceptors(skip === null || skip === void 0 ? void 0 : skip.request);
971
950
  if (shouldNot(skip === null || skip === void 0 ? void 0 : skip.response)) addResponseInterceptors(skip === null || skip === void 0 ? void 0 : skip.response);
972
951
  };
973
-
974
952
  function initializeAxios(skip) {
975
953
  if (!(skip !== null && skip !== void 0 && skip.baseURL)) axios__default["default"].defaults.baseURL = "/";
976
954
  if (!(skip !== null && skip !== void 0 && skip.authHeaders)) setAuthHeaders();
@@ -979,7 +957,6 @@ function initializeAxios(skip) {
979
957
 
980
958
  function initializeGlobalProps() {
981
959
  var _document$getElements, _document$getElements2;
982
-
983
960
  window.globalProps = keysToCamelCase(JSON.parse(((_document$getElements = document.getElementsByClassName("root-container")[0]) === null || _document$getElements === void 0 ? void 0 : (_document$getElements2 = _document$getElements.dataset) === null || _document$getElements2 === void 0 ? void 0 : _document$getElements2.reactProps) || "{}"));
984
961
  deepFreezeObject(window.globalProps);
985
962
  }
@@ -1066,14 +1043,16 @@ var neetoCommons = {
1066
1043
  },
1067
1044
  fallbackComponent: {
1068
1045
  somethingWentWrong: "Sorry, something went wrong.",
1069
- tryReloading: "Please try reloading the page.",
1070
- reload: "Reload"
1046
+ description: "Please try <reloading></reloading> the page.<br> If the problem persists, <contactus></contactus>.",
1047
+ reloadingButtonLabel: "reloading",
1048
+ contactusButtonLabel: "contact us"
1071
1049
  },
1072
1050
  sidebar: {
1073
1051
  myProfile: "My profile",
1074
1052
  myOrganization: "My organization",
1075
1053
  logout: "Log out",
1076
- help: "Help"
1054
+ help: "Help",
1055
+ livechat: "Live chat"
1077
1056
  },
1078
1057
  common: {
1079
1058
  actions: {
@@ -1270,11 +1249,11 @@ var en = {
1270
1249
 
1271
1250
  var initializeI18n = function initializeI18n(resources) {
1272
1251
  i18next__default["default"].use(reactI18next.initReactI18next).init({
1273
- resources: ramda.mergeDeepLeft({
1252
+ resources: ramda.mergeDeepLeft(resources, {
1274
1253
  en: {
1275
1254
  translation: en
1276
1255
  }
1277
- }, resources),
1256
+ }),
1278
1257
  lng: "en",
1279
1258
  fallbackLng: "en",
1280
1259
  interpolation: {
@@ -1287,11 +1266,9 @@ var initializeI18n = function initializeI18n(resources) {
1287
1266
  function initializeLogger() {
1288
1267
  /* eslint react-hooks/rules-of-hooks: "off" */
1289
1268
  Logger__default["default"].useDefaults();
1290
-
1291
1269
  if (process.env.RAILS_ENV === "production") {
1292
1270
  Logger__default["default"].setLevel(Logger__default["default"].OFF);
1293
1271
  }
1294
-
1295
1272
  window.logger = Logger__default["default"];
1296
1273
  }
1297
1274
 
@@ -1307,22 +1284,19 @@ function initializeMixPanel() {
1307
1284
  mixpanel__default["default"].identify(globalProps.user.email);
1308
1285
  }
1309
1286
 
1287
+ // eslint-disable-next-line import/no-mutable-exports
1310
1288
  exports.globalProps = {};
1311
1289
  function initializeApplication(_ref) {
1312
1290
  var translationResources = _ref.translationResources,
1313
- skip = _ref.skip;
1314
-
1291
+ skip = _ref.skip;
1315
1292
  if (!(skip !== null && skip !== void 0 && skip.globalProps)) {
1316
1293
  initializeGlobalProps();
1317
1294
  exports.globalProps = window.globalProps;
1318
1295
  }
1319
-
1320
1296
  if (!(skip !== null && skip !== void 0 && skip.mixpanel)) initializeMixPanel();
1321
-
1322
1297
  if (_typeof(skip === null || skip === void 0 ? void 0 : skip.axios) === "object" || !(skip !== null && skip !== void 0 && skip.axios)) {
1323
1298
  initializeAxios(skip === null || skip === void 0 ? void 0 : skip.axios);
1324
1299
  }
1325
-
1326
1300
  if (!(skip !== null && skip !== void 0 && skip.i18n)) initializeI18n(translationResources);
1327
1301
  if (!(skip !== null && skip !== void 0 && skip.logger)) initializeLogger();
1328
1302
  }