diff --git a/package.json b/package.json index ed6398c0f68850d5a0a8252b2b4969e76e65c210..90720636ef2477a802107335eeec1584ec037ecf 100644 --- a/package.json +++ b/package.json @@ -5,7 +5,7 @@ "scripts": { "vendor": "webpack --config vendor.webpack.config.js", "dev": "echo-cli \"Make sure the vendor dll file is up-to-date... recreate if some npm module added/removed ... then add/remove it from vendor.webpack.config.js\" && webpack-dev-server", - "build": "echo-cli \" --- Don't forget to increment the version string in constants.ts > versionString ---\" && tsc static_pages/firstExternalLoginPage/firstLoginExternalLogin.ts && tsc static_pages/about/about.ts && node --max-old-space-size=4096 node_modules/webpack/bin/webpack.js --config webpack.config.dist.js", + "build": "export NODE_OPTIONS=--openssl-legacy-provider && echo-cli \" --- Don't forget to increment the version string in constants.ts > versionString ---\" && tsc static_pages/firstExternalLoginPage/firstLoginExternalLogin.ts && tsc static_pages/about/about.ts && node --max-old-space-size=4096 node_modules/webpack/bin/webpack.js --config webpack.config.dist.js", "test": "echo-cli \"Error: no test specified\" && exit 1", "size": "webpack -p --progress" }, diff --git a/src/components/loggerPanel/loggerPanel.tsx b/src/components/loggerPanel/loggerPanel.tsx index f88cd6b678b48aa09ff418e4ed5347cfe7476a0f..2d1919104e2c16db14cf6cefa27b390f4f855d84 100644 --- a/src/components/loggerPanel/loggerPanel.tsx +++ b/src/components/loggerPanel/loggerPanel.tsx @@ -19,6 +19,7 @@ import {isProduction} from '../../../debug' //const css = require('./styles.styl'); +declare var require: any const fileSaver = require('file-saver'); export interface MyProps { diff --git a/src/components/login/loginOverlay.tsx b/src/components/login/loginOverlay.tsx index 1873acdf38e1f966cf4495390c450fe40fedc5b1..cd68c2d6adbb58c95a8e0acb0fb8c4e7d898c64e 100644 --- a/src/components/login/loginOverlay.tsx +++ b/src/components/login/loginOverlay.tsx @@ -151,6 +151,15 @@ class LoginOverlay extends React.Component<Props, any> { <Icon className="mar-left-half" name="external alternate"/> </a> + <a href={constants.userGuideLinkPath} target="_blank"> + <span className="mar-left-half"> + { + getI18n(this.props.langId, 'Documentation') + } + </span> + <Icon className="mar-left-half" name="external alternate"/> + </a> + <a href={constants.aboutPageLinkPath} target="_blank"> <span className="mar-left-half"> { diff --git a/src/components/login/styles.styl b/src/components/login/styles.styl index 1f44d68f13fe1b4bd01179e1e94c846253d65666..601ec208ab76dfe9779c07b7df27c7e9a07c774c 100644 --- a/src/components/login/styles.styl +++ b/src/components/login/styles.styl @@ -177,7 +177,7 @@ $loginOverlayBgImage = linear-gradient(120deg, #f6d365 0%, #fda085 100%); //line } -$frostedGlassLoginOverlayBottomBarWidth = 550px +$frostedGlassLoginOverlayBottomBarWidth = 690px $frostedGlassLoginOverlayBottomBarHeight = 40px $frostedGlassLoginOverlayBottomBarPos = 25px @@ -194,7 +194,7 @@ $frostedGlassLoginOverlayBottomBarPos = 25px .frosted-glass { display flex - width: 550px; + width: 690px; //box-shadow: 0 0 1rem 0 rgba(0, 0, 0, .2); border-radius: 5px; position: relative; diff --git a/src/components/sites/dashboardSite/headerBarContent.tsx b/src/components/sites/dashboardSite/headerBarContent.tsx index 8e47f455212b18a2a2ba5b1d9286ace252d83f32..a25fbf4f21311723802efd52fbcc5e7bd0929aaf 100644 --- a/src/components/sites/dashboardSite/headerBarContent.tsx +++ b/src/components/sites/dashboardSite/headerBarContent.tsx @@ -9,8 +9,6 @@ import {returntypeof} from 'react-redux-typescript'; import {RootState} from "../../../state/reducers"; import CommonHeaderBarContentWrapper from '../../commonHeaderBarContentWrapper' -const fileSaver = require('file-saver'); - //const css = require('./styles.styl'); export interface MyProps { @@ -58,4 +56,4 @@ class HeaderBar extends React.Component<Props, any> { } } -export default connect(mapStateToProps, mapDispatchToProps)(HeaderBar) \ No newline at end of file +export default connect(mapStateToProps, mapDispatchToProps)(HeaderBar) diff --git a/src/components/sites/editCustomProjectSite/headerBarContent.tsx b/src/components/sites/editCustomProjectSite/headerBarContent.tsx index 524a58c241379ccc63617eca93ce7979baf25ded..08e352fe5948f1319ff0f26886c651297e787bc9 100644 --- a/src/components/sites/editCustomProjectSite/headerBarContent.tsx +++ b/src/components/sites/editCustomProjectSite/headerBarContent.tsx @@ -43,6 +43,7 @@ import {getI18n} from "../../../../i18n/i18nRoot"; import * as constants from '../../../constants' import Logger from '../../../helpers/logger' +declare var require: any const fileSaver = require('file-saver'); //const css = require('./styles.styl'); diff --git a/src/components/sites/exerciseEditorSite/assetsPanel/assetsPanelView.tsx b/src/components/sites/exerciseEditorSite/assetsPanel/assetsPanelView.tsx index 94ee71af33e8f25aaf36a042ce1db8abf05683e1..5eefbf6220c259f00a23019f8b1df07ee08fca3c 100644 --- a/src/components/sites/exerciseEditorSite/assetsPanel/assetsPanelView.tsx +++ b/src/components/sites/exerciseEditorSite/assetsPanel/assetsPanelView.tsx @@ -17,6 +17,7 @@ import {assetPrefix} from '../../../../constants' import Logger from '../../../../helpers/logger' import {orderBy} from 'lodash-es' +declare var require: any const fileSaver = require('file-saver'); //const css = require('./styles.styl'); diff --git a/src/components/sites/exerciseEditorSite/exerciseSyntaxHelpPanel/exerciseSyntaxHelpPanelView.tsx b/src/components/sites/exerciseEditorSite/exerciseSyntaxHelpPanel/exerciseSyntaxHelpPanelView.tsx index 7385d91d57827be4d4389f6ecde8314f0e014afc..9e9c796eb7eb92efe47c8d280188b974a7aac2e2 100644 --- a/src/components/sites/exerciseEditorSite/exerciseSyntaxHelpPanel/exerciseSyntaxHelpPanelView.tsx +++ b/src/components/sites/exerciseEditorSite/exerciseSyntaxHelpPanel/exerciseSyntaxHelpPanelView.tsx @@ -32,6 +32,7 @@ const stateProps = returntypeof(mapStateToProps); const dispatchProps = returntypeof(mapDispatchToProps); type Props = typeof stateProps & typeof dispatchProps; +declare var require: any const markdown = require('../../../../questionSystem/exerciseQuestionSyntaxGuide.md') const helpMarkdown = markdownIt.render(markdown) @@ -52,4 +53,4 @@ class exerciseSyntaxHelpPanelView extends React.Component<Props, any> { } } -export default connect(mapStateToProps, mapDispatchToProps)(exerciseSyntaxHelpPanelView) \ No newline at end of file +export default connect(mapStateToProps, mapDispatchToProps)(exerciseSyntaxHelpPanelView) diff --git a/src/components/sites/exerciseEditorSite/headerBarContent.tsx b/src/components/sites/exerciseEditorSite/headerBarContent.tsx index 0f59ead5a8e3750e9c43f0c2e0b1965529ec664d..43f6153b7fb1a0085026db2ae50e66f74945261d 100644 --- a/src/components/sites/exerciseEditorSite/headerBarContent.tsx +++ b/src/components/sites/exerciseEditorSite/headerBarContent.tsx @@ -41,6 +41,7 @@ import {getI18n, getRawI18n} from "../../../../i18n/i18nRoot"; import {ErrorHelper} from '../../../helpers/errorHelper' import {HelpPopup} from '../../helpers/helpPopup' +declare var require: any const fileSaver = require('file-saver'); //const css = require('./styles.styl'); diff --git a/src/components/sites/guidesSite/exerciseSyntaxSite.tsx b/src/components/sites/guidesSite/exerciseSyntaxSite.tsx index 751ec4c66cb3e7b5f74fa613533917a58cdf23e8..33ef64cac60591013020e4053b8f7c062c1cd012 100644 --- a/src/components/sites/guidesSite/exerciseSyntaxSite.tsx +++ b/src/components/sites/guidesSite/exerciseSyntaxSite.tsx @@ -12,6 +12,7 @@ import {setIsSiteHeaderBarDisplayedAndEnabledAction} from "../../../state/action import {connect} from "react-redux"; import markdownIt from '../../../helpers/markdownHelper' +declare var require: any //const css = require('./styles.styl'); const exerciseSyntaxGuideMd = require('../../../questionSystem/exerciseQuestionSyntaxGuide.md') @@ -63,4 +64,4 @@ class ExerciseSyntaxSite extends React.Component<Props, any> { } } -export default connect(mapStateToProps, mapDispatchToProps)(ExerciseSyntaxSite) \ No newline at end of file +export default connect(mapStateToProps, mapDispatchToProps)(ExerciseSyntaxSite) diff --git a/src/components/sites/guidesSite/testSyntaxSite.tsx b/src/components/sites/guidesSite/testSyntaxSite.tsx index f7a9b128aaa1ba524d28344e3fef4d6fb30b6773..2231cfa00b39467a9e3e81b5730b8ab9f51cdd09 100644 --- a/src/components/sites/guidesSite/testSyntaxSite.tsx +++ b/src/components/sites/guidesSite/testSyntaxSite.tsx @@ -18,6 +18,7 @@ export interface MyProps { //readonly test: string } +declare var require: any const testSyntaxGuideMd = require('../../../questionSystem/testSyntaxGuide.md') const content = { @@ -62,4 +63,4 @@ class TestSyntaxSite extends React.Component<Props, any> { } } -export default connect(mapStateToProps, mapDispatchToProps)(TestSyntaxSite) \ No newline at end of file +export default connect(mapStateToProps, mapDispatchToProps)(TestSyntaxSite) diff --git a/src/components/sites/manageOwnOrGroupExerciseComponents/submissionsSite/exportCsvDialog/exportCsvDialog.tsx b/src/components/sites/manageOwnOrGroupExerciseComponents/submissionsSite/exportCsvDialog/exportCsvDialog.tsx index e7b4150618949d615c1c49679acca27418ec976d..803add490b9b84696f907334aa04ee34b9ba2534 100644 --- a/src/components/sites/manageOwnOrGroupExerciseComponents/submissionsSite/exportCsvDialog/exportCsvDialog.tsx +++ b/src/components/sites/manageOwnOrGroupExerciseComponents/submissionsSite/exportCsvDialog/exportCsvDialog.tsx @@ -27,6 +27,7 @@ import {errorDialog} from '../../../../../helpers/dialogHelper' import {ServerResponse} from '../../../../../types/response' import {ResponseCodes} from '../../../../../helpers/responseCodes' +declare var require: any const fileSaver = require('file-saver'); export interface MyProps { diff --git a/src/components/sites/manageTagsSite/manageTagsSite.tsx b/src/components/sites/manageTagsSite/manageTagsSite.tsx index 19367582eb05c17c43e1183933f1f87e77b318c1..c81cac80fac950fe36429a0006a067e13ae0c405 100644 --- a/src/components/sites/manageTagsSite/manageTagsSite.tsx +++ b/src/components/sites/manageTagsSite/manageTagsSite.tsx @@ -23,6 +23,7 @@ import {getI18n} from "../../../../i18n/i18nRoot"; import Logger from '../../../helpers/logger' import {ErrorHelper} from '../../../helpers/errorHelper' +declare var require: any const css = require('./styles.styl'); export interface MyProps { diff --git a/src/constants.ts b/src/constants.ts index 5f629e7a3c70aa5d791c8af908cd31649139eb19..6ff6ffe2040c67af42d9834aed7e655675360683 100644 --- a/src/constants.ts +++ b/src/constants.ts @@ -13,7 +13,7 @@ import Logger from './helpers/logger' * y - breaking changes / new features * z - fixes, small changes */ -export const versionString = '2.19.0' +export const versionString = '2.19.1' export const supportMail = 'yapex@informatik.uni-halle.de' @@ -98,6 +98,8 @@ export const legalNoticePageLinkPath = '/legalNotice/legalNotice.html' //see web export const privacyPolicyPageLinkPath = '/privacypolicy/privacy.html' //see webpack.config.dist.js -> CopyWebpackPlugin export const aboutPageLinkPath = '/about/about.html' +export const userGuideLinkPath = '/guides/de/' + /** * returns the download personal data link for the given user (id) diff --git a/src/helpers/cryptoHelper.ts b/src/helpers/cryptoHelper.ts index 199f65682535fa39e9fc81b9ac134000bcfa7347..c3547159738164e532fe65cb1006ba6413abb22e 100644 --- a/src/helpers/cryptoHelper.ts +++ b/src/helpers/cryptoHelper.ts @@ -2,6 +2,7 @@ * Created by janis dähne. */ +declare var require: any const crypto = require('crypto-js') diff --git a/src/helpers/markdownHelper.ts b/src/helpers/markdownHelper.ts index 395ac2721462bb7fa4ae7abc652226ea423d5a3a..acc38b6a565de499aa2ae1f0ff91fc1b3023467b 100644 --- a/src/helpers/markdownHelper.ts +++ b/src/helpers/markdownHelper.ts @@ -4,6 +4,7 @@ import Logger from './logger' import {copyToClipboard} from './clipboard' import { markdownPLangBlockDataLangAttribute, markdownPLangBlocksClass } from '../constants' +declare var require: any const hljs = require('highlight.js/lib/highlight') /** @@ -267,7 +268,7 @@ const mdRenderer = markdownIt({ if (tokens[idx].nesting === 1) { // opening tag - + //div class="..." with data attribute to identify lang return `<div class="${markdownPLangBlocksClass}" ${markdownPLangBlockDataLangAttribute}="${mdRenderer.utils.escapeHtml(m[0])}">\n`; } else { diff --git a/src/index.tsx b/src/index.tsx index 8e13875ba8829ad9b4788381484eb1f5d4a29054..a27b7f1a40df537ee616d31ae83d8ff1099fd34e 100644 --- a/src/index.tsx +++ b/src/index.tsx @@ -14,6 +14,7 @@ import history from './routerHistory' import {setup} from './setup' import {NotificationContainer} from "react-notifications"; +declare var require: any //according to https://stackoverflow.com/questions/14990369/how-does-stylus-variable-scope-work-across-files //we only need one file importing all other then all imported files iwll have the same scope // const common = require('./styles/common.styl') diff --git a/src/setup.ts b/src/setup.ts index 463a867fdce53c9821093032edcdadb2442a3de8..94eacbf5ddeab5b18bea31c15bbf4a4ee385bd18 100644 --- a/src/setup.ts +++ b/src/setup.ts @@ -27,6 +27,7 @@ import {ErrorHelper} from './helpers/errorHelper' import {errorDialog} from './helpers/dialogHelper' import {getServerMessageUrl} from './communicationLayer/systemSettingsLayer' +declare var require: any require('react-datetime/css/react-datetime.css') //require('../customChangedLib/react-notifications/notifications.styl') //imported via allStylues.styl diff --git a/static_pages/about/about.html b/static_pages/about/about.html index 4074cd4edef7a523f56310fe81961d36adf9efeb..816aa5ac93a213930b8995a993f36c810424b00b 100644 --- a/static_pages/about/about.html +++ b/static_pages/about/about.html @@ -896,7 +896,7 @@ Natürlich gibt es viele kleinere Verbesserungsvorschläge und Ideen YAPEX noch <div> - Copyright © 2016-2022 + Copyright © 2016-2023 <!-- ???--> </div>