- Prérequis (outils)
- Commandes via NPM
- Carte des sources et des dépendances
- Analyse (The Official Analyse Tool)
- Carte des sources et des dépendances
- Analyse (The Official Analyse Tool)
- nodeJS (https://nodejs.org/en/download/) en version 10 minimum
- git (https://git-scm.com/downloads)
- git gui (facultatif)
- tortoiseGit (facultatif)
- Visual Studio Code / VSCode (facultatif)
--Windows only!--
ouvrir une console :
git config core.autocrlf false
git rm --cached -r
git reset --hard
Note : Possibilité de le faire via l'editeur Visual Studio Code dans le menu Fichier > Préférences > Paramètres utilisateurs Pour plus d'information, cf. https://code.visualstudio.com/docs/getstarted/settings
ouvrir une console :
npm config set proxy http://proxy.company.com:8080
npm config set https-proxy http://proxy.company.com:8080
ou
sous Windows, modifier le fichier C:\Users< USER >\.npmrc (sous Linux, on utilise le fichier $HOME/.npmrc ) avec les lignes suivantes :
proxy=http://proxy.company.com:8080
https-proxy=http://proxy.company.com:8080
https_proxy=http://proxy.company.com:8080
ou
sous Windows, déclarer les variables d'environnement suivantes :
HTTP_PROXY
HTTPS_PROXY
--Windows only!--
Git et NodeJS fournissent leur propre console. L'utilisation de ces consoles permet d'avoir un environnement complet (ex. variables systèmes), mais il est tout à fait possible d'utiliser la console de Windows (CMD).
Note : Possibilité d'utiliser le terminal de Visual Studio Code dans le menu Affichage > Integred Terminal Pour plus d'information, cf. https://code.visualstudio.com/docs/editor/integrated-terminal
Liste des targets disponibles :
npm run <target>
target : (clean), setup,
build[:dev|:prod|src|:2d[:dev|:prod|src]|:3d[:dev|:prod|src]],
doc:serve,
test:serve
option : --mode=production,
--mode=development
--mode=none
ouvrir une console :
npm install
Si vous passez par les commandes du package.json, les dépendances sont installées via la target suivante :
ouvrir une console :
npm run setup
Orienté developpement :
ouvrir une console :
// branche master du depot "IGNF/geoportal-access-lib" (dev)
npm install https://github.com/IGNF/geoportal-access-lib/tarball/master --no-save
ou par simple copie des bundles dans le répertoire node_modules :
// version spécifique des extensions
cp pathTo/GpPluginOpenLayers* node_modules/geoportal-extensions-openlayers/dist/
cp pathTo/GpPluginItowns* node_modules/geoportal-extensions-itowns/dist/
cp pathTo/GpPluginOlItowns* node_modules/geoportal-extensions-openlayers-itowns/dist/
Upgrade de version :
ouvrir une console :
// publication openlayers en version 6.0.0
npm install openlayers@6.0.0 --no-save
ouvrir une console (ex. avec le SDK 2D) :
npm run build:2d
ou npm run build:2d:prod
ou npm run build:2d:dev
ou npm run build:2d -- --mode=production
ou npm run build:2d -- --mode=development
Les bundles sont disponibles dans le répertoire :
dist/2d/GpSDK2D.js
dist/2d/GpSDK2D.css
dist/2d/GpSDK2D-src.js
dist/2d/GpSDK2D-src.css
dist/2d/GpSDK2D-map.js
dist/2d/GpSDK2D-map.css
Les sources sont validées (jshint, jscs et/ou eslint). La jsoc est générée.
Il est possible de lancer la génération des bundles pour l'ensemble des extensions :
// génération des bundles en mode développement (cad sourcemap)
npm run build:dev
// génération des bundles en mode production
npm run build:prod
// génération des bundles en mode sources
npm run build:src
La jsdoc est générée lors du build dans le répertoire jsdoc.
Sous Windows, il est possible que la JSDoc ne soit pas compilée correctement (problème de path du binaire), on peut l’exécuter manuellement :
ouvrir une console :
node_modules\.bin\jsdoc -c jsdoc.json
ouvrir une console :
npm run doc:serve
Le navigateur s'ouvre sur la page de la JSDOC sur l'URL suivante : http://localhost:9001/
Les exemples sont générées lors du build dans le répertoire samples. Mais il est aussi possible de les executer autrement :
ouvrir une console :
npm run sample:(2d|3d):serve
Le navigateur s'ouvre sur la page des exemples sur l'URL suivante : http://localhost:9001/
ouvrir une console :
npm run test:serve
Le navigateur s'ouvre sur la page des tests sur l'URL suivante : http://localhost:9001/
Note
les tests unitaires sont disponibles aussi sur la page de Tests
ouvrir une console :
cd test_rendering
npm install
node server.js
npm run test[:ol|:it|:ll]
cf. https://github.com/webpack-contrib/webpack-bundle-analyzer
ouvrir une console :
sudo npm install -g webpack-bundle-analyzer
webpack-bundle-analyzer map-ol.json
Le navigateur s'ouvre sur l'URL suivante : http://localhost:8888/
Aller sur l'URL suivante : http://webpack.github.io/analyse/
puis, utiliser le fichier map-[ol|it|mix|ll].json
cf. https://github.com/webpack-contrib/webpack-bundle-analyzer
ouvrir une console :
sudo npm install -g webpack-bundle-analyzer
webpack-bundle-analyzer map-2d.json
Le navigateur s'ouvre sur l'URL suivante : http://localhost:8888/
Aller sur l'URL suivante : http://webpack.github.io/analyse/
puis, utiliser le fichier map-[2d|3d].json