Skip to content

Commit

Permalink
Merge pull request #105 from IGNF/maj_http_proxy_agent
Browse files Browse the repository at this point in the history
Maj http-proxy-agent v7 / passage de l'api en "type:module"
  • Loading branch information
MFrangi authored Jun 6, 2024
2 parents aa237f3 + acf1a94 commit 8caaca3
Show file tree
Hide file tree
Showing 55 changed files with 1,165 additions and 967 deletions.
20 changes: 13 additions & 7 deletions .eslintrc.json → .eslint.config.js
Original file line number Diff line number Diff line change
@@ -1,4 +1,7 @@
{
import globals from 'globals';

export default [
{
"rules": {
"indent": [
2,
Expand All @@ -20,9 +23,12 @@
1
]
},
"env": {
"es6": true,
"node": true
},
"extends": "eslint:recommended"
}
languageOptions: {
sourceType: "module",
globals: {
...globals.node,
...globals.browser
}
}
}
]
2 changes: 1 addition & 1 deletion .github/workflows/ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,7 @@ jobs:

strategy:
matrix:
node-version: [16.x]
node-version: [20.x]

steps:
- uses: actions/checkout@v3
Expand Down
54 changes: 37 additions & 17 deletions app.js
Original file line number Diff line number Diff line change
@@ -1,8 +1,28 @@
const path = require('path');
import path from 'path';
import { fileURLToPath } from 'url';
import express from 'express';
import bodyParser from 'body-parser';
import cors from 'cors';

import { requestLogger } from './middlewares/request-logger.js';

import { router as cadastre } from './controllers/cadastre/index.js';
import { router as aoc } from './controllers/aoc/index.js';
import { router as codes_postaux } from './controllers/codes-postaux/index.js';
import { router as gpu } from './controllers/gpu/index.js';
import { router as rpg } from './controllers/rpg/index.js';
import { router as nature } from './controllers/nature/index.js';
import { router as wfs_geoportail } from './controllers/wfs-geoportail/index.js';
import { router as er } from './controllers/er/index.js';
import { router as corse } from './controllers/corse/index.js';
import { router as health } from './controllers/health/index.js';

import { datasets } from './datasets/index.js';

const __filename = fileURLToPath(import.meta.url);

const __dirname = path.dirname(__filename);

const express = require('express');
const bodyParser = require('body-parser');
const cors = require('cors');

var app = express();

Expand Down Expand Up @@ -32,7 +52,7 @@ app.use(function (req, res, next) {
next();
});

app.use(require('./middlewares/request-logger')());
app.use(requestLogger());

/*------------------------------------------------------------------------------
* /api/doc - expose documentation
Expand All @@ -46,7 +66,7 @@ app.use(
);
app.use('/api/doc', express.static(__dirname + '/doc'));
app.get('/api/doc',function(req,res){
res.render('index',{datasets: require('./datasets')});
res.render('index',{datasets: datasets});
});
app.get('/api/doc/:moduleName', function(req,res){
res.render('module',{moduleName: req.params.moduleName});
Expand All @@ -63,33 +83,33 @@ app.get('/api/', function (req, res) {
* Routes
-----------------------------------------------------------------------------*/
/* Module cadastre */
app.use('/api/cadastre',require('./controllers/cadastre'));
app.use('/api/cadastre', cadastre);

/* Module AOC */
app.use('/api/aoc',require('./controllers/aoc'));
app.use('/api/aoc',aoc);

/* Module code postaux */
app.use('/api/codes-postaux', require('./controllers/codes-postaux'));
app.use('/api/codes-postaux', codes_postaux);

/* Module GPU */
app.use('/api/gpu',require('./controllers/gpu'));
app.use('/api/gpu',gpu);

/* Module RPG */
app.use('/api/rpg',require('./controllers/rpg'));
app.use('/api/rpg',rpg);

/* Module Nature */
app.use('/api/nature',require('./controllers/nature'));
app.use('/api/nature',nature);

/* Module all module IGN */
app.use('/api/wfs-geoportail',require('./controllers/wfs-geoportail'));
app.use('/api/wfs-geoportail',wfs_geoportail);

/* Module Espace Revendeur */
app.use('/api/er',require('./controllers/er'));
app.use('/api/er',er);

/* Module Dreal Corse */
app.use('/api/corse/',require('./controllers/corse'));
app.use('/api/corse/',corse);

/* Endpoints dédié à la surveillance */
app.use('/api/health/',require('./controllers/health'));
app.use('/api/health/',health);

