Compare commits

...

3 Commits

Author SHA1 Message Date
XhmikosR d0be5bf624 Move xo config to .xo-config.json 2024-03-13 22:11:06 +02:00
XhmikosR ada602d6ed Fix the new lint issues 2024-03-13 15:05:52 +02:00
XhmikosR e5fe48e3ff Switch to using xo directly 2024-03-13 15:05:52 +02:00
12 changed files with 3113 additions and 165 deletions
-7
View File
@@ -1,7 +0,0 @@
**/*.min.js
**/dist/
**/vendor/
/_site/
/js/coverage/
/site/static/sw.js
/site/layouts/partials/
+21 -64
View File
@@ -1,11 +1,15 @@
{
"root": true,
"extends": [
"plugin:import/errors",
"plugin:import/warnings",
"plugin:unicorn/recommended",
"xo",
"xo/browser"
"envs": [
"browser"
],
"semicolon": false,
"space": 2,
"ignores": [
"**/*.min.js",
"**/dist/**",
"**/vendor/**",
"site/layouts/partials/",
"site/static/sw.js"
],
"rules": {
"arrow-body-style": "off",
@@ -21,36 +25,6 @@
"js": "always"
}
],
"import/first": "error",
"import/newline-after-import": "error",
"import/no-absolute-path": "error",
"import/no-amd": "error",
"import/no-cycle": [
"error",
{
"ignoreExternal": true
}
],
"import/no-duplicates": "error",
"import/no-extraneous-dependencies": "error",
"import/no-mutable-exports": "error",
"import/no-named-as-default": "error",
"import/no-named-as-default-member": "error",
"import/no-named-default": "error",
"import/no-self-import": "error",
"import/no-unassigned-import": [
"error"
],
"import/no-useless-path-segments": "error",
"import/order": "error",
"indent": [
"error",
2,
{
"MemberExpression": "off",
"SwitchCase": 1
}
],
"logical-assignment-operators": "off",
"max-params": [
"warn",
@@ -67,7 +41,6 @@
}
],
"no-console": "error",
"no-negated-condition": "off",
"object-curly-spacing": [
"error",
"always"
@@ -78,26 +51,19 @@
],
"prefer-object-has-own": "off",
"prefer-template": "error",
"semi": [
"error",
"never"
],
"strict": "error",
"unicorn/explicit-length-check": "off",
"unicorn/filename-case": "off",
"unicorn/no-array-callback-reference": "off",
"unicorn/no-array-method-this-argument": "off",
"unicorn/no-null": "off",
"unicorn/no-negated-condition": "off",
"unicorn/no-typeof-undefined": "off",
"unicorn/no-unused-properties": "error",
"unicorn/numeric-separators-style": "off",
"unicorn/prefer-array-flat": "off",
"unicorn/prefer-at": "off",
"unicorn/prefer-dom-node-dataset": "off",
"unicorn/prefer-module": "off",
"unicorn/prefer-query-selector": "off",
"unicorn/prefer-spread": "off",
"unicorn/prefer-string-replace-all": "off",
"unicorn/prevent-abbreviations": "off"
},
"overrides": [
@@ -105,10 +71,6 @@
"files": [
"build/**"
],
"env": {
"browser": false,
"node": true
},
"parserOptions": {
"sourceType": "module"
},
@@ -130,9 +92,6 @@
"js/tests/*.js",
"js/tests/integration/rollup*.js"
],
"env": {
"node": true
},
"parserOptions": {
"sourceType": "script"
}
@@ -141,9 +100,9 @@
"files": [
"js/tests/unit/**"
],
"env": {
"jasmine": true
},
"envs": [
"jasmine"
],
"rules": {
"no-console": "off",
"unicorn/consistent-function-scoping": "off",
@@ -173,9 +132,6 @@
"files": [
"scss/tests/**"
],
"env": {
"node": true
},
"parserOptions": {
"sourceType": "script"
}
@@ -184,17 +140,18 @@
"files": [
"site/**"
],
"env": {
"browser": true,
"node": false
},
"parserOptions": {
"sourceType": "script",
"ecmaVersion": 2019
},
"rules": {
"no-new": "off",
"unicorn/no-array-for-each": "off"
"strict": [
"error",
"function"
],
"unicorn/no-array-for-each": "off",
"unicorn/numeric-separators-style": "off"
}
},
{
+1
View File
@@ -7,6 +7,7 @@
*/
import path from 'node:path'
import process from 'node:process'
import { fileURLToPath } from 'node:url'
import { babel } from '@rollup/plugin-babel'
import { globby } from 'globby'
+1
View File
@@ -4,6 +4,7 @@ const mapConfig = {
sourcesContent: true
}
// eslint-disable-next-line import/no-anonymous-default-export
export default context => {
return {
map: context.file.dirname.includes('examples') ? false : mapConfig,
+1
View File
@@ -7,6 +7,7 @@
*/
import { execFile, spawn } from 'node:child_process'
import process from 'node:process'
import vnu from 'vnu-jar'
execFile('java', ['-version'], (error, stdout, stderr) => {
+1
View File
@@ -18,6 +18,7 @@ import Tab from './src/tab.js'
import Toast from './src/toast.js'
import Tooltip from './src/tooltip.js'
// eslint-disable-next-line import/no-anonymous-default-export
export default {
Alert,
Button,
+1
View File
@@ -11,6 +11,7 @@
const elementMap = new Map()
// eslint-disable-next-line import/no-anonymous-default-export
export default {
set(element, key, instance) {
if (!elementMap.has(element)) {
+1 -1
View File
@@ -1,4 +1,4 @@
/* eslint-disable import/extensions, import/no-unassigned-import */
/* eslint-disable import/extensions, n/file-extension-in-import, import/no-unassigned-import */
import Tooltip from '../../dist/tooltip'
import '../../dist/carousel'
+1
View File
@@ -1,6 +1,7 @@
'use strict'
const path = require('node:path')
const process = require('node:process')
const ip = require('ip')
const { babel } = require('@rollup/plugin-babel')
const istanbul = require('rollup-plugin-istanbul')
+3081 -87
View File
File diff suppressed because it is too large Load Diff
+3 -6
View File
@@ -61,7 +61,7 @@
"js-compile-standalone-esm": "rollup --environment ESM:true,BUNDLE:false --config build/rollup.config.mjs --sourcemap",
"js-compile-bundle": "rollup --environment BUNDLE:true --config build/rollup.config.mjs --sourcemap",
"js-compile-plugins": "node build/build-plugins.mjs",
"js-lint": "eslint --cache --cache-location .cache/.eslintcache --report-unused-disable-directives --ext .html,.js,.mjs,.md .",
"js-lint": "xo --extension=html --extension=md",
"js-minify": "npm-run-all --aggregate-output --parallel js-minify-*",
"js-minify-standalone": "terser --compress passes=2 --mangle --comments \"/^!/\" --source-map \"content=dist/js/bootstrap.js.map,includeSources,url=bootstrap.min.js.map\" --output dist/js/bootstrap.min.js dist/js/bootstrap.js",
"js-minify-standalone-esm": "terser --compress passes=2 --mangle --comments \"/^!/\" --source-map \"content=dist/js/bootstrap.esm.js.map,includeSources,url=bootstrap.esm.min.js.map\" --output dist/js/bootstrap.esm.min.js dist/js/bootstrap.esm.js",
@@ -115,12 +115,8 @@
"bundlewatch": "^0.3.3",
"clean-css-cli": "^5.6.3",
"cross-env": "^7.0.3",
"eslint": "^8.57.0",
"eslint-config-xo": "^0.44.0",
"eslint-plugin-html": "^8.0.0",
"eslint-plugin-import": "^2.29.1",
"eslint-plugin-markdown": "^4.0.1",
"eslint-plugin-unicorn": "^51.0.1",
"find-unused-sass-variables": "^5.0.0",
"globby": "^14.0.1",
"hammer-simulator": "0.0.1",
@@ -151,7 +147,8 @@
"stylelint": "^16.2.1",
"stylelint-config-twbs-bootstrap": "^14.0.0",
"terser": "^5.29.1",
"vnu-jar": "23.4.11"
"vnu-jar": "23.4.11",
"xo": "^0.54.2"
},
"files": [
"dist/{css,js}/*.{css,js,map}",
+1
View File
@@ -4,6 +4,7 @@ const path = require('node:path')
const runnerPath = path.join(__dirname, 'runner').replace(/\\/g, '/')
// eslint-disable-next-line n/no-deprecated-api
require.extensions['.scss'] = (module, filename) => {
const normalizedFilename = filename.replace(/\\/g, '/')