Skip to content

Commit

Permalink
Merge pull request #37 from reseau-constellation/extras-orbite-externes
Browse files Browse the repository at this point in the history
Migration vers `Set` et `OrderedKeyValue`
  • Loading branch information
julienmalard authored Oct 3, 2023
2 parents effbeca + dd7b4ee commit a92ee5e
Show file tree
Hide file tree
Showing 33 changed files with 768 additions and 817 deletions.
2 changes: 2 additions & 0 deletions .github/workflows/tests.yml
Original file line number Diff line number Diff line change
@@ -1,6 +1,8 @@
name: Tests IPA
on:
push:
branches:
- main
paths-ignore:
- '**.md'
- 'docu/**'
Expand Down
2 changes: 1 addition & 1 deletion docu/src/avancé/autresLangages/introduction.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@ dans d'autres langages informatiques. Des clients sont disposibles dans les lang

* [Python](./python.md) : Fonctionnel
* [Julia](./julia.md) : Fonctionnel
* [R](https://github.com/reseau-constellation/client-r) : En progrès.
* [R](./r.md) : Fonctionnel
* Autres langages : Si vous développez un client Constellation dans un autre langage, [contactez-nous](mailto:[email protected]) et nous l'annoncerons ici.

Tous ces clients fonctionnent en ouvrant un serveur WS Constellation local sur votre machine. Le client Python, Julia ou autre communiquera ensuite avec ce serveur local par messages WS et vous permettent d'utiliser Constellation dans le langage de votre choix.
Expand Down
22 changes: 11 additions & 11 deletions docu/src/ipa/bds.md
Original file line number Diff line number Diff line change
Expand Up @@ -1276,12 +1276,12 @@ Ajoute un élément à un tableau d'une base de données unique.
| `schémaBd` | [`schémaSpécificationBd`](#schema-bd) | Le schéma de spécification de la base de données. Il sera utilisé pour créer la base de données si elle n'existe pas encore. |
| `idNuéeUnique` | `string` | L'identifiant de la nuée à laquelle une seule base de données par compte peut appartenir. Doit exister dans `schémaBd`. |
| `clefTableau` | `string` | La clef du tableau auquel nous voulons ajouter des données. Doit exister dans `schémaBd`. |
| `vals` | [`élémentBdListeDonnées`](./tableaux.md#types-donnees) | Les données à ajouter. |
| `vals` | [`élémentBdListeDonnées | élémentBdListeDonnées`](./tableaux.md#types-donnees) `[]` | Les données à ajouter. |

#### Retour
| Type | Description |
| ---- | ----------- |
| `Promise<string>` | L'empreinte (identifiant unique) de l'élément ajouté. |
| `Promise<string[]>` | Les identifiants unique des éléments ajoutés. |

#### Exemple
```ts
Expand All @@ -1290,11 +1290,11 @@ Ajoute un élément à un tableau d'une base de données unique.
const image = ref<File>() // L'image sera sélectionnée par l'utilisateur dans l'interface
const site = ref<string>() // Pareil pour le site de l'observation

const empreinteDonnées = ref<string>();
const idsÉléments = ref<string[]>();

const sauvegarderDonnées = async () => {
if (!image.value || !site.value) return // Arrêter ici si l'image ou le site n'ont pas encore été sélectionnés
empreinteDonnées.value = await client.bds.ajouterÉlémentÀTableauUnique({
idsÉléments.value = await client.bds.ajouterÉlémentÀTableauUnique({
schémaBd,
idNuéeUnique,
clefTableau: CLEF_TABLEAU,
Expand All @@ -1307,7 +1307,7 @@ const sauvegarderDonnées = async () => {
};
```

### `client.bds.modifierÉlémentDeTableauUnique({ schémaBd, idNuéeUnique, clefTableau, vals, empreintePrécédente })`
### `client.bds.modifierÉlémentDeTableauUnique({ schémaBd, idNuéeUnique, clefTableau, vals, idÉlément })`
Modifie un élément d'un tableau d'une base de données unique.

#### Paramètres
Expand All @@ -1317,12 +1317,12 @@ Modifie un élément d'un tableau d'une base de données unique.
| `idNuéeUnique` | `string` | L'identifiant de la nuée à laquelle une seule base de données par compte peut appartenir. Doit exister dans `schémaBd`. |
| `clefTableau` | `string` | La clef du tableau dont nous voulons modifier des données. Doit exister dans `schémaBd`. |
| `vals` | { [idColonne: string]: [`élémentsBd`](./tableaux.md#types-donnees) \| undefined } | Les données à jour. Si une colonne n'apparaît pas sur `vals`, elle ne sera pas modifiée. Si, au contraire, elle est égale à `undefined`, la valeur correspondante sera effacée. |
| `empreintePrécédente` | `string` | L'empreinte de l'élément à modifier. |
| `idÉlément` | `string` | L'identifiant de l'élément à modifier. |

#### Retour
| Type | Description |
| ---- | ----------- |
| `Promise<string>` | L'empreinte (identifiant unique) de l'élément modifié. |
| `Promise<string>` | L'identifiant de l'élément modifié. |

#### Exemple
```ts
Expand All @@ -1339,12 +1339,12 @@ const modifierImage = async () => {
vals: {
"image": nouvelleImage.value ,
},
empreintePrécédente: empreinteDonnées.value,
idÉlément: idsÉléments.value[0],
});
};
```

### `client.bds.effacerÉlémentDeTableauUnique({ schémaBd, idNuéeUnique, clefTableau, empreinte })`
### `client.bds.effacerÉlémentDeTableauUnique({ schémaBd, idNuéeUnique, clefTableau, idÉlément })`
Efface un élément d'un tableau d'une base de données unique.

#### Paramètres
Expand All @@ -1353,7 +1353,7 @@ Efface un élément d'un tableau d'une base de données unique.
| `schémaBd` | [`schémaSpécificationBd`](#schema-bd) | Le schéma de spécification de la base de données. Il sera utilisé pour créer la base de données si elle n'existe pas encore. |
| `idNuéeUnique` | `string` | L'identifiant de la nuée à laquelle une seule base de données par compte peut appartenir. Doit exister dans `schémaBd`. |
| `clefTableau` | `string` | La clef du tableau dont nous voulons effacer des données. Doit exister dans `schémaBd`. |
| `empreinte` | `string` | L'empreinte de la rangée à effacer. |
| `idÉlément` | `string` | L'identifiant de la rangée à effacer. |

#### Exemple
```ts
Expand All @@ -1364,7 +1364,7 @@ const effacerDonnées = async () => {
schémaBd,
idNuéeUnique,
clefTableau: CLEF_TABLEAU,
empreinte: empreinteDonnées.value,
idÉlément: idsÉléments.value[0],
});
};
```
Expand Down
6 changes: 3 additions & 3 deletions docu/src/ipa/licences.md
Original file line number Diff line number Diff line change
Expand Up @@ -70,13 +70,13 @@ await client.licences.suggérerLicence({
})
```

### `client.licences.effacerSuggestionLicence({ empreinte })`
### `client.licences.effacerSuggestionLicence({ idÉlément })`
Efface une suggesion de nouvelle licence que vous aviez fait auparavant.

#### Paramètres
| Nom | Type | Description |
| --- | ---- | ----------- |
| `empreinte` | `string` | L'identifiant unique de votre suggestion. |
| `idÉlément` | `string` | L'identifiant unique de votre suggestion. |

#### Exemple
```ts
Expand All @@ -85,7 +85,7 @@ import { générerClient } from "@constl/ipa";
const client = générerClient({});

await client.licences.effacerSuggestionLicence({
empreinte: "codeDeMaSuggestion"
idÉlément: "codeDeMaSuggestion"
})
```

Expand Down
2 changes: 1 addition & 1 deletion docu/src/ipa/règles.md
Original file line number Diff line number Diff line change
Expand Up @@ -266,7 +266,7 @@ Ces types sont associés aux erreurs de validation des données et des règles e

```ts
type erreurValidation<T extends règleVariable = règleVariable> = {
empreinte: string;
id: string;
erreur: {
règle: règleColonne<T>;
};
Expand Down
20 changes: 10 additions & 10 deletions docu/src/ipa/tableaux.md
Original file line number Diff line number Diff line change
Expand Up @@ -289,7 +289,7 @@ Ajoute un ou plusieurs éléments à un tableau.
#### Retour
| Type | Description |
| ---- | ----------- |
| `Promise<string[]>` | Les empreintes (identifiants uniques) des éléments ajoutés. |
| `Promise<string[]>` | Les identifiants uniques des éléments ajoutés. |

#### Exemple
```ts
Expand Down Expand Up @@ -326,7 +326,7 @@ const idColTempérature = await client.tableaux.ajouterColonneTableau({
});

// Enfin, ajouter les données
const empreintesDonnées = await client.tableaux.ajouterÉlément({
const idsÉléments = await client.tableaux.ajouterÉlément({
schémaBd,
idNuéeUnique,
clefTableau: CLEF_TABLEAU,
Expand All @@ -338,20 +338,20 @@ const empreintesDonnées = await client.tableaux.ajouterÉlément({
});
```

### `client.tableaux.modifierÉlément({ idTableau, vals, empreintePrécédente })`
### `client.tableaux.modifierÉlément({ idTableau, vals, idÉlément })`
Modifie un élément d'un tableau.

#### Paramètres
| Nom | Type | Description |
| --- | ---- | ----------- |
| `idTableau` | `string` | L'identifiant du tableau. |
| `vals` | { [idColonne: string]: [`élémentsBd`](./tableaux.md#types-donnees) \| undefined } | Les données à jour. Si une colonne n'apparaît pas sur `vals`, elle ne sera pas modifiée. Si, au contraire, elle est égale à `undefined`, la valeur correspondante sera effacée. |
| `empreintePrécédente` | `string` | L'empreinte de l'élément à modifier. |
| `idÉlément` | `string` | L'identifiant de l'élément à modifier. |

#### Retour
| Type | Description |
| ---- | ----------- |
| `Promise<string>` | L'empreinte (identifiant unique) de l'élément modifié. |
| `Promise<string>` | L'identifiant unique de l'élément modifié. |

#### Exemple
```ts
Expand All @@ -362,25 +362,25 @@ await client.tableaux.modifierÉlément({
vals: {
[idColTempérature]: 38.2 ,
},
empreintePrécédente: empreinteDonnées,
idsÉléments[0],
});
```

### `client.tableaux.effacerÉlément({ idTableau, empreinte })`
### `client.tableaux.effacerÉlément({ idTableau, idÉlément })`
Efface un élément d'un tableau.

#### Paramètres
| Nom | Type | Description |
| --- | ---- | ----------- |
| `idTableau` | `string` | L'identifiant du tableau. |
| `empreinte` | `string` | L'empreinte de la rangée à effacer. |
| `idÉlément` | `string` | L'identifiant de la rangée à effacer. |

#### Exemple
```ts
// ...continuant de ci-dessus...
await client.tableaux.effacerÉlément({
idTableau,
empreinte: empreinteDonnées,
idÉlément: idsÉléments[0],
});
```

Expand Down Expand Up @@ -693,7 +693,7 @@ interface élémentDonnées<
T extends élémentBdListeDonnées = élémentBdListeDonnées
> {
données: T;
empreinte: string; // Identifiant unique de la rangé de données
id: string; // Identifiant unique de la rangé de données
}

type élémentBdListeDonnées = {
Expand Down
2 changes: 1 addition & 1 deletion package.json
Original file line number Diff line number Diff line change
Expand Up @@ -90,7 +90,7 @@
"@chainsafe/libp2p-gossipsub": "^7.0.0",
"@chainsafe/libp2p-noise": "^11.0.4",
"@chriscdn/promise-semaphore": "^2.0.7",
"@constl/bohr-db": "^0.0.2",
"@constl/bohr-db": "^0.0.6",
"@constl/electron-webrtc-relay": "^0.2.3",
"@constl/mandataire": "^0.1.14",
"@constl/orbit-db-kuiper": "^0.0.2",
Expand Down
Loading

0 comments on commit a92ee5e

Please sign in to comment.