0
0
mirror of https://github.com/naturalcrit/homebrewery.git synced 2026-01-27 13:53:09 +00:00

Compare commits

..

23 Commits

Author SHA1 Message Date
Trevor Buckner
93ff59f670 Up version to v3.7.1 2023-03-09 15:20:28 -05:00
Trevor Buckner
c47fae6061 Merge pull request #2696 from MichielDeMey/feature/trim-google-apis
[Draft] Trimming Google APIs
2023-03-07 14:53:20 -05:00
Trevor Buckner
6ff0999d88 Merge branch 'master' into pr/2696 2023-03-07 14:49:37 -05:00
Trevor Buckner
bfccf833b6 Fix variable name conflict bugs 2023-03-07 14:27:33 -05:00
Michiel De Mey
2a9ac9fa47 Defining default auth at the top 2023-03-07 11:05:11 +01:00
Trevor Buckner
b990af3fc3 Merge pull request #2710 from MichielDeMey/feature/new-google-drive-icon
Updated Google Drive icon
2023-03-06 16:06:04 -05:00
Trevor Buckner
91a31757e5 Merge branch 'master' into feature/new-google-drive-icon 2023-03-06 16:03:19 -05:00
Trevor Buckner
c341bc5db6 Make icon slightly smaller 2023-03-06 16:02:54 -05:00
Trevor Buckner
c88253901a Merge pull request #2127 from lucastucious/v3-fix-note-render
[V3] Fix note render to pdf
2023-03-06 14:12:06 -05:00
Trevor Buckner
164e0a4433 adjust values based on old original box-shadow sizes
Some shadows need to be made bigger to interact with the border-image hanging over the top of the shadow. This just restores those sizes we had before first changing to filter:drop-shadow. See https://github.com/naturalcrit/homebrewery/pull/1577/files
2023-03-06 14:09:59 -05:00
Trevor Buckner
97852c3c03 Merge branch 'master' into pr/2127 2023-03-06 12:54:13 -05:00
Trevor Buckner
4057d7bf84 Merge branch 'master' into pr/2696 2023-03-02 16:48:05 -05:00
Trevor Buckner
ce2298ddd0 Properly comment line so // doesn't appear in page 2023-03-02 10:54:14 -05:00
Michiel De Mey
bbcf415a30 Fixed vertical alignment 2023-03-02 12:56:47 +01:00
Michiel De Mey
e67fc2f775 Moved inline styling to separate stylesheet 2023-03-02 12:40:48 +01:00
Trevor Buckner
cc89ad1c7d Merge pull request #2709 from naturalcrit/Re-remove-layers-from-Blank-Theme
Remove last bits of @Layers. Sigh...
2023-03-01 07:42:23 -05:00
Trevor Buckner
ba11aef038 Remove last bits of @Layers. Sigh... 2023-03-01 07:42:06 -05:00
Michiel De Mey
33f3fb18fa Updated Google Drive icon 2023-03-01 13:38:37 +01:00
Trevor Buckner
240d283536 Merge pull request #2707 from naturalcrit/v3.7.0
Update changelog.md
2023-02-28 22:50:35 -05:00
Trevor Buckner
6af98cd842 Merge pull request #2706 from naturalcrit/v3.7.0
V3.7.0
2023-02-28 22:36:10 -05:00
Michiel De Mey
a6ed05214a Updated auth 2023-02-26 14:53:26 +01:00
Michiel De Mey
27ea00e9ce Trimming Google APIs 2023-02-26 14:34:23 +01:00
LUCASTUCIOUS
2019d91711 [V3] Fix note render to pdf 2022-04-11 22:12:01 +02:00
14 changed files with 29581 additions and 29554 deletions

View File

