githttp-fs-client 1.2.0 → 1.3.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 +18 -6
- package/dist/index.d.ts +18 -3
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +19 -3
- package/dist/index.js.map +1 -1
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -46,6 +46,17 @@ const pong = await client.sendPing();
|
|
|
46
46
|
// { pong: true }
|
|
47
47
|
```
|
|
48
48
|
|
|
49
|
+
### Count operations
|
|
50
|
+
|
|
51
|
+
#### `countFiles(collectionId, tenantId, prefixPath?, maximumDepth?, includeHiddenFiles?, restrictFileExtensions?): Promise<FileCount>`
|
|
52
|
+
|
|
53
|
+
Counts files and directories, without pagination. `prefixPath`, `maximumDepth` and `includeHiddenFiles` scope the count exactly like `listFiles()`. Pass `restrictFileExtensions` (an array of extensions, compared case-insensitively) to only count files carrying one of those extensions — directories are counted regardless.
|
|
54
|
+
|
|
55
|
+
```ts
|
|
56
|
+
const count = await client.countFiles("notes", "t_1", "articles/", undefined, false, ["md", "mdx"]);
|
|
57
|
+
// { files: 12, directories: 3 }
|
|
58
|
+
```
|
|
59
|
+
|
|
49
60
|
### Tenant operations
|
|
50
61
|
|
|
51
62
|
#### `deleteTenant(collectionId, tenantId): Promise<void>`
|
|
@@ -58,12 +69,12 @@ await client.deleteTenant("notes", "t_1");
|
|
|
58
69
|
|
|
59
70
|
### File operations
|
|
60
71
|
|
|
61
|
-
#### `listFiles(collectionId, tenantId, page?, perPage?, prefixPath?, maximumDepth?): Promise<FileList>`
|
|
72
|
+
#### `listFiles(collectionId, tenantId, page?, perPage?, prefixPath?, maximumDepth?, includeHiddenFiles?): Promise<FileList>`
|
|
62
73
|
|
|
63
|
-
Lists all tracked files as a paginated tree of file and directory entries. Defaults to `page = 1` and `perPage = 100`. Pass `prefixPath` to list only files under a folder, and `maximumDepth` to limit how deep the tree goes.
|
|
74
|
+
Lists all tracked files as a paginated tree of file and directory entries. Defaults to `page = 1` and `perPage = 100`. Pass `prefixPath` to list only files under a folder, and `maximumDepth` to limit how deep the tree goes. Hidden entries (dot-prefixed files and directories) are excluded by default; pass `includeHiddenFiles = true` to include them.
|
|
64
75
|
|
|
65
76
|
```ts
|
|
66
|
-
const list = await client.listFiles("notes", "t_1", 1, 100, "articles/", 2);
|
|
77
|
+
const list = await client.listFiles("notes", "t_1", 1, 100, "articles/", 2, false);
|
|
67
78
|
// { files: [...], page: 1, per_page: 100, has_more: false }
|
|
68
79
|
```
|
|
69
80
|
|
|
@@ -151,14 +162,15 @@ await client.revertCommit("notes", "t_1", "9b924c1d...", {
|
|
|
151
162
|
|
|
152
163
|
#### `batchGetFileContents(collectionId, tenantId, paths, seek?): Promise<FileContentBatch>`
|
|
153
164
|
|
|
154
|
-
Reads several files in one request. The returned `files` array is index-aligned with `paths`: each slot is either a `{ path, content }` object, or `null` when that path does not exist. An optional `seek` object applies the same line window to every file (see [Seek options](#seek-options)).
|
|
165
|
+
Reads several files in one request. The returned `files` array is index-aligned with `paths`: each slot is either a `{ path, content }` object, or `null` when that path does not exist. An optional `seek` object applies the same line window to every file (see [Seek options](#seek-options)). Each entry of `paths` is either a bare path string, or a `{ path, seek? }` object whose `seek` replaces the shared one for that file (no field-by-field merge).
|
|
155
166
|
|
|
156
167
|
```ts
|
|
157
168
|
const batch = await client.batchGetFileContents("notes", "t_1", [
|
|
158
169
|
"articles/hello.md",
|
|
159
|
-
"articles/missing.md"
|
|
170
|
+
"articles/missing.md",
|
|
171
|
+
{ path: "articles/long.md", seek: { lines_maximum: 10 } }
|
|
160
172
|
]);
|
|
161
|
-
// { files: [{ path, content }, null] }
|
|
173
|
+
// { files: [{ path, content }, null, { path, content }] }
|
|
162
174
|
```
|
|
163
175
|
|
|
164
176
|
### Seek options
|
package/dist/index.d.ts
CHANGED
|
@@ -18,6 +18,13 @@ export interface CommitAuthor {
|
|
|
18
18
|
export interface PingResult {
|
|
19
19
|
pong: boolean;
|
|
20
20
|
}
|
|
21
|
+
/**
|
|
22
|
+
* Types for countFiles()
|
|
23
|
+
*/
|
|
24
|
+
export interface FileCount {
|
|
25
|
+
files: number;
|
|
26
|
+
directories: number;
|
|
27
|
+
}
|
|
21
28
|
/**
|
|
22
29
|
* Types for listFiles()
|
|
23
30
|
*/
|
|
@@ -117,6 +124,10 @@ export interface CommitRevertPayload {
|
|
|
117
124
|
/**
|
|
118
125
|
* Types for batchGetFileContents()
|
|
119
126
|
*/
|
|
127
|
+
export type FileContentBatchPath = string | {
|
|
128
|
+
path: string;
|
|
129
|
+
seek?: FileSeekOptions;
|
|
130
|
+
};
|
|
120
131
|
export interface FileContentBatch {
|
|
121
132
|
files: Array<FileContent | null>;
|
|
122
133
|
}
|
|
@@ -133,10 +144,13 @@ export declare class GitHTTPFSClient {
|
|
|
133
144
|
private request;
|
|
134
145
|
/** Ping server */
|
|
135
146
|
sendPing(): Promise<PingResult>;
|
|
147
|
+
/** Count files and directories (an optional list of file extensions \
|
|
148
|
+
narrows the file count to files carrying one of them) */
|
|
149
|
+
countFiles(collectionId: string, tenantId: string, prefixPath?: string, maximumDepth?: number, includeHiddenFiles?: boolean, restrictFileExtensions?: Array<string>): Promise<FileCount>;
|
|
136
150
|
/** Delete entire tenant repository */
|
|
137
151
|
deleteTenant(collectionId: string, tenantId: string): Promise<void>;
|
|
138
152
|
/** List all tracked files (paths) */
|
|
139
|
-
listFiles(collectionId: string, tenantId: string, page?: number, perPage?: number, prefixPath?: string, maximumDepth?: number): Promise<FileList>;
|
|
153
|
+
listFiles(collectionId: string, tenantId: string, page?: number, perPage?: number, prefixPath?: string, maximumDepth?: number, includeHiddenFiles?: boolean): Promise<FileList>;
|
|
140
154
|
/** Read file content (optionally narrowed to a line window with seek) */
|
|
141
155
|
getFileContent(collectionId: string, tenantId: string, path: string, seek?: FileSeekOptions): Promise<FileContent>;
|
|
142
156
|
/** Check if a file exists in HEAD without reading its content */
|
|
@@ -154,7 +168,8 @@ export declare class GitHTTPFSClient {
|
|
|
154
168
|
/** Revert a commit */
|
|
155
169
|
revertCommit(collectionId: string, tenantId: string, sha: string, payload: CommitRevertPayload): Promise<void>;
|
|
156
170
|
/** Read multiple file contents in one request (a null slot means the \
|
|
157
|
-
path does not exist; an optional seek window applies to every file
|
|
158
|
-
|
|
171
|
+
path does not exist; an optional seek window applies to every file, \
|
|
172
|
+
overridable per file with a { path, seek } entry) */
|
|
173
|
+
batchGetFileContents(collectionId: string, tenantId: string, paths: Array<FileContentBatchPath>, seek?: FileSeekOptions): Promise<FileContentBatch>;
|
|
159
174
|
}
|
|
160
175
|
//# sourceMappingURL=index.d.ts.map
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../lib/index.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../lib/index.ts"],"names":[],"mappings":"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"}
|
package/dist/index.js
CHANGED
|
@@ -83,18 +83,33 @@ export class GitHTTPFSClient {
|
|
|
83
83
|
async sendPing() {
|
|
84
84
|
return this.request();
|
|
85
85
|
}
|
|
86
|
+
// --- Count Operations ---
|
|
87
|
+
/** Count files and directories (an optional list of file extensions \
|
|
88
|
+
narrows the file count to files carrying one of them) */
|
|
89
|
+
async countFiles(collectionId, tenantId, prefixPath, maximumDepth, includeHiddenFiles, restrictFileExtensions) {
|
|
90
|
+
// Extension lists travel as JSON-array strings in query parameters, \
|
|
91
|
+
// same wire spelling as the seek prefix lists
|
|
92
|
+
const params = {
|
|
93
|
+
prefix_path: prefixPath || "",
|
|
94
|
+
maximum_depth: maximumDepth !== undefined ? maximumDepth.toString() : undefined,
|
|
95
|
+
include_hidden_files: includeHiddenFiles !== undefined ? includeHiddenFiles.toString() : undefined,
|
|
96
|
+
restrict_file_extensions: restrictFileExtensions !== undefined ? JSON.stringify(restrictFileExtensions) : undefined
|
|
97
|
+
};
|
|
98
|
+
return this.request(`${collectionId}/${tenantId}/count/files`, GET, undefined, params);
|
|
99
|
+
}
|
|
86
100
|
// --- Tenant Operations ---
|
|
87
101
|
/** Delete entire tenant repository */
|
|
88
102
|
async deleteTenant(collectionId, tenantId) {
|
|
89
103
|
return this.request(`${collectionId}/${tenantId}`, DELETE, {});
|
|
90
104
|
}
|
|
91
105
|
/** List all tracked files (paths) */
|
|
92
|
-
async listFiles(collectionId, tenantId, page = 1, perPage = 100, prefixPath, maximumDepth) {
|
|
106
|
+
async listFiles(collectionId, tenantId, page = 1, perPage = 100, prefixPath, maximumDepth, includeHiddenFiles) {
|
|
93
107
|
const params = {
|
|
94
108
|
page: page.toString(),
|
|
95
109
|
per_page: perPage.toString(),
|
|
96
110
|
prefix_path: prefixPath || "",
|
|
97
|
-
maximum_depth: maximumDepth !== undefined ? maximumDepth.toString() : undefined
|
|
111
|
+
maximum_depth: maximumDepth !== undefined ? maximumDepth.toString() : undefined,
|
|
112
|
+
include_hidden_files: includeHiddenFiles !== undefined ? includeHiddenFiles.toString() : undefined
|
|
98
113
|
};
|
|
99
114
|
return this.request(`${collectionId}/${tenantId}/files`, GET, undefined, params);
|
|
100
115
|
}
|
|
@@ -163,7 +178,8 @@ export class GitHTTPFSClient {
|
|
|
163
178
|
}
|
|
164
179
|
// --- Batch Operations ---
|
|
165
180
|
/** Read multiple file contents in one request (a null slot means the \
|
|
166
|
-
path does not exist; an optional seek window applies to every file
|
|
181
|
+
path does not exist; an optional seek window applies to every file, \
|
|
182
|
+
overridable per file with a { path, seek } entry) */
|
|
167
183
|
async batchGetFileContents(collectionId, tenantId, paths, seek) {
|
|
168
184
|
return this.request(`${collectionId}/${tenantId}/batch/files/read`, POST, {
|
|
169
185
|
files: paths,
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../lib/index.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../lib/index.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "githttp-fs-client",
|
|
3
3
|
"description": "Git HTTP FS client for Node. Used in pair with Git HTTP FS, a git-backed content management database served over HTTP.",
|
|
4
|
-
"version": "1.
|
|
4
|
+
"version": "1.3.0",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"homepage": "https://github.com/crisp-oss/node-githttp-fs-client",
|
|
7
7
|
"license": "MIT",
|