@easyquery/enterprise 7.2.5-beta01 → 7.2.5-rc02

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.
Files changed (51) hide show
  1. package/dist/easyquery.enterprise.cjs.js +1218 -0
  2. package/dist/easyquery.enterprise.esm.js +1211 -0
  3. package/dist/types/dm/model_ex.d.ts +3 -0
  4. package/dist/types/extensions.d.ts +1 -0
  5. package/dist/{lib → types}/query/query_ex.d.ts +5 -1
  6. package/package.json +16 -36
  7. package/api-eq-enterprise.js +0 -15
  8. package/dist/browser/eq.enterprise.js +0 -37130
  9. package/dist/browser/eq.enterprise.js.map +0 -1
  10. package/dist/browser/eq.enterprise.min.js +0 -2
  11. package/dist/browser/eq.enterprise.min.js.LICENSE.txt +0 -11
  12. package/dist/browser/eq.enterprise.min.js.map +0 -1
  13. package/dist/bundles/easyquery.enterprise.js +0 -8107
  14. package/dist/bundles/easyquery.enterprise.js.map +0 -1
  15. package/dist/bundles/easyquery.enterprise.min.js +0 -3
  16. package/dist/bundles/easyquery.enterprise.min.js.LICENSE.txt +0 -1
  17. package/dist/bundles/easyquery.enterprise.min.js.map +0 -1
  18. package/dist/lib/data/data_table_aggr_calculator.js +0 -164
  19. package/dist/lib/data/data_table_aggr_calculator.js.map +0 -1
  20. package/dist/lib/data/eqs_aggr_calculator.js +0 -173
  21. package/dist/lib/data/eqs_aggr_calculator.js.map +0 -1
  22. package/dist/lib/dm/model_ex.d.ts +0 -9
  23. package/dist/lib/dm/model_ex.js +0 -152
  24. package/dist/lib/dm/model_ex.js.map +0 -1
  25. package/dist/lib/extensions.d.ts +0 -26
  26. package/dist/lib/extensions.js +0 -115
  27. package/dist/lib/extensions.js.map +0 -1
  28. package/dist/lib/license/lc-dialog.js +0 -315
  29. package/dist/lib/license/lc-dialog.js.map +0 -1
  30. package/dist/lib/main/eqs_query_storage.js +0 -106
  31. package/dist/lib/main/eqs_query_storage.js.map +0 -1
  32. package/dist/lib/public_api.js +0 -8
  33. package/dist/lib/public_api.js.map +0 -1
  34. package/dist/lib/query/condition_ex.js +0 -98
  35. package/dist/lib/query/condition_ex.js.map +0 -1
  36. package/dist/lib/query/query_column_ex.js +0 -58
  37. package/dist/lib/query/query_column_ex.js.map +0 -1
  38. package/dist/lib/query/query_ex.js +0 -78
  39. package/dist/lib/query/query_ex.js.map +0 -1
  40. package/dist/lib/utils/lcv.js +0 -103
  41. package/dist/lib/utils/lcv.js.map +0 -1
  42. package/tsconfig.json +0 -22
  43. package/webpack.config.js +0 -118
  44. /package/dist/{lib → types}/data/data_table_aggr_calculator.d.ts +0 -0
  45. /package/dist/{lib → types}/data/eqs_aggr_calculator.d.ts +0 -0
  46. /package/dist/{lib → types}/license/lc-dialog.d.ts +0 -0
  47. /package/dist/{lib → types}/main/eqs_query_storage.d.ts +0 -0
  48. /package/dist/{lib → types}/public_api.d.ts +0 -0
  49. /package/dist/{lib → types}/query/condition_ex.d.ts +0 -0
  50. /package/dist/{lib → types}/query/query_column_ex.d.ts +0 -0
  51. /package/dist/{lib → types}/utils/lcv.d.ts +0 -0