@@ -80,6 +80,29 @@ pre {
## changelog ## changelog
For a full record of development, visit our [Github Page](https://github.com/naturalcrit/homebrewery). For a full record of development, visit our [Github Page](https://github.com/naturalcrit/homebrewery).
### Thursday 09/02/2023 - v3.7.1
{{taskList
##### Lucastucious (new contributor!)
* [x] Changed `filter: drop-shadow` to `box-shadow` on text boxes, making text selectable in PDFs again.
Fixes issues [#1569](https://github.com/naturalcrit/homebrewery/issues/1569)
{{note
**NOTE:** If you create your PDF on a computer with an old version of Mac Preview (v10 or older) you may see shadows appear as solid gray.
}}
##### MichielDeMey
* [x] Updated the Google Drive icon
* [x] Backend fix to unit tests failing intermittently
##### Calculuschild
* [x] Fix PDF pixelation on CoverPage text outlines
}}
### Tuesday 28/02/2023 - v3.7.0 ### Tuesday 28/02/2023 - v3.7.0
{{taskList {{taskList

Binary file not shown.

Before

Width:  |  Height:  |  Size: 305 KiB

View File

@@ -0,0 +1,8 @@
<svg viewBox="0 0 87.3 78" xmlns="http://www.w3.org/2000/svg">
<path d="m6.6 66.85 3.85 6.65c.8 1.4 1.95 2.5 3.3 3.3l13.75-23.8h-27.5c0 1.55.4 3.1 1.2 4.5z" fill="#0066da"/>
<path d="m43.65 25-13.75-23.8c-1.35.8-2.5 1.9-3.3 3.3l-25.4 44a9.06 9.06 0 0 0 -1.2 4.5h27.5z" fill="#00ac47"/>
<path d="m73.55 76.8c1.35-.8 2.5-1.9 3.3-3.3l1.6-2.75 7.65-13.25c.8-1.4 1.2-2.95 1.2-4.5h-27.502l5.852 11.5z" fill="#ea4335"/>
<path d="m43.65 25 13.75-23.8c-1.35-.8-2.9-1.2-4.5-1.2h-18.5c-1.6 0-3.15.45-4.5 1.2z" fill="#00832d"/>
<path d="m59.8 53h-32.3l-13.75 23.8c1.35.8 2.9 1.2 4.5 1.2h50.8c1.6 0 3.15-.45 4.5-1.2z" fill="#2684fc"/>
<path d="m73.4 26.5-12.7-22c-.8-1.4-1.95-2.5-3.3-3.3l-13.75 23.8 16.15 28h27.45c0-1.55-.4-3.1-1.2-4.5z" fill="#ffba00"/>
</svg>

After

Width:  |  Height:  |  Size: 755 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 17 KiB

View File

@@ -6,7 +6,7 @@ const cx = require('classnames');
const moment = require('moment'); const moment = require('moment');
const request = require('../../../../utils/request-middleware.js'); const request = require('../../../../utils/request-middleware.js');
const googleDriveIcon = require('../../../../googleDrive.png'); const googleDriveIcon = require('../../../../googleDrive.svg');
const dedent = require('dedent-tabs').default; const dedent = require('dedent-tabs').default;
const BrewItem = createClass({ const BrewItem = createClass({

View File

@@ -94,7 +94,7 @@
} }
} }
.googleDriveIcon { .googleDriveIcon {
height : 20px; height : 18px;
padding : 0px; padding : 0px;
margin : -5px; margin : -5px;
} }

View File

@@ -219,7 +219,7 @@ const ListPage = createClass({
render : function(){ render : function(){
return <div className='listPage sitePage'> return <div className='listPage sitePage'>
<style>@layer V3_5ePHB, bundle;</style> {/*<style>@layer V3_5ePHB, bundle;</style>*/}
<link href='/themes/V3/5ePHB/style.css' rel='stylesheet'/> <link href='/themes/V3/5ePHB/style.css' rel='stylesheet'/>
{this.props.navItems} {this.props.navItems}
{this.renderSortOptions()} {this.renderSortOptions()}

View File

@@ -24,8 +24,7 @@ const Markdown = require('naturalcrit/markdown.js');
const { DEFAULT_BREW_LOAD } = require('../../../../server/brewDefaults.js'); const { DEFAULT_BREW_LOAD } = require('../../../../server/brewDefaults.js');
const googleDriveActive = require('../../googleDrive.png'); const googleDriveIcon = require('../../googleDrive.svg');
const googleDriveInactive = require('../../googleDriveMono.png');
const SAVE_TIMEOUT = 3000; const SAVE_TIMEOUT = 3000;
@@ -222,10 +221,7 @@ const EditPage = createClass({
renderGoogleDriveIcon : function(){ renderGoogleDriveIcon : function(){
return <Nav.item className='googleDriveStorage' onClick={this.handleGoogleClick}> return <Nav.item className='googleDriveStorage' onClick={this.handleGoogleClick}>
{this.state.saveGoogle <img src={googleDriveIcon} className={this.state.saveGoogle ? '' : 'inactive'} alt='Google Drive icon'/>
? <img src={googleDriveActive} alt='googleDriveActive'/>
: <img src={googleDriveInactive} alt='googleDriveInactive'/>
}
{this.state.confirmGoogleTransfer && {this.state.confirmGoogleTransfer &&
<div className='errorContainer' onClick={this.closeAlerts}> <div className='errorContainer' onClick={this.closeAlerts}>

View File

@@ -18,8 +18,12 @@
position : relative; position : relative;
} }
.googleDriveStorage img{ .googleDriveStorage img{
height : 20px; height : 18px;
padding : 0px; padding : 0px;
margin : -5px; margin : -5px;
&.inactive {
filter: grayscale(1);
}
} }
} }

90
package-lock.json generated
View File

@@ -1,12 +1,12 @@
{ {
"name": "homebrewery", "name": "homebrewery",
"version": "3.7.0", "version": "3.7.1",
"lockfileVersion": 2, "lockfileVersion": 2,
"requires": true, "requires": true,
"packages": { "packages": {
"": { "": {
"name": "homebrewery", "name": "homebrewery",
"version": "3.7.0", "version": "3.7.1",
"hasInstallScript": true, "hasInstallScript": true,
"license": "MIT", "license": "MIT",
"dependencies": { "dependencies": {
@@ -14,6 +14,7 @@
"@babel/plugin-transform-runtime": "^7.21.0", "@babel/plugin-transform-runtime": "^7.21.0",
"@babel/preset-env": "^7.19.4", "@babel/preset-env": "^7.19.4",
"@babel/preset-react": "^7.18.6", "@babel/preset-react": "^7.18.6",
"@googleapis/drive": "^4.0.2",
"body-parser": "^1.20.2", "body-parser": "^1.20.2",
"classnames": "^2.3.2", "classnames": "^2.3.2",
"codemirror": "^5.65.6", "codemirror": "^5.65.6",
@@ -24,7 +25,6 @@
"express-async-handler": "^1.2.0", "express-async-handler": "^1.2.0",
"express-static-gzip": "2.1.7", "express-static-gzip": "2.1.7",
"fs-extra": "11.1.0", "fs-extra": "11.1.0",
"googleapis": "111.0.0",
"js-yaml": "^4.1.0", "js-yaml": "^4.1.0",
"jwt-simple": "^0.5.6", "jwt-simple": "^0.5.6",
"less": "^3.13.1", "less": "^3.13.1",
@@ -3177,6 +3177,17 @@
"node": "^12.22.0 || ^14.17.0 || >=16.0.0" "node": "^12.22.0 || ^14.17.0 || >=16.0.0"
} }
}, },
"node_modules/@googleapis/drive": {
"version": "4.0.2",
"resolved": "https://registry.npmjs.org/@googleapis/drive/-/drive-4.0.2.tgz",
"integrity": "sha512-NBD2wwkK0iVm5le1YqqDPCgUWl4aeEFIZPciiIIKYBz6kpNtdObj5uHDrtGRUxNzqsUUtYbV9FD1743B8jRZUQ==",
"dependencies": {
"googleapis-common": "^6.0.3"
},
"engines": {
"node": ">=12.0.0"
}
},
"node_modules/@humanwhocodes/config-array": { "node_modules/@humanwhocodes/config-array": {
"version": "0.11.8", "version": "0.11.8",
"resolved": "https://registry.npmjs.org/@humanwhocodes/config-array/-/config-array-0.11.8.tgz", "resolved": "https://registry.npmjs.org/@humanwhocodes/config-array/-/config-array-0.11.8.tgz",
@@ -6499,9 +6510,9 @@
} }
}, },
"node_modules/esquery": { "node_modules/esquery": {
"version": "1.4.2", "version": "1.5.0",
"resolved": "https://registry.npmjs.org/esquery/-/esquery-1.4.2.tgz", "resolved": "https://registry.npmjs.org/esquery/-/esquery-1.5.0.tgz",
"integrity": "sha512-JVSoLdTlTDkmjFmab7H/9SL9qGSyjElT3myyKp7krqjVFQCDLmj1QFaCLRFBszBKI0XVZaiiXvuPIX3ZwHe1Ng==", "integrity": "sha512-YQLXUplAwJgCydQ78IMJywZCceoqk1oH01OERdSAJc/7U2AylwjhSCLDEtqwg811idIS/9fIU5GjG73IgjKMVg==",
"dev": true, "dev": true,
"dependencies": { "dependencies": {
"estraverse": "^5.1.0" "estraverse": "^5.1.0"
@@ -7295,18 +7306,6 @@
"node": ">=12.0.0" "node": ">=12.0.0"
} }
}, },
"node_modules/googleapis": {
"version": "111.0.0",
"resolved": "https://registry.npmjs.org/googleapis/-/googleapis-111.0.0.tgz",
"integrity": "sha512-nIIH+J/o/xjIscJcv3H3BCYgsFiI5ziM3Nbh2lHOWglYGqXE0Nqdt2lfCt4hX257QHEyC1y1iODDkmAMPWDYlw==",
"dependencies": {
"google-auth-library": "^8.0.2",
"googleapis-common": "^6.0.0"
},
"engines": {
"node": ">=12.0.0"
}
},
"node_modules/googleapis-common": { "node_modules/googleapis-common": {
"version": "6.0.3", "version": "6.0.3",
"resolved": "https://registry.npmjs.org/googleapis-common/-/googleapis-common-6.0.3.tgz", "resolved": "https://registry.npmjs.org/googleapis-common/-/googleapis-common-6.0.3.tgz",
@@ -15248,9 +15247,9 @@
} }
}, },
"node_modules/supertest/node_modules/formidable": { "node_modules/supertest/node_modules/formidable": {
"version": "2.1.1", "version": "2.1.2",
"resolved": "https://registry.npmjs.org/formidable/-/formidable-2.1.1.tgz", "resolved": "https://registry.npmjs.org/formidable/-/formidable-2.1.2.tgz",
"integrity": "sha512-0EcS9wCFEzLvfiks7omJ+SiYJAiD+TzK4Pcw1UlUoGnhUxDcMKjt0P7x8wEb0u6OHu8Nb98WG3nxtlF5C7bvUQ==", "integrity": "sha512-CM3GuJ57US06mlpQ47YcunuUZ9jpm8Vx+P2CGt2j7HpgkKZO/DJYQ0Bobim8G6PFQmK5lOqOOdUXboU+h73A4g==",
"dev": true, "dev": true,
"dependencies": { "dependencies": {
"dezalgo": "^1.0.4", "dezalgo": "^1.0.4",
@@ -15290,17 +15289,17 @@
} }
}, },
"node_modules/supertest/node_modules/superagent": { "node_modules/supertest/node_modules/superagent": {
"version": "8.0.6", "version": "8.0.9",
"resolved": "https://registry.npmjs.org/superagent/-/superagent-8.0.6.tgz", "resolved": "https://registry.npmjs.org/superagent/-/superagent-8.0.9.tgz",
"integrity": "sha512-HqSe6DSIh3hEn6cJvCkaM1BLi466f1LHi4yubR0tpewlMpk4RUFFy35bKz8SsPBwYfIIJy5eclp+3tCYAuX0bw==", "integrity": "sha512-4C7Bh5pyHTvU33KpZgwrNKh/VQnvgtCSqPRfJAUdmrtSYePVzVg4E4OzsrbkhJj9O7SO6Bnv75K/F8XVZT8YHA==",
"dev": true, "dev": true,
"dependencies": { "dependencies": {
"component-emitter": "^1.3.0", "component-emitter": "^1.3.0",
"cookiejar": "^2.1.3", "cookiejar": "^2.1.4",
"debug": "^4.3.4", "debug": "^4.3.4",
"fast-safe-stringify": "^2.1.1", "fast-safe-stringify": "^2.1.1",
"form-data": "^4.0.0", "form-data": "^4.0.0",
"formidable": "^2.1.1", "formidable": "^2.1.2",
"methods": "^1.1.2", "methods": "^1.1.2",
"mime": "2.6.0", "mime": "2.6.0",
"qs": "^6.11.0", "qs": "^6.11.0",
@@ -19042,6 +19041,14 @@
"integrity": "sha512-JXdzbRiWclLVoD8sNUjR443VVlYqiYmDVT6rGUEIEHU5YJW0gaVZwV2xgM7D4arkvASqD0IlLUVjHiFuxaftRw==", "integrity": "sha512-JXdzbRiWclLVoD8sNUjR443VVlYqiYmDVT6rGUEIEHU5YJW0gaVZwV2xgM7D4arkvASqD0IlLUVjHiFuxaftRw==",
"dev": true "dev": true
}, },
"@googleapis/drive": {
"version": "4.0.2",
"resolved": "https://registry.npmjs.org/@googleapis/drive/-/drive-4.0.2.tgz",
"integrity": "sha512-NBD2wwkK0iVm5le1YqqDPCgUWl4aeEFIZPciiIIKYBz6kpNtdObj5uHDrtGRUxNzqsUUtYbV9FD1743B8jRZUQ==",
"requires": {
"googleapis-common": "^6.0.3"
}
},
"@humanwhocodes/config-array": { "@humanwhocodes/config-array": {
"version": "0.11.8", "version": "0.11.8",
"resolved": "https://registry.npmjs.org/@humanwhocodes/config-array/-/config-array-0.11.8.tgz", "resolved": "https://registry.npmjs.org/@humanwhocodes/config-array/-/config-array-0.11.8.tgz",
@@ -21688,9 +21695,9 @@
"dev": true "dev": true
}, },
"esquery": { "esquery": {
"version": "1.4.2", "version": "1.5.0",
"resolved": "https://registry.npmjs.org/esquery/-/esquery-1.4.2.tgz", "resolved": "https://registry.npmjs.org/esquery/-/esquery-1.5.0.tgz",
"integrity": "sha512-JVSoLdTlTDkmjFmab7H/9SL9qGSyjElT3myyKp7krqjVFQCDLmj1QFaCLRFBszBKI0XVZaiiXvuPIX3ZwHe1Ng==", "integrity": "sha512-YQLXUplAwJgCydQ78IMJywZCceoqk1oH01OERdSAJc/7U2AylwjhSCLDEtqwg811idIS/9fIU5GjG73IgjKMVg==",
"dev": true, "dev": true,
"requires": { "requires": {
"estraverse": "^5.1.0" "estraverse": "^5.1.0"
@@ -22308,15 +22315,6 @@
"node-forge": "^1.3.1" "node-forge": "^1.3.1"
} }
}, },
"googleapis": {
"version": "111.0.0",
"resolved": "https://registry.npmjs.org/googleapis/-/googleapis-111.0.0.tgz",
"integrity": "sha512-nIIH+J/o/xjIscJcv3H3BCYgsFiI5ziM3Nbh2lHOWglYGqXE0Nqdt2lfCt4hX257QHEyC1y1iODDkmAMPWDYlw==",
"requires": {
"google-auth-library": "^8.0.2",
"googleapis-common": "^6.0.0"
}
},
"googleapis-common": { "googleapis-common": {
"version": "6.0.3", "version": "6.0.3",
"resolved": "https://registry.npmjs.org/googleapis-common/-/googleapis-common-6.0.3.tgz", "resolved": "https://registry.npmjs.org/googleapis-common/-/googleapis-common-6.0.3.tgz",
@@ -28143,9 +28141,9 @@
} }
}, },
"formidable": { "formidable": {
"version": "2.1.1", "version": "2.1.2",
"resolved": "https://registry.npmjs.org/formidable/-/formidable-2.1.1.tgz", "resolved": "https://registry.npmjs.org/formidable/-/formidable-2.1.2.tgz",
"integrity": "sha512-0EcS9wCFEzLvfiks7omJ+SiYJAiD+TzK4Pcw1UlUoGnhUxDcMKjt0P7x8wEb0u6OHu8Nb98WG3nxtlF5C7bvUQ==", "integrity": "sha512-CM3GuJ57US06mlpQ47YcunuUZ9jpm8Vx+P2CGt2j7HpgkKZO/DJYQ0Bobim8G6PFQmK5lOqOOdUXboU+h73A4g==",
"dev": true, "dev": true,
"requires": { "requires": {
"dezalgo": "^1.0.4", "dezalgo": "^1.0.4",
@@ -28170,17 +28168,17 @@
} }
}, },
"superagent": { "superagent": {
"version": "8.0.6", "version": "8.0.9",
"resolved": "https://registry.npmjs.org/superagent/-/superagent-8.0.6.tgz", "resolved": "https://registry.npmjs.org/superagent/-/superagent-8.0.9.tgz",
"integrity": "sha512-HqSe6DSIh3hEn6cJvCkaM1BLi466f1LHi4yubR0tpewlMpk4RUFFy35bKz8SsPBwYfIIJy5eclp+3tCYAuX0bw==", "integrity": "sha512-4C7Bh5pyHTvU33KpZgwrNKh/VQnvgtCSqPRfJAUdmrtSYePVzVg4E4OzsrbkhJj9O7SO6Bnv75K/F8XVZT8YHA==",
"dev": true, "dev": true,
"requires": { "requires": {
"component-emitter": "^1.3.0", "component-emitter": "^1.3.0",
"cookiejar": "^2.1.3", "cookiejar": "^2.1.4",
"debug": "^4.3.4", "debug": "^4.3.4",
"fast-safe-stringify": "^2.1.1", "fast-safe-stringify": "^2.1.1",
"form-data": "^4.0.0", "form-data": "^4.0.0",
"formidable": "^2.1.1", "formidable": "^2.1.2",
"methods": "^1.1.2", "methods": "^1.1.2",
"mime": "2.6.0", "mime": "2.6.0",
"qs": "^6.11.0", "qs": "^6.11.0",

View File

@@ -1,7 +1,7 @@
{ {
"name": "homebrewery", "name": "homebrewery",
"description": "Create authentic looking D&D homebrews using only markdown", "description": "Create authentic looking D&D homebrews using only markdown",
"version": "3.7.0", "version": "3.7.1",
"engines": { "engines": {
"node": "16.11.x" "node": "16.11.x"
}, },
@@ -72,6 +72,7 @@
"@babel/plugin-transform-runtime": "^7.21.0", "@babel/plugin-transform-runtime": "^7.21.0",
"@babel/preset-env": "^7.19.4", "@babel/preset-env": "^7.19.4",
"@babel/preset-react": "^7.18.6", "@babel/preset-react": "^7.18.6",
"@googleapis/drive": "^4.0.2",
"body-parser": "^1.20.2", "body-parser": "^1.20.2",
"classnames": "^2.3.2", "classnames": "^2.3.2",
"codemirror": "^5.65.6", "codemirror": "^5.65.6",
@@ -82,7 +83,6 @@
"express-async-handler": "^1.2.0", "express-async-handler": "^1.2.0",
"express-static-gzip": "2.1.7", "express-static-gzip": "2.1.7",
"fs-extra": "11.1.0", "fs-extra": "11.1.0",
"googleapis": "111.0.0",
"js-yaml": "^4.1.0", "js-yaml": "^4.1.0",
"jwt-simple": "^0.5.6", "jwt-simple": "^0.5.6",
"less": "^3.13.1", "less": "^3.13.1",

View File

@@ -1,6 +1,6 @@
/* eslint-disable max-lines */ /* eslint-disable max-lines */
const _ = require('lodash'); const _ = require('lodash');
const { google } = require('googleapis'); const googleDrive = require('@googleapis/drive');
const { nanoid } = require('nanoid'); const { nanoid } = require('nanoid');
const token = require('./token.js'); const token = require('./token.js');
const config = require('./config.js'); const config = require('./config.js');
@@ -14,7 +14,7 @@ if(!config.get('service_account')){
config.get('service_account'); config.get('service_account');
try { try {
serviceAuth = google.auth.fromJSON(keys); serviceAuth = googleDrive.auth.fromJSON(keys);
serviceAuth.scopes = ['https://www.googleapis.com/auth/drive']; serviceAuth.scopes = ['https://www.googleapis.com/auth/drive'];
} catch (err) { } catch (err) {
console.warn(err); console.warn(err);
@@ -22,7 +22,7 @@ if(!config.get('service_account')){
} }
} }
google.options({ auth: serviceAuth || config.get('google_api_key') }); const defaultAuth = serviceAuth || config.get('google_api_key');
const GoogleActions = { const GoogleActions = {
@@ -33,7 +33,7 @@ const GoogleActions = {
throw (err); throw (err);
} }
const oAuth2Client = new google.auth.OAuth2( const oAuth2Client = new googleDrive.auth.OAuth2(
config.get('google_client_id'), config.get('google_client_id'),
config.get('google_client_secret'), config.get('google_client_secret'),
'/auth/google/redirect' '/auth/google/redirect'
@@ -60,7 +60,7 @@ const GoogleActions = {
}, },
getGoogleFolder : async (auth)=>{ getGoogleFolder : async (auth)=>{
const drive = google.drive({ version: 'v3', auth }); const drive = googleDrive.drive({ version: 'v3', auth });
fileMetadata = { fileMetadata = {
'name' : 'Homebrewery', 'name' : 'Homebrewery',
@@ -97,7 +97,7 @@ const GoogleActions = {
}, },
listGoogleBrews : async (auth)=>{ listGoogleBrews : async (auth)=>{
const drive = google.drive({ version: 'v3', auth }); const drive = googleDrive.drive({ version: 'v3', auth });
const obj = await drive.files.list({ const obj = await drive.files.list({
pageSize : 1000, pageSize : 1000,
@@ -136,7 +136,7 @@ const GoogleActions = {
}, },
updateGoogleBrew : async (brew)=>{ updateGoogleBrew : async (brew)=>{
const drive = google.drive({ version: 'v3' }); const drive = googleDrive.drive({ version: 'v3', auth: defaultAuth });
await drive.files.update({ await drive.files.update({
fileId : brew.googleId, fileId : brew.googleId,
@@ -167,7 +167,7 @@ const GoogleActions = {
}, },
newGoogleBrew : async (auth, brew)=>{ newGoogleBrew : async (auth, brew)=>{
const drive = google.drive({ version: 'v3', auth }); const drive = googleDrive.drive({ version: 'v3', auth });
const media = { const media = {
mimeType : 'text/plain', mimeType : 'text/plain',
@@ -218,7 +218,7 @@ const GoogleActions = {
}, },
getGoogleBrew : async (id, accessId, accessType)=>{ getGoogleBrew : async (id, accessId, accessType)=>{
const drive = google.drive({ version: 'v3' }); const drive = googleDrive.drive({ version: 'v3', auth: defaultAuth });
const obj = await drive.files.get({ const obj = await drive.files.get({
fileId : id, fileId : id,
@@ -274,7 +274,7 @@ const GoogleActions = {
}, },
deleteGoogleBrew : async (auth, id, accessId)=>{ deleteGoogleBrew : async (auth, id, accessId)=>{
const drive = google.drive({ version: 'v3', auth }); const drive = googleDrive.drive({ version: 'v3', auth });
const obj = await drive.files.get({ const obj = await drive.files.get({
fileId : id, fileId : id,
@@ -300,7 +300,7 @@ const GoogleActions = {
}, },
increaseView : async (id, accessId, accessType, brew)=>{ increaseView : async (id, accessId, accessType, brew)=>{
const drive = google.drive({ version: 'v3' }); const drive = googleDrive.drive({ version: 'v3', auth: defaultAuth });
await drive.files.update({ await drive.files.update({
fileId : brew.googleId, fileId : brew.googleId,

View File

@@ -253,7 +253,7 @@ body {
border-image-outset : 9px 0px; border-image-outset : 9px 0px;
border-image-width : 11px; border-image-width : 11px;
padding : 0.13cm 0.16cm; padding : 0.13cm 0.16cm;
filter : drop-shadow(1px 4px 6px #888); box-shadow : 1px 4px 14px #888;
.page :where(&) { .page :where(&) {
margin-top : 9px; //Prevent top border getting cut off on colbreak margin-top : 9px; //Prevent top border getting cut off on colbreak
} }
@@ -282,7 +282,7 @@ body {
border-image : @descriptiveBoxImage 12 stretch; border-image : @descriptiveBoxImage 12 stretch;
border-image-outset : 4px; border-image-outset : 4px;
padding : 0.1em; padding : 0.1em;
filter : drop-shadow(0 0 3px #faf7ea); box-shadow : 0 0 6px #faf7ea;
.page :where(&) { .page :where(&) {
margin-top : 4px; //Prevent top border getting cut off on colbreak margin-top : 4px; //Prevent top border getting cut off on colbreak
} }
@@ -397,7 +397,7 @@ body {
border-image-outset : 0px 2px; border-image-outset : 0px 2px;
background-blend-mode : overlay; background-blend-mode : overlay;
background-attachment : fixed; background-attachment : fixed;
filter : drop-shadow(1px 4px 6px #888); box-shadow : 1px 4px 14px #888;
padding : 4px 2px; padding : 4px 2px;
margin-left : -0.16cm; margin-left : -0.16cm;
margin-right : -0.16cm; margin-right : -0.16cm;
@@ -691,7 +691,7 @@ h5 + table{
top : 0.5cm; top : 0.5cm;
left : 0; left : 0;
right : 0; right : 0;
filter : drop-shadow(0 0 0.075cm black); filter :drop-shadow(0 0 0.075cm black);
img { img {
height : 2cm; height : 2cm;
width : 100%; width : 100%;
@@ -746,7 +746,7 @@ h5 + table{
filter : drop-shadow(0 0 3px black); filter : drop-shadow(0 0 3px black);
} }
.banner { .banner {
filter : drop-shadow(2px 2px 2px #000); filter : drop-shadow(2px 2px 2px black);
position : absolute; position : absolute;
left : 0; left : 0;
bottom : 4.2cm; bottom : 4.2cm;

View File

@@ -1,25 +1,24 @@
@layer V3_Blank { @import (less) './themes/fonts/5e/fonts.less';
@import (less) './themes/fonts/5e/fonts.less'; @import (less) './themes/assets/assets.less';
@import (less) './themes/assets/assets.less';
:root { :root {
//Colors //Colors
--HB_Color_Background : #FFFFFF; // White --HB_Color_Background : #FFFFFF; // White
--HB_Color_WatercolorStain : #000000; // Black --HB_Color_WatercolorStain : #000000; // Black
} }
@page { margin: 0; } @page { margin: 0; }
body { body {
counter-reset : phb-page-numbers; counter-reset : phb-page-numbers;
} }
*{ *{
-webkit-print-color-adjust : exact; -webkit-print-color-adjust : exact;
} }
//***************************** //*****************************
// * MUSTACHE DIVS/SPANS // * MUSTACHE DIVS/SPANS
// *****************************/ // *****************************/
.page { .page {
.block { .block {
break-inside : avoid; break-inside : avoid;
display : inline-block; display : inline-block;
@@ -29,19 +28,19 @@
display : inline-block; display : inline-block;
text-indent : initial; text-indent : initial;
} }
} }
.useColumns(@multiplier : 1, @fillMode: balance){ .useColumns(@multiplier : 1, @fillMode: balance){
column-fill : @fillMode; column-fill : @fillMode;
column-count : 2; column-count : 2;
} }
.columnWrapper{ .columnWrapper{
max-height : 100%; max-height : 100%;
column-span : all; column-span : all;
columns : inherit; columns : inherit;
column-gap : inherit; column-gap : inherit;
} }
.page{ .page{
.useColumns(); .useColumns();
height : 279.4mm; height : 279.4mm;
width : 215.9mm; width : 215.9mm;
@@ -56,11 +55,11 @@
page-break-before : always; page-break-before : always;
page-break-after : always; page-break-after : always;
contain : size; contain : size;
} }
//***************************** //*****************************
// * BASE // * BASE
// *****************************/ // *****************************/
.page{ .page{
p{ p{
overflow-wrap : break-word; overflow-wrap : break-word;
display : block; display : block;
@@ -361,12 +360,12 @@
.imageMaskCorner35 { --wc : url(/assets/waterColorMasks/corner/0035.webp); } .imageMaskCorner35 { --wc : url(/assets/waterColorMasks/corner/0035.webp); }
.imageMaskCorner36 { --wc : url(/assets/waterColorMasks/corner/0036.webp); } .imageMaskCorner36 { --wc : url(/assets/waterColorMasks/corner/0036.webp); }
.imageMaskCorner37 { --wc : url(/assets/waterColorMasks/corner/0037.webp); } .imageMaskCorner37 { --wc : url(/assets/waterColorMasks/corner/0037.webp); }
} }
//***************************** //*****************************
// * DEFINITION LISTS // * DEFINITION LISTS
// *****************************/ // *****************************/
.page { .page {
dl { dl {
padding-left : 1em; padding-left : 1em;
white-space : pre-line; white-space : pre-line;
@@ -381,12 +380,12 @@
margin-left : 0; margin-left : 0;
text-indent : 0; text-indent : 0;
} }
} }
//***************************** //*****************************
// * BLANK LINE // * BLANK LINE
// *****************************/ // *****************************/
.page { .page {
.blank { .blank {
height : 1em; height : 1em;
margin-top : 0; margin-top : 0;
@@ -394,12 +393,12 @@
margin-top : 0; margin-top : 0;
} }
} }
} }
//***************************** //*****************************
// * WIDE // * WIDE
// *****************************/ // *****************************/
.page { .page {
.wide{ .wide{
column-span : all; column-span : all;
display : block; display : block;
@@ -408,5 +407,4 @@
margin-top : 0; margin-top : 0;
} }
} }
}
} }