@bigbinary/neeto-commons-frontend 3.1.16 → 3.1.18-beta

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.
@@ -5,20 +5,15 @@ Object.defineProperty(exports, "__esModule", {
5
5
  value: true
6
6
  });
7
7
  exports["default"] = void 0;
8
- var _typeof2 = _interopRequireDefault(require("@babel/runtime/helpers/typeof"));
9
8
  var _axios = _interopRequireDefault(require("axios"));
10
9
  var _qs = _interopRequireDefault(require("qs"));
11
- var _ramda = require("ramda");
12
10
  /* eslint-disable @bigbinary/neeto/use-snake-case-for-api-connector-filename */
13
11
 
14
12
  var setParamsSerializer = function setParamsSerializer() {
15
13
  _axios["default"].defaults.paramsSerializer = function (params) {
16
- var modifiedParams = (0, _ramda.map)(function checkObject(value) {
17
- if (Array.isArray(value)) return (0, _ramda.map)(checkObject, value);else if (value && (0, _typeof2["default"])(value) === "object") return JSON.stringify(value);
18
- return value;
19
- }, params);
20
- return _qs["default"].stringify(modifiedParams, {
21
- arrayFormat: "brackets"
14
+ return _qs["default"].stringify(params, {
15
+ arrayFormat: "brackets",
16
+ skipNulls: true
22
17
  });
23
18
  };
24
19
  };
@@ -1 +1 @@
1
- {"version":3,"file":"paramsSerializer.js","names":["_axios","_interopRequireDefault","require","_qs","_ramda","setParamsSerializer","axios","defaults","paramsSerializer","params","modifiedParams","map","checkObject","value","Array","isArray","_typeof2","JSON","stringify","qs","arrayFormat","_default","exports"],"sources":["../../../../src/initializers/axios/paramsSerializer.js"],"sourcesContent":["/* eslint-disable @bigbinary/neeto/use-snake-case-for-api-connector-filename */\nimport axios from \"axios\";\nimport qs from \"qs\";\nimport { map } from \"ramda\";\n\nconst setParamsSerializer = () => {\n axios.defaults.paramsSerializer = function (params) {\n const modifiedParams = map(function checkObject(value) {\n if (Array.isArray(value)) return map(checkObject, value);\n else if (value && typeof value === \"object\") return JSON.stringify(value);\n\n return value;\n }, params);\n\n return qs.stringify(modifiedParams, { arrayFormat: \"brackets\" });\n };\n};\n\nexport default setParamsSerializer;\n"],"mappings":";;;;;;;;AACA,IAAAA,MAAA,GAAAC,sBAAA,CAAAC,OAAA;AACA,IAAAC,GAAA,GAAAF,sBAAA,CAAAC,OAAA;AACA,IAAAE,MAAA,GAAAF,OAAA;AAHA;;AAKA,IAAMG,mBAAmB,GAAG,SAAtBA,mBAAmBA,CAAA,EAAS;EAChCC,iBAAK,CAACC,QAAQ,CAACC,gBAAgB,GAAG,UAAUC,MAAM,EAAE;IAClD,IAAMC,cAAc,GAAG,IAAAC,UAAG,EAAC,SAASC,WAAWA,CAACC,KAAK,EAAE;MACrD,IAAIC,KAAK,CAACC,OAAO,CAACF,KAAK,CAAC,EAAE,OAAO,IAAAF,UAAG,EAACC,WAAW,EAAEC,KAAK,CAAC,CAAC,KACpD,IAAIA,KAAK,IAAI,IAAAG,QAAA,aAAOH,KAAK,MAAK,QAAQ,EAAE,OAAOI,IAAI,CAACC,SAAS,CAACL,KAAK,CAAC;MAEzE,OAAOA,KAAK;IACd,CAAC,EAAEJ,MAAM,CAAC;IAEV,OAAOU,cAAE,CAACD,SAAS,CAACR,cAAc,EAAE;MAAEU,WAAW,EAAE;IAAW,CAAC,CAAC;EAClE,CAAC;AACH,CAAC;AAAC,IAAAC,QAAA,GAEahB,mBAAmB;AAAAiB,OAAA,cAAAD,QAAA"}
1
+ {"version":3,"file":"paramsSerializer.js","names":["_axios","_interopRequireDefault","require","_qs","setParamsSerializer","axios","defaults","paramsSerializer","params","qs","stringify","arrayFormat","skipNulls","_default","exports"],"sources":["../../../../src/initializers/axios/paramsSerializer.js"],"sourcesContent":["/* eslint-disable @bigbinary/neeto/use-snake-case-for-api-connector-filename */\nimport axios from \"axios\";\nimport qs from \"qs\";\n\nconst setParamsSerializer = () => {\n axios.defaults.paramsSerializer = params =>\n qs.stringify(params, { arrayFormat: \"brackets\", skipNulls: true });\n};\n\nexport default setParamsSerializer;\n"],"mappings":";;;;;;;AACA,IAAAA,MAAA,GAAAC,sBAAA,CAAAC,OAAA;AACA,IAAAC,GAAA,GAAAF,sBAAA,CAAAC,OAAA;AAFA;;AAIA,IAAME,mBAAmB,GAAG,SAAtBA,mBAAmBA,CAAA,EAAS;EAChCC,iBAAK,CAACC,QAAQ,CAACC,gBAAgB,GAAG,UAAAC,MAAM;IAAA,OACtCC,cAAE,CAACC,SAAS,CAACF,MAAM,EAAE;MAAEG,WAAW,EAAE,UAAU;MAAEC,SAAS,EAAE;IAAK,CAAC,CAAC;EAAA;AACtE,CAAC;AAAC,IAAAC,QAAA,GAEaT,mBAAmB;AAAAU,OAAA,cAAAD,QAAA"}
@@ -95,6 +95,13 @@
95
95
  },
96
96
  "notice": {
97
97
  "errorOccurred": "Some error occurred."
98
+ },
99
+ "validators": {
100
+ "isRequired": "{{what}} is required.",
101
+ "mustNotContainCapitalLetters": "{{what}} must not contain capital letters.",
102
+ "mustNotContainSpaces": "{{what}} must not contain spaces.",
103
+ "mustNotContainSpecialCharactersExceptHyphen": "{{what}} must not contain any special characters, except '-'",
104
+ "mustNotStartOrEndWithSpecialCharacters": "{{what}} must not start or end with special characters."
98
105
  }
99
106
  }
