minip-bridge 1.0.20 → 1.0.22

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 CHANGED
@@ -24,22 +24,10 @@ navigateTo({page: "index.html", title: "title"})
24
24
  - Directly use in html/js file
25
25
 
26
26
  ```html
27
- <head>
28
- <script type="importmap">
29
- {
30
- "imports": {
31
- "minip-bridge": "https://cdn.jsdelivr.net/npm/minip-bridge/dist/index.mjs",
32
- "kysely": "https://cdn.jsdelivr.net/npm/kysely/dist/esm/index.js"
33
- }
34
- }
35
- </script>
36
- </head>
37
- <body>
38
- <script type="module">
39
- import * as minip from "minip-bridge";
40
-
41
- console.log(minip);
42
- console.log(minip.navigateTo);
43
- </script>
44
- </body>
27
+ <script type="module">
28
+ import * as minip from "minip-bridge";
29
+
30
+ console.log(minip);
31
+ console.log(minip.navigateTo);
32
+ </script>
45
33
  ```
@@ -1,53 +1,6 @@
1
- // src/bridge/index.ts
2
- var jsBridge;
3
- if (window.webkit?.messageHandlers?.MinipNativeInteraction) {
4
- const _callNative = window.webkit.messageHandlers.MinipNativeInteraction;
5
- jsBridge = {
6
- callNative(req) {
7
- return _callNative.postMessage(JSON.stringify(req)).then((res) => JSON.parse(res)).then((res) => {
8
- if (res.code === 0 /* SUCCESS */) {
9
- res.isSuccess = () => true;
10
- const hashData = res.data !== null && res.data !== void 0;
11
- res.hasData = () => hashData;
12
- return res;
13
- } else {
14
- throw new Error(res.msg ?? "Unknown error, res: ");
15
- }
16
- });
17
- },
18
- callNativeSync(req) {
19
- const res = prompt(JSON.stringify(req));
20
- if (res) {
21
- const r = JSON.parse(res);
22
- r.isSuccess = () => true;
23
- const hashData = r.data !== null && r.data !== void 0;
24
- r.hasData = () => hashData;
25
- return r;
26
- }
27
- return {
28
- code: 7 /* FAILED */,
29
- msg: "Unknown error",
30
- isSuccess: () => false,
31
- hasData: () => false
32
- };
33
- }
34
- };
35
- } else {
36
- jsBridge = {
37
- callNative() {
38
- return new Promise((_, reject) => {
39
- reject("Cannot find JavaScript Bridge!!!");
40
- });
41
- },
42
- callNativeSync() {
43
- return {
44
- code: 7 /* FAILED */,
45
- msg: "Cannot find JavaScript Bridge!!!"
46
- };
47
- }
48
- };
49
- }
50
- var bridge_default = jsBridge;
1
+ import {
2
+ bridge_default
3
+ } from "./chunk-PRRQDQWO.mjs";
51
4
 
52
5
  // src/api/sqlite.ts
