flowquery 1.0.12 → 1.0.13
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/README.md +3 -3
- package/dist/flowquery.min.js +1 -1
- package/dist/parsing/functions/aggregate_function.d.ts +1 -1
- package/dist/parsing/functions/aggregate_function.d.ts.map +1 -1
- package/dist/parsing/functions/aggregate_function.js.map +1 -1
- package/dist/parsing/functions/async_function.d.ts +4 -15
- package/dist/parsing/functions/async_function.d.ts.map +1 -1
- package/dist/parsing/functions/async_function.js +6 -59
- package/dist/parsing/functions/async_function.js.map +1 -1
- package/dist/parsing/functions/function.d.ts +1 -1
- package/dist/parsing/functions/function.d.ts.map +1 -1
- package/dist/parsing/functions/function.js +1 -1
- package/dist/parsing/functions/function.js.map +1 -1
- package/dist/parsing/functions/function_factory.d.ts +2 -0
- package/dist/parsing/functions/function_factory.d.ts.map +1 -1
- package/dist/parsing/functions/function_factory.js +12 -11
- package/dist/parsing/functions/function_factory.js.map +1 -1
- package/dist/parsing/functions/function_metadata.d.ts +53 -24
- package/dist/parsing/functions/function_metadata.d.ts.map +1 -1
- package/dist/parsing/functions/function_metadata.js +55 -45
- package/dist/parsing/functions/function_metadata.js.map +1 -1
- package/dist/parsing/functions/predicate_function.d.ts +1 -1
- package/dist/parsing/functions/predicate_function.d.ts.map +1 -1
- package/dist/parsing/functions/predicate_function.js +1 -1
- package/dist/parsing/functions/predicate_function.js.map +1 -1
- package/dist/parsing/operations/load.js +1 -1
- package/dist/parsing/operations/load.js.map +1 -1
- package/dist/parsing/parser.d.ts.map +1 -1
- package/dist/parsing/parser.js +1 -2
- package/dist/parsing/parser.js.map +1 -1
- package/docs/flowquery.min.js +1 -1
- package/flowquery-vscode/flowQueryEngine/flowquery.min.js +1 -1
- package/misc/apps/RAG/package.json +1 -2
- package/misc/apps/RAG/src/components/ChatContainer.tsx +33 -6
- package/misc/apps/RAG/src/components/ChatMessage.css +24 -0
- package/misc/apps/RAG/src/components/ChatMessage.tsx +51 -2
- package/misc/apps/RAG/src/components/FlowQueryAgent.ts +566 -286
- package/misc/apps/RAG/src/plugins/index.ts +3 -1
- package/misc/apps/RAG/src/plugins/loaders/CatFacts.ts +6 -5
- package/misc/apps/RAG/src/plugins/loaders/FetchJson.ts +3 -3
- package/misc/apps/RAG/src/plugins/loaders/Form.ts +5 -5
- package/misc/apps/RAG/src/plugins/loaders/Llm.ts +14 -14
- package/misc/apps/RAG/src/plugins/loaders/MockData.ts +5 -5
- package/misc/apps/RAG/src/plugins/loaders/Table.ts +4 -4
- package/misc/apps/RAG/src/plugins/loaders/Weather.ts +126 -0
- package/misc/apps/RAG/src/prompts/FlowQuerySystemPrompt.ts +4 -0
- package/package.json +1 -1
- package/src/parsing/functions/aggregate_function.ts +1 -1
- package/src/parsing/functions/async_function.ts +5 -50
- package/src/parsing/functions/function.ts +2 -2
- package/src/parsing/functions/function_factory.ts +18 -9
- package/src/parsing/functions/function_metadata.ts +55 -47
- package/src/parsing/functions/predicate_function.ts +2 -2
- package/src/parsing/operations/load.ts +1 -1
- package/src/parsing/parser.ts +2 -1
- package/tests/extensibility.test.ts +22 -22
- package/tests/parsing/parser.test.ts +2 -2
- package/misc/apps/RAG/.env.example +0 -14
|
@@ -1,17 +1,5 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
-
var __asyncValues = (this && this.__asyncValues) || function (o) {
|
|
3
|
-
if (!Symbol.asyncIterator) throw new TypeError("Symbol.asyncIterator is not defined.");
|
|
4
|
-
var m = o[Symbol.asyncIterator], i;
|
|
5
|
-
return m ? m.call(o) : (o = typeof __values === "function" ? __values(o) : o[Symbol.iterator](), i = {}, verb("next"), verb("throw"), verb("return"), i[Symbol.asyncIterator] = function () { return this; }, i);
|
|
6
|
-
function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }
|
|
7
|
-
function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }
|
|
8
|
-
};
|
|
9
2
|
var __await = (this && this.__await) || function (v) { return this instanceof __await ? (this.v = v, this) : new __await(v); }
|
|
10
|
-
var __asyncDelegator = (this && this.__asyncDelegator) || function (o) {
|
|
11
|
-
var i, p;
|
|
12
|
-
return i = {}, verb("next"), verb("throw", function (e) { throw e; }), verb("return"), i[Symbol.iterator] = function () { return this; }, i;
|
|
13
|
-
function verb(n, f) { i[n] = o[n] ? function (v) { return (p = !p) ? { value: __await(o[n](v)), done: false } : f ? f(v) : v; } : f; }
|
|
14
|
-
};
|
|
15
3
|
var __asyncGenerator = (this && this.__asyncGenerator) || function (thisArg, _arguments, generator) {
|
|
16
4
|
if (!Symbol.asyncIterator) throw new TypeError("Symbol.asyncIterator is not defined.");
|
|
17
5
|
var g = generator.apply(thisArg, _arguments || []), i, q = [];
|
|
@@ -28,8 +16,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
28
16
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
29
17
|
};
|
|
30
18
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
31
|
-
const
|
|
32
|
-
const function_factory_1 = __importDefault(require("./function_factory"));
|
|
19
|
+
const function_1 = __importDefault(require("./function"));
|
|
33
20
|
/**
|
|
34
21
|
* Represents an async data provider function call for use in LOAD operations.
|
|
35
22
|
*
|
|
@@ -46,22 +33,7 @@ const function_factory_1 = __importDefault(require("./function_factory"));
|
|
|
46
33
|
* }
|
|
47
34
|
* ```
|
|
48
35
|
*/
|
|
49
|
-
class AsyncFunction extends
|
|
50
|
-
/**
|
|
51
|
-
* Creates a new AsyncFunction with the given name.
|
|
52
|
-
*
|
|
53
|
-
* @param name - The function name (must be registered as an async provider)
|
|
54
|
-
*/
|
|
55
|
-
constructor(name) {
|
|
56
|
-
super();
|
|
57
|
-
this._name = name;
|
|
58
|
-
}
|
|
59
|
-
/**
|
|
60
|
-
* Gets the function name.
|
|
61
|
-
*/
|
|
62
|
-
get name() {
|
|
63
|
-
return this._name;
|
|
64
|
-
}
|
|
36
|
+
class AsyncFunction extends function_1.default {
|
|
65
37
|
/**
|
|
66
38
|
* Sets the function parameters.
|
|
67
39
|
*
|
|
@@ -79,41 +51,16 @@ class AsyncFunction extends ast_node_1.default {
|
|
|
79
51
|
return this.children.map(child => child.value());
|
|
80
52
|
}
|
|
81
53
|
/**
|
|
82
|
-
*
|
|
54
|
+
* Generates the async data provider function results.
|
|
83
55
|
*
|
|
84
56
|
* @yields Data items from the async provider
|
|
85
57
|
* @throws {Error} If the function is not registered as an async provider
|
|
86
58
|
*/
|
|
87
|
-
|
|
88
|
-
return __asyncGenerator(this, arguments, function*
|
|
89
|
-
|
|
90
|
-
if (!provider) {
|
|
91
|
-
throw new Error(`Async data provider '${this._name}' is not registered`);
|
|
92
|
-
}
|
|
93
|
-
const args = this.getArguments();
|
|
94
|
-
const result = provider(...args);
|
|
95
|
-
// Check if result is an async generator or a promise
|
|
96
|
-
if (result && typeof result.next === 'function') {
|
|
97
|
-
// It's an async generator
|
|
98
|
-
yield __await(yield* __asyncDelegator(__asyncValues(result)));
|
|
99
|
-
}
|
|
100
|
-
else {
|
|
101
|
-
// It's a promise - await and yield the result
|
|
102
|
-
const data = yield __await(result);
|
|
103
|
-
if (Array.isArray(data)) {
|
|
104
|
-
for (const item of data) {
|
|
105
|
-
yield yield __await(item);
|
|
106
|
-
}
|
|
107
|
-
}
|
|
108
|
-
else {
|
|
109
|
-
yield yield __await(data);
|
|
110
|
-
}
|
|
111
|
-
}
|
|
59
|
+
generate() {
|
|
60
|
+
return __asyncGenerator(this, arguments, function* generate_1() {
|
|
61
|
+
throw new Error("Not implemented: generate method must be overridden in subclasses.");
|
|
112
62
|
});
|
|
113
63
|
}
|
|
114
|
-
toString() {
|
|
115
|
-
return `AsyncFunction (${this._name})`;
|
|
116
|
-
}
|
|
117
64
|
}
|
|
118
65
|
exports.default = AsyncFunction;
|
|
119
66
|
//# sourceMappingURL=async_function.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"async_function.js","sourceRoot":"","sources":["../../../src/parsing/functions/async_function.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"async_function.js","sourceRoot":"","sources":["../../../src/parsing/functions/async_function.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;AACA,0DAAkC;AAElC;;;;;;;;;;;;;;;GAeG;AACH,MAAM,aAAc,SAAQ,kBAAQ;IAChC;;;;OAIG;IACH,IAAW,UAAU,CAAC,KAAgB;QAClC,IAAI,CAAC,QAAQ,GAAG,KAAK,CAAC;IAC1B,CAAC;IAED;;;;OAIG;IACK,YAAY;QAChB,OAAO,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,KAAK,CAAC,KAAK,EAAE,CAAC,CAAC;IACrD,CAAC;IAED;;;;;OAKG;IACW,QAAQ;;YAClB,MAAM,IAAI,KAAK,CAAC,oEAAoE,CAAC,CAAC;QAC1F,CAAC;KAAA;CACJ;AAED,kBAAe,aAAa,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"function.d.ts","sourceRoot":"","sources":["../../../src/parsing/functions/function.ts"],"names":[],"mappings":"AAAA,OAAO,OAAO,MAAM,aAAa,CAAC;AAElC;;;;;;;;;;;GAWG;AACH,cAAM,QAAS,SAAQ,OAAO;IAC1B,SAAS,CAAC,KAAK,EAAE,MAAM,CAAC;IACxB,SAAS,CAAC,uBAAuB,EAAE,MAAM,GAAG,IAAI,CAAQ;IACxD,SAAS,CAAC,kBAAkB,EAAE,OAAO,CAAS;IAE9C;;;;OAIG;gBACS,IAAI,EAAE,MAAM;
|
|
1
|
+
{"version":3,"file":"function.d.ts","sourceRoot":"","sources":["../../../src/parsing/functions/function.ts"],"names":[],"mappings":"AAAA,OAAO,OAAO,MAAM,aAAa,CAAC;AAElC;;;;;;;;;;;GAWG;AACH,cAAM,QAAS,SAAQ,OAAO;IAC1B,SAAS,CAAC,KAAK,EAAE,MAAM,CAAC;IACxB,SAAS,CAAC,uBAAuB,EAAE,MAAM,GAAG,IAAI,CAAQ;IACxD,SAAS,CAAC,kBAAkB,EAAE,OAAO,CAAS;IAE9C;;;;OAIG;gBACS,IAAI,CAAC,EAAE,MAAM;IAKzB;;;;;OAKG;IACH,IAAW,UAAU,CAAC,KAAK,EAAE,OAAO,EAAE,EAKrC;IAED,IAAW,IAAI,IAAI,MAAM,CAExB;IAEM,QAAQ,IAAI,MAAM;IAIzB,IAAW,QAAQ,CAAC,QAAQ,EAAE,OAAO,EAMpC;CACJ;AAED,eAAe,QAAQ,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"function.js","sourceRoot":"","sources":["../../../src/parsing/functions/function.ts"],"names":[],"mappings":";;;;;AAAA,2DAAkC;AAElC;;;;;;;;;;;GAWG;AACH,MAAM,QAAS,SAAQ,kBAAO;IAK1B;;;;OAIG;IACH,YAAY,
|
|
1
|
+
{"version":3,"file":"function.js","sourceRoot":"","sources":["../../../src/parsing/functions/function.ts"],"names":[],"mappings":";;;;;AAAA,2DAAkC;AAElC;;;;;;;;;;;GAWG;AACH,MAAM,QAAS,SAAQ,kBAAO;IAK1B;;;;OAIG;IACH,YAAY,IAAa;QACrB,KAAK,EAAE,CAAC;QATF,4BAAuB,GAAkB,IAAI,CAAC;QAC9C,uBAAkB,GAAY,KAAK,CAAC;QAS1C,IAAI,CAAC,KAAK,GAAG,IAAI,IAAI,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC;IAC/C,CAAC;IAED;;;;;OAKG;IACH,IAAW,UAAU,CAAC,KAAgB;QAClC,IAAI,IAAI,CAAC,uBAAuB,KAAK,IAAI,IAAI,IAAI,CAAC,uBAAuB,KAAK,KAAK,CAAC,MAAM,EAAE,CAAC;YACzF,MAAM,IAAI,KAAK,CAAC,YAAY,IAAI,CAAC,KAAK,aAAa,IAAI,CAAC,uBAAuB,wBAAwB,KAAK,CAAC,MAAM,EAAE,CAAC,CAAC;QAC3H,CAAC;QACD,IAAI,CAAC,QAAQ,GAAG,KAAK,CAAC;IAC1B,CAAC;IAED,IAAW,IAAI;QACX,OAAO,IAAI,CAAC,KAAK,CAAC;IACtB,CAAC;IAEM,QAAQ;QACX,OAAO,aAAa,IAAI,CAAC,KAAK,GAAG,CAAC;IACtC,CAAC;IAED,IAAW,QAAQ,CAAC,QAAiB;QACjC,IAAI,IAAI,CAAC,kBAAkB,EAAE,CAAC;YAC1B,IAAI,CAAC,kBAAkB,GAAG,QAAQ,CAAC;QACvC,CAAC;aAAM,CAAC;YACJ,MAAM,IAAI,KAAK,CAAC,YAAY,IAAI,CAAC,KAAK,4BAA4B,CAAC,CAAC;QACxE,CAAC;IACL,CAAC;CACJ;AAED,kBAAe,QAAQ,CAAC"}
|
|
@@ -17,6 +17,7 @@ import "./functions";
|
|
|
17
17
|
import "./predicate_sum";
|
|
18
18
|
import "./type";
|
|
19
19
|
import { FunctionMetadata, AsyncDataProvider } from "./function_metadata";
|
|
20
|
+
import AsyncFunction from "./async_function";
|
|
20
21
|
export { AsyncDataProvider };
|
|
21
22
|
/**
|
|
22
23
|
* Factory for creating function instances by name.
|
|
@@ -94,6 +95,7 @@ declare class FunctionFactory {
|
|
|
94
95
|
* @returns A PredicateFunction instance of the appropriate type
|
|
95
96
|
*/
|
|
96
97
|
static createPredicate(name: string): PredicateFunction;
|
|
98
|
+
static createAsync(name: string): AsyncFunction;
|
|
97
99
|
}
|
|
98
100
|
export default FunctionFactory;
|
|
99
101
|
//# sourceMappingURL=function_factory.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"function_factory.d.ts","sourceRoot":"","sources":["../../../src/parsing/functions/function_factory.ts"],"names":[],"mappings":"AAAA,OAAO,QAAQ,MAAM,YAAY,CAAC;AAClC,OAAO,iBAAiB,MAAM,sBAAsB,CAAC;AAErD,OAAO,OAAO,CAAC;AACf,OAAO,WAAW,CAAC;AACnB,OAAO,OAAO,CAAC;AACf,OAAO,SAAS,CAAC;AACjB,OAAO,QAAQ,CAAC;AAChB,OAAO,SAAS,CAAC;AACjB,OAAO,SAAS,CAAC;AACjB,OAAO,QAAQ,CAAC;AAChB,OAAO,QAAQ,CAAC;AAChB,OAAO,WAAW,CAAC;AACnB,OAAO,WAAW,CAAC;AACnB,OAAO,aAAa,CAAC;AACrB,OAAO,QAAQ,CAAC;AAChB,OAAO,aAAa,CAAC;AACrB,OAAO,iBAAiB,CAAC;AACzB,OAAO,QAAQ,CAAC;AAChB,OAAO,EACH,gBAAgB,
|
|
1
|
+
{"version":3,"file":"function_factory.d.ts","sourceRoot":"","sources":["../../../src/parsing/functions/function_factory.ts"],"names":[],"mappings":"AAAA,OAAO,QAAQ,MAAM,YAAY,CAAC;AAClC,OAAO,iBAAiB,MAAM,sBAAsB,CAAC;AAErD,OAAO,OAAO,CAAC;AACf,OAAO,WAAW,CAAC;AACnB,OAAO,OAAO,CAAC;AACf,OAAO,SAAS,CAAC;AACjB,OAAO,QAAQ,CAAC;AAChB,OAAO,SAAS,CAAC;AACjB,OAAO,SAAS,CAAC;AACjB,OAAO,QAAQ,CAAC;AAChB,OAAO,QAAQ,CAAC;AAChB,OAAO,WAAW,CAAC;AACnB,OAAO,WAAW,CAAC;AACnB,OAAO,aAAa,CAAC;AACrB,OAAO,QAAQ,CAAC;AAChB,OAAO,aAAa,CAAC;AACrB,OAAO,iBAAiB,CAAC;AACzB,OAAO,QAAQ,CAAC;AAChB,OAAO,EACH,gBAAgB,EAIhB,iBAAiB,EACpB,MAAM,qBAAqB,CAAC;AAC7B,OAAO,aAAa,MAAM,kBAAkB,CAAC;AAI7C,OAAO,EAAE,iBAAiB,EAAE,CAAC;AAE7B;;;;;;;;;;;;GAYG;AACH,cAAM,eAAe;IACjB;;;;;OAKG;WACW,gBAAgB,CAAC,IAAI,EAAE,MAAM,GAAG,iBAAiB,GAAG,SAAS;IAI3E;;;;;OAKG;WACW,eAAe,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO;IAIpD;;;;;OAKG;WACW,WAAW,CAAC,IAAI,EAAE,MAAM,GAAG,gBAAgB,GAAG,SAAS;IAIrE;;;;;OAKG;WACW,aAAa,CAAC,OAAO,CAAC,EAAE;QAClC,QAAQ,CAAC,EAAE,MAAM,CAAC;QAClB,SAAS,CAAC,EAAE,OAAO,CAAC;QACpB,QAAQ,CAAC,EAAE,OAAO,CAAC;KACtB,GAAG,gBAAgB,EAAE;IAatB;;;;OAIG;WACW,iBAAiB,IAAI,MAAM,EAAE;IAI3C;;;;OAIG;WACW,MAAM,IAAI;QAAE,SAAS,EAAE,gBAAgB,EAAE,CAAC;QAAC,UAAU,EAAE,MAAM,EAAE,CAAA;KAAE;IAM/E;;;;;OAKG;WACW,MAAM,CAAC,IAAI,EAAE,MAAM,GAAG,QAAQ;IAY5C;;;;;;OAMG;WACW,eAAe,CAAC,IAAI,EAAE,MAAM,GAAG,iBAAiB;WAYhD,WAAW,CAAC,IAAI,EAAE,MAAM,GAAG,aAAa;CASzD;AAED,eAAe,eAAe,CAAC"}
|
|
@@ -1,10 +1,5 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
-
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
-
};
|
|
5
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
-
const function_1 = __importDefault(require("./function"));
|
|
7
|
-
const predicate_function_1 = __importDefault(require("./predicate_function"));
|
|
8
3
|
// Import built-in functions to ensure their @FunctionDef decorators run
|
|
9
4
|
require("./sum");
|
|
10
5
|
require("./collect");
|
|
@@ -44,7 +39,7 @@ class FunctionFactory {
|
|
|
44
39
|
* @returns The async data provider, or undefined if not found
|
|
45
40
|
*/
|
|
46
41
|
static getAsyncProvider(name) {
|
|
47
|
-
return (0, function_metadata_1.
|
|
42
|
+
return (0, function_metadata_1.getRegisteredFunctionFactory)(name.toLowerCase());
|
|
48
43
|
}
|
|
49
44
|
/**
|
|
50
45
|
* Checks if a function name is registered as an async data provider.
|
|
@@ -53,7 +48,7 @@ class FunctionFactory {
|
|
|
53
48
|
* @returns True if the function is an async data provider
|
|
54
49
|
*/
|
|
55
50
|
static isAsyncProvider(name) {
|
|
56
|
-
return (0, function_metadata_1.
|
|
51
|
+
return (0, function_metadata_1.getRegisteredFunctionFactory)(name.toLowerCase(), "async") !== undefined;
|
|
57
52
|
}
|
|
58
53
|
/**
|
|
59
54
|
* Gets metadata for a specific function.
|
|
@@ -114,8 +109,7 @@ class FunctionFactory {
|
|
|
114
109
|
if (decoratorFactory) {
|
|
115
110
|
return decoratorFactory();
|
|
116
111
|
}
|
|
117
|
-
|
|
118
|
-
return new function_1.default(name);
|
|
112
|
+
throw new Error(`Unknown function: ${name}`);
|
|
119
113
|
}
|
|
120
114
|
/**
|
|
121
115
|
* Creates a predicate function instance by name.
|
|
@@ -131,8 +125,15 @@ class FunctionFactory {
|
|
|
131
125
|
if (decoratorFactory) {
|
|
132
126
|
return decoratorFactory();
|
|
133
127
|
}
|
|
134
|
-
|
|
135
|
-
|
|
128
|
+
throw new Error(`Unknown predicate function: ${name}`);
|
|
129
|
+
}
|
|
130
|
+
static createAsync(name) {
|
|
131
|
+
const lowerName = name.toLowerCase();
|
|
132
|
+
const decoratorFactory = (0, function_metadata_1.getRegisteredFunctionFactory)(lowerName, 'async');
|
|
133
|
+
if (decoratorFactory) {
|
|
134
|
+
return decoratorFactory();
|
|
135
|
+
}
|
|
136
|
+
throw new Error(`Unknown async function: ${name}`);
|
|
136
137
|
}
|
|
137
138
|
}
|
|
138
139
|
exports.default = FunctionFactory;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"function_factory.js","sourceRoot":"","sources":["../../../src/parsing/functions/function_factory.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"function_factory.js","sourceRoot":"","sources":["../../../src/parsing/functions/function_factory.ts"],"names":[],"mappings":"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"}
|
|
@@ -75,37 +75,70 @@ export type FunctionDefOptions = Omit<FunctionMetadata, 'name'>;
|
|
|
75
75
|
* The function name is derived from the class's constructor call to super() for regular functions,
|
|
76
76
|
* or from the class name for async providers.
|
|
77
77
|
*
|
|
78
|
-
* For async providers (category: "async"), the class must have a `
|
|
79
|
-
* an AsyncGenerator.
|
|
80
|
-
* (first letter lowercased).
|
|
78
|
+
* For async providers (category: "async"), the class must have a `generate` method that returns
|
|
79
|
+
* an AsyncGenerator. This allows the function to be used as a data source in LOAD operations.
|
|
81
80
|
*
|
|
82
81
|
* @param options - Function metadata (excluding name)
|
|
83
82
|
* @returns Class decorator
|
|
84
83
|
*
|
|
85
84
|
* @example
|
|
86
85
|
* ```typescript
|
|
87
|
-
* //
|
|
86
|
+
* // Scalar function example
|
|
88
87
|
* @FunctionDef({
|
|
89
|
-
*
|
|
90
|
-
*
|
|
91
|
-
*
|
|
92
|
-
*
|
|
93
|
-
*
|
|
88
|
+
* description: "Adds two numbers",
|
|
89
|
+
* category: "scalar",
|
|
90
|
+
* parameters: [
|
|
91
|
+
* { name: "a", description: "First number", type: "number" },
|
|
92
|
+
* { name: "b", description: "Second number", type: "number" }
|
|
93
|
+
* ],
|
|
94
|
+
* output: { description: "Sum of a and b", type: "number" },
|
|
95
|
+
* examples: ["ADD(2, 3) // returns 5"]
|
|
94
96
|
* })
|
|
95
|
-
* class
|
|
96
|
-
*
|
|
97
|
-
*
|
|
97
|
+
* class AddFunction extends Function {
|
|
98
|
+
* constructor() {
|
|
99
|
+
* super("add");
|
|
100
|
+
* }
|
|
101
|
+
* public execute(a: number, b: number): number {
|
|
102
|
+
* return a + b;
|
|
103
|
+
* }
|
|
104
|
+
* }
|
|
105
|
+
* // Aggregate function example
|
|
106
|
+
* @FunctionDef({
|
|
107
|
+
* description: "Calculates the average of a list of numbers",
|
|
108
|
+
* category: "aggregate",
|
|
109
|
+
* parameters: [
|
|
110
|
+
* { name: "values", description: "Array of numbers", type: "array", items: { type: "number" } }
|
|
111
|
+
* ],
|
|
112
|
+
* output: { description: "Average value", type: "number" },
|
|
113
|
+
* examples: ["AVERAGE([1, 2, 3, 4, 5]) // returns 3"]
|
|
114
|
+
* })
|
|
115
|
+
* class AverageFunction extends AggregateFunction {
|
|
116
|
+
* constructor() {
|
|
117
|
+
* super("average");
|
|
118
|
+
* }
|
|
119
|
+
* public execute(values: number[]): number {
|
|
120
|
+
* const sum = values.reduce((acc, val) => acc + val, 0);
|
|
121
|
+
* return sum / values.length;
|
|
122
|
+
* }
|
|
123
|
+
* }
|
|
124
|
+
* // Async data provider example
|
|
98
125
|
* @FunctionDef({
|
|
99
|
-
*
|
|
100
|
-
*
|
|
101
|
-
*
|
|
102
|
-
*
|
|
103
|
-
*
|
|
126
|
+
* description: "Fetches data from an external API",
|
|
127
|
+
* category: "async",
|
|
128
|
+
* parameters: [
|
|
129
|
+
* { name: "endpoint", description: "API endpoint URL", type: "string" }
|
|
130
|
+
* ],
|
|
131
|
+
* output: { description: "Data object", type: "object" },
|
|
132
|
+
* examples: ["MyAsyncDataProvider('https://api.example.com/data')"]
|
|
104
133
|
* })
|
|
105
|
-
* class
|
|
106
|
-
*
|
|
134
|
+
* class MyAsyncDataProvider extends AsyncFunction {
|
|
135
|
+
* public async *generate(endpoint: string): AsyncGenerator<any> {
|
|
136
|
+
* const response = await fetch(endpoint);
|
|
137
|
+
* const data = await response.json();
|
|
138
|
+
* for (const item of data) {
|
|
139
|
+
* yield item;
|
|
140
|
+
* }
|
|
107
141
|
* }
|
|
108
|
-
* ```
|
|
109
142
|
*/
|
|
110
143
|
export declare function FunctionDef(options: FunctionDefOptions): <T extends new (...args: any[]) => any>(constructor: T) => T;
|
|
111
144
|
/**
|
|
@@ -120,8 +153,4 @@ export declare function getRegisteredFunctionFactory(name: string, category?: st
|
|
|
120
153
|
* Gets metadata for a specific function by name.
|
|
121
154
|
*/
|
|
122
155
|
export declare function getFunctionMetadata(name: string, category?: string): FunctionMetadata | undefined;
|
|
123
|
-
/**
|
|
124
|
-
* Gets a registered async data provider by name.
|
|
125
|
-
*/
|
|
126
|
-
export declare function getRegisteredAsyncProvider(name: string): AsyncDataProvider | undefined;
|
|
127
156
|
//# sourceMappingURL=function_metadata.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"function_metadata.d.ts","sourceRoot":"","sources":["../../../src/parsing/functions/function_metadata.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,MAAM,MAAM,gBAAgB,GAAG,QAAQ,GAAG,WAAW,GAAG,WAAW,GAAG,OAAO,GAAG,MAAM,CAAC;AAEvF;;;GAGG;AACH,MAAM,WAAW,eAAe;IAC5B,yBAAyB;IACzB,IAAI,EAAE,MAAM,CAAC;IACb,mCAAmC;IACnC,WAAW,EAAE,MAAM,CAAC;IACpB,qEAAqE;IACrE,IAAI,EAAE,QAAQ,GAAG,QAAQ,GAAG,SAAS,GAAG,QAAQ,GAAG,OAAO,GAAG,MAAM,GAAG,MAAM,CAAC;IAC7E,wDAAwD;IACxD,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,oCAAoC;IACpC,OAAO,CAAC,EAAE,GAAG,CAAC;IACd,sCAAsC;IACtC,KAAK,CAAC,EAAE,IAAI,CAAC,eAAe,EAAE,MAAM,GAAG,UAAU,GAAG,SAAS,CAAC,CAAC;IAC/D,yCAAyC;IACzC,UAAU,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,IAAI,CAAC,eAAe,EAAE,MAAM,GAAG,UAAU,CAAC,CAAC,CAAC;IACxE,6BAA6B;IAC7B,IAAI,CAAC,EAAE,GAAG,EAAE,CAAC;IACb,oBAAoB;IACpB,OAAO,CAAC,EAAE,GAAG,CAAC;CACjB;AAED;;GAEG;AACH,MAAM,WAAW,YAAY;IACzB,gCAAgC;IAChC,WAAW,EAAE,MAAM,CAAC;IACpB,uBAAuB;IACvB,IAAI,EAAE,QAAQ,GAAG,QAAQ,GAAG,SAAS,GAAG,QAAQ,GAAG,OAAO,GAAG,MAAM,GAAG,MAAM,CAAC;IAC7E,sCAAsC;IACtC,KAAK,CAAC,EAAE,IAAI,CAAC,YAAY,EAAE,aAAa,CAAC,CAAC;IAC1C,yCAAyC;IACzC,UAAU,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,IAAI,CAAC,eAAe,EAAE,MAAM,GAAG,UAAU,CAAC,CAAC,CAAC;IACxE,2BAA2B;IAC3B,OAAO,CAAC,EAAE,GAAG,CAAC;CACjB;AAED;;GAEG;AACH,MAAM,WAAW,gBAAgB;IAC7B,wBAAwB;IACxB,IAAI,EAAE,MAAM,CAAC;IACb,2DAA2D;IAC3D,WAAW,EAAE,MAAM,CAAC;IACpB,0DAA0D;IAC1D,QAAQ,EAAE,gBAAgB,CAAC;IAC3B,iCAAiC;IACjC,UAAU,EAAE,eAAe,EAAE,CAAC;IAC9B,oBAAoB;IACpB,MAAM,EAAE,YAAY,CAAC;IACrB,wCAAwC;IACxC,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAC;IACpB,kCAAkC;IAClC,KAAK,CAAC,EAAE,MAAM,CAAC;CAClB;AAED;;GAEG;AACH,MAAM,MAAM,iBAAiB,GAAG,CAAC,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,cAAc,CAAC,GAAG,EAAE,IAAI,EAAE,OAAO,CAAC,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"function_metadata.d.ts","sourceRoot":"","sources":["../../../src/parsing/functions/function_metadata.ts"],"names":[],"mappings":"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"}
|
|
@@ -4,21 +4,13 @@ exports.FunctionDef = FunctionDef;
|
|
|
4
4
|
exports.getRegisteredFunctionMetadata = getRegisteredFunctionMetadata;
|
|
5
5
|
exports.getRegisteredFunctionFactory = getRegisteredFunctionFactory;
|
|
6
6
|
exports.getFunctionMetadata = getFunctionMetadata;
|
|
7
|
-
exports.getRegisteredAsyncProvider = getRegisteredAsyncProvider;
|
|
8
7
|
/**
|
|
9
8
|
* Centralized registry for function metadata, factories, and async providers.
|
|
10
9
|
* Encapsulates all registration logic for the @FunctionDef decorator.
|
|
11
10
|
*/
|
|
12
11
|
class FunctionRegistry {
|
|
13
|
-
/** Registers an async data provider class. */
|
|
14
|
-
static registerAsync(constructor, options) {
|
|
15
|
-
const displayName = constructor.name;
|
|
16
|
-
const registryKey = displayName.toLowerCase();
|
|
17
|
-
this.metadata.set(registryKey, Object.assign({ name: displayName }, options));
|
|
18
|
-
this.asyncProviders.set(registryKey, (...args) => new constructor().fetch(...args));
|
|
19
|
-
}
|
|
20
12
|
/** Registers a regular function class. */
|
|
21
|
-
static
|
|
13
|
+
static register(constructor, options) {
|
|
22
14
|
var _a;
|
|
23
15
|
const instance = new constructor();
|
|
24
16
|
const displayName = (((_a = instance.name) === null || _a === void 0 ? void 0 : _a.toLowerCase()) || constructor.name.toLowerCase());
|
|
@@ -48,58 +40,82 @@ class FunctionRegistry {
|
|
|
48
40
|
return this.factories.get(`${lowerName}:${category}`);
|
|
49
41
|
return this.factories.get(lowerName);
|
|
50
42
|
}
|
|
51
|
-
static getAsyncProvider(name) {
|
|
52
|
-
return this.asyncProviders.get(name.toLowerCase());
|
|
53
|
-
}
|
|
54
43
|
}
|
|
55
44
|
FunctionRegistry.metadata = new Map();
|
|
56
45
|
FunctionRegistry.factories = new Map();
|
|
57
|
-
FunctionRegistry.asyncProviders = new Map();
|
|
58
46
|
/**
|
|
59
47
|
* Class decorator that registers function metadata.
|
|
60
48
|
* The function name is derived from the class's constructor call to super() for regular functions,
|
|
61
49
|
* or from the class name for async providers.
|
|
62
50
|
*
|
|
63
|
-
* For async providers (category: "async"), the class must have a `
|
|
64
|
-
* an AsyncGenerator.
|
|
65
|
-
* (first letter lowercased).
|
|
51
|
+
* For async providers (category: "async"), the class must have a `generate` method that returns
|
|
52
|
+
* an AsyncGenerator. This allows the function to be used as a data source in LOAD operations.
|
|
66
53
|
*
|
|
67
54
|
* @param options - Function metadata (excluding name)
|
|
68
55
|
* @returns Class decorator
|
|
69
56
|
*
|
|
70
57
|
* @example
|
|
71
58
|
* ```typescript
|
|
72
|
-
* //
|
|
59
|
+
* // Scalar function example
|
|
73
60
|
* @FunctionDef({
|
|
74
|
-
*
|
|
75
|
-
*
|
|
76
|
-
*
|
|
77
|
-
*
|
|
78
|
-
*
|
|
61
|
+
* description: "Adds two numbers",
|
|
62
|
+
* category: "scalar",
|
|
63
|
+
* parameters: [
|
|
64
|
+
* { name: "a", description: "First number", type: "number" },
|
|
65
|
+
* { name: "b", description: "Second number", type: "number" }
|
|
66
|
+
* ],
|
|
67
|
+
* output: { description: "Sum of a and b", type: "number" },
|
|
68
|
+
* examples: ["ADD(2, 3) // returns 5"]
|
|
79
69
|
* })
|
|
80
|
-
* class
|
|
81
|
-
*
|
|
82
|
-
*
|
|
70
|
+
* class AddFunction extends Function {
|
|
71
|
+
* constructor() {
|
|
72
|
+
* super("add");
|
|
73
|
+
* }
|
|
74
|
+
* public execute(a: number, b: number): number {
|
|
75
|
+
* return a + b;
|
|
76
|
+
* }
|
|
77
|
+
* }
|
|
78
|
+
* // Aggregate function example
|
|
79
|
+
* @FunctionDef({
|
|
80
|
+
* description: "Calculates the average of a list of numbers",
|
|
81
|
+
* category: "aggregate",
|
|
82
|
+
* parameters: [
|
|
83
|
+
* { name: "values", description: "Array of numbers", type: "array", items: { type: "number" } }
|
|
84
|
+
* ],
|
|
85
|
+
* output: { description: "Average value", type: "number" },
|
|
86
|
+
* examples: ["AVERAGE([1, 2, 3, 4, 5]) // returns 3"]
|
|
87
|
+
* })
|
|
88
|
+
* class AverageFunction extends AggregateFunction {
|
|
89
|
+
* constructor() {
|
|
90
|
+
* super("average");
|
|
91
|
+
* }
|
|
92
|
+
* public execute(values: number[]): number {
|
|
93
|
+
* const sum = values.reduce((acc, val) => acc + val, 0);
|
|
94
|
+
* return sum / values.length;
|
|
95
|
+
* }
|
|
96
|
+
* }
|
|
97
|
+
* // Async data provider example
|
|
83
98
|
* @FunctionDef({
|
|
84
|
-
*
|
|
85
|
-
*
|
|
86
|
-
*
|
|
87
|
-
*
|
|
88
|
-
*
|
|
99
|
+
* description: "Fetches data from an external API",
|
|
100
|
+
* category: "async",
|
|
101
|
+
* parameters: [
|
|
102
|
+
* { name: "endpoint", description: "API endpoint URL", type: "string" }
|
|
103
|
+
* ],
|
|
104
|
+
* output: { description: "Data object", type: "object" },
|
|
105
|
+
* examples: ["MyAsyncDataProvider('https://api.example.com/data')"]
|
|
89
106
|
* })
|
|
90
|
-
* class
|
|
91
|
-
*
|
|
107
|
+
* class MyAsyncDataProvider extends AsyncFunction {
|
|
108
|
+
* public async *generate(endpoint: string): AsyncGenerator<any> {
|
|
109
|
+
* const response = await fetch(endpoint);
|
|
110
|
+
* const data = await response.json();
|
|
111
|
+
* for (const item of data) {
|
|
112
|
+
* yield item;
|
|
113
|
+
* }
|
|
92
114
|
* }
|
|
93
|
-
* ```
|
|
94
115
|
*/
|
|
95
116
|
function FunctionDef(options) {
|
|
96
117
|
return function (constructor) {
|
|
97
|
-
|
|
98
|
-
FunctionRegistry.registerAsync(constructor, options);
|
|
99
|
-
}
|
|
100
|
-
else {
|
|
101
|
-
FunctionRegistry.registerFunction(constructor, options);
|
|
102
|
-
}
|
|
118
|
+
FunctionRegistry.register(constructor, options);
|
|
103
119
|
return constructor;
|
|
104
120
|
};
|
|
105
121
|
}
|
|
@@ -121,10 +137,4 @@ function getRegisteredFunctionFactory(name, category) {
|
|
|
121
137
|
function getFunctionMetadata(name, category) {
|
|
122
138
|
return FunctionRegistry.getMetadata(name, category);
|
|
123
139
|
}
|
|
124
|
-
/**
|
|
125
|
-
* Gets a registered async data provider by name.
|
|
126
|
-
*/
|
|
127
|
-
function getRegisteredAsyncProvider(name) {
|
|
128
|
-
return FunctionRegistry.getAsyncProvider(name);
|
|
129
|
-
}
|
|
130
140
|
//# sourceMappingURL=function_metadata.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"function_metadata.js","sourceRoot":"","sources":["../../../src/parsing/functions/function_metadata.ts"],"names":[],"mappings":";;
|
|
1
|
+
{"version":3,"file":"function_metadata.js","sourceRoot":"","sources":["../../../src/parsing/functions/function_metadata.ts"],"names":[],"mappings":"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"}
|
|
@@ -6,7 +6,7 @@ import ValueHolder from "./value_holder";
|
|
|
6
6
|
declare class PredicateFunction extends ASTNode {
|
|
7
7
|
private _name;
|
|
8
8
|
protected _valueHolder: ValueHolder;
|
|
9
|
-
constructor(name
|
|
9
|
+
constructor(name?: string);
|
|
10
10
|
get name(): string;
|
|
11
11
|
protected get reference(): Reference;
|
|
12
12
|
protected get array(): ASTNode;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"predicate_function.d.ts","sourceRoot":"","sources":["../../../src/parsing/functions/predicate_function.ts"],"names":[],"mappings":"AAAA,OAAO,OAAO,MAAM,aAAa,CAAC;AAClC,OAAO,UAAU,MAAM,2BAA2B,CAAC;AACnD,OAAO,SAAS,MAAM,0BAA0B,CAAC;AACjD,OAAO,KAAK,MAAM,qBAAqB,CAAC;AACxC,OAAO,WAAW,MAAM,gBAAgB,CAAC;AAEzC,cAAM,iBAAkB,SAAQ,OAAO;IACnC,OAAO,CAAC,KAAK,CAAS;IACtB,SAAS,CAAC,YAAY,EAAE,WAAW,CAAqB;gBAE5C,IAAI,EAAE,MAAM;
|
|
1
|
+
{"version":3,"file":"predicate_function.d.ts","sourceRoot":"","sources":["../../../src/parsing/functions/predicate_function.ts"],"names":[],"mappings":"AAAA,OAAO,OAAO,MAAM,aAAa,CAAC;AAClC,OAAO,UAAU,MAAM,2BAA2B,CAAC;AACnD,OAAO,SAAS,MAAM,0BAA0B,CAAC;AACjD,OAAO,KAAK,MAAM,qBAAqB,CAAC;AACxC,OAAO,WAAW,MAAM,gBAAgB,CAAC;AAEzC,cAAM,iBAAkB,SAAQ,OAAO;IACnC,OAAO,CAAC,KAAK,CAAS;IACtB,SAAS,CAAC,YAAY,EAAE,WAAW,CAAqB;gBAE5C,IAAI,CAAC,EAAE,MAAM;IAKzB,IAAW,IAAI,IAAI,MAAM,CAExB;IAED,SAAS,KAAK,SAAS,IAAI,SAAS,CAEnC;IAED,SAAS,KAAK,KAAK,IAAI,OAAO,CAE7B;IAED,SAAS,KAAK,OAAO,IAAI,UAAU,CAElC;IAED,SAAS,KAAK,KAAK,IAAI,KAAK,GAAG,IAAI,CAKlC;IAEM,KAAK,IAAI,GAAG;IAIZ,QAAQ,IAAI,MAAM;CAG5B;AAED,eAAe,iBAAiB,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"predicate_function.js","sourceRoot":"","sources":["../../../src/parsing/functions/predicate_function.ts"],"names":[],"mappings":";;;;;AAAA,2DAAkC;AAIlC,kEAAyC;AAEzC,MAAM,iBAAkB,SAAQ,kBAAO;IAInC,YAAY,
|
|
1
|
+
{"version":3,"file":"predicate_function.js","sourceRoot":"","sources":["../../../src/parsing/functions/predicate_function.ts"],"names":[],"mappings":";;;;;AAAA,2DAAkC;AAIlC,kEAAyC;AAEzC,MAAM,iBAAkB,SAAQ,kBAAO;IAInC,YAAY,IAAa;QACrB,KAAK,EAAE,CAAC;QAHF,iBAAY,GAAgB,IAAI,sBAAW,EAAE,CAAC;QAIpD,IAAI,CAAC,KAAK,GAAG,IAAI,IAAI,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC;IAC/C,CAAC;IAED,IAAW,IAAI;QACX,OAAO,IAAI,CAAC,KAAK,CAAC;IACtB,CAAC;IAED,IAAc,SAAS;QACnB,OAAO,IAAI,CAAC,UAAU,EAAe,CAAC;IAC1C,CAAC;IAED,IAAc,KAAK;QACf,OAAO,IAAI,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC,CAAC,UAAU,EAAE,CAAC;IAC9C,CAAC;IAED,IAAc,OAAO;QACjB,OAAO,IAAI,CAAC,WAAW,EAAE,CAAC,CAAC,CAAe,CAAC;IAC/C,CAAC;IAED,IAAc,KAAK;QACf,IAAI,IAAI,CAAC,WAAW,EAAE,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAClC,OAAO,IAAI,CAAC,WAAW,EAAE,CAAC,CAAC,CAAU,CAAC;QAC1C,CAAC;QACD,OAAO,IAAI,CAAC;IAChB,CAAC;IAEM,KAAK;QACR,MAAM,IAAI,KAAK,CAAC,yBAAyB,CAAC,CAAC;IAC/C,CAAC;IAEM,QAAQ;QACX,OAAO,sBAAsB,IAAI,CAAC,KAAK,GAAG,CAAC;IAC/C,CAAC;CACJ;AAED,kBAAe,iBAAiB,CAAC"}
|
|
@@ -97,7 +97,7 @@ class Load extends operation_1.default {
|
|
|
97
97
|
var _d;
|
|
98
98
|
const asyncFunc = this.asyncFunction;
|
|
99
99
|
try {
|
|
100
|
-
for (var _e = true, _f = __asyncValues(asyncFunc.
|
|
100
|
+
for (var _e = true, _f = __asyncValues(asyncFunc.generate()), _g; _g = yield _f.next(), _a = _g.done, !_a; _e = true) {
|
|
101
101
|
_c = _g.value;
|
|
102
102
|
_e = false;
|
|
103
103
|
const item = _c;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"load.js","sourceRoot":"","sources":["../../../src/parsing/operations/load.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"load.js","sourceRoot":"","sources":["../../../src/parsing/operations/load.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"parser.d.ts","sourceRoot":"","sources":["../../src/parsing/parser.ts"],"names":[],"mappings":"AAEA,OAAO,OAAO,MAAM,YAAY,CAAC;AACjC,OAAO,UAAU,MAAM,eAAe,CAAC;AAsCvC;;;;;;;;;;;;GAYG;AACH,cAAM,MAAO,SAAQ,UAAU;IAC3B,OAAO,CAAC,SAAS,CAAmC;IACpD,OAAO,CAAC,OAAO,CAA0B;IACzC,OAAO,CAAC,QAAQ,CAAa;IAE7B;;;;;;;;;;;OAWG;IACI,KAAK,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO;IA6CxC,OAAO,CAAC,cAAc;IAStB,OAAO,CAAC,SAAS;IAgBjB,OAAO,CAAC,WAAW;IAyBnB,OAAO,CAAC,WAAW;IAiBnB,OAAO,CAAC,UAAU;IAiBlB,OAAO,CAAC,SAAS;IAoEjB,OAAO,CAAC,UAAU;IAgBlB,OAAO,CAAE,gBAAgB;IA6BzB,OAAO,CAAC,eAAe;IAiFvB,OAAO,CAAC,WAAW;IAkDnB,OAAO,CAAC,SAAS;IAyCjB,OAAO,CAAC,SAAS;IAejB,OAAO,CAAC,SAAS;IAejB,OAAO,CAAC,SAAS;IAejB,OAAO,CAAC,UAAU;IAgBlB,OAAO,CAAC,aAAa;IAiCrB;;;;;OAKG;IACH,OAAO,CAAC,kBAAkB;
|
|
1
|
+
{"version":3,"file":"parser.d.ts","sourceRoot":"","sources":["../../src/parsing/parser.ts"],"names":[],"mappings":"AAEA,OAAO,OAAO,MAAM,YAAY,CAAC;AACjC,OAAO,UAAU,MAAM,eAAe,CAAC;AAsCvC;;;;;;;;;;;;GAYG;AACH,cAAM,MAAO,SAAQ,UAAU;IAC3B,OAAO,CAAC,SAAS,CAAmC;IACpD,OAAO,CAAC,OAAO,CAA0B;IACzC,OAAO,CAAC,QAAQ,CAAa;IAE7B;;;;;;;;;;;OAWG;IACI,KAAK,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO;IA6CxC,OAAO,CAAC,cAAc;IAStB,OAAO,CAAC,SAAS;IAgBjB,OAAO,CAAC,WAAW;IAyBnB,OAAO,CAAC,WAAW;IAiBnB,OAAO,CAAC,UAAU;IAiBlB,OAAO,CAAC,SAAS;IAoEjB,OAAO,CAAC,UAAU;IAgBlB,OAAO,CAAE,gBAAgB;IA6BzB,OAAO,CAAC,eAAe;IAiFvB,OAAO,CAAC,WAAW;IAkDnB,OAAO,CAAC,SAAS;IAyCjB,OAAO,CAAC,SAAS;IAejB,OAAO,CAAC,SAAS;IAejB,OAAO,CAAC,SAAS;IAejB,OAAO,CAAC,UAAU;IAgBlB,OAAO,CAAC,aAAa;IAiCrB;;;;;OAKG;IACH,OAAO,CAAC,kBAAkB;IA2B1B,OAAO,CAAC,sBAAsB;IA0D9B,OAAO,CAAC,YAAY;IA4BpB,OAAO,CAAC,SAAS;IAiBjB,OAAO,CAAC,qBAAqB;IAuC7B,OAAO,CAAC,cAAc;IAyBtB,OAAO,CAAC,kCAAkC;IAO1C,OAAO,CAAC,yBAAyB;IASjC,OAAO,CAAC,0CAA0C;CAKrD;AAED,eAAe,MAAM,CAAC"}
|
package/dist/parsing/parser.js
CHANGED
|
@@ -9,7 +9,6 @@ const ast_node_1 = __importDefault(require("./ast_node"));
|
|
|
9
9
|
const base_parser_1 = __importDefault(require("./base_parser"));
|
|
10
10
|
const function_factory_1 = __importDefault(require("./functions/function_factory"));
|
|
11
11
|
const function_1 = __importDefault(require("./functions/function"));
|
|
12
|
-
const async_function_1 = __importDefault(require("./functions/async_function"));
|
|
13
12
|
const associative_array_1 = __importDefault(require("./data_structures/associative_array"));
|
|
14
13
|
const json_array_1 = __importDefault(require("./data_structures/json_array"));
|
|
15
14
|
const key_value_pair_1 = __importDefault(require("./data_structures/key_value_pair"));
|
|
@@ -611,7 +610,7 @@ class Parser extends base_parser_1.default {
|
|
|
611
610
|
if (!((_a = this.peek()) === null || _a === void 0 ? void 0 : _a.isLeftParenthesis())) {
|
|
612
611
|
return null;
|
|
613
612
|
}
|
|
614
|
-
const asyncFunc =
|
|
613
|
+
const asyncFunc = function_factory_1.default.createAsync(this.token.value);
|
|
615
614
|
this.setNextToken(); // skip function name
|
|
616
615
|
this.setNextToken(); // skip left parenthesis
|
|
617
616
|
this.skipWhitespaceAndComments();
|