@koine/utils 1.0.77 → 1.0.80

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 (77) hide show
  1. package/debounce.d.ts +11 -0
  2. package/debounce.js +9 -0
  3. package/getZonedDate.js +1 -1
  4. package/index.d.ts +3 -0
  5. package/index.js +3 -0
  6. package/navigateToHash.d.ts +8 -0
  7. package/navigateToHash.js +12 -0
  8. package/node/buildUrlQueryString.js +4 -3
  9. package/node/changeUrlPath.js +3 -2
  10. package/node/debounce.js +12 -0
  11. package/node/getEmptyArray.js +2 -1
  12. package/node/getParamAmong.js +2 -1
  13. package/node/getParamAsInt.js +2 -1
  14. package/node/getParamAsString.js +2 -1
  15. package/node/getUrlPathnameParts.js +2 -1
  16. package/node/getUrlQueryParams.js +2 -1
  17. package/node/getZonedDate.js +3 -2
  18. package/node/index.js +3 -0
  19. package/node/isAnyObject.js +2 -1
  20. package/node/isArray.js +2 -1
  21. package/node/isBlob.js +2 -1
  22. package/node/isBoolean.js +2 -1
  23. package/node/isDate.js +2 -1
  24. package/node/isEmptyArray.js +2 -1
  25. package/node/isEmptyObject.js +2 -1
  26. package/node/isError.js +2 -1
  27. package/node/isExternalUrl.js +2 -1
  28. package/node/isFile.js +2 -1
  29. package/node/isFloat.js +2 -1
  30. package/node/isFormData.js +2 -1
  31. package/node/isFullArray.js +2 -1
  32. package/node/isFullObject.js +2 -1
  33. package/node/isFullString.js +2 -1
  34. package/node/isInt.js +2 -1
  35. package/node/isMap.js +2 -1
  36. package/node/isNaNValue.js +2 -1
  37. package/node/isNegativeNumber.js +2 -1
  38. package/node/isNull.js +2 -1
  39. package/node/isNullOrUndefined.js +4 -3
  40. package/node/isNumber.js +2 -1
  41. package/node/isObject.js +2 -1
  42. package/node/isObjectLike.js +2 -1
  43. package/node/isPlainObject.js +2 -1
  44. package/node/isPositiveNumber.js +2 -1
  45. package/node/isPrimitive.js +7 -6
  46. package/node/isPromise.js +2 -1
  47. package/node/isRegExp.js +2 -1
  48. package/node/isServer.js +2 -1
  49. package/node/isSet.js +2 -1
  50. package/node/isString.js +2 -1
  51. package/node/isSymbol.js +2 -1
  52. package/node/isType.js +2 -1
  53. package/node/isUndefined.js +2 -1
  54. package/node/isWeakMap.js +2 -1
  55. package/node/isWeakSet.js +2 -1
  56. package/node/matchSorter.js +1 -1
  57. package/node/mergeUrlQueryParams.js +2 -1
  58. package/node/navigateToHash.js +16 -0
  59. package/node/navigateToHashParams.js +3 -2
  60. package/node/navigateToMergedHashParams.js +4 -3
  61. package/node/navigateToMergedParams.js +4 -3
  62. package/node/navigateToParams.js +3 -2
  63. package/node/navigateWithoutUrlParam.js +3 -2
  64. package/node/normaliseUrl.js +2 -1
  65. package/node/normaliseUrlPathname.js +2 -1
  66. package/node/pageview.js +2 -1
  67. package/node/redirectTo.js +3 -2
  68. package/node/removeUrlQueryParams.js +3 -2
  69. package/node/setCookie.js +2 -2
  70. package/node/throttle.js +30 -0
  71. package/node/transformToUrlPathname.js +2 -1
  72. package/node/updateLinkParams.js +2 -1
  73. package/node/updateUrlQueryParams.js +4 -3
  74. package/package.json +4 -3
  75. package/throttle.d.ts +8 -0
  76. package/throttle.js +26 -0
  77. package/whitelistObject.js +0 -15
package/debounce.d.ts ADDED
@@ -0,0 +1,11 @@
1
+ import { debounce as tsDebounce } from "ts-debounce";
2
+ export { type Options as DebounceOptions } from "ts-debounce";
3
+ export { type DebouncedFunction } from "ts-debounce";
4
+ /**
5
+ * Debounce function
6
+ *
7
+ * @category function
8
+ * @borrows [chodorowicz/ts-debounce](https://github.com/chodorowicz/ts-debounce)
9
+ */
10
+ export declare const debounce: typeof tsDebounce;
11
+ export default debounce;
package/debounce.js ADDED
@@ -0,0 +1,9 @@
1
+ import { debounce as tsDebounce } from "ts-debounce";
2
+ /**
3
+ * Debounce function
4
+ *
5
+ * @category function
6
+ * @borrows [chodorowicz/ts-debounce](https://github.com/chodorowicz/ts-debounce)
7
+ */
8
+ export var debounce = tsDebounce;
9
+ export default debounce;
package/getZonedDate.js CHANGED
@@ -1,4 +1,4 @@
1
- import utcToZonedTime from "date-fns-tz/esm/utcToZonedTime";
1
+ import utcToZonedTime from "date-fns-tz/utcToZonedTime";
2
2
  import isBrowser from "./isBrowser";
