diff --git a/dist/package-shared/api/crud/delete.d.ts b/dist/package-shared/api/crud/delete.d.ts index dfef902..b3896b9 100644 --- a/dist/package-shared/api/crud/delete.d.ts +++ b/dist/package-shared/api/crud/delete.d.ts @@ -10,12 +10,13 @@ type Params[]; }; targetID?: string | number; + apiKey?: string; }; export default function apiCrudDELETE({ dbName, tableName, deleteSpec, targetID }: Params): Promise({ dbName, tableName, deleteSpec, targetID, apiKey }: Params): Promise>; export {}; diff --git a/dist/package-shared/api/crud/delete.js b/dist/package-shared/api/crud/delete.js index 741702d..308c7ac 100644 --- a/dist/package-shared/api/crud/delete.js +++ b/dist/package-shared/api/crud/delete.js @@ -1,7 +1,7 @@ import path from "path"; import queryDSQLAPI from "../../functions/api/query-dsql-api"; import grabAPIBasePath from "../../utils/grab-api-base-path"; -export default async function apiCrudDELETE({ dbName, tableName, deleteSpec, targetID }) { +export default async function apiCrudDELETE({ dbName, tableName, deleteSpec, targetID, apiKey }) { const basePath = grabAPIBasePath({ paradigm: "crud" }); const finalID = typeof targetID === "number" ? String(targetID) : targetID; const finalPath = path.join(basePath, dbName, tableName, finalID || ""); @@ -9,6 +9,7 @@ export default async function apiCrudDELETE({ dbName, tableName, deleteSpec, tar method: "DELETE", path: finalPath, body: deleteSpec, + apiKey, }); return GET_RES; } diff --git a/dist/package-shared/api/crud/get.d.ts b/dist/package-shared/api/crud/get.d.ts index e4665f5..3a3edf9 100644 --- a/dist/package-shared/api/crud/get.d.ts +++ b/dist/package-shared/api/crud/get.d.ts @@ -8,10 +8,11 @@ type Params; targetId?: string | number; + apiKey?: string; }; export default function apiCrudGET({ dbName, tableName, query, targetId, }: Params): Promise; +}>({ dbName, tableName, query, targetId, apiKey, }: Params): Promise; export {}; diff --git a/dist/package-shared/api/crud/get.js b/dist/package-shared/api/crud/get.js index 6763df9..247d3a6 100644 --- a/dist/package-shared/api/crud/get.js +++ b/dist/package-shared/api/crud/get.js @@ -1,7 +1,7 @@ import path from "path"; import queryDSQLAPI from "../../functions/api/query-dsql-api"; import grabAPIBasePath from "../../utils/grab-api-base-path"; -export default async function apiCrudGET({ dbName, tableName, query, targetId, }) { +export default async function apiCrudGET({ dbName, tableName, query, targetId, apiKey, }) { const basePath = grabAPIBasePath({ paradigm: "crud" }); const finalID = typeof targetId === "number" ? String(targetId) : targetId; const finalPath = path.join(basePath, dbName, tableName, finalID || ""); @@ -9,6 +9,7 @@ export default async function apiCrudGET({ dbName, tableName, query, targetId, } method: "GET", path: finalPath, query, + apiKey, }); return GET_RES; } diff --git a/dist/package-shared/api/crud/post.d.ts b/dist/package-shared/api/crud/post.d.ts index f3d4659..487b5c2 100644 --- a/dist/package-shared/api/crud/post.d.ts +++ b/dist/package-shared/api/crud/post.d.ts @@ -8,9 +8,10 @@ export type APICrudPostParams({ dbName, tableName, body, update, }: APICrudPostParams): Promise; +}>({ dbName, tableName, body, update, apiKey, }: APICrudPostParams): Promise; diff --git a/dist/package-shared/api/crud/post.js b/dist/package-shared/api/crud/post.js index 3e08889..8493b25 100644 --- a/dist/package-shared/api/crud/post.js +++ b/dist/package-shared/api/crud/post.js @@ -1,7 +1,7 @@ import path from "path"; import queryDSQLAPI from "../../functions/api/query-dsql-api"; import grabAPIBasePath from "../../utils/grab-api-base-path"; -export default async function apiCrudPOST({ dbName, tableName, body, update, }) { +export default async function apiCrudPOST({ dbName, tableName, body, update, apiKey, }) { const basePath = grabAPIBasePath({ paradigm: "crud" }); const passedID = body.id; const finalID = update @@ -14,6 +14,7 @@ export default async function apiCrudPOST({ dbName, tableName, body, update, }) method: update ? "PUT" : "POST", path: finalPath, body, + apiKey, }); return GET_RES; } diff --git a/dist/package-shared/api/crud/put.d.ts b/dist/package-shared/api/crud/put.d.ts index 3090b0c..295a727 100644 --- a/dist/package-shared/api/crud/put.d.ts +++ b/dist/package-shared/api/crud/put.d.ts @@ -5,10 +5,11 @@ type Params = Omit, "update"> & { targetID: string | number; + apiKey?: string; }; export default function apiCrudPUT({ dbName, tableName, body, targetID }: Params): Promise; +}>({ dbName, tableName, body, targetID, apiKey }: Params): Promise; export {}; diff --git a/dist/package-shared/api/crud/put.js b/dist/package-shared/api/crud/put.js index 056a053..5644cf0 100644 --- a/dist/package-shared/api/crud/put.js +++ b/dist/package-shared/api/crud/put.js @@ -1,5 +1,5 @@ import apiCrudPOST from "./post"; -export default async function apiCrudPUT({ dbName, tableName, body, targetID }) { +export default async function apiCrudPUT({ dbName, tableName, body, targetID, apiKey }) { const updatedBody = Object.assign({}, body); if (targetID) { updatedBody["id"] = targetID; @@ -9,5 +9,6 @@ export default async function apiCrudPUT({ dbName, tableName, body, targetID }) tableName, body: updatedBody, update: true, + apiKey, }); } diff --git a/dist/package-shared/api/media/delete.d.ts b/dist/package-shared/api/media/delete.d.ts index d355aa0..7faa4f6 100644 --- a/dist/package-shared/api/media/delete.d.ts +++ b/dist/package-shared/api/media/delete.d.ts @@ -1,5 +1,8 @@ import { APIResponseObject } from "../../types"; import { DSQL_DATASQUIREL_USER_MEDIA } from "../../types/dsql"; -export default function apiMediaDELETE(params: { +type Params = { mediaID?: string | number; -}): Promise>; + apiKey?: string; +}; +export default function apiMediaDELETE(params: Params): Promise>; +export {}; diff --git a/dist/package-shared/api/media/delete.js b/dist/package-shared/api/media/delete.js index dc9ab13..4a44d44 100644 --- a/dist/package-shared/api/media/delete.js +++ b/dist/package-shared/api/media/delete.js @@ -12,6 +12,7 @@ export default async function apiMediaDELETE(params) { const DELETE_MEDIA_RES = await queryDSQLAPI({ method: "DELETE", path: finalPath, + apiKey: params.apiKey, }); return DELETE_MEDIA_RES; } diff --git a/dist/package-shared/api/media/get.js b/dist/package-shared/api/media/get.js index 02a4a6d..5ee432f 100644 --- a/dist/package-shared/api/media/get.js +++ b/dist/package-shared/api/media/get.js @@ -13,6 +13,7 @@ export default async function apiMediaGET(params) { method: "GET", path: finalPath, query: params, + apiKey: params.apiKey, }); return GET_MEDIA_RES; } diff --git a/dist/package-shared/api/media/post.js b/dist/package-shared/api/media/post.js index 0f0cb08..899f37a 100644 --- a/dist/package-shared/api/media/post.js +++ b/dist/package-shared/api/media/post.js @@ -6,6 +6,7 @@ export default async function apiMediaPOST(params) { method: "POST", path: basePath, body: params, + apiKey: params.apiKey, }); return POST_MEDIA_RES; } diff --git a/dist/package-shared/functions/api/query-dsql-api.d.ts b/dist/package-shared/functions/api/query-dsql-api.d.ts index ba49e20..1b045af 100644 --- a/dist/package-shared/functions/api/query-dsql-api.d.ts +++ b/dist/package-shared/functions/api/query-dsql-api.d.ts @@ -2,12 +2,12 @@ import { APIResponseObject, DataCrudRequestMethods, DataCrudRequestMethodsLowerC type Param = { - key?: string; body?: T; query?: T; useDefault?: boolean; path: string; method?: (typeof DataCrudRequestMethods)[number] | (typeof DataCrudRequestMethodsLowerCase)[number]; + apiKey?: string; }; /** * # Query DSQL API @@ -16,5 +16,5 @@ export default function queryDSQLAPI({ key, body, query, useDefault, path: passedPath, method, }: Param): Promise>; +}>({ body, query, useDefault, path: passedPath, method, apiKey, }: Param): Promise>; export {}; diff --git a/dist/package-shared/functions/api/query-dsql-api.js b/dist/package-shared/functions/api/query-dsql-api.js index 6cba258..26c45e7 100644 --- a/dist/package-shared/functions/api/query-dsql-api.js +++ b/dist/package-shared/functions/api/query-dsql-api.js @@ -4,7 +4,7 @@ import serializeQuery from "../../utils/serialize-query"; /** * # Query DSQL API */ -export default async function queryDSQLAPI({ key, body, query, useDefault, path: passedPath, method, }) { +export default async function queryDSQLAPI({ body, query, useDefault, path: passedPath, method, apiKey, }) { const grabedHostNames = grabHostNames({ useDefault }); const { host, port, scheme } = grabedHostNames; try { @@ -17,7 +17,7 @@ export default async function queryDSQLAPI({ key, body, query, useDefault, path: const reqPayload = body ? JSON.stringify(body) : undefined; let headers = { "Content-Type": "application/json", - Authorization: key || + Authorization: apiKey || (!method || method == "GET" || method == "get" ? process.env.DSQL_READ_ONLY_API_KEY : undefined) || diff --git a/dist/package-shared/types/index.d.ts b/dist/package-shared/types/index.d.ts index a8b4527..67877e4 100644 --- a/dist/package-shared/types/index.d.ts +++ b/dist/package-shared/types/index.d.ts @@ -1757,10 +1757,12 @@ export type APIGetMediaParams = { skipBase64?: "true" | "false"; stream?: "stream"; thumbnail?: "true" | "false"; + apiKey?: string; }; export type AddMediaAPIBody = { media: MediaUploadDataType[]; folder?: string | null; type: (typeof MediaTypes)[number]; + apiKey?: string; }; export {}; diff --git a/package-shared/api/crud/delete.ts b/package-shared/api/crud/delete.ts index 1b16624..e10f626 100644 --- a/package-shared/api/crud/delete.ts +++ b/package-shared/api/crud/delete.ts @@ -8,11 +8,12 @@ type Params = { tableName: string; deleteSpec?: T & { deleteKeyValues?: SQLDeleteData[] }; targetID?: string | number; + apiKey?: string; }; export default async function apiCrudDELETE< T extends { [key: string]: any } = { [key: string]: any } ->({ dbName, tableName, deleteSpec, targetID }: Params) { +>({ dbName, tableName, deleteSpec, targetID, apiKey }: Params) { const basePath = grabAPIBasePath({ paradigm: "crud" }); const finalID = typeof targetID === "number" ? String(targetID) : targetID; @@ -23,6 +24,7 @@ export default async function apiCrudDELETE< method: "DELETE", path: finalPath, body: deleteSpec, + apiKey, }); return GET_RES; diff --git a/package-shared/api/crud/get.ts b/package-shared/api/crud/get.ts index 96767f3..722dda0 100644 --- a/package-shared/api/crud/get.ts +++ b/package-shared/api/crud/get.ts @@ -8,6 +8,7 @@ type Params = { tableName: string; query?: DsqlCrudQueryObject; targetId?: string | number; + apiKey?: string; }; export default async function apiCrudGET< @@ -17,6 +18,7 @@ export default async function apiCrudGET< tableName, query, targetId, + apiKey, }: Params): Promise { const basePath = grabAPIBasePath({ paradigm: "crud" }); @@ -28,6 +30,7 @@ export default async function apiCrudGET< method: "GET", path: finalPath, query, + apiKey, }); return GET_RES; diff --git a/package-shared/api/crud/post.ts b/package-shared/api/crud/post.ts index 0e2ece9..5dc50cf 100644 --- a/package-shared/api/crud/post.ts +++ b/package-shared/api/crud/post.ts @@ -10,6 +10,7 @@ export type APICrudPostParams< tableName: string; body: T; update?: boolean; + apiKey?: string; }; export default async function apiCrudPOST< @@ -19,6 +20,7 @@ export default async function apiCrudPOST< tableName, body, update, + apiKey, }: APICrudPostParams): Promise { const basePath = grabAPIBasePath({ paradigm: "crud" }); @@ -36,6 +38,7 @@ export default async function apiCrudPOST< method: update ? "PUT" : "POST", path: finalPath, body, + apiKey, }); return GET_RES; diff --git a/package-shared/api/crud/put.ts b/package-shared/api/crud/put.ts index a1a99e7..91c8b3a 100644 --- a/package-shared/api/crud/put.ts +++ b/package-shared/api/crud/put.ts @@ -5,11 +5,12 @@ type Params = Omit< "update" > & { targetID: string | number; + apiKey?: string; }; export default async function apiCrudPUT< T extends { [key: string]: any } = { [key: string]: any } ->({ dbName, tableName, body, targetID }: Params) { +>({ dbName, tableName, body, targetID, apiKey }: Params) { const updatedBody = { ...body } as any; if (targetID) { @@ -21,5 +22,6 @@ export default async function apiCrudPUT< tableName, body: updatedBody, update: true, + apiKey, }); } diff --git a/package-shared/api/media/delete.ts b/package-shared/api/media/delete.ts index a8c85ec..dd736af 100644 --- a/package-shared/api/media/delete.ts +++ b/package-shared/api/media/delete.ts @@ -4,9 +4,14 @@ import { DSQL_DATASQUIREL_USER_MEDIA } from "../../types/dsql"; import path from "path"; import grabAPIBasePath from "../../utils/grab-api-base-path"; -export default async function apiMediaDELETE(params: { +type Params = { mediaID?: string | number; -}): Promise< + apiKey?: string; +}; + +export default async function apiMediaDELETE( + params: Params +): Promise< APIResponseObject< DSQL_DATASQUIREL_USER_MEDIA | DSQL_DATASQUIREL_USER_MEDIA[] > @@ -24,6 +29,7 @@ export default async function apiMediaDELETE(params: { const DELETE_MEDIA_RES = await queryDSQLAPI({ method: "DELETE", path: finalPath, + apiKey: params.apiKey, }); return DELETE_MEDIA_RES as APIResponseObject< diff --git a/package-shared/api/media/get.ts b/package-shared/api/media/get.ts index 55f5305..db420a7 100644 --- a/package-shared/api/media/get.ts +++ b/package-shared/api/media/get.ts @@ -25,6 +25,7 @@ export default async function apiMediaGET( method: "GET", path: finalPath, query: params, + apiKey: params.apiKey, }); return GET_MEDIA_RES as APIResponseObject< diff --git a/package-shared/api/media/post.ts b/package-shared/api/media/post.ts index 90cc570..d2866d2 100644 --- a/package-shared/api/media/post.ts +++ b/package-shared/api/media/post.ts @@ -16,6 +16,7 @@ export default async function apiMediaPOST( method: "POST", path: basePath, body: params, + apiKey: params.apiKey, }); return POST_MEDIA_RES as APIResponseObject< diff --git a/package-shared/functions/api/query-dsql-api.ts b/package-shared/functions/api/query-dsql-api.ts index 6ceb271..91a306d 100644 --- a/package-shared/functions/api/query-dsql-api.ts +++ b/package-shared/functions/api/query-dsql-api.ts @@ -10,7 +10,6 @@ import grabHostNames from "../../utils/grab-host-names"; import serializeQuery from "../../utils/serialize-query"; type Param = { - key?: string; body?: T; query?: T; useDefault?: boolean; @@ -18,6 +17,7 @@ type Param = { method?: | (typeof DataCrudRequestMethods)[number] | (typeof DataCrudRequestMethodsLowerCase)[number]; + apiKey?: string; }; /** @@ -27,12 +27,12 @@ export default async function queryDSQLAPI< T = { [k: string]: any }, P = { [k: string]: any } >({ - key, body, query, useDefault, path: passedPath, method, + apiKey, }: Param): Promise> { const grabedHostNames = grabHostNames({ useDefault }); const { host, port, scheme } = grabedHostNames; @@ -49,7 +49,7 @@ export default async function queryDSQLAPI< let headers: OutgoingHttpHeaders = { "Content-Type": "application/json", Authorization: - key || + apiKey || (!method || method == "GET" || method == "get" ? process.env.DSQL_READ_ONLY_API_KEY : undefined) || diff --git a/package-shared/types/index.ts b/package-shared/types/index.ts index fd38b13..3fc753d 100644 --- a/package-shared/types/index.ts +++ b/package-shared/types/index.ts @@ -2268,10 +2268,12 @@ export type APIGetMediaParams = { skipBase64?: "true" | "false"; stream?: "stream"; thumbnail?: "true" | "false"; + apiKey?: string; }; export type AddMediaAPIBody = { media: MediaUploadDataType[]; folder?: string | null; type: (typeof MediaTypes)[number]; + apiKey?: string; }; diff --git a/package.json b/package.json index d9e66d9..1b18e16 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "@moduletrace/datasquirel", - "version": "4.7.5", + "version": "4.7.6", "description": "Cloud-based SQL data management tool", "main": "dist/index.js", "bin": {