@lcap/nasl 2.20.0-beta.2 → 2.20.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/out/automate/engine/index.d.ts +1 -1
- package/out/automate/engine/index.js +2 -3
- package/out/automate/engine/index.js.map +1 -1
- package/out/automate/engine/uniqueName.d.ts +1 -1
- package/out/automate/engine/uniqueName.js +2 -2
- package/out/automate/engine/uniqueName.js.map +1 -1
- package/out/automate/engine/utils.js +4 -1
- package/out/automate/engine/utils.js.map +1 -1
- package/out/automate/template/myProcess.d.ts +1 -1
- package/out/automate/template/myProcess.js +2 -2
- package/out/automate/template/myProcess.js.map +1 -1
- package/out/bak/translator.js +14 -22
- package/out/bak/translator.js.map +1 -1
- package/out/common/BaseNode.js +4 -1
- package/out/common/BaseNode.js.map +1 -1
- package/out/common/Command.d.ts +1 -0
- package/out/common/Command.js +5 -1
- package/out/common/Command.js.map +1 -1
- package/out/concepts/App__.d.ts +4 -0
- package/out/concepts/App__.js +30 -6
- package/out/concepts/App__.js.map +1 -1
- package/out/concepts/Assignee__.js +4 -3
- package/out/concepts/Assignee__.js.map +1 -1
- package/out/concepts/BatchAssignment__.js +3 -3
- package/out/concepts/BatchAssignment__.js.map +1 -1
- package/out/concepts/BindAttribute__.d.ts +7 -0
- package/out/concepts/BindAttribute__.js +270 -39
- package/out/concepts/BindAttribute__.js.map +1 -1
- package/out/concepts/BindDirective__.d.ts +7 -0
- package/out/concepts/BindDirective__.js +215 -17
- package/out/concepts/BindDirective__.js.map +1 -1
- package/out/concepts/BindStyle__.d.ts +7 -0
- package/out/concepts/BindStyle__.js +194 -4
- package/out/concepts/BindStyle__.js.map +1 -1
- package/out/concepts/CallFunction__.js +22 -8
- package/out/concepts/CallFunction__.js.map +1 -1
- package/out/concepts/CallInterface__.js +3 -2
- package/out/concepts/CallInterface__.js.map +1 -1
- package/out/concepts/CallLogic__.d.ts +3 -0
- package/out/concepts/CallLogic__.js +78 -89
- package/out/concepts/CallLogic__.js.map +1 -1
- package/out/concepts/CallQueryComponent__.js +20 -3
- package/out/concepts/CallQueryComponent__.js.map +1 -1
- package/out/concepts/ConfigGroup__.d.ts +1 -0
- package/out/concepts/ConfigGroup__.js +13 -0
- package/out/concepts/ConfigGroup__.js.map +1 -1
- package/out/concepts/ConfigProperty__.d.ts +19 -0
- package/out/concepts/ConfigProperty__.js +61 -0
- package/out/concepts/ConfigProperty__.js.map +1 -1
- package/out/concepts/Configuration__.d.ts +1 -0
- package/out/concepts/Configuration__.js +13 -0
- package/out/concepts/Configuration__.js.map +1 -1
- package/out/concepts/DataSource__.js.map +1 -1
- package/out/concepts/Destination__.d.ts +1 -0
- package/out/concepts/Destination__.js +61 -7
- package/out/concepts/Destination__.js.map +1 -1
- package/out/concepts/EntityProperty__.js +9 -1
- package/out/concepts/EntityProperty__.js.map +1 -1
- package/out/concepts/EnumItem__.d.ts +5 -5
- package/out/concepts/EnumItem__.js +6 -6
- package/out/concepts/Enum__.d.ts +20 -19
- package/out/concepts/Enum__.js +28 -1
- package/out/concepts/Enum__.js.map +1 -1
- package/out/concepts/ExternalDestination__.d.ts +1 -0
- package/out/concepts/ExternalDestination__.js +21 -3
- package/out/concepts/ExternalDestination__.js.map +1 -1
- package/out/concepts/ForEachStatement__.js +2 -0
- package/out/concepts/ForEachStatement__.js.map +1 -1
- package/out/concepts/Frontend__.d.ts +2 -1
- package/out/concepts/Frontend__.js.map +1 -1
- package/out/concepts/Identifier__.js +16 -5
- package/out/concepts/Identifier__.js.map +1 -1
- package/out/concepts/InterfaceParam__.js +9 -1
- package/out/concepts/InterfaceParam__.js.map +1 -1
- package/out/concepts/JSBlock__.js +5 -1
- package/out/concepts/JSBlock__.js.map +1 -1
- package/out/concepts/Logic__.d.ts +79 -79
- package/out/concepts/Logic__.js +16 -3
- package/out/concepts/Logic__.js.map +1 -1
- package/out/concepts/Match__.d.ts +0 -3
- package/out/concepts/Match__.js +11 -66
- package/out/concepts/Match__.js.map +1 -1
- package/out/concepts/MemberExpression__.js +9 -0
- package/out/concepts/MemberExpression__.js.map +1 -1
- package/out/concepts/Module__.d.ts +16 -0
- package/out/concepts/Module__.js +43 -0
- package/out/concepts/Module__.js.map +1 -1
- package/out/concepts/NewComposite__.d.ts +2 -4
- package/out/concepts/NewComposite__.js +91 -126
- package/out/concepts/NewComposite__.js.map +1 -1
- package/out/concepts/NewList__.d.ts +1 -0
- package/out/concepts/NewList__.js +22 -2
- package/out/concepts/NewList__.js.map +1 -1
- package/out/concepts/NewMap__.d.ts +1 -0
- package/out/concepts/NewMap__.js +43 -11
- package/out/concepts/NewMap__.js.map +1 -1
- package/out/concepts/OqlQueryComponent__.js +40 -12
- package/out/concepts/OqlQueryComponent__.js.map +1 -1
- package/out/concepts/Param__.js +10 -2
- package/out/concepts/Param__.js.map +1 -1
- package/out/concepts/ProcessElement__.js +2 -1
- package/out/concepts/ProcessElement__.js.map +1 -1
- package/out/concepts/ProcessOutcome__.js +1 -1
- package/out/concepts/ProcessOutcome__.js.map +1 -1
- package/out/concepts/ProcessOutcomes__.js +1 -1
- package/out/concepts/ProcessOutcomes__.js.map +1 -1
- package/out/concepts/Process__.js +1 -0
- package/out/concepts/Process__.js.map +1 -1
- package/out/concepts/Return__.js +10 -2
- package/out/concepts/Return__.js.map +1 -1
- package/out/concepts/StringInterpolation__.js +14 -2
- package/out/concepts/StringInterpolation__.js.map +1 -1
- package/out/concepts/StringLiteral__.js +6 -6
- package/out/concepts/StringLiteral__.js.map +1 -1
- package/out/concepts/StructureProperty__.js +9 -1
- package/out/concepts/StructureProperty__.js.map +1 -1
- package/out/concepts/TypeAnnotation__.d.ts +6 -3
- package/out/concepts/TypeAnnotation__.js +67 -13
- package/out/concepts/TypeAnnotation__.js.map +1 -1
- package/out/concepts/ValidationRule__.d.ts +1 -0
- package/out/concepts/ValidationRule__.js +53 -0
- package/out/concepts/ValidationRule__.js.map +1 -1
- package/out/concepts/Variable__.js +9 -1
- package/out/concepts/Variable__.js.map +1 -1
- package/out/concepts/ViewElement__.js +17 -1
- package/out/concepts/ViewElement__.js.map +1 -1
- package/out/concepts/View__.d.ts +1 -3
- package/out/concepts/View__.js +22 -11
- package/out/concepts/View__.js.map +1 -1
- package/out/concepts/basics/stdlib/nasl.collection.js +6 -1
- package/out/concepts/basics/stdlib/nasl.collection.js.map +1 -1
- package/out/concepts/basics/stdlib/nasl.configuration.js +3 -0
- package/out/concepts/basics/stdlib/nasl.configuration.js.map +1 -1
- package/out/concepts/basics/stdlib/nasl.core.d.ts +2 -0
- package/out/concepts/basics/stdlib/nasl.core.js +34 -0
- package/out/concepts/basics/stdlib/nasl.core.js.map +1 -1
- package/out/concepts/basics/stdlib/nasl.util.js +4 -2
- package/out/concepts/basics/stdlib/nasl.util.js.map +1 -1
- package/out/concepts/basics/types/index.d.ts +1 -0
- package/out/concepts/basics/types/index.js +3 -1
- package/out/concepts/basics/types/index.js.map +1 -1
- package/out/concepts/index__.d.ts +0 -1
- package/out/concepts/index__.js +0 -1
- package/out/concepts/index__.js.map +1 -1
- package/out/enums/KEYWORDS.js +8 -0
- package/out/enums/KEYWORDS.js.map +1 -1
- package/out/generator/genBundleFiles.js +24 -5
- package/out/generator/genBundleFiles.js.map +1 -1
- package/out/generator/genReleaseBody.d.ts +2 -3
- package/out/generator/genReleaseBody.js +97 -23
- package/out/generator/genReleaseBody.js.map +1 -1
- package/out/generator/permission.d.ts +2 -10
- package/out/generator/permission.js +27 -14
- package/out/generator/permission.js.map +1 -1
- package/out/server/entity2LogicNamespace.js +2 -20
- package/out/server/entity2LogicNamespace.js.map +1 -1
- package/out/server/extendBaseNode.js +16 -5
- package/out/server/extendBaseNode.js.map +1 -1
- package/out/server/formatTsUtils.d.ts +2 -1
- package/out/server/formatTsUtils.js +40 -10
- package/out/server/formatTsUtils.js.map +1 -1
- package/out/server/getLogics.d.ts +2 -2
- package/out/server/getLogics.js +3 -3
- package/out/server/getLogics.js.map +1 -1
- package/out/server/getMemberIdentifier.d.ts +1 -0
- package/out/server/getMemberIdentifier.js +27 -1
- package/out/server/getMemberIdentifier.js.map +1 -1
- package/out/server/index.js +1 -0
- package/out/server/index.js.map +1 -1
- package/out/server/naslServer.d.ts +7 -1
- package/out/server/naslServer.js +519 -46
- package/out/server/naslServer.js.map +1 -1
- package/out/server/translator.js +109 -33
- package/out/server/translator.js.map +1 -1
- package/out/service/storage/init.js +21 -1
- package/out/service/storage/init.js.map +1 -1
- package/out/templator/genCreateBlock.js +1 -3
- package/out/templator/genCreateBlock.js.map +1 -1
- package/out/templator/genCurdEditMultipleKeyBlock.js +1 -3
- package/out/templator/genCurdEditMultipleKeyBlock.js.map +1 -1
- package/out/templator/genCurdMultipleKeyBlock.js +2 -4
- package/out/templator/genCurdMultipleKeyBlock.js.map +1 -1
- package/out/templator/genGetBlock.js +1 -1
- package/out/templator/genGetBlock.js.map +1 -1
- package/out/templator/genGridViewBlock.js +2 -2
- package/out/templator/genGridViewBlock.js.map +1 -1
- package/out/templator/genListViewBlock.js +7 -1
- package/out/templator/genListViewBlock.js.map +1 -1
- package/out/templator/genSelectBlock.js +1 -1
- package/out/templator/genSelectBlock.js.map +1 -1
- package/out/templator/genTableBlock.js +2 -2
- package/out/templator/genTableBlock.js.map +1 -1
- package/out/templator/genUpdateBlock.js +2 -3
- package/out/templator/genUpdateBlock.js.map +1 -1
- package/out/utils/traverse.js +8 -2
- package/out/utils/traverse.js.map +1 -1
- package/package.json +2 -2
- package/sandbox/stdlib/dist/nasl.logging.js +0 -0
- package/sandbox/stdlib/dist/nasl.util.js +0 -0
- package/sandbox/stdlib/nasl.collection.ts +1 -0
- package/sandbox/stdlib/nasl.core.ts +34 -0
- package/sandbox/stdlib/nasl.oql.ts +71 -15
- package/sandbox/stdlib/nasl.util.ts +9 -3
- package/src/automate/engine/dist/index.dev.js +517 -0
- package/src/automate/engine/index.js +2 -3
- package/src/automate/engine/uniqueName.js +2 -2
- package/src/automate/engine/utils.js +4 -2
- package/src/automate/template/myProcess.js +2 -2
- package/src/bak/translator.js +16 -25
- package/src/common/BaseNode.ts +3 -1
- package/src/common/Command.ts +4 -0
- package/src/common/dist/BaseNode.js +1101 -0
- package/src/concepts/App__.ts +36 -7
- package/src/concepts/Assignee__.ts +4 -3
- package/src/concepts/BatchAssignment__.ts +3 -3
- package/src/concepts/BindAttribute__.ts +299 -38
- package/src/concepts/BindDirective__.ts +204 -31
- package/src/concepts/BindStyle__.ts +187 -24
- package/src/concepts/CallFunction__.ts +55 -10
- package/src/concepts/CallInterface__.ts +3 -2
- package/src/concepts/CallLogic__.ts +110 -90
- package/src/concepts/CallQueryComponent__.ts +18 -3
- package/src/concepts/ConfigGroup__.ts +17 -4
- package/src/concepts/ConfigProperty__.ts +70 -4
- package/src/concepts/Configuration__.ts +14 -5
- package/src/concepts/DataSource__.ts +4 -1
- package/src/concepts/Destination__.ts +61 -7
- package/src/concepts/EntityProperty__.ts +7 -1
- package/src/concepts/EnumItem__.ts +6 -6
- package/src/concepts/Enum__.ts +22 -19
- package/src/concepts/ExternalDestination__.ts +28 -8
- package/src/concepts/ForEachStatement__.ts +2 -0
- package/src/concepts/Frontend__.ts +2 -1
- package/src/concepts/Identifier__.ts +16 -5
- package/src/concepts/InterfaceParam__.ts +7 -1
- package/src/concepts/JSBlock__.ts +3 -2
- package/src/concepts/Logic__.ts +95 -83
- package/src/concepts/Match__.ts +31 -67
- package/src/concepts/MemberExpression__.ts +6 -0
- package/src/concepts/Module__.ts +57 -0
- package/src/concepts/NewComposite__.ts +95 -140
- package/src/concepts/NewList__.ts +23 -2
- package/src/concepts/NewMap__.ts +48 -24
- package/src/concepts/OqlQueryComponent__.ts +40 -20
- package/src/concepts/Param__.ts +178 -176
- package/src/concepts/ProcessElement__.ts +2 -1
- package/src/concepts/ProcessOutcome__.ts +1 -1
- package/src/concepts/ProcessOutcomes__.ts +1 -1
- package/src/concepts/Process__.ts +1 -0
- package/src/concepts/Return__.ts +8 -2
- package/src/concepts/StringInterpolation__.ts +19 -7
- package/src/concepts/StringLiteral__.ts +7 -6
- package/src/concepts/StructureProperty__.ts +7 -1
- package/src/concepts/TypeAnnotation__.ts +101 -14
- package/src/concepts/ValidationRule__.ts +58 -9
- package/src/concepts/Variable__.ts +11 -1
- package/src/concepts/ViewElement__.ts +39 -2
- package/src/concepts/View__.ts +26 -14
- package/src/concepts/basics/stdlib/dist/nasl.util.js +1602 -0
- package/src/concepts/basics/stdlib/dist/reference2TypeAnnotationList.js +24 -0
- package/src/concepts/basics/stdlib/nasl.collection.ts +6 -1
- package/src/concepts/basics/stdlib/nasl.configuration.ts +3 -0
- package/src/concepts/basics/stdlib/nasl.core.ts +33 -2
- package/src/concepts/basics/stdlib/nasl.util.ts +4 -2
- package/src/concepts/basics/types/index.ts +1 -0
- package/src/concepts/dist/BindAttribute__.js +795 -0
- package/src/concepts/dist/BindEvent__.js +732 -0
- package/src/concepts/dist/CallFunction__.js +527 -0
- package/src/concepts/dist/CallLogic__.js +932 -0
- package/src/concepts/dist/Destination__.js +708 -0
- package/src/concepts/dist/ExternalDestination__.js +298 -0
- package/src/concepts/dist/Identifier__.js +311 -0
- package/src/concepts/dist/StringInterpolation__.js +231 -0
- package/src/concepts/dist/TypeAnnotation__.js +834 -0
- package/src/concepts/dist/ViewElement__.js +1692 -0
- package/src/concepts/dist/View__.js +1601 -0
- package/src/concepts/index__.ts +0 -1
- package/src/enums/KEYWORDS.ts +8 -0
- package/src/generator/dist/genBundleFiles.js +261 -0
- package/src/generator/dist/genMetaData.js +245 -0
- package/src/generator/dist/permission.js +405 -0
- package/src/generator/genBundleFiles.ts +24 -5
- package/src/generator/genReleaseBody.ts +75 -30
- package/src/generator/permission.ts +31 -15
- package/src/server/entity2LogicNamespace.ts +2 -20
- package/src/server/extendBaseNode.ts +15 -5
- package/src/server/formatTsUtils.ts +41 -10
- package/src/server/getLogics.ts +4 -4
- package/src/server/getMemberIdentifier.ts +27 -1
- package/src/server/index.ts +2 -0
- package/src/server/naslServer.ts +520 -48
- package/src/server/translator.ts +96 -34
- package/src/service/storage/dist/init.js +579 -0
- package/src/service/storage/init.ts +22 -2
- package/src/templator/dist/genEditTableBlock.js +204 -0
- package/src/templator/dist/genGridViewBlock.js +265 -0
- package/src/templator/dist/genListViewBlock.js +84 -0
- package/src/templator/dist/genTableBlock.js +209 -0
- package/src/templator/dist/utils.js +527 -0
- package/src/templator/genCreateBlock.ts +1 -3
- package/src/templator/genCurdEditMultipleKeyBlock.ts +1 -3
- package/src/templator/genCurdMultipleKeyBlock.ts +2 -4
- package/src/templator/genGetBlock.ts +1 -1
- package/src/templator/genGridViewBlock.ts +3 -4
- package/src/templator/genListViewBlock.ts +9 -3
- package/src/templator/genSelectBlock.ts +1 -1
- package/src/templator/genTableBlock.ts +3 -3
- package/src/templator/genUpdateBlock.ts +2 -3
- package/src/utils/traverse.ts +10 -2
- package/ts-worker/lib/tsserver.js +10 -2
- package/ts-worker/package.json +1 -0
- package/ts-worker/webpack.config.js +11 -2
- package/out/concepts/ConstructArgument__.d.ts +0 -40
- package/out/concepts/ConstructArgument__.js +0 -108
- package/out/concepts/ConstructArgument__.js.map +0 -1
- package/out/concepts/Construct__.d.ts +0 -189
- package/out/concepts/Construct__.js +0 -340
- package/out/concepts/Construct__.js.map +0 -1
- package/out/templator/sql-parser/index.d.ts +0 -1
- package/out/templator/sql-parser/index.js +0 -228
- package/out/templator/sql-parser/index.js.map +0 -1
- package/out/templator/sql-parser/parser.js +0 -26664
- package/out/templator/sql-parser/parser.js.map +0 -1
|
@@ -1,9 +1,40 @@
|
|
|
1
|
-
type IfEquals<T, U, Y=unknown, N=never> =
|
|
1
|
+
type IfEquals<T, U, Y = unknown, N = never> =
|
|
2
2
|
(<G>() => G extends T ? 1 : 2) extends
|
|
3
3
|
(<G>() => G extends U ? 1 : 2) ? Y : N;
|
|
4
4
|
|
|
5
|
+
type GetItem<T> = T extends Array<infer U> ? U : T;
|
|
6
|
+
|
|
7
|
+
type KeysExclude__name<T> = Exclude<keyof T, '__name'>;
|
|
8
|
+
type Values<T> = T[keyof T]
|
|
9
|
+
|
|
10
|
+
type UnionToIntersection<U> =
|
|
11
|
+
(U extends any ? (k: U) => void : never) extends ((k: infer I) => void) ? I : never
|
|
12
|
+
type LastOfUnion<T> =
|
|
13
|
+
UnionToIntersection<T extends any ? () => T : never> extends () => (infer R) ? R : never
|
|
14
|
+
// TS4.0+
|
|
15
|
+
type Push<T extends any[], V> = [...T, V];
|
|
16
|
+
// TS4.1+
|
|
17
|
+
type TuplifyUnion<T, L = LastOfUnion<T>, N = [T] extends [never] ? true : false> =
|
|
18
|
+
true extends N ? [] : Push<TuplifyUnion<Exclude<T, L>>, L>
|
|
19
|
+
|
|
20
|
+
type GetTypeIfOnlyOneField<T> = TuplifyUnion<keyof T>['length'] extends 0 | 1 ? Values<T> : T;
|
|
21
|
+
type GetFinalType<T, NoList = false> = NoList extends true ? GetTypeIfOnlyOneField<T> : (GetTypeIfOnlyOneField<T> extends never ? never : nasl.collection.List<GetTypeIfOnlyOneField<T>>);
|
|
22
|
+
|
|
23
|
+
type Shift<T extends any[]> = T extends [infer First, ...infer RightRest]
|
|
24
|
+
? RightRest
|
|
25
|
+
: never;
|
|
26
|
+
type FirstOf<T extends any[]> = T extends [infer First, ...infer RightRest]
|
|
27
|
+
? First
|
|
28
|
+
: never;
|
|
29
|
+
type CheckUniqueKeys<T extends any[], E = {}, Keys = never> =
|
|
30
|
+
E extends never ? true : (
|
|
31
|
+
KeysExclude__name<E> & Keys extends never ? CheckUniqueKeys<Shift<T>, FirstOf<T>, Keys | KeysExclude__name<E>>
|
|
32
|
+
: (KeysExclude__name<E> & Keys extends Keys ? KeysExclude__name<E> & Keys : CheckUniqueKeys<Shift<T>, FirstOf<T>, Keys | KeysExclude__name<E>>)
|
|
33
|
+
);
|
|
34
|
+
|
|
5
35
|
declare namespace nasl.oql {
|
|
6
36
|
// 一次平铺的查询视为一次Query,FROM查询的依据为实体Entity
|
|
37
|
+
function checkUniqueKeys<RecordList extends unknown[]>(...args: RecordList): CheckUniqueKeys<RecordList>;
|
|
7
38
|
export class Query<Record extends Array<any>> {
|
|
8
39
|
FROM<Record>(): Query<[Record]>;
|
|
9
40
|
FROM<JoinRecord extends Array<any>>(query: Query<JoinRecord>): Query<[...Record, ...JoinRecord]>;
|
|
@@ -18,13 +49,15 @@ declare namespace nasl.oql {
|
|
|
18
49
|
WHERE(...expr: Array<(...record: Record) => nasl.core.Boolean>): Query<Record>;
|
|
19
50
|
GROUP_BY(...expr: Array<(...record: Record) => any>): Query<Record>;
|
|
20
51
|
HAVING(...expr: Array<(...record: Record) => nasl.core.Boolean>): Query<Record>;
|
|
21
|
-
SELECT<SelectRecord>(expr: (...record: Record) => SelectRecord): Query<[SelectRecord]>;
|
|
52
|
+
SELECT<SelectRecord>(expr: (...record: Record) => SelectRecord, check?: (...record: Record) => true): Query<[SelectRecord]>;
|
|
22
53
|
// 内存临时表
|
|
23
54
|
SELECT_WITH_TEMP_TABLE<SelectRecord>(expr: (...record: Record) => SelectRecord): Query<[SelectRecord, ...Record]>;
|
|
24
55
|
SELECT_SUBQUERY_EXPR<SelectRecord>(expr: (...record: Record) => SelectRecord): SelectRecord;
|
|
25
56
|
ORDER_BY(...expr: Array<(...record: Record) => any>): Query<Record>;
|
|
26
57
|
LIMIT_OFFSET(limit: nasl.core.Long, offset?: nasl.core.Long): Query<Record>;
|
|
27
58
|
PAGINATE(page: nasl.core.Long, size: nasl.core.Long): Query<Record>;
|
|
59
|
+
|
|
60
|
+
GET<NoList extends boolean>(noList?: NoList): GetFinalType<GetItem<Record>, NoList>;
|
|
28
61
|
}
|
|
29
62
|
|
|
30
63
|
// String functions
|
|
@@ -33,7 +66,7 @@ declare namespace nasl.oql {
|
|
|
33
66
|
export function BIT_LENGTH(str: nasl.core.String | nasl.core.Text): nasl.core.Integer;
|
|
34
67
|
export function CHAR(charset?: nasl.core.String | nasl.core.Text, ...exprs: Array<any>): nasl.core.String;
|
|
35
68
|
export function CHAR_LENGTH(str: nasl.core.String | nasl.core.Text): nasl.core.Integer;
|
|
36
|
-
export function CONCAT(...strs: Array<
|
|
69
|
+
export function CONCAT(...strs: Array<any>): nasl.core.String;
|
|
37
70
|
export function CONCAT_WS(seperator: nasl.core.String | nasl.core.Text, ...strs: Array<nasl.core.String | nasl.core.Text>): nasl.core.String;
|
|
38
71
|
export function ELT(expr: nasl.core.Integer, ...strs: Array<nasl.core.String | nasl.core.Text>): nasl.core.String;
|
|
39
72
|
export function EXPORT_SET(bits: nasl.core.Integer, on: nasl.core.String | nasl.core.Text, off: nasl.core.String | nasl.core.Text, separator?: nasl.core.String | nasl.core.Text, number_of_bits?: nasl.core.Integer): nasl.core.String;
|
|
@@ -45,7 +78,7 @@ declare namespace nasl.oql {
|
|
|
45
78
|
export function INSERT(str: nasl.core.String | nasl.core.Text, pos: nasl.core.Integer, len: nasl.core.Integer, newStr: nasl.core.String | nasl.core.Text): nasl.core.String;
|
|
46
79
|
export function INSTR(str: nasl.core.String | nasl.core.Text, newStr: nasl.core.String | nasl.core.Text): nasl.core.Integer;
|
|
47
80
|
export function LCASE(str: nasl.core.String | nasl.core.Text): nasl.core.String;
|
|
48
|
-
export function LEFT(str: nasl.core.String | nasl.core.Text, len: nasl.core.Integer): nasl.core.String;
|
|
81
|
+
export function LEFT(str: nasl.core.String | nasl.core.Text | nasl.core.Date, len: nasl.core.Integer): nasl.core.String;
|
|
49
82
|
export function LENGTH(str: nasl.core.String | nasl.core.Text): nasl.core.Integer;
|
|
50
83
|
export function LOAD_FILE(fileName: nasl.core.String | nasl.core.Text): nasl.core.String;
|
|
51
84
|
export function LOCATE(subStr: nasl.core.String | nasl.core.Text, str: nasl.core.String, pos?: nasl.core.Integer): nasl.core.Integer;
|
|
@@ -76,7 +109,7 @@ declare namespace nasl.oql {
|
|
|
76
109
|
export function UCASE(str: nasl.core.String | nasl.core.Text): nasl.core.String;
|
|
77
110
|
export function UNHEX(str: nasl.core.String | nasl.core.Text): nasl.core.String;
|
|
78
111
|
export function UPPER(str: nasl.core.String | nasl.core.Text): nasl.core.String;
|
|
79
|
-
export function WEIGHT_STRING(str: nasl.core.String | nasl.core.Text, as: 'CHAR'|'BINARY', ...level: Array<nasl.core.Integer>): nasl.core.String;
|
|
112
|
+
export function WEIGHT_STRING(str: nasl.core.String | nasl.core.Text, as: 'CHAR' | 'BINARY', ...level: Array<nasl.core.Integer>): nasl.core.String;
|
|
80
113
|
// String comparison functions
|
|
81
114
|
export function LIKE(str1: nasl.core.String | nasl.core.Text, str2: nasl.core.String | nasl.core.Text, escape?: nasl.core.String | nasl.core.Text): nasl.core.Boolean;
|
|
82
115
|
export function NOT_LIKE(str1: nasl.core.String | nasl.core.Text, str2: nasl.core.String | nasl.core.Text, escape?: nasl.core.String | nasl.core.Text): nasl.core.Boolean;
|
|
@@ -153,17 +186,17 @@ declare namespace nasl.oql {
|
|
|
153
186
|
// Date and Time Functions
|
|
154
187
|
type TIME_UNIT = 'MICROSECOND' | 'SECOND' | 'MINUTE' | 'HOUR' | 'DAY' | 'WEEK' | 'MONTH' | 'QUARTER' | 'YEAR' | 'SECOND_MICROSECOND' | 'MINUTE_MICROSECOND' | 'MINUTE_SECOND' | 'HOUR_MICROSECOND' | 'HOUR_SECOND' | 'HOUR_MINUTE' | 'DAY_MICROSECOND' | 'DAY_SECOND' | 'DAY_MINUTE' | 'DAY_HOUR' | 'YEAR_MONTH';
|
|
155
188
|
type fsp = 0 | 1 | 2 | 3 | 4 | 5 | 6; // fractional seconds precision
|
|
156
|
-
export function DATE_ADD(date: nasl.core.Date, interval: "INTERVAL", expr: nasl.core.Integer, unit: 'YEAR'|'MONTH'|'DAY'): nasl.core.Date;
|
|
189
|
+
export function DATE_ADD(date: nasl.core.Date, interval: "INTERVAL", expr: nasl.core.Integer, unit: 'YEAR' | 'MONTH' | 'DAY'): nasl.core.Date;
|
|
157
190
|
export function DATE_ADD(date: nasl.core.DateTime, interval: "INTERVAL", expr: nasl.core.Integer, unit: TIME_UNIT): nasl.core.DateTime;
|
|
158
|
-
export function DATE_ADD(date: nasl.core.Date, interval: "INTERVAL", expr: nasl.core.String, unit: 'YEAR'|'MONTH'|'DAY'): nasl.core.Date;
|
|
191
|
+
export function DATE_ADD(date: nasl.core.Date, interval: "INTERVAL", expr: nasl.core.String, unit: 'YEAR' | 'MONTH' | 'DAY'): nasl.core.Date;
|
|
159
192
|
export function DATE_ADD(date: nasl.core.DateTime, interval: "INTERVAL", expr: nasl.core.String, unit: TIME_UNIT): nasl.core.DateTime;
|
|
160
|
-
export function DATE_SUB(date: nasl.core.Date, interval: "INTERVAL", expr: nasl.core.Integer, unit: 'YEAR'|'MONTH'|'DAY'): nasl.core.Date;
|
|
193
|
+
export function DATE_SUB(date: nasl.core.Date, interval: "INTERVAL", expr: nasl.core.Integer, unit: 'YEAR' | 'MONTH' | 'DAY'): nasl.core.Date;
|
|
161
194
|
export function DATE_SUB(date: nasl.core.DateTime, interval: "INTERVAL", expr: nasl.core.Integer, unit: TIME_UNIT): nasl.core.DateTime;
|
|
162
|
-
export function DATE_SUB(date: nasl.core.Date, interval: "INTERVAL", expr: nasl.core.String, unit: 'YEAR'|'MONTH'|'DAY'): nasl.core.Date;
|
|
195
|
+
export function DATE_SUB(date: nasl.core.Date, interval: "INTERVAL", expr: nasl.core.String, unit: 'YEAR' | 'MONTH' | 'DAY'): nasl.core.Date;
|
|
163
196
|
export function DATE_SUB(date: nasl.core.DateTime, interval: "INTERVAL", expr: nasl.core.String, unit: TIME_UNIT): nasl.core.DateTime;
|
|
164
|
-
export function ADDDATE(date: nasl.core.Date, interval: "INTERVAL", expr: nasl.core.Integer, unit: 'YEAR'|'MONTH'|'DAY'): nasl.core.Date;
|
|
197
|
+
export function ADDDATE(date: nasl.core.Date, interval: "INTERVAL", expr: nasl.core.Integer, unit: 'YEAR' | 'MONTH' | 'DAY'): nasl.core.Date;
|
|
165
198
|
export function ADDDATE(date: nasl.core.DateTime, interval: "INTERVAL", expr: nasl.core.Integer, unit: TIME_UNIT): nasl.core.DateTime;
|
|
166
|
-
export function ADDDATE(date: nasl.core.Date, interval: "INTERVAL", expr: nasl.core.String, unit: 'YEAR'|'MONTH'|'DAY'): nasl.core.Date;
|
|
199
|
+
export function ADDDATE(date: nasl.core.Date, interval: "INTERVAL", expr: nasl.core.String, unit: 'YEAR' | 'MONTH' | 'DAY'): nasl.core.Date;
|
|
167
200
|
export function ADDDATE(date: nasl.core.DateTime, interval: "INTERVAL", expr: nasl.core.String, unit: TIME_UNIT): nasl.core.DateTime;
|
|
168
201
|
export function ADDDATE(date: nasl.core.Date, expr: nasl.core.Integer): nasl.core.Date;
|
|
169
202
|
export function ADDDATE(date: nasl.core.DateTime, expr: nasl.core.Integer): nasl.core.DateTime;
|
|
@@ -178,7 +211,7 @@ declare namespace nasl.oql {
|
|
|
178
211
|
export function CURRENT_TIME(fsp: fsp): nasl.core.Double;
|
|
179
212
|
export function DATE(expr: nasl.core.Date | nasl.core.DateTime): nasl.core.Date;
|
|
180
213
|
export function DATEDIFF(expr1: nasl.core.Date | nasl.core.DateTime, expr2: nasl.core.Date | nasl.core.DateTime): nasl.core.Integer;
|
|
181
|
-
export function DATE_FORMAT(expr1: nasl.core.Date | nasl.core.DateTime, format: nasl.core.String): nasl.core.String;
|
|
214
|
+
export function DATE_FORMAT(expr1: nasl.core.Date | nasl.core.DateTime | nasl.core.Time, format: nasl.core.String): nasl.core.String;
|
|
182
215
|
export function DAY(expr1: nasl.core.Date | nasl.core.DateTime): nasl.core.Integer;
|
|
183
216
|
export function DAYNAME(expr1: nasl.core.Date | nasl.core.DateTime): nasl.core.String;
|
|
184
217
|
export function DAYOFMONTH(expr1: nasl.core.Date | nasl.core.DateTime): nasl.core.Integer;
|
|
@@ -202,9 +235,9 @@ declare namespace nasl.oql {
|
|
|
202
235
|
export function SECOND(expr1: nasl.core.Time | nasl.core.DateTime): nasl.core.Integer;
|
|
203
236
|
export function SEC_TO_TIME(expr1: nasl.core.Integer): nasl.core.Time;
|
|
204
237
|
export function STR_TO_DATE(str: nasl.core.String, format: nasl.core.String): nasl.core.DateTime;
|
|
205
|
-
export function SUBDATE(date: nasl.core.Date, interval: "INTERVAL", expr: nasl.core.Integer, unit: 'YEAR'|'MONTH'|'DAY'): nasl.core.Date;
|
|
238
|
+
export function SUBDATE(date: nasl.core.Date, interval: "INTERVAL", expr: nasl.core.Integer, unit: 'YEAR' | 'MONTH' | 'DAY'): nasl.core.Date;
|
|
206
239
|
export function SUBDATE(date: nasl.core.DateTime, interval: "INTERVAL", expr: nasl.core.Integer, unit: TIME_UNIT): nasl.core.DateTime;
|
|
207
|
-
export function SUBDATE(date: nasl.core.Date, interval: "INTERVAL", expr: nasl.core.String, unit: 'YEAR'|'MONTH'|'DAY'): nasl.core.Date;
|
|
240
|
+
export function SUBDATE(date: nasl.core.Date, interval: "INTERVAL", expr: nasl.core.String, unit: 'YEAR' | 'MONTH' | 'DAY'): nasl.core.Date;
|
|
208
241
|
export function SUBDATE(date: nasl.core.DateTime, interval: "INTERVAL", expr: nasl.core.String, unit: TIME_UNIT): nasl.core.DateTime;
|
|
209
242
|
export function SUBDATE(date: nasl.core.Date, expr: nasl.core.Integer): nasl.core.Date;
|
|
210
243
|
export function SUBDATE(date: nasl.core.DateTime, expr: nasl.core.Integer): nasl.core.DateTime;
|
|
@@ -223,6 +256,7 @@ declare namespace nasl.oql {
|
|
|
223
256
|
export function WEEKOFYEAR(date: nasl.core.Date | nasl.core.DateTime): nasl.core.Integer;
|
|
224
257
|
export function YEAR(date: nasl.core.Date | nasl.core.DateTime): nasl.core.Integer;
|
|
225
258
|
export function YEARWEEK(date: nasl.core.Date, mode?: nasl.core.Integer): nasl.core.Integer;
|
|
259
|
+
export function HOUR(date: nasl.core.Date | nasl.core.DateTime): nasl.core.Integer;
|
|
226
260
|
export function NOW(): nasl.core.DateTime;
|
|
227
261
|
|
|
228
262
|
// Comparison Functions
|
|
@@ -254,15 +288,20 @@ declare namespace nasl.oql {
|
|
|
254
288
|
export function SUM(value: nasl.core.Long): nasl.core.Long;
|
|
255
289
|
export function SUM(value: nasl.core.Double): nasl.core.Double;
|
|
256
290
|
export function SUM(value: nasl.core.Decimal): nasl.core.Decimal;
|
|
257
|
-
export function AVG(value: nasl.core.Integer | nasl.core.Long | nasl.core.Double
|
|
291
|
+
export function AVG(value: nasl.core.Integer | nasl.core.Long | nasl.core.Double): nasl.core.Double;
|
|
292
|
+
export function AVG(value: nasl.core.Decimal): nasl.core.Decimal;
|
|
258
293
|
export function MAX(value: nasl.core.Integer): nasl.core.Integer;
|
|
259
294
|
export function MAX(value: nasl.core.Long): nasl.core.Long;
|
|
260
295
|
export function MAX(value: nasl.core.Double): nasl.core.Double;
|
|
261
296
|
export function MAX(value: nasl.core.Decimal): nasl.core.Decimal;
|
|
297
|
+
export function MAX(value: nasl.core.Date): nasl.core.Date;
|
|
298
|
+
export function MAX(value: nasl.core.Boolean): nasl.core.Boolean;
|
|
262
299
|
export function MIN(value: nasl.core.Integer): nasl.core.Integer;
|
|
263
300
|
export function MIN(value: nasl.core.Long): nasl.core.Long;
|
|
264
301
|
export function MIN(value: nasl.core.Double): nasl.core.Double;
|
|
265
302
|
export function MIN(value: nasl.core.Decimal): nasl.core.Decimal;
|
|
303
|
+
export function MIN(value: nasl.core.Date): nasl.core.Date;
|
|
304
|
+
export function MIN(value: nasl.core.Boolean): nasl.core.Boolean;
|
|
266
305
|
|
|
267
306
|
// self
|
|
268
307
|
export function STARTWITH(str1: nasl.core.String, str2: nasl.core.String): nasl.core.Boolean;
|
|
@@ -272,6 +311,7 @@ declare namespace nasl.oql {
|
|
|
272
311
|
export function IN_SUBQUERY<SelectRecord, T>(value: T, expr: Query<[SelectRecord]>): nasl.core.Boolean;
|
|
273
312
|
export function COMPARE_SUBQUERY<SelectRecord, T extends SelectRecord>(value: T, expr: Query<[SelectRecord]>): nasl.core.Boolean;
|
|
274
313
|
export function ISNULL(value: any): nasl.core.Boolean;
|
|
314
|
+
export function IFNULL<T1, T2>(expr1: T1, expr2: T2): T1 | T2;
|
|
275
315
|
export function CASE_WHEN<THEN>(caseCase: any, caseElse: THEN, ...caseWhen: Array<[() => any, () => THEN]>): THEN;
|
|
276
316
|
export function CASE_WHEN<THEN>(caseCase: any, ...caseWhen: Array<[() => any, () => THEN]>): THEN;
|
|
277
317
|
export function BETWEEN_AND<T>(value: T, between: T, and: T): nasl.core.Boolean;
|
|
@@ -284,4 +324,20 @@ declare namespace nasl.oql {
|
|
|
284
324
|
export function CONVERT<T>(value: T): T;
|
|
285
325
|
|
|
286
326
|
export function EXISTS_EXPR<Record extends Array<any>>(value: Query<Record>): nasl.core.Boolean;
|
|
327
|
+
export function COALESCE<T>(...args: Array<T>): T
|
|
287
328
|
}
|
|
329
|
+
|
|
330
|
+
|
|
331
|
+
// let result = new nasl.oql.Query()
|
|
332
|
+
// .FROM_SUBQUERY(
|
|
333
|
+
// new nasl.oql.Query()
|
|
334
|
+
// .FROM<app.dataSources.defaultDS.entities.Student>()
|
|
335
|
+
// .SELECT_WITH_TEMP_TABLE((s) => ({...s}))
|
|
336
|
+
// .SELECT((_mock_temp_table_alias, s) => ({..._mock_temp_table_alias, ...s}))
|
|
337
|
+
// )
|
|
338
|
+
// .SELECT_WITH_TEMP_TABLE((sub) => ({...sub, id: sub.id}))
|
|
339
|
+
// .SELECT(
|
|
340
|
+
// (_mock_temp_table_alias, sub) => ({ ..._mock_temp_table_alias, id2: sub.id }),
|
|
341
|
+
// (_mock_temp_table_alias, sub) => nasl.oql.checkUniqueKeys(_mock_temp_table_alias, { id2: sub.id }),
|
|
342
|
+
// )
|
|
343
|
+
// .GET(true);
|
|
@@ -54,8 +54,9 @@ declare namespace nasl.util {
|
|
|
54
54
|
export function ListProduct<T extends nasl.core.Integer | nasl.core.Long | nasl.core.Double | nasl.core.Decimal>(list: nasl.collection.List<T>): T;
|
|
55
55
|
export function ListMax<T extends nasl.core.Integer | nasl.core.Long | nasl.core.Double | nasl.core.Decimal | nasl.core.String>(list: nasl.collection.List<T>): T;
|
|
56
56
|
export function ListMin<T extends nasl.core.Integer | nasl.core.Long | nasl.core.Double | nasl.core.Decimal | nasl.core.String>(list: nasl.collection.List<T>): T;
|
|
57
|
-
|
|
57
|
+
|
|
58
58
|
export function ListAverage<T extends nasl.core.Integer | nasl.core.Long | nasl.core.Double>(list: nasl.collection.List<T>): nasl.core.Double;
|
|
59
|
+
export function ListAverage(list: nasl.collection.List<nasl.core.Decimal>): nasl.core.Decimal;
|
|
59
60
|
|
|
60
61
|
export function ListSort<T>(list: nasl.collection.List<T>, by: (item: T) => any, sort: nasl.core.Boolean): void;
|
|
61
62
|
export function ListFind<T>(list: nasl.collection.List<T>, by: (item: T) => nasl.core.Boolean): T;
|
|
@@ -96,7 +97,12 @@ declare namespace nasl.util {
|
|
|
96
97
|
export function RandomInt(start: nasl.core.Integer, end: nasl.core.Integer): nasl.core.Integer;
|
|
97
98
|
export function New<T>(): T;
|
|
98
99
|
export function NewList<T>(...args: T[]): nasl.collection.List<T>;
|
|
99
|
-
export function NewMap<K, T>(key: K, ...args: T[]): nasl.collection.Map<K, T>;
|
|
100
|
+
export function NewMap<K extends nasl.core.String, T>(key: K, ...args: T[]): nasl.collection.Map<K, T>;
|
|
101
|
+
export function NewMap<K extends nasl.core.Integer, T>(key: K, ...args: T[]): nasl.collection.Map<K, T>;
|
|
102
|
+
export function NewMap<K extends nasl.core.Boolean, T>(key: K, ...args: T[]): nasl.collection.Map<K, T>;
|
|
103
|
+
export function NewMap<K extends nasl.core.Long, T>(key: K, ...args: T[]): nasl.collection.Map<K, T>;
|
|
104
|
+
export function NewMap<K extends nasl.core.Decimal, T>(key: K, ...args: T[]): nasl.collection.Map<K, T>;
|
|
105
|
+
export function NewMap<K extends nasl.core.None, T>(key: K, ...args: T[]): nasl.collection.Map<K, T>;
|
|
100
106
|
|
|
101
107
|
export function CreateListPage<T>(list: nasl.collection.List<T>, total: nasl.core.Integer): { list: nasl.collection.List<T>, total: nasl.core.Integer };
|
|
102
108
|
|
|
@@ -105,7 +111,7 @@ declare namespace nasl.util {
|
|
|
105
111
|
export function jsonDeserialize<T>(arg: nasl.core.String): T;
|
|
106
112
|
|
|
107
113
|
export function concatString(...args: nasl.core.String[]): any;
|
|
108
|
-
export function stringInterpolation(...args:
|
|
114
|
+
export function stringInterpolation(...args: nasl.core.Any[]): nasl.core.String;
|
|
109
115
|
}
|
|
110
116
|
|
|
111
117
|
|