3
3
  /**
4
4
  * It returns a `Date` object from a date `string` adjusted on the user timeZone,
package/index.d.ts CHANGED
@@ -11,6 +11,7 @@ export * from "./clsx";
11
11
  export * from "./convertRange";
12
12
  export * from "./cookie";
13
13
  export * from "./createStorage";
14
+ export * from "./debounce";
14
15
  export * from "./decode";
15
16
  export * from "./Defer";
16
17
  export * from "./Emitter";
@@ -79,6 +80,7 @@ export * from "./matchSorter";
79
80
  export * from "./mergeObjects";
80
81
  export * from "./mergeUrlQueryParams";
81
82
  export * from "./moveSortableArrayItemByKey";
83
+ export * from "./navigateToHash";
82
84
  export * from "./navigateToHashParams";
83
85
  export * from "./navigateToMergedHashParams";
84
86
  export * from "./navigateToMergedParams";
@@ -108,6 +110,7 @@ export * from "./setCookie";
108
110
  export * from "./shuffle";
109
111
  export * from "./slugify";
110
112
  export * from "./swapMap";
113
+ export * from "./throttle";
111
114
  export * from "./titleCase";
112
115
  export * from "./toNumber";
113
116
  export * from "./toRgba";
package/index.js CHANGED
@@ -11,6 +11,7 @@ export * from "./clsx";
11
11
  export * from "./convertRange";
12
12
  export * from "./cookie";
13
13
  export * from "./createStorage";
14
+ export * from "./debounce";
14
15
  export * from "./decode";
15
16
  export * from "./Defer";
16
17
  export * from "./Emitter";
@@ -80,6 +81,7 @@ export * from "./matchSorter";
80
81
  export * from "./mergeObjects";
81
82
  export * from "./mergeUrlQueryParams";
82
83
  export * from "./moveSortableArrayItemByKey";
84
+ export * from "./navigateToHash";
83
85
  export * from "./navigateToHashParams";
84
86
  export * from "./navigateToMergedHashParams";
85
87
  export * from "./navigateToMergedParams";
@@ -110,6 +112,7 @@ export * from "./setCookie";
110
112
  export * from "./shuffle";
111
113
  export * from "./slugify";
112
114
  export * from "./swapMap";
115
+ export * from "./throttle";
113
116
  export * from "./titleCase";
114
117
  export * from "./toNumber";
115
118
  export * from "./toRgba";
@@ -0,0 +1,8 @@
1
+ /**
2
+ * It updates the browser's location hash by replacing the history state.
3
+ * The non-silent standard way would simply be `location.hash = "#new-hash"`
4
+ *
5
+ * @category location
6
+ */
7
+ export declare function navigateToHash(hash?: string): void;
8
+ export default navigateToHash;
@@ -0,0 +1,12 @@
1
+ /**
2
+ * It updates the browser's location hash by replacing the history state.
3
+ * The non-silent standard way would simply be `location.hash = "#new-hash"`
4
+ *
5
+ * @category location
6
+ */
7
+ export function navigateToHash(hash) {
8
+ if (hash === void 0) { hash = ""; }
9
+ var pathname = location.pathname, search = location.search;
10
+ history.replaceState(null, "", pathname + (search ? "?" + search : "") + "#" + hash);
11
+ }
12
+ export default navigateToHash;
@@ -1,9 +1,10 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.buildUrlQueryString = void 0;
4
- var isNull_1 = require("./isNull");
5
- var isUndefined_1 = require("./isUndefined");
6
- var isArray_1 = require("./isArray");
4
+ var tslib_1 = require("tslib");
5
+ var isNull_1 = tslib_1.__importDefault(require("./isNull"));
6
+ var isUndefined_1 = tslib_1.__importDefault(require("./isUndefined"));
7
+ var isArray_1 = tslib_1.__importDefault(require("./isArray"));
7
8
  /**
8
9
  * Get clean query string for URL
9
10
  *
@@ -1,8 +1,9 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.changeUrlPath = void 0;
4
- var isBrowser_1 = require("./isBrowser");
5
- var normaliseUrlPathname_1 = require("./normaliseUrlPathname");
4
+ var tslib_1 = require("tslib");
5
+ var isBrowser_1 = tslib_1.__importDefault(require("./isBrowser"));
6
+ var normaliseUrlPathname_1 = tslib_1.__importDefault(require("./normaliseUrlPathname"));
6
7
  /**
7
8
  * Change URL path, ensures initial and ending slashes and normalise eventual
8
9
  * consecutive slashes, it uses `history`.
@@ -0,0 +1,12 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.debounce = void 0;
4
+ var ts_debounce_1 = require("ts-debounce");
5
+ /**
6
+ * Debounce function
7
+ *
8
+ * @category function
9
+ * @borrows [chodorowicz/ts-debounce](https://github.com/chodorowicz/ts-debounce)
10
+ */
11
+ exports.debounce = ts_debounce_1.debounce;
12
+ exports.default = exports.debounce;
@@ -1,7 +1,8 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.getEmptyArray = void 0;
4
- var isNumber_1 = require("./isNumber");
4
+ var tslib_1 = require("tslib");
5
+ var isNumber_1 = tslib_1.__importDefault(require("./isNumber"));
5
6
  /**
6
7
  *
7
8
  * Returns an array of undefined values of the desired length, useful to build
@@ -1,7 +1,8 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.getParamAmong = void 0;
4
- var getParamAsString_1 = require("./getParamAsString");
4
+ var tslib_1 = require("tslib");
5
+ var getParamAsString_1 = tslib_1.__importDefault(require("./getParamAsString"));
5
6
  /**
6
7
  * Get query parameter as `string` treating the `ParsedUrlQuery` result of
7
8
  * [`querystring`](https://nodejs.org/api/querystring.html) (used in next.js
@@ -1,7 +1,8 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.getParamAsInt = void 0;
4
- var getParamAsString_1 = require("./getParamAsString");
4
+ var tslib_1 = require("tslib");
5
+ var getParamAsString_1 = tslib_1.__importDefault(require("./getParamAsString"));
5
6
  /**
6
7
  * Get query parameter as `int`eger treating the `ParsedUrlQuery` result of
7
8
  * [`querystring`](https://nodejs.org/api/querystring.html) (used in next.js
@@ -1,7 +1,8 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.getParamAsString = void 0;
4
- var isArray_1 = require("./isArray");
4
+ var tslib_1 = require("tslib");
5
+ var isArray_1 = tslib_1.__importDefault(require("./isArray"));
5
6
  /**
6
7
  * Get query parameter as `string` treating the `ParsedUrlQuery` result of
7
8
  * [`querystring`](https://nodejs.org/api/querystring.html) (used in next.js
@@ -1,7 +1,8 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.getUrlPathnameParts = void 0;
4
- var isBrowser_1 = require("./isBrowser");
4
+ var tslib_1 = require("tslib");
5
+ var isBrowser_1 = tslib_1.__importDefault(require("./isBrowser"));
5
6
  /**
6
7
  * Get pathname parts
7
8
  *
@@ -1,7 +1,8 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.getUrlQueryParams = void 0;
4
- var isBrowser_1 = require("./isBrowser");
4
+ var tslib_1 = require("tslib");
5
+ var isBrowser_1 = tslib_1.__importDefault(require("./isBrowser"));
5
6
  /**
6
7
  * Get parsed query parameters as object dictionary (from URL or given query string)
7
8
  *
@@ -1,8 +1,9 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.getZonedDate = void 0;
4
- var utcToZonedTime_1 = require("date-fns-tz/esm/utcToZonedTime");
5
- var isBrowser_1 = require("./isBrowser");
4
+ var tslib_1 = require("tslib");
5
+ var utcToZonedTime_1 = tslib_1.__importDefault(require("date-fns-tz/utcToZonedTime"));
6
+ var isBrowser_1 = tslib_1.__importDefault(require("./isBrowser"));
6
7
  /**
7
8
  * It returns a `Date` object from a date `string` adjusted on the user timeZone,
8
9
  * if a timeZone is not provided we try getting it from the `Intl` browwser native
package/node/index.js CHANGED
@@ -14,6 +14,7 @@ tslib_1.__exportStar(require("./clsx"), exports);
14
14
  tslib_1.__exportStar(require("./convertRange"), exports);
15
15
  tslib_1.__exportStar(require("./cookie"), exports);
16
16
  tslib_1.__exportStar(require("./createStorage"), exports);
17
+ tslib_1.__exportStar(require("./debounce"), exports);
17
18
  tslib_1.__exportStar(require("./decode"), exports);
18
19
  tslib_1.__exportStar(require("./Defer"), exports);
19
20
  tslib_1.__exportStar(require("./Emitter"), exports);
@@ -83,6 +84,7 @@ tslib_1.__exportStar(require("./matchSorter"), exports);
83
84
  tslib_1.__exportStar(require("./mergeObjects"), exports);
84
85
  tslib_1.__exportStar(require("./mergeUrlQueryParams"), exports);
85
86
  tslib_1.__exportStar(require("./moveSortableArrayItemByKey"), exports);
87
+ tslib_1.__exportStar(require("./navigateToHash"), exports);
86
88
  tslib_1.__exportStar(require("./navigateToHashParams"), exports);
87
89
  tslib_1.__exportStar(require("./navigateToMergedHashParams"), exports);
88
90
  tslib_1.__exportStar(require("./navigateToMergedParams"), exports);
@@ -113,6 +115,7 @@ tslib_1.__exportStar(require("./setCookie"), exports);
113
115
  tslib_1.__exportStar(require("./shuffle"), exports);
114
116
  tslib_1.__exportStar(require("./slugify"), exports);
115
117
  tslib_1.__exportStar(require("./swapMap"), exports);
118
+ tslib_1.__exportStar(require("./throttle"), exports);
116
119
  tslib_1.__exportStar(require("./titleCase"), exports);
117
120
  tslib_1.__exportStar(require("./toNumber"), exports);
118
121
  tslib_1.__exportStar(require("./toRgba"), exports);
@@ -1,7 +1,8 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.isAnyObject = void 0;
4
- var getType_1 = require("./getType");
4
+ var tslib_1 = require("tslib");
5
+ var getType_1 = tslib_1.__importDefault(require("./getType"));
5
6
  /**
6
7
  * Returns whether the payload is an any kind of object (including special classes or objects with different prototypes)
7
8
  *
package/node/isArray.js CHANGED
@@ -1,7 +1,8 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.isArray = void 0;
4
- var getType_1 = require("./getType");
4
+ var tslib_1 = require("tslib");
5
+ var getType_1 = tslib_1.__importDefault(require("./getType"));
5
6
  /**
6
7
  * Returns whether the payload is an array
7
8
  *
package/node/isBlob.js CHANGED
@@ -1,7 +1,8 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.isBlob = void 0;
4
- var getType_1 = require("./getType");
4
+ var tslib_1 = require("tslib");
5
+ var getType_1 = tslib_1.__importDefault(require("./getType"));
5
6
  /**
6
7
  * Returns whether the payload is a Blob
7
8
  *
package/node/isBoolean.js CHANGED
@@ -1,7 +1,8 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.isBoolean = void 0;
4
- var getType_1 = require("./getType");
4
+ var tslib_1 = require("tslib");
5
+ var getType_1 = tslib_1.__importDefault(require("./getType"));
5
6
  /**
6
7
  * Returns whether the payload is a boolean
7
8
  *
package/node/isDate.js CHANGED
@@ -1,7 +1,8 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.isDate = void 0;
4
- var getType_1 = require("./getType");
4
+ var tslib_1 = require("tslib");
5
+ var getType_1 = tslib_1.__importDefault(require("./getType"));
5
6
  /**
6
7
  * Returns whether the payload is a Date, and that the date is valid
7
8
  *
@@ -1,7 +1,8 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.isEmptyArray = void 0;
4
- var isArray_1 = require("./isArray");
4
+ var tslib_1 = require("tslib");
5
+ var isArray_1 = tslib_1.__importDefault(require("./isArray"));
5
6
  /**
6
7
  * Returns whether the payload is a an empty array
7
8
  *
@@ -1,7 +1,8 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.isEmptyObject = void 0;
4
- var isPlainObject_1 = require("./isPlainObject");
4
+ var tslib_1 = require("tslib");
5
+ var isPlainObject_1 = tslib_1.__importDefault(require("./isPlainObject"));
5
6
  /**
6
7
  * Returns whether the payload is a an empty object (excluding special classes or objects with other prototypes)
7
8
  *
package/node/isError.js CHANGED
@@ -1,7 +1,8 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.isError = void 0;
4
- var getType_1 = require("./getType");
4
+ var tslib_1 = require("tslib");
5
+ var getType_1 = tslib_1.__importDefault(require("./getType"));
5
6
  /**
6
7
  * Returns whether the payload is an Error
7
8
  *
@@ -1,7 +1,8 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.isExternalUrl = void 0;
4
- var isBrowser_1 = require("./isBrowser");
4
+ var tslib_1 = require("tslib");
5
+ var isBrowser_1 = tslib_1.__importDefault(require("./isBrowser"));
5
6
  /**
6
7
  * Is external url compared to the given current URL (if not provided it falls
7
8
  * back to `location.href`)
package/node/isFile.js CHANGED
@@ -1,7 +1,8 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.isFile = void 0;
4
- var getType_1 = require("./getType");
4
+ var tslib_1 = require("tslib");
5
+ var getType_1 = tslib_1.__importDefault(require("./getType"));
5
6
  /**
6
7
  * Returns whether the payload is a File
7
8
  *
package/node/isFloat.js CHANGED
@@ -1,7 +1,8 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.isFloat = void 0;
4
- var isNumber_1 = require("./isNumber");
4
+ var tslib_1 = require("tslib");
5
+ var isNumber_1 = tslib_1.__importDefault(require("./isNumber"));
5
6
  /**
6
7
  * Returns whether the payload is a float number
7
8
  *
@@ -1,7 +1,8 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.isFormData = void 0;
4
- var getType_1 = require("./getType");
4
+ var tslib_1 = require("tslib");
5
+ var getType_1 = tslib_1.__importDefault(require("./getType"));
5
6
  /**
6
7
  * Returns whether the payload is a FormData
7
8
  *
@@ -1,7 +1,8 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.isFullArray = void 0;
4
- var isArray_1 = require("./isArray");
4
+ var tslib_1 = require("tslib");
5
+ var isArray_1 = tslib_1.__importDefault(require("./isArray"));
5
6
  /**
6
7
  * Returns whether the payload is a an array with at least 1 item
7
8
  *
@@ -1,7 +1,8 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.isFullObject = void 0;
4
- var isPlainObject_1 = require("./isPlainObject");
4
+ var tslib_1 = require("tslib");
5
+ var isPlainObject_1 = tslib_1.__importDefault(require("./isPlainObject"));
5
6
  /**
6
7
  * Returns whether the payload is a an empty object (excluding special classes or objects with other prototypes)
7
8
  *
@@ -1,7 +1,8 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.isFullString = void 0;
4
- var isString_1 = require("./isString");
4
+ var tslib_1 = require("tslib");
5
+ var isString_1 = tslib_1.__importDefault(require("./isString"));
5
6
  /**
6
7
  * Returns whether the payload is a string, BUT returns false for ''
7
8
  *
package/node/isInt.js CHANGED
@@ -1,7 +1,8 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.isInt = void 0;
4
- var isNumber_1 = require("./isNumber");
4
+ var tslib_1 = require("tslib");
5
+ var isNumber_1 = tslib_1.__importDefault(require("./isNumber"));
5
6
  /**
6
7
  * Returns whether the payload is an integer number
7
8
  *
package/node/isMap.js CHANGED
@@ -1,7 +1,8 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.isMap = void 0;
4
- var getType_1 = require("./getType");
4
+ var tslib_1 = require("tslib");
5
+ var getType_1 = tslib_1.__importDefault(require("./getType"));
5
6
  /**
6
7
  * Returns whether the payload is a Map
7
8
  *
@@ -1,7 +1,8 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.isNaNValue = void 0;
4
- var getType_1 = require("./getType");
4
+ var tslib_1 = require("tslib");
5
+ var getType_1 = tslib_1.__importDefault(require("./getType"));
5
6
  /**
6
7
  * Returns whether the payload is literally the value `NaN` (it's `NaN` and also a `number`)
7
8
  *
@@ -1,7 +1,8 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.isNegativeNumber = void 0;
4
- var isNumber_1 = require("./isNumber");
4
+ var tslib_1 = require("tslib");
5
+ var isNumber_1 = tslib_1.__importDefault(require("./isNumber"));
5
6
  /**
6
7
  * Returns whether the payload is a negative number (but not 0)
7
8
  *
package/node/isNull.js CHANGED
@@ -1,7 +1,8 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.isNull = void 0;
4
- var getType_1 = require("./getType");
4
+ var tslib_1 = require("tslib");
5
+ var getType_1 = tslib_1.__importDefault(require("./getType"));
5
6
  /**
6
7
  * Returns whether the payload is null
7
8
  *
@@ -1,9 +1,10 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.isNullOrUndefined = void 0;
4
- var isNull_1 = require("./isNull");
5
- var isOneOf_1 = require("./isOneOf");
6
- var isUndefined_1 = require("./isUndefined");
4
+ var tslib_1 = require("tslib");
5
+ var isNull_1 = tslib_1.__importDefault(require("./isNull"));
6
+ var isOneOf_1 = tslib_1.__importDefault(require("./isOneOf"));
7
+ var isUndefined_1 = tslib_1.__importDefault(require("./isUndefined"));
7
8
  /**
8
9
  * Returns true whether the payload is null or undefined
9
10
  *
package/node/isNumber.js CHANGED
@@ -1,7 +1,8 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.isNumber = void 0;
4
- var getType_1 = require("./getType");
4
+ var tslib_1 = require("tslib");
5
+ var getType_1 = tslib_1.__importDefault(require("./getType"));
5
6
  /**
6
7
  * Returns whether the payload is a number (but not NaN)
7
8
  *
package/node/isObject.js CHANGED
@@ -1,7 +1,8 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.isObject = void 0;
4
- var isPlainObject_1 = require("./isPlainObject");
4
+ var tslib_1 = require("tslib");
5
+ var isPlainObject_1 = tslib_1.__importDefault(require("./isPlainObject"));
5
6
  /**
6
7
  * Returns whether the payload is a plain JavaScript object (excluding special classes or objects with other prototypes)
7
8
  *
@@ -1,7 +1,8 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.isObjectLike = void 0;
4
- var isAnyObject_1 = require("./isAnyObject");
4
+ var tslib_1 = require("tslib");
5
+ var isAnyObject_1 = tslib_1.__importDefault(require("./isAnyObject"));
5
6
  /**
6
7
  * Returns whether the payload is an object like a type passed in < >
7
8
  *
@@ -1,7 +1,8 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.isPlainObject = void 0;
4
- var getType_1 = require("./getType");
4
+ var tslib_1 = require("tslib");
5
+ var getType_1 = tslib_1.__importDefault(require("./getType"));
5
6
  /**
6
7
  * Returns whether the payload is a plain JavaScript object (excluding special classes or objects with other prototypes)
7
8
  *
@@ -1,7 +1,8 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.isPositiveNumber = void 0;
4
- var isNumber_1 = require("./isNumber");
4
+ var tslib_1 = require("tslib");
5
+ var isNumber_1 = tslib_1.__importDefault(require("./isNumber"));
5
6
  /**
6
7
  * Returns whether the payload is a positive number (but not 0)
7
8
  *
@@ -1,12 +1,13 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.isPrimitive = void 0;
4
- var isString_1 = require("./isString");
5
- var isNull_1 = require("./isNull");
6
- var isNumber_1 = require("./isNumber");
7
- var isUndefined_1 = require("./isUndefined");
8
- var isBoolean_1 = require("./isBoolean");
9
- var isSymbol_1 = require("./isSymbol");
4
+ var tslib_1 = require("tslib");
5
+ var isString_1 = tslib_1.__importDefault(require("./isString"));
6
+ var isNull_1 = tslib_1.__importDefault(require("./isNull"));
7
+ var isNumber_1 = tslib_1.__importDefault(require("./isNumber"));
8
+ var isUndefined_1 = tslib_1.__importDefault(require("./isUndefined"));
9
+ var isBoolean_1 = tslib_1.__importDefault(require("./isBoolean"));
10
+ var isSymbol_1 = tslib_1.__importDefault(require("./isSymbol"));
10
11
  /**
11
12
  * Returns whether the payload is a primitive type (eg. Boolean | Null | Undefined | Number | String | Symbol)
12
13
  *
package/node/isPromise.js CHANGED
@@ -1,7 +1,8 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.isPromise = void 0;
4
- var getType_1 = require("./getType");
4
+ var tslib_1 = require("tslib");
5
+ var getType_1 = tslib_1.__importDefault(require("./getType"));
5
6
  /**
6
7
  * Returns whether the payload is a Promise
7
8
  *
package/node/isRegExp.js CHANGED
@@ -1,7 +1,8 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.isRegExp = void 0;
4
- var getType_1 = require("./getType");
4
+ var tslib_1 = require("tslib");
5
+ var getType_1 = tslib_1.__importDefault(require("./getType"));
5
6
  /**
6
7
  * Returns whether the payload is a regular expression (RegExp)
7
8
  *
package/node/isServer.js CHANGED
@@ -1,7 +1,8 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.isServer = void 0;
4
- var isBrowser_1 = require("./isBrowser");
4
+ var tslib_1 = require("tslib");
5
+ var isBrowser_1 = tslib_1.__importDefault(require("./isBrowser"));
5
6
  /**
6
7
  * @category ssr
7
8
  * @category is
package/node/isSet.js CHANGED
@@ -1,7 +1,8 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.isSet = void 0;
4
- var getType_1 = require("./getType");
4
+ var tslib_1 = require("tslib");
5
+ var getType_1 = tslib_1.__importDefault(require("./getType"));
5
6
  /**
6
7
  * Returns whether the payload is a Set
7
8
  *
package/node/isString.js CHANGED
@@ -1,7 +1,8 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.isString = void 0;
4
- var getType_1 = require("./getType");
4
+ var tslib_1 = require("tslib");
5
+ var getType_1 = tslib_1.__importDefault(require("./getType"));
5
6
  /**
6
7
  * Returns whether the payload is a string
7
8
  *
package/node/isSymbol.js CHANGED
@@ -1,7 +1,8 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.isSymbol = void 0;
4
- var getType_1 = require("./getType");
4
+ var tslib_1 = require("tslib");
5
+ var getType_1 = tslib_1.__importDefault(require("./getType"));
5
6
  /**
6
7
  * Returns whether the payload is a Symbol
7
8
  *
package/node/isType.js CHANGED
@@ -1,7 +1,8 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.isType = void 0;
4
- var getType_1 = require("./getType");
4
+ var tslib_1 = require("tslib");
5
+ var getType_1 = tslib_1.__importDefault(require("./getType"));
5
6
  /**
6
7
  * Does a generic check to check that the given payload is of a given type.
7
8
  * In cases like Number, it will return true for NaN as NaN is a Number (thanks javascript!);
@@ -1,7 +1,8 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.isUndefined = void 0;
4
- var getType_1 = require("./getType");
4
+ var tslib_1 = require("tslib");
5
+ var getType_1 = tslib_1.__importDefault(require("./getType"));
5
6
  /**
6
7
  * Returns whether the payload is undefined
7
8
  *
package/node/isWeakMap.js CHANGED
@@ -1,7 +1,8 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.isWeakMap = void 0;
4
- var getType_1 = require("./getType");
4
+ var tslib_1 = require("tslib");
5
+ var getType_1 = tslib_1.__importDefault(require("./getType"));
5
6
  /**
6
7
  * Returns whether the payload is a WeakMap
7
8
  *
package/node/isWeakSet.js CHANGED
@@ -1,7 +1,8 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.isWeakSet = void 0;
4
- var getType_1 = require("./getType");
4
+ var tslib_1 = require("tslib");
5
+ var getType_1 = tslib_1.__importDefault(require("./getType"));
5
6
  /**
6
7
  * Returns whether the payload is a WeakSet
7
8
  *
@@ -18,7 +18,7 @@ var tslib_1 = require("tslib");
18
18
  * @copyright (c) 2020 Kent C. Dodds
19
19
  * @author Kent C. Dodds <me@kentcdodds.com> (https://kentcdodds.com)
20
20
  */
