intelicoreact 0.2.24 → 0.2.27

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 (42) hide show
  1. package/dist/Atomic/FormElements/Dropdown/Dropdown.js +31 -10
  2. package/dist/Atomic/FormElements/Input/Input.js +2 -2
  3. package/dist/Atomic/FormElements/InputDateRange/InputDateRange.js +2 -2
  4. package/dist/Atomic/FormElements/InputDateRange/components/OpenedPart.js +2 -2
  5. package/dist/Atomic/FormElements/InputDateRange/dependencies.js +3 -3
  6. package/dist/Atomic/FormElements/InputMask/InputMask.js +2 -3
  7. package/dist/Atomic/FormElements/InputMask/functions.js +1 -1
  8. package/dist/Atomic/FormElements/InputsRow/InputsRow.js +2 -2
  9. package/dist/Atomic/FormElements/NumericInput/NumericInput.js +2 -2
  10. package/dist/Atomic/FormElements/RangeInputs/RangeInputs.js +2 -2
  11. package/dist/Atomic/FormElements/RangeList/RangeList.js +2 -2
  12. package/dist/Atomic/FormElements/RangeSlider/RangeSlider.js +373 -0
  13. package/dist/Atomic/FormElements/RangeSlider/RangeSlider.scss +146 -0
  14. package/dist/Atomic/FormElements/RangeSlider/RangeSlider.stories.scss +26 -0
  15. package/dist/Atomic/UI/Chart/Chart.js +145 -0
  16. package/dist/Atomic/UI/Chart/Chart.scss +57 -0
  17. package/dist/Atomic/UI/Chart/partial/AnyOuterClass.scss +38 -0
  18. package/dist/Atomic/UI/Chart/partial/Chart.constants.js +30 -0
  19. package/dist/Atomic/UI/Chart/partial/ChartTypeSwitcherIcon/ChartTypeSwitcherIcon.js +95 -0
  20. package/dist/Atomic/UI/Chart/partial/ChartTypeSwitcherIcon/ChartTypeSwitcherIcon.scss +18 -0
  21. package/dist/Atomic/UI/Chart/partial/optionsConstructor.js +286 -0
  22. package/dist/Atomic/UI/Chart/partial/utils.js +147 -0
  23. package/dist/Atomic/UI/ExampleChartIntegration/ExampleChartIntegration.js +235 -0
  24. package/dist/Atomic/UI/ExampleChartIntegration/partial/AnyOuterClass.scss +61 -0
  25. package/dist/Atomic/UI/ExampleChartIntegration/partial/utils.js +131 -0
  26. package/dist/Atomic/UI/NavLine/NavLine.js +2 -2
  27. package/dist/Atomic/UI/Table/Partials/TdCell.js +2 -2
  28. package/dist/Atomic/UI/Table/Partials/TdRow.js +2 -2
  29. package/dist/Atomic/UI/TagList/TagList.js +7 -6
  30. package/dist/Atomic/UI/TagList/TagList.scss +3 -7
  31. package/dist/Constants/index.constants.js +1 -1
  32. package/dist/Functions/fieldValueFormatters.js +1 -1
  33. package/dist/Functions/useFormTools/form-drivers/ObjectWithIterableObjects.js +2 -2
  34. package/dist/Functions/useFormTools/form-drivers/ObjectWithNamedKeyObjects.js +2 -2
  35. package/dist/Functions/useFormTools/functions/General.js +2 -2
  36. package/dist/Functions/useFormTools/functions/RenderFields.js +2 -2
  37. package/dist/Functions/useFormTools/index.js +2 -2
  38. package/dist/Functions/useLocationParams.js +2 -2
  39. package/dist/Functions/usePasswordChecker.js +2 -2
  40. package/dist/Functions/utils.js +15 -1
  41. package/dist/scss/_fonts.scss +108 -108
  42. package/package.json +3 -1
