Skip to content

Commit

Permalink
Changed to type:module in package.json so we can have modern JS
Browse files Browse the repository at this point in the history
  • Loading branch information
jhthorsen committed Sep 21, 2022
1 parent 62812ed commit 952b542
Show file tree
Hide file tree
Showing 14 changed files with 44 additions and 86 deletions.
File renamed without changes.
1 change: 1 addition & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -18,6 +18,7 @@
/public/docs/fonts/
/public/docs/scripts/
/public/docs/styles/
/assets/rollup.config.d/
.perl-version
assets/sass/.sass-cache/
node_modules/
Expand Down
8 changes: 0 additions & 8 deletions assets/rollup.config.d/core.js

This file was deleted.

10 changes: 0 additions & 10 deletions assets/rollup.config.d/eslint.js

This file was deleted.

10 changes: 0 additions & 10 deletions assets/rollup.config.d/include.js

This file was deleted.

14 changes: 0 additions & 14 deletions assets/rollup.config.d/js.js

This file was deleted.

7 changes: 0 additions & 7 deletions assets/rollup.config.d/sass.js

This file was deleted.

6 changes: 0 additions & 6 deletions assets/rollup.config.d/svelte.js

This file was deleted.

9 changes: 0 additions & 9 deletions babel.config.js

This file was deleted.

20 changes: 20 additions & 0 deletions babel.config.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,20 @@
{
"plugins": [
"@babel/plugin-transform-runtime"
],
"presets": [
[
"@babel/preset-env",
{
"targets": {
"edge": "17",
"firefox": "60",
"chrome": "67",
"safari": "11.1"
},
"useBuiltIns": "entry",
"corejs": "3.6.5"
}
]
]
}
2 changes: 1 addition & 1 deletion jest.config.js
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
module.exports = {
export default {
collectCoverage: false,
collectCoverageFrom: ['<rootDir>/assets/**/*.js'],
moduleFileExtensions: ['js'],
Expand Down
8 changes: 1 addition & 7 deletions lib/Convos.pm
Original file line number Diff line number Diff line change
Expand Up @@ -88,13 +88,7 @@ sub startup {
$user_r->get('/settings/*rest', {rest => ''});
$user_r->get('/search');

$self->plugin(
Webpack => {
engine => 'Mojo::Alien::rollup',
process => [qw(sass eslint core js svelte)],
dependencies => {core => 'rollup', svelte => [qw(rollup-plugin-svelte svelte)]}
}
);
$self->plugin(Webpack => {engine => 'Mojo::Alien::rollup', process => []});

$self->_plugins;
$self->hook(around_action => \&_around_action);
Expand Down
1 change: 1 addition & 0 deletions package.json
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,7 @@
"version": "7.6.0",
"license": "Artistic-2.0",
"repository": "https://github.com/convos-chat/convos",
"type": "module",
"scripts": {
"build": "ROLLUP_OUT_DIR=public/asset rollup -c --environment production",
"dev": "./script/convos dev",
Expand Down
34 changes: 20 additions & 14 deletions rollup.config.js
Original file line number Diff line number Diff line change
@@ -1,27 +1,33 @@
// Autogenerated by Mojo::Alien::rollup 1.02
const fs = require('fs');
const pkg = require('./package.json');
const path = require('path');
import commonjs from '@rollup/plugin-commonjs';
import eslint from '@rollup/plugin-eslint';
import path from 'path';
import resolve from '@rollup/plugin-node-resolve';
import sass from 'sass';
import scss from 'rollup-plugin-scss';
import svelte from 'rollup-plugin-svelte';
import {babel} from '@rollup/plugin-babel';
import {terser} from 'rollup-plugin-terser';

const assetsDir = process.env.ROLLUP_ASSETS_DIR || path.resolve(__dirname, 'assets');
const isDev = process.env.NODE_ENV !== 'production';
const fileKey = isDev ? 'development' : parseInt((new Date().getTime() / 1000), 10).toString(16);
const outDir = process.env.ROLLUP_OUT_DIR || path.resolve(__dirname, 'dist');
const ts = parseInt((new Date().getTime() / 1000), 10).toString(16);

function outPath(name) {
return path.resolve(outDir, name.replace(/\[hash\]/, isDev ? 'development' : ts));
}

const config = {
input: path.resolve(assetsDir, 'index.js'),
output: {format: 'iife', sourcemap: true},
output: {format: 'iife', sourcemap: true, file: path.resolve(outDir, `convos.${fileKey}.js`)},
plugins: [],
watch: {clearScreen: false},
};

const includeFile = path.resolve(assetsDir, 'rollup.config.d', 'include.js');
if (fs.existsSync(includeFile)) require(includeFile)(config, {isDev});
const outputStyle = isDev ? null : 'compressed';
config.plugins.push(scss({outputStyle, sass, sourceMap: true, watch: './assets/sass'}));
config.plugins.push(eslint({exclude: ['node_modules/**', '**/*.css', '**/*.sass'], fix: process.env.ESLINT_FIX ? true : false}));
config.plugins.push(svelte({}));
config.plugins.push(commonjs());
config.plugins.push(resolve({browser: true}));
config.plugins.push(babel({babelHelpers: 'runtime'}));

if (!config.output.dir && !config.output.file) config.output.file = outPath(pkg.name.replace(/\W+/g, '-') + '.[hash].js');
if (!isDev) config.plugins.push(terser());

module.exports = config;
export default config;

0 comments on commit 952b542

Please sign in to comment.