refactor: latus build

This commit is contained in:
cha0s 2021-03-29 15:24:11 -05:00
parent 3628e53ea5
commit b61cee61b5
101 changed files with 13221 additions and 12301 deletions

4
.gitignore vendored
View File

@ -115,4 +115,6 @@ dist
.yarn/install-state.gz
.pnp.*
/.vscode/root
# local
/build
/projects

8
.neutrinorc.js Normal file
View File

@ -0,0 +1,8 @@
require('dotenv/config');
module.exports = {
options: {
root: __dirname,
},
use: [],
};

View File

@ -1,27 +0,0 @@
const config = {
globals: {
__non_webpack_require__: true,
process: true,
window: true,
},
rules: {
'babel/object-curly-spacing': 'off',
'brace-style': ['error', 'stroustrup'],
'no-bitwise': ['error', {int32Hint: true}],
'no-plusplus': 'off',
'no-shadow': 'off',
'no-underscore-dangle': 'off',
'padded-blocks': ['error', {classes: 'always'}],
yoda: 'off',
},
settings: {
'import/resolver': {
node: {},
webpack: {
config: `${__dirname}/webpack.config.js`,
},
},
},
};
module.exports = config;

View File

@ -1,5 +0,0 @@
const neutrino = require('neutrino');
process.env.LATUS_LINTING = true;
module.exports = neutrino(require('./.neutrinorc')).eslintrc();

121
app/.gitignore vendored
View File

@ -1,121 +0,0 @@
# Logs
logs
*.log
npm-debug.log*
yarn-debug.log*
yarn-error.log*
lerna-debug.log*
# Diagnostic reports (https://nodejs.org/api/report.html)
report.[0-9]*.[0-9]*.[0-9]*.[0-9]*.json
# Runtime data
pids
*.pid
*.seed
*.pid.lock
# Directory for instrumented libs generated by jscoverage/JSCover
lib-cov
# Coverage directory used by tools like istanbul
coverage
*.lcov
# nyc test coverage
.nyc_output
# Grunt intermediate storage (https://gruntjs.com/creating-plugins#storing-task-files)
.grunt
# Bower dependency directory (https://bower.io/)
bower_components
# node-waf configuration
.lock-wscript
# Compiled binary addons (https://nodejs.org/api/addons.html)
build/Release
# Dependency directories
node_modules/
jspm_packages/
# Snowpack dependency directory (https://snowpack.dev/)
web_modules/
# TypeScript cache
*.tsbuildinfo
# Optional npm cache directory
.npm
# Optional eslint cache
.eslintcache
# Microbundle cache
.rpt2_cache/
.rts2_cache_cjs/
.rts2_cache_es/
.rts2_cache_umd/
# Optional REPL history
.node_repl_history
# Output of 'npm pack'
*.tgz
# Yarn Integrity file
.yarn-integrity
# dotenv environment variables file
.env
.env.test
# parcel-bundler cache (https://parceljs.org/)
.cache
.parcel-cache
# Next.js build output
.next
out
# Nuxt.js build / generate output
.nuxt
dist
# Gatsby files
.cache/
# Comment in the public line in if your project uses Gatsby and not Next.js
# https://nextjs.org/blog/next-9-1#public-directory-support
# public
# vuepress build output
.vuepress/dist
# Serverless directories
.serverless/
# FuseBox cache
.fusebox/
# DynamoDB Local files
.dynamodb/
# TernJS port file
.tern-port
# Stores VSCode versions used for testing VSCode extensions
.vscode-test
# yarn v2
.yarn/cache
.yarn/unplugged
.yarn/build-state.yml
.yarn/install-state.gz
.pnp.*
/build
/latus.yml
/projects
/resource

View File

@ -1,5 +0,0 @@
const neutrino = require('neutrino');
process.env.NODE_ENV = process.env.NODE_ENV || 'test';
module.exports = neutrino().mocha();

View File

@ -1,99 +0,0 @@
require('dotenv/config');
const airbnb = require('@neutrinojs/airbnb');
const clean = require('@neutrinojs/clean');
const copy = require('@neutrinojs/copy');
const mocha = require('@neutrinojs/mocha');
const node = require('@neutrinojs/node');
const {EnvironmentPlugin} = require('webpack');
const nodeExternals = require('webpack-node-externals');
module.exports = {
options: {
root: __dirname,
},
use: [
(neutrino) => {
neutrino.options.mains.electron = {entry: './src/electron'};
},
airbnb({
eslint: {
cache: false,
baseConfig: require('./.eslint.defaults'),
},
}),
clean({
cleanOnceBeforeBuildPatterns: ['**/*.hot-update.*'],
}),
copy({
patterns: [{
from: 'src/assets',
to: 'http',
}],
}),
mocha(),
node({
hot: true,
}),
(neutrino) => {
[
'components',
'context',
'fonts',
'hooks',
'images',
'scss',
].forEach((path) => {
neutrino.config.resolve.alias
.set(path, `${neutrino.options.source}/react/${path}`);
});
if (process.env.LATUS_LINTING) {
return;
}
neutrino.config.module
.rule('compile')
.use('babel')
.get('options').plugins.push(
[
'babel-plugin-webpack-alias',
{
config: `${__dirname}/webpack.config.js`,
},
],
);
neutrino.config
.plugin('environment')
.use(EnvironmentPlugin, [{
SIDE: 'server',
}]);
neutrino.config
.entry('index')
.add('@latus/core/start');
if ('production' !== neutrino.config.get('mode')) {
neutrino.config
.entry('index')
.prepend('dotenv/config');
neutrino.config
.plugin('start-server')
.tap((args) => {
const options = args[0];
options.signal = true;
const inspectArg = process.argv.find((arg) => -1 !== arg.indexOf('--inspect'));
if (inspectArg) {
options.nodeArgs.push(inspectArg);
}
const profArg = process.argv.find((arg) => -1 !== arg.indexOf('--prof'));
if (profArg) {
options.nodeArgs.push(profArg);
}
options.nodeArgs.push('--experimental-repl-await');
options.nodeArgs.push('--unhandled-rejections=strict');
return args;
});
}
neutrino.config.externals(nodeExternals());
neutrino.config.resolve.alias
.set('react-dom', '@hot-loader/react-dom');
},
],
};