module.exports = app;
export {app};
6 changes: 4 additions & 2 deletions checker/isCodeInsee.js
Original file line number Diff line number Diff line change
@@ -1,10 +1,12 @@
const parseInseeCode = require('../helper/parseInseeCode');
import parseInseeCode from "../helper/parseInseeCode.js";

/**
* Validation des codes insee
* @param {String} value
*/
module.exports = function(value){
var isCodeInsee = function(value){
var inseeParts = parseInseeCode(value);
return true;
};

export default isCodeInsee;
5 changes: 3 additions & 2 deletions checker/isGeometry.js
Original file line number Diff line number Diff line change
@@ -1,10 +1,10 @@
const geojsonhint = require('@mapbox/geojsonhint').hint;
import { hint as geojsonhint } from "@mapbox/geojsonhint";

/**
* Validation des géométries geojson
* @param {Object} value
*/
module.exports = function(value){
var isGeometry = function(value){
var errors = geojsonhint(value).filter(function(error){
if ( typeof error.level !== 'undefined' ){
if ( error.level !== 'error' ){
Expand All @@ -20,3 +20,4 @@ module.exports = function(value){
return true;
};

export default isGeometry;
2 changes: 1 addition & 1 deletion circle.yml
Original file line number Diff line number Diff line change
Expand Up @@ -21,4 +21,4 @@ dependencies:

test:
post:
- cat ./coverage/lcov.info | COVERALLS_REPO_TOKEN=eaMJkx2qgoBFZXef0sKFnEuRF7QS7FREP coveralls
- cat ./coverage/lcov.info | COVERALLS_REPO_TOKEN=jVgNlyHIaEgjaCRhvUYzPoYSi2y8eoao0 coveralls
21 changes: 10 additions & 11 deletions controllers/aoc/index.js
Original file line number Diff line number Diff line change
@@ -1,14 +1,13 @@
var Router = require('express').Router;
var router = new Router();
var format = require('pg-format');
const { check } = require('express-validator');
const { matchedData } = require('express-validator');
const isGeometry = require('../../checker/isGeometry');
const validateParams = require('../../middlewares/validateParams');
import { Router } from 'express';
import format from 'pg-format';
import { check, matchedData } from 'express-validator';
import validateParams from '../../middlewares/validateParams.js';
import isGeometry from '../../checker/isGeometry.js';
import pgClient from '../../middlewares/pgClient.js';
import _ from 'lodash';
import Handlebars from 'handlebars';

var pgClient = require('../../middlewares/pgClient');
var _ = require('lodash');
var Handlebars = require('handlebars');
var router = new Router();

var reqAppellations = Handlebars.compile(`
SELECT
Expand Down Expand Up @@ -89,4 +88,4 @@ router.post('/appellation-viticole', [
});
});

module.exports = router;
export {router};
25 changes: 11 additions & 14 deletions controllers/cadastre/index.js
Original file line number Diff line number Diff line change
@@ -1,17 +1,14 @@
var Router = require('express').Router;
var router = new Router();
var cors = require('cors');
const { check } = require('express-validator');
const { matchedData } = require('express-validator');

const validateParams = require('../../middlewares/validateParams');
const {isGeometry,isCodeInsee} = require('../../checker');
const parseInseeCode = require('../../helper/parseInseeCode');

const gppWfsClient = require('../../middlewares/gppWfsClient');

const _ = require('lodash');
import { Router } from 'express';
import cors from 'cors';
import { check, matchedData } from 'express-validator';
import validateParams from '../../middlewares/validateParams.js';
import isGeometry from '../../checker/isGeometry.js';
import isCodeInsee from '../../checker/isCodeInsee.js';
import parseInseeCode from '../../helper/parseInseeCode.js';
import gppWfsClient from '../../middlewares/gppWfsClient.js';
import _ from 'lodash';

var router = new Router();

/**
* Creation d'une chaîne de proxy sur le geoportail
Expand Down Expand Up @@ -184,4 +181,4 @@ router.get('/feuille', cors(corsOptionsGlobal),divisionValidators, createCadastr
router.post('/feuille', cors(corsOptionsGlobal),divisionValidators, createCadastreProxy('CADASTRALPARCELS.PARCELLAIRE_EXPRESS:feuille'));


module.exports=router;
export { router };
16 changes: 6 additions & 10 deletions controllers/codes-postaux/index.js
Original file line number Diff line number Diff line change
@@ -1,13 +1,9 @@
const Router = require('express').Router;
var router = new Router();

const { check } = require('express-validator');
const { matchedData } = require('express-validator');
import { Router } from 'express';
import { check, matchedData } from 'express-validator';
import validateParams from '../../middlewares/validateParams.js';
import codesPostaux from 'codes-postaux';

const validateParams = require('../../middlewares/validateParams');

/* import data package */
const codesPostaux = require('codes-postaux');
var router = new Router();

router.get('/communes/:codePostal', [
check('codePostal').matches(/^\d{5}$/).withMessage('Code postal invalide')
Expand All @@ -20,4 +16,4 @@ router.get('/communes/:codePostal', [
res.json(result);
});

module.exports=router;
export {router};
20 changes: 10 additions & 10 deletions controllers/corse/index.js
Original file line number Diff line number Diff line change
@@ -1,13 +1,13 @@
var Router = require('express').Router;
import { Router } from 'express';
import cors from 'cors';
import { check, matchedData } from 'express-validator';
import validateParams from '../../middlewares/validateParams.js';
import isGeometry from '../../checker/isGeometry.js';
import drealCorseWfsClient from '../../middlewares/drealCorseWfsClient.js';
import _ from 'lodash';


var router = new Router();
var cors = require('cors');
const { check } = require('express-validator');
const { matchedData } = require('express-validator');

const validateParams = require('../../middlewares/validateParams');
const {isGeometry} = require('../../checker');
const drealCorseWfsClient = require('../../middlewares/drealCorsewfsClient');
const _ = require('lodash');

/**
* Creation d'une chaîne de proxy sur le geoportail
Expand Down Expand Up @@ -123,4 +123,4 @@ var moduleValidator = [
router.get('/search', cors(corsOptionsGlobal),moduleValidator, createAllCorseProxy());
router.post('/search', cors(corsOptionsGlobal),moduleValidator, createAllCorseProxy());

module.exports=router;
export {router};
21 changes: 9 additions & 12 deletions controllers/er/index.js
Original file line number Diff line number Diff line change
@@ -1,16 +1,13 @@
var Router = require('express').Router;
var router = new Router();
var cors = require('cors');
const { check } = require('express-validator');
const { matchedData } = require('express-validator');

const validateParams = require('../../middlewares/validateParams');
const {isGeometry} = require('../../checker');
import { Router } from 'express';
import cors from 'cors';
import { check, matchedData } from 'express-validator';
import validateParams from '../../middlewares/validateParams.js';
import isGeometry from '../../checker/isGeometry.js';
import erWfsClient from '../../middlewares/erWfsClient.js';
import _ from 'lodash';

const erWfsClient = require('../../middlewares/erWfsClient');

const _ = require('lodash');

var router = new Router();

/**
* Creation d'une chaîne de proxy sur le geoportail
Expand Down Expand Up @@ -233,4 +230,4 @@ router.get('/grid', cors(corsOptionsGlobal),gridValidators, createErProxy('espac
router.post('/grid', cors(corsOptionsGlobal),gridValidators, createErProxy('espace_revendeurs:grid','grid'));


module.exports=router;
export {router};
21 changes: 10 additions & 11 deletions controllers/gpu/index.js
Original file line number Diff line number Diff line change
@@ -1,14 +1,13 @@
var Router = require('express').Router;
var cors = require('cors');
var router = new Router();

const { check } = require('express-validator');
const { matchedData } = require('express-validator');
const {isGeometry,isCodeInsee} = require('../../checker');
const validateParams = require('../../middlewares/validateParams');
import { Router } from 'express';
import cors from 'cors';
import { check, matchedData } from 'express-validator';
import validateParams from '../../middlewares/validateParams.js';
import isGeometry from '../../checker/isGeometry.js';
import isCodeInsee from '../../checker/isCodeInsee.js';
import gpuWfsClient from '../../middlewares/gpuWfsClient.js';
import _ from 'lodash';

var gpuWfsClient = require('../../middlewares/gpuWfsClient');
const _ = require('lodash');
var router = new Router();

/**
* Creation d'une chaîne de proxy sur le GPU
Expand Down Expand Up @@ -212,4 +211,4 @@ router.get('/all', cors(corsOptionsGlobal), [
});


module.exports=router;
export {router};
10 changes: 5 additions & 5 deletions controllers/health/index.js
Original file line number Diff line number Diff line change
@@ -1,8 +1,8 @@
var Router = require('express').Router;
var router = new Router();
var format = require('pg-format');
import { Router } from 'express';
import format from 'pg-format';
import pgClient from '../../middlewares/pgClient.js';

var pgClient = require('../../middlewares/pgClient');
var router = new Router();

/**
* Contrôle de l'accès à la BDD
Expand All @@ -15,4 +15,4 @@ router.get('/db', pgClient, function(req, res, next) {
});
});

module.exports = router;
export {router};
Loading

0 comments on commit 8caaca3

Please sign in to comment.