100
107
  }
@@ -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 queryParams = (0, _ramda.pipe)((0, _ramda.omit)(placeHolders), _neetoCist.preprocessForSerialization, _qs.stringify)(params);
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).forEach(function (_ref5) {
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 = (0, _neetoCist.snakeToCamelCase)(key);
133
- if (camelCasedKey !== key) {
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;
@@ -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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"}
@@ -69,4 +69,15 @@ Object.keys(_currencyFormat).forEach(function (key) {
69
69
  }
70
70
  });
71
71
  });
72
+ var _validators = require("./validators");
73
+ Object.keys(_validators).forEach(function (key) {
74
+ if (key === "default" || key === "__esModule") return;
75
+ if (key in exports && exports[key] === _validators[key]) return;
76
+ Object.defineProperty(exports, key, {
77
+ enumerable: true,
78
+ get: function get() {
79
+ return _validators[key];
80
+ }
81
+ });
82
+ });
72
83
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["_axios","require","Object","keys","forEach","key","exports","defineProperty","enumerable","get","_general","_datetime","_permissions","_createSubscription","_currencyFormat"],"sources":["../../../src/utils/index.js"],"sourcesContent":["export * from \"./axios\";\nexport * from \"./general\";\nexport * from \"./datetime\";\nexport * from \"./permissions\";\nexport * from \"./createSubscription\";\nexport * from \"./currencyFormat\";\n"],"mappings":";;;;;AAAA,IAAAA,MAAA,GAAAC,OAAA;AAAAC,MAAA,CAAAC,IAAA,CAAAH,MAAA,EAAAI,OAAA,WAAAC,GAAA;EAAA,IAAAA,GAAA,kBAAAA,GAAA;EAAA,IAAAA,GAAA,IAAAC,OAAA,IAAAA,OAAA,CAAAD,GAAA,MAAAL,MAAA,CAAAK,GAAA;EAAAH,MAAA,CAAAK,cAAA,CAAAD,OAAA,EAAAD,GAAA;IAAAG,UAAA;IAAAC,GAAA,WAAAA,IAAA;MAAA,OAAAT,MAAA,CAAAK,GAAA;IAAA;EAAA;AAAA;AACA,IAAAK,QAAA,GAAAT,OAAA;AAAAC,MAAA,CAAAC,IAAA,CAAAO,QAAA,EAAAN,OAAA,WAAAC,GAAA;EAAA,IAAAA,GAAA,kBAAAA,GAAA;EAAA,IAAAA,GAAA,IAAAC,OAAA,IAAAA,OAAA,CAAAD,GAAA,MAAAK,QAAA,CAAAL,GAAA;EAAAH,MAAA,CAAAK,cAAA,CAAAD,OAAA,EAAAD,GAAA;IAAAG,UAAA;IAAAC,GAAA,WAAAA,IAAA;MAAA,OAAAC,QAAA,CAAAL,GAAA;IAAA;EAAA;AAAA;AACA,IAAAM,SAAA,GAAAV,OAAA;AAAAC,MAAA,CAAAC,IAAA,CAAAQ,SAAA,EAAAP,OAAA,WAAAC,GAAA;EAAA,IAAAA,GAAA,kBAAAA,GAAA;EAAA,IAAAA,GAAA,IAAAC,OAAA,IAAAA,OAAA,CAAAD,GAAA,MAAAM,SAAA,CAAAN,GAAA;EAAAH,MAAA,CAAAK,cAAA,CAAAD,OAAA,EAAAD,GAAA;IAAAG,UAAA;IAAAC,GAAA,WAAAA,IAAA;MAAA,OAAAE,SAAA,CAAAN,GAAA;IAAA;EAAA;AAAA;AACA,IAAAO,YAAA,GAAAX,OAAA;AAAAC,MAAA,CAAAC,IAAA,CAAAS,YAAA,EAAAR,OAAA,WAAAC,GAAA;EAAA,IAAAA,GAAA,kBAAAA,GAAA;EAAA,IAAAA,GAAA,IAAAC,OAAA,IAAAA,OAAA,CAAAD,GAAA,MAAAO,YAAA,CAAAP,GAAA;EAAAH,MAAA,CAAAK,cAAA,CAAAD,OAAA,EAAAD,GAAA;IAAAG,UAAA;IAAAC,GAAA,WAAAA,IAAA;MAAA,OAAAG,YAAA,CAAAP,GAAA;IAAA;EAAA;AAAA;AACA,IAAAQ,mBAAA,GAAAZ,OAAA;AAAAC,MAAA,CAAAC,IAAA,CAAAU,mBAAA,EAAAT,OAAA,WAAAC,GAAA;EAAA,IAAAA,GAAA,kBAAAA,GAAA;EAAA,IAAAA,GAAA,IAAAC,OAAA,IAAAA,OAAA,CAAAD,GAAA,MAAAQ,mBAAA,CAAAR,GAAA;EAAAH,MAAA,CAAAK,cAAA,CAAAD,OAAA,EAAAD,GAAA;IAAAG,UAAA;IAAAC,GAAA,WAAAA,IAAA;MAAA,OAAAI,mBAAA,CAAAR,GAAA;IAAA;EAAA;AAAA;AACA,IAAAS,eAAA,GAAAb,OAAA;AAAAC,MAAA,CAAAC,IAAA,CAAAW,eAAA,EAAAV,OAAA,WAAAC,GAAA;EAAA,IAAAA,GAAA,kBAAAA,GAAA;EAAA,IAAAA,GAAA,IAAAC,OAAA,IAAAA,OAAA,CAAAD,GAAA,MAAAS,eAAA,CAAAT,GAAA;EAAAH,MAAA,CAAAK,cAAA,CAAAD,OAAA,EAAAD,GAAA;IAAAG,UAAA;IAAAC,GAAA,WAAAA,IAAA;MAAA,OAAAK,eAAA,CAAAT,GAAA;IAAA;EAAA;AAAA"}
1
+ {"version":3,"file":"index.js","names":["_axios","require","Object","keys","forEach","key","exports","defineProperty","enumerable","get","_general","_datetime","_permissions","_createSubscription","_currencyFormat","_validators"],"sources":["../../../src/utils/index.js"],"sourcesContent":["export * from \"./axios\";\nexport * from \"./general\";\nexport * from \"./datetime\";\nexport * from \"./permissions\";\nexport * from \"./createSubscription\";\nexport * from \"./currencyFormat\";\nexport * from \"./validators\";\n"],"mappings":"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"}
@@ -0,0 +1,17 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ var _slug = require("./slug");
7
+ Object.keys(_slug).forEach(function (key) {
8
+ if (key === "default" || key === "__esModule") return;
9
+ if (key in exports && exports[key] === _slug[key]) return;
10
+ Object.defineProperty(exports, key, {
11
+ enumerable: true,
12
+ get: function get() {
13
+ return _slug[key];
14
+ }
15
+ });
16
+ });
17
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","names":["_slug","require","Object","keys","forEach","key","exports","defineProperty","enumerable","get"],"sources":["../../../../src/utils/validators/index.js"],"sourcesContent":["export * from \"./slug\";\n"],"mappings":";;;;;AAAA,IAAAA,KAAA,GAAAC,OAAA;AAAAC,MAAA,CAAAC,IAAA,CAAAH,KAAA,EAAAI,OAAA,WAAAC,GAAA;EAAA,IAAAA,GAAA,kBAAAA,GAAA;EAAA,IAAAA,GAAA,IAAAC,OAAA,IAAAA,OAAA,CAAAD,GAAA,MAAAL,KAAA,CAAAK,GAAA;EAAAH,MAAA,CAAAK,cAAA,CAAAD,OAAA,EAAAD,GAAA;IAAAG,UAAA;IAAAC,GAAA,WAAAA,IAAA;MAAA,OAAAT,KAAA,CAAAK,GAAA;IAAA;EAAA;AAAA"}
@@ -0,0 +1,58 @@
1
+ "use strict";
2
+
3
+ var _typeof = require("@babel/runtime/helpers/typeof");
4
+ Object.defineProperty(exports, "__esModule", {
5
+ value: true
6
+ });
7
+ exports.slugValidator = void 0;
8
+ var _regex = require("../../constants/regex");
9
+ var _i18next = require("i18next");
10
+ var yup = _interopRequireWildcard(require("yup"));
11
+ function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
12
+ function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { "default": obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj["default"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
13
+ var slugValidator = function slugValidator(label) {
14
+ return yup.string().test({
15
+ name: "slug",
16
+ test: function test(value, ctx) {
17
+ if (!value) {
18
+ return ctx.createError({
19
+ message: (0, _i18next.t)("neetoCommons.validators.isRequired", {
20
+ what: label
21
+ })
22
+ });
23
+ }
24
+ if (_regex.VALID_SLUG_REGEX.test(value)) return true;
25
+ if (/[A-Z]/.test(value)) {
26
+ return ctx.createError({
27
+ message: (0, _i18next.t)("neetoCommons.validators.mustNotContainCapitalLetters", {
28
+ what: label
29
+ })
30
+ });
31
+ }
32
+ if (value !== null && value !== void 0 && value.includes(" ")) {
33
+ return ctx.createError({
34
+ message: (0, _i18next.t)("neetoCommons.validators.mustNotContainSpaces", {
35
+ what: label
36
+ })
37
+ });
38
+ }
39
+ if (!/^[a-z0-9-]+$/.test(value)) {
40
+ return ctx.createError({
41
+ message: (0, _i18next.t)("neetoCommons.validators.mustNotContainSpecialCharactersExceptHyphen", {
42
+ what: label
43
+ })
44
+ });
45
+ }
46
+ if (/^[-]|[-]$/.test(value)) {
47
+ return ctx.createError({
48
+ message: (0, _i18next.t)("neetoCommons.validators.mustNotStartOrEndWithSpecialCharacters", {
49
+ what: label
50
+ })
51
+ });
52
+ }
53
+ return true;
54
+ }
55
+ });
56
+ };
57
+ exports.slugValidator = slugValidator;
58
+ //# sourceMappingURL=slug.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"slug.js","names":["_regex","require","_i18next","yup","_interopRequireWildcard","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","obj","__esModule","_typeof","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","slugValidator","label","string","test","name","value","ctx","createError","message","t","what","VALID_SLUG_REGEX","includes","exports"],"sources":["../../../../src/utils/validators/slug.js"],"sourcesContent":["import { VALID_SLUG_REGEX } from \"constants/regex\";\n\nimport { t } from \"i18next\";\nimport * as yup from \"yup\";\n\nexport const slugValidator = label =>\n yup.string().test({\n name: \"slug\",\n test: (value, ctx) => {\n if (!value) {\n return ctx.createError({\n message: t(\"neetoCommons.validators.isRequired\", { what: label }),\n });\n }\n\n if (VALID_SLUG_REGEX.test(value)) return true;\n\n if (/[A-Z]/.test(value)) {\n return ctx.createError({\n message: t(\"neetoCommons.validators.mustNotContainCapitalLetters\", {\n what: label,\n }),\n });\n }\n\n if (value?.includes(\" \")) {\n return ctx.createError({\n message: t(\"neetoCommons.validators.mustNotContainSpaces\", {\n what: label,\n }),\n });\n }\n\n if (!/^[a-z0-9-]+$/.test(value)) {\n return ctx.createError({\n message: t(\n \"neetoCommons.validators.mustNotContainSpecialCharactersExceptHyphen\",\n { what: label }\n ),\n });\n }\n\n if (/^[-]|[-]$/.test(value)) {\n return ctx.createError({\n message: t(\n \"neetoCommons.validators.mustNotStartOrEndWithSpecialCharacters\",\n { what: label }\n ),\n });\n }\n\n return true;\n },\n });\n"],"mappings":"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"}
@@ -1,16 +1,11 @@
1
- import _typeof from "@babel/runtime/helpers/typeof";
2
1
  /* eslint-disable @bigbinary/neeto/use-snake-case-for-api-connector-filename */
3
2
  import axios from "axios";
4
3
  import qs from "qs";
5
- import { map } from "ramda";
6
4
  var setParamsSerializer = function setParamsSerializer() {
7
5
  axios.defaults.paramsSerializer = function (params) {
8
- var modifiedParams = map(function checkObject(value) {
9
- if (Array.isArray(value)) return map(checkObject, value);else if (value && _typeof(value) === "object") return JSON.stringify(value);
10
- return value;
11
- }, params);
12
- return qs.stringify(modifiedParams, {
13
- arrayFormat: "brackets"
6
+ return qs.stringify(params, {
7
+ arrayFormat: "brackets",
8
+ skipNulls: true
14
9
  });
15
10
  };
16
11
  };
@@ -1 +1 @@
1
- {"version":3,"file":"paramsSerializer.js","names":["axios","qs","map","setParamsSerializer","defaults","paramsSerializer","params","modifiedParams","checkObject","value","Array","isArray","_typeof","JSON","stringify","arrayFormat"],"sources":["../../../src/initializers/axios/paramsSerializer.js"],"sourcesContent":["/* eslint-disable @bigbinary/neeto/use-snake-case-for-api-connector-filename */\nimport axios from \"axios\";\nimport qs from \"qs\";\nimport { map } from \"ramda\";\n\nconst setParamsSerializer = () => {\n axios.defaults.paramsSerializer = function (params) {\n const modifiedParams = map(function checkObject(value) {\n if (Array.isArray(value)) return map(checkObject, value);\n else if (value && typeof value === \"object\") return JSON.stringify(value);\n\n return value;\n }, params);\n\n return qs.stringify(modifiedParams, { arrayFormat: \"brackets\" });\n };\n};\n\nexport default setParamsSerializer;\n"],"mappings":";AAAA;AACA,OAAOA,KAAK,MAAM,OAAO;AACzB,OAAOC,EAAE,MAAM,IAAI;AACnB,SAASC,GAAG,QAAQ,OAAO;AAE3B,IAAMC,mBAAmB,GAAG,SAAtBA,mBAAmBA,CAAA,EAAS;EAChCH,KAAK,CAACI,QAAQ,CAACC,gBAAgB,GAAG,UAAUC,MAAM,EAAE;IAClD,IAAMC,cAAc,GAAGL,GAAG,CAAC,SAASM,WAAWA,CAACC,KAAK,EAAE;MACrD,IAAIC,KAAK,CAACC,OAAO,CAACF,KAAK,CAAC,EAAE,OAAOP,GAAG,CAACM,WAAW,EAAEC,KAAK,CAAC,CAAC,KACpD,IAAIA,KAAK,IAAIG,OAAA,CAAOH,KAAK,MAAK,QAAQ,EAAE,OAAOI,IAAI,CAACC,SAAS,CAACL,KAAK,CAAC;MAEzE,OAAOA,KAAK;IACd,CAAC,EAAEH,MAAM,CAAC;IAEV,OAAOL,EAAE,CAACa,SAAS,CAACP,cAAc,EAAE;MAAEQ,WAAW,EAAE;IAAW,CAAC,CAAC;EAClE,CAAC;AACH,CAAC;AAED,eAAeZ,mBAAmB"}
1
+ {"version":3,"file":"paramsSerializer.js","names":["axios","qs","setParamsSerializer","defaults","paramsSerializer","params","stringify","arrayFormat","skipNulls"],"sources":["../../../src/initializers/axios/paramsSerializer.js"],"sourcesContent":["/* eslint-disable @bigbinary/neeto/use-snake-case-for-api-connector-filename */\nimport axios from \"axios\";\nimport qs from \"qs\";\n\nconst setParamsSerializer = () => {\n axios.defaults.paramsSerializer = params =>\n qs.stringify(params, { arrayFormat: \"brackets\", skipNulls: true });\n};\n\nexport default setParamsSerializer;\n"],"mappings":"AAAA;AACA,OAAOA,KAAK,MAAM,OAAO;AACzB,OAAOC,EAAE,MAAM,IAAI;AAEnB,IAAMC,mBAAmB,GAAG,SAAtBA,mBAAmBA,CAAA,EAAS;EAChCF,KAAK,CAACG,QAAQ,CAACC,gBAAgB,GAAG,UAAAC,MAAM;IAAA,OACtCJ,EAAE,CAACK,SAAS,CAACD,MAAM,EAAE;MAAEE,WAAW,EAAE,UAAU;MAAEC,SAAS,EAAE;IAAK,CAAC,CAAC;EAAA;AACtE,CAAC;AAED,eAAeN,mBAAmB"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@bigbinary/neeto-commons-frontend",
3
- "version": "3.1.16",
3
+ "version": "3.1.18-beta",
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>",
@@ -93,6 +93,7 @@
93
93
  "react-toastify": "8.0.2",
94
94
  "shakapacker": "^6.5.5",
95
95
  "tailwindcss": "^3.4.1",
96
- "webpack": "^5.75.0"
96
+ "webpack": "^5.75.0",
97
+ "yup": "^1.3.3"
97
98
  }
98
- }
99
+ }
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 snake
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 also get the query parameters as camel cased when destructuring the
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
  *
@@ -95,6 +95,13 @@
95
95
  },
96
96
  "notice": {
97
97
  "errorOccurred": "Some error occurred."
98
+ },
99
+ "validators": {
100
+ "isRequired": "{{what}} is required.",
101
+ "mustNotContainCapitalLetters": "{{what}} must not contain capital letters.",
102
+ "mustNotContainSpaces": "{{what}} must not contain spaces.",
103
+ "mustNotContainSpecialCharactersExceptHyphen": "{{what}} must not contain any special characters, except '-'",
104
+ "mustNotStartOrEndWithSpecialCharacters": "{{what}} must not start or end with special characters."
98
105
  }
99
106
  }
