@forestadmin/forestadmin-client 1.0.0-alpha.4 → 1.0.0-alpha.5

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.
@@ -1,7 +1,7 @@
1
1
  import type { ChartHandlerInterface } from '../types';
2
2
  import type { RequestContextVariables } from '../utils/context-variables';
3
3
  import type ContextVariablesInstantiator from '../utils/context-variables-instantiator';
4
- import { Chart } from './types';
4
+ import type { Chart, QueryChart } from './types';
5
5
  export declare type ChartRequest<C extends Chart = Chart> = C & {
6
6
  contextVariables?: RequestContextVariables;
7
7
  };
@@ -13,5 +13,13 @@ export default class ChartHandlerService implements ChartHandlerInterface {
13
13
  renderingId: string | number;
14
14
  chartRequest: ChartRequest;
15
15
  }): Promise<Chart>;
16
+ getQueryForChart({ userId, renderingId, chartRequest, }: {
17
+ userId: string | number;
18
+ renderingId: string | number;
19
+ chartRequest: ChartRequest<QueryChart>;
20
+ }): Promise<{
21
+ query: string;
22
+ contextVariables: Record<string, unknown>;
23
+ }>;
16
24
  }
17
25
  //# sourceMappingURL=chart-handler.d.ts.map
@@ -34,6 +34,24 @@ class ChartHandlerService {
34
34
  }
35
35
  return chart;
36
36
  }
37
+ async getQueryForChart({ userId, renderingId, chartRequest, }) {
38
+ const contextVariables = await this.contextVariablesInstantiator.buildContextVariables({
39
+ userId,
40
+ renderingId,
41
+ requestContextVariables: chartRequest.contextVariables,
42
+ });
43
+ const contextVariablesUsed = {};
44
+ const replaceContextVariable = (contextVariableName) => {
45
+ const contextVariableRenamed = contextVariableName.replace(/\./g, '_');
46
+ contextVariablesUsed[contextVariableRenamed] = contextVariables.getValue(contextVariableName);
47
+ return `$${contextVariableRenamed}`;
48
+ };
49
+ const query = context_variables_injector_1.default.injectContextInValueCustom(chartRequest.query, replaceContextVariable);
50
+ return {
51
+ query,
52
+ contextVariables: contextVariablesUsed,
53
+ };
54
+ }
37
55
  }
38
56
  exports.default = ChartHandlerService;
