@papillonbits/library 1.13.1 → 1.14.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/a11y/index.js +2 -8
- package/array/index.js +93 -119
- package/auth/index.js +27 -57
- package/boolean/index.js +1 -7
- package/browser/index.js +1 -7
- package/date/index.js +3 -12
- package/event/index.js +5 -12
- package/hooks/index.js +1 -36
- package/number/index.js +12 -20
- package/object/index.js +5 -12
- package/package.json +18 -2
- package/pagination/index.js +45 -51
- package/sort/index.js +32 -51
- package/store/index.js +1 -12
- package/store/mock/index.js +4 -11
- package/string/index.js +15 -22
package/a11y/index.js
CHANGED
|
@@ -1,17 +1,11 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
Object.defineProperty(exports, "__esModule", {
|
|
4
|
-
value: true
|
|
5
|
-
});
|
|
6
|
-
exports.checkAccessibilityIssues = checkAccessibilityIssues;
|
|
7
1
|
// https://github.com/dequelabs/axe-core-npm
|
|
8
2
|
// https://www.npmjs.com/package/@axe-core/react
|
|
9
3
|
|
|
10
4
|
/* eslint-disable global-require */
|
|
11
5
|
|
|
12
|
-
function checkAccessibilityIssues(react, reactDOM, delay) {
|
|
6
|
+
export function checkAccessibilityIssues(react, reactDOM, delay) {
|
|
13
7
|
if (process.env.NODE_ENV !== 'production') {
|
|
14
|
-
|
|
8
|
+
const axe = require('@axe-core/react');
|
|
15
9
|
axe(react, reactDOM, delay);
|
|
16
10
|
}
|
|
17
11
|
}
|
package/array/index.js
CHANGED
|
@@ -1,140 +1,114 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
exports.getCurrentIndex = getCurrentIndex;
|
|
8
|
-
exports.getIndexItems = getIndexItems;
|
|
9
|
-
exports.getIndexItemsWithSelected = getIndexItemsWithSelected;
|
|
10
|
-
exports.getItemsDefaultSelected = getItemsDefaultSelected;
|
|
11
|
-
exports.getItemsRandomSelected = getItemsRandomSelected;
|
|
12
|
-
exports.getRandomItemFromArray = getRandomItemFromArray;
|
|
13
|
-
exports.getRange = getRange;
|
|
14
|
-
exports.getSelectedItem = getSelectedItem;
|
|
15
|
-
exports.getSelectedItemText = getSelectedItemText;
|
|
16
|
-
var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutProperties"));
|
|
17
|
-
var _toConsumableArray2 = _interopRequireDefault(require("@babel/runtime/helpers/toConsumableArray"));
|
|
18
|
-
var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
|
|
19
|
-
var _excluded = ["id", "name"],
|
|
20
|
-
_excluded2 = ["id", "name"],
|
|
21
|
-
_excluded3 = ["id", "name"],
|
|
22
|
-
_excluded4 = ["id", "name"];
|
|
23
|
-
function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
|
|
24
|
-
function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { (0, _defineProperty2["default"])(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
|
|
25
|
-
function getCurrentIndex(indexItems) {
|
|
26
|
-
var _indexItems$filter$0$, _indexItems$filter$;
|
|
27
|
-
return (_indexItems$filter$0$ = indexItems === null || indexItems === void 0 || (_indexItems$filter$ = indexItems.filter(function (indexItem) {
|
|
28
|
-
return indexItem.isCurrent;
|
|
29
|
-
})[0]) === null || _indexItems$filter$ === void 0 ? void 0 : _indexItems$filter$.index) !== null && _indexItems$filter$0$ !== void 0 ? _indexItems$filter$0$ : -1;
|
|
1
|
+
import "core-js/modules/es.iterator.constructor.js";
|
|
2
|
+
import "core-js/modules/es.iterator.filter.js";
|
|
3
|
+
import "core-js/modules/es.iterator.find.js";
|
|
4
|
+
import "core-js/modules/es.iterator.map.js";
|
|
5
|
+
export function getCurrentIndex(indexItems) {
|
|
6
|
+
return indexItems?.filter(indexItem => indexItem.isCurrent)[0]?.index ?? -1;
|
|
30
7
|
}
|
|
31
|
-
function getIndexItems(items) {
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
});
|
|
37
|
-
})) !== null && _items$map !== void 0 ? _items$map : [];
|
|
8
|
+
export function getIndexItems(items) {
|
|
9
|
+
return items?.map((item, index) => ({
|
|
10
|
+
...item,
|
|
11
|
+
index
|
|
12
|
+
})) ?? [];
|
|
38
13
|
}
|
|
39
|
-
function getIndexItemsWithSelected(indexItems, selectedItem) {
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
});
|
|
45
|
-
})) !== null && _indexItems$map !== void 0 ? _indexItems$map : [];
|
|
14
|
+
export function getIndexItemsWithSelected(indexItems, selectedItem) {
|
|
15
|
+
return indexItems?.map(indexItem => ({
|
|
16
|
+
...indexItem,
|
|
17
|
+
isSelected: indexItem.index === selectedItem.index
|
|
18
|
+
})) ?? [];
|
|
46
19
|
}
|
|
47
|
-
function getRandomItemFromArray(array) {
|
|
48
|
-
return array
|
|
20
|
+
export function getRandomItemFromArray(array) {
|
|
21
|
+
return array?.[Math.floor(Math.random() * array?.length)]; // eslint-disable-line no-unsafe-optional-chaining
|
|
49
22
|
}
|
|
50
|
-
function getRange(
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
return Array(range).fill().map(function (_, index) {
|
|
57
|
-
return valueSeed + index + indexSeed;
|
|
58
|
-
});
|
|
23
|
+
export function getRange({
|
|
24
|
+
range,
|
|
25
|
+
indexSeed = 0,
|
|
26
|
+
valueSeed = 0
|
|
27
|
+
}) {
|
|
28
|
+
return Array(range).fill().map((_, index) => valueSeed + index + indexSeed);
|
|
59
29
|
}
|
|
60
|
-
function getSelectedItem(
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
});
|
|
30
|
+
export function getSelectedItem({
|
|
31
|
+
items
|
|
32
|
+
}) {
|
|
33
|
+
return items?.find(({
|
|
34
|
+
isSelected
|
|
35
|
+
}) => isSelected === true);
|
|
66
36
|
}
|
|
67
|
-
function getSelectedItemText(
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
return items
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
})) === null || _items$find === void 0 ? void 0 : _items$find.text;
|
|
37
|
+
export function getSelectedItemText({
|
|
38
|
+
items
|
|
39
|
+
}) {
|
|
40
|
+
return items?.find(({
|
|
41
|
+
isSelected
|
|
42
|
+
}) => isSelected === true)?.text;
|
|
74
43
|
}
|
|
75
|
-
function getItemsDefaultSelected(
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
44
|
+
export function getItemsDefaultSelected({
|
|
45
|
+
defaultItems,
|
|
46
|
+
items
|
|
47
|
+
}) {
|
|
48
|
+
let result;
|
|
79
49
|
if (defaultItems && items) {
|
|
80
|
-
result = [
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
50
|
+
result = [
|
|
51
|
+
// eslint-disable-next-line no-unsafe-optional-chaining
|
|
52
|
+
...defaultItems?.map(({
|
|
53
|
+
id,
|
|
54
|
+
name,
|
|
55
|
+
...rest
|
|
56
|
+
}) => ({
|
|
57
|
+
id,
|
|
58
|
+
href: '#url',
|
|
59
|
+
text: name,
|
|
60
|
+
isSelected: name === defaultItems[0].name,
|
|
61
|
+
...rest
|
|
62
|
+
})),
|
|
63
|
+
// eslint-disable-next-line no-unsafe-optional-chaining
|
|
64
|
+
...items?.map(({
|
|
65
|
+
id,
|
|
66
|
+
name,
|
|
67
|
+
...rest
|
|
68
|
+
}) => ({
|
|
69
|
+
id,
|
|
70
|
+
href: '#url',
|
|
71
|
+
text: name,
|
|
72
|
+
isSelected: name === items[0].name,
|
|
73
|
+
...rest
|
|
74
|
+
}))];
|
|
101
75
|
}
|
|
102
76
|
if (defaultItems && !items) {
|
|
103
77
|
result = null;
|
|
104
78
|
}
|
|
105
79
|
if (!defaultItems && items) {
|
|
106
|
-
result = items
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
});
|
|
80
|
+
result = items?.map(({
|
|
81
|
+
id,
|
|
82
|
+
name,
|
|
83
|
+
...rest
|
|
84
|
+
}) => ({
|
|
85
|
+
id,
|
|
86
|
+
href: '#url',
|
|
87
|
+
text: name,
|
|
88
|
+
isSelected: name === items[0].name,
|
|
89
|
+
...rest
|
|
90
|
+
}));
|
|
117
91
|
}
|
|
118
92
|
if (!defaultItems && !items) {
|
|
119
93
|
result = null;
|
|
120
94
|
}
|
|
121
95
|
return result;
|
|
122
96
|
}
|
|
123
|
-
function getItemsRandomSelected(
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
97
|
+
export function getItemsRandomSelected({
|
|
98
|
+
items
|
|
99
|
+
}) {
|
|
100
|
+
const randomItem = getRandomItemFromArray(items?.map(({
|
|
101
|
+
name
|
|
102
|
+
}) => name));
|
|
103
|
+
return items.map(({
|
|
104
|
+
id,
|
|
105
|
+
name,
|
|
106
|
+
...rest
|
|
107
|
+
}) => ({
|
|
108
|
+
id,
|
|
109
|
+
href: '#url',
|
|
110
|
+
text: name,
|
|
111
|
+
isSelected: name === randomItem,
|
|
112
|
+
...rest
|
|
128
113
|
}));
|
|
129
|
-
return items.map(function (_ref10) {
|
|
130
|
-
var id = _ref10.id,
|
|
131
|
-
name = _ref10.name,
|
|
132
|
-
rest = (0, _objectWithoutProperties2["default"])(_ref10, _excluded4);
|
|
133
|
-
return _objectSpread({
|
|
134
|
-
id: id,
|
|
135
|
-
href: '#url',
|
|
136
|
-
text: name,
|
|
137
|
-
isSelected: name === randomItem
|
|
138
|
-
}, rest);
|
|
139
|
-
});
|
|
140
114
|
}
|
package/auth/index.js
CHANGED
|
@@ -1,61 +1,31 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
exports.NotAuthorized = NotAuthorized;
|
|
8
|
-
exports.isUserAuthenticatedPapillonBitsOrganizationMember = isUserAuthenticatedPapillonBitsOrganizationMember;
|
|
9
|
-
var _regenerator = _interopRequireDefault(require("@babel/runtime/regenerator"));
|
|
10
|
-
var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/asyncToGenerator"));
|
|
11
|
-
var _rest = require("@octokit/rest");
|
|
12
|
-
var _jsxRuntime = require("react/jsx-runtime");
|
|
13
|
-
function NotAuthorized() {
|
|
14
|
-
return /*#__PURE__*/(0, _jsxRuntime.jsx)("h1", {
|
|
1
|
+
import "core-js/modules/es.iterator.constructor.js";
|
|
2
|
+
import "core-js/modules/es.iterator.filter.js";
|
|
3
|
+
import { Octokit } from '@octokit/rest';
|
|
4
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
5
|
+
export function NotAuthorized() {
|
|
6
|
+
return /*#__PURE__*/_jsx("h1", {
|
|
15
7
|
children: "You are not authorized to proceed!"
|
|
16
8
|
});
|
|
17
9
|
}
|
|
18
|
-
function isUserAuthenticatedPapillonBitsOrganizationMember(
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
return
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
});
|
|
40
|
-
_context.prev = 2;
|
|
41
|
-
_context.next = 3;
|
|
42
|
-
return octokit.request('GET /user/memberships/orgs');
|
|
43
|
-
case 3:
|
|
44
|
-
_yield$octokit$reques = _context.sent;
|
|
45
|
-
data = _yield$octokit$reques.data;
|
|
46
|
-
isActivePapillonBitsMember = data.filter(function (membership) {
|
|
47
|
-
return membership.organization.login === 'papillonbits' && membership.organization_url === 'https://api.github.com/orgs/papillonbits' && membership.role === 'admin' && membership.state === 'active';
|
|
48
|
-
}).length > 0;
|
|
49
|
-
return _context.abrupt("return", isActivePapillonBitsMember);
|
|
50
|
-
case 4:
|
|
51
|
-
_context.prev = 4;
|
|
52
|
-
_t = _context["catch"](2);
|
|
53
|
-
return _context.abrupt("return", false);
|
|
54
|
-
case 5:
|
|
55
|
-
case "end":
|
|
56
|
-
return _context.stop();
|
|
57
|
-
}
|
|
58
|
-
}, _callee, null, [[2, 4]]);
|
|
59
|
-
}));
|
|
60
|
-
return _isUserAuthenticatedPapillonBitsOrganizationMember.apply(this, arguments);
|
|
10
|
+
export async function isUserAuthenticatedPapillonBitsOrganizationMember(personalAccessToken) {
|
|
11
|
+
let collectedAccessToken = personalAccessToken;
|
|
12
|
+
if (!collectedAccessToken) {
|
|
13
|
+
collectedAccessToken = window.prompt('Please authenticate with your personal token'); // eslint-disable-line
|
|
14
|
+
}
|
|
15
|
+
if (!collectedAccessToken) {
|
|
16
|
+
return null;
|
|
17
|
+
}
|
|
18
|
+
const octokit = new Octokit({
|
|
19
|
+
auth: collectedAccessToken
|
|
20
|
+
});
|
|
21
|
+
try {
|
|
22
|
+
// https://developer.github.com/v3/orgs/members/#list-organization-memberships-for-the-authenticated-user
|
|
23
|
+
const {
|
|
24
|
+
data
|
|
25
|
+
} = await octokit.request('GET /user/memberships/orgs');
|
|
26
|
+
const isActivePapillonBitsMember = data.filter(membership => membership.organization.login === 'papillonbits' && membership.organization_url === 'https://api.github.com/orgs/papillonbits' && membership.role === 'admin' && membership.state === 'active').length > 0;
|
|
27
|
+
return isActivePapillonBitsMember;
|
|
28
|
+
} catch (error) {
|
|
29
|
+
return false;
|
|
30
|
+
}
|
|
61
31
|
}
|
package/boolean/index.js
CHANGED
package/browser/index.js
CHANGED
package/date/index.js
CHANGED
|
@@ -1,15 +1,6 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
Object.defineProperty(exports, "__esModule", {
|
|
4
|
-
value: true
|
|
5
|
-
});
|
|
6
|
-
exports.getLocaleDateTimeString = getLocaleDateTimeString;
|
|
7
|
-
exports.getRandomDate = getRandomDate;
|
|
8
|
-
function getLocaleDateTimeString(date) {
|
|
9
|
-
return date ? "".concat(date.toLocaleDateString(), " ").concat(date.toLocaleTimeString()) : null;
|
|
1
|
+
export function getLocaleDateTimeString(date) {
|
|
2
|
+
return date ? `${date.toLocaleDateString()} ${date.toLocaleTimeString()}` : null;
|
|
10
3
|
}
|
|
11
|
-
function getRandomDate() {
|
|
12
|
-
var start = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : new Date(2013, 1, 1);
|
|
13
|
-
var end = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : new Date();
|
|
4
|
+
export function getRandomDate(start = new Date(2013, 1, 1), end = new Date()) {
|
|
14
5
|
return new Date(start.getTime() + Math.random() * (end.getTime() - start.getTime()));
|
|
15
6
|
}
|
package/event/index.js
CHANGED
|
@@ -1,19 +1,12 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
});
|
|
6
|
-
exports.throttle = throttle;
|
|
7
|
-
function throttle(fn) {
|
|
8
|
-
var delay = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 200;
|
|
9
|
-
var lastCall = 0;
|
|
10
|
-
var throttleExec = function throttleExec() {
|
|
11
|
-
var now = new Date().getTime();
|
|
1
|
+
export function throttle(fn, delay = 200) {
|
|
2
|
+
let lastCall = 0;
|
|
3
|
+
const throttleExec = (...args) => {
|
|
4
|
+
const now = new Date().getTime();
|
|
12
5
|
if (now - lastCall < delay) {
|
|
13
6
|
return;
|
|
14
7
|
}
|
|
15
8
|
lastCall = now;
|
|
16
|
-
return fn
|
|
9
|
+
return fn(...args); // eslint-disable-line
|
|
17
10
|
};
|
|
18
11
|
return throttleExec;
|
|
19
12
|
}
|
package/hooks/index.js
CHANGED
|
@@ -1,36 +1 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
Object.defineProperty(exports, "__esModule", {
|
|
4
|
-
value: true
|
|
5
|
-
});
|
|
6
|
-
Object.defineProperty(exports, "useEffect", {
|
|
7
|
-
enumerable: true,
|
|
8
|
-
get: function get() {
|
|
9
|
-
return _react.useEffect;
|
|
10
|
-
}
|
|
11
|
-
});
|
|
12
|
-
Object.defineProperty(exports, "useMemo", {
|
|
13
|
-
enumerable: true,
|
|
14
|
-
get: function get() {
|
|
15
|
-
return _react.useMemo;
|
|
16
|
-
}
|
|
17
|
-
});
|
|
18
|
-
Object.defineProperty(exports, "useReducer", {
|
|
19
|
-
enumerable: true,
|
|
20
|
-
get: function get() {
|
|
21
|
-
return _react.useReducer;
|
|
22
|
-
}
|
|
23
|
-
});
|
|
24
|
-
Object.defineProperty(exports, "useRef", {
|
|
25
|
-
enumerable: true,
|
|
26
|
-
get: function get() {
|
|
27
|
-
return _react.useRef;
|
|
28
|
-
}
|
|
29
|
-
});
|
|
30
|
-
Object.defineProperty(exports, "useState", {
|
|
31
|
-
enumerable: true,
|
|
32
|
-
get: function get() {
|
|
33
|
-
return _react.useState;
|
|
34
|
-
}
|
|
35
|
-
});
|
|
36
|
-
var _react = require("react");
|
|
1
|
+
export { useState, useEffect, useReducer, useMemo, useRef } from 'react';
|
package/number/index.js
CHANGED
|
@@ -1,24 +1,16 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
})
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
var _ref$min = _ref.min,
|
|
10
|
-
min = _ref$min === void 0 ? 0 : _ref$min,
|
|
11
|
-
max = _ref.max,
|
|
12
|
-
_ref$decimal = _ref.decimal,
|
|
13
|
-
decimal = _ref$decimal === void 0 ? 2 : _ref$decimal;
|
|
14
|
-
var factor = Math.pow(10, decimal);
|
|
15
|
-
var maxFactor = max * factor;
|
|
16
|
-
var minFactor = min * factor;
|
|
1
|
+
export function getRandomDecimal({
|
|
2
|
+
min = 0,
|
|
3
|
+
max,
|
|
4
|
+
decimal = 2
|
|
5
|
+
}) {
|
|
6
|
+
const factor = 10 ** decimal;
|
|
7
|
+
const maxFactor = max * factor;
|
|
8
|
+
const minFactor = min * factor;
|
|
17
9
|
return parseFloat((Math.floor(Math.random() * (maxFactor - minFactor) + minFactor) / factor).toFixed(decimal));
|
|
18
10
|
}
|
|
19
|
-
function getRandomInteger(
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
11
|
+
export function getRandomInteger({
|
|
12
|
+
min = 0,
|
|
13
|
+
max
|
|
14
|
+
}) {
|
|
23
15
|
return Math.floor(Math.random() * (max - min) + min);
|
|
24
16
|
}
|
package/object/index.js
CHANGED
|
@@ -1,18 +1,11 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
value: true
|
|
6
|
-
});
|
|
7
|
-
exports.deepCloneObject = deepCloneObject;
|
|
8
|
-
exports.isEmptyObject = isEmptyObject;
|
|
9
|
-
var _typeof2 = _interopRequireDefault(require("@babel/runtime/helpers/typeof"));
|
|
10
|
-
function deepCloneObject(obj) {
|
|
11
|
-
if ((0, _typeof2["default"])(obj) !== 'object') {
|
|
1
|
+
import "core-js/modules/es.json.parse.js";
|
|
2
|
+
import "core-js/modules/es.json.stringify.js";
|
|
3
|
+
export function deepCloneObject(obj) {
|
|
4
|
+
if (typeof obj !== 'object') {
|
|
12
5
|
return undefined;
|
|
13
6
|
}
|
|
14
7
|
return JSON.parse(JSON.stringify(obj));
|
|
15
8
|
}
|
|
16
|
-
function isEmptyObject(obj) {
|
|
9
|
+
export function isEmptyObject(obj) {
|
|
17
10
|
return obj && Object.keys(obj).length === 0 && Object.getPrototypeOf(obj) === Object.prototype;
|
|
18
11
|
}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@papillonbits/library",
|
|
3
|
-
"version": "1.
|
|
3
|
+
"version": "1.14.1",
|
|
4
4
|
"description": "Papillon Bits Library",
|
|
5
5
|
"homepage": "https://github.com/papillonbits/papillonbits/tree/master/packages/library",
|
|
6
6
|
"repository": {
|
|
@@ -27,6 +27,22 @@
|
|
|
27
27
|
"string/",
|
|
28
28
|
"README.md"
|
|
29
29
|
],
|
|
30
|
+
"exports": {
|
|
31
|
+
"./a11y": "./src/a11y/index.js",
|
|
32
|
+
"./array": "./src/array/index.js",
|
|
33
|
+
"./auth": "./src/auth/index.js",
|
|
34
|
+
"./boolean": "./src/boolean/index.js",
|
|
35
|
+
"./browser": "./src/browser/index.js",
|
|
36
|
+
"./date": "./src/date/index.js",
|
|
37
|
+
"./event": "./src/event/index.js",
|
|
38
|
+
"./hooks": "./src/hooks/index.js",
|
|
39
|
+
"./number": "./src/number/index.js",
|
|
40
|
+
"./object": "./src/object/index.js",
|
|
41
|
+
"./pagination": "./src/pagination/index.js",
|
|
42
|
+
"./sort": "./src/sort/index.js",
|
|
43
|
+
"./store": "./src/store/index.js",
|
|
44
|
+
"./string": "./src/string/index.js"
|
|
45
|
+
},
|
|
30
46
|
"scripts": {
|
|
31
47
|
"clean-up": "rm -rf build node_modules package-lock.json",
|
|
32
48
|
"install-packages": "npm i",
|
|
@@ -36,5 +52,5 @@
|
|
|
36
52
|
"build-acceptance": "npm run build",
|
|
37
53
|
"build-release": "npm run build"
|
|
38
54
|
},
|
|
39
|
-
"gitHead": "
|
|
55
|
+
"gitHead": "edee89d268ab8d1f7abac56df60f6a64fa086692"
|
|
40
56
|
}
|
package/pagination/index.js
CHANGED
|
@@ -1,29 +1,19 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
value: true
|
|
6
|
-
});
|
|
7
|
-
exports.getPagination = getPagination;
|
|
8
|
-
exports.paginate = paginate;
|
|
9
|
-
exports.paginationActionTypes = void 0;
|
|
10
|
-
exports.setNewIndexItemsOnMove = setNewIndexItemsOnMove;
|
|
11
|
-
var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
|
|
12
|
-
var _array = require("../array");
|
|
13
|
-
function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
|
|
14
|
-
function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { (0, _defineProperty2["default"])(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
|
|
15
|
-
var paginationActionTypes = exports.paginationActionTypes = {
|
|
1
|
+
import "core-js/modules/es.iterator.constructor.js";
|
|
2
|
+
import "core-js/modules/es.iterator.map.js";
|
|
3
|
+
import { getCurrentIndex, getIndexItems, getRange } from '../array';
|
|
4
|
+
export const paginationActionTypes = {
|
|
16
5
|
onChange: 'onChange',
|
|
17
6
|
onBackwards: 'onBackwards',
|
|
18
7
|
onForward: 'onForward'
|
|
19
8
|
};
|
|
20
|
-
function getPagination(
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
9
|
+
export function getPagination({
|
|
10
|
+
searchObjects,
|
|
11
|
+
regularObjects,
|
|
12
|
+
pagination,
|
|
13
|
+
resetPageNumber
|
|
14
|
+
}) {
|
|
15
|
+
let newPageCount;
|
|
16
|
+
let newPageNumber;
|
|
27
17
|
if (searchObjects) {
|
|
28
18
|
newPageCount = Math.ceil(searchObjects.length / pagination.pageSize);
|
|
29
19
|
newPageNumber = 1;
|
|
@@ -34,41 +24,45 @@ function getPagination(_ref) {
|
|
|
34
24
|
}
|
|
35
25
|
newPageNumber = pagination.pageNumber > newPageCount && newPageCount > 0 ? newPageCount : pagination.pageNumber;
|
|
36
26
|
}
|
|
37
|
-
|
|
27
|
+
const items = getRange({
|
|
38
28
|
range: newPageCount
|
|
39
|
-
}).map(
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
return _objectSpread(_objectSpread({}, pagination), {}, {
|
|
29
|
+
}).map((_, index) => ({
|
|
30
|
+
isCurrent: index === newPageNumber - 1
|
|
31
|
+
}));
|
|
32
|
+
return {
|
|
33
|
+
...pagination,
|
|
45
34
|
pageNumber: newPageNumber,
|
|
46
35
|
currentPage: {
|
|
47
|
-
indexItems:
|
|
48
|
-
currentIndex:
|
|
49
|
-
canMoveBackwards:
|
|
50
|
-
canMoveForward:
|
|
36
|
+
indexItems: getIndexItems(items),
|
|
37
|
+
currentIndex: getCurrentIndex(getIndexItems(items)),
|
|
38
|
+
canMoveBackwards: getCurrentIndex(getIndexItems(items)) > 0,
|
|
39
|
+
canMoveForward: getCurrentIndex(getIndexItems(items)) < getIndexItems(items).length - 1
|
|
51
40
|
}
|
|
52
|
-
}
|
|
41
|
+
};
|
|
53
42
|
}
|
|
54
|
-
function paginate(
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
43
|
+
export function paginate({
|
|
44
|
+
array,
|
|
45
|
+
pageSize,
|
|
46
|
+
pageNumber
|
|
47
|
+
}) {
|
|
58
48
|
return array.slice((pageNumber - 1) * pageSize, pageNumber * pageSize);
|
|
59
49
|
}
|
|
60
|
-
function setNewIndexItemsOnMove(
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
50
|
+
export function setNewIndexItemsOnMove({
|
|
51
|
+
onBackwards,
|
|
52
|
+
onForward,
|
|
53
|
+
currentPage
|
|
54
|
+
}) {
|
|
55
|
+
const {
|
|
56
|
+
indexItems,
|
|
57
|
+
currentIndex,
|
|
58
|
+
canMoveBackwards,
|
|
59
|
+
canMoveForward
|
|
60
|
+
} = currentPage;
|
|
61
|
+
return indexItems.map(({
|
|
62
|
+
isCurrent,
|
|
63
|
+
index
|
|
64
|
+
}) => {
|
|
65
|
+
let newIsCurrent;
|
|
72
66
|
if ((onBackwards && canMoveBackwards || onForward && canMoveForward) && index === currentIndex) {
|
|
73
67
|
newIsCurrent = false;
|
|
74
68
|
} else if (onBackwards && canMoveBackwards && index === currentIndex - 1) {
|
|
@@ -80,7 +74,7 @@ function setNewIndexItemsOnMove(_ref3) {
|
|
|
80
74
|
}
|
|
81
75
|
return {
|
|
82
76
|
isCurrent: newIsCurrent,
|
|
83
|
-
index
|
|
77
|
+
index
|
|
84
78
|
};
|
|
85
79
|
});
|
|
86
80
|
}
|
package/sort/index.js
CHANGED
|
@@ -1,30 +1,22 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
Object.defineProperty(exports, "__esModule", {
|
|
5
|
-
value: true
|
|
6
|
-
});
|
|
7
|
-
exports.getSort = getSort;
|
|
8
|
-
exports.sortDefault = void 0;
|
|
9
|
-
exports.sortObjects = sortObjects;
|
|
10
|
-
exports.sortOrder = void 0;
|
|
11
|
-
var _typeof2 = _interopRequireDefault(require("@babel/runtime/helpers/typeof"));
|
|
12
|
-
var sortOrder = exports.sortOrder = {
|
|
1
|
+
import "core-js/modules/es.iterator.constructor.js";
|
|
2
|
+
import "core-js/modules/es.iterator.find.js";
|
|
3
|
+
export const sortOrder = {
|
|
13
4
|
ascending: 'ascending',
|
|
14
5
|
descending: 'descending'
|
|
15
6
|
};
|
|
16
|
-
|
|
7
|
+
export const sortDefault = {
|
|
17
8
|
index: 0,
|
|
18
9
|
value: 'id',
|
|
19
10
|
order: sortOrder.ascending
|
|
20
11
|
};
|
|
21
|
-
function getSort(
|
|
22
|
-
|
|
23
|
-
|
|
12
|
+
export function getSort({
|
|
13
|
+
currentSort,
|
|
14
|
+
newSort
|
|
15
|
+
}) {
|
|
24
16
|
return {
|
|
25
17
|
index: newSort.index,
|
|
26
18
|
value: newSort.value,
|
|
27
|
-
order:
|
|
19
|
+
order: (() => {
|
|
28
20
|
if (currentSort === sortDefault) {
|
|
29
21
|
return sortDefault.order;
|
|
30
22
|
}
|
|
@@ -32,61 +24,50 @@ function getSort(_ref) {
|
|
|
32
24
|
return currentSort.order === sortOrder.ascending ? sortOrder.descending : sortOrder.ascending;
|
|
33
25
|
}
|
|
34
26
|
return sortDefault.order;
|
|
35
|
-
}()
|
|
27
|
+
})()
|
|
36
28
|
};
|
|
37
29
|
}
|
|
38
|
-
function sortObjects(
|
|
39
|
-
|
|
40
|
-
|
|
30
|
+
export function sortObjects({
|
|
31
|
+
sort,
|
|
32
|
+
objects
|
|
33
|
+
}) {
|
|
41
34
|
if (!objects) {
|
|
42
35
|
return objects;
|
|
43
36
|
}
|
|
44
37
|
if (sort.order === sortOrder.ascending) {
|
|
45
|
-
return objects.sort(
|
|
46
|
-
|
|
47
|
-
switch ((0, _typeof2["default"])(a === null || a === void 0 ? void 0 : a[sort.value])) {
|
|
38
|
+
return objects.sort((a, b) => {
|
|
39
|
+
switch (typeof a?.[sort.value]) {
|
|
48
40
|
case 'object':
|
|
49
|
-
if (
|
|
50
|
-
return
|
|
41
|
+
if (a?.[sort.value] instanceof Object && a?.[sort.value] instanceof Date) {
|
|
42
|
+
return a?.[sort.value] > b?.[sort.value] ? 1 : -1;
|
|
51
43
|
}
|
|
52
|
-
if (
|
|
53
|
-
|
|
54
|
-
return (a === null || a === void 0 || (_a$sort$value = a[sort.value]) === null || _a$sort$value === void 0 || (_a$sort$value = _a$sort$value.find(function (item) {
|
|
55
|
-
return item.isSelected === true;
|
|
56
|
-
})) === null || _a$sort$value === void 0 || (_a$sort$value = _a$sort$value.text) === null || _a$sort$value === void 0 ? void 0 : _a$sort$value.toLowerCase()) > (b === null || b === void 0 || (_b$sort$value = b[sort.value]) === null || _b$sort$value === void 0 || (_b$sort$value = _b$sort$value.find(function (item) {
|
|
57
|
-
return item.isSelected === true;
|
|
58
|
-
})) === null || _b$sort$value === void 0 || (_b$sort$value = _b$sort$value.text) === null || _b$sort$value === void 0 ? void 0 : _b$sort$value.toLowerCase()) ? 1 : -1;
|
|
44
|
+
if (a?.[sort.value] instanceof Object && a?.[sort.value] instanceof Array) {
|
|
45
|
+
return a?.[sort.value]?.find(item => item.isSelected === true)?.text?.toLowerCase() > b?.[sort.value]?.find(item => item.isSelected === true)?.text?.toLowerCase() ? 1 : -1;
|
|
59
46
|
}
|
|
60
|
-
return
|
|
47
|
+
return a?.[sort.value]?.value?.toLowerCase() > b?.[sort.value]?.value?.toLowerCase() ? 1 : -1;
|
|
61
48
|
case 'string':
|
|
62
|
-
return
|
|
49
|
+
return a?.[sort.value]?.toLowerCase() > b?.[sort.value]?.toLowerCase() ? 1 : -1;
|
|
63
50
|
case 'number':
|
|
64
|
-
return
|
|
51
|
+
return a?.[sort.value] > b?.[sort.value] ? 1 : -1;
|
|
65
52
|
default:
|
|
66
53
|
return -1;
|
|
67
54
|
}
|
|
68
55
|
});
|
|
69
56
|
}
|
|
70
|
-
return objects.sort(
|
|
71
|
-
|
|
72
|
-
switch ((0, _typeof2["default"])(a === null || a === void 0 ? void 0 : a[sort.value])) {
|
|
57
|
+
return objects.sort((a, b) => {
|
|
58
|
+
switch (typeof a?.[sort.value]) {
|
|
73
59
|
case 'object':
|
|
74
|
-
if (
|
|
75
|
-
return
|
|
60
|
+
if (a?.[sort.value] instanceof Object && a?.[sort.value] instanceof Date) {
|
|
61
|
+
return a?.[sort.value] < b?.[sort.value] ? 1 : -1;
|
|
76
62
|
}
|
|
77
|
-
if (
|
|
78
|
-
|
|
79
|
-
return (a === null || a === void 0 || (_a$sort$value4 = a[sort.value]) === null || _a$sort$value4 === void 0 || (_a$sort$value4 = _a$sort$value4.find(function (item) {
|
|
80
|
-
return item.isSelected === true;
|
|
81
|
-
})) === null || _a$sort$value4 === void 0 || (_a$sort$value4 = _a$sort$value4.text) === null || _a$sort$value4 === void 0 ? void 0 : _a$sort$value4.toLowerCase()) < (b === null || b === void 0 || (_b$sort$value4 = b[sort.value]) === null || _b$sort$value4 === void 0 || (_b$sort$value4 = _b$sort$value4.find(function (item) {
|
|
82
|
-
return item.isSelected === true;
|
|
83
|
-
})) === null || _b$sort$value4 === void 0 || (_b$sort$value4 = _b$sort$value4.text) === null || _b$sort$value4 === void 0 ? void 0 : _b$sort$value4.toLowerCase()) ? 1 : -1;
|
|
63
|
+
if (a?.[sort.value] instanceof Object && a?.[sort.value] instanceof Array) {
|
|
64
|
+
return a?.[sort.value]?.find(item => item.isSelected === true)?.text?.toLowerCase() < b?.[sort.value]?.find(item => item.isSelected === true)?.text?.toLowerCase() ? 1 : -1;
|
|
84
65
|
}
|
|
85
|
-
return
|
|
66
|
+
return a?.[sort.value]?.value?.toLowerCase() < b?.[sort.value]?.value?.toLowerCase() ? 1 : -1;
|
|
86
67
|
case 'string':
|
|
87
|
-
return
|
|
68
|
+
return a?.[sort.value]?.toLowerCase() < b?.[sort.value]?.toLowerCase() ? 1 : -1;
|
|
88
69
|
case 'number':
|
|
89
|
-
return
|
|
70
|
+
return a?.[sort.value] < b?.[sort.value] ? 1 : -1;
|
|
90
71
|
default:
|
|
91
72
|
return -1;
|
|
92
73
|
}
|
package/store/index.js
CHANGED
|
@@ -1,12 +1 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
Object.defineProperty(exports, "__esModule", {
|
|
4
|
-
value: true
|
|
5
|
-
});
|
|
6
|
-
Object.defineProperty(exports, "getAppMockStore", {
|
|
7
|
-
enumerable: true,
|
|
8
|
-
get: function get() {
|
|
9
|
-
return _mock.getAppMockStore;
|
|
10
|
-
}
|
|
11
|
-
});
|
|
12
|
-
var _mock = require("./mock");
|
|
1
|
+
export { getAppMockStore } from './mock';
|
package/store/mock/index.js
CHANGED
|
@@ -1,12 +1,5 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
value: true
|
|
6
|
-
});
|
|
7
|
-
exports.getAppMockStore = getAppMockStore;
|
|
8
|
-
var _reduxMockStore = _interopRequireDefault(require("redux-mock-store"));
|
|
9
|
-
var _reduxThunk = require("redux-thunk");
|
|
10
|
-
function getAppMockStore(customAppState) {
|
|
11
|
-
return (0, _reduxMockStore["default"])([_reduxThunk.thunk])(customAppState);
|
|
1
|
+
import configureStore from 'redux-mock-store';
|
|
2
|
+
import { thunk } from 'redux-thunk';
|
|
3
|
+
export function getAppMockStore(customAppState) {
|
|
4
|
+
return configureStore([thunk])(customAppState);
|
|
12
5
|
}
|
package/string/index.js
CHANGED
|
@@ -1,28 +1,21 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
function getCapizalizedString(_ref) {
|
|
10
|
-
var string = _ref.string,
|
|
11
|
-
_ref$separator = _ref.separator,
|
|
12
|
-
separator = _ref$separator === void 0 ? '-' : _ref$separator;
|
|
13
|
-
var splitted = string.split(separator);
|
|
14
|
-
var capitalized = splitted.map(function (splittedItem) {
|
|
15
|
-
return "".concat(splittedItem.charAt(0).toUpperCase()).concat(splittedItem.slice(1));
|
|
16
|
-
});
|
|
1
|
+
import "core-js/modules/es.iterator.constructor.js";
|
|
2
|
+
import "core-js/modules/es.iterator.map.js";
|
|
3
|
+
export function getCapizalizedString({
|
|
4
|
+
string,
|
|
5
|
+
separator = '-'
|
|
6
|
+
}) {
|
|
7
|
+
const splitted = string.split(separator);
|
|
8
|
+
const capitalized = splitted.map(splittedItem => `${splittedItem.charAt(0).toUpperCase()}${splittedItem.slice(1)}`);
|
|
17
9
|
return capitalized.join(' ');
|
|
18
10
|
}
|
|
19
|
-
function getRandomAlphaNumericString() {
|
|
11
|
+
export function getRandomAlphaNumericString() {
|
|
20
12
|
return Math.random().toString(36).slice(2);
|
|
21
13
|
}
|
|
22
|
-
function getRandomAlphaNumericStringByLength(
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
14
|
+
export function getRandomAlphaNumericStringByLength({
|
|
15
|
+
length
|
|
16
|
+
}) {
|
|
17
|
+
let randomAlphaNumericString = '';
|
|
18
|
+
const characters = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789';
|
|
19
|
+
for (let i = 0; i < length; i += 1) randomAlphaNumericString += characters.charAt(Math.floor(Math.random() * characters.length));
|
|
27
20
|
return randomAlphaNumericString !== '' ? randomAlphaNumericString : getRandomAlphaNumericString();
|
|
28
21
|
}
|