Change config and imports to es modules and update framework7

This commit is contained in:
SergeyEzhin 2022-10-13 19:19:39 +04:00
parent c03c7638d9
commit 5edf90c839
18 changed files with 44 additions and 38 deletions

View file

@ -1,5 +1,5 @@
import { Dom7 } from 'framework7' import { Dom7 } from 'framework7'
import { LocalStorage } from "../../utils/LocalStorage"; import { LocalStorage } from "../../utils/LocalStorage.mjs";
class ThemesController { class ThemesController {
constructor() { constructor() {

View file

@ -1,7 +1,7 @@
import React, { Component } from 'react' import React, { Component } from 'react'
import { f7 } from 'framework7-react'; import { f7 } from 'framework7-react';
import {observer, inject} from "mobx-react" import {observer, inject} from "mobx-react"
import { LocalStorage } from '../../../utils/LocalStorage'; import { LocalStorage } from '../../../utils/LocalStorage.mjs';
import { withTranslation } from 'react-i18next'; import { withTranslation } from 'react-i18next';
class CollaborationController extends Component { class CollaborationController extends Component {

View file

@ -3,7 +3,7 @@ import { inject, observer } from "mobx-react";
import { f7 } from 'framework7-react'; import { f7 } from 'framework7-react';
import {Device} from '../../../../../common/mobile/utils/device'; import {Device} from '../../../../../common/mobile/utils/device';
import { withTranslation} from 'react-i18next'; import { withTranslation} from 'react-i18next';
import { LocalStorage } from '../../../utils/LocalStorage'; import { LocalStorage } from '../../../utils/LocalStorage.mjs';
import {AddComment, EditComment, AddReply, EditReply, ViewComments, ViewCurrentComments} from '../../view/collaboration/Comments'; import {AddComment, EditComment, AddReply, EditReply, ViewComments, ViewCurrentComments} from '../../view/collaboration/Comments';

View file

@ -4,7 +4,7 @@ import {observer, inject} from "mobx-react"
import { withTranslation } from 'react-i18next'; import { withTranslation } from 'react-i18next';
import {PageReview, PageReviewChange} from "../../view/collaboration/Review"; import {PageReview, PageReviewChange} from "../../view/collaboration/Review";
import {LocalStorage} from "../../../utils/LocalStorage"; import {LocalStorage} from "../../../utils/LocalStorage.mjs";
class InitReview extends Component { class InitReview extends Component {
constructor(props){ constructor(props){

View file

@ -3,7 +3,8 @@ import React, { Suspense } from 'react';
import { createRoot } from 'react-dom/client'; import { createRoot } from 'react-dom/client';
// Import Framework7 // Import Framework7
import Framework7 from 'framework7/lite-bundle'; // framework7/lite-bundle
import Framework7 from 'framework7';
import { Dom7 } from 'framework7'; import { Dom7 } from 'framework7';
window.$$ = Dom7; window.$$ = Dom7;
@ -22,13 +23,13 @@ import('./less/app.less');
// Import App Component // Import App Component
import App from './view/app'; import App from './view/app.jsx';
import { I18nextProvider } from 'react-i18next'; import { I18nextProvider } from 'react-i18next';
import i18n from './lib/i18n'; import i18n from './lib/i18n.js';
import { Provider } from 'mobx-react' import { Provider } from 'mobx-react';
import { stores } from './store/mainStore' import { stores } from './store/mainStore.js';
import { LocalStorage } from '../../../common/mobile/utils/LocalStorage'; // import { LocalStorage } from '../../../common/mobile/utils/LocalStorage';
const container = document.getElementById('app'); const container = document.getElementById('app');
const root = createRoot(container); const root = createRoot(container);

View file

@ -2,7 +2,7 @@ import React, { useContext } from 'react';
import { f7 } from 'framework7-react'; import { f7 } from 'framework7-react';
import { inject, observer } from "mobx-react"; import { inject, observer } from "mobx-react";
import { withTranslation} from 'react-i18next'; import { withTranslation} from 'react-i18next';
import { LocalStorage } from '../../../../common/mobile/utils/LocalStorage'; import { LocalStorage } from '../../../../common/mobile/utils/LocalStorage.mjs';
import ContextMenuController from '../../../../common/mobile/lib/controller/ContextMenu'; import ContextMenuController from '../../../../common/mobile/lib/controller/ContextMenu';
import { idContextMenuElement } from '../../../../common/mobile/lib/view/ContextMenu'; import { idContextMenuElement } from '../../../../common/mobile/lib/view/ContextMenu';

View file

@ -3,7 +3,7 @@ import React, {Component, Fragment} from 'react';
import {inject} from "mobx-react"; import {inject} from "mobx-react";
import { f7 } from "framework7-react"; import { f7 } from "framework7-react";
import { withTranslation } from 'react-i18next'; import { withTranslation } from 'react-i18next';
import { LocalStorage } from '../../../../common/mobile/utils/LocalStorage'; import { LocalStorage } from '../../../../common/mobile/utils/LocalStorage.mjs';
import CollaborationController from '../../../../common/mobile/lib/controller/collaboration/Collaboration.jsx'; import CollaborationController from '../../../../common/mobile/lib/controller/collaboration/Collaboration.jsx';
import {InitReviewController as ReviewController} from '../../../../common/mobile/lib/controller/collaboration/Review.jsx'; import {InitReviewController as ReviewController} from '../../../../common/mobile/lib/controller/collaboration/Review.jsx';
import { onAdvancedOptions } from './settings/Download.jsx'; import { onAdvancedOptions } from './settings/Download.jsx';

View file

@ -3,7 +3,7 @@ import { inject, observer } from 'mobx-react';
import { f7 } from 'framework7-react'; import { f7 } from 'framework7-react';
import { useTranslation } from 'react-i18next'; import { useTranslation } from 'react-i18next';
import ToolbarView from "../view/Toolbar"; import ToolbarView from "../view/Toolbar";
import {LocalStorage} from "../../../../common/mobile/utils/LocalStorage"; import {LocalStorage} from "../../../../common/mobile/utils/LocalStorage.mjs";
const ToolbarController = inject('storeAppOptions', 'users', 'storeReview', 'storeFocusObjects', 'storeToolbarSettings','storeDocumentInfo')(observer(props => { const ToolbarController = inject('storeAppOptions', 'users', 'storeReview', 'storeFocusObjects', 'storeToolbarSettings','storeDocumentInfo')(observer(props => {
const {t} = useTranslation(); const {t} = useTranslation();

View file

@ -1,6 +1,6 @@
import React, { Component } from "react"; import React, { Component } from "react";
import { ApplicationSettings } from "../../view/settings/ApplicationSettings"; import { ApplicationSettings } from "../../view/settings/ApplicationSettings";
import { LocalStorage } from '../../../../../common/mobile/utils/LocalStorage'; import { LocalStorage } from '../../../../../common/mobile/utils/LocalStorage.mjs';
import {observer, inject} from "mobx-react"; import {observer, inject} from "mobx-react";
import { Themes } from '../../../../../common/mobile/lib/controller/Themes.js'; import { Themes } from '../../../../../common/mobile/lib/controller/Themes.js';

View file

@ -5,7 +5,7 @@ import { observer, inject } from "mobx-react";
import {Device} from '../../../../../common/mobile/utils/device'; import {Device} from '../../../../../common/mobile/utils/device';
import SettingsView from "../../view/settings/Settings"; import SettingsView from "../../view/settings/Settings";
import {LocalStorage} from "../../../../../common/mobile/utils/LocalStorage"; import {LocalStorage} from "../../../../../common/mobile/utils/LocalStorage.mjs";
const Settings = props => { const Settings = props => {
useEffect(() => { useEffect(() => {

View file

@ -1,5 +1,5 @@
import {makeObservable, action, observable} from 'mobx'; import {makeObservable, action, observable} from 'mobx';
import { LocalStorage } from '../../../../common/mobile/utils/LocalStorage'; import { LocalStorage } from '../../../../common/mobile/utils/LocalStorage.mjs';
export class storeAppOptions { export class storeAppOptions {
constructor() { constructor() {

View file

@ -1,5 +1,5 @@
import {makeObservable, action, observable} from 'mobx'; import {makeObservable, action, observable} from 'mobx';
import { LocalStorage } from '../../../../common/mobile/utils/LocalStorage'; import { LocalStorage } from '../../../../common/mobile/utils/LocalStorage.mjs';
export class storeApplicationSettings { export class storeApplicationSettings {
constructor() { constructor() {

View file

@ -5,7 +5,7 @@ import { useTranslation } from 'react-i18next';
import {Device} from '../../../../../common/mobile/utils/device'; import {Device} from '../../../../../common/mobile/utils/device';
import { ThemeColorPalette, CustomColorPicker } from '../../../../../common/mobile/lib/component/ThemeColorPalette.jsx'; import { ThemeColorPalette, CustomColorPicker } from '../../../../../common/mobile/lib/component/ThemeColorPalette.jsx';
import HighlightColorPalette from '../../../../../common/mobile/lib/component/HighlightColorPalette.jsx'; import HighlightColorPalette from '../../../../../common/mobile/lib/component/HighlightColorPalette.jsx';
import { LocalStorage } from '../../../../../common/mobile/utils/LocalStorage'; import { LocalStorage } from '../../../../../common/mobile/utils/LocalStorage.mjs';
const PageFonts = props => { const PageFonts = props => {
const isAndroid = Device.android; const isAndroid = Device.android;

View file

@ -1,4 +1,4 @@
module.exports = { const config = {
presets: [ presets: [
'@babel/preset-react', '@babel/preset-react',
['@babel/preset-env', { ['@babel/preset-env', {
@ -12,3 +12,5 @@ module.exports = {
['@babel/plugin-proposal-class-properties',{'loose':false}], ['@babel/plugin-proposal-class-properties',{'loose':false}],
], ],
}; };
export default config;

View file

@ -1,6 +1,6 @@
const webpack = require('webpack'); import webpack from 'webpack';
const rm = require('rimraf'); import rm from 'rimraf';
const config = require('./webpack.config.js'); import config from "./webpack.config.js";
const env = process.env.NODE_ENV || 'development'; const env = process.env.NODE_ENV || 'development';
const target = process.env.TARGET || 'web'; const target = process.env.TARGET || 'web';

View file

@ -1,15 +1,14 @@
const webpack = require('webpack'); import webpack from 'webpack';
const CopyWebpackPlugin = require('copy-webpack-plugin'); import CopyWebpackPlugin from 'copy-webpack-plugin';
const HtmlWebpackPlugin = require('html-webpack-plugin'); import HtmlWebpackPlugin from 'html-webpack-plugin';
const { CleanWebpackPlugin } = require('clean-webpack-plugin'); import MiniCssExtractPlugin from "mini-css-extract-plugin";
import CssMinimizerPlugin from "css-minimizer-webpack-plugin";
import TerserPlugin from "terser-webpack-plugin";
import fs from 'fs';
import path from 'path';
import { fileURLToPath } from "url";
const MiniCssExtractPlugin = require('mini-css-extract-plugin'); const __dirname = path.dirname(fileURLToPath(import.meta.url));
const CssMinimizerPlugin = require('css-minimizer-webpack-plugin');
const TerserPlugin = require('terser-webpack-plugin');
const WorkboxPlugin = require('workbox-webpack-plugin');
const fs = require('fs')
const path = require('path');
function resolvePath(dir) { function resolvePath(dir) {
return path.join(__dirname, '..', dir); return path.join(__dirname, '..', dir);
@ -22,7 +21,7 @@ const editor = process.env.TARGET_EDITOR == 'cell' ? 'spreadsheeteditor' :
const targetPatch = process.env.TARGET_EDITOR || 'word'; const targetPatch = process.env.TARGET_EDITOR || 'word';
const addonPath = process.env.ADDON_ENV || 'path'; const addonPath = process.env.ADDON_ENV || 'path';
module.exports = { const config = {
mode: env, mode: env,
entry: { entry: {
app: `../../apps/${editor}/mobile/src/app.js`, app: `../../apps/${editor}/mobile/src/app.js`,
@ -260,4 +259,6 @@ module.exports = {
//resource.request = `../../../${addonPath}/patch.jsx` : resource //resource.request = `../../../${addonPath}/patch.jsx` : resource
), ),
], ],
}; };
export default config;

View file

@ -18,6 +18,7 @@
"build-slide": "cross-env NODE_ENV=development TARGET_EDITOR=slide node ./build/build.js", "build-slide": "cross-env NODE_ENV=development TARGET_EDITOR=slide node ./build/build.js",
"build-cell": "cross-env NODE_ENV=development TARGET_EDITOR=cell node ./build/build.js" "build-cell": "cross-env NODE_ENV=development TARGET_EDITOR=cell node ./build/build.js"
}, },
"type": "module",
"browserslist": [ "browserslist": [
"Android >= 7", "Android >= 7",
"IOS >= 11", "IOS >= 11",
@ -28,9 +29,9 @@
], ],
"dependencies": { "dependencies": {
"dom7": "^3.0.0", "dom7": "^3.0.0",
"framework7": "^6.0.4", "framework7": "^7.0.8",
"framework7-icons": "^3.0.1", "framework7-icons": "^3.0.1",
"framework7-react": "^6.0.4", "framework7-react": "^7.0.8",
"i18next": "^21.8.9", "i18next": "^21.8.9",
"i18next-fetch-backend": "^5.0.0", "i18next-fetch-backend": "^5.0.0",
"postcss": "^8.4.12", "postcss": "^8.4.12",
@ -40,7 +41,8 @@
"react-i18next": "^11.8.5", "react-i18next": "^11.8.5",
"react-transition-group": "^4.4.5", "react-transition-group": "^4.4.5",
"swiper": "^8.2.4", "swiper": "^8.2.4",
"template7": "^1.4.2" "template7": "^1.4.2",
"url": "^0.11.0"
}, },
"devDependencies": { "devDependencies": {
"@babel/core": "^7.12.10", "@babel/core": "^7.12.10",