View File

@ -1,6 +0,0 @@
/* eslint-disable global-require */
module.exports = {
plugins: [
require('autoprefixer'),
],
};

View File

@ -1 +0,0 @@
process.stdout.write('Your application is starting...\n');

View File

@ -1,28 +0,0 @@
require('source-map-support/register');
// Whilst the configuration object can be modified here, the recommended way of making
// changes is via the presets' options or Neutrino's API in `.neutrinorc.js` instead.
// Neutrino's inspect feature can be used to view/export the generated configuration.
const {Latus} = require('@latus/core');
const neutrino = require('neutrino');
if (process.env.LATUS_LINTING) {
// eslint-disable-next-line global-require
module.exports = neutrino(require('./.neutrinorc')).webpack();
}
else {
module.exports = new Promise((resolve, reject) => {
try {
const latus = Latus.create();
const configs = {
// eslint-disable-next-line global-require
app: require('./.neutrinorc'),
};
latus.invokeFlat('@latus/core/build', configs);
const webpackConfigs = Object.values(configs).map((config) => neutrino(config).webpack());
resolve(webpackConfigs);
}
catch (error) {
reject(error);
}
});
}

View File

@ -1,23 +0,0 @@
const config = {
globals: {
process: true,
window: true,
},
ignorePatterns: [
'/*',
'!/src',
],
rules: {
'babel/object-curly-spacing': 'off',
'brace-style': ['error', 'stroustrup'],
'jsx-a11y/label-has-associated-control': 'off',
'no-bitwise': ['error', {int32Hint: true}],
'no-plusplus': 'off',
'no-shadow': 'off',
'no-underscore-dangle': 'off',
'padded-blocks': ['error', {classes: 'always'}],
yoda: 'off',
},
};
module.exports = config;

View File

@ -1,3 +0,0 @@
const neutrino = require('neutrino');
module.exports = neutrino(require(`${__dirname}/.neutrinorc`)).eslintrc();

View File

@ -1,5 +0,0 @@
const neutrino = require('neutrino');
process.env.NODE_ENV = process.env.NODE_ENV || 'test';
module.exports = neutrino(require(`${__dirname}/.neutrinorc`)).mocha();

View File

@ -1,108 +0,0 @@
const {basename, dirname, extname, join} = require('path');
const airbnb = require('@neutrinojs/airbnb');
const glob = require('glob');
const mocha = require('@neutrinojs/mocha');
const react = require('@neutrinojs/react');
const nodeExternals = require('webpack-node-externals');
module.exports = {
options: {},
use: [
airbnb({
eslint: {
cache: false,
baseConfig: require(`${__dirname}/.eslint.defaults`),
},
}),
(neutrino) => {
const {files = [], name} = neutrino.options.packageJson;
files
.filter((file) => {
const {source} = neutrino.options;
try {
require.resolve(`${source}/${file}`);
return true;
}
catch (error) {
const ext = extname(file);
try {
require.resolve(`${source}/${dirname(file)}/${basename(file, ext)}/index${ext}`);
return true;
}
catch (error) {
return false;
}
}
})
.forEach((file) => {
const isIndex = 'index.js' === file;
const trimmed = join(dirname(file), basename(file, extname(file)));
neutrino.options.mains[trimmed] = {entry: isIndex ? file : `./src/${trimmed}`};
});
const testPaths = glob.sync('./test/*.js');
if (testPaths.length > 0) {
const testEntry = neutrino.config.entry('test').clear();
testPaths.forEach((path) => testEntry.add(path));
}
const cssPaths = glob.sync('./src/**/*.{css,scss}');
if (cssPaths.length > 0) {
const cssEntry = neutrino.config.entry('index.css').clear();
cssPaths.forEach((path) => cssEntry.add(path));
}
neutrino.options.output = '.';
react({
clean: false,
hot: false,
style: {
extract: {
enabled: false,
},
test: /\.(css|sass|scss)$/,
modulesTest: /\.module\.(css|sass|scss)$/,
loaders: [
{
loader: 'postcss-loader',
useId: 'postcss',
options: {
config: {
path: process.cwd(),
},
},
},
{
loader: 'sass-loader',
useId: 'sass',
},
],
},
})(neutrino);
Object.keys(neutrino.options.mains).forEach((main) => {
neutrino.config.plugins.delete(`html-${main}`);
});
neutrino.config
.devtool('source-map')
.target('node')
.optimization
.splitChunks(false)
.runtimeChunk(false)
.end()
.output
.filename('[name].js')
.library(name)
.libraryTarget('umd')
.umdNamedDefine(true)
.end()
.node
.set('__dirname', false)
.set('__filename', false);
const options = neutrino.config.module
.rule('compile')
.use('babel')
.get('options');
options.presets[0][1].targets = {esmodules: true};
neutrino.config.externals(nodeExternals({importType: 'umd'}));
},
mocha(),
],
};

