@bigbinary/neeto-commons-frontend 2.0.0 → 2.0.1
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/README.md +1 -1
- package/initializers.js +66 -9
- package/package.json +7 -7
- package/pure.js +1 -3
- package/{react.js → react-utils.js} +6 -3
- package/utils.js +22 -2
package/README.md
CHANGED
|
@@ -7,7 +7,7 @@ The commons frontend library for Neeto Applications.
|
|
|
7
7
|
Install from npm:
|
|
8
8
|
|
|
9
9
|
```bash
|
|
10
|
-
yarn add "@bigbinary/neeto-commons-frontend@2.0.
|
|
10
|
+
yarn add "@bigbinary/neeto-commons-frontend@2.0.1"
|
|
11
11
|
```
|
|
12
12
|
|
|
13
13
|
This package relies on the host project's tailwind configuration. So add
|
package/initializers.js
CHANGED
|
@@ -1,11 +1,9 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
|
-
var
|
|
3
|
+
var ramda = require('ramda');
|
|
4
4
|
var neetoui = require('@bigbinary/neetoui');
|
|
5
5
|
var axios = require('axios');
|
|
6
6
|
var i18next = require('i18next');
|
|
7
|
-
var strings = require('pure/strings');
|
|
8
|
-
var ramda = require('ramda');
|
|
9
7
|
var mixpanel = require('mixpanel-browser');
|
|
10
8
|
var reactI18next = require('react-i18next');
|
|
11
9
|
|
|
@@ -15,10 +13,6 @@ var axios__default = /*#__PURE__*/_interopDefaultLegacy(axios);
|
|
|
15
13
|
var i18next__default = /*#__PURE__*/_interopDefaultLegacy(i18next);
|
|
16
14
|
var mixpanel__default = /*#__PURE__*/_interopDefaultLegacy(mixpanel);
|
|
17
15
|
|
|
18
|
-
var _document$getElements, _document$getElements2;
|
|
19
|
-
window.globalProps = objects.keysToCamelCase(JSON.parse(((_document$getElements = document.getElementsByClassName("root-container")[0]) === null || _document$getElements === void 0 ? void 0 : (_document$getElements2 = _document$getElements.dataset) === null || _document$getElements2 === void 0 ? void 0 : _document$getElements2.reactProps) || "{}"));
|
|
20
|
-
objects.deepFreezeObject(window.globalProps);
|
|
21
|
-
|
|
22
16
|
function _arrayWithHoles(arr) {
|
|
23
17
|
if (Array.isArray(arr)) return arr;
|
|
24
18
|
}
|
|
@@ -90,6 +84,69 @@ function _typeof(obj) {
|
|
|
90
84
|
}, _typeof(obj);
|
|
91
85
|
}
|
|
92
86
|
|
|
87
|
+
var snakeToCamelCase = function snakeToCamelCase(string) {
|
|
88
|
+
return string.replace(/(_\w)/g, function (letter) {
|
|
89
|
+
return letter[1].toUpperCase();
|
|
90
|
+
});
|
|
91
|
+
};
|
|
92
|
+
var camelToSnakeCase = function camelToSnakeCase(string) {
|
|
93
|
+
return string.replace(/[A-Z]/g, function (letter) {
|
|
94
|
+
return "_".concat(letter.toLowerCase());
|
|
95
|
+
});
|
|
96
|
+
};
|
|
97
|
+
|
|
98
|
+
var transformObjectDeep = function transformObjectDeep(object, keyValueTransformer) {
|
|
99
|
+
if (Array.isArray(object)) {
|
|
100
|
+
return object.map(function (obj) {
|
|
101
|
+
return transformObjectDeep(obj, keyValueTransformer);
|
|
102
|
+
});
|
|
103
|
+
} else if (object === null || _typeof(object) !== "object") {
|
|
104
|
+
return object;
|
|
105
|
+
}
|
|
106
|
+
|
|
107
|
+
return Object.fromEntries(Object.entries(object).map(function (_ref) {
|
|
108
|
+
var _ref2 = _slicedToArray(_ref, 2),
|
|
109
|
+
key = _ref2[0],
|
|
110
|
+
value = _ref2[1];
|
|
111
|
+
|
|
112
|
+
return keyValueTransformer(key, transformObjectDeep(value, keyValueTransformer));
|
|
113
|
+
}));
|
|
114
|
+
};
|
|
115
|
+
var keysToCamelCase = function keysToCamelCase(object) {
|
|
116
|
+
return transformObjectDeep(object, function (key, value) {
|
|
117
|
+
return [snakeToCamelCase(key), value];
|
|
118
|
+
});
|
|
119
|
+
};
|
|
120
|
+
var deepFreezeObject = function deepFreezeObject(object) {
|
|
121
|
+
if (object && _typeof(object) === "object" && !Object.isFrozen(object)) {
|
|
122
|
+
Object.keys(object).forEach(function (property) {
|
|
123
|
+
return deepFreezeObject(object[property]);
|
|
124
|
+
});
|
|
125
|
+
Object.freeze(object);
|
|
126
|
+
}
|
|
127
|
+
|
|
128
|
+
return object;
|
|
129
|
+
};
|
|
130
|
+
var matches = ramda.curry(function (pattern, object) {
|
|
131
|
+
var __parent = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : object;
|
|
132
|
+
|
|
133
|
+
if (object === pattern) return true;
|
|
134
|
+
if (typeof pattern === "function" && pattern(object, __parent)) return true;
|
|
135
|
+
if (ramda.isNil(pattern) || ramda.isNil(object)) return false;
|
|
136
|
+
if (_typeof(pattern) !== "object") return false;
|
|
137
|
+
return Object.entries(pattern).every(function (_ref3) {
|
|
138
|
+
var _ref4 = _slicedToArray(_ref3, 2),
|
|
139
|
+
key = _ref4[0],
|
|
140
|
+
value = _ref4[1];
|
|
141
|
+
|
|
142
|
+
return matches(value, object[key], __parent);
|
|
143
|
+
});
|
|
144
|
+
});
|
|
145
|
+
|
|
146
|
+
var _document$getElements, _document$getElements2;
|
|
147
|
+
window.globalProps = keysToCamelCase(JSON.parse(((_document$getElements = document.getElementsByClassName("root-container")[0]) === null || _document$getElements === void 0 ? void 0 : (_document$getElements2 = _document$getElements.dataset) === null || _document$getElements2 === void 0 ? void 0 : _document$getElements2.reactProps) || "{}"));
|
|
148
|
+
deepFreezeObject(window.globalProps);
|
|
149
|
+
|
|
93
150
|
function _defineProperty(obj, key, value) {
|
|
94
151
|
if (key in obj) {
|
|
95
152
|
Object.defineProperty(obj, key, {
|
|
@@ -149,7 +206,7 @@ var handleSuccessResponse = function handleSuccessResponse(response) {
|
|
|
149
206
|
showToastr = _response$config$show === void 0 ? true : _response$config$show;
|
|
150
207
|
|
|
151
208
|
if (response.data) {
|
|
152
|
-
if (transformResponseCase) response.data =
|
|
209
|
+
if (transformResponseCase) response.data = keysToCamelCase(response.data);
|
|
153
210
|
|
|
154
211
|
if (showToastr && typeof response.data.notice === "string") {
|
|
155
212
|
neetoui.Toastr.success(response.data.notice);
|
|
@@ -215,7 +272,7 @@ var serializeKeysToSnakeCase = function serializeKeysToSnakeCase(object) {
|
|
|
215
272
|
value = _ref2[1];
|
|
216
273
|
|
|
217
274
|
var val = typeof (value === null || value === void 0 ? void 0 : value.toJSON) === "function" ? value.toJSON() : value;
|
|
218
|
-
return [
|
|
275
|
+
return [camelToSnakeCase(key), serializeKeysToSnakeCase(val)];
|
|
219
276
|
}));
|
|
220
277
|
};
|
|
221
278
|
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@bigbinary/neeto-commons-frontend",
|
|
3
|
-
"version": "2.0.
|
|
3
|
+
"version": "2.0.1",
|
|
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>",
|
|
@@ -13,10 +13,10 @@
|
|
|
13
13
|
"watch": "rollup -c rollup.config.js --watch"
|
|
14
14
|
},
|
|
15
15
|
"files": [
|
|
16
|
-
"initializers
|
|
17
|
-
"react
|
|
18
|
-
"utils
|
|
19
|
-
"pure
|
|
16
|
+
"initializers.*",
|
|
17
|
+
"react-utils.*",
|
|
18
|
+
"utils.*",
|
|
19
|
+
"pure.*"
|
|
20
20
|
],
|
|
21
21
|
"lint-staged": {
|
|
22
22
|
"**/*.{js,jsx,json}": [
|
|
@@ -29,7 +29,7 @@
|
|
|
29
29
|
"@babel/preset-env": "^7.17.10",
|
|
30
30
|
"@babel/preset-react": "^7.16.7",
|
|
31
31
|
"@bigbinary/neeto-icons": "^1.8.35",
|
|
32
|
-
"@bigbinary/neetoui": "^3.5.
|
|
32
|
+
"@bigbinary/neetoui": "^3.5.14",
|
|
33
33
|
"@honeybadger-io/react": "2.0.1",
|
|
34
34
|
"@rollup/plugin-alias": "^3.1.9",
|
|
35
35
|
"@rollup/plugin-babel": "^5.3.1",
|
|
@@ -77,7 +77,7 @@
|
|
|
77
77
|
"dependencies": {},
|
|
78
78
|
"peerDependencies": {
|
|
79
79
|
"@bigbinary/neeto-icons": "^1.8.35",
|
|
80
|
-
"@bigbinary/neetoui": "^3.5.
|
|
80
|
+
"@bigbinary/neetoui": "^3.5.14",
|
|
81
81
|
"@honeybadger-io/react": "2.0.1",
|
|
82
82
|
"axios": "^0.27.2",
|
|
83
83
|
"dayjs": "1.11.1",
|
package/pure.js
CHANGED
|
@@ -102,9 +102,7 @@ var camelToSnakeCase = function camelToSnakeCase(string) {
|
|
|
102
102
|
var capitalize = function capitalize(string) {
|
|
103
103
|
return string.charAt(0).toUpperCase() + string.slice(1);
|
|
104
104
|
};
|
|
105
|
-
var truncate = function truncate() {
|
|
106
|
-
var string = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : "";
|
|
107
|
-
var length = arguments.length > 1 ? arguments[1] : undefined;
|
|
105
|
+
var truncate = function truncate(string, length) {
|
|
108
106
|
return string.length > length ? ramda.concat(ramda.slice(0, length, string), "...") : string;
|
|
109
107
|
};
|
|
110
108
|
|
|
@@ -11,7 +11,6 @@ var neetoIcons = require('@bigbinary/neeto-icons');
|
|
|
11
11
|
var layouts = require('@bigbinary/neetoui/layouts');
|
|
12
12
|
var i18next = require('i18next');
|
|
13
13
|
var ramda = require('ramda');
|
|
14
|
-
var strings = require('src/pure/strings');
|
|
15
14
|
var axios = require('axios');
|
|
16
15
|
var Yup = require('yup');
|
|
17
16
|
var formik = require('@bigbinary/neetoui/formik');
|
|
@@ -263,6 +262,10 @@ function _slicedToArray(arr, i) {
|
|
|
263
262
|
return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest();
|
|
264
263
|
}
|
|
265
264
|
|
|
265
|
+
var capitalize = function capitalize(string) {
|
|
266
|
+
return string.charAt(0).toUpperCase() + string.slice(1);
|
|
267
|
+
};
|
|
268
|
+
|
|
266
269
|
var HEADERS_KEYS = {
|
|
267
270
|
xAuthEmail: "X-Auth-Email",
|
|
268
271
|
xAuthToken: "X-Auth-Token",
|
|
@@ -353,7 +356,7 @@ var Sidebar = function Sidebar(_ref) {
|
|
|
353
356
|
});
|
|
354
357
|
return /*#__PURE__*/React__default["default"].createElement(React__default["default"].Fragment, null, /*#__PURE__*/React__default["default"].createElement(layouts.Sidebar, {
|
|
355
358
|
isCollapsed: true,
|
|
356
|
-
appName: "neeto".concat(
|
|
359
|
+
appName: "neeto".concat(capitalize(appName)),
|
|
357
360
|
navLinks: navLinks,
|
|
358
361
|
profileInfo: profileInfo,
|
|
359
362
|
organizationInfo: ramda.mergeLeft(organizationInfoOverrides, globalProps.organization),
|
|
@@ -367,7 +370,7 @@ var Sidebar = function Sidebar(_ref) {
|
|
|
367
370
|
return setIsAppSwitcherOpen(false);
|
|
368
371
|
},
|
|
369
372
|
neetoApps: globalProps.neetoApps,
|
|
370
|
-
activeApp:
|
|
373
|
+
activeApp: capitalize(appName),
|
|
371
374
|
environment: process.env.RAILS_ENV
|
|
372
375
|
}));
|
|
373
376
|
};
|
package/utils.js
CHANGED
|
@@ -5,7 +5,6 @@ Object.defineProperty(exports, '__esModule', { value: true });
|
|
|
5
5
|
var axios = require('axios');
|
|
6
6
|
var ramda = require('ramda');
|
|
7
7
|
var i18next = require('i18next');
|
|
8
|
-
var general = require('pure/general');
|
|
9
8
|
var dayjs = require('dayjs');
|
|
10
9
|
var relativeTime = require('dayjs/plugin/relativeTime');
|
|
11
10
|
var updateLocale = require('dayjs/plugin/updateLocale');
|
|
@@ -471,6 +470,27 @@ try {
|
|
|
471
470
|
}
|
|
472
471
|
}
|
|
473
472
|
|
|
473
|
+
var getRandomInt = function getRandomInt() {
|
|
474
|
+
var a = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : Number.MAX_SAFE_INTEGER;
|
|
475
|
+
var b = arguments.length > 1 ? arguments[1] : undefined;
|
|
476
|
+
|
|
477
|
+
if (b) {
|
|
478
|
+
a = Math.ceil(a);
|
|
479
|
+
b = Math.floor(b);
|
|
480
|
+
} else {
|
|
481
|
+
b = a;
|
|
482
|
+
a = 0;
|
|
483
|
+
}
|
|
484
|
+
|
|
485
|
+
return Math.floor(Math.random() * (b - a) + a);
|
|
486
|
+
};
|
|
487
|
+
ramda.complement(ramda.isNil);
|
|
488
|
+
ramda.complement(ramda.isEmpty);
|
|
489
|
+
ramda.curry(function (x, y) {
|
|
490
|
+
return x !== y;
|
|
491
|
+
});
|
|
492
|
+
ramda.complement(ramda.equals);
|
|
493
|
+
|
|
474
494
|
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; }
|
|
475
495
|
|
|
476
496
|
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; }
|
|
@@ -484,7 +504,7 @@ var getSubdomain = function getSubdomain() {
|
|
|
484
504
|
};
|
|
485
505
|
var simulateApiCall = function simulateApiCall(result, error) {
|
|
486
506
|
var errorProbability = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : 0.1;
|
|
487
|
-
var delay = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] :
|
|
507
|
+
var delay = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : getRandomInt(350, 1000);
|
|
488
508
|
return new Promise(function (resolve, reject) {
|
|
489
509
|
return setTimeout(function () {
|
|
490
510
|
var defaultErrorObj = {
|