@infomaximum/widget-sdk 4.0.0-beta1 → 4.0.0-beta3
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.d.ts +15 -10
- package/dist/index.esm.js +16 -2
- package/dist/index.js +16 -1
- package/package.json +1 -1
package/dist/index.d.ts
CHANGED
|
@@ -63,6 +63,12 @@ interface ICalculator<Input, Output> {
|
|
|
63
63
|
}
|
|
64
64
|
interface ICalculatorIndicatorInput {
|
|
65
65
|
alias: string;
|
|
66
|
+
/**
|
|
67
|
+
* Информация о типе данных:
|
|
68
|
+
* - Если тип не передан, не производится дополнительной обработки формулы.
|
|
69
|
+
* - Если передан тип "OTHER", формула дополнительно будет обернута в toString().
|
|
70
|
+
*/
|
|
71
|
+
dataType?: ESimpleDataType;
|
|
66
72
|
displayConditionFormula?: TNullable<string>;
|
|
67
73
|
}
|
|
68
74
|
interface ICalculatorIndicatorOutput {
|
|
@@ -369,13 +375,6 @@ interface IFormulaFilterValue {
|
|
|
369
375
|
}>;
|
|
370
376
|
}
|
|
371
377
|
|
|
372
|
-
interface IPlacement {
|
|
373
|
-
left: number;
|
|
374
|
-
top: number;
|
|
375
|
-
width: number;
|
|
376
|
-
height: number;
|
|
377
|
-
zIndex: number;
|
|
378
|
-
}
|
|
379
378
|
declare enum EWidgetFilterMode {
|
|
380
379
|
DEFAULT = "DEFAULT",
|
|
381
380
|
SINGLE = "SINGLE",
|
|
@@ -753,7 +752,6 @@ interface IBaseWidgetSettings {
|
|
|
753
752
|
filters?: (IFormulaFilterValue | string)[];
|
|
754
753
|
filterMode?: EWidgetFilterMode;
|
|
755
754
|
ignoreFilters?: boolean;
|
|
756
|
-
placement: IPlacement;
|
|
757
755
|
sorting?: IWidgetSortingIndicator[];
|
|
758
756
|
actions?: IWidgetAction[];
|
|
759
757
|
displayCondition?: TDisplayCondition;
|
|
@@ -1124,6 +1122,8 @@ declare function bindContentWithIndicator<Output extends ICalculatorIndicatorOut
|
|
|
1124
1122
|
*/
|
|
1125
1123
|
declare function bindContentsWithIndicators<Output extends ICalculatorIndicatorOutput, Indicator extends IWidgetIndicator>(outputs: Map<string, Output>, indicators: Indicator[]): TBoundedContentWithIndicator<Output, Indicator>[];
|
|
1126
1124
|
|
|
1125
|
+
declare const escapeSpecialCharacters: (formula: string) => string;
|
|
1126
|
+
|
|
1127
1127
|
interface ICalculatorFactory {
|
|
1128
1128
|
general: () => IGeneralCalculator;
|
|
1129
1129
|
pie: () => IPieCalculator;
|
|
@@ -1164,7 +1164,7 @@ interface IWidgetProps<WidgetSettings extends IBaseWidgetSettings = IBaseWidgetS
|
|
|
1164
1164
|
rootViewContainer: HTMLDivElement;
|
|
1165
1165
|
/** Объект для управления плейсхолдером */
|
|
1166
1166
|
placeholder: IWidgetPlaceholderController;
|
|
1167
|
-
/** Контекст
|
|
1167
|
+
/** Контекст виджетов */
|
|
1168
1168
|
widgetsContext: IWidgetsContext;
|
|
1169
1169
|
/** Вызывает модальное окно для запуска действия */
|
|
1170
1170
|
launchAction(params: {
|
|
@@ -1172,6 +1172,11 @@ interface IWidgetProps<WidgetSettings extends IBaseWidgetSettings = IBaseWidgetS
|
|
|
1172
1172
|
onSuccess: () => void;
|
|
1173
1173
|
filters: ICalculatorFilter[];
|
|
1174
1174
|
}): void;
|
|
1175
|
+
/** Данные о контейнере виджета */
|
|
1176
|
+
widgetContainer: {
|
|
1177
|
+
/** Имеет ли контейнер виджета ограниченную максимальную высоту */
|
|
1178
|
+
isMaxHeightLimited: boolean;
|
|
1179
|
+
};
|
|
1175
1180
|
}
|
|
1176
1181
|
interface ICustomWidgetProps<WidgetSettings extends IBaseWidgetSettings = IBaseWidgetSettings> extends IWidgetProps<WidgetSettings> {
|
|
1177
1182
|
/** @deprecated - нужно использовать из widgetsContext */
|
|
@@ -1343,4 +1348,4 @@ declare global {
|
|
|
1343
1348
|
}
|
|
1344
1349
|
}
|
|
1345
1350
|
|
|
1346
|
-
export { ECalculatorFilterMethods, EColorMode, EControlType, EDbType, EDimensionTemplateNames, EDisplayConditionMode, EDurationUnit, EEventMeasureTemplateNames, EFormatTypes, EFormattingPresets, EFormulaFilterFieldKeys, EIndicatorType, ELastTimeUnit, EMeasureTemplateNames, EProcessFilterNames, ESimpleDataType, ESortDirection, ESortingValueModes, ETransitionMeasureTemplateNames, EWidgetActionInputMode, EWidgetFilterMode, EWidgetIndicatorType, EWidgetIndicatorValueModes, type IActionScript, type IAddDurationOfTransitionFilter, type IAddPresenceOfEventFilter, type IAddPresenceOfTransitionFilter, type IAddRepetitionOfEventFilter, type IBaseDimensionsAndMeasuresCalculator, type IBaseDimensionsAndMeasuresCalculatorInput, type IBaseDimensionsAndMeasuresCalculatorOutput, type IBaseWidgetSettings, type ICalculator, type ICalculatorDimensionInput, type ICalculatorDimensionOutput, type ICalculatorFactory, type ICalculatorFilter, type ICalculatorIndicatorInput, type ICalculatorIndicatorOutput, type ICalculatorMeasureInput, type ICalculatorMeasureOutput, type ICalculatorVariable, type ICalculatorVariablesValues, type ICommonColumnIndicator, type IControlRecord, type ICustomAddButtonProps, type ICustomWidgetProps, type IDefinition, type IDimensionSelection, type IDimensionSelectionByFormula, type IDisplayPredicate, type IDivePanelDescription, type IDividerRecord, type IEdge, type IExportColumnOrder, type IFillSettings, type IFormulaFilterValue, type IGeneralCalculator, type IGeneralCalculatorExportInput, type IGeneralCalculatorInput, type IGeneralCalculatorOutput, type IGraphElement, type IGroupSetDescription, type IGroupSetRecord, type IGroupSettings, type IHistogramBin, type IHistogramCalculator, type IHistogramCalculatorInput, type IHistogramCalculatorOutput, type ILens, type IPanelDescription, type IPanelDescriptionCreator, type IPieCalculator, type IPieCalculatorInput, type IPieCalculatorOutput, type
|
|
1351
|
+
export { ECalculatorFilterMethods, EColorMode, EControlType, EDbType, EDimensionTemplateNames, EDisplayConditionMode, EDurationUnit, EEventMeasureTemplateNames, EFormatTypes, EFormattingPresets, EFormulaFilterFieldKeys, EIndicatorType, ELastTimeUnit, EMeasureTemplateNames, EProcessFilterNames, ESimpleDataType, ESortDirection, ESortingValueModes, ETransitionMeasureTemplateNames, EWidgetActionInputMode, EWidgetFilterMode, EWidgetIndicatorType, EWidgetIndicatorValueModes, type IActionScript, type IAddDurationOfTransitionFilter, type IAddPresenceOfEventFilter, type IAddPresenceOfTransitionFilter, type IAddRepetitionOfEventFilter, type IBaseDimensionsAndMeasuresCalculator, type IBaseDimensionsAndMeasuresCalculatorInput, type IBaseDimensionsAndMeasuresCalculatorOutput, type IBaseWidgetSettings, type ICalculator, type ICalculatorDimensionInput, type ICalculatorDimensionOutput, type ICalculatorFactory, type ICalculatorFilter, type ICalculatorIndicatorInput, type ICalculatorIndicatorOutput, type ICalculatorMeasureInput, type ICalculatorMeasureOutput, type ICalculatorVariable, type ICalculatorVariablesValues, type ICommonColumnIndicator, type IControlRecord, type ICustomAddButtonProps, type ICustomWidgetProps, type IDefinition, type IDimensionSelection, type IDimensionSelectionByFormula, type IDisplayPredicate, type IDivePanelDescription, type IDividerRecord, type IEdge, type IExportColumnOrder, type IFillSettings, type IFormulaFilterValue, type IGeneralCalculator, type IGeneralCalculatorExportInput, type IGeneralCalculatorInput, type IGeneralCalculatorOutput, type IGraphElement, type IGroupSetDescription, type IGroupSetRecord, type IGroupSettings, type IHistogramBin, type IHistogramCalculator, type IHistogramCalculatorInput, type IHistogramCalculatorOutput, type ILens, type IPanelDescription, type IPanelDescriptionCreator, type IPieCalculator, type IPieCalculatorInput, type IPieCalculatorOutput, type IProcessEventFilterValue, type IProcessEventIndicator, type IProcessGraphCalculator, type IProcessGraphCalculatorInput, type IProcessGraphCalculatorOutput, type IProcessIndicator, type IProcessTransitionFilterValue, type IProcessTransitionIndicator, type IRange, type ISelectOption, type ISortOrder, type ITwoLimitsCalculator, type ITwoLimitsCalculatorExportInput, type ITwoLimitsCalculatorInput, type ITwoLimitsCalculatorOutput, type ITypeCalculator, type ITypeCalculatorInput, type ITypeCalculatorOutput, type IVertex, type IWidget, type IWidgetAction, type IWidgetActionInput, type IWidgetColumnIndicator, type IWidgetDimension, type IWidgetDimensionHierarchy, type IWidgetEntity, type IWidgetFiltration, type IWidgetFormatting, type IWidgetFormulaFilterValue, type IWidgetIndicator, type IWidgetMeasure, type IWidgetPlaceholderController, type IWidgetProcess, type IWidgetProps, type IWidgetSortingIndicator, type IWidgetTable, type IWidgetTableColumn, type IWidgetsContext, type TBoundedContentWithIndicator, type TColor, type TColumnIndicatorValue, type TDefineWidgetOptions, type TDisplayCondition, type TDisplayMode, type TEmptyRecord, type TGroupLevelRecord, type TProcessIndicatorValue, type TRecordAccessor, type TSortDirection, type TUpdateSelection, type TValuePath, type TWidgetActionInputValue, type TWidgetFiltering, type TWidgetLevelRecord, type TWidgetSortingValue, type TWidgetSortingValueRelatedWidgetDimension, type TWidgetSortingValueRelatedWidgetIndicator, type TWidgetSortingValueRelatedWidgetMeasure, type TWidgetVariable, bindContentWithIndicator, bindContentsWithIndicators, checkDisplayCondition, dimensionTemplateFormulas, escapeSpecialCharacters, eventMeasureTemplateFormulas, fillTemplateString, formulaFilterMethods, generateColumnFormula, getDimensionFormula, getDisplayConditionFormula, getEventMeasureFormula, getLocalizedText, getMeasureFormula, getTransitionMeasureFormula, isActionValid, isHierarchy, mapDimensionsToInputs, mapEventMeasuresToInputs, mapFormulaFilterToCalculatorInput, mapFormulaFiltersToInputs, mapMeasuresToInputs, mapSortingToInputs, mapTransitionMeasuresToInputs, mapVariablesToInputs, measureTemplateFormulas, prepareValuesForSql, replaceDisplayCondition, replaceFiltersBySelection, replaceHierarchiesWithDimensions, selectDimensionFromHierarchy, transitionMeasureTemplateFormulas, updateDefaultModeSelection, updateMultiModeSelection, updateSingleModeSelection };
|
package/dist/index.esm.js
CHANGED
|
@@ -513,8 +513,18 @@ var replaceDisplayCondition = function (dimension, displayCondition) {
|
|
|
513
513
|
: __assign(__assign({}, dimension), { displayCondition: displayCondition });
|
|
514
514
|
};
|
|
515
515
|
|
|
516
|
+
var escapeSpecialCharacters = function (formula) {
|
|
517
|
+
return formula
|
|
518
|
+
.replaceAll("\\", "\\\\")
|
|
519
|
+
.replaceAll('"', '\\"')
|
|
520
|
+
.replaceAll("`", "\\`")
|
|
521
|
+
.replaceAll("-", "\\-");
|
|
522
|
+
};
|
|
523
|
+
|
|
516
524
|
function generateColumnFormula(tableName, columnName) {
|
|
517
|
-
|
|
525
|
+
var preparedTableName = escapeSpecialCharacters(tableName);
|
|
526
|
+
var preparedColumnName = escapeSpecialCharacters(columnName);
|
|
527
|
+
return "\"".concat(preparedTableName, "\".\"").concat(preparedColumnName, "\"");
|
|
518
528
|
}
|
|
519
529
|
function fillTemplateString(templateString, params) {
|
|
520
530
|
return templateString.replace(/\{(.*?)\}/g, function (_, key) { var _a; return (_a = params[key]) !== null && _a !== void 0 ? _a : ""; });
|
|
@@ -738,6 +748,7 @@ function mapMeasureToInput(measure, variables, addFormulas) {
|
|
|
738
748
|
return {
|
|
739
749
|
alias: String(measure.id),
|
|
740
750
|
mainFormula: mainFormula,
|
|
751
|
+
dataType: measure.dataType,
|
|
741
752
|
displayConditionFormula: getDisplayConditionFormula(measure.displayCondition),
|
|
742
753
|
additionalFormulas: addFormulas(measure),
|
|
743
754
|
};
|
|
@@ -760,6 +771,7 @@ function mapDimensionToInput(dimension, variables) {
|
|
|
760
771
|
return {
|
|
761
772
|
alias: String(dimension.id),
|
|
762
773
|
formula: formula,
|
|
774
|
+
dataType: dimension.dataType,
|
|
763
775
|
hideEmpty: dimension.hideEmptyValues,
|
|
764
776
|
displayConditionFormula: getDisplayConditionFormula(dimension.displayCondition),
|
|
765
777
|
};
|
|
@@ -783,6 +795,7 @@ function mapTransitionMeasureToInput(indicator, process, variables, addFormulas)
|
|
|
783
795
|
return {
|
|
784
796
|
alias: String(indicator.id),
|
|
785
797
|
mainFormula: mainFormula,
|
|
798
|
+
dataType: indicator.dataType,
|
|
786
799
|
displayConditionFormula: getDisplayConditionFormula(indicator.displayCondition),
|
|
787
800
|
additionalFormulas: addFormulas(indicator),
|
|
788
801
|
};
|
|
@@ -806,6 +819,7 @@ function mapEventMeasureToInput(indicator, process, variables, addFormulas) {
|
|
|
806
819
|
return {
|
|
807
820
|
alias: String(indicator.id),
|
|
808
821
|
mainFormula: mainFormula,
|
|
822
|
+
dataType: indicator.dataType,
|
|
809
823
|
displayConditionFormula: getDisplayConditionFormula(indicator.displayCondition),
|
|
810
824
|
additionalFormulas: addFormulas(indicator),
|
|
811
825
|
};
|
|
@@ -1030,4 +1044,4 @@ var getLocalizedText = function (language, locObj, props) {
|
|
|
1030
1044
|
return localization.getLocalized(locObj, props);
|
|
1031
1045
|
};
|
|
1032
1046
|
|
|
1033
|
-
export { ECalculatorFilterMethods, EColorMode, EControlType, EDbType, EDimensionTemplateNames, EDisplayConditionMode, EDurationUnit, EEventMeasureTemplateNames, EFormatTypes, EFormattingPresets, EFormulaFilterFieldKeys, EIndicatorType, ELastTimeUnit, EMeasureTemplateNames, EProcessFilterNames, ESimpleDataType, ESortDirection, ESortingValueModes, ETransitionMeasureTemplateNames, EWidgetActionInputMode, EWidgetFilterMode, EWidgetIndicatorType, EWidgetIndicatorValueModes, bindContentWithIndicator, bindContentsWithIndicators, checkDisplayCondition, dimensionTemplateFormulas, eventMeasureTemplateFormulas, fillTemplateString, formulaFilterMethods, generateColumnFormula, getDimensionFormula, getDisplayConditionFormula, getEventMeasureFormula, getLocalizedText, getMeasureFormula, getTransitionMeasureFormula, isActionValid, isHierarchy, mapDimensionsToInputs, mapEventMeasuresToInputs, mapFormulaFilterToCalculatorInput, mapFormulaFiltersToInputs, mapMeasuresToInputs, mapSortingToInputs, mapTransitionMeasuresToInputs, mapVariablesToInputs, measureTemplateFormulas, prepareValuesForSql, replaceDisplayCondition, replaceFiltersBySelection, replaceHierarchiesWithDimensions, selectDimensionFromHierarchy, transitionMeasureTemplateFormulas, updateDefaultModeSelection, updateMultiModeSelection, updateSingleModeSelection };
|
|
1047
|
+
export { ECalculatorFilterMethods, EColorMode, EControlType, EDbType, EDimensionTemplateNames, EDisplayConditionMode, EDurationUnit, EEventMeasureTemplateNames, EFormatTypes, EFormattingPresets, EFormulaFilterFieldKeys, EIndicatorType, ELastTimeUnit, EMeasureTemplateNames, EProcessFilterNames, ESimpleDataType, ESortDirection, ESortingValueModes, ETransitionMeasureTemplateNames, EWidgetActionInputMode, EWidgetFilterMode, EWidgetIndicatorType, EWidgetIndicatorValueModes, bindContentWithIndicator, bindContentsWithIndicators, checkDisplayCondition, dimensionTemplateFormulas, escapeSpecialCharacters, eventMeasureTemplateFormulas, fillTemplateString, formulaFilterMethods, generateColumnFormula, getDimensionFormula, getDisplayConditionFormula, getEventMeasureFormula, getLocalizedText, getMeasureFormula, getTransitionMeasureFormula, isActionValid, isHierarchy, mapDimensionsToInputs, mapEventMeasuresToInputs, mapFormulaFilterToCalculatorInput, mapFormulaFiltersToInputs, mapMeasuresToInputs, mapSortingToInputs, mapTransitionMeasuresToInputs, mapVariablesToInputs, measureTemplateFormulas, prepareValuesForSql, replaceDisplayCondition, replaceFiltersBySelection, replaceHierarchiesWithDimensions, selectDimensionFromHierarchy, transitionMeasureTemplateFormulas, updateDefaultModeSelection, updateMultiModeSelection, updateSingleModeSelection };
|
package/dist/index.js
CHANGED
|
@@ -514,8 +514,18 @@ var replaceDisplayCondition = function (dimension, displayCondition) {
|
|
|
514
514
|
: __assign(__assign({}, dimension), { displayCondition: displayCondition });
|
|
515
515
|
};
|
|
516
516
|
|
|
517
|
+
var escapeSpecialCharacters = function (formula) {
|
|
518
|
+
return formula
|
|
519
|
+
.replaceAll("\\", "\\\\")
|
|
520
|
+
.replaceAll('"', '\\"')
|
|
521
|
+
.replaceAll("`", "\\`")
|
|
522
|
+
.replaceAll("-", "\\-");
|
|
523
|
+
};
|
|
524
|
+
|
|
517
525
|
function generateColumnFormula(tableName, columnName) {
|
|
518
|
-
|
|
526
|
+
var preparedTableName = escapeSpecialCharacters(tableName);
|
|
527
|
+
var preparedColumnName = escapeSpecialCharacters(columnName);
|
|
528
|
+
return "\"".concat(preparedTableName, "\".\"").concat(preparedColumnName, "\"");
|
|
519
529
|
}
|
|
520
530
|
function fillTemplateString(templateString, params) {
|
|
521
531
|
return templateString.replace(/\{(.*?)\}/g, function (_, key) { var _a; return (_a = params[key]) !== null && _a !== void 0 ? _a : ""; });
|
|
@@ -739,6 +749,7 @@ function mapMeasureToInput(measure, variables, addFormulas) {
|
|
|
739
749
|
return {
|
|
740
750
|
alias: String(measure.id),
|
|
741
751
|
mainFormula: mainFormula,
|
|
752
|
+
dataType: measure.dataType,
|
|
742
753
|
displayConditionFormula: getDisplayConditionFormula(measure.displayCondition),
|
|
743
754
|
additionalFormulas: addFormulas(measure),
|
|
744
755
|
};
|
|
@@ -761,6 +772,7 @@ function mapDimensionToInput(dimension, variables) {
|
|
|
761
772
|
return {
|
|
762
773
|
alias: String(dimension.id),
|
|
763
774
|
formula: formula,
|
|
775
|
+
dataType: dimension.dataType,
|
|
764
776
|
hideEmpty: dimension.hideEmptyValues,
|
|
765
777
|
displayConditionFormula: getDisplayConditionFormula(dimension.displayCondition),
|
|
766
778
|
};
|
|
@@ -784,6 +796,7 @@ function mapTransitionMeasureToInput(indicator, process, variables, addFormulas)
|
|
|
784
796
|
return {
|
|
785
797
|
alias: String(indicator.id),
|
|
786
798
|
mainFormula: mainFormula,
|
|
799
|
+
dataType: indicator.dataType,
|
|
787
800
|
displayConditionFormula: getDisplayConditionFormula(indicator.displayCondition),
|
|
788
801
|
additionalFormulas: addFormulas(indicator),
|
|
789
802
|
};
|
|
@@ -807,6 +820,7 @@ function mapEventMeasureToInput(indicator, process, variables, addFormulas) {
|
|
|
807
820
|
return {
|
|
808
821
|
alias: String(indicator.id),
|
|
809
822
|
mainFormula: mainFormula,
|
|
823
|
+
dataType: indicator.dataType,
|
|
810
824
|
displayConditionFormula: getDisplayConditionFormula(indicator.displayCondition),
|
|
811
825
|
additionalFormulas: addFormulas(indicator),
|
|
812
826
|
};
|
|
@@ -1043,6 +1057,7 @@ exports.bindContentWithIndicator = bindContentWithIndicator;
|
|
|
1043
1057
|
exports.bindContentsWithIndicators = bindContentsWithIndicators;
|
|
1044
1058
|
exports.checkDisplayCondition = checkDisplayCondition;
|
|
1045
1059
|
exports.dimensionTemplateFormulas = dimensionTemplateFormulas;
|
|
1060
|
+
exports.escapeSpecialCharacters = escapeSpecialCharacters;
|
|
1046
1061
|
exports.eventMeasureTemplateFormulas = eventMeasureTemplateFormulas;
|
|
1047
1062
|
exports.fillTemplateString = fillTemplateString;
|
|
1048
1063
|
exports.formulaFilterMethods = formulaFilterMethods;
|