21
- var removeAccents_1 = require("./removeAccents");
21
+ var removeAccents_1 = tslib_1.__importDefault(require("./removeAccents"));
22
22
  var RANKING_CASE_SENSITIVE_EQUAL = 7;
23
23
  var RANKING_EQUAL = 6;
24
24
  var RANKING_STARTS_WITH = 5;
@@ -1,7 +1,8 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.mergeUrlQueryParams = void 0;
4
- var isNull_1 = require("./isNull");
4
+ var tslib_1 = require("tslib");
5
+ var isNull_1 = tslib_1.__importDefault(require("./isNull"));
5
6
  /**
6
7
  * Merge query parameters objects, it *mutates* the first given object argument
7
8
  *
@@ -0,0 +1,16 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.navigateToHash = void 0;
4
+ /**
5
+ * It updates the browser's location hash by replacing the history state.
6
+ * The non-silent standard way would simply be `location.hash = "#new-hash"`
7
+ *
8
+ * @category location
9
+ */
10
+ function navigateToHash(hash) {
11
+ if (hash === void 0) { hash = ""; }
12
+ var pathname = location.pathname, search = location.search;
13
+ history.replaceState(null, "", pathname + (search ? "?" + search : "") + "#" + hash);
14
+ }
15
+ exports.navigateToHash = navigateToHash;
16
+ exports.default = navigateToHash;
@@ -1,8 +1,9 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.navigateToHashParams = void 0;
4
- var buildUrlQueryString_1 = require("./buildUrlQueryString");
5
- var getUrlHashPathname_1 = require("./getUrlHashPathname");
4
+ var tslib_1 = require("tslib");
5
+ var buildUrlQueryString_1 = tslib_1.__importDefault(require("./buildUrlQueryString"));
6
+ var getUrlHashPathname_1 = tslib_1.__importDefault(require("./getUrlHashPathname"));
6
7
  /**
7
8
  * It updates the `location.hash` with the given query params, it uses `location.hash`
8
9
  * if a second argument `hash` is not provded
@@ -1,9 +1,10 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.navigateToMergedHashParams = void 0;
4
- var getUrlHashParams_1 = require("./getUrlHashParams");
5
- var mergeUrlQueryParams_1 = require("./mergeUrlQueryParams");
6
- var navigateToHashParams_1 = require("./navigateToHashParams");
4
+ var tslib_1 = require("tslib");
5
+ var getUrlHashParams_1 = tslib_1.__importDefault(require("./getUrlHashParams"));
6
+ var mergeUrlQueryParams_1 = tslib_1.__importDefault(require("./mergeUrlQueryParams"));
7
+ var navigateToHashParams_1 = tslib_1.__importDefault(require("./navigateToHashParams"));
7
8
  /**
8
9
  * It updates the "query params" within the `location.hash`, it uses `location`
9
10
  *
@@ -1,9 +1,10 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.navigateToMergedParams = void 0;
4
- var getUrlQueryParams_1 = require("./getUrlQueryParams");
5
- var mergeUrlQueryParams_1 = require("./mergeUrlQueryParams");
6
- var navigateToParams_1 = require("./navigateToParams");
4
+ var tslib_1 = require("tslib");
5
+ var getUrlQueryParams_1 = tslib_1.__importDefault(require("./getUrlQueryParams"));
6
+ var mergeUrlQueryParams_1 = tslib_1.__importDefault(require("./mergeUrlQueryParams"));
7
+ var navigateToParams_1 = tslib_1.__importDefault(require("./navigateToParams"));
7
8
  /**
8
9
  * Merge current URL query parameters with the given ones, it uses `history`.
9
10
  *
@@ -1,8 +1,9 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.navigateToParams = void 0;
4
- var buildUrlQueryString_1 = require("./buildUrlQueryString");
5
- var isBrowser_1 = require("./isBrowser");
4
+ var tslib_1 = require("tslib");
5
+ var buildUrlQueryString_1 = tslib_1.__importDefault(require("./buildUrlQueryString"));
6
+ var isBrowser_1 = tslib_1.__importDefault(require("./isBrowser"));
6
7
  /**
7
8
  * Change current URL query parameters, it uses `history`.
8
9
  *
@@ -1,8 +1,9 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.navigateWithoutUrlParam = void 0;
4
- var getUrlQueryParams_1 = require("./getUrlQueryParams");
5
- var navigateToParams_1 = require("./navigateToParams");
4
+ var tslib_1 = require("tslib");
5
+ var getUrlQueryParams_1 = tslib_1.__importDefault(require("./getUrlQueryParams"));
6
+ var navigateToParams_1 = tslib_1.__importDefault(require("./navigateToParams"));
6
7
  /**
7
8
  * Remove URL query parameter, it uses `history`
8
9
  *
@@ -1,7 +1,8 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.normaliseUrl = void 0;
4
- var removeTrailingSlash_1 = require("./removeTrailingSlash");
4
+ var tslib_1 = require("tslib");
5
+ var removeTrailingSlash_1 = tslib_1.__importDefault(require("./removeTrailingSlash"));
5
6
  /**
6
7
  * Normalise URL, it works both for absolute and relative URLs
7
8
  *
@@ -1,7 +1,8 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.normaliseUrlPathname = void 0;
4
- var removeTrailingSlash_1 = require("./removeTrailingSlash");
4
+ var tslib_1 = require("tslib");
5
+ var removeTrailingSlash_1 = tslib_1.__importDefault(require("./removeTrailingSlash"));
5
6
  /**
6
7
  * Normalise URL pathname (relative URL)
7
8
  *
package/node/pageview.js CHANGED
@@ -1,7 +1,8 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.pageview = void 0;
4
- var isUndefined_1 = require("./isUndefined");
4
+ var tslib_1 = require("tslib");
5
+ var isUndefined_1 = tslib_1.__importDefault(require("./isUndefined"));
5
6
  /**
6
7
  * @category analytics-google
7
8
  */
