diff --git a/apps/remix-ide/src/assets/css/font-awesome.min.css b/apps/remix-ide/assets/css/font-awesome.min.css similarity index 100% rename from apps/remix-ide/src/assets/css/font-awesome.min.css rename to apps/remix-ide/assets/css/font-awesome.min.css diff --git a/apps/remix-ide/src/assets/css/pygment_trac.css b/apps/remix-ide/assets/css/pygment_trac.css similarity index 100% rename from apps/remix-ide/src/assets/css/pygment_trac.css rename to apps/remix-ide/assets/css/pygment_trac.css diff --git a/apps/remix-ide/src/assets/fonts/FontAwesome.otf b/apps/remix-ide/assets/fonts/FontAwesome.otf similarity index 100% rename from apps/remix-ide/src/assets/fonts/FontAwesome.otf rename to apps/remix-ide/assets/fonts/FontAwesome.otf diff --git a/apps/remix-ide/src/assets/fonts/fontawesome-webfont.eot b/apps/remix-ide/assets/fonts/fontawesome-webfont.eot similarity index 100% rename from apps/remix-ide/src/assets/fonts/fontawesome-webfont.eot rename to apps/remix-ide/assets/fonts/fontawesome-webfont.eot diff --git a/apps/remix-ide/src/assets/fonts/fontawesome-webfont.svg b/apps/remix-ide/assets/fonts/fontawesome-webfont.svg similarity index 100% rename from apps/remix-ide/src/assets/fonts/fontawesome-webfont.svg rename to apps/remix-ide/assets/fonts/fontawesome-webfont.svg diff --git a/apps/remix-ide/src/assets/fonts/fontawesome-webfont.ttf b/apps/remix-ide/assets/fonts/fontawesome-webfont.ttf similarity index 100% rename from apps/remix-ide/src/assets/fonts/fontawesome-webfont.ttf rename to apps/remix-ide/assets/fonts/fontawesome-webfont.ttf diff --git a/apps/remix-ide/src/assets/fonts/fontawesome-webfont.woff b/apps/remix-ide/assets/fonts/fontawesome-webfont.woff similarity index 100% rename from apps/remix-ide/src/assets/fonts/fontawesome-webfont.woff rename to apps/remix-ide/assets/fonts/fontawesome-webfont.woff diff --git a/apps/remix-ide/src/assets/fonts/fontawesome-webfont.woff2 b/apps/remix-ide/assets/fonts/fontawesome-webfont.woff2 similarity index 100% rename from apps/remix-ide/src/assets/fonts/fontawesome-webfont.woff2 rename to apps/remix-ide/assets/fonts/fontawesome-webfont.woff2 diff --git a/apps/remix-ide/src/assets/img/debuggerLogo.webp b/apps/remix-ide/assets/img/debuggerLogo.webp similarity index 100% rename from apps/remix-ide/src/assets/img/debuggerLogo.webp rename to apps/remix-ide/assets/img/debuggerLogo.webp diff --git a/apps/remix-ide/src/assets/img/gasStation_50.png b/apps/remix-ide/assets/img/gasStation_50.png similarity index 100% rename from apps/remix-ide/src/assets/img/gasStation_50.png rename to apps/remix-ide/assets/img/gasStation_50.png diff --git a/apps/remix-ide/src/assets/img/hexagon-remix-greengrey-texture.png b/apps/remix-ide/assets/img/hexagon-remix-greengrey-texture.png similarity index 100% rename from apps/remix-ide/src/assets/img/hexagon-remix-greengrey-texture.png rename to apps/remix-ide/assets/img/hexagon-remix-greengrey-texture.png diff --git a/apps/remix-ide/src/assets/img/homeStickers.png b/apps/remix-ide/assets/img/homeStickers.png similarity index 100% rename from apps/remix-ide/src/assets/img/homeStickers.png rename to apps/remix-ide/assets/img/homeStickers.png diff --git a/apps/remix-ide/src/assets/img/moreLogo.webp b/apps/remix-ide/assets/img/moreLogo.webp similarity index 100% rename from apps/remix-ide/src/assets/img/moreLogo.webp rename to apps/remix-ide/assets/img/moreLogo.webp diff --git a/apps/remix-ide/src/assets/img/mythxLogo.webp b/apps/remix-ide/assets/img/mythxLogo.webp similarity index 100% rename from apps/remix-ide/src/assets/img/mythxLogo.webp rename to apps/remix-ide/assets/img/mythxLogo.webp diff --git a/apps/remix-ide/src/assets/img/pipelineLogo.webp b/apps/remix-ide/assets/img/pipelineLogo.webp similarity index 100% rename from apps/remix-ide/src/assets/img/pipelineLogo.webp rename to apps/remix-ide/assets/img/pipelineLogo.webp diff --git a/apps/remix-ide/src/assets/img/sleepingRemiCroped.webp b/apps/remix-ide/assets/img/sleepingRemiCroped.webp similarity index 100% rename from apps/remix-ide/src/assets/img/sleepingRemiCroped.webp rename to apps/remix-ide/assets/img/sleepingRemiCroped.webp diff --git a/apps/remix-ide/src/assets/img/solidityLogo.webp b/apps/remix-ide/assets/img/solidityLogo.webp similarity index 100% rename from apps/remix-ide/src/assets/img/solidityLogo.webp rename to apps/remix-ide/assets/img/solidityLogo.webp diff --git a/apps/remix-ide/src/assets/img/sourceVerifyLogo.webp b/apps/remix-ide/assets/img/sourceVerifyLogo.webp similarity index 100% rename from apps/remix-ide/src/assets/img/sourceVerifyLogo.webp rename to apps/remix-ide/assets/img/sourceVerifyLogo.webp diff --git a/apps/remix-ide/src/assets/img/vyperLogo.webp b/apps/remix-ide/assets/img/vyperLogo.webp similarity index 100% rename from apps/remix-ide/src/assets/img/vyperLogo.webp rename to apps/remix-ide/assets/img/vyperLogo.webp diff --git a/apps/remix-ide/src/assets/img/workshopLogo.webp b/apps/remix-ide/assets/img/workshopLogo.webp similarity index 100% rename from apps/remix-ide/src/assets/img/workshopLogo.webp rename to apps/remix-ide/assets/img/workshopLogo.webp diff --git a/apps/remix-ide/src/assets/js/0.7.7/app.js b/apps/remix-ide/assets/js/0.7.7/app.js similarity index 100% rename from apps/remix-ide/src/assets/js/0.7.7/app.js rename to apps/remix-ide/assets/js/0.7.7/app.js diff --git a/apps/remix-ide/src/assets/js/browserfs.min.js b/apps/remix-ide/assets/js/browserfs.min.js similarity index 100% rename from apps/remix-ide/src/assets/js/browserfs.min.js rename to apps/remix-ide/assets/js/browserfs.min.js diff --git a/apps/remix-ide/babel.config.js b/apps/remix-ide/babel.config.js deleted file mode 100644 index f75fe53e2a..0000000000 --- a/apps/remix-ide/babel.config.js +++ /dev/null @@ -1,23 +0,0 @@ -module.exports = { - "extends": "../../babel.config.js", - "plugins": [ - [ - "module:fast-async", - { - "runtimePattern": null, - "compiler": { - "es7": true, - "noRuntime": true, - "promises": true, - "wrapAwait": true - } - } - ], - ["module:babel-plugin-yo-yoify"], - ["@babel/plugin-transform-object-assign"], - ["@babel/plugin-transform-modules-amd"] - ], - "presets": [ - "@babel/preset-env" - ] -} diff --git a/apps/remix-ide/src/app/tabs/staticanalysis/staticAnalysisView.js b/apps/remix-ide/src/app/tabs/staticanalysis/staticAnalysisView.js index 2723c73754..ae8d377797 100644 --- a/apps/remix-ide/src/app/tabs/staticanalysis/staticAnalysisView.js +++ b/apps/remix-ide/src/app/tabs/staticanalysis/staticAnalysisView.js @@ -1,5 +1,5 @@ 'use strict' -var StaticAnalysisRunner = require('remix-analyzer').CodeAnalysis +var StaticAnalysisRunner = require('@remix-project/remix-analyzer').CodeAnalysis var yo = require('yo-yo') var $ = require('jquery') var remixLib = require('remix-lib') diff --git a/apps/remix-ide/src/index.html b/apps/remix-ide/src/index.html deleted file mode 100644 index 629165f45d..0000000000 --- a/apps/remix-ide/src/index.html +++ /dev/null @@ -1,92 +0,0 @@ - - - - - - - - Remix - Ethereum IDE - - - - - - - - - diff --git a/apps/remix-ide/tsconfig.app.json b/apps/remix-ide/tsconfig.app.json deleted file mode 100644 index 2151bb6497..0000000000 --- a/apps/remix-ide/tsconfig.app.json +++ /dev/null @@ -1,9 +0,0 @@ -{ - "extends": "./tsconfig.json", - "compilerOptions": { - "outDir": "../../dist/out-tsc", - "types": ["node"] - }, - "exclude": ["**/*.spec.ts", "**/*.spec.tsx"], - "include": ["**/*.js", "**/*.jsx", "**/*.ts", "**/*.tsx"] -} diff --git a/apps/remix-ide/tsconfig.json b/apps/remix-ide/tsconfig.json deleted file mode 100644 index fa0186ddd0..0000000000 --- a/apps/remix-ide/tsconfig.json +++ /dev/null @@ -1,15 +0,0 @@ -{ - "extends": "../../tsconfig.json", - "compilerOptions": { - "jsx": "react", - "allowJs": true, - "esModuleInterop": true, - "allowSyntheticDefaultImports": true, - "types": ["node", "jest"] - }, - "files": [ - "../../node_modules/@nrwl/react/typings/cssmodule.d.ts", - "../../node_modules/@nrwl/react/typings/image.d.ts" - ], - "include": ["**/*.js", "**/*.jsx", "**/*.ts", "**/*.tsx"] -} diff --git a/apps/remix-ide/tsconfig.spec.json b/apps/remix-ide/tsconfig.spec.json deleted file mode 100644 index 559410b96a..0000000000 --- a/apps/remix-ide/tsconfig.spec.json +++ /dev/null @@ -1,15 +0,0 @@ -{ - "extends": "./tsconfig.json", - "compilerOptions": { - "outDir": "../../dist/out-tsc", - "module": "commonjs", - "types": ["jest", "node"] - }, - "include": [ - "**/*.spec.ts", - "**/*.spec.tsx", - "**/*.spec.js", - "**/*.spec.jsx", - "**/*.d.ts" - ] -} diff --git a/apps/remix-ide/webpack.config.js b/apps/remix-ide/webpack.config.js deleted file mode 100644 index 0f308d0d52..0000000000 --- a/apps/remix-ide/webpack.config.js +++ /dev/null @@ -1,26 +0,0 @@ -const babelWebpack = require('@nrwl/react/plugins/webpack') -const nodeExternals = require('webpack-node-externals') - -module.exports = config => { - const babelWebpackConfig = babelWebpack(config) - const { entry, devtool, mode, output, module, resolve, performance, plugins, watch } = babelWebpackConfig - - console.log('babelWebpackConfig: ', Object.keys(babelWebpackConfig)) - - return { - ...babelWebpackConfig, - module: { - rules: [ - { - test: /\.m?js$/, - exclude: /(node_modules|bower_components)/, - loader: 'babel-loader' - } - ] - }, - target: 'node', - externals: [nodeExternals({ - modulesFromFile: true - })] - } -} diff --git a/nx.json b/nx.json index d411a67ae1..c6af465a6b 100644 --- a/nx.json +++ b/nx.json @@ -59,13 +59,6 @@ "remix-solidity", "remix-tests" ] - }, - "remix-ide-js": { - "tags": [] - }, - "remix-ide-js-e2e": { - "tags": [], - "implicitDependencies": ["remix-ide-js"] } } } diff --git a/package-lock.json b/package-lock.json index d5e11075cd..ff1530b692 100644 --- a/package-lock.json +++ b/package-lock.json @@ -9449,6 +9449,73 @@ } } }, + "babel-plugin-module-resolver": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/babel-plugin-module-resolver/-/babel-plugin-module-resolver-4.0.0.tgz", + "integrity": "sha512-3pdEq3PXALilSJ6dnC4wMWr0AZixHRM4utpdpBR9g5QG7B7JwWyukQv7a9hVxkbGFl+nQbrHDqqQOIBtTXTP/Q==", + "dev": true, + "requires": { + "find-babel-config": "^1.2.0", + "glob": "^7.1.6", + "pkg-up": "^3.1.0", + "reselect": "^4.0.0", + "resolve": "^1.13.1" + }, + "dependencies": { + "find-up": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-3.0.0.tgz", + "integrity": "sha512-1yD6RmLI1XBfxugvORwlck6f75tYL+iR0jqwsOrOxMZyGYqUuDhJ0l4AXdO1iX/FTs9cBAMEk1gWSEx1kSbylg==", + "dev": true, + "requires": { + "locate-path": "^3.0.0" + } + }, + "locate-path": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-3.0.0.tgz", + "integrity": "sha512-7AO748wWnIhNqAuaty2ZWHkQHRSNfPVIsPIfwEOWO22AmaoVrWavlOcMR5nzTLNYvp36X220/maaRsrec1G65A==", + "dev": true, + "requires": { + "p-locate": "^3.0.0", + "path-exists": "^3.0.0" + } + }, + "p-limit": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz", + "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==", + "dev": true, + "requires": { + "p-try": "^2.0.0" + } + }, + "p-locate": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-3.0.0.tgz", + "integrity": "sha512-x+12w/To+4GFfgJhBEpiDcLozRJGegY+Ei7/z0tSLkMmxGZNybVMSfWj9aJn8Z5Fc7dBUNJOOVgPv2H7IwulSQ==", + "dev": true, + "requires": { + "p-limit": "^2.0.0" + } + }, + "p-try": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz", + "integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==", + "dev": true + }, + "pkg-up": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/pkg-up/-/pkg-up-3.1.0.tgz", + "integrity": "sha512-nDywThFk1i4BQK4twPQ6TA4RT8bDY96yeuCVBWL3ePARCiEKDRSrNGbFIgUJpLp+XeIR65v8ra7WuJOFUBtkMA==", + "dev": true, + "requires": { + "find-up": "^3.0.0" + } + } + } + }, "babel-plugin-styled-components": { "version": "1.10.7", "resolved": "https://registry.npmjs.org/babel-plugin-styled-components/-/babel-plugin-styled-components-1.10.7.tgz", @@ -16008,6 +16075,24 @@ } } }, + "find-babel-config": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/find-babel-config/-/find-babel-config-1.2.0.tgz", + "integrity": "sha512-jB2CHJeqy6a820ssiqwrKMeyC6nNdmrcgkKWJWmpoxpE8RKciYJXCcXRq1h2AzCo5I5BJeN2tkGEO3hLTuePRA==", + "dev": true, + "requires": { + "json5": "^0.5.1", + "path-exists": "^3.0.0" + }, + "dependencies": { + "json5": { + "version": "0.5.1", + "resolved": "https://registry.npmjs.org/json5/-/json5-0.5.1.tgz", + "integrity": "sha1-Hq3nrMASA0rYTiOWdn6tn6VJWCE=", + "dev": true + } + } + }, "find-cache-dir": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/find-cache-dir/-/find-cache-dir-2.1.0.tgz", @@ -30627,6 +30712,12 @@ "resolved": "https://registry.npmjs.org/requires-port/-/requires-port-1.0.0.tgz", "integrity": "sha1-kl0mAdOaxIXgkc8NpcbmlNw9yv8=" }, + "reselect": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/reselect/-/reselect-4.0.0.tgz", + "integrity": "sha512-qUgANli03jjAyGlnbYVAV5vvnOmJnODyABz51RdBN7M4WaVu8mecZWgyQNkG8Yqe3KRGRt0l4K4B3XVEULC4CA==", + "dev": true + }, "reserved-words": { "version": "0.1.2", "resolved": "https://registry.npmjs.org/reserved-words/-/reserved-words-0.1.2.tgz", diff --git a/package.json b/package.json index 05bfee1223..1c8b35e513 100644 --- a/package.json +++ b/package.json @@ -103,6 +103,14 @@ "sourceMapsAbsolute": false, "sourceMaps": true, "plugins": [ + [ + "module:module-resolver", { + "root": ["."], + "alias": { + "@remix-project/remix-analyzer": "libs/remix-analyzer/index.ts" + } + } + ], [ "module:fast-async", { @@ -179,6 +187,7 @@ "babel-eslint": "^10.0.0", "babel-plugin-add-module-exports": "^1.0.2", "babel-plugin-fast-async": "^6.1.2", + "babel-plugin-module-resolver": "^4.0.0", "babel-plugin-transform-object-rest-spread": "^6.26.0", "babel-plugin-yo-yoify": "^2.0.0", "babel-preset-env": "^1.7.0", diff --git a/workspace.json b/workspace.json index d8e7fe1550..116e619aa0 100644 --- a/workspace.json +++ b/workspace.json @@ -8,43 +8,13 @@ "schematics": {}, "architect": { "build": { - "builder": "@nrwl/web:build", + "builder": "@nrwl/workspace:run-commands", "options": { - "outputPath": "dist/apps/remix-ide", - "index": "apps/remix-ide/src/index.html", - "main": "apps/remix-ide/src/index.js", - "polyfills": "apps/remix-ide/src/polyfills.js", - "tsConfig": "apps/remix-ide/tsconfig.app.json", - "assets": [ - "apps/remix-ide/src/assets" - ], - "styles": [], - "scripts": [], - "webpackConfig": "apps/remix-ide/webpack.config.js" - }, - "configurations": { - "production": { - "fileReplacements": [ - { - "replace": "apps/remix-ide/src/environments/environment.js", - "with": "apps/remix-ide/src/environments/environment.prod.js" - } - ], - "optimization": true, - "outputHashing": "all", - "sourceMap": false, - "extractCss": true, - "namedChunks": false, - "extractLicenses": true, - "vendorChunk": false, - "budgets": [ - { - "type": "initial", - "maximumWarning": "2mb", - "maximumError": "5mb" - } - ] - } + "commands": [ + { + "command": "browserify apps/remix-ide/src/index.js -o apps/remix-ide/build/app.js --exclude solc" + } + ] } }, "start": { @@ -58,14 +28,13 @@ } }, "serve": { - "builder": "@nrwl/web:dev-server", + "builder": "@nrwl/workspace:run-commands", "options": { - "buildTarget": "remix-ide:build" - }, - "configurations": { - "production": { - "buildTarget": "remix-ide:build:production" - } + "commands": [ + { + "command": "npx http-server ./apps/remix-ide" + } + ] } }, "lint": { @@ -408,115 +377,6 @@ } } } - }, - "remix-ide-js": { - "root": "apps/remix-ide-js", - "sourceRoot": "apps/remix-ide-js/src", - "projectType": "application", - "schematics": {}, - "architect": { - "build": { - "builder": "@nrwl/web:build", - "options": { - "outputPath": "dist/apps/remix-ide-js", - "index": "apps/remix-ide-js/src/index.html", - "main": "apps/remix-ide-js/src/main.js", - "polyfills": "apps/remix-ide-js/src/polyfills.js", - "tsConfig": "apps/remix-ide-js/tsconfig.app.json", - "assets": [ - "apps/remix-ide-js/src/favicon.ico", - "apps/remix-ide-js/src/assets" - ], - "styles": ["apps/remix-ide-js/src/styles.css"], - "scripts": [], - "webpackConfig": "@nrwl/react/plugins/webpack" - }, - "configurations": { - "production": { - "fileReplacements": [ - { - "replace": "apps/remix-ide-js/src/environments/environment.js", - "with": "apps/remix-ide-js/src/environments/environment.prod.js" - } - ], - "optimization": true, - "outputHashing": "all", - "sourceMap": false, - "extractCss": true, - "namedChunks": false, - "extractLicenses": true, - "vendorChunk": false, - "budgets": [ - { - "type": "initial", - "maximumWarning": "2mb", - "maximumError": "5mb" - } - ] - } - } - }, - "serve": { - "builder": "@nrwl/web:dev-server", - "options": { - "buildTarget": "remix-ide-js:build" - }, - "configurations": { - "production": { - "buildTarget": "remix-ide-js:build:production" - } - } - }, - "lint": { - "builder": "@nrwl/linter:lint", - "options": { - "linter": "eslint", - "config": "apps/remix-ide-js/.eslintrc", - "tsConfig": [ - "apps/remix-ide-js/tsconfig.app.json", - "apps/remix-ide-js/tsconfig.spec.json" - ], - "exclude": ["**/node_modules/**", "!apps/remix-ide-js/**"] - } - }, - "test": { - "builder": "@nrwl/jest:jest", - "options": { - "jestConfig": "apps/remix-ide-js/jest.config.js", - "tsConfig": "apps/remix-ide-js/tsconfig.spec.json", - "passWithNoTests": true - } - } - } - }, - "remix-ide-js-e2e": { - "root": "apps/remix-ide-js-e2e", - "sourceRoot": "apps/remix-ide-js-e2e/src", - "projectType": "application", - "architect": { - "e2e": { - "builder": "@nrwl/cypress:cypress", - "options": { - "cypressConfig": "apps/remix-ide-js-e2e/cypress.json", - "tsConfig": "apps/remix-ide-js-e2e/tsconfig.e2e.json", - "devServerTarget": "remix-ide-js:serve" - }, - "configurations": { - "production": { - "devServerTarget": "remix-ide-js:serve:production" - } - } - }, - "lint": { - "builder": "@nrwl/linter:lint", - "options": { - "linter": "eslint", - "config": "apps/remix-ide-js-e2e/.eslintrc", - "tsConfig": ["apps/remix-ide-js-e2e/tsconfig.e2e.json"], - "exclude": ["**/node_modules/**", "!apps/remix-ide-js-e2e/**"] - } - } - } } }, "cli": {