@minto-ai/tools 1.0.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (73) hide show
  1. package/README.md +1335 -0
  2. package/dist/array/chunk-array.d.ts +12 -0
  3. package/dist/array/index.d.ts +2 -0
  4. package/dist/browser/copy-text.d.ts +9 -0
  5. package/dist/browser/index.d.ts +6 -0
  6. package/dist/browser/is-android.d.ts +8 -0
  7. package/dist/browser/is-ios.d.ts +8 -0
  8. package/dist/browser/is-mobile.d.ts +9 -0
  9. package/dist/browser/is-pc.d.ts +8 -0
  10. package/dist/core/__test__/can-be-parsed-as-number.test.d.ts +1 -0
  11. package/dist/core/be-parsed-as-number.d.ts +8 -0
  12. package/dist/core/can-be-parsed-as-number.d.ts +8 -0
  13. package/dist/core/check-array-empty.d.ts +8 -0
  14. package/dist/core/check-empty-not-zero.d.ts +8 -0
  15. package/dist/core/check-empty.d.ts +9 -0
  16. package/dist/core/check-object-empty.d.ts +9 -0
  17. package/dist/core/index.d.ts +13 -0
  18. package/dist/core/is-array.d.ts +8 -0
  19. package/dist/core/is-null-or-undefined.d.ts +7 -0
  20. package/dist/core/is-number.d.ts +8 -0
  21. package/dist/core/is-object.d.ts +8 -0
  22. package/dist/core/is-string.d.ts +8 -0
  23. package/dist/core/is-undefined.d.ts +8 -0
  24. package/dist/file/batch-download-file.d.ts +11 -0
  25. package/dist/file/extends/enum.d.ts +81 -0
  26. package/dist/file/extends/regex.d.ts +3 -0
  27. package/dist/file/get-file-feed-type.d.ts +9 -0
  28. package/dist/file/get-file-icon.d.ts +8 -0
  29. package/dist/file/get-file-item-icon.d.ts +9 -0
  30. package/dist/file/get-file-item-suffix.d.ts +9 -0
  31. package/dist/file/get-file-name.d.ts +8 -0
  32. package/dist/file/get-file-suffix-icon.d.ts +9 -0
  33. package/dist/file/get-file-suffix.d.ts +9 -0
  34. package/dist/file/get-file-title.d.ts +8 -0
  35. package/dist/file/index.d.ts +19 -0
  36. package/dist/file/is-document-file-path.d.ts +8 -0
  37. package/dist/file/is-file-path.d.ts +8 -0
  38. package/dist/file/is-image-file-path.d.ts +8 -0
  39. package/dist/file/is-ppt-file-path.d.ts +8 -0
  40. package/dist/file/is-video-file-path.d.ts +8 -0
  41. package/dist/file/single-download-file.d.ts +8 -0
  42. package/dist/file/types/index.d.ts +18 -0
  43. package/dist/function/debounce.d.ts +23 -0
  44. package/dist/function/index.d.ts +3 -0
  45. package/dist/function/throttle.d.ts +23 -0
  46. package/dist/index.d.ts +11 -0
  47. package/dist/index.js +547 -0
  48. package/dist/math/__test__/add.test.d.ts +1 -0
  49. package/dist/math/__test__/divide.test.d.ts +1 -0
  50. package/dist/math/__test__/get-decimal-places.test.d.ts +1 -0
  51. package/dist/math/__test__/multiply.test.d.ts +1 -0
  52. package/dist/math/__test__/subtract.test.d.ts +1 -0
  53. package/dist/math/add.d.ts +9 -0
  54. package/dist/math/divide.d.ts +9 -0
  55. package/dist/math/get-decimal-places.d.ts +8 -0
  56. package/dist/math/index.d.ts +6 -0
  57. package/dist/math/multiply.d.ts +9 -0
  58. package/dist/math/subtract.d.ts +9 -0
  59. package/dist/object/deep-freeze.d.ts +9 -0
  60. package/dist/object/index.d.ts +3 -0
  61. package/dist/object/pick-object.d.ts +9 -0
  62. package/dist/string/__test__/chunk-string.test.d.ts +1 -0
  63. package/dist/string/chunk-string.d.ts +10 -0
  64. package/dist/string/index.d.ts +2 -0
  65. package/dist/supply/get-uuid.d.ts +9 -0
  66. package/dist/supply/index.d.ts +2 -0
  67. package/dist/web-socket/create-web-socket.d.ts +9 -0
  68. package/dist/web-socket/index.d.ts +3 -0
  69. package/dist/web-socket/is-web-socket-supported.d.ts +9 -0
  70. package/dist/wrker/close-worker.d.ts +9 -0
  71. package/dist/wrker/create-worker.d.ts +11 -0
  72. package/dist/wrker/index.d.ts +3 -0
  73. package/package.json +32 -0
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,9 @@
1
+ /**
2
+ * 精确地将两个数字相加,避免 JavaScript 数字运算的精度问题。
3
+ *
4
+ * @param augend 第一个数字(被加数)
5
+ * @param addend 第二个数字(加数)
6
+ * @returns 两个数字的和
7
+ */
8
+ declare function add(augend: number, addend: number): number;
9
+ export default add;
@@ -0,0 +1,9 @@
1
+ /**
2
+ * 精确地将两个数字相除,避免 JavaScript 数字运算的精度问题。
3
+ *
4
+ * @param dividend 被除数
5
+ * @param divisor 除数
6
+ * @returns 两个数字的商
7
+ */
8
+ declare function divide(dividend: number, divisor: number): number;
9
+ export default divide;
@@ -0,0 +1,8 @@
1
+ /**
2
+ * 获取数字的小数位数。
3
+ *
4
+ * @param num 输入的数字(可以是整数或浮点数)。
5
+ * @returns 返回数字的小数位数。如果数字是整数,则返回 0。
6
+ */
7
+ declare function getDecimalPlaces(num: number): number;
8
+ export default getDecimalPlaces;
@@ -0,0 +1,6 @@
1
+ import { default as add } from './add';
2
+ import { default as divide } from './divide';
3
+ import { default as getDecimalPlaces } from './get-decimal-places';
4
+ import { default as multiply } from './multiply';
5
+ import { default as subtract } from './subtract';
6
+ export { add, divide, multiply, subtract, getDecimalPlaces };
@@ -0,0 +1,9 @@
1
+ /**
2
+ * 精确地将两个数字相乘,避免 JavaScript 数字运算的精度问题。
3
+ *
4
+ * @param multiplier 第一个数字(乘数)
5
+ * @param multiplicand 第二个数字(被乘数)
6
+ * @returns 两个数字的乘积
7
+ */
8
+ declare function multiply(multiplier: number, multiplicand: number): number;
9
+ export default multiply;
@@ -0,0 +1,9 @@
1
+ /**
2
+ * 精确地将两个数字相减,避免 JavaScript 数字运算的精度问题。
3
+ *
4
+ * @param minuend 第一个数字(被减数)
5
+ * @param subtrahend 第二个数字(减数)
6
+ * @returns 两个数字的差
7
+ */
8
+ declare function subtract(minuend: number, subtrahend: number): number;
9
+ export default subtract;
@@ -0,0 +1,9 @@
1
+ /**
2
+ * 深度冻结一个对象,防止其属性及嵌套属性被修改。
3
+ * 递归地冻结对象的所有属性,包括嵌套对象,确保对象的状态不可变。
4
+ *
5
+ * @param obj 需要被冻结的对象。
6
+ * @returns 返回深度冻结后的对象。
7
+ */
8
+ declare function deepFreeze<T extends Record<string, any>>(obj: T): Readonly<T>;
9
+ export default deepFreeze;
@@ -0,0 +1,3 @@
1
+ import { default as deepFreeze } from './deep-freeze';
2
+ import { default as pickObject } from './pick-object';
3
+ export { pickObject, deepFreeze };
@@ -0,0 +1,9 @@
1
+ /**
2
+ * 从给定对象中挑选指定的属性,并返回一个包含这些属性的新对象。
3
+ *
4
+ * @param obj -源对象,从中挑选属性。
5
+ * @param keys -需要挑选的属性键名数组。
6
+ * @returns 包含指定属性的新对象。
7
+ */
8
+ declare function pickObject<T extends Record<string, any>, K extends keyof T>(obj: T, keys: K[]): Pick<T, K>;
9
+ export default pickObject;
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,10 @@
1
+ /**
2
+ * 将输入字符串按照指定的块大小分割成多个子字符串。
3
+ * 该函数会根据指定的块大小(`chunkSize`)将输入字符串(`str`)分割成多个子字符串,并将这些子字符串存储在一个数组中返回。
4
+ *
5
+ * @param str - 需要分割的原始字符串。
6
+ * @param chunkSize - 每个块的大小,默认为整个字符串的长度。
7
+ * @returns 一个包含分割后的子字符串的数组。
8
+ */
9
+ declare function chunkString(str: string, chunkSize?: number): string[];
10
+ export default chunkString;
@@ -0,0 +1,2 @@
1
+ import { default as chunkString } from './chunk-string';
2
+ export { chunkString };
@@ -0,0 +1,9 @@
1
+ /**
2
+ * 生成一个随机的 UUID(Universally Unique Identifier)。
3
+ * 利用 Web Crypto API,生成一个随机的 32 位无符号整数,并将其转换为一个基于 36 进制的字符串。
4
+ * 这种格式的字符串通常用于标识,并且可以保证在很大范围内的唯一性。
5
+ *
6
+ * @returns 返回一个随机生成的 UUID 字符串。
7
+ */
8
+ declare function getUuid(): string;
9
+ export default getUuid;
@@ -0,0 +1,2 @@
1
+ import { default as getUuid } from './get-uuid';
2
+ export { getUuid };
@@ -0,0 +1,9 @@
1
+ /**
2
+ * 创建一个新的 WebSocket 实例。
3
+ * 此函数接受一个 WebSocket 服务器的 URL 并创建一个新的 WebSocket 实例。
4
+ *
5
+ * @param url WebSocket 服务器的 URL。
6
+ * @returns 返回一个新的 WebSocket 实例。
7
+ */
8
+ declare function createWebSocket(url: string): WebSocket;
9
+ export default createWebSocket;
@@ -0,0 +1,3 @@
1
+ import { default as createWebSocket } from './create-web-socket';
2
+ import { default as isWebSocketSupported } from './is-web-socket-supported';
3
+ export { createWebSocket, isWebSocketSupported };
@@ -0,0 +1,9 @@
1
+ /**
2
+ * 检查当前浏览器是否支持 WebSocket。
3
+ * 此函数检查 'WebSocket' 和 'MozWebSocket' 是否存在于全局 `window` 对象中,
4
+ * 以确定浏览器是否支持 WebSocket。
5
+ *
6
+ * @returns 如果浏览器支持 WebSocket,则返回 `true`;否则返回 `false`。
7
+ */
8
+ declare function isWebSocketSupported(): boolean;
9
+ export default isWebSocketSupported;
@@ -0,0 +1,9 @@
1
+ /**
2
+ * 关闭并终止一个 Web Worker 实例的执行。
3
+ * 如果传入的 worker 参数不是有效的 Worker 实例(例如,如果它是 undefined 或 null),
4
+ * 则不执行任何操作。
5
+ *
6
+ * @param worker - 要关闭的 Worker 实例。
7
+ */
8
+ declare function closeWorker(worker: Worker | undefined | null): void;
9
+ export default closeWorker;
@@ -0,0 +1,11 @@
1
+ /**
2
+ * 创建并返回一个新的 Web Worker 实例。
3
+ * 这个函数接受一个函数,将其转换为字符串,并创建一个 Blob 对象。
4
+ * 然后,它创建一个指向该 Blob 的 URL,并用这个 URL 来创建一个新的 Worker。
5
+ * 最后,释放 URL 对象以供浏览器回收内存。
6
+ *
7
+ * @param fun - 要在 Worker 中执行的 JavaScript 函数。
8
+ * @returns 返回新创建的 Worker 实例。
9
+ */
10
+ declare function createWorker(fun: (...args: any) => any): Worker;
11
+ export default createWorker;
@@ -0,0 +1,3 @@
1
+ import { default as closeWorker } from './close-worker';
2
+ import { default as createWorker } from './create-worker';
3
+ export { closeWorker, createWorker };
package/package.json ADDED
@@ -0,0 +1,32 @@
1
+ {
2
+ "name": "@minto-ai/tools",
3
+ "version": "1.0.1",
4
+ "description": "明途公共工具库",
5
+ "keywords": [
6
+ "ts",
7
+ "tools"
8
+ ],
9
+ "author": "hcc",
10
+ "license": "ISC",
11
+ "publishConfig": {
12
+ "access": "public"
13
+ },
14
+ "files": [
15
+ "dist"
16
+ ],
17
+ "type": "module",
18
+ "module": "./dist/index.js",
19
+ "types": "./dist/index.d.ts",
20
+ "scripts": {
21
+ "build": "vite build",
22
+ "up": "gulp --gulpfile ../../gulpfile.cjs --cwd ./"
23
+ },
24
+ "dependencies": {
25
+ "axios": "^1.7.9",
26
+ "file-saver": "^2.0.5",
27
+ "jszip": "^3.10.1"
28
+ },
29
+ "devDependencies": {
30
+ "@types/file-saver": "^2.0.7"
31
+ }
32
+ }