100
107
  }
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 { getRandomInt, preprocessForSerialization, snakeToCamelCase } from "@bigbinary/neeto-cist";
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 queryParams = pipe(omit(placeHolders), preprocessForSerialization, stringify)(params);
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).forEach(function (_ref5) {
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 = snakeToCamelCase(key);
120
- if (camelCasedKey !== key) {
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;
@@ -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/index.js CHANGED
@@ -4,4 +4,5 @@ export * from "./datetime";
4
4
  export * from "./permissions";
5
5
  export * from "./createSubscription";
6
6
  export * from "./currencyFormat";
7
+ export * from "./validators";
7
8
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":[],"sources":["../../src/utils/index.js"],"sourcesContent":["export * from \"./axios\";\nexport * from \"./general\";\nexport * from \"./datetime\";\nexport * from \"./permissions\";\nexport * from \"./createSubscription\";\nexport * from \"./currencyFormat\";\n"],"mappings":"AAAA;AACA;AACA;AACA;AACA;AACA"}
1
+ {"version":3,"file":"index.js","names":[],"sources":["../../src/utils/index.js"],"sourcesContent":["export * from \"./axios\";\nexport * from \"./general\";\nexport * from \"./datetime\";\nexport * from \"./permissions\";\nexport * from \"./createSubscription\";\nexport * from \"./currencyFormat\";\nexport * from \"./validators\";\n"],"mappings":"AAAA;AACA;AACA;AACA;AACA;AACA;AACA"}
@@ -0,0 +1 @@
1
+ export * from "./slug";
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","names":[],"sources":["../../../src/utils/validators/index.js"],"sourcesContent":["export * from \"./slug\";\n"],"mappings":"AAAA"}
@@ -0,0 +1,48 @@
1
+ import { VALID_SLUG_REGEX } from "../../constants/regex";
2
+ import { t } from "i18next";
3
+ import * as yup from "yup";
4
+ export var slugValidator = function slugValidator(label) {
5
+ return yup.string().test({
6
+ name: "slug",
7
+ test: function test(value, ctx) {
8
+ if (!value) {
9
+ return ctx.createError({
10
+ message: t("neetoCommons.validators.isRequired", {
11
+ what: label
12
+ })
13
+ });
14
+ }
15
+ if (VALID_SLUG_REGEX.test(value)) return true;
16
+ if (/[A-Z]/.test(value)) {
17
+ return ctx.createError({
18
+ message: t("neetoCommons.validators.mustNotContainCapitalLetters", {
19
+ what: label
20
+ })
21
+ });
22
+ }
23
+ if (value !== null && value !== void 0 && value.includes(" ")) {
24
+ return ctx.createError({
25
+ message: t("neetoCommons.validators.mustNotContainSpaces", {
26
+ what: label
27
+ })
28
+ });
29
+ }
30
+ if (!/^[a-z0-9-]+$/.test(value)) {
31
+ return ctx.createError({
32
+ message: t("neetoCommons.validators.mustNotContainSpecialCharactersExceptHyphen", {
33
+ what: label
34
+ })
35
+ });
36
+ }
37
+ if (/^[-]|[-]$/.test(value)) {
38
+ return ctx.createError({
39
+ message: t("neetoCommons.validators.mustNotStartOrEndWithSpecialCharacters", {
40
+ what: label
41
+ })
42
+ });
43
+ }
44
+ return true;
45
+ }
46
+ });
47
+ };
48
+ //# sourceMappingURL=slug.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"slug.js","names":["VALID_SLUG_REGEX","t","yup","slugValidator","label","string","test","name","value","ctx","createError","message","what","includes"],"sources":["../../../src/utils/validators/slug.js"],"sourcesContent":["import { VALID_SLUG_REGEX } from \"constants/regex\";\n\nimport { t } from \"i18next\";\nimport * as yup from \"yup\";\n\nexport const slugValidator = label =>\n yup.string().test({\n name: \"slug\",\n test: (value, ctx) => {\n if (!value) {\n return ctx.createError({\n message: t(\"neetoCommons.validators.isRequired\", { what: label }),\n });\n }\n\n if (VALID_SLUG_REGEX.test(value)) return true;\n\n if (/[A-Z]/.test(value)) {\n return ctx.createError({\n message: t(\"neetoCommons.validators.mustNotContainCapitalLetters\", {\n what: label,\n }),\n });\n }\n\n if (value?.includes(\" \")) {\n return ctx.createError({\n message: t(\"neetoCommons.validators.mustNotContainSpaces\", {\n what: label,\n }),\n });\n }\n\n if (!/^[a-z0-9-]+$/.test(value)) {\n return ctx.createError({\n message: t(\n \"neetoCommons.validators.mustNotContainSpecialCharactersExceptHyphen\",\n { what: label }\n ),\n });\n }\n\n if (/^[-]|[-]$/.test(value)) {\n return ctx.createError({\n message: t(\n \"neetoCommons.validators.mustNotStartOrEndWithSpecialCharacters\",\n { what: label }\n ),\n });\n }\n\n return true;\n },\n });\n"],"mappings":"AAAA,SAASA,gBAAgB;AAEzB,SAASC,CAAC,QAAQ,SAAS;AAC3B,OAAO,KAAKC,GAAG,MAAM,KAAK;AAE1B,OAAO,IAAMC,aAAa,GAAG,SAAhBA,aAAaA,CAAGC,KAAK;EAAA,OAChCF,GAAG,CAACG,MAAM,EAAE,CAACC,IAAI,CAAC;IAChBC,IAAI,EAAE,MAAM;IACZD,IAAI,EAAE,SAAAA,KAACE,KAAK,EAAEC,GAAG,EAAK;MACpB,IAAI,CAACD,KAAK,EAAE;QACV,OAAOC,GAAG,CAACC,WAAW,CAAC;UACrBC,OAAO,EAAEV,CAAC,CAAC,oCAAoC,EAAE;YAAEW,IAAI,EAAER;UAAM,CAAC;QAClE,CAAC,CAAC;MACJ;MAEA,IAAIJ,gBAAgB,CAACM,IAAI,CAACE,KAAK,CAAC,EAAE,OAAO,IAAI;MAE7C,IAAI,OAAO,CAACF,IAAI,CAACE,KAAK,CAAC,EAAE;QACvB,OAAOC,GAAG,CAACC,WAAW,CAAC;UACrBC,OAAO,EAAEV,CAAC,CAAC,sDAAsD,EAAE;YACjEW,IAAI,EAAER;UACR,CAAC;QACH,CAAC,CAAC;MACJ;MAEA,IAAII,KAAK,aAALA,KAAK,eAALA,KAAK,CAAEK,QAAQ,CAAC,GAAG,CAAC,EAAE;QACxB,OAAOJ,GAAG,CAACC,WAAW,CAAC;UACrBC,OAAO,EAAEV,CAAC,CAAC,8CAA8C,EAAE;YACzDW,IAAI,EAAER;UACR,CAAC;QACH,CAAC,CAAC;MACJ;MAEA,IAAI,CAAC,cAAc,CAACE,IAAI,CAACE,KAAK,CAAC,EAAE;QAC/B,OAAOC,GAAG,CAACC,WAAW,CAAC;UACrBC,OAAO,EAAEV,CAAC,CACR,qEAAqE,EACrE;YAAEW,IAAI,EAAER;UAAM,CAAC;QAEnB,CAAC,CAAC;MACJ;MAEA,IAAI,WAAW,CAACE,IAAI,CAACE,KAAK,CAAC,EAAE;QAC3B,OAAOC,GAAG,CAACC,WAAW,CAAC;UACrBC,OAAO,EAAEV,CAAC,CACR,gEAAgE,EAChE;YAAEW,IAAI,EAAER;UAAM,CAAC;QAEnB,CAAC,CAAC;MACJ;MAEA,OAAO,IAAI;IACb;EACF,CAAC,CAAC;AAAA"}
package/utils.d.ts CHANGED
@@ -1,6 +1,7 @@
1
1
  import { Mixin, Subscription } from "@rails/actioncable";
