autoql-fe-utils 1.7.0 → 1.7.2

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/index.mjs CHANGED
@@ -1185,6 +1185,29 @@ var Operators = /* @__PURE__ */ ((Operators2) => {
1185
1185
  Operators2["DIVISION"] = "DIVISION";
1186
1186
  return Operators2;
1187
1187
  })(Operators || {});
1188
+ var CustomColumnValues = /* @__PURE__ */ ((CustomColumnValues2) => {
1189
+ CustomColumnValues2["LEFT_BRACKET"] = "LEFT_BRACKET";
1190
+ CustomColumnValues2["RIGHT_BRACKET"] = "RIGHT_BRACKET";
1191
+ CustomColumnValues2["PERCENT_TOTAL"] = "PERCENT_TOTAL";
1192
+ CustomColumnValues2["RANK"] = "RANK";
1193
+ CustomColumnValues2["MOVING_AVG"] = "MOVING_AVG";
1194
+ CustomColumnValues2["FUNCTION"] = "FUNCTION";
1195
+ return CustomColumnValues2;
1196
+ })(CustomColumnValues || {});
1197
+ var CustomColumnTypes = /* @__PURE__ */ ((CustomColumnTypes2) => {
1198
+ CustomColumnTypes2["COLUMN"] = "column";
1199
+ CustomColumnTypes2["NUMBER"] = "number";
1200
+ CustomColumnTypes2["OPERATOR"] = "operator";
1201
+ CustomColumnTypes2["CURRENCY"] = "currency";
1202
+ CustomColumnTypes2["FUNCTION"] = "function";
1203
+ CustomColumnTypes2["SUM"] = "sum";
1204
+ return CustomColumnTypes2;
1205
+ })(CustomColumnTypes || {});
1206
+ var CustomColumnRowRangeTypes = /* @__PURE__ */ ((CustomColumnRowRangeTypes2) => {
1207
+ CustomColumnRowRangeTypes2["PRECEEDING"] = "PRECEDING";
1208
+ CustomColumnRowRangeTypes2["FOLLOWING"] = "FOLLOWING";
1209
+ return CustomColumnRowRangeTypes2;
1210
+ })(CustomColumnRowRangeTypes || {});
1188
1211
  var GeneralErrorTypes = /* @__PURE__ */ ((GeneralErrorTypes2) => {
1189
1212
  GeneralErrorTypes2["UNAUTHORIZED"] = "UNAUTHORIZED";
1190
1213
  GeneralErrorTypes2["NO_PROJECT_ID_SUPPLIED"] = "No project id supplied";
@@ -5919,7 +5942,7 @@ var formatFiltersForAPI = (params, columns) => {
5919
5942
  const formatted = formatNumberFilterValue(filter.value);
5920
5943
  filterObj.operator = formatted.operator;
5921
5944
  filterObj.value = formatted.value;
5922
- } else if ((column == null ? void 0 : column.type) === "DATE") {
5945
+ } else if ((column == null ? void 0 : column.type) === "DATE" /* DATE */) {
5923
5946
  const dates = filter.value.split(" to ");
5924
5947
  const precision = getPrecisionForDayJS(column.precision);
5925
5948
  const startDate = dayjsWithPlugins_default.utc(dates[0]).startOf(precision).toISOString();
@@ -6181,7 +6204,7 @@ var formatAdditionalSelectColumn = (column, sqlFn) => {
6181
6204
  // src/HelperFns/customColumnHelpers.ts
6182
6205
  import _cloneDeep4 from "lodash.clonedeep";
6183
6206
  var GLOBAL_OPERATORS = ["LEFT_BRACKET", "RIGHT_BRACKET"];
6184
- var FUNCTION_OPERATORS = ["PERCENT_TOTAL", "RANK", "FUNCTION"];
6207
+ var FUNCTION_OPERATORS = ["PERCENT_TOTAL", "RANK", "MOVING_AVG", "FUNCTION"];
6185
6208
  var HIGHLIGHTED_CLASS = "highlighted-column";
6186
6209
  var DISABLED_CLASS = "disabled-column";
6187
6210
  var FORMULA_CLASS = "formula-column";
@@ -6468,16 +6491,18 @@ var convertToFunctionStr = (origColumnFnArray) => {
6468
6491
  var _a, _b;
6469
6492
  try {
6470
6493
  let columnFnStr = "";
6471
- const numRightBrackets = (_a = origColumnFnArray.filter((chunk) => chunk.value === "RIGHT_BRACKET")) == null ? void 0 : _a.length;
6472
- const numLeftBrackets = (_b = origColumnFnArray.filter((chunk) => chunk.value === "LEFT_BRACKET")) == null ? void 0 : _b.length;
6494
+ const numRightBrackets = (_a = origColumnFnArray.filter(
6495
+ (chunk) => chunk.value === "RIGHT_BRACKET" /* RIGHT_BRACKET */
6496
+ )) == null ? void 0 : _a.length;
6497
+ const numLeftBrackets = (_b = origColumnFnArray.filter((chunk) => chunk.value === "LEFT_BRACKET" /* LEFT_BRACKET */)) == null ? void 0 : _b.length;
6473
6498
  if (numRightBrackets !== numLeftBrackets) {
6474
6499
  throw new ChataError("Syntax Error: Formula contains unclosed brackets");
6475
6500
  }
6476
6501
  origColumnFnArray.forEach((chunk, i) => {
6477
6502
  var _a2, _b2, _c;
6478
- if (chunk.type === "operator") {
6503
+ if (chunk.type === "operator" /* OPERATOR */) {
6479
6504
  if (i === origColumnFnArray.length - 1) {
6480
- if (chunk.value !== "RIGHT_BRACKET") {
6505
+ if (chunk.value !== "RIGHT_BRACKET" /* RIGHT_BRACKET */) {
6481
6506
  throw new ChataError("Syntax Error: Formula can't end with an operator");
6482
6507
  }
6483
6508
  }
@@ -6487,7 +6512,7 @@ var convertToFunctionStr = (origColumnFnArray) => {
6487
6512
  throw new ChataError("Syntax Error: Number input is empty");
6488
6513
  }
6489
6514
  columnFnStr = columnFnStr + " " + chunk.value;
6490
- } else if (chunk.type === "column" && (chunk == null ? void 0 : chunk.column)) {
6515
+ } else if (chunk.type === "column" /* COLUMN */ && (chunk == null ? void 0 : chunk.column)) {
6491
6516
  columnFnStr = columnFnStr + " row[" + ((_c = chunk == null ? void 0 : chunk.column) == null ? void 0 : _c.index) + "]";
6492
6517
  }
6493
6518
  });
@@ -6524,11 +6549,11 @@ var getFnSummary = (columnFnArray) => {
6524
6549
  let fnSummary = "";
6525
6550
  columnFnArray.forEach((chunk, i) => {
6526
6551
  var _a, _b;
6527
- if (chunk.type === "operator") {
6552
+ if (chunk.type === "operator" /* OPERATOR */) {
6528
6553
  fnSummary = `${fnSummary} ${(_a = OPERATORS[chunk.value]) == null ? void 0 : _a.js}`;
6529
- } else if (chunk.type === "number") {
6554
+ } else if (chunk.type === "number" /* NUMBER */) {
6530
6555
  fnSummary = `${fnSummary} ${chunk.value}`;
6531
- } else if (chunk.type === "column" && (chunk == null ? void 0 : chunk.column)) {
6556
+ } else if (chunk.type === "column" /* COLUMN */ && (chunk == null ? void 0 : chunk.column)) {
6532
6557
  fnSummary = `${fnSummary} ${(_b = chunk.column) == null ? void 0 : _b.display_name}`;
6533
6558
  }
6534
6559
  });
@@ -6547,6 +6572,9 @@ var getNumericalColumns = (columns) => {
6547
6572
  var getStringColumns = (columns) => {
6548
6573
  return getVisibleColumns(columns).filter((col) => isColumnStringType(col));
6549
6574
  };
6575
+ var getDateColumns = (columns) => {
6576
+ return getVisibleColumns(columns).filter((col) => isColumnDateType(col));
6577
+ };
6550
6578
  var getCleanColumnName = (colName) => {
6551
6579
  var _a;
6552
6580
  return (_a = colName.replace(/\b(sum|avg|min|max|count|distinct|stddev)\b\(([^()]+)\)/g, "$2")) == null ? void 0 : _a.trim();
@@ -6798,7 +6826,7 @@ var constructFilter = ({ column, value }) => {
6798
6826
  if (formattedValue === null) {
6799
6827
  formattedValue = "NULL";
6800
6828
  operator = "is";
6801
- } else if ((column == null ? void 0 : column.type) === "DATE") {
6829
+ } else if ((column == null ? void 0 : column.type) === "DATE" /* DATE */) {
6802
6830
  const isoDate = getDayJSObj({ value, column });
6803
6831
  const precision = getPrecisionForDayJS(column.precision);
6804
6832
  const isoDateStart = isoDate.startOf(precision).toISOString();
@@ -11548,6 +11576,9 @@ export {
11548
11576
  Column as ColumnObj,
11549
11577
  ColumnType,
11550
11578
  ColumnTypes,
11579
+ CustomColumnRowRangeTypes,
11580
+ CustomColumnTypes,
11581
+ CustomColumnValues,
11551
11582
  DATA_ALERT_CONDITION_TYPES,
11552
11583
  DATA_ALERT_ENABLED_STATUSES,
11553
11584
  DATA_ALERT_FREQUENCY_TYPE_OPTIONS,
@@ -11761,6 +11792,7 @@ export {
11761
11792
  getDataConfig,
11762
11793
  getDataFormatting,
11763
11794
  getDateColumnIndex,
11795
+ getDateColumns,
11764
11796
  getDateRangeIntersection,
11765
11797
  getDateRangesFromInterpretation,
11766
11798
  getDatesFromRT,