@duplojs/agents-kit 0.1.0-beta.6 → 0.1.0-beta.7

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,10 +1,18 @@
1
1
  ### Constantes et types de DPrinter
2
2
 
3
- Les constantes publiques fournissent les séparateurs textuels usuels, tandis que les types décrivent les couleurs et les valeurs acceptées par les fonctions de rendu.
3
+ Les enums publiques sélectionnent les fins de ligne et les unités d'indentation, tandis que les types décrivent les paramètres et les valeurs acceptées par les fonctions de rendu.
4
4
 
5
5
  ---
6
6
 
7
- Les constantes `back`, `dash` et `tab` valent respectivement `"\n"`, `"-"` et `"\t"`. Elles peuvent servir de séparateurs pour `render` ou pour assembler du texte dans d’autres traitements.
7
+ `Indent` est une enum créée avec `DCommon.createEnum`, qui propose `tab`, `space1`, `space2`, `space3` et `space4`. `Back` propose `LF` et `CRLF`. Les types du même nom représentent leurs valeurs respectives. Ces enums ne produisent pas de texte : leur interprétation appartient aux fonctions de rendu.
8
+
9
+ `RenderLineParams` expose un `joinCharacter` optionnel, égal à une espace par défaut. `RenderParagraphParams` expose un `back` optionnel, égal à `Back.LF` par défaut ; le séparateur du paragraphe est exclusivement cette fin de ligne.
10
+
11
+ Les deux fonctions acceptent un `indent` optionnel, sélectionné avec `Indent`, et un `indentLevel` optionnel, égal à `0` par défaut. Sans type ou sans quantité, aucune indentation n'est ajoutée. La quantité multiplie l'unité choisie : `Indent.space2` avec `indentLevel: 3` produit six espaces. Les quantités négatives ou non finies désactivent l'indentation ; les fractions positives sont tronquées.
12
+
13
+ `renderLine` préfixe uniquement le début du texte assemblé. `renderParagraph` préfixe chaque ligne, y compris celles déjà présentes dans les chaînes d'entrée, en préservant leurs fins de ligne. Un tableau sans valeur rendable produit toujours une chaîne vide.
14
+
15
+ La constante `dash` vaut `"-"`.
8
16
 
9
17
  `Colors` est l’union des couleurs ANSI disponibles : `"red"`, `"green"`, `"yellow"`, `"blue"`, `"magenta"`, `"cyan"` et `"gray"`. Les fonctions `colorized` et `colorizedBold` utilisent cette union pour sélectionner leur couleur.
10
18
 
@@ -10,3 +10,27 @@ const line = DPrinter.renderLine(["Nom", [true, "Ada"], false]);
10
10
 
11
11
  // La valeur obtenue est "Nom true Ada" ; false ne produit aucun texte.
12
12
  type _CheckLine = DCommon.ExpectType<typeof line, string, "strict">;
13
+
14
+ const indentedLine = DPrinter.renderLine(["Nom", "Ada"], {
15
+ indent: DPrinter.Indent.space2,
16
+ indentLevel: 1,
17
+ });
18
+ // La valeur obtenue est " Nom Ada" : l'indentation préfixe la ligne une seule fois.
19
+ type _CheckIndentedLine = DCommon.ExpectType<typeof indentedLine, string, "strict">;
20
+
21
+ // Un séparateur personnalisé permet notamment d'assembler des fragments sans espace.
22
+ const compact = DPrinter.renderLine(["Nom", ": ", "Ada"], {
23
+ joinCharacter: "",
24
+ indent: DPrinter.Indent.tab,
25
+ indentLevel: 2,
26
+ });
27
+ // La valeur obtenue est "\t\tNom: Ada".
28
+ type _CheckCompact = DCommon.ExpectType<typeof compact, string, "strict">;
29
+
30
+ // Une chaîne multiligne conserve ses lignes suivantes sans indentation ajoutée.
31
+ const multiline = DPrinter.renderLine(["Nom\nAda"], {
32
+ indent: DPrinter.Indent.space2,
33
+ indentLevel: 1,
34
+ });
35
+ // La valeur obtenue est " Nom\nAda".
36
+ type _CheckMultiline = DCommon.ExpectType<typeof multiline, string, "strict">;
@@ -4,7 +4,7 @@
4
4
  * Assembler récursivement des valeurs en séparant les éléments par un saut de ligne.
