@infrasoftbe/infrasoft-project

Infrasoft Project / Exports

Ce package contient des classes et des interfaces TypeScript pour gérer des nœuds, des relations, des métadonnées, des structures et des opérations dans un système de gestion de données. Voici comment utiliser ce package :

Pour installer le package, utilisez npm ou yarn :

npm install infrasoft-vnv-project
# ou
yarn add infrasoft-vnv-project

Vous pouvez importer les modules nécessaires à partir du package :

import { Node, ProjectInstance, OperationStack, MetaContainer, Project } from 'infrasoft-vnv-project';

Pour créer un nœud, utilisez la classe Node :

const node = new Node({ self: 'node1', data: {} });

La classe ProjectInstance permet de manipuler les nœuds, les relations, les métadonnées, les structures et les opérations :

const projectInstance = ProjectInstance.init({ self: 'node2', data: {}, operations: new OperationStack() });
projectInstance.addRelation('node1', 'HAS_LINK');

Utilisez OperationStack pour gérer une collection d'opérations :

const operationStack = new OperationStack();
operationStack.add({ type: 'create', target: 'node1' });

Utilisez MetaContainer pour gérer les métadonnées :

const meta = new MetaContainer({ key: 'description', value: 'This is a node' });

Pour manipuler une instance de projet, utilisez la classe Project :

const project = ProjectInstance.init({ self: 'project1', data: {} });

// Ajouter un nœud au projet
const node = new Node({ self: 'node1', data: {} });
project.addNode(node);

// Ajouter une relation entre les nœuds
const node2 = new Node({ self: 'node2', data: {} });
project.addNode(node2);
project.addRelation('node1', 'node2', 'HAS_LINK');

// Gérer les opérations du projet
const operationStack = new OperationStack();
operationStack.add({ type: 'create', target: 'node1' });
project.setOperations(operationStack);

Le package fournit également plusieurs types et interfaces pour typer vos données :

import { IProjectInstance, IOperationStack, NodeType, RelationKind } from 'infrasoft-vnv-project';

Pour des exemples complets et plus détaillés, veuillez consulter la documentation.

Élément Description
OperationStack Structure de données stockant et gérant une collection d'opérations à l'aide d'un objet Map.
ProjectInstance Classe étendant la fonctionnalité de la classe Node, ajoutant des méthodes pour manipuler les nœuds, relations, métadonnées, structures et opérations.
MetaContainer Objet représentant une métadonnée contenant des informations supplémentaires liées à un nœud, relation ou structure.
Node Classe représentant un nœud avec des propriétés telles que "self" et "data".
NodeData Classe représentant les données associées à un nœud.
Operation Classe représentant une opération avec des propriétés telles que "data" et "eventTime".
IOperationStack Interface décrivant la structure d'une pile d'opérations.
IProjectInstance Interface décrivant la structure d'un nœud étendu avec des méthodes supplémentaires.
INodeExtendedInitOptions Interface décrivant les options d'initialisation d'un nœud étendu.
TOperationStackOptionsInit Type décrivant les options d'initialisation d'une pile d'opérations.
NodeListInitOptions Interface décrivant les options d'initialisation d'une liste de nœuds.
NodeType Type représentant les différents types de nœuds possibles.
NodeTokenPrefix Type représentant les préfixes des jetons de nœuds.
StructurePrefix Type représentant les préfixes des structures.
RelationKind Type représentant les différents types de relations possibles entre les nœuds.
NodeColorCode Type représentant les codes de couleur associés à chaque type de nœud.
NodeConstructorMap Type mappant les types de nœuds à leurs constructeurs correspondants.
MetadataConstructorMap Type mappant les types de nœuds à leurs constructeurs de métadonnées correspondants.
Prefix Énumération représentant les valeurs de préfixe pour différents types de nœuds.
NodePrefixType Énumération définissant un mappage entre les valeurs de préfixe et leurs types de nœuds correspondants.
StructureType Énumération représentant les types de structures.
StandardListTokens Énumération définissant un ensemble de jetons standard pour différents types de listes.
StandardListNames Tableau contenant les noms des listes standards.
Colors Objet représentant les codes de couleur associés à chaque type de nœud.
RelationNames Tableau contenant les noms des relations possibles entre les nœuds.
ProcesseNames Tableau contenant les noms des processus.