53
6
  function sqliteOpenDB(path) {
@@ -135,7 +88,6 @@ function sqliteIteratorRelease(dbKey, stmtKey) {
135
88
  }
136
89
 
137
90
  export {
138
- bridge_default,
139
91
  sqliteOpenDB,
140
92
  sqliteCloseDB,
141
93
  sqlitePrepare,
@@ -146,4 +98,4 @@ export {
146
98
  sqliteIteratorNext,
147
99
  sqliteIteratorRelease
148
100
  };
149
- //# sourceMappingURL=chunk-BHXED4CK.mjs.map
101
+ //# sourceMappingURL=chunk-P6PQVD6M.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/api/sqlite.ts"],"sourcesContent":["import jsBridge from \"../bridge\";\r\nimport { MResponse, MResponseWithData } from \"../types\";\r\n\r\nexport function sqliteOpenDB(\r\n path: string,\r\n): Promise<MResponseWithData<{ dbKey: number }>> {\r\n return jsBridge.callNative({\r\n api: \"sqliteOpenDB\",\r\n data: {\r\n path,\r\n },\r\n });\r\n}\r\n\r\nexport function sqliteCloseDB(dbKey: number): Promise<MResponse> {\r\n return jsBridge.callNative({\r\n api: \"sqliteCloseDB\",\r\n data: {\r\n dbKey,\r\n },\r\n });\r\n}\r\n\r\nexport function sqlitePrepare(\r\n dbKey: number,\r\n sql: string,\r\n): Promise<MResponseWithData<{ stmtKey: number; reader: boolean }>> {\r\n return jsBridge.callNative({\r\n api: \"sqlitePrepare\",\r\n data: {\r\n dbKey,\r\n sql,\r\n },\r\n });\r\n}\r\n\r\nexport function sqliteStatementAll(\r\n dbKey: number,\r\n stmtKey: number,\r\n parameters: ReadonlyArray<unknown>,\r\n): Promise<MResponseWithData<unknown[]>> {\r\n return jsBridge.callNative({\r\n api: \"sqliteStatementAll\",\r\n data: {\r\n dbKey,\r\n stmtKey,\r\n parameters,\r\n },\r\n });\r\n}\r\n\r\nexport function sqliteStatementRun(\r\n dbKey: number,\r\n stmtKey: number,\r\n parameters: ReadonlyArray<unknown>,\r\n): Promise<\r\n MResponseWithData<{\r\n changes: number | bigint;\r\n lastInsertRowid: number | bigint;\r\n }>\r\n> {\r\n return jsBridge.callNative({\r\n api: \"sqliteStatementRun\",\r\n data: {\r\n dbKey,\r\n stmtKey,\r\n parameters,\r\n },\r\n });\r\n}\r\n\r\nexport function sqliteExecute(\r\n dbKey: number,\r\n sql: string,\r\n parameters: ReadonlyArray<unknown>,\r\n): Promise<\r\n MResponseWithData<{\r\n reader: boolean;\r\n runRes?: {\r\n changes: number | bigint;\r\n lastInsertRowid: number | bigint;\r\n };\r\n entityData?: unknown[];\r\n }>\r\n> {\r\n return jsBridge.callNative({\r\n api: \"sqliteExecute\",\r\n data: {\r\n dbKey,\r\n sql,\r\n parameters,\r\n },\r\n });\r\n}\r\n\r\nexport function sqliteCreateIterator(\r\n dbKey: number,\r\n stmtKey: number,\r\n parameters: ReadonlyArray<unknown>,\r\n): Promise<MResponse> {\r\n return jsBridge.callNative({\r\n api: \"sqliteCreateIterator\",\r\n data: {\r\n dbKey,\r\n stmtKey,\r\n parameters,\r\n },\r\n });\r\n}\r\n\r\nexport function sqliteIteratorNext(\r\n dbKey: number,\r\n stmtKey: number,\r\n): Promise<MResponseWithData<unknown | undefined>> {\r\n return jsBridge.callNative({\r\n api: \"sqliteIteratorNext\",\r\n data: {\r\n dbKey,\r\n stmtKey,\r\n },\r\n });\r\n}\r\n\r\nexport function sqliteIteratorRelease(\r\n dbKey: number,\r\n stmtKey: number,\r\n): Promise<MResponse> {\r\n return jsBridge.callNative({\r\n api: \"sqliteIteratorRelease\",\r\n data: {\r\n dbKey,\r\n stmtKey,\r\n },\r\n });\r\n}\r\n"],"mappings":";;;;;AAGO,SAAS,aACd,MAC+C;AAC/C,SAAO,eAAS,WAAW;AAAA,IACzB,KAAK;AAAA,IACL,MAAM;AAAA,MACJ;AAAA,IACF;AAAA,EACF,CAAC;AACH;AAEO,SAAS,cAAc,OAAmC;AAC/D,SAAO,eAAS,WAAW;AAAA,IACzB,KAAK;AAAA,IACL,MAAM;AAAA,MACJ;AAAA,IACF;AAAA,EACF,CAAC;AACH;AAEO,SAAS,cACd,OACA,KACkE;AAClE,SAAO,eAAS,WAAW;AAAA,IACzB,KAAK;AAAA,IACL,MAAM;AAAA,MACJ;AAAA,MACA;AAAA,IACF;AAAA,EACF,CAAC;AACH;AAEO,SAAS,mBACd,OACA,SACA,YACuC;AACvC,SAAO,eAAS,WAAW;AAAA,IACzB,KAAK;AAAA,IACL,MAAM;AAAA,MACJ;AAAA,MACA;AAAA,MACA;AAAA,IACF;AAAA,EACF,CAAC;AACH;AAEO,SAAS,mBACd,OACA,SACA,YAMA;AACA,SAAO,eAAS,WAAW;AAAA,IACzB,KAAK;AAAA,IACL,MAAM;AAAA,MACJ;AAAA,MACA;AAAA,MACA;AAAA,IACF;AAAA,EACF,CAAC;AACH;AAEO,SAAS,cACd,OACA,KACA,YAUA;AACA,SAAO,eAAS,WAAW;AAAA,IACzB,KAAK;AAAA,IACL,MAAM;AAAA,MACJ;AAAA,MACA;AAAA,MACA;AAAA,IACF;AAAA,EACF,CAAC;AACH;AAEO,SAAS,qBACd,OACA,SACA,YACoB;AACpB,SAAO,eAAS,WAAW;AAAA,IACzB,KAAK;AAAA,IACL,MAAM;AAAA,MACJ;AAAA,MACA;AAAA,MACA;AAAA,IACF;AAAA,EACF,CAAC;AACH;AAEO,SAAS,mBACd,OACA,SACiD;AACjD,SAAO,eAAS,WAAW;AAAA,IACzB,KAAK;AAAA,IACL,MAAM;AAAA,MACJ;AAAA,MACA;AAAA,IACF;AAAA,EACF,CAAC;AACH;AAEO,SAAS,sBACd,OACA,SACoB;AACpB,SAAO,eAAS,WAAW;AAAA,IACzB,KAAK;AAAA,IACL,MAAM;AAAA,MACJ;AAAA,MACA;AAAA,IACF;AAAA,EACF,CAAC;AACH;","names":[]}
@@ -0,0 +1,54 @@
1
+ // src/bridge/index.ts
2
+ var jsBridge;
3
+ if (window.webkit?.messageHandlers?.MinipNativeInteraction) {
4
+ const _callNative = window.webkit.messageHandlers.MinipNativeInteraction;
5
+ jsBridge = {
6
+ callNative(req) {
7
+ return _callNative.postMessage(JSON.stringify(req)).then((res) => JSON.parse(res)).then((res) => {
8
+ if (res.code === 0 /* SUCCESS */) {
9
+ res.isSuccess = () => true;
10
+ const hashData = res.data !== null && res.data !== void 0;
11
+ res.hasData = () => hashData;
12
+ return res;
13
+ } else {
14
+ throw new Error(res.msg ?? "Unknown error, res: ");
15
+ }
16
+ });
17
+ },
18
+ callNativeSync(req) {
19
+ const res = prompt(JSON.stringify(req));
20
+ if (res) {
21
+ const r = JSON.parse(res);
22
+ if (r.code === 0 /* SUCCESS */) {
23
+ r.isSuccess = () => true;
24
+ const hashData = r.data !== null && r.data !== void 0;
25
+ r.hasData = () => hashData;
26
+ return r;
27
+ } else {
28
+ throw new Error(r.msg ?? "Unknown error, res: ");
29
+ }
30
+ }
31
+ throw new Error("Unknown error");
32
+ }
33
+ };
34
+ } else {
35
+ jsBridge = {
36
+ callNative() {
37
+ return new Promise((_, reject) => {
38
+ reject("Cannot find JavaScript Bridge!!!");
39
+ });
40
+ },
41
+ callNativeSync() {
42
+ return {
43
+ code: 7 /* FAILED */,
44
+ msg: "Cannot find JavaScript Bridge!!!"
45
+ };
46
+ }
47
+ };
48
+ }
49
+ var bridge_default = jsBridge;
50
+
51
+ export {
52
+ bridge_default
53
+ };
54
+ //# sourceMappingURL=chunk-PRRQDQWO.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/bridge/index.ts"],"sourcesContent":["import { MResponseStatusCode } from \"../types\";\r\nimport { MRequest } from \"../types/request\";\r\n\r\ninterface WebKitCallable {\r\n postMessage: (data: string) => Promise<string>;\r\n}\r\ndeclare global {\r\n interface Window {\r\n webkit?: {\r\n messageHandlers?: {\r\n MinipNativeInteraction?: WebKitCallable;\r\n };\r\n };\r\n }\r\n}\r\n\r\nlet jsBridge: {\r\n callNative: <T>(req?: MRequest<T>) => Promise<any>;\r\n callNativeSync: <T>(req?: MRequest<T>) => any;\r\n};\r\n\r\n// apple webkit\r\nif (window.webkit?.messageHandlers?.MinipNativeInteraction) {\r\n const _callNative = window.webkit.messageHandlers.MinipNativeInteraction;\r\n jsBridge = {\r\n callNative(req) {\r\n return _callNative\r\n .postMessage(JSON.stringify(req))\r\n .then((res) => JSON.parse(res))\r\n .then((res) => {\r\n if (res.code === MResponseStatusCode.SUCCESS) {\r\n res.isSuccess = () => true;\r\n const hashData = res.data !== null && res.data !== undefined;\r\n res.hasData = () => hashData;\r\n return res;\r\n } else {\r\n throw new Error(res.msg ?? \"Unknown error, res: \");\r\n }\r\n });\r\n },\r\n callNativeSync(req) {\r\n const res = prompt(JSON.stringify(req));\r\n if (res) {\r\n const r = JSON.parse(res);\r\n\r\n if (r.code === MResponseStatusCode.SUCCESS) {\r\n r.isSuccess = () => true;\r\n const hashData = r.data !== null && r.data !== undefined;\r\n r.hasData = () => hashData;\r\n return r;\r\n } else {\r\n throw new Error(r.msg ?? \"Unknown error, res: \");\r\n }\r\n }\r\n throw new Error(\"Unknown error\");\r\n },\r\n };\r\n}\r\n// error\r\nelse {\r\n jsBridge = {\r\n callNative() {\r\n return new Promise((_, reject) => {\r\n reject(\"Cannot find JavaScript Bridge!!!\");\r\n });\r\n },\r\n callNativeSync() {\r\n return {\r\n code: MResponseStatusCode.FAILED,\r\n msg: \"Cannot find JavaScript Bridge!!!\",\r\n };\r\n },\r\n };\r\n}\r\n\r\nexport default jsBridge;\r\n"],"mappings":";AAgBA,IAAI;AAMJ,IAAI,OAAO,QAAQ,iBAAiB,wBAAwB;AAC1D,QAAM,cAAc,OAAO,OAAO,gBAAgB;AAClD,aAAW;AAAA,IACT,WAAW,KAAK;AACd,aAAO,YACJ,YAAY,KAAK,UAAU,GAAG,CAAC,EAC/B,KAAK,CAAC,QAAQ,KAAK,MAAM,GAAG,CAAC,EAC7B,KAAK,CAAC,QAAQ;AACb,YAAI,IAAI,0BAAsC;AAC5C,cAAI,YAAY,MAAM;AACtB,gBAAM,WAAW,IAAI,SAAS,QAAQ,IAAI,SAAS;AACnD,cAAI,UAAU,MAAM;AACpB,iBAAO;AAAA,QACT,OAAO;AACL,gBAAM,IAAI,MAAM,IAAI,OAAO,sBAAsB;AAAA,QACnD;AAAA,MACF,CAAC;AAAA,IACL;AAAA,IACA,eAAe,KAAK;AAClB,YAAM,MAAM,OAAO,KAAK,UAAU,GAAG,CAAC;AACtC,UAAI,KAAK;AACP,cAAM,IAAI,KAAK,MAAM,GAAG;AAExB,YAAI,EAAE,0BAAsC;AAC1C,YAAE,YAAY,MAAM;AACpB,gBAAM,WAAW,EAAE,SAAS,QAAQ,EAAE,SAAS;AAC/C,YAAE,UAAU,MAAM;AAClB,iBAAO;AAAA,QACT,OAAO;AACL,gBAAM,IAAI,MAAM,EAAE,OAAO,sBAAsB;AAAA,QACjD;AAAA,MACF;AACA,YAAM,IAAI,MAAM,eAAe;AAAA,IACjC;AAAA,EACF;AACF,OAEK;AACH,aAAW;AAAA,IACT,aAAa;AACX,aAAO,IAAI,QAAQ,CAAC,GAAG,WAAW;AAChC,eAAO,kCAAkC;AAAA,MAC3C,CAAC;AAAA,IACH;AAAA,IACA,iBAAiB;AACf,aAAO;AAAA,QACL;AAAA,QACA,KAAK;AAAA,MACP;AAAA,IACF;AAAA,EACF;AACF;AAEA,IAAO,iBAAQ;","names":[]}
@@ -0,0 +1,54 @@
1
+ interface FileStats {
2
+ dev: number;
3
+ ino: number;
4
+ mode: number;
5
+ nlink: number;
6
+ uid: number;
7
+ gid: number;
8
+ rdev: number;
9
+ size: number;
10
+ blksize: number;
11
+ blocks: number;
12
+ atimeMs: number;
13
+ mtimeMs: number;
14
+ ctimeMs: number;
15
+ birthtimeMs: number;
16
+ atime: Date;
17
+ mtime: Date;
18
+ ctime: Date;
19
+ birthtime: Date;
20
+ isDirectory(): boolean;
21
+ isFile(): boolean;
22
+ isSymbolicLink(): boolean;
23
+ }
24
+
25
+ declare function access(path: string, mode?: number): Promise<void>;
26
+ declare function accessSync(path: string, mode?: number): void;
27
+ declare function unlink(path: string): Promise<void>;
28
+ declare function unlinkSync(path: string): void;
29
+ declare function rename(oldPath: string, newPath: string): Promise<void>;
30
+ declare function renameSync(oldPath: string, newPath: string): void;
31
+ declare function stat(path: string): Promise<FileStats>;
32
+ declare function statSync(path: string): FileStats;
33
+ declare function rm(path: string): Promise<void>;
34
+ declare function rmSync(path: string): void;
35
+
36
+ declare function mkdir(path: string, recursive?: boolean): Promise<void>;
37
+ declare function mkdirSync(path: string, recursive?: boolean): void;
38
+ declare function readDir(path: string): Promise<string[]>;
39
+ declare function readDirSync(path: string): string[];
40
+ declare function rmdir(path: string, force?: boolean): Promise<void>;
41
+ declare function rmdirSync(path: string, force?: boolean): void;
42
+
43
+ declare function readFile(path: string): Promise<ArrayBuffer>;
44
+ declare function readFileSync(path: string): ArrayBuffer;
45
+ declare function writeFile(path: string, data: ArrayBuffer | string): Promise<void>;
46
+ declare function writeFileSync(path: string, data: ArrayBuffer | string): void;
47
+ declare function appendFile(path: string, data: ArrayBuffer | string): Promise<void>;
48
+ declare function appendFileSync(path: string, data: ArrayBuffer | string): void;
49
+ declare function copyFile(src: string, dest: string): Promise<void>;
50
+ declare function copyFileSync(src: string, dest: string): void;
51
+ declare function truncate(path: string, length: number): Promise<void>;
52
+ declare function truncateSync(path: string, length: number): void;
53
+
54
+ export { access, accessSync, appendFile, appendFileSync, copyFile, copyFileSync, mkdir, mkdirSync, readDir, readDirSync, readFile, readFileSync, rename, renameSync, rm, rmSync, rmdir, rmdirSync, stat, statSync, truncate, truncateSync, unlink, unlinkSync, writeFile, writeFileSync };
@@ -0,0 +1,359 @@
1
+ import {
2
+ bridge_default
3
+ } from "../chunk-PRRQDQWO.mjs";
4
+
5
+ // src/fs/common.ts
6
+ async function access(path, mode) {
7
+ return bridge_default.callNative({
8
+ api: "fsAccess",
9
+ data: {
10
+ path,
11
+ mode
12
+ }
13
+ }).then((res) => {
14
+ const r = res;
15
+ if (!r.hasData() || !r.data) {
16
+ throw new Error(r.msg ?? "cannot access this file or directory");
17
+ }
18
+ });
19
+ }
20
+ function accessSync(path, mode) {
21
+ const res = bridge_default.callNativeSync({
22
+ api: "fsAccessSync",
23
+ data: {
24
+ path,
25
+ mode
26
+ }
27
+ });
28
+ if (!res.hasData() || !res.data) {
29
+ throw new Error(res.msg ?? "cannot access this file or directory");
30
+ }
31
+ }
32
+ async function unlink(path) {
33
+ await bridge_default.callNative({
34
+ api: "fsUnlink",
35
+ data: {
36
+ path
37
+ }
38
+ });
39
+ }
40
+ function unlinkSync(path) {
41
+ bridge_default.callNativeSync({
42
+ api: "fsUnlinkSync",
43
+ data: {
44
+ path
45
+ }
46
+ });
47
+ }
48
+ async function rename(oldPath, newPath) {
49
+ await bridge_default.callNative({
50
+ api: "fsRename",
51
+ data: {
52
+ oldPath,
53
+ newPath
54
+ }
55
+ });
56
+ }
57
+ function renameSync(oldPath, newPath) {
58
+ bridge_default.callNativeSync({
59
+ api: "fsRenameSync",
60
+ data: {
61
+ oldPath,
62
+ newPath
63
+ }
64
+ });
65
+ }
66
+ async function stat(path) {
67
+ const res = await bridge_default.callNative({
68
+ api: "fsStat",
69
+ data: {
70
+ path
71
+ }
72
+ });
73
+ const file = res.data;
74
+ file.atime = new Date(file.atimeMs);
75
+ file.mtime = new Date(file.mtimeMs);
76
+ file.ctime = new Date(file.ctimeMs);
77
+ const S_IFDIR = 16384;
78
+ const S_IFREG = 32768;
79
+ const S_IFLNK = 40960;
80
+ file.isDirectory = function() {
81
+ return (this.mode & S_IFDIR) === S_IFDIR;
82
+ };
83
+ file.isFile = function() {
84
+ return (this.mode & S_IFREG) === S_IFREG;
85
+ };
86
+ file.isSymbolicLink = function() {
87
+ return (this.mode & S_IFLNK) === S_IFLNK;
88
+ };
89
+ return file;
90
+ }
91
+ function statSync(path) {
92
+ const res = bridge_default.callNativeSync({
93
+ api: "fsStatSync",
94
+ data: {
95
+ path
96
+ }
97
+ });
98
+ const file = res.data;
99
+ file.atime = new Date(file.atimeMs);
100
+ file.mtime = new Date(file.mtimeMs);
101
+ file.ctime = new Date(file.ctimeMs);
102
+ const S_IFDIR = 16384;
103
+ const S_IFREG = 32768;
104
+ const S_IFLNK = 40960;
105
+ file.isDirectory = function() {
106
+ return (this.mode & S_IFDIR) === S_IFDIR;
107
+ };
108
+ file.isFile = function() {
109
+ return (this.mode & S_IFREG) === S_IFREG;
110
+ };
111
+ file.isSymbolicLink = function() {
112
+ return (this.mode & S_IFLNK) === S_IFLNK;
113
+ };
114
+ return file;
115
+ }
116
+ async function rm(path) {
117
+ await bridge_default.callNative({
118
+ api: "fsRm",
119
+ data: {
120
+ path
121
+ }
122
+ });
123
+ }
124
+ function rmSync(path) {
125
+ bridge_default.callNativeSync({
126
+ api: "fsRmSync",
127
+ data: {
128
+ path
129
+ }
130
+ });
131
+ }
132
+
133
+ // src/fs/dir.ts
134
+ async function mkdir(path, recursive = true) {
135
+ await bridge_default.callNative({
136
+ api: "fsMkdir",
137
+ data: {
138
+ path,
139
+ recursive
140
+ }
141
+ });
142
+ }
143
+ function mkdirSync(path, recursive = true) {
144
+ bridge_default.callNativeSync({
145
+ api: "fsMkdirSync",
146
+ data: {
147
+ path,
148
+ recursive
149
+ }
150
+ });
151
+ }
152
+ function readDir(path) {
153
+ return bridge_default.callNative({
154
+ api: "fsReadDir",
155
+ data: {
156
+ path
157
+ }
158
+ }).then((res) => res).then((res) => res.data);
159
+ }
160
+ function readDirSync(path) {
161
+ const res = bridge_default.callNativeSync({
162
+ api: "fsReadDirSync",
163
+ data: {
164
+ path
165
+ }
166
+ });
167
+ return res.data;
168
+ }
169
+ async function rmdir(path, force) {
170
+ await bridge_default.callNative({
171
+ api: "fsRmdir",
172
+ data: {
173
+ path,
174
+ force
175
+ }
176
+ });
177
+ }
178
+ function rmdirSync(path, force) {
179
+ bridge_default.callNativeSync({
180
+ api: "fsRmdirSync",
181
+ data: {
182
+ path,
183
+ force
184
+ }
185
+ });
186
+ }
187
+
188
+ // src/fs/file.ts
189
+ function base64ToArrayBuffer(base64) {
190
+ const binaryString = atob(base64);
191
+ const bytes = new Uint8Array(binaryString.length);
192
+ for (let i = 0; i < binaryString.length; i++) {
193
+ bytes[i] = binaryString.charCodeAt(i);
194
+ }
195
+ return bytes.buffer;
196
+ }
197
+ function arrayBufferToBase64(buffer) {
198
+ let binary = "";
199
+ const bytes = new Uint8Array(buffer);
200
+ const len = bytes.byteLength;
201
+ for (let i = 0; i < len; i++) {
202
+ binary += String.fromCharCode(bytes[i]);
203
+ }
204
+ return btoa(binary);
205
+ }
206
+ function readFile(path) {
207
+ return bridge_default.callNative({
208
+ api: "fsReadFile",
209
+ data: {
210
+ path
211
+ }
212
+ }).then((res) => res.data).then((res) => base64ToArrayBuffer(res));
213
+ }
214
+ function readFileSync(path) {
215
+ const res = bridge_default.callNativeSync({
216
+ api: "fsReadFileSync",
217
+ data: {
218
+ path
219
+ }
220
+ });
221
+ return base64ToArrayBuffer(res.data);
222
+ }
223
+ async function writeFile(path, data) {
224
+ let base64 = "";
225
+ if (data instanceof ArrayBuffer) {
226
+ base64 = arrayBufferToBase64(data);
227
+ } else {
228
+ const encoder = new TextEncoder();
229
+ const uint8Array = encoder.encode(data);
230
+ const arrayBuffer = uint8Array.buffer;
231
+ base64 = arrayBufferToBase64(arrayBuffer);
232
+ }
233
+ await bridge_default.callNative({
234
+ api: "fsWriteFile",
235
+ data: {
236
+ path,
237
+ data: base64
238
+ }
239
+ });
240
+ }
241
+ function writeFileSync(path, data) {
242
+ let base64 = "";
243
+ if (data instanceof ArrayBuffer) {
244
+ base64 = arrayBufferToBase64(data);
245
+ } else {
246
+ const encoder = new TextEncoder();
247
+ const uint8Array = encoder.encode(data);
248
+ const arrayBuffer = uint8Array.buffer;
249
+ base64 = arrayBufferToBase64(arrayBuffer);
250
+ }
251
+ bridge_default.callNativeSync({
252
+ api: "fsWriteFileSync",
253
+ data: {
254
+ path,
255
+ data: base64
256
+ }
257
+ });
258
+ }
259
+ async function appendFile(path, data) {
260
+ let base64 = "";
261
+ if (data instanceof ArrayBuffer) {
262
+ base64 = arrayBufferToBase64(data);
263
+ } else {
264
+ const encoder = new TextEncoder();
265
+ const uint8Array = encoder.encode(data);
266
+ const arrayBuffer = uint8Array.buffer;
267
+ base64 = arrayBufferToBase64(arrayBuffer);
268
+ }
269
+ await bridge_default.callNative({
270
+ api: "fsAppendFile",
271
+ data: {
272
+ path,
273
+ data: base64
274
+ }
275
+ });
276
+ }
277
+ function appendFileSync(path, data) {
278
+ let base64 = "";
279
+ if (data instanceof ArrayBuffer) {
280
+ base64 = arrayBufferToBase64(data);
281
+ } else {
282
+ const encoder = new TextEncoder();
283
+ const uint8Array = encoder.encode(data);
284
+ const arrayBuffer = uint8Array.buffer;
285
+ base64 = arrayBufferToBase64(arrayBuffer);
286
+ }
287
+ bridge_default.callNativeSync({
288
+ api: "fsAppendFileSync",
289
+ data: {
290
+ path,
291
+ data: base64
292
+ }
293
+ });
294
+ }
295
+ async function copyFile(src, dest) {
296
+ await bridge_default.callNative({
297
+ api: "fsCopyFile",
298
+ data: {
299
+ src,
300
+ dest
301
+ }
302
+ });
303
+ }
304
+ function copyFileSync(src, dest) {
305
+ bridge_default.callNativeSync({
306
+ api: "fsCopyFileSync",
307
+ data: {
308
+ src,
309
+ dest
310
+ }
311
+ });
312
+ }
313
+ async function truncate(path, length) {
314
+ await bridge_default.callNative({
315
+ api: "fsTruncate",
316
+ data: {
317
+ path,
318
+ length
319
+ }
320
+ });
321
+ }
322
+ function truncateSync(path, length) {
323
+ bridge_default.callNativeSync({
324
+ api: "fsTruncateSync",
325
+ data: {
326
+ path,
327
+ length
328
+ }
329
+ });
330
+ }
331
+ export {
332
+ access,
333
+ accessSync,
334
+ appendFile,
335
+ appendFileSync,
336
+ copyFile,
337
+ copyFileSync,
338
+ mkdir,
339
+ mkdirSync,
340
+ readDir,
341
+ readDirSync,
342
+ readFile,
343
+ readFileSync,
344
+ rename,
345
+ renameSync,
346
+ rm,
347
+ rmSync,
348
+ rmdir,
349
+ rmdirSync,
350
+ stat,
351
+ statSync,
352
+ truncate,
353
+ truncateSync,
354
+ unlink,
355
+ unlinkSync,
356
+ writeFile,
357
+ writeFileSync
358
+ };
359
+ //# sourceMappingURL=index.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../src/fs/common.ts","../../src/fs/dir.ts","../../src/fs/file.ts"],"sourcesContent":["import jsBridge from \"../bridge\";\r\nimport { MResponseWithData } from \"../types\";\r\nimport { FileStats } from \"../types/FileStats\";\r\n\r\nexport async function access(path: string, mode?: number): Promise<void> {\r\n return jsBridge.callNative({\r\n api: \"fsAccess\",\r\n data: {\r\n path,\r\n mode\r\n }\r\n }).then(res => {\r\n const r = res as MResponseWithData<boolean>\r\n if (!r.hasData() || !r.data) {\r\n throw new Error(r.msg ?? \"cannot access this file or directory\")\r\n }\r\n });\r\n}\r\n\r\nexport function accessSync(path: string, mode?: number) {\r\n const res = jsBridge.callNativeSync({\r\n api: \"fsAccessSync\",\r\n data: {\r\n path,\r\n mode\r\n }\r\n }) as MResponseWithData<boolean>\r\n if (!res.hasData() || !res.data) {\r\n throw new Error(res.msg ?? \"cannot access this file or directory\")\r\n }\r\n}\r\n\r\nexport async function unlink(path: string) {\r\n await jsBridge.callNative({\r\n api: \"fsUnlink\",\r\n data: {\r\n path\r\n }\r\n })\r\n}\r\n\r\nexport function unlinkSync(path: string) {\r\n jsBridge.callNativeSync({\r\n api: \"fsUnlinkSync\",\r\n data: {\r\n path\r\n }\r\n })\r\n}\r\n\r\nexport async function rename(oldPath: string, newPath: string) {\r\n await jsBridge.callNative({\r\n api: \"fsRename\",\r\n data: {\r\n oldPath,\r\n newPath\r\n }\r\n })\r\n}\r\n\r\nexport function renameSync(oldPath: string, newPath: string) {\r\n jsBridge.callNativeSync({\r\n api: \"fsRenameSync\",\r\n data: {\r\n oldPath,\r\n newPath\r\n }\r\n })\r\n}\r\n\r\n// todo: check !!!!!\r\nexport async function stat(path: string) {\r\n const res = await jsBridge.callNative({\r\n api: \"fsStat\",\r\n data: {\r\n path\r\n }\r\n }) as MResponseWithData<FileStats>\r\n\r\n const file = res.data\r\n\r\n file.atime = new Date(file.atimeMs);\r\n file.mtime = new Date(file.mtimeMs);\r\n file.ctime = new Date(file.ctimeMs);\r\n\r\n const S_IFDIR = 0o040000;\r\n const S_IFREG = 0o100000;\r\n const S_IFLNK = 0o120000;\r\n\r\n file.isDirectory = function () {\r\n return (this.mode & S_IFDIR) === S_IFDIR;\r\n };\r\n\r\n file.isFile = function () {\r\n return (this.mode & S_IFREG) === S_IFREG;\r\n };\r\n\r\n file.isSymbolicLink = function () {\r\n return (this.mode & S_IFLNK) === S_IFLNK;\r\n };\r\n\r\n return file\r\n}\r\n\r\nexport function statSync(path: string) {\r\n const res = jsBridge.callNativeSync({\r\n api: \"fsStatSync\",\r\n data: {\r\n path\r\n }\r\n }) as MResponseWithData<FileStats>\r\n\r\n const file = res.data\r\n\r\n file.atime = new Date(file.atimeMs);\r\n file.mtime = new Date(file.mtimeMs);\r\n file.ctime = new Date(file.ctimeMs);\r\n\r\n const S_IFDIR = 0o040000;\r\n const S_IFREG = 0o100000;\r\n const S_IFLNK = 0o120000;\r\n\r\n file.isDirectory = function () {\r\n return (this.mode & S_IFDIR) === S_IFDIR;\r\n };\r\n\r\n file.isFile = function () {\r\n return (this.mode & S_IFREG) === S_IFREG;\r\n };\r\n\r\n file.isSymbolicLink = function () {\r\n return (this.mode & S_IFLNK) === S_IFLNK;\r\n };\r\n\r\n return file\r\n}\r\n\r\nexport async function rm(path: string) {\r\n await jsBridge.callNative({\r\n api: \"fsRm\",\r\n data: {\r\n path\r\n }\r\n })\r\n}\r\n\r\nexport function rmSync(path: string) {\r\n jsBridge.callNativeSync({\r\n api: \"fsRmSync\",\r\n data: {\r\n path\r\n }\r\n })\r\n}","import jsBridge from \"../bridge\";\r\nimport { MResponseWithData } from \"../types\";\r\n\r\nexport async function mkdir(path: string, recursive: boolean = true) {\r\n await jsBridge.callNative({\r\n api: \"fsMkdir\",\r\n data: {\r\n path,\r\n recursive\r\n }\r\n })\r\n}\r\n\r\nexport function mkdirSync(path: string, recursive: boolean = true) {\r\n jsBridge.callNativeSync({\r\n api: \"fsMkdirSync\",\r\n data: {\r\n path,\r\n recursive\r\n }\r\n })\r\n}\r\n\r\nexport function readDir(path: string): Promise<string[]> {\r\n return jsBridge.callNative({\r\n api: \"fsReadDir\",\r\n data: {\r\n path\r\n }\r\n }).then(res => res as MResponseWithData<string[]>)\r\n .then(res => res.data)\r\n}\r\n\r\nexport function readDirSync(path: string): string[] {\r\n const res = jsBridge.callNativeSync({\r\n api: \"fsReadDirSync\",\r\n data: {\r\n path\r\n }\r\n }) as MResponseWithData<string[]>\r\n return res.data\r\n}\r\n\r\nexport async function rmdir(path: string, force?: boolean) {\r\n await jsBridge.callNative({\r\n api: \"fsRmdir\",\r\n data: {\r\n path,\r\n force\r\n }\r\n })\r\n}\r\n\r\nexport function rmdirSync(path: string, force?: boolean) {\r\n jsBridge.callNativeSync({\r\n api: \"fsRmdirSync\",\r\n data: {\r\n path,\r\n force\r\n }\r\n })\r\n}\r\n","import jsBridge from \"../bridge\";\r\nimport { MResponseWithData } from \"../types\";\r\n\r\nfunction base64ToArrayBuffer(base64: string): ArrayBuffer {\r\n const binaryString = atob(base64);\r\n const bytes = new Uint8Array(binaryString.length);\r\n for (let i = 0; i < binaryString.length; i++) {\r\n bytes[i] = binaryString.charCodeAt(i);\r\n }\r\n return bytes.buffer;\r\n}\r\n\r\nfunction arrayBufferToBase64(buffer: ArrayBuffer): string {\r\n let binary = '';\r\n const bytes = new Uint8Array(buffer);\r\n const len = bytes.byteLength;\r\n\r\n for (let i = 0; i < len; i++) {\r\n binary += String.fromCharCode(bytes[i]);\r\n }\r\n\r\n return btoa(binary);\r\n}\r\n\r\nexport function readFile(path: string): Promise<ArrayBuffer> {\r\n return jsBridge.callNative({\r\n api: \"fsReadFile\",\r\n data: {\r\n path\r\n }\r\n }).then(res => (res as MResponseWithData<string>).data)\r\n .then(res => base64ToArrayBuffer(res))\r\n}\r\n\r\nexport function readFileSync(path: string): ArrayBuffer {\r\n const res = jsBridge.callNativeSync({\r\n api: \"fsReadFileSync\",\r\n data: {\r\n path\r\n }\r\n }) as MResponseWithData<string>\r\n return base64ToArrayBuffer(res.data)\r\n}\r\n\r\nexport async function writeFile(path: string, data: ArrayBuffer | string) {\r\n let base64 = \"\"\r\n if (data instanceof ArrayBuffer) {\r\n base64 = arrayBufferToBase64(data)\r\n } else {\r\n const encoder = new TextEncoder();\r\n const uint8Array = encoder.encode(data);\r\n const arrayBuffer = uint8Array.buffer;\r\n base64 = arrayBufferToBase64(arrayBuffer as ArrayBuffer)\r\n }\r\n\r\n\r\n await jsBridge.callNative({\r\n api: \"fsWriteFile\",\r\n data: {\r\n path,\r\n data: base64\r\n }\r\n })\r\n}\r\n\r\nexport function writeFileSync(path: string, data: ArrayBuffer | string) {\r\n let base64 = \"\"\r\n if (data instanceof ArrayBuffer) {\r\n base64 = arrayBufferToBase64(data)\r\n } else {\r\n const encoder = new TextEncoder();\r\n const uint8Array = encoder.encode(data);\r\n const arrayBuffer = uint8Array.buffer;\r\n base64 = arrayBufferToBase64(arrayBuffer as ArrayBuffer)\r\n }\r\n\r\n jsBridge.callNativeSync({\r\n api: \"fsWriteFileSync\",\r\n data: {\r\n path,\r\n data: base64\r\n }\r\n })\r\n}\r\n\r\nexport async function appendFile(path: string, data: ArrayBuffer | string) {\r\n let base64 = \"\"\r\n if (data instanceof ArrayBuffer) {\r\n base64 = arrayBufferToBase64(data)\r\n } else {\r\n const encoder = new TextEncoder();\r\n const uint8Array = encoder.encode(data);\r\n const arrayBuffer = uint8Array.buffer;\r\n base64 = arrayBufferToBase64(arrayBuffer as ArrayBuffer)\r\n }\r\n\r\n await jsBridge.callNative({\r\n api: \"fsAppendFile\",\r\n data: {\r\n path,\r\n data: base64\r\n }\r\n })\r\n}\r\n\r\nexport function appendFileSync(path: string, data: ArrayBuffer | string) {\r\n let base64 = \"\"\r\n if (data instanceof ArrayBuffer) {\r\n base64 = arrayBufferToBase64(data)\r\n } else {\r\n const encoder = new TextEncoder();\r\n const uint8Array = encoder.encode(data);\r\n const arrayBuffer = uint8Array.buffer;\r\n base64 = arrayBufferToBase64(arrayBuffer as ArrayBuffer)\r\n }\r\n\r\n jsBridge.callNativeSync({\r\n api: \"fsAppendFileSync\",\r\n data: {\r\n path,\r\n data: base64\r\n }\r\n })\r\n}\r\n\r\nexport async function copyFile(src: string, dest: string) {\r\n await jsBridge.callNative({\r\n api: \"fsCopyFile\",\r\n data: {\r\n src,\r\n dest\r\n }\r\n })\r\n}\r\n\r\nexport function copyFileSync(src: string, dest: string) {\r\n jsBridge.callNativeSync({\r\n api: \"fsCopyFileSync\",\r\n data: {\r\n src,\r\n dest\r\n }\r\n })\r\n}\r\n\r\nexport async function truncate(path: string, length: number) {\r\n await jsBridge.callNative({\r\n api: \"fsTruncate\",\r\n data: {\r\n path,\r\n length\r\n }\r\n })\r\n}\r\n\r\nexport function truncateSync(path: string, length: number) {\r\n jsBridge.callNativeSync({\r\n api: \"fsTruncateSync\",\r\n data: {\r\n path,\r\n length\r\n }\r\n })\r\n}"],"mappings":"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","names":[]}
package/dist/index.d.mts CHANGED
@@ -117,6 +117,24 @@ interface File {
117
117
  hash: string;
118
118
  }
119
119
 
120
+ interface DeviceInfo {
121
+ language: string;
122
+ model: string;
123
+ system: string;
124
+ screen: ScreenInfo;
125
+ safeAreaInfo: SafeAreaInfo;
126
+ }
127
+ interface ScreenInfo {
128
+ width: number;
129
+ height: number;
130
+ }
131
+ interface SafeAreaInfo {
132
+ left: number;
133
+ right: number;
134
+ top: number;
135
+ bottom: number;
136
+ }
137
+
120
138
  declare function navigateTo(data: {
121
139
  page: string;
122
140
  title?: string;
@@ -162,24 +180,6 @@ declare function setKVStorageSync(key: string, value: string): MResponse;
162
180
  declare function deleteKVStorageSync(key: string): MResponse;
163
181
  declare function clearKVStorageSync(): MResponse;
164
182
 
165
- interface DeviceInfo {
166
- language: string;
167
- model: string;
168
- system: string;
169
- screen: ScreenInfo;
170
- safeAreaInfo: SafeAreaInfo;
171
- }
172
- interface ScreenInfo {
173
- width: number;
174
- height: number;
175
- }
176
- interface SafeAreaInfo {
177
- left: number;
178
- right: number;
179
- top: number;
180
- bottom: number;
181
- }
182
-
183
183
  /**
184
184
  *
185
185
  * @param type medium as default
@@ -235,4 +235,4 @@ declare global {
235
235
  }
236
236
  }
237
237
 
238
- export { type AlertAction, type AlertConfig, type AppInfo, type DateAndTimePickerConfig, type HUDType, type MRequest, type MRequestBase, type MRequestWithData, type MResponse, MResponseStatusCode, type MResponseWithData, type MultipleColumnsPickerConfig, type ShowHUDRequest, type SingleColumnPickerConfig, clearKVStorage, clearKVStorageSync, clearMemoryStorage, closeApp, deleteKVStorage, deleteKVStorageSync, disablePullDownRefresh, enablePullDownRefresh, getClipboardData, getDeviceInfo, getDeviceInfoSync, getInstalledAppList, getKVStorage, getKVStorageSync, getMemoryStorage, hideHUD, installApp, navigateBack, navigateTo, onPullDownRefresh, openSettings, openWebsite, previewImage, previewVideo, redirectTo, removeMemoryStorage, scanQRCode, setClipboardData, setKVStorage, setKVStorageSync, setMemoryStorage, setMemoryStorageIfNotExist, setNavigationBarColor, setNavigationBarTitle, showAlert, showAppDetail, showHUD, showPicker, sqliteCloseDB, sqliteCreateIterator, sqliteExecute, sqliteIteratorNext, sqliteIteratorRelease, sqliteOpenDB, sqlitePrepare, sqliteStatementAll, sqliteStatementRun, startPullDownRefresh, stopPullDownRefresh, vibrate };
238
+ export { type AlertAction, type AlertConfig, type AppInfo, type DateAndTimePickerConfig, type DeviceInfo, type HUDType, type MRequest, type MRequestBase, type MRequestWithData, type MResponse, MResponseStatusCode, type MResponseWithData, type MultipleColumnsPickerConfig, type ShowHUDRequest, type SingleColumnPickerConfig, clearKVStorage, clearKVStorageSync, clearMemoryStorage, closeApp, deleteKVStorage, deleteKVStorageSync, disablePullDownRefresh, enablePullDownRefresh, getClipboardData, getDeviceInfo, getDeviceInfoSync, getInstalledAppList, getKVStorage, getKVStorageSync, getMemoryStorage, hideHUD, installApp, navigateBack, navigateTo, onPullDownRefresh, openSettings, openWebsite, previewImage, previewVideo, redirectTo, removeMemoryStorage, scanQRCode, setClipboardData, setKVStorage, setKVStorageSync, setMemoryStorage, setMemoryStorageIfNotExist, setNavigationBarColor, setNavigationBarTitle, showAlert, showAppDetail, showHUD, showPicker, sqliteCloseDB, sqliteCreateIterator, sqliteExecute, sqliteIteratorNext, sqliteIteratorRelease, sqliteOpenDB, sqlitePrepare, sqliteStatementAll, sqliteStatementRun, startPullDownRefresh, stopPullDownRefresh, vibrate };