This is a Vue-based UI component library for the GTS projects, providing reusable and customizable components.
- Node.js (v20 or later)
- npm (v8 or later)
- Vue 3
git clone https://github.com/MamatovUmar/gts-ui.git
cd gts-ui
npm install
To view and develop components interactively:
npm run storybook
To build the library for production:
npm run build
npm install gts-ui
// In your Vue component
import { EasyIcon } from 'gts-ui'
// In your main.ts or main.js
import 'gts-ui/styles'
// In your main.ts or main.js
import gts from 'gts-ui'
const app = createApp(App)
app.use(gts)
function for handling asynchronous errors. Wraps an asynchronous function and handles potential errors.
import { catcher } from 'gts-ui'
// example usage
const safeFetch = catcher(async () => {
const response = await fetch('https://api.example.com/data')
return response.json()
})
const fetchInfo = catcher(async () => {
const response = await fetch('https://api.example.com/data')
return response.json()
}, (error) => {
console.error('Произошла ошибка:', error)
})
Function for preventing frequent function calls. Useful for handling input events or scrolling.
import { debounce } from 'gts-ui'
// example usage
const handleSearch = debounce((searchTerm: string) => {
// search
console.log('Search:', searchTerm)
}, 300) // Delay of 300ms
Function for padding a string or number with zeros to the left to a specified length.
import { padStart } from 'gts-ui'
// Example usage
const formattedNumber = padStart(5, 2) // "05"
const formattedHour = padStart(9, 2) // "09"
Distributed under the MIT License. See LICENSE
for more information.
Mamatov Umar - mamatov.umar@mail.ru
Project Link: https://mamatovumar.github.io/gts-ui