nakarte

Source code of https://map.sikmir.ru (fork)
git clone git://git.sikmir.ru/nakarte
Log | Files | Refs | LICENSE

commit f6a299b3431432aacaa263b69c738712410097eb
parent 680c1b49b4542d127dca14837487ba67bfbfa8dc
Author: Sergey Orlov <wladimirych@gmail.com>
Date:   Sat,  5 Dec 2020 21:50:03 +0100

eslint: move files with side effects from legacy to webapp rules

Diffstat:
Meslint_rules/imports_relax_legacy.js | 55-------------------------------------------------------
Meslint_rules/imports_webapp.js | 57++++++++++++++++++++++++++++++++++++++++++++++++++++++---
2 files changed, 54 insertions(+), 58 deletions(-)

diff --git a/eslint_rules/imports_relax_legacy.js b/eslint_rules/imports_relax_legacy.js @@ -1,63 +1,8 @@ 'use strict'; -const topLevelFiles = ['src/index.js']; -const filesMissingExport = [ - 'src/lib/knockout.component.progress/progress.js', - 'src/lib/leaflet.control.azimuth/index.js', - 'src/lib/leaflet.control.caption/index.js', - 'src/lib/leaflet.control.coordinates/index.js', - 'src/lib/leaflet.control.jnx/hash-state.js', - 'src/lib/leaflet.control.jnx/index.js', - 'src/lib/leaflet.control.layers.configure/customLayer.js', - 'src/lib/leaflet.control.layers.events/index.js', - 'src/lib/leaflet.control.panoramas/index.js', - 'src/lib/leaflet.control.printPages/control.js', - 'src/lib/leaflet.control.track-list/control-ruler.js', - 'src/lib/leaflet.control.track-list/track-list.hash-state.js', - 'src/lib/leaflet.control.track-list/track-list.localstorage.js', - 'src/lib/leaflet.hashState/Leaflet.Control.Layers.js', - 'src/lib/leaflet.hashState/Leaflet.Map.js', - 'src/lib/leaflet.hashState/leaflet.hashState.js', - 'src/lib/leaflet.layer.canvasMarkers/index.js', - 'src/lib/leaflet.layer.geojson-ajax/index.js', - 'src/lib/leaflet.layer.google/index.js', - 'src/lib/leaflet.layer.rasterize/Bing.js', - 'src/lib/leaflet.layer.rasterize/CanvasMarkers.js', - 'src/lib/leaflet.layer.rasterize/Google.js', - 'src/lib/leaflet.layer.rasterize/MeasuredLine.js', - 'src/lib/leaflet.layer.rasterize/TileLayer.js', - 'src/lib/leaflet.layer.rasterize/WestraPasses.js', - 'src/lib/leaflet.layer.rasterize/Yandex.js', - 'src/lib/leaflet.layer.rasterize/RetinaTileLayer.js', - 'src/lib/leaflet.layer.soviet-topomaps-grid/index.js', - 'src/lib/leaflet.layer.westraPasses/index.js', - 'src/lib/leaflet.layer.wikimapia/index.js', - 'src/lib/leaflet.layer.yandex/index.js', - 'src/lib/leaflet.lineutil.simplifyLatLngs/index.js', - 'src/lib/leaflet.placemark/index.js', - 'src/lib/leaflet.polyline-edit/index.js', - 'src/lib/leaflet.polyline-measure/index.js', -]; - -const filesWithExportAndSideEffects = [ - 'src/lib/leaflet.control.track-list/track-list', - 'src/lib/leaflet.control.commons', -]; - -const filesMissingExportForUnassigned = [ - ...filesMissingExport.map((s) => s.replace(/(\/index)?\.js$/u, '').replace(/^src\//u, '~/')), - ...filesMissingExport.map((s) => s.replace(/(\/index)?\.js$/u, '')), - ...filesWithExportAndSideEffects, - ...filesWithExportAndSideEffects.map((s) => s.replace(/^src\//u, '~/')), -]; module.exports = { rules: { 'import/no-cycle': 'off', - 'import/no-unused-modules': [ - 'error', - {missingExports: true, unusedExports: true, ignoreExports: [...topLevelFiles, ...filesMissingExport]}, - ], - 'import/no-unassigned-import': ['error', {allow: ['**/*.css', ...filesMissingExportForUnassigned]}], 'import/order': 'off', }, }; diff --git a/eslint_rules/imports_webapp.js b/eslint_rules/imports_webapp.js @@ -1,12 +1,63 @@ 'use strict'; -const filesWithSideEffects = ['src/lib/leaflet.layer.TileLayer.cutline/index.js']; +const topLevelFiles = ['src/index.js']; +const filesWithSideEffects = [ + 'src/lib/knockout.component.progress/progress.js', + 'src/lib/leaflet.control.azimuth/index.js', + 'src/lib/leaflet.control.caption/index.js', + 'src/lib/leaflet.control.coordinates/index.js', + 'src/lib/leaflet.control.jnx/hash-state.js', + 'src/lib/leaflet.control.jnx/index.js', + 'src/lib/leaflet.control.layers.configure/customLayer.js', + 'src/lib/leaflet.control.layers.events/index.js', + 'src/lib/leaflet.control.panoramas/index.js', + 'src/lib/leaflet.control.printPages/control.js', + 'src/lib/leaflet.control.track-list/control-ruler.js', + 'src/lib/leaflet.control.track-list/track-list.hash-state.js', + 'src/lib/leaflet.control.track-list/track-list.localstorage.js', + 'src/lib/leaflet.hashState/Leaflet.Control.Layers.js', + 'src/lib/leaflet.hashState/Leaflet.Map.js', + 'src/lib/leaflet.hashState/leaflet.hashState.js', + 'src/lib/leaflet.layer.canvasMarkers/index.js', + 'src/lib/leaflet.layer.geojson-ajax/index.js', + 'src/lib/leaflet.layer.google/index.js', + 'src/lib/leaflet.layer.rasterize/Bing.js', + 'src/lib/leaflet.layer.rasterize/CanvasMarkers.js', + 'src/lib/leaflet.layer.rasterize/Google.js', + 'src/lib/leaflet.layer.rasterize/MeasuredLine.js', + 'src/lib/leaflet.layer.rasterize/TileLayer.js', + 'src/lib/leaflet.layer.rasterize/WestraPasses.js', + 'src/lib/leaflet.layer.rasterize/Yandex.js', + 'src/lib/leaflet.layer.rasterize/RetinaTileLayer.js', + 'src/lib/leaflet.layer.soviet-topomaps-grid/index.js', + 'src/lib/leaflet.layer.westraPasses/index.js', + 'src/lib/leaflet.layer.wikimapia/index.js', + 'src/lib/leaflet.layer.yandex/index.js', + 'src/lib/leaflet.layer.TileLayer.cutline/index.js', + 'src/lib/leaflet.lineutil.simplifyLatLngs/index.js', + 'src/lib/leaflet.placemark/index.js', + 'src/lib/leaflet.polyline-edit/index.js', + 'src/lib/leaflet.polyline-measure/index.js', +]; + +const filesWithExportAndSideEffects = [ + 'src/lib/leaflet.control.track-list/track-list', + 'src/lib/leaflet.control.commons', +]; + +const filesMissingExportForUnassigned = [ + ...filesWithSideEffects.map((s) => s.replace(/(\/index)?\.js$/u, '').replace(/^src\//u, '~/')), + ...filesWithSideEffects.map((s) => s.replace(/(\/index)?\.js$/u, '')), + ...filesWithExportAndSideEffects, + ...filesWithExportAndSideEffects.map((s) => s.replace(/^src\//u, '~/')), +]; + module.exports = { rules: { 'import/no-unused-modules': [ 'error', - {missingExports: true, unusedExports: true, ignoreExports: filesWithSideEffects}, + {missingExports: true, unusedExports: true, ignoreExports: [...topLevelFiles, ...filesWithSideEffects]}, ], - 'import/no-unassigned-import': ['error', {allow: ['**/*.css', ...filesWithSideEffects]}], + 'import/no-unassigned-import': ['error', {allow: ['**/*.css', ...filesMissingExportForUnassigned]}], }, };