2
2
  import dayjs from "dayjs";
3
3
  import React from "react";
4
+ import { StringSchema } from "yup";
4
5
  export function resetAuthTokens(): void;
5
6
  /**
6
7
  *
@@ -101,6 +102,9 @@ export function copyToClipboard(text: string, configs?: {
101
102
  showToastr?: boolean;
102
103
  message?: string;
103
104
  }): void;
105
+ type buildUrlOptions = {
106
+ toSnakeCase?: boolean;
107
+ };
104
108
  /**
105
109
  *
106
110
  * The buildUrl function builds a URL by inflating a route-like template string
@@ -111,7 +115,7 @@ export function copyToClipboard(text: string, configs?: {
111
115
  *
112
116
  * placeholders with actual values. Any additional properties in the parameters
113
117
  *
114
- * will be attached as query parameters to the URL.
118
+ * will be transformed to snake case and attached as query parameters to the URL.
115
119
  *
116
120
  * @example
117
121
  *
@@ -124,9 +128,11 @@ export function copyToClipboard(text: string, configs?: {
124
128
  * page: 1,
125
129
  * per_page: 10,
126
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"
127
133
  * @endexample
128
134
  */
129
- export function buildUrl(route: string, params: object): string;
135
+ export function buildUrl(route: string, params: object, options?: buildUrlOptions): string;
130
136
  type DateTimeType = string | number | dayjs.Dayjs | Date | null | undefined;
