Mirror of UserUtils' source code https://github.com/Sv443-Network/UserUtils
|
1 gadu atpakaļ | |
---|---|---|
.changeset | 1 gadu atpakaļ | |
.github | 1 gadu atpakaļ | |
lib | 1 gadu atpakaļ | |
test | 1 gadu atpakaļ | |
tools | 1 gadu atpakaļ | |
.eslintrc.cjs | 1 gadu atpakaļ | |
.gitignore | 1 gadu atpakaļ | |
.gitmodules | 1 gadu atpakaļ | |
CHANGELOG.md | 1 gadu atpakaļ | |
LICENSE.txt | 1 gadu atpakaļ | |
README-summary.md | 1 gadu atpakaļ | |
README.md | 1 gadu atpakaļ | |
package-lock.json | 1 gadu atpakaļ | |
package.json | 1 gadu atpakaļ | |
tsconfig.json | 1 gadu atpakaļ |
Library with various utilities for userscripts - register listeners for when CSS selectors exist, intercept events, manage persistent user configurations, modify the DOM more easily and more.
Contains builtin TypeScript declarations. Webpack compatible and supports ESM and CJS.
Licensed under the MIT license.
You may want to check out my template for userscripts in TypeScript that you can use to get started quickly. It also includes this library by default.
If you like using this library, please consider supporting the development ❤️
onSelector()
addEventListener()
on any given EventTarget objectaddEventListener()
on the window objectIf you are using a bundler like webpack, you can install this package using npm:
npm i @sv443-network/userutils
Then, import it in your script as usual:
import { addGlobalStyle } from "@sv443-network/userutils";
// or just import everything (not recommended because this doesn't allow for treeshaking):
import * as UserUtils from "@sv443-network/userutils";
Shameless plug: I made a webpack-based template for userscripts in TypeScript that you can use to get started quickly. It also includes this library by default.
If you are not using a bundler, you can include the latest release by adding one of these directives to the userscript header, depending on your preferred CDN:
// @require https://greasyfork.org/scripts/472956-userutils/code/UserUtils.js
// @require https://openuserjs.org/src/libs/Sv443/UserUtils.js
(in order for your userscript not to break on a major library update, use the versioned URL at the top of the GreasyFork page)
Then, access the functions on the global variable UserUtils
:
UserUtils.addGlobalStyle("body { background-color: red; }");
// or using object destructuring:
const { clamp } = UserUtils;
console.log(clamp(1, 5, 10); // 5