This commit is contained in:
parent
8210af9c6b
commit
5222fa22af
3 changed files with 6 additions and 1 deletions
|
@ -13,7 +13,7 @@ Features:
|
||||||
- [x] remove unused Schema
|
- [x] remove unused Schema
|
||||||
- [x] joins
|
- [x] joins
|
||||||
- [x] table alias
|
- [x] table alias
|
||||||
- [x] generell aliases
|
- [x] general aliases
|
||||||
- [x] unified response
|
- [x] unified response
|
||||||
- [ ] change Schema
|
- [ ] change Schema
|
||||||
- [ ] Key-Value Store Shortcut
|
- [ ] Key-Value Store Shortcut
|
||||||
|
|
|
@ -3,6 +3,7 @@ import { Attribute, DB, insertResponse, readResponse, Table, writeResponse } fro
|
||||||
import { Aggregation, checkConstraint, joinCross, Datatype, foreignConstraint, Modifier, joinNatural, onJoin, uniqueConstraint, usingJoin } from "./dbStructure.js"
|
import { Aggregation, checkConstraint, joinCross, Datatype, foreignConstraint, Modifier, joinNatural, onJoin, uniqueConstraint, usingJoin } from "./dbStructure.js"
|
||||||
import { insertQuery, Query, QueryBuilder, removeQuery, selectQuery, updateQuery } from "./query.js"
|
import { insertQuery, Query, QueryBuilder, removeQuery, selectQuery, updateQuery } from "./query.js"
|
||||||
import { allModifierInput, joinType, onAction, primaryData } from "./types.js"
|
import { allModifierInput, joinType, onAction, primaryData } from "./types.js"
|
||||||
|
import { sha256 } from "./tools.js"
|
||||||
|
|
||||||
export class Handler {
|
export class Handler {
|
||||||
db: DB;
|
db: DB;
|
||||||
|
@ -571,6 +572,7 @@ export class Handler {
|
||||||
},
|
},
|
||||||
escapeID: (key: string): string => {
|
escapeID: (key: string): string => {
|
||||||
if (!key || key === "" || key.includes('\u0000')) throw new Error("Can not escape empty key or with null unicode!");
|
if (!key || key === "" || key.includes('\u0000')) throw new Error("Can not escape empty key or with null unicode!");
|
||||||
|
if (key.length > 64) key = sha256(key);
|
||||||
if (key.match(/^`.+`$/g)) return key;
|
if (key.match(/^`.+`$/g)) return key;
|
||||||
return `\`${key.replace(/`/g, '``')}\``;
|
return `\`${key.replace(/`/g, '``')}\``;
|
||||||
},
|
},
|
||||||
|
|
3
src/tools.ts
Normal file
3
src/tools.ts
Normal file
|
@ -0,0 +1,3 @@
|
||||||
|
import crypto from "crypto";
|
||||||
|
|
||||||
|
export const sha256 = (d: any) => crypto.createHash('sha256').update(String(d)).digest('base64');
|
Loading…
Reference in a new issue