umaki 0.13.1 → 0.14.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +8 -1
- package/dist/_virtual/_rolldown/runtime.cjs +22 -0
- package/dist/index.cjs +137 -127
- package/dist/index.es.js +17 -71
- package/dist/libs/callback/index.cjs +15 -5
- package/dist/libs/callback/index.es.js +12 -4
- package/dist/libs/callback/tap-async.cjs +5 -6
- package/dist/libs/callback/tap-async.es.js +6 -7
- package/dist/libs/callback/tap.cjs +4 -5
- package/dist/libs/callback/tap.es.js +5 -6
- package/dist/libs/config/_internal.cjs +2 -4
- package/dist/libs/config/_internal.es.js +3 -4
- package/dist/libs/config/default-config.cjs +2 -5
- package/dist/libs/config/default-config.es.js +3 -6
- package/dist/libs/config/get-config.cjs +6 -7
- package/dist/libs/config/get-config.es.js +6 -8
- package/dist/libs/config/index.cjs +18 -8
- package/dist/libs/config/index.es.js +12 -6
- package/dist/libs/config/set-config.cjs +13 -10
- package/dist/libs/config/set-config.es.js +13 -10
- package/dist/libs/control/bg-scroll-stop.cjs +6 -7
- package/dist/libs/control/bg-scroll-stop.es.js +6 -7
- package/dist/libs/control/copy-to-clipboard.cjs +9 -12
- package/dist/libs/control/copy-to-clipboard.es.js +10 -13
- package/dist/libs/control/index.cjs +21 -11
- package/dist/libs/control/index.es.js +12 -7
- package/dist/libs/control/pd.cjs +2 -3
- package/dist/libs/control/pd.es.js +3 -4
- package/dist/libs/control/scroll-to-hash.cjs +28 -35
- package/dist/libs/control/scroll-to-hash.es.js +29 -36
- package/dist/libs/control/video-play-control.cjs +17 -20
- package/dist/libs/control/video-play-control.es.js +17 -20
- package/dist/libs/convert/change-date-string-to-specific-format.cjs +13 -12
- package/dist/libs/convert/change-date-string-to-specific-format.es.js +5 -8
- package/dist/libs/convert/hex-to-rgb.cjs +15 -20
- package/dist/libs/convert/hex-to-rgb.es.js +16 -21
- package/dist/libs/convert/index.cjs +19 -9
- package/dist/libs/convert/index.es.js +12 -6
- package/dist/libs/convert/json-string-to-json-object.cjs +7 -8
- package/dist/libs/convert/json-string-to-json-object.es.js +8 -9
- package/dist/libs/convert/rgb-to-hex.cjs +6 -7
- package/dist/libs/convert/rgb-to-hex.es.js +7 -8
- package/dist/libs/eventControl/debounce.cjs +11 -14
- package/dist/libs/eventControl/debounce.es.js +12 -15
- package/dist/libs/eventControl/index.cjs +15 -5
- package/dist/libs/eventControl/index.es.js +12 -4
- package/dist/libs/eventControl/throttle.cjs +11 -14
- package/dist/libs/eventControl/throttle.es.js +12 -15
- package/dist/libs/get/get-aspect-ratio.cjs +9 -9
- package/dist/libs/get/get-aspect-ratio.es.js +9 -9
- package/dist/libs/get/get-class-names.cjs +3 -5
- package/dist/libs/get/get-class-names.es.js +4 -6
- package/dist/libs/get/get-document-height.cjs +4 -5
- package/dist/libs/get/get-document-height.es.js +5 -6
- package/dist/libs/get/get-event-paths.cjs +16 -21
- package/dist/libs/get/get-event-paths.es.js +17 -22
- package/dist/libs/get/get-gcd.cjs +8 -11
- package/dist/libs/get/get-gcd.es.js +8 -11
- package/dist/libs/get/get-gravatar-url.cjs +8 -10
- package/dist/libs/get/get-gravatar-url.es.js +6 -10
- package/dist/libs/get/get-orientation.cjs +4 -8
- package/dist/libs/get/get-orientation.es.js +5 -9
- package/dist/libs/get/get-parent-list.cjs +5 -6
- package/dist/libs/get/get-parent-list.es.js +6 -7
- package/dist/libs/get/get-query-params.cjs +19 -20
- package/dist/libs/get/get-query-params.d.ts +1 -0
- package/dist/libs/get/get-query-params.es.js +18 -21
- package/dist/libs/get/get-random-int.cjs +8 -15
- package/dist/libs/get/get-random-int.es.js +9 -16
- package/dist/libs/get/get-relative-time.cjs +41 -25
- package/dist/libs/get/get-relative-time.es.js +42 -26
- package/dist/libs/get/get-rem.cjs +4 -8
- package/dist/libs/get/get-rem.es.js +5 -9
- package/dist/libs/get/get-rendered-line-height.cjs +49 -54
- package/dist/libs/get/get-rendered-line-height.es.js +50 -55
- package/dist/libs/get/get-scrollbar-width.cjs +4 -5
- package/dist/libs/get/get-scrollbar-width.es.js +5 -6
- package/dist/libs/get/get-session-storage.cjs +8 -7
- package/dist/libs/get/get-session-storage.es.js +6 -7
- package/dist/libs/get/get-string-length.cjs +3 -4
- package/dist/libs/get/get-string-length.es.js +3 -4
- package/dist/libs/get/get-style-property-value-to-number.cjs +3 -4
- package/dist/libs/get/get-style-property-value-to-number.es.js +3 -4
- package/dist/libs/get/get-style-property-value.cjs +4 -5
- package/dist/libs/get/get-style-property-value.es.js +5 -6
- package/dist/libs/get/get-ua-data.cjs +20 -21
- package/dist/libs/get/get-ua-data.es.js +17 -20
- package/dist/libs/get/index.cjs +49 -39
- package/dist/libs/get/index.es.js +14 -23
- package/dist/libs/is/check-device-size.cjs +6 -9
- package/dist/libs/is/check-device-size.es.js +6 -9
- package/dist/libs/is/index.cjs +33 -23
- package/dist/libs/is/index.es.js +13 -14
- package/dist/libs/is/is-after-date-time.cjs +7 -8
- package/dist/libs/is/is-after-date-time.es.js +5 -8
- package/dist/libs/is/is-between-date-time.cjs +12 -12
- package/dist/libs/is/is-between-date-time.es.js +7 -10
- package/dist/libs/is/is-exist-all-elements.cjs +3 -4
- package/dist/libs/is/is-exist-all-elements.es.js +4 -5
- package/dist/libs/is/is-in-viewport.cjs +60 -63
- package/dist/libs/is/is-in-viewport.es.js +61 -64
- package/dist/libs/is/is-ipad.cjs +8 -11
- package/dist/libs/is/is-ipad.es.js +7 -10
- package/dist/libs/is/is-key-exists.cjs +3 -4
- package/dist/libs/is/is-key-exists.es.js +4 -5
- package/dist/libs/is/is-online.cjs +4 -7
- package/dist/libs/is/is-online.es.js +5 -8
- package/dist/libs/is/is-safari.cjs +6 -9
- package/dist/libs/is/is-safari.es.js +6 -9
- package/dist/libs/is/is-scrollable.cjs +5 -6
- package/dist/libs/is/is-scrollable.es.js +6 -7
- package/dist/libs/is/is-touch-support.cjs +7 -9
- package/dist/libs/is/is-touch-support.es.js +8 -10
- package/dist/libs/remove/index.cjs +19 -9
- package/dist/libs/remove/index.es.js +12 -6
- package/dist/libs/remove/remove-all-html-tags.cjs +10 -10
- package/dist/libs/remove/remove-all-html-tags.es.js +8 -10
- package/dist/libs/remove/remove-attribute.cjs +3 -4
- package/dist/libs/remove/remove-attribute.es.js +4 -5
- package/dist/libs/remove/remove-session-storage.cjs +6 -5
- package/dist/libs/remove/remove-session-storage.es.js +4 -5
- package/dist/libs/remove/remove-style-property-value.cjs +4 -5
- package/dist/libs/remove/remove-style-property-value.es.js +5 -6
- package/dist/libs/security/html-sanitize.cjs +15 -11
- package/dist/libs/security/html-sanitize.es.js +13 -12
- package/dist/libs/security/index.cjs +14 -4
- package/dist/libs/security/index.es.js +12 -5
- package/dist/libs/set/index.cjs +23 -13
- package/dist/libs/set/index.es.js +12 -8
- package/dist/libs/set/set-100vh.cjs +5 -6
- package/dist/libs/set/set-100vh.es.js +6 -7
- package/dist/libs/set/set-100vw.cjs +5 -6
- package/dist/libs/set/set-100vw.es.js +6 -7
- package/dist/libs/set/set-attribute.cjs +3 -4
- package/dist/libs/set/set-attribute.es.js +4 -5
- package/dist/libs/set/set-scroll-position-to-center.cjs +9 -8
- package/dist/libs/set/set-scroll-position-to-center.es.js +10 -9
- package/dist/libs/set/set-session-storage.cjs +6 -5
- package/dist/libs/set/set-session-storage.es.js +4 -5
- package/dist/libs/set/set-style-property-value.cjs +4 -5
- package/dist/libs/set/set-style-property-value.es.js +5 -6
- package/dist/libs/to/index.cjs +15 -5
- package/dist/libs/to/index.es.js +12 -4
- package/dist/libs/to/to-boolean.cjs +3 -4
- package/dist/libs/to/to-boolean.es.js +4 -5
- package/dist/libs/to/to-positive-number.cjs +2 -3
- package/dist/libs/to/to-positive-number.es.js +3 -4
- package/dist/libs/transform/index.cjs +13 -3
- package/dist/libs/transform/index.es.js +12 -4
- package/dist/libs/transform/wrap-text-with-spans.cjs +15 -20
- package/dist/libs/transform/wrap-text-with-spans.es.js +15 -20
- package/dist/libs/wait/index.cjs +15 -5
- package/dist/libs/wait/index.es.js +12 -4
- package/dist/libs/wait/sleep.cjs +3 -4
- package/dist/libs/wait/sleep.es.js +4 -5
- package/dist/libs/wait/wait-for-all-media-loaded.cjs +29 -41
- package/dist/libs/wait/wait-for-all-media-loaded.es.js +30 -42
- package/package.json +17 -14
|
@@ -1,11 +1,9 @@
|
|
|
1
1
|
import { currentConfig } from "./_internal.es.js";
|
|
2
|
-
|
|
3
|
-
|
|
2
|
+
// src/libs/config/get-config.ts
|
|
3
|
+
var getConfig = () => {
|
|
4
|
+
return { ...currentConfig };
|
|
4
5
|
};
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
};
|
|
8
|
-
export {
|
|
9
|
-
getConfig,
|
|
10
|
-
getConfigValue
|
|
6
|
+
var getConfigValue = (key) => {
|
|
7
|
+
return currentConfig[key];
|
|
11
8
|
};
|
|
9
|
+
export { getConfig, getConfigValue };
|
|
@@ -1,9 +1,19 @@
|
|
|
1
|
-
|
|
1
|
+
/*!
|
|
2
|
+
* name: umaki
|
|
3
|
+
* version: v0.14.0
|
|
4
|
+
* description: A utility that is often used in web production.
|
|
5
|
+
* author: TsubasaHiga
|
|
6
|
+
* homepage: https://github.com/TsubasaHiga/umaki
|
|
7
|
+
* Released under the MIT License
|
|
8
|
+
*
|
|
9
|
+
* This software includes dependencies licensed under MIT, ISC, BSD-3-Clause, and Apache-2.0.
|
|
10
|
+
* For license information, please see LICENSE.txt
|
|
11
|
+
*/
|
|
2
12
|
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
|
|
3
|
-
const
|
|
4
|
-
const
|
|
5
|
-
const
|
|
6
|
-
exports.defaultConfig =
|
|
7
|
-
exports.getConfig =
|
|
8
|
-
exports.getConfigValue =
|
|
9
|
-
exports.setConfig =
|
|
13
|
+
const require_default_config = require("./default-config.cjs");
|
|
14
|
+
const require_get_config = require("./get-config.cjs");
|
|
15
|
+
const require_set_config = require("./set-config.cjs");
|
|
16
|
+
exports.defaultConfig = require_default_config.defaultConfig;
|
|
17
|
+
exports.getConfig = require_get_config.getConfig;
|
|
18
|
+
exports.getConfigValue = require_get_config.getConfigValue;
|
|
19
|
+
exports.setConfig = require_set_config.setConfig;
|
|
@@ -1,9 +1,15 @@
|
|
|
1
|
+
/*!
|
|
2
|
+
* name: umaki
|
|
3
|
+
* version: v0.14.0
|
|
4
|
+
* description: A utility that is often used in web production.
|
|
5
|
+
* author: TsubasaHiga
|
|
6
|
+
* homepage: https://github.com/TsubasaHiga/umaki
|
|
7
|
+
* Released under the MIT License
|
|
8
|
+
*
|
|
9
|
+
* This software includes dependencies licensed under MIT, ISC, BSD-3-Clause, and Apache-2.0.
|
|
10
|
+
* For license information, please see LICENSE.txt
|
|
11
|
+
*/
|
|
1
12
|
import { defaultConfig } from "./default-config.es.js";
|
|
2
13
|
import { getConfig, getConfigValue } from "./get-config.es.js";
|
|
3
14
|
import { setConfig } from "./set-config.es.js";
|
|
4
|
-
export {
|
|
5
|
-
defaultConfig,
|
|
6
|
-
getConfig,
|
|
7
|
-
getConfigValue,
|
|
8
|
-
setConfig
|
|
9
|
-
};
|
|
15
|
+
export { defaultConfig, getConfig, getConfigValue, setConfig };
|
|
@@ -1,12 +1,15 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
1
|
+
const require__internal = require("./_internal.cjs");
|
|
2
|
+
// src/libs/config/set-config.ts
|
|
3
|
+
var UNSAFE_KEYS = /* @__PURE__ */ new Set([
|
|
4
|
+
"__proto__",
|
|
5
|
+
"constructor",
|
|
6
|
+
"prototype"
|
|
7
|
+
]);
|
|
8
|
+
var setConfig = (config) => {
|
|
9
|
+
for (const [key, value] of Object.entries(config)) {
|
|
10
|
+
if (UNSAFE_KEYS.has(key)) continue;
|
|
11
|
+
require__internal.currentConfig[key] = value;
|
|
12
|
+
}
|
|
13
|
+
return { ...require__internal.currentConfig };
|
|
11
14
|
};
|
|
12
15
|
exports.setConfig = setConfig;
|
|
@@ -1,12 +1,15 @@
|
|
|
1
1
|
import { currentConfig } from "./_internal.es.js";
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
2
|
+
// src/libs/config/set-config.ts
|
|
3
|
+
var UNSAFE_KEYS = /* @__PURE__ */ new Set([
|
|
4
|
+
"__proto__",
|
|
5
|
+
"constructor",
|
|
6
|
+
"prototype"
|
|
7
|
+
]);
|
|
8
|
+
var setConfig = (config) => {
|
|
9
|
+
for (const [key, value] of Object.entries(config)) {
|
|
10
|
+
if (UNSAFE_KEYS.has(key)) continue;
|
|
11
|
+
currentConfig[key] = value;
|
|
12
|
+
}
|
|
13
|
+
return { ...currentConfig };
|
|
12
14
|
};
|
|
15
|
+
export { setConfig };
|
|
@@ -1,9 +1,8 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
document.body.style.overflow = isStop ? "hidden" : "";
|
|
1
|
+
const require_get_scrollbar_width = require("../get/get-scrollbar-width.cjs");
|
|
2
|
+
// src/libs/control/bg-scroll-stop.ts
|
|
3
|
+
var bgScrollStop = (isStop = true) => {
|
|
4
|
+
if (typeof window === "undefined") return;
|
|
5
|
+
document.body.style.paddingRight = isStop ? `${require_get_scrollbar_width.getScrollbarWidth()}px` : "";
|
|
6
|
+
document.body.style.overflow = isStop ? "hidden" : "";
|
|
8
7
|
};
|
|
9
8
|
exports.bgScrollStop = bgScrollStop;
|
|
@@ -1,9 +1,8 @@
|
|
|
1
1
|
import { getScrollbarWidth } from "../get/get-scrollbar-width.es.js";
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
export {
|
|
8
|
-
bgScrollStop
|
|
2
|
+
// src/libs/control/bg-scroll-stop.ts
|
|
3
|
+
var bgScrollStop = (isStop = true) => {
|
|
4
|
+
if (typeof window === "undefined") return;
|
|
5
|
+
document.body.style.paddingRight = isStop ? `${getScrollbarWidth()}px` : "";
|
|
6
|
+
document.body.style.overflow = isStop ? "hidden" : "";
|
|
9
7
|
};
|
|
8
|
+
export { bgScrollStop };
|
|
@@ -1,14 +1,11 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
} catch {
|
|
11
|
-
return false;
|
|
12
|
-
}
|
|
1
|
+
// src/libs/control/copy-to-clipboard.ts
|
|
2
|
+
var copyToClipboard = async (text) => {
|
|
3
|
+
if (typeof navigator === "undefined" || !navigator.clipboard) return false;
|
|
4
|
+
try {
|
|
5
|
+
await navigator.clipboard.writeText(text);
|
|
6
|
+
return true;
|
|
7
|
+
} catch {
|
|
8
|
+
return false;
|
|
9
|
+
}
|
|
13
10
|
};
|
|
14
11
|
exports.copyToClipboard = copyToClipboard;
|
|
@@ -1,14 +1,11 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
}
|
|
11
|
-
};
|
|
12
|
-
export {
|
|
13
|
-
copyToClipboard
|
|
1
|
+
// src/libs/control/copy-to-clipboard.ts
|
|
2
|
+
var copyToClipboard = async (text) => {
|
|
3
|
+
if (typeof navigator === "undefined" || !navigator.clipboard) return false;
|
|
4
|
+
try {
|
|
5
|
+
await navigator.clipboard.writeText(text);
|
|
6
|
+
return true;
|
|
7
|
+
} catch {
|
|
8
|
+
return false;
|
|
9
|
+
}
|
|
14
10
|
};
|
|
11
|
+
export { copyToClipboard };
|
|
@@ -1,12 +1,22 @@
|
|
|
1
|
-
|
|
1
|
+
/*!
|
|
2
|
+
* name: umaki
|
|
3
|
+
* version: v0.14.0
|
|
4
|
+
* description: A utility that is often used in web production.
|
|
5
|
+
* author: TsubasaHiga
|
|
6
|
+
* homepage: https://github.com/TsubasaHiga/umaki
|
|
7
|
+
* Released under the MIT License
|
|
8
|
+
*
|
|
9
|
+
* This software includes dependencies licensed under MIT, ISC, BSD-3-Clause, and Apache-2.0.
|
|
10
|
+
* For license information, please see LICENSE.txt
|
|
11
|
+
*/
|
|
2
12
|
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
|
|
3
|
-
const
|
|
4
|
-
const
|
|
5
|
-
const
|
|
6
|
-
const
|
|
7
|
-
const
|
|
8
|
-
exports.bgScrollStop =
|
|
9
|
-
exports.copyToClipboard =
|
|
10
|
-
exports.pd =
|
|
11
|
-
exports.scrollToHash =
|
|
12
|
-
exports.videoPlayControl =
|
|
13
|
+
const require_bg_scroll_stop = require("./bg-scroll-stop.cjs");
|
|
14
|
+
const require_copy_to_clipboard = require("./copy-to-clipboard.cjs");
|
|
15
|
+
const require_pd = require("./pd.cjs");
|
|
16
|
+
const require_scroll_to_hash = require("./scroll-to-hash.cjs");
|
|
17
|
+
const require_video_play_control = require("./video-play-control.cjs");
|
|
18
|
+
exports.bgScrollStop = require_bg_scroll_stop.bgScrollStop;
|
|
19
|
+
exports.copyToClipboard = require_copy_to_clipboard.copyToClipboard;
|
|
20
|
+
exports.pd = require_pd.pd;
|
|
21
|
+
exports.scrollToHash = require_scroll_to_hash.scrollToHash;
|
|
22
|
+
exports.videoPlayControl = require_video_play_control.videoPlayControl;
|
|
@@ -1,12 +1,17 @@
|
|
|
1
|
+
/*!
|
|
2
|
+
* name: umaki
|
|
3
|
+
* version: v0.14.0
|
|
4
|
+
* description: A utility that is often used in web production.
|
|
5
|
+
* author: TsubasaHiga
|
|
6
|
+
* homepage: https://github.com/TsubasaHiga/umaki
|
|
7
|
+
* Released under the MIT License
|
|
8
|
+
*
|
|
9
|
+
* This software includes dependencies licensed under MIT, ISC, BSD-3-Clause, and Apache-2.0.
|
|
10
|
+
* For license information, please see LICENSE.txt
|
|
11
|
+
*/
|
|
1
12
|
import { bgScrollStop } from "./bg-scroll-stop.es.js";
|
|
2
13
|
import { copyToClipboard } from "./copy-to-clipboard.es.js";
|
|
3
14
|
import { pd } from "./pd.es.js";
|
|
4
15
|
import { scrollToHash } from "./scroll-to-hash.es.js";
|
|
5
16
|
import { videoPlayControl } from "./video-play-control.es.js";
|
|
6
|
-
export {
|
|
7
|
-
bgScrollStop,
|
|
8
|
-
copyToClipboard,
|
|
9
|
-
pd,
|
|
10
|
-
scrollToHash,
|
|
11
|
-
videoPlayControl
|
|
12
|
-
};
|
|
17
|
+
export { bgScrollStop, copyToClipboard, pd, scrollToHash, videoPlayControl };
|
package/dist/libs/control/pd.cjs
CHANGED
|
@@ -1,4 +1,3 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
};
|
|
1
|
+
// src/libs/control/pd.ts
|
|
2
|
+
var pd = (e) => e.preventDefault();
|
|
3
|
+
export { pd };
|
|
@@ -1,37 +1,30 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
clearTimeout(rejectTimer);
|
|
30
|
-
resolve(true);
|
|
31
|
-
}
|
|
32
|
-
if (window.scrollY !== posY) {
|
|
33
|
-
window.addEventListener("scroll", scrollHandler, false);
|
|
34
|
-
}
|
|
35
|
-
});
|
|
1
|
+
// src/libs/control/scroll-to-hash.ts
|
|
2
|
+
var scrollToHash = async (hash, isSmooth = true, manualOffset) => {
|
|
3
|
+
if (typeof window === "undefined") return false;
|
|
4
|
+
const hashWithoutSharp = hash.replace("#", "");
|
|
5
|
+
const targetElement = document.getElementById(hashWithoutSharp);
|
|
6
|
+
if (!targetElement) return false;
|
|
7
|
+
const posY = Math.floor(targetElement.getBoundingClientRect().top + window.scrollY) - (manualOffset ? manualOffset : 0);
|
|
8
|
+
window.scrollTo({
|
|
9
|
+
top: posY,
|
|
10
|
+
behavior: isSmooth ? "smooth" : "instant"
|
|
11
|
+
});
|
|
12
|
+
return new Promise((resolve) => {
|
|
13
|
+
const rejectTimer = setTimeout(() => {
|
|
14
|
+
window.removeEventListener("scroll", scrollHandler);
|
|
15
|
+
resolve(false);
|
|
16
|
+
}, 1e3);
|
|
17
|
+
const scrollHandler = () => {
|
|
18
|
+
if (window.scrollY !== posY) return;
|
|
19
|
+
window.removeEventListener("scroll", scrollHandler);
|
|
20
|
+
clearTimeout(rejectTimer);
|
|
21
|
+
resolve(true);
|
|
22
|
+
};
|
|
23
|
+
if (window.scrollY === posY) {
|
|
24
|
+
clearTimeout(rejectTimer);
|
|
25
|
+
resolve(true);
|
|
26
|
+
}
|
|
27
|
+
if (window.scrollY !== posY) window.addEventListener("scroll", scrollHandler, false);
|
|
28
|
+
});
|
|
36
29
|
};
|
|
37
30
|
exports.scrollToHash = scrollToHash;
|
|
@@ -1,37 +1,30 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
}
|
|
30
|
-
if (window.scrollY !== posY) {
|
|
31
|
-
window.addEventListener("scroll", scrollHandler, false);
|
|
32
|
-
}
|
|
33
|
-
});
|
|
34
|
-
};
|
|
35
|
-
export {
|
|
36
|
-
scrollToHash
|
|
1
|
+
// src/libs/control/scroll-to-hash.ts
|
|
2
|
+
var scrollToHash = async (hash, isSmooth = true, manualOffset) => {
|
|
3
|
+
if (typeof window === "undefined") return false;
|
|
4
|
+
const hashWithoutSharp = hash.replace("#", "");
|
|
5
|
+
const targetElement = document.getElementById(hashWithoutSharp);
|
|
6
|
+
if (!targetElement) return false;
|
|
7
|
+
const posY = Math.floor(targetElement.getBoundingClientRect().top + window.scrollY) - (manualOffset ? manualOffset : 0);
|
|
8
|
+
window.scrollTo({
|
|
9
|
+
top: posY,
|
|
10
|
+
behavior: isSmooth ? "smooth" : "instant"
|
|
11
|
+
});
|
|
12
|
+
return new Promise((resolve) => {
|
|
13
|
+
const rejectTimer = setTimeout(() => {
|
|
14
|
+
window.removeEventListener("scroll", scrollHandler);
|
|
15
|
+
resolve(false);
|
|
16
|
+
}, 1e3);
|
|
17
|
+
const scrollHandler = () => {
|
|
18
|
+
if (window.scrollY !== posY) return;
|
|
19
|
+
window.removeEventListener("scroll", scrollHandler);
|
|
20
|
+
clearTimeout(rejectTimer);
|
|
21
|
+
resolve(true);
|
|
22
|
+
};
|
|
23
|
+
if (window.scrollY === posY) {
|
|
24
|
+
clearTimeout(rejectTimer);
|
|
25
|
+
resolve(true);
|
|
26
|
+
}
|
|
27
|
+
if (window.scrollY !== posY) window.addEventListener("scroll", scrollHandler, false);
|
|
28
|
+
});
|
|
37
29
|
};
|
|
30
|
+
export { scrollToHash };
|
|
@@ -1,22 +1,19 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
videoElement.pause();
|
|
19
|
-
videoElement.dataset.playing = "false";
|
|
20
|
-
}
|
|
1
|
+
const require_to_boolean = require("../to/to-boolean.cjs");
|
|
2
|
+
// src/libs/control/video-play-control.ts
|
|
3
|
+
var videoPlayControl = async (videoElement, state, currentTime) => {
|
|
4
|
+
if (state && videoElement.paused) {
|
|
5
|
+
if (require_to_boolean.toBoolean(videoElement.dataset.playing ?? "")) return;
|
|
6
|
+
const playPromise = videoElement.play();
|
|
7
|
+
if (playPromise === void 0) return;
|
|
8
|
+
try {
|
|
9
|
+
await playPromise;
|
|
10
|
+
videoElement.currentTime = currentTime || 0;
|
|
11
|
+
videoElement.dataset.playing = "true";
|
|
12
|
+
} catch {}
|
|
13
|
+
}
|
|
14
|
+
if (!state) {
|
|
15
|
+
videoElement.pause();
|
|
16
|
+
videoElement.dataset.playing = "false";
|
|
17
|
+
}
|
|
21
18
|
};
|
|
22
19
|
exports.videoPlayControl = videoPlayControl;
|
|
@@ -1,22 +1,19 @@
|
|
|
1
1
|
import { toBoolean } from "../to/to-boolean.es.js";
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
}
|
|
19
|
-
};
|
|
20
|
-
export {
|
|
21
|
-
videoPlayControl
|
|
2
|
+
// src/libs/control/video-play-control.ts
|
|
3
|
+
var videoPlayControl = async (videoElement, state, currentTime) => {
|
|
4
|
+
if (state && videoElement.paused) {
|
|
5
|
+
if (toBoolean(videoElement.dataset.playing ?? "")) return;
|
|
6
|
+
const playPromise = videoElement.play();
|
|
7
|
+
if (playPromise === void 0) return;
|
|
8
|
+
try {
|
|
9
|
+
await playPromise;
|
|
10
|
+
videoElement.currentTime = currentTime || 0;
|
|
11
|
+
videoElement.dataset.playing = "true";
|
|
12
|
+
} catch {}
|
|
13
|
+
}
|
|
14
|
+
if (!state) {
|
|
15
|
+
videoElement.pause();
|
|
16
|
+
videoElement.dataset.playing = "false";
|
|
17
|
+
}
|
|
22
18
|
};
|
|
19
|
+
export { videoPlayControl };
|
|
@@ -1,14 +1,15 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
dayjs.
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
1
|
+
const require_runtime = require("../../_virtual/_rolldown/runtime.cjs");
|
|
2
|
+
let dayjs = require("dayjs");
|
|
3
|
+
dayjs = require_runtime.__toESM(dayjs, 1);
|
|
4
|
+
let dayjs_plugin_timezone_js = require("dayjs/plugin/timezone.js");
|
|
5
|
+
dayjs_plugin_timezone_js = require_runtime.__toESM(dayjs_plugin_timezone_js, 1);
|
|
6
|
+
let dayjs_plugin_utc_js = require("dayjs/plugin/utc.js");
|
|
7
|
+
dayjs_plugin_utc_js = require_runtime.__toESM(dayjs_plugin_utc_js, 1);
|
|
8
|
+
// src/libs/convert/change-date-string-to-specific-format.ts
|
|
9
|
+
dayjs.default.extend(dayjs_plugin_utc_js.default);
|
|
10
|
+
dayjs.default.extend(dayjs_plugin_timezone_js.default);
|
|
11
|
+
var changeDateStringToSpecificFormat = (date, format = "YYYY年MM月DD日", tz) => {
|
|
12
|
+
if (tz) return (0, dayjs.default)(date).tz(tz).format(format);
|
|
13
|
+
return (0, dayjs.default)(date).format(format);
|
|
13
14
|
};
|
|
14
15
|
exports.changeDateStringToSpecificFormat = changeDateStringToSpecificFormat;
|
|
@@ -1,14 +1,11 @@
|
|
|
1
1
|
import dayjs from "dayjs";
|
|
2
2
|
import timezone from "dayjs/plugin/timezone.js";
|
|
3
3
|
import utc from "dayjs/plugin/utc.js";
|
|
4
|
+
// src/libs/convert/change-date-string-to-specific-format.ts
|
|
4
5
|
dayjs.extend(utc);
|
|
5
6
|
dayjs.extend(timezone);
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
}
|
|
10
|
-
return dayjs(date).format(format);
|
|
11
|
-
};
|
|
12
|
-
export {
|
|
13
|
-
changeDateStringToSpecificFormat
|
|
7
|
+
var changeDateStringToSpecificFormat = (date, format = "YYYY年MM月DD日", tz) => {
|
|
8
|
+
if (tz) return dayjs(date).tz(tz).format(format);
|
|
9
|
+
return dayjs(date).format(format);
|
|
14
10
|
};
|
|
11
|
+
export { changeDateStringToSpecificFormat };
|
|
@@ -1,22 +1,17 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
const
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
return {
|
|
17
|
-
r: Number.parseInt(expanded.slice(0, 2), 16),
|
|
18
|
-
g: Number.parseInt(expanded.slice(2, 4), 16),
|
|
19
|
-
b: Number.parseInt(expanded.slice(4, 6), 16)
|
|
20
|
-
};
|
|
1
|
+
// src/libs/convert/hex-to-rgb.ts
|
|
2
|
+
var HEX_PATTERN = /^[0-9a-fA-F]+$/;
|
|
3
|
+
var hexToRgb = (hex) => {
|
|
4
|
+
const trimmed = hex.trim();
|
|
5
|
+
const normalized = trimmed.startsWith("#") ? trimmed.slice(1) : trimmed;
|
|
6
|
+
if (!HEX_PATTERN.test(normalized)) return void 0;
|
|
7
|
+
let expanded;
|
|
8
|
+
if (normalized.length === 3) expanded = `${normalized[0]}${normalized[0]}${normalized[1]}${normalized[1]}${normalized[2]}${normalized[2]}`;
|
|
9
|
+
else if (normalized.length === 6) expanded = normalized;
|
|
10
|
+
else return;
|
|
11
|
+
return {
|
|
12
|
+
r: Number.parseInt(expanded.slice(0, 2), 16),
|
|
13
|
+
g: Number.parseInt(expanded.slice(2, 4), 16),
|
|
14
|
+
b: Number.parseInt(expanded.slice(4, 6), 16)
|
|
15
|
+
};
|
|
21
16
|
};
|
|
22
17
|
exports.hexToRgb = hexToRgb;
|
|
@@ -1,22 +1,17 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
g: Number.parseInt(expanded.slice(2, 4), 16),
|
|
17
|
-
b: Number.parseInt(expanded.slice(4, 6), 16)
|
|
18
|
-
};
|
|
19
|
-
};
|
|
20
|
-
export {
|
|
21
|
-
hexToRgb
|
|
1
|
+
// src/libs/convert/hex-to-rgb.ts
|
|
2
|
+
var HEX_PATTERN = /^[0-9a-fA-F]+$/;
|
|
3
|
+
var hexToRgb = (hex) => {
|
|
4
|
+
const trimmed = hex.trim();
|
|
5
|
+
const normalized = trimmed.startsWith("#") ? trimmed.slice(1) : trimmed;
|
|
6
|
+
if (!HEX_PATTERN.test(normalized)) return void 0;
|
|
7
|
+
let expanded;
|
|
8
|
+
if (normalized.length === 3) expanded = `${normalized[0]}${normalized[0]}${normalized[1]}${normalized[1]}${normalized[2]}${normalized[2]}`;
|
|
9
|
+
else if (normalized.length === 6) expanded = normalized;
|
|
10
|
+
else return;
|
|
11
|
+
return {
|
|
12
|
+
r: Number.parseInt(expanded.slice(0, 2), 16),
|
|
13
|
+
g: Number.parseInt(expanded.slice(2, 4), 16),
|
|
14
|
+
b: Number.parseInt(expanded.slice(4, 6), 16)
|
|
15
|
+
};
|
|
22
16
|
};
|
|
17
|
+
export { hexToRgb };
|