@@ -1,164 +0,0 @@
1
- import { EqAggregatesContainer } from '@easyquery/core';
2
- var DataTableAggregatesCalculator = /** @class */ (function () {
3
- function DataTableAggregatesCalculator(context) {
4
- this.context = context;
5
- //stores current totals by level (group) number
6
- this.levelsTotals = [];
7
- this.prevRow = null;
8
- this.aggrContainer = new EqAggregatesContainer(context);
9
- }
10
- DataTableAggregatesCalculator.prototype.getAggrContainer = function () {
11
- return this.aggrContainer;
12
- };
13
- DataTableAggregatesCalculator.prototype.initObjects = function () {
14
- var _this = this;
15
- this.aggrSettings = this.context.getQuery().getAggregationSettings();
16
- this.groups = this.aggrSettings.getGroups();
17
- this.aggregates = this.aggrSettings.getAggregates();
18
- this.aggrColIds = this.aggrSettings.getAggregates().map(function (a) { return a.colId; });
19
- this.aggrCols = this.context.resultTable.columns.getItems()
20
- .filter(function (col) { return _this.aggrColIds.indexOf(col.id) >= 0; });
21
- this.levelsTotals = [];
22
- this.prevRow = null;
23
- };
24
- DataTableAggregatesCalculator.prototype.createColumnAggregatesObject = function () {
25
- return {
26
- sum: 0,
27
- min: Number.MAX_VALUE,
28
- max: Number.MIN_VALUE
29
- };
30
- };
31
- DataTableAggregatesCalculator.prototype.calculate = function (options) {
32
- this.initObjects();
33
- this.aggrContainer.clear();
34
- options = options || {};
35
- options.maxLevel = options.maxLevel >= 0
36
- ? options.maxLevel : 0;
37
- var levelNumber = this.groups.length + 1; //number of groups plus grand totals
38
- for (var levelIndex = 0; levelIndex < levelNumber; levelIndex++) {
39
- var levelTotals = { count: 0, columns: {} };
40
- this.resetLevelTotals(levelTotals);
41
- this.levelsTotals.push(levelTotals);
42
- }
43
- var allRows = this.context.resultTable.getCachedRows();
44
- if (allRows.length > 0) {
45
- for (var _i = 0, allRows_1 = allRows; _i < allRows_1.length; _i++) {
46
- var row = allRows_1[_i];
47
- this.processDataRow(row);
48
- }
49
- //flusing the totals for all group levels
50
- for (var levelIndex = 1; levelIndex < levelNumber; levelIndex++) {
51
- this.flushLevelTotals(levelIndex);
52
- }
53
- //flusing the grand totals (if they are turned on)
54
- if (this.aggrSettings.hasGrandTotals()) {
55
- this.flushLevelTotals(0);
56
- }
57
- }
58
- return Promise.resolve();
59
- };
60
- DataTableAggregatesCalculator.prototype.resetLevelTotals = function (rowTotals) {
61
- for (var _i = 0, _a = this.aggrCols; _i < _a.length; _i++) {
62
- var aggrCol = _a[_i];
63
- rowTotals.columns[aggrCol.id] = this.createColumnAggregatesObject();
64
- }
65
- rowTotals.count = 0;
66
- };
67
- DataTableAggregatesCalculator.prototype.processDataRow = function (row) {
68
- var levelIndexChanged = this.checkLevelChange(row);
69
- if (levelIndexChanged >= 0) {
70
- for (var levelIndex_1 = levelIndexChanged; levelIndex_1 < this.levelsTotals.length; levelIndex_1++) {
71
- this.flushLevelTotals(levelIndex_1);
72
- }
73
- }
74
- if (this.aggrSettings.hasGrandTotals()) {
75
- this.updateLevelTotals(0, row);
76
- }
77
- var levelIndex = 1;
78
- for (var _i = 0, _a = this.groups; _i < _a.length; _i++) {
79
- var group = _a[_i];
80
- this.updateLevelTotals(levelIndex, row);
81
- levelIndex++;
82
- }
83
- this.prevRow = row;
84
- };
85
- /** Checks if the values in group columns were changed
86
- and return the level number they were */
87
- DataTableAggregatesCalculator.prototype.checkLevelChange = function (row) {
88
- if (this.prevRow == null)
89
- return -1;
90
- for (var groupIndex = 0; groupIndex < this.groups.length; groupIndex++) {
91
- var group = this.groups[groupIndex];
92
- for (var _i = 0, _a = group.columns; _i < _a.length; _i++) {
93
- var colId = _a[_i];
94
- var value = row.getValue(colId);
95
- var prevValue = this.prevRow.getValue(colId);
96
- if (!this.aggrSettings.compareValues(prevValue, value)) {
97
- return groupIndex + 1;
98
- }
99
- }
100
- }
101
- return -1;
102
- };
103
- /** Saves the current values in levelData for the specified level to AggregateContainer
104
- and then reset the data row for that level
105
- */
106
- DataTableAggregatesCalculator.prototype.flushLevelTotals = function (levelIndex) {
107
- var levelTotals = this.levelsTotals[levelIndex];
108
- var group = levelIndex > 0 ? this.groups[levelIndex - 1] : null;
109
- var groupKey = this.aggrSettings.buildGroupKey(group, this.prevRow);
110
- var groupTotals = {};
111
- for (var _i = 0, _a = this.aggregates; _i < _a.length; _i++) {
112
- var aggr = _a[_i];
113
- var columnTotals = levelTotals.columns[aggr.colId];
114
- groupTotals[aggr.colId] = this.applyAggrFunc(aggr.funcId, columnTotals, levelTotals);
115
- }
116
- if (this.aggrSettings.hasRecordCount()) {
117
- groupTotals[this.aggrSettings.COUNT_FIELD_NAME] = levelTotals.count;
118
- }
119
- this.aggrContainer.updateAggregateData(levelIndex, groupKey, groupTotals);
120
- this.resetLevelTotals(levelTotals);
121
- };
122
- DataTableAggregatesCalculator.prototype.applyAggrFunc = function (funcId, columnTotals, levelTotals) {
123
- switch (funcId) {
124
- case "SUM":
125
- return columnTotals.sum;
126
- case "AVG":
127
- return columnTotals.sum / levelTotals.count;
128
- case "COUNT":
129
- case "CNTDST":
130
- return levelTotals.count;
131
- case "MIN":
132
- return columnTotals.min;
133
- case "MAX":
134
- return columnTotals.max;
135
- }
136
- };
137
- /** Updates the totals by values in the current DataRow
138
- * and according to the specified aggregate
139
- */
140
- DataTableAggregatesCalculator.prototype.updateLevelTotals = function (levelIndex, row) {
141
- var levelTotals = this.levelsTotals[levelIndex];
142
- levelTotals.count += 1;
143
- for (var _i = 0, _a = this.aggregates; _i < _a.length; _i++) {
144
- var aggr = _a[_i];
145
- var value = row.getValue(aggr.colId);
146
- var columnTotals = levelTotals.columns[aggr.colId];
147
- columnTotals.sum += value;
148
- if (value < columnTotals.min) {
149
- columnTotals.min = value;
150
- }
151
- if (value > columnTotals.max) {
152
- columnTotals.max = value;
153
- }
154
- }
155
- };
156
- DataTableAggregatesCalculator.prototype.needRecalculation = function () {
157
- return true;
158
- };
159
- DataTableAggregatesCalculator.prototype.reset = function () {
160
- };
161
- return DataTableAggregatesCalculator;
162
- }());
163
- export { DataTableAggregatesCalculator };
164
- //# sourceMappingURL=data_table_aggr_calculator.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"data_table_aggr_calculator.js","sourceRoot":"","sources":["../../../src/data/data_table_aggr_calculator.ts"],"names":[],"mappings":"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"}
@@ -1,173 +0,0 @@
1
- var __assign = (this && this.__assign) || function () {
2
- __assign = Object.assign || function(t) {
3
- for (var s, i = 1, n = arguments.length; i < n; i++) {
4
- s = arguments[i];
5
- for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
6
- t[p] = s[p];
7
- }
8
- return t;
9
- };
10
- return __assign.apply(this, arguments);
11
- };
12
- import { EasyDataTable } from '@easydata/core';
13
- import { ExprTag, EqAggregatesContainer, Expression } from '@easyquery/core';
14
- var EqServerAggregatesCalculator = /** @class */ (function () {
15
- function EqServerAggregatesCalculator(context) {
16
- this.context = context;
17
- this._needRecalculation = true;
18
- this.aggrContainer = new EqAggregatesContainer(context);
19
- }
20
- EqServerAggregatesCalculator.prototype.getAggrContainer = function () {
21
- return this.aggrContainer;
22
- };
23
- EqServerAggregatesCalculator.prototype.calculate = function (options) {
24
- this._needRecalculation = false;
25
- this.aggrContainer.clear();
26
- options = options || {};
27
- options.maxLevel = options.maxLevel >= 0
28
- ? options.maxLevel : 0;
29
- var levelPromises = [];
30
- var query = this.context.createQuery();
31
- query.loadFromData(this.context.getQuery().toJSONData());
32
- var settings = this.context.getQuery().getAggregationSettings();
33
- var aggregates = settings.getAggregates();
34
- var aggrColIds = settings.getAggregates().map(function (a) { return a.colId; });
35
- var aggrCols = query.getColumns()
36
- .filter(function (col) { return aggrColIds.indexOf(col.id) >= 0; });
37
- var _loop_1 = function (col) {
38
- query.changeColumnType(col, ExprTag.AggregateFunction, { funcId: aggregates.filter(function (a) { return a.colId == col.id; })[0].funcId });
39
- };
40
- for (var _i = 0, aggrCols_1 = aggrCols; _i < aggrCols_1.length; _i++) {
41
- var col = aggrCols_1[_i];
42
- _loop_1(col);
43
- }
44
- //get all non-aggregate columns
45
- var queryCols = query.getColumns()
46
- .filter(function (c) { return c.expr.tag !== ExprTag.AggregateFunction; });
47
- for (var _a = 0, queryCols_1 = queryCols; _a < queryCols_1.length; _a++) {
48
- var col = queryCols_1[_a];
49
- col.setHidden(true);
50
- }
51
- if (settings.hasRecordCount()) {
52
- var col = query.createColumn();
53
- col.caption = settings.COUNT_FIELD_NAME;
54
- col['_id'] = settings.COUNT_FIELD_NAME;
55
- var sqlText = 'COUNT(*)';
56
- var customSqlExpr = new Expression(col);
57
- customSqlExpr.tag = ExprTag.CustomSql;
58
- customSqlExpr.sql = sqlText;
59
- customSqlExpr.baseAttrId = null;
60
- col.expr = customSqlExpr;
61
- query.getColumns().push(col);
62
- }
63
- if (settings.hasGrandTotals()) {
64
- levelPromises.push(this.processLevel({
65
- query: query,
66
- level: 0,
67
- groupName: 'Grand Totals',
68
- resultObtainedCallback: options.resultObtained,
69
- errorOccurredCallback: options.errorOccurred
70
- }));
71
- }
72
- var groups = settings.getGroups();
73
- for (var level = 1; level <= groups.length; level++) {
74
- var group = groups[level - 1];
75
- for (var _b = 0, queryCols_2 = queryCols; _b < queryCols_2.length; _b++) {
76
- var col = queryCols_2[_b];
77
- col.setHidden(group.columns.indexOf(col.id) < 0);
78
- }
79
- levelPromises.push(this.processLevel({
80
- query: query,
81
- level: level,
82
- groupName: group.name,
83
- resultObtainedCallback: options.resultObtained,
84
- errorOccurredCallback: options.errorOccurred
85
- }));
86
- }
87
- return Promise.all(levelPromises)
88
- .then(function () {
89
- return;
90
- })
91
- .catch(function (error) { return console.error(error); });
92
- };
93
- EqServerAggregatesCalculator.prototype.processLevel = function (options) {
94
- var _this = this;
95
- var fetcher = this.context.getServices()
96
- .getDataFetcher();
97
- var fetchOptions = {
98
- aux: true,
99
- query: options.query
100
- };
101
- if (this.context.debugMode) {
102
- fetchOptions.debug = "Fetching group data. Group: '".concat(options.groupName, "', level: ").concat(options.level);
103
- }
104
- var resultPromise = fetcher.fetchData(fetchOptions)
105
- .then(function (result) {
106
- var dataTable = new EasyDataTable({
107
- elasticChunks: true
108
- });
109
- var resultSet = result.resultSet;
110
- for (var _i = 0, _a = resultSet.cols; _i < _a.length; _i++) {
111
- var col = _a[_i];
112
- dataTable.columns.add(col);
113
- }
114
- for (var _b = 0, _c = resultSet.rows; _b < _c.length; _b++) {
115
- var row = _c[_b];
116
- dataTable.addRow(row);
117
- }
118
- var levelData = _this.buildLevelData(options.level, dataTable);
119
- _this.aggrContainer.setAggregateData(options.level, levelData);
120
- if (options.resultObtainedCallback) {
121
- options.resultObtainedCallback(result, options.level);
122
- }
123
- })
124
- .catch(function (error) {
125
- if (options.errorOccurredCallback) {
126
- options.errorOccurredCallback(__assign(__assign({}, error), { level: options.level }));
127
- }
128
- });
129
- return resultPromise;
130
- };
131
- EqServerAggregatesCalculator.prototype.buildLevelData = function (level, dataTable) {
132
- var aggrSettings = this.context.getQuery().getAggregationSettings();
133
- var keyColumns = level > 0
134
- ? aggrSettings.getGroups()[level - 1].columns
135
- : [];
136
- var valueColumns = aggrSettings.getAggregates().map(function (a) { return a.colId; });
137
- if (aggrSettings.hasRecordCount()) {
138
- valueColumns.push(aggrSettings.COUNT_FIELD_NAME);
139
- }
140
- var data = new Map();
141
- for (var _i = 0, _a = dataTable.getCachedRows(); _i < _a.length; _i++) {
142
- var row = _a[_i];
143
- var key = {};
144
- var value = {};
145
- for (var _b = 0, keyColumns_1 = keyColumns; _b < keyColumns_1.length; _b++) {
146
- var keyCol = keyColumns_1[_b];
147
- var colIdx = dataTable.columns.getIndex(keyCol);
148
- if (colIdx >= 0) {
149
- var keyVal = row.getValue(keyCol);
150
- if (!aggrSettings.caseSensitiveGroups && typeof (keyVal) === 'string') {
151
- keyVal = keyVal.toLowerCase();
152
- }
153
- key[keyCol] = keyVal;
154
- }
155
- }
156
- for (var _c = 0, valueColumns_1 = valueColumns; _c < valueColumns_1.length; _c++) {
157
- var valueCol = valueColumns_1[_c];
158
- value[valueCol] = row.getValue(valueCol);
159
- }
160
- data.set(JSON.stringify(key), value);
161
- }
162
- return data;
163
- };
164
- EqServerAggregatesCalculator.prototype.needRecalculation = function () {
165
- return this._needRecalculation;
166
- };
167
- EqServerAggregatesCalculator.prototype.reset = function () {
168
- this._needRecalculation = true;
169
- };
170
- return EqServerAggregatesCalculator;
171
- }());
172
- export { EqServerAggregatesCalculator };
173
- //# sourceMappingURL=eqs_aggr_calculator.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"eqs_aggr_calculator.js","sourceRoot":"","sources":["../../../src/data/eqs_aggr_calculator.ts"],"names":[],"mappings":"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"}
@@ -1,9 +0,0 @@
1
- import { DataModel, Query, Tree, Entity } from "@easyquery/core";
2
- import { QueryEx } from "../query/query_ex";
3
- export declare class DataModelEx extends DataModel {
4
- buildQueryPath(query: Query): Tree<Entity>;
5
- private addPathToTree;
6
- private findPath;
7
- private checkPath;
8
- createQuery(): QueryEx;
9
- }
@@ -1,152 +0,0 @@
1
- var __extends = (this && this.__extends) || (function () {
2
- var extendStatics = function (d, b) {
3
- extendStatics = Object.setPrototypeOf ||
4
- ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
5
- function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };
6
- return extendStatics(d, b);
7
- };
8
- return function (d, b) {
9
- if (typeof b !== "function" && b !== null)
10
- throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");
11
- extendStatics(d, b);
12
- function __() { this.constructor = d; }
13
- d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
14
- };
15
- })();
16
- import { DataModel, Tree } from "@easyquery/core";
17
- import { QueryEx } from "../query/query_ex";
18
- import { lcv } from "../utils/lcv";
19
- var DataModelEx = /** @class */ (function (_super) {
20
- __extends(DataModelEx, _super);
21
- function DataModelEx() {
22
- return _super !== null && _super.apply(this, arguments) || this;
23
- }
24
- DataModelEx.prototype.buildQueryPath = function (query) {
25
- if (lcv.__kt <= 1)
26
- return _super.prototype.buildQueryPath.call(this, query);
27
- if (this.mainEntity)
28
- return _super.prototype.buildQueryPath.call(this, query);
29
- var entities = this.getEntitiesInQuery(query);
30
- if (entities.length == 0) {
31
- throw Error("Cannon build path. Path is empty");
32
- }
33
- var tree = new Tree(entities[0]);
34
- for (var i = 1; i < entities.length; i++) {
35
- var entity = entities[i];
36
- if (tree.contains(entity)) {
37
- continue;
38
- }
39
- var path = this.findPath(tree.value, entity);
40
- if (path != null) {
41
- //Add path to tree
42
- tree = this.addPathToTree(tree, (path[0] === tree.value) ? path.slice(1) : path);
43
- }
44
- else {
45
- throw Error("Unable to build query. Cannot build path.");
46
- }
47
- }
48
- tree.setParents();
49
- return tree;
50
- };
51
- DataModelEx.prototype.addPathToTree = function (tree, path) {
52
- if (path.length == 0) {
53
- return;
54
- }
55
- var pathAdded = false;
56
- for (var _i = 0, _a = tree.childs; _i < _a.length; _i++) {
57
- var child = _a[_i];
58
- if (child.value === path[0]) {
59
- pathAdded = true;
60
- if (path.length > 1)
61
- child = this.addPathToTree(child, path.slice(1));
62
- break;
63
- }
64
- }
65
- if (!pathAdded) {
66
- var link = this.findLink(tree.value, path[0]);
67
- if (link) {
68
- var newNode = new Tree(path[0]);
69
- tree.addChild(newNode);
70
- if (path.length > 1)
71
- newNode = this.addPathToTree(newNode, path.slice(1));
72
- }
73
- else if (!tree.parent) {
74
- var node = new Tree(tree);
75
- tree = new Tree(path[0]);
76
- tree.addChild(node);
77
- if (path.length > 1)
78
- tree = this.addPathToTree(tree, path.slice(1));
79
- }
80
- else {
81
- throw Error("Unable to build query. Cannot build path.");
82
- }
83
- }
84
- return tree;
85
- };
86
- DataModelEx.prototype.findPath = function (entityFrom, entityTo) {
87
- var curPath = [];
88
- var curStep = [];
89
- var nextStep = [];
90
- var passedEntities = [];
91
- var pathFound = false;
92
- curPath.push(entityFrom);
93
- curStep.push(curPath);
94
- passedEntities.push(entityFrom);
95
- while (!pathFound) {
96
- nextStep = [];
97
- for (var _i = 0, curStep_1 = curStep; _i < curStep_1.length; _i++) {
98
- var path = curStep_1[_i];
99
- pathFound = this.checkPath(path, entityTo, nextStep, passedEntities);
100
- if (pathFound) {
101
- path.push(entityTo);
102
- curPath = path;
103
- break;
104
- }
105
- }
106
- curStep = [];
107
- if (!pathFound) {
108
- if (nextStep.length == 0)
109
- return null;
110
- //copy nextStep to curStep
111
- for (var _a = 0, nextStep_1 = nextStep; _a < nextStep_1.length; _a++) {
112
- var path = nextStep_1[_a];
113
- curStep.push(path);
114
- }
115
- }
116
- }
117
- return curPath;
118
- };
119
- DataModelEx.prototype.checkPath = function (path, entityTo, nextStep, passedEntities) {
120
- var endPoint = path[path.length - 1];
121
- var entityLinks = this.getLinksByEntity(endPoint);
122
- for (var _i = 0, entityLinks_1 = entityLinks; _i < entityLinks_1.length; _i++) {
123
- var link = entityLinks_1[_i];
124
- var entity2 = null;
125
- if (link.entityFrom == endPoint) {
126
- entity2 = link.entityTo;
127
- }
128
- else {
129
- entity2 = link.entityFrom;
130
- }
131
- if (entity2 == entityTo) { //if reach the destination
132
- nextStep = [];
133
- return true;
134
- }
135
- //if destination is not reached yet we add current node (entity2) to the path and proceed
136
- if (path.indexOf(entity2) < 0 && passedEntities.indexOf(entity2) < 0) { //to prevent cycling
137
- passedEntities.push(entity2);
138
- var newPath = new Array();
139
- newPath = newPath.concat(path);
140
- newPath.push(entity2);
141
- nextStep.push(newPath);
142
- }
143
- }
144
- return false;
145
- };
146
- DataModelEx.prototype.createQuery = function () {
147
- return new QueryEx(this);
148
- };
149
- return DataModelEx;
150
- }(DataModel));
151
- export { DataModelEx };
152
- //# sourceMappingURL=model_ex.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"model_ex.js","sourceRoot":"","sources":["../../../src/dm/model_ex.ts"],"names":[],"mappings":"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"}
@@ -1,26 +0,0 @@
1
- declare module '@easyquery/core/dist/lib/main/context' {
2
- interface EqContext {
3
- /**
4
- * Sets the endpoint for getting the license key.
5
- * @deprecated This method is deprecated and will be ignored. Starting version 7.0.0
6
- * endpoint set for EasyQuery actions will be used via adding '.lck'
7
- */
8
- setLicenseKeyEndpoint(this: EqContext, endpoint: string): void;
9
- /**
10
- * Extension method that activates `Enterprise` functionality
11
- * @param keyOrInitCallback The license key or a callback wich is called after
12
- * loading the license key from the back-end.
13
- * If the callback function is called useEnterprise will try to get the license key from {base}/lck endpoint
14
- *
15
- * @example
16
- * context.useEnterprise('license key')
17
- * //or
18
- * context.useEnterprise(() => {
19
- * //further logic
20
- * view.init(options);
21
- * });
22
- */
23
- useEnterprise(this: EqContext, keyOrInitCallback: string | (() => void)): void;
24
- }
25
- }
26
- export {};