gdrivekit 1.0.4 → 1.0.6

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 (3) hide show
  1. package/README.md +37 -1
  2. package/dist/index.js +74 -1
  3. package/package.json +1 -1
package/README.md CHANGED
@@ -45,6 +45,7 @@ await generateCredentialsAndTokens({
45
45
  projectid: process.env.GOOGLE_PROJECT_ID!,
46
46
  clientsecret: process.env.GOOGLE_CLIENT_SECRET!,
47
47
  redirecturis: ["http://localhost:3000/oauth2callback"],
48
+ javascriptorigins: ["http://localhost:3000"],
48
49
  });
49
50
  ```
50
51
 
@@ -86,20 +87,31 @@ main();
86
87
  | `renameFile()` | Rename an existing file |
87
88
  | `updateFile()` | Update file metadata or content |
88
89
  | `getFileInfo()` | Get details of a specific file |
90
+ | `getImageMetadata()` | Get image metadata (EXIF data, dimensions, etc.) |
91
+ | `getVideoMetadata()` | Get video metadata (duration, dimensions, etc.) |
92
+ | `getCompleteFileInfo()` | Get complete file metadata including all fields |
89
93
  | `moveFile()` | Move file to another folder using file ID |
90
94
  | `moveFileByName()` | Move file by its name |
91
95
  | `copyFile()` | Make a copy of a file in Drive |
92
96
 
93
97
  ---
94
98
 
99
+ ### **MetaData Operation**
100
+ | `getImageMetadata()` | Get image metadata (EXIF data, dimensions, etc.) |
101
+ | `getVideoMetadata()` | Get video metadata (duration, dimensions, etc.) |
102
+
103
+ ---
104
+
95
105
  ### 🗂️ **Folder Operations**
96
106
 
97
107
  | Method | Description |
98
108
  | --------------------- | --------------------------------------- |
99
109
  | `createFolder()` | Create a new folder |
100
110
  | `deleteFolder()` | Delete an existing folder |
111
+ | `listFoldersByName()` | List all folders with a specific name |
101
112
  | `listAllFolders()` | List all folders in Drive |
102
113
  | `listFilesInFolder()` | List all files within a specific folder |
114
+ | `listFoldersInFolder()` | List all folders within a specific folder |
103
115
 
104
116
  ---
105
117
 
@@ -125,6 +137,15 @@ main();
125
137
  | `listRecentFiles()` | List recently modified or added files |
126
138
  | `listPDFs()` | List all PDF files |
127
139
  | `listImages()` | List all image files |
140
+ | `listVideos()` | List all video files |
141
+ | `listAudios()` | List all audio files |
142
+ | `listArchives()` | List all archive files |
143
+ | `listJSONs()` | List all json files |
144
+ | `listSheets()` | List all sheet files |
145
+ | `listPresentations()`| List all presentation files |
146
+ | `listDocs()` | List all docs files |
147
+
148
+
128
149
 
129
150
  ---
130
151
 
@@ -148,7 +169,7 @@ main();
148
169
 
149
170
  ---
150
171
 
151
- ## Json Operation
172
+ ### ❴❵ **Json Operation**
152
173
  | Method | Description |
153
174
  | ----------------------- | ----------------------------------------- |
154
175
  | `readJsonFileData()` | Read JSON file content |
@@ -198,6 +219,21 @@ if (addResult.success) {
198
219
 
199
220
  ---
200
221
 
222
+ ### ⚡ Example: Get Metadata
223
+
224
+ ```ts
225
+ const fileId = "1234567890abcdef1234567890abcdef";
226
+ const metadataResult = await operations.getImageMetadata(fileId);
227
+
228
+ if (metadataResult.success) {
229
+ console.log("✅ Image Metadata:", metadataResult.data);
230
+ } else {
231
+ console.error("❌ Failed:", metadataResult.error);
232
+ }
233
+ ```
234
+
235
+ ---
236
+
201
237
  ### 🧑‍💻 Author
202
238
 
203
239
  **Vikash Khati**
package/dist/index.js CHANGED
@@ -778718,15 +778718,27 @@ __export(exports_operations, {
778718
778718
  readFileData: () => readFileData,
778719
778719
  moveFileByName: () => moveFileByName,
778720
778720
  moveFile: () => moveFile,
778721
+ listVideos: () => listVideos,
778722
+ listSheets: () => listSheets,
778721
778723
  listRecentFiles: () => listRecentFiles,
778724
+ listPresentations: () => listPresentations,
778722
778725
  listPDFs: () => listPDFs,
778726
+ listJSONs: () => listJSONs,
778723
778727
  listImages: () => listImages,
778728
+ listFoldersInFolder: () => listFoldersInFolder,
778729
+ listFoldersByName: () => listFoldersByName,
778724
778730
  listFilesInFolder: () => listFilesInFolder,
778725
778731
  listFiles: () => listFiles,
778732
+ listDocs: () => listDocs,
778733
+ listAudios: () => listAudios,
778734
+ listArchives: () => listArchives,
778726
778735
  listAllFolders: () => listAllFolders,
778736
+ getVideoMetadata: () => getVideoMetadata,
778737
+ getImageMetadata: () => getImageMetadata,
778727
778738
  getFolderIdByName: () => getFolderIdByName,
778728
778739
  getFileInfo: () => getFileInfo,
778729
778740
  getFileIdByName: () => getFileIdByName,
778741
+ getCompleteFileInfo: () => getCompleteFileInfo,
778730
778742
  fileExists: () => fileExists,
778731
778743
  driveOperations: () => driveOperations,
778732
778744
  downloadMultipleFiles: () => downloadMultipleFiles,
@@ -778764,6 +778776,8 @@ var MIME_TYPES = {
778764
778776
  SVG: "image/svg+xml",
778765
778777
  MP4: "video/mp4",
778766
778778
  AVI: "video/x-msvideo",
778779
+ MKV: "video/x-matroska",
778780
+ WEBM: "video/webm",
778767
778781
  MP3: "audio/mpeg",
778768
778782
  WAV: "audio/wav",
778769
778783
  ZIP: "application/zip",
@@ -778801,6 +778815,15 @@ async function updateFile(fileId, newFilePath) {
778801
778815
  async function getFileInfo(fileId) {
778802
778816
  return await driveService.getFileMetadata(fileId);
778803
778817
  }
778818
+ async function getImageMetadata(fileId) {
778819
+ return await driveService.getImageMetadata(fileId);
778820
+ }
778821
+ async function getVideoMetadata(fileId) {
778822
+ return await driveService.getVideoMetadata(fileId);
778823
+ }
778824
+ async function getCompleteFileInfo(fileId) {
778825
+ return await driveService.getCompleteFileMetadata(fileId);
778826
+ }
778804
778827
  async function moveFile(fileId, newFolderId) {
778805
778828
  const file = await driveService.getFileMetadata(fileId);
778806
778829
  if (!file.success || !file.data) {
@@ -778954,11 +778977,21 @@ async function createFolder(folderName, parentFolderId) {
778954
778977
  async function deleteFolder(folderId) {
778955
778978
  return await driveService.deleteFile(folderId);
778956
778979
  }
778980
+ async function listFoldersByName(folderName) {
778981
+ return await driveService.listFiles({
778982
+ query: `name='${folderName}' and mimeType='${MIME_TYPES.FOLDER}' and trashed=false`
778983
+ });
778984
+ }
778957
778985
  async function listAllFolders() {
778958
778986
  return await driveService.listFiles({
778959
778987
  query: `mimeType='${MIME_TYPES.FOLDER}' and trashed=false`
778960
778988
  });
778961
778989
  }
778990
+ async function listFoldersInFolder(folderId) {
778991
+ return await driveService.listFiles({
778992
+ query: `'${folderId}' in parents and mimeType='${MIME_TYPES.FOLDER}' and trashed=false`
778993
+ });
778994
+ }
778962
778995
  async function listFilesInFolder(folderId) {
778963
778996
  return await driveService.listFiles({
778964
778997
  query: `'${folderId}' in parents and trashed=false`
@@ -779032,7 +779065,42 @@ async function listPDFs() {
779032
779065
  }
779033
779066
  async function listImages() {
779034
779067
  return await driveService.listFiles({
779035
- query: `mimeType contains 'image/' and trashed=false`
779068
+ query: `mimeType='${MIME_TYPES.JPEG}' or mimeType='${MIME_TYPES.PNG}' or mimeType='${MIME_TYPES.GIF}' or mimeType='${MIME_TYPES.SVG}' and trashed=false`
779069
+ });
779070
+ }
779071
+ async function listVideos() {
779072
+ return await driveService.listFiles({
779073
+ query: `mimeType='${MIME_TYPES.MP4}' or mimeType='${MIME_TYPES.MKV}' or mimeType='${MIME_TYPES.WEBM}' or mimeType='${MIME_TYPES.AVI}' and trashed=false`
779074
+ });
779075
+ }
779076
+ async function listAudios() {
779077
+ return await driveService.listFiles({
779078
+ query: `mimeType='${MIME_TYPES.MP3}' or mimeType='${MIME_TYPES.WAV}' and trashed=false`
779079
+ });
779080
+ }
779081
+ async function listArchives() {
779082
+ return await driveService.listFiles({
779083
+ query: `mimeType='${MIME_TYPES.ZIP}' or mimeType='${MIME_TYPES.RAR}' and trashed=false`
779084
+ });
779085
+ }
779086
+ async function listJSONs() {
779087
+ return await driveService.listFiles({
779088
+ query: `mimeType='${MIME_TYPES.JSON}' and trashed=false`
779089
+ });
779090
+ }
779091
+ async function listSheets() {
779092
+ return await driveService.listFiles({
779093
+ query: `mimeType='${MIME_TYPES.SPREADSHEET}' and trashed=false`
779094
+ });
779095
+ }
779096
+ async function listPresentations() {
779097
+ return await driveService.listFiles({
779098
+ query: `mimeType='${MIME_TYPES.PRESENTATION}' and trashed=false`
779099
+ });
779100
+ }
779101
+ async function listDocs() {
779102
+ return await driveService.listFiles({
779103
+ query: `mimeType='${MIME_TYPES.DOCUMENT}' and trashed=false`
779036
779104
  });
779037
779105
  }
779038
779106
  async function uploadMultipleFiles(filePaths, folderId) {
@@ -779096,16 +779164,21 @@ var driveOperations = {
779096
779164
  renameFile,
779097
779165
  updateFile,
779098
779166
  getFileInfo,
779167
+ getCompleteFileInfo,
779099
779168
  moveFile,
779100
779169
  moveFileByName,
779101
779170
  copyFile,
779171
+ getImageMetadata,
779172
+ getVideoMetadata,
779102
779173
  readJsonFileData,
779103
779174
  addJsonKeyValue,
779104
779175
  updateJsonFieldAndValues,
779105
779176
  deleteJsonFieldAndKeys,
779106
779177
  createFolder,
779107
779178
  deleteFolder,
779179
+ listFoldersByName,
779108
779180
  listAllFolders,
779181
+ listFoldersInFolder,
779109
779182
  listFilesInFolder,
779110
779183
  searchByName,
779111
779184
  searchByExactName,
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "gdrivekit",
3
- "version": "1.0.4",
3
+ "version": "1.0.6",
4
4
  "description": "A lightweight Google Drive toolkit for File Management. Handle Google Drive operations easily — upload, download, and other file operations in a few lines of code.",
5
5
  "type": "module",
6
6
  "main": "dist/index.js",