diff --git a/.eslintignore b/.eslintignore index 9e6ff1698a5cd5ecea1bbc0180e459a074fdfc5c..36282a869ebfde2ef78fe604aa764078df56b81f 100644 --- a/.eslintignore +++ b/.eslintignore @@ -4,6 +4,6 @@ /dist /docs /files -/manual +/docs-sources /node_modules /sources diff --git a/.github/workflows/docs.yml b/.github/workflows/docs.yml new file mode 100644 index 0000000000000000000000000000000000000000..7faa3e1f2d70c986385a095cc9e404284133a4a9 --- /dev/null +++ b/.github/workflows/docs.yml @@ -0,0 +1,33 @@ +name: Docs + +on: + release: + branches: + - master + +jobs: + build: + runs-on: ubuntu-latest + + steps: + - name: Checkout + uses: actions/checkout@v1 + - name: Use Node.js + uses: actions/setup-node@v1 + with: + node-version: 12 + - name: Generate docs + run: | + npm ci + npm run docs + env: + CI: true + - name: Build Docker image + run: docker build -f Dockerfile.docs . --tag caminofr/camino-api-docs + - name: Push Docker image to the Docker Hub + run: | + docker login --username "$DOCKER_USERNAME" --password "$DOCKER_PASSWORD" + docker push caminofr/camino-api-docs + env: + DOCKER_USERNAME: ${{ secrets.DOCKER_USERNAME }} + DOCKER_PASSWORD: ${{ secrets.DOCKER_PASSWORD }} diff --git a/Dockerfile.docs b/Dockerfile.docs new file mode 100644 index 0000000000000000000000000000000000000000..1b8a253de57c92a7f79f80a8a5177f9f50250ffa --- /dev/null +++ b/Dockerfile.docs @@ -0,0 +1,3 @@ +FROM nginx +COPY default.conf.template /etc/nginx/templates/default.conf.template +COPY docs /usr/share/nginx/html diff --git a/README.md b/README.md index a64c1deb25b8261e2465962d78137552ea5c4a5e..db5731d5240c9422ce9813510914ca444d4019ff 100644 --- a/README.md +++ b/README.md @@ -1,4 +1,4 @@ -# Camino API +# API de Camino [![Tests Status][ci-img]][ci] [![codecov][codecov-img]][codecov] [![Dependency Status][dep-img]][dep] @@ -9,180 +9,21 @@ [dep-img]: https://david-dm.org/MTES-MCT/camino-api.svg [dep]: https://david-dm.org/MTES-MCT/camino-api -> API GraphQL de [Camino](http://camino.beta.gouv.fr/): [api.camino.beta.gouv.fr](https://api.camino.beta.gouv.fr) +> API de Camino, le cadastre minier numérique ouvert: [api.camino.beta.gouv.fr](https://api.camino.beta.gouv.fr) ---- - -## Technologies - -- [TypeScript](https://typescriptlang.org/) -- [Node.js](https://nodejs.org/) -- [Express.js](http://expressjs.com) -- [PostgreSQL](https://www.postgresql.org/) -- [Express-GraphQL](https://github.com/graphql/express-graphql) -- [Knex.js](https://knexjs.org/) -- [Objection.js](http://vincit.github.io/objection.js/) -- [Eslint](https://eslint.org/) -- [Prettier](https://prettier.io/) -- [Standardjs](https://standardjs.com/) -- [Docker](https://www.docker.com/) - ---- - -## Environnement - -- Node.js (v.10 ou plus) et npm -- PostgreSQL (v.10 ou plus) - ---- - -## Utilisation - -### Configuration et imports des données - -- Cloner ce repo : `git clone https://github.com/MTES-MCT/camino-api.git`. -- Renommer le fichier `.env-example` en `.env` et le compléter. -- Créer une base de données PostgreSQL correspondant au fichier `.env`. -- À l'intérieur du dossier `/backups`, coller le fichier `camino-public.sql` disponible ici : [Camino database](https://github.com/MTES-MCT/camino-database). - -### Installation - -```bash -# installe les dépendances -npm install - -# importe les données depuis /database/camino-public.sql -npm run db:public-import - -# crée un utilisateur admin -npm run db:user -``` - -### Développement - -```bash -# démarre le serveur avec nodemon -npm run dev -``` - -### Production - -```bash -# compile l'application avec typescript -npm run build - -# démarre le serveur -npm run start -``` - ---- - -## Tests - -### Tests unitaires - -```sh -# lance les tests en local -npm run test:jest -``` - -### Tests de bout-en-bout - -Ces tests sont lancés depuis `camino-ui` avec la commande `npm run test:cypress`. - -Pour que cela fonctionne l'API doit être lancée avec `npm run dev`. - -Pour que les tests soient plus rapides, on peut utiliser une version publique de la base de données contenant seulement certains titres miniers. - -```bash -# crée une copie de la base de données (publique) -npm run db:dump-public - -# importe la base de données publique -# met à jour les données (daily) -# crée un utilisateur super-admin -# lance le serveur de dev -npm run test:cypress -``` +L'API de Camino expose les caractéristiques des titres et autorisations du domaine minier français. Elle permet aux utilisateurs autorisés de gérer ces titres et autorisations. Pour plus de détail sur le périmètre de l'application, voir [cette page](https://camino.beta.gouv.fr/a-propos). --- ## Documentation -La documentation [est disponible ici](https://github.com/MTES-MCT/camino-api/tree/master/manual). - ---- - -## Structure des fichiers - -```bash -. -│ -├── dev # `scripts de développement` -├── knex # `scripts de création et d'import de la base de données (npm run migrate) -│ ├── migrations # `création de la base de données` -│ └── seeds # `import depuis les fichier /sources vers la base de données` -│ -├── manual # `source de la documentation générée avec esdoc` -│ -└── src # `fichiers sources. Transformés avec npm run build.` - ├── index # `point d'entrée` - │ - ├── api # `APIs` - │ ├── graphql # `API Graphql` - │ └── rest # `API Rest` - │ - ├── config # - │ ├── index # `variables globales` - │ └── knex # `connexion à la base de données` - │ - ├── database # `base de données PostgreSQL` - │ ├── models # `modèles de la base de données (knex.js / objection.js)` - │ └── queries # `requêtes à la base de données (knex.js / objection.js)` - │ - ├── business # `logique métier` - │ ├── processes # `scripts de traitement` - │ ├── rules # `lois et procédures administratives` - │ ├── utils # `utilitaires de filtrage et de classement` - │ ├── daily # `scripts de mise à jour quotidiens (npm run daily)` - │ ├── etape-update # `script effectués lors de la mise à jour d'une étape` - │ └── monthly # `scripts de mise à jour mensuels (npm run monthly)` - │ - └── tools # `outils` - ├── export # `exportation de la base de données vers des spreadsheets (npm run export)` - ├── import # `import de spreadsheets vers des fichiers json dans /sources (npm run import)` - ├── api-... # `connexion aux api externes` - └── emails-send # `envoi d'email` - -``` - ---- - -## Base de données - - - ---- - -## Contribution - -Voir [contributing.md](contributing.md) (en anglais) pour plus d'infos. +La documentation de l'API est disponible ici: [docs.camino.beta.gouv.fr](https://docs.camino.beta.gouv.fr). --- ## Crédits -### Production - -- [La Fabrique Numérique, Ministère de la transition écologique et solidaire](https://www.ecologique-solidaire.gouv.fr/inauguration-fabrique-numerique-lincubateur-des-ministeres-charges-lecologie-et-des-territoires) - -### Équipe - -- Guillaume Levieux, intrapreneur -- Joeffrey Arruyer, coach -- [François Romain](https://francoisromain.com), développeur -- [Adrien Risser](https://github.com/risseraka), développeur -- [Nicolas Petitot](https://github.com/NeoBahamut), développeur +[La Fabrique Numérique, Ministère de la transition écologique et solidaire](https://www.ecologique-solidaire.gouv.fr/inauguration-fabrique-numerique-lincubateur-des-ministeres-charges-lecologie-et-des-territoires) --- diff --git a/default.conf.template b/default.conf.template new file mode 100644 index 0000000000000000000000000000000000000000..0832d48e707629e2df846c86d6993eb1410f5ce5 --- /dev/null +++ b/default.conf.template @@ -0,0 +1,14 @@ +server { + listen ${NGINX_PORT}; + server_name localhost; + + location / { + root /usr/share/nginx/html; + index index.html index.htm; + } + + error_page 500 502 503 504 /50x.html; + location = /50x.html { + root /usr/share/nginx/html; + } +} \ No newline at end of file diff --git a/manual/api/_introspection-query.graphql b/dev/api/_introspection-query.graphql similarity index 100% rename from manual/api/_introspection-query.graphql rename to dev/api/_introspection-query.graphql diff --git a/dev/api/graphql-dsl-to-query-convert.js b/dev/api/graphql-dsl-to-query-convert.js index a1831e3feb29bd95a427cfc52dfca0ecf4caaa91..423c5ed39a78c131b7a15eafa2e485923d025a28 100644 --- a/dev/api/graphql-dsl-to-query-convert.js +++ b/dev/api/graphql-dsl-to-query-convert.js @@ -11,7 +11,7 @@ fetch(url, { .then(res => res.json()) .then(res => fs.writeFileSync( - 'manual/api/schema.json', + 'docs-sources/api/schema.json', JSON.stringify(res.data, null, 2) ) ) diff --git a/manual/api/test.http b/dev/test.http similarity index 100% rename from manual/api/test.http rename to dev/test.http diff --git a/docker-compose.docs.yml b/docker-compose.docs.yml new file mode 100644 index 0000000000000000000000000000000000000000..2a83bc4084da315e12f9a03d1870208cda708df2 --- /dev/null +++ b/docker-compose.docs.yml @@ -0,0 +1,19 @@ +version: '3' + +services: + app: + image: caminofr/camino-api-docs + environment: + VIRTUAL_HOST: ${URL} + VIRTUAL_PORT: ${PORT} + LETSENCRYPT_HOST: ${URL} + LETSENCRYPT_EMAIL: ${LETSENCRYPT_EMAIL} + NGINX_PORT: ${PORT} + expose: + - ${PORT} + restart: always + +networks: + default: + external: + name: nginx-proxy diff --git a/docs-sources/01-utilisation/01-introduction.md b/docs-sources/01-utilisation/01-introduction.md new file mode 100644 index 0000000000000000000000000000000000000000..663955991e22a28215741866dce3d301d19b87c7 --- /dev/null +++ b/docs-sources/01-utilisation/01-introduction.md @@ -0,0 +1,8 @@ +# Utilisation de l'API de Camino + +> [api.camino.beta.gouv.fr](https://api.camino.beta.gouv.fr) + +L'API de Camino propose deux manières d'interagir: + +- {@page API GraphQL} (complète) +- {@page API Rest} (interaction limitée) diff --git a/manual/api/readme.md b/docs-sources/01-utilisation/02-graphql.md similarity index 51% rename from manual/api/readme.md rename to docs-sources/01-utilisation/02-graphql.md index b49c86fc584b162f3aa1dfd0f3704ad1a0426692..e1f7b1e378d313ffb4e1565e85ae3f351a40e299 100644 --- a/manual/api/readme.md +++ b/docs-sources/01-utilisation/02-graphql.md @@ -1,12 +1,12 @@ -# Api GraphQL +# Api GraphQL de Camino -- [Documentation offcielle de GraphQL](https://graphql.org/) +L'API GraphQl de Camino est accessible à cette url: [api.camino.beta.gouv.fr/](https://api.camino.beta.gouv.fr/). -## Requêtes avec _GraphiQL_ +La documentation de cette API est consultable dans l'onglets `Docs` (en haut à droite) de l'application _GraphiQL_. -_GraphiQL_ est une application qui permet de tester une API GraphQL dans un navigateur. Pour Camino, elle est accessible à l'url racine de l'API: https://api.camino.beta.gouv.fr/. +## _GraphiQL_ -_GraphiQL_ expose une documentation de l'API qui est accessible en cliquant sur le bouton `Docs` (en haut à droite). +_GraphiQL_ est une application qui permet de consulter la documentation et de tester une API GraphQL dans un navigateur. Concernant l'API Camino, cette application est accessible à l'url racine de l'API: [api.camino.beta.gouv.fr/](https://api.camino.beta.gouv.fr/). Des exemples de requêtes se trouvent dans [ce dossier](https://github.com/MTES-MCT/camino-api/blob/master/tests/queries/). @@ -14,17 +14,21 @@ Des exemples de requêtes se trouvent dans [ce dossier](https://github.com/MTES- Par exemple, pour obtenir la liste des substances: -- copier une requête dans le champs principal de l'interface de _GraphiQL_: [substances.graphql](https://github.com/MTES-MCT/camino-api/blob/master/manual/api/queries/substances.graphql) -- valider en cliquant sur le bouton "play" +- copier une requête dans le champs principal de l'interface de _GraphiQL_: [substances.graphql](https://github.com/MTES-MCT/camino-api/blob/master/tests/queries/substances.graphql) +- valider en cliquant sur le bouton `▶`. ### Requêtes avec des variables Certaines requêtes nécessitent le passage de variables. Par exemple, pour obtenir la liste des titres: -- copier la requête dans le champs principal de l'interface de _GraphiQL_: [titres.graphql](https://github.com/MTES-MCT/camino-api/blob/master/manual/api/queries/titres.graphql) -- copier les variables dans le champs `query variables` (en bas à gauche de l'écran): [titres-variables.json](https://github.com/MTES-MCT/camino-api/blob/master/manual/api/queries/titres-variables.json) -- valider en cliquant sur le bouton "play" +- copier la requête dans le champs principal de l'interface de _GraphiQL_: [titres.graphql](https://github.com/MTES-MCT/camino-api/blob/master/tests/queries/titres.graphql) +- copier les variables dans le champs `query variables` (en bas à gauche de l'écran): [titres-variables.json](https://github.com/MTES-MCT/camino-api/blob/master/tests/queries/titres-variables.json) +- valider en cliquant sur le bouton `▶`. ### Requêtes nécessitant une authentification -Certaines requêtes sont protégées et nécessitent une authentification par token (jwt). Pour les tester, il faut passer le token dans le header http de la requête. Cela n'est pas possible avec l'interface _GraphiQL_. C'est possible avec [GraphQL Playground](https://github.com/prisma/graphql-playground), [GraphiQL App](https://github.com/skevy/graphiql-app) ou une application pour faire des requêtes http ([exemple](https://github.com/MTES-MCT/camino-api/blob/master/manual/api/test.http)). +Certaines requêtes sont protégées et nécessitent une authentification par token (jwt). Pour les tester, il faut passer le token dans le header http de la requête. Cela n'est pas possible avec _GraphiQL_. C'est possible avec [GraphQL Playground](https://github.com/prisma/graphql-playground), [GraphiQL App](https://github.com/skevy/graphiql-app). + +### Liens + +- [Documentation offcielle de GraphQL](https://graphql.org/) diff --git a/docs-sources/01-utilisation/03-rest.md b/docs-sources/01-utilisation/03-rest.md new file mode 100644 index 0000000000000000000000000000000000000000..bb78d78e643bc7008e51f6c473832a1e619ed880 --- /dev/null +++ b/docs-sources/01-utilisation/03-rest.md @@ -0,0 +1 @@ +# Api Rest de Camino diff --git a/docs-sources/01-utilisation/04-flux.md b/docs-sources/01-utilisation/04-flux.md new file mode 100644 index 0000000000000000000000000000000000000000..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391 diff --git a/manual/api/schema.json b/docs-sources/01-utilisation/schema.json similarity index 100% rename from manual/api/schema.json rename to docs-sources/01-utilisation/schema.json diff --git a/docs-sources/02-developpement/01-introduction.md b/docs-sources/02-developpement/01-introduction.md new file mode 100644 index 0000000000000000000000000000000000000000..62b73f841b7dd7181effb305a1aa61a323d5b71c --- /dev/null +++ b/docs-sources/02-developpement/01-introduction.md @@ -0,0 +1,144 @@ +# Développement de l'API de Camino + +> [github.com/MTES-MCT/camino-api](https://github.com/MTES-MCT/camino-api) + +## Technologies + +- [TypeScript](https://typescriptlang.org/) +- [Node.js](https://nodejs.org/) +- [Express.js](http://expressjs.com) +- [PostgreSQL](https://www.postgresql.org/) +- [Express-GraphQL](https://github.com/graphql/express-graphql) +- [Knex.js](https://knexjs.org/) +- [Objection.js](http://vincit.github.io/objection.js/) +- [Eslint](https://eslint.org/) +- [Prettier](https://prettier.io/) +- [Standardjs](https://standardjs.com/) +- [Docker](https://www.docker.com/) + +--- + +## Guide de démarrage + +### Environnement + +- Node.js (v.10 ou plus) et npm +- PostgreSQL (v.10 ou plus) + +### Configuration et imports des données + +- Cloner ce repo : `git clone https://github.com/MTES-MCT/camino-api.git`. +- Renommer le fichier `.env-example` en `.env` et le compléter. +- Créer une base de données PostgreSQL correspondant au fichier `.env`. +- À l'intérieur du dossier `/backups`, coller le fichier `camino-public.sql` disponible ici : [Camino database](https://github.com/MTES-MCT/camino-database). + +### Installation + +```bash +# installe les dépendances +npm install + +# importe les données depuis /database/camino-public.sql +npm run db:public-import + +# crée un utilisateur admin +npm run db:user +``` + +### Développement + +```bash +# démarre le serveur avec nodemon +npm run dev +``` + +### Production + +```bash +# compile l'application avec typescript +npm run build + +# démarre le serveur +npm run start +``` + +--- + +## Tests + +### Tests unitaires + +```sh +# lance les tests en local +npm run test:jest +``` + +### Tests de bout-en-bout + +Ces tests sont lancés depuis `camino-ui` avec la commande `npm run test:cypress`. + +Pour que cela fonctionne l'API doit être lancée avec `npm run dev`. + +Pour que les tests soient plus rapides, on peut utiliser une version publique de la base de données contenant seulement certains titres miniers. + +```bash +# crée une copie de la base de données (publique) +npm run db:dump-public + +# importe la base de données publique +# met à jour les données (daily) +# crée un utilisateur super-admin +# lance le serveur de dev +npm run test:cypress +``` + +--- + +## Structure des fichiers + +```bash +. +│ +├── dev # `scripts de développement` +├── knex # `scripts de création et d'import de la base de données (npm run migrate) +│ ├── migrations # `création de la base de données` +│ └── seeds # `import depuis les fichier /sources vers la base de données` +│ +├── docs-sources # `source de la documentation générée avec typeDoc` +│ +└── src # `fichiers sources. Transformés avec npm run build.` + ├── index # `point d'entrée` + │ + ├── api # `APIs` + │ ├── graphql # `API Graphql` + │ └── rest # `API Rest` + │ + ├── config # + │ ├── index # `variables globales` + │ └── knex # `connexion à la base de données` + │ + ├── database # `base de données PostgreSQL` + │ ├── models # `modèles de la base de données (knex.js / objection.js)` + │ └── queries # `requêtes à la base de données (knex.js / objection.js)` + │ + ├── business # `logique métier` + │ ├── processes # `scripts de traitement` + │ ├── rules # `lois et procédures administratives` + │ ├── utils # `utilitaires de filtrage et de classement` + │ ├── daily # `scripts de mise à jour quotidiens (npm run daily)` + │ ├── etape-update # `script effectués lors de la mise à jour d'une étape` + │ └── monthly # `scripts de mise à jour mensuels (npm run monthly)` + │ + └── tools # `outils` + ├── export # `exportation de la base de données vers des spreadsheets (npm run export)` + ├── import # `import de spreadsheets vers des fichiers json dans /sources (npm run import)` + ├── api-... # `connexion aux api externes` + └── emails-send # `envoi d'email` + +``` + +--- + +## Contribution + +Voir [contributing.md](https://github.com/MTES-MCT/camino-api/blob/master/contributing.md) (en anglais) pour plus d'infos. diff --git a/manual/database/camino-db.md b/docs-sources/02-developpement/02-base-de-donnees.md similarity index 66% rename from manual/database/camino-db.md rename to docs-sources/02-developpement/02-base-de-donnees.md index c6a5ead675b9d83d7ec001f9a43a3baaf52f811a..86e57e94d217b9758b7aaa06dffc499042d78f7d 100644 --- a/manual/database/camino-db.md +++ b/docs-sources/02-developpement/02-base-de-donnees.md @@ -1,8 +1,8 @@ -# Base de données Camino +# Base de données L'Api Camino fonctionne avec une base de données PostgreSQL. - + ```sh # faire un dump depuis la base de données locale diff --git a/docs-sources/03-architecture/01-introduction.md b/docs-sources/03-architecture/01-introduction.md new file mode 100644 index 0000000000000000000000000000000000000000..d85908a3dc44389ecf07cf53c44879e94dd1c65f --- /dev/null +++ b/docs-sources/03-architecture/01-introduction.md @@ -0,0 +1 @@ +# Architecture de l'application Camino diff --git a/manual/config/docker.md b/docs-sources/03-architecture/02-docker.md similarity index 100% rename from manual/config/docker.md rename to docs-sources/03-architecture/02-docker.md diff --git a/manual/config/backup-restore.md b/docs-sources/03-architecture/03-scripts-sauvegarde-restaurations.md similarity index 100% rename from manual/config/backup-restore.md rename to docs-sources/03-architecture/03-scripts-sauvegarde-restaurations.md diff --git a/docs-sources/04-deploiement/01-introduction.md b/docs-sources/04-deploiement/01-introduction.md new file mode 100644 index 0000000000000000000000000000000000000000..c44974b4c8e2ac3e669ff0ad01628befc9b985a0 --- /dev/null +++ b/docs-sources/04-deploiement/01-introduction.md @@ -0,0 +1 @@ +# Déploiement de l'API de Camino diff --git a/manual/backup-restore.md b/docs-sources/04-deploiement/02-sauvegarde-restauration.md similarity index 92% rename from manual/backup-restore.md rename to docs-sources/04-deploiement/02-sauvegarde-restauration.md index fabd8dbb5453e171efd1a7803b3471e582580008..f4f74b9bbc082ca16e28a94377262cc6633c79cd 100644 --- a/manual/backup-restore.md +++ b/docs-sources/04-deploiement/02-sauvegarde-restauration.md @@ -1,4 +1,4 @@ -# Sauvegardes et restaurations de la base de données et des fichiers +# Sauvegardes et restaurations ## Sauvegarde diff --git a/manual/database.md b/docs-sources/04-deploiement/03-base-de-donnees.md similarity index 100% rename from manual/database.md rename to docs-sources/04-deploiement/03-base-de-donnees.md diff --git a/manual/files.md b/docs-sources/04-deploiement/04-fichiers.md similarity index 100% rename from manual/files.md rename to docs-sources/04-deploiement/04-fichiers.md diff --git a/manual/scripts.md b/docs-sources/04-deploiement/05-utils.md similarity index 100% rename from manual/scripts.md rename to docs-sources/04-deploiement/05-utils.md diff --git a/manual/docker.md b/docs-sources/04-deploiement/api.md similarity index 66% rename from manual/docker.md rename to docs-sources/04-deploiement/api.md index 603fad988f84f94c3363736be20bccdd47b419fd..7ebff1d2df4c6b2773bd921983e0592b3af77feb 100644 --- a/manual/docker.md +++ b/docs-sources/04-deploiement/api.md @@ -3,6 +3,6 @@ ## Démarrer un shell dans le conteneur Docker de l'API ```sh -# démarre un terminal dans le conteneur de l'API camino +# démarre un terminal dans le conteneur de l'API docker exec -it camino-api_app_1 sh ``` diff --git a/manual/database/camino-db.sqs b/docs-sources/assets/database/camino-db.sqs similarity index 90% rename from manual/database/camino-db.sqs rename to docs-sources/assets/database/camino-db.sqs index 6bb615ceb9ea94373c23192ce2d2ba6457574c6c..e335c4d22514f92a3f4b8c82d58c065a45dde062 100644 --- a/manual/database/camino-db.sqs +++ b/docs-sources/assets/database/camino-db.sqs @@ -5,7 +5,7 @@ <schema><![CDATA[]]></schema> <location> <x>2525.00</x> - <y>1275.00</y> + <y>2425.00</y> </location> <size> <width>300.00</width> @@ -64,7 +64,7 @@ <unique><![CDATA[0]]></unique> </SQLField> <labelColor><![CDATA[{0,0.991439,1,1}]]></labelColor> - <labelWindowIndex><![CDATA[38]]></labelWindowIndex> + <labelWindowIndex><![CDATA[45]]></labelWindowIndex> <PK_KEY_NAME><![CDATA[titulaires_pkey]]></PK_KEY_NAME> <ui.treeExpanded><![CDATA[1]]></ui.treeExpanded> <uid><![CDATA[009F0DC1-93D5-4D00-9CE3-59578EC03C58]]></uid> @@ -74,7 +74,7 @@ <schema><![CDATA[]]></schema> <location> <x>75.00</x> - <y>75.00</y> + <y>825.00</y> </location> <size> <width>300.00</width> @@ -97,7 +97,7 @@ <uid><![CDATA[5C1F2798-A384-4742-AA7C-808417BA59F8]]></uid> </SQLField> <labelColor><![CDATA[{1,0.576372,0,1}]]></labelColor> - <labelWindowIndex><![CDATA[78]]></labelWindowIndex> + <labelWindowIndex><![CDATA[85]]></labelWindowIndex> <PK_KEY_NAME><![CDATA[titresDomaines_pkey]]></PK_KEY_NAME> <ui.treeExpanded><![CDATA[1]]></ui.treeExpanded> <uid><![CDATA[019E6549-52FF-4F0D-AC95-DAC6CD16ED56]]></uid> @@ -107,7 +107,7 @@ <schema><![CDATA[]]></schema> <location> <x>2525.00</x> - <y>775.00</y> + <y>1925.00</y> </location> <size> <width>300.00</width> @@ -148,7 +148,7 @@ <uid><![CDATA[87280B8A-DE80-4A82-8413-BA841A29E0F5]]></uid> </SQLField> <labelColor><![CDATA[{0,0.991439,1,1}]]></labelColor> - <labelWindowIndex><![CDATA[56]]></labelWindowIndex> + <labelWindowIndex><![CDATA[63]]></labelWindowIndex> <PK_KEY_NAME><![CDATA[titulaires_pkey]]></PK_KEY_NAME> <ui.treeExpanded><![CDATA[1]]></ui.treeExpanded> <uid><![CDATA[06961323-C0A7-4287-AD98-B6F7C6C2E20C]]></uid> @@ -158,7 +158,7 @@ <comment><![CDATA[]]></comment> <location> <x>2075.00</x> - <y>450.00</y> + <y>1600.00</y> </location> <size> <width>800.00</width> @@ -167,7 +167,7 @@ <zorder>53</zorder> <commentTitle><![CDATA[unités]]></commentTitle> <labelColor><![CDATA[{0.999996,1,1,1}]]></labelColor> - <labelWindowIndex><![CDATA[32]]></labelWindowIndex> + <labelWindowIndex><![CDATA[39]]></labelWindowIndex> <uid><![CDATA[0713D96D-BDD1-4203-B06B-D6DA35620461]]></uid> </SQLCanvasArea> <SQLTable> @@ -175,7 +175,7 @@ <schema><![CDATA[]]></schema> <location> <x>75.00</x> - <y>550.00</y> + <y>1300.00</y> </location> <size> <width>300.00</width> @@ -226,7 +226,7 @@ <uid><![CDATA[A3784C16-C1B4-42AC-9793-AB4CAAA25588]]></uid> </SQLField> <labelColor><![CDATA[{1,0.576372,0,1}]]></labelColor> - <labelWindowIndex><![CDATA[58]]></labelWindowIndex> + <labelWindowIndex><![CDATA[65]]></labelWindowIndex> <PK_KEY_NAME><![CDATA[titresDomainesTypes_pkey]]></PK_KEY_NAME> <ui.treeExpanded><![CDATA[1]]></ui.treeExpanded> <uid><![CDATA[08FC62D1-7371-4519-983D-7336363CD4D9]]></uid> @@ -236,7 +236,7 @@ <schema><![CDATA[]]></schema> <location> <x>2525.00</x> - <y>1675.00</y> + <y>975.00</y> </location> <size> <width>300.00</width> @@ -272,7 +272,7 @@ <uid><![CDATA[6A0303A3-70A7-4384-810A-99C445154699]]></uid> </SQLField> <labelColor><![CDATA[{1,0.252792,1,1}]]></labelColor> - <labelWindowIndex><![CDATA[19]]></labelWindowIndex> + <labelWindowIndex><![CDATA[26]]></labelWindowIndex> <ui.treeExpanded><![CDATA[1]]></ui.treeExpanded> <uid><![CDATA[09F68EBE-4EB0-473D-92E9-E32BD8977759]]></uid> </SQLTable> @@ -281,7 +281,7 @@ <schema><![CDATA[]]></schema> <location> <x>2125.00</x> - <y>1150.00</y> + <y>2300.00</y> </location> <size> <width>300.00</width> @@ -306,7 +306,7 @@ <uid><![CDATA[C5F56AFC-9468-48A4-9F6A-F17019B0FBED]]></uid> </SQLField> <labelColor><![CDATA[{0,0.991439,1,1}]]></labelColor> - <labelWindowIndex><![CDATA[41]]></labelWindowIndex> + <labelWindowIndex><![CDATA[48]]></labelWindowIndex> <ui.treeExpanded><![CDATA[1]]></ui.treeExpanded> <uid><![CDATA[13BF51B9-12C4-4E8B-A5E3-CEABD242563A]]></uid> </SQLTable> @@ -315,7 +315,7 @@ <comment><![CDATA[]]></comment> <location> <x>2075.00</x> - <y>725.00</y> + <y>1875.00</y> </location> <size> <width>800.00</width> @@ -324,7 +324,7 @@ <zorder>54</zorder> <commentTitle><![CDATA[territoires]]></commentTitle> <labelColor><![CDATA[{0.999996,1,1,1}]]></labelColor> - <labelWindowIndex><![CDATA[31]]></labelWindowIndex> + <labelWindowIndex><![CDATA[38]]></labelWindowIndex> <uid><![CDATA[19C713E1-D842-4161-A170-8A241CA9873C]]></uid> </SQLCanvasArea> <SQLTable> @@ -332,7 +332,7 @@ <schema><![CDATA[]]></schema> <location> <x>475.00</x> - <y>1075.00</y> + <y>1825.00</y> </location> <size> <width>300.00</width> @@ -362,7 +362,7 @@ <uid><![CDATA[2BA32B51-8EFC-45B3-B981-3F9B1197081D]]></uid> </SQLField> <labelColor><![CDATA[{1,0.576372,0,1}]]></labelColor> - <labelWindowIndex><![CDATA[74]]></labelWindowIndex> + <labelWindowIndex><![CDATA[81]]></labelWindowIndex> <PK_KEY_NAME><![CDATA[titresStatuts_pkey]]></PK_KEY_NAME> <ui.treeExpanded><![CDATA[1]]></ui.treeExpanded> <uid><![CDATA[1C0B9E2E-6312-4ED7-BA16-DFFDF66269E0]]></uid> @@ -372,7 +372,7 @@ <schema><![CDATA[]]></schema> <location> <x>75.00</x> - <y>825.00</y> + <y>1575.00</y> </location> <size> <width>300.00</width> @@ -421,7 +421,7 @@ <uid><![CDATA[F0279EB8-0875-41D9-83C8-C178BBA0F0F4]]></uid> </SQLField> <labelColor><![CDATA[{1,0.576372,0,1}]]></labelColor> - <labelWindowIndex><![CDATA[59]]></labelWindowIndex> + <labelWindowIndex><![CDATA[66]]></labelWindowIndex> <PK_KEY_NAME><![CDATA[titresDomainesTypes_pkey]]></PK_KEY_NAME> <ui.treeExpanded><![CDATA[1]]></ui.treeExpanded> <uid><![CDATA[1EF412D5-263C-4254-BB4E-EE939BB65025]]></uid> @@ -431,16 +431,16 @@ <comment><![CDATA[]]></comment> <location> <x>1650.00</x> - <y>1600.00</y> + <y>2350.00</y> </location> <size> <width>400.00</width> - <height>400.00</height> + <height>425.00</height> </size> <zorder>77</zorder> <commentTitle><![CDATA[documents]]></commentTitle> <labelColor><![CDATA[{0.999996,1,1,1}]]></labelColor> - <labelWindowIndex><![CDATA[5]]></labelWindowIndex> + <labelWindowIndex><![CDATA[12]]></labelWindowIndex> <uid><![CDATA[2291734A-200D-4898-A5B3-4FAF45DC7FA1]]></uid> </SQLCanvasArea> <SQLTable> @@ -448,7 +448,7 @@ <schema><![CDATA[]]></schema> <location> <x>75.00</x> - <y>1075.00</y> + <y>1825.00</y> </location> <size> <width>300.00</width> @@ -488,7 +488,7 @@ <uid><![CDATA[ABC00A38-DAD2-4B6B-B266-39D58B581ACF]]></uid> </SQLField> <labelColor><![CDATA[{1,0.576372,0,1}]]></labelColor> - <labelWindowIndex><![CDATA[4]]></labelWindowIndex> + <labelWindowIndex><![CDATA[11]]></labelWindowIndex> <PK_KEY_NAME><![CDATA[titresDomaines_pkey]]></PK_KEY_NAME> <ui.treeExpanded><![CDATA[1]]></ui.treeExpanded> <uid><![CDATA[23FED673-71FD-42B5-AC5B-40F523901D2D]]></uid> @@ -498,7 +498,7 @@ <schema><![CDATA[]]></schema> <location> <x>900.00</x> - <y>1650.00</y> + <y>2725.00</y> </location> <size> <width>300.00</width> @@ -588,7 +588,7 @@ <uid><![CDATA[410259F4-D1D0-4E90-995F-40C0287DC7B2]]></uid> </SQLField> <labelColor><![CDATA[{0,0.976805,0,1}]]></labelColor> - <labelWindowIndex><![CDATA[47]]></labelWindowIndex> + <labelWindowIndex><![CDATA[54]]></labelWindowIndex> <ui.treeExpanded><![CDATA[1]]></ui.treeExpanded> <uid><![CDATA[26C45410-BA8B-46E9-AAFF-A5E1416924FA]]></uid> </SQLTable> @@ -597,7 +597,7 @@ <schema><![CDATA[]]></schema> <location> <x>475.00</x> - <y>2325.00</y> + <y>2675.00</y> </location> <size> <width>300.00</width> @@ -630,7 +630,7 @@ <uid><![CDATA[3F1395EA-916C-4FD8-9995-0FACAF7DD9FC]]></uid> </SQLField> <labelColor><![CDATA[{1,0.576372,0,1}]]></labelColor> - <labelWindowIndex><![CDATA[44]]></labelWindowIndex> + <labelWindowIndex><![CDATA[51]]></labelWindowIndex> <PK_KEY_NAME><![CDATA[titresStatuts_pkey]]></PK_KEY_NAME> <ui.treeExpanded><![CDATA[1]]></ui.treeExpanded> <uid><![CDATA[2934FC29-4015-4BC7-BAA7-15E7F945B8DA]]></uid> @@ -640,7 +640,7 @@ <comment><![CDATA[]]></comment> <location> <x>850.00</x> - <y>25.00</y> + <y>775.00</y> </location> <size> <width>1200.00</width> @@ -649,7 +649,7 @@ <zorder>52</zorder> <commentTitle><![CDATA[titres miniers]]></commentTitle> <labelColor><![CDATA[{0.999996,1,1,1}]]></labelColor> - <labelWindowIndex><![CDATA[30]]></labelWindowIndex> + <labelWindowIndex><![CDATA[37]]></labelWindowIndex> <uid><![CDATA[2D104956-0D87-44AE-83AF-B1F0811260FD]]></uid> </SQLCanvasArea> <SQLTable> @@ -657,7 +657,7 @@ <schema><![CDATA[]]></schema> <location> <x>475.00</x> - <y>400.00</y> + <y>1150.00</y> </location> <size> <width>300.00</width> @@ -720,34 +720,115 @@ <uid><![CDATA[E9DA5CA1-530F-4922-9521-10F01835889A]]></uid> </SQLField> <labelColor><![CDATA[{1,0.576372,0,1}]]></labelColor> - <labelWindowIndex><![CDATA[57]]></labelWindowIndex> + <labelWindowIndex><![CDATA[64]]></labelWindowIndex> <PK_KEY_NAME><![CDATA[titresDomainesTypes_pkey]]></PK_KEY_NAME> <ui.treeExpanded><![CDATA[1]]></ui.treeExpanded> <uid><![CDATA[2E495347-838B-49F1-8A3E-F0F54BFF7BDA]]></uid> </SQLTable> <SQLCanvasArea> - <name><![CDATA[Canvas Area1_2]]></name> + <name><![CDATA[Canvas Area1_17]]></name> <comment><![CDATA[]]></comment> <location> <x>25.00</x> - <y>1975.00</y> + <y>2325.00</y> </location> <size> <width>800.00</width> <height>500.00</height> </size> <zorder>70</zorder> - <commentTitle><![CDATA[activités metas]]></commentTitle> + <commentTitle><![CDATA[metas activités]]></commentTitle> <labelColor><![CDATA[{0.999996,1,1,1}]]></labelColor> - <labelWindowIndex><![CDATA[12]]></labelWindowIndex> + <labelWindowIndex><![CDATA[19]]></labelWindowIndex> <uid><![CDATA[2E4C3768-B294-4542-A28F-E7657C9DAC7E]]></uid> </SQLCanvasArea> + <SQLTable> + <name><![CDATA[titres_travaux_demarches]]></name> + <schema><![CDATA[]]></schema> + <location> + <x>900.00</x> + <y>2400.00</y> + </location> + <size> + <width>300.00</width> + <height>150.00</height> + </size> + <zorder>83</zorder> + <SQLField> + <name><![CDATA[titre_id]]></name> + <type><![CDATA[CHARACTER VARYING(128)]]></type> + <referencesField>id</referencesField> + <referencesTable>titres</referencesTable> + <referencesField><![CDATA[id]]></referencesField> + <referencesTable><![CDATA[titres]]></referencesTable> + <sourceCardinality>0</sourceCardinality> + <destinationCardinality>0</destinationCardinality> + <referencesFieldUID><![CDATA[1D0B5878-7284-40FC-814D-CE8B24FCCC79]]></referencesFieldUID> + <referencesTableUID><![CDATA[376C13F3-7ABB-428B-9877-EFBD5AAB7A2A]]></referencesTableUID> + <autoIncrement><![CDATA[0]]></autoIncrement> + <foreignKeyName><![CDATA[titresphases_titreid_foreign]]></foreignKeyName> + <notNull><![CDATA[0]]></notNull> + <uid><![CDATA[3F719938-5223-477C-A9B9-83A905770C93]]></uid> + </SQLField> + <SQLField> + <name><![CDATA[id]]></name> + <type><![CDATA[CHARACTER VARYING(128)]]></type> + <primaryKey>1</primaryKey> + <autoIncrement><![CDATA[0]]></autoIncrement> + <forcedUnique><![CDATA[1]]></forcedUnique> + <notNull><![CDATA[0]]></notNull> + <PK_NAME><![CDATA[titresPhases_pkey]]></PK_NAME> + <uid><![CDATA[E279DAAD-910C-4ECD-92E2-A1199C2D7C05]]></uid> + <unique><![CDATA[0]]></unique> + </SQLField> + <SQLField> + <name><![CDATA[statut_id]]></name> + <type><![CDATA[CHARACTER VARYING(3)]]></type> + <referencesField>id</referencesField> + <referencesTable>demarches_statuts</referencesTable> + <referencesField><![CDATA[id]]></referencesField> + <referencesTable><![CDATA[demarches_statuts]]></referencesTable> + <sourceCardinality>0</sourceCardinality> + <destinationCardinality>0</destinationCardinality> + <referencesFieldUID><![CDATA[DF4DAF70-025C-49EF-83FE-250F65EAD2D1]]></referencesFieldUID> + <referencesTableUID><![CDATA[2F804401-7A00-4C87-B789-219E6D303D6D]]></referencesTableUID> + <autoIncrement><![CDATA[0]]></autoIncrement> + <notNull><![CDATA[0]]></notNull> + <uid><![CDATA[09A24DF5-6036-417D-B7CF-7C0A3AD99FB1]]></uid> + </SQLField> + <SQLField> + <name><![CDATA[type_id]]></name> + <type><![CDATA[CHARACTER VARYING(3)]]></type> + <referencesField>id</referencesField> + <referencesTable>travaux_demarches_types</referencesTable> + <referencesField><![CDATA[id]]></referencesField> + <referencesTable><![CDATA[travaux_demarches_types]]></referencesTable> + <sourceCardinality>0</sourceCardinality> + <destinationCardinality>0</destinationCardinality> + <referencesFieldUID><![CDATA[D902653A-C83E-43AC-8B55-E1877BE88BEB]]></referencesFieldUID> + <referencesTableUID><![CDATA[B781A599-85CC-4EDC-8E74-7B0872F97CD0]]></referencesTableUID> + <autoIncrement><![CDATA[0]]></autoIncrement> + <notNull><![CDATA[1]]></notNull> + <uid><![CDATA[EA66C0CC-78B8-44E9-83BB-F5A1112905DB]]></uid> + </SQLField> + <SQLField> + <name><![CDATA[ordre]]></name> + <type><![CDATA[INTEGER]]></type> + <autoIncrement><![CDATA[0]]></autoIncrement> + <notNull><![CDATA[0]]></notNull> + <uid><![CDATA[8AB0F74B-3A01-4B6B-A91C-D054AB352C25]]></uid> + </SQLField> + <labelWindowIndex><![CDATA[7]]></labelWindowIndex> + <PK_KEY_NAME><![CDATA[titresPhases_pkey]]></PK_KEY_NAME> + <ui.treeExpanded><![CDATA[1]]></ui.treeExpanded> + <uid><![CDATA[2F5C31FD-5129-4C53-8FB9-DA8D718BF23E]]></uid> + </SQLTable> <SQLTable> <name><![CDATA[demarches_statuts]]></name> <schema><![CDATA[]]></schema> <location> <x>475.00</x> - <y>625.00</y> + <y>1375.00</y> </location> <size> <width>300.00</width> @@ -778,7 +859,7 @@ <uid><![CDATA[A2138AF8-FF26-46E2-93FF-BB29505DF9FB]]></uid> </SQLField> <labelColor><![CDATA[{1,0.576372,0,1}]]></labelColor> - <labelWindowIndex><![CDATA[63]]></labelWindowIndex> + <labelWindowIndex><![CDATA[70]]></labelWindowIndex> <ui.treeExpanded><![CDATA[1]]></ui.treeExpanded> <uid><![CDATA[2F804401-7A00-4C87-B789-219E6D303D6D]]></uid> </SQLTable> @@ -787,7 +868,7 @@ <comment><![CDATA[]]></comment> <location> <x>850.00</x> - <y>525.00</y> + <y>1275.00</y> </location> <size> <width>1200.00</width> @@ -796,7 +877,7 @@ <zorder>74</zorder> <commentTitle><![CDATA[droits miniers]]></commentTitle> <labelColor><![CDATA[{0.999996,1,1,1}]]></labelColor> - <labelWindowIndex><![CDATA[7]]></labelWindowIndex> + <labelWindowIndex><![CDATA[14]]></labelWindowIndex> <uid><![CDATA[340E6AE3-85AE-4D35-BF40-1A515FCC9F00]]></uid> </SQLCanvasArea> <SQLTable> @@ -804,11 +885,11 @@ <schema><![CDATA[]]></schema> <location> <x>900.00</x> - <y>75.00</y> + <y>825.00</y> </location> <size> <width>300.00</width> - <height>375.00</height> + <height>360.00</height> </size> <zorder>8</zorder> <SQLField> @@ -986,7 +1067,7 @@ <type><![CDATA[JSONB]]></type> <uid><![CDATA[123E1C2E-3FAC-4B14-A2AE-6CB26A9674EF]]></uid> </SQLField> - <labelWindowIndex><![CDATA[79]]></labelWindowIndex> + <labelWindowIndex><![CDATA[86]]></labelWindowIndex> <PK_KEY_NAME><![CDATA[titres_pkey]]></PK_KEY_NAME> <ui.treeExpanded><![CDATA[1]]></ui.treeExpanded> <uid><![CDATA[376C13F3-7ABB-428B-9877-EFBD5AAB7A2A]]></uid> @@ -996,7 +1077,7 @@ <schema><![CDATA[]]></schema> <location> <x>2525.00</x> - <y>75.00</y> + <y>1225.00</y> </location> <size> <width>300.00</width> @@ -1031,7 +1112,7 @@ <uid><![CDATA[2EAA71FE-48DD-4851-8523-CFC5F104D6DA]]></uid> </SQLField> <labelColor><![CDATA[{0,0.991439,1,1}]]></labelColor> - <labelWindowIndex><![CDATA[81]]></labelWindowIndex> + <labelWindowIndex><![CDATA[88]]></labelWindowIndex> <PK_KEY_NAME><![CDATA[substancesLegals_pkey]]></PK_KEY_NAME> <ui.treeExpanded><![CDATA[1]]></ui.treeExpanded> <uid><![CDATA[3BE11C5C-B32F-49A5-87CA-FF0A07D64CB0]]></uid> @@ -1041,7 +1122,7 @@ <schema><![CDATA[]]></schema> <location> <x>1700.00</x> - <y>1150.00</y> + <y>1425.00</y> </location> <size> <width>300.00</width> @@ -1085,7 +1166,7 @@ <PK_NAME><![CDATA[titresTitulaires_pkey]]></PK_NAME> <uid><![CDATA[71317801-3BAA-468D-9AE9-916CA525EBE8]]></uid> </SQLField> - <labelWindowIndex><![CDATA[62]]></labelWindowIndex> + <labelWindowIndex><![CDATA[69]]></labelWindowIndex> <PK_KEY_NAME><![CDATA[titresTitulaires_pkey]]></PK_KEY_NAME> <ui.treeExpanded><![CDATA[1]]></ui.treeExpanded> <uid><![CDATA[3DB6A4EE-947B-4E7E-B9A3-F78FE8F17B6E]]></uid> @@ -1095,7 +1176,7 @@ <schema><![CDATA[]]></schema> <location> <x>2125.00</x> - <y>2250.00</y> + <y>75.00</y> </location> <size> <width>325.00</width> @@ -1196,7 +1277,7 @@ <uid><![CDATA[9EEA360D-D701-4539-BFC0-5862627A9851]]></uid> </SQLField> <labelColor><![CDATA[{1,0.252792,1,1}]]></labelColor> - <labelWindowIndex><![CDATA[34]]></labelWindowIndex> + <labelWindowIndex><![CDATA[41]]></labelWindowIndex> <PK_KEY_NAME><![CDATA[titulaires_pkey]]></PK_KEY_NAME> <ui.treeExpanded><![CDATA[1]]></ui.treeExpanded> <uid><![CDATA[4999AEFD-F11A-4578-A6DB-3B815370B0F3]]></uid> @@ -1206,7 +1287,7 @@ <schema><![CDATA[]]></schema> <location> <x>900.00</x> - <y>825.00</y> + <y>1575.00</y> </location> <size> <width>300.00</width> @@ -1297,7 +1378,7 @@ <notNull><![CDATA[0]]></notNull> <uid><![CDATA[BBC8F470-8D56-4041-B14E-D0FC8D1AC462]]></uid> </SQLField> - <labelWindowIndex><![CDATA[64]]></labelWindowIndex> + <labelWindowIndex><![CDATA[71]]></labelWindowIndex> <ui.treeExpanded><![CDATA[1]]></ui.treeExpanded> <uid><![CDATA[4BB93E88-555D-424D-A1A2-680F6FDB7ABC]]></uid> </SQLTable> @@ -1306,7 +1387,7 @@ <schema><![CDATA[]]></schema> <location> <x>2125.00</x> - <y>1500.00</y> + <y>800.00</y> </location> <size> <width>308.00</width> @@ -1410,7 +1491,7 @@ <uid><![CDATA[E6D6410F-9908-4881-AD7B-277E2B3726DC]]></uid> </SQLField> <labelColor><![CDATA[{1,0.252792,1,1}]]></labelColor> - <labelWindowIndex><![CDATA[33]]></labelWindowIndex> + <labelWindowIndex><![CDATA[40]]></labelWindowIndex> <PK_KEY_NAME><![CDATA[titulaires_pkey]]></PK_KEY_NAME> <ui.treeExpanded><![CDATA[1]]></ui.treeExpanded> <uid><![CDATA[4C7DF22E-34A6-486C-9F6B-0A9B9FD8BB21]]></uid> @@ -1420,7 +1501,7 @@ <schema><![CDATA[]]></schema> <location> <x>1700.00</x> - <y>1250.00</y> + <y>1525.00</y> </location> <size> <width>300.00</width> @@ -1464,7 +1545,7 @@ <PK_NAME><![CDATA[titresTitulaires_pkey]]></PK_NAME> <uid><![CDATA[E140F994-6A60-4460-96B2-5E8BF1C8E1A9]]></uid> </SQLField> - <labelWindowIndex><![CDATA[61]]></labelWindowIndex> + <labelWindowIndex><![CDATA[68]]></labelWindowIndex> <PK_KEY_NAME><![CDATA[titresTitulaires_pkey]]></PK_KEY_NAME> <ui.treeExpanded><![CDATA[1]]></ui.treeExpanded> <uid><![CDATA[4CADC010-6331-4463-81BB-16522D0B3513]]></uid> @@ -1474,11 +1555,11 @@ <schema><![CDATA[]]></schema> <location> <x>1700.00</x> - <y>1650.00</y> + <y>2400.00</y> </location> <size> <width>300.00</width> - <height>300.00</height> + <height>325.00</height> </size> <zorder>73</zorder> <SQLField> @@ -1584,17 +1665,92 @@ <forcedUnique><![CDATA[1]]></forcedUnique> <uid><![CDATA[38E3D460-AF1E-4B05-ACC6-83D1A058E052]]></uid> </SQLField> + <SQLField> + <name><![CDATA[titre_travaux_etape_id]]></name> + <type><![CDATA[CHARACTER VARYING(128)]]></type> + <referencesField>id</referencesField> + <referencesTable>titres_travaux_etapes</referencesTable> + <referencesField><![CDATA[id]]></referencesField> + <referencesTable><![CDATA[titres_travaux_etapes]]></referencesTable> + <sourceCardinality>0</sourceCardinality> + <destinationCardinality>0</destinationCardinality> + <referencesFieldUID><![CDATA[288C6628-A413-45AA-AF6B-592AFB90DF11]]></referencesFieldUID> + <referencesTableUID><![CDATA[CCBDC7F4-1FC5-494D-965F-B21B54FA7BC6]]></referencesTableUID> + <forcedUnique><![CDATA[1]]></forcedUnique> + <uid><![CDATA[7028445C-8CAF-4908-AE52-54F971E6AC85]]></uid> + </SQLField> <labelColor><![CDATA[{0.999424,0.985554,0,1}]]></labelColor> - <labelWindowIndex><![CDATA[8]]></labelWindowIndex> + <labelWindowIndex><![CDATA[15]]></labelWindowIndex> <ui.treeExpanded><![CDATA[1]]></ui.treeExpanded> <uid><![CDATA[5076CFBB-6492-4CDB-8E76-FC37FF65AA5C]]></uid> </SQLTable> + <SQLTable> + <name><![CDATA[travaux_demarches_types__demarches_statuts]]></name> + <schema><![CDATA[]]></schema> + <location> + <x>75.00</x> + <y>2025.00</y> + </location> + <size> + <width>325.00</width> + <height>80.00</height> + </size> + <zorder>87</zorder> + <SQLField> + <name><![CDATA[travaux_demarche_type_id]]></name> + <type><![CDATA[CHARACTER VARYING(3)]]></type> + <primaryKey>1</primaryKey> + <referencesField>id</referencesField> + <referencesTable>travaux_demarches_types</referencesTable> + <referencesField><![CDATA[id]]></referencesField> + <referencesTable><![CDATA[travaux_demarches_types]]></referencesTable> + <sourceCardinality>0</sourceCardinality> + <destinationCardinality>0</destinationCardinality> + <referencesFieldUID><![CDATA[D902653A-C83E-43AC-8B55-E1877BE88BEB]]></referencesFieldUID> + <referencesTableUID><![CDATA[B781A599-85CC-4EDC-8E74-7B0872F97CD0]]></referencesTableUID> + <autoIncrement><![CDATA[0]]></autoIncrement> + <foreignKeyName><![CDATA[titresdomainestypes_typeid_foreign]]></foreignKeyName> + <notNull><![CDATA[0]]></notNull> + <PK_NAME><![CDATA[titresDomainesTypes_pkey]]></PK_NAME> + <uid><![CDATA[B521B009-005D-48DF-940A-D7C1CB3991AB]]></uid> + </SQLField> + <SQLField> + <name><![CDATA[demarche_statut_id]]></name> + <type><![CDATA[CHARACTER VARYING(3)]]></type> + <primaryKey>1</primaryKey> + <referencesField>id</referencesField> + <referencesTable>demarches_statuts</referencesTable> + <referencesField><![CDATA[id]]></referencesField> + <referencesTable><![CDATA[demarches_statuts]]></referencesTable> + <sourceCardinality>0</sourceCardinality> + <destinationCardinality>0</destinationCardinality> + <referencesFieldUID><![CDATA[DF4DAF70-025C-49EF-83FE-250F65EAD2D1]]></referencesFieldUID> + <referencesTableUID><![CDATA[2F804401-7A00-4C87-B789-219E6D303D6D]]></referencesTableUID> + <autoIncrement><![CDATA[0]]></autoIncrement> + <foreignKeyName><![CDATA[titresdomainestypes_domaineid_foreign]]></foreignKeyName> + <notNull><![CDATA[0]]></notNull> + <PK_NAME><![CDATA[titresDomainesTypes_pkey]]></PK_NAME> + <uid><![CDATA[315389D1-77EE-4899-AC77-794AB112636D]]></uid> + </SQLField> + <SQLField> + <name><![CDATA[ordre]]></name> + <type><![CDATA[INTEGER]]></type> + <autoIncrement><![CDATA[0]]></autoIncrement> + <notNull><![CDATA[0]]></notNull> + <uid><![CDATA[97538FDF-1567-463C-9BE3-D7816EDFFA53]]></uid> + </SQLField> + <labelColor><![CDATA[{1,0.576372,0,1}]]></labelColor> + <labelWindowIndex><![CDATA[6]]></labelWindowIndex> + <PK_KEY_NAME><![CDATA[titresDomainesTypes_pkey]]></PK_KEY_NAME> + <ui.treeExpanded><![CDATA[1]]></ui.treeExpanded> + <uid><![CDATA[5300EBAF-087C-4D26-9870-AC0B5812D1B7]]></uid> + </SQLTable> <SQLTable> <name><![CDATA[titres_points_references]]></name> <schema><![CDATA[]]></schema> <location> <x>1700.00</x> - <y>925.00</y> + <y>1975.00</y> </location> <size> <width>300.00</width> @@ -1641,7 +1797,7 @@ <type><![CDATA[POINT(2)]]></type> <uid><![CDATA[411B52F4-0E3F-4670-BCA4-3F52CC2C7208]]></uid> </SQLField> - <labelWindowIndex><![CDATA[67]]></labelWindowIndex> + <labelWindowIndex><![CDATA[74]]></labelWindowIndex> <ui.treeExpanded><![CDATA[1]]></ui.treeExpanded> <uid><![CDATA[550F77D4-E524-4004-8830-73996AEB3D36]]></uid> </SQLTable> @@ -1650,26 +1806,13 @@ <schema><![CDATA[]]></schema> <location> <x>75.00</x> - <y>1625.00</y> + <y>75.00</y> </location> <size> <width>300.00</width> <height>100.00</height> </size> <zorder>64</zorder> - <SQLField> - <name><![CDATA[titre_type_id]]></name> - <type><![CDATA[CHARACTER VARYING(3)]]></type> - <referencesField>id</referencesField> - <referencesTable>titres_types</referencesTable> - <referencesField><![CDATA[id]]></referencesField> - <referencesTable><![CDATA[titres_types]]></referencesTable> - <sourceCardinality>0</sourceCardinality> - <destinationCardinality>0</destinationCardinality> - <referencesFieldUID><![CDATA[D57C4E82-981A-45C6-904F-8D5BFCE490F5]]></referencesFieldUID> - <referencesTableUID><![CDATA[966F28ED-D764-4EB7-9564-478C7FE61014]]></referencesTableUID> - <uid><![CDATA[AEDC03E4-3179-462F-A735-72823EFC2C1F]]></uid> - </SQLField> <SQLField> <name><![CDATA[administration_id]]></name> <type><![CDATA[CHARACTER VARYING(128)]]></type> @@ -1684,6 +1827,19 @@ <forcedUnique><![CDATA[0]]></forcedUnique> <uid><![CDATA[8849B94D-005A-460B-957C-BD4103528974]]></uid> </SQLField> + <SQLField> + <name><![CDATA[titre_type_id]]></name> + <type><![CDATA[CHARACTER VARYING(3)]]></type> + <referencesField>id</referencesField> + <referencesTable>titres_types</referencesTable> + <referencesField><![CDATA[id]]></referencesField> + <referencesTable><![CDATA[titres_types]]></referencesTable> + <sourceCardinality>0</sourceCardinality> + <destinationCardinality>0</destinationCardinality> + <referencesFieldUID><![CDATA[D57C4E82-981A-45C6-904F-8D5BFCE490F5]]></referencesFieldUID> + <referencesTableUID><![CDATA[966F28ED-D764-4EB7-9564-478C7FE61014]]></referencesTableUID> + <uid><![CDATA[AEDC03E4-3179-462F-A735-72823EFC2C1F]]></uid> + </SQLField> <SQLField> <name><![CDATA[gestionnaire]]></name> <type><![CDATA[BOOLEAN]]></type> @@ -1695,7 +1851,7 @@ <uid><![CDATA[44F09147-494C-4227-B2B1-B6AC8186EA57]]></uid> </SQLField> <labelColor><![CDATA[{1,0.149131,0,1}]]></labelColor> - <labelWindowIndex><![CDATA[18]]></labelWindowIndex> + <labelWindowIndex><![CDATA[25]]></labelWindowIndex> <ui.treeExpanded><![CDATA[1]]></ui.treeExpanded> <uid><![CDATA[557A23B1-640E-4A37-BB69-6B605A1CDF7E]]></uid> </SQLTable> @@ -1704,7 +1860,7 @@ <schema><![CDATA[]]></schema> <location> <x>2525.00</x> - <y>1500.00</y> + <y>800.00</y> </location> <size> <width>300.00</width> @@ -1746,7 +1902,7 @@ <uid><![CDATA[B426D514-DC42-4FD1-B531-E1D7AA5C8710]]></uid> </SQLField> <labelColor><![CDATA[{1,0.252792,1,1}]]></labelColor> - <labelWindowIndex><![CDATA[22]]></labelWindowIndex> + <labelWindowIndex><![CDATA[29]]></labelWindowIndex> <ui.treeExpanded><![CDATA[1]]></ui.treeExpanded> <uid><![CDATA[5789E112-DB2C-4E5B-AF16-A31BF82C964F]]></uid> </SQLTable> @@ -1755,10 +1911,10 @@ <schema><![CDATA[]]></schema> <location> <x>1300.00</x> - <y>825.00</y> + <y>1575.00</y> </location> <size> - <width>321.00</width> + <width>300.00</width> <height>260.00</height> </size> <zorder>11</zorder> @@ -1854,7 +2010,7 @@ <type><![CDATA[JSONB]]></type> <uid><![CDATA[19EA4839-1B00-4530-AAAD-8ED8BAA1D8F2]]></uid> </SQLField> - <labelWindowIndex><![CDATA[70]]></labelWindowIndex> + <labelWindowIndex><![CDATA[77]]></labelWindowIndex> <ui.treeExpanded><![CDATA[1]]></ui.treeExpanded> <uid><![CDATA[5AB3CB56-BF66-469E-9312-3319872975CB]]></uid> </SQLTable> @@ -1863,7 +2019,7 @@ <schema><![CDATA[]]></schema> <location> <x>75.00</x> - <y>2025.00</y> + <y>2375.00</y> </location> <size> <width>300.00</width> @@ -1925,7 +2081,7 @@ <uid><![CDATA[0F2542DD-39DC-438A-8F5D-DAE2E1A28036]]></uid> </SQLField> <labelColor><![CDATA[{1,0.576372,0,1}]]></labelColor> - <labelWindowIndex><![CDATA[40]]></labelWindowIndex> + <labelWindowIndex><![CDATA[47]]></labelWindowIndex> <PK_KEY_NAME><![CDATA[titresDomainesTypes_pkey]]></PK_KEY_NAME> <ui.treeExpanded><![CDATA[1]]></ui.treeExpanded> <uid><![CDATA[5B37A506-1BCA-40F9-8143-FE932029E29E]]></uid> @@ -1935,7 +2091,7 @@ <schema><![CDATA[]]></schema> <location> <x>2125.00</x> - <y>925.00</y> + <y>2075.00</y> </location> <size> <width>300.00</width> @@ -1961,7 +2117,7 @@ <uid><![CDATA[DF2BA9BC-1FBE-4904-9F46-870E3578863C]]></uid> </SQLField> <labelColor><![CDATA[{0,0.991439,1,1}]]></labelColor> - <labelWindowIndex><![CDATA[55]]></labelWindowIndex> + <labelWindowIndex><![CDATA[62]]></labelWindowIndex> <PK_KEY_NAME><![CDATA[titulaires_pkey]]></PK_KEY_NAME> <ui.treeExpanded><![CDATA[1]]></ui.treeExpanded> <uid><![CDATA[5B51EC84-B01C-4CBC-BAD9-F42238DF8780]]></uid> @@ -1971,7 +2127,7 @@ <schema><![CDATA[]]></schema> <location> <x>75.00</x> - <y>2175.00</y> + <y>2500.00</y> </location> <size> <width>300.00</width> @@ -2015,7 +2171,7 @@ <uid><![CDATA[C23E8283-AFB6-4914-906B-D3133A94656D]]></uid> </SQLField> <labelColor><![CDATA[{1,0.576372,0,1}]]></labelColor> - <labelWindowIndex><![CDATA[23]]></labelWindowIndex> + <labelWindowIndex><![CDATA[30]]></labelWindowIndex> <PK_KEY_NAME><![CDATA[titresDomainesTypes_pkey]]></PK_KEY_NAME> <ui.treeExpanded><![CDATA[1]]></ui.treeExpanded> <uid><![CDATA[5E805DDA-704C-4F3E-B32C-6B3BB3087DAF]]></uid> @@ -2025,7 +2181,7 @@ <schema><![CDATA[]]></schema> <location> <x>75.00</x> - <y>950.00</y> + <y>1700.00</y> </location> <size> <width>300.00</width> @@ -2066,16 +2222,33 @@ <uid><![CDATA[7D86A175-921B-4373-8F51-2B1DCEE79FB1]]></uid> </SQLField> <labelColor><![CDATA[{1,0.576372,0,1}]]></labelColor> - <labelWindowIndex><![CDATA[2]]></labelWindowIndex> + <labelWindowIndex><![CDATA[9]]></labelWindowIndex> <ui.treeExpanded><![CDATA[1]]></ui.treeExpanded> <uid><![CDATA[68FF9922-BC9D-4CCD-8DFD-14A6AC2D0596]]></uid> </SQLTable> + <SQLCanvasArea> + <name><![CDATA[Canvas Area1_2]]></name> + <comment><![CDATA[]]></comment> + <location> + <x>25.00</x> + <y>1975.00</y> + </location> + <size> + <width>800.00</width> + <height>325.00</height> + </size> + <zorder>85</zorder> + <commentTitle><![CDATA[metas travaux]]></commentTitle> + <labelColor><![CDATA[{0.999996,1,1,1}]]></labelColor> + <labelWindowIndex><![CDATA[4]]></labelWindowIndex> + <uid><![CDATA[6B31E471-E2CF-42E6-B328-6565E7022C64]]></uid> + </SQLCanvasArea> <SQLTable> <name><![CDATA[titres_demarches_liens]]></name> <schema><![CDATA[]]></schema> <location> <x>1300.00</x> - <y>725.00</y> + <y>1475.00</y> </location> <size> <width>300.00</width> @@ -2114,7 +2287,7 @@ <notNull><![CDATA[0]]></notNull> <uid><![CDATA[C9915908-580F-4BF4-ADB7-54CEFC385CAC]]></uid> </SQLField> - <labelWindowIndex><![CDATA[46]]></labelWindowIndex> + <labelWindowIndex><![CDATA[53]]></labelWindowIndex> <ui.treeExpanded><![CDATA[1]]></ui.treeExpanded> <uid><![CDATA[6B536837-7C4E-4B35-9FD6-AA2D4D6912C8]]></uid> </SQLTable> @@ -2123,7 +2296,7 @@ <schema><![CDATA[]]></schema> <location> <x>2525.00</x> - <y>2250.00</y> + <y>75.00</y> </location> <size> <width>300.00</width> @@ -2162,7 +2335,7 @@ <uid><![CDATA[14E21955-E95E-4257-BAFC-41CC09DE0C66]]></uid> </SQLField> <labelColor><![CDATA[{1,0.252792,1,1}]]></labelColor> - <labelWindowIndex><![CDATA[3]]></labelWindowIndex> + <labelWindowIndex><![CDATA[10]]></labelWindowIndex> <ui.treeExpanded><![CDATA[1]]></ui.treeExpanded> <uid><![CDATA[73183D55-CF41-41AA-97F4-26CB28C8C1D0]]></uid> </SQLTable> @@ -2171,7 +2344,7 @@ <comment><![CDATA[]]></comment> <location> <x>2075.00</x> - <y>1100.00</y> + <y>2250.00</y> </location> <size> <width>800.00</width> @@ -2180,7 +2353,7 @@ <zorder>56</zorder> <commentTitle><![CDATA[calendrier]]></commentTitle> <labelColor><![CDATA[{0.999996,1,1,1}]]></labelColor> - <labelWindowIndex><![CDATA[29]]></labelWindowIndex> + <labelWindowIndex><![CDATA[36]]></labelWindowIndex> <uid><![CDATA[75603180-133C-45D6-83FB-FDC7E3AB41F7]]></uid> </SQLCanvasArea> <SQLTable> @@ -2188,7 +2361,7 @@ <schema><![CDATA[]]></schema> <location> <x>2525.00</x> - <y>200.00</y> + <y>1350.00</y> </location> <size> <width>300.00</width> @@ -2218,7 +2391,7 @@ <uid><![CDATA[E99E0F5A-8A37-4E7E-B957-0F4B94C39353]]></uid> </SQLField> <labelColor><![CDATA[{0,0.991439,1,1}]]></labelColor> - <labelWindowIndex><![CDATA[49]]></labelWindowIndex> + <labelWindowIndex><![CDATA[56]]></labelWindowIndex> <ui.treeExpanded><![CDATA[1]]></ui.treeExpanded> <uid><![CDATA[75C12832-6EA3-44F3-89DA-BEA2067676F3]]></uid> </SQLTable> @@ -2227,7 +2400,7 @@ <comment><![CDATA[]]></comment> <location> <x>25.00</x> - <y>1225.00</y> + <y>425.00</y> </location> <size> <width>800.00</width> @@ -2236,7 +2409,7 @@ <zorder>71</zorder> <commentTitle><![CDATA[autorisations]]></commentTitle> <labelColor><![CDATA[{0.999996,1,1,1}]]></labelColor> - <labelWindowIndex><![CDATA[11]]></labelWindowIndex> + <labelWindowIndex><![CDATA[18]]></labelWindowIndex> <uid><![CDATA[76CC9D17-BE68-4032-A9D8-3242251E027F]]></uid> </SQLCanvasArea> <SQLTable> @@ -2244,7 +2417,7 @@ <schema><![CDATA[]]></schema> <location> <x>2125.00</x> - <y>225.00</y> + <y>1375.00</y> </location> <size> <width>300.00</width> @@ -2291,7 +2464,7 @@ <uid><![CDATA[36EE1E03-7528-4952-9278-99766C2AED85]]></uid> </SQLField> <labelColor><![CDATA[{0,0.991439,1,1}]]></labelColor> - <labelWindowIndex><![CDATA[80]]></labelWindowIndex> + <labelWindowIndex><![CDATA[87]]></labelWindowIndex> <PK_KEY_NAME><![CDATA[substances_pkey]]></PK_KEY_NAME> <ui.treeExpanded><![CDATA[1]]></ui.treeExpanded> <uid><![CDATA[775AF0B5-EA54-48C3-900F-B460AE3CE124]]></uid> @@ -2301,7 +2474,7 @@ <schema><![CDATA[]]></schema> <location> <x>1700.00</x> - <y>1050.00</y> + <y>2100.00</y> </location> <size> <width>300.00</width> @@ -2344,7 +2517,7 @@ <PK_NAME><![CDATA[titresPhasesEmprises_pkey]]></PK_NAME> <uid><![CDATA[3B7954CE-C8DD-47B7-9F76-F4993E284C8A]]></uid> </SQLField> - <labelWindowIndex><![CDATA[54]]></labelWindowIndex> + <labelWindowIndex><![CDATA[61]]></labelWindowIndex> <PK_KEY_NAME><![CDATA[titresPhasesEmprises_pkey]]></PK_KEY_NAME> <ui.treeExpanded><![CDATA[1]]></ui.treeExpanded> <uid><![CDATA[78D10BC2-4387-4908-9735-884C8DE1BC49]]></uid> @@ -2354,13 +2527,29 @@ <schema><![CDATA[]]></schema> <location> <x>475.00</x> - <y>1625.00</y> + <y>75.00</y> </location> <size> <width>300.00</width> <height>150.00</height> </size> <zorder>66</zorder> + <SQLField> + <name><![CDATA[administration_id]]></name> + <type><![CDATA[CHARACTER VARYING(128)]]></type> + <referencesField>id</referencesField> + <referencesTable>administrations</referencesTable> + <referencesField><![CDATA[id]]></referencesField> + <referencesTable><![CDATA[administrations]]></referencesTable> + <sourceCardinality>0</sourceCardinality> + <destinationCardinality>0</destinationCardinality> + <referencesFieldUID><![CDATA[4E031F2C-5C24-4337-8847-3575EFE39220]]></referencesFieldUID> + <referencesTableUID><![CDATA[4999AEFD-F11A-4578-A6DB-3B815370B0F3]]></referencesTableUID> + <autoIncrement><![CDATA[0]]></autoIncrement> + <forcedUnique><![CDATA[0]]></forcedUnique> + <notNull><![CDATA[0]]></notNull> + <uid><![CDATA[D58ADED5-76A5-4077-A24F-F7597650268C]]></uid> + </SQLField> <SQLField> <name><![CDATA[titre_type_id]]></name> <type><![CDATA[CHARACTER VARYING(3)]]></type> @@ -2391,22 +2580,6 @@ <notNull><![CDATA[0]]></notNull> <uid><![CDATA[60E610B1-043C-4A0C-AEF9-775484A6E151]]></uid> </SQLField> - <SQLField> - <name><![CDATA[administration_id]]></name> - <type><![CDATA[CHARACTER VARYING(128)]]></type> - <referencesField>id</referencesField> - <referencesTable>administrations</referencesTable> - <referencesField><![CDATA[id]]></referencesField> - <referencesTable><![CDATA[administrations]]></referencesTable> - <sourceCardinality>0</sourceCardinality> - <destinationCardinality>0</destinationCardinality> - <referencesFieldUID><![CDATA[4E031F2C-5C24-4337-8847-3575EFE39220]]></referencesFieldUID> - <referencesTableUID><![CDATA[4999AEFD-F11A-4578-A6DB-3B815370B0F3]]></referencesTableUID> - <autoIncrement><![CDATA[0]]></autoIncrement> - <forcedUnique><![CDATA[0]]></forcedUnique> - <notNull><![CDATA[0]]></notNull> - <uid><![CDATA[D58ADED5-76A5-4077-A24F-F7597650268C]]></uid> - </SQLField> <SQLField> <name><![CDATA[lecture_interdit]]></name> <type><![CDATA[BOOLEAN]]></type> @@ -2429,7 +2602,7 @@ <uid><![CDATA[F1D8F057-388E-4E07-95C3-AC1840BBCAAA]]></uid> </SQLField> <labelColor><![CDATA[{1,0.149131,0,1}]]></labelColor> - <labelWindowIndex><![CDATA[17]]></labelWindowIndex> + <labelWindowIndex><![CDATA[24]]></labelWindowIndex> <ui.treeExpanded><![CDATA[1]]></ui.treeExpanded> <uid><![CDATA[7904B95B-77C9-42EF-B588-C8D2ADD9094E]]></uid> </SQLTable> @@ -2438,7 +2611,7 @@ <schema><![CDATA[]]></schema> <location> <x>1700.00</x> - <y>1350.00</y> + <y>1325.00</y> </location> <size> <width>300.00</width> @@ -2482,7 +2655,7 @@ <PK_NAME><![CDATA[titresTitulaires_pkey]]></PK_NAME> <uid><![CDATA[9AE4694A-F23B-401A-B1F6-BB2265ADCF0D]]></uid> </SQLField> - <labelWindowIndex><![CDATA[60]]></labelWindowIndex> + <labelWindowIndex><![CDATA[67]]></labelWindowIndex> <PK_KEY_NAME><![CDATA[titresTitulaires_pkey]]></PK_KEY_NAME> <ui.treeExpanded><![CDATA[1]]></ui.treeExpanded> <uid><![CDATA[79F34EF2-879C-4C3D-B7A8-E6385E6FE36F]]></uid> @@ -2492,7 +2665,7 @@ <schema><![CDATA[]]></schema> <location> <x>2525.00</x> - <y>2350.00</y> + <y>175.00</y> </location> <size> <width>300.00</width> @@ -2534,7 +2707,7 @@ <unique><![CDATA[0]]></unique> </SQLField> <labelColor><![CDATA[{1,0.252792,1,1}]]></labelColor> - <labelWindowIndex><![CDATA[21]]></labelWindowIndex> + <labelWindowIndex><![CDATA[28]]></labelWindowIndex> <ui.treeExpanded><![CDATA[1]]></ui.treeExpanded> <uid><![CDATA[7F0FBFCA-73A0-44CC-98BA-C80C9A8A8B0C]]></uid> </SQLTable> @@ -2543,7 +2716,7 @@ <schema><![CDATA[]]></schema> <location> <x>475.00</x> - <y>875.00</y> + <y>1625.00</y> </location> <size> <width>300.00</width> @@ -2589,7 +2762,7 @@ <uid><![CDATA[1412A576-538E-4D2F-8B6C-0E840F139B4E]]></uid> </SQLField> <labelColor><![CDATA[{1,0.576372,0,1}]]></labelColor> - <labelWindowIndex><![CDATA[68]]></labelWindowIndex> + <labelWindowIndex><![CDATA[75]]></labelWindowIndex> <ui.treeExpanded><![CDATA[1]]></ui.treeExpanded> <uid><![CDATA[85081038-711D-4859-B83D-2A73209B9BB3]]></uid> </SQLTable> @@ -2598,7 +2771,7 @@ <schema><![CDATA[]]></schema> <location> <x>1700.00</x> - <y>1450.00</y> + <y>2200.00</y> </location> <size> <width>300.00</width> @@ -2639,7 +2812,7 @@ <uid><![CDATA[3DC67107-BDCB-4F58-80AF-637847BA254B]]></uid> <unique><![CDATA[0]]></unique> </SQLField> - <labelWindowIndex><![CDATA[69]]></labelWindowIndex> + <labelWindowIndex><![CDATA[76]]></labelWindowIndex> <ui.treeExpanded><![CDATA[1]]></ui.treeExpanded> <uid><![CDATA[85AD5721-B812-455D-8101-E2FE4EF8AAAC]]></uid> </SQLTable> @@ -2648,13 +2821,29 @@ <schema><![CDATA[]]></schema> <location> <x>75.00</x> - <y>1750.00</y> + <y>200.00</y> </location> <size> <width>300.00</width> <height>150.00</height> </size> <zorder>65</zorder> + <SQLField> + <name><![CDATA[administration_id]]></name> + <type><![CDATA[CHARACTER VARYING(128)]]></type> + <referencesField>id</referencesField> + <referencesTable>administrations</referencesTable> + <referencesField><![CDATA[id]]></referencesField> + <referencesTable><![CDATA[administrations]]></referencesTable> + <sourceCardinality>0</sourceCardinality> + <destinationCardinality>0</destinationCardinality> + <referencesFieldUID><![CDATA[4E031F2C-5C24-4337-8847-3575EFE39220]]></referencesFieldUID> + <referencesTableUID><![CDATA[4999AEFD-F11A-4578-A6DB-3B815370B0F3]]></referencesTableUID> + <autoIncrement><![CDATA[0]]></autoIncrement> + <forcedUnique><![CDATA[0]]></forcedUnique> + <notNull><![CDATA[0]]></notNull> + <uid><![CDATA[BDB514B4-06F2-4A82-B1AF-902CF86E2457]]></uid> + </SQLField> <SQLField> <name><![CDATA[titre_type_id]]></name> <type><![CDATA[CHARACTER VARYING(3)]]></type> @@ -2683,22 +2872,6 @@ <referencesTableUID><![CDATA[CF26D589-8A92-4D86-B5C0-810EF06CE850]]></referencesTableUID> <uid><![CDATA[E687C151-2F12-4BB8-A98F-0ED8A43451FC]]></uid> </SQLField> - <SQLField> - <name><![CDATA[administration_id]]></name> - <type><![CDATA[CHARACTER VARYING(128)]]></type> - <referencesField>id</referencesField> - <referencesTable>administrations</referencesTable> - <referencesField><![CDATA[id]]></referencesField> - <referencesTable><![CDATA[administrations]]></referencesTable> - <sourceCardinality>0</sourceCardinality> - <destinationCardinality>0</destinationCardinality> - <referencesFieldUID><![CDATA[4E031F2C-5C24-4337-8847-3575EFE39220]]></referencesFieldUID> - <referencesTableUID><![CDATA[4999AEFD-F11A-4578-A6DB-3B815370B0F3]]></referencesTableUID> - <autoIncrement><![CDATA[0]]></autoIncrement> - <forcedUnique><![CDATA[0]]></forcedUnique> - <notNull><![CDATA[0]]></notNull> - <uid><![CDATA[BDB514B4-06F2-4A82-B1AF-902CF86E2457]]></uid> - </SQLField> <SQLField> <name><![CDATA[titres_modification_interdit]]></name> <type><![CDATA[BOOLEAN]]></type> @@ -2721,7 +2894,7 @@ <uid><![CDATA[38A0CB1C-D10C-4413-AD6B-02893A02D771]]></uid> </SQLField> <labelColor><![CDATA[{1,0.149131,0,1}]]></labelColor> - <labelWindowIndex><![CDATA[16]]></labelWindowIndex> + <labelWindowIndex><![CDATA[23]]></labelWindowIndex> <ui.treeExpanded><![CDATA[1]]></ui.treeExpanded> <uid><![CDATA[867BD5C8-20C0-445B-B498-1CF7073A133A]]></uid> </SQLTable> @@ -2730,7 +2903,7 @@ <schema><![CDATA[]]></schema> <location> <x>1300.00</x> - <y>575.00</y> + <y>1325.00</y> </location> <size> <width>300.00</width> @@ -2775,7 +2948,7 @@ <type><![CDATA[DATE]]></type> <uid><![CDATA[B3C3BDAE-5B08-4238-838D-9D803EDD934C]]></uid> </SQLField> - <labelWindowIndex><![CDATA[52]]></labelWindowIndex> + <labelWindowIndex><![CDATA[59]]></labelWindowIndex> <ui.treeExpanded><![CDATA[1]]></ui.treeExpanded> <uid><![CDATA[8CF636D8-15EE-4D1D-96C5-C243561BF6E8]]></uid> </SQLTable> @@ -2784,7 +2957,7 @@ <schema><![CDATA[]]></schema> <location> <x>475.00</x> - <y>2025.00</y> + <y>2375.00</y> </location> <size> <width>300.00</width> @@ -2825,7 +2998,7 @@ <uid><![CDATA[17871C8F-E087-46B7-A008-91EFA7B377A4]]></uid> </SQLField> <labelColor><![CDATA[{1,0.576372,0,1}]]></labelColor> - <labelWindowIndex><![CDATA[1]]></labelWindowIndex> + <labelWindowIndex><![CDATA[5]]></labelWindowIndex> <ui.treeExpanded><![CDATA[1]]></ui.treeExpanded> <uid><![CDATA[8EA15BE0-4D97-44BB-A03A-4699CDFAB4F0]]></uid> </SQLTable> @@ -2834,7 +3007,7 @@ <comment><![CDATA[]]></comment> <location> <x>2075.00</x> - <y>25.00</y> + <y>1175.00</y> </location> <size> <width>800.00</width> @@ -2843,7 +3016,7 @@ <zorder>51</zorder> <commentTitle><![CDATA[substances]]></commentTitle> <labelColor><![CDATA[{0.999996,1,1,1}]]></labelColor> - <labelWindowIndex><![CDATA[28]]></labelWindowIndex> + <labelWindowIndex><![CDATA[35]]></labelWindowIndex> <uid><![CDATA[942D7EA4-ACC3-40DD-81AE-CC18E83ACD16]]></uid> </SQLCanvasArea> <SQLTable> @@ -2851,7 +3024,7 @@ <schema><![CDATA[]]></schema> <location> <x>475.00</x> - <y>125.00</y> + <y>875.00</y> </location> <size> <width>300.00</width> @@ -2912,7 +3085,7 @@ <uid><![CDATA[42FCF264-576A-4D2E-B0E8-5E5FB5394870]]></uid> </SQLField> <labelColor><![CDATA[{1,0.576372,0,1}]]></labelColor> - <labelWindowIndex><![CDATA[71]]></labelWindowIndex> + <labelWindowIndex><![CDATA[78]]></labelWindowIndex> <PK_KEY_NAME><![CDATA[titresTypes_pkey]]></PK_KEY_NAME> <ui.treeExpanded><![CDATA[1]]></ui.treeExpanded> <uid><![CDATA[966F28ED-D764-4EB7-9564-478C7FE61014]]></uid> @@ -2922,7 +3095,7 @@ <schema><![CDATA[]]></schema> <location> <x>1700.00</x> - <y>575.00</y> + <y>1625.00</y> </location> <size> <width>300.00</width> @@ -2978,7 +3151,7 @@ <type><![CDATA[INTEGER]]></type> <uid><![CDATA[9A284B36-7F38-4779-9E1F-5DC7F66B139A]]></uid> </SQLField> - <labelWindowIndex><![CDATA[73]]></labelWindowIndex> + <labelWindowIndex><![CDATA[80]]></labelWindowIndex> <PK_KEY_NAME><![CDATA[titresSubstancesPrincipales_pkey]]></PK_KEY_NAME> <ui.treeExpanded><![CDATA[1]]></ui.treeExpanded> <uid><![CDATA[9EA61901-60D6-4557-BF34-94F1AFB14553]]></uid> @@ -2988,7 +3161,7 @@ <schema><![CDATA[]]></schema> <location> <x>75.00</x> - <y>1275.00</y> + <y>475.00</y> </location> <size> <width>300.00</width> @@ -3019,7 +3192,7 @@ <uid><![CDATA[F3E9BDCA-AD4F-42A8-BDA9-692477AEB70E]]></uid> </SQLField> <labelColor><![CDATA[{1,0.149131,0,1}]]></labelColor> - <labelWindowIndex><![CDATA[15]]></labelWindowIndex> + <labelWindowIndex><![CDATA[22]]></labelWindowIndex> <ui.treeExpanded><![CDATA[1]]></ui.treeExpanded> <uid><![CDATA[9F5A1999-9986-48B2-A91D-8C21D2431F84]]></uid> </SQLTable> @@ -3028,7 +3201,7 @@ <schema><![CDATA[]]></schema> <location> <x>2525.00</x> - <y>1925.00</y> + <y>475.00</y> </location> <size> <width>300.00</width> @@ -3056,7 +3229,7 @@ <uid><![CDATA[D23E4B9C-3C9C-4E67-8654-EA130D1E1490]]></uid> </SQLField> <labelColor><![CDATA[{1,0.252792,1,1}]]></labelColor> - <labelWindowIndex><![CDATA[27]]></labelWindowIndex> + <labelWindowIndex><![CDATA[34]]></labelWindowIndex> <ui.treeExpanded><![CDATA[1]]></ui.treeExpanded> <uid><![CDATA[A3ACC9B4-FB90-4BBF-A74F-AE29EA10FD1D]]></uid> </SQLTable> @@ -3065,7 +3238,7 @@ <schema><![CDATA[]]></schema> <location> <x>900.00</x> - <y>575.00</y> + <y>1325.00</y> </location> <size> <width>300.00</width> @@ -3144,7 +3317,7 @@ <referencesTableUID><![CDATA[A8AC6C3C-BEF3-47F5-9BD6-018222E08D22]]></referencesTableUID> <uid><![CDATA[58C41051-2340-4091-95BE-5BEAF4CA7866]]></uid> </SQLField> - <labelWindowIndex><![CDATA[75]]></labelWindowIndex> + <labelWindowIndex><![CDATA[82]]></labelWindowIndex> <PK_KEY_NAME><![CDATA[titresPhases_pkey]]></PK_KEY_NAME> <ui.treeExpanded><![CDATA[1]]></ui.treeExpanded> <uid><![CDATA[A8AC6C3C-BEF3-47F5-9BD6-018222E08D22]]></uid> @@ -3154,7 +3327,7 @@ <comment><![CDATA[]]></comment> <location> <x>2075.00</x> - <y>1875.00</y> + <y>425.00</y> </location> <size> <width>800.00</width> @@ -3163,7 +3336,7 @@ <zorder>75</zorder> <commentTitle><![CDATA[utilisateurs]]></commentTitle> <labelColor><![CDATA[{0.999996,1,1,1}]]></labelColor> - <labelWindowIndex><![CDATA[6]]></labelWindowIndex> + <labelWindowIndex><![CDATA[13]]></labelWindowIndex> <uid><![CDATA[AA367D52-D71B-4452-954C-BDB38ACBB2E5]]></uid> </SQLCanvasArea> <SQLCanvasArea> @@ -3171,7 +3344,7 @@ <comment><![CDATA[]]></comment> <location> <x>2075.00</x> - <y>1450.00</y> + <y>750.00</y> </location> <size> <width>800.00</width> @@ -3180,7 +3353,7 @@ <zorder>50</zorder> <commentTitle><![CDATA[entreprises]]></commentTitle> <labelColor><![CDATA[{0.999996,1,1,1}]]></labelColor> - <labelWindowIndex><![CDATA[26]]></labelWindowIndex> + <labelWindowIndex><![CDATA[33]]></labelWindowIndex> <uid><![CDATA[AA750D84-9D52-4F27-BB4B-F691D0E01386]]></uid> </SQLCanvasArea> <SQLTable> @@ -3188,7 +3361,7 @@ <schema><![CDATA[]]></schema> <location> <x>475.00</x> - <y>1275.00</y> + <y>475.00</y> </location> <size> <width>300.00</width> @@ -3228,7 +3401,7 @@ <uid><![CDATA[2DFFC4F7-442E-4D6F-A264-4DDE448D7D91]]></uid> </SQLField> <labelColor><![CDATA[{1,0.149131,0,1}]]></labelColor> - <labelWindowIndex><![CDATA[14]]></labelWindowIndex> + <labelWindowIndex><![CDATA[21]]></labelWindowIndex> <ui.treeExpanded><![CDATA[1]]></ui.treeExpanded> <uid><![CDATA[AB459D5A-E351-4539-9F42-4A6FA5DDCBD1]]></uid> </SQLTable> @@ -3237,7 +3410,7 @@ <schema><![CDATA[]]></schema> <location> <x>2125.00</x> - <y>775.00</y> + <y>1925.00</y> </location> <size> <width>300.00</width> @@ -3278,17 +3451,77 @@ <uid><![CDATA[E0F15A48-3ED1-44EA-A0E2-F4E516E31229]]></uid> </SQLField> <labelColor><![CDATA[{0,0.991439,1,1}]]></labelColor> - <labelWindowIndex><![CDATA[51]]></labelWindowIndex> + <labelWindowIndex><![CDATA[58]]></labelWindowIndex> <PK_KEY_NAME><![CDATA[titulaires_pkey]]></PK_KEY_NAME> <ui.treeExpanded><![CDATA[1]]></ui.treeExpanded> <uid><![CDATA[AEDB5AB0-51CF-4CF9-A829-1248893107D9]]></uid> </SQLTable> + <SQLTable> + <name><![CDATA[travaux_demarches_types__etapes_types]]></name> + <schema><![CDATA[]]></schema> + <location> + <x>75.00</x> + <y>2150.00</y> + </location> + <size> + <width>325.00</width> + <height>100.00</height> + </size> + <zorder>88</zorder> + <SQLField> + <name><![CDATA[travaux_demarche_type_id]]></name> + <type><![CDATA[CHARACTER VARYING(3)]]></type> + <primaryKey>1</primaryKey> + <referencesField>id</referencesField> + <referencesTable>travaux_demarches_types</referencesTable> + <referencesField><![CDATA[id]]></referencesField> + <referencesTable><![CDATA[travaux_demarches_types]]></referencesTable> + <sourceCardinality>0</sourceCardinality> + <destinationCardinality>0</destinationCardinality> + <referencesFieldUID><![CDATA[D902653A-C83E-43AC-8B55-E1877BE88BEB]]></referencesFieldUID> + <referencesTableUID><![CDATA[B781A599-85CC-4EDC-8E74-7B0872F97CD0]]></referencesTableUID> + <autoIncrement><![CDATA[0]]></autoIncrement> + <foreignKeyName><![CDATA[titresdomainestypes_domaineid_foreign]]></foreignKeyName> + <notNull><![CDATA[0]]></notNull> + <PK_NAME><![CDATA[titresDomainesTypes_pkey]]></PK_NAME> + <uid><![CDATA[668B3D85-F62D-4A8B-AF64-7870163600A8]]></uid> + </SQLField> + <SQLField> + <name><![CDATA[etape_type_id]]></name> + <type><![CDATA[CHARACTER VARYING(3)]]></type> + <primaryKey>1</primaryKey> + <autoIncrement><![CDATA[0]]></autoIncrement> + <foreignKeyName><![CDATA[titresdomainestypes_typeid_foreign]]></foreignKeyName> + <notNull><![CDATA[0]]></notNull> + <PK_NAME><![CDATA[titresDomainesTypes_pkey]]></PK_NAME> + <uid><![CDATA[2573C64B-76E2-41CB-9007-2CF769B08F1B]]></uid> + </SQLField> + <SQLField> + <name><![CDATA[ordre]]></name> + <type><![CDATA[INTEGER]]></type> + <autoIncrement><![CDATA[0]]></autoIncrement> + <notNull><![CDATA[0]]></notNull> + <uid><![CDATA[072B5BB4-CCA9-482C-8955-1E10B3A38959]]></uid> + </SQLField> + <SQLField> + <name><![CDATA[sections]]></name> + <type><![CDATA[JSONB]]></type> + <autoIncrement><![CDATA[0]]></autoIncrement> + <notNull><![CDATA[0]]></notNull> + <uid><![CDATA[3FCA7F8F-661B-43F0-BE20-181F4AAF23DE]]></uid> + </SQLField> + <labelColor><![CDATA[{1,0.576372,0,1}]]></labelColor> + <labelWindowIndex><![CDATA[8]]></labelWindowIndex> + <PK_KEY_NAME><![CDATA[titresDomainesTypes_pkey]]></PK_KEY_NAME> + <ui.treeExpanded><![CDATA[1]]></ui.treeExpanded> + <uid><![CDATA[B1C39B4D-3291-4093-ADE4-4D90A36C5A3D]]></uid> + </SQLTable> <SQLTable> <name><![CDATA[activites_types]]></name> <schema><![CDATA[]]></schema> <location> <x>475.00</x> - <y>2150.00</y> + <y>2500.00</y> </location> <size> <width>300.00</width> @@ -3335,7 +3568,7 @@ <uid><![CDATA[E8A6A3A0-27FB-4E69-93B1-5B4843D1691F]]></uid> </SQLField> <labelColor><![CDATA[{1,0.576372,0,1}]]></labelColor> - <labelWindowIndex><![CDATA[42]]></labelWindowIndex> + <labelWindowIndex><![CDATA[49]]></labelWindowIndex> <ui.treeExpanded><![CDATA[1]]></ui.treeExpanded> <uid><![CDATA[B1CD38F4-54D5-40B7-9ADE-4AC16939C02F]]></uid> </SQLTable> @@ -3343,8 +3576,8 @@ <name><![CDATA[logs]]></name> <schema><![CDATA[]]></schema> <location> - <x>900.00</x> - <y>1950.00</y> + <x>1325.00</x> + <y>575.00</y> </location> <size> <width>300.00</width> @@ -3392,7 +3625,7 @@ <type><![CDATA[JSONB]]></type> <uid><![CDATA[59189CD6-33CE-4B71-A59B-F759F7F6F4F1]]></uid> </SQLField> - <labelWindowIndex><![CDATA[37]]></labelWindowIndex> + <labelWindowIndex><![CDATA[44]]></labelWindowIndex> <ui.treeExpanded><![CDATA[1]]></ui.treeExpanded> <uid><![CDATA[B3B2C6D6-0C86-4C1C-B82D-0EEEC8FA7DEC]]></uid> </SQLTable> @@ -3401,7 +3634,7 @@ <schema><![CDATA[]]></schema> <location> <x>75.00</x> - <y>175.00</y> + <y>925.00</y> </location> <size> <width>300.00</width> @@ -3430,17 +3663,17 @@ <uid><![CDATA[3869BF56-FE63-442A-AD40-CE05A49DA436]]></uid> </SQLField> <labelColor><![CDATA[{1,0.576372,0,1}]]></labelColor> - <labelWindowIndex><![CDATA[77]]></labelWindowIndex> + <labelWindowIndex><![CDATA[84]]></labelWindowIndex> <PK_KEY_NAME><![CDATA[titresDomainesTypes_pkey]]></PK_KEY_NAME> <ui.treeExpanded><![CDATA[1]]></ui.treeExpanded> <uid><![CDATA[B4DF1C5E-27C3-4C02-AB6A-55ED4A256CE0]]></uid> </SQLTable> <SQLCanvasArea> - <name><![CDATA[Canvas Area1_8]]></name> + <name><![CDATA[Canvas Area1_16]]></name> <comment><![CDATA[]]></comment> <location> <x>850.00</x> - <y>1600.00</y> + <y>2675.00</y> </location> <size> <width>775.00</width> @@ -3449,15 +3682,67 @@ <zorder>55</zorder> <commentTitle><![CDATA[activités]]></commentTitle> <labelColor><![CDATA[{0.999996,1,1,1}]]></labelColor> - <labelWindowIndex><![CDATA[25]]></labelWindowIndex> + <labelWindowIndex><![CDATA[32]]></labelWindowIndex> <uid><![CDATA[B574384A-9F27-4B49-96E4-3066D92FF769]]></uid> </SQLCanvasArea> + <SQLTable> + <name><![CDATA[travaux_demarches_types]]></name> + <schema><![CDATA[]]></schema> + <location> + <x>475.00</x> + <y>2025.00</y> + </location> + <size> + <width>300.00</width> + <height>125.00</height> + </size> + <zorder>86</zorder> + <SQLField> + <name><![CDATA[id]]></name> + <type><![CDATA[CHARACTER VARYING(3)]]></type> + <primaryKey>1</primaryKey> + <autoIncrement><![CDATA[0]]></autoIncrement> + <forcedUnique><![CDATA[1]]></forcedUnique> + <foreignKeyName><![CDATA[titresdomainestypes_domaineid_foreign]]></foreignKeyName> + <notNull><![CDATA[0]]></notNull> + <PK_NAME><![CDATA[titresDomainesTypes_pkey]]></PK_NAME> + <uid><![CDATA[D902653A-C83E-43AC-8B55-E1877BE88BEB]]></uid> + </SQLField> + <SQLField> + <name><![CDATA[nom]]></name> + <type><![CDATA[CHARACTER VARYING]]></type> + <autoIncrement><![CDATA[0]]></autoIncrement> + <foreignKeyName><![CDATA[titresdomainestypes_typeid_foreign]]></foreignKeyName> + <notNull><![CDATA[1]]></notNull> + <PK_NAME><![CDATA[titresDomainesTypes_pkey]]></PK_NAME> + <uid><![CDATA[BF2C1331-84A7-4705-BC56-F5E05AF38A37]]></uid> + </SQLField> + <SQLField> + <name><![CDATA[ordre]]></name> + <type><![CDATA[INTEGER]]></type> + <autoIncrement><![CDATA[0]]></autoIncrement> + <notNull><![CDATA[0]]></notNull> + <uid><![CDATA[A0512EF4-C290-4A00-AA5C-203C43431552]]></uid> + </SQLField> + <SQLField> + <name><![CDATA[description]]></name> + <type><![CDATA[TEXt]]></type> + <autoIncrement><![CDATA[0]]></autoIncrement> + <notNull><![CDATA[0]]></notNull> + <uid><![CDATA[44FCAA07-A969-4CDF-9459-75CD7A367AD6]]></uid> + </SQLField> + <labelColor><![CDATA[{1,0.576372,0,1}]]></labelColor> + <labelWindowIndex><![CDATA[3]]></labelWindowIndex> + <PK_KEY_NAME><![CDATA[titresDomainesTypes_pkey]]></PK_KEY_NAME> + <ui.treeExpanded><![CDATA[1]]></ui.treeExpanded> + <uid><![CDATA[B781A599-85CC-4EDC-8E74-7B0872F97CD0]]></uid> + </SQLTable> <SQLTable> <name><![CDATA[titres_types__demarches_types]]></name> <schema><![CDATA[]]></schema> <location> <x>75.00</x> - <y>300.00</y> + <y>1050.00</y> </location> <size> <width>300.00</width> @@ -3540,7 +3825,7 @@ <uid><![CDATA[F8AEB08B-A791-4A63-B517-6818230A6824]]></uid> </SQLField> <labelColor><![CDATA[{1,0.576372,0,1}]]></labelColor> - <labelWindowIndex><![CDATA[72]]></labelWindowIndex> + <labelWindowIndex><![CDATA[79]]></labelWindowIndex> <PK_KEY_NAME><![CDATA[titresTypesPhases_pkey]]></PK_KEY_NAME> <ui.treeExpanded><![CDATA[1]]></ui.treeExpanded> <uid><![CDATA[B954C2C8-756B-48D2-8929-B49F397A30E7]]></uid> @@ -3550,7 +3835,7 @@ <schema><![CDATA[]]></schema> <location> <x>2125.00</x> - <y>75.00</y> + <y>1225.00</y> </location> <size> <width>300.00</width> @@ -3616,7 +3901,7 @@ <uid><![CDATA[A86C39D2-0C1E-4EC5-A59F-715FC4C75DEB]]></uid> </SQLField> <labelColor><![CDATA[{0,0.991439,1,1}]]></labelColor> - <labelWindowIndex><![CDATA[48]]></labelWindowIndex> + <labelWindowIndex><![CDATA[55]]></labelWindowIndex> <PK_KEY_NAME><![CDATA[substances_pkey]]></PK_KEY_NAME> <ui.treeExpanded><![CDATA[1]]></ui.treeExpanded> <uid><![CDATA[BBBF2BF3-F993-4278-B61D-0A2A0F6C4053]]></uid> @@ -3626,7 +3911,7 @@ <schema><![CDATA[]]></schema> <location> <x>2525.00</x> - <y>925.00</y> + <y>2075.00</y> </location> <size> <width>300.00</width> @@ -3665,7 +3950,7 @@ <uid><![CDATA[F19297EF-C596-4FDF-AC23-53DB9793425E]]></uid> </SQLField> <labelColor><![CDATA[{0,0.991439,1,1}]]></labelColor> - <labelWindowIndex><![CDATA[53]]></labelWindowIndex> + <labelWindowIndex><![CDATA[60]]></labelWindowIndex> <PK_KEY_NAME><![CDATA[titulaires_pkey]]></PK_KEY_NAME> <ui.treeExpanded><![CDATA[1]]></ui.treeExpanded> <uid><![CDATA[CAA10313-FC67-4EC6-9C8B-9D35F1BB3AAE]]></uid> @@ -3675,7 +3960,7 @@ <schema><![CDATA[]]></schema> <location> <x>2125.00</x> - <y>1925.00</y> + <y>475.00</y> </location> <size> <width>327.00</width> @@ -3754,16 +4039,123 @@ <uid><![CDATA[F29C6575-1535-430F-8D0F-E5FF117783FC]]></uid> </SQLField> <labelColor><![CDATA[{1,0.252792,1,1}]]></labelColor> - <labelWindowIndex><![CDATA[35]]></labelWindowIndex> + <labelWindowIndex><![CDATA[42]]></labelWindowIndex> <ui.treeExpanded><![CDATA[1]]></ui.treeExpanded> <uid><![CDATA[CADD9132-889D-4F18-AAC1-9BF73D38838D]]></uid> </SQLTable> + <SQLTable> + <name><![CDATA[titres_travaux_etapes]]></name> + <schema><![CDATA[]]></schema> + <location> + <x>1300.00</x> + <y>2400.00</y> + </location> + <size> + <width>275.00</width> + <height>200.00</height> + </size> + <zorder>84</zorder> + <SQLField> + <name><![CDATA[id]]></name> + <type><![CDATA[CHARACTER VARYING(128)]]></type> + <primaryKey>1</primaryKey> + <autoIncrement><![CDATA[0]]></autoIncrement> + <forcedUnique><![CDATA[1]]></forcedUnique> + <notNull><![CDATA[0]]></notNull> + <uid><![CDATA[288C6628-A413-45AA-AF6B-592AFB90DF11]]></uid> + <unique><![CDATA[0]]></unique> + </SQLField> + <SQLField> + <name><![CDATA[titre_travaux_demarche_id]]></name> + <type><![CDATA[CHARACTER VARYING(128)]]></type> + <referencesField>id</referencesField> + <referencesTable>titres_travaux_demarches</referencesTable> + <referencesField><![CDATA[id]]></referencesField> + <referencesTable><![CDATA[titres_travaux_demarches]]></referencesTable> + <sourceCardinality>0</sourceCardinality> + <destinationCardinality>0</destinationCardinality> + <referencesFieldUID><![CDATA[E279DAAD-910C-4ECD-92E2-A1199C2D7C05]]></referencesFieldUID> + <referencesTableUID><![CDATA[2F5C31FD-5129-4C53-8FB9-DA8D718BF23E]]></referencesTableUID> + <autoIncrement><![CDATA[0]]></autoIncrement> + <connectorMidPoint><![CDATA[1214.000000]]></connectorMidPoint> + <notNull><![CDATA[0]]></notNull> + <uid><![CDATA[C5845621-FE79-45D8-9332-40646C5F0CA7]]></uid> + </SQLField> + <SQLField> + <name><![CDATA[type_id]]></name> + <type><![CDATA[CHARACTER VARYING(3)]]></type> + <referencesField>id</referencesField> + <referencesTable>etapes_types</referencesTable> + <referencesField><![CDATA[id]]></referencesField> + <referencesTable><![CDATA[etapes_types]]></referencesTable> + <sourceCardinality>0</sourceCardinality> + <destinationCardinality>0</destinationCardinality> + <referencesFieldUID><![CDATA[4E0EB8CE-A69A-4C6B-A8BE-ECB63E3E80B5]]></referencesFieldUID> + <referencesTableUID><![CDATA[85081038-711D-4859-B83D-2A73209B9BB3]]></referencesTableUID> + <autoIncrement><![CDATA[0]]></autoIncrement> + <notNull><![CDATA[0]]></notNull> + <uid><![CDATA[FE8644C9-C794-42AB-BCE9-1ED0C22E771E]]></uid> + </SQLField> + <SQLField> + <name><![CDATA[statut_id]]></name> + <type><![CDATA[CHARACTER VARYING(3)]]></type> + <referencesField>id</referencesField> + <referencesTable>etapes_statuts</referencesTable> + <referencesField><![CDATA[id]]></referencesField> + <referencesTable><![CDATA[etapes_statuts]]></referencesTable> + <sourceCardinality>0</sourceCardinality> + <destinationCardinality>0</destinationCardinality> + <referencesFieldUID><![CDATA[082067CC-7463-419D-BF62-33336DDF6DC5]]></referencesFieldUID> + <referencesTableUID><![CDATA[1C0B9E2E-6312-4ED7-BA16-DFFDF66269E0]]></referencesTableUID> + <autoIncrement><![CDATA[0]]></autoIncrement> + <notNull><![CDATA[1]]></notNull> + <uid><![CDATA[17B86447-4334-4A08-B0AC-AE15AD228691]]></uid> + </SQLField> + <SQLField> + <name><![CDATA[ordre]]></name> + <type><![CDATA[INTEGER]]></type> + <autoIncrement><![CDATA[0]]></autoIncrement> + <notNull><![CDATA[0]]></notNull> + <uid><![CDATA[2DE0D25D-D613-45A4-9B56-C6B4AA557EFD]]></uid> + </SQLField> + <SQLField> + <name><![CDATA[date]]></name> + <type><![CDATA[DATE]]></type> + <autoIncrement><![CDATA[0]]></autoIncrement> + <notNull><![CDATA[1]]></notNull> + <uid><![CDATA[E9CBAE1F-67D8-4EDD-BEDE-B7846C76B557]]></uid> + </SQLField> + <SQLField> + <name><![CDATA[duree]]></name> + <type><![CDATA[INTEGER]]></type> + <autoIncrement><![CDATA[0]]></autoIncrement> + <notNull><![CDATA[1]]></notNull> + <uid><![CDATA[B29A84FC-8A79-45DD-90BA-2BFC8CADB47D]]></uid> + </SQLField> + <SQLField> + <name><![CDATA[surface]]></name> + <type><![CDATA[REAL]]></type> + <autoIncrement><![CDATA[0]]></autoIncrement> + <notNull><![CDATA[0]]></notNull> + <uid><![CDATA[BABA201F-FA14-4C53-AFEA-C966B4FC4ED6]]></uid> + </SQLField> + <SQLField> + <name><![CDATA[contenu]]></name> + <type><![CDATA[JSONB]]></type> + <autoIncrement><![CDATA[0]]></autoIncrement> + <notNull><![CDATA[0]]></notNull> + <uid><![CDATA[AA2412D3-7931-4C3E-BBDF-6B1328F31B3C]]></uid> + </SQLField> + <labelWindowIndex><![CDATA[2]]></labelWindowIndex> + <ui.treeExpanded><![CDATA[1]]></ui.treeExpanded> + <uid><![CDATA[CCBDC7F4-1FC5-494D-965F-B21B54FA7BC6]]></uid> + </SQLTable> <SQLTable> <name><![CDATA[titres_statuts]]></name> <schema><![CDATA[]]></schema> <location> <x>475.00</x> - <y>275.00</y> + <y>1025.00</y> </location> <size> <width>300.00</width> @@ -3794,7 +4186,7 @@ <uid><![CDATA[61F4ADAD-DD53-4EEF-AD7E-E60194ABBD27]]></uid> </SQLField> <labelColor><![CDATA[{1,0.576372,0,1}]]></labelColor> - <labelWindowIndex><![CDATA[65]]></labelWindowIndex> + <labelWindowIndex><![CDATA[72]]></labelWindowIndex> <ui.treeExpanded><![CDATA[1]]></ui.treeExpanded> <uid><![CDATA[CF26D589-8A92-4D86-B5C0-810EF06CE850]]></uid> </SQLTable> @@ -3803,7 +4195,7 @@ <schema><![CDATA[]]></schema> <location> <x>1700.00</x> - <y>700.00</y> + <y>1750.00</y> </location> <size> <width>300.00</width> @@ -3878,7 +4270,7 @@ <type><![CDATA[BOOLEAN]]></type> <uid><![CDATA[847268C3-8C87-43F2-A6B0-C98906920CBA]]></uid> </SQLField> - <labelWindowIndex><![CDATA[76]]></labelWindowIndex> + <labelWindowIndex><![CDATA[83]]></labelWindowIndex> <PK_KEY_NAME><![CDATA[titresGeoPoints_pkey]]></PK_KEY_NAME> <ui.treeExpanded><![CDATA[1]]></ui.treeExpanded> <uid><![CDATA[DAE4EBB0-7223-4140-9A57-0E5C284AA7A8]]></uid> @@ -3888,7 +4280,7 @@ <schema><![CDATA[]]></schema> <location> <x>2525.00</x> - <y>2450.00</y> + <y>275.00</y> </location> <size> <width>300.00</width> @@ -3914,7 +4306,7 @@ <unique><![CDATA[0]]></unique> </SQLField> <labelColor><![CDATA[{1,0.252792,1,1}]]></labelColor> - <labelWindowIndex><![CDATA[20]]></labelWindowIndex> + <labelWindowIndex><![CDATA[27]]></labelWindowIndex> <ui.treeExpanded><![CDATA[1]]></ui.treeExpanded> <uid><![CDATA[DBD72B2F-EA8C-4DCE-9A6D-CCDC7699FDCA]]></uid> </SQLTable> @@ -3923,7 +4315,7 @@ <comment><![CDATA[]]></comment> <location> <x>25.00</x> - <y>25.00</y> + <y>775.00</y> </location> <size> <width>800.00</width> @@ -3932,7 +4324,7 @@ <zorder>57</zorder> <commentTitle><![CDATA[metas]]></commentTitle> <labelColor><![CDATA[{0.999996,1,1,1}]]></labelColor> - <labelWindowIndex><![CDATA[24]]></labelWindowIndex> + <labelWindowIndex><![CDATA[31]]></labelWindowIndex> <uid><![CDATA[EE5A393B-D78D-4F86-BB6B-D5C86BB8A5C9]]></uid> </SQLCanvasArea> <SQLTable> @@ -3940,7 +4332,7 @@ <schema><![CDATA[]]></schema> <location> <x>475.00</x> - <y>750.00</y> + <y>1500.00</y> </location> <size> <width>300.00</width> @@ -3971,16 +4363,33 @@ <uid><![CDATA[869793BF-D52B-45A9-8325-45C11526E6E2]]></uid> </SQLField> <labelColor><![CDATA[{1,0.576372,0,1}]]></labelColor> - <labelWindowIndex><![CDATA[50]]></labelWindowIndex> + <labelWindowIndex><![CDATA[57]]></labelWindowIndex> <ui.treeExpanded><![CDATA[1]]></ui.treeExpanded> <uid><![CDATA[F0C31758-CA5A-4942-9447-860CD9EB442B]]></uid> </SQLTable> + <SQLCanvasArea> + <name><![CDATA[Canvas Area1_8]]></name> + <comment><![CDATA[]]></comment> + <location> + <x>850.00</x> + <y>2350.00</y> + </location> + <size> + <width>775.00</width> + <height>300.00</height> + </size> + <zorder>82</zorder> + <commentTitle><![CDATA[travaux]]></commentTitle> + <labelColor><![CDATA[{0.999996,1,1,1}]]></labelColor> + <labelWindowIndex><![CDATA[1]]></labelWindowIndex> + <uid><![CDATA[F228D7BB-113D-4BEA-BEAD-31E62E98B758]]></uid> + </SQLCanvasArea> <SQLTable> <name><![CDATA[geo_systemes]]></name> <schema><![CDATA[]]></schema> <location> <x>2125.00</x> - <y>500.00</y> + <y>1650.00</y> </location> <size> <width>300.00</width> @@ -4003,7 +4412,7 @@ <uid><![CDATA[22E3217C-CFA5-4E24-A8A4-585B8263051A]]></uid> </SQLField> <labelColor><![CDATA[{0,0.991439,1,1}]]></labelColor> - <labelWindowIndex><![CDATA[36]]></labelWindowIndex> + <labelWindowIndex><![CDATA[43]]></labelWindowIndex> <ui.treeExpanded><![CDATA[1]]></ui.treeExpanded> <uid><![CDATA[F479833C-A536-4078-9FA7-470DEFF521C0]]></uid> </SQLTable> @@ -4012,7 +4421,7 @@ <schema><![CDATA[]]></schema> <location> <x>75.00</x> - <y>675.00</y> + <y>1425.00</y> </location> <size> <width>300.00</width> @@ -4080,7 +4489,7 @@ <uid><![CDATA[776E3EA6-8697-4656-AEEE-A609EBB9CBC6]]></uid> </SQLField> <labelColor><![CDATA[{1,0.576372,0,1}]]></labelColor> - <labelWindowIndex><![CDATA[66]]></labelWindowIndex> + <labelWindowIndex><![CDATA[73]]></labelWindowIndex> <PK_KEY_NAME><![CDATA[titresDomainesTypes_pkey]]></PK_KEY_NAME> <ui.treeExpanded><![CDATA[1]]></ui.treeExpanded> <uid><![CDATA[F4E2BA22-4F9B-46F9-BCB7-F08F4F80B427]]></uid> @@ -4090,7 +4499,7 @@ <schema><![CDATA[]]></schema> <location> <x>2525.00</x> - <y>600.00</y> + <y>1750.00</y> </location> <size> <width>300.00</width> @@ -4109,7 +4518,7 @@ <uid><![CDATA[250BC9E4-92C8-4EED-9F5F-55D83FCED68A]]></uid> </SQLField> <labelColor><![CDATA[{0,0.991439,1,1}]]></labelColor> - <labelWindowIndex><![CDATA[45]]></labelWindowIndex> + <labelWindowIndex><![CDATA[52]]></labelWindowIndex> <ui.treeExpanded><![CDATA[1]]></ui.treeExpanded> <uid><![CDATA[F62347AD-2854-44A5-9296-7907DE910A94]]></uid> </SQLTable> @@ -4118,7 +4527,7 @@ <comment><![CDATA[]]></comment> <location> <x>25.00</x> - <y>1575.00</y> + <y>25.00</y> </location> <size> <width>800.00</width> @@ -4127,7 +4536,7 @@ <zorder>72</zorder> <commentTitle><![CDATA[restrictions administrations]]></commentTitle> <labelColor><![CDATA[{0.999996,1,1,1}]]></labelColor> - <labelWindowIndex><![CDATA[10]]></labelWindowIndex> + <labelWindowIndex><![CDATA[17]]></labelWindowIndex> <uid><![CDATA[F702A334-AA9F-4B68-80AE-75CFF434B3E4]]></uid> </SQLCanvasArea> <SQLTable> @@ -4135,7 +4544,7 @@ <schema><![CDATA[]]></schema> <location> <x>75.00</x> - <y>1400.00</y> + <y>600.00</y> </location> <size> <width>300.00</width> @@ -4179,7 +4588,7 @@ <uid><![CDATA[E37807E0-A124-4F61-8775-0E03C1F2413C]]></uid> </SQLField> <labelColor><![CDATA[{1,0.149131,0,1}]]></labelColor> - <labelWindowIndex><![CDATA[13]]></labelWindowIndex> + <labelWindowIndex><![CDATA[20]]></labelWindowIndex> <ui.treeExpanded><![CDATA[1]]></ui.treeExpanded> <uid><![CDATA[F878E0F6-7BC7-4930-BF39-CCBBF658EEC3]]></uid> </SQLTable> @@ -4187,8 +4596,8 @@ <name><![CDATA[Canvas Area1_4]]></name> <comment><![CDATA[]]></comment> <location> - <x>850.00</x> - <y>1900.00</y> + <x>1275.00</x> + <y>525.00</y> </location> <size> <width>775.00</width> @@ -4197,7 +4606,7 @@ <zorder>58</zorder> <commentTitle><![CDATA[logs]]></commentTitle> <labelColor><![CDATA[{0.999996,1,1,1}]]></labelColor> - <labelWindowIndex><![CDATA[9]]></labelWindowIndex> + <labelWindowIndex><![CDATA[16]]></labelWindowIndex> <uid><![CDATA[F92D3903-02DC-4458-B582-DF1CE214E3B5]]></uid> </SQLCanvasArea> <SQLTable> @@ -4205,7 +4614,7 @@ <schema><![CDATA[]]></schema> <location> <x>2525.00</x> - <y>1150.00</y> + <y>2300.00</y> </location> <size> <width>300.00</width> @@ -4249,7 +4658,7 @@ <unique><![CDATA[0]]></unique> </SQLField> <labelColor><![CDATA[{0,0.991439,1,1}]]></labelColor> - <labelWindowIndex><![CDATA[39]]></labelWindowIndex> + <labelWindowIndex><![CDATA[46]]></labelWindowIndex> <PK_KEY_NAME><![CDATA[titulaires_pkey]]></PK_KEY_NAME> <ui.treeExpanded><![CDATA[1]]></ui.treeExpanded> <uid><![CDATA[FB08C871-9931-4C8A-8D5D-2E50347FA8E3]]></uid> @@ -4259,7 +4668,7 @@ <schema><![CDATA[]]></schema> <location> <x>2525.00</x> - <y>500.00</y> + <y>1650.00</y> </location> <size> <width>300.00</width> @@ -4282,7 +4691,7 @@ <uid><![CDATA[ED99DC08-4796-463F-B217-CD827F9D480C]]></uid> </SQLField> <labelColor><![CDATA[{0,0.991439,1,1}]]></labelColor> - <labelWindowIndex><![CDATA[43]]></labelWindowIndex> + <labelWindowIndex><![CDATA[50]]></labelWindowIndex> <ui.treeExpanded><![CDATA[1]]></ui.treeExpanded> <uid><![CDATA[FB72C9B7-03F5-4EEC-BBF8-41808D773F59]]></uid> </SQLTable> @@ -4291,7 +4700,7 @@ <comment><![CDATA[]]></comment> <location> <x>2075.00</x> - <y>2200.00</y> + <y>25.00</y> </location> <size> <width>800.00</width> @@ -4307,7 +4716,7 @@ <encodedPrintInfo><![CDATA[BAtzdHJlYW10eXBlZIHoA4QBQISEhAtOU1ByaW50SW5mbwGEhAhOU09iamVjdACFkoSEhBNOU011dGFibGVEaWN0aW9uYXJ5AISEDE5TRGljdGlvbmFyeQCUhAFpDZKEhIQITlNTdHJpbmcBlIQBKw5OU1BNUGFnZUZvcm1hdIaShISEDU5TTXV0YWJsZURhdGEAhIQGTlNEYXRhAJSXgZ0bhAdbNzA2OWNdPD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4KPCFET0NUWVBFIHBsaXN0IFBVQkxJQyAiLS8vQXBwbGUvL0RURCBQTElTVCAxLjAvL0VOIiAiaHR0cDovL3d3dy5hcHBsZS5jb20vRFREcy9Qcm9wZXJ0eUxpc3QtMS4wLmR0ZCI+CjxwbGlzdCB2ZXJzaW9uPSIxLjAiPgo8ZGljdD4KCTxrZXk+Y29tLmFwcGxlLnByaW50LlBhZ2VGb3JtYXQuUE1Ib3Jpem9udGFsUmVzPC9rZXk+Cgk8ZGljdD4KCQk8a2V5PmNvbS5hcHBsZS5wcmludC50aWNrZXQuY3JlYXRvcjwva2V5PgoJCTxzdHJpbmc+Y29tLmFwcGxlLmpvYnRpY2tldDwvc3RyaW5nPgoJCTxrZXk+Y29tLmFwcGxlLnByaW50LnRpY2tldC5pdGVtQXJyYXk8L2tleT4KCQk8YXJyYXk+CgkJCTxkaWN0PgoJCQkJPGtleT5jb20uYXBwbGUucHJpbnQuUGFnZUZvcm1hdC5QTUhvcml6b250YWxSZXM8L2tleT4KCQkJCTxyZWFsPjcyPC9yZWFsPgoJCQkJPGtleT5jb20uYXBwbGUucHJpbnQudGlja2V0LnN0YXRlRmxhZzwva2V5PgoJCQkJPGludGVnZXI+MDwvaW50ZWdlcj4KCQkJPC9kaWN0PgoJCTwvYXJyYXk+Cgk8L2RpY3Q+Cgk8a2V5PmNvbS5hcHBsZS5wcmludC5QYWdlRm9ybWF0LlBNT3JpZW50YXRpb248L2tleT4KCTxkaWN0PgoJCTxrZXk+Y29tLmFwcGxlLnByaW50LnRpY2tldC5jcmVhdG9yPC9rZXk+CgkJPHN0cmluZz5jb20uYXBwbGUuam9idGlja2V0PC9zdHJpbmc+CgkJPGtleT5jb20uYXBwbGUucHJpbnQudGlja2V0Lml0ZW1BcnJheTwva2V5PgoJCTxhcnJheT4KCQkJPGRpY3Q+CgkJCQk8a2V5PmNvbS5hcHBsZS5wcmludC5QYWdlRm9ybWF0LlBNT3JpZW50YXRpb248L2tleT4KCQkJCTxpbnRlZ2VyPjE8L2ludGVnZXI+CgkJCQk8a2V5PmNvbS5hcHBsZS5wcmludC50aWNrZXQuc3RhdGVGbGFnPC9rZXk+CgkJCQk8aW50ZWdlcj4wPC9pbnRlZ2VyPgoJCQk8L2RpY3Q+CgkJPC9hcnJheT4KCTwvZGljdD4KCTxrZXk+Y29tLmFwcGxlLnByaW50LlBhZ2VGb3JtYXQuUE1TY2FsaW5nPC9rZXk+Cgk8ZGljdD4KCQk8a2V5PmNvbS5hcHBsZS5wcmludC50aWNrZXQuY3JlYXRvcjwva2V5PgoJCTxzdHJpbmc+Y29tLmFwcGxlLmpvYnRpY2tldDwvc3RyaW5nPgoJCTxrZXk+Y29tLmFwcGxlLnByaW50LnRpY2tldC5pdGVtQXJyYXk8L2tleT4KCQk8YXJyYXk+CgkJCTxkaWN0PgoJCQkJPGtleT5jb20uYXBwbGUucHJpbnQuUGFnZUZvcm1hdC5QTVNjYWxpbmc8L2tleT4KCQkJCTxyZWFsPjE8L3JlYWw+CgkJCQk8a2V5PmNvbS5hcHBsZS5wcmludC50aWNrZXQuc3RhdGVGbGFnPC9rZXk+CgkJCQk8aW50ZWdlcj4wPC9pbnRlZ2VyPgoJCQk8L2RpY3Q+CgkJPC9hcnJheT4KCTwvZGljdD4KCTxrZXk+Y29tLmFwcGxlLnByaW50LlBhZ2VGb3JtYXQuUE1WZXJ0aWNhbFJlczwva2V5PgoJPGRpY3Q+CgkJPGtleT5jb20uYXBwbGUucHJpbnQudGlja2V0LmNyZWF0b3I8L2tleT4KCQk8c3RyaW5nPmNvbS5hcHBsZS5qb2J0aWNrZXQ8L3N0cmluZz4KCQk8a2V5PmNvbS5hcHBsZS5wcmludC50aWNrZXQuaXRlbUFycmF5PC9rZXk+CgkJPGFycmF5PgoJCQk8ZGljdD4KCQkJCTxrZXk+Y29tLmFwcGxlLnByaW50LlBhZ2VGb3JtYXQuUE1WZXJ0aWNhbFJlczwva2V5PgoJCQkJPHJlYWw+NzI8L3JlYWw+CgkJCQk8a2V5PmNvbS5hcHBsZS5wcmludC50aWNrZXQuc3RhdGVGbGFnPC9rZXk+CgkJCQk8aW50ZWdlcj4wPC9pbnRlZ2VyPgoJCQk8L2RpY3Q+CgkJPC9hcnJheT4KCTwvZGljdD4KCTxrZXk+Y29tLmFwcGxlLnByaW50LlBhZ2VGb3JtYXQuUE1WZXJ0aWNhbFNjYWxpbmc8L2tleT4KCTxkaWN0PgoJCTxrZXk+Y29tLmFwcGxlLnByaW50LnRpY2tldC5jcmVhdG9yPC9rZXk+CgkJPHN0cmluZz5jb20uYXBwbGUuam9idGlja2V0PC9zdHJpbmc+CgkJPGtleT5jb20uYXBwbGUucHJpbnQudGlja2V0Lml0ZW1BcnJheTwva2V5PgoJCTxhcnJheT4KCQkJPGRpY3Q+CgkJCQk8a2V5PmNvbS5hcHBsZS5wcmludC5QYWdlRm9ybWF0LlBNVmVydGljYWxTY2FsaW5nPC9rZXk+CgkJCQk8cmVhbD4xPC9yZWFsPgoJCQkJPGtleT5jb20uYXBwbGUucHJpbnQudGlja2V0LnN0YXRlRmxhZzwva2V5PgoJCQkJPGludGVnZXI+MDwvaW50ZWdlcj4KCQkJPC9kaWN0PgoJCTwvYXJyYXk+Cgk8L2RpY3Q+Cgk8a2V5PmNvbS5hcHBsZS5wcmludC5zdWJUaWNrZXQucGFwZXJfaW5mb190aWNrZXQ8L2tleT4KCTxkaWN0PgoJCTxrZXk+UE1QUERQYXBlckNvZGVOYW1lPC9rZXk+CgkJPGRpY3Q+CgkJCTxrZXk+Y29tLmFwcGxlLnByaW50LnRpY2tldC5jcmVhdG9yPC9rZXk+CgkJCTxzdHJpbmc+Y29tLmFwcGxlLmpvYnRpY2tldDwvc3RyaW5nPgoJCQk8a2V5PmNvbS5hcHBsZS5wcmludC50aWNrZXQuaXRlbUFycmF5PC9rZXk+CgkJCTxhcnJheT4KCQkJCTxkaWN0PgoJCQkJCTxrZXk+UE1QUERQYXBlckNvZGVOYW1lPC9rZXk+CgkJCQkJPHN0cmluZz5BNDwvc3RyaW5nPgoJCQkJCTxrZXk+Y29tLmFwcGxlLnByaW50LnRpY2tldC5zdGF0ZUZsYWc8L2tleT4KCQkJCQk8aW50ZWdlcj4wPC9pbnRlZ2VyPgoJCQkJPC9kaWN0PgoJCQk8L2FycmF5PgoJCTwvZGljdD4KCQk8a2V5PlBNUFBEVHJhbnNsYXRpb25TdHJpbmdQYXBlck5hbWU8L2tleT4KCQk8ZGljdD4KCQkJPGtleT5jb20uYXBwbGUucHJpbnQudGlja2V0LmNyZWF0b3I8L2tleT4KCQkJPHN0cmluZz5jb20uYXBwbGUuam9idGlja2V0PC9zdHJpbmc+CgkJCTxrZXk+Y29tLmFwcGxlLnByaW50LnRpY2tldC5pdGVtQXJyYXk8L2tleT4KCQkJPGFycmF5PgoJCQkJPGRpY3Q+CgkJCQkJPGtleT5QTVBQRFRyYW5zbGF0aW9uU3RyaW5nUGFwZXJOYW1lPC9rZXk+CgkJCQkJPHN0cmluZz5BNDwvc3RyaW5nPgoJCQkJCTxrZXk+Y29tLmFwcGxlLnByaW50LnRpY2tldC5zdGF0ZUZsYWc8L2tleT4KCQkJCQk8aW50ZWdlcj4wPC9pbnRlZ2VyPgoJCQkJPC9kaWN0PgoJCQk8L2FycmF5PgoJCTwvZGljdD4KCQk8a2V5PlBNVGlvZ2FQYXBlck5hbWU8L2tleT4KCQk8ZGljdD4KCQkJPGtleT5jb20uYXBwbGUucHJpbnQudGlja2V0LmNyZWF0b3I8L2tleT4KCQkJPHN0cmluZz5jb20uYXBwbGUuam9idGlja2V0PC9zdHJpbmc+CgkJCTxrZXk+Y29tLmFwcGxlLnByaW50LnRpY2tldC5pdGVtQXJyYXk8L2tleT4KCQkJPGFycmF5PgoJCQkJPGRpY3Q+CgkJCQkJPGtleT5QTVRpb2dhUGFwZXJOYW1lPC9rZXk+CgkJCQkJPHN0cmluZz5pc28tYTQ8L3N0cmluZz4KCQkJCQk8a2V5PmNvbS5hcHBsZS5wcmludC50aWNrZXQuc3RhdGVGbGFnPC9rZXk+CgkJCQkJPGludGVnZXI+MDwvaW50ZWdlcj4KCQkJCTwvZGljdD4KCQkJPC9hcnJheT4KCQk8L2RpY3Q+CgkJPGtleT5jb20uYXBwbGUucHJpbnQuUGFnZUZvcm1hdC5QTUFkanVzdGVkUGFnZVJlY3Q8L2tleT4KCQk8ZGljdD4KCQkJPGtleT5jb20uYXBwbGUucHJpbnQudGlja2V0LmNyZWF0b3I8L2tleT4KCQkJPHN0cmluZz5jb20uYXBwbGUuam9idGlja2V0PC9zdHJpbmc+CgkJCTxrZXk+Y29tLmFwcGxlLnByaW50LnRpY2tldC5pdGVtQXJyYXk8L2tleT4KCQkJPGFycmF5PgoJCQkJPGRpY3Q+CgkJCQkJPGtleT5jb20uYXBwbGUucHJpbnQuUGFnZUZvcm1hdC5QTUFkanVzdGVkUGFnZVJlY3Q8L2tleT4KCQkJCQk8YXJyYXk+CgkJCQkJCTxpbnRlZ2VyPjA8L2ludGVnZXI+CgkJCQkJCTxpbnRlZ2VyPjA8L2ludGVnZXI+CgkJCQkJCTxyZWFsPjc4MzwvcmVhbD4KCQkJCQkJPHJlYWw+NTU5PC9yZWFsPgoJCQkJCTwvYXJyYXk+CgkJCQkJPGtleT5jb20uYXBwbGUucHJpbnQudGlja2V0LnN0YXRlRmxhZzwva2V5PgoJCQkJCTxpbnRlZ2VyPjA8L2ludGVnZXI+CgkJCQk8L2RpY3Q+CgkJCTwvYXJyYXk+CgkJPC9kaWN0PgoJCTxrZXk+Y29tLmFwcGxlLnByaW50LlBhZ2VGb3JtYXQuUE1BZGp1c3RlZFBhcGVyUmVjdDwva2V5PgoJCTxkaWN0PgoJCQk8a2V5PmNvbS5hcHBsZS5wcmludC50aWNrZXQuY3JlYXRvcjwva2V5PgoJCQk8c3RyaW5nPmNvbS5hcHBsZS5qb2J0aWNrZXQ8L3N0cmluZz4KCQkJPGtleT5jb20uYXBwbGUucHJpbnQudGlja2V0Lml0ZW1BcnJheTwva2V5PgoJCQk8YXJyYXk+CgkJCQk8ZGljdD4KCQkJCQk8a2V5PmNvbS5hcHBsZS5wcmludC5QYWdlRm9ybWF0LlBNQWRqdXN0ZWRQYXBlclJlY3Q8L2tleT4KCQkJCQk8YXJyYXk+CgkJCQkJCTxyZWFsPi0xODwvcmVhbD4KCQkJCQkJPHJlYWw+LTE4PC9yZWFsPgoJCQkJCQk8cmVhbD44MjQ8L3JlYWw+CgkJCQkJCTxyZWFsPjU3NzwvcmVhbD4KCQkJCQk8L2FycmF5PgoJCQkJCTxrZXk+Y29tLmFwcGxlLnByaW50LnRpY2tldC5zdGF0ZUZsYWc8L2tleT4KCQkJCQk8aW50ZWdlcj4wPC9pbnRlZ2VyPgoJCQkJPC9kaWN0PgoJCQk8L2FycmF5PgoJCTwvZGljdD4KCQk8a2V5PmNvbS5hcHBsZS5wcmludC5QYXBlckluZm8uUE1QUERQYXBlckRpbWVuc2lvbjwva2V5PgoJCTxkaWN0PgoJCQk8a2V5PmNvbS5hcHBsZS5wcmludC50aWNrZXQuY3JlYXRvcjwva2V5PgoJCQk8c3RyaW5nPmNvbS5hcHBsZS5qb2J0aWNrZXQ8L3N0cmluZz4KCQkJPGtleT5jb20uYXBwbGUucHJpbnQudGlja2V0Lml0ZW1BcnJheTwva2V5PgoJCQk8YXJyYXk+CgkJCQk8ZGljdD4KCQkJCQk8a2V5PmNvbS5hcHBsZS5wcmludC5QYXBlckluZm8uUE1QUERQYXBlckRpbWVuc2lvbjwva2V5PgoJCQkJCTxhcnJheT4KCQkJCQkJPGludGVnZXI+MDwvaW50ZWdlcj4KCQkJCQkJPGludGVnZXI+MDwvaW50ZWdlcj4KCQkJCQkJPHJlYWw+NTk1PC9yZWFsPgoJCQkJCQk8cmVhbD44NDI8L3JlYWw+CgkJCQkJPC9hcnJheT4KCQkJCQk8a2V5PmNvbS5hcHBsZS5wcmludC50aWNrZXQuc3RhdGVGbGFnPC9rZXk+CgkJCQkJPGludGVnZXI+MDwvaW50ZWdlcj4KCQkJCTwvZGljdD4KCQkJPC9hcnJheT4KCQk8L2RpY3Q+CgkJPGtleT5jb20uYXBwbGUucHJpbnQuUGFwZXJJbmZvLlBNUGFwZXJOYW1lPC9rZXk+CgkJPGRpY3Q+CgkJCTxrZXk+Y29tLmFwcGxlLnByaW50LnRpY2tldC5jcmVhdG9yPC9rZXk+CgkJCTxzdHJpbmc+Y29tLmFwcGxlLmpvYnRpY2tldDwvc3RyaW5nPgoJCQk8a2V5PmNvbS5hcHBsZS5wcmludC50aWNrZXQuaXRlbUFycmF5PC9rZXk+CgkJCTxhcnJheT4KCQkJCTxkaWN0PgoJCQkJCTxrZXk+Y29tLmFwcGxlLnByaW50LlBhcGVySW5mby5QTVBhcGVyTmFtZTwva2V5PgoJCQkJCTxzdHJpbmc+aXNvLWE0PC9zdHJpbmc+CgkJCQkJPGtleT5jb20uYXBwbGUucHJpbnQudGlja2V0LnN0YXRlRmxhZzwva2V5PgoJCQkJCTxpbnRlZ2VyPjA8L2ludGVnZXI+CgkJCQk8L2RpY3Q+CgkJCTwvYXJyYXk+CgkJPC9kaWN0PgoJCTxrZXk+Y29tLmFwcGxlLnByaW50LlBhcGVySW5mby5QTVVuYWRqdXN0ZWRQYWdlUmVjdDwva2V5PgoJCTxkaWN0PgoJCQk8a2V5PmNvbS5hcHBsZS5wcmludC50aWNrZXQuY3JlYXRvcjwva2V5PgoJCQk8c3RyaW5nPmNvbS5hcHBsZS5qb2J0aWNrZXQ8L3N0cmluZz4KCQkJPGtleT5jb20uYXBwbGUucHJpbnQudGlja2V0Lml0ZW1BcnJheTwva2V5PgoJCQk8YXJyYXk+CgkJCQk8ZGljdD4KCQkJCQk8a2V5PmNvbS5hcHBsZS5wcmludC5QYXBlckluZm8uUE1VbmFkanVzdGVkUGFnZVJlY3Q8L2tleT4KCQkJCQk8YXJyYXk+CgkJCQkJCTxpbnRlZ2VyPjA8L2ludGVnZXI+CgkJCQkJCTxpbnRlZ2VyPjA8L2ludGVnZXI+CgkJCQkJCTxyZWFsPjc4MzwvcmVhbD4KCQkJCQkJPHJlYWw+NTU5PC9yZWFsPgoJCQkJCTwvYXJyYXk+CgkJCQkJPGtleT5jb20uYXBwbGUucHJpbnQudGlja2V0LnN0YXRlRmxhZzwva2V5PgoJCQkJCTxpbnRlZ2VyPjA8L2ludGVnZXI+CgkJCQk8L2RpY3Q+CgkJCTwvYXJyYXk+CgkJPC9kaWN0PgoJCTxrZXk+Y29tLmFwcGxlLnByaW50LlBhcGVySW5mby5QTVVuYWRqdXN0ZWRQYXBlclJlY3Q8L2tleT4KCQk8ZGljdD4KCQkJPGtleT5jb20uYXBwbGUucHJpbnQudGlja2V0LmNyZWF0b3I8L2tleT4KCQkJPHN0cmluZz5jb20uYXBwbGUuam9idGlja2V0PC9zdHJpbmc+CgkJCTxrZXk+Y29tLmFwcGxlLnByaW50LnRpY2tldC5pdGVtQXJyYXk8L2tleT4KCQkJPGFycmF5PgoJCQkJPGRpY3Q+CgkJCQkJPGtleT5jb20uYXBwbGUucHJpbnQuUGFwZXJJbmZvLlBNVW5hZGp1c3RlZFBhcGVyUmVjdDwva2V5PgoJCQkJCTxhcnJheT4KCQkJCQkJPHJlYWw+LTE4PC9yZWFsPgoJCQkJCQk8cmVhbD4tMTg8L3JlYWw+CgkJCQkJCTxyZWFsPjgyNDwvcmVhbD4KCQkJCQkJPHJlYWw+NTc3PC9yZWFsPgoJCQkJCTwvYXJyYXk+CgkJCQkJPGtleT5jb20uYXBwbGUucHJpbnQudGlja2V0LnN0YXRlRmxhZzwva2V5PgoJCQkJCTxpbnRlZ2VyPjA8L2ludGVnZXI+CgkJCQk8L2RpY3Q+CgkJCTwvYXJyYXk+CgkJPC9kaWN0PgoJCTxrZXk+Y29tLmFwcGxlLnByaW50LlBhcGVySW5mby5wcGQuUE1QYXBlck5hbWU8L2tleT4KCQk8ZGljdD4KCQkJPGtleT5jb20uYXBwbGUucHJpbnQudGlja2V0LmNyZWF0b3I8L2tleT4KCQkJPHN0cmluZz5jb20uYXBwbGUuam9idGlja2V0PC9zdHJpbmc+CgkJCTxrZXk+Y29tLmFwcGxlLnByaW50LnRpY2tldC5pdGVtQXJyYXk8L2tleT4KCQkJPGFycmF5PgoJCQkJPGRpY3Q+CgkJCQkJPGtleT5jb20uYXBwbGUucHJpbnQuUGFwZXJJbmZvLnBwZC5QTVBhcGVyTmFtZTwva2V5PgoJCQkJCTxzdHJpbmc+QTQ8L3N0cmluZz4KCQkJCQk8a2V5PmNvbS5hcHBsZS5wcmludC50aWNrZXQuc3RhdGVGbGFnPC9rZXk+CgkJCQkJPGludGVnZXI+MDwvaW50ZWdlcj4KCQkJCTwvZGljdD4KCQkJPC9hcnJheT4KCQk8L2RpY3Q+CgkJPGtleT5jb20uYXBwbGUucHJpbnQudGlja2V0LkFQSVZlcnNpb248L2tleT4KCQk8c3RyaW5nPjAwLjIwPC9zdHJpbmc+CgkJPGtleT5jb20uYXBwbGUucHJpbnQudGlja2V0LnR5cGU8L2tleT4KCQk8c3RyaW5nPmNvbS5hcHBsZS5wcmludC5QYXBlckluZm9UaWNrZXQ8L3N0cmluZz4KCTwvZGljdD4KCTxrZXk+Y29tLmFwcGxlLnByaW50LnRpY2tldC5BUElWZXJzaW9uPC9rZXk+Cgk8c3RyaW5nPjAwLjIwPC9zdHJpbmc+Cgk8a2V5PmNvbS5hcHBsZS5wcmludC50aWNrZXQudHlwZTwva2V5PgoJPHN0cmluZz5jb20uYXBwbGUucHJpbnQuUGFnZUZvcm1hdFRpY2tldDwvc3RyaW5nPgo8L2RpY3Q+CjwvcGxpc3Q+CoaShJmZC05TUGFwZXJTaXplhpKEhIQHTlNWYWx1ZQCUhAEqhIQLe0NHU2l6ZT1kZH2fgVMCgUoDhpKEmZkWTlNIb3Jpem9udGFsbHlDZW50ZXJlZIaShISECE5TTnVtYmVyAJ+ehIQBY6EBhpKEmZkUTlNWZXJ0aWNhbGx5Q2VudGVyZWSGkqKShJmZDE5TTGVmdE1hcmdpboaShKOehIQBZKIShpKEmZkNTlNSaWdodE1hcmdpboaSp5KEmZkLTlNUb3BNYXJnaW6GkoSjnqiiHoaShJmZDU5TT3JpZW50YXRpb26GkoSjnoSEAXGjAIaShJmZFU5TSG9yaXpvbmFsUGFnaW5hdGlvboaSrZKEmZkUTlNWZXJ0aWNhbFBhZ2luYXRpb26Gkq2ShJmZDk5TQm90dG9tTWFyZ2luhpKEo56oojWGkoSZmQtOU1BhcGVyTmFtZYaShJmZBmlzby1hNIaShJmZD05TU2NhbGluZ0ZhY3RvcoaShKOeqKIBhoaG]]></encodedPrintInfo> <autoSizeTablesOption><![CDATA[0]]></autoSizeTablesOption> <cardinalityNotationStyle><![CDATA[0]]></cardinalityNotationStyle> - <documentScaleFactor><![CDATA[0.6]]></documentScaleFactor> + <documentScaleFactor><![CDATA[0.45]]></documentScaleFactor> <dropTableOption><![CDATA[0]]></dropTableOption> <exportDialect><![CDATA[postgres]]></exportDialect> <fileversion><![CDATA[4]]></fileversion> @@ -4319,7 +4728,7 @@ <overviewPanelHidden><![CDATA[0]]></overviewPanelHidden> <pageBoundariesVisible><![CDATA[0]]></pageBoundariesVisible> <PageGridVisible><![CDATA[1]]></PageGridVisible> - <RightSidebarWidth><![CDATA[1003.000000]]></RightSidebarWidth> + <RightSidebarWidth><![CDATA[2283.000000]]></RightSidebarWidth> <sidebarIndex><![CDATA[5]]></sidebarIndex> <snapToGrid><![CDATA[1]]></snapToGrid> <SourceSidebarWidth><![CDATA[0.000000]]></SourceSidebarWidth> @@ -4328,8 +4737,8 @@ <windowHeight><![CDATA[1418.000000]]></windowHeight> <windowLocationX><![CDATA[0.000000]]></windowLocationX> <windowLocationY><![CDATA[0.000000]]></windowLocationY> - <windowScrollOrigin><![CDATA[{731, 179}]]></windowScrollOrigin> - <windowWidth><![CDATA[1280.000000]]></windowWidth> + <windowScrollOrigin><![CDATA[{0, 0}]]></windowScrollOrigin> + <windowWidth><![CDATA[2560.000000]]></windowWidth> </SQLDocumentInfo> <AllowsIndexRenamingOnInsert><![CDATA[1]]></AllowsIndexRenamingOnInsert> <defaultLabelExpanded><![CDATA[1]]></defaultLabelExpanded> diff --git a/manual/database/camino-db.svg b/docs-sources/assets/database/camino-db.svg similarity index 100% rename from manual/database/camino-db.svg rename to docs-sources/assets/database/camino-db.svg diff --git a/manual/readme.md b/manual/readme.md deleted file mode 100644 index a660d8293051fcc59a39d662ce71f5f70cd0f557..0000000000000000000000000000000000000000 --- a/manual/readme.md +++ /dev/null @@ -1,11 +0,0 @@ -# Camino - -> le cadastre minier numérique ouvert - -[Camino](http://camino.beta.gouv.fr/) est le nouvel outil de gestion du domaine minier de l'administration. Il présente les caractéristiques des titres miniers sur une carte et permet de les suivre à chaque étape de leur vie. - -## Usages - -- Les **entreprises** gagnent en visibilité sur leur business et cela simplifie leurs démarches. -- Les **citoyens** accèdent simplement aux informations publiques. -- Les **agents publics** centralisent leurs contributions et bénéficient d’une vision partagée. diff --git a/package-lock.json b/package-lock.json index 320b37b997b1e79532f9927e57e2203e74552555..67568349cac800f6a9ba15799ed6fc287cda1f4e 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1014,6 +1014,53 @@ } } }, + "@microsoft/tsdoc": { + "version": "0.12.20", + "resolved": "https://registry.npmjs.org/@microsoft/tsdoc/-/tsdoc-0.12.20.tgz", + "integrity": "sha512-/b13m37QZYPV6nCOiqkFyvlQjlTNvAcQpgFZ6ZKIqtStJxNdqVo/frULubxMUMWi6p9Uo5f4BRlguv5ViFcL0A==", + "dev": true + }, + "@microsoft/tsdoc-config": { + "version": "0.13.4", + "resolved": "https://registry.npmjs.org/@microsoft/tsdoc-config/-/tsdoc-config-0.13.4.tgz", + "integrity": "sha512-B3F3mndJTGUmcHTt8chqjN4EPvxJlkzZIkrZUHwJvKvbr74HEe6mB8Aa6Rlh8jj6mHq7mmtyiUn17+5zr4vbXw==", + "dev": true, + "requires": { + "@microsoft/tsdoc": "0.12.20", + "ajv": "~6.10.2", + "jju": "~1.4.0", + "resolve": "~1.12.0" + }, + "dependencies": { + "ajv": { + "version": "6.10.2", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.10.2.tgz", + "integrity": "sha512-TXtUUEYHuaTEbLZWIKUr5pmBuhDLy+8KYtPYdcV8qC+pOZL+NKqYwvWSRrVXHn+ZmRRAu8vJTAznH7Oag6RVRw==", + "dev": true, + "requires": { + "fast-deep-equal": "^2.0.1", + "fast-json-stable-stringify": "^2.0.0", + "json-schema-traverse": "^0.4.1", + "uri-js": "^4.2.2" + } + }, + "fast-deep-equal": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-2.0.1.tgz", + "integrity": "sha1-ewUhjd+WZ79/Nwv3/bLLFf3Qqkk=", + "dev": true + }, + "resolve": { + "version": "1.12.3", + "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.12.3.tgz", + "integrity": "sha512-hF6+hAPlxjqHWrw4p1rF3Wztbgxd4AjA5VlUzY5zcTb4J8D3JK4/1RjU48pHz2PJWzGVsLB1VWZkvJzhK2CCOA==", + "dev": true, + "requires": { + "path-parse": "^1.0.6" + } + } + } + }, "@npmcli/ci-detect": { "version": "1.2.0", "resolved": "https://registry.npmjs.org/@npmcli/ci-detect/-/ci-detect-1.2.0.tgz", @@ -3218,6 +3265,12 @@ } } }, + "compare-versions": { + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/compare-versions/-/compare-versions-3.6.0.tgz", + "integrity": "sha512-W6Af2Iw1z4CB7q4uU4hv646dW9GQuBM+YpC0UvUCWSD8w90SJjp+ujJuXaEMtAXBtSqGfMPuFOVn4/+FlaqfBA==", + "dev": true + }, "component-emitter": { "version": "1.3.0", "resolved": "https://registry.npmjs.org/component-emitter/-/component-emitter-1.3.0.tgz", @@ -5154,6 +5207,16 @@ "integrity": "sha512-v/KBnfyaOMPmZc/dmc6ozOdWqekGp7bBGq4jLAecEfPGmfKiWS4sA8sC0LqiV9w5qmXAtXVn4M3p1jSyhY85SQ==", "dev": true }, + "eslint-plugin-tsdoc": { + "version": "0.2.5", + "resolved": "https://registry.npmjs.org/eslint-plugin-tsdoc/-/eslint-plugin-tsdoc-0.2.5.tgz", + "integrity": "sha512-KXquQlf/3u2U7A3LebYdcmAMtMxmUW3HN4JtOluq+iRuRPbBNVeUlg4SOXrnqSuQCOpSITHlPhP418IwjExA+w==", + "dev": true, + "requires": { + "@microsoft/tsdoc": "0.12.20", + "@microsoft/tsdoc-config": "0.13.4" + } + }, "eslint-scope": { "version": "5.0.0", "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-5.0.0.tgz", @@ -7051,6 +7114,12 @@ "resolved": "https://registry.npmjs.org/he/-/he-1.2.0.tgz", "integrity": "sha512-F/1DnUGPopORZi0ni+CvrCgHQ5FyEAHRLSApuYWMmrbSwoN2Mn/7k+Gl38gJnR7yyDZk6WLXwiGod1JOWNDKGw==" }, + "highlight.js": { + "version": "10.1.1", + "resolved": "https://registry.npmjs.org/highlight.js/-/highlight.js-10.1.1.tgz", + "integrity": "sha512-b4L09127uVa+9vkMgPpdUQP78ickGbHEQTWeBrQFTJZ4/n2aihWOGS0ZoUqAwjVmfjhq/C76HRzkqwZhK4sBbg==", + "dev": true + }, "homedir-polyfill": { "version": "1.0.3", "resolved": "https://registry.npmjs.org/homedir-polyfill/-/homedir-polyfill-1.0.3.tgz", @@ -9741,6 +9810,12 @@ "resolved": "https://registry.npmjs.org/lru_map/-/lru_map-0.3.3.tgz", "integrity": "sha1-tcg1G5Rky9dQM1p5ZQoOwOVhGN0=" }, + "lunr": { + "version": "2.3.8", + "resolved": "https://registry.npmjs.org/lunr/-/lunr-2.3.8.tgz", + "integrity": "sha512-oxMeX/Y35PNFuZoHp+jUj5OSEmLCaIH4KTFJh7a93cHBoFmpw2IoPs22VIz7vyO2YUnx2Tn9dzIwO2P/4quIRg==", + "dev": true + }, "make-dir": { "version": "3.1.0", "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-3.1.0.tgz", @@ -9839,6 +9914,12 @@ "object-visit": "^1.0.0" } }, + "marked": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/marked/-/marked-1.0.0.tgz", + "integrity": "sha512-Wo+L1pWTVibfrSr+TTtMuiMfNzmZWiOPeO7rZsQUY5bgsxpHesBEcIWJloWVTFnrMXnf/TL30eTFSGJddmQAng==", + "dev": true + }, "media-typer": { "version": "0.3.0", "resolved": "https://registry.npmjs.org/media-typer/-/media-typer-0.3.0.tgz", @@ -14270,6 +14351,67 @@ "is-typedarray": "^1.0.0" } }, + "typedoc": { + "version": "0.17.7", + "resolved": "https://registry.npmjs.org/typedoc/-/typedoc-0.17.7.tgz", + "integrity": "sha512-PEnzjwQAGjb0O8a6VDE0lxyLAadqNujN5LltsTUhZETolRMiIJv6Ox+Toa8h0XhKHqAOh8MOmB0eBVcWz6nuAw==", + "dev": true, + "requires": { + "fs-extra": "^8.1.0", + "handlebars": "^4.7.6", + "highlight.js": "^10.0.0", + "lodash": "^4.17.15", + "lunr": "^2.3.8", + "marked": "1.0.0", + "minimatch": "^3.0.0", + "progress": "^2.0.3", + "shelljs": "^0.8.4", + "typedoc-default-themes": "^0.10.1" + } + }, + "typedoc-default-themes": { + "version": "0.10.1", + "resolved": "https://registry.npmjs.org/typedoc-default-themes/-/typedoc-default-themes-0.10.1.tgz", + "integrity": "sha512-SuqAQI0CkwhqSJ2kaVTgl37cWs733uy9UGUqwtcds8pkFK8oRF4rZmCq+FXTGIb9hIUOu40rf5Kojg0Ha6akeg==", + "dev": true, + "requires": { + "lunr": "^2.3.8" + } + }, + "typedoc-plugin-external-module-name": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/typedoc-plugin-external-module-name/-/typedoc-plugin-external-module-name-4.0.3.tgz", + "integrity": "sha512-2PjEN9kdmkB7NxN3DEax6yDIPjq7HV8qELQhkSRJGxJs/8G/ZwPPvXT0z6hUqtWVr6MeCjpAoYJFzHo04C14Aw==", + "dev": true, + "requires": { + "lodash": "^4.1.2", + "semver": "^7.1.1" + }, + "dependencies": { + "semver": { + "version": "7.3.2", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.2.tgz", + "integrity": "sha512-OrOb32TeeambH6UrhtShmF7CRDqhL6/5XpPNp2DuRH6+9QLw/orhp72j87v8Qa1ScDkvrrBNpZcDejAirJmfXQ==", + "dev": true + } + } + }, + "typedoc-plugin-pages": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/typedoc-plugin-pages/-/typedoc-plugin-pages-1.0.1.tgz", + "integrity": "sha512-eOcjcvXZPxyvcpl6U5uP08SqjYz20F7DGZC4kOD1ES2p+2hde6rbF4MPuOjtzcGUOrQeev2HhiaIi+07SiGNsQ==", + "dev": true, + "requires": { + "compare-versions": "^3.6.0", + "typedoc-default-themes": "^0.10.1" + } + }, + "typedoc-plugin-sourcefile-url": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/typedoc-plugin-sourcefile-url/-/typedoc-plugin-sourcefile-url-1.0.6.tgz", + "integrity": "sha512-xHq9DzkoQywS7FyPneMm2/Hr9GRoCpjSQXkVN0W6SCJKP7fguqg2tasgh+8l5/mW6YSYvqCqEbkSYLbuD4Y6gA==", + "dev": true + }, "typescript": { "version": "3.9.5", "resolved": "https://registry.npmjs.org/typescript/-/typescript-3.9.5.tgz", diff --git a/package.json b/package.json index 820cddf602a0738dee48cceefde06b36f1ec43cc..9c781400905aded00c8f8ae7d56e8e485a3c2c39 100644 --- a/package.json +++ b/package.json @@ -42,6 +42,7 @@ "dev:monthly": "ts-node --transpile-only ./src/business/monthly.ts", "dev:schema": "node dev/api/graphql-dsl-to-query-convert.js", "dev:update": "npm-check-updates -u && npm install && npm audit fix", + "docs": "rm -rf docs && typedoc src --sourcefile-url-prefix \"https://github.com/MTES-MCT/camino-api/blob/master/\"", "lint": "eslint --fix .", "monthly": "node ./dist/business/monthly.js", "release": "standard-version && git push --follow-tags upstream master && conventional-github-releaser", @@ -140,6 +141,7 @@ "eslint-plugin-prettier": "^3.1.4", "eslint-plugin-promise": "^4.2.1", "eslint-plugin-standard": "^4.0.1", + "eslint-plugin-tsdoc": "^0.2.5", "jest": "^26.0.1", "nodemon": "^2.0.4", "pg-escape": "^0.2.0", @@ -148,7 +150,11 @@ "standard-version": "^8.0.0", "supertest": "^4.0.2", "ts-jest": "^26.1.0", - "ts-node": "^8.10.2" + "ts-node": "^8.10.2", + "typedoc": "^0.17.7", + "typedoc-plugin-external-module-name": "^4.0.3", + "typedoc-plugin-pages": "^1.0.1", + "typedoc-plugin-sourcefile-url": "^1.0.6" }, "prettier": { "semi": false, @@ -162,6 +168,7 @@ "eslint:recommended", "plugin:@typescript-eslint/eslint-recommended", "plugin:@typescript-eslint/recommended", + "plugin:@typescript-eslint/recommended", "standard", "prettier", "prettier/@typescript-eslint", diff --git a/src/api/_format/administrations.ts b/src/api/_format/administrations.ts index 31642bd02774cb1133e6472c206aa6fc077633df..4ba9f7d9cc1f4a3950eea033719914a7c48020ce 100644 --- a/src/api/_format/administrations.ts +++ b/src/api/_format/administrations.ts @@ -3,6 +3,15 @@ import { IAdministration, IUtilisateur } from '../../types' import { titresFormat } from './titres' import { utilisateurFormat } from './utilisateurs' +/** + * Formate une administration en fonction du profil de l'utilisateur + * + * @param user - Utilisateur + * @param administration - Administration à formater + * @returns Une administration formatée + * + */ + const administrationFormat = ( user: IUtilisateur | undefined, administration: IAdministration diff --git a/src/api/_format/entreprises.ts b/src/api/_format/entreprises.ts index 06f24319c687c27e51e1d1374da4239b6de257af..f81fbfa06317a7f06632e1fd629fef02c2a9a3c4 100644 --- a/src/api/_format/entreprises.ts +++ b/src/api/_format/entreprises.ts @@ -3,6 +3,15 @@ import { IEntreprise, IUtilisateur } from '../../types' import { titresFormat } from './titres' import { utilisateurFormat } from './utilisateurs' +/** + * Formate une entreprise en fonction du profil de l'utilisateur + * + * @param user - Utilisateur + * @param administration - Entreprise à formater + * @returns Une entreprise formatée + * + */ + const entrepriseFormat = ( user: IUtilisateur | undefined, entreprise: IEntreprise diff --git a/src/api/_validate/titre-activite-input-validate.ts b/src/api/_validate/titre-activite-input-validate.ts index 1008bc71d5813f3da913a2704c1b5738c556ff1f..54a917104a9572436d7d1f4184b2eb1a2b64e4f7 100644 --- a/src/api/_validate/titre-activite-input-validate.ts +++ b/src/api/_validate/titre-activite-input-validate.ts @@ -4,7 +4,7 @@ import contenuNumbersCheck from './utils/contenu-numbers-check' import propsDatesCheck from './utils/props-dates-check' import contenuDatesCheck from './utils/contenu-dates-check' -const dateProps = (['date'] as unknown) as [keyof ITitreActivite] +const datePropsNames = (['date'] as unknown) as [keyof ITitreActivite] const titreActiviteInputValidate = ( titreActivite: ITitreActivite, @@ -18,7 +18,7 @@ const titreActiviteInputValidate = ( } // 1. le format des dates est correct - const errorsDates = propsDatesCheck(dateProps, titreActivite) + const errorsDates = propsDatesCheck(datePropsNames, titreActivite) if (errorsDates) { errors.push(errorsDates) } diff --git a/src/api/_validate/utils/props-dates-check.ts b/src/api/_validate/utils/props-dates-check.ts index ee5ce09cb4614951d0e4df6bda8e026b506551e7..ff9042c5610f8804c15615200c7caac46e142aed 100644 --- a/src/api/_validate/utils/props-dates-check.ts +++ b/src/api/_validate/utils/props-dates-check.ts @@ -1,11 +1,24 @@ import { dateValidate } from '../../../tools/date-validate' +import { ITitreActivite, ITitreEtape } from '../../../types' -const propsDatesCheck = <T>(props: [keyof T], element: T) => { - const errors = props.reduce((errors: string[], prop) => { - if (element[prop]) { - const error = dateValidate((element[prop] as unknown) as string) +/** + * Vérifie que les champs `date` d'une étape ou activité sont valides + * + * @param propsNames - Noms des propriétés date de l'étape ou activité + * @param element - Étape ou activité dont on vérifie les propriétés date + * @returns un tableau d'erreurs si au moins une date est invalide + * + */ + +const propsDatesCheck = <T extends ITitreActivite | ITitreEtape>( + propsNames: [keyof T], + element: T +) => { + const errors = propsNames.reduce((errors: string[], propName) => { + if (element[propName]) { + const error = dateValidate((element[propName] as unknown) as string) if (error) { - errors.push(`le champ "${prop}" n'est pas une date valide`) + errors.push(`le champ "${propName}" n'est pas une date valide`) } } diff --git a/src/api/graphql/schemas/index.graphql b/src/api/graphql/schemas/index.graphql index 39dadfa4c0491f18dc3398c2eac2402bd72db5a4..fb94b96aa195534a318acd0f22de5437f076c99e 100644 --- a/src/api/graphql/schemas/index.graphql +++ b/src/api/graphql/schemas/index.graphql @@ -15,37 +15,36 @@ # import * from 'titres.graphql' # import * from 'utilisateurs.graphql' -"__*__ Type du contenu json" +"Type du contenu json" scalar Json -"__*__ Type du fichier" +"Type du fichier" scalar FileUpload """ -# Query -## _Requêtes en lecture_ +# API de Camino -- [Comment tester l'API Camino ?](https://github.com/MTES-MCT/camino-api/tree/master/manual/api) +> [Documentation](https://docs.camino.beta.gouv.fr) -_Query_ un type _racine_ de GraphQL. +## Lecture -Certaines requêtes sont __publiques__. +Certaines requêtes sont publiques. -Certaines requêtes sont __protégées__ et nécessitent une authentification par token (jwt). Elles sont signalées par une étoile __*__. +Certaines requêtes sont protégées et nécessitent une authentification par token (jwt). -Enfin, certaines requêtes sont __semi-publiques__ et retournent un résultat plus ou moins riche selon le niveau de permission de l'utilisateur authentifié. Elles sont signalées par un plus __+__. +Enfin, certaines requêtes retournent un résultat plus ou moins riche selon le niveau de permission de l'utilisateur authentifié. """ type Query { "Version de l'API" version: String - "__*__ Utilisateur en fonction du token" + "Utilisateur en fonction du token" moi: Utilisateur - "__+__ Titre minier en fonction de son id" + "Titre minier en fonction de son id" titre(id: ID!): Titre - "__+__ Liste de titres miniers, en fonction d'arguments (optionnels)" + "Liste de titres miniers, en fonction d'arguments (optionnels)" titres( intervalle: Int page: Int @@ -61,7 +60,7 @@ type Query { territoires: String ): Titres - "__+__ Liste de titres miniers, en fonction d'arguments (optionnels)" + "Liste de titres miniers, en fonction d'arguments (optionnels)" demarches( intervalle: Int page: Int @@ -81,7 +80,7 @@ type Query { titresTerritoires: String ): Demarches - "__*__ Activité en fonction de son id" + "Activité en fonction de son id" activite(id: ID!): Activite "Liste des activités" @@ -118,10 +117,10 @@ type Query { "Types d'étapes" etapesTypes(titreDemarcheId: ID, titreEtapeId: ID): [EtapeType] - "__*__ Utilisateur en fonction de son id" + "Utilisateur en fonction de son id" utilisateur(id: ID!): Utilisateur - "__*__ Liste d'utilisateurs en fonction d'arguments (optionnels)" + "Liste d'utilisateurs en fonction d'arguments (optionnels)" utilisateurs( intervalle: Int page: Int @@ -151,7 +150,7 @@ type Query { types: [TitreTypeType] unites: [Unite] - "__+__ Liste des permissions utilisateurs" + "Liste des permissions utilisateurs" permissions: [Permission] "Entreprise en fonction de son id" @@ -183,35 +182,30 @@ type Query { } """ -# Mutation -## _Requêtes en écriture_ +## Écriture -- [Comment tester l'API Camino ?](https://github.com/MTES-MCT/camino-api/tree/master/manual/api) - -_Mutation_ un type _racine_ de GraphQL. - -Ces requêtes sont __protégées__. Elles nécessitent une authentification par token (jwt) et un niveau de permission suffisant. Elle sont signalées par une étoile __*__. +Ces requêtes sont __protégées__. Elles nécessitent une authentification par token (jwt) et un niveau de permission suffisant. """ type Mutation { - "__*__ Connecte l'utilisateur en fonction de ses identifiants" + "Connecte l'utilisateur en fonction de ses identifiants" utilisateurTokenCreer(email: String!, motDePasse: String!): UtilisateurToken - "__*__ Connecte l'utilisateur en fonction du ticket Cerbère" + "Connecte l'utilisateur en fonction du ticket Cerbère" utilisateurCerbereTokenCreer(ticket: String!): UtilisateurToken - "__*__ Connecte l'utilisateur en fonction du ticket Cerbère" + "Connecte l'utilisateur en fonction du ticket Cerbère" utilisateurCerbereUrlObtenir(url: String!): String - "__*__ Crée un utilisateur" + "Crée un utilisateur" utilisateurCreer(utilisateur: InputUtilisateurCreation!): Utilisateur - "__*__ Modifie un utilisateur" + "Modifie un utilisateur" utilisateurModifier(utilisateur: InputUtilisateurModification!): Utilisateur - "__*__ Supprime un utilisateur" + "Supprime un utilisateur" utilisateurSupprimer(id: ID!): Utilisateur - "__*__ Modifie le mot de passe d'un utilisateur" + "Modifie le mot de passe d'un utilisateur" utilisateurMotDePasseModifier( id: ID! motDePasse: String! @@ -219,64 +213,64 @@ type Mutation { motDePasseNouveau2: String! ): Utilisateur - "__*__ Envoie un email à un utilisateur contenant une url pour modifier son mot de passe" + "Envoie un email à un utilisateur contenant une url pour modifier son mot de passe" utilisateurMotDePasseEmailEnvoyer(email: String!): String - "__*__ Envoie un email à un utilisateur contenant une url pour créer son compte" + "Envoie un email à un utilisateur contenant une url pour créer son compte" utilisateurCreationEmailEnvoyer(email: String!): String - "__*__ Initialise un mot de passe utilisateur" + "Initialise un mot de passe utilisateur" utilisateurMotDePasseInitialiser( motDePasse1: String! motDePasse2: String! ): UtilisateurToken - "__*__ Crée un titre minier" + "Crée un titre minier" titreCreer(titre: InputTitreCreation!): Titre - "__*__ Modifie un titre minier" + "Modifie un titre minier" titreModifier(titre: InputTitreModification!): Titre - "__*__ Supprime un titre minier" + "Supprime un titre minier" titreSupprimer(id: ID!): Titre - "__*__ Crée une démarche et met à jour le titre minier" + "Crée une démarche et met à jour le titre minier" demarcheCreer(demarche: InputDemarcheCreation!): Titre - "__*__ Modifie une démarche et met à jour le titre minier" + "Modifie une démarche et met à jour le titre minier" demarcheModifier(demarche: InputDemarcheModification!): Titre - "__*__ Supprime une démarche et met à jour le titre minier" + "Supprime une démarche et met à jour le titre minier" demarcheSupprimer(id: ID!): Titre - "__*__ Crée une étape et met à jour le titre minier" + "Crée une étape et met à jour le titre minier" etapeCreer(etape: InputEtapeCreation!): Titre - "__*__ Modifie une étape et met à jour le titre minier" + "Modifie une étape et met à jour le titre minier" etapeModifier(etape: InputEtapeModification!): Titre - "__*__ Supprime une étape et met à jour le titre minier" + "Supprime une étape et met à jour le titre minier" etapeSupprimer(id: ID!): Titre etapeJustificatifsAssocier(id: ID!, documentsIds: [ID]!): Titre etapeJustificatifDissocier(id: ID!, documentId: ID): Titre - "__*__ Crée un document et met à jour le titre minier" + "Crée un document et met à jour le titre minier" documentCreer(document: InputDocumentCreation!): Document - "__*__ Modifie un document et met à jour le titre minier" + "Modifie un document et met à jour le titre minier" documentModifier(document: InputDocumentModification!): Document - "__*__ Supprime un document et met à jour le titre minier" + "Supprime un document et met à jour le titre minier" documentSupprimer(id: ID!): Boolean - "__*__ Crée ou modifie une activité" + "Crée ou modifie une activité" activiteModifier(activite: InputActiviteModification!): Activite - "__*__ Crée une entreprise" + "Crée une entreprise" entrepriseCreer(entreprise: InputEntrepriseCreation!): Entreprise - "__*__ Modifie une entreprise" + "Modifie une entreprise" entrepriseModifier(entreprise: InputEntrepriseModification!): Entreprise } diff --git a/tsconfig.json b/tsconfig.json index b0af94de2d3e1d8c777e0b77dea7623bc235f09d..2093dc8dbf56677bcdd41f8fce1bb05d61b49dfd 100644 --- a/tsconfig.json +++ b/tsconfig.json @@ -19,5 +19,89 @@ "types": ["node", "jest"] }, "exclude": ["node_modules", "**/*.spec.ts", "**/*.test.ts", "**/__mocks__/*"], - "include": ["src/**/*"] + "include": ["src/**/*"], + "typedocOptions": { + "mode": "modules", + "out": "docs", + "exclude": ["**/*+(.test|.spec|.e2e).ts", "**/__mocks__/**/*"], + "includeVersion": true, + "pages": { + "groups": [ + { + "title": "Utilisation", + "pages": [ + { + "title": "Introduction", + "source": "./docs-sources/01-utilisation/01-introduction.md" + }, + { + "title": "API GraphQL", + "source": "./docs-sources/01-utilisation/02-graphql.md" + }, + { + "title": "API Rest", + "source": "./docs-sources/01-utilisation/03-rest.md" + }, + { + "title": "Flux GeoJson", + "source": "./docs-sources/01-utilisation/04-flux.md" + } + ] + }, + + { + "title": "Developpement", + "pages": [ + { + "title": "Introduction", + "source": "./docs-sources/02-developpement/01-introduction.md" + }, + { + "title": "Base de données", + "source": "./docs-sources/02-developpement/02-base-de-donnees.md" + } + ] + }, + { + "title": "Architecture", + "pages": [ + { + "title": "Introduction", + "source": "./docs-sources/03-architecture/01-introduction.md" + }, + { + "title": "Docker", + "source": "./docs-sources/03-architecture/02-docker.md" + }, + { + "title": "Scripts de sauvegarde et restauration", + "source": "./docs-sources/03-architecture/03-scripts-sauvegarde-restaurations.md" + } + ] + }, + { + "title": "Deploiement", + "pages": [ + { + "title": "Introduction", + "source": "./docs-sources/04-deploiement/01-introduction.md" + }, + { + "title": "Sauvegarde et restauration", + "source": "./docs-sources/04-deploiement/02-sauvegarde-restauration.md" + }, + { + "title": "Base de données", + "source": "./docs-sources/04-deploiement/03-base-de-donnees.md" + }, + { + "title": "Fichiers", + "source": "./docs-sources/04-deploiement/04-fichiers.md" + } + ] + } + ] + }, + "theme": "pages-plugin" + } }