diff --git a/docs/ARCHITECTURE.md b/docs/ARCHITECTURE.md index 3783d357..85af2085 100644 --- a/docs/ARCHITECTURE.md +++ b/docs/ARCHITECTURE.md @@ -62,7 +62,7 @@ since fresh eyes could help unveil things that we take for granted, but should be documented instead! [lego-blocks]: https://github.com/sindresorhus/ama/issues/10#issuecomment-117766328 -[exit-codes]: https://github.com/balena-io/etcher/blob/master/lib/shared/exit-codes.js +[exit-codes]: https://github.com/balena-io/etcher/blob/master/lib/gui/app/modules/exit-codes.js [gui-dir]: https://github.com/balena-io/etcher/tree/master/lib/gui [electron]: http://electron.atom.io [nodejs]: https://nodejs.org diff --git a/lib/gui/app/app.js b/lib/gui/app/app.js index 897f00c1..e37f8684 100644 --- a/lib/gui/app/app.js +++ b/lib/gui/app/app.js @@ -31,8 +31,8 @@ const sdk = require('etcher-sdk') const _ = require('lodash') const uuidV4 = require('uuid/v4') -const EXIT_CODES = require('../../shared/exit-codes') -const messages = require('../../shared/messages') +const EXIT_CODES = require('../../gui/app/modules/exit-codes') +const messages = require('../../gui/app/modules/messages') const store = require('./models/store') const packageJSON = require('../../../package.json') const flashState = require('./models/flash-state') diff --git a/lib/gui/app/components/drive-selector/controllers/drive-selector.js b/lib/gui/app/components/drive-selector/controllers/drive-selector.js index 35bc3c19..119ba5a8 100644 --- a/lib/gui/app/components/drive-selector/controllers/drive-selector.js +++ b/lib/gui/app/components/drive-selector/controllers/drive-selector.js @@ -19,12 +19,12 @@ const angular = require('angular') const _ = require('lodash') const Bluebird = require('bluebird') -const constraints = require('../../../../../shared/drive-constraints') +const constraints = require('../../../../../gui/app/modules/drive-constraints') const store = require('../../../models/store') const analytics = require('../../../modules/analytics') const availableDrives = require('../../../models/available-drives') const selectionState = require('../../../models/selection-state') -const utils = require('../../../../../shared/utils') +const utils = require('../../../../../gui/app/modules/utils') module.exports = function ( $q, diff --git a/lib/gui/app/components/drive-selector/target-selector.jsx b/lib/gui/app/components/drive-selector/target-selector.jsx index 9706b89a..a1732d5b 100644 --- a/lib/gui/app/components/drive-selector/target-selector.jsx +++ b/lib/gui/app/components/drive-selector/target-selector.jsx @@ -31,7 +31,7 @@ const { } = require('./../../styled-components') const { Txt } = require('rendition') const middleEllipsis = require('./../../utils/middle-ellipsis') -const { bytesToClosestUnit } = require('./../../../../shared/units') +const { bytesToClosestUnit } = require('./../../../../gui/app/modules/units') const TargetDetail = styled((props) => ( diff --git a/lib/gui/app/components/file-selector/controllers/file-selector.js b/lib/gui/app/components/file-selector/controllers/file-selector.js index 5463ec68..e2fab386 100644 --- a/lib/gui/app/components/file-selector/controllers/file-selector.js +++ b/lib/gui/app/components/file-selector/controllers/file-selector.js @@ -19,7 +19,7 @@ const _ = require('lodash') const os = require('os') const settings = require('../../../models/settings') -const utils = require('../../../../../shared/utils') +const utils = require('../../../../../gui/app/modules/utils') const angular = require('angular') /* eslint-disable lodash/prefer-lodash-method */ diff --git a/lib/gui/app/components/file-selector/file-selector/file-list.jsx b/lib/gui/app/components/file-selector/file-selector/file-list.jsx index 74daf296..2a15bddf 100644 --- a/lib/gui/app/components/file-selector/file-selector/file-list.jsx +++ b/lib/gui/app/components/file-selector/file-selector/file-list.jsx @@ -25,7 +25,7 @@ const colors = require('./colors') const prettyBytes = require('pretty-bytes') const files = require('../../../models/files') const middleEllipsis = require('../../../utils/middle-ellipsis') -const supportedFormats = require('../../../../../shared/supported-formats') +const supportedFormats = require('../../../../../gui/app/modules/supported-formats') const debug = require('debug')('etcher:gui:file-selector') diff --git a/lib/gui/app/components/file-selector/file-selector/file-selector.jsx b/lib/gui/app/components/file-selector/file-selector/file-selector.jsx index ba262d74..c654da1c 100644 --- a/lib/gui/app/components/file-selector/file-selector/file-selector.jsx +++ b/lib/gui/app/components/file-selector/file-selector/file-selector.jsx @@ -35,9 +35,9 @@ const selectionState = require('../../../models/selection-state') const store = require('../../../models/store') const osDialog = require('../../../os/dialog') const exceptionReporter = require('../../../modules/exception-reporter') -const messages = require('../../../../../shared/messages') -const errors = require('../../../../../shared/errors') -const supportedFormats = require('../../../../../shared/supported-formats') +const messages = require('../../../../../gui/app/modules/messages') +const errors = require('../../../../../gui/app/modules/errors') +const supportedFormats = require('../../../../../gui/app/modules/supported-formats') const analytics = require('../../../modules/analytics') const debug = require('debug')('etcher:gui:file-selector') diff --git a/lib/gui/app/components/image-selector/image-selector.jsx b/lib/gui/app/components/image-selector/image-selector.jsx index d19692cf..0db215ee 100644 --- a/lib/gui/app/components/image-selector/image-selector.jsx +++ b/lib/gui/app/components/image-selector/image-selector.jsx @@ -22,7 +22,7 @@ const propTypes = require('prop-types') const middleEllipsis = require('./../../utils/middle-ellipsis') -const shared = require('./../../../../shared/units') +const shared = require('./../../../../gui/app/modules/units') const { StepButton, StepNameButton, diff --git a/lib/gui/app/models/flash-state.js b/lib/gui/app/models/flash-state.js index 493d95dc..668af438 100644 --- a/lib/gui/app/models/flash-state.js +++ b/lib/gui/app/models/flash-state.js @@ -18,7 +18,7 @@ const _ = require('lodash') const store = require('./store') -const units = require('../../../shared/units') +const units = require('../../../gui/app/modules/units') /** * @summary Reset flash state diff --git a/lib/gui/app/models/settings.js b/lib/gui/app/models/settings.js index 1002a407..9e3b7ee1 100644 --- a/lib/gui/app/models/settings.js +++ b/lib/gui/app/models/settings.js @@ -23,7 +23,7 @@ const _ = require('lodash') const Bluebird = require('bluebird') const localSettings = require('./local-settings') -const errors = require('../../../shared/errors') +const errors = require('../modules/errors') const packageJSON = require('../../../../package.json') const debug = require('debug')('etcher:models:settings') diff --git a/lib/gui/app/models/store.js b/lib/gui/app/models/store.js index 4a9f2247..94d7e378 100644 --- a/lib/gui/app/models/store.js +++ b/lib/gui/app/models/store.js @@ -20,11 +20,11 @@ const Immutable = require('immutable') const _ = require('lodash') const redux = require('redux') const uuidV4 = require('uuid/v4') -const constraints = require('../../../shared/drive-constraints') -const supportedFormats = require('../../../shared/supported-formats') -const errors = require('../../../shared/errors') -const fileExtensions = require('../../../shared/file-extensions') -const utils = require('../../../shared/utils') +const constraints = require('../modules/drive-constraints') +const supportedFormats = require('../modules/supported-formats') +const errors = require('../modules/errors') +const fileExtensions = require('../modules/file-extensions') +const utils = require('../modules/utils') const settings = require('./settings') /** diff --git a/lib/gui/app/modules/analytics.js b/lib/gui/app/modules/analytics.js index 40a648f2..f6ba83e2 100644 --- a/lib/gui/app/modules/analytics.js +++ b/lib/gui/app/modules/analytics.js @@ -20,7 +20,7 @@ const _ = require('lodash') const resinCorvus = require('resin-corvus/browser') const packageJSON = require('../../../../package.json') const settings = require('../models/settings') -const { getConfig, hasProps } = require('../../../shared/utils') +const { getConfig, hasProps } = require('../../../gui/app/modules/utils') const sentryToken = settings.get('analyticsSentryToken') || _.get(packageJSON, [ 'analytics', 'sentry', 'token' ]) diff --git a/lib/gui/modules/child-writer.js b/lib/gui/app/modules/child-writer.js similarity index 98% rename from lib/gui/modules/child-writer.js rename to lib/gui/app/modules/child-writer.js index ba613e7d..1110d05d 100644 --- a/lib/gui/modules/child-writer.js +++ b/lib/gui/app/modules/child-writer.js @@ -20,8 +20,8 @@ const Bluebird = require('bluebird') const _ = require('lodash') const ipc = require('node-ipc') const sdk = require('etcher-sdk') -const EXIT_CODES = require('../../shared/exit-codes') -const errors = require('../../shared/errors') +const EXIT_CODES = require('./exit-codes') +const errors = require('./errors') ipc.config.id = process.env.IPC_CLIENT_ID ipc.config.socketRoot = process.env.IPC_SOCKET_ROOT diff --git a/lib/shared/drive-constraints.js b/lib/gui/app/modules/drive-constraints.js similarity index 100% rename from lib/shared/drive-constraints.js rename to lib/gui/app/modules/drive-constraints.js diff --git a/lib/shared/errors.js b/lib/gui/app/modules/errors.js similarity index 100% rename from lib/shared/errors.js rename to lib/gui/app/modules/errors.js diff --git a/lib/shared/exit-codes.js b/lib/gui/app/modules/exit-codes.js similarity index 100% rename from lib/shared/exit-codes.js rename to lib/gui/app/modules/exit-codes.js diff --git a/lib/shared/file-extensions.js b/lib/gui/app/modules/file-extensions.js similarity index 100% rename from lib/shared/file-extensions.js rename to lib/gui/app/modules/file-extensions.js diff --git a/lib/gui/app/modules/image-writer.js b/lib/gui/app/modules/image-writer.js index e9ab6719..95e9fc02 100644 --- a/lib/gui/app/modules/image-writer.js +++ b/lib/gui/app/modules/image-writer.js @@ -26,8 +26,8 @@ const electron = require('electron') const store = require('../models/store') const settings = require('../models/settings') const flashState = require('../models/flash-state') -const errors = require('../../../shared/errors') -const permissions = require('../../../shared/permissions') +const errors = require('../../../gui/app/modules/errors') +const permissions = require('../../../gui/app/modules/permissions') const windowProgress = require('../os/window-progress') const analytics = require('../modules/analytics') const updateLock = require('./update-lock') diff --git a/lib/shared/messages.js b/lib/gui/app/modules/messages.js similarity index 100% rename from lib/shared/messages.js rename to lib/gui/app/modules/messages.js diff --git a/lib/shared/native-module.js b/lib/gui/app/modules/native-module.js similarity index 100% rename from lib/shared/native-module.js rename to lib/gui/app/modules/native-module.js diff --git a/lib/shared/permissions.js b/lib/gui/app/modules/permissions.js similarity index 100% rename from lib/shared/permissions.js rename to lib/gui/app/modules/permissions.js diff --git a/lib/gui/app/modules/progress-status.js b/lib/gui/app/modules/progress-status.js index de0875fa..e11cf1b2 100644 --- a/lib/gui/app/modules/progress-status.js +++ b/lib/gui/app/modules/progress-status.js @@ -17,8 +17,8 @@ 'use strict' const settings = require('../models/settings') -const utils = require('../../../shared/utils') -const units = require('../../../shared/units') +const utils = require('../../../gui/app/modules/utils') +const units = require('../../../gui/app/modules/units') /** * @summary Make the progress status subtitle string diff --git a/lib/shared/supported-formats.js b/lib/gui/app/modules/supported-formats.js similarity index 100% rename from lib/shared/supported-formats.js rename to lib/gui/app/modules/supported-formats.js diff --git a/lib/shared/units.js b/lib/gui/app/modules/units.js similarity index 100% rename from lib/shared/units.js rename to lib/gui/app/modules/units.js diff --git a/lib/shared/utils.js b/lib/gui/app/modules/utils.js similarity index 100% rename from lib/shared/utils.js rename to lib/gui/app/modules/utils.js diff --git a/lib/gui/app/os/dialog.js b/lib/gui/app/os/dialog.js index 97ca1e27..1e3ac027 100644 --- a/lib/gui/app/os/dialog.js +++ b/lib/gui/app/os/dialog.js @@ -19,8 +19,8 @@ const _ = require('lodash') const electron = require('electron') const Bluebird = require('bluebird') -const errors = require('../../../shared/errors') -const supportedFormats = require('../../../shared/supported-formats') +const errors = require('../../../gui/app/modules/errors') +const supportedFormats = require('../../../gui/app/modules/supported-formats') /** * @summary Current renderer BrowserWindow instance diff --git a/lib/gui/app/os/window-progress.js b/lib/gui/app/os/window-progress.js index c92d8137..3de94fdd 100644 --- a/lib/gui/app/os/window-progress.js +++ b/lib/gui/app/os/window-progress.js @@ -17,7 +17,7 @@ 'use strict' const electron = require('electron') -const utils = require('../../../shared/utils') +const utils = require('../../../gui/app/modules/utils') const progressStatus = require('../modules/progress-status') /** diff --git a/lib/gui/app/os/windows-network-drives.js b/lib/gui/app/os/windows-network-drives.js index a2abdfb3..2c2637bb 100755 --- a/lib/gui/app/os/windows-network-drives.js +++ b/lib/gui/app/os/windows-network-drives.js @@ -25,7 +25,7 @@ const Path = require('path') const process = require('process') const { promisify } = require('util') -const { tmpFileDisposer } = require('../../../shared/utils') +const { tmpFileDisposer } = require('../../../gui/app/modules/utils') const readFileAsync = promisify(fs.readFile) diff --git a/lib/gui/app/pages/finish/controllers/finish.js b/lib/gui/app/pages/finish/controllers/finish.js index d072d8a9..aaed3466 100644 --- a/lib/gui/app/pages/finish/controllers/finish.js +++ b/lib/gui/app/pages/finish/controllers/finish.js @@ -24,7 +24,7 @@ const flashState = require('../../../models/flash-state') const selectionState = require('../../../models/selection-state') const analytics = require('../../../modules/analytics') const updateLock = require('../../../modules/update-lock') -const messages = require('../../../../../shared/messages') +const messages = require('../../../../../gui/app/modules/messages') module.exports = function ($state) { /** diff --git a/lib/gui/app/pages/main/controllers/drive-selection.js b/lib/gui/app/pages/main/controllers/drive-selection.js index 8abdf0c8..fd56280d 100644 --- a/lib/gui/app/pages/main/controllers/drive-selection.js +++ b/lib/gui/app/pages/main/controllers/drive-selection.js @@ -24,7 +24,7 @@ const settings = require('../../../models/settings') const selectionState = require('../../../models/selection-state') const analytics = require('../../../modules/analytics') const exceptionReporter = require('../../../modules/exception-reporter') -const utils = require('../../../../../shared/utils') +const utils = require('../../../../../gui/app/modules/utils') module.exports = function (DriveSelectorService) { /** diff --git a/lib/gui/app/pages/main/controllers/flash.js b/lib/gui/app/pages/main/controllers/flash.js index d10bb065..273490ff 100644 --- a/lib/gui/app/pages/main/controllers/flash.js +++ b/lib/gui/app/pages/main/controllers/flash.js @@ -17,7 +17,7 @@ 'use strict' const _ = require('lodash') -const messages = require('../../../../../shared/messages') +const messages = require('../../../../../gui/app/modules/messages') const flashState = require('../../../models/flash-state') const driveScanner = require('../../../modules/drive-scanner') const progressStatus = require('../../../modules/progress-status') @@ -26,7 +26,7 @@ const analytics = require('../../../modules/analytics') const imageWriter = require('../../../modules/image-writer') const path = require('path') const store = require('../../../models/store') -const constraints = require('../../../../../shared/drive-constraints') +const constraints = require('../../../../../gui/app/modules/drive-constraints') const availableDrives = require('../../../models/available-drives') const selection = require('../../../models/selection-state') diff --git a/lib/gui/app/pages/main/controllers/image-selection.js b/lib/gui/app/pages/main/controllers/image-selection.js index 3060c713..3a9cfda9 100644 --- a/lib/gui/app/pages/main/controllers/image-selection.js +++ b/lib/gui/app/pages/main/controllers/image-selection.js @@ -22,9 +22,9 @@ const path = require('path') const sdk = require('etcher-sdk') const store = require('../../../models/store') -const messages = require('../../../../../shared/messages') -const errors = require('../../../../../shared/errors') -const supportedFormats = require('../../../../../shared/supported-formats') +const messages = require('../../../../../gui/app/modules/messages') +const errors = require('../../../../../gui/app/modules/errors') +const supportedFormats = require('../../../../../gui/app/modules/supported-formats') const analytics = require('../../../modules/analytics') const settings = require('../../../models/settings') const selectionState = require('../../../models/selection-state') diff --git a/lib/gui/app/pages/main/controllers/main.js b/lib/gui/app/pages/main/controllers/main.js index 60d52d0a..c499e3e4 100644 --- a/lib/gui/app/pages/main/controllers/main.js +++ b/lib/gui/app/pages/main/controllers/main.js @@ -24,8 +24,8 @@ const analytics = require('../../../modules/analytics') const exceptionReporter = require('../../../modules/exception-reporter') const availableDrives = require('../../../models/available-drives') const selectionState = require('../../../models/selection-state') -const driveConstraints = require('../../../../../shared/drive-constraints') -const messages = require('../../../../../shared/messages') +const driveConstraints = require('../../../../../gui/app/modules/drive-constraints') +const messages = require('../../../../../gui/app/modules/messages') const prettyBytes = require('pretty-bytes') module.exports = function ( diff --git a/lib/gui/app/utils/byte-size/filter.js b/lib/gui/app/utils/byte-size/filter.js index 74f4eb7c..0fc68e28 100644 --- a/lib/gui/app/utils/byte-size/filter.js +++ b/lib/gui/app/utils/byte-size/filter.js @@ -16,7 +16,7 @@ 'use strict' -const units = require('../../../../shared/units') +const units = require('../../../../gui/app/modules/units') module.exports = () => { /** diff --git a/lib/gui/app/utils/manifest-bind/directives/manifest-bind.js b/lib/gui/app/utils/manifest-bind/directives/manifest-bind.js index 65818a06..7f6bafaf 100644 --- a/lib/gui/app/utils/manifest-bind/directives/manifest-bind.js +++ b/lib/gui/app/utils/manifest-bind/directives/manifest-bind.js @@ -16,7 +16,7 @@ 'use strict' -const errors = require('../../../../../shared/errors') +const errors = require('../../../../../gui/app/modules/errors') /** * @summary ManifestBind directive diff --git a/lib/gui/etcher.js b/lib/gui/etcher.js index 00047ab0..a98854db 100644 --- a/lib/gui/etcher.js +++ b/lib/gui/etcher.js @@ -21,11 +21,11 @@ const path = require('path') const _ = require('lodash') const { autoUpdater } = require('electron-updater') const Bluebird = require('bluebird') -const EXIT_CODES = require('../shared/exit-codes') +const EXIT_CODES = require('../gui/app/modules/exit-codes') const buildWindowMenu = require('./menu') const settings = require('./app/models/settings') const analytics = require('./app/modules/analytics') -const { getConfig } = require('../shared/utils') +const { getConfig } = require('../gui/app/modules/utils') /* eslint-disable lodash/prefer-lodash-method */ const config = settings.getDefaults() diff --git a/lib/start.js b/lib/start.js index 562e6ec1..ae25ea21 100644 --- a/lib/start.js +++ b/lib/start.js @@ -27,7 +27,7 @@ // an older equivalent of `ELECTRON_RUN_AS_NODE` that still gets set when // using `child_process.fork()`. if (process.env.ELECTRON_RUN_AS_NODE || process.env.ATOM_SHELL_INTERNAL_RUN_AS_NODE) { - require('./gui/modules/child-writer') + require('./gui/app/modules/child-writer') } else { require('../generated/etcher') } diff --git a/scripts/html-lint.js b/scripts/html-lint.js index bda5d35c..da4fae1a 100644 --- a/scripts/html-lint.js +++ b/scripts/html-lint.js @@ -14,7 +14,7 @@ const chalk = require('chalk') const path = require('path') const _ = require('lodash') const angularValidate = require('html-angular-validate') -const EXIT_CODES = require('../lib/shared/exit-codes') +const EXIT_CODES = require('../lib/gui/app/modules/exit-codes') const PROJECT_ROOT = path.join(__dirname, '..') const FILENAME = path.relative(PROJECT_ROOT, __filename) diff --git a/tests/gui/components/drive-selector.spec.js b/tests/gui/components/drive-selector.spec.js index b8852d18..11144a43 100644 --- a/tests/gui/components/drive-selector.spec.js +++ b/tests/gui/components/drive-selector.spec.js @@ -20,7 +20,7 @@ const _ = require('lodash') const m = require('mochainon') const angular = require('angular') require('angular-mocks') -const utils = require('../../../lib/shared/utils') +const utils = require('../../../lib/gui/app/modules/utils') describe('Browser: DriveSelector', function () { beforeEach(angular.mock.module( diff --git a/tests/gui/models/available-drives.spec.js b/tests/gui/models/available-drives.spec.js index 5b6af4fc..d8f97553 100644 --- a/tests/gui/models/available-drives.spec.js +++ b/tests/gui/models/available-drives.spec.js @@ -20,7 +20,7 @@ const m = require('mochainon') const path = require('path') const availableDrives = require('../../../lib/gui/app/models/available-drives') const selectionState = require('../../../lib/gui/app/models/selection-state') -const constraints = require('../../../lib/shared/drive-constraints') +const constraints = require('../../../lib/gui/app/modules/drive-constraints') describe('Model: availableDrives', function () { describe('availableDrives', function () { diff --git a/tests/gui/modules/child-writer.spec.js b/tests/gui/modules/child-writer.spec.js index 351a5596..77d186c3 100644 --- a/tests/gui/modules/child-writer.spec.js +++ b/tests/gui/modules/child-writer.spec.js @@ -18,7 +18,7 @@ const m = require('mochainon') const ipc = require('node-ipc') -require('../../../lib/gui/modules/child-writer') +require('../../../lib/gui/app/modules/child-writer') describe('Browser: childWriter', function () { it('should have the ipc config set to silent', function () { diff --git a/tests/gui/pages/main.spec.js b/tests/gui/pages/main.spec.js index adfec46d..1c8a50fd 100644 --- a/tests/gui/pages/main.spec.js +++ b/tests/gui/pages/main.spec.js @@ -20,7 +20,7 @@ const m = require('mochainon') const _ = require('lodash') const fs = require('fs') const path = require('path') -const supportedFormats = require('../../../lib/shared/supported-formats') +const supportedFormats = require('../../../lib/gui/app/modules/supported-formats') const angular = require('angular') const flashState = require('../../../lib/gui/app/models/flash-state') const availableDrives = require('../../../lib/gui/app/models/available-drives') diff --git a/tests/gui/utils/byte-size.spec.js b/tests/gui/utils/byte-size.spec.js index 360b4cc0..52c0f338 100644 --- a/tests/gui/utils/byte-size.spec.js +++ b/tests/gui/utils/byte-size.spec.js @@ -19,7 +19,7 @@ const m = require('mochainon') const angular = require('angular') require('angular-mocks') -const units = require('../../../lib/shared/units') +const units = require('../../../lib/gui/app/modules/units') describe('Browser: ByteSize', function () { beforeEach(angular.mock.module( @@ -33,7 +33,7 @@ describe('Browser: ByteSize', function () { closestUnitFilter = _closestUnitFilter_ })) - it('should expose lib/shared/units.js bytesToGigabytes()', function () { + it('should expose lib/gui/app/modules/units.js bytesToGigabytes()', function () { m.chai.expect(closestUnitFilter).to.equal(units.bytesToClosestUnit) }) }) diff --git a/tests/shared/drive-constraints.spec.js b/tests/shared/drive-constraints.spec.js index edd501dd..f6abb318 100644 --- a/tests/shared/drive-constraints.spec.js +++ b/tests/shared/drive-constraints.spec.js @@ -19,8 +19,8 @@ const m = require('mochainon') const _ = require('lodash') const path = require('path') -const constraints = require('../../lib/shared/drive-constraints') -const messages = require('../../lib/shared/messages') +const constraints = require('../../lib/gui/app/modules/drive-constraints') +const messages = require('../../lib/gui/app/modules/messages') describe('Shared: DriveConstraints', function () { describe('.isDriveLocked()', function () { diff --git a/tests/shared/errors.spec.js b/tests/shared/errors.spec.js index adb185c8..0d39ab0a 100644 --- a/tests/shared/errors.spec.js +++ b/tests/shared/errors.spec.js @@ -18,7 +18,7 @@ const m = require('mochainon') const _ = require('lodash') -const errors = require('../../lib/shared/errors') +const errors = require('../../lib/gui/app/modules/errors') describe('Shared: Errors', function () { describe('.HUMAN_FRIENDLY', function () { diff --git a/tests/shared/file-extensions.spec.js b/tests/shared/file-extensions.spec.js index 7acc037f..1e13f25a 100644 --- a/tests/shared/file-extensions.spec.js +++ b/tests/shared/file-extensions.spec.js @@ -18,7 +18,7 @@ const m = require('mochainon') const _ = require('lodash') -const fileExtensions = require('../../lib/shared/file-extensions') +const fileExtensions = require('../../lib/gui/app/modules/file-extensions') describe('Shared: fileExtensions', function () { describe('.getFileExtensions()', function () { diff --git a/tests/shared/messages.spec.js b/tests/shared/messages.spec.js index b1ed5193..11021ec3 100644 --- a/tests/shared/messages.spec.js +++ b/tests/shared/messages.spec.js @@ -18,7 +18,7 @@ const m = require('mochainon') const _ = require('lodash') -const messages = require('../../lib/shared/messages') +const messages = require('../../lib/gui/app/modules/messages') describe('Shared: Messages', function () { beforeEach(function () { diff --git a/tests/shared/permissions.spec.js b/tests/shared/permissions.spec.js index 9a48c44a..375b734b 100644 --- a/tests/shared/permissions.spec.js +++ b/tests/shared/permissions.spec.js @@ -20,7 +20,7 @@ const m = require('mochainon') const os = require('os') -const permissions = require('../../lib/shared/permissions') +const permissions = require('../../lib/gui/app/modules/permissions') describe('Shared: permissions', function () { describe('.createLaunchScript()', function () { diff --git a/tests/shared/supported-formats.spec.js b/tests/shared/supported-formats.spec.js index b06081e4..57096154 100644 --- a/tests/shared/supported-formats.spec.js +++ b/tests/shared/supported-formats.spec.js @@ -18,7 +18,7 @@ const m = require('mochainon') const _ = require('lodash') -const supportedFormats = require('../../lib/shared/supported-formats') +const supportedFormats = require('../../lib/gui/app/modules/supported-formats') describe('Shared: SupportedFormats', function () { describe('.getCompressedExtensions()', function () { diff --git a/tests/shared/units.spec.js b/tests/shared/units.spec.js index 77cb8186..733de85e 100644 --- a/tests/shared/units.spec.js +++ b/tests/shared/units.spec.js @@ -17,7 +17,7 @@ 'use strict' const m = require('mochainon') -const units = require('../../lib/shared/units') +const units = require('../../lib/gui/app/modules/units') describe('Shared: Units', function () { describe('.bytesToClosestUnit()', function () { diff --git a/tests/shared/utils.spec.js b/tests/shared/utils.spec.js index 88625c99..e298ecba 100644 --- a/tests/shared/utils.spec.js +++ b/tests/shared/utils.spec.js @@ -18,7 +18,7 @@ const _ = require('lodash') const m = require('mochainon') -const utils = require('../../lib/shared/utils') +const utils = require('../../lib/gui/app/modules/utils') describe('Shared: Utils', function () { describe('.isValidPercentage()', function () { diff --git a/tests/spectron/runner.spec.js b/tests/spectron/runner.spec.js index cff63f8c..b01bb114 100644 --- a/tests/spectron/runner.spec.js +++ b/tests/spectron/runner.spec.js @@ -19,7 +19,7 @@ const Bluebird = require('bluebird') const spectron = require('spectron') const m = require('mochainon') -const EXIT_CODES = require('../../lib/shared/exit-codes') +const EXIT_CODES = require('../../lib/gui/app/modules/exit-codes') const entrypoint = process.env.ETCHER_SPECTRON_ENTRYPOINT if (!entrypoint) { diff --git a/webpack.config.js b/webpack.config.js index 2a1c727f..a9d00e6d 100644 --- a/webpack.config.js +++ b/webpack.config.js @@ -27,7 +27,6 @@ const commonConfig = { // Minification breaks angular. minimize: false }, - target: 'electron-main', module: { rules: [ { @@ -69,89 +68,75 @@ const commonConfig = { ] } -const guiConfig = _.assign({ - node: { - __dirname: true, - __filename: true - }, - externals: [ - nodeExternals(), - (context, request, callback) => { - // eslint-disable-next-line lodash/prefer-lodash-method - const absoluteContext = path.resolve(context) - const absoluteNodeModules = path.resolve('node_modules') +const guiConfig = _.assign( + {}, + commonConfig, + { + node: { + __dirname: true, + __filename: true + }, + target: 'electron-renderer', + externals: [ + nodeExternals(), + (context, request, callback) => { + // eslint-disable-next-line lodash/prefer-lodash-method + const absoluteContext = path.resolve(context) + const absoluteNodeModules = path.resolve('node_modules') + + // We shouldn't rewrite any node_modules import paths + // eslint-disable-next-line lodash/prefer-lodash-method + if (!path.relative(absoluteNodeModules, absoluteContext).startsWith('..')) { + return callback() + } - // We shouldn't rewrite any node_modules import paths - // eslint-disable-next-line lodash/prefer-lodash-method - if (!path.relative(absoluteNodeModules, absoluteContext).startsWith('..')) { return callback() } - - // We want to keep the SDK code outside the GUI bundle. - // This piece of code allows us to run the GUI directly - // on the tree (for testing purposes) or inside a generated - // bundle (for production purposes), by translating - // relative require paths within the bundle. - if (/\/(sdk|shared)/i.test(request) || /package\.json$/.test(request)) { - const output = path.join(__dirname, 'generated') - const dirname = path.join(context, request) - const relative = path.relative(output, dirname) - return callback(null, `commonjs ${path.join('..', '..', relative)}`) - } - - return callback() + ], + entry: { + gui: path.join(__dirname, 'lib', 'gui', 'app', 'app.js') + }, + output: { + path: path.join(__dirname, 'generated'), + filename: '[name].js' } - ], - entry: { - gui: path.join(__dirname, 'lib', 'gui', 'app', 'app.js') - }, - output: { - path: path.join(__dirname, 'generated'), - filename: '[name].js' } -}, commonConfig) +) -const etcherConfig = _.assign({ - node: { - __dirname: false, - __filename: true - }, - externals: [ - nodeExternals(), - (context, request, callback) => { - // eslint-disable-next-line lodash/prefer-lodash-method - const absoluteContext = path.resolve(context) - const absoluteNodeModules = path.resolve('node_modules') +const etcherConfig = _.assign( + {}, + commonConfig, + { + node: { + __dirname: false, + __filename: true + }, + target: 'electron-main', + externals: [ + nodeExternals(), + (context, request, callback) => { + // eslint-disable-next-line lodash/prefer-lodash-method + const absoluteContext = path.resolve(context) + const absoluteNodeModules = path.resolve('node_modules') + + // We shouldn't rewrite any node_modules import paths + // eslint-disable-next-line lodash/prefer-lodash-method + if (!path.relative(absoluteNodeModules, absoluteContext).startsWith('..')) { + return callback() + } - // We shouldn't rewrite any node_modules import paths - // eslint-disable-next-line lodash/prefer-lodash-method - if (!path.relative(absoluteNodeModules, absoluteContext).startsWith('..')) { return callback() } - - // We want to keep the SDK code outside the GUI bundle. - // This piece of code allows us to run the GUI directly - // on the tree (for testing purposes) or inside a generated - // bundle (for production purposes), by translating - // relative require paths within the bundle. - if (/\/shared/i.test(request) || /package\.json$/.test(request)) { - const output = path.join(__dirname, 'generated') - const dirname = path.join(context, request) - const relative = path.relative(output, dirname) - return callback(null, `commonjs ${path.join('..', 'lib', relative)}`) - } - - return callback() + ], + entry: { + etcher: path.join(__dirname, 'lib', 'gui', 'etcher.js') + }, + output: { + path: path.join(__dirname, 'generated'), + filename: '[name].js' } - ], - entry: { - etcher: path.join(__dirname, 'lib', 'gui', 'etcher.js') - }, - output: { - path: path.join(__dirname, 'generated'), - filename: '[name].js' } -}, commonConfig) +) module.exports = [ guiConfig,