inibase 1.1.23 → 1.1.24
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/dist/index.d.ts +7 -8
- package/dist/index.js +7 -9
- package/package.json +1 -1
package/dist/index.d.ts
CHANGED
|
@@ -23,7 +23,7 @@ export interface Options {
|
|
|
23
23
|
columns?: string[] | string;
|
|
24
24
|
sort?: Record<string, 1 | -1 | "asc" | "ASC" | "desc" | "DESC"> | string[] | string;
|
|
25
25
|
}
|
|
26
|
-
export interface
|
|
26
|
+
export interface TableConfig {
|
|
27
27
|
compression?: boolean;
|
|
28
28
|
cache?: boolean;
|
|
29
29
|
prepend?: boolean;
|
|
@@ -31,7 +31,7 @@ export interface Config {
|
|
|
31
31
|
}
|
|
32
32
|
export interface TableObject {
|
|
33
33
|
schema?: Schema;
|
|
34
|
-
config:
|
|
34
|
+
config: TableConfig;
|
|
35
35
|
}
|
|
36
36
|
export type ComparisonOperator = "=" | "!=" | ">" | "<" | ">=" | "<=" | "*" | "!*" | "[]" | "![]";
|
|
37
37
|
export type pageInfo = {
|
|
@@ -70,7 +70,6 @@ export default class Inibase {
|
|
|
70
70
|
constructor(database: string, mainFolder?: string, language?: ErrorLang);
|
|
71
71
|
private static errorMessages;
|
|
72
72
|
createError(name: ErrorCodes, variable?: string | number | (string | number)[]): Error;
|
|
73
|
-
clear(): void;
|
|
74
73
|
private getFileExtension;
|
|
75
74
|
private _schemaToIdsPath;
|
|
76
75
|
/**
|
|
@@ -78,18 +77,18 @@ export default class Inibase {
|
|
|
78
77
|
*
|
|
79
78
|
* @param {string} tableName
|
|
80
79
|
* @param {Schema} [schema]
|
|
81
|
-
* @param {
|
|
80
|
+
* @param {TableConfig} [config]
|
|
82
81
|
*/
|
|
83
|
-
createTable(tableName: string, schema?: Schema, config?:
|
|
82
|
+
createTable(tableName: string, schema?: Schema, config?: TableConfig): Promise<void>;
|
|
84
83
|
private replaceStringInFile;
|
|
85
84
|
/**
|
|
86
85
|
* Update table schema or config
|
|
87
86
|
*
|
|
88
87
|
* @param {string} tableName
|
|
89
88
|
* @param {Schema} [schema]
|
|
90
|
-
* @param {(
|
|
89
|
+
* @param {(TableConfig&{name?: string})} [config]
|
|
91
90
|
*/
|
|
92
|
-
updateTable(tableName: string, schema?: Schema, config?:
|
|
91
|
+
updateTable(tableName: string, schema?: Schema, config?: TableConfig & {
|
|
93
92
|
name?: string;
|
|
94
93
|
}): Promise<void>;
|
|
95
94
|
/**
|
|
@@ -99,7 +98,7 @@ export default class Inibase {
|
|
|
99
98
|
* @return {*} {Promise<TableObject>}
|
|
100
99
|
*/
|
|
101
100
|
getTable(tableName: string, encodeIDs?: boolean): Promise<TableObject>;
|
|
102
|
-
getTableSchema(tableName: string, encodeIDs?: boolean): Promise<Schema
|
|
101
|
+
getTableSchema(tableName: string, encodeIDs?: boolean): Promise<Schema>;
|
|
103
102
|
private throwErrorIfTableEmpty;
|
|
104
103
|
private _validateData;
|
|
105
104
|
private validateData;
|
package/dist/index.js
CHANGED
|
@@ -20,8 +20,12 @@ export default class Inibase {
|
|
|
20
20
|
totalItems;
|
|
21
21
|
constructor(database, mainFolder = ".", language = "en") {
|
|
22
22
|
this.databasePath = join(mainFolder, database);
|
|
23
|
-
this.clear();
|
|
24
23
|
this.language = language;
|
|
24
|
+
this.pageInfo = {};
|
|
25
|
+
this.totalItems = new Map();
|
|
26
|
+
this.uniqueMap = new Map();
|
|
27
|
+
if (!globalConfig[this.databasePath])
|
|
28
|
+
globalConfig[this.databasePath] = { tables: new Map() };
|
|
25
29
|
if (!process.env.INIBASE_SECRET) {
|
|
26
30
|
if (existsSync(".env") &&
|
|
27
31
|
readFileSync(".env").includes("INIBASE_SECRET="))
|
|
@@ -110,12 +114,6 @@ export default class Inibase {
|
|
|
110
114
|
error.name = name;
|
|
111
115
|
return error;
|
|
112
116
|
}
|
|
113
|
-
clear() {
|
|
114
|
-
globalConfig[this.databasePath] = { tables: new Map() };
|
|
115
|
-
this.totalItems = new Map();
|
|
116
|
-
this.pageInfo = {};
|
|
117
|
-
this.uniqueMap = new Map();
|
|
118
|
-
}
|
|
119
117
|
getFileExtension(tableName) {
|
|
120
118
|
let mainExtension = this.fileExtension;
|
|
121
119
|
// TODO: ADD ENCRYPTION
|
|
@@ -141,7 +139,7 @@ export default class Inibase {
|
|
|
141
139
|
*
|
|
142
140
|
* @param {string} tableName
|
|
143
141
|
* @param {Schema} [schema]
|
|
144
|
-
* @param {
|
|
142
|
+
* @param {TableConfig} [config]
|
|
145
143
|
*/
|
|
146
144
|
async createTable(tableName, schema, config) {
|
|
147
145
|
const tablePath = join(this.databasePath, tableName);
|
|
@@ -187,7 +185,7 @@ export default class Inibase {
|
|
|
187
185
|
*
|
|
188
186
|
* @param {string} tableName
|
|
189
187
|
* @param {Schema} [schema]
|
|
190
|
-
* @param {(
|
|
188
|
+
* @param {(TableConfig&{name?: string})} [config]
|
|
191
189
|
*/
|
|
192
190
|
async updateTable(tableName, schema, config) {
|
|
193
191
|
const table = await this.getTable(tableName);
|