@bigbinary/neeto-commons-frontend 4.5.0 → 4.6.2

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 (73) hide show
  1. package/cjs/configs/babel.js +1 -0
  2. package/cjs/configs/constants.js +5 -32
  3. package/cjs/configs/utils.js +82 -0
  4. package/cjs/initializers/axiosInitializer/index.js +7 -5
  5. package/cjs/initializers/axiosInitializer/index.js.map +1 -1
  6. package/cjs/initializers/i18n.js +3 -3
  7. package/cjs/initializers/i18n.js.map +1 -1
  8. package/cjs/react-utils/HoneybadgerErrorBoundary/FallbackComponent.js +2 -2
  9. package/cjs/react-utils/HoneybadgerErrorBoundary/FallbackComponent.js.map +1 -1
  10. package/cjs/react-utils/PrivateRoute/PrivateRoute.js +3 -2
  11. package/cjs/react-utils/PrivateRoute/PrivateRoute.js.map +1 -1
  12. package/cjs/react-utils/metaClick/metaClick.js +3 -2
  13. package/cjs/react-utils/metaClick/metaClick.js.map +1 -1
  14. package/cjs/react-utils/useBreakpoints/index.js +3 -2
  15. package/cjs/react-utils/useBreakpoints/index.js.map +1 -1
  16. package/cjs/react-utils/useDisplayErrorPage/useDisplayErrorPage.js +3 -2
  17. package/cjs/react-utils/useDisplayErrorPage/useDisplayErrorPage.js.map +1 -1
  18. package/cjs/react-utils/useLocalStorage/useLocalStorage.js +2 -2
  19. package/cjs/react-utils/useLocalStorage/useLocalStorage.js.map +1 -1
  20. package/cjs/react-utils/useMutationWithInvalidation/useMutationWithInvalidation.js +4 -4
  21. package/cjs/react-utils/useMutationWithInvalidation/useMutationWithInvalidation.js.map +1 -1
  22. package/cjs/react-utils/usePersistedQuery/usePersistedQuery.js +3 -3
  23. package/cjs/react-utils/usePersistedQuery/usePersistedQuery.js.map +1 -1
  24. package/cjs/react-utils/useRegisterNavigationCheckpoint/useRegisterNavigationCheckpoint.js +11 -8
  25. package/cjs/react-utils/useRegisterNavigationCheckpoint/useRegisterNavigationCheckpoint.js.map +1 -1
  26. package/cjs/react-utils/useRestoreScrollPosition/useRestoreScrollPosition.js +10 -8
  27. package/cjs/react-utils/useRestoreScrollPosition/useRestoreScrollPosition.js.map +1 -1
  28. package/cjs/react-utils/withImmutableActions/withImmutableActions.js +5 -3
  29. package/cjs/react-utils/withImmutableActions/withImmutableActions.js.map +1 -1
  30. package/cjs/translations/en.json +1 -1
  31. package/cjs/utils/axios.js +2 -2
  32. package/cjs/utils/axios.js.map +1 -1
  33. package/cjs/utils/buildNestedAttributesPayload.js +2 -2
  34. package/cjs/utils/buildNestedAttributesPayload.js.map +1 -1
  35. package/cjs/utils/general.js +12 -7
  36. package/cjs/utils/general.js.map +1 -1
  37. package/configs/babel.js +1 -0
  38. package/configs/constants.js +5 -32
  39. package/configs/utils.js +82 -0
  40. package/initializers/axiosInitializer/index.js +7 -5
  41. package/initializers/axiosInitializer/index.js.map +1 -1
  42. package/initializers/i18n.js +3 -3
  43. package/initializers/i18n.js.map +1 -1
  44. package/package.json +1 -1
  45. package/react-utils/HoneybadgerErrorBoundary/FallbackComponent.js +2 -2
  46. package/react-utils/HoneybadgerErrorBoundary/FallbackComponent.js.map +1 -1
  47. package/react-utils/PrivateRoute/PrivateRoute.js +3 -2
  48. package/react-utils/PrivateRoute/PrivateRoute.js.map +1 -1
  49. package/react-utils/metaClick/metaClick.js +2 -2
  50. package/react-utils/metaClick/metaClick.js.map +1 -1
  51. package/react-utils/useBreakpoints/index.js +2 -2
  52. package/react-utils/useBreakpoints/index.js.map +1 -1
  53. package/react-utils/useDisplayErrorPage/useDisplayErrorPage.js +2 -2
  54. package/react-utils/useDisplayErrorPage/useDisplayErrorPage.js.map +1 -1
  55. package/react-utils/useLocalStorage/useLocalStorage.js +2 -2
  56. package/react-utils/useLocalStorage/useLocalStorage.js.map +1 -1
  57. package/react-utils/useMutationWithInvalidation/useMutationWithInvalidation.js +4 -4
  58. package/react-utils/useMutationWithInvalidation/useMutationWithInvalidation.js.map +1 -1
  59. package/react-utils/usePersistedQuery/usePersistedQuery.js +3 -3
  60. package/react-utils/usePersistedQuery/usePersistedQuery.js.map +1 -1
  61. package/react-utils/useRegisterNavigationCheckpoint/useRegisterNavigationCheckpoint.js +11 -8
  62. package/react-utils/useRegisterNavigationCheckpoint/useRegisterNavigationCheckpoint.js.map +1 -1
  63. package/react-utils/useRestoreScrollPosition/useRestoreScrollPosition.js +10 -8
  64. package/react-utils/useRestoreScrollPosition/useRestoreScrollPosition.js.map +1 -1
  65. package/react-utils/withImmutableActions/withImmutableActions.js +4 -3
  66. package/react-utils/withImmutableActions/withImmutableActions.js.map +1 -1
  67. package/translations/en.json +1 -1
  68. package/utils/axios.js +2 -2
  69. package/utils/axios.js.map +1 -1
  70. package/utils/buildNestedAttributesPayload.js +2 -2
  71. package/utils/buildNestedAttributesPayload.js.map +1 -1
  72. package/utils/general.js +12 -7
  73. package/utils/general.js.map +1 -1
@@ -1,9 +1,9 @@
1
+ import _isNil from "ramda/es/isNil";
1
2
  import _defineProperty from "@babel/runtime/helpers/defineProperty";
2
3
  function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
3
4
  function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
4
5
  import { useEffect } from "react";
5
6
  import { useQuery } from "@tanstack/react-query";
6
- import { isNil } from "ramda";
7
7
  import { QUERY_CACHE_NAME_SPACE } from "../constants";
8
8
  import { getFromLocalStorage, setToLocalStorage } from "../../utils/general";
9
9
  var localStorageQueryCache = {
@@ -25,8 +25,8 @@ var localStorageQueryCache = {
25
25
  }
26
26
  };
27
27
  var isOutdated = function isOutdated(localCache, staleTime) {
28
- if (isNil(localCache)) return true;
29
- if (isNil(staleTime)) return false;
28
+ if (_isNil(localCache)) return true;
29
+ if (_isNil(staleTime)) return false;
30
30
  return localCache.modifiedAt <= Date.now() - staleTime;
31
31
  };
