diff --git a/package-lock.json b/package-lock.json index 7b12d6fcd..27e1169a3 100644 --- a/package-lock.json +++ b/package-lock.json @@ -5,9 +5,9 @@ "requires": true, "dependencies": { "@ant-design/icons": { - "version": "1.1.16", - "resolved": "https://registry.npmjs.org/@ant-design/icons/-/icons-1.1.16.tgz", - "integrity": "sha512-0zNVP5JYBJkfMi9HotN6QBQjF3SFmUlumJNJXZIH+pZWp/5EbrCczzlG3YTmBWoyRHAsuOGIjSFIy8v/76DTPg==" + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/@ant-design/icons/-/icons-1.2.1.tgz", + "integrity": "sha512-gQx3nH6m1xvebOWh5xibhzVK02aoqHY7JUXUS4doAidSDRWsj5iwKC8Gq9DemDZ4T+bW6xO7jJZN1UsbvcW7Uw==" }, "@ant-design/icons-react": { "version": "1.1.2", @@ -3364,11 +3364,33 @@ "integrity": "sha512-IcvnGLGSQFDvC07Bz2I8SX+QKErDZbUdiQq7S2u3XyzTyJfUmT0sWJMbeQkMzpTAkO7/N7sZpW/arUM2jfKsbQ==", "dev": true }, + "@types/prop-types": { + "version": "15.7.0", + "resolved": "https://registry.npmjs.org/@types/prop-types/-/prop-types-15.7.0.tgz", + "integrity": "sha512-eItQyV43bj4rR3JPV0Skpl1SncRCdziTEK9/v8VwXmV6d/qOUO8/EuWeHBbCZcsfSHfzI5UyMJLCSXtxxznyZg==" + }, "@types/q": { "version": "1.5.1", "resolved": "https://registry.npmjs.org/@types/q/-/q-1.5.1.tgz", "integrity": "sha512-eqz8c/0kwNi/OEHQfvIuJVLTst3in0e7uTKeuY+WL/zfKn0xVujOTp42bS/vUUokhK5P2BppLd9JXMOMHcgbjA==" }, + "@types/react": { + "version": "16.8.6", + "resolved": "https://registry.npmjs.org/@types/react/-/react-16.8.6.tgz", + "integrity": "sha512-bN9qDjEMltmHrl0PZRI4IF2AbB7V5UlRfG+OOduckVnRQ4VzXVSzy/1eLAh778IEqhTnW0mmgL9yShfinNverA==", + "requires": { + "@types/prop-types": "*", + "csstype": "^2.2.0" + } + }, + "@types/react-slick": { + "version": "0.23.3", + "resolved": "https://registry.npmjs.org/@types/react-slick/-/react-slick-0.23.3.tgz", + "integrity": "sha512-B6wU5ynINOolrByhoeJ448qZPjCFPcuhyQI5sjihjG8gQJuoTH6a4YQhuDm4umvbRVielJQANhptc8hmxA85IA==", + "requires": { + "@types/react": "*" + } + }, "@types/unist": { "version": "2.0.2", "resolved": "https://registry.npmjs.org/@types/unist/-/unist-2.0.2.tgz", @@ -3760,15 +3782,17 @@ } }, "antd": { - "version": "3.13.2", - "resolved": "https://registry.npmjs.org/antd/-/antd-3.13.2.tgz", - "integrity": "sha512-6wA0iQgyDjmDrIy59Dwbt4+vt9F3RYh8DwSF7yIxEquT6Cmzou/0wGVqLNzY11ErewnjxgB8w60cQ5VejSecIQ==", + "version": "3.14.1", + "resolved": "https://registry.npmjs.org/antd/-/antd-3.14.1.tgz", + "integrity": "sha512-mzeGrPsXKz8hClO34YEaA+p9UqSOa19tGyh2C2MGXXL2aStojO2ebwRVzCBwJIsdOCC7llREXla6uZGnavrQTA==", "requires": { - "@ant-design/icons": "~1.1.16", + "@ant-design/icons": "~1.2.0", "@ant-design/icons-react": "~1.1.2", + "@types/react-slick": "^0.23.3", "array-tree-filter": "^2.1.0", "babel-runtime": "6.x", "classnames": "~2.2.6", + "copy-to-clipboard": "^3.0.8", "create-react-class": "^15.6.3", "create-react-context": "0.2.2", "css-animation": "^1.5.0", @@ -3783,19 +3807,19 @@ "rc-calendar": "~9.10.3", "rc-cascader": "~0.17.0", "rc-checkbox": "~2.1.5", - "rc-collapse": "~1.10.2", + "rc-collapse": "~1.11.1", "rc-dialog": "~7.3.0", "rc-drawer": "~1.7.6", "rc-dropdown": "~2.4.1", "rc-editor-mention": "^1.1.7", "rc-form": "^2.4.0", - "rc-input-number": "~4.3.7", + "rc-input-number": "~4.4.0", "rc-menu": "~7.4.12", "rc-notification": "~3.3.0", "rc-pagination": "~1.17.7", "rc-progress": "~2.3.0", "rc-rate": "~2.5.0", - "rc-select": "^8.6.7", + "rc-select": "~9.0.0", "rc-slider": "~8.6.5", "rc-steps": "~3.3.0", "rc-switch": "~1.9.0", @@ -5961,7 +5985,8 @@ }, "ansi-regex": { "version": "2.1.1", - "bundled": true + "bundled": true, + "optional": true }, "aproba": { "version": "1.2.0", @@ -5998,7 +6023,8 @@ }, "code-point-at": { "version": "1.1.0", - "bundled": true + "bundled": true, + "optional": true }, "concat-map": { "version": "0.0.1", @@ -6007,7 +6033,8 @@ }, "console-control-strings": { "version": "1.1.0", - "bundled": true + "bundled": true, + "optional": true }, "core-util-is": { "version": "1.0.2", @@ -6121,6 +6148,7 @@ "is-fullwidth-code-point": { "version": "1.0.0", "bundled": true, + "optional": true, "requires": { "number-is-nan": "^1.0.0" } @@ -6146,6 +6174,7 @@ "minipass": { "version": "2.3.5", "bundled": true, + "optional": true, "requires": { "safe-buffer": "^5.1.2", "yallist": "^3.0.0" @@ -6162,6 +6191,7 @@ "mkdirp": { "version": "0.5.1", "bundled": true, + "optional": true, "requires": { "minimist": "0.0.8" } @@ -6245,6 +6275,7 @@ "once": { "version": "1.4.0", "bundled": true, + "optional": true, "requires": { "wrappy": "1" } @@ -6320,7 +6351,8 @@ }, "safe-buffer": { "version": "5.1.2", - "bundled": true + "bundled": true, + "optional": true }, "safer-buffer": { "version": "2.1.2", @@ -6350,6 +6382,7 @@ "string-width": { "version": "1.0.2", "bundled": true, + "optional": true, "requires": { "code-point-at": "^1.0.0", "is-fullwidth-code-point": "^1.0.0", @@ -6367,6 +6400,7 @@ "strip-ansi": { "version": "3.0.1", "bundled": true, + "optional": true, "requires": { "ansi-regex": "^2.0.0" } @@ -6405,11 +6439,13 @@ }, "wrappy": { "version": "1.0.2", - "bundled": true + "bundled": true, + "optional": true }, "yallist": { "version": "3.0.3", - "bundled": true + "bundled": true, + "optional": true } } }, @@ -6815,7 +6851,6 @@ "version": "3.0.8", "resolved": "https://registry.npmjs.org/copy-to-clipboard/-/copy-to-clipboard-3.0.8.tgz", "integrity": "sha512-c3GdeY8qxCHGezVb1EFQfHYK/8NZRemgcTIzPq7PuxjHAf/raKibn2QdhHPb/y6q74PMgH6yizaDZlRmw6QyKw==", - "dev": true, "requires": { "toggle-selection": "^1.0.3" } @@ -7359,6 +7394,11 @@ "cssom": "0.3.x" } }, + "csstype": { + "version": "2.6.3", + "resolved": "https://registry.npmjs.org/csstype/-/csstype-2.6.3.tgz", + "integrity": "sha512-rINUZXOkcBmoHWEyu7JdHu5JMzkGRoMX4ov9830WNgxf5UYxcBUO0QTKAqeJ5EZfSdlrcJYkC8WwfVW7JYi4yg==" + }, "cyclist": { "version": "0.2.2", "resolved": "https://registry.npmjs.org/cyclist/-/cyclist-0.2.2.tgz", @@ -7694,9 +7734,9 @@ } }, "dom-align": { - "version": "1.8.0", - "resolved": "https://registry.npmjs.org/dom-align/-/dom-align-1.8.0.tgz", - "integrity": "sha512-B85D4ef2Gj5lw0rK0KM2+D5/pH7yqNxg2mB+E8uzFaolpm7RQmsxEfjyEuNiF8UBBkffumYDeKRzTzc3LePP+w==" + "version": "1.8.2", + "resolved": "https://registry.npmjs.org/dom-align/-/dom-align-1.8.2.tgz", + "integrity": "sha512-17vInOylbB7H4qua7QRsmQT05FFTZemO8BhnOPgF9BPqjAPDyQr/9V8fmJbn05vQ31m2gu3EJSSYN2u94szUZg==" }, "dom-closest": { "version": "0.2.0", @@ -9919,8 +9959,7 @@ }, "number-is-nan": { "version": "1.0.1", - "bundled": true, - "optional": true + "bundled": true }, "object-assign": { "version": "4.1.1", @@ -10611,9 +10650,12 @@ } }, "hoist-non-react-statics": { - "version": "2.5.5", - "resolved": "https://registry.npmjs.org/hoist-non-react-statics/-/hoist-non-react-statics-2.5.5.tgz", - "integrity": "sha512-rqcy4pJo55FTTLWt+bU8ukscqHeE/e9KWvsOW2b/a3afxQZhwkQdT1rPPCJ0rYXdj4vNcasY8zHTH+jF/qStxw==" + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/hoist-non-react-statics/-/hoist-non-react-statics-3.3.0.tgz", + "integrity": "sha512-0XsbTXxgiaCDYDIWFcwkmerZPSwywfUqYmwT4jzewKTQSWoE6FCMoUVOeBJWK3E/CrWbxRG3m5GzY4lnIwGRBA==", + "requires": { + "react-is": "^16.7.0" + } }, "home-or-tmp": { "version": "2.0.0", @@ -13410,6 +13452,13 @@ "prop-types": "^15.6.0", "react-lifecycles-compat": "^3.0.4", "shallowequal": "^1.0.2" + }, + "dependencies": { + "hoist-non-react-statics": { + "version": "2.5.5", + "resolved": "https://registry.npmjs.org/hoist-non-react-statics/-/hoist-non-react-statics-2.5.5.tgz", + "integrity": "sha512-rqcy4pJo55FTTLWt+bU8ukscqHeE/e9KWvsOW2b/a3afxQZhwkQdT1rPPCJ0rYXdj4vNcasY8zHTH+jF/qStxw==" + } } }, "minimalistic-assert": { @@ -18178,9 +18227,9 @@ "dev": true }, "rc-align": { - "version": "2.4.3", - "resolved": "https://registry.npmjs.org/rc-align/-/rc-align-2.4.3.tgz", - "integrity": "sha512-h5KgyB5IXYR7iKpYFcMr54cuQ2eozPCZ11kbXPG5+6CWvmyJ+c0R/yjndVndiNk2G3MKcTMbJNdDv5DIckLAxQ==", + "version": "2.4.5", + "resolved": "https://registry.npmjs.org/rc-align/-/rc-align-2.4.5.tgz", + "integrity": "sha512-nv9wYUYdfyfK+qskThf4BQUSIadeI/dCsfaMZfNEoxm9HwOIioQ+LyqmMK6jWHAZQgOzMLaqawhuBXlF63vgjw==", "requires": { "babel-runtime": "^6.26.0", "dom-align": "^1.7.0", @@ -18202,9 +18251,9 @@ } }, "rc-calendar": { - "version": "9.10.8", - "resolved": "https://registry.npmjs.org/rc-calendar/-/rc-calendar-9.10.8.tgz", - "integrity": "sha512-AILzd0rCU8mkdVe2hAU4eV++7l0mWp/heHn5m8fs8ZoAhuHs0ifZGedHiqqqcK+tqUawzHrD0aY54H7fIUnZ+Q==", + "version": "9.10.10", + "resolved": "https://registry.npmjs.org/rc-calendar/-/rc-calendar-9.10.10.tgz", + "integrity": "sha512-WFnxpXGzIt2cPCJjFmrju/w2jZHAO9jW3JSDZovaJuBtVciu1p8brL6PSjWCo4flD3jVurL9LO8tJwgajELj2w==", "requires": { "babel-runtime": "6.x", "classnames": "2.x", @@ -18241,9 +18290,9 @@ } }, "rc-collapse": { - "version": "1.10.3", - "resolved": "https://registry.npmjs.org/rc-collapse/-/rc-collapse-1.10.3.tgz", - "integrity": "sha512-uGZpSwTnKw9lZ4ODTqU3u4d6OcdAG0uB6lwSRNDISVdsDX8oMXULULqvFyM8UrgOkQFqU6klch78hyVE8+gFfA==", + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/rc-collapse/-/rc-collapse-1.11.1.tgz", + "integrity": "sha512-9HA8f7aWE0yabnzfE2v/7IyMb6dTmj052A9cyEMB0aT1sdLESpetMAzT3FkLcPT5fl7YNRkyVZ3zwkC5qMmzmA==", "requires": { "classnames": "2.x", "css-animation": "1.x", @@ -18287,9 +18336,9 @@ } }, "rc-editor-core": { - "version": "0.8.8", - "resolved": "https://registry.npmjs.org/rc-editor-core/-/rc-editor-core-0.8.8.tgz", - "integrity": "sha512-4zT4Z8BtQSDcdh9mGXrsVCzUXmXKpe2U2VJSKOAErh5J4yTzJxSOfJon+nHxZyJZEKXg7rZvwrnhogXZzYNIng==", + "version": "0.8.9", + "resolved": "https://registry.npmjs.org/rc-editor-core/-/rc-editor-core-0.8.9.tgz", + "integrity": "sha512-fGTkTm96Kil/i9n5a3JwAzJcl2TkfjO1r1WBWf6NIOxXiJXpC3Lajkf3j6E5K7iz5AW0QRaSGnNQFBrwvXKKWA==", "requires": { "babel-runtime": "^6.26.0", "classnames": "^2.2.5", @@ -18316,27 +18365,17 @@ } }, "rc-form": { - "version": "2.4.1", - "resolved": "https://registry.npmjs.org/rc-form/-/rc-form-2.4.1.tgz", - "integrity": "sha512-ZWnAR5w63fNUdeY/EuSpmrScM9EDxtgUbsSnao2BS9HIKIjqSCu6bJNX6SKvU7jRnklLOfEf8nCEMzibFZwplA==", + "version": "2.4.3", + "resolved": "https://registry.npmjs.org/rc-form/-/rc-form-2.4.3.tgz", + "integrity": "sha512-59KeQat5TU4YzpfXYpFlyQ1/5uFXm0SV7VokRr+i8bPMhimpKpZl5gt0J7dNiKLTsGnkCqBLSL88d9ufPJ+EQQ==", "requires": { "async-validator": "~1.8.5", "babel-runtime": "6.x", "create-react-class": "^15.5.3", "dom-scroll-into-view": "1.x", - "hoist-non-react-statics": "^2.3.1", + "hoist-non-react-statics": "^3.3.0", "lodash": "^4.17.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" - } - } + "warning": "^4.0.3" } }, "rc-hammerjs": { @@ -18350,9 +18389,9 @@ } }, "rc-input-number": { - "version": "4.3.9", - "resolved": "https://registry.npmjs.org/rc-input-number/-/rc-input-number-4.3.9.tgz", - "integrity": "sha512-u2ioYqAwHIbDpp6sUEIOv8kqQw8e7VfTR6Kn+wJYff7TBA3Zw2Ql9I4DQniuLXglCJzDiHqG1OR5v3kN3GrD4w==", + "version": "4.4.0", + "resolved": "https://registry.npmjs.org/rc-input-number/-/rc-input-number-4.4.0.tgz", + "integrity": "sha512-AsXLVaQZ7rCU71B8zzP3nviL8/CkFGDcp5kIlpMzBdGIHoLyRnXcxei3itH9PfFSgMBixEnb5hFVoTikFbNWSQ==", "requires": { "babel-runtime": "6.x", "classnames": "^2.2.0", @@ -18381,9 +18420,9 @@ } }, "rc-notification": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/rc-notification/-/rc-notification-3.3.0.tgz", - "integrity": "sha512-T7wUryaKTNTO9gsWPCwRyC9P4FcKFTrIRsiNVXJhjlRbHKT0xZF3ag/gxXxZzPBDAf0l1vfgIrT+11cfWtZW0g==", + "version": "3.3.1", + "resolved": "https://registry.npmjs.org/rc-notification/-/rc-notification-3.3.1.tgz", + "integrity": "sha512-U5+f4BmBVfMSf3OHSLyRagsJ74yKwlrQAtbbL5ijoA0F2C60BufwnOcHG18tVprd7iaIjzZt1TKMmQSYSvgrig==", "requires": { "babel-runtime": "6.x", "classnames": "2.x", @@ -18423,9 +18462,9 @@ } }, "rc-select": { - "version": "8.8.3", - "resolved": "https://registry.npmjs.org/rc-select/-/rc-select-8.8.3.tgz", - "integrity": "sha512-YOfOWlcnWSeBatUcsn4RWocDsNUfrPNa16j1oHDlitCbpro+3BmH62FHrtA1iwdo25aF0L/5h6KICD6+RtiGxw==", + "version": "9.0.2", + "resolved": "https://registry.npmjs.org/rc-select/-/rc-select-9.0.2.tgz", + "integrity": "sha512-lwFz/aINmbznQmKvq/jFipc922h+RhA+iKCicxAglTqC4qmXg2REKWzviT5Tk0kqVe4mHcfNX8PyvMEHSmkaLA==", "requires": { "babel-runtime": "^6.23.0", "classnames": "2.x", @@ -18442,9 +18481,9 @@ } }, "rc-slider": { - "version": "8.6.5", - "resolved": "https://registry.npmjs.org/rc-slider/-/rc-slider-8.6.5.tgz", - "integrity": "sha512-/wcfWHbQVu5qiK+nY4a+j/F7JrxPw81UhNARK6iooBNQGsCq0CJjKLCVAOPtDa9QPGNR3l5Kda+nsKJ/rbZNDw==", + "version": "8.6.6", + "resolved": "https://registry.npmjs.org/rc-slider/-/rc-slider-8.6.6.tgz", + "integrity": "sha512-byfnq1LbBFyZ0HURWo22sjeiKIxLyzSnIiNUsUf6SWu1ZhQe/Qt24JnE/ZJsqKoUirXxlX+d577ptfAybZHm+Q==", "requires": { "babel-runtime": "6.x", "classnames": "^2.2.5", @@ -18452,17 +18491,7 @@ "rc-tooltip": "^3.7.0", "rc-util": "^4.0.4", "shallowequal": "^1.0.1", - "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" - } - } + "warning": "^4.0.3" } }, "rc-steps": { @@ -18514,9 +18543,9 @@ } }, "rc-tabs": { - "version": "9.6.0", - "resolved": "https://registry.npmjs.org/rc-tabs/-/rc-tabs-9.6.0.tgz", - "integrity": "sha512-Ql1p23rR41I8gJf0EZPA0VTxw4kVfw1rfnufBFvqhq3wkfvojxg6EgDK9I6h7qbUMc1KyDrhRYUzKrDshJ06Bg==", + "version": "9.6.1", + "resolved": "https://registry.npmjs.org/rc-tabs/-/rc-tabs-9.6.1.tgz", + "integrity": "sha512-3/Ip9yCEERFFvCjU0ZoQqvn6unMo0XOQESygNLq1DyOAYRcukpq8Q28awpXWqh8l8NBcyw1sVfrs6SZN/zmAKg==", "requires": { "babel-runtime": "6.x", "classnames": "2.x", @@ -18561,9 +18590,9 @@ } }, "rc-tree": { - "version": "1.14.9", - "resolved": "https://registry.npmjs.org/rc-tree/-/rc-tree-1.14.9.tgz", - "integrity": "sha512-+B4657b3H0mTB4Jcd9EorydI1fevfJRukaTk/KYcbNzYhKgZFIEuT3PZrhJZoH/e+sBOEx04zSNA0uf6G6S/BA==", + "version": "1.14.10", + "resolved": "https://registry.npmjs.org/rc-tree/-/rc-tree-1.14.10.tgz", + "integrity": "sha512-iOn7+SpWzM4OQoF/7wJeFiuRpBGJ3ndTe6YVGnfIhsWqDd7S6a7z0anDQcBpPsW/PvisjNDXr4zKchZvx+0iCA==", "requires": { "babel-runtime": "^6.23.0", "classnames": "2.x", @@ -18600,9 +18629,9 @@ } }, "rc-tree-select": { - "version": "2.5.3", - "resolved": "https://registry.npmjs.org/rc-tree-select/-/rc-tree-select-2.5.3.tgz", - "integrity": "sha512-PZeW2tNsl9cCGlUtPd+MMIypOkkc8dgM0CTJP5nun+xLVW/SyGQutZWj4CrOAqmjuws8sNeSv3+b9nJ7ZPkK2w==", + "version": "2.5.4", + "resolved": "https://registry.npmjs.org/rc-tree-select/-/rc-tree-select-2.5.4.tgz", + "integrity": "sha512-7PVC3SV8X02cTZ9+VtNLM5dpYdIbB/xe6N2MVKFnc2YNgMx76sm+Fk2OrgbgicIK/lWAPkKTxnwvNk5PKR4a1g==", "requires": { "classnames": "^2.2.1", "prop-types": "^15.5.8", @@ -18661,24 +18690,14 @@ } }, "rc-upload": { - "version": "2.6.1", - "resolved": "https://registry.npmjs.org/rc-upload/-/rc-upload-2.6.1.tgz", - "integrity": "sha512-cYuHgy+wZZfQwwbuJuIBPdTmRYcfMddukZ9ayzuxlUJT77BUf6kgImfCj2CYTvpnTeIlDn8Wh79AAaC2PF1dIQ==", + "version": "2.6.3", + "resolved": "https://registry.npmjs.org/rc-upload/-/rc-upload-2.6.3.tgz", + "integrity": "sha512-wM57UH/EEqW2/EcWz5nwnU07d4LHDHjBgxRin2Q56TW9JcFVnaQVq/JHycVFumsgSFV5CZfNW8PBROsKT9VFMw==", "requires": { "babel-runtime": "6.x", "classnames": "^2.2.5", "prop-types": "^15.5.7", - "warning": "2.x" - }, - "dependencies": { - "warning": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/warning/-/warning-2.1.0.tgz", - "integrity": "sha1-ISINnGOvx3qMkhEeARr3Bc4MaQE=", - "requires": { - "loose-envify": "^1.0.0" - } - } + "warning": "4.x" } }, "rc-util": { @@ -21809,8 +21828,7 @@ "toggle-selection": { "version": "1.0.6", "resolved": "https://registry.npmjs.org/toggle-selection/-/toggle-selection-1.0.6.tgz", - "integrity": "sha1-bkWxJj8gF/oKzH2J14sVuL932jI=", - "dev": true + "integrity": "sha1-bkWxJj8gF/oKzH2J14sVuL932jI=" }, "topo": { "version": "2.0.2", @@ -22433,9 +22451,9 @@ } }, "warning": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/warning/-/warning-4.0.2.tgz", - "integrity": "sha512-wbTp09q/9C+jJn4KKJfJfoS6VleK/Dti0yqWSm6KMvJ4MRCXFQNapHuJXutJIrWV0Cf4AhTdeIe4qdKHR1+Hug==", + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/warning/-/warning-4.0.3.tgz", + "integrity": "sha512-rpJyN222KWIvHJ/F53XSZv0Zl/accqHR8et1kpaMTD/fLCRxtV8iX8czMzY7sVZupTI3zcUTg8eycS2kNF9l6w==", "requires": { "loose-envify": "^1.0.0" } diff --git a/package.json b/package.json index cbe72fdfd..95a4489d0 100755 --- a/package.json +++ b/package.json @@ -4,7 +4,7 @@ "private": true, "homepage": "https://agentlab.ru/rdf-scheme-editor", "dependencies": { - "antd": "^3.12.3", + "antd": "^3.14.1", "i18next": "^15.0.2", "i18next-browser-languagedetector": "^3.0.0", "i18next-xhr-backend": "^2.0.0", diff --git a/run-in-container.ps1 b/run-in-container.ps1 index 4fe8974fc..a203a10b2 100644 --- a/run-in-container.ps1 +++ b/run-in-container.ps1 @@ -1 +1 @@ -docker run -p 3043:3000/tcp -p 3083:9009/tcp -it --rm --name rdf-scheme-editor -v ${PWD}:/usr/src/app -w /usr/src/app node:11 bash +docker run -p 3043:3000/tcp -p 3083:9009/tcp -p 35729:35729/tcp --env CHOKIDAR_USEPOLLING=true -it --rm --name rdf-scheme-editor -v ${PWD}:/usr/src/app:rw -w /usr/src/app node:11 bash diff --git a/src/AddRDF.stories.js b/src/AddRDF.stories.js new file mode 100644 index 000000000..0fa457f10 --- /dev/null +++ b/src/AddRDF.stories.js @@ -0,0 +1,89 @@ +import React from 'react'; +import { storiesOf } from '@storybook/react'; +import 'antd/dist/antd.css'; +import './index.css'; + +import { Form, Input, Button, Checkbox,Select, Radio, Layout } from 'antd'; + + + const { TextArea } = Input; + + class AddRDFForm extends React.Component { + constructor() { + super(); + this.state = { + formLayout: 'horizontal', + }; } + + handleFormLayoutChange = (e) => { + this.setState({ formLayout: e.target.value }); + } + + render() { + const { formLayout } = this.state; + const formItemLayout = { + labelCol: { span: 4 }, + wrapperCol: { span: 14 }, + } ; + + return ( +
+
+ + + + + use base URI as context identifier + + + + + + + + + + + Location of the RDF data you wish to upload + + + + + + + + Select the file containing the RDF data you wish to upload + + + + + + + + Enter the RDF data you wish to upload + + + + + + + + + + + + Result per page: + + + + + + + + Actions Options: + + + Include inferred statements + + + Save privately(do not share) + + + + + Actions: + + +
+ + + + +
+ + + + + +

+ + Copyright © 2015 Eclipse RDF4J Contributors + +

+
+ + )); \ No newline at end of file diff --git a/src/Lab1_Sobolev.stories.js b/src/Lab1_Sobolev.stories.js new file mode 100644 index 000000000..8469f14e7 --- /dev/null +++ b/src/Lab1_Sobolev.stories.js @@ -0,0 +1,339 @@ +import React from 'react'; +import { storiesOf } from '@storybook/react'; +import 'antd/dist/antd.css'; +import './index.css'; +import { StyleSheet, css } from 'aphrodite'; +import { + Form, Icon, Input, Button, Checkbox, + Select, Menu, Layout, Row, Col, InputNumber +} from 'antd'; + +const { Content, Sider } = Layout; + +var requirements = { + 'URL':'border', + 'xsdtype':'border', + 'Альтернативные варианты написания':'interation', + 'Вид':'border', + 'Включает':'disconnect', + 'Включен в':'disconnect', + 'Данные процесса':'border', + 'Длина':'border', + 'Дочерний объект для':'disconnect', + 'Требование 10':'border', + 'Требование 11':'border', + 'Требование 12':'border', + 'Требование 13':'disconnect', + 'Требование 14':'border', + 'Требование 15':'border', + 'Требование 16':'disconnect', + 'Требование 17':'disconnect', + 'Требование 18':'border', + 'Требование 19':'disconnect', + 'Требование 20':'border', + 'Требование 21':'border', + 'Требование 22':'disconnect', + 'Требование 23':'border', + 'Требование 24':'interationr', + 'Требование 25':'interation', + 'Требование 26':'border', + 'Требование 27':'interation', + 'Требование 28':'border', +}; + + +const styles = StyleSheet.create({ + scroll_container:{height: 400, width: '100%', border:'2px solid gray', overflowY:'auto', display:'block', }, + widthn:{width:'92%', }, + column:{display:'inline-flex',flexDirection: 'column',width:'98%', align:'center'}, + blue:{color:'rgba(177,208,250)'}, + orange:{color:'orange'}, + gray:{color:'gray'}, + shadowtext: {textShadow: '10px 10px 20px black'}, + size16:{fontSize:'16pt'}, + formcolor:{background:'#FFFFEF'}, + formcolor_padding:{background:'#FFFFEF', padding:'0 3'}, + menuStyle:{color: 'black', fontWeight:'bold', background: 'linear-gradient(0deg, rgba(177,208,250,1) 0%, rgba(248,248,251,1) 100%)'}, + content1:{width:'18%'}, + content2:{width:'70%'}, + content3:{width:'25%', height:'100%'}, + sel:{backgroundColor:'linear-gradient(180deg, rgba(177,208,250,1) 0%, rgba(248,248,251,1) 100%)', fontSize:'16pt'}, + border1:{border:'3px solid rgba(177,208,250,1)'}, + border2:{border:'2px solid gray'}, + center:{textAlign:'center'}, +}); + + +const mySelect=[], container=[]; + +for (var requirement in requirements) { + + mySelect.push(); + + if(requirements[requirement]=='disconnect') + container.push(
{requirement}
); + + else if (requirements[requirement]=='interation') + container.push(
{requirement}
); + + else container.push(
{requirement}
); +} + + + +class AdvancedSearchForm extends React.Component { + + render() { + + return ( + + + + + + + + + + + + + + + + + Изменить параметры отображения столбцов + + + + ✖ + + + + + + + + + + + + +
+ +
Выберите тип требований или ссылок
+ +
+
+ + + +
+ +
+ + + + +
+
+
+ + + + + + + + +
Выберите типы требований...
+ +
{container}
+ +
+
+ + + + +
+ +
+ + + +
+ +



+ + + +
+
+ + + + + + + + Отображаемые столбцы + + Ширина (пи... + + Форматирование + + + +
+ + ИД + + + +   + + + + Имя + + + +   + + + + Тип требования + + + +   + + + + Кем изменено + + + +   + + + + Входит в состав + + + +   + + + + Изменено + + + +   + + + + +   + + + +   + + + +   + + + +   + + +
+
+
+ + + + + +
+ +
+ + + + + + +
+
+ +
+ +
+ + + + + + + + + + + + + Показывать только атрибуты по умолчанию ( + ) + + + + + + + + + + + + + +   + + + + + + + + + + + + + +
+ + +
+ + ); + } +} + + +const WrappedAdvancedSearchForm = Form.create({ name: 'normal_login' })(AdvancedSearchForm); + +storiesOf('Table Columns Customization', module) + .add('with form', () => ( + Table Columns Customization + )) diff --git a/src/Repositories.stories.js b/src/Repositories.stories.js new file mode 100644 index 000000000..0cb9e2a30 --- /dev/null +++ b/src/Repositories.stories.js @@ -0,0 +1,79 @@ +import { storiesOf } from "@storybook/react"; +import React, { useEffect, useState } from "react"; +import "antd/dist/antd.css"; +import "./index.css"; +import { Table } from "antd"; + +import { executeGet, executeSelect, executeUpdate } from './sparql'; + +const columns = [{ + title: 'Id', + dataIndex: 'id', + key: 'id', +}, { + title: 'Title', + dataIndex: 'title', + key: 'title', +}, { + title: 'URI', + dataIndex: 'uri', + key: 'uri', +}, { + title: 'Readable', + dataIndex: 'readable', + key: 'readable', +}, { + title: 'Writable', + dataIndex: 'writable', + key: 'writable', +}]; + + +function RepositoriesTable(props) { + //такой код не работает, тк fetch возвращает не результат, а Promise + //const dataSource = selectRequirementsModule('https://agentlab.ru/rdf4j-server/repositories'); + //console.log("EXECUTE GET RESULTS=", props.dataSource); + + //React Hooks API + const [dataSource, setDataSource] = useState([]); + + function selectRequirementsModule(url) { + console.log("EXECUTE GET URL=", url); + return executeGet(url) + .then(res => + res.results.bindings.map(binding => + ({ + key: binding.id.value, + id: binding.id.value, + title: binding.title.value, + uri: binding.uri.value, + readable: binding.readable.value, + writable: binding.writable.value, + }) + ) + , error => { + console.error(error); + }).then(data => { + console.log("EXECUTE GET RESULTS=", data); + setDataSource(data); + }); + } + + // React Hooks API + useEffect( + () => { + selectRequirementsModule('https://agentlab.ru/rdf4j-server/repositories');//http://localhost:8080/rdf4j-server/repositories + }, [] + ); + + return( + + ); +} + +storiesOf("Repositories", module) + .add("Info", () => + + ); \ No newline at end of file diff --git a/src/TableColumnsCustomization.stories.js b/src/TableColumnsCustomization.stories.js new file mode 100644 index 000000000..8469f14e7 --- /dev/null +++ b/src/TableColumnsCustomization.stories.js @@ -0,0 +1,339 @@ +import React from 'react'; +import { storiesOf } from '@storybook/react'; +import 'antd/dist/antd.css'; +import './index.css'; +import { StyleSheet, css } from 'aphrodite'; +import { + Form, Icon, Input, Button, Checkbox, + Select, Menu, Layout, Row, Col, InputNumber +} from 'antd'; + +const { Content, Sider } = Layout; + +var requirements = { + 'URL':'border', + 'xsdtype':'border', + 'Альтернативные варианты написания':'interation', + 'Вид':'border', + 'Включает':'disconnect', + 'Включен в':'disconnect', + 'Данные процесса':'border', + 'Длина':'border', + 'Дочерний объект для':'disconnect', + 'Требование 10':'border', + 'Требование 11':'border', + 'Требование 12':'border', + 'Требование 13':'disconnect', + 'Требование 14':'border', + 'Требование 15':'border', + 'Требование 16':'disconnect', + 'Требование 17':'disconnect', + 'Требование 18':'border', + 'Требование 19':'disconnect', + 'Требование 20':'border', + 'Требование 21':'border', + 'Требование 22':'disconnect', + 'Требование 23':'border', + 'Требование 24':'interationr', + 'Требование 25':'interation', + 'Требование 26':'border', + 'Требование 27':'interation', + 'Требование 28':'border', +}; + + +const styles = StyleSheet.create({ + scroll_container:{height: 400, width: '100%', border:'2px solid gray', overflowY:'auto', display:'block', }, + widthn:{width:'92%', }, + column:{display:'inline-flex',flexDirection: 'column',width:'98%', align:'center'}, + blue:{color:'rgba(177,208,250)'}, + orange:{color:'orange'}, + gray:{color:'gray'}, + shadowtext: {textShadow: '10px 10px 20px black'}, + size16:{fontSize:'16pt'}, + formcolor:{background:'#FFFFEF'}, + formcolor_padding:{background:'#FFFFEF', padding:'0 3'}, + menuStyle:{color: 'black', fontWeight:'bold', background: 'linear-gradient(0deg, rgba(177,208,250,1) 0%, rgba(248,248,251,1) 100%)'}, + content1:{width:'18%'}, + content2:{width:'70%'}, + content3:{width:'25%', height:'100%'}, + sel:{backgroundColor:'linear-gradient(180deg, rgba(177,208,250,1) 0%, rgba(248,248,251,1) 100%)', fontSize:'16pt'}, + border1:{border:'3px solid rgba(177,208,250,1)'}, + border2:{border:'2px solid gray'}, + center:{textAlign:'center'}, +}); + + +const mySelect=[], container=[]; + +for (var requirement in requirements) { + + mySelect.push(); + + if(requirements[requirement]=='disconnect') + container.push(
{requirement}
); + + else if (requirements[requirement]=='interation') + container.push(
{requirement}
); + + else container.push(
{requirement}
); +} + + + +class AdvancedSearchForm extends React.Component { + + render() { + + return ( +
+ + + + + + + + + + + + + +
+ + Изменить параметры отображения столбцов + + + + ✖ + + + + + + + + + + + + +
+ +
Выберите тип требований или ссылок
+ +
+
+ + + +
+ +
+ + + + +
+
+
+ + + + + + + + +
Выберите типы требований...
+ +
{container}
+ +
+
+ + + + +
+ +
+ + + +
+ +



+ +
Вернуть значение по умолчанию
+ +
+
+ + + + + + + +
Отображаемые столбцы + + Ширина (пи... + + Форматирование + + + +
+ +
ИД + + + +   + + + + Имя + + + +   + + + + Тип требования + + + +   + + + + Кем изменено + + + +   + + + + Входит в состав + + + +   + + + + Изменено + + + +   + + + + +   + + + +   + + + +   + + + +   + + + + + + + + + + +
+ +
+ + + + + + +
+
+ +
+ + + + + + + + + + + + + + + Показывать только атрибуты по умолчанию ( + ) + + + + + + + + + + + + + +   + + + + + + + + + + + + + + + + + + + ); + } +} + + +const WrappedAdvancedSearchForm = Form.create({ name: 'normal_login' })(AdvancedSearchForm); + +storiesOf('Table Columns Customization', module) + .add('with form', () => ( + Table Columns Customization + )) diff --git a/src/components/ContextInRepository.stories.js b/src/components/ContextInRepository.stories.js new file mode 100644 index 000000000..d5e68bcaf --- /dev/null +++ b/src/components/ContextInRepository.stories.js @@ -0,0 +1,67 @@ +import React from 'react'; +import { storiesOf } from '@storybook/react'; +import { Table } from 'antd'; + + +const urlTemplate = "https://agentlab.ru/rdf4j-workbench/repositories/reqs/explore?resource="; + +function constUrlHref(url, template = urlTemplate) { + return `${urlTemplate}${url}`; +} + +const dataSource = [{ + key: '1', + context: 'oslc:', + url: 'oslc%3A' + }, { + key: '2', + context: 'al_rm:', + url: 'al_rm%3A' + }, { + key: '3', + context: 'oslc_rm:', + url: 'oslc_rm%3A' + }, { + key: '4', + context: '', + url: '%3Chttps%3A%2F%2Fagentlab.ru%2Fexpert%2Frm%2Fexpert%2Fmain-reqs%23%3E' + }, { + key: '5', + context: 'expert_reqs:', + url: 'expert_reqs%3A' + }, { + key: '6', + context: '', + url: '%3Chttp%3A%2F%2Fagentlab.ru%2Fexpert%2Frm%2Fexpert%2Freqs%23%3E' + }, { + key: '7', + context: '', + url: '%3Chttps%3A%2F%2Fagentlab.ru%2Fexpert%2Frm%2Fexpert%2Freqs-collection%23%3E' + }, { + key: '8', + context: '', + url: '%3Chttps%3A%2F%2Fagentlab.ru%2Fexpert%2Frm%2Fexpert%2Freqs-module%23%3E' + }, { + key: '9', + context: '', + url: '%3Chttps%3A%2F%2Fagentlab.ru%2Fexpert%2Frm%2Fexpert%2Freqs-module-docx%23%3E' + }, { + key: '10', + context: '', + url: '%3Chttps%3A%2F%2Fagentlab.ru%2Fexpert%2Frm%2Fexpert%2Freqs-module-docx-big%23%3E' + }]; + + +const columns = [{ + title: 'Context', + dataIndex: 'context', + key: 'context', + render: (text, record) => {record.context}, + }]; + + +storiesOf('Contexts in Repository', module) + .add('Context', () => ( +
+ )); + diff --git a/src/components/DeleteRepository.stories.js b/src/components/DeleteRepository.stories.js new file mode 100644 index 000000000..3c0e0e4c9 --- /dev/null +++ b/src/components/DeleteRepository.stories.js @@ -0,0 +1,105 @@ +import React from "react"; +import { storiesOf } from "@storybook/react"; +import { Form, Select, Button } from "antd"; + +const Option = Select.Option; +const FormItem = Form.Item; + +const options = [ + { + value: "adms-catalog", + text: "adms-catalog - ADMS Catalog" + }, + { + value: "reqs", + text: "reqs - Requirements" + }, + { + value: "jhgf", + text: "jhgf - jh" + }, + { + value: "configurations", + text: "configurations - Portal Configurations" + }, + { + value: "adms-catalog", + text: "adms-catalog - ADMS Catalog" + }, + { + value: "eurovoc_ru", + text: "eurovoc_ru - EuroVoc (russian edition) in SKOS Core Concepts" + }, + { + value: "onem2m", + text: "onem2m - OneM2M IoT Repository" + }, + { + value: "onem2m2", + text: "onem2m2 - OneM2M IoT Repository" + }, + { + value: "datasets", + text: "datasets - Datasets configuration fot portal" + }, + { + value: "23", + text: "23 - Native store with RDF Schema and direct type inferencing" + }, + { + value: "mappings", + text: "mappings - Portal CVS Mappings" + }, + { + value: "adms3", + text: "adms3 - Native store with RDF Schema and direct type inferencing" + }, + { + value: "adms4", + text: "adms4 - ADMS 4 Native Java" + }, + { + value: "users", + text: "users - Portal Users" + }, + { + value: "eurovoc_core", + text: "eurovoc_core - EuroVoc in SKOS Core Concepts" + }, + { + value: "rere", + text: "rere - test_feature" + }, + { + value: "lov", + text: "lov - Linked Open Vocabularies" + }, + { + value: "adms2", + text: "adms2 - ADMS 2.01 Catalog" + } +]; + +storiesOf("Delete Repository", module).add("Select", () => ( + + + + + + + + +)); diff --git a/src/i18n/NamespacesinRepository.stories.js b/src/i18n/NamespacesinRepository.stories.js new file mode 100644 index 000000000..732f7d393 --- /dev/null +++ b/src/i18n/NamespacesinRepository.stories.js @@ -0,0 +1,130 @@ +import React from 'react'; +import { storiesOf } from '@storybook/react'; +import {Table} from 'antd'; +import { + Form, Input, Select, Button, +} from 'antd'; + +const dataSource = [{ + key: '1', + prefix: 'Mike', + namespace: 32 +}, { + key: '2', + prefix: 'John', + namespace: 42 +}]; + +const columns = [{ + title: 'Prefix', + dataIndex: 'prefix', + key: 'prefix', +}, { + title: 'Namespace', + dataIndex: 'namespace', + key: 'namespace', +}]; + +const { Option } = Select; + +class PrefixInput extends React.Component { + static getDerivedStateFromProps(nextProps) { + // Should be a controlled component. + if ('value' in nextProps) { + return { + ...(nextProps.value || {}), + }; + } + return null; + } + + handleNumberChange = (e) => { + const number = parseInt(e.target.value, 10); + if (Number.isNaN(number)) { + return; + } + if (!('value' in this.props)) { + this.setState({ number }); + } + this.triggerChange({ number }); + } + + triggerChange = (changedValue) => { + // Should provide an event to pass value to Form. + const onChange = this.props.onChange; + if (onChange) { + onChange(Object.assign({}, this.state, changedValue)); + } + } + + render() { + const { size } = this.props; + const state = this.state; + return ( + + + + + ); + } +} + +class Demo extends React.Component { + handleSubmit = (e) => { + e.preventDefault(); + this.props.form.validateFields((err, values) => { + if (!err) { + console.log('Received values of form: ', values); + } + }); + } + + checkPrefix = (rule, value, callback) => { + if (value.number > 0) { + callback(); + return; + } + } + + render() { + const { getFieldDecorator } = this.props.form; + return ( + + + {getFieldDecorator('prefix', { + initialValue: { currency: 'Mike' }, + rules: [{ validator: this.checkPrefix }], + })()} + + + + + + + +
+ + ); + } +} + +const WrappedDemo = Form.create({ name: 'customized_form_controls' })(Demo); + +storiesOf('Namespaces', module) +.add('prefix', () => ( + )); \ No newline at end of file diff --git a/src/newRepository.stories.js b/src/newRepository.stories.js new file mode 100644 index 000000000..c2ce28c41 --- /dev/null +++ b/src/newRepository.stories.js @@ -0,0 +1,68 @@ +import React from 'react'; +import { storiesOf } from '@storybook/react'; + +import "antd/dist/antd.css"; + +import { + Form, Select, Row, Col, Input, Button, Typography +} from 'antd'; + +const { Option } = Select; +const { Title } = Typography; + +class App extends React.Component { + + _formOptions = [ + 'In Memory Store', + 'In Memory Store RDF Schema', + 'In Memory Store RDF Schema and Direct Type Heirarchy' + ]; + + render() { + return ( +
+ +
+ New Repository + + + + + + + + + + + + + + + + + + + + + + + + + ); + } +} + +const WrappedApp = Form.create({ name: 'coordinated' })(App); + +storiesOf('Form', module) + .add('New Repository Form', () => ( + + )); \ No newline at end of file diff --git a/src/sparql.js b/src/sparql.js new file mode 100644 index 000000000..b7696c13a --- /dev/null +++ b/src/sparql.js @@ -0,0 +1,29 @@ +export function executeGet(url) { + return fetch(url, { + method: 'GET', + headers: { + 'Accept': 'application/sparql-results+json' + } + }).then(r => r.json()); +} + +export function executeSelect(url, query) { + return fetch(url + '?query=' + encodeURIComponent(query) + '&queryLn=sparql', { + method: 'GET', + headers: { + 'Accept': 'application/sparql-results+json' + } + }).then(r => r.json()); +} + +export function executeUpdate(url, query) { + console.log(`update=${encodeURIComponent(query)}`); + return fetch(url + '/statements', { + method: 'POST', + headers: { + 'Accept': 'application/sparql-results+json', + 'Content-Type': 'application/x-www-form-urlencoded' + }, + body: `update=${encodeURIComponent(query)}` + }).then(r => { console.log(r); return r; }); +}