View File

@ -1 +0,0 @@
module.exports = require('../../config/.eslintrc');

View File

@ -1 +0,0 @@
module.exports = require('../../config/.neutrinorc');

View File

@ -1,15 +1,12 @@
{
"name": "@humus/package",
"version": "1.0.0",
"version": "3.0.0",
"main": "index.js",
"author": "cha0s",
"license": "MIT",
"scripts": {
"build": "NODE_PATH=./node_modules webpack --mode production",
"clean": "rm -rf yarn.lock node_modules $(node -e \"process.stdout.write(require('./package.json').files.filter((file) => {const parts = file.split('/'); return 1 === parts.length || 'test' !== parts[0];}).join(' '));\") && yarn",
"forcepub": "npm unpublish --force $(node -e 'const {name, version} = require(`./package.json`); process.stdout.write(`${name}@${version}`)') && npm publish",
"lint": "NODE_PATH=./node_modules eslint --format codeframe --ext mjs,js .",
"test": "yarn --silent run build --display none && mocha --colors test.js"
"build": "latus-build",
"clean": "latus-build clean",
"fp": "latus-build forcepublish",
"lint": "latus-build lint",
"test": "latus-build test"
},
"files": [
"index.js",
@ -17,24 +14,8 @@
"test.js",
"test.js.map"
],
"dependencies": {
"debug": "4.3.1"
},
"dependencies": {},
"devDependencies": {
"@neutrinojs/airbnb": "^9.4.0",
"@neutrinojs/banner": "^9.4.0",
"@neutrinojs/copy": "^9.4.0",
"@neutrinojs/mocha": "^9.4.0",
"@neutrinojs/react": "^9.4.0",
"autoprefixer": "^9.8.6",
"chai": "4.2.0",
"eslint": "^7",
"eslint-import-resolver-webpack": "0.13.0",
"glob": "7.1.6",
"mocha": "^8",
"neutrino": "^9.4.0",
"source-map-support": "0.5.19",
"webpack": "^4",
"webpack-cli": "^3"
"@latus/build": "1.x"
}
}

View File

@ -1,6 +0,0 @@
/* eslint-disable global-require */
module.exports = {
plugins: [
require('autoprefixer'),
],
};

View File

@ -1,3 +0,0 @@
const neutrino = require('neutrino');
module.exports = neutrino(require(`${__dirname}/.neutrinorc`)).webpack();

100
latus.yml Normal file
View File

@ -0,0 +1,100 @@
'@avocado/behavior': {}
'@avocado/entity': {}
'@avocado/graphics': {}
'@avocado/input': {}
'@avocado/math': {}
'@avocado/physics': {}
'@avocado/resource': {}
'@avocado/s13n': {}
'@avocado/sound': {}
'@avocado/timing': {}
'@avocado/topdown': {}
'@avocado/traits': {}
'@humus/combat': {}
'@humus/combat/persea': {}
'@humus/core': {}
'@humus/core/persea': {}
'@latus/core': {
id: 'persea',
}
'@latus/core/server': {
up: [
'@latus/db/server',
'@latus/redis/server',
'@latus/user/session/server',
'@latus/user/server',
'@latus/user/local/server',
'@latus/http/server',
'@persea/bootstrap/server',
'@latus/repl/server',
],
}
'@latus/db': {}
'@latus/db/server': {
models.decorate: [
'@latus/user/local/server',
'@persea/core/server',
],
docker: 'cached',
}
'@latus/governor': {}
'@latus/http': {
title: 'Persea',
}
'@latus/http/client': {
up: [
'@latus/socket/client',
'@latus/react/client',
],
}
'@latus/http/server': {
devPublic: 'persea.localhost',
request.page: [
'@latus/user/session/server',
'@latus/user/server',
],
request.socket: [
'@persea/core/server',
]
}
'@latus/react': {}
'@latus/redis': {}
'@latus/redis/server': {
docker: 'cached',
}
'@latus/redux': {}
'@latus/redis/session': {}
'@latus/repl': {}
'@latus/socket': {
packets.decorate: [
'@latus/governor/server',
'@persea/json/server',
]
}
'@latus/socket/client': {}
'@latus/socket/server': {
authenticate: [
'@latus/user/session/server',
'@latus/user/server',
],
connect: [
'@latus/socket/server',
],
}
'@latus/user': {}
'@latus/user/local': {}
'@latus/user/session': {}
'@persea/app': {}
'@persea/bootstrap': {}
'@persea/core': {
'resource-controllers': [
'@persea/entity',
'@persea/sound',
'@persea/timing',
'@persea/json',
],
}
'@persea/entity': {}
'@persea/json': {}
'@persea/sound': {}
'@persea/timing': {}

