@koine/browser 2.0.0-beta.10 → 2.0.0-beta.12
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/package.json +4 -4
- package/createStorage.js +0 -147
- package/getZonedDate.js +0 -37
- package/gtagPageview.js +0 -41
- package/index.js +0 -72
- package/isIE.js +0 -31
- package/isMobile.js +0 -29
- package/navigateToHash.js +0 -25
- package/navigateToHashParams.js +0 -33
- package/navigateToMergedHashParams.js +0 -26
- package/navigateToMergedParams.js +0 -26
- package/navigateToParams.js +0 -30
- package/navigateToUrl.js +0 -28
- package/navigateWithoutUrlParam.js +0 -32
- package/redirectTo.js +0 -28
- package/storage.js +0 -25
- package/storageClient.js +0 -112
package/package.json
CHANGED
|
@@ -2,15 +2,15 @@
|
|
|
2
2
|
"name": "@koine/browser",
|
|
3
3
|
"sideEffects": false,
|
|
4
4
|
"dependencies": {
|
|
5
|
-
"@koine/dom": "2.0.0-beta.
|
|
6
|
-
"@koine/utils": "2.0.0-beta.
|
|
5
|
+
"@koine/dom": "2.0.0-beta.12",
|
|
6
|
+
"@koine/utils": "2.0.0-beta.12"
|
|
7
7
|
},
|
|
8
8
|
"module": "./index.mjs",
|
|
9
9
|
"main": "./index.js",
|
|
10
10
|
"types": "./index.d.ts",
|
|
11
11
|
"peerDependencies": {
|
|
12
12
|
"date-fns-tz": "^2.0.0",
|
|
13
|
-
"type-fest": "^
|
|
13
|
+
"type-fest": "^4.1.0"
|
|
14
14
|
},
|
|
15
|
-
"version": "2.0.0-beta.
|
|
15
|
+
"version": "2.0.0-beta.12"
|
|
16
16
|
}
|
package/createStorage.js
DELETED
|
@@ -1,147 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", {
|
|
3
|
-
value: true
|
|
4
|
-
});
|
|
5
|
-
function _export(target, all) {
|
|
6
|
-
for(var name in all)Object.defineProperty(target, name, {
|
|
7
|
-
enumerable: true,
|
|
8
|
-
get: all[name]
|
|
9
|
-
});
|
|
10
|
-
}
|
|
11
|
-
_export(exports, {
|
|
12
|
-
createStorage: function() {
|
|
13
|
-
return createStorage;
|
|
14
|
-
},
|
|
15
|
-
default: function() {
|
|
16
|
-
return _default;
|
|
17
|
-
}
|
|
18
|
-
});
|
|
19
|
-
const _interop_require_default = require("@swc/helpers/_/_interop_require_default");
|
|
20
|
-
const _decode = /*#__PURE__*/ _interop_require_default._(require("@koine/utils/decode"));
|
|
21
|
-
const _encode = /*#__PURE__*/ _interop_require_default._(require("@koine/utils/encode"));
|
|
22
|
-
const _isBrowser = /*#__PURE__*/ _interop_require_default._(require("@koine/utils/isBrowser"));
|
|
23
|
-
const _isNullOrUndefined = /*#__PURE__*/ _interop_require_default._(require("@koine/utils/isNullOrUndefined"));
|
|
24
|
-
const _noop = /*#__PURE__*/ _interop_require_default._(require("@koine/utils/noop"));
|
|
25
|
-
const _on = /*#__PURE__*/ _interop_require_default._(require("@koine/dom/on"));
|
|
26
|
-
const _storage = /*#__PURE__*/ _interop_require_default._(require("./storage"));
|
|
27
|
-
const createStorage = (config, useSessionStorage)=>{
|
|
28
|
-
const client = useSessionStorage ? _storage.default.s : _storage.default.l;
|
|
29
|
-
const keys = Object.keys(config).reduce((map, key)=>({
|
|
30
|
-
...map,
|
|
31
|
-
[key]: (0, _encode.default)(key)
|
|
32
|
-
}), {});
|
|
33
|
-
return {
|
|
34
|
-
/**
|
|
35
|
-
* Get all storage value (it uses `localStorage.get()`).
|
|
36
|
-
*
|
|
37
|
-
* Unparseable values with `JSON.parse()` return their value as it is.
|
|
38
|
-
* On ssr or if the given `key` argument is not found `defaultValue` is
|
|
39
|
-
* returned, otherwise `null`.
|
|
40
|
-
*/ get (key, defaultValue) {
|
|
41
|
-
return client.get(keys[key], _decode.default, defaultValue);
|
|
42
|
-
},
|
|
43
|
-
/**
|
|
44
|
-
* Get all storage values (it uses `localStorage.get()`).
|
|
45
|
-
*
|
|
46
|
-
* `undefined` and `null` values are not returned.
|
|
47
|
-
*/ getAll (defaultValues) {
|
|
48
|
-
if (!_isBrowser.default) {
|
|
49
|
-
if (process.env["NODE_ENV"] !== "production") {
|
|
50
|
-
console.log(`[@koine/utils:createStorage] attempt to use 'getAll' outside of browser.`);
|
|
51
|
-
}
|
|
52
|
-
return {};
|
|
53
|
-
}
|
|
54
|
-
const all = {};
|
|
55
|
-
for(const key in keys){
|
|
56
|
-
const value = this.get(key);
|
|
57
|
-
const defaultValue = defaultValues?.[key];
|
|
58
|
-
if (!(0, _isNullOrUndefined.default)(value)) {
|
|
59
|
-
all[key] = value;
|
|
60
|
-
} else if (defaultValue) {
|
|
61
|
-
// NOTE: without the assertion typedoc does not compile
|
|
62
|
-
all[key] = defaultValue;
|
|
63
|
-
}
|
|
64
|
-
}
|
|
65
|
-
return all;
|
|
66
|
-
},
|
|
67
|
-
/**
|
|
68
|
-
* Set a storage value (it uses `localStorage.set()`).
|
|
69
|
-
*
|
|
70
|
-
* Non-string values are stringified with `JSON.stringify()`
|
|
71
|
-
*/ set (key, value) {
|
|
72
|
-
client.set(keys[key], value, _encode.default);
|
|
73
|
-
},
|
|
74
|
-
/**
|
|
75
|
-
* Set all given storage values (it uses `localStorage.set()`).
|
|
76
|
-
*
|
|
77
|
-
* Non-string values are stringified with `JSON.stringify()`, `undefined`
|
|
78
|
-
* and `null` values are removed from the storage
|
|
79
|
-
*/ setMany (newValues) {
|
|
80
|
-
if (process.env["NODE_ENV"] !== "production") {
|
|
81
|
-
if (!_isBrowser.default) {
|
|
82
|
-
console.log(`[@koine/utils:createStorage] attempt to use 'setMany' outside of browser.`);
|
|
83
|
-
}
|
|
84
|
-
}
|
|
85
|
-
if (_isBrowser.default) {
|
|
86
|
-
for(const key in newValues){
|
|
87
|
-
const value = newValues[key];
|
|
88
|
-
if (!(0, _isNullOrUndefined.default)(value)) {
|
|
89
|
-
this.set(key, value);
|
|
90
|
-
} else {
|
|
91
|
-
this.remove(key);
|
|
92
|
-
}
|
|
93
|
-
}
|
|
94
|
-
}
|
|
95
|
-
},
|
|
96
|
-
/**
|
|
97
|
-
* Check if a storage value is _truthy_ (it uses `localStorage.get()`).
|
|
98
|
-
*/ has (key) {
|
|
99
|
-
return client.has(keys[key]);
|
|
100
|
-
},
|
|
101
|
-
/**
|
|
102
|
-
* Remove a storage value (it uses `localStorage.remove()`).
|
|
103
|
-
*/ remove (key) {
|
|
104
|
-
client.remove(keys[key]);
|
|
105
|
-
},
|
|
106
|
-
/**
|
|
107
|
-
* Clear all storage values (it uses `localStorage.remove()`).
|
|
108
|
-
*/ clear () {
|
|
109
|
-
if (process.env["NODE_ENV"] !== "production") {
|
|
110
|
-
if (!_isBrowser.default) {
|
|
111
|
-
console.log(`[@koine/utils:createStorage] attempt to use 'clear' outside of browser.`);
|
|
112
|
-
}
|
|
113
|
-
}
|
|
114
|
-
if (_isBrowser.default) {
|
|
115
|
-
for(const key in keys){
|
|
116
|
-
client.remove(keys[key]);
|
|
117
|
-
}
|
|
118
|
-
}
|
|
119
|
-
},
|
|
120
|
-
/**
|
|
121
|
-
* Watch a storage value changes, this needs to be executed only in browser
|
|
122
|
-
* context (it uses `window.addEventListener("storage")`).
|
|
123
|
-
*
|
|
124
|
-
* Inspiration from [Multi Tab Logout in React — Redux](https://medium.com/front-end-weekly/multi-tab-logout-in-react-redux-4715f071c7fa)
|
|
125
|
-
*/ watch: (keyToWatch, onRemoved, onAdded)=>{
|
|
126
|
-
if (!_isBrowser.default) {
|
|
127
|
-
if (process.env["NODE_ENV"] !== "production") {
|
|
128
|
-
console.log(`[@koine/utils:createStorage] attempt to use 'watch' outside of browser.`);
|
|
129
|
-
}
|
|
130
|
-
return _noop.default;
|
|
131
|
-
}
|
|
132
|
-
const handler = (event)=>{
|
|
133
|
-
const { key, oldValue, newValue } = event;
|
|
134
|
-
if (key === keys[keyToWatch]) {
|
|
135
|
-
if (oldValue && !newValue) {
|
|
136
|
-
onRemoved?.();
|
|
137
|
-
} else if (!oldValue && newValue) {
|
|
138
|
-
onAdded?.();
|
|
139
|
-
}
|
|
140
|
-
}
|
|
141
|
-
};
|
|
142
|
-
const listener = (0, _on.default)(window, "storage", handler);
|
|
143
|
-
return listener;
|
|
144
|
-
}
|
|
145
|
-
};
|
|
146
|
-
};
|
|
147
|
-
const _default = createStorage;
|
package/getZonedDate.js
DELETED
|
@@ -1,37 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", {
|
|
3
|
-
value: true
|
|
4
|
-
});
|
|
5
|
-
function _export(target, all) {
|
|
6
|
-
for(var name in all)Object.defineProperty(target, name, {
|
|
7
|
-
enumerable: true,
|
|
8
|
-
get: all[name]
|
|
9
|
-
});
|
|
10
|
-
}
|
|
11
|
-
_export(exports, {
|
|
12
|
-
getZonedDate: function() {
|
|
13
|
-
return getZonedDate;
|
|
14
|
-
},
|
|
15
|
-
default: function() {
|
|
16
|
-
return _default;
|
|
17
|
-
}
|
|
18
|
-
});
|
|
19
|
-
const _interop_require_default = require("@swc/helpers/_/_interop_require_default");
|
|
20
|
-
const _utcToZonedTime = /*#__PURE__*/ _interop_require_default._(require("date-fns-tz/utcToZonedTime"));
|
|
21
|
-
const _isBrowser = /*#__PURE__*/ _interop_require_default._(require("@koine/utils/isBrowser"));
|
|
22
|
-
function getZonedDate(dateString = "", timeZone) {
|
|
23
|
-
if (!dateString.endsWith("Z")) dateString += "Z";
|
|
24
|
-
if (!timeZone && _isBrowser.default) {
|
|
25
|
-
try {
|
|
26
|
-
timeZone = Intl.DateTimeFormat().resolvedOptions().timeZone;
|
|
27
|
-
} catch (e) {
|
|
28
|
-
if (process.env["NODE_ENV"] !== "production") {
|
|
29
|
-
console.warn("[@koine/utils:getZonedDate] failed reading timeZone, error", e);
|
|
30
|
-
}
|
|
31
|
-
// no need to do anything here, it just means `Intl` failed, probably
|
|
32
|
-
// because the browser does not support it
|
|
33
|
-
}
|
|
34
|
-
}
|
|
35
|
-
return timeZone ? (0, _utcToZonedTime.default)(new Date(dateString), timeZone) : new Date(dateString);
|
|
36
|
-
}
|
|
37
|
-
const _default = getZonedDate;
|
package/gtagPageview.js
DELETED
|
@@ -1,41 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", {
|
|
3
|
-
value: true
|
|
4
|
-
});
|
|
5
|
-
function _export(target, all) {
|
|
6
|
-
for(var name in all)Object.defineProperty(target, name, {
|
|
7
|
-
enumerable: true,
|
|
8
|
-
get: all[name]
|
|
9
|
-
});
|
|
10
|
-
}
|
|
11
|
-
_export(exports, {
|
|
12
|
-
gtagPageview: function() {
|
|
13
|
-
return gtagPageview;
|
|
14
|
-
},
|
|
15
|
-
default: function() {
|
|
16
|
-
return _default // export type GtmEventArgs = [
|
|
17
|
-
// eventCategory?: string,
|
|
18
|
-
// eventAction?: string,
|
|
19
|
-
// eventLabel?: string,
|
|
20
|
-
// eventValue?: string
|
|
21
|
-
// ];
|
|
22
|
-
// export const event = (...args: GtmEventArgs) => {
|
|
23
|
-
// if (!isUndefined(window) && !isUndefined(window.gtag)) {
|
|
24
|
-
// window.gtag("send", "event", ...args);
|
|
25
|
-
// }
|
|
26
|
-
// };
|
|
27
|
-
;
|
|
28
|
-
}
|
|
29
|
-
});
|
|
30
|
-
const _interop_require_default = require("@swc/helpers/_/_interop_require_default");
|
|
31
|
-
const _isUndefined = /*#__PURE__*/ _interop_require_default._(require("@koine/utils/isUndefined"));
|
|
32
|
-
const gtagPageview = (...args)=>{
|
|
33
|
-
if (!(0, _isUndefined.default)(window) && !(0, _isUndefined.default)(window.gtag)) {
|
|
34
|
-
window.gtag("event", "page_view", {
|
|
35
|
-
page_path: args[0] || location.pathname,
|
|
36
|
-
page_title: args[1] || document.title,
|
|
37
|
-
page_location: args[2] || location.href
|
|
38
|
-
});
|
|
39
|
-
}
|
|
40
|
-
};
|
|
41
|
-
const _default = gtagPageview;
|
package/index.js
DELETED
|
@@ -1,72 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", {
|
|
3
|
-
value: true
|
|
4
|
-
});
|
|
5
|
-
function _export(target, all) {
|
|
6
|
-
for(var name in all)Object.defineProperty(target, name, {
|
|
7
|
-
enumerable: true,
|
|
8
|
-
get: all[name]
|
|
9
|
-
});
|
|
10
|
-
}
|
|
11
|
-
_export(exports, {
|
|
12
|
-
createStorage: function() {
|
|
13
|
-
return _createStorage.createStorage;
|
|
14
|
-
},
|
|
15
|
-
getZonedDate: function() {
|
|
16
|
-
return _getZonedDate.getZonedDate;
|
|
17
|
-
},
|
|
18
|
-
gtagPageview: function() {
|
|
19
|
-
return _gtagPageview.gtagPageview;
|
|
20
|
-
},
|
|
21
|
-
isIE: function() {
|
|
22
|
-
return _isIE.isIE;
|
|
23
|
-
},
|
|
24
|
-
isMobile: function() {
|
|
25
|
-
return _isMobile.isMobile;
|
|
26
|
-
},
|
|
27
|
-
navigateToHash: function() {
|
|
28
|
-
return _navigateToHash.navigateToHash;
|
|
29
|
-
},
|
|
30
|
-
navigateToHashParams: function() {
|
|
31
|
-
return _navigateToHashParams.navigateToHashParams;
|
|
32
|
-
},
|
|
33
|
-
navigateToMergedHashParams: function() {
|
|
34
|
-
return _navigateToMergedHashParams.navigateToMergedHashParams;
|
|
35
|
-
},
|
|
36
|
-
navigateToMergedParams: function() {
|
|
37
|
-
return _navigateToMergedParams.navigateToMergedParams;
|
|
38
|
-
},
|
|
39
|
-
navigateToParams: function() {
|
|
40
|
-
return _navigateToParams.navigateToParams;
|
|
41
|
-
},
|
|
42
|
-
navigateToUrl: function() {
|
|
43
|
-
return _navigateToUrl.navigateToUrl;
|
|
44
|
-
},
|
|
45
|
-
navigateWithoutUrlParam: function() {
|
|
46
|
-
return _navigateWithoutUrlParam.navigateWithoutUrlParam;
|
|
47
|
-
},
|
|
48
|
-
redirectTo: function() {
|
|
49
|
-
return _redirectTo.redirectTo;
|
|
50
|
-
},
|
|
51
|
-
storage: function() {
|
|
52
|
-
return _storage.storage;
|
|
53
|
-
},
|
|
54
|
-
storageClient: function() {
|
|
55
|
-
return _storageClient.storageClient;
|
|
56
|
-
}
|
|
57
|
-
});
|
|
58
|
-
const _createStorage = require("./createStorage");
|
|
59
|
-
const _getZonedDate = require("./getZonedDate");
|
|
60
|
-
const _gtagPageview = require("./gtagPageview");
|
|
61
|
-
const _isIE = require("./isIE");
|
|
62
|
-
const _isMobile = require("./isMobile");
|
|
63
|
-
const _navigateToHash = require("./navigateToHash");
|
|
64
|
-
const _navigateToHashParams = require("./navigateToHashParams");
|
|
65
|
-
const _navigateToMergedHashParams = require("./navigateToMergedHashParams");
|
|
66
|
-
const _navigateToMergedParams = require("./navigateToMergedParams");
|
|
67
|
-
const _navigateToParams = require("./navigateToParams");
|
|
68
|
-
const _navigateToUrl = require("./navigateToUrl");
|
|
69
|
-
const _navigateWithoutUrlParam = require("./navigateWithoutUrlParam");
|
|
70
|
-
const _redirectTo = require("./redirectTo");
|
|
71
|
-
const _storage = require("./storage");
|
|
72
|
-
const _storageClient = require("./storageClient");
|
package/isIE.js
DELETED
|
@@ -1,31 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", {
|
|
3
|
-
value: true
|
|
4
|
-
});
|
|
5
|
-
function _export(target, all) {
|
|
6
|
-
for(var name in all)Object.defineProperty(target, name, {
|
|
7
|
-
enumerable: true,
|
|
8
|
-
get: all[name]
|
|
9
|
-
});
|
|
10
|
-
}
|
|
11
|
-
_export(exports, {
|
|
12
|
-
isIE: function() {
|
|
13
|
-
return isIE;
|
|
14
|
-
},
|
|
15
|
-
default: function() {
|
|
16
|
-
return _default;
|
|
17
|
-
}
|
|
18
|
-
});
|
|
19
|
-
const _interop_require_default = require("@swc/helpers/_/_interop_require_default");
|
|
20
|
-
const _isServer = /*#__PURE__*/ _interop_require_default._(require("@koine/utils/isServer"));
|
|
21
|
-
function isIE(ssrValue = true) {
|
|
22
|
-
if (_isServer.default) {
|
|
23
|
-
return ssrValue;
|
|
24
|
-
}
|
|
25
|
-
const ua = window.navigator.userAgent;
|
|
26
|
-
if (ua.indexOf("MSIE ") > 0 || ua.indexOf("Trident/") > 0) {
|
|
27
|
-
return true;
|
|
28
|
-
}
|
|
29
|
-
return false;
|
|
30
|
-
}
|
|
31
|
-
const _default = isIE;
|
package/isMobile.js
DELETED
|
@@ -1,29 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", {
|
|
3
|
-
value: true
|
|
4
|
-
});
|
|
5
|
-
function _export(target, all) {
|
|
6
|
-
for(var name in all)Object.defineProperty(target, name, {
|
|
7
|
-
enumerable: true,
|
|
8
|
-
get: all[name]
|
|
9
|
-
});
|
|
10
|
-
}
|
|
11
|
-
_export(exports, {
|
|
12
|
-
isMobile: function() {
|
|
13
|
-
return isMobile;
|
|
14
|
-
},
|
|
15
|
-
default: function() {
|
|
16
|
-
return _default;
|
|
17
|
-
}
|
|
18
|
-
});
|
|
19
|
-
const _interop_require_default = require("@swc/helpers/_/_interop_require_default");
|
|
20
|
-
const _isServer = /*#__PURE__*/ _interop_require_default._(require("@koine/utils/isServer"));
|
|
21
|
-
function isMobile(ssrValue = true) {
|
|
22
|
-
if (_isServer.default) {
|
|
23
|
-
return ssrValue;
|
|
24
|
-
}
|
|
25
|
-
return /Android|webOS|iPhone|iPad|iPod|BlackBerry|IEMobile|Opera Mini/i.test(window.navigator.userAgent);
|
|
26
|
-
// return /(android|bb\d+|meego).+mobile|avantgo|bada\/|blackberry|blazer|compal|elaine|fennec|hiptop|iemobile|ip(hone|od)|ipad|iris|kindle|Android|Silk|lge |maemo|midp|mmp|netfront|opera m(ob|in)i|palm( os)?|phone|p(ixi|re)\/|plucker|pocket|psp|series(4|6)0|symbian|treo|up\.(browser|link)|vodafone|wap|windows (ce|phone)|xda|xiino/i.test(navigator.userAgent)
|
|
27
|
-
// || /1207|6310|6590|3gso|4thp|50[1-6]i|770s|802s|a wa|abac|ac(er|oo|s\-)|ai(ko|rn)|al(av|ca|co)|amoi|an(ex|ny|yw)|aptu|ar(ch|go)|as(te|us)|attw|au(di|\-m|r |s )|avan|be(ck|ll|nq)|bi(lb|rd)|bl(ac|az)|br(e|v)w|bumb|bw\-(n|u)|c55\/|capi|ccwa|cdm\-|cell|chtm|cldc|cmd\-|co(mp|nd)|craw|da(it|ll|ng)|dbte|dc\-s|devi|dica|dmob|do(c|p)o|ds(12|\-d)|el(49|ai)|em(l2|ul)|er(ic|k0)|esl8|ez([4-7]0|os|wa|ze)|fetc|fly(\-|_)|g1 u|g560|gene|gf\-5|g\-mo|go(\.w|od)|gr(ad|un)|haie|hcit|hd\-(m|p|t)|hei\-|hi(pt|ta)|hp( i|ip)|hs\-c|ht(c(\-| |_|a|g|p|s|t)|tp)|hu(aw|tc)|i\-(20|go|ma)|i230|iac( |\-|\/)|ibro|idea|ig01|ikom|im1k|inno|ipaq|iris|ja(t|v)a|jbro|jemu|jigs|kddi|keji|kgt( |\/)|klon|kpt |kwc\-|kyo(c|k)|le(no|xi)|lg( g|\/(k|l|u)|50|54|\-[a-w])|libw|lynx|m1\-w|m3ga|m50\/|ma(te|ui|xo)|mc(01|21|ca)|m\-cr|me(rc|ri)|mi(o8|oa|ts)|mmef|mo(01|02|bi|de|do|t(\-| |o|v)|zz)|mt(50|p1|v )|mwbp|mywa|n10[0-2]|n20[2-3]|n30(0|2)|n50(0|2|5)|n7(0(0|1)|10)|ne((c|m)\-|on|tf|wf|wg|wt)|nok(6|i)|nzph|o2im|op(ti|wv)|oran|owg1|p800|pan(a|d|t)|pdxg|pg(13|\-([1-8]|c))|phil|pire|pl(ay|uc)|pn\-2|po(ck|rt|se)|prox|psio|pt\-g|qa\-a|qc(07|12|21|32|60|\-[2-7]|i\-)|qtek|r380|r600|raks|rim9|ro(ve|zo)|s55\/|sa(ge|ma|mm|ms|ny|va)|sc(01|h\-|oo|p\-)|sdk\/|se(c(\-|0|1)|47|mc|nd|ri)|sgh\-|shar|sie(\-|m)|sk\-0|sl(45|id)|sm(al|ar|b3|it|t5)|so(ft|ny)|sp(01|h\-|v\-|v )|sy(01|mb)|t2(18|50)|t6(00|10|18)|ta(gt|lk)|tcl\-|tdg\-|tel(i|m)|tim\-|t\-mo|to(pl|sh)|ts(70|m\-|m3|m5)|tx\-9|up(\.b|g1|si)|utst|v400|v750|veri|vi(rg|te)|vk(40|5[0-3]|\-v)|vm40|voda|vulc|vx(52|53|60|61|70|80|81|83|85|98)|w3c(\-| )|webc|whit|wi(g |nc|nw)|wmlb|wonu|x700|yas\-|your|zeto|zte\-/i.test(navigator.userAgent.substr(0,4)
|
|
28
|
-
}
|
|
29
|
-
const _default = isMobile;
|
package/navigateToHash.js
DELETED
|
@@ -1,25 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", {
|
|
3
|
-
value: true
|
|
4
|
-
});
|
|
5
|
-
function _export(target, all) {
|
|
6
|
-
for(var name in all)Object.defineProperty(target, name, {
|
|
7
|
-
enumerable: true,
|
|
8
|
-
get: all[name]
|
|
9
|
-
});
|
|
10
|
-
}
|
|
11
|
-
_export(exports, {
|
|
12
|
-
navigateToHash: function() {
|
|
13
|
-
return navigateToHash;
|
|
14
|
-
},
|
|
15
|
-
default: function() {
|
|
16
|
-
return _default;
|
|
17
|
-
}
|
|
18
|
-
});
|
|
19
|
-
const _interop_require_default = require("@swc/helpers/_/_interop_require_default");
|
|
20
|
-
const _navigateToUrl = /*#__PURE__*/ _interop_require_default._(require("./navigateToUrl"));
|
|
21
|
-
function navigateToHash(hash = "") {
|
|
22
|
-
const { pathname, search } = location;
|
|
23
|
-
(0, _navigateToUrl.default)(pathname + (search ? "?" + search : "") + (hash ? "#" + hash : ""), true);
|
|
24
|
-
}
|
|
25
|
-
const _default = navigateToHash;
|
package/navigateToHashParams.js
DELETED
|
@@ -1,33 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", {
|
|
3
|
-
value: true
|
|
4
|
-
});
|
|
5
|
-
function _export(target, all) {
|
|
6
|
-
for(var name in all)Object.defineProperty(target, name, {
|
|
7
|
-
enumerable: true,
|
|
8
|
-
get: all[name]
|
|
9
|
-
});
|
|
10
|
-
}
|
|
11
|
-
_export(exports, {
|
|
12
|
-
navigateToHashParams: function() {
|
|
13
|
-
return navigateToHashParams;
|
|
14
|
-
},
|
|
15
|
-
default: function() {
|
|
16
|
-
return _default;
|
|
17
|
-
}
|
|
18
|
-
});
|
|
19
|
-
const _interop_require_default = require("@swc/helpers/_/_interop_require_default");
|
|
20
|
-
const _buildUrlQueryString = /*#__PURE__*/ _interop_require_default._(require("@koine/utils/buildUrlQueryString"));
|
|
21
|
-
const _getUrlHashPathname = /*#__PURE__*/ _interop_require_default._(require("@koine/utils/getUrlHashPathname"));
|
|
22
|
-
function navigateToHashParams(params = {}, hash = "") {
|
|
23
|
-
const useLocation = !hash;
|
|
24
|
-
hash = hash || location.hash;
|
|
25
|
-
const hashQueryLess = (0, _getUrlHashPathname.default)(hash);
|
|
26
|
-
const queryString = typeof params === "string" ? params : (0, _buildUrlQueryString.default)(params);
|
|
27
|
-
const newHash = "#/" + hashQueryLess + queryString;
|
|
28
|
-
if (useLocation) {
|
|
29
|
-
location.hash = newHash;
|
|
30
|
-
}
|
|
31
|
-
return newHash;
|
|
32
|
-
}
|
|
33
|
-
const _default = navigateToHashParams;
|
|
@@ -1,26 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", {
|
|
3
|
-
value: true
|
|
4
|
-
});
|
|
5
|
-
function _export(target, all) {
|
|
6
|
-
for(var name in all)Object.defineProperty(target, name, {
|
|
7
|
-
enumerable: true,
|
|
8
|
-
get: all[name]
|
|
9
|
-
});
|
|
10
|
-
}
|
|
11
|
-
_export(exports, {
|
|
12
|
-
navigateToMergedHashParams: function() {
|
|
13
|
-
return navigateToMergedHashParams;
|
|
14
|
-
},
|
|
15
|
-
default: function() {
|
|
16
|
-
return _default;
|
|
17
|
-
}
|
|
18
|
-
});
|
|
19
|
-
const _interop_require_default = require("@swc/helpers/_/_interop_require_default");
|
|
20
|
-
const _getUrlHashParams = /*#__PURE__*/ _interop_require_default._(require("@koine/utils/getUrlHashParams"));
|
|
21
|
-
const _mergeUrlQueryParams = /*#__PURE__*/ _interop_require_default._(require("@koine/utils/mergeUrlQueryParams"));
|
|
22
|
-
const _navigateToHashParams = require("./navigateToHashParams");
|
|
23
|
-
function navigateToMergedHashParams(params = {}, hash = "") {
|
|
24
|
-
return (0, _navigateToHashParams.navigateToHashParams)((0, _mergeUrlQueryParams.default)((0, _getUrlHashParams.default)(hash), params), hash);
|
|
25
|
-
}
|
|
26
|
-
const _default = navigateToMergedHashParams;
|
|
@@ -1,26 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", {
|
|
3
|
-
value: true
|
|
4
|
-
});
|
|
5
|
-
function _export(target, all) {
|
|
6
|
-
for(var name in all)Object.defineProperty(target, name, {
|
|
7
|
-
enumerable: true,
|
|
8
|
-
get: all[name]
|
|
9
|
-
});
|
|
10
|
-
}
|
|
11
|
-
_export(exports, {
|
|
12
|
-
navigateToMergedParams: function() {
|
|
13
|
-
return navigateToMergedParams;
|
|
14
|
-
},
|
|
15
|
-
default: function() {
|
|
16
|
-
return _default;
|
|
17
|
-
}
|
|
18
|
-
});
|
|
19
|
-
const _interop_require_default = require("@swc/helpers/_/_interop_require_default");
|
|
20
|
-
const _getUrlQueryParams = /*#__PURE__*/ _interop_require_default._(require("@koine/utils/getUrlQueryParams"));
|
|
21
|
-
const _mergeUrlQueryParams = /*#__PURE__*/ _interop_require_default._(require("@koine/utils/mergeUrlQueryParams"));
|
|
22
|
-
const _navigateToParams = require("./navigateToParams");
|
|
23
|
-
function navigateToMergedParams(params = {}, replace) {
|
|
24
|
-
return (0, _navigateToParams.navigateToParams)((0, _mergeUrlQueryParams.default)((0, _getUrlQueryParams.default)(), params), replace);
|
|
25
|
-
}
|
|
26
|
-
const _default = navigateToMergedParams;
|
package/navigateToParams.js
DELETED
|
@@ -1,30 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", {
|
|
3
|
-
value: true
|
|
4
|
-
});
|
|
5
|
-
function _export(target, all) {
|
|
6
|
-
for(var name in all)Object.defineProperty(target, name, {
|
|
7
|
-
enumerable: true,
|
|
8
|
-
get: all[name]
|
|
9
|
-
});
|
|
10
|
-
}
|
|
11
|
-
_export(exports, {
|
|
12
|
-
navigateToParams: function() {
|
|
13
|
-
return navigateToParams;
|
|
14
|
-
},
|
|
15
|
-
default: function() {
|
|
16
|
-
return _default;
|
|
17
|
-
}
|
|
18
|
-
});
|
|
19
|
-
const _interop_require_default = require("@swc/helpers/_/_interop_require_default");
|
|
20
|
-
const _buildUrlQueryString = /*#__PURE__*/ _interop_require_default._(require("@koine/utils/buildUrlQueryString"));
|
|
21
|
-
const _isBrowser = /*#__PURE__*/ _interop_require_default._(require("@koine/utils/isBrowser"));
|
|
22
|
-
const _navigateToUrl = /*#__PURE__*/ _interop_require_default._(require("./navigateToUrl"));
|
|
23
|
-
function navigateToParams(params = {}, replace) {
|
|
24
|
-
const queryString = typeof params === "string" ? params : (0, _buildUrlQueryString.default)(params);
|
|
25
|
-
if (_isBrowser.default) {
|
|
26
|
-
(0, _navigateToUrl.default)(location.pathname + queryString, replace);
|
|
27
|
-
}
|
|
28
|
-
return queryString;
|
|
29
|
-
}
|
|
30
|
-
const _default = navigateToParams;
|
package/navigateToUrl.js
DELETED
|
@@ -1,28 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* It updates the browser's location URL with global `history` object
|
|
3
|
-
*
|
|
4
|
-
* @category location
|
|
5
|
-
*/ "use strict";
|
|
6
|
-
Object.defineProperty(exports, "__esModule", {
|
|
7
|
-
value: true
|
|
8
|
-
});
|
|
9
|
-
function _export(target, all) {
|
|
10
|
-
for(var name in all)Object.defineProperty(target, name, {
|
|
11
|
-
enumerable: true,
|
|
12
|
-
get: all[name]
|
|
13
|
-
});
|
|
14
|
-
}
|
|
15
|
-
_export(exports, {
|
|
16
|
-
navigateToUrl: function() {
|
|
17
|
-
return navigateToUrl;
|
|
18
|
-
},
|
|
19
|
-
default: function() {
|
|
20
|
-
return _default;
|
|
21
|
-
}
|
|
22
|
-
});
|
|
23
|
-
function navigateToUrl(url = "", replace) {
|
|
24
|
-
if (url) {
|
|
25
|
-
history[replace ? "replaceState" : "pushState"](history.state, "", url);
|
|
26
|
-
}
|
|
27
|
-
}
|
|
28
|
-
const _default = navigateToUrl;
|
|
@@ -1,32 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", {
|
|
3
|
-
value: true
|
|
4
|
-
});
|
|
5
|
-
function _export(target, all) {
|
|
6
|
-
for(var name in all)Object.defineProperty(target, name, {
|
|
7
|
-
enumerable: true,
|
|
8
|
-
get: all[name]
|
|
9
|
-
});
|
|
10
|
-
}
|
|
11
|
-
_export(exports, {
|
|
12
|
-
navigateWithoutUrlParam: function() {
|
|
13
|
-
return navigateWithoutUrlParam;
|
|
14
|
-
},
|
|
15
|
-
default: function() {
|
|
16
|
-
return _default;
|
|
17
|
-
}
|
|
18
|
-
});
|
|
19
|
-
const _interop_require_default = require("@swc/helpers/_/_interop_require_default");
|
|
20
|
-
const _getUrlQueryParams = /*#__PURE__*/ _interop_require_default._(require("@koine/utils/getUrlQueryParams"));
|
|
21
|
-
const _navigateToParams = /*#__PURE__*/ _interop_require_default._(require("./navigateToParams"));
|
|
22
|
-
function navigateWithoutUrlParam(paramName, replace) {
|
|
23
|
-
const params = {};
|
|
24
|
-
const currentParams = (0, _getUrlQueryParams.default)();
|
|
25
|
-
for(const key in currentParams){
|
|
26
|
-
if (key !== paramName) {
|
|
27
|
-
params[key] = currentParams[key];
|
|
28
|
-
}
|
|
29
|
-
}
|
|
30
|
-
return (0, _navigateToParams.default)(params, replace);
|
|
31
|
-
}
|
|
32
|
-
const _default = navigateWithoutUrlParam;
|
package/redirectTo.js
DELETED
|
@@ -1,28 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", {
|
|
3
|
-
value: true
|
|
4
|
-
});
|
|
5
|
-
function _export(target, all) {
|
|
6
|
-
for(var name in all)Object.defineProperty(target, name, {
|
|
7
|
-
enumerable: true,
|
|
8
|
-
get: all[name]
|
|
9
|
-
});
|
|
10
|
-
}
|
|
11
|
-
_export(exports, {
|
|
12
|
-
redirectTo: function() {
|
|
13
|
-
return redirectTo;
|
|
14
|
-
},
|
|
15
|
-
default: function() {
|
|
16
|
-
return _default;
|
|
17
|
-
}
|
|
18
|
-
});
|
|
19
|
-
const _interop_require_default = require("@swc/helpers/_/_interop_require_default");
|
|
20
|
-
const _buildUrlQueryString = /*#__PURE__*/ _interop_require_default._(require("@koine/utils/buildUrlQueryString"));
|
|
21
|
-
const _isBrowser = /*#__PURE__*/ _interop_require_default._(require("@koine/utils/isBrowser"));
|
|
22
|
-
function redirectTo(url, params) {
|
|
23
|
-
if (_isBrowser.default) {
|
|
24
|
-
const queryString = (0, _buildUrlQueryString.default)(params);
|
|
25
|
-
location.href = url.replace(/\?+$/g, "") + queryString;
|
|
26
|
-
}
|
|
27
|
-
}
|
|
28
|
-
const _default = redirectTo;
|
package/storage.js
DELETED
|
@@ -1,25 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", {
|
|
3
|
-
value: true
|
|
4
|
-
});
|
|
5
|
-
function _export(target, all) {
|
|
6
|
-
for(var name in all)Object.defineProperty(target, name, {
|
|
7
|
-
enumerable: true,
|
|
8
|
-
get: all[name]
|
|
9
|
-
});
|
|
10
|
-
}
|
|
11
|
-
_export(exports, {
|
|
12
|
-
storage: function() {
|
|
13
|
-
return storage;
|
|
14
|
-
},
|
|
15
|
-
default: function() {
|
|
16
|
-
return _default;
|
|
17
|
-
}
|
|
18
|
-
});
|
|
19
|
-
const _interop_require_default = require("@swc/helpers/_/_interop_require_default");
|
|
20
|
-
const _storageClient = /*#__PURE__*/ _interop_require_default._(require("./storageClient"));
|
|
21
|
-
const storage = {
|
|
22
|
-
l: (0, _storageClient.default)(),
|
|
23
|
-
s: (0, _storageClient.default)(true)
|
|
24
|
-
};
|
|
25
|
-
const _default = storage;
|
package/storageClient.js
DELETED
|
@@ -1,112 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", {
|
|
3
|
-
value: true
|
|
4
|
-
});
|
|
5
|
-
function _export(target, all) {
|
|
6
|
-
for(var name in all)Object.defineProperty(target, name, {
|
|
7
|
-
enumerable: true,
|
|
8
|
-
get: all[name]
|
|
9
|
-
});
|
|
10
|
-
}
|
|
11
|
-
_export(exports, {
|
|
12
|
-
storageClient: function() {
|
|
13
|
-
return storageClient;
|
|
14
|
-
},
|
|
15
|
-
default: function() {
|
|
16
|
-
return _default;
|
|
17
|
-
}
|
|
18
|
-
});
|
|
19
|
-
const _interop_require_default = require("@swc/helpers/_/_interop_require_default");
|
|
20
|
-
const _isBrowser = /*#__PURE__*/ _interop_require_default._(require("@koine/utils/isBrowser"));
|
|
21
|
-
const _isString = /*#__PURE__*/ _interop_require_default._(require("@koine/utils/isString"));
|
|
22
|
-
const methodsMap = {
|
|
23
|
-
g: "getItem",
|
|
24
|
-
s: "setItem",
|
|
25
|
-
r: "removeItem"
|
|
26
|
-
};
|
|
27
|
-
const storageClient = (useSessionStorage)=>{
|
|
28
|
-
const nativeMethod = (method, key, value)=>_isBrowser.default ? window[useSessionStorage ? "sessionStorage" : "localStorage"][methodsMap[method]](key, value) : ()=>{
|
|
29
|
-
if (process.env["NODE_ENV"] !== "production") {
|
|
30
|
-
console.warn(`[@koine/utils:storageClient]: ${useSessionStorage ? "sessionStorage" : "localStorage"} does not exists outside of browser.`);
|
|
31
|
-
}
|
|
32
|
-
};
|
|
33
|
-
const get = (key, transform, defaultValue)=>{
|
|
34
|
-
let value = defaultValue ?? null;
|
|
35
|
-
if (process.env["NODE_ENV"] !== "production") {
|
|
36
|
-
if (!_isBrowser.default) {
|
|
37
|
-
console.log(`[@koine/utils:storage] called 'get' outside of browser with default value '${JSON.stringify(defaultValue)}'.`);
|
|
38
|
-
}
|
|
39
|
-
}
|
|
40
|
-
if (_isBrowser.default) {
|
|
41
|
-
let stored = nativeMethod("g", key);
|
|
42
|
-
if (stored) {
|
|
43
|
-
stored = transform ? transform(stored) : stored;
|
|
44
|
-
try {
|
|
45
|
-
const parsed = JSON.parse(stored);
|
|
46
|
-
if (parsed) value = parsed;
|
|
47
|
-
} catch (_e) {
|
|
48
|
-
value = stored;
|
|
49
|
-
// if (process.env["NODE_ENV"] !== "production") {
|
|
50
|
-
// console.warn(
|
|
51
|
-
// `[@koine/utils:storage]: 'get' failed to parse stored value as JSON. Plain '${stored}' value is returned.`
|
|
52
|
-
// );
|
|
53
|
-
// }
|
|
54
|
-
}
|
|
55
|
-
}
|
|
56
|
-
}
|
|
57
|
-
return value;
|
|
58
|
-
};
|
|
59
|
-
const set = (key, value, transform = (value)=>value)=>{
|
|
60
|
-
if (process.env["NODE_ENV"] !== "production") {
|
|
61
|
-
if (!_isBrowser.default) {
|
|
62
|
-
console.log(`[@koine/utils:storage] called 'set' outside of browser does not work.`);
|
|
63
|
-
}
|
|
64
|
-
}
|
|
65
|
-
if (_isBrowser.default) {
|
|
66
|
-
try {
|
|
67
|
-
const transformedValue = (0, _isString.default)(value) ? transform(value) : transform(JSON.stringify(value));
|
|
68
|
-
nativeMethod("s", key, transformedValue);
|
|
69
|
-
} catch (_e) {
|
|
70
|
-
if (process.env["NODE_ENV"] !== "production") {
|
|
71
|
-
console.warn(`[@koine/utils:createStorage]: 'set' error.`, _e);
|
|
72
|
-
}
|
|
73
|
-
}
|
|
74
|
-
}
|
|
75
|
-
};
|
|
76
|
-
const remove = (key)=>{
|
|
77
|
-
if (process.env["NODE_ENV"] !== "production") {
|
|
78
|
-
if (!_isBrowser.default) {
|
|
79
|
-
console.log(`[@koine/utils:storage] called 'remove' outside of browser does not work.`);
|
|
80
|
-
}
|
|
81
|
-
}
|
|
82
|
-
if (_isBrowser.default) {
|
|
83
|
-
try {
|
|
84
|
-
nativeMethod("r", key);
|
|
85
|
-
} catch (_e) {
|
|
86
|
-
if (process.env["NODE_ENV"] !== "production") {
|
|
87
|
-
console.warn(`[@koine/utils:createStorage]: 'remove' error.`, _e);
|
|
88
|
-
}
|
|
89
|
-
}
|
|
90
|
-
}
|
|
91
|
-
};
|
|
92
|
-
const has = (key, defaultValue)=>{
|
|
93
|
-
let value = defaultValue ?? false;
|
|
94
|
-
if (process.env["NODE_ENV"] !== "production") {
|
|
95
|
-
if (!_isBrowser.default) {
|
|
96
|
-
console.log(`[@koine/utils:storage] called 'has' outside of browser with default value '${JSON.stringify(defaultValue)}'.`);
|
|
97
|
-
}
|
|
98
|
-
}
|
|
99
|
-
if (_isBrowser.default) {
|
|
100
|
-
const stored = nativeMethod("g", key);
|
|
101
|
-
value = stored ?? false;
|
|
102
|
-
}
|
|
103
|
-
return value;
|
|
104
|
-
};
|
|
105
|
-
return {
|
|
106
|
-
get,
|
|
107
|
-
set,
|
|
108
|
-
remove,
|
|
109
|
-
has
|
|
110
|
-
};
|
|
111
|
-
};
|
|
112
|
-
const _default = storageClient;
|