more types
This commit is contained in:
parent
0a1b3ee772
commit
8562758358
|
@ -0,0 +1,184 @@
|
|||
"use strict";
|
||||
Object.defineProperty(exports, "__esModule", { value: true });
|
||||
/**
|
||||
* convertisseur de données de bornes de recharge électrique à partir de données Chargemap et open data Etalab
|
||||
*/
|
||||
var fs = require("fs");
|
||||
var minimist = require("minimist");
|
||||
var configIRVE_1 = require("./mappings/converters/configIRVE");
|
||||
var mappingConfigIRVE_simple_1 = require("./mappings/converters/mappingConfigIRVE_simple");
|
||||
var engine_1 = require("./mappings/engine");
|
||||
var utils_ts_1 = require("./mappings/utils.ts");
|
||||
var debugLog = utils_ts_1.default.debugLog;
|
||||
var use_mappping_engine = false;
|
||||
use_mappping_engine = true;
|
||||
var Mapping_engine = new engine_1.default(configIRVE_1.default);
|
||||
var mini_arguments = minimist(process.argv.slice(2));
|
||||
var sourceFilePathGeoJson = './etalab_data/small.json';
|
||||
// wip filter
|
||||
var filterOnBoundingBox = true;
|
||||
filterOnBoundingBox = false;
|
||||
var boundingBoxCoordinates = {
|
||||
xMin: 1.91,
|
||||
xMax: 2.38,
|
||||
yMin: 48.7,
|
||||
yMax: 48.4,
|
||||
};
|
||||
var filterCoordinates = true;
|
||||
var enable_filter_on_department = true;
|
||||
enable_filter_on_department = false;
|
||||
var filterDepartment = 91;
|
||||
if (mini_arguments['department']) {
|
||||
filterDepartment = mini_arguments['department'];
|
||||
enable_filter_on_department = true;
|
||||
}
|
||||
if (mini_arguments['source']) {
|
||||
sourceFilePathGeoJson = mini_arguments['source'];
|
||||
}
|
||||
if (mini_arguments['engine']) {
|
||||
use_mappping_engine = mini_arguments['engine'];
|
||||
}
|
||||
var filterZipCode = new RegExp("^".concat(filterDepartment));
|
||||
var filterZipCodeAdresse = new RegExp(" ".concat(filterDepartment));
|
||||
var filteredName = '';
|
||||
if (enable_filter_on_department) {
|
||||
filteredName = '_filtered_zipcode_' + filterDepartment;
|
||||
}
|
||||
else if (filterOnBoundingBox) {
|
||||
filteredName = '_filtered_bbox_' + boundingBoxCoordinates.xMin + '-' + boundingBoxCoordinates.xMax + '_' + boundingBoxCoordinates.yMin + '-' + boundingBoxCoordinates.yMax;
|
||||
}
|
||||
var pointCounterMax = 1000000;
|
||||
var limitConversionToFirstPoint = false;
|
||||
// limitConversionToFirstPoint = true
|
||||
if (limitConversionToFirstPoint) {
|
||||
pointCounterMax = 1;
|
||||
}
|
||||
var defaultPropertiesOfPoint = {
|
||||
'amenity': 'charging_station'
|
||||
};
|
||||
var converted_geo_json = {
|
||||
type: 'FeatureCollection',
|
||||
features: []
|
||||
};
|
||||
/**
|
||||
*
|
||||
* @param sourceFilePath
|
||||
* @param mapping
|
||||
* @param pointCounterMax
|
||||
* @param boundingBoxCoordinates
|
||||
*/
|
||||
function convertDataForIRVE(sourceFilePath, mapping, pointCounterMax, boundingBoxCoordinates) {
|
||||
debugLog('convertDataFromChargemap from ', sourceFilePath);
|
||||
fs.readFile(sourceFilePath, 'utf8', function (err, data) {
|
||||
var point_counter = 0;
|
||||
if (err) {
|
||||
return debugLog(err);
|
||||
}
|
||||
var data_transformed = JSON.parse(data);
|
||||
// debug('data keys ', Object.keys(dataTransformed))
|
||||
debugLog('debug: properties of point 0', data_transformed.features[0]);
|
||||
if (data_transformed.features) {
|
||||
debugLog('data found, features:', data_transformed.features.length);
|
||||
// find interesting list of points to use
|
||||
var list_of_points = data_transformed.features;
|
||||
// for each point from the data source, convert with the mapping
|
||||
console.log('listOfPoints.length', list_of_points.length);
|
||||
list_of_points.forEach(function (feature_point) {
|
||||
var regex_filter_test_result = true;
|
||||
if (enable_filter_on_department) {
|
||||
debugLog('filtre sur les départements activé');
|
||||
regex_filter_test_result = (filterZipCode.test(feature_point.properties.consolidated_code_postal)
|
||||
||
|
||||
filterZipCodeAdresse.test(feature_point.properties.adresse_station));
|
||||
}
|
||||
else if (filterOnBoundingBox) {
|
||||
debugLog('filtre sur les coordonnées activé');
|
||||
var x = feature_point.properties.coordonneesXY[0];
|
||||
var xMin = boundingBoxCoordinates.xMin;
|
||||
var xMax = boundingBoxCoordinates.xMax;
|
||||
var yMin = boundingBoxCoordinates.yMin;
|
||||
var yMax = boundingBoxCoordinates.yMax;
|
||||
var y = feature_point.properties.coordonneesXY[1];
|
||||
regex_filter_test_result = ((x >= xMin && x <= xMax)
|
||||
&&
|
||||
(y >= yMin && y <= yMax));
|
||||
}
|
||||
// filter points depending on zipcode
|
||||
if (filterCoordinates && regex_filter_test_result) {
|
||||
debugLog('featurePoint.properties.consolidated_code_postal', feature_point.properties.consolidated_code_postal);
|
||||
// limit results number of points
|
||||
// if (pointcounter < pointCounterMax) {
|
||||
debugLog('add point');
|
||||
debugLog('featurePoint', feature_point);
|
||||
var mapped_point = {};
|
||||
if (use_mappping_engine) {
|
||||
mapped_point = Mapping_engine.mapElementFromConf(feature_point);
|
||||
}
|
||||
else {
|
||||
mapped_point = mapElementFromConfSimple(feature_point, mapping);
|
||||
}
|
||||
debugLog('map one point', feature_point, mapped_point);
|
||||
if (mapped_point) {
|
||||
converted_geo_json.features.push(mapped_point);
|
||||
}
|
||||
}
|
||||
// }
|
||||
point_counter++;
|
||||
});
|
||||
// output new geojson
|
||||
console.log('convertedGeoJson.features.length', converted_geo_json.features.length);
|
||||
// write file on disk
|
||||
var fileNameToWrite = 'my_converted_data_set' + filteredName + '.json';
|
||||
console.log('write file ', fileNameToWrite);
|
||||
utils_ts_1.default.writeFile(fileNameToWrite, JSON.stringify(converted_geo_json, null, 2));
|
||||
debugLog('mapped output:', converted_geo_json.features);
|
||||
return converted_geo_json;
|
||||
}
|
||||
});
|
||||
}
|
||||
/**
|
||||
* retuns the converted element from mapping config if present, null otherwise
|
||||
*/
|
||||
function mapElementFromConfSimple(featurePoint, mappingConfig) {
|
||||
var mappingKeys = Object.keys(mappingConfig);
|
||||
var featurePointPropertiesKeys = Object.keys(featurePoint.properties);
|
||||
debugLog('keys', mappingKeys, featurePointPropertiesKeys);
|
||||
var newProperties = defaultPropertiesOfPoint;
|
||||
// reinit properties of current point
|
||||
var basePoint = Object.create(featurePoint);
|
||||
basePoint.type = featurePoint.type;
|
||||
basePoint.geometry = featurePoint.geometry;
|
||||
basePoint.properties = newProperties;
|
||||
// apply new properties if found in mapping config
|
||||
featurePointPropertiesKeys.forEach(function (pointKeyName) {
|
||||
if (mappingKeys.indexOf(pointKeyName) !== -1) {
|
||||
debugLog('found element', pointKeyName, '=>', mappingConfig[pointKeyName], 'value : ', featurePoint.properties[pointKeyName]);
|
||||
var convertedValue = '';
|
||||
if (utils_ts_1.default.isBooleanKey(pointKeyName)) {
|
||||
var copyOfValue = '' + featurePoint.properties[pointKeyName];
|
||||
if (typeof copyOfValue === typeof Object && copyOfValue.key_converted) {
|
||||
copyOfValue = copyOfValue.key_converted;
|
||||
}
|
||||
convertedValue = copyOfValue.toLowerCase() == 'true' ? 'yes' : 'no';
|
||||
}
|
||||
else {
|
||||
convertedValue = featurePoint.properties[pointKeyName];
|
||||
}
|
||||
if (convertedValue) {
|
||||
newProperties[mappingConfig[pointKeyName]] = convertedValue;
|
||||
}
|
||||
}
|
||||
});
|
||||
debugLog('basePoint', basePoint);
|
||||
return basePoint;
|
||||
}
|
||||
if (use_mappping_engine) {
|
||||
console.log(' - using mapping engine');
|
||||
console.log(' - pointCounterMax', pointCounterMax);
|
||||
Mapping_engine.setConfig(configIRVE_1.default);
|
||||
convertDataForIRVE(sourceFilePathGeoJson, configIRVE_1.default, pointCounterMax, boundingBoxCoordinates);
|
||||
}
|
||||
else {
|
||||
configIRVE_1.default = mappingConfigIRVE_simple_1.default;
|
||||
convertDataForIRVE(sourceFilePathGeoJson, configIRVE_1.default, pointCounterMax, boundingBoxCoordinates);
|
||||
}
|
|
@ -1,14 +1,14 @@
|
|||
/**
|
||||
* convertisseur de données de bornes de recharge électrique à partir de données Chargemap et open data Etalab
|
||||
*/
|
||||
import fs from 'node'
|
||||
import * as minimist from 'minimist'
|
||||
import * as fs from 'fs'
|
||||
|
||||
import mappingConfigIRVE from './mappings/converters/configIRVE'
|
||||
import mappingConfigIRVE_simple from './mappings/converters/mappingConfigIRVE_simple'
|
||||
import mapping_engine from './mappings/engine'
|
||||
import custom_utils from './mappings/utils'
|
||||
import MappingConfigType, {BoundingBoxCoordinatesType} from "./mappings/mapping-config.type";
|
||||
import utils from './mappings/utils.ts'
|
||||
import MappingConfigType, {BoundingBoxCoordinatesType, FeatureCollection} from "./mappings/mapping-config.type";
|
||||
import utils from './mappings/utils'
|
||||
const minimist = require('minimist')
|
||||
|
||||
const debugLog = utils.debugLog;
|
||||
|
||||
|
@ -17,7 +17,7 @@ use_mappping_engine = true
|
|||
|
||||
let Mapping_engine = new mapping_engine(mappingConfigIRVE)
|
||||
|
||||
let mini_arguments = minimist(process.argv.slice(2))
|
||||
let mini_arguments: any = minimist(process.argv.slice(2))
|
||||
|
||||
|
||||
let sourceFilePathGeoJson = './etalab_data/small.json'
|
||||
|
@ -26,7 +26,7 @@ let sourceFilePathGeoJson = './etalab_data/small.json'
|
|||
let filterOnBoundingBox = true
|
||||
filterOnBoundingBox = false
|
||||
|
||||
let boundingBoxCoordinates : BoundingBoxCoordinatesType = {
|
||||
let boundingBoxCoordinates: BoundingBoxCoordinatesType = {
|
||||
xMin: 1.91,
|
||||
xMax: 2.38,
|
||||
yMin: 48.7,
|
||||
|
@ -58,19 +58,19 @@ if (enable_filter_on_department) {
|
|||
} else if (filterOnBoundingBox) {
|
||||
filteredName = '_filtered_bbox_' + boundingBoxCoordinates.xMin + '-' + boundingBoxCoordinates.xMax + '_' + boundingBoxCoordinates.yMin + '-' + boundingBoxCoordinates.yMax
|
||||
}
|
||||
let pointCounterMax = 1000000
|
||||
let pointCounterMax :number = 1000000
|
||||
|
||||
let limitConversionToFirstPoint = false
|
||||
let limitConversionToFirstPoint :boolean = false
|
||||
// limitConversionToFirstPoint = true
|
||||
|
||||
if (limitConversionToFirstPoint) {
|
||||
pointCounterMax = 1
|
||||
}
|
||||
let defaultPropertiesOfPoint = {
|
||||
let defaultPropertiesOfPoint :any= {
|
||||
'amenity': 'charging_station'
|
||||
}
|
||||
|
||||
let converted_geo_json = {
|
||||
let converted_geo_json :any = {
|
||||
type: 'FeatureCollection',
|
||||
features: []
|
||||
}
|
||||
|
@ -82,7 +82,7 @@ let converted_geo_json = {
|
|||
* @param pointCounterMax
|
||||
* @param boundingBoxCoordinates
|
||||
*/
|
||||
function convertDataForIRVE (sourceFilePath, mapping: MappingConfigType, pointCounterMax, boundingBoxCoordinates) {
|
||||
function convertDataForIRVE(sourceFilePath: string, mapping: MappingConfigType, pointCounterMax: number, boundingBoxCoordinates: any) {
|
||||
debugLog('convertDataFromChargemap from ', sourceFilePath)
|
||||
|
||||
fs.readFile(sourceFilePath, 'utf8', function (err, data) {
|
||||
|
@ -90,7 +90,7 @@ function convertDataForIRVE (sourceFilePath, mapping: MappingConfigType, pointCo
|
|||
if (err) {
|
||||
return debugLog(err)
|
||||
}
|
||||
let data_transformed = JSON.parse(data)
|
||||
let data_transformed: FeatureCollection = JSON.parse(data)
|
||||
// debug('data keys ', Object.keys(dataTransformed))
|
||||
|
||||
debugLog('debug: properties of point 0', data_transformed.features[0])
|
||||
|
@ -99,11 +99,11 @@ function convertDataForIRVE (sourceFilePath, mapping: MappingConfigType, pointCo
|
|||
debugLog('data found, features:', data_transformed.features.length)
|
||||
|
||||
// find interesting list of points to use
|
||||
let list_of_points = data_transformed.features
|
||||
let list_of_points : any = data_transformed.features
|
||||
// for each point from the data source, convert with the mapping
|
||||
|
||||
console.log('listOfPoints.length', list_of_points.length)
|
||||
list_of_points.forEach(feature_point => {
|
||||
list_of_points.forEach((feature_point: any) => {
|
||||
|
||||
let regex_filter_test_result = true
|
||||
|
||||
|
@ -114,7 +114,8 @@ function convertDataForIRVE (sourceFilePath, mapping: MappingConfigType, pointCo
|
|||
||
|
||||
filterZipCodeAdresse.test(feature_point.properties.adresse_station)
|
||||
)
|
||||
} else if (filterOnBoundingBox) {
|
||||
}
|
||||
else if (filterOnBoundingBox) {
|
||||
debugLog('filtre sur les coordonnées activé')
|
||||
|
||||
let x = feature_point.properties.coordonneesXY[0]
|
||||
|
@ -144,7 +145,7 @@ function convertDataForIRVE (sourceFilePath, mapping: MappingConfigType, pointCo
|
|||
|
||||
debugLog('featurePoint', feature_point)
|
||||
|
||||
let mapped_point = {}
|
||||
let mapped_point: any = {}
|
||||
|
||||
if (use_mappping_engine) {
|
||||
mapped_point = Mapping_engine.mapElementFromConf(feature_point)
|
||||
|
@ -177,13 +178,13 @@ function convertDataForIRVE (sourceFilePath, mapping: MappingConfigType, pointCo
|
|||
/**
|
||||
* retuns the converted element from mapping config if present, null otherwise
|
||||
*/
|
||||
function mapElementFromConfSimple (featurePoint, mappingConfig) {
|
||||
function mapElementFromConfSimple(featurePoint: any, mappingConfig: MappingConfigType) {
|
||||
let mappingKeys = Object.keys(mappingConfig)
|
||||
let featurePointPropertiesKeys = Object.keys(featurePoint.properties)
|
||||
|
||||
debugLog('keys', mappingKeys, featurePointPropertiesKeys)
|
||||
|
||||
let newProperties = defaultPropertiesOfPoint
|
||||
let newProperties :any = defaultPropertiesOfPoint
|
||||
|
||||
// reinit properties of current point
|
||||
let basePoint = Object.create(featurePoint)
|
||||
|
@ -192,14 +193,14 @@ function mapElementFromConfSimple (featurePoint, mappingConfig) {
|
|||
basePoint.properties = newProperties
|
||||
|
||||
// apply new properties if found in mapping config
|
||||
featurePointPropertiesKeys.forEach(pointKeyName => {
|
||||
featurePointPropertiesKeys.forEach((pointKeyName: string) => {
|
||||
|
||||
if (mappingKeys.indexOf(pointKeyName) !== -1) {
|
||||
debugLog('found element', pointKeyName, '=>', mappingConfig[pointKeyName], 'value : ', featurePoint.properties[pointKeyName])
|
||||
let convertedValue = ''
|
||||
if ( utils.isBooleanKey(pointKeyName)) {
|
||||
let convertedValue: any = ''
|
||||
if (utils.isBooleanKey(pointKeyName)) {
|
||||
|
||||
let copyOfValue :any = '' + featurePoint.properties[pointKeyName]
|
||||
let copyOfValue: any = '' + featurePoint.properties[pointKeyName]
|
||||
if (typeof copyOfValue === typeof Object && copyOfValue.key_converted) {
|
||||
copyOfValue = copyOfValue.key_converted
|
||||
}
|
||||
|
@ -226,7 +227,7 @@ if (use_mappping_engine) {
|
|||
|
||||
} else {
|
||||
|
||||
mappingConfigIRVE = mappingConfigIRVE_simple
|
||||
let mappingConfigIRVE = mappingConfigIRVE_simple
|
||||
convertDataForIRVE(sourceFilePathGeoJson, mappingConfigIRVE, pointCounterMax, boundingBoxCoordinates)
|
||||
}
|
||||
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<coverage generated="1691223461793" clover="3.2.0">
|
||||
<project timestamp="1691223461793" name="All files">
|
||||
<metrics statements="237" coveredstatements="110" conditionals="6" coveredconditionals="4" methods="9" coveredmethods="4" elements="252" coveredelements="118" complexity="0" loc="237" ncloc="237" packages="2" files="2" classes="2"/>
|
||||
<coverage generated="1691225815979" clover="3.2.0">
|
||||
<project timestamp="1691225815979" name="All files">
|
||||
<metrics statements="305" coveredstatements="157" conditionals="12" coveredconditionals="7" methods="13" coveredmethods="6" elements="330" coveredelements="170" complexity="0" loc="305" ncloc="305" packages="2" files="3" classes="3"/>
|
||||
<package name="data_other.testing">
|
||||
<metrics statements="34" coveredstatements="34" conditionals="0" coveredconditionals="0" methods="0" coveredmethods="0"/>
|
||||
<file name="mappings_to_test.ts" path="/home/poule/encrypted/stockage-syncable/www/development/html/scripts/mapping_geojson_to_osm_tags/data_other/testing/mappings_to_test.ts">
|
||||
|
@ -43,7 +43,7 @@
|
|||
</file>
|
||||
</package>
|
||||
<package name="mappings">
|
||||
<metrics statements="203" coveredstatements="76" conditionals="6" coveredconditionals="4" methods="9" coveredmethods="4"/>
|
||||
<metrics statements="271" coveredstatements="123" conditionals="12" coveredconditionals="7" methods="13" coveredmethods="6"/>
|
||||
<file name="engine.ts" path="/home/poule/encrypted/stockage-syncable/www/development/html/scripts/mapping_geojson_to_osm_tags/mappings/engine.ts">
|
||||
<metrics statements="203" coveredstatements="76" conditionals="6" coveredconditionals="4" methods="9" coveredmethods="4"/>
|
||||
<line num="1" count="1" type="stmt"/>
|
||||
|
@ -250,6 +250,77 @@
|
|||
<line num="202" count="1" type="stmt"/>
|
||||
<line num="203" count="1" type="stmt"/>
|
||||
</file>
|
||||
<file name="utils.js" path="/home/poule/encrypted/stockage-syncable/www/development/html/scripts/mapping_geojson_to_osm_tags/mappings/utils.js">
|
||||
<metrics statements="68" coveredstatements="47" conditionals="6" coveredconditionals="3" methods="4" coveredmethods="2"/>
|
||||
<line num="1" count="1" type="stmt"/>
|
||||
<line num="2" count="1" type="cond" truecount="1" falsecount="1"/>
|
||||
<line num="3" count="3" type="cond" truecount="0" falsecount="1"/>
|
||||
<line num="4" count="0" type="stmt"/>
|
||||
<line num="5" count="0" type="stmt"/>
|
||||
<line num="6" count="0" type="stmt"/>
|
||||
<line num="7" count="0" type="stmt"/>
|
||||
<line num="8" count="0" type="stmt"/>
|
||||
<line num="9" count="3" type="stmt"/>
|
||||
<line num="10" count="3" type="stmt"/>
|
||||
<line num="11" count="1" type="stmt"/>
|
||||
<line num="12" count="1" type="stmt"/>
|
||||
<line num="13" count="1" type="stmt"/>
|
||||
<line num="14" count="1" type="stmt"/>
|
||||
<line num="15" count="1" type="stmt"/>
|
||||
<line num="16" count="1" type="stmt"/>
|
||||
<line num="17" count="1" type="stmt"/>
|
||||
<line num="18" count="1" type="stmt"/>
|
||||
<line num="19" count="1" type="stmt"/>
|
||||
<line num="20" count="3" type="cond" truecount="1" falsecount="0"/>
|
||||
<line num="21" count="3" type="stmt"/>
|
||||
<line num="22" count="3" type="cond" truecount="1" falsecount="0"/>
|
||||
<line num="23" count="8" type="stmt"/>
|
||||
<line num="24" count="8" type="stmt"/>
|
||||
<line num="25" count="3" type="cond" truecount="0" falsecount="1"/>
|
||||
<line num="26" count="0" type="stmt"/>
|
||||
<line num="27" count="0" type="stmt"/>
|
||||
<line num="28" count="3" type="stmt"/>
|
||||
<line num="29" count="3" type="stmt"/>
|
||||
<line num="30" count="1" type="stmt"/>
|
||||
<line num="31" count="1" type="stmt"/>
|
||||
<line num="32" count="1" type="stmt"/>
|
||||
<line num="33" count="1" type="stmt"/>
|
||||
<line num="34" count="1" type="stmt"/>
|
||||
<line num="35" count="1" type="stmt"/>
|
||||
<line num="36" count="1" type="stmt"/>
|
||||
<line num="37" count="1" type="stmt"/>
|
||||
<line num="38" count="1" type="stmt"/>
|
||||
<line num="39" count="1" type="stmt"/>
|
||||
<line num="40" count="1" type="stmt"/>
|
||||
<line num="41" count="1" type="stmt"/>
|
||||
<line num="42" count="1" type="stmt"/>
|
||||
<line num="43" count="1" type="stmt"/>
|
||||
<line num="44" count="1" type="stmt"/>
|
||||
<line num="45" count="0" type="stmt"/>
|
||||
<line num="46" count="0" type="stmt"/>
|
||||
<line num="47" count="0" type="stmt"/>
|
||||
<line num="48" count="1" type="stmt"/>
|
||||
<line num="49" count="1" type="stmt"/>
|
||||
<line num="50" count="1" type="stmt"/>
|
||||
<line num="51" count="1" type="stmt"/>
|
||||
<line num="52" count="1" type="stmt"/>
|
||||
<line num="53" count="0" type="stmt"/>
|
||||
<line num="54" count="0" type="stmt"/>
|
||||
<line num="55" count="0" type="stmt"/>
|
||||
<line num="56" count="0" type="stmt"/>
|
||||
<line num="57" count="0" type="stmt"/>
|
||||
<line num="58" count="0" type="stmt"/>
|
||||
<line num="59" count="0" type="stmt"/>
|
||||
<line num="60" count="0" type="stmt"/>
|
||||
<line num="61" count="0" type="stmt"/>
|
||||
<line num="62" count="0" type="stmt"/>
|
||||
<line num="63" count="0" type="stmt"/>
|
||||
<line num="64" count="1" type="stmt"/>
|
||||
<line num="65" count="1" type="stmt"/>
|
||||
<line num="66" count="1" type="stmt"/>
|
||||
<line num="67" count="1" type="stmt"/>
|
||||
<line num="68" count="1" type="stmt"/>
|
||||
</file>
|
||||
</package>
|
||||
</project>
|
||||
</coverage>
|
||||
|
|
File diff suppressed because one or more lines are too long
|
@ -101,7 +101,7 @@
|
|||
<div class='footer quiet pad2 space-top1 center small'>
|
||||
Code coverage generated by
|
||||
<a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
|
||||
at 2023-08-05T08:17:41.788Z
|
||||
at 2023-08-05T08:56:55.975Z
|
||||
</div>
|
||||
<script src="../../prettify.js"></script>
|
||||
<script>
|
||||
|
|
|
@ -169,7 +169,7 @@ export const mappingIgnore: MappingConfigType = {
|
|||
<div class='footer quiet pad2 space-top1 center small'>
|
||||
Code coverage generated by
|
||||
<a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
|
||||
at 2023-08-05T08:17:41.788Z
|
||||
at 2023-08-05T08:56:55.975Z
|
||||
</div>
|
||||
<script src="../../prettify.js"></script>
|
||||
<script>
|
||||
|
|
|
@ -23,30 +23,30 @@
|
|||
<div class='clearfix'>
|
||||
|
||||
<div class='fl pad1y space-right2'>
|
||||
<span class="strong">46.41% </span>
|
||||
<span class="strong">51.47% </span>
|
||||
<span class="quiet">Statements</span>
|
||||
<span class='fraction'>110/237</span>
|
||||
<span class='fraction'>157/305</span>
|
||||
</div>
|
||||
|
||||
|
||||
<div class='fl pad1y space-right2'>
|
||||
<span class="strong">66.66% </span>
|
||||
<span class="strong">58.33% </span>
|
||||
<span class="quiet">Branches</span>
|
||||
<span class='fraction'>4/6</span>
|
||||
<span class='fraction'>7/12</span>
|
||||
</div>
|
||||
|
||||
|
||||
<div class='fl pad1y space-right2'>
|
||||
<span class="strong">44.44% </span>
|
||||
<span class="strong">46.15% </span>
|
||||
<span class="quiet">Functions</span>
|
||||
<span class='fraction'>4/9</span>
|
||||
<span class='fraction'>6/13</span>
|
||||
</div>
|
||||
|
||||
|
||||
<div class='fl pad1y space-right2'>
|
||||
<span class="strong">46.41% </span>
|
||||
<span class="strong">51.47% </span>
|
||||
<span class="quiet">Lines</span>
|
||||
<span class='fraction'>110/237</span>
|
||||
<span class='fraction'>157/305</span>
|
||||
</div>
|
||||
|
||||
|
||||
|
@ -61,7 +61,7 @@
|
|||
</div>
|
||||
</template>
|
||||
</div>
|
||||
<div class='status-line low'></div>
|
||||
<div class='status-line medium'></div>
|
||||
<div class="pad1">
|
||||
<table class="coverage-summary">
|
||||
<thead>
|
||||
|
@ -95,17 +95,17 @@
|
|||
|
||||
<tr>
|
||||
<td class="file low" data-value="mappings"><a href="mappings/index.html">mappings</a></td>
|
||||
<td data-value="37.43" class="pic low">
|
||||
<div class="chart"><div class="cover-fill" style="width: 37%"></div><div class="cover-empty" style="width: 63%"></div></div>
|
||||
<td data-value="45.38" class="pic low">
|
||||
<div class="chart"><div class="cover-fill" style="width: 45%"></div><div class="cover-empty" style="width: 55%"></div></div>
|
||||
</td>
|
||||
<td data-value="37.43" class="pct low">37.43%</td>
|
||||
<td data-value="203" class="abs low">76/203</td>
|
||||
<td data-value="66.66" class="pct medium">66.66%</td>
|
||||
<td data-value="6" class="abs medium">4/6</td>
|
||||
<td data-value="44.44" class="pct low">44.44%</td>
|
||||
<td data-value="9" class="abs low">4/9</td>
|
||||
<td data-value="37.43" class="pct low">37.43%</td>
|
||||
<td data-value="203" class="abs low">76/203</td>
|
||||
<td data-value="45.38" class="pct low">45.38%</td>
|
||||
<td data-value="271" class="abs low">123/271</td>
|
||||
<td data-value="58.33" class="pct medium">58.33%</td>
|
||||
<td data-value="12" class="abs medium">7/12</td>
|
||||
<td data-value="46.15" class="pct low">46.15%</td>
|
||||
<td data-value="13" class="abs low">6/13</td>
|
||||
<td data-value="45.38" class="pct low">45.38%</td>
|
||||
<td data-value="271" class="abs low">123/271</td>
|
||||
</tr>
|
||||
|
||||
</tbody>
|
||||
|
@ -116,7 +116,7 @@
|
|||
<div class='footer quiet pad2 space-top1 center small'>
|
||||
Code coverage generated by
|
||||
<a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
|
||||
at 2023-08-05T08:17:41.788Z
|
||||
at 2023-08-05T08:56:55.975Z
|
||||
</div>
|
||||
<script src="prettify.js"></script>
|
||||
<script>
|
||||
|
|
|
@ -676,7 +676,7 @@ export default class {
|
|||
<div class='footer quiet pad2 space-top1 center small'>
|
||||
Code coverage generated by
|
||||
<a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
|
||||
at 2023-08-05T08:17:41.788Z
|
||||
at 2023-08-05T08:56:55.975Z
|
||||
</div>
|
||||
<script src="../prettify.js"></script>
|
||||
<script>
|
||||
|
|
|
@ -23,30 +23,30 @@
|
|||
<div class='clearfix'>
|
||||
|
||||
<div class='fl pad1y space-right2'>
|
||||
<span class="strong">37.43% </span>
|
||||
<span class="strong">45.38% </span>
|
||||
<span class="quiet">Statements</span>
|
||||
<span class='fraction'>76/203</span>
|
||||
<span class='fraction'>123/271</span>
|
||||
</div>
|
||||
|
||||
|
||||
<div class='fl pad1y space-right2'>
|
||||
<span class="strong">66.66% </span>
|
||||
<span class="strong">58.33% </span>
|
||||
<span class="quiet">Branches</span>
|
||||
<span class='fraction'>4/6</span>
|
||||
<span class='fraction'>7/12</span>
|
||||
</div>
|
||||
|
||||
|
||||
<div class='fl pad1y space-right2'>
|
||||
<span class="strong">44.44% </span>
|
||||
<span class="strong">46.15% </span>
|
||||
<span class="quiet">Functions</span>
|
||||
<span class='fraction'>4/9</span>
|
||||
<span class='fraction'>6/13</span>
|
||||
</div>
|
||||
|
||||
|
||||
<div class='fl pad1y space-right2'>
|
||||
<span class="strong">37.43% </span>
|
||||
<span class="strong">45.38% </span>
|
||||
<span class="quiet">Lines</span>
|
||||
<span class='fraction'>76/203</span>
|
||||
<span class='fraction'>123/271</span>
|
||||
</div>
|
||||
|
||||
|
||||
|
@ -93,6 +93,21 @@
|
|||
<td data-value="203" class="abs low">76/203</td>
|
||||
</tr>
|
||||
|
||||
<tr>
|
||||
<td class="file medium" data-value="utils.js"><a href="utils.js.html">utils.js</a></td>
|
||||
<td data-value="69.11" class="pic medium">
|
||||
<div class="chart"><div class="cover-fill" style="width: 69%"></div><div class="cover-empty" style="width: 31%"></div></div>
|
||||
</td>
|
||||
<td data-value="69.11" class="pct medium">69.11%</td>
|
||||
<td data-value="68" class="abs medium">47/68</td>
|
||||
<td data-value="50" class="pct medium">50%</td>
|
||||
<td data-value="6" class="abs medium">3/6</td>
|
||||
<td data-value="50" class="pct medium">50%</td>
|
||||
<td data-value="4" class="abs medium">2/4</td>
|
||||
<td data-value="69.11" class="pct medium">69.11%</td>
|
||||
<td data-value="68" class="abs medium">47/68</td>
|
||||
</tr>
|
||||
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
|
@ -101,7 +116,7 @@
|
|||
<div class='footer quiet pad2 space-top1 center small'>
|
||||
Code coverage generated by
|
||||
<a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
|
||||
at 2023-08-05T08:17:41.788Z
|
||||
at 2023-08-05T08:56:55.975Z
|
||||
</div>
|
||||
<script src="../prettify.js"></script>
|
||||
<script>
|
||||
|
|
|
@ -0,0 +1,289 @@
|
|||
|
||||
<!doctype html>
|
||||
<html lang="en">
|
||||
|
||||
<head>
|
||||
<title>Code coverage report for mappings/utils.js</title>
|
||||
<meta charset="utf-8" />
|
||||
<link rel="stylesheet" href="../prettify.css" />
|
||||
<link rel="stylesheet" href="../base.css" />
|
||||
<link rel="shortcut icon" type="image/x-icon" href="../favicon.png" />
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1" />
|
||||
<style type='text/css'>
|
||||
.coverage-summary .sorter {
|
||||
background-image: url(../sort-arrow-sprite.png);
|
||||
}
|
||||
</style>
|
||||
</head>
|
||||
|
||||
<body>
|
||||
<div class='wrapper'>
|
||||
<div class='pad1'>
|
||||
<h1><a href="../index.html">All files</a> / <a href="index.html">mappings</a> utils.js</h1>
|
||||
<div class='clearfix'>
|
||||
|
||||
<div class='fl pad1y space-right2'>
|
||||
<span class="strong">69.11% </span>
|
||||
<span class="quiet">Statements</span>
|
||||
<span class='fraction'>47/68</span>
|
||||
</div>
|
||||
|
||||
|
||||
<div class='fl pad1y space-right2'>
|
||||
<span class="strong">50% </span>
|
||||
<span class="quiet">Branches</span>
|
||||
<span class='fraction'>3/6</span>
|
||||
</div>
|
||||
|
||||
|
||||
<div class='fl pad1y space-right2'>
|
||||
<span class="strong">50% </span>
|
||||
<span class="quiet">Functions</span>
|
||||
<span class='fraction'>2/4</span>
|
||||
</div>
|
||||
|
||||
|
||||
<div class='fl pad1y space-right2'>
|
||||
<span class="strong">69.11% </span>
|
||||
<span class="quiet">Lines</span>
|
||||
<span class='fraction'>47/68</span>
|
||||
</div>
|
||||
|
||||
|
||||
</div>
|
||||
<p class="quiet">
|
||||
Press <em>n</em> or <em>j</em> to go to the next uncovered block, <em>b</em>, <em>p</em> or <em>k</em> for the previous block.
|
||||
</p>
|
||||
<template id="filterTemplate">
|
||||
<div class="quiet">
|
||||
Filter:
|
||||
<input oninput="onInput()" type="search" id="fileSearch">
|
||||
</div>
|
||||
</template>
|
||||
</div>
|
||||
<div class='status-line medium'></div>
|
||||
<pre><table class="coverage">
|
||||
<tr><td class="line-count quiet"><a name='L1'></a><a href='#L1'>1</a>
|
||||
<a name='L2'></a><a href='#L2'>2</a>
|
||||
<a name='L3'></a><a href='#L3'>3</a>
|
||||
<a name='L4'></a><a href='#L4'>4</a>
|
||||
<a name='L5'></a><a href='#L5'>5</a>
|
||||
<a name='L6'></a><a href='#L6'>6</a>
|
||||
<a name='L7'></a><a href='#L7'>7</a>
|
||||
<a name='L8'></a><a href='#L8'>8</a>
|
||||
<a name='L9'></a><a href='#L9'>9</a>
|
||||
<a name='L10'></a><a href='#L10'>10</a>
|
||||
<a name='L11'></a><a href='#L11'>11</a>
|
||||
<a name='L12'></a><a href='#L12'>12</a>
|
||||
<a name='L13'></a><a href='#L13'>13</a>
|
||||
<a name='L14'></a><a href='#L14'>14</a>
|
||||
<a name='L15'></a><a href='#L15'>15</a>
|
||||
<a name='L16'></a><a href='#L16'>16</a>
|
||||
<a name='L17'></a><a href='#L17'>17</a>
|
||||
<a name='L18'></a><a href='#L18'>18</a>
|
||||
<a name='L19'></a><a href='#L19'>19</a>
|
||||
<a name='L20'></a><a href='#L20'>20</a>
|
||||
<a name='L21'></a><a href='#L21'>21</a>
|
||||
<a name='L22'></a><a href='#L22'>22</a>
|
||||
<a name='L23'></a><a href='#L23'>23</a>
|
||||
<a name='L24'></a><a href='#L24'>24</a>
|
||||
<a name='L25'></a><a href='#L25'>25</a>
|
||||
<a name='L26'></a><a href='#L26'>26</a>
|
||||
<a name='L27'></a><a href='#L27'>27</a>
|
||||
<a name='L28'></a><a href='#L28'>28</a>
|
||||
<a name='L29'></a><a href='#L29'>29</a>
|
||||
<a name='L30'></a><a href='#L30'>30</a>
|
||||
<a name='L31'></a><a href='#L31'>31</a>
|
||||
<a name='L32'></a><a href='#L32'>32</a>
|
||||
<a name='L33'></a><a href='#L33'>33</a>
|
||||
<a name='L34'></a><a href='#L34'>34</a>
|
||||
<a name='L35'></a><a href='#L35'>35</a>
|
||||
<a name='L36'></a><a href='#L36'>36</a>
|
||||
<a name='L37'></a><a href='#L37'>37</a>
|
||||
<a name='L38'></a><a href='#L38'>38</a>
|
||||
<a name='L39'></a><a href='#L39'>39</a>
|
||||
<a name='L40'></a><a href='#L40'>40</a>
|
||||
<a name='L41'></a><a href='#L41'>41</a>
|
||||
<a name='L42'></a><a href='#L42'>42</a>
|
||||
<a name='L43'></a><a href='#L43'>43</a>
|
||||
<a name='L44'></a><a href='#L44'>44</a>
|
||||
<a name='L45'></a><a href='#L45'>45</a>
|
||||
<a name='L46'></a><a href='#L46'>46</a>
|
||||
<a name='L47'></a><a href='#L47'>47</a>
|
||||
<a name='L48'></a><a href='#L48'>48</a>
|
||||
<a name='L49'></a><a href='#L49'>49</a>
|
||||
<a name='L50'></a><a href='#L50'>50</a>
|
||||
<a name='L51'></a><a href='#L51'>51</a>
|
||||
<a name='L52'></a><a href='#L52'>52</a>
|
||||
<a name='L53'></a><a href='#L53'>53</a>
|
||||
<a name='L54'></a><a href='#L54'>54</a>
|
||||
<a name='L55'></a><a href='#L55'>55</a>
|
||||
<a name='L56'></a><a href='#L56'>56</a>
|
||||
<a name='L57'></a><a href='#L57'>57</a>
|
||||
<a name='L58'></a><a href='#L58'>58</a>
|
||||
<a name='L59'></a><a href='#L59'>59</a>
|
||||
<a name='L60'></a><a href='#L60'>60</a>
|
||||
<a name='L61'></a><a href='#L61'>61</a>
|
||||
<a name='L62'></a><a href='#L62'>62</a>
|
||||
<a name='L63'></a><a href='#L63'>63</a>
|
||||
<a name='L64'></a><a href='#L64'>64</a>
|
||||
<a name='L65'></a><a href='#L65'>65</a>
|
||||
<a name='L66'></a><a href='#L66'>66</a>
|
||||
<a name='L67'></a><a href='#L67'>67</a>
|
||||
<a name='L68'></a><a href='#L68'>68</a>
|
||||
<a name='L69'></a><a href='#L69'>69</a></td><td class="line-coverage quiet"><span class="cline-any cline-yes">1x</span>
|
||||
<span class="cline-any cline-yes">1x</span>
|
||||
<span class="cline-any cline-yes">3x</span>
|
||||
<span class="cline-any cline-no"> </span>
|
||||
<span class="cline-any cline-no"> </span>
|
||||
<span class="cline-any cline-no"> </span>
|
||||
<span class="cline-any cline-no"> </span>
|
||||
<span class="cline-any cline-no"> </span>
|
||||
<span class="cline-any cline-yes">3x</span>
|
||||
<span class="cline-any cline-yes">3x</span>
|
||||
<span class="cline-any cline-yes">1x</span>
|
||||
<span class="cline-any cline-yes">1x</span>
|
||||
<span class="cline-any cline-yes">1x</span>
|
||||
<span class="cline-any cline-yes">1x</span>
|
||||
<span class="cline-any cline-yes">1x</span>
|
||||
<span class="cline-any cline-yes">1x</span>
|
||||
<span class="cline-any cline-yes">1x</span>
|
||||
<span class="cline-any cline-yes">1x</span>
|
||||
<span class="cline-any cline-yes">1x</span>
|
||||
<span class="cline-any cline-yes">3x</span>
|
||||
<span class="cline-any cline-yes">3x</span>
|
||||
<span class="cline-any cline-yes">3x</span>
|
||||
<span class="cline-any cline-yes">8x</span>
|
||||
<span class="cline-any cline-yes">8x</span>
|
||||
<span class="cline-any cline-yes">3x</span>
|
||||
<span class="cline-any cline-no"> </span>
|
||||
<span class="cline-any cline-no"> </span>
|
||||
<span class="cline-any cline-yes">3x</span>
|
||||
<span class="cline-any cline-yes">3x</span>
|
||||
<span class="cline-any cline-yes">1x</span>
|
||||
<span class="cline-any cline-yes">1x</span>
|
||||
<span class="cline-any cline-yes">1x</span>
|
||||
<span class="cline-any cline-yes">1x</span>
|
||||
<span class="cline-any cline-yes">1x</span>
|
||||
<span class="cline-any cline-yes">1x</span>
|
||||
<span class="cline-any cline-yes">1x</span>
|
||||
<span class="cline-any cline-yes">1x</span>
|
||||
<span class="cline-any cline-yes">1x</span>
|
||||
<span class="cline-any cline-yes">1x</span>
|
||||
<span class="cline-any cline-yes">1x</span>
|
||||
<span class="cline-any cline-yes">1x</span>
|
||||
<span class="cline-any cline-yes">1x</span>
|
||||
<span class="cline-any cline-yes">1x</span>
|
||||
<span class="cline-any cline-yes">1x</span>
|
||||
<span class="cline-any cline-no"> </span>
|
||||
<span class="cline-any cline-no"> </span>
|
||||
<span class="cline-any cline-no"> </span>
|
||||
<span class="cline-any cline-yes">1x</span>
|
||||
<span class="cline-any cline-yes">1x</span>
|
||||
<span class="cline-any cline-yes">1x</span>
|
||||
<span class="cline-any cline-yes">1x</span>
|
||||
<span class="cline-any cline-yes">1x</span>
|
||||
<span class="cline-any cline-no"> </span>
|
||||
<span class="cline-any cline-no"> </span>
|
||||
<span class="cline-any cline-no"> </span>
|
||||
<span class="cline-any cline-no"> </span>
|
||||
<span class="cline-any cline-no"> </span>
|
||||
<span class="cline-any cline-no"> </span>
|
||||
<span class="cline-any cline-no"> </span>
|
||||
<span class="cline-any cline-no"> </span>
|
||||
<span class="cline-any cline-no"> </span>
|
||||
<span class="cline-any cline-no"> </span>
|
||||
<span class="cline-any cline-no"> </span>
|
||||
<span class="cline-any cline-yes">1x</span>
|
||||
<span class="cline-any cline-yes">1x</span>
|
||||
<span class="cline-any cline-yes">1x</span>
|
||||
<span class="cline-any cline-yes">1x</span>
|
||||
<span class="cline-any cline-yes">1x</span>
|
||||
<span class="cline-any cline-neutral"> </span></td><td class="text"><pre class="prettyprint lang-js">"use strict";
|
||||
var __spreadArray = (<span class="branch-0 cbranch-no" title="branch not covered" >this && this.__spreadArray)</span> || function (to, from, pack) {
|
||||
if (pack || arguments.length === 2) <span class="branch-0 cbranch-no" title="branch not covered" >for (var i = 0, l = from.length, ar; i < l; i++) {</span>
|
||||
<span class="cstat-no" title="statement not covered" > if (ar || !(i in from)) {</span>
|
||||
<span class="cstat-no" title="statement not covered" > if (!ar) ar = Array.prototype.slice.call(from, 0, i);</span>
|
||||
<span class="cstat-no" title="statement not covered" > ar[i] = from[i];</span>
|
||||
<span class="cstat-no" title="statement not covered" > }</span>
|
||||
<span class="cstat-no" title="statement not covered" > }</span>
|
||||
return to.concat(ar || Array.prototype.slice.call(from));
|
||||
};
|
||||
Object.defineProperty(exports, "__esModule", { value: true });
|
||||
var fs_1 = require("fs");
|
||||
var show_debug = 0;
|
||||
show_debug = 1;
|
||||
var output_folder = 'output';
|
||||
/**
|
||||
* wrapper de log qui se montre uniquemnt si show_debug a été activé
|
||||
* @param args
|
||||
*/
|
||||
function debugLog() {
|
||||
var args = [];
|
||||
for (var _i = 0; _i < arguments.length; _i++) {
|
||||
args[_i] = arguments[_i];
|
||||
}
|
||||
if (!show_debug) <span class="branch-0 cbranch-no" title="branch not covered" >{</span>
|
||||
<span class="cstat-no" title="statement not covered" > return;</span>
|
||||
<span class="cstat-no" title="statement not covered" > }</span>
|
||||
console.log.apply(console, __spreadArray(['debug: '], args, false));
|
||||
}
|
||||
var listOfBooleanKeys = [
|
||||
"prise_type_ef",
|
||||
"prise_type_2",
|
||||
"prise_type_combo_ccs",
|
||||
"prise_type_chademo",
|
||||
"gratuit",
|
||||
"paiement_acte",
|
||||
"paiement_cb",
|
||||
"cable_t2_attache"
|
||||
];
|
||||
/**
|
||||
*
|
||||
* @param pointKeyName
|
||||
* @returns {boolean}
|
||||
*/
|
||||
<span class="cstat-no" title="statement not covered" ><span class="fstat-no" title="function not covered" >function isBooleanKey(pointKeyName) {</span></span>
|
||||
<span class="cstat-no" title="statement not covered" > return listOfBooleanKeys.indexOf(pointKeyName) !== -1;</span>
|
||||
<span class="cstat-no" title="statement not covered" >}</span>
|
||||
/**
|
||||
* crée un fichier dans le dossier par défaut, output
|
||||
* @param fileName
|
||||
* @param fileContent
|
||||
*/
|
||||
<span class="cstat-no" title="statement not covered" ><span class="fstat-no" title="function not covered" >function writeFile(fileName, fileContent) {</span></span>
|
||||
<span class="cstat-no" title="statement not covered" > debugLog('write file ', fileName);</span>
|
||||
<span class="cstat-no" title="statement not covered" > return fs_1.default.writeFile("./".concat(output_folder, "/").concat(fileName), fileContent, 'utf8', function (err) {</span>
|
||||
<span class="cstat-no" title="statement not covered" > if (err) {</span>
|
||||
<span class="cstat-no" title="statement not covered" > debugLog("Error writing file: ".concat(err));</span>
|
||||
<span class="cstat-no" title="statement not covered" > }</span>
|
||||
<span class="cstat-no" title="statement not covered" > else {</span>
|
||||
<span class="cstat-no" title="statement not covered" > debugLog("File ".concat(fileName, " is written successfully!"));</span>
|
||||
<span class="cstat-no" title="statement not covered" > }</span>
|
||||
<span class="cstat-no" title="statement not covered" > });</span>
|
||||
<span class="cstat-no" title="statement not covered" >}</span>
|
||||
exports.default = {
|
||||
debugLog: debugLog,
|
||||
isBooleanKey: isBooleanKey,
|
||||
writeFile: writeFile
|
||||
};
|
||||
</pre></td></tr></table></pre>
|
||||
|
||||
<div class='push'></div><!-- for sticky footer -->
|
||||
</div><!-- /wrapper -->
|
||||
<div class='footer quiet pad2 space-top1 center small'>
|
||||
Code coverage generated by
|
||||
<a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
|
||||
at 2023-08-05T08:56:55.975Z
|
||||
</div>
|
||||
<script src="../prettify.js"></script>
|
||||
<script>
|
||||
window.onload = function () {
|
||||
prettyPrint();
|
||||
};
|
||||
</script>
|
||||
<script src="../sorter.js"></script>
|
||||
<script src="../block-navigation.js"></script>
|
||||
</body>
|
||||
</html>
|
||||
|
|
@ -277,3 +277,94 @@ BRDA:101,5,0,0
|
|||
BRF:6
|
||||
BRH:4
|
||||
end_of_record
|
||||
TN:
|
||||
SF:mappings/utils.js
|
||||
FN:2,Object.<anonymous>.__spreadArray
|
||||
FN:20,debugLog
|
||||
FN:45,isBooleanKey
|
||||
FN:53,writeFile
|
||||
FNF:4
|
||||
FNH:2
|
||||
FNDA:3,Object.<anonymous>.__spreadArray
|
||||
FNDA:3,debugLog
|
||||
FNDA:0,isBooleanKey
|
||||
FNDA:0,writeFile
|
||||
DA:1,1
|
||||
DA:2,1
|
||||
DA:3,3
|
||||
DA:4,0
|
||||
DA:5,0
|
||||
DA:6,0
|
||||
DA:7,0
|
||||
DA:8,0
|
||||
DA:9,3
|
||||
DA:10,3
|
||||
DA:11,1
|
||||
DA:12,1
|
||||
DA:13,1
|
||||
DA:14,1
|
||||
DA:15,1
|
||||
DA:16,1
|
||||
DA:17,1
|
||||
DA:18,1
|
||||
DA:19,1
|
||||
DA:20,3
|
||||
DA:21,3
|
||||
DA:22,3
|
||||
DA:23,8
|
||||
DA:24,8
|
||||
DA:25,3
|
||||
DA:26,0
|
||||
DA:27,0
|
||||
DA:28,3
|
||||
DA:29,3
|
||||
DA:30,1
|
||||
DA:31,1
|
||||
DA:32,1
|
||||
DA:33,1
|
||||
DA:34,1
|
||||
DA:35,1
|
||||
DA:36,1
|
||||
DA:37,1
|
||||
DA:38,1
|
||||
DA:39,1
|
||||
DA:40,1
|
||||
DA:41,1
|
||||
DA:42,1
|
||||
DA:43,1
|
||||
DA:44,1
|
||||
DA:45,0
|
||||
DA:46,0
|
||||
DA:47,0
|
||||
DA:48,1
|
||||
DA:49,1
|
||||
DA:50,1
|
||||
DA:51,1
|
||||
DA:52,1
|
||||
DA:53,0
|
||||
DA:54,0
|
||||
DA:55,0
|
||||
DA:56,0
|
||||
DA:57,0
|
||||
DA:58,0
|
||||
DA:59,0
|
||||
DA:60,0
|
||||
DA:61,0
|
||||
DA:62,0
|
||||
DA:63,0
|
||||
DA:64,1
|
||||
DA:65,1
|
||||
DA:66,1
|
||||
DA:67,1
|
||||
DA:68,1
|
||||
LF:68
|
||||
LH:47
|
||||
BRDA:2,0,0,0
|
||||
BRDA:2,1,0,3
|
||||
BRDA:3,2,0,0
|
||||
BRDA:20,3,0,3
|
||||
BRDA:22,4,0,8
|
||||
BRDA:25,5,0,0
|
||||
BRF:6
|
||||
BRH:3
|
||||
end_of_record
|
||||
|
|
|
@ -0,0 +1,96 @@
|
|||
"use strict";
|
||||
Object.defineProperty(exports, "__esModule", { value: true });
|
||||
var MappingIRVE = {
|
||||
config_name: "IRVE config",
|
||||
config_author: "tykayn <contact@cipherbliss.com>",
|
||||
default_properties_of_point: {
|
||||
'amenity': 'charging_station'
|
||||
},
|
||||
tags: {
|
||||
// ******* nombres
|
||||
nbre_pdc: 'capacity',
|
||||
// ******* textes
|
||||
amenity: 'amenity',
|
||||
capacity: 'capacity',
|
||||
nom_amenageur: 'operator',
|
||||
siren_amenageur: 'owner:ref:FR:SIREN',
|
||||
nom_operateur: 'operator',
|
||||
telephone_operateur: 'phone',
|
||||
contact_operateur: 'email',
|
||||
id_station_itinerance: 'ref:EU:EVSE',
|
||||
id_station_local: 'ref',
|
||||
gratuit: 'fee',
|
||||
paiement_acte: 'authentication:none',
|
||||
reservation: 'reservation',
|
||||
observations: 'note',
|
||||
nom_station: 'name',
|
||||
nom_enseigne: 'network',
|
||||
// ******* dates
|
||||
date_mise_en_service: 'start_date',
|
||||
date_maj: 'source:date',
|
||||
// TODO gestion des types dont on doit convertir la valeur
|
||||
// ******** champs booléens
|
||||
cable_t2_attache: {
|
||||
key_converted: 'socket:type2_cable',
|
||||
// cable_t2_attache
|
||||
truthy_value: '1'
|
||||
},
|
||||
prise_type_ef: 'socket:typee',
|
||||
prise_type_2: 'socket:type2',
|
||||
prise_type_combo_ccs: 'socket:type2_combo',
|
||||
prise_type_chademo: 'socket:chademo',
|
||||
// ******** champs plus complexes
|
||||
horaires: 'opening_hours',
|
||||
// accessibilite_pmr: 'wheelchair',
|
||||
// paiement_cb: 'payment:credit_cards',
|
||||
accessibilite_pmr: {
|
||||
key_converted: "wheelchair",
|
||||
conditional_values: {
|
||||
"Accessibilité inconnue": {
|
||||
// value_converted: "",
|
||||
ignore_this_data: true, // ne pas ajouter de tag si la valeur est égale à Accessibilité inconnue.
|
||||
// transform_function : (original_value) => original_value.toLowerCase(),
|
||||
},
|
||||
"Accessible mais non réservé PMR": {
|
||||
value_converted: "yes"
|
||||
},
|
||||
"Réservé PMR": {
|
||||
value_converted: "yes"
|
||||
},
|
||||
"Non accessible": {
|
||||
value_converted: "no"
|
||||
},
|
||||
// "Mo-Fr 08:30-12:00,Mo-Fr 14:00-19:00,Sat 09:00-18:30": {
|
||||
// value_converted: "Mo-Fr 08:30-12:00,Mo-Fr 14:00-19:00,Sat 09:00-18:30"
|
||||
// },
|
||||
// "24/7": {
|
||||
// value_converted: ""
|
||||
// }
|
||||
// choix:
|
||||
// Sa:09:00-19:00
|
||||
// 24/7
|
||||
// Mo-Fr 08:00-12:00,Mo-Fr 14:00-19:00,Sat 09:00-18:00
|
||||
// Mo-Fr 08:00-19:00,Sat 09:00-18:00
|
||||
// Sa:08:00-19:00
|
||||
// 24/7
|
||||
// Mo-Fr 08:30-12:00,Mo-Fr 14:00-19:00,Sat 09:00-18:30
|
||||
// Mo-Fr 09:00-16:00
|
||||
// Mo-Fr 08:00-12:00,Mo-Fr 14:00-18:00,Th 08:00-18:00
|
||||
}
|
||||
},
|
||||
station_deux_roues: {
|
||||
key_converted: null,
|
||||
conditional_values: {
|
||||
// ajout de trois tags si la valeur est yes
|
||||
"yes": {
|
||||
tags_to_add: [
|
||||
{ bicycle: "yes" },
|
||||
{ scooter: "yes" },
|
||||
{ motorcar: "no" },
|
||||
]
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
};
|
||||
exports.default = MappingIRVE;
|
|
@ -3,7 +3,7 @@
|
|||
* détail dans le tableau
|
||||
* https://wiki.openstreetmap.org/wiki/France/data.gouv.fr/Bornes_de_Recharge_pour_V%C3%A9hicules_%C3%89lectriques
|
||||
*/
|
||||
import MappingConfigType, {FeaturePropertyMappingConfigType} from "../mapping-config.type";
|
||||
import MappingConfigType from "../mapping-config.type";
|
||||
|
||||
const MappingIRVE: MappingConfigType = {
|
||||
config_name: "IRVE config",
|
||||
|
@ -11,7 +11,7 @@ const MappingIRVE: MappingConfigType = {
|
|||
default_properties_of_point: {
|
||||
'amenity': 'charging_station'
|
||||
},
|
||||
tags : {
|
||||
tags: {
|
||||
|
||||
// ******* nombres
|
||||
nbre_pdc: 'capacity',
|
||||
|
|
|
@ -0,0 +1,38 @@
|
|||
"use strict";
|
||||
/**
|
||||
* plan de conversion des clés du jeu de données vers les tags OSM
|
||||
* détail dans le tableau
|
||||
* https://wiki.openstreetmap.org/wiki/France/data.gouv.fr/Bornes_de_Recharge_pour_V%C3%A9hicules_%C3%89lectriques
|
||||
*/
|
||||
Object.defineProperty(exports, "__esModule", { value: true });
|
||||
var mappingIRVE = {
|
||||
// ******* nombres
|
||||
nbre_pdc: 'capacity',
|
||||
amenity: 'amenity',
|
||||
capacity: 'capacity',
|
||||
nom_amenageur: 'operator',
|
||||
siren_amenageur: 'owner:ref:FR:SIREN',
|
||||
nom_operateur: 'operator',
|
||||
telephone_operateur: 'phone',
|
||||
// ici, on souhaite convertir la clé contact_operateur=bidule en email=bidule
|
||||
contact_operateur: 'email',
|
||||
id_station_itinerance: 'ref:EU:EVSE',
|
||||
id_station_local: 'ref',
|
||||
gratuit: 'fee',
|
||||
paiement_acte: 'authentication:none',
|
||||
reservation: 'reservation',
|
||||
observations: 'note',
|
||||
nom_station: 'name',
|
||||
nom_enseigne: 'network',
|
||||
// ******* dates
|
||||
date_mise_en_service: 'start_date',
|
||||
date_maj: 'source:date',
|
||||
// ******** champs booléens
|
||||
prise_type_ef: 'socket:typee',
|
||||
prise_type_2: 'socket:type2',
|
||||
prise_type_combo_ccs: 'socket:type2_combo',
|
||||
prise_type_chademo: 'socket:chademo',
|
||||
// ******** champs plus complexes
|
||||
horaires: 'opening_hours', // déjà au bon format
|
||||
};
|
||||
exports.default = mappingIRVE;
|
|
@ -0,0 +1,183 @@
|
|||
"use strict";
|
||||
var __assign = (this && this.__assign) || function () {
|
||||
__assign = Object.assign || function(t) {
|
||||
for (var s, i = 1, n = arguments.length; i < n; i++) {
|
||||
s = arguments[i];
|
||||
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
|
||||
t[p] = s[p];
|
||||
}
|
||||
return t;
|
||||
};
|
||||
return __assign.apply(this, arguments);
|
||||
};
|
||||
Object.defineProperty(exports, "__esModule", { value: true });
|
||||
var utils_1 = require("./utils");
|
||||
var debugLog = utils_1.default.debugLog;
|
||||
var listOfBooleanKeys = [
|
||||
"prise_type_ef",
|
||||
"prise_type_2",
|
||||
"prise_type_combo_ccs",
|
||||
"prise_type_chademo",
|
||||
"gratuit",
|
||||
"paiement_acte",
|
||||
"paiement_cb",
|
||||
"cable_t2_attache"
|
||||
];
|
||||
var default_1 = /** @class */ (function () {
|
||||
function default_1(mappingConfig) {
|
||||
this.mapping_config = {};
|
||||
this.truthyValues = ['true', 'True', 'TRUE', '1', 1];
|
||||
this.falsyValues = ['false', 'False', 'FALSE', '0', 0];
|
||||
this.setConfig(mappingConfig);
|
||||
}
|
||||
default_1.prototype.setConfig = function (mappingConfig) {
|
||||
this.mapping_config = mappingConfig;
|
||||
};
|
||||
default_1.prototype.mapFeaturePoint = function (featurePointGeoJson) {
|
||||
var geoJSONConvertedPoint = {};
|
||||
geoJSONConvertedPoint.properties = __assign({}, this.mapping_config.default_properties_of_point);
|
||||
geoJSONConvertedPoint.type = featurePointGeoJson.type;
|
||||
geoJSONConvertedPoint.geometry = featurePointGeoJson.geometry;
|
||||
var props = featurePointGeoJson.properties;
|
||||
props.forEach(function (key, value) {
|
||||
});
|
||||
return geoJSONConvertedPoint;
|
||||
};
|
||||
/**
|
||||
* TODO convert to mapping config property to transform_truthy
|
||||
* @param pointKeyName
|
||||
* @returns {boolean}
|
||||
*/
|
||||
default_1.prototype.isBooleanKey = function (pointKeyName) {
|
||||
return listOfBooleanKeys.indexOf(pointKeyName) !== -1;
|
||||
};
|
||||
/**
|
||||
* reduce number of features
|
||||
* @param offsetCount
|
||||
* @param listOfFeatures
|
||||
*/
|
||||
default_1.prototype.filterFeaturesByOffset = function (offsetCount, listOfFeatures) {
|
||||
var filteredList = listOfFeatures;
|
||||
// TODO
|
||||
return filteredList;
|
||||
};
|
||||
// filterFeaturesByPropertyRegex(bboxConfig, listOfFeatures) {
|
||||
// console.log('bboxConfig', bboxConfig)
|
||||
// let filteredList = listOfFeatures
|
||||
// // TODO
|
||||
// return filteredList
|
||||
// }
|
||||
default_1.prototype.filterFeaturesByPropertyRegex = function (propertyName, criteriaRegex, listOfFeatures) {
|
||||
var filteredList = listOfFeatures.filter(function (feature) {
|
||||
return criteriaRegex.test(feature === null || feature === void 0 ? void 0 : feature.properties[propertyName]);
|
||||
});
|
||||
return filteredList;
|
||||
};
|
||||
/**
|
||||
* retuns the converted element from mapping config if present, null otherwise
|
||||
*/
|
||||
default_1.prototype.mapElementFromConf = function (featurePoint) {
|
||||
var _this = this;
|
||||
if (!this.mapping_config) {
|
||||
throw new Error('no config was loaded in the mapping engine. use setConfig(my_mapping_config) on this instance of mapping engine before using this.');
|
||||
}
|
||||
console.log('mapping_config tags', this.mapping_config.tags);
|
||||
debugLog('config_name', this.mapping_config.config_name);
|
||||
var mappingKeys = Object.keys(this.mapping_config.tags);
|
||||
// let mappingKeys = (this.mapping_config.tags)
|
||||
var featurePointPropertiesKeys = Object.keys(featurePoint.properties);
|
||||
debugLog('============= keys mappingKeys:', this.mapping_config.tags.length, mappingKeys.length);
|
||||
debugLog('============= keys featurePointPropertiesKeys :', featurePoint.properties.length, featurePointPropertiesKeys.length);
|
||||
var newProperties = Object.create(this.mapping_config.default_properties_of_point);
|
||||
return;
|
||||
// reinit properties of current point
|
||||
var basePoint = Object.create(featurePoint);
|
||||
basePoint.type = featurePoint.type;
|
||||
basePoint.geometry = featurePoint.geometry;
|
||||
// apply new properties if found in mapping config
|
||||
featurePointPropertiesKeys.forEach(function (pointKeyName) {
|
||||
_this.convertProperty(pointKeyName, mappingKeys, featurePoint, newProperties);
|
||||
});
|
||||
basePoint.properties = newProperties;
|
||||
debugLog('basePoint', basePoint);
|
||||
return basePoint;
|
||||
};
|
||||
default_1.prototype.convertProperty = function (pointKeyName, mappingKeys, featurePoint, newProperties) {
|
||||
console.log('pointKeyName', pointKeyName);
|
||||
if (!mappingKeys.indexOf(pointKeyName) !== -1) {
|
||||
debugLog('found element', pointKeyName, '=>', this.mapping_config[pointKeyName], 'value : ', featurePoint.properties[pointKeyName]);
|
||||
var convertedValue = '';
|
||||
var valueConvertedFromMapping = featurePoint.properties[pointKeyName];
|
||||
var typeofValue = typeof valueConvertedFromMapping;
|
||||
var isStringValue = typeofValue === 'string';
|
||||
debugLog('- pointKeyName', pointKeyName);
|
||||
debugLog('- valueConvertedFromMapping', valueConvertedFromMapping);
|
||||
// debugLog('typeof featurePoint.properties[pointKeyName] === \'string\'', typeofValue)
|
||||
var isConfigMappingObject = typeofValue === 'string';
|
||||
if (isStringValue) {
|
||||
debugLog('-- string value');
|
||||
if (this.isBooleanKey(pointKeyName)) {
|
||||
var lowerValue = (valueConvertedFromMapping + '').toLowerCase();
|
||||
debugLog('isBooleanKey: lowerValue', lowerValue);
|
||||
convertedValue = this.truthyValues.indexOf(lowerValue) ? 'yes' : 'no';
|
||||
}
|
||||
else {
|
||||
convertedValue = valueConvertedFromMapping;
|
||||
}
|
||||
debugLog('-- convertedValue', convertedValue);
|
||||
if (convertedValue) {
|
||||
newProperties[this.mapping_config[pointKeyName]] = convertedValue;
|
||||
}
|
||||
}
|
||||
else if (isConfigMappingObject) {
|
||||
var newKey = '';
|
||||
var configObject = valueConvertedFromMapping;
|
||||
if (configObject.key_converted) {
|
||||
newKey = configObject.key_converted;
|
||||
}
|
||||
/**
|
||||
* gestion des valeurs conditionnelles
|
||||
* nous pouvons renseigner une string ou un objet décrivant les transformations à réaliser
|
||||
*/
|
||||
if (configObject.conditional_values) {
|
||||
var keysConditionnalValues = Object.keys(configObject.conditional_values);
|
||||
var isFoundValue = keysConditionnalValues.indexOf(valueConvertedFromMapping);
|
||||
if (isFoundValue !== -1) {
|
||||
var conditionnalConfig = keysConditionnalValues[isFoundValue];
|
||||
if (conditionnalConfig.tags_to_add) {
|
||||
// on peut définir un ensemble de tags à rajouter
|
||||
newProperties.push.apply(newProperties, conditionnalConfig.tags_to_add);
|
||||
}
|
||||
if (conditionnalConfig.truthy_value) {
|
||||
// convertir la valeur, si elle est truthy, la transformer en ce que donne la propriété truthy_value
|
||||
// exemple: le jeu de données dit que la colonne cable_t2_attache vaut "True", mais on veut le convertir en "1".
|
||||
// on met donc truthy_value: '1'
|
||||
if (this.truthyValues.indexOf(valueConvertedFromMapping) !== -1) {
|
||||
convertedValue = conditionnalConfig.truthy_value;
|
||||
}
|
||||
}
|
||||
if (conditionnalConfig.falsy_value) {
|
||||
if (this.falsyValues.indexOf(valueConvertedFromMapping) !== -1) {
|
||||
convertedValue = conditionnalConfig.falsy_value;
|
||||
}
|
||||
}
|
||||
if (conditionnalConfig.transform_function) {
|
||||
// une transformation de la valeur
|
||||
// apply transformation to value
|
||||
convertedValue = conditionnalConfig.transform_function(valueConvertedFromMapping);
|
||||
}
|
||||
// use the value converted
|
||||
else if (conditionnalConfig.value_converted) {
|
||||
convertedValue = conditionnalConfig.value_converted;
|
||||
}
|
||||
}
|
||||
}
|
||||
if (newKey && !configObject.ignore_this_data) {
|
||||
newProperties[newKey] = convertedValue;
|
||||
}
|
||||
}
|
||||
}
|
||||
};
|
||||
return default_1;
|
||||
}());
|
||||
exports.default = default_1;
|
|
@ -0,0 +1,2 @@
|
|||
"use strict";
|
||||
Object.defineProperty(exports, "__esModule", { value: true });
|
|
@ -0,0 +1,68 @@
|
|||
"use strict";
|
||||
var __spreadArray = (this && this.__spreadArray) || function (to, from, pack) {
|
||||
if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {
|
||||
if (ar || !(i in from)) {
|
||||
if (!ar) ar = Array.prototype.slice.call(from, 0, i);
|
||||
ar[i] = from[i];
|
||||
}
|
||||
}
|
||||
return to.concat(ar || Array.prototype.slice.call(from));
|
||||
};
|
||||
Object.defineProperty(exports, "__esModule", { value: true });
|
||||
var fs_1 = require("fs");
|
||||
var show_debug = 0;
|
||||
show_debug = 1;
|
||||
var output_folder = 'output';
|
||||
/**
|
||||
* wrapper de log qui se montre uniquemnt si show_debug a été activé
|
||||
* @param args
|
||||
*/
|
||||
function debugLog() {
|
||||
var args = [];
|
||||
for (var _i = 0; _i < arguments.length; _i++) {
|
||||
args[_i] = arguments[_i];
|
||||
}
|
||||
if (!show_debug) {
|
||||
return;
|
||||
}
|
||||
console.log.apply(console, __spreadArray(['debug: '], args, false));
|
||||
}
|
||||
var listOfBooleanKeys = [
|
||||
"prise_type_ef",
|
||||
"prise_type_2",
|
||||
"prise_type_combo_ccs",
|
||||
"prise_type_chademo",
|
||||
"gratuit",
|
||||
"paiement_acte",
|
||||
"paiement_cb",
|
||||
"cable_t2_attache"
|
||||
];
|
||||
/**
|
||||
*
|
||||
* @param pointKeyName
|
||||
* @returns {boolean}
|
||||
*/
|
||||
function isBooleanKey(pointKeyName) {
|
||||
return listOfBooleanKeys.indexOf(pointKeyName) !== -1;
|
||||
}
|
||||
/**
|
||||
* crée un fichier dans le dossier par défaut, output
|
||||
* @param fileName
|
||||
* @param fileContent
|
||||
*/
|
||||
function writeFile(fileName, fileContent) {
|
||||
debugLog('write file ', fileName);
|
||||
return fs_1.default.writeFile("./".concat(output_folder, "/").concat(fileName), fileContent, 'utf8', function (err) {
|
||||
if (err) {
|
||||
debugLog("Error writing file: ".concat(err));
|
||||
}
|
||||
else {
|
||||
debugLog("File ".concat(fileName, " is written successfully!"));
|
||||
}
|
||||
});
|
||||
}
|
||||
exports.default = {
|
||||
debugLog: debugLog,
|
||||
isBooleanKey: isBooleanKey,
|
||||
writeFile: writeFile
|
||||
};
|
|
@ -1,4 +1,4 @@
|
|||
import fs from 'node:fs'
|
||||
import fs from 'fs'
|
||||
|
||||
let show_debug = 0
|
||||
show_debug = 1
|
||||
|
|
|
@ -11,6 +11,7 @@
|
|||
},
|
||||
"scripts": {
|
||||
"start": "ts-node convert_to_osm_tags.ts --engine",
|
||||
"simple": "ts-node convert_to_osm_tags.ts",
|
||||
"filter": "node convert_to_osm_tags.ts --department=76 --engine=true",
|
||||
"test": "jest --coverage --watch"
|
||||
},
|
||||
|
@ -24,7 +25,7 @@
|
|||
"@babel/preset-typescript": "^7.22.5",
|
||||
"@jest/globals": "^29.6.2",
|
||||
"@types/minimist": "^1.2.2",
|
||||
"@types/node": "^20.4.5",
|
||||
"@types/node": "^20.4.7",
|
||||
"babel-jest": "^29.6.2",
|
||||
"jest": "^29.6.2",
|
||||
"loglevel": "^1.8.1",
|
||||
|
|
|
@ -29,14 +29,14 @@ devDependencies:
|
|||
specifier: ^1.2.2
|
||||
version: 1.2.2
|
||||
'@types/node':
|
||||
specifier: ^20.4.5
|
||||
version: 20.4.5
|
||||
specifier: ^20.4.7
|
||||
version: 20.4.7
|
||||
babel-jest:
|
||||
specifier: ^29.6.2
|
||||
version: 29.6.2(@babel/core@7.22.9)
|
||||
jest:
|
||||
specifier: ^29.6.2
|
||||
version: 29.6.2(@types/node@20.4.5)(ts-node@10.9.1)
|
||||
version: 29.6.2(@types/node@20.4.7)(ts-node@10.9.1)
|
||||
loglevel:
|
||||
specifier: ^1.8.1
|
||||
version: 1.8.1
|
||||
|
@ -48,7 +48,7 @@ devDependencies:
|
|||
version: 29.1.1(@babel/core@7.22.9)(babel-jest@29.6.2)(jest@29.6.2)(typescript@5.1.6)
|
||||
ts-node:
|
||||
specifier: ^10.9.1
|
||||
version: 10.9.1(@types/node@20.4.5)(typescript@5.1.6)
|
||||
version: 10.9.1(@types/node@20.4.7)(typescript@5.1.6)
|
||||
tslib:
|
||||
specifier: ^2.6.1
|
||||
version: 2.6.1
|
||||
|
@ -179,7 +179,7 @@ packages:
|
|||
'@babel/helper-plugin-utils': 7.22.5
|
||||
debug: 4.3.4
|
||||
lodash.debounce: 4.0.8
|
||||
resolve: 1.22.2
|
||||
resolve: 1.22.4
|
||||
transitivePeerDependencies:
|
||||
- supports-color
|
||||
dev: true
|
||||
|
@ -1323,7 +1323,7 @@ packages:
|
|||
engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0}
|
||||
dependencies:
|
||||
'@jest/types': 29.6.1
|
||||
'@types/node': 20.4.5
|
||||
'@types/node': 20.4.7
|
||||
chalk: 4.1.2
|
||||
jest-message-util: 29.6.2
|
||||
jest-util: 29.6.2
|
||||
|
@ -1344,14 +1344,14 @@ packages:
|
|||
'@jest/test-result': 29.6.2
|
||||
'@jest/transform': 29.6.2
|
||||
'@jest/types': 29.6.1
|
||||
'@types/node': 20.4.5
|
||||
'@types/node': 20.4.7
|
||||
ansi-escapes: 4.3.2
|
||||
chalk: 4.1.2
|
||||
ci-info: 3.8.0
|
||||
exit: 0.1.2
|
||||
graceful-fs: 4.2.11
|
||||
jest-changed-files: 29.5.0
|
||||
jest-config: 29.6.2(@types/node@20.4.5)(ts-node@10.9.1)
|
||||
jest-config: 29.6.2(@types/node@20.4.7)(ts-node@10.9.1)
|
||||
jest-haste-map: 29.6.2
|
||||
jest-message-util: 29.6.2
|
||||
jest-regex-util: 29.4.3
|
||||
|
@ -1379,7 +1379,7 @@ packages:
|
|||
dependencies:
|
||||
'@jest/fake-timers': 29.6.2
|
||||
'@jest/types': 29.6.1
|
||||
'@types/node': 20.4.5
|
||||
'@types/node': 20.4.7
|
||||
jest-mock: 29.6.2
|
||||
dev: true
|
||||
|
||||
|
@ -1406,7 +1406,7 @@ packages:
|
|||
dependencies:
|
||||
'@jest/types': 29.6.1
|
||||
'@sinonjs/fake-timers': 10.3.0
|
||||
'@types/node': 20.4.5
|
||||
'@types/node': 20.4.7
|
||||
jest-message-util: 29.6.2
|
||||
jest-mock: 29.6.2
|
||||
jest-util: 29.6.2
|
||||
|
@ -1439,7 +1439,7 @@ packages:
|
|||
'@jest/transform': 29.6.2
|
||||
'@jest/types': 29.6.1
|
||||
'@jridgewell/trace-mapping': 0.3.18
|
||||
'@types/node': 20.4.5
|
||||
'@types/node': 20.4.7
|
||||
chalk: 4.1.2
|
||||
collect-v8-coverage: 1.0.2
|
||||
exit: 0.1.2
|
||||
|
@ -1527,7 +1527,7 @@ packages:
|
|||
'@jest/schemas': 29.6.0
|
||||
'@types/istanbul-lib-coverage': 2.0.4
|
||||
'@types/istanbul-reports': 3.0.1
|
||||
'@types/node': 20.4.5
|
||||
'@types/node': 20.4.7
|
||||
'@types/yargs': 17.0.24
|
||||
chalk: 4.1.2
|
||||
dev: true
|
||||
|
@ -1642,7 +1642,7 @@ packages:
|
|||
/@types/graceful-fs@4.1.6:
|
||||
resolution: {integrity: sha512-Sig0SNORX9fdW+bQuTEovKj3uHcUL6LQKbCrrqb1X7J6/ReAbhCXRAhc+SMejhLELFj2QcyuxmUooZ4bt5ReSw==}
|
||||
dependencies:
|
||||
'@types/node': 20.4.5
|
||||
'@types/node': 20.4.7
|
||||
dev: true
|
||||
|
||||
/@types/istanbul-lib-coverage@2.0.4:
|
||||
|
@ -1665,8 +1665,8 @@ packages:
|
|||
resolution: {integrity: sha512-jhuKLIRrhvCPLqwPcx6INqmKeiA5EWrsCOPhrlFSrbrmU4ZMPjj5Ul/oLCMDO98XRUIwVm78xICz4EPCektzeQ==}
|
||||
dev: true
|
||||
|
||||
/@types/node@20.4.5:
|
||||
resolution: {integrity: sha512-rt40Nk13II9JwQBdeYqmbn2Q6IVTA5uPhvSO+JVqdXw/6/4glI6oR9ezty/A9Hg5u7JH4OmYmuQ+XvjKm0Datg==}
|
||||
/@types/node@20.4.7:
|
||||
resolution: {integrity: sha512-bUBrPjEry2QUTsnuEjzjbS7voGWCc30W0qzgMf90GPeDGFRakvrz47ju+oqDAKCXLUCe39u57/ORMl/O/04/9g==}
|
||||
dev: true
|
||||
|
||||
/@types/stack-utils@2.0.1:
|
||||
|
@ -1883,8 +1883,8 @@ packages:
|
|||
engines: {node: ^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7}
|
||||
hasBin: true
|
||||
dependencies:
|
||||
caniuse-lite: 1.0.30001518
|
||||
electron-to-chromium: 1.4.480
|
||||
caniuse-lite: 1.0.30001519
|
||||
electron-to-chromium: 1.4.485
|
||||
node-releases: 2.0.13
|
||||
update-browserslist-db: 1.0.11(browserslist@4.21.10)
|
||||
dev: true
|
||||
|
@ -1921,8 +1921,8 @@ packages:
|
|||
engines: {node: '>=10'}
|
||||
dev: true
|
||||
|
||||
/caniuse-lite@1.0.30001518:
|
||||
resolution: {integrity: sha512-rup09/e3I0BKjncL+FesTayKtPrdwKhUufQFd3riFw1hHg8JmIFoInYfB102cFcY/pPgGmdyl/iy+jgiDi2vdA==}
|
||||
/caniuse-lite@1.0.30001519:
|
||||
resolution: {integrity: sha512-0QHgqR+Jv4bxHMp8kZ1Kn8CH55OikjKJ6JmKkZYP1F3D7w+lnFXF70nG5eNfsZS89jadi5Ywy5UCSKLAglIRkg==}
|
||||
dev: true
|
||||
|
||||
/chalk@2.4.2:
|
||||
|
@ -2094,8 +2094,8 @@ packages:
|
|||
engines: {node: '>=0.3.1'}
|
||||
dev: true
|
||||
|
||||
/electron-to-chromium@1.4.480:
|
||||
resolution: {integrity: sha512-IXTgg+bITkQv/FLP9FjX6f9KFCs5hQWeh5uNSKxB9mqYj/JXhHDbu+ekS43LVvbkL3eW6/oZy4+r9Om6lan1Uw==}
|
||||
/electron-to-chromium@1.4.485:
|
||||
resolution: {integrity: sha512-1ndQ5IBNEnFirPwvyud69GHL+31FkE09gH/CJ6m3KCbkx3i0EVOrjwz4UNxRmN9H8OVHbC6vMRZGN1yCvjSs9w==}
|
||||
dev: true
|
||||
|
||||
/emittery@0.13.1:
|
||||
|
@ -2164,7 +2164,7 @@ packages:
|
|||
engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0}
|
||||
dependencies:
|
||||
'@jest/expect-utils': 29.6.2
|
||||
'@types/node': 20.4.5
|
||||
'@types/node': 20.4.7
|
||||
jest-get-type: 29.4.3
|
||||
jest-matcher-utils: 29.6.2
|
||||
jest-message-util: 29.6.2
|
||||
|
@ -2325,8 +2325,8 @@ packages:
|
|||
binary-extensions: 2.2.0
|
||||
dev: true
|
||||
|
||||
/is-core-module@2.12.1:
|
||||
resolution: {integrity: sha512-Q4ZuBAe2FUsKtyQJoQHlvP8OvBERxO3jEmy1I7hcRXcJBGGHFh/aJBswbXuS9sgrDH2QUO8ilkwNPHvHMd8clg==}
|
||||
/is-core-module@2.13.0:
|
||||
resolution: {integrity: sha512-Z7dk6Qo8pOCp3l4tsX2C5ZVas4V+UxwQodwZhLopL91TX8UyyHEXafPcyoeeWuLrwzHcr3igO78wNLwHJHsMCQ==}
|
||||
dependencies:
|
||||
has: 1.0.3
|
||||
dev: true
|
||||
|
@ -2429,7 +2429,7 @@ packages:
|
|||
'@jest/expect': 29.6.2
|
||||
'@jest/test-result': 29.6.2
|
||||
'@jest/types': 29.6.1
|
||||
'@types/node': 20.4.5
|
||||
'@types/node': 20.4.7
|
||||
chalk: 4.1.2
|
||||
co: 4.6.0
|
||||
dedent: 1.5.1
|
||||
|
@ -2450,7 +2450,7 @@ packages:
|
|||
- supports-color
|
||||
dev: true
|
||||
|
||||
/jest-cli@29.6.2(@types/node@20.4.5)(ts-node@10.9.1):
|
||||
/jest-cli@29.6.2(@types/node@20.4.7)(ts-node@10.9.1):
|
||||
resolution: {integrity: sha512-TT6O247v6dCEX2UGHGyflMpxhnrL0DNqP2fRTKYm3nJJpCTfXX3GCMQPGFjXDoj0i5/Blp3jriKXFgdfmbYB6Q==}
|
||||
engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0}
|
||||
hasBin: true
|
||||
|
@ -2467,7 +2467,7 @@ packages:
|
|||
exit: 0.1.2
|
||||
graceful-fs: 4.2.11
|
||||
import-local: 3.1.0
|
||||
jest-config: 29.6.2(@types/node@20.4.5)(ts-node@10.9.1)
|
||||
jest-config: 29.6.2(@types/node@20.4.7)(ts-node@10.9.1)
|
||||
jest-util: 29.6.2
|
||||
jest-validate: 29.6.2
|
||||
prompts: 2.4.2
|
||||
|
@ -2479,7 +2479,7 @@ packages:
|
|||
- ts-node
|
||||
dev: true
|
||||
|
||||
/jest-config@29.6.2(@types/node@20.4.5)(ts-node@10.9.1):
|
||||
/jest-config@29.6.2(@types/node@20.4.7)(ts-node@10.9.1):
|
||||
resolution: {integrity: sha512-VxwFOC8gkiJbuodG9CPtMRjBUNZEHxwfQXmIudSTzFWxaci3Qub1ddTRbFNQlD/zUeaifLndh/eDccFX4wCMQw==}
|
||||
engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0}
|
||||
peerDependencies:
|
||||
|
@ -2494,7 +2494,7 @@ packages:
|
|||
'@babel/core': 7.22.9
|
||||
'@jest/test-sequencer': 29.6.2
|
||||
'@jest/types': 29.6.1
|
||||
'@types/node': 20.4.5
|
||||
'@types/node': 20.4.7
|
||||
babel-jest: 29.6.2(@babel/core@7.22.9)
|
||||
chalk: 4.1.2
|
||||
ci-info: 3.8.0
|
||||
|
@ -2514,7 +2514,7 @@ packages:
|
|||
pretty-format: 29.6.2
|
||||
slash: 3.0.0
|
||||
strip-json-comments: 3.1.1
|
||||
ts-node: 10.9.1(@types/node@20.4.5)(typescript@5.1.6)
|
||||
ts-node: 10.9.1(@types/node@20.4.7)(typescript@5.1.6)
|
||||
transitivePeerDependencies:
|
||||
- babel-plugin-macros
|
||||
- supports-color
|
||||
|
@ -2555,7 +2555,7 @@ packages:
|
|||
'@jest/environment': 29.6.2
|
||||
'@jest/fake-timers': 29.6.2
|
||||
'@jest/types': 29.6.1
|
||||
'@types/node': 20.4.5
|
||||
'@types/node': 20.4.7
|
||||
jest-mock: 29.6.2
|
||||
jest-util: 29.6.2
|
||||
dev: true
|
||||
|
@ -2571,7 +2571,7 @@ packages:
|
|||
dependencies:
|
||||
'@jest/types': 29.6.1
|
||||
'@types/graceful-fs': 4.1.6
|
||||
'@types/node': 20.4.5
|
||||
'@types/node': 20.4.7
|
||||
anymatch: 3.1.3
|
||||
fb-watchman: 2.0.2
|
||||
graceful-fs: 4.2.11
|
||||
|
@ -2622,7 +2622,7 @@ packages:
|
|||
engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0}
|
||||
dependencies:
|
||||
'@jest/types': 29.6.1
|
||||
'@types/node': 20.4.5
|
||||
'@types/node': 20.4.7
|
||||
jest-util: 29.6.2
|
||||
dev: true
|
||||
|
||||
|
@ -2663,7 +2663,7 @@ packages:
|
|||
jest-pnp-resolver: 1.2.3(jest-resolve@29.6.2)
|
||||
jest-util: 29.6.2
|
||||
jest-validate: 29.6.2
|
||||
resolve: 1.22.2
|
||||
resolve: 1.22.4
|
||||
resolve.exports: 2.0.2
|
||||
slash: 3.0.0
|
||||
dev: true
|
||||
|
@ -2677,7 +2677,7 @@ packages:
|
|||
'@jest/test-result': 29.6.2
|
||||
'@jest/transform': 29.6.2
|
||||
'@jest/types': 29.6.1
|
||||
'@types/node': 20.4.5
|
||||
'@types/node': 20.4.7
|
||||
chalk: 4.1.2
|
||||
emittery: 0.13.1
|
||||
graceful-fs: 4.2.11
|
||||
|
@ -2708,7 +2708,7 @@ packages:
|
|||
'@jest/test-result': 29.6.2
|
||||
'@jest/transform': 29.6.2
|
||||
'@jest/types': 29.6.1
|
||||
'@types/node': 20.4.5
|
||||
'@types/node': 20.4.7
|
||||
chalk: 4.1.2
|
||||
cjs-module-lexer: 1.2.3
|
||||
collect-v8-coverage: 1.0.2
|
||||
|
@ -2760,7 +2760,7 @@ packages:
|
|||
engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0}
|
||||
dependencies:
|
||||
'@jest/types': 29.6.1
|
||||
'@types/node': 20.4.5
|
||||
'@types/node': 20.4.7
|
||||
chalk: 4.1.2
|
||||
ci-info: 3.8.0
|
||||
graceful-fs: 4.2.11
|
||||
|
@ -2785,7 +2785,7 @@ packages:
|
|||
dependencies:
|
||||
'@jest/test-result': 29.6.2
|
||||
'@jest/types': 29.6.1
|
||||
'@types/node': 20.4.5
|
||||
'@types/node': 20.4.7
|
||||
ansi-escapes: 4.3.2
|
||||
chalk: 4.1.2
|
||||
emittery: 0.13.1
|
||||
|
@ -2797,13 +2797,13 @@ packages:
|
|||
resolution: {integrity: sha512-l3ccBOabTdkng8I/ORCkADz4eSMKejTYv1vB/Z83UiubqhC1oQ5Li6dWCyqOIvSifGjUBxuvxvlm6KGK2DtuAQ==}
|
||||
engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0}
|
||||
dependencies:
|
||||
'@types/node': 20.4.5
|
||||
'@types/node': 20.4.7
|
||||
jest-util: 29.6.2
|
||||
merge-stream: 2.0.0
|
||||
supports-color: 8.1.1
|
||||
dev: true
|
||||
|
||||
/jest@29.6.2(@types/node@20.4.5)(ts-node@10.9.1):
|
||||
/jest@29.6.2(@types/node@20.4.7)(ts-node@10.9.1):
|
||||
resolution: {integrity: sha512-8eQg2mqFbaP7CwfsTpCxQ+sHzw1WuNWL5UUvjnWP4hx2riGz9fPSzYOaU5q8/GqWn1TfgZIVTqYJygbGbWAANg==}
|
||||
engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0}
|
||||
hasBin: true
|
||||
|
@ -2816,7 +2816,7 @@ packages:
|
|||
'@jest/core': 29.6.2(ts-node@10.9.1)
|
||||
'@jest/types': 29.6.1
|
||||
import-local: 3.1.0
|
||||
jest-cli: 29.6.2(@types/node@20.4.5)(ts-node@10.9.1)
|
||||
jest-cli: 29.6.2(@types/node@20.4.7)(ts-node@10.9.1)
|
||||
transitivePeerDependencies:
|
||||
- '@types/node'
|
||||
- babel-plugin-macros
|
||||
|
@ -3197,11 +3197,11 @@ packages:
|
|||
engines: {node: '>=10'}
|
||||
dev: true
|
||||
|
||||
/resolve@1.22.2:
|
||||
resolution: {integrity: sha512-Sb+mjNHOULsBv818T40qSPeRiuWLyaGMa5ewydRLFimneixmVy2zdivRl+AF6jaYPC8ERxGDmFSiqui6SfPd+g==}
|
||||
/resolve@1.22.4:
|
||||
resolution: {integrity: sha512-PXNdCiPqDqeUou+w1C2eTQbNfxKSuMxqTCuvlmmMsk1NWHL5fRrhY6Pl0qEYYc6+QqGClco1Qj8XnjPego4wfg==}
|
||||
hasBin: true
|
||||
dependencies:
|
||||
is-core-module: 2.12.1
|
||||
is-core-module: 2.13.0
|
||||
path-parse: 1.0.7
|
||||
supports-preserve-symlinks-flag: 1.0.0
|
||||
dev: true
|
||||
|
@ -3406,7 +3406,7 @@ packages:
|
|||
babel-jest: 29.6.2(@babel/core@7.22.9)
|
||||
bs-logger: 0.2.6
|
||||
fast-json-stable-stringify: 2.1.0
|
||||
jest: 29.6.2(@types/node@20.4.5)(ts-node@10.9.1)
|
||||
jest: 29.6.2(@types/node@20.4.7)(ts-node@10.9.1)
|
||||
jest-util: 29.6.2
|
||||
json5: 2.2.3
|
||||
lodash.memoize: 4.1.2
|
||||
|
@ -3416,7 +3416,7 @@ packages:
|
|||
yargs-parser: 21.1.1
|
||||
dev: true
|
||||
|
||||
/ts-node@10.9.1(@types/node@20.4.5)(typescript@5.1.6):
|
||||
/ts-node@10.9.1(@types/node@20.4.7)(typescript@5.1.6):
|
||||
resolution: {integrity: sha512-NtVysVPkxxrwFGUUxGYhfux8k78pQB3JqYBXlLRZgdGUqTO5wU/UyHop5p70iEbGhB7q5KmiZiU0Y3KlJrScEw==}
|
||||
hasBin: true
|
||||
peerDependencies:
|
||||
|
@ -3435,7 +3435,7 @@ packages:
|
|||
'@tsconfig/node12': 1.0.11
|
||||
'@tsconfig/node14': 1.0.3
|
||||
'@tsconfig/node16': 1.0.4
|
||||
'@types/node': 20.4.5
|
||||
'@types/node': 20.4.7
|
||||
acorn: 8.10.0
|
||||
acorn-walk: 8.2.0
|
||||
arg: 4.1.3
|
||||
|
|
|
@ -13,8 +13,7 @@ describe('mapping properties with rich mapping engine', () => {
|
|||
|
||||
let Mapping_engine = new mapping_engine(mappingRemoveAll)
|
||||
|
||||
let mapped_point = { properties: []}
|
||||
mapped_point = Mapping_engine.mapElementFromConf(testingGeoJson.features[0])
|
||||
let mapped_point = Mapping_engine.mapElementFromConf(testingGeoJson.features[0])
|
||||
expect(mapped_point.properties).toBe([])
|
||||
|
||||
})
|
||||
|
|
|
@ -1,3 +1,30 @@
|
|||
module.exports= {
|
||||
noImplicitAny: false,
|
||||
"compilerOptions": {
|
||||
"outDir": "build/dist",
|
||||
"module": "esnext",
|
||||
"target": "es2020",
|
||||
"lib": ["esnext", "dom"],
|
||||
"sourceMap": true,
|
||||
"allowJs": true,
|
||||
"jsx": "react",
|
||||
"moduleResolution": "node",
|
||||
"rootDir": "src",
|
||||
"forceConsistentCasingInFileNames": true,
|
||||
"noImplicitReturns": true,
|
||||
"noImplicitThis": true,
|
||||
"noImplicitAny": false, //here
|
||||
"strictNullChecks": true,
|
||||
"suppressImplicitAnyIndexErrors": true,
|
||||
"noUnusedLocals": true,
|
||||
"noUnusedParameters": true
|
||||
},
|
||||
"exclude": [
|
||||
"node_modules",
|
||||
"build",
|
||||
"scripts",
|
||||
"acceptance-tests",
|
||||
"webpack",
|
||||
"jest",
|
||||
"src/setupTests.ts"
|
||||
]
|
||||
}
|
Loading…
Reference in New Issue