View File

@ -21,8 +21,8 @@ fs.copySync(
path,
);
const json = {
...require(join(path, 'package.json')),
name,
...require(join(path, 'package.json')),
};
fs.writeFileSync(
join(path, 'package.json'),

View File

@ -3,30 +3,35 @@
"private": true,
"scripts": {
"build": "lerna run build",
"clean": "lerna run clean --concurrency=1",
"dev": "lerna run dev",
"forcepub": "lerna run forcepub",
"clean": "lerna run clean",
"docker": "yarn run build && docker build",
"electron": "NODE_ENV=production NODE_PATH=./node_modules electron build/electron.js",
"fp": "lerna run fp",
"http": "LATUS_ONLY_BUILD=http latus-build -d --hot --watch",
"lint": "lerna run lint",
"package": "node ./package.js",
"refresh": "yarn run clean && npx lerna exec link-all && yarn run build && yarn run test",
"test": "lerna run test --no-bail -- --silent",
"watch": "lerna run watch --parallel"
"repl": "rlwrap -C qmp socat STDIO UNIX:$(ls /tmp/latus-*.sock | tail -n 1)",
"server": "LATUS_ONLY_BUILD=server latus-build -d --start-server --inspect --watch",
"start": "NODE_ENV=production NODE_PATH=./node_modules node build/index.js",
"test": "lerna run test --no-bail -- --silent"
},
"dependencies": {
"@latus/core": "2.0.0",
"@latus/db": "2.0.0",
"@latus/http": "2.0.0",
"@latus/socket": "2.0.0",
"@persea/app": "^3.0.0",
"@persea/bootstrap": "^3.0.0",
"@persea/core": "^3.0.0",
"@persea/entity": "^3.0.0",
"@persea/json": "^3.0.0",
"@persea/sound": "^3.0.0",
"@persea/timing": "^3.0.0",
"dotenv": "^8.2.0"
},
"devDependencies": {
"@neutrinojs/airbnb": "^9.4.0",
"@neutrinojs/banner": "^9.4.0",
"@neutrinojs/mocha": "^9.4.0",
"@neutrinojs/react": "^9.4.0",
"chai": "4.2.0",
"eslint": "^7",
"eslint-import-resolver-webpack": "0.13.0",
"glob": "7.1.6",
"lerna": "^3.22.1",
"mocha": "^8",
"neutrino": "^9.4.0",
"source-map-support": "0.5.19",
"webpack": "^4",
"webpack-cli": "^3",
"webpack-node-externals": "2.5.2"
"@latus/build": "1.x",
"lerna": "^3.22.1"
}
}

7
packages/app/.gitignore vendored Normal file
View File

@ -0,0 +1,7 @@
**/*.js
**/*.map
!/.*
!/postcss.config.js
!/webpack.config.js
!src/**/*.js
!/test/**/*.js

View File

@ -1,18 +1,22 @@
{
"name": "persea",
"version": "1.0.0",
"license": "MIT",
"name": "@persea/app",
"version": "3.0.0",
"main": "index.js",
"scripts": {
"build": "webpack --mode production",
"clean": "rm -rf yarn.lock build node_modules/* && yarn",
"docker": "yarn run build && docker build",
"electron": "electron build/electron.js",
"lint": "eslint --cache --format codeframe --ext mjs,jsx,js src",
"repl": "rlwrap -C qmp socat STDIO UNIX:$(ls /tmp/persea-*.sock | tail -n 1)",
"start": "NODE_ENV=production node build/index.js",
"test": "mocha --watch src",
"watch": "NODE_PATH=./node_modules webpack --hot --watch --mode development"
"build": "latus-build",
"clean": "latus-build clean",
"fp": "latus-build forcepublish",
"lint": "latus-build lint",
"test": "latus-build test"
},
"files": [
"client.js",
"client.js.map",
"index.js",
"index.js.map",
"test.js",
"test.js.map"
],
"dependencies": {
"@avocado/behavior": "^2.0.0",
"@avocado/core": "^2.0.0",
@ -56,19 +60,6 @@
"styled-components": "^5.2.1"
},
"devDependencies": {
"@neutrinojs/airbnb": "^9.4.0",
"@neutrinojs/clean": "^9.1.0",
"@neutrinojs/copy": "^9.4.0",
"@neutrinojs/mocha": "^9.1.0",
"@neutrinojs/node": "^9.1.0",
"autoprefixer": "^9.8.6",
"babel-plugin-webpack-alias": "^2.1.2",
"eslint": "^6",
"eslint-import-resolver-webpack": "^0.12.1",
"js-yaml": "3.14.0",
"neutrino": "^9.1.0",
"source-map-support": "0.5.19",
"webpack": "^4",
"webpack-cli": "^3"
"@latus/build": "1.x"
}
}
}

View File

