@qrvey/formula-lang 2.0.1-rc.533 → 2.0.1-rc.537
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/cjs/functions/hour.js +27 -10
- package/dist/cjs/functions/hour.js.map +1 -1
- package/dist/cjs/functions/index.js +4 -0
- package/dist/cjs/functions/index.js.map +1 -1
- package/dist/cjs/functions/millisecond.d.ts +5 -0
- package/dist/cjs/functions/millisecond.js +55 -0
- package/dist/cjs/functions/millisecond.js.map +1 -0
- package/dist/cjs/functions/text.d.ts +5 -0
- package/dist/cjs/functions/text.js +42 -0
- package/dist/cjs/functions/text.js.map +1 -0
- package/dist/cjs/utils/elasticsearch/index.js +3 -0
- package/dist/cjs/utils/elasticsearch/index.js.map +1 -1
- package/dist/cjs/utils/elasticsearch/scripts.d.ts +6 -1
- package/dist/cjs/utils/elasticsearch/scripts.js +15 -2
- package/dist/cjs/utils/elasticsearch/scripts.js.map +1 -1
- package/dist/module/functions/hour.js +28 -11
- package/dist/module/functions/hour.js.map +1 -1
- package/dist/module/functions/index.js +4 -0
- package/dist/module/functions/index.js.map +1 -1
- package/dist/module/functions/millisecond.d.ts +5 -0
- package/dist/module/functions/millisecond.js +52 -0
- package/dist/module/functions/millisecond.js.map +1 -0
- package/dist/module/functions/text.d.ts +5 -0
- package/dist/module/functions/text.js +39 -0
- package/dist/module/functions/text.js.map +1 -0
- package/dist/module/utils/elasticsearch/index.js +4 -1
- package/dist/module/utils/elasticsearch/index.js.map +1 -1
- package/dist/module/utils/elasticsearch/scripts.d.ts +6 -1
- package/dist/module/utils/elasticsearch/scripts.js +13 -1
- package/dist/module/utils/elasticsearch/scripts.js.map +1 -1
- package/package.json +1 -1
|
@@ -4,6 +4,7 @@ exports.HOUR = void 0;
|
|
|
4
4
|
const scripts_1 = require("../utils/elasticsearch/scripts");
|
|
5
5
|
const utils_1 = require("../utils");
|
|
6
6
|
const constants_1 = require("../constants");
|
|
7
|
+
const isAnAllowedValue_1 = require("../utils/isAnAllowedValue");
|
|
7
8
|
/**
|
|
8
9
|
* Returns the number of the HOUR in a Date.
|
|
9
10
|
*/
|
|
@@ -16,6 +17,12 @@ exports.HOUR = {
|
|
|
16
17
|
expectedPrimitive: constants_1.AST_PRIMITIVES.DATE,
|
|
17
18
|
validator: [utils_1.isDateParam],
|
|
18
19
|
},
|
|
20
|
+
{
|
|
21
|
+
identifier: 'TIME_FORMAT',
|
|
22
|
+
optional: true,
|
|
23
|
+
expectedPrimitive: constants_1.AST_PRIMITIVES.STRING,
|
|
24
|
+
validator: [utils_1.isStringParam, (0, isAnAllowedValue_1.isAnAllowedValue)(['24h', '12h'])],
|
|
25
|
+
},
|
|
19
26
|
],
|
|
20
27
|
transpiler: {
|
|
21
28
|
elasticsearch,
|
|
@@ -25,19 +32,29 @@ exports.HOUR = {
|
|
|
25
32
|
},
|
|
26
33
|
primitiveResult: constants_1.AST_PRIMITIVES.NUMBER,
|
|
27
34
|
};
|
|
28
|
-
function elasticsearch(value) {
|
|
29
|
-
return (0, scripts_1.hourScript)(value);
|
|
35
|
+
function elasticsearch(value, timeFormat) {
|
|
36
|
+
return (0, scripts_1.hourScript)(value, (0, utils_1.removeQuotes)(timeFormat !== null && timeFormat !== void 0 ? timeFormat : ''));
|
|
30
37
|
}
|
|
31
|
-
function SQL(value) {
|
|
32
|
-
|
|
38
|
+
function SQL(value, timeFormat) {
|
|
39
|
+
if ((0, utils_1.removeQuotes)(timeFormat !== null && timeFormat !== void 0 ? timeFormat : '') === '12h') {
|
|
40
|
+
return `(CASE
|
|
41
|
+
WHEN DATE_PART(HOUR, ${value})::INTEGER % 12 = 0 THEN
|
|
42
|
+
12
|
|
43
|
+
ELSE
|
|
44
|
+
DATE_PART(HOUR, ${value})::INTEGER % 12
|
|
45
|
+
END)`;
|
|
46
|
+
}
|
|
47
|
+
else {
|
|
48
|
+
return `DATE_PART('hour', ${value})`;
|
|
49
|
+
}
|
|
33
50
|
}
|
|
34
|
-
function snowflake(value) {
|
|
35
|
-
return SQL(value);
|
|
51
|
+
function snowflake(value, timeFormat) {
|
|
52
|
+
return SQL(value, timeFormat);
|
|
36
53
|
}
|
|
37
|
-
function redshift(value) {
|
|
38
|
-
return SQL(value);
|
|
54
|
+
function redshift(value, timeFormat) {
|
|
55
|
+
return SQL(value, timeFormat);
|
|
39
56
|
}
|
|
40
|
-
function postgresql(value) {
|
|
41
|
-
return SQL(value);
|
|
57
|
+
function postgresql(value, timeFormat) {
|
|
58
|
+
return SQL(value, timeFormat);
|
|
42
59
|
}
|
|
43
60
|
//# sourceMappingURL=hour.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"hour.js","sourceRoot":"","sources":["../../../src/functions/hour.ts"],"names":[],"mappings":";;;AACA,4DAA4D;AAC5D,
|
|
1
|
+
{"version":3,"file":"hour.js","sourceRoot":"","sources":["../../../src/functions/hour.ts"],"names":[],"mappings":";;;AACA,4DAA4D;AAC5D,oCAAoE;AACpE,4CAA8C;AAC9C,gEAA6D;AAE7D;;GAEG;AACU,QAAA,IAAI,GAAuB;IACpC,UAAU,EAAE,MAAM;IAClB,UAAU,EAAE;QACR;YACI,UAAU,EAAE,MAAM;YAClB,QAAQ,EAAE,KAAK;YACf,iBAAiB,EAAE,0BAAc,CAAC,IAAI;YACtC,SAAS,EAAE,CAAC,mBAAW,CAAC;SAC3B;QACD;YACI,UAAU,EAAE,aAAa;YACzB,QAAQ,EAAE,IAAI;YACd,iBAAiB,EAAE,0BAAc,CAAC,MAAM;YACxC,SAAS,EAAE,CAAC,qBAAa,EAAE,IAAA,mCAAgB,EAAC,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC,CAAC;SAC/D;KACJ;IACD,UAAU,EAAE;QACR,aAAa;QACb,SAAS;QACT,QAAQ;QACR,UAAU;KACb;IACD,eAAe,EAAE,0BAAc,CAAC,MAAM;CACzC,CAAC;AAEF,SAAS,aAAa,CAAC,KAAa,EAAE,UAAmB;IACrD,OAAO,IAAA,oBAAU,EAAC,KAAK,EAAE,IAAA,oBAAY,EAAC,UAAU,aAAV,UAAU,cAAV,UAAU,GAAI,EAAE,CAAC,CAAC,CAAC;AAC7D,CAAC;AAED,SAAS,GAAG,CAAC,KAAa,EAAE,UAAmB;IAC3C,IAAI,IAAA,oBAAY,EAAC,UAAU,aAAV,UAAU,cAAV,UAAU,GAAI,EAAE,CAAC,KAAK,KAAK,EAAE;QAC1C,OAAO;mCACoB,KAAK;;;kCAGN,KAAK;eACxB,CAAC;KACX;SAAM;QACH,OAAO,qBAAqB,KAAK,GAAG,CAAC;KACxC;AACL,CAAC;AAED,SAAS,SAAS,CAAC,KAAa,EAAE,UAAmB;IACjD,OAAO,GAAG,CAAC,KAAK,EAAE,UAAU,CAAC,CAAC;AAClC,CAAC;AAED,SAAS,QAAQ,CAAC,KAAa,EAAE,UAAmB;IAChD,OAAO,GAAG,CAAC,KAAK,EAAE,UAAU,CAAC,CAAC;AAClC,CAAC;AAED,SAAS,UAAU,CAAC,KAAa,EAAE,UAAmB;IAClD,OAAO,GAAG,CAAC,KAAK,EAAE,UAAU,CAAC,CAAC;AAClC,CAAC"}
|
|
@@ -40,6 +40,8 @@ const random_1 = require("./random");
|
|
|
40
40
|
const round_1 = require("./round");
|
|
41
41
|
const rounddown_1 = require("./rounddown");
|
|
42
42
|
const roundup_1 = require("./roundup");
|
|
43
|
+
const millisecond_1 = require("./millisecond");
|
|
44
|
+
const text_1 = require("./text");
|
|
43
45
|
exports.functionList = {
|
|
44
46
|
MID: mid_1.MID,
|
|
45
47
|
ABS: abs_1.ABS,
|
|
@@ -80,6 +82,8 @@ exports.functionList = {
|
|
|
80
82
|
ROUND: round_1.ROUND,
|
|
81
83
|
ROUNDDOWN: rounddown_1.ROUNDDOWN,
|
|
82
84
|
ROUNDUP: roundup_1.ROUNDUP,
|
|
85
|
+
MILLISECOND: millisecond_1.MILLISECOND,
|
|
86
|
+
TEXT: text_1.TEXT,
|
|
83
87
|
};
|
|
84
88
|
exports.FUNCTION_LIST = Object.keys(exports.functionList);
|
|
85
89
|
function getFunctionDetail(functionName) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/functions/index.ts"],"names":[],"mappings":";;;AACA,+BAA4B;AAC5B,+BAA4B;AAC5B,uCAAoC;AACpC,+BAA4B;AAC5B,mCAAgC;AAChC,iCAA8B;AAC9B,iCAA8B;AAC9B,qCAAkC;AAClC,qCAAkC;AAClC,6BAA0B;AAC1B,+BAA4B;AAC5B,qCAAkC;AAClC,+BAA4B;AAC5B,6BAA0B;AAC1B,+CAA4C;AAC5C,mCAAgC;AAChC,mCAAgC;AAChC,iCAA8B;AAC9B,iCAA8B;AAC9B,mCAAgC;AAChC,uCAAoC;AACpC,2CAAwC;AACxC,qCAAkC;AAClC,iDAA8C;AAC9C,+BAA4B;AAC5B,+BAA4B;AAC5B,qCAAkC;AAClC,iCAA8B;AAC9B,+BAA4B;AAC5B,uCAAoC;AACpC,uCAAoC;AACpC,iCAA8B;AAC9B,+BAA4B;AAC5B,+BAA4B;AAC5B,mCAAgC;AAChC,qCAAkC;AAClC,mCAAgC;AAChC,2CAAwC;AACxC,uCAAoC;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/functions/index.ts"],"names":[],"mappings":";;;AACA,+BAA4B;AAC5B,+BAA4B;AAC5B,uCAAoC;AACpC,+BAA4B;AAC5B,mCAAgC;AAChC,iCAA8B;AAC9B,iCAA8B;AAC9B,qCAAkC;AAClC,qCAAkC;AAClC,6BAA0B;AAC1B,+BAA4B;AAC5B,qCAAkC;AAClC,+BAA4B;AAC5B,6BAA0B;AAC1B,+CAA4C;AAC5C,mCAAgC;AAChC,mCAAgC;AAChC,iCAA8B;AAC9B,iCAA8B;AAC9B,mCAAgC;AAChC,uCAAoC;AACpC,2CAAwC;AACxC,qCAAkC;AAClC,iDAA8C;AAC9C,+BAA4B;AAC5B,+BAA4B;AAC5B,qCAAkC;AAClC,iCAA8B;AAC9B,+BAA4B;AAC5B,uCAAoC;AACpC,uCAAoC;AACpC,iCAA8B;AAC9B,+BAA4B;AAC5B,+BAA4B;AAC5B,mCAAgC;AAChC,qCAAkC;AAClC,mCAAgC;AAChC,2CAAwC;AACxC,uCAAoC;AACpC,+CAA4C;AAC5C,iCAA8B;AAEjB,QAAA,YAAY,GAAiB;IACtC,GAAG,EAAH,SAAG;IACH,GAAG,EAAH,SAAG;IACH,OAAO,EAAP,iBAAO;IACP,GAAG,EAAH,SAAG;IACH,KAAK,EAAL,aAAK;IACL,IAAI,EAAJ,WAAI;IACJ,IAAI,EAAJ,WAAI;IACJ,MAAM,EAAN,eAAM;IACN,MAAM,EAAN,eAAM;IACN,EAAE,EAAF,OAAE;IACF,GAAG,EAAH,SAAG;IACH,MAAM,EAAN,eAAM;IACN,GAAG,EAAH,SAAG;IACH,EAAE,EAAF,OAAE;IACF,WAAW,EAAX,yBAAW;IACX,KAAK,EAAL,aAAK;IACL,KAAK,EAAL,aAAK;IACL,IAAI,EAAJ,WAAI;IACJ,IAAI,EAAJ,WAAI;IACJ,KAAK,EAAL,aAAK;IACL,OAAO,EAAP,iBAAO;IACP,SAAS,EAAT,qBAAS;IACT,MAAM,EAAN,eAAM;IACN,YAAY,EAAZ,2BAAY;IACZ,GAAG,EAAH,SAAG;IACH,GAAG,EAAH,SAAG;IACH,MAAM,EAAN,eAAM;IACN,IAAI,EAAJ,WAAI;IACJ,GAAG,EAAH,SAAG;IACH,OAAO,EAAP,iBAAO;IACP,OAAO,EAAP,iBAAO;IACP,IAAI,EAAJ,WAAI;IACJ,GAAG,EAAH,SAAG;IACH,GAAG,EAAH,SAAG;IACH,KAAK,EAAL,aAAK;IACL,MAAM,EAAN,eAAM;IACN,KAAK,EAAL,aAAK;IACL,SAAS,EAAT,qBAAS;IACT,OAAO,EAAP,iBAAO;IACP,WAAW,EAAX,yBAAW;IACX,IAAI,EAAJ,WAAI;CACP,CAAC;AAEW,QAAA,aAAa,GAAG,MAAM,CAAC,IAAI,CAAC,oBAAY,CAAC,CAAC;AAEvD,SAAgB,iBAAiB,CAC7B,YAAoB;IAEpB,OAAO,oBAAY,CAAC,YAAY,CAAC,CAAC;AACtC,CAAC;AAJD,8CAIC"}
|
|
@@ -0,0 +1,55 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.MILLISECOND = void 0;
|
|
4
|
+
const scripts_1 = require("../utils/elasticsearch/scripts");
|
|
5
|
+
const utils_1 = require("../utils");
|
|
6
|
+
const constants_1 = require("../constants");
|
|
7
|
+
/**
|
|
8
|
+
* Returns the millisecond of a datetime value. The millisecond is given as an integer ranging from 0 to 999
|
|
9
|
+
*/
|
|
10
|
+
exports.MILLISECOND = {
|
|
11
|
+
identifier: 'MILLISECOND',
|
|
12
|
+
parameters: [
|
|
13
|
+
{
|
|
14
|
+
identifier: 'DATE',
|
|
15
|
+
optional: false,
|
|
16
|
+
expectedPrimitive: constants_1.AST_PRIMITIVES.DATE,
|
|
17
|
+
validator: [utils_1.isDateParam],
|
|
18
|
+
},
|
|
19
|
+
],
|
|
20
|
+
transpiler: {
|
|
21
|
+
elasticsearch,
|
|
22
|
+
snowflake,
|
|
23
|
+
redshift,
|
|
24
|
+
postgresql,
|
|
25
|
+
},
|
|
26
|
+
primitiveResult: constants_1.AST_PRIMITIVES.NUMBER,
|
|
27
|
+
};
|
|
28
|
+
function elasticsearch(value) {
|
|
29
|
+
return (0, scripts_1.millisecondScript)(value);
|
|
30
|
+
}
|
|
31
|
+
function snowflake(value) {
|
|
32
|
+
/**
|
|
33
|
+
* Extracts the nanosecond value from a given date and divides it by 1,000,000.
|
|
34
|
+
*/
|
|
35
|
+
return `(EXTRACT(nanosecond FROM ${value}) / 1000000)`;
|
|
36
|
+
}
|
|
37
|
+
function redshift(value) {
|
|
38
|
+
/*
|
|
39
|
+
Operation that calculates the milliseconds of a given date value.
|
|
40
|
+
Milliseconds - (seconds * 1000)
|
|
41
|
+
ex.
|
|
42
|
+
2500 - (2 * 1000) = 500
|
|
43
|
+
*/
|
|
44
|
+
return `(DATE_PART(milliseconds, ${value}) - (FLOOR(DATE_PART(seconds, ${value})) * 1000))`;
|
|
45
|
+
}
|
|
46
|
+
function postgresql(value) {
|
|
47
|
+
/*
|
|
48
|
+
Operation that calculates the milliseconds of a given date value.
|
|
49
|
+
Milliseconds - (seconds * 1000)
|
|
50
|
+
ex.
|
|
51
|
+
2500 - (2 * 1000) = 500
|
|
52
|
+
*/
|
|
53
|
+
return `(EXTRACT(milliseconds FROM ${value}) - (FLOOR(EXTRACT(seconds FROM ${value})) * 1000))`;
|
|
54
|
+
}
|
|
55
|
+
//# sourceMappingURL=millisecond.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"millisecond.js","sourceRoot":"","sources":["../../../src/functions/millisecond.ts"],"names":[],"mappings":";;;AACA,4DAAmE;AACnE,oCAAuC;AACvC,4CAA8C;AAE9C;;GAEG;AACU,QAAA,WAAW,GAAuB;IAC3C,UAAU,EAAE,aAAa;IACzB,UAAU,EAAE;QACR;YACI,UAAU,EAAE,MAAM;YAClB,QAAQ,EAAE,KAAK;YACf,iBAAiB,EAAE,0BAAc,CAAC,IAAI;YACtC,SAAS,EAAE,CAAC,mBAAW,CAAC;SAC3B;KACJ;IACD,UAAU,EAAE;QACR,aAAa;QACb,SAAS;QACT,QAAQ;QACR,UAAU;KACb;IACD,eAAe,EAAE,0BAAc,CAAC,MAAM;CACzC,CAAC;AAEF,SAAS,aAAa,CAAC,KAAa;IAChC,OAAO,IAAA,2BAAiB,EAAC,KAAK,CAAC,CAAC;AACpC,CAAC;AAED,SAAS,SAAS,CAAC,KAAa;IAC5B;;OAEG;IACH,OAAO,4BAA4B,KAAK,cAAc,CAAC;AAC3D,CAAC;AAED,SAAS,QAAQ,CAAC,KAAa;IAC3B;;;;;MAKE;IACF,OAAO,4BAA4B,KAAK,iCAAiC,KAAK,aAAa,CAAC;AAChG,CAAC;AAED,SAAS,UAAU,CAAC,KAAa;IAC7B;;;;;MAKE;IACF,OAAO,8BAA8B,KAAK,mCAAmC,KAAK,aAAa,CAAC;AACpG,CAAC"}
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.TEXT = void 0;
|
|
4
|
+
const constants_1 = require("../constants");
|
|
5
|
+
const utils_1 = require("../utils");
|
|
6
|
+
/**
|
|
7
|
+
* `TEXT` Transforms a number into a string.
|
|
8
|
+
*/
|
|
9
|
+
exports.TEXT = {
|
|
10
|
+
identifier: 'TEXT',
|
|
11
|
+
parameters: [
|
|
12
|
+
{
|
|
13
|
+
identifier: 'VALUE',
|
|
14
|
+
optional: false,
|
|
15
|
+
expectedPrimitive: constants_1.AST_PRIMITIVES.STRING,
|
|
16
|
+
validator: [utils_1.isNumberParam],
|
|
17
|
+
},
|
|
18
|
+
],
|
|
19
|
+
transpiler: {
|
|
20
|
+
elasticsearch,
|
|
21
|
+
snowflake,
|
|
22
|
+
redshift,
|
|
23
|
+
postgresql,
|
|
24
|
+
},
|
|
25
|
+
primitiveResult: constants_1.AST_PRIMITIVES.STRING,
|
|
26
|
+
};
|
|
27
|
+
function elasticsearch(value) {
|
|
28
|
+
return `TEXT(${value})`;
|
|
29
|
+
}
|
|
30
|
+
function SQL(value) {
|
|
31
|
+
return `${value}::VARCHAR`;
|
|
32
|
+
}
|
|
33
|
+
function snowflake(value) {
|
|
34
|
+
return SQL(value);
|
|
35
|
+
}
|
|
36
|
+
function redshift(value) {
|
|
37
|
+
return SQL(value);
|
|
38
|
+
}
|
|
39
|
+
function postgresql(value) {
|
|
40
|
+
return SQL(value);
|
|
41
|
+
}
|
|
42
|
+
//# sourceMappingURL=text.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"text.js","sourceRoot":"","sources":["../../../src/functions/text.ts"],"names":[],"mappings":";;;AAAA,4CAA8C;AAE9C,oCAAyC;AAEzC;;GAEG;AACU,QAAA,IAAI,GAAuB;IACpC,UAAU,EAAE,MAAM;IAClB,UAAU,EAAE;QACR;YACI,UAAU,EAAE,OAAO;YACnB,QAAQ,EAAE,KAAK;YACf,iBAAiB,EAAE,0BAAc,CAAC,MAAM;YACxC,SAAS,EAAE,CAAC,qBAAa,CAAC;SAC7B;KACJ;IACD,UAAU,EAAE;QACR,aAAa;QACb,SAAS;QACT,QAAQ;QACR,UAAU;KACb;IACD,eAAe,EAAE,0BAAc,CAAC,MAAM;CACzC,CAAC;AAEF,SAAS,aAAa,CAAC,KAAa;IAChC,OAAO,QAAQ,KAAK,GAAG,CAAC;AAC5B,CAAC;AAED,SAAS,GAAG,CAAC,KAAa;IACtB,OAAO,GAAG,KAAK,WAAW,CAAC;AAC/B,CAAC;AAED,SAAS,SAAS,CAAC,KAAa;IAC5B,OAAO,GAAG,CAAC,KAAK,CAAC,CAAC;AACtB,CAAC;AAED,SAAS,QAAQ,CAAC,KAAa;IAC3B,OAAO,GAAG,CAAC,KAAK,CAAC,CAAC;AACtB,CAAC;AAED,SAAS,UAAU,CAAC,KAAa;IAC7B,OAAO,GAAG,CAAC,KAAK,CAAC,CAAC;AACtB,CAAC"}
|
|
@@ -13,6 +13,7 @@ function customFunctionsList(func) {
|
|
|
13
13
|
case 'HOUR':
|
|
14
14
|
case 'MINUTE':
|
|
15
15
|
case 'SECOND':
|
|
16
|
+
case 'MILLISECOND':
|
|
16
17
|
return scripts_1.dateFormatScript;
|
|
17
18
|
case 'MID':
|
|
18
19
|
case 'LEFT':
|
|
@@ -51,6 +52,8 @@ function customFunctionsList(func) {
|
|
|
51
52
|
return scripts_1.roundDownScript;
|
|
52
53
|
case 'ROUNDUP':
|
|
53
54
|
return scripts_1.roundUpScript;
|
|
55
|
+
case 'TEXT':
|
|
56
|
+
return scripts_1.textScript;
|
|
54
57
|
default:
|
|
55
58
|
return false;
|
|
56
59
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/utils/elasticsearch/index.ts"],"names":[],"mappings":";;;AAAA,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/utils/elasticsearch/index.ts"],"names":[],"mappings":";;;AAAA,uCAoBmB;AACnB,qCAA4D;AAAnD,iGAAA,MAAM,OAAA;AAAE,kHAAA,uBAAuB,OAAA;AAExC,SAAgB,mBAAmB,CAAC,IAAY;IAC5C,QAAQ,IAAI,EAAE;QACV,KAAK,KAAK,CAAC;QACX,KAAK,OAAO,CAAC;QACb,KAAK,MAAM,CAAC;QACZ,KAAK,MAAM,CAAC;QACZ,KAAK,QAAQ,CAAC;QACd,KAAK,QAAQ,CAAC;QACd,KAAK,aAAa;YACd,OAAO,0BAAgB,CAAC;QAC5B,KAAK,KAAK,CAAC;QACX,KAAK,MAAM,CAAC;QACZ,KAAK,OAAO;YACR,OAAO,yBAAe,CAAC;QAC3B,KAAK,QAAQ;YACT,OAAO,sBAAY,CAAC;QACxB,KAAK,QAAQ;YACT,OAAO,sBAAY,CAAC;QACxB,KAAK,KAAK;YACN,OAAO,wBAAc,CAAC;QAC1B,KAAK,KAAK;YACN,OAAO,qBAAW,CAAC;QACvB,KAAK,QAAQ;YACT,OAAO,sBAAY,CAAC;QACxB,KAAK,MAAM;YACP,OAAO,oBAAU,CAAC;QACtB,KAAK,KAAK;YACN,OAAO,mBAAS,CAAC;QACrB,KAAK,SAAS;YACV,OAAO,uBAAa,CAAC;QACzB,KAAK,SAAS;YACV,OAAO,uBAAa,CAAC;QACzB,KAAK,MAAM;YACP,OAAO,oBAAU,CAAC;QACtB,KAAK,KAAK;YACN,OAAO,mBAAS,CAAC;QACrB,KAAK,KAAK;YACN,OAAO,mBAAS,CAAC;QACrB,KAAK,OAAO;YACR,OAAO,qBAAW,CAAC;QACvB,KAAK,QAAQ,CAAC;QACd,KAAK,OAAO;YACR,OAAO,qBAAW,CAAC;QACvB,KAAK,WAAW;YACZ,OAAO,yBAAe,CAAC;QAC3B,KAAK,SAAS;YACV,OAAO,uBAAa,CAAC;QACzB,KAAK,MAAM;YACP,OAAO,oBAAU,CAAC;QACtB;YACI,OAAO,KAAK,CAAC;KACpB;AACL,CAAC;AApDD,kDAoDC"}
|
|
@@ -5,9 +5,13 @@ export declare const dateFormatScript: string;
|
|
|
5
5
|
export declare const dayScript: (value: any) => string;
|
|
6
6
|
export declare const monthScript: (value: any) => string;
|
|
7
7
|
export declare const yearScript: (value: any) => string;
|
|
8
|
-
export declare const hourScript: (value: any) => string;
|
|
8
|
+
export declare const hourScript: (value: any, timeFormat?: string) => string;
|
|
9
9
|
export declare const minuteScript: (value: any) => string;
|
|
10
10
|
export declare const secondScript: (value: any) => string;
|
|
11
|
+
/**
|
|
12
|
+
* Extracts the nanosecond value from a given date and divides it by 1,000,000.
|
|
13
|
+
*/
|
|
14
|
+
export declare const millisecondScript: (value: any) => string;
|
|
11
15
|
export declare function dateDif(start: any, end: any, unit: DateDifUnitParam): string;
|
|
12
16
|
export declare const getValueScript = "def GET_VALUE(def c){return (c.empty ? null : c.value)}";
|
|
13
17
|
export declare const isNullScript = "def IS_NULL_SCRIPT(def value, def replacement) { return value ?: replacement; }";
|
|
@@ -27,3 +31,4 @@ export declare const roundDownScript = "def ROUNDDOWN(def value, def places) {\n
|
|
|
27
31
|
export declare const roundScript: string;
|
|
28
32
|
export declare const roundUpScript: string;
|
|
29
33
|
export declare const subStringScript: string;
|
|
34
|
+
export declare const textScript = "def TEXT(def v) { return v == null ? null : v.toString(); }";
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.subStringScript = exports.roundUpScript = exports.roundScript = exports.roundDownScript = exports.powerScript = exports.oddScript = exports.logScript = exports.evenScript = exports.includeScript = exports.replaceScript = exports.expScript = exports.sqrtScript = exports.lengthScript = exports.leastScript = exports.greatestScript = exports.properScript = exports.isNullScript = exports.getValueScript = exports.dateDif = exports.secondScript = exports.minuteScript = exports.hourScript = exports.yearScript = exports.monthScript = exports.dayScript = exports.dateFormatScript = exports.setTimezoneToColumnDate = exports.toDate = void 0;
|
|
3
|
+
exports.textScript = exports.subStringScript = exports.roundUpScript = exports.roundScript = exports.roundDownScript = exports.powerScript = exports.oddScript = exports.logScript = exports.evenScript = exports.includeScript = exports.replaceScript = exports.expScript = exports.sqrtScript = exports.lengthScript = exports.leastScript = exports.greatestScript = exports.properScript = exports.isNullScript = exports.getValueScript = exports.dateDif = exports.millisecondScript = exports.secondScript = exports.minuteScript = exports.hourScript = exports.yearScript = exports.monthScript = exports.dayScript = exports.dateFormatScript = exports.setTimezoneToColumnDate = exports.toDate = void 0;
|
|
4
4
|
const constants_1 = require("../../constants");
|
|
5
5
|
function toDate(value) {
|
|
6
6
|
return `ZonedDateTime.parse("${value}")`;
|
|
@@ -38,12 +38,24 @@ const monthScript = (value) => dateFormatToInt(value, 'MM');
|
|
|
38
38
|
exports.monthScript = monthScript;
|
|
39
39
|
const yearScript = (value) => dateFormatToInt(value, 'yyyy');
|
|
40
40
|
exports.yearScript = yearScript;
|
|
41
|
-
const hourScript = (value) =>
|
|
41
|
+
const hourScript = (value, timeFormat) => {
|
|
42
|
+
if (timeFormat === '12h') {
|
|
43
|
+
return dateFormatToInt(value, 'hh');
|
|
44
|
+
}
|
|
45
|
+
else {
|
|
46
|
+
return dateFormatToInt(value, 'HH');
|
|
47
|
+
}
|
|
48
|
+
};
|
|
42
49
|
exports.hourScript = hourScript;
|
|
43
50
|
const minuteScript = (value) => dateFormatToInt(value, 'mm');
|
|
44
51
|
exports.minuteScript = minuteScript;
|
|
45
52
|
const secondScript = (value) => dateFormatToInt(value, 'ss');
|
|
46
53
|
exports.secondScript = secondScript;
|
|
54
|
+
/**
|
|
55
|
+
* Extracts the nanosecond value from a given date and divides it by 1,000,000.
|
|
56
|
+
*/
|
|
57
|
+
const millisecondScript = (value) => `(${dateFormatToInt(value, 'n')} / 1000000.0)`;
|
|
58
|
+
exports.millisecondScript = millisecondScript;
|
|
47
59
|
function dateDif(start, end, unit) {
|
|
48
60
|
const units = {
|
|
49
61
|
Y: 'YEARS',
|
|
@@ -205,4 +217,5 @@ String ${constants_1.ELASTICSEARCH_SCRIPT_NAMES.subString}(def text, def start,
|
|
|
205
217
|
return text.substring(first, last);
|
|
206
218
|
}
|
|
207
219
|
`;
|
|
220
|
+
exports.textScript = `def TEXT(def v) { return v == null ? null : v.toString(); }`;
|
|
208
221
|
//# sourceMappingURL=scripts.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"scripts.js","sourceRoot":"","sources":["../../../../src/utils/elasticsearch/scripts.ts"],"names":[],"mappings":";;;AACA,+CAA6E;AAE7E,SAAgB,MAAM,CAAC,KAAa;IAChC,OAAO,wBAAwB,KAAK,IAAI,CAAC;AAC7C,CAAC;AAFD,wBAEC;AAEY,QAAA,uBAAuB,GAAG;MACjC,sCAAY,CAAC,WAAW;;;;;;;;;;;CAW7B,CAAC;AAEW,QAAA,gBAAgB,GAAG;SACvB,sCAAY,CAAC,UAAU;;;;;;;;CAQ/B,CAAC;AAEF,SAAS,eAAe,CAAC,KAAU,EAAE,MAAc;IAC/C,OAAO,oBAAoB,sCAAY,CAAC,UAAU,IAAI,KAAK,MAAM,MAAM,KAAK,CAAC;AACjF,CAAC;AAEM,MAAM,SAAS,GAAG,CAAC,KAAU,EAAE,EAAE,CAAC,eAAe,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC;AAAzD,QAAA,SAAS,aAAgD;AAE/D,MAAM,WAAW,GAAG,CAAC,KAAU,EAAE,EAAE,CAAC,eAAe,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC;AAA3D,QAAA,WAAW,eAAgD;AAEjE,MAAM,UAAU,GAAG,CAAC,KAAU,EAAE,EAAE,CAAC,eAAe,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;AAA5D,QAAA,UAAU,cAAkD;AAElE,MAAM,UAAU,GAAG,CAAC,KAAU,EAAE,EAAE,CAAC,eAAe,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"scripts.js","sourceRoot":"","sources":["../../../../src/utils/elasticsearch/scripts.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import { hourScript } from '../utils/elasticsearch/scripts';
|
|
2
|
-
import { isDateParam } from '../utils';
|
|
2
|
+
import { isDateParam, isStringParam, removeQuotes } from '../utils';
|
|
3
3
|
import { AST_PRIMITIVES } from '../constants';
|
|
4
|
+
import { isAnAllowedValue } from '../utils/isAnAllowedValue';
|
|
4
5
|
/**
|
|
5
6
|
* Returns the number of the HOUR in a Date.
|
|
6
7
|
*/
|
|
@@ -13,6 +14,12 @@ export const HOUR = {
|
|
|
13
14
|
expectedPrimitive: AST_PRIMITIVES.DATE,
|
|
14
15
|
validator: [isDateParam],
|
|
15
16
|
},
|
|
17
|
+
{
|
|
18
|
+
identifier: 'TIME_FORMAT',
|
|
19
|
+
optional: true,
|
|
20
|
+
expectedPrimitive: AST_PRIMITIVES.STRING,
|
|
21
|
+
validator: [isStringParam, isAnAllowedValue(['24h', '12h'])],
|
|
22
|
+
},
|
|
16
23
|
],
|
|
17
24
|
transpiler: {
|
|
18
25
|
elasticsearch,
|
|
@@ -22,19 +29,29 @@ export const HOUR = {
|
|
|
22
29
|
},
|
|
23
30
|
primitiveResult: AST_PRIMITIVES.NUMBER,
|
|
24
31
|
};
|
|
25
|
-
function elasticsearch(value) {
|
|
26
|
-
return hourScript(value);
|
|
32
|
+
function elasticsearch(value, timeFormat) {
|
|
33
|
+
return hourScript(value, removeQuotes(timeFormat !== null && timeFormat !== void 0 ? timeFormat : ''));
|
|
27
34
|
}
|
|
28
|
-
function SQL(value) {
|
|
29
|
-
|
|
35
|
+
function SQL(value, timeFormat) {
|
|
36
|
+
if (removeQuotes(timeFormat !== null && timeFormat !== void 0 ? timeFormat : '') === '12h') {
|
|
37
|
+
return `(CASE
|
|
38
|
+
WHEN DATE_PART(HOUR, ${value})::INTEGER % 12 = 0 THEN
|
|
39
|
+
12
|
|
40
|
+
ELSE
|
|
41
|
+
DATE_PART(HOUR, ${value})::INTEGER % 12
|
|
42
|
+
END)`;
|
|
43
|
+
}
|
|
44
|
+
else {
|
|
45
|
+
return `DATE_PART('hour', ${value})`;
|
|
46
|
+
}
|
|
30
47
|
}
|
|
31
|
-
function snowflake(value) {
|
|
32
|
-
return SQL(value);
|
|
48
|
+
function snowflake(value, timeFormat) {
|
|
49
|
+
return SQL(value, timeFormat);
|
|
33
50
|
}
|
|
34
|
-
function redshift(value) {
|
|
35
|
-
return SQL(value);
|
|
51
|
+
function redshift(value, timeFormat) {
|
|
52
|
+
return SQL(value, timeFormat);
|
|
36
53
|
}
|
|
37
|
-
function postgresql(value) {
|
|
38
|
-
return SQL(value);
|
|
54
|
+
function postgresql(value, timeFormat) {
|
|
55
|
+
return SQL(value, timeFormat);
|
|
39
56
|
}
|
|
40
57
|
//# sourceMappingURL=hour.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"hour.js","sourceRoot":"","sources":["../../../src/functions/hour.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,UAAU,EAAE,MAAM,gCAAgC,CAAC;AAC5D,OAAO,EAAE,WAAW,EAAE,MAAM,UAAU,CAAC;
|
|
1
|
+
{"version":3,"file":"hour.js","sourceRoot":"","sources":["../../../src/functions/hour.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,UAAU,EAAE,MAAM,gCAAgC,CAAC;AAC5D,OAAO,EAAE,WAAW,EAAE,aAAa,EAAE,YAAY,EAAE,MAAM,UAAU,CAAC;AACpE,OAAO,EAAE,cAAc,EAAE,MAAM,cAAc,CAAC;AAC9C,OAAO,EAAE,gBAAgB,EAAE,MAAM,2BAA2B,CAAC;AAE7D;;GAEG;AACH,MAAM,CAAC,MAAM,IAAI,GAAuB;IACpC,UAAU,EAAE,MAAM;IAClB,UAAU,EAAE;QACR;YACI,UAAU,EAAE,MAAM;YAClB,QAAQ,EAAE,KAAK;YACf,iBAAiB,EAAE,cAAc,CAAC,IAAI;YACtC,SAAS,EAAE,CAAC,WAAW,CAAC;SAC3B;QACD;YACI,UAAU,EAAE,aAAa;YACzB,QAAQ,EAAE,IAAI;YACd,iBAAiB,EAAE,cAAc,CAAC,MAAM;YACxC,SAAS,EAAE,CAAC,aAAa,EAAE,gBAAgB,CAAC,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC,CAAC;SAC/D;KACJ;IACD,UAAU,EAAE;QACR,aAAa;QACb,SAAS;QACT,QAAQ;QACR,UAAU;KACb;IACD,eAAe,EAAE,cAAc,CAAC,MAAM;CACzC,CAAC;AAEF,SAAS,aAAa,CAAC,KAAa,EAAE,UAAmB;IACrD,OAAO,UAAU,CAAC,KAAK,EAAE,YAAY,CAAC,UAAU,aAAV,UAAU,cAAV,UAAU,GAAI,EAAE,CAAC,CAAC,CAAC;AAC7D,CAAC;AAED,SAAS,GAAG,CAAC,KAAa,EAAE,UAAmB;IAC3C,IAAI,YAAY,CAAC,UAAU,aAAV,UAAU,cAAV,UAAU,GAAI,EAAE,CAAC,KAAK,KAAK,EAAE;QAC1C,OAAO;mCACoB,KAAK;;;kCAGN,KAAK;eACxB,CAAC;KACX;SAAM;QACH,OAAO,qBAAqB,KAAK,GAAG,CAAC;KACxC;AACL,CAAC;AAED,SAAS,SAAS,CAAC,KAAa,EAAE,UAAmB;IACjD,OAAO,GAAG,CAAC,KAAK,EAAE,UAAU,CAAC,CAAC;AAClC,CAAC;AAED,SAAS,QAAQ,CAAC,KAAa,EAAE,UAAmB;IAChD,OAAO,GAAG,CAAC,KAAK,EAAE,UAAU,CAAC,CAAC;AAClC,CAAC;AAED,SAAS,UAAU,CAAC,KAAa,EAAE,UAAmB;IAClD,OAAO,GAAG,CAAC,KAAK,EAAE,UAAU,CAAC,CAAC;AAClC,CAAC"}
|
|
@@ -37,6 +37,8 @@ import { RANDOM } from './random';
|
|
|
37
37
|
import { ROUND } from './round';
|
|
38
38
|
import { ROUNDDOWN } from './rounddown';
|
|
39
39
|
import { ROUNDUP } from './roundup';
|
|
40
|
+
import { MILLISECOND } from './millisecond';
|
|
41
|
+
import { TEXT } from './text';
|
|
40
42
|
export const functionList = {
|
|
41
43
|
MID,
|
|
42
44
|
ABS,
|
|
@@ -77,6 +79,8 @@ export const functionList = {
|
|
|
77
79
|
ROUND,
|
|
78
80
|
ROUNDDOWN,
|
|
79
81
|
ROUNDUP,
|
|
82
|
+
MILLISECOND,
|
|
83
|
+
TEXT,
|
|
80
84
|
};
|
|
81
85
|
export const FUNCTION_LIST = Object.keys(functionList);
|
|
82
86
|
export function getFunctionDetail(functionName) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/functions/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,GAAG,EAAE,MAAM,OAAO,CAAC;AAC5B,OAAO,EAAE,GAAG,EAAE,MAAM,OAAO,CAAC;AAC5B,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,GAAG,EAAE,MAAM,OAAO,CAAC;AAC5B,OAAO,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC;AAChC,OAAO,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAC;AAC9B,OAAO,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAC;AAC9B,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAClC,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAClC,OAAO,EAAE,EAAE,EAAE,MAAM,MAAM,CAAC;AAC1B,OAAO,EAAE,GAAG,EAAE,MAAM,OAAO,CAAC;AAC5B,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAClC,OAAO,EAAE,GAAG,EAAE,MAAM,OAAO,CAAC;AAC5B,OAAO,EAAE,EAAE,EAAE,MAAM,MAAM,CAAC;AAC1B,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAC5C,OAAO,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC;AAChC,OAAO,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC;AAChC,OAAO,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAC;AAC9B,OAAO,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAC;AAC9B,OAAO,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC;AAChC,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AACxC,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAClC,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAC9C,OAAO,EAAE,GAAG,EAAE,MAAM,OAAO,CAAC;AAC5B,OAAO,EAAE,GAAG,EAAE,MAAM,OAAO,CAAC;AAC5B,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAClC,OAAO,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAC;AAC9B,OAAO,EAAE,GAAG,EAAE,MAAM,OAAO,CAAC;AAC5B,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAC;AAC9B,OAAO,EAAE,GAAG,EAAE,MAAM,OAAO,CAAC;AAC5B,OAAO,EAAE,GAAG,EAAE,MAAM,OAAO,CAAC;AAC5B,OAAO,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC;AAChC,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAClC,OAAO,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC;AAChC,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AACxC,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/functions/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,52 @@
|
|
|
1
|
+
import { millisecondScript } from '../utils/elasticsearch/scripts';
|
|
2
|
+
import { isDateParam } from '../utils';
|
|
3
|
+
import { AST_PRIMITIVES } from '../constants';
|
|
4
|
+
/**
|
|
5
|
+
* Returns the millisecond of a datetime value. The millisecond is given as an integer ranging from 0 to 999
|
|
6
|
+
*/
|
|
7
|
+
export const MILLISECOND = {
|
|
8
|
+
identifier: 'MILLISECOND',
|
|
9
|
+
parameters: [
|
|
10
|
+
{
|
|
11
|
+
identifier: 'DATE',
|
|
12
|
+
optional: false,
|
|
13
|
+
expectedPrimitive: AST_PRIMITIVES.DATE,
|
|
14
|
+
validator: [isDateParam],
|
|
15
|
+
},
|
|
16
|
+
],
|
|
17
|
+
transpiler: {
|
|
18
|
+
elasticsearch,
|
|
19
|
+
snowflake,
|
|
20
|
+
redshift,
|
|
21
|
+
postgresql,
|
|
22
|
+
},
|
|
23
|
+
primitiveResult: AST_PRIMITIVES.NUMBER,
|
|
24
|
+
};
|
|
25
|
+
function elasticsearch(value) {
|
|
26
|
+
return millisecondScript(value);
|
|
27
|
+
}
|
|
28
|
+
function snowflake(value) {
|
|
29
|
+
/**
|
|
30
|
+
* Extracts the nanosecond value from a given date and divides it by 1,000,000.
|
|
31
|
+
*/
|
|
32
|
+
return `(EXTRACT(nanosecond FROM ${value}) / 1000000)`;
|
|
33
|
+
}
|
|
34
|
+
function redshift(value) {
|
|
35
|
+
/*
|
|
36
|
+
Operation that calculates the milliseconds of a given date value.
|
|
37
|
+
Milliseconds - (seconds * 1000)
|
|
38
|
+
ex.
|
|
39
|
+
2500 - (2 * 1000) = 500
|
|
40
|
+
*/
|
|
41
|
+
return `(DATE_PART(milliseconds, ${value}) - (FLOOR(DATE_PART(seconds, ${value})) * 1000))`;
|
|
42
|
+
}
|
|
43
|
+
function postgresql(value) {
|
|
44
|
+
/*
|
|
45
|
+
Operation that calculates the milliseconds of a given date value.
|
|
46
|
+
Milliseconds - (seconds * 1000)
|
|
47
|
+
ex.
|
|
48
|
+
2500 - (2 * 1000) = 500
|
|
49
|
+
*/
|
|
50
|
+
return `(EXTRACT(milliseconds FROM ${value}) - (FLOOR(EXTRACT(seconds FROM ${value})) * 1000))`;
|
|
51
|
+
}
|
|
52
|
+
//# sourceMappingURL=millisecond.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"millisecond.js","sourceRoot":"","sources":["../../../src/functions/millisecond.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,iBAAiB,EAAE,MAAM,gCAAgC,CAAC;AACnE,OAAO,EAAE,WAAW,EAAE,MAAM,UAAU,CAAC;AACvC,OAAO,EAAE,cAAc,EAAE,MAAM,cAAc,CAAC;AAE9C;;GAEG;AACH,MAAM,CAAC,MAAM,WAAW,GAAuB;IAC3C,UAAU,EAAE,aAAa;IACzB,UAAU,EAAE;QACR;YACI,UAAU,EAAE,MAAM;YAClB,QAAQ,EAAE,KAAK;YACf,iBAAiB,EAAE,cAAc,CAAC,IAAI;YACtC,SAAS,EAAE,CAAC,WAAW,CAAC;SAC3B;KACJ;IACD,UAAU,EAAE;QACR,aAAa;QACb,SAAS;QACT,QAAQ;QACR,UAAU;KACb;IACD,eAAe,EAAE,cAAc,CAAC,MAAM;CACzC,CAAC;AAEF,SAAS,aAAa,CAAC,KAAa;IAChC,OAAO,iBAAiB,CAAC,KAAK,CAAC,CAAC;AACpC,CAAC;AAED,SAAS,SAAS,CAAC,KAAa;IAC5B;;OAEG;IACH,OAAO,4BAA4B,KAAK,cAAc,CAAC;AAC3D,CAAC;AAED,SAAS,QAAQ,CAAC,KAAa;IAC3B;;;;;MAKE;IACF,OAAO,4BAA4B,KAAK,iCAAiC,KAAK,aAAa,CAAC;AAChG,CAAC;AAED,SAAS,UAAU,CAAC,KAAa;IAC7B;;;;;MAKE;IACF,OAAO,8BAA8B,KAAK,mCAAmC,KAAK,aAAa,CAAC;AACpG,CAAC"}
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
import { AST_PRIMITIVES } from '../constants';
|
|
2
|
+
import { isNumberParam } from '../utils';
|
|
3
|
+
/**
|
|
4
|
+
* `TEXT` Transforms a number into a string.
|
|
5
|
+
*/
|
|
6
|
+
export const TEXT = {
|
|
7
|
+
identifier: 'TEXT',
|
|
8
|
+
parameters: [
|
|
9
|
+
{
|
|
10
|
+
identifier: 'VALUE',
|
|
11
|
+
optional: false,
|
|
12
|
+
expectedPrimitive: AST_PRIMITIVES.STRING,
|
|
13
|
+
validator: [isNumberParam],
|
|
14
|
+
},
|
|
15
|
+
],
|
|
16
|
+
transpiler: {
|
|
17
|
+
elasticsearch,
|
|
18
|
+
snowflake,
|
|
19
|
+
redshift,
|
|
20
|
+
postgresql,
|
|
21
|
+
},
|
|
22
|
+
primitiveResult: AST_PRIMITIVES.STRING,
|
|
23
|
+
};
|
|
24
|
+
function elasticsearch(value) {
|
|
25
|
+
return `TEXT(${value})`;
|
|
26
|
+
}
|
|
27
|
+
function SQL(value) {
|
|
28
|
+
return `${value}::VARCHAR`;
|
|
29
|
+
}
|
|
30
|
+
function snowflake(value) {
|
|
31
|
+
return SQL(value);
|
|
32
|
+
}
|
|
33
|
+
function redshift(value) {
|
|
34
|
+
return SQL(value);
|
|
35
|
+
}
|
|
36
|
+
function postgresql(value) {
|
|
37
|
+
return SQL(value);
|
|
38
|
+
}
|
|
39
|
+
//# sourceMappingURL=text.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"text.js","sourceRoot":"","sources":["../../../src/functions/text.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,cAAc,CAAC;AAE9C,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AAEzC;;GAEG;AACH,MAAM,CAAC,MAAM,IAAI,GAAuB;IACpC,UAAU,EAAE,MAAM;IAClB,UAAU,EAAE;QACR;YACI,UAAU,EAAE,OAAO;YACnB,QAAQ,EAAE,KAAK;YACf,iBAAiB,EAAE,cAAc,CAAC,MAAM;YACxC,SAAS,EAAE,CAAC,aAAa,CAAC;SAC7B;KACJ;IACD,UAAU,EAAE;QACR,aAAa;QACb,SAAS;QACT,QAAQ;QACR,UAAU;KACb;IACD,eAAe,EAAE,cAAc,CAAC,MAAM;CACzC,CAAC;AAEF,SAAS,aAAa,CAAC,KAAa;IAChC,OAAO,QAAQ,KAAK,GAAG,CAAC;AAC5B,CAAC;AAED,SAAS,GAAG,CAAC,KAAa;IACtB,OAAO,GAAG,KAAK,WAAW,CAAC;AAC/B,CAAC;AAED,SAAS,SAAS,CAAC,KAAa;IAC5B,OAAO,GAAG,CAAC,KAAK,CAAC,CAAC;AACtB,CAAC;AAED,SAAS,QAAQ,CAAC,KAAa;IAC3B,OAAO,GAAG,CAAC,KAAK,CAAC,CAAC;AACtB,CAAC;AAED,SAAS,UAAU,CAAC,KAAa;IAC7B,OAAO,GAAG,CAAC,KAAK,CAAC,CAAC;AACtB,CAAC"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { dateFormatScript, evenScript, expScript, greatestScript, includeScript, isNullScript, leastScript, lengthScript, logScript, oddScript, powerScript, properScript, replaceScript, roundDownScript, roundScript, roundUpScript, sqrtScript, subStringScript, } from './scripts';
|
|
1
|
+
import { dateFormatScript, evenScript, expScript, greatestScript, includeScript, isNullScript, leastScript, lengthScript, logScript, oddScript, powerScript, properScript, replaceScript, roundDownScript, roundScript, roundUpScript, sqrtScript, subStringScript, textScript, } from './scripts';
|
|
2
2
|
export { toDate, setTimezoneToColumnDate } from './scripts';
|
|
3
3
|
export function customFunctionsList(func) {
|
|
4
4
|
switch (func) {
|
|
@@ -8,6 +8,7 @@ export function customFunctionsList(func) {
|
|
|
8
8
|
case 'HOUR':
|
|
9
9
|
case 'MINUTE':
|
|
10
10
|
case 'SECOND':
|
|
11
|
+
case 'MILLISECOND':
|
|
11
12
|
return dateFormatScript;
|
|
12
13
|
case 'MID':
|
|
13
14
|
case 'LEFT':
|
|
@@ -46,6 +47,8 @@ export function customFunctionsList(func) {
|
|
|
46
47
|
return roundDownScript;
|
|
47
48
|
case 'ROUNDUP':
|
|
48
49
|
return roundUpScript;
|
|
50
|
+
case 'TEXT':
|
|
51
|
+
return textScript;
|
|
49
52
|
default:
|
|
50
53
|
return false;
|
|
51
54
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/utils/elasticsearch/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACH,gBAAgB,EAChB,UAAU,EACV,SAAS,EACT,cAAc,EACd,aAAa,EACb,YAAY,EACZ,WAAW,EACX,YAAY,EACZ,SAAS,EACT,SAAS,EACT,WAAW,EACX,YAAY,EACZ,aAAa,EACb,eAAe,EACf,WAAW,EACX,aAAa,EACb,UAAU,EACV,eAAe,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/utils/elasticsearch/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACH,gBAAgB,EAChB,UAAU,EACV,SAAS,EACT,cAAc,EACd,aAAa,EACb,YAAY,EACZ,WAAW,EACX,YAAY,EACZ,SAAS,EACT,SAAS,EACT,WAAW,EACX,YAAY,EACZ,aAAa,EACb,eAAe,EACf,WAAW,EACX,aAAa,EACb,UAAU,EACV,eAAe,EACf,UAAU,GACb,MAAM,WAAW,CAAC;AACnB,OAAO,EAAE,MAAM,EAAE,uBAAuB,EAAE,MAAM,WAAW,CAAC;AAE5D,MAAM,UAAU,mBAAmB,CAAC,IAAY;IAC5C,QAAQ,IAAI,EAAE;QACV,KAAK,KAAK,CAAC;QACX,KAAK,OAAO,CAAC;QACb,KAAK,MAAM,CAAC;QACZ,KAAK,MAAM,CAAC;QACZ,KAAK,QAAQ,CAAC;QACd,KAAK,QAAQ,CAAC;QACd,KAAK,aAAa;YACd,OAAO,gBAAgB,CAAC;QAC5B,KAAK,KAAK,CAAC;QACX,KAAK,MAAM,CAAC;QACZ,KAAK,OAAO;YACR,OAAO,eAAe,CAAC;QAC3B,KAAK,QAAQ;YACT,OAAO,YAAY,CAAC;QACxB,KAAK,QAAQ;YACT,OAAO,YAAY,CAAC;QACxB,KAAK,KAAK;YACN,OAAO,cAAc,CAAC;QAC1B,KAAK,KAAK;YACN,OAAO,WAAW,CAAC;QACvB,KAAK,QAAQ;YACT,OAAO,YAAY,CAAC;QACxB,KAAK,MAAM;YACP,OAAO,UAAU,CAAC;QACtB,KAAK,KAAK;YACN,OAAO,SAAS,CAAC;QACrB,KAAK,SAAS;YACV,OAAO,aAAa,CAAC;QACzB,KAAK,SAAS;YACV,OAAO,aAAa,CAAC;QACzB,KAAK,MAAM;YACP,OAAO,UAAU,CAAC;QACtB,KAAK,KAAK;YACN,OAAO,SAAS,CAAC;QACrB,KAAK,KAAK;YACN,OAAO,SAAS,CAAC;QACrB,KAAK,OAAO;YACR,OAAO,WAAW,CAAC;QACvB,KAAK,QAAQ,CAAC;QACd,KAAK,OAAO;YACR,OAAO,WAAW,CAAC;QACvB,KAAK,WAAW;YACZ,OAAO,eAAe,CAAC;QAC3B,KAAK,SAAS;YACV,OAAO,aAAa,CAAC;QACzB,KAAK,MAAM;YACP,OAAO,UAAU,CAAC;QACtB;YACI,OAAO,KAAK,CAAC;KACpB;AACL,CAAC"}
|
|
@@ -5,9 +5,13 @@ export declare const dateFormatScript: string;
|
|
|
5
5
|
export declare const dayScript: (value: any) => string;
|
|
6
6
|
export declare const monthScript: (value: any) => string;
|
|
7
7
|
export declare const yearScript: (value: any) => string;
|
|
8
|
-
export declare const hourScript: (value: any) => string;
|
|
8
|
+
export declare const hourScript: (value: any, timeFormat?: string) => string;
|
|
9
9
|
export declare const minuteScript: (value: any) => string;
|
|
10
10
|
export declare const secondScript: (value: any) => string;
|
|
11
|
+
/**
|
|
12
|
+
* Extracts the nanosecond value from a given date and divides it by 1,000,000.
|
|
13
|
+
*/
|
|
14
|
+
export declare const millisecondScript: (value: any) => string;
|
|
11
15
|
export declare function dateDif(start: any, end: any, unit: DateDifUnitParam): string;
|
|
12
16
|
export declare const getValueScript = "def GET_VALUE(def c){return (c.empty ? null : c.value)}";
|
|
13
17
|
export declare const isNullScript = "def IS_NULL_SCRIPT(def value, def replacement) { return value ?: replacement; }";
|
|
@@ -27,3 +31,4 @@ export declare const roundDownScript = "def ROUNDDOWN(def value, def places) {\n
|
|
|
27
31
|
export declare const roundScript: string;
|
|
28
32
|
export declare const roundUpScript: string;
|
|
29
33
|
export declare const subStringScript: string;
|
|
34
|
+
export declare const textScript = "def TEXT(def v) { return v == null ? null : v.toString(); }";
|
|
@@ -31,9 +31,20 @@ function dateFormatToInt(value, format) {
|
|
|
31
31
|
export const dayScript = (value) => dateFormatToInt(value, 'dd');
|
|
32
32
|
export const monthScript = (value) => dateFormatToInt(value, 'MM');
|
|
33
33
|
export const yearScript = (value) => dateFormatToInt(value, 'yyyy');
|
|
34
|
-
export const hourScript = (value) =>
|
|
34
|
+
export const hourScript = (value, timeFormat) => {
|
|
35
|
+
if (timeFormat === '12h') {
|
|
36
|
+
return dateFormatToInt(value, 'hh');
|
|
37
|
+
}
|
|
38
|
+
else {
|
|
39
|
+
return dateFormatToInt(value, 'HH');
|
|
40
|
+
}
|
|
41
|
+
};
|
|
35
42
|
export const minuteScript = (value) => dateFormatToInt(value, 'mm');
|
|
36
43
|
export const secondScript = (value) => dateFormatToInt(value, 'ss');
|
|
44
|
+
/**
|
|
45
|
+
* Extracts the nanosecond value from a given date and divides it by 1,000,000.
|
|
46
|
+
*/
|
|
47
|
+
export const millisecondScript = (value) => `(${dateFormatToInt(value, 'n')} / 1000000.0)`;
|
|
37
48
|
export function dateDif(start, end, unit) {
|
|
38
49
|
const units = {
|
|
39
50
|
Y: 'YEARS',
|
|
@@ -194,4 +205,5 @@ String ${SCRIPT_NAMES.subString}(def text, def start, def end) {
|
|
|
194
205
|
return text.substring(first, last);
|
|
195
206
|
}
|
|
196
207
|
`;
|
|
208
|
+
export const textScript = `def TEXT(def v) { return v == null ? null : v.toString(); }`;
|
|
197
209
|
//# sourceMappingURL=scripts.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"scripts.js","sourceRoot":"","sources":["../../../../src/utils/elasticsearch/scripts.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,0BAA0B,IAAI,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAE7E,MAAM,UAAU,MAAM,CAAC,KAAa;IAChC,OAAO,wBAAwB,KAAK,IAAI,CAAC;AAC7C,CAAC;AAED,MAAM,CAAC,MAAM,uBAAuB,GAAG;MACjC,YAAY,CAAC,WAAW;;;;;;;;;;;CAW7B,CAAC;AAEF,MAAM,CAAC,MAAM,gBAAgB,GAAG;SACvB,YAAY,CAAC,UAAU;;;;;;;;CAQ/B,CAAC;AAEF,SAAS,eAAe,CAAC,KAAU,EAAE,MAAc;IAC/C,OAAO,oBAAoB,YAAY,CAAC,UAAU,IAAI,KAAK,MAAM,MAAM,KAAK,CAAC;AACjF,CAAC;AAED,MAAM,CAAC,MAAM,SAAS,GAAG,CAAC,KAAU,EAAE,EAAE,CAAC,eAAe,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC;AAEtE,MAAM,CAAC,MAAM,WAAW,GAAG,CAAC,KAAU,EAAE,EAAE,CAAC,eAAe,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC;AAExE,MAAM,CAAC,MAAM,UAAU,GAAG,CAAC,KAAU,EAAE,EAAE,CAAC,eAAe,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;AAEzE,MAAM,CAAC,MAAM,UAAU,GAAG,CAAC,KAAU,EAAE,EAAE,CAAC,eAAe,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"scripts.js","sourceRoot":"","sources":["../../../../src/utils/elasticsearch/scripts.ts"],"names":[],"mappings":"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"}
|