32
32
  var usePersistedQuery = function usePersistedQuery(queryKey, fetch, options) {
@@ -1 +1 @@
1
- {"version":3,"file":"usePersistedQuery.js","names":["useEffect","useQuery","isNil","QUERY_CACHE_NAME_SPACE","getFromLocalStorage","setToLocalStorage","localStorageQueryCache","set","key","data","cache","getAll","newCache","_objectSpread","_defineProperty","modifiedAt","Date","now","get","isOutdated","localCache","staleTime","usePersistedQuery","queryKey","fetch","options","queryResult","queryFn","isSuccess","isFreshLoading","isLoading","getCache"],"sources":["../../../src/react-utils/usePersistedQuery/usePersistedQuery.js"],"sourcesContent":["import { useEffect } from \"react\";\n\nimport { useQuery } from \"@tanstack/react-query\";\nimport { isNil } from \"ramda\";\nimport { QUERY_CACHE_NAME_SPACE } from \"react-utils/constants\";\nimport { getFromLocalStorage, setToLocalStorage } from \"utils/general\";\n\nconst localStorageQueryCache = {\n set: (key, data) => {\n const cache = localStorageQueryCache.getAll();\n const newCache = { ...cache, [key]: { data, modifiedAt: Date.now() } };\n setToLocalStorage(QUERY_CACHE_NAME_SPACE, newCache);\n },\n getAll: () => {\n const cache = getFromLocalStorage(QUERY_CACHE_NAME_SPACE);\n if (!cache) return {};\n\n return cache;\n },\n get: key => localStorageQueryCache.getAll()[key],\n};\n\nconst isOutdated = (localCache, staleTime) => {\n if (isNil(localCache)) return true;\n\n if (isNil(staleTime)) return false;\n\n return localCache.modifiedAt <= Date.now() - staleTime;\n};\n\nconst usePersistedQuery = (queryKey, fetch, options) => {\n const queryResult = useQuery({\n queryKey,\n queryFn: fetch,\n ...options,\n });\n const localCache = localStorageQueryCache.get(queryKey);\n\n useEffect(() => {\n if (!queryResult.isSuccess) return;\n localStorageQueryCache.set(queryKey, queryResult.data);\n }, [queryKey, queryResult.data, queryResult.isSuccess]);\n\n if (isOutdated(localCache, options?.staleTime)) {\n return { ...queryResult, isFreshLoading: queryResult.isLoading };\n }\n\n return {\n ...queryResult,\n data: queryResult.data || localCache.data,\n isFreshLoading: false,\n };\n};\n\nusePersistedQuery.getCache = localStorageQueryCache.get;\n\nexport default usePersistedQuery;\n"],"mappings":";;;AAAA,SAASA,SAAS,QAAQ,OAAO;AAEjC,SAASC,QAAQ,QAAQ,uBAAuB;AAChD,SAASC,KAAK,QAAQ,OAAO;AAC7B,SAASC,sBAAsB;AAC/B,SAASC,mBAAmB,EAAEC,iBAAiB;AAE/C,IAAMC,sBAAsB,GAAG;EAC7BC,GAAG,EAAE,SAALA,GAAGA,CAAGC,GAAG,EAAEC,IAAI,EAAK;IAClB,IAAMC,KAAK,GAAGJ,sBAAsB,CAACK,MAAM,CAAC,CAAC;IAC7C,IAAMC,QAAQ,GAAAC,aAAA,CAAAA,aAAA,KAAQH,KAAK,OAAAI,eAAA,KAAGN,GAAG,EAAG;MAAEC,IAAI,EAAJA,IAAI;MAAEM,UAAU,EAAEC,IAAI,CAACC,GAAG,CAAC;IAAE,CAAC,EAAE;IACtEZ,iBAAiB,CAACF,sBAAsB,EAAES,QAAQ,CAAC;EACrD,CAAC;EACDD,MAAM,EAAE,SAARA,MAAMA,CAAA,EAAQ;IACZ,IAAMD,KAAK,GAAGN,mBAAmB,CAACD,sBAAsB,CAAC;IACzD,IAAI,CAACO,KAAK,EAAE,OAAO,CAAC,CAAC;IAErB,OAAOA,KAAK;EACd,CAAC;EACDQ,GAAG,EAAE,SAALA,GAAGA,CAAEV,GAAG;IAAA,OAAIF,sBAAsB,CAACK,MAAM,CAAC,CAAC,CAACH,GAAG,CAAC;EAAA;AAClD,CAAC;AAED,IAAMW,UAAU,GAAG,SAAbA,UAAUA,CAAIC,UAAU,EAAEC,SAAS,EAAK;EAC5C,IAAInB,KAAK,CAACkB,UAAU,CAAC,EAAE,OAAO,IAAI;EAElC,IAAIlB,KAAK,CAACmB,SAAS,CAAC,EAAE,OAAO,KAAK;EAElC,OAAOD,UAAU,CAACL,UAAU,IAAIC,IAAI,CAACC,GAAG,CAAC,CAAC,GAAGI,SAAS;AACxD,CAAC;AAED,IAAMC,iBAAiB,GAAG,SAApBA,iBAAiBA,CAAIC,QAAQ,EAAEC,KAAK,EAAEC,OAAO,EAAK;EACtD,IAAMC,WAAW,GAAGzB,QAAQ,CAAAY,aAAA;IAC1BU,QAAQ,EAARA,QAAQ;IACRI,OAAO,EAAEH;EAAK,GACXC,OAAO,CACX,CAAC;EACF,IAAML,UAAU,GAAGd,sBAAsB,CAACY,GAAG,CAACK,QAAQ,CAAC;EAEvDvB,SAAS,CAAC,YAAM;IACd,IAAI,CAAC0B,WAAW,CAACE,SAAS,EAAE;IAC5BtB,sBAAsB,CAACC,GAAG,CAACgB,QAAQ,EAAEG,WAAW,CAACjB,IAAI,CAAC;EACxD,CAAC,EAAE,CAACc,QAAQ,EAAEG,WAAW,CAACjB,IAAI,EAAEiB,WAAW,CAACE,SAAS,CAAC,CAAC;EAEvD,IAAIT,UAAU,CAACC,UAAU,EAAEK,OAAO,aAAPA,OAAO,uBAAPA,OAAO,CAAEJ,SAAS,CAAC,EAAE;IAC9C,OAAAR,aAAA,CAAAA,aAAA,KAAYa,WAAW;MAAEG,cAAc,EAAEH,WAAW,CAACI;IAAS;EAChE;EAEA,OAAAjB,aAAA,CAAAA,aAAA,KACKa,WAAW;IACdjB,IAAI,EAAEiB,WAAW,CAACjB,IAAI,IAAIW,UAAU,CAACX,IAAI;IACzCoB,cAAc,EAAE;EAAK;AAEzB,CAAC;AAEDP,iBAAiB,CAACS,QAAQ,GAAGzB,sBAAsB,CAACY,GAAG;AAEvD,eAAeI,iBAAiB","ignoreList":[]}
1
+ {"version":3,"file":"usePersistedQuery.js","names":["useEffect","useQuery","QUERY_CACHE_NAME_SPACE","getFromLocalStorage","setToLocalStorage","localStorageQueryCache","set","key","data","cache","getAll","newCache","_objectSpread","_defineProperty","modifiedAt","Date","now","get","isOutdated","localCache","staleTime","_isNil","usePersistedQuery","queryKey","fetch","options","queryResult","queryFn","isSuccess","isFreshLoading","isLoading","getCache"],"sources":["../../../src/react-utils/usePersistedQuery/usePersistedQuery.js"],"sourcesContent":["import { useEffect } from \"react\";\n\nimport { useQuery } from \"@tanstack/react-query\";\nimport { isNil } from \"ramda\";\nimport { QUERY_CACHE_NAME_SPACE } from \"react-utils/constants\";\nimport { getFromLocalStorage, setToLocalStorage } from \"utils/general\";\n\nconst localStorageQueryCache = {\n set: (key, data) => {\n const cache = localStorageQueryCache.getAll();\n const newCache = { ...cache, [key]: { data, modifiedAt: Date.now() } };\n setToLocalStorage(QUERY_CACHE_NAME_SPACE, newCache);\n },\n getAll: () => {\n const cache = getFromLocalStorage(QUERY_CACHE_NAME_SPACE);\n if (!cache) return {};\n\n return cache;\n },\n get: key => localStorageQueryCache.getAll()[key],\n};\n\nconst isOutdated = (localCache, staleTime) => {\n if (isNil(localCache)) return true;\n\n if (isNil(staleTime)) return false;\n\n return localCache.modifiedAt <= Date.now() - staleTime;\n};\n\nconst usePersistedQuery = (queryKey, fetch, options) => {\n const queryResult = useQuery({\n queryKey,\n queryFn: fetch,\n ...options,\n });\n const localCache = localStorageQueryCache.get(queryKey);\n\n useEffect(() => {\n if (!queryResult.isSuccess) return;\n localStorageQueryCache.set(queryKey, queryResult.data);\n }, [queryKey, queryResult.data, queryResult.isSuccess]);\n\n if (isOutdated(localCache, options?.staleTime)) {\n return { ...queryResult, isFreshLoading: queryResult.isLoading };\n }\n\n return {\n ...queryResult,\n data: queryResult.data || localCache.data,\n isFreshLoading: false,\n };\n};\n\nusePersistedQuery.getCache = localStorageQueryCache.get;\n\nexport default usePersistedQuery;\n"],"mappings":";;;;AAAA,SAASA,SAAS,QAAQ,OAAO;AAEjC,SAASC,QAAQ,QAAQ,uBAAuB;AAEhD,SAASC,sBAAsB;AAC/B,SAASC,mBAAmB,EAAEC,iBAAiB;AAE/C,IAAMC,sBAAsB,GAAG;EAC7BC,GAAG,EAAE,SAALA,GAAGA,CAAGC,GAAG,EAAEC,IAAI,EAAK;IAClB,IAAMC,KAAK,GAAGJ,sBAAsB,CAACK,MAAM,CAAC,CAAC;IAC7C,IAAMC,QAAQ,GAAAC,aAAA,CAAAA,aAAA,KAAQH,KAAK,OAAAI,eAAA,KAAGN,GAAG,EAAG;MAAEC,IAAI,EAAJA,IAAI;MAAEM,UAAU,EAAEC,IAAI,CAACC,GAAG,CAAC;IAAE,CAAC,EAAE;IACtEZ,iBAAiB,CAACF,sBAAsB,EAAES,QAAQ,CAAC;EACrD,CAAC;EACDD,MAAM,EAAE,SAARA,MAAMA,CAAA,EAAQ;IACZ,IAAMD,KAAK,GAAGN,mBAAmB,CAACD,sBAAsB,CAAC;IACzD,IAAI,CAACO,KAAK,EAAE,OAAO,CAAC,CAAC;IAErB,OAAOA,KAAK;EACd,CAAC;EACDQ,GAAG,EAAE,SAALA,GAAGA,CAAEV,GAAG;IAAA,OAAIF,sBAAsB,CAACK,MAAM,CAAC,CAAC,CAACH,GAAG,CAAC;EAAA;AAClD,CAAC;AAED,IAAMW,UAAU,GAAG,SAAbA,UAAUA,CAAIC,UAAU,EAAEC,SAAS,EAAK;EAC5C,IAAIC,MAAA,CAAMF,UAAU,CAAC,EAAE,OAAO,IAAI;EAElC,IAAIE,MAAA,CAAMD,SAAS,CAAC,EAAE,OAAO,KAAK;EAElC,OAAOD,UAAU,CAACL,UAAU,IAAIC,IAAI,CAACC,GAAG,CAAC,CAAC,GAAGI,SAAS;AACxD,CAAC;AAED,IAAME,iBAAiB,GAAG,SAApBA,iBAAiBA,CAAIC,QAAQ,EAAEC,KAAK,EAAEC,OAAO,EAAK;EACtD,IAAMC,WAAW,GAAGzB,QAAQ,CAAAW,aAAA;IAC1BW,QAAQ,EAARA,QAAQ;IACRI,OAAO,EAAEH;EAAK,GACXC,OAAO,CACX,CAAC;EACF,IAAMN,UAAU,GAAGd,sBAAsB,CAACY,GAAG,CAACM,QAAQ,CAAC;EAEvDvB,SAAS,CAAC,YAAM;IACd,IAAI,CAAC0B,WAAW,CAACE,SAAS,EAAE;IAC5BvB,sBAAsB,CAACC,GAAG,CAACiB,QAAQ,EAAEG,WAAW,CAAClB,IAAI,CAAC;EACxD,CAAC,EAAE,CAACe,QAAQ,EAAEG,WAAW,CAAClB,IAAI,EAAEkB,WAAW,CAACE,SAAS,CAAC,CAAC;EAEvD,IAAIV,UAAU,CAACC,UAAU,EAAEM,OAAO,aAAPA,OAAO,uBAAPA,OAAO,CAAEL,SAAS,CAAC,EAAE;IAC9C,OAAAR,aAAA,CAAAA,aAAA,KAAYc,WAAW;MAAEG,cAAc,EAAEH,WAAW,CAACI;IAAS;EAChE;EAEA,OAAAlB,aAAA,CAAAA,aAAA,KACKc,WAAW;IACdlB,IAAI,EAAEkB,WAAW,CAAClB,IAAI,IAAIW,UAAU,CAACX,IAAI;IACzCqB,cAAc,EAAE;EAAK;AAEzB,CAAC;AAEDP,iBAAiB,CAACS,QAAQ,GAAG1B,sBAAsB,CAACY,GAAG;AAEvD,eAAeK,iBAAiB","ignoreList":[]}
@@ -1,8 +1,11 @@
1
+ import _pick from "ramda/es/pick";
2
+ import _prop from "ramda/es/prop";
3
+ import _dissoc from "ramda/es/dissoc";
1
4
  import _defineProperty from "@babel/runtime/helpers/defineProperty";
5
+ import _mergeDeepLeft from "ramda/es/mergeDeepLeft";
2
6
  function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
3
7
  function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
4
8
  import { useEffect } from "react";
5
- import { mergeDeepLeft, pick, prop, dissoc } from "ramda";
6
9
  import { STORAGE_KEY } from "../constants";
7
10
  import withImmutableActions from "../withImmutableActions";
8
11
  import { getFromLocalStorage, setToLocalStorage } from "../../utils/general";
@@ -20,14 +23,14 @@ var useCheckpointStore = create(withImmutableActions(function (set) {
20
23
  return {
21
24
  checkpoints: {},
22
25
  setCheckpoint: function setCheckpoint(key, path) {
23
- return set(mergeDeepLeft({
26
+ return set(_mergeDeepLeft({
24
27
  checkpoints: _defineProperty({}, key, path)
25
28
  }));
26
29
  },
27
30
  removeCheckpoint: function removeCheckpoint(key) {
28
31
  return set(function (state) {
29
32
  return {
30
- checkpoints: dissoc(key, state.checkpoints)
33
+ checkpoints: _dissoc(key, state.checkpoints)
31
34
  };
32
35
  });
33
36
  }
@@ -36,7 +39,7 @@ var useCheckpointStore = create(withImmutableActions(function (set) {
36
39
  var useRegisterNavigationCheckpoint = function useRegisterNavigationCheckpoint(key) {
37
40
  var path = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : window.location.pathname + window.location.search;
38
41
  var persistInLocalStorage = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : false;
39
- var setCheckpoint = useCheckpointStore(prop("setCheckpoint"));
42
+ var setCheckpoint = useCheckpointStore(_prop("setCheckpoint"));
40
43
  useEffect(function () {
41
44
  setCheckpoint(key, path);
42
45
  if (persistInLocalStorage) {
@@ -50,18 +53,18 @@ export var useNavigationCheckpoints = function useNavigationCheckpoints() {
50
53
  keys[_key] = arguments[_key];
51
54
  }
52
55
  var getCheckpoints = useCheckpointStore(function (store) {
53
- return pick(keys, store.checkpoints);
56
+ return _pick(keys, store.checkpoints);
54
57
  }, shallow);
55
58
  var localStorageData = getLocalStorageData();
56
- var localStorageCheckpoints = pick(keys, localStorageData);
59
+ var localStorageCheckpoints = _pick(keys, localStorageData);
57
60
  return _objectSpread(_objectSpread({}, getCheckpoints), localStorageCheckpoints);
58
61
  };
59
62
  export var useRemoveNavigationCheckpoint = function useRemoveNavigationCheckpoint() {
60
- var removeCheckpoint = useCheckpointStore(prop("removeCheckpoint"));
63
+ var removeCheckpoint = useCheckpointStore(_prop("removeCheckpoint"));
61
64
  return function (key) {
62
65
  removeCheckpoint(key);
63
66
  var localStorageData = getLocalStorageData();
64
- setLocalStorageData(dissoc(key, localStorageData));
67
+ setLocalStorageData(_dissoc(key, localStorageData));
65
68
  };
66
69
  };
67
70
  export default useRegisterNavigationCheckpoint;
@@ -1 +1 @@
1
- {"version":3,"file":"useRegisterNavigationCheckpoint.js","names":["useEffect","mergeDeepLeft","pick","prop","dissoc","STORAGE_KEY","withImmutableActions","getFromLocalStorage","setToLocalStorage","create","shallow","getLocalStorageData","setLocalStorageData","data","useCheckpointStore","set","checkpoints","setCheckpoint","key","path","_defineProperty","removeCheckpoint","state","useRegisterNavigationCheckpoint","arguments","length","undefined","window","location","pathname","search","persistInLocalStorage","localStorageData","_objectSpread","useNavigationCheckpoints","_len","keys","Array","_key","getCheckpoints","store","localStorageCheckpoints","useRemoveNavigationCheckpoint"],"sources":["../../../src/react-utils/useRegisterNavigationCheckpoint/useRegisterNavigationCheckpoint.js"],"sourcesContent":["import { useEffect } from \"react\";\n\nimport { mergeDeepLeft, pick, prop, dissoc } from \"ramda\";\nimport { STORAGE_KEY } from \"react-utils/constants\";\nimport withImmutableActions from \"react-utils/withImmutableActions\";\nimport { getFromLocalStorage, setToLocalStorage } from \"utils/general\";\nimport { create } from \"zustand\";\nimport { shallow } from \"zustand/shallow\";\n\nconst getLocalStorageData = () => getFromLocalStorage(STORAGE_KEY) || {};\n\nconst setLocalStorageData = data => setToLocalStorage(STORAGE_KEY, data);\n\n/** @type {import(\"neetocommons/react-utils\").ZustandStoreHook} */\nconst useCheckpointStore = create(\n withImmutableActions(set => ({\n checkpoints: {},\n setCheckpoint: (key, path) =>\n set(mergeDeepLeft({ checkpoints: { [key]: path } })),\n removeCheckpoint: key =>\n set(state => ({ checkpoints: dissoc(key, state.checkpoints) })),\n }))\n);\n\nconst useRegisterNavigationCheckpoint = (\n key,\n path = window.location.pathname + window.location.search,\n persistInLocalStorage = false\n) => {\n const setCheckpoint = useCheckpointStore(prop(\"setCheckpoint\"));\n\n useEffect(() => {\n setCheckpoint(key, path);\n if (persistInLocalStorage) {\n const localStorageData = getLocalStorageData();\n setLocalStorageData({ ...localStorageData, [key]: path });\n }\n }, [key, path, persistInLocalStorage]);\n};\n\nexport const useNavigationCheckpoints = (...keys) => {\n const getCheckpoints = useCheckpointStore(\n store => pick(keys, store.checkpoints),\n shallow\n );\n\n const localStorageData = getLocalStorageData();\n const localStorageCheckpoints = pick(keys, localStorageData);\n\n return { ...getCheckpoints, ...localStorageCheckpoints };\n};\n\nexport const useRemoveNavigationCheckpoint = () => {\n const removeCheckpoint = useCheckpointStore(prop(\"removeCheckpoint\"));\n\n return key => {\n removeCheckpoint(key);\n const localStorageData = getLocalStorageData();\n setLocalStorageData(dissoc(key, localStorageData));\n };\n};\n\nexport default useRegisterNavigationCheckpoint;\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"useRegisterNavigationCheckpoint.js","names":["useEffect","STORAGE_KEY","withImmutableActions","getFromLocalStorage","setToLocalStorage","create","shallow","getLocalStorageData","setLocalStorageData","data","useCheckpointStore","set","checkpoints","setCheckpoint","key","path","_mergeDeepLeft","_defineProperty","removeCheckpoint","state","_dissoc","useRegisterNavigationCheckpoint","arguments","length","undefined","window","location","pathname","search","persistInLocalStorage","_prop","localStorageData","_objectSpread","useNavigationCheckpoints","_len","keys","Array","_key","getCheckpoints","store","_pick","localStorageCheckpoints","useRemoveNavigationCheckpoint"],"sources":["../../../src/react-utils/useRegisterNavigationCheckpoint/useRegisterNavigationCheckpoint.js"],"sourcesContent":["import { useEffect } from \"react\";\n\nimport { mergeDeepLeft, pick, prop, dissoc } from \"ramda\";\nimport { STORAGE_KEY } from \"react-utils/constants\";\nimport withImmutableActions from \"react-utils/withImmutableActions\";\nimport { getFromLocalStorage, setToLocalStorage } from \"utils/general\";\nimport { create } from \"zustand\";\nimport { shallow } from \"zustand/shallow\";\n\nconst getLocalStorageData = () => getFromLocalStorage(STORAGE_KEY) || {};\n\nconst setLocalStorageData = data => setToLocalStorage(STORAGE_KEY, data);\n\n/** @type {import(\"neetocommons/react-utils\").ZustandStoreHook} */\nconst useCheckpointStore = create(\n withImmutableActions(set => ({\n checkpoints: {},\n setCheckpoint: (key, path) =>\n set(mergeDeepLeft({ checkpoints: { [key]: path } })),\n removeCheckpoint: key =>\n set(state => ({ checkpoints: dissoc(key, state.checkpoints) })),\n }))\n);\n\nconst useRegisterNavigationCheckpoint = (\n key,\n path = window.location.pathname + window.location.search,\n persistInLocalStorage = false\n) => {\n const setCheckpoint = useCheckpointStore(prop(\"setCheckpoint\"));\n\n useEffect(() => {\n setCheckpoint(key, path);\n if (persistInLocalStorage) {\n const localStorageData = getLocalStorageData();\n setLocalStorageData({ ...localStorageData, [key]: path });\n }\n }, [key, path, persistInLocalStorage]);\n};\n\nexport const useNavigationCheckpoints = (...keys) => {\n const getCheckpoints = useCheckpointStore(\n store => pick(keys, store.checkpoints),\n shallow\n );\n\n const localStorageData = getLocalStorageData();\n const localStorageCheckpoints = pick(keys, localStorageData);\n\n return { ...getCheckpoints, ...localStorageCheckpoints };\n};\n\nexport const useRemoveNavigationCheckpoint = () => {\n const removeCheckpoint = useCheckpointStore(prop(\"removeCheckpoint\"));\n\n return key => {\n removeCheckpoint(key);\n const localStorageData = getLocalStorageData();\n setLocalStorageData(dissoc(key, localStorageData));\n };\n};\n\nexport default useRegisterNavigationCheckpoint;\n"],"mappings":"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","ignoreList":[]}
@@ -1,5 +1,7 @@
1
+ import _prop from "ramda/es/prop";
2
+ import _dissoc from "ramda/es/dissoc";
3
+ import _assoc from "ramda/es/assoc";
1
4
  import { useEffect } from "react";
2
- import { assoc, dissoc, prop } from "ramda";
3
5
  import useFuncDebounce from "../useFuncDebounce";
4
6
  import withImmutableActions from "../withImmutableActions";
5
7
  import { create } from "zustand";
@@ -11,14 +13,14 @@ var useScrollStore = create(withImmutableActions(function (set, get) {
11
13
  setScrollPosition: function setScrollPosition(key, value) {
12
14
  return set(function (state) {
13
15
  return {
14
- scrollPositions: assoc(key, value, state.scrollPositions)
16
+ scrollPositions: _assoc(key, value, state.scrollPositions)
15
17
  };
16
18
  });
17
19
  },
18
20
  removeScrollPosition: function removeScrollPosition(key) {
19
21
  return set(function (state) {
20
22
  return {
21
- scrollPositions: dissoc(key, state.scrollPositions)
23
+ scrollPositions: _dissoc(key, state.scrollPositions)
22
24
  };
23
25
  });
24
26
  },
@@ -28,8 +30,8 @@ var useScrollStore = create(withImmutableActions(function (set, get) {
28
30
  };
29
31
  }));
30
32
  var useRestoreScrollPosition = function useRestoreScrollPosition(key, ref) {
31
- var setScrollPosition = useScrollStore(prop("setScrollPosition"));
32
- var getScrollPosition = useScrollStore(prop("getScrollPosition"));
33
+ var setScrollPosition = useScrollStore(_prop("setScrollPosition"));
34
+ var getScrollPosition = useScrollStore(_prop("getScrollPosition"));
33
35
  var handleScroll = useFuncDebounce(function () {
34
36
  if (!ref.current) return;
35
37
  setScrollPosition(key, ref.current.scrollTop);
@@ -50,13 +52,13 @@ var useRestoreScrollPosition = function useRestoreScrollPosition(key, ref) {
50
52
  }, [key]);
51
53
  };
52
54
  export var useSetScrollPosition = function useSetScrollPosition() {
53
- return useScrollStore(prop("setScrollPosition"));
55
+ return useScrollStore(_prop("setScrollPosition"));
54
56
  };
55
57
  export var useGetScrollPosition = function useGetScrollPosition() {
56
- return useScrollStore(prop("getScrollPosition"));
58
+ return useScrollStore(_prop("getScrollPosition"));
57
59
  };
58
60
  export var useRemoveScrollPosition = function useRemoveScrollPosition() {
59
- return useScrollStore(prop("removeScrollPosition"));
61
+ return useScrollStore(_prop("removeScrollPosition"));
60
62
  };
61
63
  export default useRestoreScrollPosition;
62
64
  //# sourceMappingURL=useRestoreScrollPosition.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"useRestoreScrollPosition.js","names":["useEffect","assoc","dissoc","prop","useFuncDebounce","withImmutableActions","create","useScrollStore","set","get","scrollPositions","setScrollPosition","key","value","state","removeScrollPosition","getScrollPosition","useRestoreScrollPosition","ref","handleScroll","current","scrollTop","savedScrollPosition","undefined","addEventListener","removeEventListener","useSetScrollPosition","useGetScrollPosition","useRemoveScrollPosition"],"sources":["../../../src/react-utils/useRestoreScrollPosition/useRestoreScrollPosition.js"],"sourcesContent":["import { useEffect } from \"react\";\n\nimport { assoc, dissoc, prop } from \"ramda\";\nimport useFuncDebounce from \"react-utils/useFuncDebounce\";\nimport withImmutableActions from \"react-utils/withImmutableActions\";\nimport { create } from \"zustand\";\n\n/** @type {import(\"neetocommons/react-utils\").ZustandStoreHook} */\nconst useScrollStore = create(\n withImmutableActions((set, get) => ({\n scrollPositions: {},\n setScrollPosition: (key, value) =>\n set(state => ({\n scrollPositions: assoc(key, value, state.scrollPositions),\n })),\n removeScrollPosition: key =>\n set(state => ({ scrollPositions: dissoc(key, state.scrollPositions) })),\n getScrollPosition: key => get().scrollPositions[key],\n }))\n);\n\nconst useRestoreScrollPosition = (key, ref) => {\n const setScrollPosition = useScrollStore(prop(\"setScrollPosition\"));\n const getScrollPosition = useScrollStore(prop(\"getScrollPosition\"));\n\n const handleScroll = useFuncDebounce(() => {\n if (!ref.current) return;\n setScrollPosition(key, ref.current.scrollTop);\n }, 500);\n\n useEffect(() => {\n if (ref.current) {\n const savedScrollPosition = getScrollPosition(key);\n if (savedScrollPosition !== undefined) {\n ref.current.scrollTop = savedScrollPosition;\n }\n ref.current.addEventListener(\"scroll\", handleScroll);\n }\n\n return () => {\n if (ref.current) {\n ref.current.removeEventListener(\"scroll\", handleScroll);\n }\n };\n }, [key]);\n};\n\nexport const useSetScrollPosition = () =>\n useScrollStore(prop(\"setScrollPosition\"));\n\nexport const useGetScrollPosition = () =>\n useScrollStore(prop(\"getScrollPosition\"));\n\nexport const useRemoveScrollPosition = () =>\n useScrollStore(prop(\"removeScrollPosition\"));\n\nexport default useRestoreScrollPosition;\n"],"mappings":"AAAA,SAASA,SAAS,QAAQ,OAAO;AAEjC,SAASC,KAAK,EAAEC,MAAM,EAAEC,IAAI,QAAQ,OAAO;AAC3C,OAAOC,eAAe;AACtB,OAAOC,oBAAoB;AAC3B,SAASC,MAAM,QAAQ,SAAS;;AAEhC;AACA,IAAMC,cAAc,GAAGD,MAAM,CAC3BD,oBAAoB,CAAC,UAACG,GAAG,EAAEC,GAAG;EAAA,OAAM;IAClCC,eAAe,EAAE,CAAC,CAAC;IACnBC,iBAAiB,EAAE,SAAnBA,iBAAiBA,CAAGC,GAAG,EAAEC,KAAK;MAAA,OAC5BL,GAAG,CAAC,UAAAM,KAAK;QAAA,OAAK;UACZJ,eAAe,EAAET,KAAK,CAACW,GAAG,EAAEC,KAAK,EAAEC,KAAK,CAACJ,eAAe;QAC1D,CAAC;MAAA,CAAC,CAAC;IAAA;IACLK,oBAAoB,EAAE,SAAtBA,oBAAoBA,CAAEH,GAAG;MAAA,OACvBJ,GAAG,CAAC,UAAAM,KAAK;QAAA,OAAK;UAAEJ,eAAe,EAAER,MAAM,CAACU,GAAG,EAAEE,KAAK,CAACJ,eAAe;QAAE,CAAC;MAAA,CAAC,CAAC;IAAA;IACzEM,iBAAiB,EAAE,SAAnBA,iBAAiBA,CAAEJ,GAAG;MAAA,OAAIH,GAAG,CAAC,CAAC,CAACC,eAAe,CAACE,GAAG,CAAC;IAAA;EACtD,CAAC;AAAA,CAAC,CACJ,CAAC;AAED,IAAMK,wBAAwB,GAAG,SAA3BA,wBAAwBA,CAAIL,GAAG,EAAEM,GAAG,EAAK;EAC7C,IAAMP,iBAAiB,GAAGJ,cAAc,CAACJ,IAAI,CAAC,mBAAmB,CAAC,CAAC;EACnE,IAAMa,iBAAiB,GAAGT,cAAc,CAACJ,IAAI,CAAC,mBAAmB,CAAC,CAAC;EAEnE,IAAMgB,YAAY,GAAGf,eAAe,CAAC,YAAM;IACzC,IAAI,CAACc,GAAG,CAACE,OAAO,EAAE;IAClBT,iBAAiB,CAACC,GAAG,EAAEM,GAAG,CAACE,OAAO,CAACC,SAAS,CAAC;EAC/C,CAAC,EAAE,GAAG,CAAC;EAEPrB,SAAS,CAAC,YAAM;IACd,IAAIkB,GAAG,CAACE,OAAO,EAAE;MACf,IAAME,mBAAmB,GAAGN,iBAAiB,CAACJ,GAAG,CAAC;MAClD,IAAIU,mBAAmB,KAAKC,SAAS,EAAE;QACrCL,GAAG,CAACE,OAAO,CAACC,SAAS,GAAGC,mBAAmB;MAC7C;MACAJ,GAAG,CAACE,OAAO,CAACI,gBAAgB,CAAC,QAAQ,EAAEL,YAAY,CAAC;IACtD;IAEA,OAAO,YAAM;MACX,IAAID,GAAG,CAACE,OAAO,EAAE;QACfF,GAAG,CAACE,OAAO,CAACK,mBAAmB,CAAC,QAAQ,EAAEN,YAAY,CAAC;MACzD;IACF,CAAC;EACH,CAAC,EAAE,CAACP,GAAG,CAAC,CAAC;AACX,CAAC;AAED,OAAO,IAAMc,oBAAoB,GAAG,SAAvBA,oBAAoBA,CAAA;EAAA,OAC/BnB,cAAc,CAACJ,IAAI,CAAC,mBAAmB,CAAC,CAAC;AAAA;AAE3C,OAAO,IAAMwB,oBAAoB,GAAG,SAAvBA,oBAAoBA,CAAA;EAAA,OAC/BpB,cAAc,CAACJ,IAAI,CAAC,mBAAmB,CAAC,CAAC;AAAA;AAE3C,OAAO,IAAMyB,uBAAuB,GAAG,SAA1BA,uBAAuBA,CAAA;EAAA,OAClCrB,cAAc,CAACJ,IAAI,CAAC,sBAAsB,CAAC,CAAC;AAAA;AAE9C,eAAec,wBAAwB","ignoreList":[]}
1
+ {"version":3,"file":"useRestoreScrollPosition.js","names":["useEffect","useFuncDebounce","withImmutableActions","create","useScrollStore","set","get","scrollPositions","setScrollPosition","key","value","state","_assoc","removeScrollPosition","_dissoc","getScrollPosition","useRestoreScrollPosition","ref","_prop","handleScroll","current","scrollTop","savedScrollPosition","undefined","addEventListener","removeEventListener","useSetScrollPosition","useGetScrollPosition","useRemoveScrollPosition"],"sources":["../../../src/react-utils/useRestoreScrollPosition/useRestoreScrollPosition.js"],"sourcesContent":["import { useEffect } from \"react\";\n\nimport { assoc, dissoc, prop } from \"ramda\";\nimport useFuncDebounce from \"react-utils/useFuncDebounce\";\nimport withImmutableActions from \"react-utils/withImmutableActions\";\nimport { create } from \"zustand\";\n\n/** @type {import(\"neetocommons/react-utils\").ZustandStoreHook} */\nconst useScrollStore = create(\n withImmutableActions((set, get) => ({\n scrollPositions: {},\n setScrollPosition: (key, value) =>\n set(state => ({\n scrollPositions: assoc(key, value, state.scrollPositions),\n })),\n removeScrollPosition: key =>\n set(state => ({ scrollPositions: dissoc(key, state.scrollPositions) })),\n getScrollPosition: key => get().scrollPositions[key],\n }))\n);\n\nconst useRestoreScrollPosition = (key, ref) => {\n const setScrollPosition = useScrollStore(prop(\"setScrollPosition\"));\n const getScrollPosition = useScrollStore(prop(\"getScrollPosition\"));\n\n const handleScroll = useFuncDebounce(() => {\n if (!ref.current) return;\n setScrollPosition(key, ref.current.scrollTop);\n }, 500);\n\n useEffect(() => {\n if (ref.current) {\n const savedScrollPosition = getScrollPosition(key);\n if (savedScrollPosition !== undefined) {\n ref.current.scrollTop = savedScrollPosition;\n }\n ref.current.addEventListener(\"scroll\", handleScroll);\n }\n\n return () => {\n if (ref.current) {\n ref.current.removeEventListener(\"scroll\", handleScroll);\n }\n };\n }, [key]);\n};\n\nexport const useSetScrollPosition = () =>\n useScrollStore(prop(\"setScrollPosition\"));\n\nexport const useGetScrollPosition = () =>\n useScrollStore(prop(\"getScrollPosition\"));\n\nexport const useRemoveScrollPosition = () =>\n useScrollStore(prop(\"removeScrollPosition\"));\n\nexport default useRestoreScrollPosition;\n"],"mappings":";;;AAAA,SAASA,SAAS,QAAQ,OAAO;AAGjC,OAAOC,eAAe;AACtB,OAAOC,oBAAoB;AAC3B,SAASC,MAAM,QAAQ,SAAS;;AAEhC;AACA,IAAMC,cAAc,GAAGD,MAAM,CAC3BD,oBAAoB,CAAC,UAACG,GAAG,EAAEC,GAAG;EAAA,OAAM;IAClCC,eAAe,EAAE,CAAC,CAAC;IACnBC,iBAAiB,EAAE,SAAnBA,iBAAiBA,CAAGC,GAAG,EAAEC,KAAK;MAAA,OAC5BL,GAAG,CAAC,UAAAM,KAAK;QAAA,OAAK;UACZJ,eAAe,EAAEK,MAAA,CAAMH,GAAG,EAAEC,KAAK,EAAEC,KAAK,CAACJ,eAAe;QAC1D,CAAC;MAAA,CAAC,CAAC;IAAA;IACLM,oBAAoB,EAAE,SAAtBA,oBAAoBA,CAAEJ,GAAG;MAAA,OACvBJ,GAAG,CAAC,UAAAM,KAAK;QAAA,OAAK;UAAEJ,eAAe,EAAEO,OAAA,CAAOL,GAAG,EAAEE,KAAK,CAACJ,eAAe;QAAE,CAAC;MAAA,CAAC,CAAC;IAAA;IACzEQ,iBAAiB,EAAE,SAAnBA,iBAAiBA,CAAEN,GAAG;MAAA,OAAIH,GAAG,CAAC,CAAC,CAACC,eAAe,CAACE,GAAG,CAAC;IAAA;EACtD,CAAC;AAAA,CAAC,CACJ,CAAC;AAED,IAAMO,wBAAwB,GAAG,SAA3BA,wBAAwBA,CAAIP,GAAG,EAAEQ,GAAG,EAAK;EAC7C,IAAMT,iBAAiB,GAAGJ,cAAc,CAACc,KAAA,CAAK,mBAAmB,CAAC,CAAC;EACnE,IAAMH,iBAAiB,GAAGX,cAAc,CAACc,KAAA,CAAK,mBAAmB,CAAC,CAAC;EAEnE,IAAMC,YAAY,GAAGlB,eAAe,CAAC,YAAM;IACzC,IAAI,CAACgB,GAAG,CAACG,OAAO,EAAE;IAClBZ,iBAAiB,CAACC,GAAG,EAAEQ,GAAG,CAACG,OAAO,CAACC,SAAS,CAAC;EAC/C,CAAC,EAAE,GAAG,CAAC;EAEPrB,SAAS,CAAC,YAAM;IACd,IAAIiB,GAAG,CAACG,OAAO,EAAE;MACf,IAAME,mBAAmB,GAAGP,iBAAiB,CAACN,GAAG,CAAC;MAClD,IAAIa,mBAAmB,KAAKC,SAAS,EAAE;QACrCN,GAAG,CAACG,OAAO,CAACC,SAAS,GAAGC,mBAAmB;MAC7C;MACAL,GAAG,CAACG,OAAO,CAACI,gBAAgB,CAAC,QAAQ,EAAEL,YAAY,CAAC;IACtD;IAEA,OAAO,YAAM;MACX,IAAIF,GAAG,CAACG,OAAO,EAAE;QACfH,GAAG,CAACG,OAAO,CAACK,mBAAmB,CAAC,QAAQ,EAAEN,YAAY,CAAC;MACzD;IACF,CAAC;EACH,CAAC,EAAE,CAACV,GAAG,CAAC,CAAC;AACX,CAAC;AAED,OAAO,IAAMiB,oBAAoB,GAAG,SAAvBA,oBAAoBA,CAAA;EAAA,OAC/BtB,cAAc,CAACc,KAAA,CAAK,mBAAmB,CAAC,CAAC;AAAA;AAE3C,OAAO,IAAMS,oBAAoB,GAAG,SAAvBA,oBAAoBA,CAAA;EAAA,OAC/BvB,cAAc,CAACc,KAAA,CAAK,mBAAmB,CAAC,CAAC;AAAA;AAE3C,OAAO,IAAMU,uBAAuB,GAAG,SAA1BA,uBAAuBA,CAAA;EAAA,OAClCxB,cAAc,CAACc,KAAA,CAAK,sBAAsB,CAAC,CAAC;AAAA;AAE9C,eAAeF,wBAAwB","ignoreList":[]}
@@ -1,12 +1,13 @@
1
- import { isEmpty, keys } from "ramda";
1
+ import _isEmpty from "ramda/es/isEmpty";
2
+ import _keys from "ramda/es/keys";
2
3
  var setWithoutModifyingActions = function setWithoutModifyingActions(set) {
3
4
  return function (partial) {
4
5
  return set(function (previous) {
5
6
  if (typeof partial === "function") partial = partial(previous);
6
- var overwrittenActions = keys(partial).filter(function (key) {
7
+ var overwrittenActions = _keys(partial).filter(function (key) {
7
8
  return typeof (previous === null || previous === void 0 ? void 0 : previous[key]) === "function" && partial[key] !== previous[key];
8
9
  });
9
- if (!isEmpty(overwrittenActions)) {
10
+ if (!_isEmpty(overwrittenActions)) {
10
11
  throw new Error("Actions should not be modified. Touched action(s): ".concat(overwrittenActions.join(", ")));
11
12
  }
12
13
  return partial;
@@ -1 +1 @@
1
- {"version":3,"file":"withImmutableActions.js","names":["isEmpty","keys","setWithoutModifyingActions","set","partial","previous","overwrittenActions","filter","key","Error","concat","join","withImmutableActions","config","get","api"],"sources":["../../../src/react-utils/withImmutableActions/withImmutableActions.js"],"sourcesContent":["import { isEmpty, keys } from \"ramda\";\n\nconst setWithoutModifyingActions = set => partial =>\n set(previous => {\n if (typeof partial === \"function\") partial = partial(previous);\n\n const overwrittenActions = keys(partial).filter(\n key =>\n typeof previous?.[key] === \"function\" && partial[key] !== previous[key]\n );\n if (!isEmpty(overwrittenActions)) {\n throw new Error(\n `Actions should not be modified. Touched action(s): ${overwrittenActions.join(\n \", \"\n )}`\n );\n }\n\n return partial;\n }, false);\n\nconst withImmutableActions = config => (set, get, api) =>\n config(setWithoutModifyingActions(set), get, api);\n\nexport default withImmutableActions;\n"],"mappings":"AAAA,SAASA,OAAO,EAAEC,IAAI,QAAQ,OAAO;AAErC,IAAMC,0BAA0B,GAAG,SAA7BA,0BAA0BA,CAAGC,GAAG;EAAA,OAAI,UAAAC,OAAO;IAAA,OAC/CD,GAAG,CAAC,UAAAE,QAAQ,EAAI;MACd,IAAI,OAAOD,OAAO,KAAK,UAAU,EAAEA,OAAO,GAAGA,OAAO,CAACC,QAAQ,CAAC;MAE9D,IAAMC,kBAAkB,GAAGL,IAAI,CAACG,OAAO,CAAC,CAACG,MAAM,CAC7C,UAAAC,GAAG;QAAA,OACD,QAAOH,QAAQ,aAARA,QAAQ,uBAARA,QAAQ,CAAGG,GAAG,CAAC,MAAK,UAAU,IAAIJ,OAAO,CAACI,GAAG,CAAC,KAAKH,QAAQ,CAACG,GAAG,CAAC;MAAA,CAC3E,CAAC;MACD,IAAI,CAACR,OAAO,CAACM,kBAAkB,CAAC,EAAE;QAChC,MAAM,IAAIG,KAAK,uDAAAC,MAAA,CACyCJ,kBAAkB,CAACK,IAAI,CAC3E,IACF,CAAC,CACH,CAAC;MACH;MAEA,OAAOP,OAAO;IAChB,CAAC,EAAE,KAAK,CAAC;EAAA;AAAA;AAEX,IAAMQ,oBAAoB,GAAG,SAAvBA,oBAAoBA,CAAGC,MAAM;EAAA,OAAI,UAACV,GAAG,EAAEW,GAAG,EAAEC,GAAG;IAAA,OACnDF,MAAM,CAACX,0BAA0B,CAACC,GAAG,CAAC,EAAEW,GAAG,EAAEC,GAAG,CAAC;EAAA;AAAA;AAEnD,eAAeH,oBAAoB","ignoreList":[]}
1
+ {"version":3,"file":"withImmutableActions.js","names":["setWithoutModifyingActions","set","partial","previous","overwrittenActions","_keys","filter","key","_isEmpty","Error","concat","join","withImmutableActions","config","get","api"],"sources":["../../../src/react-utils/withImmutableActions/withImmutableActions.js"],"sourcesContent":["import { isEmpty, keys } from \"ramda\";\n\nconst setWithoutModifyingActions = set => partial =>\n set(previous => {\n if (typeof partial === \"function\") partial = partial(previous);\n\n const overwrittenActions = keys(partial).filter(\n key =>\n typeof previous?.[key] === \"function\" && partial[key] !== previous[key]\n );\n if (!isEmpty(overwrittenActions)) {\n throw new Error(\n `Actions should not be modified. Touched action(s): ${overwrittenActions.join(\n \", \"\n )}`\n );\n }\n\n return partial;\n }, false);\n\nconst withImmutableActions = config => (set, get, api) =>\n config(setWithoutModifyingActions(set), get, api);\n\nexport default withImmutableActions;\n"],"mappings":";;AAEA,IAAMA,0BAA0B,GAAG,SAA7BA,0BAA0BA,CAAGC,GAAG;EAAA,OAAI,UAAAC,OAAO;IAAA,OAC/CD,GAAG,CAAC,UAAAE,QAAQ,EAAI;MACd,IAAI,OAAOD,OAAO,KAAK,UAAU,EAAEA,OAAO,GAAGA,OAAO,CAACC,QAAQ,CAAC;MAE9D,IAAMC,kBAAkB,GAAGC,KAAA,CAAKH,OAAO,CAAC,CAACI,MAAM,CAC7C,UAAAC,GAAG;QAAA,OACD,QAAOJ,QAAQ,aAARA,QAAQ,uBAARA,QAAQ,CAAGI,GAAG,CAAC,MAAK,UAAU,IAAIL,OAAO,CAACK,GAAG,CAAC,KAAKJ,QAAQ,CAACI,GAAG,CAAC;MAAA,CAC3E,CAAC;MACD,IAAI,CAACC,QAAA,CAAQJ,kBAAkB,CAAC,EAAE;QAChC,MAAM,IAAIK,KAAK,uDAAAC,MAAA,CACyCN,kBAAkB,CAACO,IAAI,CAC3E,IACF,CAAC,CACH,CAAC;MACH;MAEA,OAAOT,OAAO;IAChB,CAAC,EAAE,KAAK,CAAC;EAAA;AAAA;AAEX,IAAMU,oBAAoB,GAAG,SAAvBA,oBAAoBA,CAAGC,MAAM;EAAA,OAAI,UAACZ,GAAG,EAAEa,GAAG,EAAEC,GAAG;IAAA,OACnDF,MAAM,CAACb,0BAA0B,CAACC,GAAG,CAAC,EAAEa,GAAG,EAAEC,GAAG,CAAC;EAAA;AAAA;AAEnD,eAAeH,oBAAoB","ignoreList":[]}
@@ -47,7 +47,7 @@
47
47
  "sizeOutOfRange": "Should not be more than {{maxSize, number}} MB"
48
48
  },
49
49
  "userRole": {
50
- "deactivateActiveAdmin": "You cannot deactivate active admin from the organization!"
50
+ "deactivateActiveAdmin": "You cannot deactivate active admin from the workspace!"
51
51
  },
52
52
  "activeRecord": {
53
53
  "error": {
package/utils/axios.js CHANGED
@@ -1,8 +1,8 @@
1
+ import _values from "ramda/es/values";
1
2
  import axios from "axios";
2
3
  import { HEADERS_KEYS } from "../initializers/constants";
3
- import { values } from "ramda";
4
4
  var resetAuthTokens = function resetAuthTokens() {
5
- values(HEADERS_KEYS).forEach(function (header) {
5
+ _values(HEADERS_KEYS).forEach(function (header) {
6
6
  delete axios.defaults.headers[header];
7
7
  });
8
8
  };
@@ -1 +1 @@
1
- {"version":3,"file":"axios.js","names":["axios","HEADERS_KEYS","values","resetAuthTokens","forEach","header","defaults","headers"],"sources":["../../src/utils/axios.js"],"sourcesContent":["import axios from \"axios\";\nimport { HEADERS_KEYS } from \"initializers/constants\";\nimport { values } from \"ramda\";\n\nconst resetAuthTokens = () => {\n values(HEADERS_KEYS).forEach(header => {\n delete axios.defaults.headers[header];\n });\n};\n\nexport { resetAuthTokens };\n"],"mappings":"AAAA,OAAOA,KAAK,MAAM,OAAO;AACzB,SAASC,YAAY;AACrB,SAASC,MAAM,QAAQ,OAAO;AAE9B,IAAMC,eAAe,GAAG,SAAlBA,eAAeA,CAAA,EAAS;EAC5BD,MAAM,CAACD,YAAY,CAAC,CAACG,OAAO,CAAC,UAAAC,MAAM,EAAI;IACrC,OAAOL,KAAK,CAACM,QAAQ,CAACC,OAAO,CAACF,MAAM,CAAC;EACvC,CAAC,CAAC;AACJ,CAAC;AAED,SAASF,eAAe","ignoreList":[]}
1
+ {"version":3,"file":"axios.js","names":["axios","HEADERS_KEYS","resetAuthTokens","_values","forEach","header","defaults","headers"],"sources":["../../src/utils/axios.js"],"sourcesContent":["import axios from \"axios\";\nimport { HEADERS_KEYS } from \"initializers/constants\";\nimport { values } from \"ramda\";\n\nconst resetAuthTokens = () => {\n values(HEADERS_KEYS).forEach(header => {\n delete axios.defaults.headers[header];\n });\n};\n\nexport { resetAuthTokens };\n"],"mappings":";AAAA,OAAOA,KAAK,MAAM,OAAO;AACzB,SAASC,YAAY;AAGrB,IAAMC,eAAe,GAAG,SAAlBA,eAAeA,CAAA,EAAS;EAC5BC,OAAA,CAAOF,YAAY,CAAC,CAACG,OAAO,CAAC,UAAAC,MAAM,EAAI;IACrC,OAAOL,KAAK,CAACM,QAAQ,CAACC,OAAO,CAACF,MAAM,CAAC;EACvC,CAAC,CAAC;AACJ,CAAC;AAED,SAASH,eAAe","ignoreList":[]}
@@ -1,9 +1,9 @@
1
+ import _omit from "ramda/es/omit";
1
2
  import _toConsumableArray from "@babel/runtime/helpers/toConsumableArray";
2
3
  import _defineProperty from "@babel/runtime/helpers/defineProperty";
3
4
  function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
4
5
  function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
5
6
  import { findBy, isNotPresent } from "@bigbinary/neeto-cist";
6
- import { omit } from "ramda";
7
7
  export var buildNestedAttributesPayload = function buildNestedAttributesPayload(_ref) {
8
8
  var modifiedValues = _ref.modifiedValues,
9
9
  initialValues = _ref.initialValues,
@@ -27,6 +27,6 @@ export var buildNestedAttributesPayload = function buildNestedAttributesPayload(
27
27
  return _defineProperty({}, nestedAttributeKeyInPayload, item.value);
28
28
  });
29
29
  var nestedAttributes = [].concat(_toConsumableArray(itemsToCreateAttrs), _toConsumableArray(itemsToDestroyAttrs));
30
- return _objectSpread(_objectSpread({}, omit([nestedKeyToModify], modifiedValues)), {}, _defineProperty({}, nestedAttributesForArrayKey, nestedAttributes));
30
+ return _objectSpread(_objectSpread({}, _omit([nestedKeyToModify], modifiedValues)), {}, _defineProperty({}, nestedAttributesForArrayKey, nestedAttributes));
31
31
  };
32
32
  //# sourceMappingURL=buildNestedAttributesPayload.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"buildNestedAttributesPayload.js","names":["findBy","isNotPresent","omit","buildNestedAttributesPayload","_ref","modifiedValues","initialValues","nestedKeyToModify","nestedAttributeKeyInPayload","nestedAttributesForArrayKey","itemsToDestroy","filter","initialItem","value","itemsToDestroyAttrs","map","item","_defineProperty","id","itemsToBeCreated","modifiedItem","toLowerCase","itemsToCreateAttrs","nestedAttributes","concat","_toConsumableArray","_objectSpread"],"sources":["../../src/utils/buildNestedAttributesPayload.js"],"sourcesContent":["import { findBy, isNotPresent } from \"neetocist\";\nimport { omit } from \"ramda\";\n\nexport const buildNestedAttributesPayload = ({\n modifiedValues,\n initialValues,\n nestedKeyToModify,\n nestedAttributeKeyInPayload,\n nestedAttributesForArrayKey,\n}) => {\n const itemsToDestroy = initialValues[nestedKeyToModify].filter(initialItem =>\n isNotPresent(\n findBy(\n { value: initialItem[nestedAttributeKeyInPayload] },\n modifiedValues[nestedKeyToModify]\n )\n )\n );\n\n const itemsToDestroyAttrs = itemsToDestroy.map(item => ({\n id: item.id,\n [nestedAttributeKeyInPayload]: item[nestedAttributeKeyInPayload],\n _destroy: true,\n }));\n\n const itemsToBeCreated = modifiedValues[nestedKeyToModify].filter(\n modifiedItem =>\n isNotPresent(\n findBy(\n { [nestedAttributeKeyInPayload]: modifiedItem.value.toLowerCase() },\n initialValues[nestedKeyToModify]\n )\n )\n );\n\n const itemsToCreateAttrs = itemsToBeCreated.map(item => ({\n [nestedAttributeKeyInPayload]: item.value,\n }));\n\n const nestedAttributes = [...itemsToCreateAttrs, ...itemsToDestroyAttrs];\n\n return {\n ...omit([nestedKeyToModify], modifiedValues),\n [nestedAttributesForArrayKey]: nestedAttributes,\n };\n};\n"],"mappings":";;;;AAAA,SAASA,MAAM,EAAEC,YAAY;AAC7B,SAASC,IAAI,QAAQ,OAAO;AAE5B,OAAO,IAAMC,4BAA4B,GAAG,SAA/BA,4BAA4BA,CAAAC,IAAA,EAMnC;EAAA,IALJC,cAAc,GAAAD,IAAA,CAAdC,cAAc;IACdC,aAAa,GAAAF,IAAA,CAAbE,aAAa;IACbC,iBAAiB,GAAAH,IAAA,CAAjBG,iBAAiB;IACjBC,2BAA2B,GAAAJ,IAAA,CAA3BI,2BAA2B;IAC3BC,2BAA2B,GAAAL,IAAA,CAA3BK,2BAA2B;EAE3B,IAAMC,cAAc,GAAGJ,aAAa,CAACC,iBAAiB,CAAC,CAACI,MAAM,CAAC,UAAAC,WAAW;IAAA,OACxEX,YAAY,CACVD,MAAM,CACJ;MAAEa,KAAK,EAAED,WAAW,CAACJ,2BAA2B;IAAE,CAAC,EACnDH,cAAc,CAACE,iBAAiB,CAClC,CACF,CAAC;EAAA,CACH,CAAC;EAED,IAAMO,mBAAmB,GAAGJ,cAAc,CAACK,GAAG,CAAC,UAAAC,IAAI;IAAA,OAAAC,eAAA,CAAAA,eAAA;MACjDC,EAAE,EAAEF,IAAI,CAACE;IAAE,GACVV,2BAA2B,EAAGQ,IAAI,CAACR,2BAA2B,CAAC,eACtD,IAAI;EAAA,CACd,CAAC;EAEH,IAAMW,gBAAgB,GAAGd,cAAc,CAACE,iBAAiB,CAAC,CAACI,MAAM,CAC/D,UAAAS,YAAY;IAAA,OACVnB,YAAY,CACVD,MAAM,CAAAiB,eAAA,KACDT,2BAA2B,EAAGY,YAAY,CAACP,KAAK,CAACQ,WAAW,CAAC,CAAC,GACjEf,aAAa,CAACC,iBAAiB,CACjC,CACF,CAAC;EAAA,CACL,CAAC;EAED,IAAMe,kBAAkB,GAAGH,gBAAgB,CAACJ,GAAG,CAAC,UAAAC,IAAI;IAAA,OAAAC,eAAA,KACjDT,2BAA2B,EAAGQ,IAAI,CAACH,KAAK;EAAA,CACzC,CAAC;EAEH,IAAMU,gBAAgB,MAAAC,MAAA,CAAAC,kBAAA,CAAOH,kBAAkB,GAAAG,kBAAA,CAAKX,mBAAmB,EAAC;EAExE,OAAAY,aAAA,CAAAA,aAAA,KACKxB,IAAI,CAAC,CAACK,iBAAiB,CAAC,EAAEF,cAAc,CAAC,OAAAY,eAAA,KAC3CR,2BAA2B,EAAGc,gBAAgB;AAEnD,CAAC","ignoreList":[]}
1
+ {"version":3,"file":"buildNestedAttributesPayload.js","names":["findBy","isNotPresent","buildNestedAttributesPayload","_ref","modifiedValues","initialValues","nestedKeyToModify","nestedAttributeKeyInPayload","nestedAttributesForArrayKey","itemsToDestroy","filter","initialItem","value","itemsToDestroyAttrs","map","item","_defineProperty","id","itemsToBeCreated","modifiedItem","toLowerCase","itemsToCreateAttrs","nestedAttributes","concat","_toConsumableArray","_objectSpread","_omit"],"sources":["../../src/utils/buildNestedAttributesPayload.js"],"sourcesContent":["import { findBy, isNotPresent } from \"neetocist\";\nimport { omit } from \"ramda\";\n\nexport const buildNestedAttributesPayload = ({\n modifiedValues,\n initialValues,\n nestedKeyToModify,\n nestedAttributeKeyInPayload,\n nestedAttributesForArrayKey,\n}) => {\n const itemsToDestroy = initialValues[nestedKeyToModify].filter(initialItem =>\n isNotPresent(\n findBy(\n { value: initialItem[nestedAttributeKeyInPayload] },\n modifiedValues[nestedKeyToModify]\n )\n )\n );\n\n const itemsToDestroyAttrs = itemsToDestroy.map(item => ({\n id: item.id,\n [nestedAttributeKeyInPayload]: item[nestedAttributeKeyInPayload],\n _destroy: true,\n }));\n\n const itemsToBeCreated = modifiedValues[nestedKeyToModify].filter(\n modifiedItem =>\n isNotPresent(\n findBy(\n { [nestedAttributeKeyInPayload]: modifiedItem.value.toLowerCase() },\n initialValues[nestedKeyToModify]\n )\n )\n );\n\n const itemsToCreateAttrs = itemsToBeCreated.map(item => ({\n [nestedAttributeKeyInPayload]: item.value,\n }));\n\n const nestedAttributes = [...itemsToCreateAttrs, ...itemsToDestroyAttrs];\n\n return {\n ...omit([nestedKeyToModify], modifiedValues),\n [nestedAttributesForArrayKey]: nestedAttributes,\n };\n};\n"],"mappings":";;;;;AAAA,SAASA,MAAM,EAAEC,YAAY;AAG7B,OAAO,IAAMC,4BAA4B,GAAG,SAA/BA,4BAA4BA,CAAAC,IAAA,EAMnC;EAAA,IALJC,cAAc,GAAAD,IAAA,CAAdC,cAAc;IACdC,aAAa,GAAAF,IAAA,CAAbE,aAAa;IACbC,iBAAiB,GAAAH,IAAA,CAAjBG,iBAAiB;IACjBC,2BAA2B,GAAAJ,IAAA,CAA3BI,2BAA2B;IAC3BC,2BAA2B,GAAAL,IAAA,CAA3BK,2BAA2B;EAE3B,IAAMC,cAAc,GAAGJ,aAAa,CAACC,iBAAiB,CAAC,CAACI,MAAM,CAAC,UAAAC,WAAW;IAAA,OACxEV,YAAY,CACVD,MAAM,CACJ;MAAEY,KAAK,EAAED,WAAW,CAACJ,2BAA2B;IAAE,CAAC,EACnDH,cAAc,CAACE,iBAAiB,CAClC,CACF,CAAC;EAAA,CACH,CAAC;EAED,IAAMO,mBAAmB,GAAGJ,cAAc,CAACK,GAAG,CAAC,UAAAC,IAAI;IAAA,OAAAC,eAAA,CAAAA,eAAA;MACjDC,EAAE,EAAEF,IAAI,CAACE;IAAE,GACVV,2BAA2B,EAAGQ,IAAI,CAACR,2BAA2B,CAAC,eACtD,IAAI;EAAA,CACd,CAAC;EAEH,IAAMW,gBAAgB,GAAGd,cAAc,CAACE,iBAAiB,CAAC,CAACI,MAAM,CAC/D,UAAAS,YAAY;IAAA,OACVlB,YAAY,CACVD,MAAM,CAAAgB,eAAA,KACDT,2BAA2B,EAAGY,YAAY,CAACP,KAAK,CAACQ,WAAW,CAAC,CAAC,GACjEf,aAAa,CAACC,iBAAiB,CACjC,CACF,CAAC;EAAA,CACL,CAAC;EAED,IAAMe,kBAAkB,GAAGH,gBAAgB,CAACJ,GAAG,CAAC,UAAAC,IAAI;IAAA,OAAAC,eAAA,KACjDT,2BAA2B,EAAGQ,IAAI,CAACH,KAAK;EAAA,CACzC,CAAC;EAEH,IAAMU,gBAAgB,MAAAC,MAAA,CAAAC,kBAAA,CAAOH,kBAAkB,GAAAG,kBAAA,CAAKX,mBAAmB,EAAC;EAExE,OAAAY,aAAA,CAAAA,aAAA,KACKC,KAAA,CAAK,CAACpB,iBAAiB,CAAC,EAAEF,cAAc,CAAC,OAAAY,eAAA,KAC3CR,2BAA2B,EAAGc,gBAAgB;AAEnD,CAAC","ignoreList":[]}
package/utils/general.js CHANGED
@@ -1,7 +1,13 @@
1
1
  import _objectWithoutProperties from "@babel/runtime/helpers/objectWithoutProperties";
2
+ import _isEmpty from "ramda/es/isEmpty";
3
+ import _omit from "ramda/es/omit";
4
+ import _pipe from "ramda/es/pipe";
5
+ import _identity from "ramda/es/identity";
2
6
  import _slicedToArray from "@babel/runtime/helpers/slicedToArray";
7
+ import _toPairs from "ramda/es/toPairs";
3
8
  import _asyncToGenerator from "@babel/runtime/helpers/asyncToGenerator";
4
9
  import _defineProperty from "@babel/runtime/helpers/defineProperty";
10
+ import _curry from "ramda/es/curry";
5
11
  var _this = this;
6
12
  var _excluded = ["toCamelCase"];
7
13
  import _regeneratorRuntime from "@babel/runtime/regenerator";
@@ -11,13 +17,12 @@ import i18next from "i18next";
11
17
  import { camelToSnakeCase, getRandomInt, transformObjectDeep } from "@bigbinary/neeto-cist";
12
18
  import Toastr from "@bigbinary/neetoui/Toastr";
13
19
  import { parse, stringify } from "qs";
14
- import { identity, curry, isEmpty, omit, pipe, toPairs } from "ramda";
15
20
  var toCamelCasedString = function toCamelCasedString(string) {
16
21
  return string.replace(/[_-]+(\w)/g, function (_, nextChar) {
17
22
  return nextChar.toUpperCase();
18
23
  });
19
24
  };
20
- export var withEventTargetValue = /*#__PURE__*/curry(function (func, event) {
25
+ export var withEventTargetValue = /*#__PURE__*/_curry(function (func, event) {
21
26
  return func(event.target.value);
22
27
  });
23
28
  export var getSubdomain = function getSubdomain() {
@@ -101,7 +106,7 @@ export var buildUrl = function buildUrl(route, params) {
101
106
  var placeHolders = [];
102
107
  var _options$toSnakeCase = options.toSnakeCase,
103
108
  toSnakeCase = _options$toSnakeCase === void 0 ? true : _options$toSnakeCase;
104
- toPairs(params).forEach(function (_ref3) {
109
+ _toPairs(params).forEach(function (_ref3) {
105
110
  var _ref4 = _slicedToArray(_ref3, 2),
106
111
  key = _ref4[0],
107
112
  value = _ref4[1];
@@ -109,7 +114,7 @@ export var buildUrl = function buildUrl(route, params) {
109
114
  placeHolders.push(key);
110
115
  route = route.replace(":".concat(key), encodeURIComponent(value));
111
116
  });
112
- var keyTransformer = toSnakeCase ? camelToSnakeCase : identity;
117
+ var keyTransformer = toSnakeCase ? camelToSnakeCase : _identity;
113
118
  var transformObjectKeys = function transformObjectKeys(params) {
114
119
  return transformObjectDeep(params, function (key, value) {
115
120
  return [keyTransformer(key), value];
@@ -117,8 +122,8 @@ export var buildUrl = function buildUrl(route, params) {
117
122
  return typeof (object === null || object === void 0 ? void 0 : object.toJSON) === "function" ? object.toJSON() : object;
118
123
  });
119
124
  };
120
- var queryParams = pipe(omit(placeHolders), transformObjectKeys, stringify)(params);
121
- return isEmpty(queryParams) ? route : "".concat(route, "?").concat(queryParams);
125
+ var queryParams = _pipe(_omit(placeHolders), transformObjectKeys, stringify)(params);
126
+ return _isEmpty(queryParams) ? route : "".concat(route, "?").concat(queryParams);
122
127
  };
123
128
  export var toLocale = function toLocale(number) {
124
129
  var _window$globalProps, _window$globalProps$u;
@@ -134,7 +139,7 @@ export var parseQueryParams = function parseQueryParams(search) {
134
139
  ignoreQueryPrefix: true
135
140
  }, qsOptions));
136
141
  if (toCamelCase) {
137
- var pairedParams = toPairs(params);
142
+ var pairedParams = _toPairs(params);
138
143
  params = {};
139
144
  pairedParams.forEach(function (_ref5) {
140
145
  var _ref6 = _slicedToArray(_ref5, 2),
@@ -1 +1 @@
1
- {"version":3,"file":"general.js","names":["i18next","camelToSnakeCase","getRandomInt","transformObjectDeep","Toastr","parse","stringify","identity","curry","isEmpty","omit","pipe","toPairs","toCamelCasedString","string","replace","_","nextChar","toUpperCase","withEventTargetValue","func","event","target","value","getSubdomain","host","window","location","parts","split","length","simulateApiCall","result","error","errorProbability","arguments","undefined","delay","Promise","resolve","reject","setTimeout","defaultErrorObj","success","notice","t","Math","random","_objectSpread","copyToClipboard","_ref","_asyncToGenerator","_regeneratorRuntime","mark","_callee","text","_ref2","_ref2$showToastr","showToastr","_ref2$message","message","textArea","isCopied","_args","wrap","_callee$","_context","prev","next","navigator","clipboard","writeText","t0","document","createElement","style","top","left","position","body","appendChild","focus","select","execCommand","removeChild","Error","t1","stop","_x","apply","buildUrl","route","params","options","placeHolders","_options$toSnakeCase","toSnakeCase","forEach","_ref3","_ref4","_slicedToArray","key","includes","concat","push","encodeURIComponent","keyTransformer","transformObjectKeys","object","toJSON","queryParams","toLocale","number","_window$globalProps","_window$globalProps$u","Number","toLocaleString","globalProps","user","locale","language","languages","parseQueryParams","search","_options$toCamelCase","toCamelCase","qsOptions","_objectWithoutProperties","_excluded","ignoreQueryPrefix","pairedParams","_ref5","_ref6","camelCasedKey","getQueryParams","joinHyphenCase","_len","args","Array","_key","join","toLowerCase","hyphenize","fallbackString","String","debounce","timer","_len2","_key2","clearTimeout","_this","getFromLocalStorage","JSON","localStorage","getItem","_unused2","setToLocalStorage","setItem","removeFromLocalStorage","removeItem","showThumbsUpToastr","icon","className"],"sources":["../../src/utils/general.js"],"sourcesContent":["import i18next from \"i18next\";\nimport { camelToSnakeCase, getRandomInt, transformObjectDeep } from \"neetocist\";\nimport { Toastr } from \"neetoui\";\nimport { parse, stringify } from \"qs\";\nimport { identity, curry, isEmpty, omit, pipe, toPairs } from \"ramda\";\n\nconst toCamelCasedString = string =>\n string.replace(/[_-]+(\\w)/g, (_, nextChar) => nextChar.toUpperCase());\n\nexport const withEventTargetValue = /*#__PURE__*/ curry((func, event) =>\n func(event.target.value)\n);\n\nexport const getSubdomain = () => {\n const host = window.location.host;\n const parts = host.split(\".\");\n\n return parts.length >= 3 ? parts[0] : \"\";\n};\n\nexport const simulateApiCall = (\n result,\n error,\n errorProbability = 0.1,\n delay = getRandomInt(350, 1000)\n) =>\n new Promise((resolve, reject) =>\n setTimeout(() => {\n const defaultErrorObj = {\n success: false,\n notice: i18next.t(\"neetoCommons.notice.errorOccurred\"),\n };\n\n Math.random() < errorProbability\n ? reject({ ...defaultErrorObj, ...error })\n : resolve(result);\n }, delay)\n );\n\nexport const copyToClipboard = async (\n text,\n {\n showToastr = true,\n message = i18next.t(\"neetoCommons.toastr.success.copiedToClipboard\"),\n } = {}\n) => {\n try {\n await navigator.clipboard.writeText(text);\n showToastr && Toastr.success(message);\n } catch {\n try {\n const textArea = document.createElement(\"textarea\");\n textArea.value = text;\n\n textArea.style.top = \"0\";\n textArea.style.left = \"0\";\n textArea.style.position = \"fixed\";\n\n document.body.appendChild(textArea);\n textArea.focus();\n textArea.select();\n\n const isCopied = document.execCommand(\"copy\");\n\n document.body.removeChild(textArea);\n\n if (!isCopied) {\n throw new Error(i18next.t(\"neetoCommons.copyToClipboard.failed\"));\n }\n\n showToastr && Toastr.success(message);\n } catch (error) {\n Toastr.error(error);\n }\n }\n};\n\nexport const buildUrl = (route, params, options = {}) => {\n const placeHolders = [];\n const { toSnakeCase = true } = options;\n toPairs(params).forEach(([key, value]) => {\n if (!route.includes(`:${key}`)) return;\n placeHolders.push(key);\n route = route.replace(`:${key}`, encodeURIComponent(value));\n });\n\n const keyTransformer = toSnakeCase ? camelToSnakeCase : identity;\n const transformObjectKeys = params =>\n transformObjectDeep(\n params,\n (key, value) => [keyTransformer(key), value],\n object =>\n typeof object?.toJSON === \"function\" ? object.toJSON() : object\n );\n\n const queryParams = pipe(\n omit(placeHolders),\n transformObjectKeys,\n stringify\n )(params);\n\n return isEmpty(queryParams) ? route : `${route}?${queryParams}`;\n};\n\nexport const toLocale = (number, options = undefined) =>\n Number(number).toLocaleString(\n window.globalProps?.user?.locale ||\n navigator.language ||\n navigator.languages[0],\n options\n );\n\nexport const parseQueryParams = (search, options = {}) => {\n const { toCamelCase = true, ...qsOptions } = options;\n let params = parse(search, {\n ignoreQueryPrefix: true,\n ...qsOptions,\n });\n\n if (toCamelCase) {\n const pairedParams = toPairs(params);\n params = {};\n pairedParams.forEach(([key, value]) => {\n const camelCasedKey = toCamelCasedString(key);\n params[camelCasedKey] = value;\n });\n }\n\n return params;\n};\n\nexport const getQueryParams = options =>\n parseQueryParams(location.search, options);\n\nexport const joinHyphenCase = (...args) =>\n args.join(\" \").replace(/\\s+/g, \"-\").toLowerCase();\n\nexport const hyphenize = (value, fallbackString = \"\") => {\n if (typeof value === \"number\") return String(value);\n\n if (value && typeof value === \"string\" && value.replace) {\n return value\n .replace(/[\\s_]/g, \"-\")\n .replace(/([a-z])([A-Z])/g, \"$1-$2\")\n .replace(/-+/g, \"-\")\n .toLowerCase();\n }\n\n return fallbackString;\n};\n\nexport const debounce = (func, delay = 350) => {\n let timer;\n\n return (...args) => {\n clearTimeout(timer);\n timer = setTimeout(() => func.apply(this, args), delay);\n };\n};\n\nexport const getFromLocalStorage = key => {\n try {\n // eslint-disable-next-line @bigbinary/neeto/no-local-storage\n return JSON.parse(localStorage.getItem(key));\n } catch {\n return null;\n }\n};\n\nexport const setToLocalStorage = (key, value) =>\n // eslint-disable-next-line @bigbinary/neeto/no-local-storage\n localStorage.setItem(key, JSON.stringify(value));\n\n// eslint-disable-next-line @bigbinary/neeto/no-local-storage\nexport const removeFromLocalStorage = key => localStorage.removeItem(key);\n\nexport const showThumbsUpToastr = () =>\n Toastr.success(\"\", { icon: \"👍\", className: \"w-20\" });\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"general.js","names":["i18next","camelToSnakeCase","getRandomInt","transformObjectDeep","Toastr","parse","stringify","toCamelCasedString","string","replace","_","nextChar","toUpperCase","withEventTargetValue","_curry","func","event","target","value","getSubdomain","host","window","location","parts","split","length","simulateApiCall","result","error","errorProbability","arguments","undefined","delay","Promise","resolve","reject","setTimeout","defaultErrorObj","success","notice","t","Math","random","_objectSpread","copyToClipboard","_ref","_asyncToGenerator","_regeneratorRuntime","mark","_callee","text","_ref2","_ref2$showToastr","showToastr","_ref2$message","message","textArea","isCopied","_args","wrap","_callee$","_context","prev","next","navigator","clipboard","writeText","t0","document","createElement","style","top","left","position","body","appendChild","focus","select","execCommand","removeChild","Error","t1","stop","_x","apply","buildUrl","route","params","options","placeHolders","_options$toSnakeCase","toSnakeCase","_toPairs","forEach","_ref3","_ref4","_slicedToArray","key","includes","concat","push","encodeURIComponent","keyTransformer","_identity","transformObjectKeys","object","toJSON","queryParams","_pipe","_omit","_isEmpty","toLocale","number","_window$globalProps","_window$globalProps$u","Number","toLocaleString","globalProps","user","locale","language","languages","parseQueryParams","search","_options$toCamelCase","toCamelCase","qsOptions","_objectWithoutProperties","_excluded","ignoreQueryPrefix","pairedParams","_ref5","_ref6","camelCasedKey","getQueryParams","joinHyphenCase","_len","args","Array","_key","join","toLowerCase","hyphenize","fallbackString","String","debounce","timer","_len2","_key2","clearTimeout","_this","getFromLocalStorage","JSON","localStorage","getItem","_unused2","setToLocalStorage","setItem","removeFromLocalStorage","removeItem","showThumbsUpToastr","icon","className"],"sources":["../../src/utils/general.js"],"sourcesContent":["import i18next from \"i18next\";\nimport { camelToSnakeCase, getRandomInt, transformObjectDeep } from \"neetocist\";\nimport { Toastr } from \"neetoui\";\nimport { parse, stringify } from \"qs\";\nimport { identity, curry, isEmpty, omit, pipe, toPairs } from \"ramda\";\n\nconst toCamelCasedString = string =>\n string.replace(/[_-]+(\\w)/g, (_, nextChar) => nextChar.toUpperCase());\n\nexport const withEventTargetValue = /*#__PURE__*/ curry((func, event) =>\n func(event.target.value)\n);\n\nexport const getSubdomain = () => {\n const host = window.location.host;\n const parts = host.split(\".\");\n\n return parts.length >= 3 ? parts[0] : \"\";\n};\n\nexport const simulateApiCall = (\n result,\n error,\n errorProbability = 0.1,\n delay = getRandomInt(350, 1000)\n) =>\n new Promise((resolve, reject) =>\n setTimeout(() => {\n const defaultErrorObj = {\n success: false,\n notice: i18next.t(\"neetoCommons.notice.errorOccurred\"),\n };\n\n Math.random() < errorProbability\n ? reject({ ...defaultErrorObj, ...error })\n : resolve(result);\n }, delay)\n );\n\nexport const copyToClipboard = async (\n text,\n {\n showToastr = true,\n message = i18next.t(\"neetoCommons.toastr.success.copiedToClipboard\"),\n } = {}\n) => {\n try {\n await navigator.clipboard.writeText(text);\n showToastr && Toastr.success(message);\n } catch {\n try {\n const textArea = document.createElement(\"textarea\");\n textArea.value = text;\n\n textArea.style.top = \"0\";\n textArea.style.left = \"0\";\n textArea.style.position = \"fixed\";\n\n document.body.appendChild(textArea);\n textArea.focus();\n textArea.select();\n\n const isCopied = document.execCommand(\"copy\");\n\n document.body.removeChild(textArea);\n\n if (!isCopied) {\n throw new Error(i18next.t(\"neetoCommons.copyToClipboard.failed\"));\n }\n\n showToastr && Toastr.success(message);\n } catch (error) {\n Toastr.error(error);\n }\n }\n};\n\nexport const buildUrl = (route, params, options = {}) => {\n const placeHolders = [];\n const { toSnakeCase = true } = options;\n toPairs(params).forEach(([key, value]) => {\n if (!route.includes(`:${key}`)) return;\n placeHolders.push(key);\n route = route.replace(`:${key}`, encodeURIComponent(value));\n });\n\n const keyTransformer = toSnakeCase ? camelToSnakeCase : identity;\n const transformObjectKeys = params =>\n transformObjectDeep(\n params,\n (key, value) => [keyTransformer(key), value],\n object =>\n typeof object?.toJSON === \"function\" ? object.toJSON() : object\n );\n\n const queryParams = pipe(\n omit(placeHolders),\n transformObjectKeys,\n stringify\n )(params);\n\n return isEmpty(queryParams) ? route : `${route}?${queryParams}`;\n};\n\nexport const toLocale = (number, options = undefined) =>\n Number(number).toLocaleString(\n window.globalProps?.user?.locale ||\n navigator.language ||\n navigator.languages[0],\n options\n );\n\nexport const parseQueryParams = (search, options = {}) => {\n const { toCamelCase = true, ...qsOptions } = options;\n let params = parse(search, {\n ignoreQueryPrefix: true,\n ...qsOptions,\n });\n\n if (toCamelCase) {\n const pairedParams = toPairs(params);\n params = {};\n pairedParams.forEach(([key, value]) => {\n const camelCasedKey = toCamelCasedString(key);\n params[camelCasedKey] = value;\n });\n }\n\n return params;\n};\n\nexport const getQueryParams = options =>\n parseQueryParams(location.search, options);\n\nexport const joinHyphenCase = (...args) =>\n args.join(\" \").replace(/\\s+/g, \"-\").toLowerCase();\n\nexport const hyphenize = (value, fallbackString = \"\") => {\n if (typeof value === \"number\") return String(value);\n\n if (value && typeof value === \"string\" && value.replace) {\n return value\n .replace(/[\\s_]/g, \"-\")\n .replace(/([a-z])([A-Z])/g, \"$1-$2\")\n .replace(/-+/g, \"-\")\n .toLowerCase();\n }\n\n return fallbackString;\n};\n\nexport const debounce = (func, delay = 350) => {\n let timer;\n\n return (...args) => {\n clearTimeout(timer);\n timer = setTimeout(() => func.apply(this, args), delay);\n };\n};\n\nexport const getFromLocalStorage = key => {\n try {\n // eslint-disable-next-line @bigbinary/neeto/no-local-storage\n return JSON.parse(localStorage.getItem(key));\n } catch {\n return null;\n }\n};\n\nexport const setToLocalStorage = (key, value) =>\n // eslint-disable-next-line @bigbinary/neeto/no-local-storage\n localStorage.setItem(key, JSON.stringify(value));\n\n// eslint-disable-next-line @bigbinary/neeto/no-local-storage\nexport const removeFromLocalStorage = key => localStorage.removeItem(key);\n\nexport const showThumbsUpToastr = () =>\n Toastr.success(\"\", { icon: \"👍\", className: \"w-20\" });\n"],"mappings":"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","ignoreList":[]}