@ -0,0 +1,19 @@
// import './index.scss';
// import {React} from '@latus/react';
import {connectRouter, routerMiddleware} from 'connected-react-router';
import Persea from './components/persea';
import history from './components/persea/history';
export default {
hooks: {
'@latus/react/components': () => Persea,
'@latus/redux/slices': () => ({
router: connectRouter(history),
}),
'@latus/redux/store': (options) => {
options.middleware.push(routerMiddleware(history));
},
},
};

View File

@ -1,5 +1,3 @@
import './index.scss';
import {React} from '@latus/react';
import {useSelector} from '@latus/redux';
import {projectsSelector} from '@persea/core';

View File

@ -1,9 +1,7 @@
import './index.scss';
import {Link} from 'react-router-dom';
import {PropTypes, React} from '@latus/react';
import {propTypes as projectPropTypes} from 'components/project';
import {propTypes as projectPropTypes} from '../../project';
const ProjectItem = React.memo(({project: {label, resourcePaths}, uuid}) => (
<Link className="project-item" to={`/project/${uuid}`}>

View File

@ -0,0 +1,3 @@
import {createBrowserHistory} from 'history';
export default createBrowserHistory();

View File

@ -1,6 +1,4 @@
import './index.scss';
import {PropTypes, React} from '@latus/react';
import {React} from '@latus/react';
import Login from '@latus/user/client/components/login';
import {useSelector} from '@latus/redux';
import {userIdSelector} from '@persea/core';
@ -12,10 +10,11 @@ import {
Switch,
} from 'react-router-dom';
import Dashboard from 'components/dashboard';
import ProjectRoute from 'components/project/route';
import Dashboard from '../dashboard';
import ProjectRoute from '../project/route';
import history from './history';
const Persea = React.memo(({history}) => {
const Persea = React.memo(() => {
const isLoggedIn = useSelector(userIdSelector);
return (
<ConnectedRouter history={history}>
@ -36,8 +35,6 @@ const Persea = React.memo(({history}) => {
Persea.displayName = 'Persea';
Persea.propTypes = {
history: PropTypes.shape({}).isRequired,
};
Persea.propTypes = {};
export default hot(module)(Persea);

View File

@ -1,5 +1,3 @@
import './index.scss';
import {join} from 'path';
import {PropTypes, React} from '@latus/react';
@ -10,7 +8,7 @@ import {
} from 'react-router-dom';
import Tree from 'react-ui-tree';
import ResourceRoute from 'components/resource/route';
import ResourceRoute from '../resource/route';
const renderNode = ({isFile, label, path}) => (
isFile

View File

@ -1,5 +1,3 @@
import './index.scss';
import {join} from 'path';
import {Resource} from '@avocado/resource';

View File

@ -1,5 +1,3 @@
import './index.scss';
import {
PropTypes,
React,
@ -10,6 +8,7 @@ import {resourceSelector, UriContext} from '@persea/core';
const Resource = ({uri, uuid}) => {
const latus = useLatus();
console.log(`${uuid}${uri}`);
const resource = useSelector((state) => resourceSelector(state, `${uuid}${uri}`));
const {Component} = latus.get('%resource-controllers')(uri);
return (

View File

@ -1,12 +1,10 @@
import './index.scss';
import {PropTypes, React} from '@latus/react';
import Resource from '../index';
const ResourceRoute = ({match: {params: {uri, uuid}}}) => (
<Resource uri={uri} uuid={uuid} />
);
)
ResourceRoute.displayName = 'ResourceRoute';

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

View File

View File

@ -1,5 +1,3 @@
import './index.scss';
import {React} from '@latus/react';
import {connectRouter, routerMiddleware} from 'connected-react-router';
import {createBrowserHistory} from 'history';

View File

@ -0,0 +1,5 @@
import {expect} from 'chai';
it('exists', () => {
expect(true).to.be.true;
});

File diff suppressed because it is too large Load Diff

View File

@ -1 +0,0 @@
module.exports = require('../../config/.eslintrc');

View File

@ -1 +0,0 @@
module.exports = require('../../config/.neutrinorc');

View File

@ -1,15 +1,13 @@
{
"name": "@persea/bootstrap",
"version": "1.0.0",
"version": "3.0.0",
"main": "index.js",
"author": "cha0s",
"license": "MIT",
"scripts": {
"build": "NODE_PATH=./node_modules webpack --mode production",
"clean": "rm -rf yarn.lock node_modules $(node -e \"process.stdout.write(require('./package.json').files.filter((file) => {const parts = file.split('/'); return 1 === parts.length || 'test' !== parts[0];}).join(' '));\") && yarn",
"forcepub": "npm unpublish --force $(node -e 'const {name, version} = require(`./package.json`); process.stdout.write(`${name}@${version}`)') && npm publish",
"lint": "NODE_PATH=./node_modules eslint --format codeframe --ext mjs,js .",
"test": "yarn --silent run build --display none && mocha --colors test.js"
"build": "latus-build",
"clean": "latus-build clean",
"fp": "latus-build forcepublish",
"lint": "latus-build lint",
"test": "latus-build test"
},
"files": [
"client.js",
@ -21,24 +19,8 @@
"test.js",
"test.js.map"
],
"dependencies": {
"autoprefixer": "^9.8.6",
"debug": "4.3.1"
},
"dependencies": {},
"devDependencies": {
"@neutrinojs/airbnb": "^9.4.0",
"@neutrinojs/banner": "^9.4.0",
"@neutrinojs/copy": "^9.4.0",
"@neutrinojs/mocha": "^9.4.0",
"@neutrinojs/react": "^9.4.0",
"chai": "4.2.0",
"eslint": "^7",
"eslint-import-resolver-webpack": "0.13.0",
"glob": "7.1.6",
"mocha": "^8",
"neutrino": "^9.4.0",
"source-map-support": "0.5.19",
"webpack": "^4",
"webpack-cli": "^3"
"@latus/build": "1.x"
}
}
}

View File

@ -1,6 +0,0 @@
/* eslint-disable global-require */
module.exports = {
plugins: [
require('autoprefixer'),
],
};

View File

@ -1,3 +0,0 @@
const neutrino = require('neutrino');
module.exports = neutrino(require(`${__dirname}/.neutrinorc`)).webpack();

File diff suppressed because it is too large Load Diff

View File

@ -1 +0,0 @@
module.exports = require('../../config/.eslintrc');

View File

@ -1,5 +0,0 @@
module.exports = require('../../config/.neutrinorc');
module.exports.use.push((neutrino) => {
neutrino.config.entry('index.css').prepend('rc-slider/assets/index.css');
});

View File

@ -1,15 +1,13 @@
{
"name": "@persea/core",
"version": "1.0.0",
"version": "3.0.0",
"main": "index.js",
"author": "cha0s",
"license": "MIT",
"scripts": {
"build": "NODE_PATH=./node_modules webpack --mode production",
"clean": "rm -rf yarn.lock node_modules $(node -e \"process.stdout.write(require('./package.json').files.filter((file) => {const parts = file.split('/'); return 1 === parts.length || 'test' !== parts[0];}).join(' '));\") && yarn",
"forcepub": "npm unpublish --force $(node -e 'const {name, version} = require(`./package.json`); process.stdout.write(`${name}@${version}`)') && npm publish",
"lint": "NODE_PATH=./node_modules eslint --format codeframe --ext mjs,js .",
"test": "yarn --silent run build --display none && mocha --colors test.js"
"build": "latus-build",
"clean": "latus-build clean",
"fp": "latus-build forcepublish",
"lint": "latus-build lint",
"test": "latus-build test"
},
"files": [
"client.js",
@ -26,9 +24,9 @@
"@avocado/math": "^2.0.0",
"@avocado/react": "^1.0.0",
"@latus/core": "^2.0.0",
"@latus/db": "^2.0.0",
"@latus/react": "^2.0.0",
"autoprefixer": "^9.8.6",
"debug": "4.3.1",
"@latus/redux": "^2.0.0",
"deepmerge": "^4.2.2",
"express": "^4.17.1",
"glob": "^7.1.6",
@ -38,23 +36,6 @@
"react-modal": "^3.12.1"
},
"devDependencies": {
"@latus/db": "^2.0.0",
"@latus/redux": "^2.0.0",
"@neutrinojs/airbnb": "^9.4.0",
"@neutrinojs/copy": "9.4.0",
"@neutrinojs/mocha": "^9.4.0",
"@neutrinojs/react": "^9.4.0",
"chai": "4.2.0",
"eslint": "^7",
"eslint-import-resolver-webpack": "0.13.0",
"mocha": "^8",
"neutrino": "^9.4.0",
"source-map-support": "0.5.19",
"webpack": "^4",
"webpack-cli": "^3"
},
"peerDependencies": {
"@latus/db": "^2.0.0",
"@latus/redux": "^2.0.0"
"@latus/build": "1.x"
}
}

View File

@ -1,6 +0,0 @@
/* eslint-disable global-require */
module.exports = {
plugins: [
require('autoprefixer'),
],
};

View File

@ -1,3 +0,0 @@
const neutrino = require('neutrino');
module.exports = neutrino(require(`${__dirname}/.neutrinorc`)).webpack();

File diff suppressed because it is too large Load Diff

View File

@ -1 +0,0 @@
module.exports = require('../../config/.eslintrc');

View File

@ -1,5 +0,0 @@
module.exports = require('../../config/.neutrinorc');
module.exports.use.push((neutrino) => {
neutrino.config.entry('index.css').prepend('react-tabs/style/react-tabs.scss');
});

View File

@ -1,15 +1,13 @@
{
"name": "@persea/entity",
"version": "1.0.0",
"version": "3.0.0",
"main": "index.js",
"author": "cha0s",
"license": "MIT",
"scripts": {
"build": "NODE_PATH=./node_modules webpack --mode production",
"clean": "rm -rf yarn.lock node_modules $(node -e \"process.stdout.write(require('./package.json').files.filter((file) => {const parts = file.split('/'); return 1 === parts.length || 'test' !== parts[0];}).join(' '));\") && yarn",
"forcepub": "npm unpublish --force $(node -e 'const {name, version} = require(`./package.json`); process.stdout.write(`${name}@${version}`)') && npm publish",
"lint": "NODE_PATH=./node_modules eslint --format codeframe --ext mjs,js .",
"test": "yarn --silent run build --display none && mocha --colors test.js"
"build": "latus-build",
"clean": "latus-build clean",
"fp": "latus-build forcepublish",
"lint": "latus-build lint",
"test": "latus-build test"
},
"files": [
"client.js",
@ -24,6 +22,7 @@
"@avocado/entity": "^2.0.0",
"@avocado/graphics": "^2.0.0",
"@avocado/math": "^2.0.0",
"@avocado/react": "^1.0.0",
"@avocado/traits": "^2.0.0",
"@latus/core": "^2.0.0",
"@latus/react": "^2.0.0",
@ -31,27 +30,12 @@
"@persea/core": "^1.0.0",
"@persea/json": "^1.0.0",
"classnames": "^2.2.6",
"debug": "4.3.1",
"lodash.difference": "^4.5.0",
"natsort": "^2.0.2",
"react-autosuggest": "^10.1.0",
"react-tabs": "^3.1.2"
},
"devDependencies": {
"@neutrinojs/airbnb": "^9.4.0",
"@neutrinojs/banner": "^9.4.0",
"@neutrinojs/copy": "^9.4.0",
"@neutrinojs/mocha": "^9.4.0",
"@neutrinojs/react": "^9.4.0",
"autoprefixer": "^9.8.6",
"chai": "4.2.0",
"eslint": "^7",
"eslint-import-resolver-webpack": "0.13.0",
"glob": "7.1.6",
"mocha": "^8",
"neutrino": "^9.4.0",
"source-map-support": "0.5.19",
"webpack": "^4",
"webpack-cli": "^3"
"@latus/build": "1.x"
}
}

View File

@ -1,6 +0,0 @@
/* eslint-disable global-require */
module.exports = {
plugins: [
require('autoprefixer'),
],
};

View File

@ -1,3 +0,0 @@
const neutrino = require('neutrino');
module.exports = neutrino(require(`${__dirname}/.neutrinorc`)).webpack();

File diff suppressed because it is too large Load Diff

View File

@ -1 +0,0 @@
module.exports = require('../../config/.eslintrc');

View File

@ -1 +0,0 @@
module.exports = require('../../config/.neutrinorc');

View File

@ -1,15 +1,13 @@
{
"name": "@persea/json",
"version": "1.0.0",
"version": "3.0.0",
"main": "index.js",
"author": "cha0s",
"license": "MIT",
"scripts": {
"build": "NODE_PATH=./node_modules webpack --mode production",
"clean": "rm -rf yarn.lock node_modules $(node -e \"process.stdout.write(require('./package.json').files.filter((file) => {const parts = file.split('/'); return 1 === parts.length || 'test' !== parts[0];}).join(' '));\") && yarn",
"forcepub": "npm unpublish --force $(node -e 'const {name, version} = require(`./package.json`); process.stdout.write(`${name}@${version}`)') && npm publish",
"lint": "NODE_PATH=./node_modules eslint --format codeframe --ext mjs,js .",
"test": "yarn --silent run build --display none && mocha --colors test.js"
"build": "latus-build",
"clean": "latus-build clean",
"fp": "latus-build forcepublish",
"lint": "latus-build lint",
"test": "latus-build test"
},
"files": [
"index.js",
@ -23,6 +21,7 @@
"@avocado/resource": "^2.0.0",
"@latus/core": "^2.0.0",
"@latus/react": "^2.0.0",
"@latus/redux": "^2.0.0",
"@persea/core": "^1.0.0",
"autoprefixer": "^9.8.6",
"debug": "4.3.1",
@ -31,21 +30,6 @@
"react-tabs": "^3.1.2"
},
"devDependencies": {
"@latus/redux": "^2.0.0",
"@neutrinojs/airbnb": "^9.4.0",
"@neutrinojs/copy": "9.4.0",
"@neutrinojs/mocha": "^9.4.0",
"@neutrinojs/react": "^9.4.0",
"chai": "4.2.0",
"eslint": "^7",
"eslint-import-resolver-webpack": "0.13.0",
"mocha": "^8",
"neutrino": "^9.4.0",
"source-map-support": "0.5.19",
"webpack": "^4",
"webpack-cli": "^3"
},
"peerDependencies": {
"@latus/redux": "^2.0.0"
"@latus/build": "1.x"
}
}

View File

@ -1,6 +0,0 @@
/* eslint-disable global-require */
module.exports = {
plugins: [
require('autoprefixer'),
],
};

View File

@ -158,7 +158,7 @@ JsonTabs.propTypes = {
// eslint-disable-next-line react/forbid-prop-types
defaultValue: PropTypes.any,
immutable: PropTypes.bool,
map: PropTypes.ObjectOf(PropTypes.any).isRequired,
map: PropTypes.objectOf(PropTypes.any).isRequired,
path: PropTypes.string,
};

View File

@ -1,3 +0,0 @@
const neutrino = require('neutrino');
module.exports = neutrino(require(`${__dirname}/.neutrinorc`)).webpack();

File diff suppressed because it is too large Load Diff

View File

@ -1 +0,0 @@
module.exports = require('../../config/.eslintrc');

View File

@ -1 +0,0 @@
module.exports = require('../../config/.neutrinorc');

View File

@ -1,15 +1,13 @@
{
"name": "@persea/sound",
"version": "1.0.0",
"version": "3.0.0",
"main": "index.js",
"author": "cha0s",
"license": "MIT",
"scripts": {
"build": "NODE_PATH=./node_modules webpack --mode production",
"clean": "rm -rf yarn.lock node_modules $(node -e \"process.stdout.write(require('./package.json').files.filter((file) => {const parts = file.split('/'); return 1 === parts.length || 'test' !== parts[0];}).join(' '));\") && yarn",
"forcepub": "npm unpublish --force $(node -e 'const {name, version} = require(`./package.json`); process.stdout.write(`${name}@${version}`)') && npm publish",
"lint": "NODE_PATH=./node_modules eslint --format codeframe --ext mjs,js .",
"test": "yarn --silent run build --display none && mocha --colors test.js"
"build": "latus-build",
"clean": "latus-build clean",
"fp": "latus-build forcepublish",
"lint": "latus-build lint",
"test": "latus-build test"
},
"files": [
"index.js",
@ -22,24 +20,9 @@
"@latus/core": "^2.0.0",
"@latus/react": "^2.0.0",
"@persea/core": "^1.0.0",
"@persea/json": "^1.0.0",
"debug": "4.3.1"
"@persea/json": "^1.0.0"
},
"devDependencies": {
"@neutrinojs/airbnb": "^9.4.0",
"@neutrinojs/banner": "^9.4.0",
"@neutrinojs/copy": "^9.4.0",
"@neutrinojs/mocha": "^9.4.0",
"@neutrinojs/react": "^9.4.0",
"autoprefixer": "^9.8.6",
"chai": "4.2.0",
"eslint": "^7",
"eslint-import-resolver-webpack": "0.13.0",
"glob": "7.1.6",
"mocha": "^8",
"neutrino": "^9.4.0",
"source-map-support": "0.5.19",
"webpack": "^4",
"webpack-cli": "^3"
"@latus/build": "1.x"
}
}
}

View File

@ -1,6 +0,0 @@
/* eslint-disable global-require */
module.exports = {
plugins: [
require('autoprefixer'),
],
};

View File

@ -1,3 +0,0 @@
const neutrino = require('neutrino');
module.exports = neutrino(require(`${__dirname}/.neutrinorc`)).webpack();

File diff suppressed because it is too large Load Diff

View File

@ -1 +0,0 @@
module.exports = require('../../config/.eslintrc');

View File

@ -1 +0,0 @@
module.exports = require('../../config/.neutrinorc');

View File

@ -1,15 +1,13 @@
{
"name": "@persea/timing",
"version": "1.0.0",
"version": "3.0.0",
"main": "index.js",
"author": "cha0s",
"license": "MIT",
"scripts": {
"build": "NODE_PATH=./node_modules webpack --mode production",
"clean": "rm -rf yarn.lock node_modules $(node -e \"process.stdout.write(require('./package.json').files.filter((file) => {const parts = file.split('/'); return 1 === parts.length || 'test' !== parts[0];}).join(' '));\") && yarn",
"forcepub": "npm unpublish --force $(node -e 'const {name, version} = require(`./package.json`); process.stdout.write(`${name}@${version}`)') && npm publish",
"lint": "NODE_PATH=./node_modules eslint --format codeframe --ext mjs,js .",
"test": "yarn --silent run build --display none && mocha --colors test.js"
"build": "latus-build",
"clean": "latus-build clean",
"fp": "latus-build forcepublish",
"lint": "latus-build lint",
"test": "latus-build test"
},
"files": [
"index.js",
@ -20,30 +18,16 @@
"dependencies": {
"@avocado/graphics": "^2.0.0",
"@avocado/math": "^2.0.0",
"@avocado/react": "^1.0.0",
"@avocado/resource": "^2.0.0",
"@avocado/timing": "^2.0.0",
"@latus/core": "^2.0.0",
"@latus/react": "^2.0.0",
"@persea/core": "^1.0.0",
"@persea/json": "^1.0.0",
"debug": "4.3.1",
"react-tabs": "^3.1.2"
},
"devDependencies": {
"@neutrinojs/airbnb": "^9.4.0",
"@neutrinojs/banner": "^9.4.0",
"@neutrinojs/copy": "^9.4.0",
"@neutrinojs/mocha": "^9.4.0",
"@neutrinojs/react": "^9.4.0",
"autoprefixer": "^9.8.6",
"chai": "4.2.0",
"eslint": "^7",
"eslint-import-resolver-webpack": "0.13.0",
"glob": "7.1.6",
"mocha": "^8",
"neutrino": "^9.4.0",
"source-map-support": "0.5.19",
"webpack": "^4",
"webpack-cli": "^3"
"@latus/build": "1.x"
}
}

View File

@ -1,6 +0,0 @@
/* eslint-disable global-require */
module.exports = {
plugins: [
require('autoprefixer'),
],
};

View File

@ -1,3 +0,0 @@
const neutrino = require('neutrino');
module.exports = neutrino(require(`${__dirname}/.neutrinorc`)).webpack();

File diff suppressed because it is too large Load Diff

1
webpack.config.js Normal file
View File

@ -0,0 +1 @@
module.exports = require('@latus/build/build/app.webpack.config');

Some files were not shown because too many files have changed in this diff Show More