From 60394a13393da3bbef975ac750ffc56cc74be2c3 Mon Sep 17 00:00:00 2001 From: JelteMX Date: Thu, 16 Jul 2020 19:54:34 +0200 Subject: [PATCH] Rewrote TreeView for AntDesign v4 --- package-lock.json | 932 +++++------- package.json | 3 +- src/TreeView.tsx | 19 +- src/TreeView.xml | 4 + src/components/TreeViewComponent.tsx | 94 +- src/store/index.ts | 22 +- src/store/objects/entry.ts | 6 +- src/ui/TreeView.scss | 2027 ++------------------------ typings/TreeViewProps.d.ts | 1 + webpack.config.prod.js | 9 - 10 files changed, 578 insertions(+), 2539 deletions(-) diff --git a/package-lock.json b/package-lock.json index bf11d33..42a210b 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,6 +1,6 @@ { "name": "treeview", - "version": "1.1.1", + "version": "1.2.0", "lockfileVersion": 1, "requires": true, "dependencies": { @@ -12,32 +12,39 @@ "tinycolor2": "^1.4.1" } }, - "@ant-design/create-react-context": { - "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.2", "resolved": "https://registry.npmjs.org/@ant-design/css-animation/-/css-animation-1.7.2.tgz", "integrity": "sha512-bvVOe7A+r7lws58B7r+fgnQDK90cV45AXuvGx6i5CCSX1W/M3AJnHsNggDANBxEtWdNdFWcDd5LorB+RdSIlBw==" }, "@ant-design/icons": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/@ant-design/icons/-/icons-2.1.1.tgz", - "integrity": "sha512-jCH+k2Vjlno4YWl6g535nHR09PwCEmTBKAG6VqF+rhkrSPRLfgpU2maagwbZPLjaHuU5Jd1DFQ2KJpQuI6uG8w==" - }, - "@ant-design/icons-react": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/@ant-design/icons-react/-/icons-react-2.0.1.tgz", - "integrity": "sha512-r1QfoltMuruJZqdiKcbPim3d8LNsVPB733U0gZEUSxBLuqilwsW28K2rCTWSMTjmFX7Mfpf+v/wdiFe/XCqThw==", + "version": "4.2.1", + "resolved": "https://registry.npmjs.org/@ant-design/icons/-/icons-4.2.1.tgz", + "integrity": "sha512-245ZI40MOr5GGws+sNSiJIRRoEf/J2xvPSMgwRYf3bv8mVGQZ6XTQI/OMeV16KtiSZ3D+mBKXVYSBz2fhigOXQ==", "requires": { "@ant-design/colors": "^3.1.0", - "babel-runtime": "^6.26.0" + "@ant-design/icons-svg": "^4.0.0", + "@babel/runtime": "^7.10.1", + "classnames": "^2.2.6", + "insert-css": "^2.0.0", + "rc-util": "^5.0.1" + } + }, + "@ant-design/icons-svg": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/@ant-design/icons-svg/-/icons-svg-4.1.0.tgz", + "integrity": "sha512-Fi03PfuUqRs76aI3UWYpP864lkrfPo0hluwGqh7NJdLhvH4iRDc3jbJqZIvRDLHKbXrvAfPPV3+zjUccfFvWOQ==" + }, + "@ant-design/react-slick": { + "version": "0.26.3", + "resolved": "https://registry.npmjs.org/@ant-design/react-slick/-/react-slick-0.26.3.tgz", + "integrity": "sha512-FhaFfS+oea0P5WvhaM7BC2/P9r4F0yMoewBpDqVkOq+JxEiKRHJ7iBYJsenv2WEymnWeO3eCuMrz/Eez7pHpGg==", + "requires": { + "@babel/runtime": "^7.10.4", + "classnames": "^2.2.5", + "json2mq": "^0.2.0", + "lodash": "^4.17.15", + "resize-observer-polyfill": "^1.5.0" } }, "@babel/cli": { @@ -1196,7 +1203,6 @@ "version": "7.10.5", "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.10.5.tgz", "integrity": "sha512-otddXKhdNn7d0ptoFRHtMLa8LqDxLYwTjB4nYgM1yy5N6gU/MUf8zqyyLltCH3yAVitBzmwK4us+DD0l/MauAg==", - "dev": true, "requires": { "regenerator-runtime": "^0.13.4" }, @@ -1204,8 +1210,7 @@ "regenerator-runtime": { "version": "0.13.5", "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.13.5.tgz", - "integrity": "sha512-ZS5w8CpKFinUzOwW3c83oPeVXoNsrLsaCoLtJvAClH135j/R77RuymhiSErhm2lKcwSCIpmvIWSbDkIfAqKQlA==", - "dev": true + "integrity": "sha512-ZS5w8CpKFinUzOwW3c83oPeVXoNsrLsaCoLtJvAClH135j/R77RuymhiSErhm2lKcwSCIpmvIWSbDkIfAqKQlA==" } } }, @@ -2151,12 +2156,14 @@ "@types/prop-types": { "version": "15.7.3", "resolved": "https://registry.npmjs.org/@types/prop-types/-/prop-types-15.7.3.tgz", - "integrity": "sha512-KfRL3PuHmqQLOG+2tGpRO26Ctg+Cq1E01D2DMriKEATHgWLfeNDmq9e29Q9WIky0dQ3NPkd1mzYH8Lm936Z9qw==" + "integrity": "sha512-KfRL3PuHmqQLOG+2tGpRO26Ctg+Cq1E01D2DMriKEATHgWLfeNDmq9e29Q9WIky0dQ3NPkd1mzYH8Lm936Z9qw==", + "dev": true }, "@types/react": { "version": "16.9.43", "resolved": "https://registry.npmjs.org/@types/react/-/react-16.9.43.tgz", "integrity": "sha512-PxshAFcnJqIWYpJbLPriClH53Z2WlJcVZE+NP2etUtWQs2s7yIMj3/LDKZT/5CHJ/F62iyjVCDu2H3jHEXIxSg==", + "dev": true, "requires": { "@types/prop-types": "*", "csstype": "^2.2.0" @@ -2190,14 +2197,6 @@ "@types/react": "*" } }, - "@types/react-slick": { - "version": "0.23.4", - "resolved": "https://registry.npmjs.org/@types/react-slick/-/react-slick-0.23.4.tgz", - "integrity": "sha512-vXoIy4GUfB7/YgqubR4H7RALo+pRdMYCeLgWwV3MPwl5pggTlEkFBTF19R7u+LJc85uMqC7RfsbkqPLMQ4ab+A==", - "requires": { - "@types/react": "*" - } - }, "@types/react-test-renderer": { "version": "16.9.2", "resolved": "https://registry.npmjs.org/@types/react-test-renderer/-/react-test-renderer-16.9.2.tgz", @@ -3066,14 +3065,6 @@ "integrity": "sha512-7evsyfH1cLOCdAzZAd43Cic04yKydNx0cF+7tiA19p1XnLLPU4dpCQOqpjqwokFe//vS0QqfqqjCS2JkiIs0cA==", "dev": true }, - "add-dom-event-listener": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/add-dom-event-listener/-/add-dom-event-listener-1.1.0.tgz", - "integrity": "sha512-WCxx1ixHT0GQU9hb0KI/mhgRQhnU+U3GvwY6ZvVjYq8rsihIGoaIOUbY0yMPBxLH5MDtr0kz3fisWGNcbWW7Jw==", - "requires": { - "object-assign": "4.x" - } - }, "airbnb-prop-types": { "version": "2.16.0", "resolved": "https://registry.npmjs.org/airbnb-prop-types/-/airbnb-prop-types-2.16.0.tgz", @@ -3208,64 +3199,53 @@ "dev": true }, "antd": { - "version": "3.26.18", - "resolved": "https://registry.npmjs.org/antd/-/antd-3.26.18.tgz", - "integrity": "sha512-TPuacNJJNPji+LnapU46uWGqi+6JlyH75paMNs95IH0F7gGYtp4oSkua88gGsoAaUbDxTIF+cWI9mdIsr7ywlw==", - "requires": { - "@ant-design/create-react-context": "^0.2.4", - "@ant-design/icons": "~2.1.1", - "@ant-design/icons-react": "~2.0.1", - "@types/react-slick": "^0.23.4", + "version": "4.4.2", + "resolved": "https://registry.npmjs.org/antd/-/antd-4.4.2.tgz", + "integrity": "sha512-uf/YPNsl8IQOqNQjO3tzinMvKHTgcVwJ2VCwMtNh8gCf4t9ptHccF5q0lDkg7K4K28aaB/EumuC0kooi359dNQ==", + "requires": { + "@ant-design/css-animation": "^1.7.2", + "@ant-design/icons": "^4.2.1", + "@ant-design/react-slick": "~0.26.1", + "@babel/runtime": "^7.10.4", "array-tree-filter": "^2.1.0", - "babel-runtime": "6.x", - "classnames": "~2.2.6", + "classnames": "^2.2.6", "copy-to-clipboard": "^3.2.0", - "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", + "moment": "^2.25.3", + "omit.js": "^2.0.2", "raf": "^3.4.1", - "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.6.0", - "rc-drawer": "~3.1.1", - "rc-dropdown": "~2.4.1", - "rc-editor-mention": "^1.1.13", - "rc-form": "^2.4.10", - "rc-input-number": "~4.5.0", - "rc-mentions": "~0.4.0", - "rc-menu": "~7.5.1", - "rc-notification": "~3.3.1", - "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.7.1", - "rc-steps": "~3.5.0", - "rc-switch": "~1.9.0", - "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.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" + "rc-animate": "~3.1.0", + "rc-cascader": "~1.3.0", + "rc-checkbox": "~2.3.0", + "rc-collapse": "~2.0.0", + "rc-dialog": "~8.1.0", + "rc-drawer": "~4.1.0", + "rc-dropdown": "~3.1.2", + "rc-field-form": "~1.5.0", + "rc-input-number": "~5.1.0", + "rc-mentions": "~1.4.0", + "rc-menu": "~8.5.0", + "rc-notification": "~4.4.0", + "rc-pagination": "~2.4.1", + "rc-picker": "~1.10.6", + "rc-progress": "~3.0.0", + "rc-rate": "~2.8.2", + "rc-resize-observer": "^0.2.3", + "rc-select": "^11.0.10", + "rc-slider": "~9.3.0", + "rc-steps": "~4.0.1", + "rc-switch": "~3.2.0", + "rc-table": "~7.8.0", + "rc-tabs": "~11.5.0", + "rc-textarea": "~0.3.0", + "rc-tooltip": "~4.2.0", + "rc-tree": "~3.6.0", + "rc-tree-select": "~4.0.2", + "rc-trigger": "~4.3.0", + "rc-upload": "~3.2.0", + "rc-util": "^5.0.1", + "scroll-into-view-if-needed": "^2.2.25", + "warning": "^4.0.3" } }, "anymatch": { @@ -3614,7 +3594,8 @@ "asap": { "version": "2.0.6", "resolved": "https://registry.npmjs.org/asap/-/asap-2.0.6.tgz", - "integrity": "sha1-5QNHYR1+aQlDIIu9r+vLwvuGbUY=" + "integrity": "sha1-5QNHYR1+aQlDIIu9r+vLwvuGbUY=", + "dev": true }, "asn1": { "version": "0.2.4", @@ -3741,9 +3722,9 @@ } }, "async-validator": { - "version": "1.11.5", - "resolved": "https://registry.npmjs.org/async-validator/-/async-validator-1.11.5.tgz", - "integrity": "sha512-XNtCsMAeAH1pdLMEg1z8/Bb3a8cdCbui9QbJATRFHHHW5kT6+NPI3zSVQUXgikTFITzsg+kYY5NTWhM2Orwt9w==" + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/async-validator/-/async-validator-3.3.0.tgz", + "integrity": "sha512-cAHGD9EL8aCqWXjnb44q94MWiDFzUo1tMhvLb2WzcpWqGiKugsjWG9cvl+jPgkPca7asNbsBU3fa0cwkI/P+Xg==" }, "asynckit": { "version": "0.4.0", @@ -3928,22 +3909,6 @@ "babel-plugin-jest-hoist": "^24.9.0" } }, - "babel-runtime": { - "version": "6.26.0", - "resolved": "https://registry.npmjs.org/babel-runtime/-/babel-runtime-6.26.0.tgz", - "integrity": "sha1-llxwWGaOgrVde/4E/yM3vItWR/4=", - "requires": { - "core-js": "^2.4.0", - "regenerator-runtime": "^0.11.0" - }, - "dependencies": { - "core-js": { - "version": "2.6.11", - "resolved": "https://registry.npmjs.org/core-js/-/core-js-2.6.11.tgz", - "integrity": "sha512-5wjnpaT/3dV+XB4borEsnAYQchn00XSgTAWKDkEqv+K8KevjbzmofK6hfJ9TZIlpj2N0xQpazy7PiRQiWHqzWg==" - } - } - }, "bach": { "version": "1.2.0", "resolved": "https://registry.npmjs.org/bach/-/bach-1.2.0.tgz", @@ -5033,25 +4998,12 @@ "integrity": "sha1-3dgA2gxmEnOTzKWVDqloo6rxJTs=", "dev": true }, - "component-classes": { - "version": "1.2.6", - "resolved": "https://registry.npmjs.org/component-classes/-/component-classes-1.2.6.tgz", - "integrity": "sha1-xkI5TDYYpNiwuJGe/Mu9kw5c1pE=", - "requires": { - "component-indexof": "0.0.3" - } - }, "component-emitter": { "version": "1.3.0", "resolved": "https://registry.npmjs.org/component-emitter/-/component-emitter-1.3.0.tgz", "integrity": "sha512-Rd3se6QB+sO1TwqZjscQrurpEPIfO0/yYnSin6Q/rD3mOutHvUrCAhJub3r90uNb+SESBuE0QYoB90YdfatsRg==", "dev": true }, - "component-indexof": { - "version": "0.0.3", - "resolved": "https://registry.npmjs.org/component-indexof/-/component-indexof-0.0.3.tgz", - "integrity": "sha1-EdCRMSI5648yyPJa6csAL/6NPCQ=" - }, "compress-commons": { "version": "2.1.1", "resolved": "https://registry.npmjs.org/compress-commons/-/compress-commons-2.1.1.tgz", @@ -5088,6 +5040,11 @@ "vary": "~1.1.2" } }, + "compute-scroll-into-view": { + "version": "1.0.14", + "resolved": "https://registry.npmjs.org/compute-scroll-into-view/-/compute-scroll-into-view-1.0.14.tgz", + "integrity": "sha512-mKDjINe3tc6hGelUMNDzuhorIUZ7kS7BwyY0r2wQd2HOH2tRuJykiC06iSEX8y1TuhNzvz4GcJnK16mM2J1NMQ==" + }, "concat-map": { "version": "0.0.1", "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", @@ -5625,6 +5582,7 @@ "version": "15.6.3", "resolved": "https://registry.npmjs.org/create-react-class/-/create-react-class-15.6.3.tgz", "integrity": "sha512-M+/3Q6E6DLO6Yx3OwrWjwHBnvfXXYA7W+dFjt/ZDBemHO1DDZhsalX/NUtnTYclN6GfnBDRh4qRHjcDHmlJBJg==", + "dev": true, "requires": { "fbjs": "^0.8.9", "loose-envify": "^1.3.1", @@ -5660,15 +5618,6 @@ "randomfill": "^1.0.3" } }, - "css-animation": { - "version": "1.6.1", - "resolved": "https://registry.npmjs.org/css-animation/-/css-animation-1.6.1.tgz", - "integrity": "sha512-/48+/BaEaHRY6kNQ2OIPzKf9A6g8WjZYjhiNDNuIVbsm5tXCGIAsHDjB4Xu1C4vXJtUWZo26O68OQkDpNBaPog==", - "requires": { - "babel-runtime": "6.x", - "component-classes": "^1.2.5" - } - }, "css-loader": { "version": "2.1.1", "resolved": "https://registry.npmjs.org/css-loader/-/css-loader-2.1.1.tgz", @@ -5749,7 +5698,8 @@ "csstype": { "version": "2.6.11", "resolved": "https://registry.npmjs.org/csstype/-/csstype-2.6.11.tgz", - "integrity": "sha512-l8YyEC9NBkSm783PFTvh0FmJy7s5pFKrDp49ZL7zBGX3fWkO+N4EEyan1qqp8cwPLDcD0OSdyY6hAMoxp34JFw==" + "integrity": "sha512-l8YyEC9NBkSm783PFTvh0FmJy7s5pFKrDp49ZL7zBGX3fWkO+N4EEyan1qqp8cwPLDcD0OSdyY6hAMoxp34JFw==", + "dev": true }, "currently-unhandled": { "version": "0.4.1", @@ -6165,24 +6115,6 @@ "resolved": "https://registry.npmjs.org/dom-align/-/dom-align-1.12.0.tgz", "integrity": "sha512-YkoezQuhp3SLFGdOlr5xkqZ640iXrnHAwVYcDg8ZKRUtO7mSzSC2BA5V0VuyAwPSJA4CLIc6EDDJh4bEsD2+zA==" }, - "dom-closest": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/dom-closest/-/dom-closest-0.2.0.tgz", - "integrity": "sha1-69n5HRvyLo1vR3h2u80+yQIWwM8=", - "requires": { - "dom-matches": ">=1.0.1" - } - }, - "dom-matches": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/dom-matches/-/dom-matches-2.0.0.tgz", - "integrity": "sha1-0nKLQWqHUzmA6wibhI0lPPI6dYw=" - }, - "dom-scroll-into-view": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/dom-scroll-into-view/-/dom-scroll-into-view-1.2.1.tgz", - "integrity": "sha1-6PNnMt0ImwIBqI14Fdw/iObWbH4=" - }, "dom-serializer": { "version": "0.1.1", "resolved": "https://registry.npmjs.org/dom-serializer/-/dom-serializer-0.1.1.tgz", @@ -6250,16 +6182,6 @@ "integrity": "sha512-8sJ78ElpbDJBHNeBzUbUVLsqKdccaa/BXF1uPTw3GrvQTBgrQrtObr2mUrE38vzYd8cEv+m/JBfDLioYcfXoaw==", "dev": true }, - "draft-js": { - "version": "0.10.5", - "resolved": "https://registry.npmjs.org/draft-js/-/draft-js-0.10.5.tgz", - "integrity": "sha512-LE6jSCV9nkPhfVX2ggcRLA4FKs6zWq9ceuO/88BpXdNCS7mjRTgs0NsV6piUCJX9YxMsB9An33wnkMmU2sD2Zg==", - "requires": { - "fbjs": "^0.8.15", - "immutable": "~3.7.4", - "object-assign": "^4.1.0" - } - }, "duplexer": { "version": "0.1.1", "resolved": "https://registry.npmjs.org/duplexer/-/duplexer-0.1.1.tgz", @@ -6382,6 +6304,7 @@ "version": "0.1.13", "resolved": "https://registry.npmjs.org/encoding/-/encoding-0.1.13.tgz", "integrity": "sha512-ETBauow1T35Y/WZMkio9jiM0Z5xjHHmJ4XmjZOq1l/dXz3lr2sRn87nJy20RupqSh1F2m3HHPSp8ShIPQJrJ3A==", + "dev": true, "requires": { "iconv-lite": "^0.6.2" } @@ -6406,11 +6329,6 @@ "tapable": "^1.0.0" } }, - "enquire.js": { - "version": "2.1.6", - "resolved": "https://registry.npmjs.org/enquire.js/-/enquire.js-2.1.6.tgz", - "integrity": "sha1-PoeAybi4NQhMP2DhZtvDwqPImBQ=" - }, "entities": { "version": "1.1.2", "resolved": "https://registry.npmjs.org/entities/-/entities-1.1.2.tgz", @@ -6995,11 +6913,6 @@ "integrity": "sha512-tvtQIeLVHjDkJYnzf2dgVMxfuSGJeM/7UCG17TT4EumTfNtF+0nebF/4zWOIkCreAbtNqhGEboB6BWrwqNaw4Q==", "dev": true }, - "eventlistener": { - "version": "0.0.1", - "resolved": "https://registry.npmjs.org/eventlistener/-/eventlistener-0.0.1.tgz", - "integrity": "sha1-7Suqu4UiJ68rz4iRUscsY8pTLrg=" - }, "events": { "version": "3.1.0", "resolved": "https://registry.npmjs.org/events/-/events-3.1.0.tgz", @@ -7462,6 +7375,7 @@ "version": "0.8.17", "resolved": "https://registry.npmjs.org/fbjs/-/fbjs-0.8.17.tgz", "integrity": "sha1-xNWY6taUkRJlPWWIsBpc3Nn5D90=", + "dev": true, "requires": { "core-js": "^1.0.0", "isomorphic-fetch": "^2.1.1", @@ -7475,7 +7389,8 @@ "core-js": { "version": "1.2.7", "resolved": "https://registry.npmjs.org/core-js/-/core-js-1.2.7.tgz", - "integrity": "sha1-ZSKUwUZR2yj6k70tX/KYOk8IxjY=" + "integrity": "sha1-ZSKUwUZR2yj6k70tX/KYOk8IxjY=", + "dev": true } } }, @@ -8287,11 +8202,6 @@ "integrity": "sha1-8QdIy+dq+WS3yWyTxrzCivEgwIE=", "dev": true }, - "gud": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/gud/-/gud-1.0.0.tgz", - "integrity": "sha512-zGEOVKFM5sVPPrYs7J5/hYEw2Pof8KCyOwyhG8sAF26mCAeUFAcYPu1mwB7hhpIP29zOIBaDqwuHdLp0jvZXjw==" - }, "gulp": { "version": "4.0.2", "resolved": "https://registry.npmjs.org/gulp/-/gulp-4.0.2.tgz", @@ -8584,11 +8494,6 @@ "pify": "^4.0.1" } }, - "hammerjs": { - "version": "2.0.8", - "resolved": "https://registry.npmjs.org/hammerjs/-/hammerjs-2.0.8.tgz", - "integrity": "sha1-BO93hiz/K7edMPdpIJWTAiK/YPE=" - }, "handle-thing": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/handle-thing/-/handle-thing-2.0.1.tgz", @@ -8915,6 +8820,7 @@ "version": "0.6.2", "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.6.2.tgz", "integrity": "sha512-2y91h5OpQlolefMPmUlivelittSWy0rP+oYVpn6A7GwVHNE8AWzoYOBNmlwks3LobaJxgHCYZAnyNo2GgpNRNQ==", + "dev": true, "requires": { "safer-buffer": ">= 2.1.2 < 3.0.0" } @@ -8958,11 +8864,6 @@ "integrity": "sha512-47xSUiQioGaB96nqtp5/q55m0aBQSQdyIloMOc/x+QVTDZLNmXE892IIDrJ0hM1A5vcNUDD5tDffkSP5lCaIIA==", "dev": true }, - "immutable": { - "version": "3.7.6", - "resolved": "https://registry.npmjs.org/immutable/-/immutable-3.7.6.tgz", - "integrity": "sha1-E7TTyxK++hVIKib+Gy665kAHHks=" - }, "import-fresh": { "version": "3.2.1", "resolved": "https://registry.npmjs.org/import-fresh/-/import-fresh-3.2.1.tgz", @@ -9108,6 +9009,11 @@ } } }, + "insert-css": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/insert-css/-/insert-css-2.0.0.tgz", + "integrity": "sha1-610Ql7dUL0x56jBg067gfQU4gPQ=" + }, "internal-ip": { "version": "4.3.0", "resolved": "https://registry.npmjs.org/internal-ip/-/internal-ip-4.3.0.tgz", @@ -9357,11 +9263,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-negated-glob": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/is-negated-glob/-/is-negated-glob-1.0.0.tgz", @@ -9460,7 +9361,8 @@ "is-stream": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-1.1.0.tgz", - "integrity": "sha1-EtSj3U5o4Lec6428hBc66A2RykQ=" + "integrity": "sha1-EtSj3U5o4Lec6428hBc66A2RykQ=", + "dev": true }, "is-string": { "version": "1.0.5", @@ -9544,6 +9446,7 @@ "version": "2.2.1", "resolved": "https://registry.npmjs.org/isomorphic-fetch/-/isomorphic-fetch-2.2.1.tgz", "integrity": "sha1-YRrhrPFPXoH3KVB0coGf6XM1WKk=", + "dev": true, "requires": { "node-fetch": "^1.0.1", "whatwg-fetch": ">=0.10.0" @@ -10783,11 +10686,6 @@ "integrity": "sha1-4j8/nE+Pvd6HJSnBBxhXoIblzO8=", "dev": true }, - "lodash.debounce": { - "version": "4.0.8", - "resolved": "https://registry.npmjs.org/lodash.debounce/-/lodash.debounce-4.0.8.tgz", - "integrity": "sha1-gteb/zCmfEAF/9XiUVMArZyk168=" - }, "lodash.defaults": { "version": "4.2.0", "resolved": "https://registry.npmjs.org/lodash.defaults/-/lodash.defaults-4.2.0.tgz", @@ -10886,7 +10784,8 @@ "lodash.throttle": { "version": "4.1.1", "resolved": "https://registry.npmjs.org/lodash.throttle/-/lodash.throttle-4.1.1.tgz", - "integrity": "sha1-wj6RtxAkKscMN/HhzaknTMOb8vQ=" + "integrity": "sha1-wj6RtxAkKscMN/HhzaknTMOb8vQ=", + "dev": true }, "lodash.unescape": { "version": "4.0.1", @@ -12922,21 +12821,12 @@ } }, "mini-store": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/mini-store/-/mini-store-2.0.0.tgz", - "integrity": "sha512-EG0CuwpQmX+XL4QVS0kxNwHW5ftSbhygu1qxQH0pipugjnPkbvkalCdQbEihMwtQY6d3MTN+MS0q+aurs+RfLQ==", + "version": "3.0.5", + "resolved": "https://registry.npmjs.org/mini-store/-/mini-store-3.0.5.tgz", + "integrity": "sha512-A7f0+d7TEvjJNY2K+splh2OG3AhmoPoiF3VntlAcJuBzryMumOF9LAVzg8mRJPPbCkz7mlWQg9MCMQPR2auftA==", "requires": { - "hoist-non-react-statics": "^2.3.1", - "prop-types": "^15.6.0", - "react-lifecycles-compat": "^3.0.4", + "hoist-non-react-statics": "^3.3.2", "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": { @@ -13103,11 +12993,6 @@ "resolved": "https://registry.npmjs.org/mustache/-/mustache-4.0.1.tgz", "integrity": "sha512-yL5VE97+OXn4+Er3THSmTdCFCtx5hHWzrolvH+JObZnUYwuaG7XV+Ch4fR2cIrcYI0tFHxS7iyFYl14bW8y2sA==" }, - "mutationobserver-shim": { - "version": "0.3.7", - "resolved": "https://registry.npmjs.org/mutationobserver-shim/-/mutationobserver-shim-0.3.7.tgz", - "integrity": "sha512-oRIDTyZQU96nAiz2AQyngwx1e89iApl2hN5AOYwyxLUB47UYsU3Wv9lJWqH5y/QdiYkc5HQLi23ZNB3fELdHcQ==" - }, "mute-stdout": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/mute-stdout/-/mute-stdout-1.0.1.tgz", @@ -13205,6 +13090,7 @@ "version": "1.7.3", "resolved": "https://registry.npmjs.org/node-fetch/-/node-fetch-1.7.3.tgz", "integrity": "sha512-NhZ4CsKx7cYm2vSrBAr2PvFOe6sWDf0UYLRqA6svUYg7+/TSfVAu49jYC4BvQ4Sms9SZgdqGBgroqfDhJdTyKQ==", + "dev": true, "requires": { "encoding": "^0.1.11", "is-stream": "^1.0.1" @@ -13691,12 +13577,9 @@ "dev": true }, "omit.js": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/omit.js/-/omit.js-1.0.2.tgz", - "integrity": "sha512-/QPc6G2NS+8d4L/cQhbk6Yit1WTB6Us2g84A7A/1+w9d/eRGHyEqC5kkQtHVoHZ5NFWGG7tUGgrhVZwgZanKrQ==", - "requires": { - "babel-runtime": "^6.23.0" - } + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/omit.js/-/omit.js-2.0.2.tgz", + "integrity": "sha512-hJmu9D+bNB40YpL9jYebQl4lsTW6yEHRTroJzNLqQJYHm7c+NQnJGfZmIWh8S3q3KoaxV1aLhV6B3+0N0/kyJg==" }, "on-finished": { "version": "2.3.0", @@ -14477,6 +14360,7 @@ "version": "7.3.1", "resolved": "https://registry.npmjs.org/promise/-/promise-7.3.1.tgz", "integrity": "sha512-nolQXZ/4L+bP/UGlkfaIujX9BKxGwmQ9OT4mOt5yvy8iK1h3wqTEJCijzGANTCCl9nWjY41juyAn2K3Q1hLLTg==", + "dev": true, "requires": { "asap": "~2.0.3" } @@ -14769,483 +14653,356 @@ } }, "rc-align": { - "version": "2.4.5", - "resolved": "https://registry.npmjs.org/rc-align/-/rc-align-2.4.5.tgz", - "integrity": "sha512-nv9wYUYdfyfK+qskThf4BQUSIadeI/dCsfaMZfNEoxm9HwOIioQ+LyqmMK6jWHAZQgOzMLaqawhuBXlF63vgjw==", + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/rc-align/-/rc-align-4.0.1.tgz", + "integrity": "sha512-RQ5Fhxl0LW+zsxbY8dxAcpXdaHkHH2jzRSSpvBTS7G9LMK3T+WRcn4ovjg/eqAESM6TdTx0hfqWF2S1pO75jxQ==", "requires": { - "babel-runtime": "^6.26.0", + "@babel/runtime": "^7.10.1", + "classnames": "2.x", "dom-align": "^1.7.0", - "prop-types": "^15.5.8", - "rc-util": "^4.0.4" + "rc-util": "^5.0.1", + "resize-observer-polyfill": "^1.5.1" } }, "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==", + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/rc-animate/-/rc-animate-3.1.0.tgz", + "integrity": "sha512-8FsM+3B1H+0AyTyGggY6JyVldHTs1CyYT8CfTmG/nGHHXlecvSLeICJhcKgRLjUiQlctNnRtB1rwz79cvBVmrw==", "requires": { - "babel-runtime": "6.x", + "@ant-design/css-animation": "^1.7.2", "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-calendar": { - "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", - "moment": "2.x", - "prop-types": "^15.5.8", - "rc-trigger": "^2.2.0", - "rc-util": "^4.1.1", - "react-lifecycles-compat": "^3.0.4" + "rc-util": "^5.0.1" } }, "rc-cascader": { - "version": "0.17.5", - "resolved": "https://registry.npmjs.org/rc-cascader/-/rc-cascader-0.17.5.tgz", - "integrity": "sha512-WYMVcxU0+Lj+xLr4YYH0+yXODumvNXDcVEs5i7L1mtpWwYkubPV/zbQpn+jGKFCIW/hOhjkU4J1db8/P/UKE7A==", + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/rc-cascader/-/rc-cascader-1.3.0.tgz", + "integrity": "sha512-wayuMo/dSZixvdpiRFZB4Q6A3omKRXQcJ3CxN02+PNiTEcRnK2KDqKUzrx7GwgMsyH5tz90lUZ91lLaEPNFv0A==", "requires": { "array-tree-filter": "^2.1.0", - "prop-types": "^15.5.8", - "rc-trigger": "^2.2.0", - "rc-util": "^4.0.4", - "react-lifecycles-compat": "^3.0.4", - "shallow-equal": "^1.0.0", + "rc-trigger": "^4.0.0", + "rc-util": "^5.0.1", "warning": "^4.0.1" } }, "rc-checkbox": { - "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==", + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/rc-checkbox/-/rc-checkbox-2.3.1.tgz", + "integrity": "sha512-i290/iTqmZ0WtI2UPIryqT9rW6O99+an4KeZIyZDH3r+Jbb6YdddaWNdzq7g5m9zaNhJvgjf//wJtC4fvve2Tg==", "requires": { - "babel-runtime": "^6.23.0", - "classnames": "2.x", - "prop-types": "15.x", - "react-lifecycles-compat": "^3.0.4" + "@babel/runtime": "^7.10.1", + "classnames": "^2.2.1" } }, "rc-collapse": { - "version": "1.11.8", - "resolved": "https://registry.npmjs.org/rc-collapse/-/rc-collapse-1.11.8.tgz", - "integrity": "sha512-8EhfPyScTYljkbRuIoHniSwZagD5UPpZ3CToYgoNYWC85L2qCbPYF7+OaC713FOrIkp6NbfNqXsITNxmDAmxog==", + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/rc-collapse/-/rc-collapse-2.0.0.tgz", + "integrity": "sha512-R5+Ge1uzwK9G1wZPRPhqQsed4FXTDmU0BKzsqfNBtZdk/wd+yey8ZutmJmSozYc5hQwjPkCvJHV7gOIRZKIlJg==", "requires": { + "@ant-design/css-animation": "^1.7.2", "classnames": "2.x", - "css-animation": "1.x", - "prop-types": "^15.5.6", - "rc-animate": "2.x", + "rc-animate": "3.x", "react-is": "^16.7.0", - "react-lifecycles-compat": "^3.0.4", "shallowequal": "^1.1.0" } }, "rc-dialog": { - "version": "7.6.1", - "resolved": "https://registry.npmjs.org/rc-dialog/-/rc-dialog-7.6.1.tgz", - "integrity": "sha512-KUKf+2eZ4YL+lnXMG3hR4ZtIhC9glfH27NtTVz3gcoDIPAf3uUvaXVRNoDCiSi+OGKLyIb/b6EoidFh6nQC5Wg==", + "version": "8.1.0", + "resolved": "https://registry.npmjs.org/rc-dialog/-/rc-dialog-8.1.0.tgz", + "integrity": "sha512-vMVAtyxpnokh/okFcDQVLO6ymIXfoTKYKtqJ/hMtf+0WcvRn4VgVDBvGyEk5zd94k0RgwEze9o2kGw8SyjivZg==", "requires": { - "babel-runtime": "6.x", - "rc-animate": "2.x", - "rc-util": "^4.16.1" + "rc-animate": "3.x", + "rc-util": "^5.0.1" } }, "rc-drawer": { - "version": "3.1.3", - "resolved": "https://registry.npmjs.org/rc-drawer/-/rc-drawer-3.1.3.tgz", - "integrity": "sha512-2z+RdxmzXyZde/1OhVMfDR1e/GBswFeWSZ7FS3Fdd0qhgVdpV1wSzILzzxRaT481ItB5hOV+e8pZT07vdJE8kg==", + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/rc-drawer/-/rc-drawer-4.1.0.tgz", + "integrity": "sha512-kjeQFngPjdzAFahNIV0EvEBoIKMOnvUsAxpkSPELoD/1DuR4nLafom5ryma+TIxGwkFJ92W6yjsMi1U9aiOTeQ==", "requires": { + "@babel/runtime": "^7.10.1", "classnames": "^2.2.6", - "rc-util": "^4.16.1", - "react-lifecycles-compat": "^3.0.4" + "rc-util": "^5.0.1" } }, "rc-dropdown": { - "version": "2.4.1", - "resolved": "https://registry.npmjs.org/rc-dropdown/-/rc-dropdown-2.4.1.tgz", - "integrity": "sha512-p0XYn0wrOpAZ2fUGE6YJ6U8JBNc5ASijznZ6dkojdaEfQJAeZtV9KMEewhxkVlxGSbbdXe10ptjBlTEW9vEwEg==", + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/rc-dropdown/-/rc-dropdown-3.1.2.tgz", + "integrity": "sha512-s2W5jqvjTid5DxotGO5FlTBaQWeB+Bu7McQgjB8Ot3Wbl72AIKwLf11+lgbV4mA2vWC1H8DKyn6SW9TKLTi0xg==", "requires": { - "babel-runtime": "^6.26.0", + "@babel/runtime": "^7.10.1", "classnames": "^2.2.6", - "prop-types": "^15.5.8", - "rc-trigger": "^2.5.1", - "react-lifecycles-compat": "^3.0.2" - } - }, - "rc-editor-core": { - "version": "0.8.10", - "resolved": "https://registry.npmjs.org/rc-editor-core/-/rc-editor-core-0.8.10.tgz", - "integrity": "sha512-T3aHpeMCIYA1sdAI7ynHHjXy5fqp83uPlD68ovZ0oClTSc3tbHmyCxXlA+Ti4YgmcpCYv7avF6a+TIbAka53kw==", - "requires": { - "babel-runtime": "^6.26.0", - "classnames": "^2.2.5", - "draft-js": "^0.10.0", - "immutable": "^3.7.4", - "lodash": "^4.16.5", - "prop-types": "^15.5.8", - "setimmediate": "^1.0.5" - } - }, - "rc-editor-mention": { - "version": "1.1.13", - "resolved": "https://registry.npmjs.org/rc-editor-mention/-/rc-editor-mention-1.1.13.tgz", - "integrity": "sha512-3AOmGir91Fi2ogfRRaXLtqlNuIwQpvla7oUnGHS1+3eo7b+fUp5IlKcagqtwUBB5oDNofoySXkLBxzWvSYNp/Q==", - "requires": { - "babel-runtime": "^6.23.0", - "classnames": "^2.2.5", - "dom-scroll-into-view": "^1.2.0", - "draft-js": "~0.10.0", - "immutable": "~3.7.4", - "prop-types": "^15.5.8", - "rc-animate": "^2.3.0", - "rc-editor-core": "~0.8.3" - } - }, - "rc-form": { - "version": "2.4.11", - "resolved": "https://registry.npmjs.org/rc-form/-/rc-form-2.4.11.tgz", - "integrity": "sha512-8BL+FNlFLTOY/A5X6tU35GQJLSIpsmqpwn/tFAYQTczXc4dMJ33ggtH248Cum8+LS0jLTsJKG2L4Qp+1CkY+sA==", - "requires": { - "async-validator": "~1.11.3", - "babel-runtime": "6.x", - "create-react-class": "^15.5.3", - "dom-scroll-into-view": "1.x", - "hoist-non-react-statics": "^3.3.0", - "lodash": "^4.17.4", - "rc-util": "^4.15.3", - "warning": "^4.0.3" + "rc-trigger": "^4.0.0" } }, - "rc-hammerjs": { - "version": "0.6.10", - "resolved": "https://registry.npmjs.org/rc-hammerjs/-/rc-hammerjs-0.6.10.tgz", - "integrity": "sha512-Vgh9qIudyN5CHRop4M+v+xUniQBFWXKrsJxQRVtJOi2xgRrCeI52/bkpaL5HWwUhqTK9Ayq0n7lYTItT6ld5rg==", + "rc-field-form": { + "version": "1.5.1", + "resolved": "https://registry.npmjs.org/rc-field-form/-/rc-field-form-1.5.1.tgz", + "integrity": "sha512-h/v/5/iYf4DEZvYfxvmkCS6N2PNm2LW2Ha6oDBglWDNA0TcOFCeIWSq8q+r/Pyq/EHA55iGye4ezhKLzOUgvJg==", "requires": { - "babel-runtime": "6.x", - "hammerjs": "^2.0.8", - "prop-types": "^15.5.9" + "@babel/runtime": "^7.8.4", + "async-validator": "^3.0.3", + "rc-util": "^5.0.0" } }, "rc-input-number": { - "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==", + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/rc-input-number/-/rc-input-number-5.1.0.tgz", + "integrity": "sha512-jh27NecKJaqooeK54JLGICgOmITwQ6fh4EW+pEgoD/T1JPFtkBer24q/U62dFEIFP8Jy7oWhxjYMe7LrGTYkHQ==", "requires": { - "babel-runtime": "6.x", "classnames": "^2.2.0", - "prop-types": "^15.5.7", - "rc-util": "^4.5.1", - "rmc-feedback": "^2.0.0" + "rc-util": "^5.0.1" } }, "rc-mentions": { - "version": "0.4.2", - "resolved": "https://registry.npmjs.org/rc-mentions/-/rc-mentions-0.4.2.tgz", - "integrity": "sha512-DTZurQzacLXOfVuiHydGzqkq7cFMHXF18l2jZ9PhWUn2cqvOSY3W4osN0Pq29AOMOBpcxdZCzgc7Lb0r/bgkDw==", + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/rc-mentions/-/rc-mentions-1.4.0.tgz", + "integrity": "sha512-DIcjQZNerCZ50tnDnL6P9mpNmlGc9VFrSjXh55RzkAZOTelf061T7ZbYv0bYeSdohvAwYNr4gt3/Pe79AUsjLw==", "requires": { - "@ant-design/create-react-context": "^0.2.4", + "@babel/runtime": "^7.10.1", "classnames": "^2.2.6", - "rc-menu": "^7.4.22", - "rc-trigger": "^2.6.2", - "rc-util": "^4.6.0", - "react-lifecycles-compat": "^3.0.4" + "rc-menu": "^8.0.1", + "rc-textarea": "^0.3.0", + "rc-trigger": "^4.3.0", + "rc-util": "^5.0.1" } }, "rc-menu": { - "version": "7.5.5", - "resolved": "https://registry.npmjs.org/rc-menu/-/rc-menu-7.5.5.tgz", - "integrity": "sha512-4YJXJgrpUGEA1rMftXN7bDhrV5rPB8oBJoHqT+GVXtIWCanfQxEnM3fmhHQhatL59JoAFMZhJaNzhJIk4FUWCQ==", + "version": "8.5.0", + "resolved": "https://registry.npmjs.org/rc-menu/-/rc-menu-8.5.0.tgz", + "integrity": "sha512-zEf3gKcdEKrI2/GpotOyIuVqrqEEJLLb+bLBTud+5b6Y70xwUH8IZvK6kXdHdqEnJGEZmq5NIy8Ufcr+HOYGxQ==", "requires": { + "@babel/runtime": "^7.10.1", "classnames": "2.x", - "dom-scroll-into-view": "1.x", - "mini-store": "^2.0.0", - "mutationobserver-shim": "^0.3.2", - "rc-animate": "^2.10.1", - "rc-trigger": "^2.3.0", - "rc-util": "^4.13.0", + "mini-store": "^3.0.1", + "omit.js": "^2.0.0", + "rc-animate": "^3.1.0", + "rc-trigger": "^4.2.0", + "rc-util": "^5.0.1", "resize-observer-polyfill": "^1.5.0", "shallowequal": "^1.1.0" } }, "rc-notification": { - "version": "3.3.1", - "resolved": "https://registry.npmjs.org/rc-notification/-/rc-notification-3.3.1.tgz", - "integrity": "sha512-U5+f4BmBVfMSf3OHSLyRagsJ74yKwlrQAtbbL5ijoA0F2C60BufwnOcHG18tVprd7iaIjzZt1TKMmQSYSvgrig==", + "version": "4.4.0", + "resolved": "https://registry.npmjs.org/rc-notification/-/rc-notification-4.4.0.tgz", + "integrity": "sha512-IDeNAFGVeOsy1tv4zNVqMAXB9tianR80ewQbtObaAQfjwAjWfONdqdyjFkEU6nc6UQhSUYA5OcTGb7kwwbnh0g==", "requires": { - "babel-runtime": "6.x", + "@babel/runtime": "^7.10.1", "classnames": "2.x", - "prop-types": "^15.5.8", - "rc-animate": "2.x", - "rc-util": "^4.0.4" + "rc-animate": "3.x", + "rc-util": "^5.0.1" } }, "rc-pagination": { - "version": "1.20.15", - "resolved": "https://registry.npmjs.org/rc-pagination/-/rc-pagination-1.20.15.tgz", - "integrity": "sha512-/Xr4/3GOa1DtL8iCYl7qRUroEMrRDhZiiuHwcVFfSiwa9LYloMlUWcOJsnr8LN6A7rLPdm3/CHStUNeYd+2pKw==", + "version": "2.4.3", + "resolved": "https://registry.npmjs.org/rc-pagination/-/rc-pagination-2.4.3.tgz", + "integrity": "sha512-AS8HBoI704P5XXLuxcwqen5Se0htg+uaZDMQN8i6HgOvWk1Q2Ab5abriahYX+tz4Avl8CXcgR9wKTG5CI6AwVA==", "requires": { - "babel-runtime": "6.x", - "classnames": "^2.2.6", - "prop-types": "^15.5.7", - "react-lifecycles-compat": "^3.0.4" + "@babel/runtime": "^7.10.1", + "classnames": "^2.2.1" + } + }, + "rc-picker": { + "version": "1.10.7", + "resolved": "https://registry.npmjs.org/rc-picker/-/rc-picker-1.10.7.tgz", + "integrity": "sha512-UgMAi//vxYf437fCG4fRlHwcS365wjLju/G0UgRJalrbnDMxUhgZ5XLi9pGY0M9ZWQeCDe9eywr409dITXQXFA==", + "requires": { + "@babel/runtime": "^7.10.1", + "classnames": "^2.2.1", + "moment": "^2.24.0", + "rc-trigger": "^4.0.0", + "rc-util": "^5.0.1", + "shallowequal": "^1.1.0" } }, "rc-progress": { - "version": "2.5.3", - "resolved": "https://registry.npmjs.org/rc-progress/-/rc-progress-2.5.3.tgz", - "integrity": "sha512-K2fa4CnqGehLZoMrdmBeZ86ONSTVcdk5FlqetbwJ3R/+42XfqhwQVOjWp2MH4P7XSQOMAGcNOy1SFfCP3415sg==", + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/rc-progress/-/rc-progress-3.0.0.tgz", + "integrity": "sha512-dQv1KU3o6Vay604FMYMF4S0x4GNXAgXf1tbQ1QoxeIeQt4d5fUeB7Ri82YPu+G+aRvH/AtxYAlEcnxyVZ1/4Hw==", "requires": { - "babel-runtime": "6.x", - "prop-types": "^15.5.8" + "classnames": "^2.2.6" } }, "rc-rate": { - "version": "2.5.1", - "resolved": "https://registry.npmjs.org/rc-rate/-/rc-rate-2.5.1.tgz", - "integrity": "sha512-3iJkNJT8xlHklPCdeZtUZmJmRVUbr6AHRlfSsztfYTXVlHrv2TcPn3XkHsH+12j812WVB7gvilS2j3+ffjUHXg==", + "version": "2.8.2", + "resolved": "https://registry.npmjs.org/rc-rate/-/rc-rate-2.8.2.tgz", + "integrity": "sha512-f9T/D+ZwWQrWHkpidpQbnXpnVMGMC4eSRAkwuu88a8Qv1C/9LNc4AErazoh8tpnZBFqq19F3j0Glv+sDgkfEig==", "requires": { + "@babel/runtime": "^7.10.1", "classnames": "^2.2.5", - "prop-types": "^15.5.8", - "rc-util": "^4.3.0", - "react-lifecycles-compat": "^3.0.4" + "rc-util": "^5.0.1" } }, "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==", + "version": "0.2.3", + "resolved": "https://registry.npmjs.org/rc-resize-observer/-/rc-resize-observer-0.2.3.tgz", + "integrity": "sha512-dEPCGX15eRRnu+TNBIGyEghpzE24fTDW8pHdJPJS/kCR3lafFqBLqKzBgZW6pMUuM70/ZDyFQ0Kynx9kWsXRNw==", "requires": { + "@babel/runtime": "^7.10.1", "classnames": "^2.2.1", - "rc-util": "^4.13.0", + "rc-util": "^5.0.0", "resize-observer-polyfill": "^1.5.1" } }, "rc-select": { - "version": "9.2.3", - "resolved": "https://registry.npmjs.org/rc-select/-/rc-select-9.2.3.tgz", - "integrity": "sha512-WhswxOMWiNnkXRbxyrj0kiIvyCfo/BaRPaYbsDetSIAU2yEDwKHF798blCP5u86KLOBKBvtxWLFCkSsQw1so5w==", + "version": "11.0.10", + "resolved": "https://registry.npmjs.org/rc-select/-/rc-select-11.0.10.tgz", + "integrity": "sha512-6id8KhwapDrYcum1CS/ENwgS2nwoiikNr182Rux4F99SuQAKOVhHyAIuV1GoLlftLemV35Pl+WOS2LUDHLi8hA==", "requires": { - "babel-runtime": "^6.23.0", + "@babel/runtime": "^7.10.1", "classnames": "2.x", - "component-classes": "1.x", - "dom-scroll-into-view": "1.x", - "prop-types": "^15.5.8", - "raf": "^3.4.0", - "rc-animate": "2.x", - "rc-menu": "^7.3.0", - "rc-trigger": "^2.5.4", - "rc-util": "^4.0.4", - "react-lifecycles-compat": "^3.0.2", - "warning": "^4.0.2" + "rc-animate": "^3.0.0", + "rc-trigger": "^4.3.0", + "rc-util": "^5.0.1", + "rc-virtual-list": "^1.1.2", + "warning": "^4.0.3" } }, "rc-slider": { - "version": "8.7.1", - "resolved": "https://registry.npmjs.org/rc-slider/-/rc-slider-8.7.1.tgz", - "integrity": "sha512-WMT5mRFUEcrLWwTxsyS8jYmlaMsTVCZIGENLikHsNv+tE8ThU2lCoPfi/xFNUfJFNFSBFP3MwPez9ZsJmNp13g==", + "version": "9.3.1", + "resolved": "https://registry.npmjs.org/rc-slider/-/rc-slider-9.3.1.tgz", + "integrity": "sha512-c52PWPyrfJWh28K6dixAm0906L3/4MUIxqrNQA4TLnC/Z+cBNycWJUZoJerpwSOE1HdM3XDwixCsmtFc/7aWlQ==", "requires": { - "babel-runtime": "6.x", + "@babel/runtime": "^7.10.1", "classnames": "^2.2.5", - "prop-types": "^15.5.4", - "rc-tooltip": "^3.7.0", - "rc-util": "^4.0.4", - "react-lifecycles-compat": "^3.0.4", - "shallowequal": "^1.1.0", - "warning": "^4.0.3" + "rc-tooltip": "^4.0.0", + "rc-util": "^5.0.0", + "shallowequal": "^1.1.0" } }, "rc-steps": { - "version": "3.5.0", - "resolved": "https://registry.npmjs.org/rc-steps/-/rc-steps-3.5.0.tgz", - "integrity": "sha512-2Vkkrpa7PZbg7qPsqTNzVDov4u78cmxofjjnIHiGB9+9rqKS8oTLPzbW2uiWDr3Lk+yGwh8rbpGO1E6VAgBCOg==", + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/rc-steps/-/rc-steps-4.0.1.tgz", + "integrity": "sha512-6MuqunJDIZexZj7v5EcHiOF6Q7Xg53+mcxELiIROhvXatssfLxDESpRZJ3zLquecxRjq5epYt92X8xBJ653itg==", "requires": { - "babel-runtime": "^6.23.0", + "@babel/runtime": "^7.10.2", "classnames": "^2.2.3", - "lodash": "^4.17.5", - "prop-types": "^15.5.7" + "rc-util": "^5.0.1" } }, "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": "3.2.0", + "resolved": "https://registry.npmjs.org/rc-switch/-/rc-switch-3.2.0.tgz", + "integrity": "sha512-WQZnRrWZ+KGh4Cd98FpP1ZgvMmebctoHzKAO2n1Xsry1FQBSGgIw4rQJRxET31VS/dR1LIKb5md/k0UzcXXc0g==", "requires": { + "@babel/runtime": "^7.10.1", "classnames": "^2.2.1", - "prop-types": "^15.5.6", - "react-lifecycles-compat": "^3.0.4" + "rc-util": "^5.0.1" } }, "rc-table": { - "version": "6.10.15", - "resolved": "https://registry.npmjs.org/rc-table/-/rc-table-6.10.15.tgz", - "integrity": "sha512-LAr0M/gqt+irOjvPNBLApmQ0CUHNOfKsEBhu1uIuB3OlN1ynA9z+sdoTQyNd9+8NSl0MYnQOOfhtLChAY7nU0A==", + "version": "7.8.4", + "resolved": "https://registry.npmjs.org/rc-table/-/rc-table-7.8.4.tgz", + "integrity": "sha512-+8JPFD4oGy/4/VdXsPE/12oEkopiZoIi4cS6DJGzjf2CjhrM7KevUOjrs0MhFlXZp/Pnb8qSKoVdVHN1JYtL7Q==", "requires": { + "@babel/runtime": "^7.10.1", "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.13.0", - "react-lifecycles-compat": "^3.0.2", - "shallowequal": "^1.0.2" + "raf": "^3.4.1", + "rc-resize-observer": "^0.2.0", + "rc-util": "^5.0.0", + "shallowequal": "^1.1.0" } }, "rc-tabs": { - "version": "9.7.0", - "resolved": "https://registry.npmjs.org/rc-tabs/-/rc-tabs-9.7.0.tgz", - "integrity": "sha512-kvmgp8/MfLzFZ06hWHignqomFQ5nF7BqKr5O1FfhE4VKsGrep52YSF/1MvS5oe0NPcI9XGNS2p751C5v6cYDpQ==", + "version": "11.5.4", + "resolved": "https://registry.npmjs.org/rc-tabs/-/rc-tabs-11.5.4.tgz", + "integrity": "sha512-J7duEePQbF9G1VESfEDH05GYIa/5uS/tmMoTy4IXfohql/b/2mjR3YzKahxi0x/wQJovgBRrdfNQA5Ph99lwIw==", "requires": { - "@ant-design/create-react-context": "^0.2.4", - "babel-runtime": "6.x", + "@babel/runtime": "^7.10.1", "classnames": "2.x", - "lodash": "^4.17.5", - "prop-types": "15.x", "raf": "^3.4.1", - "rc-hammerjs": "~0.6.0", - "rc-util": "^4.0.4", - "react-lifecycles-compat": "^3.0.4", - "resize-observer-polyfill": "^1.5.1", - "warning": "^4.0.3" + "rc-dropdown": "^3.1.0", + "rc-menu": "^8.2.1", + "rc-resize-observer": "^0.2.1", + "rc-trigger": "^4.2.1", + "rc-util": "^5.0.0" } }, - "rc-time-picker": { - "version": "3.7.3", - "resolved": "https://registry.npmjs.org/rc-time-picker/-/rc-time-picker-3.7.3.tgz", - "integrity": "sha512-Lv1Mvzp9fRXhXEnRLO4nW6GLNxUkfAZ3RsiIBsWjGjXXvMNjdr4BX/ayElHAFK0DoJqOhm7c5tjmIYpEOwcUXg==", + "rc-textarea": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/rc-textarea/-/rc-textarea-0.3.0.tgz", + "integrity": "sha512-vrTPkPT6wrO7EI8ouLFZZLXA1pFVrVRCnkmyyf0yRComFbcH1ogmFEGu85CjVT96rQqAiQFOe0QV3nKopZOJow==", "requires": { - "classnames": "2.x", - "moment": "2.x", - "prop-types": "^15.5.8", - "raf": "^3.4.1", - "rc-trigger": "^2.2.0", - "react-lifecycles-compat": "^3.0.4" + "@babel/runtime": "^7.10.1", + "classnames": "^2.2.1", + "omit.js": "^2.0.0", + "rc-resize-observer": "^0.2.3" } }, "rc-tooltip": { - "version": "3.7.3", - "resolved": "https://registry.npmjs.org/rc-tooltip/-/rc-tooltip-3.7.3.tgz", - "integrity": "sha512-dE2ibukxxkrde7wH9W8ozHKUO4aQnPZ6qBHtrTH9LoO836PjDdiaWO73fgPB05VfJs9FbZdmGPVEbXCeOP99Ww==", + "version": "4.2.1", + "resolved": "https://registry.npmjs.org/rc-tooltip/-/rc-tooltip-4.2.1.tgz", + "integrity": "sha512-oykuaGsHg7RFvPUaxUpxo7ScEqtH61C66x4JUmjlFlSS8gSx2L8JFtfwM1D68SLBxUqGqJObtxj4TED75gQTiA==", "requires": { - "babel-runtime": "6.x", - "prop-types": "^15.5.8", - "rc-trigger": "^2.2.2" + "rc-trigger": "^4.2.1" } }, "rc-tree": { - "version": "2.1.4", - "resolved": "https://registry.npmjs.org/rc-tree/-/rc-tree-2.1.4.tgz", - "integrity": "sha512-Xey794Iavgs8YldFlXcZLOhfcIhlX5Oz/yfKufknBXf2AlZCOkc7aHqSM9uTF7fBPtTGPhPxNEfOqHfY7b7xng==", + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/rc-tree/-/rc-tree-3.6.0.tgz", + "integrity": "sha512-2Hy/F+zWuqF5vFlSqpcVXh9Ik2Dl6/tQcRks5EnK8UwXUOgav4+LVORCtdqy4KX7J94vz7d4xfiyWBye/gO1Xg==", "requires": { - "@ant-design/create-react-context": "^0.2.4", + "@babel/runtime": "^7.10.1", "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": "^4.0.3" + "rc-animate": "^3.1.0", + "rc-util": "^5.0.0", + "rc-virtual-list": "^1.1.0" } }, "rc-tree-select": { - "version": "2.9.4", - "resolved": "https://registry.npmjs.org/rc-tree-select/-/rc-tree-select-2.9.4.tgz", - "integrity": "sha512-0HQkXAN4XbfBW20CZYh3G+V+VMrjX42XRtDCpyv6PDUm5vikC0Ob682ZBCVS97Ww2a5Hf6Ajmu0ahWEdIEpwhg==", + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/rc-tree-select/-/rc-tree-select-4.0.3.tgz", + "integrity": "sha512-C2me2AgNYTSXtuybzde2QC82P5yJEZ5gb3SglEOizKvOJM8bJ0hAk8VLK55Xi+a0PO3QvcLLDnJGXEEEB8E/tA==", "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.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-trigger": { - "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", - "prop-types": "15.x", - "raf": "^3.4.0", - "rc-align": "^2.4.1", - "rc-animate": "^3.0.0-rc.1", - "rc-util": "^4.15.7" - }, - "dependencies": { - "rc-animate": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/rc-animate/-/rc-animate-3.1.0.tgz", - "integrity": "sha512-8FsM+3B1H+0AyTyGggY6JyVldHTs1CyYT8CfTmG/nGHHXlecvSLeICJhcKgRLjUiQlctNnRtB1rwz79cvBVmrw==", - "requires": { - "@ant-design/css-animation": "^1.7.2", - "classnames": "^2.2.6", - "raf": "^3.4.0", - "rc-util": "^5.0.1" - }, - "dependencies": { - "rc-util": { - "version": "5.0.5", - "resolved": "https://registry.npmjs.org/rc-util/-/rc-util-5.0.5.tgz", - "integrity": "sha512-zLIdNm6qz+hQbB5T1fmzHFFgPuRl3uB2eS2iLR/mewUWvgC3l7NzRYRVlHoCEEFVUkKEEsHuJXG1J52FInl5lA==", - "requires": { - "react-is": "^16.12.0", - "shallowequal": "^1.1.0" - } - } - } - } - } - } + "@babel/runtime": "^7.10.1", + "classnames": "2.x", + "rc-select": "^11.0.4", + "rc-tree": "^3.6.0", + "rc-util": "^5.0.1" } }, "rc-trigger": { - "version": "2.6.5", - "resolved": "https://registry.npmjs.org/rc-trigger/-/rc-trigger-2.6.5.tgz", - "integrity": "sha512-m6Cts9hLeZWsTvWnuMm7oElhf+03GOjOLfTuU0QmdB9ZrW7jR2IpI5rpNM7i9MvAAlMAmTx5Zr7g3uu/aMvZAw==", + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/rc-trigger/-/rc-trigger-4.3.0.tgz", + "integrity": "sha512-jnGNzosXmDdivMBjPCYe/AfOXTpJU2/xQ9XukgoXDQEoZq/9lcI1r7eUIfq70WlWpLxlUEqQktiV3hwyy6Nw9g==", "requires": { - "babel-runtime": "6.x", + "@babel/runtime": "^7.10.1", "classnames": "^2.2.6", - "prop-types": "15.x", - "rc-align": "^2.4.0", - "rc-animate": "2.x", - "rc-util": "^4.4.0", - "react-lifecycles-compat": "^3.0.4" + "raf": "^3.4.1", + "rc-align": "^4.0.0", + "rc-animate": "^3.0.0", + "rc-util": "^5.0.1" } }, "rc-upload": { - "version": "2.9.4", - "resolved": "https://registry.npmjs.org/rc-upload/-/rc-upload-2.9.4.tgz", - "integrity": "sha512-WXt0HGxXyzLrPV6iec/96Rbl/6dyrAW8pKuY6wwD7yFYwfU5bjgKjv7vC8KNMJ6wzitFrZjnoiogNL3dF9dj3Q==", + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/rc-upload/-/rc-upload-3.2.0.tgz", + "integrity": "sha512-/vyOGVxl5QVM3ZE7s+GqYPbCLC/Q/vJq0sjdwnvJw01KvAR5kVOC4jbHEaU56dMss7PFGDfNzc8zO5bWYLDzVQ==", "requires": { - "babel-runtime": "6.x", - "classnames": "^2.2.5", - "prop-types": "^15.5.7", - "warning": "4.x" + "classnames": "^2.2.5" } }, "rc-util": { - "version": "4.21.1", - "resolved": "https://registry.npmjs.org/rc-util/-/rc-util-4.21.1.tgz", - "integrity": "sha512-Z+vlkSQVc1l8O2UjR3WQ+XdWlhj5q9BMQNLk2iOBch75CqPfrJyGtcWMcnhRlNuDu0Ndtt4kLVO8JI8BrABobg==", + "version": "5.0.5", + "resolved": "https://registry.npmjs.org/rc-util/-/rc-util-5.0.5.tgz", + "integrity": "sha512-zLIdNm6qz+hQbB5T1fmzHFFgPuRl3uB2eS2iLR/mewUWvgC3l7NzRYRVlHoCEEFVUkKEEsHuJXG1J52FInl5lA==", "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" } }, + "rc-virtual-list": { + "version": "1.1.5", + "resolved": "https://registry.npmjs.org/rc-virtual-list/-/rc-virtual-list-1.1.5.tgz", + "integrity": "sha512-roZ6HE5MNKaiop+Ic7jZS7xlMnXBLp0XBElsMbE4eEL3GnnnJAet2iXoT5wjKcKMXEVyVCD0L4yQozmH7+Kgxg==", + "requires": { + "classnames": "^2.2.6", + "raf": "^3.4.1", + "rc-util": "^5.0.0" + } + }, "react": { "version": "16.13.1", "resolved": "https://registry.npmjs.org/react/-/react-16.13.1.tgz", @@ -15337,21 +15094,11 @@ "resolved": "https://registry.npmjs.org/react-is/-/react-is-16.13.1.tgz", "integrity": "sha512-24e6ynE2H+OKt4kqsOvNd8kBpV65zoxbA4BVsEOB3ARVWQki/DHzaUoC5KuON/BiccDaCCTZBuOcfZs70kR8bQ==" }, - "react-lazy-load": { - "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", - "lodash.throttle": "^4.0.0", - "prop-types": "^15.5.8" - } - }, "react-lifecycles-compat": { "version": "3.0.4", "resolved": "https://registry.npmjs.org/react-lifecycles-compat/-/react-lifecycles-compat-3.0.4.tgz", - "integrity": "sha512-fBASbA6LnOU9dOU2eW7aQ8xmYBSXUIWr+UmF9b1efZBazGNO+rcXT/icdKnYm2pTwcRylVUYwW7H1PHfLekVzA==" + "integrity": "sha512-fBASbA6LnOU9dOU2eW7aQ8xmYBSXUIWr+UmF9b1efZBazGNO+rcXT/icdKnYm2pTwcRylVUYwW7H1PHfLekVzA==", + "dev": true }, "react-mustache-template-component": { "version": "1.0.1", @@ -16010,18 +15757,6 @@ "resize-observer-polyfill": "^1.5.1" } }, - "react-slick": { - "version": "0.25.2", - "resolved": "https://registry.npmjs.org/react-slick/-/react-slick-0.25.2.tgz", - "integrity": "sha512-8MNH/NFX/R7zF6W/w+FS5VXNyDusF+XDW1OU0SzODEU7wqYB+ZTGAiNJ++zVNAVqCAHdyCybScaUB+FCZOmBBw==", - "requires": { - "classnames": "^2.2.5", - "enquire.js": "^2.1.6", - "json2mq": "^0.2.0", - "lodash.debounce": "^4.0.8", - "resize-observer-polyfill": "^1.5.0" - } - }, "react-test-renderer": { "version": "16.8.6", "resolved": "https://registry.npmjs.org/react-test-renderer/-/react-test-renderer-16.8.6.tgz", @@ -16187,7 +15922,8 @@ "regenerator-runtime": { "version": "0.11.1", "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.11.1.tgz", - "integrity": "sha512-MguG95oij0fC3QV3URf4V2SDYGJhJnJGqvIIgdECeODCT98wSWDAJ94SSuVpYQUoTcGUIL6L4yNB7j1DFFHSBg==" + "integrity": "sha512-MguG95oij0fC3QV3URf4V2SDYGJhJnJGqvIIgdECeODCT98wSWDAJ94SSuVpYQUoTcGUIL6L4yNB7j1DFFHSBg==", + "dev": true }, "regenerator-transform": { "version": "0.14.5", @@ -16532,15 +16268,6 @@ "inherits": "^2.0.1" } }, - "rmc-feedback": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/rmc-feedback/-/rmc-feedback-2.0.0.tgz", - "integrity": "sha512-5PWOGOW7VXks/l3JzlOU9NIxRpuaSS8d9zA3UULUCuTKnpwBHNvv1jSJzxgbbCQeYzROWUpgKI4za3X4C/mKmQ==", - "requires": { - "babel-runtime": "6.x", - "classnames": "^2.2.5" - } - }, "rst-selector-parser": { "version": "2.2.3", "resolved": "https://registry.npmjs.org/rst-selector-parser/-/rst-selector-parser-2.2.3.tgz", @@ -16614,7 +16341,8 @@ "safer-buffer": { "version": "2.1.2", "resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz", - "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==" + "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==", + "dev": true }, "sane": { "version": "4.1.0", @@ -16805,6 +16533,14 @@ "ajv-keywords": "^3.4.1" } }, + "scroll-into-view-if-needed": { + "version": "2.2.25", + "resolved": "https://registry.npmjs.org/scroll-into-view-if-needed/-/scroll-into-view-if-needed-2.2.25.tgz", + "integrity": "sha512-C8RKJPq9lK7eubwGpLbUkw3lklcG3Ndjmea2PyauzrA0i4DPlzAmVMGxaZrBFqCrVLfvJmP80IyHnv4jxvg1OQ==", + "requires": { + "compute-scroll-into-view": "^1.0.14" + } + }, "scss-tokenizer": { "version": "0.2.3", "resolved": "https://registry.npmjs.org/scss-tokenizer/-/scss-tokenizer-0.2.3.tgz", @@ -17177,7 +16913,8 @@ "setimmediate": { "version": "1.0.5", "resolved": "https://registry.npmjs.org/setimmediate/-/setimmediate-1.0.5.tgz", - "integrity": "sha1-KQy7Iy4waULX1+qbg3Mqt4VvgoU=" + "integrity": "sha1-KQy7Iy4waULX1+qbg3Mqt4VvgoU=", + "dev": true }, "setprototypeof": { "version": "1.1.1", @@ -17204,11 +16941,6 @@ "kind-of": "^6.0.2" } }, - "shallow-equal": { - "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", "resolved": "https://registry.npmjs.org/shallowequal/-/shallowequal-1.1.0.tgz", @@ -18769,7 +18501,8 @@ "ua-parser-js": { "version": "0.7.21", "resolved": "https://registry.npmjs.org/ua-parser-js/-/ua-parser-js-0.7.21.tgz", - "integrity": "sha512-+O8/qh/Qj8CgC6eYBVBykMrNtp5Gebn4dlGD/kKXVkJNDwyrAwSIqwz8CDf+tsAIWVycKcku6gIXJ0qwx/ZXaQ==" + "integrity": "sha512-+O8/qh/Qj8CgC6eYBVBykMrNtp5Gebn4dlGD/kKXVkJNDwyrAwSIqwz8CDf+tsAIWVycKcku6gIXJ0qwx/ZXaQ==", + "dev": true }, "uglify-es": { "version": "3.3.9", @@ -20118,7 +19851,8 @@ "whatwg-fetch": { "version": "3.2.0", "resolved": "https://registry.npmjs.org/whatwg-fetch/-/whatwg-fetch-3.2.0.tgz", - "integrity": "sha512-SdGPoQMMnzVYThUbSrEvqTlkvC1Ux27NehaJ/GUHBfNrh5Mjg+1/uRyFMwVnxO2MrikMWvWAqUGgQOfVU4hT7w==" + "integrity": "sha512-SdGPoQMMnzVYThUbSrEvqTlkvC1Ux27NehaJ/GUHBfNrh5Mjg+1/uRyFMwVnxO2MrikMWvWAqUGgQOfVU4hT7w==", + "dev": true }, "whatwg-mimetype": { "version": "2.3.0", diff --git a/package.json b/package.json index c0dfe9b..717a684 100644 --- a/package.json +++ b/package.json @@ -48,9 +48,10 @@ "webpack-bundle-analyzer": "^3.6.0" }, "dependencies": { + "@ant-design/icons": "^4.2.1", "@bem-react/classname": "^1.5.6", "@jeltemx/mendix-react-widget-utils": "^0.3.7", - "antd": "^3.26.7", + "antd": "^4.4.2", "array-to-tree": "^3.3.2", "big.js": "^5.2.2", "classnames": "^2.2.6", diff --git a/src/TreeView.tsx b/src/TreeView.tsx index 2da5633..01086dd 100644 --- a/src/TreeView.tsx +++ b/src/TreeView.tsx @@ -1,11 +1,17 @@ -import { Component, ReactNode, createElement } from "react"; +import { Component, ReactNode, createElement, ReactElement } from "react"; import { findDOMNode } from "react-dom"; import { TreeViewComponent } from "./components/TreeViewComponent"; import { hot } from "react-hot-loader/root"; import { TreeViewContainerProps } from "../typings/TreeViewProps"; +import "antd/es/tree/style/index.css"; +import "antd/es/spin/style/index.css"; +import "antd/es/empty/style/index.css"; +import "antd/es/input/style/index.css"; + import "./ui/TreeView.scss"; + import { NodeStore, NodeStoreConstructorOptions } from "./store/index"; import { IAction, @@ -128,6 +134,7 @@ class TreeView extends Component { iconIsGlyphicon={uiNodeIconIsGlyphicon} draggable={dragIsDraggable} onClickHandler={this.clickTypeHandler} + switcherBg={this.props.uiSwitcherBg} /> ); } @@ -173,6 +180,10 @@ class TreeView extends Component { isRoot: nodeLoadScenario === "top" }); + if (nodeLoadScenario === "all") { + entryOpts.isLoaded = true; + } + this.store.setEntries(objects, entryOpts); } else { this.store.setEntries([], {}); @@ -181,7 +192,7 @@ class TreeView extends Component { this.store.setLoading(false); } - private async _fetchChildren(parentObject: EntryObject): Promise { + private async _fetchChildren(parentObject: EntryObject, expandAfter: string | null = null): Promise { if (this.props.nodeLoadScenario === "all") { return; } @@ -234,7 +245,7 @@ class TreeView extends Component { parent: parentObject.mxObject.getGuid() }); - this.store.setEntries(objects, entryOpts, false); + this.store.setEntries(objects, entryOpts, false, expandAfter); parentObject.setLoaded(true); } else { parentObject.setHasChildren(false); @@ -251,7 +262,7 @@ class TreeView extends Component { const nanoflow = this.props.uiNodeTitleNanoflow; if (titleType === "attribute" && attribute) { - opts.staticTitleMethod = (obj: mendix.lib.MxObject) => + opts.staticTitleMethod = (obj: mendix.lib.MxObject): ReactElement => getStaticTitleFromObject(obj, { attribute, titleType, diff --git a/src/TreeView.xml b/src/TreeView.xml index 113a896..711b99d 100644 --- a/src/TreeView.xml +++ b/src/TreeView.xml @@ -172,6 +172,10 @@ Show tree lines These lines will show up in the tree structure to make it better visible + + Switcher background + When using tree lines, you might need to set the switcher background to match the background of your tree. + diff --git a/src/components/TreeViewComponent.tsx b/src/components/TreeViewComponent.tsx index 7a9e032..de503c9 100644 --- a/src/components/TreeViewComponent.tsx +++ b/src/components/TreeViewComponent.tsx @@ -1,21 +1,21 @@ -import { Component, ReactNode, createElement, ReactElement } from "react"; +import { Component, ReactNode, createElement, MouseEvent } from "react"; import { observer } from "mobx-react"; import { Tree as ArrayTree } from "array-to-tree"; -import Tree, { AntTreeNode } from "antd/es/tree"; -import Spin from "antd/es/spin"; -import Input from "antd/es/input"; -import Empty from "antd/es/empty"; +import classNames from "classnames"; + +import { Key } from "antd/es/table/interface"; +import { EventDataNode, DataNode } from "antd/es/tree"; +import { Tree, Spin, Input, Empty } from "antd"; +import { CaretDownFilled } from "@ant-design/icons"; + import debounce from "debounce"; -const { TreeNode } = Tree; const { Search } = Input; import { NodeStore } from "../store/index"; import { TreeObject } from "../store/objects/entry"; -import { AntTreeNodeDropEvent, AntTreeNodeExpandedEvent } from "antd/es/tree/Tree"; import { ClickCellType } from "../utils/titlehelper"; import { Alerts } from "./Alerts"; -import classNames from "classnames"; export interface TreeViewComponentProps { store: NodeStore; @@ -27,6 +27,7 @@ export interface TreeViewComponentProps { iconIsGlyphicon: boolean; onClickHandler: (_obj: mendix.lib.MxObject, _clickType: ClickCellType) => Promise; className: string; + switcherBg: string; } @observer @@ -47,6 +48,16 @@ export class TreeViewComponent extends Component { ); } + componentWillMount(): void { + if (this.props.switcherBg) { + document.documentElement.style.setProperty("--switcher-icon-bg", this.props.switcherBg); + } + } + + componentWillUnmount(): void { + document.documentElement.style.removeProperty("--switcher-icon-bg"); + } + private renderControl(): ReactNode { const { store, searchEnabled } = this.props; @@ -106,19 +117,19 @@ export class TreeViewComponent extends Component { expandedKeys={expandedKeys} showIcon={showIcon} showLine={showLine} + switcherIcon={showLine ? : undefined} selectable={false} draggable={draggable} onDrop={this.onDrop.bind(this)} onExpand={this.onExpand.bind(this)} onClick={this.handleClick("single")} onDoubleClick={this.handleClick("double")} - > - {this.renderTreeNodes(store.entryTree)} - + treeData={this.getTreeNodes(store.entryTree)} + /> ); } - private renderTreeNodes(data: ArrayTree[]): ReactElement[] { + private getTreeNodes(data: ArrayTree[]): DataNode[] { const { iconIsGlyphicon } = this.props; return data.map(item => { let icon: ReactNode | boolean = false; @@ -133,32 +144,46 @@ export class TreeViewComponent extends Component { icon = ; } - if (item.children && item.children.length > 0) { - const children = this.renderTreeNodes(item.children); - return ( - - {children} - - ); + const dataNode: DataNode = { + key: item.guid, + icon, + title: item.title, + isLeaf, + className: extraClass + }; + + if (item.children && item.children.length > 0 && typeof item.children[0] !== "string") { + const children = this.getTreeNodes(item.children); + dataNode.children = children; } - return ; + + return dataNode; }); } - private onDrop(opts: AntTreeNodeDropEvent): void { - if (!opts.dragNode.props.eventKey) { + private onDrop(info: { + event: React.MouseEvent; + node: EventDataNode; + dragNode: EventDataNode; + dragNodesKeys: Key[]; + dropPosition: number; + dropToGap: boolean; + }): void { + if (!info.dragNode.key) { return; } - // console.log(`Dragged : ${opts.dragNode.props.eventKey} to ${opts.node.props.eventKey}`); - this.props.store.switchEntryParent(opts.dragNode.props.eventKey, opts.node.props.eventKey); + this.props.store.switchEntryParent(info.dragNode.key as string, info.node.key as string); } - private handleClick(clickType: ClickCellType): (_evt: unknown, _node: AntTreeNode) => void { - return (_evt: unknown, node: AntTreeNode) => { - if (!node.props.eventKey || !this.props.onClickHandler) { + private handleClick( + clickType: ClickCellType + ): (_evt: MouseEvent, node: EventDataNode) => void { + return (_evt: MouseEvent, node: EventDataNode): void => { + if (!node.key || !this.props.onClickHandler) { return; } - const entryObject = this.props.store.findEntry(node.props.eventKey); + const key = node.key as string; + const entryObject = this.props.store.findEntry(key); if (entryObject && entryObject.mxObject) { this.props.onClickHandler(entryObject.mxObject, clickType); if (this.props.holdSelection) { @@ -168,10 +193,17 @@ export class TreeViewComponent extends Component { }; } - private onExpand(_expandedKeys: string[], info: AntTreeNodeExpandedEvent): void { + private onExpand( + _expandedKeys: React.ReactText[], + info: { + node: EventDataNode; + expanded: boolean; + nativeEvent: globalThis.MouseEvent; + } + ): void { const { expanded, node } = info; - if (node && node.props.eventKey && typeof expanded !== "undefined") { - this.props.store.expandKey(node.props.eventKey, expanded); + if (node && node.key && typeof expanded !== "undefined") { + this.props.store.expandKey(node.key as string, expanded); } } } diff --git a/src/store/index.ts b/src/store/index.ts index a593f81..3042643 100644 --- a/src/store/index.ts +++ b/src/store/index.ts @@ -21,7 +21,7 @@ export interface NodeStoreConstructorOptions { onSelectionChange?: (guids: TreeGuids) => void; validationMessages: ValidationMessage[]; entryObjectAttributes: EntryObjectAttributes; - childLoader: (parent: EntryObject) => Promise; + childLoader: (parent: EntryObject, expandAfter: string | null) => Promise; searchHandler?: (_query: string) => Promise; debug: (...args: unknown[]) => void; } @@ -45,7 +45,7 @@ export class NodeStore { public subscriptionHandler: (guids: TreeGuids) => void; public onSelectionChangeHandler: (guids: TreeGuids) => void; public entryObjectAttributes: EntryObjectAttributes; - public childLoader: (parent: EntryObject) => Promise = async () => {}; + public childLoader: (parent: EntryObject, expandAfter?: string | null) => Promise = async () => {}; public searchHandler: ((_query: string) => Promise) | null; public debug: (...args: unknown[]) => void; @@ -123,7 +123,12 @@ export class NodeStore { // Entries @action - setEntries(entryObjects: mendix.lib.MxObject[], opts: EntryObjectExtraOptions, clean = true): void { + setEntries( + entryObjects: mendix.lib.MxObject[], + opts: EntryObjectExtraOptions, + clean = true, + expandAfter: string | null = null + ): void { this.debug("store: setEntries", entryObjects.length, opts, clean); const entries = entryObjects.map(mxObject => this.createEntryObject(mxObject, this.entryHandler(opts), opts)); @@ -154,6 +159,10 @@ export class NodeStore { }); this.entries = cloned; } + + if (expandAfter !== null) { + this.expandKey(expandAfter, true); + } } @action @@ -244,7 +253,7 @@ export class NodeStore { } @action - selectEntry(guid: string) { + selectEntry(guid: string): void { if (!this.holdSelection) { return; } @@ -274,9 +283,10 @@ export class NodeStore { expandKey(guid: string, expanded: boolean): void { const entryObject = this.findEntry(guid); if (entryObject) { - entryObject.setExpanded(expanded); if (expanded && !entryObject.isLoaded) { - this.childLoader(entryObject); + this.childLoader(entryObject, guid); + } else { + entryObject.setExpanded(expanded); } } } diff --git a/src/store/objects/entry.ts b/src/store/objects/entry.ts index 9bb3641..98ef60c 100644 --- a/src/store/objects/entry.ts +++ b/src/store/objects/entry.ts @@ -27,6 +27,7 @@ export interface EntryObjectExtraOptions { classMethod?: ClassMethod; isRoot?: boolean; parent?: string; + isLoaded?: boolean; } export interface EntryObjectOptions { @@ -60,14 +61,13 @@ export class EntryObject { fixTitle = flow(function*(this: EntryObject) { if (this._dynamicTitleMethod) { const title = yield this._dynamicTitleMethod(this._obj); - // @ts-ignore this._title = title; } }); constructor(opts: EntryObjectOptions, attributes: EntryObjectAttributes) { const { mxObject, changeHandler, extraOpts } = opts; - const { staticTitleMethod, dynamicTitleMethod, classMethod, isRoot, parent } = extraOpts; + const { staticTitleMethod, dynamicTitleMethod, classMethod, isRoot, parent, isLoaded } = extraOpts; this._obj = mxObject; this._title = ""; @@ -77,7 +77,7 @@ export class EntryObject { this._parent = typeof parent !== "undefined" ? parent : ""; this._children = []; this._hasChildren = false; - this._isLoaded = false; + this._isLoaded = typeof isLoaded !== "undefined" ? isLoaded : false; this._isExpanded = false; this._isRoot = typeof isRoot !== "undefined" ? isRoot : false; this._dynamicTitleMethod = dynamicTitleMethod || null; diff --git a/src/ui/TreeView.scss b/src/ui/TreeView.scss index fdb8a96..a8ebc80 100644 --- a/src/ui/TreeView.scss +++ b/src/ui/TreeView.scss @@ -1,1915 +1,170 @@ -@-webkit-keyframes "antCheckboxEffect" { - 0% { - -webkit-transform: scale(1); - transform: scale(1); - opacity: 0.5; - } - - 100% { - -webkit-transform: scale(1.6); - transform: scale(1.6); - opacity: 0; - } -} - -@keyframes "antCheckboxEffect" { - 0% { - -webkit-transform: scale(1); - transform: scale(1); - opacity: 0.5; - } - - 100% { - -webkit-transform: scale(1.6); - transform: scale(1.6); - opacity: 0; - } -} - -@-webkit-keyframes "antSpinMove" { - to { - opacity: 1; - } -} - -@keyframes "antSpinMove" { - to { - opacity: 1; - } -} - -@-webkit-keyframes "antRotate" { - to { - -webkit-transform: rotate(405deg); - transform: rotate(405deg); - } -} - -@keyframes "antRotate" { - to { - -webkit-transform: rotate(405deg); - transform: rotate(405deg); - } -} - -.treeview-widget { - .ant-tree.ant-tree-directory { - position: relative; - - >li { - span.ant-tree-switcher { - position: relative; - z-index: 1; - } - - span.ant-tree-switcher.ant-tree-switcher-noop { - pointer-events: none; - } - - span.ant-tree-checkbox { - position: relative; - z-index: 1; - } - - span.ant-tree-node-content-wrapper { - border-radius: 0; - -webkit-user-select: none; - -moz-user-select: none; - -ms-user-select: none; - user-select: none; - - &:hover { - background: transparent; - - &::before { - background: #e6f7ff; - } - } - - &::before { - position: absolute; - right: 0; - left: 0; - height: 24px; - -webkit-transition: all 0.3s; - transition: all 0.3s; - content: ''; - } - - >span { - position: relative; - z-index: 1; - } - } - - span.ant-tree-node-content-wrapper.ant-tree-node-selected { - color: #fff; - background: transparent; - } - } - - .ant-tree-child-tree { - >li { - span.ant-tree-switcher { - position: relative; - z-index: 1; - } - - span.ant-tree-switcher.ant-tree-switcher-noop { - pointer-events: none; - } - - span.ant-tree-checkbox { - position: relative; - z-index: 1; - } - - span.ant-tree-node-content-wrapper { - border-radius: 0; - -webkit-user-select: none; - -moz-user-select: none; - -ms-user-select: none; - user-select: none; - - &:hover { - background: transparent; - - &::before { - background: #e6f7ff; - } - } - - &::before { - position: absolute; - right: 0; - left: 0; - height: 24px; - -webkit-transition: all 0.3s; - transition: all 0.3s; - content: ''; - } - - >span { - position: relative; - z-index: 1; - } - } - - span.ant-tree-node-content-wrapper.ant-tree-node-selected { - color: #fff; - background: transparent; - } - } - - >li.ant-tree-treenode-selected { - >span.ant-tree-switcher { - color: #fff; - } - - >span.ant-tree-checkbox { - .ant-tree-checkbox-inner { - border-color: #1890ff; - } - } - - >span.ant-tree-checkbox.ant-tree-checkbox-checked { - &::after { - border-color: #fff; - } - - .ant-tree-checkbox-inner { - background: #fff; - - &::after { - border-color: #1890ff; - } - } - } - - >span.ant-tree-node-content-wrapper { - &::before { - background: #1890ff; - } - } - } - } - - >li.ant-tree-treenode-selected { - >span.ant-tree-switcher { - color: #fff; - } - - >span.ant-tree-checkbox { - .ant-tree-checkbox-inner { - border-color: #1890ff; - } - } - - >span.ant-tree-checkbox.ant-tree-checkbox-checked { - &::after { - border-color: #fff; - } - - .ant-tree-checkbox-inner { - background: #fff; - - &::after { - border-color: #1890ff; - } - } - } - - >span.ant-tree-node-content-wrapper { - &::before { - background: #1890ff; - } - } - } - } - - .ant-tree-checkbox { - -webkit-box-sizing: border-box; - box-sizing: border-box; - margin: 0; - padding: 0; - color: rgba(0, 0, 0, 0.65); - font-size: 14px; - font-variant: tabular-nums; - line-height: 1.5; - list-style: none; - -webkit-font-feature-settings: 'tnum'; - font-feature-settings: 'tnum'; - position: relative; - top: -0.09em; - display: inline-block; - line-height: 1; - white-space: nowrap; - vertical-align: middle; - outline: none; - cursor: pointer; - - &:hover { - .ant-tree-checkbox-inner { - border-color: #1890ff; - } - - &::after { - visibility: visible; - } - } - } - - .ant-tree-checkbox-wrapper { - &:hover { - .ant-tree-checkbox-inner { - border-color: #1890ff; - } - - .ant-tree-checkbox { - &::after { - visibility: visible; - } - } - - .ant-tree-checkbox-disabled { - &::after { - visibility: hidden; - } - } - } - - -webkit-box-sizing: border-box; - box-sizing: border-box; - margin: 0; - padding: 0; - color: rgba(0, 0, 0, 0.65); - font-size: 14px; - font-variant: tabular-nums; - line-height: 1.5; - list-style: none; - -webkit-font-feature-settings: 'tnum'; - font-feature-settings: 'tnum'; - display: inline-block; - line-height: unset; - cursor: pointer; - } - - .ant-tree-checkbox-input { - &:focus+.ant-tree-checkbox-inner { - border-color: #1890ff; - } - - position: absolute; - top: 0; - right: 0; - bottom: 0; - left: 0; - z-index: 1; - width: 100%; - height: 100%; - cursor: pointer; - opacity: 0; - } - - .ant-tree-checkbox-checked { - &::after { - position: absolute; - top: 0; - left: 0; - width: 100%; - height: 100%; - border: 1px solid #1890ff; - border-radius: 2px; - visibility: hidden; - -webkit-animation: antCheckboxEffect 0.36s ease-in-out; - animation: antCheckboxEffect 0.36s ease-in-out; - -webkit-animation-fill-mode: backwards; - animation-fill-mode: backwards; - content: ''; - position: absolute; - top: 16.67%; - left: 0; - width: 100%; - height: 66.67%; - } - - .ant-tree-checkbox-inner { - &::after { - position: absolute; - display: table; - border: 2px solid #fff; - border-top: 0; - border-left: 0; - -webkit-transform: rotate(45deg) scale(1) translate(-50%, -50%); - -ms-transform: rotate(45deg) scale(1) translate(-50%, -50%); - transform: rotate(45deg) scale(1) translate(-50%, -50%); - opacity: 1; - -webkit-transition: all 0.2s cubic-bezier(0.12, 0.4, 0.29, 1.46) 0.1s; - transition: all 0.2s cubic-bezier(0.12, 0.4, 0.29, 1.46) 0.1s; - content: ' '; - } - - background-color: #1890ff; - border-color: #1890ff; - } - } - - .ant-tree-checkbox-inner { - position: relative; - top: 0; - left: 0; - display: block; - width: 16px; - height: 16px; - background-color: #fff; - border: 1px solid #d9d9d9; - border-radius: 2px; - border-collapse: separate; - -webkit-transition: all 0.3s; - transition: all 0.3s; - - &::after { - position: absolute; - top: 50%; - left: 22%; - display: table; - width: 5.71428571px; - height: 9.14285714px; - border: 2px solid #fff; - border-top: 0; - border-left: 0; - -webkit-transform: rotate(45deg) scale(0) translate(-50%, -50%); - -ms-transform: rotate(45deg) scale(0) translate(-50%, -50%); - transform: rotate(45deg) scale(0) translate(-50%, -50%); - opacity: 0; - -webkit-transition: all 0.1s cubic-bezier(0.71, -0.46, 0.88, 0.6), opacity 0.1s; - transition: all 0.1s cubic-bezier(0.71, -0.46, 0.88, 0.6), opacity 0.1s; - content: ' '; - } - } - - .ant-tree-checkbox-disabled { - cursor: not-allowed; - - .ant-tree-checkbox-input { - cursor: not-allowed; - } - - .ant-tree-checkbox-inner { - background-color: #f5f5f5; - border-color: #d9d9d9 !important; - - &::after { - border-color: #f5f5f5; - border-collapse: separate; - -webkit-animation-name: none; - animation-name: none; - } - } - - &:hover { - &::after { - visibility: hidden; - } - } - } - - .ant-tree-checkbox-disabled.ant-tree-checkbox-checked { - .ant-tree-checkbox-inner { - &::after { - border-color: rgba(0, 0, 0, 0.25); - -webkit-animation-name: none; - animation-name: none; - } - } - } - - .ant-tree-checkbox-disabled+span { - color: rgba(0, 0, 0, 0.25); - cursor: not-allowed; - } - - .ant-tree-checkbox-wrapper.ant-tree-checkbox-wrapper-disabled { - cursor: not-allowed; - } - - .ant-tree-checkbox-wrapper+.ant-tree-checkbox-wrapper { - margin-left: 8px; - } - - .ant-tree-checkbox+span { - padding-right: 8px; - padding-left: 8px; - } - - .ant-tree-checkbox-group { - -webkit-box-sizing: border-box; - box-sizing: border-box; - margin: 0; - padding: 0; - color: rgba(0, 0, 0, 0.65); - font-size: 14px; - font-variant: tabular-nums; - line-height: 1.5; - list-style: none; - -webkit-font-feature-settings: 'tnum'; - font-feature-settings: 'tnum'; - display: inline-block; - } - - .ant-tree-checkbox-group-item { - display: inline-block; - margin-right: 8px; - - &:last-child { - margin-right: 0; - } - } - - .ant-tree-checkbox-group-item+.ant-tree-checkbox-group-item { - margin-left: 0; - } - - .ant-tree-checkbox-indeterminate { - .ant-tree-checkbox-inner { - background-color: #fff; - border-color: #d9d9d9; - - &::after { - top: 50%; - left: 50%; - width: 8px; - height: 8px; - background-color: #1890ff; - border: 0; - -webkit-transform: translate(-50%, -50%) scale(1); - -ms-transform: translate(-50%, -50%) scale(1); - transform: translate(-50%, -50%) scale(1); - opacity: 1; - content: ' '; - } - } - } - - .ant-tree-checkbox-indeterminate.ant-tree-checkbox-disabled { - .ant-tree-checkbox-inner { - &::after { - background-color: rgba(0, 0, 0, 0.25); - border-color: rgba(0, 0, 0, 0.25); - } - } - } - - .ant-tree { - -webkit-box-sizing: border-box; - box-sizing: border-box; - color: rgba(0, 0, 0, 0.65); - font-size: 14px; - font-variant: tabular-nums; - line-height: 1.5; - list-style: none; - -webkit-font-feature-settings: 'tnum'; - font-feature-settings: 'tnum'; - margin: 0; - padding: 0; - - ol { - margin: 0; - padding: 0; - list-style: none; - } - - ul { - margin: 0; - padding: 0; - list-style: none; - } - - li { - margin: 0; - padding: 4px 0; - white-space: nowrap; - list-style: none; - outline: 0; - - span[draggable] { - line-height: 20px; - border-top: 2px transparent solid; - border-bottom: 2px transparent solid; - -webkit-user-select: none; - -moz-user-select: none; - -ms-user-select: none; - user-select: none; - -khtml-user-drag: element; - -webkit-user-drag: element; - } - - span[draggable='true'] { - line-height: 20px; - border-top: 2px transparent solid; - border-bottom: 2px transparent solid; - -webkit-user-select: none; - -moz-user-select: none; - -ms-user-select: none; - user-select: none; - -khtml-user-drag: element; - -webkit-user-drag: element; - } - - ul { - margin: 0; - padding: 0 0 0 18px; - } - - .ant-tree-node-content-wrapper { - display: inline-block; - height: 24px; - margin: 0; - padding: 0 5px; - color: rgba(0, 0, 0, 0.65); - line-height: 24px; - text-decoration: none; - vertical-align: top; - border-radius: 2px; - cursor: pointer; - -webkit-transition: all 0.3s; - transition: all 0.3s; - // padding-right: 20px; - - &:hover { - background-color: #e6f7ff; - } - } - - .ant-tree-node-content-wrapper.ant-tree-node-selected { - background-color: #bae7ff; - } - - span.ant-tree-checkbox { - top: initial; - height: 24px; - margin: 0 4px 0 2px; - padding: 4px 0; - } - - span.ant-tree-switcher { - display: inline-block; - width: 24px; - height: 24px; - margin: 0; - line-height: 24px; - text-align: center; - vertical-align: top; - border: 0 none; - outline: none; - cursor: pointer; - position: relative; - } - - span.ant-tree-iconEle { - display: inline-block; - width: 24px; - height: 24px; - margin: 0 0 0 -10px; - line-height: 24px; - text-align: center; - vertical-align: top; - border: 0 none; - outline: none; - cursor: pointer; - float: left; - - &:empty { - display: none; - } - } - - span.ant-tree-switcher.ant-tree-switcher-noop { - cursor: default; - } - - span.ant-tree-switcher.ant-tree-switcher_open { - .ant-tree-switcher-icon { - font-size: 12px; - font-size: 10px \9; - -webkit-transform: scale(0.83333) rotate(0deg); - -ms-transform: scale(0.83333) rotate(0deg); - transform: scale(0.83333) rotate(0deg); - display: inline-block; - font-weight: bold; - - svg { - -webkit-transition: -webkit-transform 0.3s; - transition: -webkit-transform 0.3s; - transition: transform 0.3s; - transition: transform 0.3s, -webkit-transform 0.3s; - } - } - - .ant-select-switcher-icon { - font-size: 12px; - font-size: 10px \9; - -webkit-transform: scale(0.83333) rotate(0deg); - -ms-transform: scale(0.83333) rotate(0deg); - transform: scale(0.83333) rotate(0deg); - display: inline-block; - font-weight: bold; - - svg { - -webkit-transition: -webkit-transform 0.3s; - transition: -webkit-transform 0.3s; - transition: transform 0.3s; - transition: transform 0.3s, -webkit-transform 0.3s; - } - } - } - - span.ant-tree-switcher.ant-tree-switcher_close { - .ant-tree-switcher-icon { - font-size: 12px; - font-size: 10px \9; - -webkit-transform: scale(0.83333) rotate(0deg); - -ms-transform: scale(0.83333) rotate(0deg); - transform: scale(0.83333) rotate(0deg); - display: inline-block; - font-weight: bold; - - svg { - -webkit-transition: -webkit-transform 0.3s; - transition: -webkit-transform 0.3s; - transition: transform 0.3s; - transition: transform 0.3s, -webkit-transform 0.3s; - -webkit-transform: rotate(-90deg); - -ms-transform: rotate(-90deg); - transform: rotate(-90deg); - } - } - - .ant-select-switcher-icon { - font-size: 12px; - font-size: 10px \9; - -webkit-transform: scale(0.83333) rotate(0deg); - -ms-transform: scale(0.83333) rotate(0deg); - transform: scale(0.83333) rotate(0deg); - display: inline-block; - font-weight: bold; - - svg { - -webkit-transition: -webkit-transform 0.3s; - transition: -webkit-transform 0.3s; - transition: transform 0.3s; - transition: transform 0.3s, -webkit-transform 0.3s; - } - } - } - - &:last-child { - >span.ant-tree-switcher { - &::before { - display: none; - } - } - - >span.ant-tree-iconEle { - &::before { - display: none; - } - } - } - } - - li.drag-over { - >span[draggable] { - color: white; - background-color: #1890ff; - opacity: 0.8; - } - } - - li.drag-over-gap-top { - >span[draggable] { - border-top-color: #1890ff; - } - } - - li.drag-over-gap-bottom { - >span[draggable] { - border-bottom-color: #1890ff; - } - } - - li.filter-node { - >span { - color: #f5222d !important; - font-weight: 500 !important; - } - } - - li.ant-tree-treenode-loading { - span.ant-tree-switcher.ant-tree-switcher_open { - .ant-tree-switcher-loading-icon { - position: absolute; - left: 0; - display: inline-block; - width: 24px; - height: 24px; - color: #1890ff; - font-size: 14px; - -webkit-transform: none; - -ms-transform: none; - transform: none; - - svg { - position: absolute; - top: 0; - right: 0; - bottom: 0; - left: 0; - margin: auto; - } - } - } - - span.ant-tree-switcher.ant-tree-switcher_close { - .ant-tree-switcher-loading-icon { - position: absolute; - left: 0; - display: inline-block; - width: 24px; - height: 24px; - color: #1890ff; - font-size: 14px; - -webkit-transform: none; - -ms-transform: none; - transform: none; - - svg { - position: absolute; - top: 0; - right: 0; - bottom: 0; - left: 0; - margin: auto; - } - } - } - } - - >li { - &:first-child { - padding-top: 7px; - } - - &:last-child { - padding-bottom: 7px; - } - } - } - - &:root { - .ant-tree { - li.ant-tree-treenode-loading { - span.ant-tree-switcher.ant-tree-switcher_open { - &::after { - opacity: 0; - } - } - - span.ant-tree-switcher.ant-tree-switcher_close { - &::after { - opacity: 0; - } - } - } - - li { - span.ant-tree-switcher.ant-tree-switcher_open { - .ant-tree-switcher-icon { - font-size: 12px; - } - - .ant-select-switcher-icon { - font-size: 12px; - } - } - - span.ant-tree-switcher.ant-tree-switcher_close { - .ant-tree-switcher-icon { - font-size: 12px; - } - - .ant-select-switcher-icon { - font-size: 12px; - } - } - } - } - } - - .ant-tree-child-tree { - >li { - &:first-child { - padding-top: 8px; - } - - &:last-child { - padding-bottom: 0; - } - } - } - - li.ant-tree-treenode-disabled { - >span { - &:not(.ant-tree-switcher) { - color: rgba(0, 0, 0, 0.25); - cursor: not-allowed; - } - } - - >.ant-tree-node-content-wrapper { - color: rgba(0, 0, 0, 0.25); - cursor: not-allowed; - - span { - color: rgba(0, 0, 0, 0.25); - cursor: not-allowed; - } - - &:hover { - background: transparent; - } - } - } - - .ant-tree-icon__open { - margin-right: 2px; - vertical-align: top; - } - - .ant-tree-icon__close { - margin-right: 2px; - vertical-align: top; - } - - .ant-tree.ant-tree-show-line { - li { - position: relative; - - span.ant-tree-switcher { - color: rgba(0, 0, 0, 0.45); - background: transparent; - } - - span.ant-tree-switcher.ant-tree-switcher-noop { - .ant-tree-switcher-icon { - display: inline-block; - font-weight: normal; - font-size: 12px; - - svg { - -webkit-transition: -webkit-transform 0.3s; - transition: -webkit-transform 0.3s; - transition: transform 0.3s; - transition: transform 0.3s, -webkit-transform 0.3s; - } - } - - .ant-select-switcher-icon { - display: inline-block; - font-weight: normal; - font-size: 12px; - - svg { - -webkit-transition: -webkit-transform 0.3s; - transition: -webkit-transform 0.3s; - transition: transform 0.3s; - transition: transform 0.3s, -webkit-transform 0.3s; - } - } - } - - span.ant-tree-switcher.ant-tree-switcher_open { - .ant-tree-switcher-icon { - display: inline-block; - font-weight: normal; - font-size: 12px; - - svg { - -webkit-transition: -webkit-transform 0.3s; - transition: -webkit-transform 0.3s; - transition: transform 0.3s; - transition: transform 0.3s, -webkit-transform 0.3s; - } - } - - .ant-select-switcher-icon { - display: inline-block; - font-weight: normal; - font-size: 12px; - - svg { - -webkit-transition: -webkit-transform 0.3s; - transition: -webkit-transform 0.3s; - transition: transform 0.3s; - transition: transform 0.3s, -webkit-transform 0.3s; - } - } - } - - span.ant-tree-switcher.ant-tree-switcher_close { - .ant-tree-switcher-icon { - display: inline-block; - font-weight: normal; - font-size: 12px; - - svg { - -webkit-transition: -webkit-transform 0.3s; - transition: -webkit-transform 0.3s; - transition: transform 0.3s; - transition: transform 0.3s, -webkit-transform 0.3s; - } - } - - .ant-select-switcher-icon { - display: inline-block; - font-weight: normal; - font-size: 12px; - - svg { - -webkit-transition: -webkit-transform 0.3s; - transition: -webkit-transform 0.3s; - transition: transform 0.3s; - transition: transform 0.3s, -webkit-transform 0.3s; - } - } - } - - &:not(:last-child) { - &::before { - position: absolute; - left: 12px; - width: 1px; - height: 100%; - height: calc(100% - 22px); - margin: 22px 0 0; - border-left: 1px solid #d9d9d9; - content: ' '; - } - } - } - } - - .ant-tree.ant-tree-icon-hide { - .ant-tree-treenode-loading { - .ant-tree-iconEle { - display: none; - } - } - } - - .ant-tree.ant-tree-block-node { - li { - .ant-tree-node-content-wrapper { - width: calc(100% - 24px); - } - - span.ant-tree-checkbox+.ant-tree-node-content-wrapper { - width: calc(100% - 46px); - } - } - } - - .ant-empty { - margin: 0 8px; - font-size: 14px; - line-height: 22px; - text-align: center; - } - - .ant-empty-image { - height: 100px; - margin-bottom: 8px; - - img { - height: 100%; - } - - svg { - height: 100%; - margin: auto; - } - } - - .ant-empty-description { - margin: 0; - } - - .ant-empty-footer { - margin-top: 16px; - } - - .ant-empty-normal { - margin: 32px 0; - color: rgba(0, 0, 0, 0.25); - - .ant-empty-image { - height: 40px; - } - } - - .ant-empty-small { - margin: 8px 0; - color: rgba(0, 0, 0, 0.25); - - .ant-empty-image { - height: 35px; - } - } - - .ant-spin { - -webkit-box-sizing: border-box; - box-sizing: border-box; - margin: 0; - padding: 0; - color: rgba(0, 0, 0, 0.65); - font-size: 14px; - font-variant: tabular-nums; - line-height: 1.5; - list-style: none; - -webkit-font-feature-settings: 'tnum'; - font-feature-settings: 'tnum'; - position: absolute; - display: none; - color: #1890ff; - text-align: center; - vertical-align: middle; - opacity: 0; - -webkit-transition: -webkit-transform 0.3s cubic-bezier(0.78, 0.14, 0.15, 0.86); - transition: -webkit-transform 0.3s cubic-bezier(0.78, 0.14, 0.15, 0.86); - transition: transform 0.3s cubic-bezier(0.78, 0.14, 0.15, 0.86); - transition: transform 0.3s cubic-bezier(0.78, 0.14, 0.15, 0.86), -webkit-transform 0.3s cubic-bezier(0.78, 0.14, 0.15, 0.86); - } - - .ant-spin-spinning { - position: static; - display: inline-block; - opacity: 1; - } - - .ant-spin-nested-loading { - position: relative; - - >div { - >.ant-spin { - position: absolute; - top: 0; - left: 0; - z-index: 4; - display: block; - width: 100%; - height: 100%; - max-height: 400px; - - .ant-spin-dot { - position: absolute; - top: 50%; - left: 50%; - margin: -10px; - } - - .ant-spin-text { - position: absolute; - top: 50%; - width: 100%; - padding-top: 5px; - text-shadow: 0 1px 2px #fff; - } - } - - >.ant-spin.ant-spin-show-text { - .ant-spin-dot { - margin-top: -20px; - } - } - - >.ant-spin-sm { - .ant-spin-dot { - margin: -7px; - } - - .ant-spin-text { - padding-top: 2px; - } - } - - >.ant-spin-sm.ant-spin-show-text { - .ant-spin-dot { - margin-top: -17px; - } - } - - >.ant-spin-lg { - .ant-spin-dot { - margin: -16px; - } - - .ant-spin-text { - padding-top: 11px; - } - } - - >.ant-spin-lg.ant-spin-show-text { - .ant-spin-dot { - margin-top: -26px; - } - } - } - } - - .ant-spin-container { - position: relative; - -webkit-transition: opacity 0.3s; - transition: opacity 0.3s; - - &::after { - position: absolute; - top: 0; - right: 0; - bottom: 0; - left: 0; - z-index: 10; - display: none \9; - width: 100%; - height: 100%; - background: #fff; - opacity: 0; - -webkit-transition: all 0.3s; - transition: all 0.3s; - content: ''; - pointer-events: none; - } - } - - .ant-spin-blur { - clear: both; +.treeview-widget { + //* Copied from else where to make animations work + + [class^=ant-]::-ms-clear, + [class*= ant-]::-ms-clear, + [class^=ant-] input::-ms-clear, + [class*= ant-] input::-ms-clear, + [class^=ant-] input::-ms-reveal, + [class*= ant-] input::-ms-reveal { + display: none; + } + [class^=ant-], + [class*= ant-], + [class^=ant-] *, + [class*= ant-] *, + [class^=ant-] *::before, + [class*= ant-] *::before, + [class^=ant-] *::after, + [class*= ant-] *::after { + -webkit-box-sizing: border-box; + box-sizing: border-box; + } + + .anticon { + display: inline-block; + color: inherit; + font-style: normal; + line-height: 0; + text-align: center; + text-transform: none; + vertical-align: -0.125em; + text-rendering: optimizeLegibility; + -webkit-font-smoothing: antialiased; + -moz-osx-font-smoothing: grayscale; + } + .anticon > * { + line-height: 1; + } + .anticon svg { + display: inline-block; + } + .anticon::before { + display: none; + } + .anticon .anticon-icon { + display: block; + } + .anticon[tabindex] { + cursor: pointer; + } + .anticon-spin::before { + display: inline-block; + -webkit-animation: loadingCircle 1s infinite linear; + animation: loadingCircle 1s infinite linear; + } + .anticon-spin { + display: inline-block; + -webkit-animation: loadingCircle 1s infinite linear; + animation: loadingCircle 1s infinite linear; + } + + .fade-enter, + .fade-appear { + -webkit-animation-duration: 0.2s; + animation-duration: 0.2s; + -webkit-animation-fill-mode: both; + animation-fill-mode: both; + -webkit-animation-play-state: paused; + animation-play-state: paused; + } + .fade-leave { + -webkit-animation-duration: 0.2s; + animation-duration: 0.2s; + -webkit-animation-fill-mode: both; + animation-fill-mode: both; + -webkit-animation-play-state: paused; + animation-play-state: paused; + } + .fade-enter.fade-enter-active, + .fade-appear.fade-appear-active { + -webkit-animation-name: antFadeIn; + animation-name: antFadeIn; + -webkit-animation-play-state: running; + animation-play-state: running; + } + .fade-leave.fade-leave-active { + -webkit-animation-name: antFadeOut; + animation-name: antFadeOut; + -webkit-animation-play-state: running; + animation-play-state: running; + pointer-events: none; + } + .fade-enter, + .fade-appear { + opacity: 0; + -webkit-animation-timing-function: linear; + animation-timing-function: linear; + } + .fade-leave { + -webkit-animation-timing-function: linear; + animation-timing-function: linear; + } + + .ant-motion-collapse-legacy { overflow: hidden; - opacity: 0.5; - -webkit-user-select: none; - -moz-user-select: none; - -ms-user-select: none; - user-select: none; - pointer-events: none; - - &::after { - opacity: 0.4; - pointer-events: auto; - } - } - - .ant-spin-tip { - color: rgba(0, 0, 0, 0.45); - } - - .ant-spin-dot { - position: relative; - display: inline-block; - font-size: 20px; - width: 1em; - height: 1em; - } - - .ant-spin-dot-item { - position: absolute; - display: block; - width: 9px; - height: 9px; - background-color: #1890ff; - border-radius: 100%; - -webkit-transform: scale(0.75); - -ms-transform: scale(0.75); - transform: scale(0.75); - -webkit-transform-origin: 50% 50%; - -ms-transform-origin: 50% 50%; - transform-origin: 50% 50%; - opacity: 0.3; - -webkit-animation: antSpinMove 1s infinite linear alternate; - animation: antSpinMove 1s infinite linear alternate; - - &:nth-child(1) { - top: 0; - left: 0; - } - - &:nth-child(2) { - top: 0; - right: 0; - -webkit-animation-delay: 0.4s; - animation-delay: 0.4s; - } - - &:nth-child(3) { - right: 0; - bottom: 0; - -webkit-animation-delay: 0.8s; - animation-delay: 0.8s; - } - - &:nth-child(4) { - bottom: 0; - left: 0; - -webkit-animation-delay: 1.2s; - animation-delay: 1.2s; - } - } - - .ant-spin-dot-spin { - -webkit-transform: rotate(45deg); - -ms-transform: rotate(45deg); - transform: rotate(45deg); - -webkit-animation: antRotate 1.2s infinite linear; - animation: antRotate 1.2s infinite linear; - } + } + .ant-motion-collapse-legacy-active { + -webkit-transition: height 0.15s cubic-bezier(0.645, 0.045, 0.355, 1), opacity 0.15s cubic-bezier(0.645, 0.045, 0.355, 1) !important; + transition: height 0.15s cubic-bezier(0.645, 0.045, 0.355, 1), opacity 0.15s cubic-bezier(0.645, 0.045, 0.355, 1) !important; + } + .ant-motion-collapse { + overflow: hidden; + -webkit-transition: height 0.15s cubic-bezier(0.645, 0.045, 0.355, 1), opacity 0.15s cubic-bezier(0.645, 0.045, 0.355, 1) !important; + transition: height 0.15s cubic-bezier(0.645, 0.045, 0.355, 1), opacity 0.15s cubic-bezier(0.645, 0.045, 0.355, 1) !important; + } - .ant-spin-sm { - .ant-spin-dot { - font-size: 14px; + // CUSTOM - i { - width: 6px; - height: 6px; - } - } + .ant-tree { + background: transparent; } - .ant-spin-lg { - .ant-spin-dot { - font-size: 32px; - - i { - width: 14px; - height: 14px; - } + .has-icon { + .ant-tree-iconEle { + float: left; } - } - - .ant-spin.ant-spin-show-text { - .ant-spin-text { - display: block; + .ant-tree-title { + float: left; } } - .ant-input { - -webkit-box-sizing: border-box; - box-sizing: border-box; - margin: 0; - padding: 0; - font-variant: tabular-nums; - list-style: none; - -webkit-font-feature-settings: 'tnum'; - font-feature-settings: 'tnum'; - position: relative; - display: inline-block; - width: 100%; - height: 32px; - padding: 4px 11px; - color: rgba(0, 0, 0, 0.65); - font-size: 14px; - line-height: 1.5; - background-color: #fff; - background-image: none; - border: 1px solid #d9d9d9; - border-radius: 4px; - -webkit-transition: all 0.3s; - transition: all 0.3s; - } - - .ant-input::-moz-placeholder { - color: #bfbfbf; - opacity: 1; - } - - .ant-input:-ms-input-placeholder { - color: #bfbfbf; - } - - .ant-input::-webkit-input-placeholder { - color: #bfbfbf; - } - - .ant-input:placeholder-shown { - text-overflow: ellipsis; - } - - .ant-input:hover { - border-color: #40a9ff; - border-right-width: 1px !important; - } - - .ant-input:focus { - border-color: #40a9ff; - border-right-width: 1px !important; - outline: 0; - -webkit-box-shadow: 0 0 0 2px rgba(24, 144, 255, 0.2); - box-shadow: 0 0 0 2px rgba(24, 144, 255, 0.2); - } - - .ant-input-disabled { - color: rgba(0, 0, 0, 0.25); - background-color: #f5f5f5; - cursor: not-allowed; - opacity: 1; - } - - .ant-input-disabled:hover { - border-color: #d9d9d9; - border-right-width: 1px !important; - } - - .ant-input[disabled] { - color: rgba(0, 0, 0, 0.25); - background-color: #f5f5f5; - cursor: not-allowed; - opacity: 1; - } - - .ant-input[disabled]:hover { - border-color: #d9d9d9; - border-right-width: 1px !important; - } - - textarea.ant-input { - max-width: 100%; - height: auto; - min-height: 32px; - line-height: 1.5; - vertical-align: bottom; - -webkit-transition: all 0.3s, height 0s; - transition: all 0.3s, height 0s; - } - - .ant-input-lg { - height: 40px; - padding: 6px 11px; - font-size: 16px; - } - - .ant-input-sm { - height: 24px; - padding: 1px 7px; - } - - .ant-input-group { - -webkit-box-sizing: border-box; - box-sizing: border-box; - margin: 0; - padding: 0; - color: rgba(0, 0, 0, 0.65); - font-size: 14px; - font-variant: tabular-nums; - line-height: 1.5; - list-style: none; - -webkit-font-feature-settings: 'tnum'; - font-feature-settings: 'tnum'; - position: relative; - display: table; - width: 100%; - border-collapse: separate; - border-spacing: 0; - } - - .ant-input-group[class*='col-'] { - float: none; - padding-right: 0; - padding-left: 0; - } - - .ant-input-group>[class*='col-'] { - padding-right: 8px; - } - - .ant-input-group>[class*='col-']:last-child { - padding-right: 0; - } - - .ant-input-group-addon, - .ant-input-group-wrap, - .ant-input-group>.ant-input { - display: table-cell; - } - - .ant-input-group-addon:not(:first-child):not(:last-child), - .ant-input-group-wrap:not(:first-child):not(:last-child), - .ant-input-group>.ant-input:not(:first-child):not(:last-child) { - border-radius: 0; - } - - .ant-input-group-addon, - .ant-input-group-wrap { - width: 1px; - white-space: nowrap; - vertical-align: middle; - } - - .ant-input-group-wrap>* { - display: block !important; - } - - .ant-input-group .ant-input { - float: left; - width: 100%; - margin-bottom: 0; - text-align: inherit; - } - - .ant-input-group .ant-input:focus { - z-index: 1; - border-right-width: 1px; - } - - .ant-input-group .ant-input:hover { - z-index: 1; - border-right-width: 1px; - } - - .ant-input-group-addon { - position: relative; - padding: 0 11px; - color: rgba(0, 0, 0, 0.65); - font-weight: normal; - font-size: 14px; - text-align: center; - background-color: #fafafa; - border: 1px solid #d9d9d9; - border-radius: 4px; - -webkit-transition: all 0.3s; - transition: all 0.3s; - } - - .ant-input-group-addon .ant-select { - margin: -5px -11px; - } - - .ant-input-group-addon .ant-select .ant-select-selection { - margin: -1px; - background-color: inherit; - border: 1px solid transparent; - -webkit-box-shadow: none; - box-shadow: none; - } - - .ant-input-group-addon .ant-select-open .ant-select-selection, - .ant-input-group-addon .ant-select-focused .ant-select-selection { - color: #1890ff; - } - - .ant-input-group-addon>i:only-child::after { - position: absolute; - top: 0; - right: 0; - bottom: 0; - left: 0; - content: ''; - } - - .ant-input-group>.ant-input:first-child, - .ant-input-group-addon:first-child { - border-top-right-radius: 0; - border-bottom-right-radius: 0; - } - - .ant-input-group>.ant-input:first-child .ant-select .ant-select-selection, - .ant-input-group-addon:first-child .ant-select .ant-select-selection { - border-top-right-radius: 0; - border-bottom-right-radius: 0; - } - - .ant-input-group>.ant-input-affix-wrapper:not(:first-child) .ant-input { - border-top-left-radius: 0; - border-bottom-left-radius: 0; - } - - .ant-input-group>.ant-input-affix-wrapper:not(:last-child) .ant-input { - border-top-right-radius: 0; - border-bottom-right-radius: 0; - } - - .ant-input-group-addon:first-child { - border-right: 0; - } - - .ant-input-group-addon:last-child { - border-left: 0; - } - - .ant-input-group>.ant-input:last-child, - .ant-input-group-addon:last-child { - border-top-left-radius: 0; - border-bottom-left-radius: 0; - } - - .ant-input-group>.ant-input:last-child .ant-select .ant-select-selection, - .ant-input-group-addon:last-child .ant-select .ant-select-selection { - border-top-left-radius: 0; - border-bottom-left-radius: 0; - } - - .ant-input-group-lg .ant-input, - .ant-input-group-lg>.ant-input-group-addon { - height: 40px; - padding: 6px 11px; - font-size: 16px; - } - - .ant-input-group-sm .ant-input, - .ant-input-group-sm>.ant-input-group-addon { - height: 24px; - padding: 1px 7px; - } - - .ant-input-group-lg .ant-select-selection--single { - height: 40px; - } - - .ant-input-group-sm .ant-select-selection--single { - height: 24px; - } - - .ant-input-group .ant-input-affix-wrapper { - display: table-cell; - float: left; - width: 100%; - } - - .ant-input-group.ant-input-group-compact { - display: block; - zoom: 1; - } - - .ant-input-group.ant-input-group-compact::before, - .ant-input-group.ant-input-group-compact::after { - display: table; - content: ''; - } - - .ant-input-group.ant-input-group-compact::after { - clear: both; - } - - .ant-input-group.ant-input-group-compact-addon:not(:first-child):not(:last-child), - .ant-input-group.ant-input-group-compact-wrap:not(:first-child):not(:last-child), - .ant-input-group.ant-input-group-compact>.ant-input:not(:first-child):not(:last-child) { - border-right-width: 1px; - } - - .ant-input-group.ant-input-group-compact-addon:not(:first-child):not(:last-child):hover, - .ant-input-group.ant-input-group-compact-wrap:not(:first-child):not(:last-child):hover, - .ant-input-group.ant-input-group-compact>.ant-input:not(:first-child):not(:last-child):hover { - z-index: 1; - } - - .ant-input-group.ant-input-group-compact-addon:not(:first-child):not(:last-child):focus, - .ant-input-group.ant-input-group-compact-wrap:not(:first-child):not(:last-child):focus, - .ant-input-group.ant-input-group-compact>.ant-input:not(:first-child):not(:last-child):focus { - z-index: 1; - } - - .ant-input-group.ant-input-group-compact>* { - display: inline-block; - float: none; - vertical-align: top; - border-radius: 0; - } - - .ant-input-group.ant-input-group-compact>*:not(:last-child) { - margin-right: -1px; - border-right-width: 1px; - } - - .ant-input-group.ant-input-group-compact .ant-input { - float: none; - } - - .ant-input-group.ant-input-group-compact>.ant-select>.ant-select-selection, - .ant-input-group.ant-input-group-compact>.ant-calendar-picker .ant-input, - .ant-input-group.ant-input-group-compact>.ant-select-auto-complete .ant-input, - .ant-input-group.ant-input-group-compact>.ant-cascader-picker .ant-input, - .ant-input-group.ant-input-group-compact>.ant-mention-wrapper .ant-mention-editor, - .ant-input-group.ant-input-group-compact>.ant-time-picker .ant-time-picker-input, - .ant-input-group.ant-input-group-compact>.ant-input-group-wrapper .ant-input { - border-right-width: 1px; - border-radius: 0; - } - - .ant-input-group.ant-input-group-compact>.ant-select>.ant-select-selection:hover, - .ant-input-group.ant-input-group-compact>.ant-calendar-picker .ant-input:hover, - .ant-input-group.ant-input-group-compact>.ant-select-auto-complete .ant-input:hover, - .ant-input-group.ant-input-group-compact>.ant-cascader-picker .ant-input:hover, - .ant-input-group.ant-input-group-compact>.ant-mention-wrapper .ant-mention-editor:hover, - .ant-input-group.ant-input-group-compact>.ant-time-picker .ant-time-picker-input:hover, - .ant-input-group.ant-input-group-compact>.ant-input-group-wrapper .ant-input:hover { - z-index: 1; - } - - .ant-input-group.ant-input-group-compact>.ant-select>.ant-select-selection:focus, - .ant-input-group.ant-input-group-compact>.ant-calendar-picker .ant-input:focus, - .ant-input-group.ant-input-group-compact>.ant-select-auto-complete .ant-input:focus, - .ant-input-group.ant-input-group-compact>.ant-cascader-picker .ant-input:focus, - .ant-input-group.ant-input-group-compact>.ant-mention-wrapper .ant-mention-editor:focus, - .ant-input-group.ant-input-group-compact>.ant-time-picker .ant-time-picker-input:focus, - .ant-input-group.ant-input-group-compact>.ant-input-group-wrapper .ant-input:focus { - z-index: 1; - } - - .ant-input-group.ant-input-group-compact>*:first-child, - .ant-input-group.ant-input-group-compact>.ant-select:first-child>.ant-select-selection, - .ant-input-group.ant-input-group-compact>.ant-calendar-picker:first-child .ant-input, - .ant-input-group.ant-input-group-compact>.ant-select-auto-complete:first-child .ant-input, - .ant-input-group.ant-input-group-compact>.ant-cascader-picker:first-child .ant-input, - .ant-input-group.ant-input-group-compact>.ant-mention-wrapper:first-child .ant-mention-editor, - .ant-input-group.ant-input-group-compact>.ant-time-picker:first-child .ant-time-picker-input { - border-top-left-radius: 4px; - border-bottom-left-radius: 4px; - } - - .ant-input-group.ant-input-group-compact>*:last-child, - .ant-input-group.ant-input-group-compact>.ant-select:last-child>.ant-select-selection, - .ant-input-group.ant-input-group-compact>.ant-calendar-picker:last-child .ant-input, - .ant-input-group.ant-input-group-compact>.ant-select-auto-complete:last-child .ant-input, - .ant-input-group.ant-input-group-compact>.ant-cascader-picker:last-child .ant-input, - .ant-input-group.ant-input-group-compact>.ant-cascader-picker-focused:last-child .ant-input, - .ant-input-group.ant-input-group-compact>.ant-mention-wrapper:last-child .ant-mention-editor, - .ant-input-group.ant-input-group-compact>.ant-time-picker:last-child .ant-time-picker-input { - border-right-width: 1px; - border-top-right-radius: 4px; - border-bottom-right-radius: 4px; - } - - .ant-input-group.ant-input-group-compact>.ant-select-auto-complete .ant-input { - vertical-align: top; - } - - .ant-input-group-wrapper { - display: inline-block; - width: 100%; - text-align: start; - vertical-align: top; - } - - .ant-input-affix-wrapper { - -webkit-box-sizing: border-box; - box-sizing: border-box; - margin: 0; - padding: 0; - color: rgba(0, 0, 0, 0.65); - font-size: 14px; - font-variant: tabular-nums; - line-height: 1.5; - list-style: none; - -webkit-font-feature-settings: 'tnum'; - font-feature-settings: 'tnum'; - position: relative; - display: inline-block; - width: 100%; - text-align: start; - } - - .ant-input-affix-wrapper:hover .ant-input:not(.ant-input-disabled) { - border-color: #40a9ff; - border-right-width: 1px !important; - } - - .ant-input-affix-wrapper .ant-input { - position: relative; - text-align: inherit; - } - - .ant-input-affix-wrapper .ant-input-prefix, - .ant-input-affix-wrapper .ant-input-suffix { - position: absolute; - top: 50%; - z-index: 2; - display: -webkit-box; - display: -ms-flexbox; - display: flex; - -webkit-box-align: center; - -ms-flex-align: center; - align-items: center; - color: rgba(0, 0, 0, 0.65); - line-height: 0; - -webkit-transform: translateY(-50%); - -ms-transform: translateY(-50%); - transform: translateY(-50%); - } - - .ant-input-affix-wrapper .ant-input-prefix :not(.anticon), - .ant-input-affix-wrapper .ant-input-suffix :not(.anticon) { - line-height: 1.5; - } - - .ant-input-affix-wrapper .ant-input-disabled~.ant-input-suffix .anticon { - color: rgba(0, 0, 0, 0.25); - cursor: not-allowed; - } - - .ant-input-affix-wrapper .ant-input-prefix { - left: 12px; - } - - .ant-input-affix-wrapper .ant-input-suffix { - right: 12px; - } - - .ant-input-affix-wrapper .ant-input:not(:first-child) { - padding-left: 30px; - } - - .ant-input-affix-wrapper .ant-input:not(:last-child) { - padding-right: 30px; - } - - .ant-input-affix-wrapper.ant-input-affix-wrapper-input-with-clear-btn .ant-input:not(:last-child) { - padding-right: 49px; - } - - .ant-input-affix-wrapper.ant-input-affix-wrapper-textarea-with-clear-btn .ant-input { - padding-right: 22px; - } - - .ant-input-affix-wrapper .ant-input { - min-height: 100%; - } - - .ant-input-password-icon { - color: rgba(0, 0, 0, 0.45); - cursor: pointer; - -webkit-transition: all 0.3s; - transition: all 0.3s; - } - - .ant-input-password-icon:hover { - color: #333; - } - - .ant-input-clear-icon { - color: rgba(0, 0, 0, 0.25); - font-size: 12px; - cursor: pointer; - -webkit-transition: color 0.3s; - transition: color 0.3s; - vertical-align: 0; - } - - .ant-input-clear-icon:hover { - color: rgba(0, 0, 0, 0.45); - } - - .ant-input-clear-icon:active { - color: rgba(0, 0, 0, 0.65); - } - - .ant-input-clear-icon+i { - margin-left: 6px; - } - - .ant-input-textarea-clear-icon { - color: rgba(0, 0, 0, 0.25); - font-size: 12px; - cursor: pointer; - -webkit-transition: color 0.3s; - transition: color 0.3s; - position: absolute; - top: 0; - right: 0; - margin: 8px 8px 0 0; - } - - .ant-input-textarea-clear-icon:hover { - color: rgba(0, 0, 0, 0.45); - } - - .ant-input-textarea-clear-icon:active { - color: rgba(0, 0, 0, 0.65); - } - - .ant-input-textarea-clear-icon+i { - margin-left: 6px; - } - - .ant-input-search-icon { - color: rgba(0, 0, 0, 0.45); - cursor: pointer; - -webkit-transition: all 0.3s; - transition: all 0.3s; - } - - .ant-input-search-icon:hover { - color: rgba(0, 0, 0, 0.8); - } - - .ant-input-search-enter-button input { - border-right: 0; - } - - .ant-input-search-enter-button+.ant-input-group-addon, - .ant-input-search-enter-button input+.ant-input-group-addon { - padding: 0; - border: 0; - } - - .ant-input-search-enter-button+.ant-input-group-addon .ant-input-search-button, - .ant-input-search-enter-button input+.ant-input-group-addon .ant-input-search-button { - border-top-left-radius: 0; - border-bottom-left-radius: 0; - } - - .highlight > .ant-tree-node-content-wrapper .ant-tree-title { - font-weight: bold; - } - .treeview-widget-control { - margin-bottom: 12px; + margin-bottom: 10px; } - .ant-motion-collapse { - overflow: hidden; - -webkit-transition: height 0.15s cubic-bezier(0.645, 0.045, 0.355, 1), opacity 0.15s cubic-bezier(0.645, 0.045, 0.355, 1) !important; - transition: height 0.15s cubic-bezier(0.645, 0.045, 0.355, 1), opacity 0.15s cubic-bezier(0.645, 0.045, 0.355, 1) !important; + .ant-empty { + padding: 10px 0; } .ant-tree-show-line { .ant-tree-switcher { + background: var(--switcher-icon-bg); &.ant-tree-switcher-noop { background: transparent; - width: 1px; - margin-right: 23px; - left: 12px; - border-left: 1px solid #d9d9d9; - i.anticon.anticon-file.ant-tree-switcher-line-icon { - display: none; + position: relative; + &:before { + content: " "; + display: block; + border-left: 1px solid #d9d9d9; + height: 24px; + left: 11px; + width: 1px; + position: absolute; } } } } - li.has-icon > .ant-tree-node-content-wrapper { - padding-right: 20px; + .anticon.anticon-file.ant-tree-switcher-line-icon { + display: none; } -} -@media all and (-ms-high-contrast: none) { - .treeview-widget { - .ant-spin-blur { - background: #fff; - opacity: 0.5; - } + li.has-icon > .ant-tree-node-content-wrapper { + padding-right: 20px; } -} -@media (-ms-high-contrast: active) { - .treeview-widget { - .ant-spin-blur { - background: #fff; - opacity: 0.5; - } + .highlight > .ant-tree-node-content-wrapper .ant-tree-title { + font-weight: bold; } } diff --git a/typings/TreeViewProps.d.ts b/typings/TreeViewProps.d.ts index 3f158e7..2f20248 100644 --- a/typings/TreeViewProps.d.ts +++ b/typings/TreeViewProps.d.ts @@ -37,6 +37,7 @@ export interface TreeViewContainerProps extends CommonProps { uiNodeIconAttr: string; uiNodeIconIsGlyphicon: boolean; uiTableShowLines: boolean; + uiSwitcherBg: string; relationType: RelationType; relationNodeParent: string; diff --git a/webpack.config.prod.js b/webpack.config.prod.js index b18dffd..a1132a1 100644 --- a/webpack.config.prod.js +++ b/webpack.config.prod.js @@ -68,14 +68,10 @@ const customConfig = { ] }, plugins: [ - // new BundleAnalyzerPlugin(), - // We only include the moment locale for en-gb, as this is not used in a lot of places and we don't need all the locales new webpack.ContextReplacementPlugin(/moment[\/\\]locale$/, /en-gb/) ], - // We add this to further slim down the package resolve: { alias: { - '@ant-design/icons/lib/dist$': path.join(__dirname, 'src/components/icons.js') } } }; @@ -85,16 +81,11 @@ if (args.length === 5 && args[4] === "--analyze") { } const previewConfig = { - // Custom configuration goes here - // devtool: "source-map" plugins: [ - // new BundleAnalyzerPlugin(), - // We only include the moment locale for en-gb, as this is not used in a lot of places and we don't need all the locales new webpack.ContextReplacementPlugin(/moment[\/\\]locale$/, /en-gb/) ], resolve: { alias: { - '@ant-design/icons/lib/dist$': path.join(__dirname, 'src/components/icons.js') } } };