@@ -0,0 +1,286 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+
5
+ Object.defineProperty(exports, "__esModule", {
6
+ value: true
7
+ });
8
+ exports.componentOptions = exports.iconModels = exports.chartTypeKeysFormatter = exports.default = exports.reactChartJsOptionsLayouts = void 0;
9
+
10
+ var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
11
+
12
+ var _Chart = require("./Chart.constants");
13
+
14
+ var _reactChartJsOptionsL, _reactChartJsOptionsL2, _reactChartJsOptionsL3, _reactChartJsOptionsL4, _reactChartJsOptionsL5, _reactChartJsOptionsL6, _reactChartJsOptionsL7, _reactChartJsOptionsL8, _reactChartJsOptionsL9, _reactChartJsOptionsL10, _reactChartJsOptionsL11, _reactChartJsOptionsL12, _reactChartJsOptionsL13, _reactChartJsOptionsL14, _reactChartJsOptionsL15, _reactChartJsOptionsL16, _reactChartJsOptionsL17, _reactChartJsOptionsL18, _reactChartJsOptionsL19, _reactChartJsOptionsL20, _reactChartJsOptionsL21, _reactChartJsOptionsL22, _reactChartJsOptionsL23, _reactChartJsOptionsL24, _reactChartJsOptionsL25, _finturfChartLine$opt, _finturfChartLine$opt2, _finturfChartLine$opt3, _reactChartJsOptions;
15
+
16
+ function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) { symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); } keys.push.apply(keys, symbols); } return keys; }
17
+
18
+ function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { (0, _defineProperty2.default)(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }
19
+
20
+ // options constructors for ChartJS
21
+ var reactChartJsOptionsLayouts = {
22
+ lineIconLayout: {
23
+ options: {
24
+ responsive: true,
25
+ maintainAspectRatio: false,
26
+ scales: {
27
+ x: {
28
+ display: false
29
+ },
30
+ y: {
31
+ display: false
32
+ }
33
+ },
34
+ elements: {
35
+ point: {
36
+ radius: 0
37
+ },
38
+ line: {
39
+ tension: 0.45,
40
+ borderJoinStyle: 'round',
41
+ borderWidth: 1,
42
+ capBezierPoints: true
43
+ }
44
+ }
45
+ },
46
+ plugins: {},
47
+ redraw: true,
48
+ notLibraryOptions: {
49
+ // Этот ключ должен быть в любой итоговой конфигурации для нормальной работы компонента именно в такой вложенности
50
+ // На основании этого ключа будет приниматься решение какой компонет будет использован (<Line />, <Bar /> и т.д.)
51
+ // => Файл Chart.js => определение ChartComponent
52
+ chartTypeKey: 'Line',
53
+ changeData: {},
54
+ setCanvasDimensions: {
55
+ width: '75px',
56
+ height: '35px'
57
+ }
58
+ }
59
+ },
60
+ lineLayout: {
61
+ options: {
62
+ responsive: true,
63
+ scales: {
64
+ x: {
65
+ grid: {
66
+ display: false,
67
+ offset: true
68
+ }
69
+ },
70
+ y: {
71
+ min: 0,
72
+ bounds: 'data',
73
+ title: {// color: '#A0A4B0',
74
+ // color: '#32A784',
75
+ // font: '',
76
+ // padding: {
77
+ // right: 25,
78
+ // bottom: 10,
79
+ // },
80
+ },
81
+ grid: {
82
+ borderColor: '#E1E8F1',
83
+ color: '#E1E8F1',
84
+ borderDash: [5],
85
+ // borderDashOffset: 12,
86
+ drawTicks: false,
87
+ z: -1
88
+ }
89
+ }
90
+ },
91
+ elements: {
92
+ point: {
93
+ radius: 4,
94
+ pointStyle: 'circle',
95
+ backgroundColor: '#FFFFFF',
96
+ color: '#FFFFFF'
97
+ },
98
+ line: {
99
+ tension: 0.45,
100
+ borderWidth: 2,
101
+ borderJoinStyle: 'round',
102
+ capBezierPoints: true
103
+ }
104
+ }
105
+ },
106
+ plugins: {},
107
+ redraw: true,
108
+ notLibraryOptions: {
109
+ // Этот ключ должен быть в любой итоговой конфигурации для нормальной работы компонента именно в такой вложенности
110
+ // На основании этого ключа будет приниматься решение какой компонет будет использован (<Line />, <Bar /> и т.д.)
111
+ // => Файл Chart.js => определение ChartComponent
112
+ chartTypeKey: 'Line'
113
+ }
114
+ },
115
+ barLayout: {
116
+ options: {
117
+ responsive: true,
118
+ scales: {
119
+ x: {
120
+ grid: {
121
+ display: false,
122
+ offset: true
123
+ }
124
+ },
125
+ y: {
126
+ min: 0,
127
+ bounds: 'data',
128
+ title: {// color: '#A0A4B0',
129
+ // color: '#32A784',
130
+ // font: '',
131
+ // padding: {
132
+ // right: 25,
133
+ // bottom: 10,
134
+ // },
135
+ },
136
+ grid: {
137
+ borderColor: '#E1E8F1',
138
+ color: '#E1E8F1',
139
+ borderDash: [5],
140
+ drawTicks: false,
141
+ z: -1
142
+ }
143
+ }
144
+ },
145
+ elements: {
146
+ bar: {
147
+ borderRadius: 5
148
+ }
149
+ }
150
+ },
151
+ plugins: {},
152
+ redraw: true,
153
+ notLibraryOptions: {
154
+ // Этот ключ должен быть в любой итоговой конфигурации для нормальной работы компонента именно в такой вложенности
155
+ // На основании этого ключа будет приниматься решение какой компонет будет использован (<Line />, <Bar /> и т.д.)
156
+ // => Файл Chart.js => определение ChartComponent
157
+ chartTypeKey: 'Bar'
158
+ }
159
+ }
160
+ };
161
+ exports.reactChartJsOptionsLayouts = reactChartJsOptionsLayouts;
162
+
163
+ var addGradient = function addGradient(currentOptions, gradientObj) {
164
+ var _currentOptions$notLi;
165
+
166
+ return _objectSpread(_objectSpread({}, currentOptions), {}, {
167
+ notLibraryOptions: _objectSpread(_objectSpread({}, currentOptions === null || currentOptions === void 0 ? void 0 : currentOptions.notLibraryOptions), {}, {
168
+ changeData: _objectSpread(_objectSpread({}, currentOptions === null || currentOptions === void 0 ? void 0 : (_currentOptions$notLi = currentOptions.notLibraryOptions) === null || _currentOptions$notLi === void 0 ? void 0 : _currentOptions$notLi.changeData), {}, {
169
+ addGradient: gradientObj
170
+ })
171
+ })
172
+ });
173
+ };
174
+
175
+ var getLineIconLayoutOptionsAlongWithGradient = function getLineIconLayoutOptionsAlongWithGradient(gradientObj) {
176
+ return _objectSpread({}, addGradient(reactChartJsOptionsLayouts.lineIconLayout, gradientObj));
177
+ };
178
+
179
+ var finturfChartBar = _objectSpread(_objectSpread({}, reactChartJsOptionsLayouts.barLayout), {}, {
180
+ options: _objectSpread(_objectSpread({}, (_reactChartJsOptionsL = reactChartJsOptionsLayouts.barLayout) === null || _reactChartJsOptionsL === void 0 ? void 0 : _reactChartJsOptionsL.options), {}, {
181
+ maintainAspectRatio: false,
182
+ elements: _objectSpread(_objectSpread({}, (_reactChartJsOptionsL2 = reactChartJsOptionsLayouts.barLayout) === null || _reactChartJsOptionsL2 === void 0 ? void 0 : (_reactChartJsOptionsL3 = _reactChartJsOptionsL2.options) === null || _reactChartJsOptionsL3 === void 0 ? void 0 : _reactChartJsOptionsL3.elements), {}, {
183
+ bar: _objectSpread(_objectSpread({}, (_reactChartJsOptionsL4 = reactChartJsOptionsLayouts.barLayout) === null || _reactChartJsOptionsL4 === void 0 ? void 0 : (_reactChartJsOptionsL5 = _reactChartJsOptionsL4.options) === null || _reactChartJsOptionsL5 === void 0 ? void 0 : (_reactChartJsOptionsL6 = _reactChartJsOptionsL5.elements) === null || _reactChartJsOptionsL6 === void 0 ? void 0 : _reactChartJsOptionsL6.bar), {}, {
184
+ borderRadius: 10
185
+ })
186
+ })
187
+ }),
188
+ notLibraryOptions: _objectSpread(_objectSpread({}, (_reactChartJsOptionsL7 = reactChartJsOptionsLayouts.barLayout) === null || _reactChartJsOptionsL7 === void 0 ? void 0 : _reactChartJsOptionsL7.notLibraryOptions), {}, {
189
+ changeData: _objectSpread(_objectSpread({}, (_reactChartJsOptionsL8 = reactChartJsOptionsLayouts.barLayout) === null || _reactChartJsOptionsL8 === void 0 ? void 0 : (_reactChartJsOptionsL9 = _reactChartJsOptionsL8.notLibraryOptions) === null || _reactChartJsOptionsL9 === void 0 ? void 0 : _reactChartJsOptionsL9.changeData), {}, {
190
+ setMaxBarThickness: 20
191
+ }),
192
+ setCanvasDimensions: {
193
+ height: '194px'
194
+ }
195
+ })
196
+ });
197
+
198
+ var finturfChartLine = _objectSpread(_objectSpread({}, reactChartJsOptionsLayouts.lineLayout), {}, {
199
+ options: _objectSpread(_objectSpread({}, (_reactChartJsOptionsL10 = reactChartJsOptionsLayouts.lineLayout) === null || _reactChartJsOptionsL10 === void 0 ? void 0 : _reactChartJsOptionsL10.options), {}, {
200
+ maintainAspectRatio: false,
201
+ scales: _objectSpread(_objectSpread({}, (_reactChartJsOptionsL11 = reactChartJsOptionsLayouts.lineLayout) === null || _reactChartJsOptionsL11 === void 0 ? void 0 : (_reactChartJsOptionsL12 = _reactChartJsOptionsL11.options) === null || _reactChartJsOptionsL12 === void 0 ? void 0 : _reactChartJsOptionsL12.scales), {}, {
202
+ y: _objectSpread(_objectSpread({}, (_reactChartJsOptionsL13 = reactChartJsOptionsLayouts.lineLayout) === null || _reactChartJsOptionsL13 === void 0 ? void 0 : (_reactChartJsOptionsL14 = _reactChartJsOptionsL13.options) === null || _reactChartJsOptionsL14 === void 0 ? void 0 : _reactChartJsOptionsL14.scales.y), {}, {
203
+ title: _objectSpread({}, (_reactChartJsOptionsL15 = reactChartJsOptionsLayouts.lineLayout) === null || _reactChartJsOptionsL15 === void 0 ? void 0 : (_reactChartJsOptionsL16 = _reactChartJsOptionsL15.options) === null || _reactChartJsOptionsL16 === void 0 ? void 0 : (_reactChartJsOptionsL17 = _reactChartJsOptionsL16.scales) === null || _reactChartJsOptionsL17 === void 0 ? void 0 : (_reactChartJsOptionsL18 = _reactChartJsOptionsL17.y) === null || _reactChartJsOptionsL18 === void 0 ? void 0 : _reactChartJsOptionsL18.title),
204
+ grid: _objectSpread({}, (_reactChartJsOptionsL19 = reactChartJsOptionsLayouts.lineLayout) === null || _reactChartJsOptionsL19 === void 0 ? void 0 : (_reactChartJsOptionsL20 = _reactChartJsOptionsL19.options) === null || _reactChartJsOptionsL20 === void 0 ? void 0 : (_reactChartJsOptionsL21 = _reactChartJsOptionsL20.scales) === null || _reactChartJsOptionsL21 === void 0 ? void 0 : (_reactChartJsOptionsL22 = _reactChartJsOptionsL21.y) === null || _reactChartJsOptionsL22 === void 0 ? void 0 : _reactChartJsOptionsL22.grid)
205
+ })
206
+ }),
207
+ elements: _objectSpread(_objectSpread({}, (_reactChartJsOptionsL23 = reactChartJsOptionsLayouts.lineLayout.options) === null || _reactChartJsOptionsL23 === void 0 ? void 0 : _reactChartJsOptionsL23.elements), {}, {
208
+ point: _objectSpread(_objectSpread({}, (_reactChartJsOptionsL24 = reactChartJsOptionsLayouts.lineLayout.options) === null || _reactChartJsOptionsL24 === void 0 ? void 0 : (_reactChartJsOptionsL25 = _reactChartJsOptionsL24.elements) === null || _reactChartJsOptionsL25 === void 0 ? void 0 : _reactChartJsOptionsL25.point), {}, {
209
+ borderColor: '#32A784'
210
+ })
211
+ })
212
+ }),
213
+ notLibraryOptions: _objectSpread(_objectSpread({}, reactChartJsOptionsLayouts.lineLayout.notLibraryOptions), {}, {
214
+ setCanvasDimensions: {
215
+ height: '194px'
216
+ }
217
+ })
218
+ });
219
+
220
+ var finturfLoadingModeBar = _objectSpread(_objectSpread({}, finturfChartBar), {}, {
221
+ options: _objectSpread(_objectSpread({}, finturfChartBar.options), {}, {
222
+ animation: false
223
+ })
224
+ });
225
+
226
+ var finturfLoadingModeLine = _objectSpread(_objectSpread({}, finturfChartLine), {}, {
227
+ options: _objectSpread(_objectSpread({}, finturfChartLine.options), {}, {
228
+ elements: _objectSpread(_objectSpread({}, (_finturfChartLine$opt = finturfChartLine.options) === null || _finturfChartLine$opt === void 0 ? void 0 : _finturfChartLine$opt.elements), {}, {
229
+ point: _objectSpread(_objectSpread({}, (_finturfChartLine$opt2 = finturfChartLine.options) === null || _finturfChartLine$opt2 === void 0 ? void 0 : (_finturfChartLine$opt3 = _finturfChartLine$opt2.elements) === null || _finturfChartLine$opt3 === void 0 ? void 0 : _finturfChartLine$opt3.point), {}, {
230
+ borderColor: '#E1E8F1'
231
+ })
232
+ }),
233
+ animations: {
234
+ y: false
235
+ } // transitions: {
236
+ // show: {
237
+ // animations: {
238
+ // x: false,
239
+ // y: false,
240
+ // }
241
+ // },
242
+ // hide: {
243
+ // animations: {
244
+ // x: false,
245
+ // y: false,
246
+ // }
247
+ // },
248
+ // },
249
+
250
+ })
251
+ });
252
+
253
+ var reactChartJsOptions = (_reactChartJsOptions = {
254
+ finturfChartBar: _objectSpread({}, addGradient(finturfChartBar, _Chart.GRADIENT_OBJECTS.finturf.bar)),
255
+ finturfChartBarLoadingMode: _objectSpread({}, finturfChartBar),
256
+ finturfChartLine: _objectSpread({}, addGradient(finturfChartLine, _Chart.GRADIENT_OBJECTS.finturf.line)),
257
+ finturfChartLineLoadingMode: _objectSpread({}, finturfChartLine),
258
+ finturfPositiveLineIcon: _objectSpread({}, addGradient(reactChartJsOptionsLayouts.lineIconLayout, _Chart.GRADIENT_OBJECTS.finturf.line))
259
+ }, (0, _defineProperty2.default)(_reactChartJsOptions, "finturfPositiveLineIcon", _objectSpread({}, addGradient(reactChartJsOptionsLayouts.lineIconLayout, _objectSpread(_objectSpread({}, _Chart.GRADIENT_OBJECTS.finturf.line), {}, {
260
+ colors: _Chart.FINTURF_ADD_GRADIENT_COLORS_NEGATIVE
261
+ })))), (0, _defineProperty2.default)(_reactChartJsOptions, "finturfPositiveLineIcon", getLineIconLayoutOptionsAlongWithGradient({
262
+ gradientTargetPropertyName: 'borderColor',
263
+ colors: ['#53D1AD', '#389AA3'],
264
+ direction: 'toRight'
265
+ })), (0, _defineProperty2.default)(_reactChartJsOptions, "finturfNegativeLineIcon", getLineIconLayoutOptionsAlongWithGradient({
266
+ gradientTargetPropertyName: 'borderColor',
267
+ colors: ['#FDB4DB', '#FA2E69'],
268
+ direction: 'toRight'
269
+ })), (0, _defineProperty2.default)(_reactChartJsOptions, "finturfLoadingModeBar", finturfLoadingModeBar), (0, _defineProperty2.default)(_reactChartJsOptions, "finturfLoadingModeLine", finturfLoadingModeLine), _reactChartJsOptions);
270
+ var _default = reactChartJsOptions; // Chart component constructors
271
+
272
+ exports.default = _default;
273
+ var chartTypeKeysFormatter = {
274
+ finturfChartBar: 'Bar',
275
+ finturfChartLine: 'Line',
276
+ finturfPositiveLineIcon: 'Line',
277
+ finturfNegativeLineIcon: 'Line'
278
+ };
279
+ exports.chartTypeKeysFormatter = chartTypeKeysFormatter;
280
+ var iconModels = ['lineIconLayout', 'finturfPositiveLineIcon', 'finturfNegativeLineIcon'];
281
+ exports.iconModels = iconModels;
282
+ var componentOptions = {
283
+ disableDescriptionsFor: [].concat(iconModels),
284
+ disableChartTypeSwitcherFor: [].concat(iconModels)
285
+ };
286
+ exports.componentOptions = componentOptions;
@@ -0,0 +1,147 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+
5
+ Object.defineProperty(exports, "__esModule", {
6
+ value: true
7
+ });
8
+ exports.prepareData = exports.createGradient = exports.getChartTypeKey = exports.getOptions = void 0;
9
+
10
+ var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
11
+
12
+ var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutProperties"));
13
+
14
+ var _optionsConstructor = _interopRequireDefault(require("./optionsConstructor"));
15
+
16
+ var _Chart = require("./Chart.constants");
17
+
18
+ var _utils = require("../../../../../../JS/Functions/utils");
19
+
20
+ var _excluded = ["notLibraryOptions"];
21
+
22
+ function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) { symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); } keys.push.apply(keys, symbols); } return keys; }
23
+
24
+ function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { (0, _defineProperty2.default)(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }
25
+
26
+ var getOptions = function getOptions(model) {
27
+ return _optionsConstructor.default[model] || {};
28
+ };
29
+
30
+ exports.getOptions = getOptions;
31
+
32
+ var getChartTypeKey = function getChartTypeKey(model) {
33
+ var _optionsConstructor$m, _optionsConstructor$m2, _optionsConstructor$D, _optionsConstructor$D2;
34
+
35
+ return ((_optionsConstructor$m = _optionsConstructor.default[model]) === null || _optionsConstructor$m === void 0 ? void 0 : (_optionsConstructor$m2 = _optionsConstructor$m.notLibraryOptions) === null || _optionsConstructor$m2 === void 0 ? void 0 : _optionsConstructor$m2.chartTypeKey) || ((_optionsConstructor$D = _optionsConstructor.default[_Chart.DEFAULT_CHART_MODEL]) === null || _optionsConstructor$D === void 0 ? void 0 : (_optionsConstructor$D2 = _optionsConstructor$D.notLibraryOptions) === null || _optionsConstructor$D2 === void 0 ? void 0 : _optionsConstructor$D2.chartTypeKey);
36
+ };
37
+
38
+ exports.getChartTypeKey = getChartTypeKey;
39
+
40
+ var createGradient = function createGradient(_ref) {
41
+ var ctx = _ref.ctx,
42
+ area = _ref.area,
43
+ colors = _ref.colors,
44
+ direction = _ref.direction,
45
+ correctionFactors = _ref.correctionFactors;
46
+
47
+ var getStartGradient = function getStartGradient() {
48
+ switch (direction) {
49
+ case 'toTop-toRight':
50
+ return ctx.createLinearGradient(area.left, area.bottom, area.right, area.top);
51
+
52
+ case 'toTop-toLeft':
53
+ return ctx.createLinearGradient(area.right, area.bottom, area.left, area.top);
54
+
55
+ case 'toBottom-toRight':
56
+ return ctx.createLinearGradient(area.left, area.top, area.right, area.bottom);
57
+
58
+ case 'toBottom-toLeft':
59
+ return ctx.createLinearGradient(area.right, area.top, area.left, area.bottom);
60
+
61
+ case 'toBottom':
62
+ return ctx.createLinearGradient(0, area.top, 0, area.bottom);
63
+
64
+ case 'toTop':
65
+ return ctx.createLinearGradient(0, area.bottom, 0, area.top);
66
+
67
+ case 'toLeft':
68
+ return ctx.createLinearGradient(area.right, 0, area.left, 0);
69
+
70
+ case 'toRight':
71
+ default:
72
+ return ctx.createLinearGradient(area.left, 0, area.right, 0);
73
+ }
74
+ };
75
+
76
+ var getGradientWithPoints = function getGradientWithPoints(corection) {
77
+ var newGradient = getStartGradient();
78
+ var INACCURACY = 0.01;
79
+ var staptPoint = corection && corection + INACCURACY < 1 ? 1 - corection - INACCURACY : 0;
80
+ if (corection) newGradient.addColorStop(0, colors[0]);
81
+ colors.forEach(function (color, idx) {
82
+ var point = function () {
83
+ if (!idx) return staptPoint;
84
+ if (idx === colors.length - 1) return 1;
85
+ return (corection || 1) / (colors.length - 1) * idx + staptPoint;
86
+ }();
87
+
88
+ newGradient.addColorStop(point.toFixed(2), color);
89
+ });
90
+ return newGradient;
91
+ };
92
+
93
+ return correctionFactors ? correctionFactors.map(function (fraction) {
94
+ return getGradientWithPoints(fraction);
95
+ }) : getGradientWithPoints();
96
+ };
97
+
98
+ exports.createGradient = createGradient;
99
+
100
+ var prepareData = function prepareData(model, data, chart) {
101
+ if (!chart) return data;
102
+
103
+ var _getOptions = getOptions(model),
104
+ notLibraryOptions = _getOptions.notLibraryOptions,
105
+ libraryOptions = (0, _objectWithoutProperties2.default)(_getOptions, _excluded);
106
+
107
+ var dataPreparationIterationsKeys = notLibraryOptions !== null && notLibraryOptions !== void 0 && notLibraryOptions.changeData ? Object.keys(notLibraryOptions.changeData) : [];
108
+
109
+ var changeData = function changeData(currentData, iterationKey) {
110
+ switch (iterationKey) {
111
+ case 'addGradient':
112
+ var addGradient = notLibraryOptions.changeData.addGradient;
113
+ return _objectSpread(_objectSpread({}, currentData), {}, {
114
+ datasets: currentData.datasets.map(function (dataset) {
115
+ return _objectSpread(_objectSpread({}, dataset), {}, (0, _defineProperty2.default)({}, addGradient.gradientTargetPropertyName, createGradient({
116
+ ctx: chart.ctx,
117
+ area: chart.chartArea,
118
+ colors: addGradient.colors,
119
+ direction: addGradient.direction,
120
+ correctionFactors: addGradient.typeDistributionOfGradientPoints === 'personalBase' ? dataset.data.map(function (value) {
121
+ return value / Math.max.apply(null, dataset.data);
122
+ }) : null
123
+ })));
124
+ })
125
+ });
126
+
127
+ case 'setMaxBarThickness':
128
+ var setMaxBarThickness = notLibraryOptions.changeData.setMaxBarThickness;
129
+ return _objectSpread(_objectSpread({}, currentData), {}, {
130
+ datasets: currentData.datasets.map(function (dataset) {
131
+ return _objectSpread(_objectSpread({}, dataset), {}, {
132
+ maxBarThickness: setMaxBarThickness
133
+ });
134
+ })
135
+ });
136
+
137
+ default:
138
+ return currentData;
139
+ }
140
+ };
141
+
142
+ return dataPreparationIterationsKeys.reduce(function (acc, iterationKey) {
143
+ return changeData(acc, iterationKey);
144
+ }, (0, _utils.clone)(data));
145
+ };
146
+
147
+ exports.prepareData = prepareData;
@@ -0,0 +1,235 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+
5
+ var _typeof = require("@babel/runtime/helpers/typeof");
6
+
7
+ Object.defineProperty(exports, "__esModule", {
8
+ value: true
9
+ });
10
+ exports.default = void 0;
11
+
12
+ var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
13
+
14
+ var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
15
+
16
+ var _react = _interopRequireWildcard(require("react"));
17
+
18
+ var _classnames = _interopRequireDefault(require("classnames"));
19
+
20
+ var _uuid = require("uuid");
21
+
22
+ var _Chart = _interopRequireDefault(require("../Chart/Chart"));
23
+
24
+ var _InputDateRange = _interopRequireDefault(require("../../FormElements/InputDateRange/InputDateRange"));
25
+
26
+ var _utils = require("./partial/utils");
27
+
28
+ var _utils2 = require("../../../Functions/utils");
29
+
30
+ require("./partial/AnyOuterClass.scss");
31
+
32
+ function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
33
+
34
+ function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
35
+
36
+ var ExampleChartIntegration = function ExampleChartIntegration(props) {
37
+ var _ref = props || {},
38
+ dateRange = _ref.dateRange,
39
+ chart = _ref.chart;
40
+
41
+ var _useState = (0, _react.useState)({
42
+ intervalKey: 'thisMonth'
43
+ }),
44
+ _useState2 = (0, _slicedToArray2.default)(_useState, 2),
45
+ range = _useState2[0],
46
+ setRange = _useState2[1];
47
+
48
+ var _useState3 = (0, _react.useState)('Bar'),
49
+ _useState4 = (0, _slicedToArray2.default)(_useState3, 2),
50
+ chartType = _useState4[0],
51
+ setChartType = _useState4[1];
52
+
53
+ var _useState5 = (0, _react.useState)('tab1'),
54
+ _useState6 = (0, _slicedToArray2.default)(_useState5, 2),
55
+ tab = _useState6[0],
56
+ setTab = _useState6[1];
57
+
58
+ var _useState7 = (0, _react.useState)('finturfChartBar'),
59
+ _useState8 = (0, _slicedToArray2.default)(_useState7, 2),
60
+ initialModel = _useState8[0],
61
+ setInitialModel = _useState8[1];
62
+
63
+ var _useState9 = (0, _react.useState)(null),
64
+ _useState10 = (0, _slicedToArray2.default)(_useState9, 2),
65
+ tab1 = _useState10[0],
66
+ setTab1 = _useState10[1];
67
+
68
+ var _useState11 = (0, _react.useState)(null),
69
+ _useState12 = (0, _slicedToArray2.default)(_useState11, 2),
70
+ tab2 = _useState12[0],
71
+ setTab2 = _useState12[1];
72
+
73
+ var _useState13 = (0, _react.useState)(null),
74
+ _useState14 = (0, _slicedToArray2.default)(_useState13, 2),
75
+ tab3 = _useState14[0],
76
+ setTab3 = _useState14[1];
77
+
78
+ var _useState15 = (0, _react.useState)(null),
79
+ _useState16 = (0, _slicedToArray2.default)(_useState15, 2),
80
+ tab4 = _useState16[0],
81
+ setTab4 = _useState16[1];
82
+
83
+ var stateChangesRef = (0, _react.useRef)([]);
84
+
85
+ var getMockData = function getMockData() {
86
+ var labels = (0, _utils.getLabels)(range);
87
+
88
+ var mock = function mock() {
89
+ return chartType === 'Bar' ? labels.map(function (label) {
90
+ return 50;
91
+ }) : labels.map(function (label) {
92
+ return (0, _utils.getMockValue)();
93
+ });
94
+ };
95
+
96
+ return {
97
+ labels: labels,
98
+ datasets: [{
99
+ data: mock()
100
+ }]
101
+ };
102
+ };
103
+
104
+ var _useState17 = (0, _react.useState)(getMockData()),
105
+ _useState18 = (0, _slicedToArray2.default)(_useState17, 2),
106
+ dataForRender = _useState18[0],
107
+ setDataForRender = _useState18[1];
108
+
109
+ var getTabData = function getTabData(tabId) {
110
+ switch (tabId) {
111
+ case 'tab1':
112
+ return !tab1 ? null : (0, _utils2.clone)(tab1);
113
+
114
+ case 'tab2':
115
+ return !tab2 ? null : (0, _utils2.clone)(tab2);
116
+
117
+ case 'tab3':
118
+ return !tab3 ? null : (0, _utils2.clone)(tab3);
119
+
120
+ case 'tab4':
121
+ return !tab4 ? null : (0, _utils2.clone)(tab4);
122
+
123
+ default:
124
+ return null;
125
+ }
126
+ };
127
+
128
+ var selectData = function selectData() {
129
+ return getTabData(tab) ? getTabData(tab) : getMockData();
130
+ };
131
+
132
+ var modelsForSwitch = (0, _react.useMemo)(function () {
133
+ return !!getTabData(tab) ? ['finturfChartBar', 'finturfChartLine'] : ['finturfLoadingModeBar', 'finturfLoadingModeLine'];
134
+ }, [!!getTabData(tab)]);
135
+
136
+ var handleChangeChartType = function handleChangeChartType(model) {
137
+ setChartType(model.includes('Line') ? 'Line' : 'Bar');
138
+ setInitialModel(model);
139
+ };
140
+
141
+ var getModel = function getModel() {
142
+ if (!getTabData(tab)) return chartType === 'Bar' ? 'finturfLoadingModeBar' : 'finturfLoadingModeLine';else return chartType === 'Bar' ? 'finturfChartBar' : 'finturfChartLine';
143
+ };
144
+
145
+ var processResponse = function processResponse(res, tabId) {
146
+ switch (tabId) {
147
+ case 'tab1':
148
+ setTab1(res);
149
+ break;
150
+
151
+ case 'tab2':
152
+ setTab2(res);
153
+ break;
154
+
155
+ case 'tab3':
156
+ setTab3(res);
157
+ break;
158
+
159
+ case 'tab4':
160
+ setTab4(res);
161
+ break;
162
+
163
+ default:
164
+ break;
165
+ }
166
+
167
+ return res;
168
+ };
169
+
170
+ (0, _react.useLayoutEffect)(function () {
171
+ setDataForRender(getMockData());
172
+ setTab1(null);
173
+ setTab2(null);
174
+ setTab3(null);
175
+ setTab4(null);
176
+ stateChangesRef.current = []; // эмуляция запросов
177
+ // вся логика происходит в самих входящих промисах
178
+ // Promise.all добавлен для расширения на случай надобности описания эффектов по завершении всех запросов
179
+
180
+ Promise.all([(0, _utils.getTab)('tab1', range, processResponse), (0, _utils.getTab)('tab2', range, processResponse), (0, _utils.getTab)('tab3', range, processResponse), (0, _utils.getTab)('tab4', range, processResponse)]);
181
+ }, [range]);
182
+ (0, _react.useLayoutEffect)(function () {
183
+ setInitialModel(getModel());
184
+ setDataForRender(selectData());
185
+ }, [!!getTabData(tab), tab]);
186
+ (0, _react.useEffect)(function () {
187
+ var data = getTabData(tab);
188
+ setDataForRender(selectData());
189
+ }, [tab, chartType]);
190
+ return /*#__PURE__*/_react.default.createElement("div", {
191
+ className: "example-wrapper"
192
+ }, /*#__PURE__*/_react.default.createElement(_InputDateRange.default, (0, _extends2.default)({}, dateRange, {
193
+ value: range,
194
+ onChange: setRange
195
+ })), /*#__PURE__*/_react.default.createElement("div", {
196
+ className: "buttons-block"
197
+ }, /*#__PURE__*/_react.default.createElement("button", {
198
+ className: (0, _classnames.default)('tab-button', {
199
+ 'tab-button_active': tab === 'tab1'
200
+ }),
201
+ onClick: function onClick() {
202
+ return setTab('tab1');
203
+ }
204
+ }, "Tab 1"), /*#__PURE__*/_react.default.createElement("button", {
205
+ className: (0, _classnames.default)('tab-button', {
206
+ 'tab-button_active': tab === 'tab2'
207
+ }),
208
+ onClick: function onClick() {
209
+ return setTab('tab2');
210
+ }
211
+ }, "Tab 2"), /*#__PURE__*/_react.default.createElement("button", {
212
+ className: (0, _classnames.default)('tab-button', {
213
+ 'tab-button_active': tab === 'tab3'
214
+ }),
215
+ onClick: function onClick() {
216
+ return setTab('tab3');
217
+ }
218
+ }, "Tab 3"), /*#__PURE__*/_react.default.createElement("button", {
219
+ className: (0, _classnames.default)('tab-button', {
220
+ 'tab-button_active': tab === 'tab4'
221
+ }),
222
+ onClick: function onClick() {
223
+ return setTab('tab4');
224
+ }
225
+ }, "Tab 4")), /*#__PURE__*/_react.default.createElement(_Chart.default, (0, _extends2.default)({}, chart, {
226
+ key: JSON.stringify(dataForRender),
227
+ data: dataForRender,
228
+ setModelExternalValue: handleChangeChartType,
229
+ initialModel: initialModel,
230
+ modelsForSwitch: modelsForSwitch
231
+ })));
232
+ };
233
+
234
+ var _default = ExampleChartIntegration;
235
+ exports.default = _default;