5
5
  */
6
6
  import * as DPrinter from "@duplojs/lang/printer";
7
- import type * as DCommon from "@duplojs/lang/common";
7
+ import * as DCommon from "@duplojs/lang/common";
8
8
 
9
9
  const paragraph = DPrinter.renderParagraph([
10
10
  "Première ligne",
@@ -14,3 +14,24 @@ const paragraph = DPrinter.renderParagraph([
14
14
 
15
15
  // La valeur obtenue est "Première ligne\nDeuxième ligne\nTroisième ligne".
16
16
  type _CheckParagraph = DCommon.ExpectType<typeof paragraph, string, "strict">;
17
+
18
+ // Le rendu direct permet de choisir CRLF et une indentation par ligne.
19
+ const windowsParagraph = DPrinter.renderParagraph(["Première", "Deuxième"], {
20
+ back: DPrinter.Back.CRLF,
21
+ indent: DPrinter.Indent.tab,
22
+ indentLevel: 1,
23
+ });
24
+ // La valeur obtenue est "\tPremière\r\n\tDeuxième".
25
+ type _CheckWindowsParagraph = DCommon.ExpectType<typeof windowsParagraph, string, "strict">;
26
+
27
+ // La forme curifiée configure le rendu avant de recevoir les valeurs du pipe.
28
+ const spacedParagraph = DCommon.pipe(
29
+ ["Première", ["Deuxième", false]],
30
+ DPrinter.renderParagraph({
31
+ back: DPrinter.Back.LF,
32
+ indent: DPrinter.Indent.space2,
33
+ indentLevel: 1,
34
+ }),
35
+ );
36
+ // La valeur obtenue est " Première\n Deuxième".
37
+ type _CheckSpacedParagraph = DCommon.ExpectType<typeof spacedParagraph, string, "strict">;
@@ -4,7 +4,7 @@ Fonctions et constantes pour assembler du texte, formater des lignes et paragrap
4
4
 
5
5
  ### [Constantes et types de DPrinter](10-primitives.md)
6
6
 
7
- Les constantes publiques fournissent les séparateurs textuels usuels, tandis que les types décrivent les couleurs et les valeurs acceptées par les fonctions de rendu.
7
+ Les enums publiques sélectionnent les fins de ligne et les unités d'indentation, tandis que les types décrivent les paramètres et les valeurs acceptées par les fonctions de rendu.
8
8
 
9
9
 
10
10
  ### [DPrinter.bold](10-bold.ts)
@@ -19,14 +19,6 @@ Encadrer une chaîne par les codes ANSI d’une couleur sélectionnée.
19
19
 
20
20
  Appliquer une couleur ANSI et le style gras à une chaîne.
21
21
 
22
- ### [DPrinter.indent](10-indent.ts)
23
-
24
- Produire une chaîne contenant le nombre demandé de tabulations.
25
-
26
- ### [DPrinter.render](10-render.ts)
27
-
28
- Assembler récursivement des valeurs rendables avec un séparateur choisi.
29
-
30
22
  ### [DPrinter.renderLine](10-renderLine.ts)
31
23
 
32
24
  Assembler récursivement des valeurs en séparant les éléments par une espace.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@duplojs/agents-kit",
3
- "version": "0.1.0-beta.6",
3
+ "version": "0.1.0-beta.7",
4
4
  "license": "MIT",
5
5
  "author": {
6
6
  "name": "DuploJS",
@@ -32,19 +32,19 @@
32
32
  "./docs/API/*/index.llms.md": "./docs/API/*/index.llms.md"
33
33
  },
34
34
  "dependencies": {
35
- "@duplojs/lang": "0.1.0-beta.6",
36
- "@duplojs/server": "0.1.0-beta.6"
35
+ "@duplojs/lang": "0.1.0-beta.7",
36
+ "@duplojs/server": "0.1.0-beta.7"
37
37
  },
38
38
  "peerDependencies": {
39
- "@duplojs/code-config": "0.1.0-beta.6",
40
- "@duplojs/eslint": "0.1.0-beta.6",
41
- "@duplojs/form": "0.1.0-beta.6",
42
- "@duplojs/http": "0.1.0-beta.6",
43
- "@duplojs/json-web-token": "0.1.0-beta.6",
44
- "@duplojs/lang": "0.1.0-beta.6",
45
- "@duplojs/playwright": "0.1.0-beta.6",
46
- "@duplojs/server": "0.1.0-beta.6",
47
- "@duplojs/tools": "0.1.0-beta.6"
39
+ "@duplojs/code-config": "0.1.0-beta.7",
40
+ "@duplojs/eslint": "0.1.0-beta.7",
41
+ "@duplojs/form": "0.1.0-beta.7",
42
+ "@duplojs/http": "0.1.0-beta.7",
43
+ "@duplojs/json-web-token": "0.1.0-beta.7",
44
+ "@duplojs/lang": "0.1.0-beta.7",
45
+ "@duplojs/playwright": "0.1.0-beta.7",
46
+ "@duplojs/server": "0.1.0-beta.7",
47
+ "@duplojs/tools": "0.1.0-beta.7"
48
48
  },
49
49
  "peerDependenciesMeta": {
50
50
  "@duplojs/code-config": {
@@ -70,8 +70,8 @@
70
70
  }
71
71
  },
72
72
  "devDependencies": {
73
- "@duplojs/code-config": "0.1.0-beta.6",
74
- "@duplojs/eslint": "0.1.0-beta.6",
73
+ "@duplojs/code-config": "0.1.0-beta.7",
74
+ "@duplojs/eslint": "0.1.0-beta.7",
75
75
  "@types/node": "24.13.3",
76
76
  "@types/web": "0.0.358",
77
77
  "vue": "3.5.43",
@@ -1,20 +0,0 @@
1
- /**
2
- * @title DPrinter.indent
3
- *
4
- * Produire une chaîne contenant le nombre demandé de tabulations.
5
- */
6
- import * as DPrinter from "@duplojs/lang/printer";
7
- import type * as DCommon from "@duplojs/lang/common";
8
-
9
- // Deux niveaux produisent "\t\t".
10
- const nestedIndent = DPrinter.indent(2);
11
- type _CheckNestedIndent = DCommon.ExpectType<typeof nestedIndent, string, "strict">;
12
-
13
- // Une profondeur négative produit "".
14
- const rootIndent = DPrinter.indent(-1);
15
- type _CheckRootIndent = DCommon.ExpectType<typeof rootIndent, string, "strict">;
16
-
17
- // Les niveaux non finis sont ignorés ; une fraction positive est tronquée.
18
- const fractional = DPrinter.indent(2.5);
19
- // La valeur obtenue est "\t\t".
20
- type _CheckFractional = DCommon.ExpectType<typeof fractional, string, "strict">;
@@ -1,29 +0,0 @@
1
- /**
2
- * @title DPrinter.render
3
- *
4
- * Assembler récursivement des valeurs rendables avec un séparateur choisi.
5
- */
6
- import * as DPrinter from "@duplojs/lang/printer";
7
- import * as DCommon from "@duplojs/lang/common";
8
-
9
- // Appel direct : les tableaux imbriqués sont aplatis et true est rendu.
10
- // false, null et undefined sont ignorés.
11
- const summary = DPrinter.render(
12
- ["Éléments", [true, "validés"], false, null, undefined],
13
- " ",
14
- );
15
- // La valeur obtenue est "Éléments true validés".
16
- type _CheckSummary = DCommon.ExpectType<typeof summary, string, "strict">;
17
-
18
- // Appel curifié dans un pipe : le séparateur est configuré avant de recevoir les valeurs.
19
- const compact = DCommon.pipe(
20
- ["nom", ["type", false], "statut"],
21
- DPrinter.render(" · "),
22
- );
23
- // La valeur obtenue est "nom · type · statut".
24
- type _CheckCompact = DCommon.ExpectType<typeof compact, string, "strict">;
25
-
26
- // Une chaîne vide est conservée, contrairement à false, null et undefined.
27
- const emptyField = DPrinter.render(["nom", "", "statut"], "|");
28
- // La valeur obtenue est "nom||statut" ; un tableau sans élément rendable donnerait "".
29
- type _CheckEmptyField = DCommon.ExpectType<typeof emptyField, string, "strict">;