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 🙏

© 2026 – Pkg Stats / Ryan Hefner

@leyton-techlab/vue-input-highlighter

v0.0.6

Published

Vue component that let you highlight content inside an input according to regexes

Readme

Vue Input Highlighter

Component that allows content highlighting within an input field based on specified regular expressions (regexes).

It enhances user experience by providing visual feedback about specified patterns recognized and improves the interaction the user have with the input.

Table of contents

Installation

Using npm :

$ npm i @leyton-techlab/vue-input-highlighter

Using yarn :

$ yarn add @leyton-techlab/vue-input-highlighter

Imports

Register the component globally :

inside main.(js/ts)


    import InputHighlighter from '@leyton-techlab/vue-input-highlighter';
    import '@leyton-techlab/vue-input-highlighter/style.css';

    const app = createApp(App)

    app.component("InputHighlighter", InputHighlighter);

    app.mount('#app')

Import within the scope of a component

Script Setup

  <script setup>

    import InputHighlighter from '@leyton-techlab/vue-input-highlighter';
    import '@leyton-techlab/vue-input-highlighter/style.css';

    import { ref } from 'vue';

    const inputValue = ref('');
  
  </script>

  <template>

      <input-highlighter
          v-model="inputValue"
      />
  
  </template>

Option Api

  <script>
      import InputHighlighter from 'vue-input-highlighter';
      import 'vue-input-highlighter/style.css';

      export default {
          data() {
              return {
                  inputValue: ''
          },
          components: {
              InputHighlighter
          }
      }
  </script>

  <template>

      <input-highlighter
          v-model="inputValue"
      />

  </template>

Usage example

Please refer to the following link content as usage example : codesandbox

How it works

The component is based on a 'content editable' div that replicates the behavior of an input tag.

As the user inputs content, the component evaluates the div's text and analyzes it using regular expressions (regex).

Any fragment that matches the regex is encapsulated within an HTML tag, with the default being <strong> (or as specified) for which the relevant styles are then applied.

Use Cases

Use cases example :

  • Highlight search operators (example : and, or, not, ") inside a search bar

  • Highlight id like entries (ex: company number, salesforce id, random code)

  • Highlight business specific keyword

    • Protocols : http/https

    • Language syntax : select, from, where

    • Auth methods : Basic, Bearer

Props

List of component props :

| Props | Description | |-------------|-----------------------------------------------------------------------------| | modelValue | allow v-model behavior for the component | | rules | array of rules as composed object defined in more details in the next table | | placeholder | string value displayed when input is empty as a placeholder for explanation |

List of component "rules" props sub-elements :

| Sub-element | Description | |-------------|---------------------------------------------------------------------------------| | regex | pattern to be matched | | style | string value to be mapped inside the style attribute of the matched element tag | | class | string value to be mapped inside the class attribute of the matched element tag | | tag | tag used when wrapping the matched element |

Events

List of component custom events

| Events | Description | |------------|-------------------------------------------------------------------------------------------| | highlight | fires whenever one or multiple highlights are matched. return list of newly matched text. | | highlights | fires at each input. return list of all matched text by the input. |

Contribution

Every improvement of the package is welcome, just fork the project make the necessary changes and create a pull request.

If you want to contact me (@GAliNor) here is a link to my linkedin profile

Acknowledgments

Many thanks to :

for the reviews and advice