diff --git a/server/package-lock.json b/server/package-lock.json index c51db5d..c369d20 100644 --- a/server/package-lock.json +++ b/server/package-lock.json @@ -1,16 +1,17 @@ { "name": "light-blocks-server", - "version": "0.3.0", + "version": "0.4.0", "lockfileVersion": 2, "requires": true, "packages": { "": { "name": "light-blocks-server", - "version": "0.3.0", + "version": "0.4.0", "license": "MIT", "dependencies": { "body-parser": "^1.19.0", "cors": "^2.8.5", + "dotenv": "^16.4.1", "express": "^4.17.1", "node-hue-api": "^5.0.0-beta.2", "sequelize": "^6.6.4", @@ -2422,6 +2423,17 @@ "node": ">=8" } }, + "node_modules/dotenv": { + "version": "16.4.1", + "resolved": "https://registry.npmjs.org/dotenv/-/dotenv-16.4.1.tgz", + "integrity": "sha512-CjA3y+Dr3FyFDOAMnxZEGtnW9KBR2M0JvvUtXNW+dYJL5ROWxP9DUHCwgFqpMk0OXCc0ljhaNTr2w/kutYIcHQ==", + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/motdotla/dotenv?sponsor=1" + } + }, "node_modules/dottie": { "version": "2.0.6", "resolved": "https://registry.npmjs.org/dottie/-/dottie-2.0.6.tgz", @@ -8819,6 +8831,11 @@ } } }, + "dotenv": { + "version": "16.4.1", + "resolved": "https://registry.npmjs.org/dotenv/-/dotenv-16.4.1.tgz", + "integrity": "sha512-CjA3y+Dr3FyFDOAMnxZEGtnW9KBR2M0JvvUtXNW+dYJL5ROWxP9DUHCwgFqpMk0OXCc0ljhaNTr2w/kutYIcHQ==" + }, "dottie": { "version": "2.0.6", "resolved": "https://registry.npmjs.org/dottie/-/dottie-2.0.6.tgz", diff --git a/server/package.json b/server/package.json index 07bda1b..d132187 100644 --- a/server/package.json +++ b/server/package.json @@ -14,6 +14,7 @@ "dependencies": { "body-parser": "^1.19.0", "cors": "^2.8.5", + "dotenv": "^16.4.1", "express": "^4.17.1", "node-hue-api": "^5.0.0-beta.2", "sequelize": "^6.6.4", diff --git a/server/src/Environment.ts b/server/src/Environment.ts index 3d86fcb..2ad2ca2 100644 --- a/server/src/Environment.ts +++ b/server/src/Environment.ts @@ -26,6 +26,8 @@ export default class Environment { const username = process.env.HUE_BRIDGE_USER || ''; const ipAddress = process.env.HUE_BRIDGE_IP_ADDRESS || ''; + //console.log('username',username, 'ipAddress',ipAddress ) + this.client = await NodeHueApi .api diff --git a/server/src/app.ts b/server/src/app.ts index 46e5fd7..4b1630c 100644 --- a/server/src/app.ts +++ b/server/src/app.ts @@ -12,6 +12,8 @@ import installProgramRoutes from './api/programs'; import installInterpreterRoutes from './api/interpreter'; import logger from './logger'; +import 'dotenv/config' + const REQUIRED_ENV_VARS = [ 'HUE_BRIDGE_IP_ADDRESS', 'HUE_BRIDGE_CLIENT_KEY', @@ -54,7 +56,9 @@ installInterpreterRoutes(app, interpreter); async function run() { await connectToDB(); - await environment.initialize(); + // Da error porque no se conecta a las luces Philips HUE, aunque no se conecte tendria que arrancar el servidor, ya que hay mas environment... + // It gives an error because it does not connect to the Philips HUE lights, even if it does not connect, it would have to start the server, since there is more environment... +// await environment.initialize(); server.listen(port, () => { logger.info(`Server listening on port ${port}`); diff --git a/ui/package-lock.json b/ui/package-lock.json index c074500..9debea7 100644 --- a/ui/package-lock.json +++ b/ui/package-lock.json @@ -1,13 +1,18 @@ { "name": "light-blocks-ui", - "version": "0.2.0", + "version": "0.4.0", "lockfileVersion": 2, "requires": true, "packages": { "": { "name": "light-blocks-ui", - "version": "0.2.0", + "version": "0.4.0", "dependencies": { + "@blockly/theme-dark": "^6.0.5", + "@blockly/theme-deuteranopia": "^5.0.5", + "@blockly/theme-highcontrast": "^5.0.5", + "@blockly/theme-modern": "^5.0.5", + "@blockly/theme-tritanopia": "^5.0.5", "@emotion/react": "^11.4.0", "@emotion/styled": "^11.3.0", "react": "^17.0.2", @@ -2173,6 +2178,61 @@ "resolved": "https://registry.npmjs.org/@bcoe/v8-coverage/-/v8-coverage-0.2.3.tgz", "integrity": "sha512-0hYQ8SB4Db5zvZB4axdMHGwEaQjkZzFjQiN9LVYvIFB2nSUHW9tYpxWriPrWDASIxiaXax83REcLxuSdnGPZtw==" }, + "node_modules/@blockly/theme-dark": { + "version": "6.0.5", + "resolved": "https://registry.npmjs.org/@blockly/theme-dark/-/theme-dark-6.0.5.tgz", + "integrity": "sha512-6vftqOY4ZfwqiAUh2lR12TL16t+7UcmiGVYOBSs4dj1emP89UEO7EMaj0RQ+m0BsV9IHsf2fN6iKZu1gWkmnnA==", + "engines": { + "node": ">=8.17.0" + }, + "peerDependencies": { + "blockly": "^10.0.0" + } + }, + "node_modules/@blockly/theme-deuteranopia": { + "version": "5.0.5", + "resolved": "https://registry.npmjs.org/@blockly/theme-deuteranopia/-/theme-deuteranopia-5.0.5.tgz", + "integrity": "sha512-Eqr3JbIch4Uyi3awWXq0vtGy5LL4cknkBH4VjUi73w9Xdiytt1LgoWJD23NBtKcP4M31iDWV+8fdPK4R1tUVcg==", + "engines": { + "node": ">=8.17.0" + }, + "peerDependencies": { + "blockly": "^10.0.0" + } + }, + "node_modules/@blockly/theme-highcontrast": { + "version": "5.0.5", + "resolved": "https://registry.npmjs.org/@blockly/theme-highcontrast/-/theme-highcontrast-5.0.5.tgz", + "integrity": "sha512-5pi7urLW7UNZhAoDbsb7C0vqFGHEeWi7pp1+OyFSmB+xMNkcVv1Es4X35QQCuUmM6FXfCFeqoDH+N/DYNDHHjg==", + "engines": { + "node": ">=8.17.0" + }, + "peerDependencies": { + "blockly": "^10.0.0" + } + }, + "node_modules/@blockly/theme-modern": { + "version": "5.0.5", + "resolved": "https://registry.npmjs.org/@blockly/theme-modern/-/theme-modern-5.0.5.tgz", + "integrity": "sha512-rbVOGxKHAatzHI6Yhy9lJbIRPzAW2Xgf+N1U1KSkyVmUziLKKaNKwwYvnOSx4MmoDD49SrZMdUgT8G+VBLFhYw==", + "engines": { + "node": ">=8.17.0" + }, + "peerDependencies": { + "blockly": "^10.0.0" + } + }, + "node_modules/@blockly/theme-tritanopia": { + "version": "5.0.5", + "resolved": "https://registry.npmjs.org/@blockly/theme-tritanopia/-/theme-tritanopia-5.0.5.tgz", + "integrity": "sha512-vVFMwvdreQoPDR8y6/5ymOoVYK/kE7zcH3Ra0NCEG4w/CBOlEYMYpNnCkpmM8HTjQj4fvDSTwh2HybiHMlfLrQ==", + "engines": { + "node": ">=8.17.0" + }, + "peerDependencies": { + "blockly": "^10.0.0" + } + }, "node_modules/@csstools/normalize.css": { "version": "12.1.1", "resolved": "https://registry.npmjs.org/@csstools/normalize.css/-/normalize.css-12.1.1.tgz", @@ -18572,6 +18632,36 @@ "resolved": "https://registry.npmjs.org/@bcoe/v8-coverage/-/v8-coverage-0.2.3.tgz", "integrity": "sha512-0hYQ8SB4Db5zvZB4axdMHGwEaQjkZzFjQiN9LVYvIFB2nSUHW9tYpxWriPrWDASIxiaXax83REcLxuSdnGPZtw==" }, + "@blockly/theme-dark": { + "version": "6.0.5", + "resolved": "https://registry.npmjs.org/@blockly/theme-dark/-/theme-dark-6.0.5.tgz", + "integrity": "sha512-6vftqOY4ZfwqiAUh2lR12TL16t+7UcmiGVYOBSs4dj1emP89UEO7EMaj0RQ+m0BsV9IHsf2fN6iKZu1gWkmnnA==", + "requires": {} + }, + "@blockly/theme-deuteranopia": { + "version": "5.0.5", + "resolved": "https://registry.npmjs.org/@blockly/theme-deuteranopia/-/theme-deuteranopia-5.0.5.tgz", + "integrity": "sha512-Eqr3JbIch4Uyi3awWXq0vtGy5LL4cknkBH4VjUi73w9Xdiytt1LgoWJD23NBtKcP4M31iDWV+8fdPK4R1tUVcg==", + "requires": {} + }, + "@blockly/theme-highcontrast": { + "version": "5.0.5", + "resolved": "https://registry.npmjs.org/@blockly/theme-highcontrast/-/theme-highcontrast-5.0.5.tgz", + "integrity": "sha512-5pi7urLW7UNZhAoDbsb7C0vqFGHEeWi7pp1+OyFSmB+xMNkcVv1Es4X35QQCuUmM6FXfCFeqoDH+N/DYNDHHjg==", + "requires": {} + }, + "@blockly/theme-modern": { + "version": "5.0.5", + "resolved": "https://registry.npmjs.org/@blockly/theme-modern/-/theme-modern-5.0.5.tgz", + "integrity": "sha512-rbVOGxKHAatzHI6Yhy9lJbIRPzAW2Xgf+N1U1KSkyVmUziLKKaNKwwYvnOSx4MmoDD49SrZMdUgT8G+VBLFhYw==", + "requires": {} + }, + "@blockly/theme-tritanopia": { + "version": "5.0.5", + "resolved": "https://registry.npmjs.org/@blockly/theme-tritanopia/-/theme-tritanopia-5.0.5.tgz", + "integrity": "sha512-vVFMwvdreQoPDR8y6/5ymOoVYK/kE7zcH3Ra0NCEG4w/CBOlEYMYpNnCkpmM8HTjQj4fvDSTwh2HybiHMlfLrQ==", + "requires": {} + }, "@csstools/normalize.css": { "version": "12.1.1", "resolved": "https://registry.npmjs.org/@csstools/normalize.css/-/normalize.css-12.1.1.tgz", diff --git a/ui/package.json b/ui/package.json index 7112177..1554794 100644 --- a/ui/package.json +++ b/ui/package.json @@ -9,6 +9,11 @@ "eject": "react-scripts eject" }, "dependencies": { + "@blockly/theme-dark": "^6.0.5", + "@blockly/theme-deuteranopia": "^5.0.5", + "@blockly/theme-highcontrast": "^5.0.5", + "@blockly/theme-modern": "^5.0.5", + "@blockly/theme-tritanopia": "^5.0.5", "@emotion/react": "^11.4.0", "@emotion/styled": "^11.3.0", "react": "^17.0.2", diff --git a/ui/src/Editor/Editor.tsx b/ui/src/Editor/Editor.tsx index d2262d7..034991f 100644 --- a/ui/src/Editor/Editor.tsx +++ b/ui/src/Editor/Editor.tsx @@ -11,6 +11,19 @@ import LightBlocksTheme from './theme'; import FieldColorComponents from './FieldColorComponents'; import useDebounce from './useDebounce'; +// @ts-ignore +import ThemeDarkTheme from '@blockly/theme-dark'; +// @ts-ignore +import ThemeDeuteranopia from '@blockly/theme-deuteranopia'; +// // @ts-ignore +// import ThemeHackermode from '@blockly/theme-hackermode'; +// @ts-ignore +import ThemeHighcontrast from '@blockly/theme-highcontrast'; +// @ts-ignore +import ThemeModern from '@blockly/theme-modern'; +// @ts-ignore +import ThemeTritanopia from '@blockly/theme-tritanopia'; + interface Props { programs: ProgramMeta[] runningProgramId: number | null @@ -47,7 +60,8 @@ const Editor: React.FC = ({ programs, runningProgramId, currentBlockId, o colour: '#ccc', snap: true, }, - theme: LightBlocksTheme, +// theme: LightBlocksTheme, + theme: ThemeDarkTheme, renderer: 'zelos' }, toolboxConfiguration: TOOLBOX,