diff --git a/scripts/npm_webpack_win.bat b/scripts/npm_webpack_win.bat index 1257ed04f..c1bb2f7cc 100644 --- a/scripts/npm_webpack_win.bat +++ b/scripts/npm_webpack_win.bat @@ -1,5 +1,3 @@ -cd ../src/FilterLists.Web call npm install call npx webpack --config webpack.config.vendor.js -call npx webpack --config webpack.config.js -PAUSE \ No newline at end of file +call npx webpack --config webpack.config.js \ No newline at end of file diff --git a/src/FilterLists.Web/ClientApp/components/Home.tsx b/src/FilterLists.Web/ClientApp/components/Home.tsx index 9bc5fd686..ea23beadc 100644 --- a/src/FilterLists.Web/ClientApp/components/Home.tsx +++ b/src/FilterLists.Web/ClientApp/components/Home.tsx @@ -92,6 +92,20 @@ export class Home extends React.Component, IHomeState> { sortMethod: (a: any, b: any) => a.toUpperCase() > b.toUpperCase() ? 1 : -1, Cell: (cell: any) =>

{cell.value}

}, + { + Header: "Tags", + accessor: "tags", + filterable: true, + filterMethod: (filter: any, row: any) => row[filter.id].map((e: any) => e.name).join() + .toUpperCase().includes(filter.value.toUpperCase()), + sortMethod: (a: any, b: any) => a.join().toUpperCase() > b.join().toUpperCase() ? 1 : -1, + Cell: (cell: any) =>
{cell.value.map( + (e: any) => {e.name}) + }
, + width: 100, + headerClassName: "d-none d-lg-block", + className: "d-none d-lg-block" + }, { Header: "Langs.", accessor: "languages", @@ -100,7 +114,8 @@ export class Home extends React.Component, IHomeState> { .map((e: any) => e.name.concat(e.iso6391)).join().toUpperCase() .includes(filter.value.toUpperCase()), sortMethod: (a: any, b: any) => a.join().toUpperCase() > b.join().toUpperCase() ? 1 : -1, - Cell: (cell: any) =>
{cell.value.map((e: any) => e.iso6391).join(", ")}
, + Cell: (cell: any) => +
{cell.value.map((e: any) => e.iso6391).join(", ")}
, style: { whiteSpace: "inherit" }, width: 60, headerClassName: "d-none d-lg-block", @@ -166,6 +181,7 @@ interface IListDto { id: number; name: string; languages: IListLanguageDto[]; + tags: IListTagDto[]; updatedDate: string; viewUrl: string; } @@ -175,6 +191,11 @@ interface IListLanguageDto { iso6391: string; } +interface IListTagDto { + name: string; + description: string; +} + function SubscribeUrl(props: any) { return https://github.com/collinbarrett/FilterLists/raw/master/imgs/icon_filterlists.png https://github.com/collinbarrett/FilterLists git + true @@ -68,4 +69,8 @@ + + + + \ No newline at end of file diff --git a/src/FilterLists.Web/npm-shrinkwrap.json b/src/FilterLists.Web/npm-shrinkwrap.json index d85fe0ed0..c8c699789 100644 --- a/src/FilterLists.Web/npm-shrinkwrap.json +++ b/src/FilterLists.Web/npm-shrinkwrap.json @@ -7,7 +7,7 @@ "@types/history": { "version": "4.7.0", "resolved": "https://registry.npmjs.org/@types/history/-/history-4.7.0.tgz", - "integrity": "sha512-1A/RUAX4VtmGzNTGLSfmiPxQ3XwUSe/1YN4lW9GRa+j307oFK6MPjhlvw6jEHDodUBIvSvrA7/iHDchr5LS+0Q==", + "integrity": "sha1-L6xRBQxo99b5bFqvxjETJSL0qj8=", "dev": true }, "@types/node": { @@ -56,7 +56,7 @@ "@types/react-router": { "version": "4.0.30", "resolved": "https://registry.npmjs.org/@types/react-router/-/react-router-4.0.30.tgz", - "integrity": "sha512-zWt5RpWy7x7semeBIHqLZ31A1Tle0jb3R/KD2wguZqO43DjP4n8kYsH7UIpve6I4hzlSObnoIieDcp5qfyKwaQ==", + "integrity": "sha1-ZLzYhr79H5MnebdNF5VK2++3o6c=", "dev": true, "requires": { "@types/history": "*", @@ -66,7 +66,7 @@ "@types/react-router-dom": { "version": "4.3.0", "resolved": "https://registry.npmjs.org/@types/react-router-dom/-/react-router-dom-4.3.0.tgz", - "integrity": "sha512-vaq+nVUGyMnIhAl+svKHmfqhCoCNe5lf1UWmvVcsBlAcX0kznF25711DNFQ7B8/QZ+ZF1zzGq1dIi9bzxIu85w==", + "integrity": "sha1-yReW0C3rOlskvBxdtKJV3w0YuLU=", "dev": true, "requires": { "@types/history": "*", @@ -85,7 +85,7 @@ "@types/webpack-env": { "version": "1.13.6", "resolved": "https://registry.npmjs.org/@types/webpack-env/-/webpack-env-1.13.6.tgz", - "integrity": "sha512-5Th3OsZ4gTRdr9Mho83BQ23cex4sRhOR4XTG+m+cJc0FhtUBK9Vn62hBJ+pnQYnSxoPOsKoAPOx6FcphxBC8ng==", + "integrity": "sha1-Eo0WhafDTTHtFwEPyH1qEsHeaXY=", "dev": true }, "acorn": { @@ -509,7 +509,7 @@ "bootstrap": { "version": "4.1.3", "resolved": "https://registry.npmjs.org/bootstrap/-/bootstrap-4.1.3.tgz", - "integrity": "sha512-rDFIzgXcof0jDyjNosjv4Sno77X4KuPeFxG2XZZv1/Kc8DRVGVADdoQyyOVDwPqL36DDmtCQbrpMCqvpPLJQ0w==", + "integrity": "sha1-DrNxryyESOjCEEEdDLgkpkCaEr4=", "dev": true }, "brace-expansion": { @@ -1765,7 +1765,7 @@ "extract-text-webpack-plugin": { "version": "3.0.2", "resolved": "https://registry.npmjs.org/extract-text-webpack-plugin/-/extract-text-webpack-plugin-3.0.2.tgz", - "integrity": "sha512-bt/LZ4m5Rqt/Crl2HiKuAl/oqg0psx1tsTLkvWbJen1CtD+fftkZhMaQ9HOtY2gWsl2Wq+sABmMVi9z3DhKWQQ==", + "integrity": "sha1-XwQ+qgL5dQqSWLeMCm4NwUCPsvc=", "dev": true, "requires": { "async": "^2.4.1", @@ -1816,7 +1816,7 @@ "file-loader": { "version": "1.1.11", "resolved": "https://registry.npmjs.org/file-loader/-/file-loader-1.1.11.tgz", - "integrity": "sha512-TGR4HU7HUsGg6GCOPJnFk06RhWgEWFLAGWiT6rcD+GRC2keU3s9RGJ+b3Z6/U73jwwNb2gKLJ7YCrp+jvU4ALg==", + "integrity": "sha1-b+iGRJsPKpNuQ8q6rAzb+zaVBvg=", "dev": true, "requires": { "loader-utils": "^1.0.2", @@ -2096,7 +2096,6 @@ "version": "1.0.5", "bundled": true, "dev": true, - "optional": true, "requires": { "delayed-stream": "~1.0.0" } @@ -2159,8 +2158,7 @@ "delayed-stream": { "version": "1.0.0", "bundled": true, - "dev": true, - "optional": true + "dev": true }, "delegates": { "version": "1.0.0", @@ -2206,9 +2204,9 @@ "dev": true, "optional": true, "requires": { - "asynckit": "0.4.0", - "combined-stream": "1.0.5", - "mime-types": "2.1.15" + "asynckit": "^0.4.0", + "combined-stream": "^1.0.5", + "mime-types": "^2.1.12" } }, "fs.realpath": { @@ -2301,8 +2299,8 @@ "dev": true, "optional": true, "requires": { - "ajv": "4.11.8", - "har-schema": "1.0.5" + "ajv": "^4.9.1", + "har-schema": "^1.0.5" } }, "has-unicode": { @@ -2363,7 +2361,7 @@ "bundled": true, "dev": true, "requires": { - "number-is-nan": "1.0.1" + "number-is-nan": "^1.0.0" } }, "is-typedarray": { @@ -2448,16 +2446,14 @@ "mime-db": { "version": "1.27.0", "bundled": true, - "dev": true, - "optional": true + "dev": true }, "mime-types": { "version": "2.1.15", "bundled": true, "dev": true, - "optional": true, "requires": { - "mime-db": "1.27.0" + "mime-db": "~1.27.0" } }, "minimatch": { @@ -2465,7 +2461,7 @@ "bundled": true, "dev": true, "requires": { - "brace-expansion": "1.1.7" + "brace-expansion": "^1.1.7" } }, "minimist": { @@ -2531,8 +2527,7 @@ "number-is-nan": { "version": "1.0.1", "bundled": true, - "dev": true, - "optional": true + "dev": true }, "oauth-sign": { "version": "0.8.2", @@ -2999,7 +2994,7 @@ "history": { "version": "4.7.2", "resolved": "https://registry.npmjs.org/history/-/history-4.7.2.tgz", - "integrity": "sha512-1zkBRWW6XweO0NBcjiphtVJVsIQ+SXF29z9DVkceeaSLVMFXHool+fdCZD4spDCfZJCILPILc3bm7Bc+HRi0nA==", + "integrity": "sha1-IrXH8xYzxbgCHH9KipVKwTnujVs=", "dev": true, "requires": { "invariant": "^2.2.1", @@ -3034,7 +3029,7 @@ "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==", + "integrity": "sha1-xZA89AnA39kI84jmGdhrnBF0y0c=", "dev": true }, "hosted-git-info": { @@ -3172,7 +3167,7 @@ "invariant": { "version": "2.2.4", "resolved": "https://registry.npmjs.org/invariant/-/invariant-2.2.4.tgz", - "integrity": "sha512-phJfQVBuaJM5raOpJjSfkiD6BpbCE4Ns//LaXl6wGYtUBY83nWS6Rf9tXm2e8VaK60JEjYldbPif/A2B1C2gNA==", + "integrity": "sha1-YQ88ksk1nOHbYW5TgAjSP/NRWOY=", "dev": true, "requires": { "loose-envify": "^1.0.0" @@ -3410,7 +3405,7 @@ "jquery": { "version": "3.3.1", "resolved": "https://registry.npmjs.org/jquery/-/jquery-3.3.1.tgz", - "integrity": "sha512-Ubldcmxp5np52/ENotGxlLe6aGMvmF4R8S6tZjsP6Knsaxd/xp3Zrh50cG93lR6nPXyUFwzN3ZSOQI0wRJNdGg==", + "integrity": "sha1-lYzinoHJeQ8xvneS311NlfxX+8o=", "dev": true }, "js-base64": { @@ -3444,7 +3439,7 @@ "json-loader": { "version": "0.5.7", "resolved": "https://registry.npmjs.org/json-loader/-/json-loader-0.5.7.tgz", - "integrity": "sha512-QLPs8Dj7lnf3e3QYS1zkCo+4ZwqOiF9d/nZnYozTISxXWCfNs9yuky5rJw4/W34s7POaNlbZmQGaB5NiXCbP4w==", + "integrity": "sha1-3KFKcCNf+C8KyaOr62DTN6NlGF0=", "dev": true }, "json-schema-traverse": { @@ -4795,7 +4790,7 @@ "promise": { "version": "7.3.1", "resolved": "https://registry.npmjs.org/promise/-/promise-7.3.1.tgz", - "integrity": "sha512-nolQXZ/4L+bP/UGlkfaIujX9BKxGwmQ9OT4mOt5yvy8iK1h3wqTEJCijzGANTCCl9nWjY41juyAn2K3Q1hLLTg==", + "integrity": "sha1-BktyYCsY+Q8pGSuLG8QY/9Hr078=", "dev": true, "requires": { "asap": "~2.0.3" @@ -4919,7 +4914,7 @@ "react": { "version": "16.4.2", "resolved": "https://registry.npmjs.org/react/-/react-16.4.2.tgz", - "integrity": "sha512-dMv7YrbxO4y2aqnvA7f/ik9ibeLSHQJTI6TrYAenPSaQ6OXfb+Oti+oJiy8WBxgRzlKatYqtCjphTgDSCEiWFg==", + "integrity": "sha1-LNkBVOOp2d2NopkRSf3KPCYOEp8=", "dev": true, "requires": { "fbjs": "^0.8.16", @@ -4931,7 +4926,7 @@ "react-dom": { "version": "16.4.2", "resolved": "https://registry.npmjs.org/react-dom/-/react-dom-16.4.2.tgz", - "integrity": "sha512-Usl73nQqzvmJN+89r97zmeUpQDKDlh58eX6Hbs/ERdDHzeBzWy+ENk7fsGQ+5KxArV1iOFPT46/VneklK9zoWw==", + "integrity": "sha1-Sv7VaWifLFYdK42guBlmnDigvaQ=", "dev": true, "requires": { "fbjs": "^0.8.16", @@ -4963,7 +4958,7 @@ "react-router": { "version": "4.3.1", "resolved": "https://registry.npmjs.org/react-router/-/react-router-4.3.1.tgz", - "integrity": "sha512-yrvL8AogDh2X42Dt9iknk4wF4V8bWREPirFfS9gLU1huk6qK41sg7Z/1S81jjTrGHxa3B8R3J6xIkDAA6CVarg==", + "integrity": "sha1-qtpK7xTICcsuaGsFzuR0IjRQbE4=", "dev": true, "requires": { "history": "^4.7.2", @@ -4978,7 +4973,7 @@ "react-router-dom": { "version": "4.3.1", "resolved": "https://registry.npmjs.org/react-router-dom/-/react-router-dom-4.3.1.tgz", - "integrity": "sha512-c/MlywfxDdCp7EnB7YfPMOfMD3tOtIjrQlj/CKfNMBxdmpJP8xcz5P/UAFn3JbnQCNUxsHyVVqllF9LhgVyFCA==", + "integrity": "sha1-TCYZ/CTE+ofJ/Rj0+0pD/mP71cY=", "dev": true, "requires": { "history": "^4.7.2", @@ -5155,7 +5150,7 @@ "resolve-pathname": { "version": "2.2.0", "resolved": "https://registry.npmjs.org/resolve-pathname/-/resolve-pathname-2.2.0.tgz", - "integrity": "sha512-bAFz9ld18RzJfddgrO2e/0S2O81710++chRMUxHjXOYKF6jTAMrUNZrEZ1PvV0zlhfjidm08iRPdTLPno1FuRg==", + "integrity": "sha1-fpriHtgV/WOrGJre7mTcgx7vqHk=", "dev": true }, "resolve-url": { @@ -6260,7 +6255,7 @@ "value-equal": { "version": "0.4.0", "resolved": "https://registry.npmjs.org/value-equal/-/value-equal-0.4.0.tgz", - "integrity": "sha512-x+cYdNnaA3CxvMaTX0INdTCN8m8aF2uY9BvEqmxuYp8bL09cs/kWVQPVGcA35fMktdOsP69IgU7wFj/61dJHEw==", + "integrity": "sha1-xb3S9U7gk8BIOdcc4uR1imiQq8c=", "dev": true }, "vendors": { @@ -6281,7 +6276,7 @@ "warning": { "version": "4.0.1", "resolved": "https://registry.npmjs.org/warning/-/warning-4.0.1.tgz", - "integrity": "sha512-rAVtTNZw+cQPjvGp1ox0XC5Q2IBFyqoqh+QII4J/oguyu83Bax1apbo2eqB8bHRS+fqYUBagys6lqUoVwKSmXQ==", + "integrity": "sha1-Zs43a3+/6KiHwivfDnNJ1z05d0U=", "dev": true, "requires": { "loose-envify": "^1.0.0" @@ -6412,7 +6407,7 @@ "webpack-hot-middleware": { "version": "2.22.3", "resolved": "https://registry.npmjs.org/webpack-hot-middleware/-/webpack-hot-middleware-2.22.3.tgz", - "integrity": "sha512-mrG3bJGX4jgWbrpY0ghIpPgCmNhZziFMBJBmZfpIe6K/P1rWPkdkbGihbCUIufgQ8ruX4txE5/CKSeFNzDcYOw==", + "integrity": "sha1-rmAl1X1lYIXFtxa0TgvA95Z4d3Y=", "dev": true, "requires": { "ansi-html": "0.0.7",