@startlibs/utils 1.0.0-alpha-7d → 1.0.0-alpha-7g

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (3) hide show
  1. package/lib/index.js +138 -59
  2. package/package.json +2 -2
  3. package/src/index.js +15 -0
package/lib/index.js CHANGED
@@ -17,15 +17,16 @@ var _isFinite = require('lodash/fp/isFinite');
17
17
  var _taggedTemplateLiteral = require('@babel/runtime/helpers/taggedTemplateLiteral');
18
18
  var _typeof = require('@babel/runtime/helpers/typeof');
19
19
  var _objectWithoutProperties = require('@babel/runtime/helpers/objectWithoutProperties');
20
- var _isFunction = require('lodash/fp/isFunction');
21
20
  var _find = require('lodash/fp/find');
22
21
  var _reverse = require('lodash/fp/reverse');
22
+ var _isEqual = require('lodash/fp/isEqual');
23
+ var _isFunction = require('lodash/fp/isFunction');
23
24
  var _get = require('lodash/fp/get');
24
25
  var _unset = require('lodash/fp/unset');
25
26
  var polished = require('polished');
26
27
  var react = require('react');
27
28
  var styled = require('styled-components');
28
- var emotion = require('emotion');
29
+ var createEmotion = require('create-emotion');
29
30
  var _map = require('lodash/fp/map');
30
31
  var _filter = require('lodash/fp/filter');
31
32
  var _each = require('lodash/fp/each');
@@ -38,7 +39,6 @@ var _toPath = require('lodash/fp/toPath');
38
39
  var _pullAt = require('lodash/fp/pullAt');
39
40
  var _curry = require('lodash/fp/curry');
40
41
  var _last = require('lodash/fp/last');
41
- var _isEqual = require('lodash/fp/isEqual');
42
42
 
43
43
  function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
44
44
 
@@ -57,12 +57,14 @@ var _isFinite__default = /*#__PURE__*/_interopDefaultLegacy(_isFinite);
57
57
  var _taggedTemplateLiteral__default = /*#__PURE__*/_interopDefaultLegacy(_taggedTemplateLiteral);
58
58
  var _typeof__default = /*#__PURE__*/_interopDefaultLegacy(_typeof);
59
59
  var _objectWithoutProperties__default = /*#__PURE__*/_interopDefaultLegacy(_objectWithoutProperties);
60
- var _isFunction__default = /*#__PURE__*/_interopDefaultLegacy(_isFunction);
61
60
  var _find__default = /*#__PURE__*/_interopDefaultLegacy(_find);
62
61
  var _reverse__default = /*#__PURE__*/_interopDefaultLegacy(_reverse);
62
+ var _isEqual__default = /*#__PURE__*/_interopDefaultLegacy(_isEqual);
63
+ var _isFunction__default = /*#__PURE__*/_interopDefaultLegacy(_isFunction);
63
64
  var _get__default = /*#__PURE__*/_interopDefaultLegacy(_get);
64
65
  var _unset__default = /*#__PURE__*/_interopDefaultLegacy(_unset);
65
66
  var styled__default = /*#__PURE__*/_interopDefaultLegacy(styled);
67
+ var createEmotion__default = /*#__PURE__*/_interopDefaultLegacy(createEmotion);
66
68
  var _map__default = /*#__PURE__*/_interopDefaultLegacy(_map);
67
69
  var _filter__default = /*#__PURE__*/_interopDefaultLegacy(_filter);
68
70
  var _each__default = /*#__PURE__*/_interopDefaultLegacy(_each);
@@ -75,7 +77,6 @@ var _toPath__default = /*#__PURE__*/_interopDefaultLegacy(_toPath);
75
77
  var _pullAt__default = /*#__PURE__*/_interopDefaultLegacy(_pullAt);
76
78
  var _curry__default = /*#__PURE__*/_interopDefaultLegacy(_curry);
77
79
  var _last__default = /*#__PURE__*/_interopDefaultLegacy(_last);
78
- var _isEqual__default = /*#__PURE__*/_interopDefaultLegacy(_isEqual);
79
80
 
