nsc-react-component 2.0.14 → 2.0.17
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/lib/{affix → base/affix}/index.d.ts +0 -0
- package/lib/{affix → base/affix}/index.js +1 -1
- package/lib/{alert → base/alert}/index.d.ts +0 -0
- package/lib/{alert → base/alert}/index.js +1 -1
- package/lib/{anchor → base/anchor}/index.d.ts +0 -0
- package/lib/{anchor → base/anchor}/index.js +1 -1
- package/lib/{avatar → base/avatar}/index.d.ts +0 -0
- package/lib/{avatar → base/avatar}/index.js +1 -1
- package/lib/{backTop → base/backTop}/index.d.ts +0 -0
- package/lib/{backTop → base/backTop}/index.js +1 -1
- package/lib/{badge → base/badge}/index.d.ts +0 -0
- package/lib/{badge → base/badge}/index.js +1 -1
- package/lib/{breadcrumb → base/breadcrumb}/index.d.ts +0 -0
- package/lib/{breadcrumb → base/breadcrumb}/index.js +1 -1
- package/lib/{button → base/button}/index.d.ts +0 -0
- package/lib/{button → base/button}/index.js +2 -2
- package/lib/{button → base/button}/index.less +0 -0
- package/lib/{calendar → base/calendar}/index.d.ts +0 -0
- package/lib/{calendar → base/calendar}/index.js +1 -1
- package/lib/{card → base/card}/index.d.ts +0 -0
- package/lib/{card → base/card}/index.js +1 -1
- package/lib/{carousel → base/carousel}/index.d.ts +0 -0
- package/lib/{carousel → base/carousel}/index.js +1 -1
- package/lib/{cascader → base/cascader}/index.d.ts +0 -0
- package/lib/base/cascader/index.js +268 -0
- package/lib/{chart → base/chart}/index.d.ts +0 -0
- package/lib/base/chart/index.js +353 -0
- package/lib/{checkbox → base/checkbox}/CheckboxGroup.d.ts +0 -0
- package/lib/base/checkbox/CheckboxGroup.js +340 -0
- package/lib/{checkbox → base/checkbox}/index.d.ts +0 -0
- package/lib/{checkbox → base/checkbox}/index.js +1 -1
- package/lib/{collapse → base/collapse}/index.d.ts +0 -0
- package/lib/{collapse → base/collapse}/index.js +1 -1
- package/lib/{comment → base/comment}/index.d.ts +0 -0
- package/lib/{comment → base/comment}/index.js +1 -1
- package/lib/{common → base/common}/BodyRow/index.d.ts +0 -0
- package/lib/{common → base/common}/BodyRow/index.js +1 -1
- package/lib/{common → base/common}/BodyRow/index.less +0 -0
- package/lib/{common → base/common}/Icon.d.ts +0 -0
- package/lib/{common → base/common}/Icon.js +1 -1
- package/lib/{common → base/common}/IconFont.d.ts +0 -0
- package/lib/base/common/IconFont.js +17 -0
- package/lib/{common → base/common}/NoAuthority.d.ts +0 -0
- package/lib/{common → base/common}/NoAuthority.js +1 -1
- package/lib/{common → base/common}/NoData.d.ts +0 -0
- package/lib/{common → base/common}/NoData.js +1 -1
- package/lib/{common → base/common}/NoData.less +0 -0
- package/lib/{common → base/common}/NoMessage.d.ts +0 -0
- package/lib/{common → base/common}/NoMessage.js +1 -1
- package/lib/{common → base/common}/NoNetWork.d.ts +0 -0
- package/lib/{common → base/common}/NoNetWork.js +1 -1
- package/lib/{common → base/common}/Page404.d.ts +0 -0
- package/lib/{common → base/common}/Page404.js +1 -1
- package/lib/{common → base/common}/PageRequest.d.ts +0 -0
- package/lib/{common → base/common}/PageRequest.js +1 -1
- package/lib/{common → base/common}/TreePanel.d.ts +2 -1
- package/lib/base/common/TreePanel.js +290 -0
- package/lib/{common → base/common}/img/NoAuthority.png +0 -0
- package/lib/{common → base/common}/img/NoData.png +0 -0
- package/lib/{common → base/common}/img/NoMessage.png +0 -0
- package/lib/{common → base/common}/img/NoNetWork.png +0 -0
- package/lib/{common → base/common}/img/Page404.png +0 -0
- package/lib/{common → base/common}/withZhLocale.d.ts +0 -0
- package/lib/base/common/withZhLocale.js +20 -0
- package/lib/{configProvider → base/configProvider}/index.d.ts +0 -0
- package/lib/{configProvider → base/configProvider}/index.js +1 -1
- package/lib/{datepick → base/datepick}/Rangepicker.d.ts +0 -0
- package/lib/base/datepick/Rangepicker.js +553 -0
- package/lib/{datepick → base/datepick}/index.d.ts +0 -0
- package/lib/{datepick → base/datepick}/index.js +1 -1
- package/lib/{datepick → base/datepick}/index.less +0 -0
- package/lib/{descriptions → base/descriptions}/index.d.ts +0 -0
- package/lib/{descriptions → base/descriptions}/index.js +1 -1
- package/lib/{divider → base/divider}/index.d.ts +0 -0
- package/lib/{divider → base/divider}/index.js +1 -1
- package/lib/{drawer → base/drawer}/index.d.ts +0 -0
- package/lib/{drawer → base/drawer}/index.js +1 -1
- package/lib/{dropdown → base/dropdown}/index.d.ts +0 -0
- package/lib/{dropdown → base/dropdown}/index.js +1 -1
- package/lib/{form → base/form}/Form.d.ts +0 -0
- package/lib/base/form/Form.js +415 -0
- package/lib/{form → base/form}/filed/Cascader.d.ts +0 -0
- package/lib/{form → base/form}/filed/Cascader.js +1 -1
- package/lib/{form → base/form}/filed/Checkbox.d.ts +0 -0
- package/lib/{form → base/form}/filed/Checkbox.js +1 -1
- package/lib/{form → base/form}/filed/DatePicker.d.ts +0 -0
- package/lib/{form → base/form}/filed/DatePicker.js +1 -1
- package/lib/{form → base/form}/filed/FormItem.d.ts +0 -0
- package/lib/{form → base/form}/filed/FormItem.js +1 -1
- package/lib/{form → base/form}/filed/Input.d.ts +0 -0
- package/lib/{form → base/form}/filed/Input.js +1 -1
- package/lib/{form → base/form}/filed/InputEamil.d.ts +0 -0
- package/lib/{form → base/form}/filed/InputEamil.js +1 -1
- package/lib/{form → base/form}/filed/InputNumber.d.ts +0 -0
- package/lib/{form → base/form}/filed/InputNumber.js +1 -1
- package/lib/{form → base/form}/filed/InputPassword.d.ts +0 -0
- package/lib/{form → base/form}/filed/InputPassword.js +1 -1
- package/lib/{form → base/form}/filed/Item.d.ts +0 -0
- package/lib/base/form/filed/Item.js +161 -0
- package/lib/{form → base/form}/filed/Radio.d.ts +0 -0
- package/lib/{form → base/form}/filed/Radio.js +1 -1
- package/lib/{form → base/form}/filed/RangerPicker.d.ts +0 -0
- package/lib/{form → base/form}/filed/RangerPicker.js +1 -1
- package/lib/{form → base/form}/filed/Rate.d.ts +0 -0
- package/lib/{form → base/form}/filed/Rate.js +1 -1
- package/lib/{form → base/form}/filed/Select.d.ts +0 -0
- package/lib/{form → base/form}/filed/Select.js +1 -1
- package/lib/{form → base/form}/filed/Slider.d.ts +0 -0
- package/lib/{form → base/form}/filed/Slider.js +1 -1
- package/lib/{form → base/form}/filed/Switch.d.ts +0 -0
- package/lib/{form → base/form}/filed/Switch.js +1 -1
- package/lib/{form → base/form}/filed/TagSelect.d.ts +0 -0
- package/lib/{form → base/form}/filed/TagSelect.js +1 -1
- package/lib/{form → base/form}/filed/TextArea.d.ts +0 -0
- package/lib/{form → base/form}/filed/TextArea.js +1 -1
- package/lib/{form → base/form}/filed/Upload.d.ts +0 -0
- package/lib/{form → base/form}/filed/Upload.js +1 -1
- package/lib/{form → base/form}/index.d.ts +0 -0
- package/lib/{form → base/form}/index.js +1 -1
- package/lib/{grid → base/grid}/Col.d.ts +0 -0
- package/lib/{grid → base/grid}/Col.js +1 -1
- package/lib/{grid → base/grid}/Row.d.ts +0 -0
- package/lib/{grid → base/grid}/Row.js +1 -1
- package/lib/{grid → base/grid}/index.d.ts +0 -0
- package/lib/{grid → base/grid}/index.js +0 -0
- package/lib/{image → base/image}/index.d.ts +0 -0
- package/lib/{image → base/image}/index.js +1 -1
- package/lib/{input → base/input}/Email.d.ts +0 -0
- package/lib/{input → base/input}/Email.js +1 -1
- package/lib/{input → base/input}/Number.d.ts +0 -0
- package/lib/{input → base/input}/Number.js +1 -1
- package/lib/{input → base/input}/Password.d.ts +0 -3
- package/lib/{input → base/input}/Password.js +1 -1
- package/lib/{input → base/input}/Search.d.ts +0 -3
- package/lib/{input → base/input}/Search.js +1 -1
- package/lib/{input → base/input}/TextArea.d.ts +0 -3
- package/lib/{input → base/input}/TextArea.js +1 -1
- package/lib/{input → base/input}/index.d.ts +0 -0
- package/lib/base/input/index.js +242 -0
- package/lib/{input → base/input}/index.less +0 -0
- package/lib/{layout → base/layout}/index.d.ts +0 -0
- package/lib/{layout → base/layout}/index.js +1 -1
- package/lib/{list → base/list}/index.d.ts +0 -0
- package/lib/{list → base/list}/index.js +1 -1
- package/lib/{menu → base/menu}/index.d.ts +0 -0
- package/lib/base/menu/index.js +247 -0
- package/lib/{message → base/message}/index.d.ts +0 -0
- package/lib/{message → base/message}/index.js +1 -1
- package/lib/{modal → base/modal}/index.d.ts +0 -0
- package/lib/{modal → base/modal}/index.js +1 -1
- package/lib/{notification → base/notification}/index.d.ts +0 -0
- package/lib/{notification → base/notification}/index.js +1 -1
- package/lib/{pageHeader → base/pageHeader}/index.d.ts +0 -0
- package/lib/{pageHeader → base/pageHeader}/index.js +1 -1
- package/lib/{pagination → base/pagination}/index.d.ts +0 -0
- package/lib/{pagination → base/pagination}/index.js +1 -1
- package/lib/{popconfirm → base/popconfirm}/index.d.ts +0 -0
- package/lib/{popconfirm → base/popconfirm}/index.js +1 -1
- package/lib/{popover → base/popover}/index.d.ts +0 -0
- package/lib/{popover → base/popover}/index.js +1 -1
- package/lib/{progress → base/progress}/index.d.ts +0 -0
- package/lib/{progress → base/progress}/index.js +1 -1
- package/lib/{radio → base/radio}/RadioGroup.d.ts +0 -0
- package/lib/base/radio/RadioGroup.js +378 -0
- package/lib/{radio → base/radio}/index.d.ts +0 -0
- package/lib/{radio → base/radio}/index.js +1 -1
- package/lib/{result → base/result}/index.d.ts +0 -0
- package/lib/{result → base/result}/index.js +1 -1
- package/lib/{select → base/select}/index.d.ts +0 -0
- package/lib/base/select/index.js +529 -0
- package/lib/{select → base/select}/index.less +0 -0
- package/lib/{skeleton → base/skeleton}/index.d.ts +0 -0
- package/lib/{skeleton → base/skeleton}/index.js +1 -1
- package/lib/{space → base/space}/index.d.ts +0 -0
- package/lib/{space → base/space}/index.js +1 -1
- package/lib/{spin → base/spin}/index.d.ts +0 -0
- package/lib/{spin → base/spin}/index.js +1 -1
- package/lib/{statistic → base/statistic}/index.d.ts +0 -0
- package/lib/{statistic → base/statistic}/index.js +1 -1
- package/lib/{steps → base/steps}/index.d.ts +0 -0
- package/lib/{steps → base/steps}/index.js +1 -1
- package/lib/{table → base/table}/index.d.ts +10 -2
- package/lib/base/table/index.js +902 -0
- package/lib/{table → base/table}/index.module.less +22 -0
- package/lib/{table → base/table}/resize.module.less +0 -0
- package/lib/{tabs → base/tabs}/Tabpane.d.ts +0 -0
- package/lib/{tabs → base/tabs}/Tabpane.js +1 -1
- package/lib/{tabs → base/tabs}/index.d.ts +0 -0
- package/lib/{tabs → base/tabs}/index.js +1 -1
- package/lib/{tagSelect → base/tagSelect}/TagSelect.d.ts +0 -0
- package/lib/base/tagSelect/TagSelect.js +268 -0
- package/lib/{tagSelect → base/tagSelect}/index.d.ts +0 -0
- package/lib/base/tagSelect/index.js +188 -0
- package/lib/{tagSelect → base/tagSelect}/index.less +0 -0
- package/lib/{timeline → base/timeline}/index.d.ts +0 -0
- package/lib/{timeline → base/timeline}/index.js +1 -1
- package/lib/{tooltip → base/tooltip}/index.d.ts +0 -0
- package/lib/{tooltip → base/tooltip}/index.js +1 -1
- package/lib/{tree → base/tree}/TreeSearch.d.ts +0 -0
- package/lib/base/tree/TreeSearch.js +273 -0
- package/lib/{tree → base/tree}/index.d.ts +0 -0
- package/lib/base/tree/index.js +307 -0
- package/lib/{tree → base/tree}/index.less +0 -0
- package/lib/{typography → base/typography}/index.d.ts +0 -0
- package/lib/{typography → base/typography}/index.js +1 -1
- package/lib/index.d.ts +63 -63
- package/lib/index.js +63 -63
- package/lib/{pageComponents → page}/BasePage/Form.d.ts +0 -0
- package/lib/page/BasePage/Form.js +244 -0
- package/lib/{pageComponents → page}/BasePage/index.d.ts +2 -3
- package/lib/page/BasePage/index.js +636 -0
- package/lib/{pageComponents → page}/BasePage/index.module.less +0 -0
- package/lib/utils.d.ts +1 -0
- package/lib/utils.js +16 -9
- package/package.json +1 -1
- package/lib/cascader/index.js +0 -268
- package/lib/chart/index.js +0 -353
- package/lib/checkbox/CheckboxGroup.js +0 -338
- package/lib/common/IconFont.js +0 -17
- package/lib/common/TreePanel.js +0 -303
- package/lib/common/withZhLocale.js +0 -20
- package/lib/datepick/Rangepicker.js +0 -553
- package/lib/form/Form.js +0 -415
- package/lib/form/filed/Item.js +0 -161
- package/lib/input/index.js +0 -242
- package/lib/menu/index.js +0 -247
- package/lib/pageComponents/BasePage/Form.js +0 -244
- package/lib/pageComponents/BasePage/index.js +0 -626
- package/lib/radio/RadioGroup.js +0 -376
- package/lib/select/index.js +0 -524
- package/lib/table/index.js +0 -756
- package/lib/tagSelect/TagSelect.js +0 -268
- package/lib/tagSelect/index.js +0 -190
- package/lib/tree/TreeSearch.js +0 -274
- package/lib/tree/index.js +0 -293
|
@@ -0,0 +1,353 @@
|
|
|
1
|
+
function _typeof(obj) { "@babel/helpers - typeof"; if (typeof Symbol === "function" && typeof Symbol.iterator === "symbol") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }; } return _typeof(obj); }
|
|
2
|
+
|
|
3
|
+
var _excluded = ["url", "listeners"];
|
|
4
|
+
|
|
5
|
+
function _toConsumableArray(arr) { return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _unsupportedIterableToArray(arr) || _nonIterableSpread(); }
|
|
6
|
+
|
|
7
|
+
function _nonIterableSpread() { throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
|
|
8
|
+
|
|
9
|
+
function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
|
|
10
|
+
|
|
11
|
+
function _iterableToArray(iter) { if (typeof Symbol !== "undefined" && iter[Symbol.iterator] != null || iter["@@iterator"] != null) return Array.from(iter); }
|
|
12
|
+
|
|
13
|
+
function _arrayWithoutHoles(arr) { if (Array.isArray(arr)) return _arrayLikeToArray(arr); }
|
|
14
|
+
|
|
15
|
+
function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }
|
|
16
|
+
|
|
17
|
+
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; }
|
|
18
|
+
|
|
19
|
+
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) { _defineProperty(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; }
|
|
20
|
+
|
|
21
|
+
function _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }
|
|
22
|
+
|
|
23
|
+
function _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }
|
|
24
|
+
|
|
25
|
+
function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
|
|
26
|
+
|
|
27
|
+
function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }
|
|
28
|
+
|
|
29
|
+
function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }
|
|
30
|
+
|
|
31
|
+
function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) _setPrototypeOf(subClass, superClass); }
|
|
32
|
+
|
|
33
|
+
function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }
|
|
34
|
+
|
|
35
|
+
function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }
|
|
36
|
+
|
|
37
|
+
function _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === "object" || typeof call === "function")) { return call; } return _assertThisInitialized(self); }
|
|
38
|
+
|
|
39
|
+
function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return self; }
|
|
40
|
+
|
|
41
|
+
function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }
|
|
42
|
+
|
|
43
|
+
function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }
|
|
44
|
+
|
|
45
|
+
function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
|
|
46
|
+
|
|
47
|
+
import React, { PureComponent } from "react";
|
|
48
|
+
import * as echarts from "echarts";
|
|
49
|
+
import Store from "@bj-nsc/msn";
|
|
50
|
+
import { utils } from "@bj-nsc/msn/lib/utils";
|
|
51
|
+
import { px2vw } from "../../utils";
|
|
52
|
+
import { isArray, isObject } from "@bj-nsc/functions";
|
|
53
|
+
|
|
54
|
+
//data示例
|
|
55
|
+
|
|
56
|
+
/**
|
|
57
|
+
数组:
|
|
58
|
+
data=[{name:'1月',value:20},{name:'2月',value:10},{name:'3月',value:25}]
|
|
59
|
+
对象
|
|
60
|
+
data={name:['1月','2月','3月'],value:[20,30,40]}
|
|
61
|
+
*/
|
|
62
|
+
var NscChart = /*#__PURE__*/function (_PureComponent) {
|
|
63
|
+
_inherits(NscChart, _PureComponent);
|
|
64
|
+
|
|
65
|
+
var _super = _createSuper(NscChart);
|
|
66
|
+
|
|
67
|
+
function NscChart(props) {
|
|
68
|
+
var _this2;
|
|
69
|
+
|
|
70
|
+
_classCallCheck(this, NscChart);
|
|
71
|
+
|
|
72
|
+
_this2 = _super.call(this, props);
|
|
73
|
+
|
|
74
|
+
_defineProperty(_assertThisInitialized(_this2), "chartRef", /*#__PURE__*/React.createRef());
|
|
75
|
+
|
|
76
|
+
_defineProperty(_assertThisInitialized(_this2), "myChart", null);
|
|
77
|
+
|
|
78
|
+
_defineProperty(_assertThisInitialized(_this2), "store", {});
|
|
79
|
+
|
|
80
|
+
_defineProperty(_assertThisInitialized(_this2), "state", {
|
|
81
|
+
dataSource: null
|
|
82
|
+
});
|
|
83
|
+
|
|
84
|
+
_defineProperty(_assertThisInitialized(_this2), "isFirst", true);
|
|
85
|
+
|
|
86
|
+
var data = props.data,
|
|
87
|
+
_props$store = props.store,
|
|
88
|
+
store = _props$store === void 0 ? {} : _props$store,
|
|
89
|
+
children = props.children,
|
|
90
|
+
options = props.option,
|
|
91
|
+
_props$autoLoad = props.autoLoad,
|
|
92
|
+
autoLoad = _props$autoLoad === void 0 ? true : _props$autoLoad;
|
|
93
|
+
|
|
94
|
+
var url = store.url,
|
|
95
|
+
_store$listeners = store.listeners,
|
|
96
|
+
listenersPops = _store$listeners === void 0 ? {} : _store$listeners,
|
|
97
|
+
stores = _objectWithoutProperties(store, _excluded);
|
|
98
|
+
|
|
99
|
+
if (!children) {
|
|
100
|
+
if (!(data || url || options)) {
|
|
101
|
+
throw new Error("url、data、option不能都为空!");
|
|
102
|
+
}
|
|
103
|
+
|
|
104
|
+
var _this = _assertThisInitialized(_this2);
|
|
105
|
+
|
|
106
|
+
var storeProps = _objectSpread({
|
|
107
|
+
model: "model",
|
|
108
|
+
component: _assertThisInitialized(_this2),
|
|
109
|
+
listeners: {
|
|
110
|
+
onBeforeLoad: function onBeforeLoad(store, options) {
|
|
111
|
+
utils.callback(listenersPops.onBeforeLoad, _this, [store, options]);
|
|
112
|
+
},
|
|
113
|
+
load: function load(data, modelData, store) {
|
|
114
|
+
_this.setState({
|
|
115
|
+
dataSource: modelData
|
|
116
|
+
}, function () {
|
|
117
|
+
if (_this.isFirst && autoLoad) {
|
|
118
|
+
_this.init();
|
|
119
|
+
|
|
120
|
+
_this.isFirst = false;
|
|
121
|
+
}
|
|
122
|
+
});
|
|
123
|
+
|
|
124
|
+
utils.callback(listenersPops.load, _this, [data, modelData, store]);
|
|
125
|
+
},
|
|
126
|
+
dataChanged: function dataChanged(data, modelData, store) {
|
|
127
|
+
_this.setState({
|
|
128
|
+
dataSource: modelData
|
|
129
|
+
}, function () {
|
|
130
|
+
if (autoLoad) {
|
|
131
|
+
_this.init();
|
|
132
|
+
}
|
|
133
|
+
});
|
|
134
|
+
|
|
135
|
+
utils.callback(listenersPops.dataChanged, _this, [data, modelData, store]);
|
|
136
|
+
}
|
|
137
|
+
}
|
|
138
|
+
}, stores);
|
|
139
|
+
|
|
140
|
+
if (url && data == null) {
|
|
141
|
+
storeProps = _objectSpread(_objectSpread({}, {
|
|
142
|
+
autoLoad: true,
|
|
143
|
+
url: url
|
|
144
|
+
}), storeProps);
|
|
145
|
+
}
|
|
146
|
+
|
|
147
|
+
_this2.store = new Store(storeProps);
|
|
148
|
+
}
|
|
149
|
+
|
|
150
|
+
return _this2;
|
|
151
|
+
}
|
|
152
|
+
|
|
153
|
+
_createClass(NscChart, [{
|
|
154
|
+
key: "componentDidMount",
|
|
155
|
+
value: function componentDidMount() {
|
|
156
|
+
var _this$props = this.props,
|
|
157
|
+
data = _this$props.data,
|
|
158
|
+
_this$props$autoLoad = _this$props.autoLoad,
|
|
159
|
+
autoLoad = _this$props$autoLoad === void 0 ? true : _this$props$autoLoad,
|
|
160
|
+
store = _this$props.store,
|
|
161
|
+
option = _this$props.option;
|
|
162
|
+
|
|
163
|
+
if (data && autoLoad) {
|
|
164
|
+
this.init();
|
|
165
|
+
} else if (!data && !(store !== null && store !== void 0 && store.url) && option) {
|
|
166
|
+
this.init();
|
|
167
|
+
}
|
|
168
|
+
}
|
|
169
|
+
}, {
|
|
170
|
+
key: "componentDidUpdate",
|
|
171
|
+
value: function componentDidUpdate(prevProps, prevState, snapshot) {
|
|
172
|
+
var _this$props$autoLoad2 = this.props.autoLoad,
|
|
173
|
+
autoLoad = _this$props$autoLoad2 === void 0 ? true : _this$props$autoLoad2;
|
|
174
|
+
|
|
175
|
+
if (autoLoad) {
|
|
176
|
+
if (JSON.stringify(prevProps.data) !== JSON.stringify(this.props.data)) {
|
|
177
|
+
this.init();
|
|
178
|
+
} else if (JSON.stringify(prevProps.option) !== JSON.stringify(this.props.option)) {
|
|
179
|
+
this.init();
|
|
180
|
+
}
|
|
181
|
+
}
|
|
182
|
+
}
|
|
183
|
+
}, {
|
|
184
|
+
key: "reSetChart",
|
|
185
|
+
value: function reSetChart() {
|
|
186
|
+
this.init();
|
|
187
|
+
}
|
|
188
|
+
}, {
|
|
189
|
+
key: "isString",
|
|
190
|
+
value: function isString(v) {
|
|
191
|
+
return typeof v === "string";
|
|
192
|
+
}
|
|
193
|
+
}, {
|
|
194
|
+
key: "componentWillUnmount",
|
|
195
|
+
value: function componentWillUnmount() {
|
|
196
|
+
window.removeEventListener("resize", this.handleChartResize.bind(this));
|
|
197
|
+
}
|
|
198
|
+
}, {
|
|
199
|
+
key: "isReplace",
|
|
200
|
+
value: function isReplace(v) {
|
|
201
|
+
return /^{.*}$/gi.test(v);
|
|
202
|
+
}
|
|
203
|
+
}, {
|
|
204
|
+
key: "replace",
|
|
205
|
+
value: function replace(v) {
|
|
206
|
+
return v.substring(1, v.length - 1);
|
|
207
|
+
}
|
|
208
|
+
}, {
|
|
209
|
+
key: "dataConversion",
|
|
210
|
+
value: function dataConversion(data, datas, dataMap) {
|
|
211
|
+
var _this3 = this;
|
|
212
|
+
|
|
213
|
+
var result;
|
|
214
|
+
|
|
215
|
+
if (data) {
|
|
216
|
+
if (this.isString(data) && this.isReplace(data)) {
|
|
217
|
+
result = dataMap[this.replace(data)];
|
|
218
|
+
} else if (isArray(data)) {
|
|
219
|
+
data.map(function (item) {
|
|
220
|
+
var v = item.value;
|
|
221
|
+
|
|
222
|
+
if (v && _this3.isReplace(v)) {
|
|
223
|
+
item.value = _this3.dataConversion(v, datas, dataMap);
|
|
224
|
+
}
|
|
225
|
+
});
|
|
226
|
+
result = data;
|
|
227
|
+
} else if (isObject(data)) {
|
|
228
|
+
result = [];
|
|
229
|
+
|
|
230
|
+
if (isArray(datas)) {
|
|
231
|
+
datas.map(function (item) {
|
|
232
|
+
var tempObj = {};
|
|
233
|
+
|
|
234
|
+
for (var key in item) {
|
|
235
|
+
var v = item[key];
|
|
236
|
+
|
|
237
|
+
if (_this3.isReplace(v)) {
|
|
238
|
+
tempObj[key] = item[_this3.replace(v)];
|
|
239
|
+
} else {
|
|
240
|
+
tempObj[key] = v;
|
|
241
|
+
}
|
|
242
|
+
}
|
|
243
|
+
|
|
244
|
+
result.push(tempObj);
|
|
245
|
+
});
|
|
246
|
+
}
|
|
247
|
+
}
|
|
248
|
+
}
|
|
249
|
+
|
|
250
|
+
return result;
|
|
251
|
+
}
|
|
252
|
+
}, {
|
|
253
|
+
key: "objectConversion",
|
|
254
|
+
value: function objectConversion(obj, datas, dataMap) {
|
|
255
|
+
var _this4 = this;
|
|
256
|
+
|
|
257
|
+
var tempObj;
|
|
258
|
+
|
|
259
|
+
if (obj) {
|
|
260
|
+
if (isArray(obj)) {
|
|
261
|
+
tempObj = _toConsumableArray(obj);
|
|
262
|
+
tempObj.map(function (item) {
|
|
263
|
+
if (item.data) {
|
|
264
|
+
item.data = _this4.dataConversion(item.data, datas, dataMap);
|
|
265
|
+
}
|
|
266
|
+
});
|
|
267
|
+
} else if (this.isString(obj)) {
|
|
268
|
+
tempObj = obj;
|
|
269
|
+
tempObj.data = this.dataConversion(tempObj, datas, dataMap);
|
|
270
|
+
} else if (isObject(obj)) {
|
|
271
|
+
tempObj = _objectSpread({}, obj);
|
|
272
|
+
tempObj.data = this.dataConversion(tempObj.data, datas, dataMap);
|
|
273
|
+
}
|
|
274
|
+
}
|
|
275
|
+
|
|
276
|
+
return tempObj;
|
|
277
|
+
}
|
|
278
|
+
}, {
|
|
279
|
+
key: "init",
|
|
280
|
+
value: function init() {
|
|
281
|
+
var _myChart$getZr, _myChart$getZr2;
|
|
282
|
+
|
|
283
|
+
var _this$props2 = this.props,
|
|
284
|
+
option = _this$props2.option,
|
|
285
|
+
data = _this$props2.data,
|
|
286
|
+
OnClick = _this$props2.OnClick,
|
|
287
|
+
OnZrClick = _this$props2.OnZrClick;
|
|
288
|
+
var dataSource = this.state.dataSource;
|
|
289
|
+
var dataMap = {};
|
|
290
|
+
var newDatas = data || dataSource;
|
|
291
|
+
|
|
292
|
+
var newOption = _objectSpread({}, option);
|
|
293
|
+
|
|
294
|
+
if (isArray(newDatas)) {
|
|
295
|
+
newDatas.map(function (item) {
|
|
296
|
+
for (var key in item) {
|
|
297
|
+
if (dataMap[key] == null) {
|
|
298
|
+
dataMap[key] = [];
|
|
299
|
+
}
|
|
300
|
+
|
|
301
|
+
dataMap[key].push(item[key]);
|
|
302
|
+
}
|
|
303
|
+
});
|
|
304
|
+
} else if (isObject(newDatas)) {
|
|
305
|
+
dataMap = newDatas;
|
|
306
|
+
}
|
|
307
|
+
|
|
308
|
+
newOption.xAxis = this.objectConversion(newOption.xAxis, newDatas, dataMap);
|
|
309
|
+
newOption.yAxis = this.objectConversion(newOption.yAxis, newDatas, dataMap);
|
|
310
|
+
newOption.series = this.objectConversion(newOption.series, newDatas, dataMap);
|
|
311
|
+
var myChart = this.myChart = echarts.init(this.chartRef.current); //初始化echarts,通过ref属性获取dom
|
|
312
|
+
|
|
313
|
+
myChart.clear();
|
|
314
|
+
myChart.off("click");
|
|
315
|
+
myChart === null || myChart === void 0 ? void 0 : (_myChart$getZr = myChart.getZr()) === null || _myChart$getZr === void 0 ? void 0 : _myChart$getZr.off("click");
|
|
316
|
+
myChart.setOption(newOption);
|
|
317
|
+
myChart.on("click", function (params) {
|
|
318
|
+
OnClick && OnClick(params, myChart);
|
|
319
|
+
});
|
|
320
|
+
myChart === null || myChart === void 0 ? void 0 : (_myChart$getZr2 = myChart.getZr()) === null || _myChart$getZr2 === void 0 ? void 0 : _myChart$getZr2.on("click", function (params) {
|
|
321
|
+
OnZrClick && OnZrClick(params, myChart);
|
|
322
|
+
});
|
|
323
|
+
window.addEventListener("resize", this.handleChartResize.bind(this));
|
|
324
|
+
}
|
|
325
|
+
}, {
|
|
326
|
+
key: "handleChartResize",
|
|
327
|
+
value: function handleChartResize() {
|
|
328
|
+
if (this.myChart) {
|
|
329
|
+
this.myChart.resize();
|
|
330
|
+
}
|
|
331
|
+
}
|
|
332
|
+
}, {
|
|
333
|
+
key: "render",
|
|
334
|
+
value: function render() {
|
|
335
|
+
var _this$props3 = this.props,
|
|
336
|
+
width = _this$props3.width,
|
|
337
|
+
height = _this$props3.height;
|
|
338
|
+
var boxStyle = {
|
|
339
|
+
width: typeof width == "number" ? px2vw(width) : width,
|
|
340
|
+
height: typeof height == "number" ? px2vw(height) : height
|
|
341
|
+
};
|
|
342
|
+
return /*#__PURE__*/React.createElement("div", {
|
|
343
|
+
style: boxStyle,
|
|
344
|
+
ref: this.chartRef
|
|
345
|
+
});
|
|
346
|
+
}
|
|
347
|
+
}]);
|
|
348
|
+
|
|
349
|
+
return NscChart;
|
|
350
|
+
}(PureComponent);
|
|
351
|
+
|
|
352
|
+
export default NscChart;
|
|
353
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9jb21wb25lbnRzL2Jhc2UvY2hhcnQvaW5kZXgudHN4Il0sIm5hbWVzIjpbIlJlYWN0IiwiUHVyZUNvbXBvbmVudCIsImVjaGFydHMiLCJTdG9yZSIsInV0aWxzIiwicHgydnciLCJpc0FycmF5IiwiaXNPYmplY3QiLCJOc2NDaGFydCIsInByb3BzIiwiY3JlYXRlUmVmIiwiZGF0YVNvdXJjZSIsImRhdGEiLCJzdG9yZSIsImNoaWxkcmVuIiwib3B0aW9ucyIsIm9wdGlvbiIsImF1dG9Mb2FkIiwidXJsIiwibGlzdGVuZXJzIiwibGlzdGVuZXJzUG9wcyIsInN0b3JlcyIsIkVycm9yIiwiX3RoaXMiLCJzdG9yZVByb3BzIiwibW9kZWwiLCJjb21wb25lbnQiLCJvbkJlZm9yZUxvYWQiLCJjYWxsYmFjayIsImxvYWQiLCJtb2RlbERhdGEiLCJzZXRTdGF0ZSIsImlzRmlyc3QiLCJpbml0IiwiZGF0YUNoYW5nZWQiLCJwcmV2UHJvcHMiLCJwcmV2U3RhdGUiLCJzbmFwc2hvdCIsIkpTT04iLCJzdHJpbmdpZnkiLCJ2Iiwid2luZG93IiwicmVtb3ZlRXZlbnRMaXN0ZW5lciIsImhhbmRsZUNoYXJ0UmVzaXplIiwiYmluZCIsInRlc3QiLCJzdWJzdHJpbmciLCJsZW5ndGgiLCJkYXRhcyIsImRhdGFNYXAiLCJyZXN1bHQiLCJpc1N0cmluZyIsImlzUmVwbGFjZSIsInJlcGxhY2UiLCJtYXAiLCJpdGVtIiwidmFsdWUiLCJkYXRhQ29udmVyc2lvbiIsInRlbXBPYmoiLCJrZXkiLCJwdXNoIiwib2JqIiwiT25DbGljayIsIk9uWnJDbGljayIsInN0YXRlIiwibmV3RGF0YXMiLCJuZXdPcHRpb24iLCJ4QXhpcyIsIm9iamVjdENvbnZlcnNpb24iLCJ5QXhpcyIsInNlcmllcyIsIm15Q2hhcnQiLCJjaGFydFJlZiIsImN1cnJlbnQiLCJjbGVhciIsIm9mZiIsImdldFpyIiwic2V0T3B0aW9uIiwib24iLCJwYXJhbXMiLCJhZGRFdmVudExpc3Rl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QUFMLENBQWFVLE1BQWI7QUFDRDtBQUNGOzs7V0FFRCxrQkFBUztBQUNQLHlCQUEwQixLQUFLeEUsS0FBL0I7QUFBQSxVQUFReUUsS0FBUixnQkFBUUEsS0FBUjtBQUFBLFVBQWVDLE1BQWYsZ0JBQWVBLE1BQWY7QUFDQSxVQUFNQyxRQUFRLEdBQUc7QUFDZkYsUUFBQUEsS0FBSyxFQUFFLE9BQU9BLEtBQVAsSUFBZ0IsUUFBaEIsR0FBMkI3RSxLQUFLLENBQUM2RSxLQUFELENBQWhDLEdBQTBDQSxLQURsQztBQUVmQyxRQUFBQSxNQUFNLEVBQUUsT0FBT0EsTUFBUCxJQUFpQixRQUFqQixHQUE0QjlFLEtBQUssQ0FBQzhFLE1BQUQsQ0FBakMsR0FBNENBO0FBRnJDLE9BQWpCO0FBSUEsMEJBQU87QUFBSyxRQUFBLEtBQUssRUFBRUMsUUFBWjtBQUFzQixRQUFBLEdBQUcsRUFBRSxLQUFLWjtBQUFoQyxRQUFQO0FBQ0Q7Ozs7RUExTm9CdkUsYTs7QUE2TnZCLGVBQWVPLFFBQWYiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgUmVhY3QsIHsgUHVyZUNvbXBvbmVudCB9IGZyb20gXCJyZWFjdFwiO1xyXG5pbXBvcnQgKiBhcyBlY2hhcnRzIGZyb20gXCJlY2hhcnRzXCI7XHJcbmltcG9ydCB7IEVDaGFydHMgfSBmcm9tIFwiZWNoYXJ0cy9saWIvZWNoYXJ0c1wiO1xyXG5pbXBvcnQgU3RvcmUsIHsgU3RvcmVQcm9wcyB9IGZyb20gXCJAYmotbnNjL21zblwiO1xyXG5pbXBvcnQgeyB1dGlscyB9IGZyb20gXCJAYmotbnNjL21zbi9saWIvdXRpbHNcIjtcclxuaW1wb3J0IHsgcHgydncgfSBmcm9tIFwiLi4vLi4vdXRpbHNcIjtcclxuaW1wb3J0IHsgaXNBcnJheSwgaXNPYmplY3QgfSBmcm9tIFwiQGJqLW5zYy9mdW5jdGlvbnNcIjtcclxuaW50ZXJmYWNlIENoYXJ0UHJvcHMge1xyXG4gIHN0b3JlPzogU3RvcmVQcm9wcztcclxuICBvcHRpb246IGFueTtcclxuICBkYXRhPzogQXJyYXk8T2JqZWN0PiB8IE9iamVjdDtcclxuICB3aWR0aDogbnVtYmVyIHwgc3RyaW5nOyAvL+WbvuihqOWuveW6plxyXG4gIGhlaWdodDogbnVtYmVyIHwgc3RyaW5nOyAvL+WbvuihqOmVv+W6plxyXG4gIGF1dG9Mb2FkPzogYm9vbGVhbjsgLy/mlbDmja7mlLnlj5jvvIzoh6rliqjliLfmlrDlm77ooags6buY6K6kdHJ1ZVxyXG4gIE9uQ2xpY2s/OiAocGFyYW1zOiBhbnksIGU/OiBhbnkpID0+IHZvaWQ7IC8v5Zu+6KGo54K55Ye75LqL5Lu2XHJcbiAgT25ackNsaWNrPzogKHBhcmFtczogYW55LCBlPzogYW55KSA9PiB2b2lkOyAvL+WbvuihqOeCueWHu+S6i+S7tlxyXG4gIFtwcm9OYW1lczogc3RyaW5nXTogYW55O1xyXG59XHJcblxyXG4vL2RhdGHnpLrkvotcclxuLyoqXHJcbiDmlbDnu4TvvJpcclxuIGRhdGE9W3tuYW1lOicx5pyIJyx2YWx1ZToyMH0se25hbWU6JzLmnIgnLHZhbHVlOjEwfSx7bmFtZTonM+aciCcsdmFsdWU6MjV9XVxyXG4g5a+56LGhXHJcbiBkYXRhPXtuYW1lOlsnMeaciCcsJzLmnIgnLCcz5pyIJ10sdmFsdWU6WzIwLDMwLDQwXX1cclxuICovXHJcbmNsYXNzIE5zY0NoYXJ0IGV4dGVuZHMgUHVyZUNvbXBvbmVudDxDaGFydFByb3BzPiB7XHJcbiAgY2hhcnRSZWYgPSBSZWFjdC5jcmVhdGVSZWY8SFRNTERpdkVsZW1lbnQ+KCk7XHJcbiAgbXlDaGFydDogRUNoYXJ0cyB8IG51bGwgPSBudWxsO1xyXG4gIHN0b3JlID0ge30gYXMgU3RvcmVQcm9wcztcclxuICBzdGF0ZSA9IHtcclxuICAgIGRhdGFTb3VyY2U6IG51bGwsXHJcbiAgfTtcclxuICBpc0ZpcnN0ID0gdHJ1ZTtcclxuICBjb25zdHJ1Y3Rvcihwcm9wcykge1xyXG4gICAgc3VwZXIocHJvcHMpO1xyXG4gICAgY29uc3Qge1xyXG4gICAgICBkYXRhLFxyXG4gICAgICBzdG9yZSA9IHt9LFxyXG4gICAgICBjaGlsZHJlbixcclxuICAgICAgb3B0aW9uOiBvcHRpb25zLFxyXG4gICAgICBhdXRvTG9hZCA9IHRydWUsXHJcbiAgICB9ID0gcHJvcHM7XHJcbiAgICBjb25zdCB7IHVybCwgbGlzdGVuZXJzOiBsaXN0ZW5lcnNQb3BzID0ge30sIC4uLnN0b3JlcyB9ID0gc3RvcmU7XHJcbiAgICBpZiAoIWNoaWxkcmVuKSB7XHJcbiAgICAgIGlmICghKGRhdGEgfHwgdXJsIHx8IG9wdGlvbnMpKSB7XHJcbiAgICAgICAgdGhyb3cgbmV3IEVycm9yKFwidXJs44CBZGF0YeOAgW9wdGlvbuS4jeiDvemDveS4uuepuu+8gVwiKTtcclxuICAgICAgfVxyXG4gICAgICBsZXQgX3RoaXMgPSB0aGlzO1xyXG4gICAgICBsZXQgc3RvcmVQcm9wcyA9IHtcclxuICAgICAgICBtb2RlbDogXCJtb2RlbFwiLFxyXG4gICAgICAgIGNvbXBvbmVudDogdGhpcyxcclxuICAgICAgICBsaXN0ZW5lcnM6IHtcclxuICAgICAgICAgIG9uQmVmb3JlTG9hZDogZnVuY3Rpb24gKHN0b3JlLCBvcHRpb25zKSB7XHJcbiAgICAgICAgICAgIHV0aWxzLmNhbGxiYWNrKGxpc3RlbmVyc1BvcHMub25CZWZvcmVMb2FkLCBfdGhpcywgW3N0b3JlLCBvcHRpb25zXSk7XHJcbiAgICAgICAgICB9LFxyXG4gICAgICAgICAgbG9hZDogZnVuY3Rpb24gKGRhdGEsIG1vZGVsRGF0YSwgc3RvcmUpIHtcclxuICAgICAgICAgICAgX3RoaXMuc2V0U3RhdGUoeyBkYXRhU291cmNlOiBtb2RlbERhdGEgfSwgKCkgPT4ge1xyXG4gICAgICAgICAgICAgIGlmIChfdGhpcy5pc0ZpcnN0ICYmIGF1dG9Mb2FkKSB7XHJcbiAgICAgICAgICAgICAgICBfdGhpcy5pbml0KCk7XHJcbiAgICAgICAgICAgICAgICBfdGhpcy5pc0ZpcnN0ID0gZmFsc2U7XHJcbiAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9KTtcclxuICAgICAgICAgICAgdXRpbHMuY2FsbGJhY2sobGlzdGVuZXJzUG9wcy5sb2FkLCBfdGhpcywgW2RhdGEsIG1vZGVsRGF0YSwgc3RvcmVdKTtcclxuICAgICAgICAgIH0sXHJcbiAgICAgICAgICBkYXRhQ2hhbmdlZDogZnVuY3Rpb24gKGRhdGEsIG1vZGVsRGF0YSwgc3RvcmUpIHtcclxuICAgICAgICAgICAgX3RoaXMuc2V0U3RhdGUoeyBkYXRhU291cmNlOiBtb2RlbERhdGEgfSwgKCkgPT4ge1xyXG4gICAgICAgICAgICAgIGlmIChhdXRvTG9hZCkge1xyXG4gICAgICAgICAgICAgICAgX3RoaXMuaW5pdCgpO1xyXG4gICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfSk7XHJcbiAgICAgICAgICAgIHV0aWxzLmNhbGxiYWNrKGxpc3RlbmVyc1BvcHMuZGF0YUNoYW5nZWQsIF90aGlzLCBbXHJcbiAgICAgICAgICAgICAgZGF0YSxcclxuICAgICAgICAgICAgICBtb2RlbERhdGEsXHJcbiAgICAgICAgICAgICAgc3RvcmUsXHJcbiAgICAgICAgICAgIF0pO1xyXG4gICAgICAgICAgfSxcclxuICAgICAgICB9LFxyXG4gICAgICAgIC4uLnN0b3JlcyxcclxuICAgICAgfTtcclxuICAgICAgaWYgKHVybCAmJiBkYXRhID09IG51bGwpIHtcclxuICAgICAgICBzdG9yZVByb3BzID0ge1xyXG4gICAgICAgICAgLi4ue1xyXG4gICAgICAgICAgICBhdXRvTG9hZDogdHJ1ZSxcclxuICAgICAgICAgICAgdXJsOiB1cmwsXHJcbiAgICAgICAgICB9LFxyXG4gICAgICAgICAgLi4uc3RvcmVQcm9wcyxcclxuICAgICAgICB9O1xyXG4gICAgICB9XHJcbiAgICAgIHRoaXMuc3RvcmUgPSBuZXcgU3RvcmUoc3RvcmVQcm9wcyk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBjb21wb25lbnREaWRNb3VudCgpIHtcclxuICAgIGNvbnN0IHsgZGF0YSwgYXV0b0xvYWQgPSB0cnVlLCBzdG9yZSwgb3B0aW9uIH0gPSB0aGlzLnByb3BzO1xyXG4gICAgaWYgKGRhdGEgJiYgYXV0b0xvYWQpIHtcclxuICAgICAgdGhpcy5pbml0KCk7XHJcbiAgICB9IGVsc2UgaWYgKCFkYXRhICYmICFzdG9yZT8udXJsICYmIG9wdGlvbikge1xyXG4gICAgICB0aGlzLmluaXQoKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIGNvbXBvbmVudERpZFVwZGF0ZShcclxuICAgIHByZXZQcm9wczogUmVhZG9ubHk8Q2hhcnRQcm9wcz4sXHJcbiAgICBwcmV2U3RhdGU6IFJlYWRvbmx5PHt9PixcclxuICAgIHNuYXBzaG90PzogYW55XHJcbiAgKTogdm9pZCB7XHJcbiAgICBjb25zdCB7IGF1dG9Mb2FkID0gdHJ1ZSB9ID0gdGhpcy5wcm9wcztcclxuICAgIGlmIChhdXRvTG9hZCkge1xyXG4gICAgICBpZiAoSlNPTi5zdHJpbmdpZnkocHJldlByb3BzLmRhdGEpICE9PSBKU09OLnN0cmluZ2lmeSh0aGlzLnByb3BzLmRhdGEpKSB7XHJcbiAgICAgICAgdGhpcy5pbml0KCk7XHJcbiAgICAgIH0gZWxzZSBpZiAoXHJcbiAgICAgICAgSlNPTi5zdHJpbmdpZnkocHJldlByb3BzLm9wdGlvbikgIT09IEpTT04uc3RyaW5naWZ5KHRoaXMucHJvcHMub3B0aW9uKVxyXG4gICAgICApIHtcclxuICAgICAgICB0aGlzLmluaXQoKTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgcmVTZXRDaGFydCgpIHtcclxuICAgIHRoaXMuaW5pdCgpO1xyXG4gIH1cclxuICBpc1N0cmluZyh2KSB7XHJcbiAgICByZXR1cm4gdHlwZW9mIHYgPT09IFwic3RyaW5nXCI7XHJcbiAgfVxyXG4gIGNvbXBvbmVudFdpbGxVbm1vdW50KCkge1xyXG4gICAgd2luZG93LnJlbW92ZUV2ZW50TGlzdGVuZXIoXCJyZXNpemVcIiwgdGhpcy5oYW5kbGVDaGFydFJlc2l6ZS5iaW5kKHRoaXMpKTtcclxuICB9XHJcblxyXG4gIGlzUmVwbGFjZSh2KSB7XHJcbiAgICByZXR1cm4gL157Lip9JC9naS50ZXN0KHYpO1xyXG4gIH1cclxuICByZXBsYWNlKHYpIHtcclxuICAgIHJldHVybiB2LnN1YnN0cmluZygxLCB2Lmxlbmd0aCAtIDEpO1xyXG4gIH1cclxuXHJcbiAgZGF0YUNvbnZlcnNpb24oZGF0YSwgZGF0YXMsIGRhdGFNYXApIHtcclxuICAgIGxldCByZXN1bHQ7XHJcbiAgICBpZiAoZGF0YSkge1xyXG4gICAgICBpZiAodGhpcy5pc1N0cmluZyhkYXRhKSAmJiB0aGlzLmlzUmVwbGFjZShkYXRhKSkge1xyXG4gICAgICAgIHJlc3VsdCA9IGRhdGFNYXBbdGhpcy5yZXBsYWNlKGRhdGEpXTtcclxuICAgICAgfSBlbHNlIGlmIChpc0FycmF5KGRhdGEpKSB7XHJcbiAgICAgICAgZGF0YS5tYXAoKGl0ZW0pID0+IHtcclxuICAgICAgICAgIGxldCB2ID0gaXRlbS52YWx1ZTtcclxuICAgICAgICAgIGlmICh2ICYmIHRoaXMuaXNSZXBsYWNlKHYpKSB7XHJcbiAgICAgICAgICAgIGl0ZW0udmFsdWUgPSB0aGlzLmRhdGFDb252ZXJzaW9uKHYsIGRhdGFzLCBkYXRhTWFwKTtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9KTtcclxuICAgICAgICByZXN1bHQgPSBkYXRhO1xyXG4gICAgICB9IGVsc2UgaWYgKGlzT2JqZWN0KGRhdGEpKSB7XHJcbiAgICAgICAgcmVzdWx0ID0gW107XHJcbiAgICAgICAgaWYgKGlzQXJyYXkoZGF0YXMpKSB7XHJcbiAgICAgICAgICBkYXRhcy5tYXAoKGl0ZW0pID0+IHtcclxuICAgICAgICAgICAgdmFyIHRlbXBPYmogPSB7fTtcclxuICAgICAgICAgICAgZm9yIChsZXQga2V5IGluIGl0ZW0pIHtcclxuICAgICAgICAgICAgICBsZXQgdiA9IGl0ZW1ba2V5XTtcclxuICAgICAgICAgICAgICBpZiAodGhpcy5pc1JlcGxhY2UodikpIHtcclxuICAgICAgICAgICAgICAgIHRlbXBPYmpba2V5XSA9IGl0ZW1bdGhpcy5yZXBsYWNlKHYpXTtcclxuICAgICAgICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgICAgICAgdGVtcE9ialtrZXldID0gdjtcclxuICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgcmVzdWx0LnB1c2godGVtcE9iaik7XHJcbiAgICAgICAgICB9KTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgIHJldHVybiByZXN1bHQ7XHJcbiAgfVxyXG4gIG9iamVjdENvbnZlcnNpb24ob2JqLCBkYXRhcywgZGF0YU1hcCkge1xyXG4gICAgbGV0IHRlbXBPYmo6IGFueTtcclxuICAgIGlmIChvYmopIHtcclxuICAgICAgaWYgKGlzQXJyYXkob2JqKSkge1xyXG4gICAgICAgIHRlbXBPYmogPSBbLi4ub2JqXTtcclxuICAgICAgICB0ZW1wT2JqLm1hcCgoaXRlbSkgPT4ge1xyXG4gICAgICAgICAgaWYgKGl0ZW0uZGF0YSkge1xyXG4gICAgICAgICAgICBpdGVtLmRhdGEgPSB0aGlzLmRhdGFDb252ZXJzaW9uKGl0ZW0uZGF0YSwgZGF0YXMsIGRhdGFNYXApO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH0pO1xyXG4gICAgICB9IGVsc2UgaWYgKHRoaXMuaXNTdHJpbmcob2JqKSkge1xyXG4gICAgICAgIHRlbXBPYmogPSBvYmo7XHJcbiAgICAgICAgdGVtcE9iai5kYXRhID0gdGhpcy5kYXRhQ29udmVyc2lvbih0ZW1wT2JqLCBkYXRhcywgZGF0YU1hcCk7XHJcbiAgICAgIH0gZWxzZSBpZiAoaXNPYmplY3Qob2JqKSkge1xyXG4gICAgICAgIHRlbXBPYmogPSB7IC4uLm9iaiB9O1xyXG4gICAgICAgIHRlbXBPYmouZGF0YSA9IHRoaXMuZGF0YUNvbnZlcnNpb24odGVtcE9iai5kYXRhLCBkYXRhcywgZGF0YU1hcCk7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgIHJldHVybiB0ZW1wT2JqO1xyXG4gIH1cclxuICBpbml0KCkge1xyXG4gICAgY29uc3QgeyBvcHRpb24sIGRhdGEsIE9uQ2xpY2ssIE9uWnJDbGljayB9ID0gdGhpcy5wcm9wcztcclxuICAgIGNvbnN0IHsgZGF0YVNvdXJjZSB9ID0gdGhpcy5zdGF0ZTtcclxuICAgIGxldCBkYXRhTWFwOiBhbnkgPSB7fTtcclxuICAgIGNvbnN0IG5ld0RhdGFzID0gZGF0YSB8fCBkYXRhU291cmNlO1xyXG4gICAgbGV0IG5ld09wdGlvbjogYW55ID0geyAuLi5vcHRpb24gfTtcclxuICAgIGlmIChpc0FycmF5KG5ld0RhdGFzKSkge1xyXG4gICAgICBuZXdEYXRhcy5tYXAoKGl0ZW0pID0+IHtcclxuICAgICAgICBmb3IgKGxldCBrZXkgaW4gaXRlbSkge1xyXG4gICAgICAgICAgaWYgKGRhdGFNYXBba2V5XSA9PSBudWxsKSB7XHJcbiAgICAgICAgICAgIGRhdGFNYXBba2V5XSA9IFtdO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgICAgZGF0YU1hcFtrZXldLnB1c2goaXRlbVtrZXldKTtcclxuICAgICAgICB9XHJcbiAgICAgIH0pO1xyXG4gICAgfSBlbHNlIGlmIChpc09iamVjdChuZXdEYXRhcykpIHtcclxuICAgICAgZGF0YU1hcCA9IG5ld0RhdGFzO1xyXG4gICAgfVxyXG4gICAgbmV3T3B0aW9uLnhBeGlzID0gdGhpcy5vYmplY3RDb252ZXJzaW9uKG5ld09wdGlvbi54QXhpcywgbmV3RGF0YXMsIGRhdGFNYXApO1xyXG4gICAgbmV3T3B0aW9uLnlBeGlzID0gdGhpcy5vYmplY3RDb252ZXJzaW9uKG5ld09wdGlvbi55QXhpcywgbmV3RGF0YXMsIGRhdGFNYXApO1xyXG4gICAgbmV3T3B0aW9uLnNlcmllcyA9IHRoaXMub2JqZWN0Q29udmVyc2lvbihcclxuICAgICAgbmV3T3B0aW9uLnNlcmllcyxcclxuICAgICAgbmV3RGF0YXMsXHJcbiAgICAgIGRhdGFNYXBcclxuICAgICk7XHJcbiAgICBjb25zdCBteUNoYXJ0ID0gKHRoaXMubXlDaGFydCA9IGVjaGFydHMuaW5pdChcclxuICAgICAgdGhpcy5jaGFydFJlZi5jdXJyZW50IGFzIEhUTUxEaXZFbGVtZW50XHJcbiAgICApKTsgLy/liJ3lp4vljJZlY2hhcnRz77yM6YCa6L+HcmVm5bGe5oCn6I635Y+WZG9tXHJcbiAgICBteUNoYXJ0LmNsZWFyKCk7XHJcbiAgICBteUNoYXJ0Lm9mZihcImNsaWNrXCIpO1xyXG4gICAgbXlDaGFydD8uZ2V0WnIoKT8ub2ZmKFwiY2xpY2tcIik7XHJcbiAgICBteUNoYXJ0LnNldE9wdGlvbihuZXdPcHRpb24pO1xyXG4gICAgbXlDaGFydC5vbihcImNsaWNrXCIsIGZ1bmN0aW9uIChwYXJhbXMpIHtcclxuICAgICAgT25DbGljayAmJiBPbkNsaWNrKHBhcmFtcywgbXlDaGFydCk7XHJcbiAgICB9KTtcclxuICAgIG15Q2hhcnQ/LmdldFpyKCk/Lm9uKFwiY2xpY2tcIiwgKHBhcmFtcykgPT4ge1xyXG4gICAgICBPblpyQ2xpY2sgJiYgT25ackNsaWNrKHBhcmFtcywgbXlDaGFydCk7XHJcbiAgICB9KTtcclxuXHJcbiAgICB3aW5kb3cuYWRkRXZlbnRMaXN0ZW5lcihcInJlc2l6ZVwiLCB0aGlzLmhhbmRsZUNoYXJ0UmVzaXplLmJpbmQodGhpcykpO1xyXG4gIH1cclxuXHJcbiAgaGFuZGxlQ2hhcnRSZXNpemUoKSB7XHJcbiAgICBpZiAodGhpcy5teUNoYXJ0KSB7XHJcbiAgICAgIHRoaXMubXlDaGFydC5yZXNpemUoKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIHJlbmRlcigpIHtcclxuICAgIGNvbnN0IHsgd2lkdGgsIGhlaWdodCB9ID0gdGhpcy5wcm9wcztcclxuICAgIGNvbnN0IGJveFN0eWxlID0ge1xyXG4gICAgICB3aWR0aDogdHlwZW9mIHdpZHRoID09IFwibnVtYmVyXCIgPyBweDJ2dyh3aWR0aCkgOiB3aWR0aCxcclxuICAgICAgaGVpZ2h0OiB0eXBlb2YgaGVpZ2h0ID09IFwibnVtYmVyXCIgPyBweDJ2dyhoZWlnaHQpIDogaGVpZ2h0LFxyXG4gICAgfTtcclxuICAgIHJldHVybiA8ZGl2IHN0eWxlPXtib3hTdHlsZX0gcmVmPXt0aGlzLmNoYXJ0UmVmfT48L2Rpdj47XHJcbiAgfVxyXG59XHJcblxyXG5leHBvcnQgZGVmYXVsdCBOc2NDaGFydDtcclxuIl19
|
|
File without changes
|