diff --git a/client/cloudcmd.mjs b/client/cloudcmd.mjs index 0dac1a03..ae0b5e11 100644 --- a/client/cloudcmd.mjs +++ b/client/cloudcmd.mjs @@ -8,7 +8,7 @@ import Util from '../common/util.js'; import * as CloudFunc from '../common/cloudfunc.mjs'; import DOM from './dom/index.js'; import {createCloudCmd} from './client.mjs'; -import * as Listeners from './listeners/index.js'; +import * as Listeners from './listeners/index.mjs'; const isDev = process.env.NODE_ENV === 'development'; diff --git a/client/key/vim/index.js b/client/key/vim/index.js index a93f7f98..c7d21a27 100644 --- a/client/key/vim/index.js +++ b/client/key/vim/index.js @@ -8,7 +8,6 @@ const { setCurrent, selectFileNotParent, } = require('./set-current'); -const {promptNewFile} = require('../../dom'); module.exports = (key, event, overrides = {}) => { const defaults = { diff --git a/client/listeners/get-index.js b/client/listeners/get-index.mjs similarity index 54% rename from client/listeners/get-index.js rename to client/listeners/get-index.mjs index 4b31b249..a1a2cfe1 100644 --- a/client/listeners/get-index.js +++ b/client/listeners/get-index.mjs @@ -1,10 +1,11 @@ -'use strict'; +import currify from 'currify'; -module.exports = (array, item) => { +export const getIndex = currify((array, item) => { const index = array.indexOf(item); if (!~index) return 0; return index; -}; +}); + diff --git a/test/client/listeners/get-index.js b/client/listeners/get-index.spec.mjs similarity index 74% rename from test/client/listeners/get-index.js rename to client/listeners/get-index.spec.mjs index db13eed5..51f9eaeb 100644 --- a/test/client/listeners/get-index.js +++ b/client/listeners/get-index.spec.mjs @@ -1,9 +1,5 @@ -'use strict'; - -const test = require('supertape'); - -const dir = '../../../client/listeners'; -const getIndex = require(`${dir}/get-index`); +import test from 'supertape'; +import {getIndex} from './get-index.mjs'; test('cloudcmd: client: listeners: getIndex: not found', (t) => { const array = ['hello']; @@ -21,3 +17,4 @@ test('cloudcmd: client: listeners: getIndex: found', (t) => { t.equal(getIndex(array, 'world'), 1, 'should return index'); t.end(); }); + diff --git a/client/listeners/get-range.js b/client/listeners/get-range.mjs similarity index 76% rename from client/listeners/get-range.js rename to client/listeners/get-range.mjs index b1d23c2c..839c2287 100644 --- a/client/listeners/get-range.js +++ b/client/listeners/get-range.mjs @@ -1,6 +1,4 @@ -'use strict'; - -module.exports = (indexFrom, indexTo, files) => { +export const getRange = (indexFrom, indexTo, files) => { if (indexFrom < indexTo) return files.slice(indexFrom, indexTo + 1); diff --git a/test/client/listeners/get-range.js b/client/listeners/get-range.spec.mjs similarity index 87% rename from test/client/listeners/get-range.js rename to client/listeners/get-range.spec.mjs index b3968809..dbb1c883 100644 --- a/test/client/listeners/get-range.js +++ b/client/listeners/get-range.spec.mjs @@ -1,9 +1,5 @@ -'use strict'; - -const test = require('supertape'); - -const dir = '../../../client/listeners'; -const getRange = require(`${dir}/get-range`); +import test from 'supertape'; +import {getRange} from './get-range.mjs'; test('cloudcmd: client: listeners: getRange: direct', (t) => { const expected = [ @@ -54,3 +50,4 @@ test('cloudcmd: client: listeners: getRange: one', (t) => { t.deepEqual(result, expected, 'should return range'); t.end(); }); + diff --git a/client/listeners/index.js b/client/listeners/index.mjs similarity index 95% rename from client/listeners/index.js rename to client/listeners/index.mjs index a7ea9f2f..130972cb 100644 --- a/client/listeners/index.js +++ b/client/listeners/index.mjs @@ -1,24 +1,19 @@ /* global DOM, CloudCmd */ - -'use strict'; - -const exec = require('execon'); -const itype = require('itype'); -const currify = require('currify'); -const {tryToCatch} = require('try-to-catch'); -const clipboard = require('@cloudcmd/clipboard'); - -const getRange = require('./get-range'); -const uploadFiles = require('../dom/upload-files'); -const {FS} = require('../../common/cloudfunc.mjs'); -const Events = require('#dom/events'); - -const getIndex = currify(require('./get-index')); +import exec from 'execon'; +import itype from 'itype'; +import currify from 'currify'; +import {tryToCatch} from 'try-to-catch'; +import clipboard from '@cloudcmd/clipboard'; +import * as Events from '#dom/events'; +import {getRange} from './get-range.mjs'; +import uploadFiles from '../dom/upload-files.js'; +import {FS} from '../../common/cloudfunc.mjs'; +import {getIndex} from './get-index.mjs'; const NBSP_REG = RegExp(String.fromCharCode(160), 'g'); const SPACE = ' '; -module.exports.init = async () => { +export const init = async () => { contextMenu(); dragndrop(); unload(); @@ -99,7 +94,7 @@ async function config() { EXT = DOM.getPackerExt(type); } -module.exports.initKeysPanel = () => { +export const initKeysPanel = () => { const keysElement = DOM.getById('js-keyspanel'); if (!keysElement) @@ -145,7 +140,7 @@ const getPanel = (side) => { return DOM.getByDataName(`js-${side}`); }; -module.exports.setOnPanel = (side) => { +export const setOnPanel = (side) => { const panel = getPanel(side); const filesElement = DOM.getByDataName('js-files', panel); @@ -500,4 +495,3 @@ function resize() { DOM.changePanel(); }); } - diff --git a/eslint.config.mjs b/eslint.config.mjs index cf7a6a2d..cb783900 100644 --- a/eslint.config.mjs +++ b/eslint.config.mjs @@ -12,7 +12,7 @@ export const match = { 'client/dom/index.js': { 'no-multi-spaces': 'off', }, - '{client,static}/**/*.js': { + '{client,static}/**/*.{js,mjs}': { 'n/no-extraneous-require': 'off', 'n/no-unsupported-features/node-builtins': 'off', },