Merge pull request #2020 from ONLYOFFICE/feature/update-webpack-config

Feature/update webpack config
This commit is contained in:
maxkadushkin 2022-10-20 17:14:30 +03:00 committed by GitHub
commit a49071c6e3
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
37 changed files with 78 additions and 83 deletions

View file

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

View file

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

View file

@ -3,7 +3,7 @@ import { inject, observer } from "mobx-react";
import { f7 } from 'framework7-react';
import {Device} from '../../../../../common/mobile/utils/device';
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';

View file

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

View file

@ -1,9 +1,6 @@
import React, { Component } from 'react';
import { Searchbar, Popover, Popup, View, Page, List, ListItem, Navbar, NavRight, Link } from 'framework7-react';
import { Toggle } from 'framework7-react';
import { f7 } from 'framework7-react';
import { Dom7 } from 'framework7';
import { Popover, Popup, View, f7 } from 'framework7-react';
import { Device } from '../../../../common/mobile/utils/device';
import { observable, runInAction } from "mobx";
import { observer } from "mobx-react";
@ -105,11 +102,7 @@ class SearchView extends Component {
$editor.on('pointerdown', this.onEditorTouchStart);
$editor.on('pointerup', this.onEditorTouchEnd);
if( !this.searchbar ) {
this.searchbar = f7.searchbar.get('.searchbar');
}
if( !this.searchbar ) {
if(!this.searchbar) {
this.searchbar = f7.searchbar.create({
el: '.searchbar',
customSearch: true,

View file

@ -4,7 +4,7 @@ import { createRoot } from 'react-dom/client';
// Import Framework7
import Framework7 from 'framework7/lite-bundle';
import { Dom7 } from 'framework7';
import { Dom7 } from 'framework7/lite-bundle';
window.$$ = Dom7;
// Import Framework7-React Plugin
@ -22,19 +22,19 @@ import('./less/app.less');
// Import App Component
import App from './view/app';
import { I18nextProvider } from 'react-i18next';
import i18n from './lib/i18n';
import i18n from './lib/i18n.js';
import App from './view/app.jsx';
import { Provider } from 'mobx-react'
import { stores } from './store/mainStore'
import { LocalStorage } from '../../../common/mobile/utils/LocalStorage';
import { Provider } from 'mobx-react';
import { stores } from './store/mainStore.js';
// import { LocalStorage } from '../../../common/mobile/utils/LocalStorage';
const container = document.getElementById('app');
const root = createRoot(container);
// Init F7 React Plugin
Framework7.use(Framework7React)
Framework7.use(Framework7React);
// Mount React App
root.render(

View file

@ -2,7 +2,7 @@ import React, { useContext } from 'react';
import { f7 } from 'framework7-react';
import { inject, observer } from "mobx-react";
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 { 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 { f7 } from "framework7-react";
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 {InitReviewController as ReviewController} from '../../../../common/mobile/lib/controller/collaboration/Review.jsx';
import { onAdvancedOptions } from './settings/Download.jsx';

View file

@ -1,7 +1,6 @@
import React, { useEffect } from 'react';
import { List, ListItem, Toggle, Page, Navbar, NavRight, Link } from 'framework7-react';
import { List, ListItem, Toggle, Page, Navbar, NavRight, Link, f7 } from 'framework7-react';
import { SearchController, SearchView, SearchSettingsView } from '../../../../common/mobile/lib/controller/Search';
import { f7 } from 'framework7-react';
import { withTranslation } from 'react-i18next';
import { Device } from '../../../../common/mobile/utils/device';
import { observer, inject } from "mobx-react";
@ -96,12 +95,12 @@ const Search = withTranslation()(props => {
const _t = t('Settings', {returnObjects: true});
useEffect(() => {
if (f7.searchbar.get('.searchbar')?.enabled && Device.phone) {
if(f7.searchbar.get('.searchbar')?.enabled && Device.phone) {
const api = Common.EditorApi.get();
$$('.searchbar-input').focus();
api.asc_enableKeyEvents(false);
}
});
}, []);
const onSearchQuery = params => {
const api = Common.EditorApi.get();

View file

@ -3,7 +3,7 @@ import { inject, observer } from 'mobx-react';
import { f7 } from 'framework7-react';
import { useTranslation } from 'react-i18next';
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 {t} = useTranslation();

View file

@ -1,6 +1,6 @@
import React, { Component } from "react";
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 { 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 SettingsView from "../../view/settings/Settings";
import {LocalStorage} from "../../../../../common/mobile/utils/LocalStorage";
import {LocalStorage} from "../../../../../common/mobile/utils/LocalStorage.mjs";
const Settings = props => {
useEffect(() => {

View file

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

View file

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

View file

@ -5,7 +5,7 @@ import { useTranslation } from 'react-i18next';
import {Device} from '../../../../../common/mobile/utils/device';
import { ThemeColorPalette, CustomColorPicker } from '../../../../../common/mobile/lib/component/ThemeColorPalette.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 isAndroid = Device.android;

View file

@ -4,7 +4,7 @@ import { createRoot } from 'react-dom/client';
// Import Framework7
import Framework7 from 'framework7/lite-bundle';
import { Dom7 } from 'framework7';
import { Dom7 } from 'framework7/lite-bundle';
window.$$ = Dom7;
// Import Framework7-React Plugin
@ -20,19 +20,19 @@ window.$ = jQuery;
import('./less/app.less');
// Import App Component
import App from './page/app';
import App from './page/app.jsx';
import { I18nextProvider } from 'react-i18next';
import i18n from './lib/i18n.js';
import { Provider } from 'mobx-react'
import { stores } from './store/mainStore'
import { LocalStorage } from '../../../common/mobile/utils/LocalStorage';
import { Provider } from 'mobx-react';
import { stores } from './store/mainStore.js';
// import { LocalStorage } from '../../../common/mobile/utils/LocalStorage';
const container = document.getElementById('app');
const root = createRoot(container);
// Init F7 React Plugin
Framework7.use(Framework7React)
Framework7.use(Framework7React);
// Mount React App
root.render(

View file

@ -2,11 +2,11 @@ import React, { useContext } from 'react';
import { f7 } from 'framework7-react';
import { inject, observer } from "mobx-react";
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 { idContextMenuElement } from '../../../../common/mobile/lib/view/ContextMenu';
import { Device } from '../../../../common/mobile/utils/device';
// import { Device } from '../../../../common/mobile/utils/device';
import EditorUIController from '../lib/patch';
@inject ( stores => ({

View file

@ -11,7 +11,7 @@ import {
} from "../../../../common/mobile/lib/controller/collaboration/Comments";
import ErrorController from "./Error";
import LongActionsController from "./LongActions";
import {LocalStorage} from "../../../../common/mobile/utils/LocalStorage";
import {LocalStorage} from "../../../../common/mobile/utils/LocalStorage.mjs";
import About from '../../../../common/mobile/lib/view/About';
import PluginsController from '../../../../common/mobile/lib/controller/Plugins.jsx';
import { Device } from '../../../../common/mobile/utils/device';

View file

@ -1,6 +1,6 @@
import React, { Component } from "react";
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 { Themes } from '../../../../../common/mobile/lib/controller/Themes.js';

View file

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

View file

@ -4,7 +4,7 @@ import {f7, Swiper, View, SwiperSlide, List, ListItem, ListButton, ListInput, Ic
import { useTranslation } from 'react-i18next';
import {Device} from '../../../../../common/mobile/utils/device';
import { ThemeColorPalette, CustomColorPicker } from '../../../../../common/mobile/lib/component/ThemeColorPalette.jsx';
import { LocalStorage } from '../../../../../common/mobile/utils/LocalStorage';
import { LocalStorage } from '../../../../../common/mobile/utils/LocalStorage.mjs';
import HighlightColorPalette from '../../../../../common/mobile/lib/component/HighlightColorPalette.jsx';
const EditText = props => {

View file

@ -3,7 +3,7 @@ import { observer, inject } from "mobx-react";
import {f7, Page, Navbar, List, ListItem, BlockTitle, Toggle } from "framework7-react";
import { useTranslation } from "react-i18next";
import { Themes } from '../../../../../common/mobile/lib/controller/Themes.js';
import { LocalStorage } from "../../../../../common/mobile/utils/LocalStorage.js";
import { LocalStorage } from "../../../../../common/mobile/utils/LocalStorage.mjs";
const PageApplicationSettings = props => {
const { t } = useTranslation();

View file

@ -4,7 +4,7 @@ import { createRoot } from 'react-dom/client';
// Import Framework7
import Framework7 from 'framework7/lite-bundle';
import { Dom7 } from 'framework7';
import { Dom7 } from 'framework7/lite-bundle';
window.$$ = Dom7;
// Import Framework7-React Plugin
@ -19,16 +19,16 @@ window.$ = jQuery;
// Import App Custom Styles
import('./less/app.less');
import '../../../../../sdkjs/cell/css/main-mobile.css'
import '../../../../../sdkjs/cell/css/main-mobile.css';
// Import App Component
import App from './page/app';
import App from './page/app.jsx';
import { I18nextProvider } from 'react-i18next';
import i18n from './lib/i18n.js';
import { Provider } from 'mobx-react';
import { stores } from './store/mainStore';
import { LocalStorage } from '../../../common/mobile/utils/LocalStorage';
import { stores } from './store/mainStore.js';
// import { LocalStorage } from '../../../common/mobile/utils/LocalStorage.mjs';
const container = document.getElementById('app');
const root = createRoot(container);

View file

@ -2,11 +2,11 @@ import React, { useContext } from 'react';
import { f7 } from 'framework7-react';
import { inject, observer } from "mobx-react";
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 { idContextMenuElement } from '../../../../common/mobile/lib/view/ContextMenu';
import { Device } from '../../../../common/mobile/utils/device';
// import { Device } from '../../../../common/mobile/utils/device';
import EditorUIController from '../lib/patch';
@inject (stores => ({

View file

@ -12,7 +12,7 @@ import {
EditCommentController,
ViewCommentsSheetsController
} from "../../../../common/mobile/lib/controller/collaboration/Comments";
import {LocalStorage} from "../../../../common/mobile/utils/LocalStorage";
import {LocalStorage} from "../../../../common/mobile/utils/LocalStorage.mjs";
import LongActionsController from "./LongActions";
import ErrorController from "./Error";
import app from "../page/app";

View file

@ -2,9 +2,7 @@ import React, {Component} from 'react';
import {observer, inject} from "mobx-react";
import { f7 } from 'framework7-react';
import {Device} from '../../../../../common/mobile/utils/device';
import {LocalStorage} from '../../../../../common/mobile/utils/LocalStorage';
import {LocalStorage} from '../../../../../common/mobile/utils/LocalStorage.mjs';
import {AddFunction} from '../../view/add/AddFunction';
class _FunctionGroups extends Component {

View file

@ -1,7 +1,7 @@
import React, { Component } from "react";
import { ApplicationSettings } from "../../view/settings/ApplicationSettings";
import {observer, inject} from "mobx-react";
import { LocalStorage } from '../../../../../common/mobile/utils/LocalStorage';
import { LocalStorage } from '../../../../../common/mobile/utils/LocalStorage.mjs';
import {FunctionGroups} from '../../controller/add/AddFunction';
class ApplicationSettingsController extends Component {

View file

@ -12,7 +12,7 @@ import routes from '../router/routes.js';
import '../../../../common/main/lib/util/utils.js';
import '../../../../common/main/lib/util/LanguageInfo.js';
import {LocalStorage} from '../../../../common/mobile/utils/LocalStorage.js';
import {LocalStorage} from '../../../../common/mobile/utils/LocalStorage.mjs';
import Notifications from '../../../../common/mobile/utils/notifications.js';
import {MainController} from '../controller/Main';
import {Device} from '../../../../common/mobile/utils/device';

View file

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

View file

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

View file

@ -4,7 +4,7 @@ import {f7, List, ListItem, Icon, Row, Button, Page, Navbar, Segmented, BlockTit
import { useTranslation } from 'react-i18next';
import {Device} from '../../../../../common/mobile/utils/device';
import { ThemeColorPalette, CustomColorPicker } from '../../../../../common/mobile/lib/component/ThemeColorPalette.jsx';
import { LocalStorage } from '../../../../../common/mobile/utils/LocalStorage';
import { LocalStorage } from '../../../../../common/mobile/utils/LocalStorage.mjs';
const EditCell = props => {
const isAndroid = Device.android;

View file

@ -4,7 +4,7 @@ import {f7, List, ListItem, Icon, Row, Button, Page, Navbar, NavRight, Segmented
import { useTranslation } from 'react-i18next';
import {Device} from '../../../../../common/mobile/utils/device';
import { ThemeColorPalette, CustomColorPicker } from '../../../../../common/mobile/lib/component/ThemeColorPalette.jsx';
import { LocalStorage } from '../../../../../common/mobile/utils/LocalStorage';
import { LocalStorage } from '../../../../../common/mobile/utils/LocalStorage.mjs';
const EditText = props => {
const isAndroid = Device.android;

View file

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

View file

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

View file

@ -1,15 +1,14 @@
const webpack = require('webpack');
const CopyWebpackPlugin = require('copy-webpack-plugin');
const HtmlWebpackPlugin = require('html-webpack-plugin');
const { CleanWebpackPlugin } = require('clean-webpack-plugin');
import webpack from 'webpack';
import CopyWebpackPlugin from 'copy-webpack-plugin';
import HtmlWebpackPlugin from 'html-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 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');
const __dirname = path.dirname(fileURLToPath(import.meta.url));
function resolvePath(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 addonPath = process.env.ADDON_ENV || 'path';
module.exports = {
const config = {
mode: env,
entry: {
app: `../../apps/${editor}/mobile/src/app.js`,
@ -261,3 +260,5 @@ module.exports = {
),
],
};
export default config;

View file

@ -18,6 +18,7 @@
"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"
},
"type": "module",
"browserslist": [
"Android >= 7",
"IOS >= 11",
@ -28,9 +29,9 @@
],
"dependencies": {
"dom7": "^3.0.0",
"framework7": "^6.0.4",
"framework7": "^7.0.8",
"framework7-icons": "^3.0.1",
"framework7-react": "^6.0.4",
"framework7-react": "^7.0.8",
"i18next": "^21.8.9",
"i18next-fetch-backend": "^5.0.0",
"postcss": "^8.4.12",
@ -40,7 +41,8 @@
"react-i18next": "^11.8.5",
"react-transition-group": "^4.4.5",
"swiper": "^8.2.4",
"template7": "^1.4.2"
"template7": "^1.4.2",
"url": "^0.11.0"
},
"devDependencies": {
"@babel/core": "^7.12.10",