@@ -1,8 +1,9 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.redirectTo = void 0;
4
- var buildUrlQueryString_1 = require("./buildUrlQueryString");
5
- var isBrowser_1 = require("./isBrowser");
4
+ var tslib_1 = require("tslib");
5
+ var buildUrlQueryString_1 = tslib_1.__importDefault(require("./buildUrlQueryString"));
6
+ var isBrowser_1 = tslib_1.__importDefault(require("./isBrowser"));
6
7
  /**
7
8
  * Redirect to url with params {optionally}, removes eventual trailing question
8
9
  * marks from the given URL, it uses `location`
@@ -1,8 +1,9 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.removeUrlQueryParams = void 0;
4
- var buildUrlQueryString_1 = require("./buildUrlQueryString");
5
- var getUrlQueryParams_1 = require("./getUrlQueryParams");
4
+ var tslib_1 = require("tslib");
5
+ var buildUrlQueryString_1 = tslib_1.__importDefault(require("./buildUrlQueryString"));
6
+ var getUrlQueryParams_1 = tslib_1.__importDefault(require("./getUrlQueryParams"));
6
7
  /**
7
8
  * Remove the given keys from the given URL query parameters
8
9
  *
package/node/setCookie.js CHANGED
@@ -3,8 +3,8 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.setCookie = void 0;
4
4
  var tslib_1 = require("tslib");
5
5
  var cookie_1 = require("./cookie");
6
- var isNumber_1 = require("./isNumber");
7
- var isUndefined_1 = require("./isUndefined");
6
+ var isNumber_1 = tslib_1.__importDefault(require("./isNumber"));
7
+ var isUndefined_1 = tslib_1.__importDefault(require("./isUndefined"));
8
8
  function converterWrite(value) {
9
9
  return encodeURIComponent(value).replace(/%(2[346BF]|3[AC-F]|40|5[BDE]|60|7[BCD])/g, decodeURIComponent);
10
10
  }
@@ -0,0 +1,30 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.throttle = void 0;
4
+ var tslib_1 = require("tslib");
5
+ /**
6
+ * Throttle function (e.g. for resize / scroll handlers)
7
+ *
8
+ * @category function
9
+ * @see https://github.com/Mobius1/Rangeable/
10
+ */
11
+ function throttle(fn, limit, context) {
12
+ var wait;
13
+ return function () {
14
+ var args = [];
15
+ for (var _i = 0; _i < arguments.length; _i++) {
16
+ args[_i] = arguments[_i];
17
+ }
18
+ context = context || this;
19
+ if (!wait) {
20
+ fn.apply.apply(fn, tslib_1.__spreadArray([context], args, false));
21
+ wait = true;
22
+ return setTimeout(function () {
23
+ wait = false;
24
+ }, limit);
25
+ }
26
+ return;
27
+ };
28
+ }
29
+ exports.throttle = throttle;
30
+ exports.default = throttle;
@@ -1,7 +1,8 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.transformToUrlPathname = void 0;
4
- var isString_1 = require("./isString");
4
+ var tslib_1 = require("tslib");
5
+ var isString_1 = tslib_1.__importDefault(require("./isString"));
5
6
  /**
6
7
  * Transform string in a URL pathname (relative URL)
7
8
  *
@@ -1,7 +1,8 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.updateLinkParams = void 0;
4
- var updateUrlQueryParams_1 = require("./updateUrlQueryParams");
4
+ var tslib_1 = require("tslib");
5
+ var updateUrlQueryParams_1 = tslib_1.__importDefault(require("./updateUrlQueryParams"));
5
6
  /**
6
7
  * Update link `<a href="">` merging the given new query parameters.
7
8
  * it returns the newly created `href` URL value
@@ -1,9 +1,10 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.updateUrlQueryParams = void 0;
4
- var buildUrlQueryString_1 = require("./buildUrlQueryString");
5
- var getUrlQueryParams_1 = require("./getUrlQueryParams");
6
- var mergeUrlQueryParams_1 = require("./mergeUrlQueryParams");
4
+ var tslib_1 = require("tslib");
5
+ var buildUrlQueryString_1 = tslib_1.__importDefault(require("./buildUrlQueryString"));
6
+ var getUrlQueryParams_1 = tslib_1.__importDefault(require("./getUrlQueryParams"));
7
+ var mergeUrlQueryParams_1 = tslib_1.__importDefault(require("./mergeUrlQueryParams"));
7
8
  /**
8
9
  * Update a URL string query parameters merging the given new query parameters
9
10
  *
package/package.json CHANGED
@@ -3,12 +3,13 @@
3
3
  "sideEffects": false,
4
4
  "main": "./node/index.js",
5
5
  "typings": "./index.d.ts",
6
- "dependencies": {},
7
- "peerDependencies": {
6
+ "dependencies": {
7
+ "ts-debounce": "^4.0.0",
8
8
  "date-fns-tz": "^1.3.7",
9
9
  "tslib": "^2.4.0"
10
10
  },
11
- "version": "1.0.77",
11
+ "peerDependencies": {},
12
+ "version": "1.0.80",
12
13
  "module": "./index.js",
13
14
  "types": "./index.d.ts"
14
15
  }
package/throttle.d.ts ADDED
@@ -0,0 +1,8 @@
1
+ /**
2
+ * Throttle function (e.g. for resize / scroll handlers)
3
+ *
4
+ * @category function
5
+ * @see https://github.com/Mobius1/Rangeable/
6
+ */
7
+ export declare function throttle<TFn extends Function, TContext>(fn: TFn, limit: number, context?: TContext): (this: TContext, ...args: any[]) => NodeJS.Timeout | undefined;
8
+ export default throttle;
package/throttle.js ADDED
@@ -0,0 +1,26 @@
1
+ import { __spreadArray } from "tslib";
2
+ /**
3
+ * Throttle function (e.g. for resize / scroll handlers)
4
+ *
5
+ * @category function
6
+ * @see https://github.com/Mobius1/Rangeable/
7
+ */
8
+ export function throttle(fn, limit, context) {
9
+ var wait;
10
+ return function () {
11
+ var args = [];
12
+ for (var _i = 0; _i < arguments.length; _i++) {
13
+ args[_i] = arguments[_i];
14
+ }
15
+ context = context || this;
16
+ if (!wait) {
17
+ fn.apply.apply(fn, __spreadArray([context], args, false));
18
+ wait = true;
19
+ return setTimeout(function () {
20
+ wait = false;
21
+ }, limit);
22
+ }
23
+ return;
24
+ };
25
+ }
26
+ export default throttle;
@@ -1,15 +0,0 @@
1
- /**
2
- * Whitelist an object properties by selecting only the given keys, it returns a
3
- * new object.
4
- *
5
- * @category objects
6
- */
7
- export function whitelistObject(object, keys) {
8
- var output = {};
9
- var len = keys.length;
10
- while (len--) {
11
- output[keys[len]] = object[keys[len]];
12
- }
13
- return output;
14
- }
15
- export default whitelistObject;