39
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2hhcnQtaGFuZGxlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9jaGFydHMvY2hhcnQtaGFuZGxlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7OztBQUlBLDZFQUFvRDtBQUNwRCxxR0FBMkU7QUFPM0UsTUFBcUIsbUJBQW1CO0lBQ3RDLFlBQTZCLDRCQUEwRDtRQUExRCxpQ0FBNEIsR0FBNUIsNEJBQTRCLENBQThCO0lBQUcsQ0FBQztJQUVwRixLQUFLLENBQUMsMkJBQTJCLENBQUMsRUFDdkMsTUFBTSxFQUNOLFdBQVcsRUFDWCxZQUFZLEdBS2I7UUFDQyxNQUFNLGdCQUFnQixHQUFHLE1BQU0sSUFBSSxDQUFDLDRCQUE0QixDQUFDLHFCQUFxQixDQUFDO1lBQ3JGLE1BQU07WUFDTixXQUFXO1lBQ1gsdUJBQXVCLEVBQUUsWUFBWSxDQUFDLGdCQUFnQjtTQUN2RCxDQUFDLENBQUM7UUFFSCxNQUFNLEtBQUssR0FBRyxFQUFFLEdBQUcsWUFBWSxFQUFFLENBQUM7UUFDbEMsT0FBTyxLQUFLLENBQUMsZ0JBQWdCLENBQUM7UUFFOUIsSUFBSSx3QkFBYSxDQUFDLGlCQUFpQixDQUFDLEtBQUssQ0FBQyxFQUFFO1lBQzFDLEtBQUssQ0FBQyxNQUFNLEdBQUcsb0NBQXdCLENBQUMscUJBQXFCLENBQUMsS0FBSyxDQUFDLE1BQU0sRUFBRSxnQkFBZ0IsQ0FBQyxDQUFDO1NBQy9GO1FBRUQsSUFBSSx3QkFBYSxDQUFDLGlCQUFpQixDQUFDLEtBQUssQ0FBQyxFQUFFO1lBQzFDLEtBQUssQ0FBQyxVQUFVLEdBQUcsb0NBQXdCLENBQUMsb0JBQW9CLENBQzlELEtBQUssQ0FBQyxVQUFVLEVBQ2hCLGdCQUFnQixDQUNqQixDQUFDO1NBQ0g7UUFFRCxJQUFJLHdCQUFhLENBQUMsV0FBVyxDQUFDLEtBQUssQ0FBQyxFQUFFO1lBQ3BDLEtBQUssQ0FBQyxTQUFTLEdBQUcsb0NBQXdCLENBQUMsb0JBQW9CLENBQzdELEtBQUssQ0FBQyxTQUFTLEVBQ2YsZ0JBQWdCLENBQ2pCLENBQUM7U0FDSDtRQUVELElBQUksd0JBQWEsQ0FBQyxnQkFBZ0IsQ0FBQyxLQUFLLENBQUMsRUFBRTtZQUN6QyxLQUFLLENBQUMsU0FBUyxHQUFHLE1BQU0sQ0FDdEIsb0NBQXdCLENBQUMsb0JBQW9CLENBQUMsS0FBSyxDQUFDLFNBQVMsRUFBRSxnQkFBZ0IsQ0FBQyxDQUNqRixDQUFDO1NBQ0g7UUFFRCxJQUFJLHdCQUFhLENBQUMsa0JBQWtCLENBQUMsS0FBSyxDQUFDLEVBQUU7WUFDM0MsS0FBSyxDQUFDLEtBQUssR0FBRyxNQUFNLENBQ2xCLG9DQUF3QixDQUFDLG9CQUFvQixDQUFDLEtBQUssQ0FBQyxLQUFLLEVBQUUsZ0JBQWdCLENBQUMsQ0FDN0UsQ0FBQztTQUNIO1FBRUQsT0FBTyxLQUFLLENBQUM7SUFDZixDQUFDO0NBQ0Y7QUFyREQsc0NBcURDIn0=
57
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2hhcnQtaGFuZGxlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9jaGFydHMvY2hhcnQtaGFuZGxlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7OztBQUtBLDZFQUFvRDtBQUNwRCxxR0FBMkU7QUFNM0UsTUFBcUIsbUJBQW1CO0lBQ3RDLFlBQTZCLDRCQUEwRDtRQUExRCxpQ0FBNEIsR0FBNUIsNEJBQTRCLENBQThCO0lBQUcsQ0FBQztJQUVwRixLQUFLLENBQUMsMkJBQTJCLENBQUMsRUFDdkMsTUFBTSxFQUNOLFdBQVcsRUFDWCxZQUFZLEdBS2I7UUFDQyxNQUFNLGdCQUFnQixHQUFHLE1BQU0sSUFBSSxDQUFDLDRCQUE0QixDQUFDLHFCQUFxQixDQUFDO1lBQ3JGLE1BQU07WUFDTixXQUFXO1lBQ1gsdUJBQXVCLEVBQUUsWUFBWSxDQUFDLGdCQUFnQjtTQUN2RCxDQUFDLENBQUM7UUFFSCxNQUFNLEtBQUssR0FBRyxFQUFFLEdBQUcsWUFBWSxFQUFFLENBQUM7UUFDbEMsT0FBTyxLQUFLLENBQUMsZ0JBQWdCLENBQUM7UUFFOUIsSUFBSSx3QkFBYSxDQUFDLGlCQUFpQixDQUFDLEtBQUssQ0FBQyxFQUFFO1lBQzFDLEtBQUssQ0FBQyxNQUFNLEdBQUcsb0NBQXdCLENBQUMscUJBQXFCLENBQUMsS0FBSyxDQUFDLE1BQU0sRUFBRSxnQkFBZ0IsQ0FBQyxDQUFDO1NBQy9GO1FBRUQsSUFBSSx3QkFBYSxDQUFDLGlCQUFpQixDQUFDLEtBQUssQ0FBQyxFQUFFO1lBQzFDLEtBQUssQ0FBQyxVQUFVLEdBQUcsb0NBQXdCLENBQUMsb0JBQW9CLENBQzlELEtBQUssQ0FBQyxVQUFVLEVBQ2hCLGdCQUFnQixDQUNqQixDQUFDO1NBQ0g7UUFFRCxJQUFJLHdCQUFhLENBQUMsV0FBVyxDQUFDLEtBQUssQ0FBQyxFQUFFO1lBQ3BDLEtBQUssQ0FBQyxTQUFTLEdBQUcsb0NBQXdCLENBQUMsb0JBQW9CLENBQzdELEtBQUssQ0FBQyxTQUFTLEVBQ2YsZ0JBQWdCLENBQ2pCLENBQUM7U0FDSDtRQUVELElBQUksd0JBQWEsQ0FBQyxnQkFBZ0IsQ0FBQyxLQUFLLENBQUMsRUFBRTtZQUN6QyxLQUFLLENBQUMsU0FBUyxHQUFHLE1BQU0sQ0FDdEIsb0NBQXdCLENBQUMsb0JBQW9CLENBQUMsS0FBSyxDQUFDLFNBQVMsRUFBRSxnQkFBZ0IsQ0FBQyxDQUNqRixDQUFDO1NBQ0g7UUFFRCxJQUFJLHdCQUFhLENBQUMsa0JBQWtCLENBQUMsS0FBSyxDQUFDLEVBQUU7WUFDM0MsS0FBSyxDQUFDLEtBQUssR0FBRyxNQUFNLENBQ2xCLG9DQUF3QixDQUFDLG9CQUFvQixDQUFDLEtBQUssQ0FBQyxLQUFLLEVBQUUsZ0JBQWdCLENBQUMsQ0FDN0UsQ0FBQztTQUNIO1FBRUQsT0FBTyxLQUFLLENBQUM7SUFDZixDQUFDO0lBRU0sS0FBSyxDQUFDLGdCQUFnQixDQUFDLEVBQzVCLE1BQU0sRUFDTixXQUFXLEVBQ1gsWUFBWSxHQUtiO1FBQ0MsTUFBTSxnQkFBZ0IsR0FBRyxNQUFNLElBQUksQ0FBQyw0QkFBNEIsQ0FBQyxxQkFBcUIsQ0FBQztZQUNyRixNQUFNO1lBQ04sV0FBVztZQUNYLHVCQUF1QixFQUFFLFlBQVksQ0FBQyxnQkFBZ0I7U0FDdkQsQ0FBQyxDQUFDO1FBQ0gsTUFBTSxvQkFBb0IsR0FBNEIsRUFBRSxDQUFDO1FBRXpELE1BQU0sc0JBQXNCLEdBQUcsQ0FBQyxtQkFBMkIsRUFBRSxFQUFFO1lBQzdELE1BQU0sc0JBQXNCLEdBQUcsbUJBQW1CLENBQUMsT0FBTyxDQUFDLEtBQUssRUFBRSxHQUFHLENBQUMsQ0FBQztZQUN2RSxvQkFBb0IsQ0FBQyxzQkFBc0IsQ0FBQyxHQUFHLGdCQUFnQixDQUFDLFFBQVEsQ0FBQyxtQkFBbUIsQ0FBQyxDQUFDO1lBRTlGLE9BQU8sSUFBSSxzQkFBc0IsRUFBRSxDQUFDO1FBQ3RDLENBQUMsQ0FBQztRQUVGLE1BQU0sS0FBSyxHQUFHLG9DQUF3QixDQUFDLDBCQUEwQixDQUMvRCxZQUFZLENBQUMsS0FBSyxFQUNsQixzQkFBc0IsQ0FDdkIsQ0FBQztRQUVGLE9BQU87WUFDTCxLQUFLO1lBQ0wsZ0JBQWdCLEVBQUUsb0JBQW9CO1NBQ3ZDLENBQUM7SUFDSixDQUFDO0NBQ0Y7QUF2RkQsc0NBdUZDIn0=
@@ -18,7 +18,7 @@ class RenderingPermissionService {
18
18
  this.permissionsByRendering = new lru_cache_1.default({
19
19
  max: 256,
20
20
  ttl: this.options.permissionsCacheDurationInSeconds * 1000,
21
- fetchMethod: renderingId => this.loadPermissions(renderingId),
21
+ fetchMethod: renderingId => this.loadPermissions(Number(renderingId)),
22
22
  });
23
23
  }
