Huge News!Announcing our $40M Series B led by Abstract Ventures.Learn More
Socket
Sign inDemoInstall
Socket

@gip-recia/subject-infos

Package Overview
Dependencies
Maintainers
4
Versions
16
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

@gip-recia/subject-infos

Subject Infos

  • 0.0.16
  • latest
  • Source
  • npm
  • Socket score

Version published
Maintainers
4
Created
Source

Esup Subject-Infos

Subject-Infos est un webcomponent s'appuyant sur la librairie Lit pour afficher le détail d'une personne/d'un groupe.

Installation

  1. Installation via npm :
npm install @gip-recia/subject-infos
  1. Importation du composant :

Dans un module JavaScript :

import '@gip-recia/subject-infos';

Dans une page HTML :

<script type="module">
  import './path/to/subject-infos.js'
</script>

Ou directement la verion minifiée :

<script src="./path/to/subject-infos.bundle.min.js"></script>
  1. Ajout du composant sur une page HTML :
const subjectInfos = document.createElement('esup-subject-infos');
subjectInfos.subject = {...};
subjectInfos.config = {...};
subjectInfos.onSubjectClicked = () => ...;
document.body.appendChild(subjectInfos);

Paramètres

Le webcomponent Subject-Infos accepte les paramètres suivants :

  • subject - Objet contenant les éléments permettant l'affichage de la personne/du groupe.

Les propriétés de l'objet varient selon le context :

Contexte DTO :

NomTypeObligatoireDescription
modelId.keyIdStringOuiIdentifiant de la personne/du groupe
modelId.keyTypeStringOuiType associé à la personne/au groupe
displayNameStringOuiNom de de la personne/du groupe a afficher
foundOnExternalSourceBooleanOuiIndique si la personne/le group a été trouvé dans les sources externes

Contexte Key :

NomTypeObligatoireDescription
keyIdStringOuiIdentifiant de la personne/du groupe
keyTypeStringOuiType associé à la personne/au groupe

Contexte ExtendedKey :

NomTypeObligatoireDescription
keyTypeStringOuiType associé à la personne/au groupe
keyValueStringOuiValeur associé à la personne/au groupe
keyAttributeStringOuiAttribut de la personne/du groupe à afficher
  • config - Objet contenant la configuration du composant.

Propriétés disponibles :

NomTypeObligatoireDescription
langStringNonLangue du composant. Valeur initialement disponible : 'fr', 'en'. Possibilité de rajouter des langues via la propriété labels
labelsObjectNonPermet de surcharger les labels affichés ou de définir de nouvelles langues.
resolveKeyBooleanNonIndique s'il faut recharger les données de la personne/du groupe si nécessaire. Par défaut: true.
getSubjectInfosFunctionOuiFonction permettant de récupérer les données d'une personne/d'un groupe. Paramètres : keyType et keyId de la personne/du groupe. Retourne : une promise avec les infos de la personne/du groupe.
userDisplayedAttrsArrayOuiTableau des propriétés de la personne/du groupe à afficher.
  • onSubjectClicked - Fonction appelée lors du clic sur la personne/le groupe.

Slot

Il est possoble d'afficher un élément devant la personne/le groupe en passant un enfant au composant. L'élément enfant est alors affiché via un élément slot.

Exemple :

<esup-color-palette-picker .color="..." .config="..." .onColorChanged="...">
  <span>Test</span>
</esup-color-palette-picker>

Variables CSS

Modification de style

Plusieurs variables CSS peuvent être définis pour personnaliser le composant :

NomDescription
--subject-infos-text-colorPermet de modifier la couleur du lien de l'élément
--subject-infos-focus-background-colorPermet de modifier la couleur de fond du lien de l'élément à l'état focus/hover
--subject-infos-focus-text-colorPermet de modifier la couleur du texte du lien de l'élément à l'état focus/hover

Par défaut le webcomponent Subject-Infos s'appuie sur les fonts Font-Awesome pour afficher des icônes (via des pseudo-elements). Il est cependant possible de personnaliser les icônes affichées via les propriétés suivantes :

NomDescription
--icon-question-font-familyPermet de configurer la famille de police de caractères de l'icône de type de sujet inconnu
--icon-question-font-weightPermet de configurer poids de la police de caractères de l'icône de type de sujet inconnu
--icon-question-contentCaractère unicode dans la famille de police de caractères utilisée pour l'icône de type inconnu
--icon-users-font-familyPermet de configurer la famille de police de caractères de l'icône de type du sujet dans le cas d'un groupe
--icon-users-font-weightPermet de configurer poids de la police de caractères de l'icône de type du sujet dans le cas d'un groupe
--icon-users-contentCaractère unicode dans la famille de police de caractères utilisée pour l'icône de type du sujet dans le cas d'un groupe
--icon-user-font-familyPermet de configurer la famille de police de caractères de l'icône de type du sujet dans le cas d'une personne
--icon-user-font-weightPermet de configurer poids de la police de caractères de l'icône de type du sujet dans le cas d'une personne
--icon-user-contentCaractère unicode dans la famille de police de caractères utilisée pour l'icône de type du sujet dans le cas d'une personne

Utilisation

Exemple de configuration des variables css dans un fichier de style :

esup-subject-infos {
  --subject-infos-text-color: #fc0;
  --subject-infos-background-color: #303030;
  --icon-question-font-family: 'Font Awesome 5 Free';
  --icon-question-font-weight: 900;
  --icon-question-font-content: '\\f128';
}

Test du webcomponent

Pour tester le webcomponent, exécuter la commande suivante :

npm start

Une page avec le webcomponent est alors disponible à l'adresse http://localhost:8000.

FAQs

Package last updated on 06 Nov 2023

Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc