19个文件已修改
15个文件已删除
4个文件已添加
| | |
| | | "requires": true, |
| | | "dependencies": { |
| | | "@ant-design/colors": { |
| | | "version": "3.2.1", |
| | | "resolved": "https://registry.npmjs.org/@ant-design/colors/-/colors-3.2.1.tgz", |
| | | "integrity": "sha512-ibJybOcR1+h2IEr0Yxx4y/Wcz8obEtKvl2EYvxh8ugMkYniGSItpLKGzKNyyqzOaum5jb6fVCyH1aR9VkdpFRA==", |
| | | "version": "3.2.2", |
| | | "resolved": "https://registry.npmjs.org/@ant-design/colors/-/colors-3.2.2.tgz", |
| | | "integrity": "sha512-YKgNbG2dlzqMhA9NtI3/pbY16m3Yl/EeWBRa+lB1X1YaYxHrxNexiQYCLTWO/uDvAjLFMEDU+zR901waBtMtjQ==", |
| | | "requires": { |
| | | "tinycolor2": "^1.4.1" |
| | | } |
| | | }, |
| | | "@ant-design/create-react-context": { |
| | | "version": "0.2.4", |
| | | "resolved": "https://registry.npmjs.org/@ant-design/create-react-context/-/create-react-context-0.2.4.tgz", |
| | | "integrity": "sha512-8sw+/w6r+aEbd+OJ62ojoSE4zDt/3yfQydmbWFznoftjr8v/opOswGjM+/MU0rSaREbluqzOmZ6xdecHpSaS2w==", |
| | | "version": "0.2.5", |
| | | "resolved": "https://registry.npmjs.org/@ant-design/create-react-context/-/create-react-context-0.2.5.tgz", |
| | | "integrity": "sha512-1rMAa4qgP2lfl/QBH9i78+Gjxtj9FTMpMyDGZsEBW5Kih72EuUo9958mV8PgpRkh4uwPSQ7vVZWXeyNZXVAFDg==", |
| | | "requires": { |
| | | "gud": "^1.0.0", |
| | | "warning": "^4.0.3" |
| | | } |
| | | }, |
| | | "@ant-design/css-animation": { |
| | | "version": "1.7.3", |
| | | "resolved": "https://registry.npmjs.org/@ant-design/css-animation/-/css-animation-1.7.3.tgz", |
| | | "integrity": "sha512-LrX0OGZtW+W6iLnTAqnTaoIsRelYeuLZWsrmBJFUXDALQphPsN8cE5DCsmoSlL0QYb94BQxINiuS70Ar/8BNgA==" |
| | | }, |
| | | "@ant-design/icons": { |
| | | "version": "2.1.1", |
| | |
| | | "integrity": "sha1-qCJQ3bABXponyoLoLqYDu/pF768=" |
| | | }, |
| | | "antd": { |
| | | "version": "3.23.2", |
| | | "resolved": "https://registry.npmjs.org/antd/-/antd-3.23.2.tgz", |
| | | "integrity": "sha512-S62EvyxPV0IoFR650qtCjUy2E7nY3JkxTP1t71LER09DTTK4fJGw4wWhalNCjkIHR2hPHWGfu0MSHocov3F4dw==", |
| | | "version": "3.26.20", |
| | | "resolved": "https://registry.npmjs.org/antd/-/antd-3.26.20.tgz", |
| | | "integrity": "sha512-VIous4ofZfxFtd9K1h9MpRX2sDDpj3QcOFi3YgIc9B/uyDli/GlLb8SWKfQfJaMkaxwatIv503dag2Tog+hiEg==", |
| | | "requires": { |
| | | "@ant-design/create-react-context": "^0.2.4", |
| | | "@ant-design/icons": "~2.1.1", |
| | |
| | | "css-animation": "^1.5.0", |
| | | "dom-closest": "^0.2.0", |
| | | "enquire.js": "^2.1.6", |
| | | "is-mobile": "^2.1.0", |
| | | "lodash": "^4.17.13", |
| | | "moment": "^2.24.0", |
| | | "omit.js": "^1.0.2", |
| | | "prop-types": "^15.7.2", |
| | | "raf": "^3.4.1", |
| | | "rc-animate": "^2.8.3", |
| | | "rc-calendar": "~9.15.5", |
| | | "rc-animate": "^2.10.2", |
| | | "rc-calendar": "~9.15.7", |
| | | "rc-cascader": "~0.17.4", |
| | | "rc-checkbox": "~2.1.6", |
| | | "rc-collapse": "~1.11.3", |
| | | "rc-dialog": "~7.5.2", |
| | | "rc-drawer": "~2.0.1", |
| | | "rc-dialog": "~7.6.0", |
| | | "rc-drawer": "~3.1.1", |
| | | "rc-dropdown": "~2.4.1", |
| | | "rc-editor-mention": "^1.1.13", |
| | | "rc-form": "^2.4.5", |
| | | "rc-form": "^2.4.10", |
| | | "rc-input-number": "~4.5.0", |
| | | "rc-mentions": "~0.4.0", |
| | | "rc-menu": "~7.4.23", |
| | | "rc-menu": "~7.5.1", |
| | | "rc-notification": "~3.3.1", |
| | | "rc-pagination": "~1.20.5", |
| | | "rc-pagination": "~1.20.11", |
| | | "rc-progress": "~2.5.0", |
| | | "rc-rate": "~2.5.0", |
| | | "rc-resize-observer": "^0.1.0", |
| | | "rc-select": "~9.2.0", |
| | | "rc-slider": "~8.6.11", |
| | | "rc-slider": "~8.7.1", |
| | | "rc-steps": "~3.5.0", |
| | | "rc-switch": "~1.9.0", |
| | | "rc-table": "~6.7.0", |
| | | "rc-tabs": "~9.6.4", |
| | | "rc-table": "~6.10.5", |
| | | "rc-tabs": "~9.7.0", |
| | | "rc-time-picker": "~3.7.1", |
| | | "rc-tooltip": "~3.7.3", |
| | | "rc-tree": "~2.1.0", |
| | | "rc-tree-select": "~2.9.1", |
| | | "rc-trigger": "^2.6.2", |
| | | "rc-upload": "~2.7.0", |
| | | "rc-util": "^4.10.0", |
| | | "rc-upload": "~2.9.1", |
| | | "rc-util": "^4.16.1", |
| | | "react-lazy-load": "^3.0.13", |
| | | "react-lifecycles-compat": "^3.0.4", |
| | | "react-slick": "~0.25.2", |
| | | "resize-observer-polyfill": "^1.5.1", |
| | | "shallowequal": "^1.1.0", |
| | | "warning": "~4.0.3" |
| | | }, |
| | | "dependencies": { |
| | | "rc-animate": { |
| | | "version": "2.11.1", |
| | | "resolved": "https://registry.npmjs.org/rc-animate/-/rc-animate-2.11.1.tgz", |
| | | "integrity": "sha512-1NyuCGFJG/0Y+9RKh5y/i/AalUCA51opyyS/jO2seELpgymZm2u9QV3xwODwEuzkmeQ1BDPxMLmYLcTJedPlkQ==", |
| | | "requires": { |
| | | "babel-runtime": "6.x", |
| | | "classnames": "^2.2.6", |
| | | "css-animation": "^1.3.2", |
| | | "prop-types": "15.x", |
| | | "raf": "^3.4.0", |
| | | "rc-util": "^4.15.3", |
| | | "react-lifecycles-compat": "^3.0.4" |
| | | } |
| | | }, |
| | | "rc-util": { |
| | | "version": "4.21.1", |
| | | "resolved": "https://registry.npmjs.org/rc-util/-/rc-util-4.21.1.tgz", |
| | | "integrity": "sha512-Z+vlkSQVc1l8O2UjR3WQ+XdWlhj5q9BMQNLk2iOBch75CqPfrJyGtcWMcnhRlNuDu0Ndtt4kLVO8JI8BrABobg==", |
| | | "requires": { |
| | | "add-dom-event-listener": "^1.1.0", |
| | | "prop-types": "^15.5.10", |
| | | "react-is": "^16.12.0", |
| | | "react-lifecycles-compat": "^3.0.4", |
| | | "shallowequal": "^1.1.0" |
| | | } |
| | | }, |
| | | "react-is": { |
| | | "version": "16.13.1", |
| | | "resolved": "https://registry.npmjs.org/react-is/-/react-is-16.13.1.tgz", |
| | | "integrity": "sha512-24e6ynE2H+OKt4kqsOvNd8kBpV65zoxbA4BVsEOB3ARVWQki/DHzaUoC5KuON/BiccDaCCTZBuOcfZs70kR8bQ==" |
| | | } |
| | | } |
| | | }, |
| | | "antd-mobile": { |
| | |
| | | "integrity": "sha1-Z29us8OZl8LuGsOpJP1hJHSPV40=" |
| | | }, |
| | | "copy-to-clipboard": { |
| | | "version": "3.2.0", |
| | | "resolved": "https://registry.npmjs.org/copy-to-clipboard/-/copy-to-clipboard-3.2.0.tgz", |
| | | "integrity": "sha512-eOZERzvCmxS8HWzugj4Uxl8OJxa7T2k1Gi0X5qavwydHIfuSHq2dTD09LOg/XyGq4Zpb5IsR/2OJ5lbOegz78w==", |
| | | "version": "3.3.1", |
| | | "resolved": "https://registry.npmjs.org/copy-to-clipboard/-/copy-to-clipboard-3.3.1.tgz", |
| | | "integrity": "sha512-i13qo6kIHTTpCm8/Wup+0b1mVWETvu2kIMzKoK8FpkLkFxlt0znUAHcMzox+T8sPlqtZXq3CulEjQHsYiGFJUw==", |
| | | "requires": { |
| | | "toggle-selection": "^1.0.6" |
| | | } |
| | |
| | | "is-extglob": "^2.1.1" |
| | | } |
| | | }, |
| | | "is-mobile": { |
| | | "version": "2.2.2", |
| | | "resolved": "https://registry.npmjs.org/is-mobile/-/is-mobile-2.2.2.tgz", |
| | | "integrity": "sha512-wW/SXnYJkTjs++tVK5b6kVITZpAZPtUrt9SF80vvxGiF/Oywal+COk1jlRkiVq15RFNEQKQY31TkV24/1T5cVg==" |
| | | }, |
| | | "is-number": { |
| | | "version": "3.0.0", |
| | | "resolved": "https://registry.npmjs.org/is-number/-/is-number-3.0.0.tgz", |
| | |
| | | "version": "2.0.0", |
| | | "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", |
| | | "integrity": "sha1-6PvzdNxVb/iUehDcsFctYz8s+hA=" |
| | | }, |
| | | "ismobilejs": { |
| | | "version": "0.5.2", |
| | | "resolved": "https://registry.npmjs.org/ismobilejs/-/ismobilejs-0.5.2.tgz", |
| | | "integrity": "sha512-ta9UdV60xVZk/ZafFtSFslQaE76SvNkcs1r73d2PVR21zVzx9xuYv9tNe4MxA1NN7WoeCc2RjGot3Bz1eHDx3Q==" |
| | | }, |
| | | "isobject": { |
| | | "version": "3.0.1", |
| | |
| | | "integrity": "sha1-iZ8R2WhuXgXLkbNdXw5jt3PPyQE=" |
| | | }, |
| | | "mutationobserver-shim": { |
| | | "version": "0.3.3", |
| | | "resolved": "https://registry.npmjs.org/mutationobserver-shim/-/mutationobserver-shim-0.3.3.tgz", |
| | | "integrity": "sha512-gciOLNN8Vsf7YzcqRjKzlAJ6y7e+B86u7i3KXes0xfxx/nfLmozlW1Vn+Sc9x3tPIePFgc1AeIFhtRgkqTjzDQ==" |
| | | "version": "0.3.7", |
| | | "resolved": "https://registry.npmjs.org/mutationobserver-shim/-/mutationobserver-shim-0.3.7.tgz", |
| | | "integrity": "sha512-oRIDTyZQU96nAiz2AQyngwx1e89iApl2hN5AOYwyxLUB47UYsU3Wv9lJWqH5y/QdiYkc5HQLi23ZNB3fELdHcQ==" |
| | | }, |
| | | "mute-stream": { |
| | | "version": "0.0.7", |
| | |
| | | } |
| | | }, |
| | | "rc-calendar": { |
| | | "version": "9.15.5", |
| | | "resolved": "https://registry.npmjs.org/rc-calendar/-/rc-calendar-9.15.5.tgz", |
| | | "integrity": "sha512-nvoEXk5P0DADt5b7FHlKiXKj+IhoWawQGSkb5soa6gXQIfoqQJ5+zB2Ogy7k1RxNbxQu4iIkEW/a3+HObVRDdA==", |
| | | "version": "9.15.11", |
| | | "resolved": "https://registry.npmjs.org/rc-calendar/-/rc-calendar-9.15.11.tgz", |
| | | "integrity": "sha512-qv0VXfAAnysMWJigxaP6se4bJHvr17D9qsLbi8BOpdgEocsS0RkgY1IUiFaOVYKJDy/EyLC447O02sV/y5YYBg==", |
| | | "requires": { |
| | | "babel-runtime": "6.x", |
| | | "classnames": "2.x", |
| | |
| | | } |
| | | }, |
| | | "rc-checkbox": { |
| | | "version": "2.1.7", |
| | | "resolved": "https://registry.npmjs.org/rc-checkbox/-/rc-checkbox-2.1.7.tgz", |
| | | "integrity": "sha512-8L+0XuucUOMUM6F/7qH+hnQpEHPZfW1Um02lUHEVdpZNor5mC0Fj4x8GvTtwcM1pAl5tD3I6lHYD8cE1W8RZJw==", |
| | | "version": "2.1.8", |
| | | "resolved": "https://registry.npmjs.org/rc-checkbox/-/rc-checkbox-2.1.8.tgz", |
| | | "integrity": "sha512-6qOgh0/by0nVNASx6LZnhRTy17Etcgav+IrI7kL9V9kcDZ/g7K14JFlqrtJ3NjDq/Kyn+BPI1st1XvbkhfaJeg==", |
| | | "requires": { |
| | | "babel-runtime": "^6.23.0", |
| | | "classnames": "2.x", |
| | |
| | | } |
| | | }, |
| | | "rc-collapse": { |
| | | "version": "1.11.7", |
| | | "resolved": "https://registry.npmjs.org/rc-collapse/-/rc-collapse-1.11.7.tgz", |
| | | "integrity": "sha512-ge3EEzIFtrDGuPX4bxXdQqwb91JnPIdj3B+FU88yNOUeOroNuA2q9kVK+UatpQ1Eft5hNo/ICTDrVFi8+685ng==", |
| | | "version": "1.11.8", |
| | | "resolved": "https://registry.npmjs.org/rc-collapse/-/rc-collapse-1.11.8.tgz", |
| | | "integrity": "sha512-8EhfPyScTYljkbRuIoHniSwZagD5UPpZ3CToYgoNYWC85L2qCbPYF7+OaC713FOrIkp6NbfNqXsITNxmDAmxog==", |
| | | "requires": { |
| | | "classnames": "2.x", |
| | | "css-animation": "1.x", |
| | |
| | | } |
| | | }, |
| | | "rc-dialog": { |
| | | "version": "7.5.7", |
| | | "resolved": "https://registry.npmjs.org/rc-dialog/-/rc-dialog-7.5.7.tgz", |
| | | "integrity": "sha512-hSKzxdbkWylenjdyNwUPz2Wb4pkmpFld/Qp7u5uhXhlLUTUjQceCj+VFXHWKfBGlesm34SD4wNl4ZvyEYIAdNA==", |
| | | "version": "7.6.1", |
| | | "resolved": "https://registry.npmjs.org/rc-dialog/-/rc-dialog-7.6.1.tgz", |
| | | "integrity": "sha512-KUKf+2eZ4YL+lnXMG3hR4ZtIhC9glfH27NtTVz3gcoDIPAf3uUvaXVRNoDCiSi+OGKLyIb/b6EoidFh6nQC5Wg==", |
| | | "requires": { |
| | | "babel-runtime": "6.x", |
| | | "rc-animate": "2.x", |
| | | "rc-util": "^4.8.1" |
| | | "rc-util": "^4.16.1" |
| | | }, |
| | | "dependencies": { |
| | | "rc-util": { |
| | | "version": "4.21.1", |
| | | "resolved": "https://registry.npmjs.org/rc-util/-/rc-util-4.21.1.tgz", |
| | | "integrity": "sha512-Z+vlkSQVc1l8O2UjR3WQ+XdWlhj5q9BMQNLk2iOBch75CqPfrJyGtcWMcnhRlNuDu0Ndtt4kLVO8JI8BrABobg==", |
| | | "requires": { |
| | | "add-dom-event-listener": "^1.1.0", |
| | | "prop-types": "^15.5.10", |
| | | "react-is": "^16.12.0", |
| | | "react-lifecycles-compat": "^3.0.4", |
| | | "shallowequal": "^1.1.0" |
| | | } |
| | | }, |
| | | "react-is": { |
| | | "version": "16.13.1", |
| | | "resolved": "https://registry.npmjs.org/react-is/-/react-is-16.13.1.tgz", |
| | | "integrity": "sha512-24e6ynE2H+OKt4kqsOvNd8kBpV65zoxbA4BVsEOB3ARVWQki/DHzaUoC5KuON/BiccDaCCTZBuOcfZs70kR8bQ==" |
| | | } |
| | | } |
| | | }, |
| | | "rc-drawer": { |
| | | "version": "2.0.9", |
| | | "resolved": "https://registry.npmjs.org/rc-drawer/-/rc-drawer-2.0.9.tgz", |
| | | "integrity": "sha512-7qwEND3TLvJeyuUvZfMDkL2pHsR/XHX5HvoaBlIH9mTcFWBmMNrvYGDuGHgGsdNKZZgIBwlkvl5vhckydTUc9Q==", |
| | | "version": "3.1.3", |
| | | "resolved": "https://registry.npmjs.org/rc-drawer/-/rc-drawer-3.1.3.tgz", |
| | | "integrity": "sha512-2z+RdxmzXyZde/1OhVMfDR1e/GBswFeWSZ7FS3Fdd0qhgVdpV1wSzILzzxRaT481ItB5hOV+e8pZT07vdJE8kg==", |
| | | "requires": { |
| | | "babel-runtime": "6.x", |
| | | "classnames": "^2.2.5", |
| | | "rc-util": "^4.7.0", |
| | | "classnames": "^2.2.6", |
| | | "rc-util": "^4.16.1", |
| | | "react-lifecycles-compat": "^3.0.4" |
| | | }, |
| | | "dependencies": { |
| | | "rc-util": { |
| | | "version": "4.21.1", |
| | | "resolved": "https://registry.npmjs.org/rc-util/-/rc-util-4.21.1.tgz", |
| | | "integrity": "sha512-Z+vlkSQVc1l8O2UjR3WQ+XdWlhj5q9BMQNLk2iOBch75CqPfrJyGtcWMcnhRlNuDu0Ndtt4kLVO8JI8BrABobg==", |
| | | "requires": { |
| | | "add-dom-event-listener": "^1.1.0", |
| | | "prop-types": "^15.5.10", |
| | | "react-is": "^16.12.0", |
| | | "react-lifecycles-compat": "^3.0.4", |
| | | "shallowequal": "^1.1.0" |
| | | } |
| | | }, |
| | | "react-is": { |
| | | "version": "16.13.1", |
| | | "resolved": "https://registry.npmjs.org/react-is/-/react-is-16.13.1.tgz", |
| | | "integrity": "sha512-24e6ynE2H+OKt4kqsOvNd8kBpV65zoxbA4BVsEOB3ARVWQki/DHzaUoC5KuON/BiccDaCCTZBuOcfZs70kR8bQ==" |
| | | } |
| | | } |
| | | }, |
| | | "rc-dropdown": { |
| | |
| | | } |
| | | }, |
| | | "rc-hammerjs": { |
| | | "version": "0.6.9", |
| | | "resolved": "https://registry.npmjs.org/rc-hammerjs/-/rc-hammerjs-0.6.9.tgz", |
| | | "integrity": "sha512-4llgWO3RgLyVbEqUdGsDfzUDqklRlQW5VEhE3x35IvhV+w//VPRG34SBavK3D2mD/UaLKaohgU41V4agiftC8g==", |
| | | "version": "0.6.10", |
| | | "resolved": "https://registry.npmjs.org/rc-hammerjs/-/rc-hammerjs-0.6.10.tgz", |
| | | "integrity": "sha512-Vgh9qIudyN5CHRop4M+v+xUniQBFWXKrsJxQRVtJOi2xgRrCeI52/bkpaL5HWwUhqTK9Ayq0n7lYTItT6ld5rg==", |
| | | "requires": { |
| | | "babel-runtime": "6.x", |
| | | "hammerjs": "^2.0.8", |
| | |
| | | } |
| | | }, |
| | | "rc-input-number": { |
| | | "version": "4.5.0", |
| | | "resolved": "https://registry.npmjs.org/rc-input-number/-/rc-input-number-4.5.0.tgz", |
| | | "integrity": "sha512-0igTdXuxVykBB82jafUmhbRVmgtd0FuGSIX4SbrynGNrLDOyze3EUKsZl+LyQ4JMRXLrcuZKJg385880RVLA2w==", |
| | | "version": "4.5.7", |
| | | "resolved": "https://registry.npmjs.org/rc-input-number/-/rc-input-number-4.5.7.tgz", |
| | | "integrity": "sha512-99PrQ90sTOKyyj7eu0VzwxY17xQ+bwG1XTQd+bTwFQ+IOUkIw7L4qSAYxt58sVYL+Cw+bu/RAtT2IpT9yC2pCQ==", |
| | | "requires": { |
| | | "babel-runtime": "6.x", |
| | | "classnames": "^2.2.0", |
| | |
| | | } |
| | | }, |
| | | "rc-mentions": { |
| | | "version": "0.4.0", |
| | | "resolved": "https://registry.npmjs.org/rc-mentions/-/rc-mentions-0.4.0.tgz", |
| | | "integrity": "sha512-xnkQBTUFp4llaJuDOLVFKX9ELrXFHk1FuUdIIC/ijQ6cLjDhCUu+jpHNcXWuQ/yIFzF376VlXkmT57iqxSnZzw==", |
| | | "version": "0.4.2", |
| | | "resolved": "https://registry.npmjs.org/rc-mentions/-/rc-mentions-0.4.2.tgz", |
| | | "integrity": "sha512-DTZurQzacLXOfVuiHydGzqkq7cFMHXF18l2jZ9PhWUn2cqvOSY3W4osN0Pq29AOMOBpcxdZCzgc7Lb0r/bgkDw==", |
| | | "requires": { |
| | | "@ant-design/create-react-context": "^0.2.4", |
| | | "classnames": "^2.2.6", |
| | |
| | | } |
| | | }, |
| | | "rc-menu": { |
| | | "version": "7.4.28", |
| | | "resolved": "https://registry.npmjs.org/rc-menu/-/rc-menu-7.4.28.tgz", |
| | | "integrity": "sha512-H61QBokniClkAVSLm2ZT5BMg7P2t1Vz7TwmUSuoF3Gbc1Q2M5ZFvnNnZBIQr8waHsLKfClsWyQVdA0BZe6iUfw==", |
| | | "version": "7.5.5", |
| | | "resolved": "https://registry.npmjs.org/rc-menu/-/rc-menu-7.5.5.tgz", |
| | | "integrity": "sha512-4YJXJgrpUGEA1rMftXN7bDhrV5rPB8oBJoHqT+GVXtIWCanfQxEnM3fmhHQhatL59JoAFMZhJaNzhJIk4FUWCQ==", |
| | | "requires": { |
| | | "babel-runtime": "6.x", |
| | | "classnames": "2.x", |
| | | "dom-scroll-into-view": "1.x", |
| | | "ismobilejs": "^0.5.1", |
| | | "mini-store": "^2.0.0", |
| | | "mutationobserver-shim": "^0.3.2", |
| | | "prop-types": "^15.5.6", |
| | | "rc-animate": "2.x", |
| | | "rc-animate": "^2.10.1", |
| | | "rc-trigger": "^2.3.0", |
| | | "rc-util": "^4.1.0", |
| | | "resize-observer-polyfill": "^1.5.0" |
| | | "rc-util": "^4.13.0", |
| | | "resize-observer-polyfill": "^1.5.0", |
| | | "shallowequal": "^1.1.0" |
| | | }, |
| | | "dependencies": { |
| | | "rc-animate": { |
| | | "version": "2.11.1", |
| | | "resolved": "https://registry.npmjs.org/rc-animate/-/rc-animate-2.11.1.tgz", |
| | | "integrity": "sha512-1NyuCGFJG/0Y+9RKh5y/i/AalUCA51opyyS/jO2seELpgymZm2u9QV3xwODwEuzkmeQ1BDPxMLmYLcTJedPlkQ==", |
| | | "requires": { |
| | | "babel-runtime": "6.x", |
| | | "classnames": "^2.2.6", |
| | | "css-animation": "^1.3.2", |
| | | "prop-types": "15.x", |
| | | "raf": "^3.4.0", |
| | | "rc-util": "^4.15.3", |
| | | "react-lifecycles-compat": "^3.0.4" |
| | | } |
| | | }, |
| | | "rc-util": { |
| | | "version": "4.21.1", |
| | | "resolved": "https://registry.npmjs.org/rc-util/-/rc-util-4.21.1.tgz", |
| | | "integrity": "sha512-Z+vlkSQVc1l8O2UjR3WQ+XdWlhj5q9BMQNLk2iOBch75CqPfrJyGtcWMcnhRlNuDu0Ndtt4kLVO8JI8BrABobg==", |
| | | "requires": { |
| | | "add-dom-event-listener": "^1.1.0", |
| | | "prop-types": "^15.5.10", |
| | | "react-is": "^16.12.0", |
| | | "react-lifecycles-compat": "^3.0.4", |
| | | "shallowequal": "^1.1.0" |
| | | } |
| | | }, |
| | | "react-is": { |
| | | "version": "16.13.1", |
| | | "resolved": "https://registry.npmjs.org/react-is/-/react-is-16.13.1.tgz", |
| | | "integrity": "sha512-24e6ynE2H+OKt4kqsOvNd8kBpV65zoxbA4BVsEOB3ARVWQki/DHzaUoC5KuON/BiccDaCCTZBuOcfZs70kR8bQ==" |
| | | } |
| | | } |
| | | }, |
| | | "rc-notification": { |
| | |
| | | } |
| | | }, |
| | | "rc-pagination": { |
| | | "version": "1.20.5", |
| | | "resolved": "https://registry.npmjs.org/rc-pagination/-/rc-pagination-1.20.5.tgz", |
| | | "integrity": "sha512-gnVAowVIbRilW6bXYWCEpTsrtmAWTpM3qO/bltYfqTVKxgb6/sDqjRvCksJGy/D81pYkEkKeA9foWsgUgbUsQw==", |
| | | "version": "1.20.15", |
| | | "resolved": "https://registry.npmjs.org/rc-pagination/-/rc-pagination-1.20.15.tgz", |
| | | "integrity": "sha512-/Xr4/3GOa1DtL8iCYl7qRUroEMrRDhZiiuHwcVFfSiwa9LYloMlUWcOJsnr8LN6A7rLPdm3/CHStUNeYd+2pKw==", |
| | | "requires": { |
| | | "babel-runtime": "6.x", |
| | | "classnames": "^2.2.6", |
| | |
| | | } |
| | | }, |
| | | "rc-progress": { |
| | | "version": "2.5.2", |
| | | "resolved": "https://registry.npmjs.org/rc-progress/-/rc-progress-2.5.2.tgz", |
| | | "integrity": "sha512-ajI+MJkbBz9zYDuE9GQsY5gsyqPF7HFioZEDZ9Fmc+ebNZoiSeSJsTJImPFCg0dW/5WiRGUy2F69SX1aPtSJgA==", |
| | | "version": "2.5.3", |
| | | "resolved": "https://registry.npmjs.org/rc-progress/-/rc-progress-2.5.3.tgz", |
| | | "integrity": "sha512-K2fa4CnqGehLZoMrdmBeZ86ONSTVcdk5FlqetbwJ3R/+42XfqhwQVOjWp2MH4P7XSQOMAGcNOy1SFfCP3415sg==", |
| | | "requires": { |
| | | "babel-runtime": "6.x", |
| | | "prop-types": "^15.5.8" |
| | | } |
| | | }, |
| | | "rc-rate": { |
| | | "version": "2.5.0", |
| | | "resolved": "https://registry.npmjs.org/rc-rate/-/rc-rate-2.5.0.tgz", |
| | | "integrity": "sha512-aXX5klRqbVZxvLghcKnLqqo7LvLVCHswEDteWsm5Gb7NBIPa1YKTcAbvb5SZ4Z4i4EeRoZaPwygRAWsQgGtbKw==", |
| | | "version": "2.5.1", |
| | | "resolved": "https://registry.npmjs.org/rc-rate/-/rc-rate-2.5.1.tgz", |
| | | "integrity": "sha512-3iJkNJT8xlHklPCdeZtUZmJmRVUbr6AHRlfSsztfYTXVlHrv2TcPn3XkHsH+12j812WVB7gvilS2j3+ffjUHXg==", |
| | | "requires": { |
| | | "classnames": "^2.2.5", |
| | | "prop-types": "^15.5.8", |
| | |
| | | "react-lifecycles-compat": "^3.0.4" |
| | | } |
| | | }, |
| | | "rc-resize-observer": { |
| | | "version": "0.1.3", |
| | | "resolved": "https://registry.npmjs.org/rc-resize-observer/-/rc-resize-observer-0.1.3.tgz", |
| | | "integrity": "sha512-uzOQEwx83xdQSFOkOAM7x7GHIQKYnrDV4dWxtCxyG1BS1pkfJ4EvDeMfsvAJHSYkQXVBu+sgRHGbRtLG3qiuUg==", |
| | | "requires": { |
| | | "classnames": "^2.2.1", |
| | | "rc-util": "^4.13.0", |
| | | "resize-observer-polyfill": "^1.5.1" |
| | | }, |
| | | "dependencies": { |
| | | "rc-util": { |
| | | "version": "4.21.1", |
| | | "resolved": "https://registry.npmjs.org/rc-util/-/rc-util-4.21.1.tgz", |
| | | "integrity": "sha512-Z+vlkSQVc1l8O2UjR3WQ+XdWlhj5q9BMQNLk2iOBch75CqPfrJyGtcWMcnhRlNuDu0Ndtt4kLVO8JI8BrABobg==", |
| | | "requires": { |
| | | "add-dom-event-listener": "^1.1.0", |
| | | "prop-types": "^15.5.10", |
| | | "react-is": "^16.12.0", |
| | | "react-lifecycles-compat": "^3.0.4", |
| | | "shallowequal": "^1.1.0" |
| | | } |
| | | }, |
| | | "react-is": { |
| | | "version": "16.13.1", |
| | | "resolved": "https://registry.npmjs.org/react-is/-/react-is-16.13.1.tgz", |
| | | "integrity": "sha512-24e6ynE2H+OKt4kqsOvNd8kBpV65zoxbA4BVsEOB3ARVWQki/DHzaUoC5KuON/BiccDaCCTZBuOcfZs70kR8bQ==" |
| | | } |
| | | } |
| | | }, |
| | | "rc-select": { |
| | | "version": "9.2.1", |
| | | "resolved": "https://registry.npmjs.org/rc-select/-/rc-select-9.2.1.tgz", |
| | | "integrity": "sha512-nW/Zr2OCgxN26OX8ff3xcO1wK0e1l5ixnEfyN15Rbdk7TNI/rIPJIjPCQAoihRpk9A2C/GH8pahjlvKV1Vj++g==", |
| | | "version": "9.2.3", |
| | | "resolved": "https://registry.npmjs.org/rc-select/-/rc-select-9.2.3.tgz", |
| | | "integrity": "sha512-WhswxOMWiNnkXRbxyrj0kiIvyCfo/BaRPaYbsDetSIAU2yEDwKHF798blCP5u86KLOBKBvtxWLFCkSsQw1so5w==", |
| | | "requires": { |
| | | "babel-runtime": "^6.23.0", |
| | | "classnames": "2.x", |
| | |
| | | } |
| | | }, |
| | | "rc-slider": { |
| | | "version": "8.6.13", |
| | | "resolved": "https://registry.npmjs.org/rc-slider/-/rc-slider-8.6.13.tgz", |
| | | "integrity": "sha512-fCUe8pPn8n9pq1ARX44nN2nzJoATtna4x/PdskUrxIvZXN8ja7HuceN/hq6kokZjo3FBD2B1yMZvZh6oi68l6Q==", |
| | | "version": "8.7.1", |
| | | "resolved": "https://registry.npmjs.org/rc-slider/-/rc-slider-8.7.1.tgz", |
| | | "integrity": "sha512-WMT5mRFUEcrLWwTxsyS8jYmlaMsTVCZIGENLikHsNv+tE8ThU2lCoPfi/xFNUfJFNFSBFP3MwPez9ZsJmNp13g==", |
| | | "requires": { |
| | | "babel-runtime": "6.x", |
| | | "classnames": "^2.2.5", |
| | | "prop-types": "^15.5.4", |
| | | "rc-tooltip": "^3.7.0", |
| | | "rc-util": "^4.0.4", |
| | | "shallowequal": "^1.0.1", |
| | | "react-lifecycles-compat": "^3.0.4", |
| | | "shallowequal": "^1.1.0", |
| | | "warning": "^4.0.3" |
| | | } |
| | | }, |
| | |
| | | } |
| | | }, |
| | | "rc-switch": { |
| | | "version": "1.9.0", |
| | | "resolved": "https://registry.npmjs.org/rc-switch/-/rc-switch-1.9.0.tgz", |
| | | "integrity": "sha512-Isas+egaK6qSk64jaEw4GgPStY4umYDbT7ZY93bZF1Af+b/JEsKsJdNOU2qG3WI0Z6tXo2DDq0kJCv8Yhu0zww==", |
| | | "version": "1.9.2", |
| | | "resolved": "https://registry.npmjs.org/rc-switch/-/rc-switch-1.9.2.tgz", |
| | | "integrity": "sha512-qaK7mY4FLDKy99Hq3A1tf8CcqfzKtHp9LPX8WTnZ0MzdHCTneSARb1XD7Eqeu8BactasYGsi2bF9p18Q+/5JEw==", |
| | | "requires": { |
| | | "classnames": "^2.2.1", |
| | | "prop-types": "^15.5.6", |
| | |
| | | } |
| | | }, |
| | | "rc-table": { |
| | | "version": "6.7.0", |
| | | "resolved": "https://registry.npmjs.org/rc-table/-/rc-table-6.7.0.tgz", |
| | | "integrity": "sha512-zzu7UtEHLTzZibB1EOoeKQejH21suoxRQx3evlGGLwz5NUh2HDUHobSr12z5Kd8EPr1+y/LPzXJdX1ctFPC+hA==", |
| | | "version": "6.10.15", |
| | | "resolved": "https://registry.npmjs.org/rc-table/-/rc-table-6.10.15.tgz", |
| | | "integrity": "sha512-LAr0M/gqt+irOjvPNBLApmQ0CUHNOfKsEBhu1uIuB3OlN1ynA9z+sdoTQyNd9+8NSl0MYnQOOfhtLChAY7nU0A==", |
| | | "requires": { |
| | | "babel-runtime": "6.x", |
| | | "classnames": "^2.2.5", |
| | | "component-classes": "^1.2.6", |
| | | "lodash": "^4.17.5", |
| | | "mini-store": "^2.0.0", |
| | | "prop-types": "^15.5.8", |
| | | "rc-util": "^4.0.4", |
| | | "rc-util": "^4.13.0", |
| | | "react-lifecycles-compat": "^3.0.2", |
| | | "shallowequal": "^1.0.2", |
| | | "warning": "^3.0.0" |
| | | "shallowequal": "^1.0.2" |
| | | }, |
| | | "dependencies": { |
| | | "warning": { |
| | | "version": "3.0.0", |
| | | "resolved": "https://registry.npmjs.org/warning/-/warning-3.0.0.tgz", |
| | | "integrity": "sha1-MuU3fLVy3kqwR1O9+IIcAe1gW3w=", |
| | | "rc-util": { |
| | | "version": "4.21.1", |
| | | "resolved": "https://registry.npmjs.org/rc-util/-/rc-util-4.21.1.tgz", |
| | | "integrity": "sha512-Z+vlkSQVc1l8O2UjR3WQ+XdWlhj5q9BMQNLk2iOBch75CqPfrJyGtcWMcnhRlNuDu0Ndtt4kLVO8JI8BrABobg==", |
| | | "requires": { |
| | | "loose-envify": "^1.0.0" |
| | | "add-dom-event-listener": "^1.1.0", |
| | | "prop-types": "^15.5.10", |
| | | "react-is": "^16.12.0", |
| | | "react-lifecycles-compat": "^3.0.4", |
| | | "shallowequal": "^1.1.0" |
| | | } |
| | | }, |
| | | "react-is": { |
| | | "version": "16.13.1", |
| | | "resolved": "https://registry.npmjs.org/react-is/-/react-is-16.13.1.tgz", |
| | | "integrity": "sha512-24e6ynE2H+OKt4kqsOvNd8kBpV65zoxbA4BVsEOB3ARVWQki/DHzaUoC5KuON/BiccDaCCTZBuOcfZs70kR8bQ==" |
| | | } |
| | | } |
| | | }, |
| | | "rc-tabs": { |
| | | "version": "9.6.6", |
| | | "resolved": "https://registry.npmjs.org/rc-tabs/-/rc-tabs-9.6.6.tgz", |
| | | "integrity": "sha512-8Vs4tLZKQODl72RetTNm+yVOuboAhtJlvf9fbxWJ4WiYuzMxU7Y8RZ8yVNDGt3+4WzCJUI53CtobptBWwcUkDA==", |
| | | "version": "9.7.0", |
| | | "resolved": "https://registry.npmjs.org/rc-tabs/-/rc-tabs-9.7.0.tgz", |
| | | "integrity": "sha512-kvmgp8/MfLzFZ06hWHignqomFQ5nF7BqKr5O1FfhE4VKsGrep52YSF/1MvS5oe0NPcI9XGNS2p751C5v6cYDpQ==", |
| | | "requires": { |
| | | "@ant-design/create-react-context": "^0.2.4", |
| | | "babel-runtime": "6.x", |
| | |
| | | } |
| | | }, |
| | | "rc-time-picker": { |
| | | "version": "3.7.2", |
| | | "resolved": "https://registry.npmjs.org/rc-time-picker/-/rc-time-picker-3.7.2.tgz", |
| | | "integrity": "sha512-UVWO9HXGyZoM4I2THlJsEAFcZQz+tYwdcpoHXCEFZsRLz9L2+7vV4EMp9Wa3UrtzMFEt83qSAX/90dCJeKl9sg==", |
| | | "version": "3.7.3", |
| | | "resolved": "https://registry.npmjs.org/rc-time-picker/-/rc-time-picker-3.7.3.tgz", |
| | | "integrity": "sha512-Lv1Mvzp9fRXhXEnRLO4nW6GLNxUkfAZ3RsiIBsWjGjXXvMNjdr4BX/ayElHAFK0DoJqOhm7c5tjmIYpEOwcUXg==", |
| | | "requires": { |
| | | "classnames": "2.x", |
| | | "moment": "2.x", |
| | |
| | | } |
| | | }, |
| | | "rc-tree": { |
| | | "version": "2.1.2", |
| | | "resolved": "https://registry.npmjs.org/rc-tree/-/rc-tree-2.1.2.tgz", |
| | | "integrity": "sha512-IQG0bkY4bfK11oVIF44Y4V3IuIOAmIIc5j8b8XGkRjsnUOElRr/BNqKCvg9h2UsNJm1J2xv4OA0HfEIv70765Q==", |
| | | "version": "2.1.4", |
| | | "resolved": "https://registry.npmjs.org/rc-tree/-/rc-tree-2.1.4.tgz", |
| | | "integrity": "sha512-Xey794Iavgs8YldFlXcZLOhfcIhlX5Oz/yfKufknBXf2AlZCOkc7aHqSM9uTF7fBPtTGPhPxNEfOqHfY7b7xng==", |
| | | "requires": { |
| | | "@ant-design/create-react-context": "^0.2.4", |
| | | "classnames": "2.x", |
| | |
| | | } |
| | | }, |
| | | "rc-tree-select": { |
| | | "version": "2.9.1", |
| | | "resolved": "https://registry.npmjs.org/rc-tree-select/-/rc-tree-select-2.9.1.tgz", |
| | | "integrity": "sha512-AfJQC1ZzaeH+Onmx84TtVLUL2guBZe7exA8XSfj1RRB1doDbYGTtybzpP3CEw/tuSftSRnz+iPt+iaxRTrgXRw==", |
| | | "version": "2.9.4", |
| | | "resolved": "https://registry.npmjs.org/rc-tree-select/-/rc-tree-select-2.9.4.tgz", |
| | | "integrity": "sha512-0HQkXAN4XbfBW20CZYh3G+V+VMrjX42XRtDCpyv6PDUm5vikC0Ob682ZBCVS97Ww2a5Hf6Ajmu0ahWEdIEpwhg==", |
| | | "requires": { |
| | | "classnames": "^2.2.1", |
| | | "dom-scroll-into-view": "^1.2.1", |
| | | "prop-types": "^15.5.8", |
| | | "raf": "^3.4.0", |
| | | "rc-animate": "^2.8.2", |
| | | "rc-tree": "~2.0.0", |
| | | "rc-trigger": "^3.0.0-rc.2", |
| | | "rc-tree": "~2.1.0", |
| | | "rc-trigger": "^3.0.0", |
| | | "rc-util": "^4.5.0", |
| | | "react-lifecycles-compat": "^3.0.4", |
| | | "shallowequal": "^1.0.2", |
| | | "warning": "^4.0.1" |
| | | }, |
| | | "dependencies": { |
| | | "rc-tree": { |
| | | "version": "2.0.0", |
| | | "resolved": "https://registry.npmjs.org/rc-tree/-/rc-tree-2.0.0.tgz", |
| | | "integrity": "sha512-DAT/jsbnFbHqG9Df9OaVG93CAVtTsJVnJiwKX+wqsG8TChpty3s6QX3zJZ+gBgjkq4ikLbu1kuFJtX63EKhSAA==", |
| | | "requires": { |
| | | "babel-runtime": "^6.23.0", |
| | | "classnames": "2.x", |
| | | "prop-types": "^15.5.8", |
| | | "rc-animate": "^2.6.0", |
| | | "rc-util": "^4.5.1", |
| | | "react-lifecycles-compat": "^3.0.4", |
| | | "warning": "^3.0.0" |
| | | }, |
| | | "dependencies": { |
| | | "warning": { |
| | | "version": "3.0.0", |
| | | "resolved": "https://registry.npmjs.org/warning/-/warning-3.0.0.tgz", |
| | | "integrity": "sha1-MuU3fLVy3kqwR1O9+IIcAe1gW3w=", |
| | | "requires": { |
| | | "loose-envify": "^1.0.0" |
| | | } |
| | | } |
| | | } |
| | | }, |
| | | "rc-trigger": { |
| | | "version": "3.0.0-rc.3", |
| | | "resolved": "https://registry.npmjs.org/rc-trigger/-/rc-trigger-3.0.0-rc.3.tgz", |
| | | "integrity": "sha512-4vB6cpxcUdm2qO5VtB9q1TZz0MoWm9BzFLvGknulphGrl1qI6uxUsPDCvqnmujdpDdAKGGfjxntFpA7RtAwkFQ==", |
| | | "version": "3.0.0", |
| | | "resolved": "https://registry.npmjs.org/rc-trigger/-/rc-trigger-3.0.0.tgz", |
| | | "integrity": "sha512-hQxbbJpo23E2QnYczfq3Ec5J5tVl2mUDhkqxrEsQAqk16HfADQg+iKNWzEYXyERSncdxfnzYuaBgy764mNRzTA==", |
| | | "requires": { |
| | | "babel-runtime": "6.x", |
| | | "classnames": "^2.2.6", |
| | |
| | | "raf": "^3.4.0", |
| | | "rc-align": "^2.4.1", |
| | | "rc-animate": "^3.0.0-rc.1", |
| | | "rc-util": "^4.4.0" |
| | | "rc-util": "^4.15.7" |
| | | }, |
| | | "dependencies": { |
| | | "rc-animate": { |
| | | "version": "3.0.0-rc.6", |
| | | "resolved": "https://registry.npmjs.org/rc-animate/-/rc-animate-3.0.0-rc.6.tgz", |
| | | "integrity": "sha512-oBLPpiT6Q4t6YvD/pkLcmofBP1p01TX0Otse8Q4+Mxt8J+VSDflLZGIgf62EwkvRwsQUkLPjZVFBsldnPKLzjg==", |
| | | "version": "3.1.1", |
| | | "resolved": "https://registry.npmjs.org/rc-animate/-/rc-animate-3.1.1.tgz", |
| | | "integrity": "sha512-8wg2Zg3EETy0k/9kYuis30NJNQg1D6/WSQwnCiz6SvyxQXNet/rVraRz3bPngwY6rcU2nlRvoShiYOorXyF7Sg==", |
| | | "requires": { |
| | | "babel-runtime": "6.x", |
| | | "classnames": "^2.2.5", |
| | | "component-classes": "^1.2.6", |
| | | "fbjs": "^0.8.16", |
| | | "prop-types": "15.x", |
| | | "@ant-design/css-animation": "^1.7.2", |
| | | "classnames": "^2.2.6", |
| | | "raf": "^3.4.0", |
| | | "rc-util": "^4.5.0", |
| | | "react-lifecycles-compat": "^3.0.4" |
| | | "rc-util": "^4.15.3" |
| | | } |
| | | }, |
| | | "rc-util": { |
| | | "version": "4.21.1", |
| | | "resolved": "https://registry.npmjs.org/rc-util/-/rc-util-4.21.1.tgz", |
| | | "integrity": "sha512-Z+vlkSQVc1l8O2UjR3WQ+XdWlhj5q9BMQNLk2iOBch75CqPfrJyGtcWMcnhRlNuDu0Ndtt4kLVO8JI8BrABobg==", |
| | | "requires": { |
| | | "add-dom-event-listener": "^1.1.0", |
| | | "prop-types": "^15.5.10", |
| | | "react-is": "^16.12.0", |
| | | "react-lifecycles-compat": "^3.0.4", |
| | | "shallowequal": "^1.1.0" |
| | | } |
| | | } |
| | | } |
| | | }, |
| | | "react-is": { |
| | | "version": "16.13.1", |
| | | "resolved": "https://registry.npmjs.org/react-is/-/react-is-16.13.1.tgz", |
| | | "integrity": "sha512-24e6ynE2H+OKt4kqsOvNd8kBpV65zoxbA4BVsEOB3ARVWQki/DHzaUoC5KuON/BiccDaCCTZBuOcfZs70kR8bQ==" |
| | | } |
| | | } |
| | | }, |
| | |
| | | } |
| | | }, |
| | | "rc-upload": { |
| | | "version": "2.7.0", |
| | | "resolved": "https://registry.npmjs.org/rc-upload/-/rc-upload-2.7.0.tgz", |
| | | "integrity": "sha512-Oh9EJB4xE8MQUZ2D0OUST3UMIBjHjnO2IjPNW/cbPredxZz+lzbLPCZxcxRwUwu1gt0LA968UWXAgT1EvZdFfA==", |
| | | "version": "2.9.4", |
| | | "resolved": "https://registry.npmjs.org/rc-upload/-/rc-upload-2.9.4.tgz", |
| | | "integrity": "sha512-WXt0HGxXyzLrPV6iec/96Rbl/6dyrAW8pKuY6wwD7yFYwfU5bjgKjv7vC8KNMJ6wzitFrZjnoiogNL3dF9dj3Q==", |
| | | "requires": { |
| | | "babel-runtime": "6.x", |
| | | "classnames": "^2.2.5", |
| | |
| | | "integrity": "sha512-tJBzzzIgnnRfEm046qRcURvwQnZVXmuCbscxUO5RWrGTXpon2d4c8mI0D8WE6ydVIm29JiLB6+RslkIvym9Rjw==" |
| | | }, |
| | | "react-lazy-load": { |
| | | "version": "3.0.13", |
| | | "resolved": "https://registry.npmjs.org/react-lazy-load/-/react-lazy-load-3.0.13.tgz", |
| | | "integrity": "sha1-OwqS0zbUPT8Nc8vm81sXBQsIuCQ=", |
| | | "version": "3.1.13", |
| | | "resolved": "https://registry.npmjs.org/react-lazy-load/-/react-lazy-load-3.1.13.tgz", |
| | | "integrity": "sha512-eAVNUn3vhNj79Iv04NOCwy/sCLyqDEhL3j9aJKV7VJuRBDg6rCiB+BIWHuG7VXJGCgb//6nX/soR8PTyWRhFvQ==", |
| | | "requires": { |
| | | "eventlistener": "0.0.1", |
| | | "lodash.debounce": "^4.0.0", |
| | |
| | | } |
| | | }, |
| | | "shallow-equal": { |
| | | "version": "1.2.0", |
| | | "resolved": "https://registry.npmjs.org/shallow-equal/-/shallow-equal-1.2.0.tgz", |
| | | "integrity": "sha512-Z21pVxR4cXsfwpMKMhCEIO1PCi5sp7KEp+CmOpBQ+E8GpHwKOw2sEzk7sgblM3d/j4z4gakoWEoPcjK0VJQogA==" |
| | | "version": "1.2.1", |
| | | "resolved": "https://registry.npmjs.org/shallow-equal/-/shallow-equal-1.2.1.tgz", |
| | | "integrity": "sha512-S4vJDjHHMBaiZuT9NPb616CSmLf618jawtv3sufLl6ivK8WocjAo58cXwbRV1cgqxH0Qbv+iUt6m05eqEa2IRA==" |
| | | }, |
| | | "shallowequal": { |
| | | "version": "1.1.0", |
| | |
| | | "@typescript-eslint/eslint-plugin": "1.13.0", |
| | | "@typescript-eslint/parser": "1.13.0", |
| | | "@uiw/react-codemirror": "^2.2.1", |
| | | "antd": "^3.23.2", |
| | | "antd": "^3.26.20", |
| | | "antd-mobile": "^2.3.3", |
| | | "axios": "^0.19.0", |
| | | "babel-eslint": "10.0.2", |
| | |
| | | if (visible) { |
| | | setTimeout(() => { |
| | | let input = document.getElementById('thdMenu-search') |
| | | |
| | | if (input) { |
| | | input.focus() |
| | | } |
| | | input && input.focus() |
| | | }, 500) |
| | | } |
| | | }) |
| | |
| | | if (e.target.value) { |
| | | if (!this.props.form.getFieldValue(key)) { |
| | | const input = document.getElementById(key) |
| | | if (input) { |
| | | input.focus() |
| | | } |
| | | input && input.focus() |
| | | return |
| | | } |
| | | this.props.handleSubmit() |
| | |
| | | |
| | | componentDidMount () { |
| | | const input = document.getElementById('username') |
| | | if (input) { |
| | | input.focus() |
| | | } |
| | | input && input.focus() |
| | | } |
| | | |
| | | render() { |
| | |
| | | if (card.focus) { |
| | | try { |
| | | let _form = document.getElementById('label') |
| | | _form.select() |
| | | _form && _form.select() |
| | | } catch { |
| | | console.warn('表单focus失败!') |
| | | } |
| | |
| | | _fieldval.Ot = 'requiredSgl' |
| | | } |
| | | |
| | | if (card.$type === 'tableButton') { // 表格按钮 |
| | | delete _fieldval.Ot |
| | | } |
| | | |
| | | this.props.form.setFieldsValue(_fieldval) |
| | | }) |
| | | } else if (key === 'pageTemplate') { |
| | |
| | | label: Formdict['header.form.isRequired'], |
| | | initVal: card.Ot || 'requiredSgl', |
| | | required: true, |
| | | forbid: card.$type === 'tableButton', |
| | | options: [] |
| | | }, |
| | | { |
| | |
| | | let _elements = elements.map(cell => { |
| | | if (cell.uuid === res.uuid) { |
| | | res.style = cell.style || {} |
| | | res.$type = cell.$type || '' |
| | | if (res.eleType === 'splitline' && cell.eleType !== 'splitline') { |
| | | res.style.paddingTop = '5px' |
| | | res.style.paddingBottom = '5px' |
| | |
| | | |
| | | newcard.eleType = 'text' |
| | | newcard.datatype = 'dynamic' |
| | | newcard.color = 'rgba(0,0,0,0.85)' |
| | | newcard.padding = '5px' |
| | | newcard.align = 'left' |
| | | |
| | | // 注册事件-添加元素 |
| | | MKEmitter.emit('cardAddElement', [cards.uuid, card.uuid], newcard) |
| | |
| | | roleList = [] |
| | | } |
| | | |
| | | let options = [{ |
| | | value: 'text', |
| | | text: Formdict['model.form.text'] |
| | | }, { |
| | | value: 'number', |
| | | text: Formdict['model.form.number'] |
| | | }, { |
| | | value: 'picture', |
| | | text: Formdict['model.form.picture'] |
| | | }, { |
| | | value: 'link', |
| | | text: Formdict['model.form.href'] |
| | | }, { |
| | | value: 'textarea', |
| | | text: Formdict['model.form.textarea'] |
| | | }, { |
| | | value: 'custom', |
| | | text: '自定义列' |
| | | }] |
| | | |
| | | if (!card.isSub) { |
| | | options.push({ |
| | | value: 'colspan', |
| | | text: '合并列' |
| | | }, { |
| | | value: 'action', |
| | | text: '操作' |
| | | }) |
| | | } |
| | | |
| | | return [ |
| | | { |
| | | type: 'text', |
| | |
| | | label: Formdict['model.form.type'], |
| | | initVal: card.type, |
| | | required: true, |
| | | options: [{ |
| | | value: 'text', |
| | | text: Formdict['model.form.text'] |
| | | }, { |
| | | value: 'number', |
| | | text: Formdict['model.form.number'] |
| | | }, { |
| | | value: 'picture', |
| | | text: Formdict['model.form.picture'] |
| | | }, { |
| | | value: 'link', |
| | | text: Formdict['model.form.href'] |
| | | }, { |
| | | value: 'textarea', |
| | | text: Formdict['model.form.textarea'] |
| | | }] |
| | | options: options |
| | | }, |
| | | { |
| | | type: 'select', |
| | |
| | | { |
| | | type: 'number', |
| | | key: 'Width', |
| | | min: 1, |
| | | min: 20, |
| | | max: 1000, |
| | | decimal: 0, |
| | | label: Formdict['model.form.columnWidth'], |
| | | initVal: card.Width, |
| | | initVal: card.Width || 120, |
| | | required: true |
| | | }, |
| | | { |
| | |
| | | key: 'rowspan', |
| | | label: '行合并', |
| | | initVal: card.rowspan || 'false', |
| | | tooltip: '相邻行信息相同时,单元格合并。注:为防止表格信息错乱,行合并只能添加一个字段。', |
| | | tooltip: '相邻行信息相同时,单元格合并。', |
| | | required: false, |
| | | options: [{ |
| | | value: 'true', |
| | |
| | | key: 'sum', |
| | | label: '显示合计', |
| | | initVal: card.sum || 'false', |
| | | tooltip: '合计信息只在使用系统数据源,且当前列未隐藏时有效。', |
| | | tooltip: '合计信息只在使用系统数据源时有效。', |
| | | required: false, |
| | | options: [{ |
| | | value: 'true', |
| | |
| | | required: true |
| | | }, |
| | | { |
| | | type: 'number', |
| | | key: 'fieldlength', |
| | | label: Formdict['model.form.field'] + Formdict['model.length'], |
| | | initVal: card.fieldlength || (card.type === 'text' ? 50 : 512), |
| | | required: true |
| | | }, |
| | | { |
| | | type: 'select', |
| | | key: 'format', |
| | | label: Formdict['header.form.format'], |
| | | initVal: card.format || '', |
| | | initVal: card.format || 'none', |
| | | options: [{ |
| | | value: '', |
| | | value: 'none', |
| | | text: Formdict['model.empty'] |
| | | }, { |
| | | value: 'thdSeparator', |
| | |
| | | type: 'select', |
| | | key: 'textFormat', |
| | | label: Formdict['header.form.format'], |
| | | initVal: card.textFormat || '', |
| | | initVal: card.textFormat || 'none', |
| | | options: [{ |
| | | value: '', |
| | | value: 'none', |
| | | text: Formdict['model.empty'] |
| | | }, { |
| | | value: 'YYYY-MM-DD', |
| | |
| | | readonly: false |
| | | }, |
| | | { |
| | | type: 'number', |
| | | key: 'maxHeight', |
| | | min: 1, |
| | | max: 1000, |
| | | decimal: 0, |
| | | label: '最大高度', |
| | | tooltip: '图片在表格中显示的最大高度', |
| | | tooltipClass: 'middle', |
| | | initVal: card.maxHeight || 128, |
| | | required: true |
| | | type: 'select', |
| | | key: 'lenWidRadio', |
| | | label: '长宽比', |
| | | initVal: card.lenWidRadio || '1:1', |
| | | required: true, |
| | | options: [ |
| | | { value: '1:1', text: '1:1' }, |
| | | { value: '3:2', text: '3:2' }, |
| | | { value: '4:3', text: '4:3' }, |
| | | { value: '16:9', text: '16:9' } |
| | | ] |
| | | }, |
| | | { |
| | | type: 'radio', |
| | |
| | | import React, {Component} from 'react' |
| | | import PropTypes from 'prop-types' |
| | | import { fromJS } from 'immutable' |
| | | import { is, fromJS } from 'immutable' |
| | | import { Form, Row, Col, Input, Select, InputNumber, Radio, Tooltip, Icon, Cascader, Modal } from 'antd' |
| | | |
| | | import { getColumnForm } from './formconfig' |
| | |
| | | import './index.scss' |
| | | |
| | | const columnTypeOptions = { |
| | | text: ['label', 'field', 'type', 'Align', 'Hide', 'IsSort', 'Width', 'prefix', 'postfix', 'textFormat', 'fieldlength', 'blacklist', 'perspective', 'rowspan'], |
| | | text: ['label', 'field', 'type', 'Align', 'Hide', 'IsSort', 'Width', 'prefix', 'postfix', 'textFormat', 'blacklist', 'perspective', 'rowspan'], |
| | | number: ['label', 'field', 'type', 'Align', 'Hide', 'IsSort', 'Width', 'decimal', 'format', 'prefix', 'postfix', 'blacklist', 'perspective', 'sum'], |
| | | link: ['label', 'field', 'type', 'Align', 'Hide', 'IsSort', 'joint', 'Width', 'fieldlength', 'blacklist'], |
| | | textarea: ['label', 'field', 'type', 'Align', 'Hide', 'IsSort', 'Width', 'prefix', 'postfix', 'fieldlength', 'blacklist'], |
| | | picture: ['label', 'field', 'type', 'Align', 'Hide', 'IsSort', 'Width', 'fieldlength', 'blacklist', 'scale', 'maxHeight'] |
| | | link: ['label', 'field', 'type', 'Align', 'Hide', 'IsSort', 'joint', 'Width', 'blacklist'], |
| | | textarea: ['label', 'field', 'type', 'Align', 'Hide', 'IsSort', 'Width', 'prefix', 'postfix', 'blacklist'], |
| | | picture: ['label', 'field', 'type', 'Align', 'Hide', 'IsSort', 'Width', 'blacklist', 'scale', 'lenWidRadio'], |
| | | colspan: ['label', 'type', 'Align', 'Hide', 'blacklist'], |
| | | custom: ['label', 'type', 'Align', 'Hide', 'Width', 'blacklist'], |
| | | action: ['label', 'type', 'Align', 'Width'] |
| | | } |
| | | |
| | | class MainSearch extends Component { |
| | | static propTpyes = { |
| | | dict: PropTypes.object, // 字典项 |
| | | visible: PropTypes.bool, |
| | | column: PropTypes.object, |
| | | fields: PropTypes.array, |
| | | updateCol: PropTypes.func, // 提交事件 |
| | | deleteCol: PropTypes.func // 取消时删除事件 |
| | | submitCol: PropTypes.func, // 提交事件 |
| | | cancelCol: PropTypes.func // 取消时删除事件 |
| | | } |
| | | |
| | | state = { |
| | |
| | | formlist: null |
| | | } |
| | | |
| | | /** |
| | | * @description 初次添加的显示列元素,聚焦提示文字 |
| | | */ |
| | | componentDidMount () { |
| | | if (this.props.column.focus) { |
| | | this.editColumn() |
| | | UNSAFE_componentWillReceiveProps (nextProps) { |
| | | if (nextProps.column && !is(fromJS(this.props.column), fromJS(nextProps.column))) { |
| | | this.editColumn(nextProps.column) |
| | | } |
| | | } |
| | | |
| | | editColumn = () => { |
| | | editColumn = (column) => { |
| | | let menulist = sessionStorage.getItem('fstMenuList') |
| | | if (menulist) { |
| | | try { |
| | |
| | | menulist = [] |
| | | } |
| | | |
| | | let formlist = getColumnForm(column, menulist, this.props.fields) |
| | | let _options = fromJS(columnTypeOptions[column.type]).toJS() |
| | | if (column.type === 'text' || column.type === 'number') { |
| | | if (column.perspective !== 'linkurl') { |
| | | _options.push('linkmenu') |
| | | } else { |
| | | _options.push('linkurl') |
| | | } |
| | | } |
| | | |
| | | this.setState({ |
| | | visible: true, |
| | | formlist: getColumnForm(this.props.column, menulist, this.props.fields) |
| | | type: column.type, |
| | | formlist: formlist.map(item => { |
| | | item.hidden = !_options.includes(item.key) |
| | | |
| | | return item |
| | | }) |
| | | }, () => { |
| | | if (this.props.column.focus) { |
| | | if (column.focus) { |
| | | try { |
| | | let _form = document.getElementById('label') |
| | | _form.select() |
| | | _form && _form.select() |
| | | } catch { |
| | | console.warn('表单focus失败!') |
| | | } |
| | |
| | | _options.push('linkmenu') |
| | | } |
| | | |
| | | let fieldlength = 50 |
| | | |
| | | if (value !== 'text') { |
| | | fieldlength = 512 |
| | | } |
| | | |
| | | this.setState({ |
| | | type: value, |
| | | formlist: this.state.formlist.map(item => { |
| | |
| | | return item |
| | | }) |
| | | }, () => { |
| | | if (this.props.form.getFieldValue('fieldlength') !== undefined) { |
| | | this.props.form.setFieldsValue({fieldlength: fieldlength}) |
| | | } else if (this.props.form.getFieldValue('perspective') !== undefined) { |
| | | if (value === 'link' || value === 'textarea' || value === 'picture') { |
| | | this.props.form.setFieldsValue({IsSort: 'false'}) |
| | | } else if (value === 'text' || value === 'number') { |
| | | this.props.form.setFieldsValue({perspective: 'linkmenu'}) |
| | | } else if (value === 'action' || value === 'colspan') { |
| | | this.props.form.setFieldsValue({Align: 'center'}) |
| | | } |
| | | }) |
| | | } else if (key === 'field') { |
| | |
| | | message: this.props.dict['form.required.input'] + item.label + '!' |
| | | } |
| | | ] |
| | | })(item.unlimit ? <InputNumber /> : |
| | | <InputNumber min={item.min} max={item.max} precision={item.decimal} />)} |
| | | })(item.unlimit ? <InputNumber onPressEnter={this.handleSubmit}/> : |
| | | <InputNumber min={item.min} max={item.max} precision={item.decimal} onPressEnter={this.handleSubmit}/>)} |
| | | </Form.Item> |
| | | </Col> |
| | | ) |
| | |
| | | getPopupContainer={() => document.getElementById('columnwinter')} |
| | | > |
| | | {item.options.map((option, index) => |
| | | <Select.Option key={index} value={option.value || option.field}> |
| | | <Select.Option key={`${index}`} value={option.value || option.field}> |
| | | {option.text || option.label} |
| | | </Select.Option> |
| | | )} |
| | |
| | | this.props.form.validateFieldsAndScroll((err, values) => { |
| | | if (!err) { |
| | | this.setState({visible: false, formlist: null}) |
| | | this.props.updateCol(values) |
| | | this.props.submitCol(values) |
| | | } |
| | | }) |
| | | } |
| | |
| | | editModalCancel = () => { |
| | | this.setState({visible: false, formlist: null}) |
| | | |
| | | if (this.props.column.focus) { |
| | | this.props.deleteCol() |
| | | } |
| | | this.props.cancelCol() |
| | | } |
| | | |
| | | render() { |
| | |
| | | sm: { span: 18 } |
| | | } |
| | | } |
| | | |
| | | return ( |
| | | <div style={{display: 'inline-block'}}> |
| | | <Icon className="edit" title="编辑" type="edit" onClick={this.editColumn} /> |
| | | <Modal |
| | | title="显示列编辑" |
| | | visible={visible} |
| | |
| | | import PropTypes from 'prop-types' |
| | | import { is, fromJS } from 'immutable' |
| | | import { DndProvider, DragSource, DropTarget } from 'react-dnd' |
| | | import { Table, Form, Popover, Icon } from 'antd' |
| | | import { Table, Form, Popover, Icon, Modal } from 'antd' |
| | | |
| | | import asyncComponent from '@/utils/asyncComponent' |
| | | import asyncIconComponent from '@/utils/asyncIconComponent' |
| | | import Utils from '@/utils/utils.js' |
| | | import zhCN from '@/locales/zh-CN/model.js' |
| | | import enUS from '@/locales/en-US/model.js' |
| | | import MKEmitter from '@/utils/events.js' |
| | | import './index.scss' |
| | | |
| | | const { confirm } = Modal |
| | | const coldict = localStorage.getItem('lang') !== 'en-US' ? zhCN : enUS |
| | | const EditColumn = asyncIconComponent(() => import('./editColumn')) |
| | | const CardCellComponent = asyncComponent(() => import('@/menu/components/card/cardcellcomponent')) |
| | | |
| | | class HeaderCol extends Component { |
| | | updateCol = (values) => { |
| | | const { column } = this.props |
| | | this.props.updateCol({...column, ...values}) |
| | | deleteCol = () => { |
| | | const _this = this |
| | | |
| | | confirm({ |
| | | content: '确定删除显示列吗?', |
| | | onOk() { |
| | | _this.props.deleteCol(_this.props.column) |
| | | }, |
| | | onCancel() {} |
| | | }) |
| | | } |
| | | |
| | | deleteCol = () => { |
| | | this.props.deleteCol(this.props.column) |
| | | shouldComponentUpdate (nextProps, nextState) { |
| | | |
| | | if (!nextProps.column) return false |
| | | |
| | | return !is(fromJS(this.props.column), fromJS(nextProps.column)) || |
| | | !is(fromJS(this.props.fields), fromJS(nextProps.fields)) || |
| | | this.props.index !== nextProps.index |
| | | } |
| | | |
| | | render() { |
| | | const { connectDragSource, connectDropTarget, moveCol, updateCol, deleteCol, index, column, fields, children, ...restProps } = this.props |
| | | const { connectDragSource, connectDropTarget, moveCol, addElement, editColumn, deleteCol, index, column, align, fields, children, ...restProps } = this.props |
| | | |
| | | if (index !== undefined) { |
| | | return connectDragSource( |
| | | connectDropTarget(<th {...restProps} index={index} style={{ cursor: 'move' }}> |
| | | connectDropTarget(<th {...restProps} index={index} style={{ cursor: 'move', textAlign: align }}> |
| | | <Popover overlayClassName="mk-popover-control-wrap" mouseLeaveDelay={0.2} mouseEnterDelay={0.2} content={ |
| | | <div className="mk-popover-control"> |
| | | <EditColumn column={column} dict={coldict} fields={fields} updateCol={this.updateCol} deleteCol={this.deleteCol}/> |
| | | <Icon className="close" title="delete" type="delete" onClick={this.deleteCol} /> |
| | | {column && (column.type === 'custom' || column.type === 'colspan' || column.type === 'action') ? |
| | | <Icon className="plus" title="添加" type="plus" onClick={() => this.props.addElement(column)} /> : null |
| | | } |
| | | <Icon className="edit" title="编辑" type="edit" onClick={() => this.props.editColumn(column)} /> |
| | | <Icon className="close" title="删除" type="delete" onClick={this.deleteCol} /> |
| | | </div> |
| | | } trigger="hover"> |
| | | {children} |
| | | </Popover> |
| | | </th>), |
| | | ) |
| | | } else { |
| | | } else if (column) { |
| | | return ( |
| | | <th {...restProps}> |
| | | <Popover overlayClassName="mk-popover-control-wrap" mouseLeaveDelay={0.2} mouseEnterDelay={0.2} content={ |
| | | <div className="mk-popover-control"> |
| | | <EditColumn column={column} dict={coldict} fields={fields} updateCol={this.updateCol} deleteCol={this.deleteCol}/> |
| | | <Icon className="close" title="delete" type="delete" onClick={this.deleteCol} /> |
| | | {column && column.type === 'custom' ? |
| | | <Icon className="plus" title="添加" type="plus" onClick={() => this.props.addElement(column)} /> : null |
| | | } |
| | | <Icon className="edit" title="编辑" type="edit" onClick={() => this.props.editColumn(column)} /> |
| | | <Icon className="close" title="删除" type="delete" onClick={this.deleteCol} /> |
| | | </div> |
| | | } trigger="hover"> |
| | | {children} |
| | | </Popover> |
| | | </th> |
| | | ) |
| | | } else { |
| | | return (<th {...restProps}>{children}</th>) |
| | | } |
| | | } |
| | | } |
| | |
| | | ) |
| | | |
| | | class EditableCell extends Component { |
| | | render() { |
| | | const { column, children, style } = this.props |
| | | updateCard = (vals) => { |
| | | const { column } = this.props |
| | | this.props.upComponent({...column, elements: vals}) |
| | | } |
| | | |
| | | if (column) { |
| | | shouldComponentUpdate (nextProps, nextState) { |
| | | const { config, column } = this.props |
| | | |
| | | if (!nextProps.column) return true |
| | | |
| | | return !is(fromJS(column), fromJS(nextProps.column)) || |
| | | !is(fromJS(config.columns), fromJS(nextProps.config.columns)) || |
| | | !is(fromJS(config.search), fromJS(nextProps.config.search)) |
| | | } |
| | | |
| | | render() { |
| | | const { column, config, children, className, style } = this.props |
| | | |
| | | if (column && column.type === 'custom') { |
| | | return ( |
| | | <td style={style}> |
| | | <td style={{padding: 0, verticalAlign: 'top', minWidth: column.Width || 100}} className={className}> |
| | | <CardCellComponent cards={config} cardCell={column} elements={column.elements} updateElement={this.updateCard}/> |
| | | </td> |
| | | ) |
| | | } else if (column && column.type === 'action') { |
| | | return ( |
| | | <td style={{padding: '0 5px', textAlign: column.Align, minWidth: column.Width || 100}} className={className}> |
| | | <CardCellComponent cards={config} cardCell={column} elements={column.elements} updateElement={this.updateCard}/> |
| | | </td> |
| | | ) |
| | | } else if (column) { |
| | | return ( |
| | | <td style={{...style, minWidth: column.Width || 100}} className={className}> |
| | | {column.field} |
| | | </td> |
| | | ) |
| | | } else { |
| | | return ( |
| | | <td style={style}> |
| | | <td style={style} className={className}> |
| | | {children} |
| | | </td> |
| | | ) |
| | |
| | | |
| | | class EditTable extends Component { |
| | | static propTpyes = { |
| | | actions: PropTypes.any, // 操作项 |
| | | data: PropTypes.any, // 数据列表 |
| | | columns: PropTypes.array, // 显示列 |
| | | onChange: PropTypes.func // 数据变化 |
| | | config: PropTypes.object, // 配置信息 |
| | | updatecolumn: PropTypes.func // 数据变化 |
| | | } |
| | | |
| | | state = { |
| | |
| | | } |
| | | |
| | | UNSAFE_componentWillMount () { |
| | | const { config } = this.props |
| | | |
| | | this.setState({ |
| | | columns: fromJS(this.props.config.cols).toJS(), |
| | | fields: fromJS(this.props.config.columns).toJS() |
| | | columns: fromJS(config.cols).toJS(), |
| | | fields: fromJS(config.columns).toJS() |
| | | }) |
| | | } |
| | | |
| | | UNSAFE_componentWillReceiveProps (nextProps) { |
| | | if (!is(fromJS(this.state.columns), fromJS(nextProps.config.cols))) { |
| | | this.setState({columns: fromJS(nextProps.config.cols).toJS()}) |
| | | let _columns = fromJS(nextProps.config.cols).toJS() |
| | | this.setState({columns: _columns}) |
| | | if (_columns[_columns.length - 1] && _columns[_columns.length - 1].focus) { |
| | | this.editColumn(_columns[_columns.length - 1]) |
| | | } |
| | | } else if (!is(fromJS(this.state.fields), fromJS(nextProps.config.columns))) { |
| | | this.setState({fields: fromJS(nextProps.config.columns).toJS()}) |
| | | } |
| | | } |
| | | shouldComponentUpdate (nextProps, nextState) { |
| | | return !is(fromJS(this.state), fromJS(nextState)) |
| | | const { config } = this.props |
| | | |
| | | return !is(fromJS(this.state), fromJS(nextState)) || |
| | | !is(fromJS(config.wrap), fromJS(nextProps.config.wrap)) || |
| | | !is(fromJS(config.search), fromJS(nextProps.config.search)) || |
| | | config.setting.laypage !== nextProps.config.setting.laypage |
| | | } |
| | | |
| | | moveCol = (dragIndex, hoverIndex) => { |
| | |
| | | this.setState({ |
| | | columns: _columns |
| | | }, () => { |
| | | // this.props.onChange(_data) |
| | | this.props.updatecolumn({...this.props.config, cols: _columns}) |
| | | }) |
| | | } |
| | | |
| | | updateCol = (col) => { |
| | | let _columns = fromJS(this.state.columns).toJS() |
| | | |
| | | if (col.isSub) { |
| | | _columns = _columns.map(column => { |
| | | if (column.type === 'colspan') { |
| | | column.subcols = column.subcols.map(item => { |
| | | if (item.uuid === col.uuid) { |
| | | return col |
| | | } |
| | | return item |
| | | }) |
| | | } |
| | | return column |
| | | }) |
| | | } else { |
| | | _columns = _columns.map(column => { |
| | | if (column.uuid === col.uuid) { |
| | | return col |
| | | } |
| | | return column |
| | | }) |
| | | } |
| | | |
| | | this.setState({ |
| | | columns: _columns, |
| | | }, () => { |
| | | this.props.updatecolumn({...this.props.config, cols: _columns}) |
| | | }) |
| | | } |
| | | |
| | | editColumn = (col) => { |
| | | this.setState({ |
| | | card: fromJS(col).toJS() |
| | | }) |
| | | } |
| | | |
| | | addElement = (col) => { |
| | | const { config } = this.props |
| | | let column = fromJS(col).toJS() |
| | | |
| | | if (column.type === 'colspan') { |
| | | column.subcols = column.subcols || [] |
| | | let subcol = { isSub: true, focus: true, uuid: Utils.getuuid(), label: 'label', field: '', type: 'text' } |
| | | column.subcols.push(subcol) |
| | | |
| | | this.setState({ |
| | | card: subcol |
| | | }) |
| | | this.updateCol(column) |
| | | } else if (column.type === 'custom') { |
| | | let newcard = {uuid: Utils.getuuid(), focus: true, eleType: 'text', datatype: 'dynamic'} |
| | | |
| | | // 注册事件-添加元素 |
| | | MKEmitter.emit('cardAddElement', [config.uuid, column.uuid], newcard) |
| | | } else if (column.type === 'action') { |
| | | let newcard = { |
| | | uuid: Utils.getuuid(), |
| | | focus: true, |
| | | eleType: 'button', |
| | | label: 'button', |
| | | OpenType: 'prompt', |
| | | class: 'primary', |
| | | intertype: 'system', |
| | | execSuccess: 'grid', |
| | | execError: 'never', |
| | | show: 'link', |
| | | $type: 'tableButton' |
| | | } |
| | | |
| | | // 注册事件-添加元素 |
| | | MKEmitter.emit('cardAddElement', [config.uuid, column.uuid], newcard) |
| | | } |
| | | } |
| | | |
| | | submitCol = (col) => { |
| | | const { card } = this.state |
| | | |
| | | col.uuid = card.uuid |
| | | col.isSub = card.isSub === true |
| | | col.marks = card.marks || [] |
| | | |
| | | if (col.type === 'colspan') { |
| | | col.subcols = card.subcols || [] |
| | | } else if (col.type === 'custom') { |
| | | col.elements = card.type === 'custom' ? (card.elements || []) : [] |
| | | } else if (col.type === 'action') { |
| | | col.elements = card.type === 'action' ? (card.elements || []) : [] |
| | | } |
| | | |
| | | this.setState({card: null}) |
| | | this.updateCol(col) |
| | | } |
| | | |
| | | cancelCol = () => { |
| | | const { card } = this.state |
| | | |
| | | if (card.focus) { |
| | | this.deleteCol(card) |
| | | } |
| | | |
| | | this.setState({card: null}) |
| | | } |
| | | |
| | | deleteCol = (col) => { |
| | | let _columns = fromJS(this.state.columns).toJS() |
| | | |
| | | if (col.isSub) { |
| | | _columns = _columns.map(column => { |
| | | if (column.type !== 'colspan') return column |
| | | if (column.subcols && column.subcols.length > 0) { |
| | | column.subcols = column.subcols.filter(item => item.uuid !== col.uuid) |
| | | } |
| | | return column |
| | | }) |
| | | } else { |
| | | _columns = _columns.filter(column => column.uuid !== col.uuid) |
| | | } |
| | | |
| | | this.setState({ |
| | | columns: _columns |
| | | }, () => { |
| | | this.props.updatecolumn({...this.props.config, cols: _columns}) |
| | | }) |
| | | } |
| | | |
| | | render() { |
| | | const { fields } = this.state |
| | | const { config } = this.props |
| | | const { fields, card } = this.state |
| | | const components = { |
| | | header: { |
| | | cell: DragableHeaderCol |
| | |
| | | return { |
| | | title: col.label, |
| | | dataIndex: col.field, |
| | | align: 'right', |
| | | align: col.Align, |
| | | sorter: col.IsSort === 'true', |
| | | onCell: () => ({ |
| | | column: col, |
| | | fields: fields |
| | | width: col.Width, |
| | | config: config, |
| | | upComponent: this.updateCol |
| | | }), |
| | | children: col.subcols && col.subcols.length > 0 ? col.subcols.map(cell => ({ |
| | | align: 'left', |
| | | align: col.Align, |
| | | title: cell.label, |
| | | key: cell.uuid, |
| | | onCell: () => ({ |
| | | column: cell, |
| | | fields: fields |
| | | width: cell.Width, |
| | | config: config, |
| | | upComponent: this.updateCol |
| | | }), |
| | | onHeaderCell: () => ({ |
| | | column: cell, |
| | | fields: fields, |
| | | updateCol: this.updateCol, |
| | | align: cell.Align, |
| | | addElement: this.addElement, |
| | | editColumn: this.editColumn, |
| | | deleteCol: this.deleteCol, |
| | | }) |
| | | })) : null, |
| | | onHeaderCell: () => ({ |
| | | index, |
| | | column: col, |
| | | fields: fields, |
| | | align: col.Align, |
| | | moveCol: this.moveCol, |
| | | updateCol: this.updateCol, |
| | | addElement: this.addElement, |
| | | editColumn: this.editColumn, |
| | | deleteCol: this.deleteCol, |
| | | }) |
| | | } |
| | | }) |
| | | |
| | | return ( |
| | | <div className="normal-table-columns"> |
| | | <div className={`normal-table-columns ${config.setting.laypage} ${config.wrap.tableType}`}> |
| | | <DndProvider> |
| | | <Table |
| | | bordered |
| | | rowKey="uuid" |
| | | // bordered={false} |
| | | bordered={config.wrap.border !== 'false'} |
| | | components={components} |
| | | dataSource={this.state.data} |
| | | rowSelection={{type: 'radio'}} |
| | | rowSelection={config.wrap.tableType ? { type: 'radio' } : null} |
| | | columns={columns} |
| | | rowClassName="editable-row" |
| | | pagination={{ |
| | |
| | | total: 58, |
| | | showTotal: (total, range) => `${range[0]}-${range[1]} 共 ${total} 条` |
| | | }} |
| | | // onRow={(record, index) => ({ |
| | | // index, |
| | | // moveRow: this.moveRow, |
| | | // })} |
| | | /> |
| | | </DndProvider> |
| | | <EditColumn column={card} dict={coldict} fields={fields} submitCol={this.submitCol} cancelCol={this.cancelCol}/> |
| | | </div> |
| | | ) |
| | | } |
| | |
| | | .normal-table-columns { |
| | | .ant-table-body { |
| | | overflow-x: auto; |
| | | padding-bottom: 10px; |
| | | padding-bottom: 20px; |
| | | } |
| | | .ant-table-thead { |
| | | th { |
| | |
| | | content: ''; |
| | | } |
| | | } |
| | | > tr > th .ant-table-column-sorter .ant-table-column-sorter-inner { |
| | | .ant-table-column-sorter-up.on, .ant-table-column-sorter-down.on { |
| | | color: unset; |
| | | } |
| | | } |
| | | } |
| | | } |
| | | |
| | | .normal-table-columns.false { |
| | | .ant-pagination { |
| | | display: none; |
| | | } |
| | | } |
| | | .normal-table-columns.checkbox { |
| | | .ant-radio-inner { |
| | | border-radius: 0; |
| | | } |
| | | .ant-radio-inner::after { |
| | | border-radius: 0; |
| | | } |
| | | .ant-radio-checked::after { |
| | | border-radius: 0; |
| | | } |
| | | } |
| | |
| | | const SearchComponent = asyncComponent(() => import('@/templates/sharecomponent/searchcomponent')) |
| | | const ActionComponent = asyncComponent(() => import('@/menu/actioncomponent')) |
| | | const ColumnComponent = asyncComponent(() => import('./columns')) |
| | | // const WrapComponent = asyncIconComponent(() => import('../data-card/wrapsetting')) |
| | | // const SearchComponent = asyncComponent(() => import('@/menu/searchcomponent')) |
| | | const WrapComponent = asyncIconComponent(() => import('./wrapsetting')) |
| | | |
| | | const { confirm } = Modal |
| | | |
| | |
| | | name: card.name, |
| | | subtype: card.subtype, |
| | | setting: { interType: 'system' }, |
| | | wrap: { name: card.name, width: 24 }, |
| | | wrap: { name: card.name, width: 24, border: 'true', tableType: 'checkbox' }, |
| | | style: { marginLeft: '8px', marginRight: '8px', marginTop: '8px', marginBottom: '8px' }, |
| | | headerStyle: { fontSize: '16px' }, |
| | | columns: [], |
| | | cols: [ |
| | | { origin: true, uuid: Utils.getuuid(), Align: 'left', label: 'label1', field: 'field1', Hide: 'false', type: 'text', Width: 120, subcols: [ |
| | | { origin: true, uuid: Utils.getuuid(), Align: 'left', label: 'label11', field: 'field11', Hide: 'false', type: 'text', Width: 120 }, |
| | | { origin: true, uuid: Utils.getuuid(), Align: 'left', label: 'label12', field: 'field12', Hide: 'false', type: 'text', Width: 120 }, |
| | | ] }, |
| | | { origin: true, uuid: Utils.getuuid(), Align: 'left', label: 'label2', field: 'field2', Hide: 'false', IsSort: 'true', type: 'text', Width: 120 }, |
| | | { origin: true, uuid: Utils.getuuid(), Align: 'left', label: 'label3', field: 'field3', Hide: 'false', type: 'text', Width: 120, subcols: [ |
| | | { origin: true, uuid: Utils.getuuid(), Align: 'left', label: 'label31', field: 'field31', Hide: 'false', type: 'text', Width: 120 }, |
| | | { origin: true, uuid: Utils.getuuid(), Align: 'left', label: 'label32', field: 'field32', Hide: 'false', type: 'text', Width: 120 }, |
| | | ] }, |
| | | { origin: true, uuid: Utils.getuuid(), Align: 'left', label: 'label4', field: 'field4', Hide: 'false', IsSort: 'true', type: 'text', Width: 120 }, |
| | | { origin: true, uuid: Utils.getuuid(), Align: 'left', label: 'label5', field: 'field5', Hide: 'false', type: 'text', Width: 120 }, |
| | | { origin: true, uuid: Utils.getuuid(), Align: 'left', label: 'label6', field: 'field6', Hide: 'false', IsSort: 'true', type: 'text', Width: 120 }, |
| | | { origin: true, uuid: Utils.getuuid(), Align: 'left', label: 'label7', field: 'field7', Hide: 'false', IsSort: 'true', type: 'text', Width: 120 }, |
| | | { origin: true, uuid: Utils.getuuid(), Align: 'left', label: 'label8', field: 'field8', Hide: 'false', IsSort: 'true', type: 'text', Width: 120 }, |
| | | { origin: true, uuid: Utils.getuuid(), Align: 'left', label: 'label9', field: 'field9', Hide: 'false', IsSort: 'true', type: 'text', Width: 120 }, |
| | | { origin: true, uuid: Utils.getuuid(), Align: 'left', label: 'label10', field: 'field10', Hide: 'false', IsSort: 'true', type: 'text', Width: 120 }, |
| | | { origin: true, uuid: Utils.getuuid(), Align: 'left', label: 'label11', field: 'field11', Hide: 'false', IsSort: 'true', type: 'text', Width: 120 }, |
| | | { origin: true, uuid: Utils.getuuid(), Align: 'left', label: 'label12', field: 'field12', Hide: 'false', IsSort: 'true', type: 'text', Width: 120 }, |
| | | { origin: true, uuid: Utils.getuuid(), Align: 'left', label: 'label13', field: 'field13', Hide: 'false', IsSort: 'true', type: 'text', Width: 120 }, |
| | | { origin: true, uuid: Utils.getuuid(), Align: 'left', label: 'label14', field: 'field14', Hide: 'false', IsSort: 'true', type: 'text', Width: 120 }, |
| | | { origin: true, uuid: Utils.getuuid(), Align: 'left', label: 'label15', field: 'field15', Hide: 'false', IsSort: 'true', type: 'text', Width: 120 } |
| | | { origin: true, uuid: Utils.getuuid(), Align: 'left', label: 'label1', field: '', Hide: 'false', type: 'text', Width: 120 }, |
| | | { origin: true, uuid: Utils.getuuid(), Align: 'left', label: 'label2', field: '', Hide: 'false', IsSort: 'true', type: 'text', Width: 120 }, |
| | | { origin: true, uuid: Utils.getuuid(), Align: 'left', label: 'label3', field: '', Hide: 'false', IsSort: 'true', type: 'text', Width: 120 }, |
| | | ], |
| | | scripts: [] |
| | | } |
| | |
| | | MKEmitter.emit('changeStyle', [card.uuid], ['background', 'border', 'padding', 'margin'], card.style) |
| | | } |
| | | |
| | | changeTitleStyle = () => { |
| | | const { card } = this.state |
| | | |
| | | MKEmitter.emit('changeStyle', [card.uuid, 'header'], ['font', 'border'], card.headerStyle) |
| | | } |
| | | |
| | | getStyle = (comIds, style) => { |
| | | const { card } = this.state |
| | | |
| | |
| | | let _card = {} |
| | | if (comIds.length === 1) { |
| | | _card = {...card, style} |
| | | } else if (comIds.length === 2 && comIds[1] === 'header') { |
| | | _card = {...card, headerStyle: style} |
| | | } else { |
| | | return |
| | | } |
| | |
| | | this.props.updateConfig(card) |
| | | } |
| | | |
| | | addColumns = () => { |
| | | let card = fromJS(this.state.card).toJS() |
| | | |
| | | card.cols.push({ focus: true, uuid: Utils.getuuid(), label: 'label', field: '', type: 'text' }) |
| | | |
| | | this.setState({card}) |
| | | } |
| | | |
| | | addSearch = () => { |
| | | let card = fromJS(this.state.card).toJS() |
| | | |
| | | let newcard = {} |
| | | newcard.uuid = Utils.getuuid() |
| | | newcard.focus = true |
| | | |
| | | newcard.label = 'label' |
| | | newcard.type = 'text' |
| | | newcard.match = '=' |
| | | |
| | | card.search.push(newcard) |
| | | card.search.push({uuid: Utils.getuuid(), focus: true, label: 'label', type: 'text', match: '='}) |
| | | |
| | | this.setState({card}) |
| | | } |
| | |
| | | setSubConfig = (btn) => { |
| | | |
| | | } |
| | | updateaction = (config) => { |
| | | |
| | | } |
| | | |
| | | render() { |
| | | const { menu } = this.props |
| | |
| | | <div className="menu-normal-table-edit-box" style={{...card.style, height: card.wrap.height}}> |
| | | <Popover overlayClassName="mk-popover-control-wrap" mouseLeaveDelay={0.2} mouseEnterDelay={0.2} content={ |
| | | <div className="mk-popover-control"> |
| | | <Icon className="plus" title="添加列" onClick={this.addColumns} type="plus" /> |
| | | {menu && menu.MenuType !== 'billPrint' ? <Icon className="plus" title="添加搜索" onClick={this.addSearch} type="plus-circle" /> : null} |
| | | {menu && menu.MenuType !== 'billPrint' ? <Icon className="plus" title="添加按钮" onClick={this.addButton} type="plus-square" /> : null} |
| | | {/* {menu ? <WrapComponent config={card} MenuType={menu.MenuType} updateConfig={this.updateComponent} /> : null} */} |
| | | {menu ? <WrapComponent config={card} MenuType={menu.MenuType} updateConfig={this.updateComponent} /> : null} |
| | | <Icon className="style" title="调整样式" onClick={this.changeStyle} type="font-colors" /> |
| | | <Icon className="close" title="删除组件" type="delete" onClick={() => this.props.deletecomponent(card.uuid)} /> |
| | | <SettingComponent config={card} updateConfig={this.updateComponent} /> |
| | |
| | | <ActionComponent |
| | | type="normaltable" |
| | | config={card} |
| | | setSubConfig={this.setSubConfig} |
| | | updateaction={this.updateComponent} |
| | | /> |
| | | <ColumnComponent config={card} updatecolumn={this.updateconfig}/> |
| | |
| | | margin-right: 10px; |
| | | } |
| | | } |
| | | |
| | | .ant-btn.mk-link { |
| | | padding: 0; |
| | | } |
| | | } |
| | | .menu-normal-table-edit-box::after { |
| | | display: block; |
New file |
| | |
| | | import React, {Component} from 'react' |
| | | import PropTypes from 'prop-types' |
| | | import { is, fromJS } from 'immutable' |
| | | import { Icon, Modal } from 'antd' |
| | | |
| | | import zhCN from '@/locales/zh-CN/model.js' |
| | | import enUS from '@/locales/en-US/model.js' |
| | | import SettingForm from './settingform' |
| | | import './index.scss' |
| | | |
| | | class DataSource extends Component { |
| | | static propTpyes = { |
| | | config: PropTypes.any, |
| | | MenuType: PropTypes.any, |
| | | updateConfig: PropTypes.func |
| | | } |
| | | |
| | | state = { |
| | | dict: localStorage.getItem('lang') !== 'en-US' ? zhCN : enUS, |
| | | visible: false, |
| | | wrap: null |
| | | } |
| | | |
| | | UNSAFE_componentWillMount () { |
| | | const { config } = this.props |
| | | |
| | | this.setState({wrap: fromJS(config.wrap).toJS()}) |
| | | } |
| | | |
| | | shouldComponentUpdate (nextProps, nextState) { |
| | | return !is(fromJS(this.props), fromJS(nextProps)) || !is(fromJS(this.state), fromJS(nextState)) |
| | | } |
| | | |
| | | editDataSource = () => { |
| | | this.setState({ |
| | | visible: true |
| | | }) |
| | | } |
| | | |
| | | verifySubmit = () => { |
| | | const { config } = this.props |
| | | |
| | | this.verifyRef.handleConfirm().then(res => { |
| | | |
| | | this.setState({ |
| | | wrap: res, |
| | | visible: false |
| | | }) |
| | | this.props.updateConfig({...config, wrap: res}) |
| | | }) |
| | | } |
| | | |
| | | render () { |
| | | const { config, MenuType } = this.props |
| | | const { visible, dict, wrap } = this.state |
| | | |
| | | return ( |
| | | <div className="model-menu-setting-wrap"> |
| | | <Icon type="edit" onClick={() => this.editDataSource()} /> |
| | | <Modal |
| | | wrapClassName="popview-modal" |
| | | title="表格设置" |
| | | visible={visible} |
| | | width={700} |
| | | maskClosable={false} |
| | | okText={dict['model.submit']} |
| | | onOk={this.verifySubmit} |
| | | onCancel={() => { this.setState({ visible: false }) }} |
| | | destroyOnClose |
| | | > |
| | | <SettingForm |
| | | dict={dict} |
| | | wrap={wrap} |
| | | config={config} |
| | | MenuType={MenuType} |
| | | inputSubmit={this.verifySubmit} |
| | | wrappedComponentRef={(inst) => this.verifyRef = inst} |
| | | /> |
| | | </Modal> |
| | | </div> |
| | | ) |
| | | } |
| | | } |
| | | |
| | | export default DataSource |
New file |
| | |
| | | .model-menu-setting-wrap { |
| | | display: inline-block; |
| | | |
| | | >.anticon-edit { |
| | | color: #1890ff; |
| | | } |
| | | } |
New file |
| | |
| | | import React, {Component} from 'react' |
| | | import PropTypes from 'prop-types' |
| | | import { Form, Row, Col, Input, Radio, Tooltip, Icon, InputNumber, Select } from 'antd' |
| | | |
| | | import './index.scss' |
| | | |
| | | class SettingForm extends Component { |
| | | static propTpyes = { |
| | | MenuType: PropTypes.any, // 菜单类型 |
| | | dict: PropTypes.object, // 字典项 |
| | | config: PropTypes.object, // 卡片行信息 |
| | | wrap: PropTypes.object, // 数据源配置 |
| | | inputSubmit: PropTypes.func // 回车事件 |
| | | } |
| | | |
| | | state = { |
| | | roleList: [] |
| | | } |
| | | |
| | | UNSAFE_componentWillMount () { |
| | | let roleList = sessionStorage.getItem('sysRoles') |
| | | if (roleList) { |
| | | try { |
| | | roleList = JSON.parse(roleList) |
| | | } catch { |
| | | roleList = [] |
| | | } |
| | | } else { |
| | | roleList = [] |
| | | } |
| | | |
| | | this.setState({roleList}) |
| | | } |
| | | |
| | | handleConfirm = () => { |
| | | // 表单提交时检查输入值是否正确 |
| | | return new Promise((resolve, reject) => { |
| | | this.props.form.validateFieldsAndScroll((err, values) => { |
| | | if (!err) { |
| | | resolve(values) |
| | | } else { |
| | | reject(err) |
| | | } |
| | | }) |
| | | }) |
| | | } |
| | | |
| | | handleSubmit = (e) => { |
| | | e.preventDefault() |
| | | |
| | | if (this.props.inputSubmit) { |
| | | this.props.inputSubmit() |
| | | } |
| | | } |
| | | |
| | | render() { |
| | | const { wrap, MenuType } = this.props |
| | | const { getFieldDecorator } = this.props.form |
| | | const { roleList } = this.state |
| | | |
| | | const formItemLayout = { |
| | | labelCol: { |
| | | xs: { span: 24 }, |
| | | sm: { span: 8 } |
| | | }, |
| | | wrapperCol: { |
| | | xs: { span: 24 }, |
| | | sm: { span: 16 } |
| | | } |
| | | } |
| | | |
| | | return ( |
| | | <div className="model-menu-setting-form"> |
| | | <Form {...formItemLayout}> |
| | | <Row gutter={24}> |
| | | <Col span={12}> |
| | | <Form.Item label={ |
| | | <Tooltip placement="topLeft" title="用于组件间的区分。"> |
| | | <Icon type="question-circle" /> |
| | | 组件名称 |
| | | </Tooltip> |
| | | }> |
| | | {getFieldDecorator('name', { |
| | | initialValue: wrap.name, |
| | | rules: [ |
| | | { |
| | | required: true, |
| | | message: this.props.dict['form.required.input'] + '组件名称!' |
| | | } |
| | | ] |
| | | })(<Input placeholder={''} autoComplete="off" onPressEnter={this.handleSubmit} />)} |
| | | </Form.Item> |
| | | </Col> |
| | | <Col span={12}> |
| | | <Form.Item label={ |
| | | <Tooltip placement="topLeft" title="栅格布局,每行等分为24列。"> |
| | | <Icon type="question-circle" /> |
| | | 宽度 |
| | | </Tooltip> |
| | | }> |
| | | {getFieldDecorator('width', { |
| | | initialValue: wrap.width || 24, |
| | | rules: [ |
| | | { |
| | | required: true, |
| | | message: this.props.dict['form.required.input'] + '宽度!' |
| | | } |
| | | ] |
| | | })(<InputNumber min={1} max={24} precision={0} onPressEnter={this.handleSubmit} />)} |
| | | </Form.Item> |
| | | </Col> |
| | | <Col span={12}> |
| | | <Form.Item label="表格属性"> |
| | | {getFieldDecorator('tableType', { |
| | | initialValue: wrap.tableType |
| | | })( |
| | | <Radio.Group style={{whiteSpace: 'nowrap'}}> |
| | | <Radio key="" value=""> 不可选 </Radio> |
| | | <Radio key="radio" value={'radio'}> 单选 </Radio> |
| | | <Radio key="checkbox" value={'checkbox'}> 多选 </Radio> |
| | | </Radio.Group> |
| | | )} |
| | | </Form.Item> |
| | | </Col> |
| | | <Col span={12}> |
| | | <Form.Item label="边框"> |
| | | {getFieldDecorator('border', { |
| | | initialValue: wrap.border || 'true' |
| | | })( |
| | | <Radio.Group style={{whiteSpace: 'nowrap'}}> |
| | | <Radio key="true" value={'true'}> 有 </Radio> |
| | | <Radio key="false" value={'false'}> 无 </Radio> |
| | | </Radio.Group> |
| | | )} |
| | | </Form.Item> |
| | | </Col> |
| | | {MenuType !== 'billPrint' ? <Col span={12}> |
| | | <Form.Item label="黑名单"> |
| | | {getFieldDecorator('blacklist', { |
| | | initialValue: wrap.blacklist || [] |
| | | })( |
| | | <Select |
| | | showSearch |
| | | mode="multiple" |
| | | filterOption={(input, option) => option.props.children.toLowerCase().indexOf(input.toLowerCase()) >= 0} |
| | | > |
| | | {roleList.map(option => |
| | | <Select.Option key={option.uuid} value={option.value}>{option.text}</Select.Option> |
| | | )} |
| | | </Select> |
| | | )} |
| | | </Form.Item> |
| | | </Col> : null} |
| | | </Row> |
| | | </Form> |
| | | </div> |
| | | ) |
| | | } |
| | | } |
| | | |
| | | export default Form.create()(SettingForm) |
New file |
| | |
| | | .model-menu-setting-form { |
| | | position: relative; |
| | | |
| | | .anticon-question-circle { |
| | | color: #c49f47; |
| | | margin-right: 3px; |
| | | } |
| | | .ant-input-number { |
| | | width: 100%; |
| | | } |
| | | } |
| | |
| | | import card1 from '@/assets/mobimg/card1.png' |
| | | import card2 from '@/assets/mobimg/card2.png' |
| | | import TableCard from '@/assets/mobimg/table-card.png' |
| | | // import NormalTable from '@/assets/mobimg/normal-table.png' |
| | | import NormalTable from '@/assets/mobimg/normal-table.png' |
| | | import Pie from '@/assets/mobimg/pie.png' |
| | | import Pie1 from '@/assets/mobimg/ring.png' |
| | | import Pie2 from '@/assets/mobimg/nightingale.png' |
| | |
| | | { type: 'menu', url: Mainsearch, component: 'search', subtype: 'mainsearch', title: '搜索条件', width: 24, forbid: ['billPrint'] }, |
| | | { type: 'menu', url: card1, component: 'card', subtype: 'datacard', title: '数据卡', config: `[{"uuid":"160135809128212dm7i29fim9ksto9od","setting":{"width":6},"style":{"paddingTop":"15px","marginTop":"4px","paddingRight":"15px","marginRight":"8px","marginLeft":"8px","backgroundColor":"rgba(255, 255, 255, 1)","borderColor":"#e8e8e8","paddingLeft":"15px","marginBottom":"4px","borderWidth":"1px","paddingBottom":"10px"},"backStyle":{},"elements":[{"datatype":"static","width":12,"marks":null,"height":1,"value":"关单","style":{},"prefix":"","postfix":"","format":"","eleType":"text","uuid":"160231860159931untbea62sgokunc5s"},{"datatype":"static","width":12,"marks":null,"style":{"color":"rgba(250, 219, 20, 1)","textAlign":"right"},"btnstyle":{},"eleType":"icon","icon":"question-circle","field":"","uuid":"1602318768361nv8ql4t47sgcsn88b0u"},{"datatype":"static","width":24,"marks":null,"height":1,"innerHeight":36,"value":"100","style":{"fontSize":"24px","fontWeight":"500","color":"rgba(0, 0, 0, 1)"},"prefix":"","btnstyle":{},"postfix":"","format":"","eleType":"text","uuid":"1602318817884v70gtgb65ubnm8mbcvv"},{"color":"#1890ff","width":24,"marks":null,"maxValue":100,"style":{"color":"rgba(250, 140, 22, 1)","paddingTop":"20px","paddingBottom":"10px"},"btnstyle":{},"eleType":"slider","field":"int1","uuid":"16023188871233rkktuvpp1h077igrsu"},{"eleType":"splitline","width":24,"color":"#e8e8e8","uuid":"1602320017038n31bk9o831ggug0tu0b","marks":null,"style":{"marginTop":"10px","marginBottom":"10px"},"btnstyle":{}},{"datatype":"static","width":12,"marks":null,"height":1,"value":"100","style":{"marginTop":"6px"},"prefix":"关单","btnstyle":{},"postfix":"","format":"","eleType":"text","uuid":"1602320061243drd7lf3agvn04kgr175"}],"backElements":[]}]` }, |
| | | { type: 'menu', url: card2, component: 'card', subtype: 'propcard', title: '属性卡', config: `[{"uuid":"1603681387259qaqf1127f72esmtchge","setting":{"width":6,"type":"simple"},"style":{"paddingTop":"15px","marginTop":"8px","paddingRight":"15px","marginRight":"8px","marginLeft":"8px","borderColor":"#e8e8e8","paddingLeft":"15px","marginBottom":"8px","borderWidth":"1px","paddingBottom":"15px"},"backStyle":{},"elements":[{"datatype":"static","width":12,"marks":null,"height":1,"value":"超时工单","style":{"color":"rgba(67, 67, 67, 0.51)"},"prefix":"","postfix":"","format":"","eleType":"text","uuid":"1603681402945qnkgm7q8cng65evn5ev"},{"eleType":"icon","datatype":"static","width":12,"icon":"question-circle","tooltip":"超时工单","uuid":"1603681473384i2crkbtofg4pu76k06a","marks":null,"style":{"textAlign":"right","color":"rgba(250, 219, 20, 1)"}},{"datatype":"static","width":24,"marks":null,"height":1,"innerHeight":36,"value":"100","style":{"fontSize":"24px","color":"rgba(0, 0, 0, 1)"},"prefix":"","postfix":"","format":"","eleType":"number","uuid":"1603681539870d704ufqf98kc6t7537t"},{"color":"rgba(250, 219, 20, 1)","datatype":"static","width":24,"marks":null,"maxValue":100,"value":50,"style":{"paddingTop":"10px","paddingBottom":"10px"},"eleType":"slider","uuid":"1603683067556mvupau0odvrtv45u7o8"},{"eleType":"splitline","width":24,"color":"#e8e8e8","uuid":"1603683117981t9k55k8an430fuppmci","marks":null,"style":{"paddingTop":"5px","paddingBottom":"5px"}},{"datatype":"static","width":12,"marks":null,"height":1,"value":"100","style":{"color":"rgba(0, 0, 0, 0.65)","marginTop":"10px"},"prefix":"超时工单 ","postfix":"","format":"","eleType":"text","uuid":"1603683136553uvsmkfohkft9idbfkhu"}],"backElements":[]}]` }, |
| | | // { type: 'menu', url: NormalTable, component: 'table', subtype: 'normaltable', title: '常用表', width: 24 }, |
| | | { type: 'menu', url: NormalTable, component: 'table', subtype: 'normaltable', title: '常用表', width: 24 }, |
| | | { type: 'menu', url: TableCard, component: 'table', subtype: 'tablecard', title: '表格', width: 12 }, |
| | | { type: 'menu', url: line, component: 'line', subtype: 'line', title: '折线图' }, |
| | | { type: 'menu', url: line1, component: 'line', subtype: 'line1', title: '阶梯折线图' }, |
| | |
| | | <ul className="content"> |
| | | {item.subData.map((data, index) => ( |
| | | <li key={index} className="message"> |
| | | <Badge color={item.style ? (data.color === item.style.background ? '#ffffff' : data.color) : data.color} text={`${data.remark}(${data.startTime} ~ ${data.endTime})`}/> |
| | | <Badge color={item.style ? (data.color === item.style.background ? '#ffffff' : data.color) : data.color} text={`${data.remark} (${data.startTime} ~ ${data.endTime})`}/> |
| | | </li> |
| | | ))} |
| | | </ul> |
| | |
| | | } |
| | | .message { |
| | | width: 100%; |
| | | white-space: nowrap; |
| | | // white-space: nowrap; |
| | | overflow: hidden; |
| | | margin-bottom: 5px; |
| | | text-overflow: ellipsis; |
| | | } |
| | | } |
| | |
| | | } |
| | | |
| | | UNSAFE_componentWillMount () { |
| | | const {usefulfields, btn} = this.props |
| | | this.resetfield(this.props.usefulfields) |
| | | } |
| | | |
| | | let fields = usefulfields.map(item => item.Column) |
| | | UNSAFE_componentWillReceiveProps (nextProps) { |
| | | if (nextProps.usefulfields && !is(fromJS(this.props.usefulfields), fromJS(nextProps.usefulfields))) { |
| | | this.resetfield(nextProps.usefulfields) |
| | | } |
| | | } |
| | | |
| | | resetfield = (columns) => { |
| | | const { btn } = this.props |
| | | columns = columns.filter(item => item.import !== 'false') |
| | | let fields = columns.map(item => item.Column) |
| | | |
| | | if (!fields.includes('ID')) { |
| | | fields.unshift('ID') |
| | | } |
| | |
| | | fields.unshift('BID') |
| | | } |
| | | |
| | | let _sql = `Declare @${btn.sheet} table (${usefulfields.map(item => item.Column + ' ' + item.type).join(',')},jskey nvarchar(50) ) |
| | | let _sql = `Declare @${btn.sheet} table (${columns.map(item => item.Column + ' ' + item.type).join(',')},jskey nvarchar(50) ) |
| | | Declare @UserName nvarchar(50),@FullName nvarchar(50),@ErrorCode nvarchar(50), @retmsg nvarchar(4000),@tbid Nvarchar(512) |
| | | Select @ErrorCode='', @retmsg='' |
| | | ` |
| | |
| | | verifySql: _sql, |
| | | usefulfields: fields.join(', ') |
| | | }) |
| | | } |
| | | |
| | | UNSAFE_componentWillReceiveProps (nextProps) { |
| | | const { btn } = this.props |
| | | |
| | | if (nextProps.usefulfields && !is(fromJS(this.props.usefulfields), fromJS(nextProps.usefulfields))) { |
| | | |
| | | let fields = nextProps.usefulfields.map(item => item.Column) |
| | | if (!fields.includes('ID')) { |
| | | fields.unshift('ID') |
| | | } |
| | | if (!fields.includes('BID')) { |
| | | fields.unshift('BID') |
| | | } |
| | | |
| | | let _sql = `Declare @${btn.sheet} table (${nextProps.usefulfields.map(item => item.Column + ' ' + item.type).join(',')},jskey nvarchar(50) ) |
| | | Declare @UserName nvarchar(50),@FullName nvarchar(50),@ErrorCode nvarchar(50), @retmsg nvarchar(4000),@tbid Nvarchar(512) |
| | | Select @ErrorCode='', @retmsg='' |
| | | ` |
| | | |
| | | this.setState({ |
| | | verifySql: _sql, |
| | | usefulfields: fields.join(', ') |
| | | }) |
| | | } |
| | | } |
| | | |
| | | edit = (record) => { |
| | |
| | | |
| | | let _value = '' |
| | | if (value === 'default') { |
| | | let fields = usefulfields.map(col => col.Column).join(',') |
| | | let fields = usefulfields.filter(item => item.import !== 'false') |
| | | fields = fields.map(col => col.Column).join(',') |
| | | |
| | | if (fields) { |
| | | fields = fields + ',' |
| | |
| | | }) |
| | | } else { |
| | | message.warning(res.message) |
| | | if (res.message.indexOf('密码错误') > -1) { |
| | | const input = document.getElementById('password') |
| | | if (input) { |
| | | input.select() |
| | | } |
| | | } else if (res.message.indexOf('登录权限') > -1) { |
| | | const input = document.getElementById('username') |
| | | if (input) { |
| | | input.select() |
| | | } |
| | | } |
| | | this.setState({ |
| | | isDisabled: false |
| | | }) |