diff --git a/web-console/package-lock.json b/web-console/package-lock.json index 8a6638cbcf15..e3ee01837e6a 100644 --- a/web-console/package-lock.json +++ b/web-console/package-lock.json @@ -498,6 +498,12 @@ "integrity": "sha512-EaObqwIvayI5a8dCzhFrjKzVwKLxjoG9T6Ppd5CEo07LRKfQ8Yokw54r5+Wq7FaBQ+yXRvQAYPrHwya1/UFt9g==", "dev": true }, + "@types/file-saver": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/@types/file-saver/-/file-saver-2.0.0.tgz", + "integrity": "sha512-dxdRrUov2HVTbSRFX+7xwUPlbGYVEZK6PrSqClg2QPos3PNe0bCajkDDkDeeC1znjSH03KOEqVbXpnJuWa2wgQ==", + "dev": true + }, "@types/glob": { "version": "7.1.1", "resolved": "https://registry.npmjs.org/@types/glob/-/glob-7.1.1.tgz", @@ -591,6 +597,15 @@ "csstype": "^2.2.0" } }, + "@types/react-copy-to-clipboard": { + "version": "4.2.6", + "resolved": "https://registry.npmjs.org/@types/react-copy-to-clipboard/-/react-copy-to-clipboard-4.2.6.tgz", + "integrity": "sha512-v4/yLsuPf8GSFuTy9fA1ABpL5uuy04vwW7qs+cfxSe1UU/M/KK95rF3N3GRseismoK9tA28SvpwVsAg/GWoF3A==", + "dev": true, + "requires": { + "@types/react": "*" + } + }, "@types/react-dom": { "version": "16.8.4", "resolved": "https://registry.npmjs.org/@types/react-dom/-/react-dom-16.8.4.tgz", @@ -2278,6 +2293,14 @@ "integrity": "sha1-Z29us8OZl8LuGsOpJP1hJHSPV40=", "dev": true }, + "copy-to-clipboard": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/copy-to-clipboard/-/copy-to-clipboard-3.2.0.tgz", + "integrity": "sha512-eOZERzvCmxS8HWzugj4Uxl8OJxa7T2k1Gi0X5qavwydHIfuSHq2dTD09LOg/XyGq4Zpb5IsR/2OJ5lbOegz78w==", + "requires": { + "toggle-selection": "^1.0.6" + } + }, "core-js": { "version": "1.2.7", "resolved": "https://registry.npmjs.org/core-js/-/core-js-1.2.7.tgz", @@ -3538,6 +3561,11 @@ "flat-cache": "^2.0.1" } }, + "file-saver": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/file-saver/-/file-saver-2.0.1.tgz", + "integrity": "sha512-dCB3K7/BvAcUmtmh1DzFdv0eXSVJ9IAFt1mw3XZfAexodNRoE29l3xB2EX4wH2q8m/UTzwzEPq/ArYk98kUkBQ==" + }, "fileset": { "version": "2.0.3", "resolved": "https://registry.npmjs.org/fileset/-/fileset-2.0.3.tgz", @@ -8595,6 +8623,15 @@ "prop-types": "^15.6.2" } }, + "react-copy-to-clipboard": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/react-copy-to-clipboard/-/react-copy-to-clipboard-5.0.1.tgz", + "integrity": "sha512-ELKq31/E3zjFs5rDWNCfFL4NvNFQvGRoJdAKReD/rUPA+xxiLPQmZBZBvy2vgH7V0GE9isIQpT9WXbwIVErYdA==", + "requires": { + "copy-to-clipboard": "^3", + "prop-types": "^15.5.8" + } + }, "react-dom": { "version": "16.8.6", "resolved": "https://registry.npmjs.org/react-dom/-/react-dom-16.8.6.tgz", @@ -10858,6 +10895,11 @@ "repeat-string": "^1.6.1" } }, + "toggle-selection": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/toggle-selection/-/toggle-selection-1.0.6.tgz", + "integrity": "sha1-bkWxJj8gF/oKzH2J14sVuL932jI=" + }, "tough-cookie": { "version": "2.5.0", "resolved": "https://registry.npmjs.org/tough-cookie/-/tough-cookie-2.5.0.tgz", diff --git a/web-console/package.json b/web-console/package.json index ad9c0f82e302..93beecb54957 100644 --- a/web-console/package.json +++ b/web-console/package.json @@ -42,11 +42,13 @@ "druid-console": "^0.0.2", "es6-shim": "^0.35.5", "es7-shim": "^6.0.0", + "file-saver": "^2.0.1", "hjson": "^3.1.2", "lodash.debounce": "^4.0.8", "numeral": "^2.0.6", "react": "^16.8.6", "react-ace": "^6.4.0", + "react-copy-to-clipboard": "^5.0.1", "react-dom": "^16.8.6", "react-router": "^5.0.0", "react-router-dom": "^5.0.0", @@ -56,11 +58,13 @@ "devDependencies": { "@types/classnames": "^2.2.7", "@types/d3-array": "^2.0.0", + "@types/file-saver": "^2.0.0", "@types/hjson": "^2.4.1", "@types/jest": "^24.0.11", "@types/lodash.debounce": "^4.0.6", "@types/node": "^11.13.4", "@types/numeral": "^0.0.25", + "@types/react-copy-to-clipboard": "^4.2.6", "@types/react-dom": "^16.8.4", "@types/react-router-dom": "^4.3.2", "@types/react-table": "^6.8.1", diff --git a/web-console/src/bootstrap/react-table-custom-pagination.tsx b/web-console/src/bootstrap/react-table-custom-pagination.tsx index a55cf5138a19..7225fb962e47 100644 --- a/web-console/src/bootstrap/react-table-custom-pagination.tsx +++ b/web-console/src/bootstrap/react-table-custom-pagination.tsx @@ -100,7 +100,7 @@ export class ReactTableCustomPagination extends React.Component +
+
+