@bigbinary/neeto-commons-frontend 3.1.21 → 3.2.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.
- package/cjs/utils/general.js +22 -10
- package/cjs/utils/general.js.map +1 -1
- package/package.json +1 -1
- package/react-utils.d.ts +2 -4
- package/utils/general.js +24 -12
- package/utils/general.js.map +1 -1
- package/utils.d.ts +10 -5
package/cjs/utils/general.js
CHANGED
|
@@ -19,6 +19,11 @@ var _this = void 0;
|
|
|
19
19
|
var _excluded = ["toCamelCase"];
|
|
20
20
|
function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
|
|
21
21
|
function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { (0, _defineProperty2["default"])(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
|
|
22
|
+
var toCamelCasedString = function toCamelCasedString(string) {
|
|
23
|
+
return string.replace(/[_-]+(\w)/g, function (_, nextChar) {
|
|
24
|
+
return nextChar.toUpperCase();
|
|
25
|
+
});
|
|
26
|
+
};
|
|
22
27
|
var withEventTargetValue = /*#__PURE__*/(0, _ramda.curry)(function (func, event) {
|
|
23
28
|
return func(event.target.value);
|
|
24
29
|
});
|
|
@@ -97,7 +102,10 @@ var copyToClipboard = /*#__PURE__*/function () {
|
|
|
97
102
|
}();
|
|
98
103
|
exports.copyToClipboard = copyToClipboard;
|
|
99
104
|
var buildUrl = function buildUrl(route, params) {
|
|
105
|
+
var options = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};
|
|
100
106
|
var placeHolders = [];
|
|
107
|
+
var _options$toSnakeCase = options.toSnakeCase,
|
|
108
|
+
toSnakeCase = _options$toSnakeCase === void 0 ? true : _options$toSnakeCase;
|
|
101
109
|
(0, _ramda.toPairs)(params).forEach(function (_ref3) {
|
|
102
110
|
var _ref4 = (0, _slicedToArray2["default"])(_ref3, 2),
|
|
103
111
|
key = _ref4[0],
|
|
@@ -106,7 +114,15 @@ var buildUrl = function buildUrl(route, params) {
|
|
|
106
114
|
placeHolders.push(key);
|
|
107
115
|
route = route.replace(":".concat(key), encodeURIComponent(value));
|
|
108
116
|
});
|
|
109
|
-
var
|
|
117
|
+
var keyTransformer = toSnakeCase ? _neetoCist.camelToSnakeCase : _ramda.identity;
|
|
118
|
+
var transformObjectKeys = function transformObjectKeys(params) {
|
|
119
|
+
return (0, _neetoCist.transformObjectDeep)(params, function (key, value) {
|
|
120
|
+
return [keyTransformer(key), value];
|
|
121
|
+
}, function (object) {
|
|
122
|
+
return typeof (object === null || object === void 0 ? void 0 : object.toJSON) === "function" ? object.toJSON() : object;
|
|
123
|
+
});
|
|
124
|
+
};
|
|
125
|
+
var queryParams = (0, _ramda.pipe)((0, _ramda.omit)(placeHolders), transformObjectKeys, _qs.stringify)(params);
|
|
110
126
|
return (0, _ramda.isEmpty)(queryParams) ? route : "".concat(route, "?").concat(queryParams);
|
|
111
127
|
};
|
|
112
128
|
exports.buildUrl = buildUrl;
|
|
@@ -125,18 +141,14 @@ var parseQueryParams = function parseQueryParams(search) {
|
|
|
125
141
|
ignoreQueryPrefix: true
|
|
126
142
|
}, qsOptions));
|
|
127
143
|
if (toCamelCase) {
|
|
128
|
-
(0, _ramda.toPairs)(params)
|
|
144
|
+
var pairedParams = (0, _ramda.toPairs)(params);
|
|
145
|
+
params = {};
|
|
146
|
+
pairedParams.forEach(function (_ref5) {
|
|
129
147
|
var _ref6 = (0, _slicedToArray2["default"])(_ref5, 2),
|
|
130
148
|
key = _ref6[0],
|
|
131
149
|
value = _ref6[1];
|
|
132
|
-
var camelCasedKey = (
|
|
133
|
-
|
|
134
|
-
Object.defineProperty(params, camelCasedKey, {
|
|
135
|
-
get: function get() {
|
|
136
|
-
return value;
|
|
137
|
-
}
|
|
138
|
-
});
|
|
139
|
-
}
|
|
150
|
+
var camelCasedKey = toCamelCasedString(key);
|
|
151
|
+
params[camelCasedKey] = value;
|
|
140
152
|
});
|
|
141
153
|
}
|
|
142
154
|
return params;
|
package/cjs/utils/general.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"general.js","names":["_i18next","_interopRequireDefault","require","_neetoCist","_neetoui","_qs","_ramda","_this","_excluded","ownKeys","object","enumerableOnly","keys","Object","getOwnPropertySymbols","symbols","filter","sym","getOwnPropertyDescriptor","enumerable","push","apply","_objectSpread","target","i","arguments","length","source","forEach","key","_defineProperty2","getOwnPropertyDescriptors","defineProperties","defineProperty","withEventTargetValue","curry","func","event","value","exports","getSubdomain","host","window","location","parts","split","simulateApiCall","result","error","errorProbability","undefined","delay","getRandomInt","Promise","resolve","reject","setTimeout","defaultErrorObj","success","notice","i18next","t","Math","random","copyToClipboard","_ref","_asyncToGenerator2","_regenerator","mark","_callee","text","_ref2","_ref2$showToastr","showToastr","_ref2$message","message","textArea","_args","wrap","_callee$","_context","prev","next","navigator","clipboard","isSecureContext","writeText","document","createElement","style","top","left","position","body","appendChild","focus","select","execCommand","removeChild","Toastr","t0","stop","_x","buildUrl","route","params","placeHolders","toPairs","_ref3","_ref4","_slicedToArray2","includes","concat","replace","encodeURIComponent","queryParams","pipe","omit","preprocessForSerialization","stringify","isEmpty","toLocale","number","_window$globalProps","_window$globalProps$u","options","Number","toLocaleString","globalProps","user","locale","language","languages","parseQueryParams","search","_options$toCamelCase","toCamelCase","qsOptions","_objectWithoutProperties2","parse","ignoreQueryPrefix","_ref5","_ref6","camelCasedKey","snakeToCamelCase","get","getQueryParams","joinHyphenCase","_len","args","Array","_key","join","toLowerCase","hyphenize","fallbackString","String","debounce","timer","_len2","_key2","clearTimeout","getFromLocalStorage","JSON","localStorage","getItem","_unused","setToLocalStorage","setItem","removeFromLocalStorage","removeItem","showThumbsUpToastr","icon","className"],"sources":["../../../src/utils/general.js"],"sourcesContent":["import i18next from \"i18next\";\nimport {\n getRandomInt,\n preprocessForSerialization,\n snakeToCamelCase,\n} from \"neetocist\";\nimport { Toastr } from \"neetoui\";\nimport { parse, stringify } from \"qs\";\nimport { curry, isEmpty, omit, pipe, toPairs } from \"ramda\";\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 if (navigator.clipboard && window.isSecureContext) {\n await navigator.clipboard.writeText(text);\n } else {\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 document.execCommand(\"copy\");\n document.body.removeChild(textArea);\n }\n\n showToastr && Toastr.success(message);\n } catch (error) {\n Toastr.error(error);\n }\n};\n\nexport const buildUrl = (route, params) => {\n const placeHolders = [];\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 queryParams = pipe(\n omit(placeHolders),\n preprocessForSerialization,\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 const params = parse(search, {\n ignoreQueryPrefix: true,\n ...qsOptions,\n });\n\n if (toCamelCase) {\n toPairs(params).forEach(([key, value]) => {\n const camelCasedKey = snakeToCamelCase(key);\n if (camelCasedKey !== key) {\n Object.defineProperty(params, camelCasedKey, {\n get: () => value,\n });\n }\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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"}
|
|
1
|
+
{"version":3,"file":"general.js","names":["_i18next","_interopRequireDefault","require","_neetoCist","_neetoui","_qs","_ramda","_this","_excluded","ownKeys","object","enumerableOnly","keys","Object","getOwnPropertySymbols","symbols","filter","sym","getOwnPropertyDescriptor","enumerable","push","apply","_objectSpread","target","i","arguments","length","source","forEach","key","_defineProperty2","getOwnPropertyDescriptors","defineProperties","defineProperty","toCamelCasedString","string","replace","_","nextChar","toUpperCase","withEventTargetValue","curry","func","event","value","exports","getSubdomain","host","window","location","parts","split","simulateApiCall","result","error","errorProbability","undefined","delay","getRandomInt","Promise","resolve","reject","setTimeout","defaultErrorObj","success","notice","i18next","t","Math","random","copyToClipboard","_ref","_asyncToGenerator2","_regenerator","mark","_callee","text","_ref2","_ref2$showToastr","showToastr","_ref2$message","message","textArea","_args","wrap","_callee$","_context","prev","next","navigator","clipboard","isSecureContext","writeText","document","createElement","style","top","left","position","body","appendChild","focus","select","execCommand","removeChild","Toastr","t0","stop","_x","buildUrl","route","params","options","placeHolders","_options$toSnakeCase","toSnakeCase","toPairs","_ref3","_ref4","_slicedToArray2","includes","concat","encodeURIComponent","keyTransformer","camelToSnakeCase","identity","transformObjectKeys","transformObjectDeep","toJSON","queryParams","pipe","omit","stringify","isEmpty","toLocale","number","_window$globalProps","_window$globalProps$u","Number","toLocaleString","globalProps","user","locale","language","languages","parseQueryParams","search","_options$toCamelCase","toCamelCase","qsOptions","_objectWithoutProperties2","parse","ignoreQueryPrefix","pairedParams","_ref5","_ref6","camelCasedKey","getQueryParams","joinHyphenCase","_len","args","Array","_key","join","toLowerCase","hyphenize","fallbackString","String","debounce","timer","_len2","_key2","clearTimeout","getFromLocalStorage","JSON","localStorage","getItem","_unused","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 if (navigator.clipboard && window.isSecureContext) {\n await navigator.clipboard.writeText(text);\n } else {\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 document.execCommand(\"copy\");\n document.body.removeChild(textArea);\n }\n\n showToastr && Toastr.success(message);\n } catch (error) {\n Toastr.error(error);\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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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@bigbinary/neeto-commons-frontend",
|
|
3
|
-
"version": "3.
|
|
3
|
+
"version": "3.2.0",
|
|
4
4
|
"description": "A package encapsulating common code across neeto projects including initializers, utility functions, common components and hooks and so on.",
|
|
5
5
|
"repository": "git@github.com:bigbinary/neeto-commons-frontend.git",
|
|
6
6
|
"author": "Amaljith K <amaljith.k@bigbinary.com>",
|
package/react-utils.d.ts
CHANGED
|
@@ -1482,13 +1482,11 @@ export function useMutationWithInvalidation<TData = unknown, TError = unknown, T
|
|
|
1482
1482
|
*
|
|
1483
1483
|
* hook.
|
|
1484
1484
|
*
|
|
1485
|
-
* This hook will return an object containing all the query parameters in
|
|
1485
|
+
* This hook will return an object containing all the query parameters in camel
|
|
1486
1486
|
*
|
|
1487
1487
|
* case. It will return an empty object if no query parameters are present.
|
|
1488
1488
|
*
|
|
1489
|
-
* You can
|
|
1490
|
-
*
|
|
1491
|
-
* return object.
|
|
1489
|
+
* You can set toCamelCase to false if you don't want to apply any transformation to the keys.
|
|
1492
1490
|
*
|
|
1493
1491
|
* More details on working:
|
|
1494
1492
|
*
|
package/utils/general.js
CHANGED
|
@@ -8,10 +8,15 @@ import _regeneratorRuntime from "@babel/runtime/regenerator";
|
|
|
8
8
|
function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
|
|
9
9
|
function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
|
|
10
10
|
import i18next from "i18next";
|
|
11
|
-
import {
|
|
11
|
+
import { camelToSnakeCase, getRandomInt, transformObjectDeep } from "@bigbinary/neeto-cist";
|
|
12
12
|
import { Toastr } from "@bigbinary/neetoui";
|
|
13
13
|
import { parse, stringify } from "qs";
|
|
14
|
-
import { curry, isEmpty, omit, pipe, toPairs } from "ramda";
|
|
14
|
+
import { identity, curry, isEmpty, omit, pipe, toPairs } from "ramda";
|
|
15
|
+
var toCamelCasedString = function toCamelCasedString(string) {
|
|
16
|
+
return string.replace(/[_-]+(\w)/g, function (_, nextChar) {
|
|
17
|
+
return nextChar.toUpperCase();
|
|
18
|
+
});
|
|
19
|
+
};
|
|
15
20
|
export var withEventTargetValue = /*#__PURE__*/curry(function (func, event) {
|
|
16
21
|
return func(event.target.value);
|
|
17
22
|
});
|
|
@@ -86,7 +91,10 @@ export var copyToClipboard = /*#__PURE__*/function () {
|
|
|
86
91
|
};
|
|
87
92
|
}();
|
|
88
93
|
export var buildUrl = function buildUrl(route, params) {
|
|
94
|
+
var options = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};
|
|
89
95
|
var placeHolders = [];
|
|
96
|
+
var _options$toSnakeCase = options.toSnakeCase,
|
|
97
|
+
toSnakeCase = _options$toSnakeCase === void 0 ? true : _options$toSnakeCase;
|
|
90
98
|
toPairs(params).forEach(function (_ref3) {
|
|
91
99
|
var _ref4 = _slicedToArray(_ref3, 2),
|
|
92
100
|
key = _ref4[0],
|
|
@@ -95,7 +103,15 @@ export var buildUrl = function buildUrl(route, params) {
|
|
|
95
103
|
placeHolders.push(key);
|
|
96
104
|
route = route.replace(":".concat(key), encodeURIComponent(value));
|
|
97
105
|
});
|
|
98
|
-
var
|
|
106
|
+
var keyTransformer = toSnakeCase ? camelToSnakeCase : identity;
|
|
107
|
+
var transformObjectKeys = function transformObjectKeys(params) {
|
|
108
|
+
return transformObjectDeep(params, function (key, value) {
|
|
109
|
+
return [keyTransformer(key), value];
|
|
110
|
+
}, function (object) {
|
|
111
|
+
return typeof (object === null || object === void 0 ? void 0 : object.toJSON) === "function" ? object.toJSON() : object;
|
|
112
|
+
});
|
|
113
|
+
};
|
|
114
|
+
var queryParams = pipe(omit(placeHolders), transformObjectKeys, stringify)(params);
|
|
99
115
|
return isEmpty(queryParams) ? route : "".concat(route, "?").concat(queryParams);
|
|
100
116
|
};
|
|
101
117
|
export var toLocale = function toLocale(number) {
|
|
@@ -112,18 +128,14 @@ export var parseQueryParams = function parseQueryParams(search) {
|
|
|
112
128
|
ignoreQueryPrefix: true
|
|
113
129
|
}, qsOptions));
|
|
114
130
|
if (toCamelCase) {
|
|
115
|
-
toPairs(params)
|
|
131
|
+
var pairedParams = toPairs(params);
|
|
132
|
+
params = {};
|
|
133
|
+
pairedParams.forEach(function (_ref5) {
|
|
116
134
|
var _ref6 = _slicedToArray(_ref5, 2),
|
|
117
135
|
key = _ref6[0],
|
|
118
136
|
value = _ref6[1];
|
|
119
|
-
var camelCasedKey =
|
|
120
|
-
|
|
121
|
-
Object.defineProperty(params, camelCasedKey, {
|
|
122
|
-
get: function get() {
|
|
123
|
-
return value;
|
|
124
|
-
}
|
|
125
|
-
});
|
|
126
|
-
}
|
|
137
|
+
var camelCasedKey = toCamelCasedString(key);
|
|
138
|
+
params[camelCasedKey] = value;
|
|
127
139
|
});
|
|
128
140
|
}
|
|
129
141
|
return params;
|
package/utils/general.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"general.js","names":["i18next","getRandomInt","preprocessForSerialization","snakeToCamelCase","Toastr","parse","stringify","curry","isEmpty","omit","pipe","toPairs","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","_args","wrap","_callee$","_context","prev","next","navigator","clipboard","isSecureContext","writeText","document","createElement","style","top","left","position","body","appendChild","focus","select","execCommand","removeChild","t0","stop","_x","apply","buildUrl","route","params","placeHolders","forEach","_ref3","_ref4","_slicedToArray","key","includes","concat","push","replace","encodeURIComponent","queryParams","toLocale","number","_window$globalProps","_window$globalProps$u","options","Number","toLocaleString","globalProps","user","locale","language","languages","parseQueryParams","search","_options$toCamelCase","toCamelCase","qsOptions","_objectWithoutProperties","_excluded","ignoreQueryPrefix","_ref5","_ref6","camelCasedKey","Object","defineProperty","get","getQueryParams","joinHyphenCase","_len","args","Array","_key","join","toLowerCase","hyphenize","fallbackString","String","debounce","timer","_len2","_key2","clearTimeout","_this","getFromLocalStorage","JSON","localStorage","getItem","_unused","setToLocalStorage","setItem","removeFromLocalStorage","removeItem","showThumbsUpToastr","icon","className"],"sources":["../../src/utils/general.js"],"sourcesContent":["import i18next from \"i18next\";\nimport {\n getRandomInt,\n preprocessForSerialization,\n snakeToCamelCase,\n} from \"neetocist\";\nimport { Toastr } from \"neetoui\";\nimport { parse, stringify } from \"qs\";\nimport { curry, isEmpty, omit, pipe, toPairs } from \"ramda\";\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 if (navigator.clipboard && window.isSecureContext) {\n await navigator.clipboard.writeText(text);\n } else {\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 document.execCommand(\"copy\");\n document.body.removeChild(textArea);\n }\n\n showToastr && Toastr.success(message);\n } catch (error) {\n Toastr.error(error);\n }\n};\n\nexport const buildUrl = (route, params) => {\n const placeHolders = [];\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 queryParams = pipe(\n omit(placeHolders),\n preprocessForSerialization,\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 const params = parse(search, {\n ignoreQueryPrefix: true,\n ...qsOptions,\n });\n\n if (toCamelCase) {\n toPairs(params).forEach(([key, value]) => {\n const camelCasedKey = snakeToCamelCase(key);\n if (camelCasedKey !== key) {\n Object.defineProperty(params, camelCasedKey, {\n get: () => value,\n });\n }\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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"}
|
|
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","_args","wrap","_callee$","_context","prev","next","navigator","clipboard","isSecureContext","writeText","document","createElement","style","top","left","position","body","appendChild","focus","select","execCommand","removeChild","t0","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","_unused","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 if (navigator.clipboard && window.isSecureContext) {\n await navigator.clipboard.writeText(text);\n } else {\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 document.execCommand(\"copy\");\n document.body.removeChild(textArea);\n }\n\n showToastr && Toastr.success(message);\n } catch (error) {\n Toastr.error(error);\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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"}
|
package/utils.d.ts
CHANGED
|
@@ -102,6 +102,9 @@ export function copyToClipboard(text: string, configs?: {
|
|
|
102
102
|
showToastr?: boolean;
|
|
103
103
|
message?: string;
|
|
104
104
|
}): void;
|
|
105
|
+
type buildUrlOptions = {
|
|
106
|
+
toSnakeCase?: boolean;
|
|
107
|
+
};
|
|
105
108
|
/**
|
|
106
109
|
*
|
|
107
110
|
* The buildUrl function builds a URL by inflating a route-like template string
|
|
@@ -112,7 +115,7 @@ export function copyToClipboard(text: string, configs?: {
|
|
|
112
115
|
*
|
|
113
116
|
* placeholders with actual values. Any additional properties in the parameters
|
|
114
117
|
*
|
|
115
|
-
* will be attached as query parameters to the URL.
|
|
118
|
+
* will be transformed to snake case and attached as query parameters to the URL.
|
|
116
119
|
*
|
|
117
120
|
* @example
|
|
118
121
|
*
|
|
@@ -125,9 +128,11 @@ export function copyToClipboard(text: string, configs?: {
|
|
|
125
128
|
* page: 1,
|
|
126
129
|
* per_page: 10,
|
|
127
130
|
* }); // output "/products/123/variants/456/attributes?page=1&per_page=10&search=abc"
|
|
131
|
+
* buildUrl("/products", { searchTerm: "abc" }); // output "/products?search_term=abc"
|
|
132
|
+
* buildUrl("/products", { searchTerm: "abc" }, { toSnakeCase: false }); // output "/products?searchTerm=abc"
|
|
128
133
|
* @endexample
|
|
129
134
|
*/
|
|
130
|
-
export function buildUrl(route: string, params: object): string;
|
|
135
|
+
export function buildUrl(route: string, params: object, options?: buildUrlOptions): string;
|
|
131
136
|
type DateTimeType = string | number | dayjs.Dayjs | Date | null | undefined;
|
|
132
137
|
export const timeFormat: {
|
|
133
138
|
fromNow: (time: DateTimeType) => string;
|
|
@@ -269,13 +274,13 @@ export type QueryParamsType = {
|
|
|
269
274
|
*
|
|
270
275
|
* API.
|
|
271
276
|
*
|
|
272
|
-
* This function will return an object containing all the query parameters in
|
|
277
|
+
* This function will return an object containing all the query parameters in camel
|
|
273
278
|
*
|
|
274
279
|
* case. It will return an empty object if no query parameters are present.
|
|
275
280
|
*
|
|
276
|
-
* You can
|
|
281
|
+
* You can set toCamelCase to false if you don't want to apply any transformation to the keys.
|
|
277
282
|
*
|
|
278
|
-
*
|
|
283
|
+
* to false.
|
|
279
284
|
*
|
|
280
285
|
* More details on working:
|
|
281
286
|
*
|