131
137
  export const timeFormat: {
132
138
  fromNow: (time: DateTimeType) => string;
@@ -268,13 +274,13 @@ export type QueryParamsType = {
268
274
  *
269
275
  * API.
270
276
  *
271
- * This function will return an object containing all the query parameters in snake
277
+ * This function will return an object containing all the query parameters in camel
272
278
  *
273
279
  * case. It will return an empty object if no query parameters are present.
274
280
  *
275
- * You can also get the query parameters as camel cased when destructuring the
281
+ * You can set toCamelCase to false if you don't want to apply any transformation to the keys.
276
282
  *
277
- * return object.
283
+ * to false.
278
284
  *
279
285
  * More details on working:
280
286
  *
@@ -517,4 +523,21 @@ export const currencyFormat: {
517
523
  * showThumbsUpToastr();
518
524
  * @endexample
519
525
  */
520
- export function showThumbsUpToastr(): void;
526
+ export function showThumbsUpToastr(): void;
527
+ /**
528
+ *
529
+ * Ensure a given string is a valid slug, containing only lowercase letters,
530
+ *
531
+ * numbers, and hyphens.
532
+ *
533
+ * @example
534
+ *
535
+ * slugValidator("Slug").isValid("valid-slug"); // output true
536
+ * slugValidator("Slug").isValid("invalid slug"); // output false
537
+ *
538
+ * const schema = yup.object().shape({
539
+ * slug: slugValidator("Slug"),
540
+ * });
541
+ * @endexample
542
+ */
543
+ export function slugValidator(label: string): StringSchema;