@kevisual/oss 0.0.12 → 0.0.13

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 CHANGED
@@ -1,11 +1,9 @@
1
1
  {
2
2
  "name": "@kevisual/oss",
3
- "version": "0.0.12",
3
+ "version": "0.0.13",
4
4
  "main": "dist/index.js",
5
5
  "scripts": {
6
- "build": "tsup",
7
- "dev": "tsup --watch",
8
- "dev:lib": "tsup --watch"
6
+ "build": "bun run bun.config.ts"
9
7
  },
10
8
  "files": [
11
9
  "dist"
@@ -15,6 +13,9 @@
15
13
  "license": "MIT",
16
14
  "type": "module",
17
15
  "devDependencies": {
16
+ "@types/bun": "^1.3.3",
17
+ "@types/node": "^24.10.1",
18
+ "bun-plugin-dts": "^0.3.0",
18
19
  "dotenv": "^16.5.0",
19
20
  "minio": "^8.0.5",
20
21
  "tsup": "^8.4.0"
@@ -35,5 +36,10 @@
35
36
  },
36
37
  "publishConfig": {
37
38
  "access": "public"
39
+ },
40
+ "dependencies": {
41
+ "@types/lodash": "^4.17.21",
42
+ "fast-glob": "^3.3.3",
43
+ "lodash": "^4.17.21"
38
44
  }
39
45
  }
@@ -1,161 +0,0 @@
1
- import * as minio from 'minio';
2
- import { ItemBucketMetadata, Client } from 'minio';
3
- import * as minio_dist_esm_internal_type_mjs from 'minio/dist/esm/internal/type.mjs';
4
- import * as stream from 'stream';
5
-
6
- type UploadedObjectInfo = {
7
- etag: string;
8
- lastModified?: Date;
9
- size?: number;
10
- versionId: string;
11
- metadata?: ItemBucketMetadata;
12
- };
13
- type StatObjectResult = {
14
- size: number;
15
- etag: string;
16
- lastModified: Date;
17
- metaData: ItemBucketMetadata;
18
- versionId?: string | null;
19
- };
20
- type ListFileObject = {
21
- name: string;
22
- size: number;
23
- lastModified: Date;
24
- etag: string;
25
- };
26
- type ListDirectoryObject = {
27
- prefix: string;
28
- size: number;
29
- };
30
- type ListObjectResult = ListFileObject | ListDirectoryObject;
31
- interface OssBaseOperation {
32
- prefix: string;
33
- setPrefix(prefix: string): void;
34
- /**
35
- * 获取对象
36
- * @param objectName 对象名
37
- */
38
- getObject(objectName: string): Promise<any>;
39
- /**
40
- * 上传对象
41
- * @param objectName 对象名
42
- * @param data 数据
43
- */
44
- putObject(objectName: string, data: Buffer | string, metaData?: ItemBucketMetadata): Promise<UploadedObjectInfo>;
45
- /**
46
- * 上传文件
47
- * @param objectName 对象名
48
- * @param filePath 文件路径
49
- */
50
- fPutObject(objectName: string, filePath: string, metaData?: ItemBucketMetadata): Promise<UploadedObjectInfo>;
51
- /**
52
- * 获取对象信息
53
- * @param objectName 对象名
54
- */
55
- statObject(objectName: string): Promise<StatObjectResult>;
56
- /**
57
- * 删除对象
58
- * @param objectName 对象名
59
- */
60
- deleteObject(objectName: string): Promise<any>;
61
- /**
62
- * 列出对象
63
- * @param objectName 对象名
64
- * @param opts 选项
65
- * @param opts.recursive 是否递归
66
- * @param opts.startAfter 开始位置
67
- */
68
- listObjects(objectName: string, opts?: {
69
- /**
70
- * 是否递归
71
- */
72
- recursive?: boolean;
73
- /**
74
- * 开始位置
75
- */
76
- startAfter?: string;
77
- }): Promise<ListObjectResult[]>;
78
- /**
79
- * 复制对象
80
- * @param sourceObject 源对象
81
- * @param targetObject 目标对象
82
- */
83
- copyObject: Client['copyObject'];
84
- }
85
- interface OssService extends OssBaseOperation {
86
- owner: string;
87
- }
88
-
89
- type OssBaseOptions<T = {
90
- [key: string]: any;
91
- }> = {
92
- /**
93
- * 已经初始化好的minio client
94
- */
95
- client: Client;
96
- /**
97
- * 桶名
98
- */
99
- bucketName: string;
100
- /**
101
- * 前缀
102
- */
103
- prefix?: string;
104
- } & T;
105
- declare class OssBase implements OssBaseOperation {
106
- client?: Client;
107
- bucketName: string;
108
- prefix: string;
109
- /**
110
- * 计算字符串或者对象的的md5值
111
- */
112
- hash: (str: string | Buffer | Object) => string;
113
- constructor(opts: OssBaseOptions);
114
- setPrefix(prefix: string): void;
115
- getObject(objectName: string): Promise<stream.Readable>;
116
- getJson(objectName: string): Promise<Record<string, any>>;
117
- /**
118
- * 上传文件, 当是流的时候,中断之后的etag会变,所以传递的时候不要嵌套async await,例如 busboy 监听文件流内部的时候,不要用check
119
- * @param objectName
120
- * @param data
121
- * @param metaData
122
- * @param options 如果文件本身存在,则复制原有的meta的内容
123
- * @returns
124
- */
125
- putObject(objectName: string, data: Buffer | string | Object, metaData?: ItemBucketMetadata, opts?: {
126
- check?: boolean;
127
- isStream?: boolean;
128
- size?: number;
129
- }): Promise<minio_dist_esm_internal_type_mjs.UploadedObjectInfo>;
130
- deleteObject(objectName: string): Promise<void>;
131
- listObjects<IS_FILE = false>(objectName: string, opts?: {
132
- recursive?: boolean;
133
- startAfter?: string;
134
- }): Promise<IS_FILE extends true ? ListFileObject[] : ListObjectResult[]>;
135
- fPutObject(objectName: string, filePath: string, metaData?: ItemBucketMetadata): Promise<any>;
136
- statObject(objectName: string, checkFile?: boolean): Promise<minio.BucketItemStat>;
137
- /**
138
- * 检查文件hash是否一致
139
- * @param objectName
140
- * @param hash
141
- * @returns
142
- */
143
- checkObjectHash(objectName: string, hash: string, meta?: ItemBucketMetadata): Promise<{
144
- success: boolean;
145
- metaData: ItemBucketMetadata | null;
146
- obj: any;
147
- equalMeta?: boolean;
148
- }>;
149
- getMetadata(pathname: string, meta?: ItemBucketMetadata): ItemBucketMetadata;
150
- copyObject(sourceObject: any, targetObject: any): Promise<minio_dist_esm_internal_type_mjs.CopyObjectResult>;
151
- replaceObject(objectName: string, meta: {
152
- [key: string]: string;
153
- }): Promise<minio_dist_esm_internal_type_mjs.CopyObjectResult>;
154
- static create<T extends OssBase, U>(this: new (opts: OssBaseOptions<U>) => T, opts: OssBaseOptions<U>): T;
155
- static fromBase<T extends OssBase, U>(this: new (opts: OssBaseOptions<U>) => T, createOpts: {
156
- oss: OssBase;
157
- opts: Partial<OssBaseOptions<U>>;
158
- }): T;
159
- }
160
-
161
- export { type ListFileObject as L, OssBase as O, type StatObjectResult as S, type UploadedObjectInfo as U, type OssBaseOptions as a, type ListDirectoryObject as b, type ListObjectResult as c, type OssBaseOperation as d, type OssService as e };