diff --git a/changelog.md b/changelog.md index 8381a8d9a0..c666d3d7a0 100644 --- a/changelog.md +++ b/changelog.md @@ -1,5 +1,11 @@ # changelog +### Friday, 25/1/2021 - v2.10.7 +- Cover Page snippet now flips left-right page numbering. +- Added instructions for [installing on a FreeBSD Jail](https://github.com/naturalcrit/homebrewery/blob/master/README.FREEBSD.md). +- Fix for box-shadows breaking across columns.
(Thanks @G-Ambatte for all of these!) +- Small user interface tweaks (Thanks @Ericsheid) + ### Friday, 02/1/2021 - v2.10.6 - Fixed punctuation for usernames ending with 's' on the user page. (Thanks @AlexeySachkov) - Fixed server crashes due to excessive long lines in brews @@ -27,6 +33,9 @@ ### Wednesday, 07/10/2020 - v2.10.0 - Google Drive integration -- Sign in with your Google account to link it with your Homebrewery profile. A new button in the Edit page will let you transfer your file to your personal Google Drive storage, and Google will keep a backup of each version! No more lost work surprises! +``` +``` + ### Friday, 28/08/2020 - v2.9.2 - Many dependency updates - Finally fixed this changelog page to not run off the edge :P @@ -37,9 +46,6 @@ ### Wednesday, 20/05/2020 - v2.9.0 - Major refactoring of site backend to work with updated dependencies for security (should be invisible to users) -``` -``` - ### Wednesday, 11/03/2020 - v2.8.2 - Fixed delete button removing everyone's copy for brews with multiple authors - Compressed homebrew text in database @@ -73,7 +79,9 @@ ### Saturday, 18/02/2017 - v2.7.2 - Adding ability to delete a brew from the user page, incase the user creates a brew that makes the edit page unrender-able. (re:309) -### Thursday, 19/01/2017 - v2.7.0 +\page + +### Thursday, 19/01/2017 - v2.7.1 - Fixed saving multiple authors and multiple systems on brew metadata (thanks u/PalaNolho re:282) - Adding in line highlight for new pages - Added in a simple brew lookup for admin @@ -81,8 +89,6 @@ ### Saturday, 14/01/2017 - v2.7.0 - Added a new Render Warning overlay. It detects situations where the brew may not be rendering correctly (wrong browser, browser is zoomed in...) and let's the user know -\page - ### Sunday, 25/12/2016 - v2.7.0 - Switching over to using Vitreum v4 - Removed gulp, all tasks are run through npm scripts @@ -115,6 +121,10 @@ - Added a hover tooltip to fully read the brew description - Made the brew items take up only 25% allowing you to view more per row. + +``` +``` + ### Wednesday, 23/11/2016 - v2.5.0 - Metadata can now be added to brews - Added a metadata editor onto the edit and new pages @@ -125,8 +135,6 @@ - Added a new user page to see others published brews, as well as all of your own brews. - Added a new nav item for accessing your profile and logging in -``` -``` ### Monday, 14/11/2016 - Updated snippet bar style @@ -163,11 +171,12 @@ - Allows adding in hyperlinks to specific pages - Even works after you print to pdf! -### Tuesday, 07/06/2016 - v2.2.2 -- Fixed bug with new markdown lexer and aprser not working on print page \page +### Tuesday, 07/06/2016 - v2.2.2 +- Fixed bug with new markdown lexer and aprser not working on print page + ### Sunday, 05/06/2016 - v2.2.1 - Adding in a new Class table div block. The old Class table block used weird stacking of HTML elements, resulting is difficult to control behaviour and poor interactiosn with the rest of the page. This new block is much easier to style and work with. - Added in a new wide table snippet @@ -188,12 +197,13 @@ - Updated the issue template for (hopefully) better reporting - Added suggestion to use chrome while PDF printing -### Wednesday, 25/05/2016 -v2.0.5 -- The class table generators have the proper ability score improvement progression. ``` ``` +### Wednesday, 25/05/2016 -v2.0.5 +- The class table generators have the proper ability score improvement progression. + ### Tuesday, 24/05/2016 - v2.0.4 - Fixed extra wide monster stat blocks sometimes only being one column - The class table generators now follow the proper progression from the PHB (thakns u/IrishBandit) diff --git a/client/homebrew/editor/snippetbar/snippetbar.jsx b/client/homebrew/editor/snippetbar/snippetbar.jsx index 18fcdb9afd..c347e397f8 100644 --- a/client/homebrew/editor/snippetbar/snippetbar.jsx +++ b/client/homebrew/editor/snippetbar/snippetbar.jsx @@ -42,9 +42,10 @@ const Snippetbar = createClass({ renderMetadataButton : function(){ if(!this.props.showMetaButton) return; - return
- + + Properties
; }, @@ -86,7 +87,7 @@ const SnippetGroup = createClass({ }, render : function(){ - return
+ return
{this.props.groupName} diff --git a/client/homebrew/editor/snippetbar/snippetbar.less b/client/homebrew/editor/snippetbar/snippetbar.less index 4a2f812ab4..e84d373b58 100644 --- a/client/homebrew/editor/snippetbar/snippetbar.less +++ b/client/homebrew/editor/snippetbar/snippetbar.less @@ -4,44 +4,33 @@ position : relative; height : @height; background-color : #ddd; - .toggleMeta{ - position : absolute; - top : 0px; - right : 0px; - height : @height; - width : @height; - cursor : pointer; - line-height : @height; - text-align : center; - .tooltipLeft("Edit Brew Metadata"); - &:hover, &.selected{ - background-color : #999; - } - } - .snippetGroup{ - display : inline-block; + .snippetBarButton{ height : @height; + line-height : @height; + display : inline-block; padding : 0px 5px; - cursor : pointer; - font-size : 0.6em; font-weight : 800; - line-height : @height; + font-size : 0.625em; text-transform : uppercase; - border-right : 1px solid black; - i{ - vertical-align : middle; - margin-right : 3px; - font-size : 1.2em; - } + cursor : pointer; &:hover, &.selected{ background-color : #999; } - .text{ - line-height : @height; - .groupName{ - font-size : 10px; - } + i{ + vertical-align : middle; + margin-right : 3px; + font-size : 1.4em; } + } + .toggleMeta{ + position : absolute; + top : 0px; + right : 0px; + border-left : 1px solid black; + .tooltipLeft("Edit Brew Properties"); + } + .snippetGroup{ + border-right : 1px solid black; &:hover{ .dropdown{ visibility : visible; @@ -62,7 +51,7 @@ font-size : 10px; i{ margin-right : 8px; - font-size : 13px; + font-size : 1.2em; } &:hover{ background-color : #999; @@ -70,4 +59,4 @@ } } } -} \ No newline at end of file +} diff --git a/client/homebrew/phbStyle/phb.style.less b/client/homebrew/phbStyle/phb.style.less index 1b4df58fce..95bf5f23b8 100644 --- a/client/homebrew/phbStyle/phb.style.less +++ b/client/homebrew/phbStyle/phb.style.less @@ -189,6 +189,7 @@ body { border-image : @noteBorderImage 11; border-image-outset : 9px 0px; box-shadow : 1px 4px 14px #888; + -webkit-transform : translateZ(0); //Prevents shadows from breaking across columns p, ul{ font-size : 0.352cm; line-height : 1.1em; diff --git a/package-lock.json b/package-lock.json index d50e090eff..daee93bbd3 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,6 +1,6 @@ { "name": "homebrewery", - "version": "2.10.6", + "version": "2.10.7", "lockfileVersion": 1, "requires": true, "dependencies": { @@ -1110,9 +1110,9 @@ } }, "@eslint/eslintrc": { - "version": "0.2.2", - "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-0.2.2.tgz", - "integrity": "sha512-EfB5OHNYp1F4px/LI/FEnGylop7nOqkQ1LRzCM0KccA2U8tvV8w01KBv37LbO7nW4H+YhKyo2LcJhRwjjV17QQ==", + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-0.3.0.tgz", + "integrity": "sha512-1JTKgrOKAHVivSvOYw+sJOunkBjUOvjqWk1DPja7ZFhIS2mX/4EgTT8M7eTK9jrKhL/FvXXEbQwIs3pg1xp3dg==", "dev": true, "requires": { "ajv": "^6.12.4", @@ -1122,7 +1122,7 @@ "ignore": "^4.0.6", "import-fresh": "^3.2.1", "js-yaml": "^3.13.1", - "lodash": "^4.17.19", + "lodash": "^4.17.20", "minimatch": "^3.0.4", "strip-json-comments": "^3.1.1" }, @@ -1186,9 +1186,9 @@ } }, "@types/node": { - "version": "14.14.19", - "resolved": "https://registry.npmjs.org/@types/node/-/node-14.14.19.tgz", - "integrity": "sha512-4nhBPStMK04rruRVtVc6cDqhu7S9GZai0fpXgPXrFpcPX6Xul8xnrjSdGB4KPBVYG/R5+fXWdCM8qBoiULWGPQ==" + "version": "14.14.22", + "resolved": "https://registry.npmjs.org/@types/node/-/node-14.14.22.tgz", + "integrity": "sha512-g+f/qj/cNcqKkc3tFqlXOYjrmZA+jNBiDzbP3kH+B+otKFqAdPgVTGP1IeKRdMml/aE69as5S4FqtxAbl+LaMw==" }, "JSONStream": { "version": "1.3.5", @@ -2202,9 +2202,9 @@ } }, "codemirror": { - "version": "5.59.1", - "resolved": "https://registry.npmjs.org/codemirror/-/codemirror-5.59.1.tgz", - "integrity": "sha512-d0SSW/PCCD4LoSCBPdnP0BzmZB1v3emomCUtVlIWgZHJ06yVeBOvBtOH7vYz707pfAvEeWbO9aP6akh8vl1V3w==" + "version": "5.59.2", + "resolved": "https://registry.npmjs.org/codemirror/-/codemirror-5.59.2.tgz", + "integrity": "sha512-/D5PcsKyzthtSy2NNKCyJi3b+htRkoKv3idswR/tR6UAvMNKA7SrmyZy6fOONJxSRs1JlUWEDAbxqfdArbK8iA==" }, "collection-visit": { "version": "1.0.0", @@ -2560,9 +2560,9 @@ "integrity": "sha1-3zrhmayt+31ECqrgsp4icrJOxhk=" }, "denque": { - "version": "1.4.1", - "resolved": "https://registry.npmjs.org/denque/-/denque-1.4.1.tgz", - "integrity": "sha512-OfzPuSZKGcgr96rf1oODnfjqBFmr1DVoc/TrItj3Ohe0Ah1C5WX5Baquw/9U9KovnQ88EqmJbD66rKYUQYN1tQ==" + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/denque/-/denque-1.5.0.tgz", + "integrity": "sha512-CYiCSgIF1p6EUByQPlGkKnP1M9g0ZV3qMIrqMqZqdwazygIA/YP2vrbcyl1h/WppKJTdl1F85cXIle+394iDAQ==" }, "depd": { "version": "1.1.2", @@ -2796,13 +2796,13 @@ "integrity": "sha1-Aljq5NPQwJdN4cFpGI7wBR0dGYg=" }, "eslint": { - "version": "7.17.0", - "resolved": "https://registry.npmjs.org/eslint/-/eslint-7.17.0.tgz", - "integrity": "sha512-zJk08MiBgwuGoxes5sSQhOtibZ75pz0J35XTRlZOk9xMffhpA9BTbQZxoXZzOl5zMbleShbGwtw+1kGferfFwQ==", + "version": "7.18.0", + "resolved": "https://registry.npmjs.org/eslint/-/eslint-7.18.0.tgz", + "integrity": "sha512-fbgTiE8BfUJZuBeq2Yi7J3RB3WGUQ9PNuNbmgi6jt9Iv8qrkxfy19Ds3OpL1Pm7zg3BtTVhvcUZbIRQ0wmSjAQ==", "dev": true, "requires": { "@babel/code-frame": "^7.0.0", - "@eslint/eslintrc": "^0.2.2", + "@eslint/eslintrc": "^0.3.0", "ajv": "^6.10.0", "chalk": "^4.0.0", "cross-spawn": "^7.0.2", @@ -2826,7 +2826,7 @@ "js-yaml": "^3.13.1", "json-stable-stringify-without-jsonify": "^1.0.1", "levn": "^0.4.1", - "lodash": "^4.17.19", + "lodash": "^4.17.20", "minimatch": "^3.0.4", "natural-compare": "^1.4.0", "optionator": "^0.9.1", @@ -3152,9 +3152,9 @@ } }, "express-static-gzip": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/express-static-gzip/-/express-static-gzip-2.1.0.tgz", - "integrity": "sha512-XGozfjgsfVKBc8lQmPco9zd1+sK9Wy1ZPEAYtH8E34FbBr5BFp2HV+V1PpmIYHaWg8+ecLl/JnQkREbtPSJyxQ==", + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/express-static-gzip/-/express-static-gzip-2.1.1.tgz", + "integrity": "sha512-J+xSzdr5lj1cIuZey0ac6nUv22VE7GrdwTERqE8DsrqSXLm1zjeYWTVbK37t8exGwobxBXeWU2bM7eSMjBR4YA==", "requires": { "serve-static": "^1.14.1" } @@ -3356,14 +3356,14 @@ "integrity": "sha1-PYyt2Q2XZWn6g1qx+OSyOhBWBac=" }, "fs-extra": { - "version": "9.0.1", - "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-9.0.1.tgz", - "integrity": "sha512-h2iAoN838FqAFJY2/qVpzFXy+EBxfVE220PalAqQLDVsFOHLJrZvut5puAbCdNv6WJk+B8ihI+k0c7JK5erwqQ==", + "version": "9.1.0", + "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-9.1.0.tgz", + "integrity": "sha512-hcg3ZmepS30/7BSFqRvoo3DOMQu7IjqxO5nCDt+zM9XWjb33Wg7ziNT+Qvqbuc3+gWpzO02JubVyk2G4Zvo1OQ==", "requires": { "at-least-node": "^1.0.0", "graceful-fs": "^4.2.0", "jsonfile": "^6.0.1", - "universalify": "^1.0.0" + "universalify": "^2.0.0" } }, "fs.realpath": { @@ -3486,9 +3486,9 @@ } }, "google-auth-library": { - "version": "6.1.3", - "resolved": "https://registry.npmjs.org/google-auth-library/-/google-auth-library-6.1.3.tgz", - "integrity": "sha512-m9mwvY3GWbr7ZYEbl61isWmk+fvTmOt0YNUfPOUY2VH8K5pZlAIWJjxEi0PqR3OjMretyiQLI6GURMrPSwHQ2g==", + "version": "6.1.4", + "resolved": "https://registry.npmjs.org/google-auth-library/-/google-auth-library-6.1.4.tgz", + "integrity": "sha512-q0kYtGWnDd9XquwiQGAZeI2Jnglk7NDi0cChE4tWp6Kpo/kbqnt9scJb0HP+/xqt03Beqw/xQah1OPrci+pOxw==", "requires": { "arrify": "^2.0.0", "base64-js": "^1.3.0", @@ -3510,9 +3510,9 @@ } }, "googleapis": { - "version": "66.0.0", - "resolved": "https://registry.npmjs.org/googleapis/-/googleapis-66.0.0.tgz", - "integrity": "sha512-jdEleRoyo/AeJZjKGC7Z2mHgochn2vR2JKqey6kydRkIBmCZxoQKLisRR4H8CRYZeEd6+c8Ns/LzS1S7qUjoFw==", + "version": "67.0.0", + "resolved": "https://registry.npmjs.org/googleapis/-/googleapis-67.0.0.tgz", + "integrity": "sha512-luhulHrk42DruR+c12W2sY2rrEVoKVdjaZDuHWSxcp1qz+VxvWQpuiK2QDLCXmo36/VFPMaa+Y7rRUR+Qqzd7w==", "requires": { "google-auth-library": "^6.0.0", "googleapis-common": "^4.4.1" @@ -3566,9 +3566,9 @@ }, "dependencies": { "mime": { - "version": "2.4.6", - "resolved": "https://registry.npmjs.org/mime/-/mime-2.4.6.tgz", - "integrity": "sha512-RZKhC3EmpBchfTGBVb8fb+RL2cWyw/32lshnsETttkBAyAUXSGHxbEJWWRXc751DrIxG1q04b8QwMbAwkRPpUA==" + "version": "2.4.7", + "resolved": "https://registry.npmjs.org/mime/-/mime-2.4.7.tgz", + "integrity": "sha512-dhNd1uA2u397uQk3Nv5LM4lm93WYDUXFn3Fu291FJerns4jyTudqhIWe4W04YLy7Uk1tm1Ore04NpjRvQp/NPA==" } } }, @@ -4209,12 +4209,12 @@ } }, "jsonfile": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-6.0.1.tgz", - "integrity": "sha512-jR2b5v7d2vIOust+w3wtFKZIfpC2pnRmFAhAC/BuweZFQR8qZzxH1OyrQ10HmdVYiXWkYUqPVsz91cG7EL2FBg==", + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-6.1.0.tgz", + "integrity": "sha512-5dgndWOriYSm5cnYaJNhalLNDKOqFwyDB/rr1E9ZsGciGvKPs8R2xYGCacuf3z6K1YKDz182fd+fY3cn3pMqXQ==", "requires": { "graceful-fs": "^4.1.6", - "universalify": "^1.0.0" + "universalify": "^2.0.0" } }, "jsonify": { @@ -4704,16 +4704,16 @@ } }, "mongoose": { - "version": "5.11.9", - "resolved": "https://registry.npmjs.org/mongoose/-/mongoose-5.11.9.tgz", - "integrity": "sha512-lmG6R64jtGGxqtn88BkkY+v470LUfGgyTKUyjswQ5c01GNgQvxA0kQd8h+tm0hZb639hKNRxL9ZBQlLleUpuIQ==", + "version": "5.11.13", + "resolved": "https://registry.npmjs.org/mongoose/-/mongoose-5.11.13.tgz", + "integrity": "sha512-rXbaxSJfLnKKO2RTm8MKt65glrtfKDc4ATEb6vEbbzsVGCiLut753K5axdpyvE7KeTH7GOh4LzmuQLOvaaWOmA==", "requires": { "@types/mongodb": "^3.5.27", "bson": "^1.1.4", "kareem": "2.3.2", "mongodb": "3.6.3", "mongoose-legacy-pluralize": "1.0.2", - "mpath": "0.8.1", + "mpath": "0.8.3", "mquery": "3.2.3", "ms": "2.1.2", "regexp-clone": "1.0.0", @@ -4740,9 +4740,9 @@ "integrity": "sha512-Yo/7qQU4/EyIS8YDFSeenIvXxZN+ld7YdV9LqFVQJzTLye8unujAWPZ4NWKfFA+RNjh+wvTWKY9Z3E5XM6ZZiQ==" }, "mpath": { - "version": "0.8.1", - "resolved": "https://registry.npmjs.org/mpath/-/mpath-0.8.1.tgz", - "integrity": "sha512-norEinle9aFc05McBawVPwqgFZ7npkts9yu17ztIVLwPwO9rq0OTp89kGVTqvv5rNLMz96E5iWHpVORjI411vA==" + "version": "0.8.3", + "resolved": "https://registry.npmjs.org/mpath/-/mpath-0.8.3.tgz", + "integrity": "sha512-eb9rRvhDltXVNL6Fxd2zM9D4vKBxjVVQNLNijlj7uoXUy19zNDsIif5zR+pWmPCWNKwAtqyo4JveQm4nfD5+eA==" }, "mquery": { "version": "3.2.3", @@ -4812,9 +4812,9 @@ "dev": true }, "nconf": { - "version": "0.11.0", - "resolved": "https://registry.npmjs.org/nconf/-/nconf-0.11.0.tgz", - "integrity": "sha512-c4W7QqYF6p5BC7J/eVTOvtUlQgvS5CgbJ11xgjhSr8yyius7km7xgdIYHkFLR4TWY1HjsFkia/3l5OprGqCHvA==", + "version": "0.11.1", + "resolved": "https://registry.npmjs.org/nconf/-/nconf-0.11.1.tgz", + "integrity": "sha512-2XY+7x3GwkkTnmkEVxsKykg0GUqCAtBZUA87FwbcUSaYBfaGCeVSf+82zap16j93B21J2AhpxrsF57jio36t0w==", "requires": { "async": "^1.4.0", "ini": "^1.3.0", @@ -6418,9 +6418,9 @@ } }, "table": { - "version": "6.0.6", - "resolved": "https://registry.npmjs.org/table/-/table-6.0.6.tgz", - "integrity": "sha512-OInCtPmDNieVBkVFi6C8RwU2S2H0h8mF3e3TQK4nreaUNCpooQUkI+A/KuEkm5FawfhWIfNqG+qfelVVR+V00g==", + "version": "6.0.7", + "resolved": "https://registry.npmjs.org/table/-/table-6.0.7.tgz", + "integrity": "sha512-rxZevLGTUzWna/qBLObOe16kB2RTnnbhciwgPbMMlazz1yZGVEgnZK762xyVdVznhqxrfCeBMmMkgOOaPwjH7g==", "dev": true, "requires": { "ajv": "^7.0.2", @@ -6681,9 +6681,9 @@ } }, "universalify": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/universalify/-/universalify-1.0.0.tgz", - "integrity": "sha512-rb6X1W158d7pRQBg5gkR8uPaSfiids68LTJQYOtEUhoJUWBdaQHsuT/EUduxXYxcrt4r5PJ4fuHW1MHT6p0qug==" + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/universalify/-/universalify-2.0.0.tgz", + "integrity": "sha512-hAZsKq7Yy11Zu1DE0OzWjw7nnLZmJZYTDZZyEFHZdUhV8FkH5MCfoU1XMaxXovpyW5nq5scPqq0ZDP9Zyl04oQ==" }, "unpipe": { "version": "1.0.0", @@ -6752,9 +6752,9 @@ } }, "uri-js": { - "version": "4.4.0", - "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.4.0.tgz", - "integrity": "sha512-B0yRTzYdUCCn9n+F4+Gh4yIDtMQcaJsmYBDsTSG8g/OejKBodLQ2IHfN3bM7jUsRXndopT7OIXWdYqc1fjmV6g==", + "version": "4.4.1", + "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.4.1.tgz", + "integrity": "sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==", "dev": true, "requires": { "punycode": "^2.1.0" diff --git a/package.json b/package.json index f5b7aff26b..15f1083517 100644 --- a/package.json +++ b/package.json @@ -1,7 +1,7 @@ { "name": "homebrewery", "description": "Create authentic looking D&D homebrews using only markdown", - "version": "2.10.6", + "version": "2.10.7", "engines": { "node": "12.16.x" }, @@ -45,21 +45,21 @@ "@babel/preset-react": "^7.12.10", "body-parser": "^1.19.0", "classnames": "^2.2.6", - "codemirror": "^5.59.1", + "codemirror": "^5.59.2", "cookie-parser": "^1.4.5", "create-react-class": "^15.7.0", "express": "^4.17.1", - "express-static-gzip": "2.1.0", - "fs-extra": "9.0.1", - "googleapis": "66.0.0", + "express-static-gzip": "2.1.1", + "fs-extra": "9.1.0", + "googleapis": "67.0.0", "jwt-simple": "^0.5.6", "less": "^3.13.1", "lodash": "^4.17.20", "marked": "^0.3.19", "moment": "^2.29.1", - "mongoose": "^5.11.9", + "mongoose": "^5.11.13", "nanoid": "3.1.20", - "nconf": "^0.11.0", + "nconf": "^0.11.1", "prop-types": "15.7.2", "query-string": "6.13.8", "react": "^16.14.0", @@ -70,7 +70,7 @@ "vitreum": "github:calculuschild/vitreum#21a8e1c9421f1d3a3b474c12f480feb2fbd28c5b" }, "devDependencies": { - "eslint": "^7.16.0", + "eslint": "^7.18.0", "eslint-plugin-react": "^7.22.0", "pico-check": "^2.0.3" } diff --git a/server/homebrew.api.js b/server/homebrew.api.js index 108201d5ec..e934aa8031 100644 --- a/server/homebrew.api.js +++ b/server/homebrew.api.js @@ -3,6 +3,7 @@ const HomebrewModel = require('./homebrew.model.js').model; const router = require('express').Router(); const zlib = require('zlib'); const GoogleActions = require('./googleActions.js'); +const Markdown = require('../shared/naturalcrit/markdown.js'); // const getTopBrews = (cb) => { // HomebrewModel.find().sort({ views: -1 }).limit(5).exec(function(err, brews) { @@ -11,13 +12,8 @@ const GoogleActions = require('./googleActions.js'); // }; const getGoodBrewTitle = (text)=>{ - const titlePos = text.indexOf('# '); - if(titlePos !== -1) { - const ending = text.indexOf('\n', titlePos); - return text.substring(titlePos + 2, ending); - } else { - return _.find(text.split('\n'), (line)=>line); - } + const tokens = Markdown.marked.lexer(text); + return title = (tokens.find((token)=>token.type == 'heading' || token.type == 'paragraph') || { text: 'No Title' }).text; }; const newBrew = (req, res)=>{ diff --git a/shared/naturalcrit/splitPane/splitPane.less b/shared/naturalcrit/splitPane/splitPane.less index 2820f68b11..0eae60f0dd 100644 --- a/shared/naturalcrit/splitPane/splitPane.less +++ b/shared/naturalcrit/splitPane/splitPane.less @@ -15,7 +15,7 @@ height : 100%; width : 12px; cursor : ew-resize; - background-color : #ddd; + background-color : #bbb; text-align : center; .dots{ display : table-cell;