diff --git a/client/homebrew/editor/editor.jsx b/client/homebrew/editor/editor.jsx index 58573646a..cf3eeab25 100644 --- a/client/homebrew/editor/editor.jsx +++ b/client/homebrew/editor/editor.jsx @@ -72,6 +72,7 @@ const Editor = createClass({ this.updateEditorSize(); this.highlightCustomMarkdown(); window.addEventListener('resize', this.updateEditorSize); + document.getElementById('BrewRenderer').addEventListener('keydown', this.handleControlKeys); document.addEventListener('keydown', this.handleControlKeys); document.addEventListener('click', (e)=>{ if(isElementCodeMirror(e.target) && this.props.liveScroll ) { @@ -125,6 +126,7 @@ const Editor = createClass({ const HOME_KEY = 36; if(!(e.ctrlKey || e.metaKey)) return; +<<<<<<< HEAD // Handle CTRL-HOME and CTRL-END if(((e.keyCode == END_KEY) || (e.keyCode == HOME_KEY)) && this.props.liveScroll) this.brewJump(); @@ -135,6 +137,14 @@ const Editor = createClass({ if ((e.shiftKey) && (!e.altKey) && (e.keyCode == X_KEY)) this.sourceJump(); if( e.keyCode == X_KEY) { +======= + console.log(e); + const LEFTARROW_KEY = 37; + const RIGHTARROW_KEY = 39; + if (e.shiftKey && (e.keyCode == RIGHTARROW_KEY)) this.brewJump(); + if (e.shiftKey && (e.keyCode == LEFTARROW_KEY)) this.sourceJump(); + if ((e.keyCode == LEFTARROW_KEY) || (e.keyCode == RIGHTARROW_KEY)) { +>>>>>>> master e.stopPropagation(); e.preventDefault(); } diff --git a/package-lock.json b/package-lock.json index 5e88f0e66..08b542f46 100644 --- a/package-lock.json +++ b/package-lock.json @@ -14,7 +14,7 @@ "@babel/plugin-transform-runtime": "^7.24.7", "@babel/preset-env": "^7.25.3", "@babel/preset-react": "^7.24.7", - "@googleapis/drive": "^8.11.1", + "@googleapis/drive": "^8.13.0", "body-parser": "^1.20.2", "classnames": "^2.5.1", "codemirror": "^5.65.6", @@ -38,7 +38,7 @@ "marked-smartypants-lite": "^1.0.2", "markedLegacy": "npm:marked@^0.3.19", "moment": "^2.30.1", - "mongoose": "^8.5.2", + "mongoose": "^8.5.3", "nanoid": "3.3.4", "nconf": "^0.12.1", "react": "^18.3.1", @@ -57,7 +57,7 @@ "jest": "^29.7.0", "jest-expect-message": "^1.1.3", "postcss-less": "^6.0.0", - "stylelint": "^16.8.0", + "stylelint": "^16.8.2", "stylelint-config-recess-order": "^5.0.1", "stylelint-config-recommended": "^14.0.1", "supertest": "^7.0.0" @@ -2080,9 +2080,9 @@ } }, "node_modules/@googleapis/drive": { - "version": "8.11.1", - "resolved": "https://registry.npmjs.org/@googleapis/drive/-/drive-8.11.1.tgz", - "integrity": "sha512-tkkjD7/CjypS6esQ/YhP3kEh86F4pEKa3YgvNMCI4Jg/eZzhBTvLQw+TqEfT/C/BoCF6jw2sgBoJQ9h8Qm2oIg==", + "version": "8.13.0", + "resolved": "https://registry.npmjs.org/@googleapis/drive/-/drive-8.13.0.tgz", + "integrity": "sha512-xpXzZeYtNNFLy1m2D5A8/QR2bngpjLPEvO5KZUW4Dlwi/SBHYNTjVm37IQagtQg6QUJlFb4lVLewenUdZZB1rA==", "dependencies": { "googleapis-common": "^7.0.0" }, @@ -10831,10 +10831,9 @@ } }, "node_modules/mongoose": { - "version": "8.5.2", - "resolved": "https://registry.npmjs.org/mongoose/-/mongoose-8.5.2.tgz", - "integrity": "sha512-GZB4rHMdYfGatV+23IpCrqFbyCOjCNOHXgWbirr92KRwTEncBrtW3kgU9vmpKjsGf7nMmnAy06SwWUv1vhDkSg==", - "license": "MIT", + "version": "8.5.3", + "resolved": "https://registry.npmjs.org/mongoose/-/mongoose-8.5.3.tgz", + "integrity": "sha512-OubSDbsAclDFGHjV82MsKyIGQWFc42Ot1l+0dhRS6U9xODM7rm/ES/WpOQd8Ds9j0Mx8QzxZtrSCnBh6o9wUqw==", "dependencies": { "bson": "^6.7.0", "kareem": "2.6.3", @@ -13728,6 +13727,70 @@ "stylelint": "^14.0.0 || ^15.0.0 || ^16.0.1" } }, + "node_modules/stylelint/node_modules/@csstools/css-parser-algorithms": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/@csstools/css-parser-algorithms/-/css-parser-algorithms-3.0.1.tgz", + "integrity": "sha512-lSquqZCHxDfuTg/Sk2hiS0mcSFCEBuj49JfzPHJogDBT0mGCyY5A1AQzBWngitrp7i1/HAZpIgzF/VjhOEIJIg==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/csstools" + }, + { + "type": "opencollective", + "url": "https://opencollective.com/csstools" + } + ], + "engines": { + "node": ">=18" + }, + "peerDependencies": { + "@csstools/css-tokenizer": "^3.0.1" + } + }, + "node_modules/stylelint/node_modules/@csstools/css-tokenizer": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/@csstools/css-tokenizer/-/css-tokenizer-3.0.1.tgz", + "integrity": "sha512-UBqaiu7kU0lfvaP982/o3khfXccVlHPWp0/vwwiIgDF0GmqqqxoiXC/6FCjlS9u92f7CoEz6nXKQnrn1kIAkOw==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/csstools" + }, + { + "type": "opencollective", + "url": "https://opencollective.com/csstools" + } + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/stylelint/node_modules/@csstools/media-query-list-parser": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/@csstools/media-query-list-parser/-/media-query-list-parser-3.0.1.tgz", + "integrity": "sha512-HNo8gGD02kHmcbX6PvCoUuOQvn4szyB9ca63vZHKX5A81QytgDG4oxG4IaEfHTlEZSZ6MjPEMWIVU+zF2PZcgw==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/csstools" + }, + { + "type": "opencollective", + "url": "https://opencollective.com/csstools" + } + ], + "engines": { + "node": ">=18" + }, + "peerDependencies": { + "@csstools/css-parser-algorithms": "^3.0.1", + "@csstools/css-tokenizer": "^3.0.1" + } + }, "node_modules/stylelint/node_modules/ansi-regex": { "version": "6.0.1", "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-6.0.1.tgz", diff --git a/package.json b/package.json index f48e6a0c7..675d76f39 100644 --- a/package.json +++ b/package.json @@ -87,7 +87,7 @@ "@babel/plugin-transform-runtime": "^7.24.7", "@babel/preset-env": "^7.25.3", "@babel/preset-react": "^7.24.7", - "@googleapis/drive": "^8.11.1", + "@googleapis/drive": "^8.13.0", "body-parser": "^1.20.2", "classnames": "^2.5.1", "codemirror": "^5.65.6", @@ -111,7 +111,7 @@ "marked-smartypants-lite": "^1.0.2", "markedLegacy": "npm:marked@^0.3.19", "moment": "^2.30.1", - "mongoose": "^8.5.2", + "mongoose": "^8.5.3", "nanoid": "3.3.4", "nconf": "^0.12.1", "react": "^18.3.1", @@ -130,7 +130,7 @@ "jest": "^29.7.0", "jest-expect-message": "^1.1.3", "postcss-less": "^6.0.0", - "stylelint": "^16.8.0", + "stylelint": "^16.8.2", "stylelint-config-recess-order": "^5.0.1", "stylelint-config-recommended": "^14.0.1", "supertest": "^7.0.0" diff --git a/shared/helpers.js b/shared/helpers.js index e5c1b7769..ac684b06f 100644 --- a/shared/helpers.js +++ b/shared/helpers.js @@ -35,6 +35,7 @@ const printCurrentBrew = ()=>{ }; const fetchThemeBundle = async (obj, renderer, theme)=>{ + if(!renderer || !theme) return; const res = await request .get(`/api/theme/${renderer}/${theme}`) .catch((err)=>{