80
81
  function createSinglePromiseQueue() {
81
82
  return _createSinglePromiseQueue.apply(this, arguments);
@@ -1219,10 +1220,10 @@ var getMargin = function getMargin(enumeratedMargins) {
1219
1220
  * `
1220
1221
  */
1221
1222
 
1222
- var getProp = function getProp(path, defaultValue) {
1223
+ var prop = function prop(path, defaultValue) {
1223
1224
  return function () {
1224
1225
  var props = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
1225
- return get([].concat(path), props) || defaultValue;
1226
+ return _get__default['default'](path.trim(), props) || defaultValue;
1226
1227
  };
1227
1228
  };
1228
1229
  var customTheme = function customTheme(type) {
@@ -1247,42 +1248,103 @@ var customTheme = function customTheme(type) {
1247
1248
  */
1248
1249
 
1249
1250
  var ifProp = function ifProp(path, pass, fail) {
1250
- return function () {
1251
- var props = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
1252
- var result = false;
1251
+ if (pass && !_isFunction__default['default'](pass)) {
1252
+ // old version
1253
+ return function () {
1254
+ var props = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
1255
+ var result = false;
1253
1256
 
1254
- if (Array.isArray(path)) {
1255
- result = path.every(function (p) {
1256
- return testSinglePath(props, p);
1257
- });
1258
- } else if (_typeof__default['default'](path) === 'object') {
1259
- result = !Object.entries(path).find(function (_ref2) {
1260
- var _ref3 = _slicedToArray__default['default'](_ref2, 2),
1261
- k = _ref3[0],
1262
- v = _ref3[1];
1257
+ if (Array.isArray(path)) {
1258
+ result = path.every(function (p) {
1259
+ return testSinglePath(props, p);
1260
+ });
1261
+ } else if (_typeof__default['default'](path) === 'object') {
1262
+ result = !Object.entries(path).find(function (_ref2) {
1263
+ var _ref3 = _slicedToArray__default['default'](_ref2, 2),
1264
+ k = _ref3[0],
1265
+ v = _ref3[1];
1263
1266
 
1264
- return props[k] !== v;
1265
- });
1266
- } else {
1267
- result = testSinglePath(props, path);
1267
+ return props[k] !== v;
1268
+ });
1269
+ } else {
1270
+ result = testSinglePath(props, path);
1271
+ }
1272
+
1273
+ return result ? pass : fail;
1274
+ };
1275
+ } else {
1276
+ return function () {
1277
+ for (var _len = arguments.length, argsTrue = new Array(_len), _key = 0; _key < _len; _key++) {
1278
+ argsTrue[_key] = arguments[_key];
1279
+ }
1280
+
1281
+ var check = pass || _identity__default['default'];
1282
+
1283
+ var fn = function fn(props) {
1284
+ return check(_get__default['default'](path, props)) ? styled.css.apply(void 0, argsTrue) : '';
1285
+ };
1286
+
1287
+ fn.orElse = function () {
1288
+ for (var _len2 = arguments.length, argsFalse = new Array(_len2), _key2 = 0; _key2 < _len2; _key2++) {
1289
+ argsFalse[_key2] = arguments[_key2];
1290
+ }
1291
+
1292
+ return function (props) {
1293
+ return check(_get__default['default'](path, props)) ? styled.css.apply(void 0, argsTrue) : styled.css.apply(void 0, argsFalse);
1294
+ };
1295
+ };
1296
+
1297
+ return fn;
1298
+ };
1299
+ }
1300
+ };
1301
+ var ifPropEquals = function ifPropEquals(path, str) {
1302
+ return ifProp(path, _isEqual__default['default'](str));
1303
+ };
1304
+ var ifNotProp = function ifNotProp(path) {
1305
+ return ifProp(path, function (v) {
1306
+ return !v;
1307
+ });
1308
+ };
1309
+
1310
+ var checkCustomScreenWidth = function checkCustomScreenWidth(sizeParis, customWidth) {
1311
+ var currentWidth = callIfFunction(customWidth);
1312
+ return !sizeParis.find(function (_ref4) {
1313
+ var _ref5 = _slicedToArray__default['default'](_ref4, 2),
1314
+ size = _ref5[0],
1315
+ type = _ref5[1];
1316
+
1317
+ if (type === "min-width") {
1318
+ return currentWidth < size;
1268
1319
  }
1269
1320
 
1270
- return result ? pass : fail;
1271
- };
1321
+ if (type === "max-width") {
1322
+ return currentWidth > size;
1323
+ }
1324
+ });
1272
1325
  };
1326
+
1273
1327
  var media = function media() {
1274
- for (var _len = arguments.length, sizePairs = new Array(_len), _key = 0; _key < _len; _key++) {
1275
- sizePairs[_key] = arguments[_key];
1328
+ for (var _len3 = arguments.length, sizePairs = new Array(_len3), _key3 = 0; _key3 < _len3; _key3++) {
1329
+ sizePairs[_key3] = arguments[_key3];
1276
1330
  }
1277
1331
 
1278
1332
  return function () {
1279
- return styled.css(["@media ", "{", "}"], sizePairs.map(function (_ref4) {
1280
- var _ref5 = _slicedToArray__default['default'](_ref4, 2),
1281
- size = _ref5[0],
1282
- type = _ref5[1];
1333
+ for (var _len4 = arguments.length, args = new Array(_len4), _key4 = 0; _key4 < _len4; _key4++) {
1334
+ args[_key4] = arguments[_key4];
1335
+ }
1336
+
1337
+ return styled.css(["", ""], function (props) {
1338
+ var _props$theme, _props$theme2;
1283
1339
 
1284
- return "(".concat(type, ": ").concat(size + scrollWidth, "px)");
1285
- }).join(' and '), styled.css.apply(void 0, arguments));
1340
+ return ((_props$theme = props.theme) === null || _props$theme === void 0 ? void 0 : _props$theme.overrideMediaWidth) ? checkCustomScreenWidth(sizePairs, (_props$theme2 = props.theme) === null || _props$theme2 === void 0 ? void 0 : _props$theme2.overrideMediaWidth) ? styled.css.apply(void 0, args) : "" : styled.css(["@media ", "{", "}"], sizePairs.map(function (_ref6) {
1341
+ var _ref7 = _slicedToArray__default['default'](_ref6, 2),
1342
+ size = _ref7[0],
1343
+ type = _ref7[1];
1344
+
1345
+ return "(".concat(type, ": ").concat(size + scrollWidth, "px)");
1346
+ }).join(' and '), styled.css.apply(void 0, args));
1347
+ });
1286
1348
  };
1287
1349
  };
1288
1350
  media.mobile = media([600, 'max-width']);
@@ -1300,6 +1362,11 @@ media.min = function (n) {
1300
1362
  };
1301
1363
 
1302
1364
  media.desktop = media([601, 'min-width']);
1365
+ var vheight = function vheight(strings, size) {
1366
+ var propType = strings[0];
1367
+ var calc = (strings[1] || "").replace(";", "").trim();
1368
+ return "\n ".concat(propType, " ").concat(calc ? "calc(".concat(size, "vh ").concat(calc, ")") : "".concat(size, "vh"), ";\n ").concat(propType, " ").concat(calc ? "calc(calc(var(--vh, 1vh) * ".concat(size, ") ").concat(calc, ")") : "calc(var(--vh, 1vh) * ".concat(size, ")"), ";\n ");
1369
+ };
1303
1370
 
1304
1371
  function testSinglePath(props, path) {
1305
1372
  if (typeof path === 'string') {
@@ -1315,9 +1382,12 @@ var getFrameOffset = function getFrameOffset(i, total) {
1315
1382
  return Math.round(i * 100 / (total - 1));
1316
1383
  };
1317
1384
 
1385
+ var emotion = createEmotion__default['default']({
1386
+ nonce: __webpack_nonce__
1387
+ });
1318
1388
  var oneWayAnimation = function oneWayAnimation() {
1319
- for (var _len2 = arguments.length, frames = new Array(_len2), _key2 = 0; _key2 < _len2; _key2++) {
1320
- frames[_key2] = arguments[_key2];
1389
+ for (var _len5 = arguments.length, frames = new Array(_len5), _key5 = 0; _key5 < _len5; _key5++) {
1390
+ frames[_key5] = arguments[_key5];
1321
1391
  }
1322
1392
 
1323
1393
  return emotion.keyframes(_templateObject(), frames.map(function (frame, i) {
@@ -1325,8 +1395,8 @@ var oneWayAnimation = function oneWayAnimation() {
1325
1395
  }));
1326
1396
  };
1327
1397
  var twoWayAnimation = function twoWayAnimation() {
1328
- for (var _len3 = arguments.length, frames = new Array(_len3), _key3 = 0; _key3 < _len3; _key3++) {
1329
- frames[_key3] = arguments[_key3];
1398
+ for (var _len6 = arguments.length, frames = new Array(_len6), _key6 = 0; _key6 < _len6; _key6++) {
1399
+ frames[_key6] = arguments[_key6];
1330
1400
  }
1331
1401
 
1332
1402
  return [frames, _reverse__default['default'](frames)].map(function (frames) {
@@ -1335,8 +1405,8 @@ var twoWayAnimation = function twoWayAnimation() {
1335
1405
  };
1336
1406
  var animationTiming = function animationTiming(props) {
1337
1407
  return function () {
1338
- for (var _len4 = arguments.length, animations = new Array(_len4), _key4 = 0; _key4 < _len4; _key4++) {
1339
- animations[_key4] = arguments[_key4];
1408
+ for (var _len7 = arguments.length, animations = new Array(_len7), _key7 = 0; _key7 < _len7; _key7++) {
1409
+ animations[_key7] = arguments[_key7];
1340
1410
  }
1341
1411
 
1342
1412
  return animations.filter(function (_) {
@@ -1348,9 +1418,9 @@ var animationTiming = function animationTiming(props) {
1348
1418
  };
1349
1419
  var identityTranslateFrames = oneWayAnimation('transform: translateY(0);', 'transform: translateY(0);');
1350
1420
  var identityOpacityFrames = oneWayAnimation('opacity: 1;', 'opacity:1;');
1351
- var styledExtend = function styledExtend(_ref6) {
1352
- var target = _ref6.target,
1353
- componentStyle = _ref6.componentStyle;
1421
+ var styledExtend = function styledExtend(_ref8) {
1422
+ var target = _ref8.target,
1423
+ componentStyle = _ref8.componentStyle;
1354
1424
  return function () {
1355
1425
  var v = styled__default['default'](target).apply(void 0, arguments);
1356
1426
  v.componentStyle.rules = _toConsumableArray__default['default'](componentStyle.rules).concat(_toConsumableArray__default['default'](v.componentStyle.rules));
@@ -1360,7 +1430,7 @@ var styledExtend = function styledExtend(_ref6) {
1360
1430
  };
1361
1431
 
1362
1432
  var escapedValidParts = /(^|[^\\])(dd?|DD?|mm?|LL?|hh?|MM?|yy(?:yy)?)/g;
1363
- var validParts = /(dd?|DD?|mm?|LL?|hh?|MM?|yy(?:yy))$/;
1433
+ var validParts = /(dd?|DD?|mm?|LL?|hh?|MM?|yy(?:yy)|yy)$/;
1364
1434
 
1365
1435
  var addZero = function addZero(v) {
1366
1436
  return (v < 10 ? '0' : '') + v;
@@ -1415,23 +1485,28 @@ var getText = function getText(type, total) {
1415
1485
  }];
1416
1486
  };
1417
1487
 
1418
- var val = {
1419
- yyyy: getSet(0, 'FullYear', 0, function (v) {
1420
- return v;
1421
- }, function (y, date, failOnFormat) {
1422
- var formattedY = y.length === 2 && y !== '20' ? '20' + y : y.length === 4 ? y : '';
1488
+ var yearParse = function yearParse(y, date, failOnFormat) {
1489
+ var formattedY = y.length === 2 && y !== '20' ? '20' + y : y.length === 4 ? y : '';
1423
1490
 
1424
- if (formattedY === '') {
1425
- if (failOnFormat) {
1426
- var found = date.getUTCFullYear().toString().indexOf(y);
1427
- return found === 0 || found === 2 ? date.getUTCFullYear() : '\0';
1428
- } else {
1429
- return date.getUTCFullYear();
1430
- }
1491
+ if (formattedY === '') {
1492
+ if (failOnFormat) {
1493
+ var found = date.getUTCFullYear().toString().indexOf(y);
1494
+ return found === 0 || found === 2 ? date.getUTCFullYear() : '\0';
1431
1495
  } else {
1432
- return formattedY;
1496
+ return date.getUTCFullYear();
1433
1497
  }
1434
- }),
1498
+ } else {
1499
+ return formattedY;
1500
+ }
1501
+ };
1502
+
1503
+ var val = {
1504
+ yyyy: getSet(0, 'FullYear', 0, function (v) {
1505
+ return v;
1506
+ }, yearParse),
1507
+ yy: getSet(0, 'FullYear', 0, function (v) {
1508
+ return (v + "").slice(2, 4);
1509
+ }, yearParse),
1435
1510
  M: getSet(1, 'Month', 1),
1436
1511
  MM: getSet(1, 'Month', 1, addZero),
1437
1512
  L: getText('Month', 12, 3),
@@ -1808,12 +1883,13 @@ var innerWrapLazy = function innerWrapLazy(refreshCallback) {
1808
1883
  result = r;
1809
1884
  return r;
1810
1885
  }, function (e) {
1811
- if (returnedPromise === suspender) {
1886
+ if (returnedPromise !== suspender) {
1812
1887
  return suspender;
1813
1888
  }
1814
1889
 
1815
1890
  status = "error";
1816
1891
  result = e;
1892
+ return Promise.reject(e);
1817
1893
  });
1818
1894
  });
1819
1895
  return returnedPromise;
@@ -1993,14 +2069,15 @@ exports.getFetcherWithResponse = getFetcherWithResponse;
1993
2069
  exports.getMargin = getMargin;
1994
2070
  exports.getNumberInputType = getNumberInputType;
1995
2071
  exports.getNumberInputType2 = getNumberInputType2;
1996
- exports.getProp = getProp;
1997
2072
  exports.getScrollParent = getScrollParent;
1998
2073
  exports.getUID = getUID;
1999
2074
  exports.getUrlParams = getUrlParams;
2000
2075
  exports.identityFn = identityFn;
2001
2076
  exports.identityOpacityFrames = identityOpacityFrames;
2002
2077
  exports.identityTranslateFrames = identityTranslateFrames;
2078
+ exports.ifNotProp = ifNotProp;
2003
2079
  exports.ifProp = ifProp;
2080
+ exports.ifPropEquals = ifPropEquals;
2004
2081
  exports.ifUndefined = ifUndefined;
2005
2082
  exports.intToHour = intToHour;
2006
2083
  exports.intsToHour = intsToHour;
@@ -2024,6 +2101,7 @@ exports.parseDate = parseDate;
2024
2101
  exports.postFetcher = postFetcher;
2025
2102
  exports.postFetcherWithResponse = postFetcherWithResponse;
2026
2103
  exports.preventDefault = preventDefault;
2104
+ exports.prop = prop;
2027
2105
  exports.rafThrottle = rafThrottle;
2028
2106
  exports.safeNewLineToBr = safeNewLineToBr;
2029
2107
  exports.scrollIntoViewWithOffset = scrollIntoViewWithOffset;
@@ -2041,6 +2119,7 @@ exports.unWill = unWill;
2041
2119
  exports.useEventListener = useEventListener;
2042
2120
  exports.useEventListenerFor = useEventListenerFor;
2043
2121
  exports.using = using;
2122
+ exports.vheight = vheight;
2044
2123
  exports.will = will;
2045
2124
  exports.willRafThrottle = willRafThrottle;
2046
2125
  exports.willUseAutoLazy = willUseAutoLazy;
package/package.json CHANGED
@@ -1,8 +1,8 @@
1
1
  {
2
2
  "name": "@startlibs/utils",
3
- "version": "1.0.0-alpha-7d",
3
+ "version": "1.0.0-alpha-7g",
4
4
  "description": "Startlibs Utils",
5
- "main": "lib/index.js",
5
+ "main": "src/index.js",
6
6
  "sideEffects": false,
7
7
  "source": true,
8
8
  "peerDependencies": {
package/src/index.js ADDED
@@ -0,0 +1,15 @@
1
+ export * from './createPromiseQueue'
2
+ export * from './getClosestOffsetScroll'
3
+ export * from './smoothScroll'
4
+ export * from './fixMediaQuery'
5
+ export * from './FetchUtils'
6
+ export * from './styled'
7
+ export * from './formatDate'
8
+ export {_s} from './lodashUtils'
9
+ export * from './ActionUtils'
10
+ export * from './reduceUtils'
11
+ export * from './hooks/useEventListener'
12
+ export * from './utils'
13
+ export * from './createPressEvent'
14
+ export * from './wrapLazy'
15
+