npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2024 – Pkg Stats / Ryan Hefner

@gip-recia/subject-search-button

v0.0.20

Published

Subject Search Button

Downloads

356

Readme

Esup Subject-Search-Button

Subject-Search-Button est un webcomponent s'appuyant sur la librairie Lit pour rechercher et sélectionner une personne/d'un groupe.

Ce webcomponent utilise les webcomponents suivants :

  • @gip-recia/js-tree

Installation

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

Dans un module JavaScript :

import '@gip-recia/subject-search-button';

Dans une page HTML :

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

Ou directement la verion minifiée :

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

Paramètres

Le webcomponent Subject-Search-Button accepte les paramètres suivants :

  • searchType - Type de données recherchées. Valeur possible : 'PERSON', 'GROUP'. Si non reseignée, recherche de tous les types de données.

  • withExtended - Indique si l'on souhaite affichée la recherche étendue.

  • searchId - Identifiant unique du composant.

  • multiSelection - Active ou non la multisélection.

  • config - Objet contenant la configuration du composant.

Propriétés disponibles :

| Nom | Type | Obligatoire | Description | | ------------------ | -------- | ----------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | | lang | String | Non | Langue du composant. Valeur initialement disponible : 'fr', 'en'. Possibilité de rajouter des langues via la propriété labels. | | labels | Object | Non | Permet de surcharger les labels affichés ou de définir de nouvelles langues. | | treeGroupDatas | Array | Oui | Tableau des donnés affichées dans l'arborescence des groupes (cf. propriété datas du composant @gip-recia/js-tree, les noeuds de l'arbre doivent contenir en plus les propriétés a_attr.model.modelId.keyId et a_attr.model.modelId.KeyType représentant l'identifiant et le type du noeud). | | userDisplayedAttrs | Array | Oui | Tableau des propriétés de la personne/du groupe à afficher. | | extendedAttrs | Array | Non | Tableau des attributs disponibles pour la recherhce étendue (obligatoire si withExtended est à true). | | searchUsers | Function | Oui | Fonction retournant une promise permettant de rechercher des personnes à partir d'un texte. | | getGroupMembers | Function | Oui | Fonction retournant une promise permettant de rechercher les personnes appartenant à un groupe. |

  • onSelection - Fonction appelée lors de la sélection de personnes/groupes.

Variables CSS

Modification de style

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

| Nom | Description | | -------------------------------------- | ----------------------------------------------------------------- | | --text-color-pagination | Permet de modifier la couleur du texte des éléments de pagination | | --selected-text-color-pagination | Permet de modifier la couleur du texte de la page sélectionnée | | --selected-background-color-pagination | Permet de modifier la couleur de fond de la page sélectionnée | | --validate-button-text-color | Permet de modifier la couleur du texte du bouton de validation | | --validate-button-background-color | Permet de modifier la couleur de fond du bouton de validation | | --validate-button-border-color | Permet de modifier la couleur de bordure du bouton de validation |

Par défaut le webcomponent Subject-Search-Button 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 :

| Nom | Description | | --------------------------- | ------------------------------------------------------------------------------------------------------------------------- | | --icon-plus-font-family | Permet de configurer la famille de police de caractères de l'icône des boutons principaux | | --icon-plus-font-weight | Permet de configurer poids de la police de caractères de l'icône des boutons principaux | | --icon-plus-content | Caractère unicode dans la famille de police de caractères utilisée pour l'icône des boutons principaux | | --icon-cancel-font-family | Permet de configurer la famille de police de caractères de l'icône du bouton d'annulation | | --icon-cancel-font-weight | Permet de configurer poids de la police de caractères de l'icône du bouton d'annulation | | --icon-cancel-content | Caractère unicode dans la famille de police de caractères utilisée pour l'icône du bouton d'annulation | | --icon-validate-font-family | Permet de configurer la famille de police de caractères de l'icône du bouton de validation | | --icon-validate-font-weight | Permet de configurer poids de la police de caractères de l'icône du bouton de validation | | --icon-validate-content | Caractère unicode dans la famille de police de caractères utilisée pour l'icône du bouton de validation | | --icon-question-font-family | Permet de configurer la famille de police de caractères de l'icône d'information de la recherche utilisateur | | --icon-question-font-weight | Permet de configurer poids de la police de caractères de l'icône d'information de la recherche utilisateur | | --icon-question-content | Caractère unicode dans la famille de police de caractères utilisée pour l'icône d'information de la recherche utilisateur | | --icon-search-font-family | Permet de configurer la famille de police de caractères de l'icône du bouton de recherche | | --icon-search-font-weight | Permet de configurer poids de la police de caractères de l'icône du bouton de recherche | | --icon-search-content | Caractère unicode dans la famille de police de caractères utilisée pour l'icône du bouton de recherche |

Les variables CSS définies dans le webcomponent @gip-recia/js-tree peuvent être utilisées pour également personnaliser le webcomponent.

Utilisation

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

esup-subject-search-button {
  --icon-plus-font-family: 'Font Awesome 5 Free';
  --icon-plus-font-weight: 900;
  --icon-plus-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.