24
24
  async getScope({ renderingId, collectionName, userId, }) {
@@ -126,4 +126,4 @@ class RenderingPermissionService {
126
126
  }
127
127
  }
128
128
  exports.default = RenderingPermissionService;
129
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVuZGVyaW5nLXBlcm1pc3Npb24uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvcGVybWlzc2lvbnMvcmVuZGVyaW5nLXBlcm1pc3Npb24udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7QUFFQSwwREFBaUM7QUFJakMsbUZBQTBEO0FBQzFELHFHQUEyRTtBQUMzRSx3RUFBOEM7QUFDOUMsNkNBQWtFO0FBQ2xFLGdHQUFrRTtBQUNsRSxtQ0FBbUc7QUFFbkcsMEVBQWdEO0FBUWhELE1BQXFCLDBCQUEwQjtJQUc3QyxZQUNtQixPQUE2QyxFQUM3QyxlQUFzQztRQUR0QyxZQUFPLEdBQVAsT0FBTyxDQUFzQztRQUM3QyxvQkFBZSxHQUFmLGVBQWUsQ0FBdUI7UUFFdkQsSUFBSSxDQUFDLHNCQUFzQixHQUFHLElBQUksbUJBQVEsQ0FBQztZQUN6QyxHQUFHLEVBQUUsR0FBRztZQUNSLEdBQUcsRUFBRSxJQUFJLENBQUMsT0FBTyxDQUFDLGlDQUFpQyxHQUFHLElBQUk7WUFDMUQsV0FBVyxFQUFFLFdBQVcsQ0FBQyxFQUFFLENBQUMsSUFBSSxDQUFDLGVBQWUsQ0FBQyxXQUFXLENBQUM7U0FDOUQsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVNLEtBQUssQ0FBQyxRQUFRLENBQUMsRUFDcEIsV0FBVyxFQUNYLGNBQWMsRUFDZCxNQUFNLEdBS1A7UUFDQyxPQUFPLElBQUksQ0FBQyxlQUFlLENBQUMsRUFBRSxXQUFXLEVBQUUsY0FBYyxFQUFFLE1BQU0sRUFBRSxVQUFVLEVBQUUsSUFBSSxFQUFFLENBQUMsQ0FBQztJQUN6RixDQUFDO0lBRU8sS0FBSyxDQUFDLGVBQWUsQ0FBQyxFQUM1QixXQUFXLEVBQ1gsY0FBYyxFQUNkLE1BQU0sRUFDTixVQUFVLEdBTVg7UUFDQyxNQUFNLENBQUMsV0FBVyxFQUFFLFFBQVEsQ0FBQyxHQUE0QyxNQUFNLE9BQU8sQ0FBQyxHQUFHLENBQUM7WUFDekYsSUFBSSxDQUFDLHNCQUFzQixDQUFDLEtB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
129
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVuZGVyaW5nLXBlcm1pc3Npb24uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvcGVybWlzc2lvbnMvcmVuZGVyaW5nLXBlcm1pc3Npb24udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7QUFFQSwwREFBaUM7QUFJakMsbUZBQTBEO0FBQzFELHFHQUEyRTtBQUMzRSx3RUFBOEM7QUFDOUMsNkNBQWtFO0FBQ2xFLGdHQUFrRTtBQUNsRSxtQ0FBbUc7QUFFbkcsMEVBQWdEO0FBUWhELE1BQXFCLDBCQUEwQjtJQUc3QyxZQUNtQixPQUE2QyxFQUM3QyxlQUFzQztRQUR0QyxZQUFPLEdBQVAsT0FBTyxDQUFzQztRQUM3QyxvQkFBZSxHQUFmLGVBQWUsQ0FBdUI7UUFFdkQsSUFBSSxDQUFDLHNCQUFzQixHQUFHLElBQUksbUJBQVEsQ0FBQztZQUN6QyxHQUFHLEVBQUUsR0FBRztZQUNSLEdBQUcsRUFBRSxJQUFJLENBQUMsT0FBTyxDQUFDLGlDQUFpQyxHQUFHLElBQUk7WUFDMUQsV0FBVyxFQUFFLFdBQVcsQ0FBQyxFQUFFLENBQUMsSUFBSSxDQUFDLGVBQWUsQ0FBQyxNQUFNLENBQUMsV0FBVyxDQUFDLENBQUM7U0FDdEUsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVNLEtBQUssQ0FBQyxRQUFRLENBQUMsRUFDcEIsV0FBVyxFQUNYLGNBQWMsRUFDZCxNQUFNLEdBS1A7UUFDQyxPQUFPLElBQUksQ0FBQyxlQUFlLENBQUMsRUFBRSxXQUFXLEVBQUUsY0FBYyxFQUFFLE1BQU0sRUFBRSxVQUFVLEVBQUUsSUFBSSxFQUFFLENBQUMsQ0FBQztJQUN6RixDQUFDO0lBRU8sS0FBSyxDQUFDLGVBQWUsQ0FBQyxFQUM1QixXQUFXLEVBQ1gsY0FBYyxFQUNkLE1BQU0sRUFDTixVQUFVLEdBTVg7UUFDQyxNQUFNLENBQUMsV0FBVyxFQUFFLFFBQVEsQ0FBQyxHQUE0QyxNQUFNLE9BQU8sQ0FBQyxHQUFHLENBQUM7WUFDekYsSUFBSSxDQUFD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
@@ -8,16 +8,18 @@ const empty_sql_query_error_1 = __importDefault(require("./errors/empty-sql-quer
8
8
  const non_select_sql_query_error_1 = __importDefault(require("./errors/non-select-sql-query-error"));
9
9
  const QUERY_SELECT = /^SELECT\s[^]*FROM\s[^]*$/i;
10
10
  function verifySQLQuery(inputQuery) {
11
- if (!inputQuery?.trim()) {
11
+ const inputQueryTrimmed = inputQuery?.trim();
12
+ if (!inputQueryTrimmed) {
12
13
  throw new empty_sql_query_error_1.default();
13
14
  }
14
- if (inputQuery.includes(';') && inputQuery.indexOf(';') < inputQuery.length - 1) {
15
+ if (inputQueryTrimmed.includes(';') &&
16
+ inputQueryTrimmed.indexOf(';') < inputQueryTrimmed.length - 1) {
15
17
  throw new chained_sql_query_error_1.default();
16
18
  }
17
- if (!QUERY_SELECT.test(inputQuery)) {
19
+ if (!QUERY_SELECT.test(inputQueryTrimmed)) {
18
20
  throw new non_select_sql_query_error_1.default();
19
21
  }
20
22
  return true;
21
23
  }
22
24
  exports.default = verifySQLQuery;
23
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmVyaWZ5LXNxbC1xdWVyeS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9wZXJtaXNzaW9ucy92ZXJpZnktc3FsLXF1ZXJ5LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7O0FBQUEsK0ZBQW9FO0FBQ3BFLDJGQUFnRTtBQUNoRSxxR0FBeUU7QUFFekUsTUFBTSxZQUFZLEdBQUcsMkJBQTJCLENBQUM7QUFFakQsU0FBd0IsY0FBYyxDQUFDLFVBQXlCO0lBQzlELElBQUksQ0FBQyxVQUFVLEVBQUUsSUFBSSxFQUFFLEVBQUU7UUFDdkIsTUFBTSxJQUFJLCtCQUFrQixFQUFFLENBQUM7S0FDaEM7SUFFRCxJQUFJLFVBQVUsQ0FBQyxRQUFRLENBQUMsR0FBRyxDQUFDLElBQUksVUFBVSxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUMsR0FBRyxVQUFVLENBQUMsTUFBTSxHQUFHLENBQUMsRUFBRTtRQUMvRSxNQUFNLElBQUksaUNBQW9CLEVBQUUsQ0FBQztLQUNsQztJQUVELElBQUksQ0FBQyxZQUFZLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxFQUFFO1FBQ2xDLE1BQU0sSUFBSSxvQ0FBc0IsRUFBRSxDQUFDO0tBQ3BDO0lBRUQsT0FBTyxJQUFJLENBQUM7QUFDZCxDQUFDO0FBZEQsaUNBY0MifQ==
25
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmVyaWZ5LXNxbC1xdWVyeS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9wZXJtaXNzaW9ucy92ZXJpZnktc3FsLXF1ZXJ5LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7O0FBQUEsK0ZBQW9FO0FBQ3BFLDJGQUFnRTtBQUNoRSxxR0FBeUU7QUFFekUsTUFBTSxZQUFZLEdBQUcsMkJBQTJCLENBQUM7QUFFakQsU0FBd0IsY0FBYyxDQUFDLFVBQXlCO0lBQzlELE1BQU0saUJBQWlCLEdBQUcsVUFBVSxFQUFFLElBQUksRUFBRSxDQUFDO0lBRTdDLElBQUksQ0FBQyxpQkFBaUIsRUFBRTtRQUN0QixNQUFNLElBQUksK0JBQWtCLEVBQUUsQ0FBQztLQUNoQztJQUVELElBQ0UsaUJBQWlCLENBQUMsUUFBUSxDQUFDLEdBQUcsQ0FBQztRQUMvQixpQkFBaUIsQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDLEdBQUcsaUJBQWlCLENBQUMsTUFBTSxHQUFHLENBQUMsRUFDN0Q7UUFDQSxNQUFNLElBQUksaUNBQW9CLEVBQUUsQ0FBQztLQUNsQztJQUVELElBQUksQ0FBQyxZQUFZLENBQUMsSUFBSSxDQUFDLGlCQUFpQixDQUFDLEVBQUU7UUFDekMsTUFBTSxJQUFJLG9DQUFzQixFQUFFLENBQUM7S0FDcEM7SUFFRCxPQUFPLElBQUksQ0FBQztBQUNkLENBQUM7QUFuQkQsaUNBbUJDIn0=
package/dist/types.d.ts CHANGED
@@ -1,5 +1,5 @@
1
1
  import type { ChartRequest } from './charts/chart-handler';
2
- import type { Chart } from './charts/types';
2
+ import type { Chart, QueryChart } from './charts/types';
3
3
  import type { CollectionActionEvent } from './permissions/types';
4
4
  import type { GenericTree } from '@forestadmin/datasource-toolkit';
5
5
  import ContextVariables, { RequestContextVariables } from './utils/context-variables';
@@ -64,6 +64,14 @@ export interface ChartHandlerInterface {
64
64
  renderingId: string | number;
65
65
  chartRequest: ChartRequest;
66
66
  }): Promise<Chart>;
67
+ getQueryForChart(params: {
68
+ userId: string | number;
69
+ renderingId: string | number;
70
+ chartRequest: ChartRequest<QueryChart>;
71
+ }): Promise<{
72
+ query: string;
73
+ contextVariables: Record<string, unknown>;
74
+ }>;
67
75
  }
68
76
  export interface ContextVariablesInstantiatorInterface {
69
77
  buildContextVariables(params: {
@@ -2,6 +2,7 @@ import type { PlainConditionTreeBranch, PlainConditionTreeLeaf } from '@forestad
2
2
  import ContextVariables from './context-variables';
3
3
  export default class ContextVariablesInjector {
4
4
  private static isPlainConditionTreeBranch;
5
+ static injectContextInValueCustom<ValueType>(value: ValueType, replaceFunction: (contextVariableName: string) => string): ValueType;
5
6
  static injectContextInValue<ValueType>(value: ValueType, contextVariables: ContextVariables): ValueType;
6
7
  static injectContextInFilter<PlainConditionTree extends PlainConditionTreeBranch | PlainConditionTreeLeaf | null>(filter: PlainConditionTree, contextVariables: ContextVariables): PlainConditionTree;
7
8
  }
@@ -4,21 +4,27 @@ class ContextVariablesInjector {
4
4
  static isPlainConditionTreeBranch(filter) {
5
5
  return 'aggregator' in filter;
6
6
  }
7
- static injectContextInValue(value, contextVariables) {
7
+ static injectContextInValueCustom(value, replaceFunction) {
8
8
  if (typeof value !== 'string') {
9
9
  return value;
10
10
  }
11
11
  let valueWithContextVariablesInjected = value;
12
12
  const regex = /{{([^}]+)}}/g;
13
13
  let match = regex.exec(value);
14
+ const encounteredVariables = [];
14
15
  while (match) {
15
16
  const contextVariableKey = match[1];
16
- const contextValue = contextVariables.getValue(contextVariableKey);
17
- valueWithContextVariablesInjected = valueWithContextVariablesInjected.replace(new RegExp(`{{${contextVariableKey}}}`, 'g'), String(contextValue));
17
+ if (!encounteredVariables.includes(contextVariableKey)) {
18
+ valueWithContextVariablesInjected = valueWithContextVariablesInjected.replace(new RegExp(`{{${contextVariableKey}}}`, 'g'), replaceFunction(contextVariableKey));
19
+ }
20
+ encounteredVariables.push(contextVariableKey);
18
21
  match = regex.exec(value);
19
22
  }
20
23
  return valueWithContextVariablesInjected;
21
24
  }
25
+ static injectContextInValue(value, contextVariables) {
26
+ return this.injectContextInValueCustom(value, contextVariableKey => String(contextVariables.getValue(contextVariableKey)));
27
+ }
22
28
  static injectContextInFilter(filter, contextVariables) {
23
29
  if (!filter) {
24
30
  return null;
@@ -38,4 +44,4 @@ class ContextVariablesInjector {
38
44
  }
39
45
  }
40
46
  exports.default = ContextVariablesInjector;
41
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29udGV4dC12YXJpYWJsZXMtaW5qZWN0b3IuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvdXRpbHMvY29udGV4dC12YXJpYWJsZXMtaW5qZWN0b3IudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7QUFPQSxNQUFxQix3QkFBd0I7SUFDbkMsTUFBTSxDQUFDLDBCQUEwQixDQUN2QyxNQUF5RDtRQUV6RCxPQUFPLFlBQVksSUFBSSxNQUFNLENBQUM7SUFDaEMsQ0FBQztJQUVNLE1BQU0sQ0FBQyxvQkFBb0IsQ0FDaEMsS0FBZ0IsRUFDaEIsZ0JBQWtDO1FBRWxDLElBQUksT0FBTyxLQUFLLEtBQUssUUFBUSxFQUFFO1lBQzdCLE9BQU8sS0FBSyxDQUFDO1NBQ2Q7UUFFRCxJQUFJLGlDQUFpQyxHQUFXLEtBQUssQ0FBQztRQUN0RCxNQUFNLEtBQUssR0FBRyxjQUFjLENBQUM7UUFDN0IsSUFBSSxLQUFLLEdBQUcsS0FBSyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUU5QixPQUFPLEtBQUssRUFBRTtZQUNaLE1BQU0sa0JBQWtCLEdBQUcsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDO1lBQ3BDLE1BQU0sWUFBWSxHQUFHLGdCQUFnQixDQUFDLFFBQVEsQ0FBQyxrQkFBa0IsQ0FBQyxDQUFDO1lBRW5FLGlDQUFpQyxHQUFHLGlDQUFpQyxDQUFDLE9BQU8sQ0FDM0UsSUFBSSxNQUFNLENBQUMsS0FBSyxrQkFBa0IsSUFBSSxFQUFFLEdBQUcsQ0FBQyxFQUM1QyxNQUFNLENBQUMsWUFBWSxDQUFDLENBQ3JCLENBQUM7WUFDRixLQUFLLEdBQUcsS0FBSyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztTQUMzQjtRQUVELE9BQU8saUNBQXlELENBQUM7SUFDbkUsQ0FBQztJQUVNLE1BQU0sQ0FBQyxxQkFBcUIsQ0FFakMsTUFBMEIsRUFBRSxnQkFBa0M7UUFDOUQsSUFBSSxDQUFDLE1BQU0sRUFBRTtZQUNYLE9BQU8sSUFBSSxDQUFDO1NBQ2I7UUFFRCxJQUFJLHdCQUF3QixDQUFDLDBCQUEwQixDQUFDLE1BQU0sQ0FBQyxFQUFFO1lBQy9ELE9BQU87Z0JBQ0wsR0FBRyxNQUFNO2dCQUNULFVBQVUsRUFBRSxNQUFNLENBQUMsVUFBVSxDQUFDLEdBQUcsQ0FBQyxTQUFTLENBQUMsRUFBRTtvQkFDNUMsT0FBTyxJQUFJLENBQUMscUJBQXFCLENBQUMsU0FBUyxFQUFFLGdCQUFnQixDQUFDLENBQUM7Z0JBQ2pFLENBQUMsQ0FBQzthQUNILENBQUM7U0FDSDtRQUVELE9BQU87WUFDTCxHQUFHLE1BQU07WUFDVCxLQUFLLEVBQUUsSUFBSSxDQUFDLG9CQUFvQixDQUFDLE1BQU0sQ0FBQyxLQUFLLEVBQUUsZ0JBQWdCLENBQUM7U0FDakUsQ0FBQztJQUNKLENBQUM7Q0FDRjtBQXRERCwyQ0FzREMifQ==
47
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29udGV4dC12YXJpYWJsZXMtaW5qZWN0b3IuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvdXRpbHMvY29udGV4dC12YXJpYWJsZXMtaW5qZWN0b3IudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7QUFPQSxNQUFxQix3QkFBd0I7SUFDbkMsTUFBTSxDQUFDLDBCQUEwQixDQUN2QyxNQUF5RDtRQUV6RCxPQUFPLFlBQVksSUFBSSxNQUFNLENBQUM7SUFDaEMsQ0FBQztJQUVNLE1BQU0sQ0FBQywwQkFBMEIsQ0FDdEMsS0FBZ0IsRUFDaEIsZUFBd0Q7UUFFeEQsSUFBSSxPQUFPLEtBQUssS0FBSyxRQUFRLEVBQUU7WUFDN0IsT0FBTyxLQUFLLENBQUM7U0FDZDtRQUVELElBQUksaUNBQWlDLEdBQVcsS0FBSyxDQUFDO1FBQ3RELE1BQU0sS0FBSyxHQUFHLGNBQWMsQ0FBQztRQUM3QixJQUFJLEtBQUssR0FBRyxLQUFLLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQzlCLE1BQU0sb0JBQW9CLEdBQUcsRUFBRSxDQUFDO1FBRWhDLE9BQU8sS0FBSyxFQUFFO1lBQ1osTUFBTSxrQkFBa0IsR0FBRyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUM7WUFFcEMsSUFBSSxDQUFDLG9CQUFvQixDQUFDLFFBQVEsQ0FBQyxrQkFBa0IsQ0FBQyxFQUFFO2dCQUN0RCxpQ0FBaUMsR0FBRyxpQ0FBaUMsQ0FBQyxPQUFPLENBQzNFLElBQUksTUFBTSxDQUFDLEtBQUssa0JBQWtCLElBQUksRUFBRSxHQUFHLENBQUMsRUFDNUMsZUFBZSxDQUFDLGtCQUFrQixDQUFDLENBQ3BDLENBQUM7YUFDSDtZQUVELG9CQUFvQixDQUFDLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxDQUFDO1lBQzlDLEtBQUssR0FBRyxLQUFLLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO1NBQzNCO1FBRUQsT0FBTyxpQ0FBeUQsQ0FBQztJQUNuRSxDQUFDO0lBRU0sTUFBTSxDQUFDLG9CQUFvQixDQUNoQyxLQUFnQixFQUNoQixnQkFBa0M7UUFFbEMsT0FBTyxJQUFJLENBQUMsMEJBQTBCLENBQUMsS0FBSyxFQUFFLGtCQUFrQixDQUFDLEVBQUUsQ0FDakUsTUFBTSxDQUFDLGdCQUFnQixDQUFDLFFBQVEsQ0FBQyxrQkFBa0IsQ0FBQyxDQUFDLENBQ3RELENBQUM7SUFDSixDQUFDO0lBRU0sTUFBTSxDQUFDLHFCQUFxQixDQUVqQyxNQUEwQixFQUFFLGdCQUFrQztRQUM5RCxJQUFJLENBQUMsTUFBTSxFQUFFO1lBQ1gsT0FBTyxJQUFJLENBQUM7U0FDYjtRQUVELElBQUksd0JBQXdCLENBQUMsMEJBQTBCLENBQUMsTUFBTSxDQUFDLEVBQUU7WUFDL0QsT0FBTztnQkFDTCxHQUFHLE1BQU07Z0JBQ1QsVUFBVSxFQUFFLE1BQU0sQ0FBQyxVQUFVLENBQUMsR0FBRyxDQUFDLFNBQVMsQ0FBQyxFQUFFO29CQUM1QyxPQUFPLElBQUksQ0FBQyxxQkFBcUIsQ0FBQyxTQUFTLEVBQUUsZ0JBQWdCLENBQUMsQ0FBQztnQkFDakUsQ0FBQyxDQUFDO2FBQ0gsQ0FBQztTQUNIO1FBRUQsT0FBTztZQUNMLEdBQUcsTUFBTTtZQUNULEtBQUssRUFBRSxJQUFJLENBQUMsb0JBQW9CLENBQUMsTUFBTSxDQUFDLEtBQUssRUFBRSxnQkFBZ0IsQ0FBQztTQUNqRSxDQUFDO0lBQ0osQ0FBQztDQUNGO0FBbkVELDJDQW1FQyJ9
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@forestadmin/forestadmin-client",
3
- "version": "1.0.0-alpha.4",
3
+ "version": "1.0.0-alpha.5",
4
4
  "main": "dist/index.js",
5
5
  "license": "GPL-3.0",
6
6
  "publishConfig": {